Notes de version de la suite de tests d'images de l'appareil photo Android 17

La version 17 d'Android inclut un certain nombre de modifications apportées à Camera ITS. Cette page récapitule les modifications apportées à la suite de tests ITS de l'appareil photo pour Android 17.

Versions de Python et des packages

Pour Android 17 et versions ultérieures, nous vous recommandons vivement d'utiliser un logiciel de gestion de packages pour regrouper les versions correctes des packages afin de créer un environnement virtuel pour le développement de versions Android. Pour obtenir un exemple d'outil de gestion de packages qui gère la plupart des packages requis, consultez la documentation Python 3 pour venv.

Pour créer l'environnement virtuel avec venv, procédez comme suit :

  1. Installez Python 3.12 et python3-venv

    sudo apt install python3.12
    sudo apt install python3.12-venv python3.12-dev
    
  2. Vérifier l'installation de Python

    python3.12 --version
    
  3. Mettre à jour apt et installer pip

    sudo apt-get update
    sudo apt install python3-pip
    
  4. Créer un environnement virtuel

    python3.12 -m venv its_android17_env
    
  5. Activez l'environnement virtuel :

    source its_android17_env/bin/activate
    
  6. Créez its_android17_env.txt avec la liste des packages requis.

    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. Installer les packages listés its_android17_env.txt

    pip install -r its_android17_env.txt
    
  8. Installer FFmpeg version 7.0.2 avec le téléchargeur FFmpeg

    pip install ffmpeg-downloader
    ffdl install 7.0.2
    

    (Facultatif) Si le téléchargeur ffmpeg ne fonctionne pas, téléchargez la version 7.0.2 à partir d'une source en ligne.

  9. Vérifier l'installation de FFmpeg version 7.0.2

    ffmpeg -version
    

    Si la version de FFmpeg n'est toujours pas la version 7.0.2, créez un lien symbolique vers les binaires (ajustez PATH en fonction de l'emplacement où vous enregistrez 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. Vérifier les packages installés

    pip freeze
    
  11. (Facultatif) Commande pour désactiver l'environnement :

    deactivate
    

Nouvelles scènes ou scènes modifiées

Android 17 introduit les scènes suivantes :

Scène Description
gen2_chart Nouvelle scène qui utilise le graphique papier test_chart_gen2 au lieu des scènes sur tablette pour améliorer la cohérence et la fiabilité des tests. test_chart_gen2 est également utilisé dans scene_ip.
wide_gamut Nouvelle scène pour les tablettes compatibles avec la large gamme de couleurs.
3 Utilise des marqueurs ArUco pour la détection des graphiques afin d'améliorer la vitesse et la fiabilité. Ce changement permet de prendre en compte la plus grande variété de champs de vision et de distances observée lors des tests de téléobjectif. L'utilisation de repères contourne la logique de dimensionnement actuelle et les problèmes d'optimiseur. Pour en savoir plus, consultez scene3.
flash Les tests peuvent être exécutés à l'aide du rig Gen2.

Nouveaux tests

Android 17 introduit les tests suivants :

Scène Test name Description
gen2_chart test_tonemap_sequence Vérifie que le paramètre android.tonemap.mode est correctement appliqué pour la distribution uniforme et non uniforme.
ip test_jca_jpegr_ip Vérifie que la différence de balance des blancs entre l'aperçu JPEG_R JCA et les images capturées se situe dans le seuil choisi.
wide_gamut test_display_p3 Vérifie que la sortie JPEG P3 possède un profil ICC approprié et contient plus de 1 % de couleurs en dehors de la gamme sRGB.

Tests refactorisés

Dans Android 17, les tests suivants sont refactorisés pour augmenter la couverture des tests et regrouper les tests de manière plus logique :

Scène Test name Description
1_2 tests_param_tonemap_mode La version scene1_2 du test tests_param_tonemap_mode est obsolète et n'est utilisée que sur les appareils exécutant Android 16 ou version antérieure.
1_2 test_tonemap_sequence La version scene1_2 du test test_tonemap_sequence n'est utilisée que sur les appareils équipés d'Android 16 ou version antérieure.
2_b test_yuv_jpeg_capture_sameness Le seuil de différence RMS est réduit pour s'assurer que les écarts de couleur liés à la teinte sont signalés comme des échecs chaque fois qu'ils entraînent une différence visible pour l'utilisateur.
3 test_edge_enhancement Utilise des marqueurs ArUco pour valider la présence et l'orientation. Cette méthode fournit une détection stable pour les caméras allant des applications ultra grand-angle à celles de téléobjectif.
3 test_flip_mirror Utilise des marqueurs ArUco pour valider la présence et l'orientation. L'état PASS n'est accordé que si tous les repères sont détectés et correctement alignés. Le test échoue pour les graphiques déplacés ou pivotés.
3 test_landscape_to_portrait Charge le graphique scene3 mis à jour avec les marqueurs ArUco.
3 test_lens_movement_report Utilise des marqueurs ArUco pour valider la présence et l'orientation. Cette méthode fournit une détection stable pour les caméras allant des applications ultra grand-angle à celles de téléobjectif.
4 test_multi_camera_alignment Ignore le test si l'appareil ne dispose que d'une caméra grand angle et d'une caméra super téléobjectif.
flash test_auto_flash Mise à jour du test pour vérifier que le flash fonctionne correctement à différents niveaux de zoom.
ip test_default_jca_ip Rend obligatoires les vérifications existantes : différence de luminosité, différence de balance des blancs et non-concordance du champ de vision. Ajoute une vérification not_yet_mandated pour la différence de rendu des couleurs entre l'application d'appareil photo par défaut et les captures JCA.

