Note di rilascio della suite di test delle immagini della fotocamera di Android 17

La release Android 17 include una serie di modifiche a Camera ITS. Questa pagina riassume le modifiche di Camera ITS per Android 17.

Versioni di Python e dei pacchetti

Per Android 17 e versioni successive, ti consigliamo vivamente di utilizzare un software di gestione dei pacchetti per raggruppare le versioni corrette dei pacchetti per creare un ambiente virtuale per lo sviluppo delle release di Android. Per un esempio di strumento di gestione dei pacchetti che gestisce la maggior parte dei pacchetti richiesti, consulta la documentazione di Python 3 per venv.

Per creare l'ambiente virtuale con venv:

  1. Installa Python 3.12 e python3-venv

    sudo apt install python3.12
    sudo apt install python3.12-venv python3.12-dev
    
  2. Verifica l'installazione di Python

    python3.12 --version
    
  3. Aggiorna apt e installa pip

    sudo apt-get update
    sudo apt install python3-pip
    
  4. crea un ambiente virtuale

    python3.12 -m venv its_android17_env
    
  5. Attiva l'ambiente virtuale

    source its_android17_env/bin/activate
    
  6. Crea its_android17_env.txt con l'elenco dei pacchetti richiesti

    contourpy==1.3.1
    cycler==0.12.1
    fonttools==4.56.0
    imagecodecs==2026.3.6
    ImageIO==2.37.3
    kiwisolver==1.4.8
    lazy-loader==0.5
    matplotlib==3.10.0
    mobly==1.12.3
    mobly-android-partner-tools==1.5.2
    networkx==3.6.1
    numpy==2.2.2
    opencv-python==4.11.0.86
    packaging==24.2
    pillow==11.1.0
    portpicker==1.6.0
    protobuf==6.33.6
    psutil==6.1.1
    pyparsing==3.2.1
    pyserial==3.5
    python-dateutil==2.9.0.post0
    pyudev==0.24.4
    PyYAML==6.0.2
    scikit-image==0.26.0
    scipy==1.15.1
    six==1.17.0
    snippet-uiautomator==1.1.2
    tifffile==2026.3.3
    
  7. Installa i pacchetti elencati its_android17_env.txt

    pip install -r its_android17_env.txt
    
  8. Installa FFmpeg versione 7.0.2 con il downloader di FFmpeg

    pip install ffmpeg-downloader
    ffdl install 7.0.2
    

    (Facoltativo) Se il programma di download di ffmpeg non funziona, scarica la versione 7.0.2 da una fonte online.

  9. Verifica l'installazione di FFmpeg versione 7.0.2

    ffmpeg -version
    

    Se la versione di FFmpeg non è ancora 7.0.2, crea un collegamento simbolico ai file binari (modifica PATH in base alla posizione in cui salvi its_android17_env).

    ln -s ~/.local/share/ffmpeg-downloader/ffmpeg/ffmpeg ~/PATH/its_android17_env/bin/ffmpeg
    ln -s ~/.local/share/ffmpeg-downloader/ffmpeg/ffprobe ~/PATH/its_android17_env/bin/ffprobe
    
  10. Verificare quali pacchetti sono installati

    pip freeze
    
  11. (Facoltativo) Comando per disattivare l'ambiente:

    deactivate
    

Scene nuove o aggiornate

Android 17 introduce le seguenti scene:

Scena Descrizione
gen2_chart Nuova scena che utilizza il test_chart_gen2 grafico cartaceo anziché le scene del tablet per migliorare la coerenza e l'affidabilità del test . test_chart_gen2 viene utilizzato anche in scene_ip.
wide_gamut Nuova scena per tablet con supporto wide gamut.
3 Utilizza i marker ArUco per il rilevamento dei grafici per migliorare la velocità e l'affidabilità. Questa modifica tiene conto della gamma più ampia di campo visivo e distanze osservate nei test della telecamera. L'utilizzo dei marcatori aggira la logica di ridimensionamento e i problemi di ottimizzazione correnti. Per ulteriori informazioni, vedi scene3.
flash I test possono essere eseguiti utilizzando il rig Gen2.

Nuovi test

Android 17 introduce i seguenti test:

Scena Nome del test Descrizione
gen2_chart test_tonemap_sequence Verifica che il parametro android.tonemap.mode sia applicato correttamente per la distribuzione uniforme e non uniforme.
ip test_jca_jpegr_ip Verifica che la differenza di bilanciamento del bianco tra l'anteprima JPEG_R JCA e le immagini acquisite rientri nella soglia scelta.
wide_gamut test_display_p3 Verifica che l'output JPEG P3 abbia un profilo ICC appropriato e contenga più dell'1% di colori al di fuori della gamma sRGB.

Test sottoposti a refactoring

In Android 17, i seguenti test vengono sottoposti a refactoring per aumentare la copertura dei test e raggrupparli in modo più logico:

Scena Nome del test Descrizione
1_2 tests_param_tonemap_mode La versione scene1_2 del test tests_param_tonemap_mode è ritirata e viene utilizzata solo su dispositivi con Android 16 o versioni precedenti.
1_2 test_tonemap_sequence La versione scene1_2 del test test_tonemap_sequence viene utilizzata solo su dispositivi con Android 16 o versioni precedenti.
2_b test_yuv_jpeg_capture_sameness La soglia di differenza RMS viene ridotta per garantire che le discrepanze di colore correlate alla tonalità vengano segnalate come errori ogni volta che comportano una differenza visibile per l'utente.
3 test_edge_enhancement Utilizza i marker ArUco per convalidare sia la presenza che l'orientamento. Questo metodo fornisce un rilevamento stabile per le fotocamere da ultra grandangolare (UW) a tele.
3 test_flip_mirror Utilizza i marker ArUco per convalidare sia la presenza che l'orientamento. Lo stato PASS viene concesso solo se tutti i marker vengono rilevati e allineati correttamente. Il test non riesce per i grafici spostati o ruotati.
3 test_landscape_to_portrait Carica il grafico aggiornato scene3 con i marker ArUco.
3 test_lens_movement_report Utilizza i marker ArUco per convalidare sia la presenza che l'orientamento. Questo metodo fornisce un rilevamento stabile per le fotocamere da ultra grandangolare (UW) a tele.
4 test_multi_camera_alignment Salta il test se il dispositivo ha solo una videocamera grandangolare e una super tele.
flash test_auto_flash Aggiorna il test per verificare che il flash funzioni correttamente a vari livelli di zoom.
ip test_default_jca_ip Impone i controlli esistenti: differenza di luminosità, differenza di bilanciamento del bianco e mancata corrispondenza del campo visivo. Aggiunge un controllo not_yet_mandated per la differenza di rendering del colore tra l'app Fotocamera predefinita e le acquisizioni JCA.

Attività di test separate

In Android 17, per i test paralleli su dispositivi separati, i test ITS della fotocamera sono suddivisi in due attività CTS Verifier, Camera ITS Test e Camera ITS Sensor Fusion Rig Test. L'attività Camera ITS Sensor Fusion Rig Test contiene le scene feature_combination e sensor_fusion e può essere eseguita separatamente in un banco di prova di fusione dei sensori. La tabella seguente descrive le scene incluse in ogni attività.

Attività Scene Descrizione
Camera ITS Test gen2_chart, scene0, scene1_1, scene1_2, scene1_3, scene2_a, scene2_b, scene2_c, scene2_d, scene2_e, scene2_f, scene2_g, scene3, scene4, scene5, scene6, scene8, scene9, scene_flash, scene_hdr, scene_ip, scene_low_light, scene_video, wide_gamut Scene eseguite nel banco di prova ITS-in-a-box della videocamera e nel banco di prova Gen2.
Camera ITS Sensor Fusion Rig Test feature_combination, sensor_fusion Scene eseguite nel banco di prova della fusione dei sensori.

Test ritirati

In Android 17, i seguenti test sono ritirati perché la funzione di test è coperta da altri test:

Scena Nome del test Descrizione
sensor_fusion test_video_stabilization Questo test è deprecato. Usa test_video_stabilization_jca invece.

Aggiornamenti del rig di 2ª gen.

I seguenti test di Android 17 sono stati migrati al rig Gen2:

Scena Nome del test Descrizione
7 test_multi_camera_switch È stata eseguita la migrazione del test alla configurazione del rig di seconda generazione per utilizzare il grafico di seconda generazione per i controlli AE e AWB. Questa transizione sostituisce i target basati su tablet con grafici fisici per eliminare gli effetti moiré e fornire un ambiente di test più stabile e riproducibile.
flash all tests Sono stati eseguiti i test scene_flash nel rig gen2. Gli utenti possono eseguire questi test in un ambiente di banco di prova per la fusione dei sensori o di banco di prova di seconda generazione.
sensor_fusion all tests Sono stati eseguiti test di fusione dei sensori sul rig di seconda generazione. Gli utenti possono eseguire questi test in un ambiente di banco di prova per la fusione dei sensori o di banco di prova di seconda generazione.

Prima di eseguire i test migrati, installa il grafico del rig Gen2 introdotto in Android 17. Il nuovo grafico consente di eseguire tutti i test di fusione dei sensori nel rig Gen2. Per saperne di più, vedi Configurare il grafico per i test.

Nuovo stato del test: SUPERATO*

17 introduce lo stato del test PASS* per rilevare i test superati marginalmente. Per ulteriori informazioni, consulta Test superati marginalmente (stato del test PASS*).

Miglioramenti della scalabilità dei grafici

Android 17 aggiunge il parametro chart_scaling in config.yml per TEST_BED_TABLET_SCENES per gestire i problemi di scalabilità dei grafici con dispositivi di telecamera con campo visivo (FOV) più ampio. Per saperne di più, consulta Miglioramenti della scalabilità dei grafici: parametro chart_scaling.

Nuovo tablet per il supporto dei test con ampia gamma

Per Android 17 e versioni successive, Samsung Galaxy Tab S10 FE (modelli Wi-Fi e 5G) è presente nella lista consentita di tablet. Il Samsung Galaxy Tab S10 FE è approvato per la visualizzazione di grafici di test ad ampia gamma, nonché di tutte le altre scene basate su tablet. Per verificare che il tuo dispositivo sia nella lista consentita, utilizza il comando adb shell getprop ro.product.device per confermare che l'ID prodotto corrisponda al valore elencato nell'elenco seguente.

    'gts10fewifi',  # Samsung Galaxy Tab S10 FE
    'gts10fe',  # Samsung Galaxy Tab S10 FE 5G

Invio dei risultati aggregati per le approvazioni delle build

Android 17 introduce una procedura per l'invio dei risultati dei test ITS della fotocamera aggregati per l'approvazione della build utilizzando l'APK CTS Verifier aggiornato.

Il nuovo sistema di aggregazione offre i seguenti miglioramenti:

  • Risparmio di tempo: elimina la necessità di eseguire ripetutamente le scene superate sui dispositivi che condividono la stessa impronta di build.
  • Esecuzione parallela:consente di testare contemporaneamente più scenari su più dispositivi, a condizione che condividano la stessa impronta di build.
  • Report semplificati:consente l'aggregazione dei risultati dei test di più report CTS Verifier (raccolti da esecuzioni di test o dispositivi diversi) in un unico invio unificato.

Per saperne di più, consulta Inviare i risultati aggregati dei test.