Activités de test distinctes

Dans Android 17, pour les tests parallèles sur des appareils distincts, les tests ITS de la caméra sont divisés en deux activités CTS Verifier, Camera ITS Test et Camera ITS Sensor Fusion Rig Test. L'activité Camera ITS Sensor Fusion Rig Test contient les scènes feature_combination et sensor_fusion, et peut être exécutée séparément dans un banc d'essai de fusion de capteurs. Le tableau suivant décrit les scènes incluses dans chaque activité.

Activité Scènes Description
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 Scènes exécutées dans le banc d'essai ITS-in-a-box de la caméra et le banc d'essai Gen2.
Camera ITS Sensor Fusion Rig Test feature_combination, sensor_fusion Scènes exécutées dans le banc d'essai de fusion de capteurs.

Tests obsolètes

Dans Android 17, les tests suivants sont obsolètes, car la fonction de test est couverte par d'autres tests :

Scène Test name Description
sensor_fusion test_video_stabilization Ce test est obsolète. Utilisez plutôt test_video_stabilization_jca.

Mises à jour du rig Gen2

Les tests suivants ont été migrés vers le rig Gen2 pour Android 17 :

Scène Test name Description
7 test_multi_camera_switch Migration du test vers la configuration du banc de test de 2e génération pour utiliser le graphique de 2e génération pour les vérifications AE et AWB. Cette transition remplace les cibles sur tablette par des graphiques physiques afin d'éliminer les effets de moiré et de fournir un environnement de test plus stable et reproductible.
flash all tests Tests scene_flash migrés dans le rig gen2. Les utilisateurs peuvent exécuter ces tests dans un environnement de plate-forme de fusion de capteurs ou de plate-forme Gen2.
sensor_fusion all tests Migration des tests sensor_fusion vers le banc de test de 2e génération. Les utilisateurs peuvent exécuter ces tests dans un environnement de plate-forme de fusion de capteurs ou de plate-forme de deuxième génération.

Avant d'exécuter les tests migrés, installez le tableau de configuration Gen2 introduit dans Android 17. Le nouveau graphique vous permet d'exécuter tous les tests de fusion de capteurs dans le banc de test Gen2. Pour en savoir plus, consultez Configurer le graphique pour les tests.

Nouvel état du test : RÉUSSITE*

17 introduit l'état de test PASS* pour détecter les tests qui réussissent de justesse. Pour en savoir plus, consultez Tests réussis de justesse (état de test "PASS*").

Améliorations apportées à la mise à l'échelle des graphiques

Android 17 ajoute le paramètre chart_scaling dans config.yml pour TEST_BED_TABLET_SCENES afin de gérer les problèmes de mise à l'échelle des graphiques avec les appareils photo téléobjectif à champ de vision (FoV) plus large. Pour en savoir plus, consultez Améliorations du scaling des graphiques : paramètre chart_scaling.

Nouvelle tablette pour la prise en charge des tests à large gamme

Pour Android 17 et versions ultérieures, la Samsung Galaxy Tab S10 FE (modèles Wi-Fi et 5G) figure dans la liste blanche des tablettes. La Samsung Galaxy Tab S10 FE est approuvée pour l'affichage de graphiques de test à large gamme, ainsi que de toutes les autres scènes basées sur des tablettes. Pour vérifier que votre appareil figure sur la liste d'autorisation, utilisez la commande adb shell getprop ro.product.device pour confirmer que l'ID du produit correspond à la valeur indiquée dans la liste suivante.

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

Envoi de résultats agrégés pour l'approbation des compilations

Android 17 introduit un processus permettant d'envoyer les résultats agrégés des tests Camera ITS pour l'approbation de la compilation à l'aide de l'APK CTS Verifier mis à jour.

Le nouveau système d'agrégation offre les améliorations suivantes :

  • Gain de temps : élimine la nécessité de réexécuter plusieurs fois les scènes réussies sur les appareils qui partagent la même empreinte de compilation.
  • Exécution parallèle : permet de tester simultanément plusieurs scènes sur plusieurs appareils, à condition qu'ils partagent la même empreinte de compilation.
  • Reporting simplifié : permet d'agréger les résultats des tests de plusieurs rapports CTS Verifier (collectés à partir de différents cycles de test ou appareils) dans un seul envoi unifié.

Pour en savoir plus, consultez Envoyer les résultats agrégés des tests.