Kamera ITS-in-a-Box

Die Android Camera Image Test Suite (ITS) ist Teil des CTS Verifier (Compatibility Test Suite) und umfasst Tests zur Überprüfung von Bildinhalten. CTS Verifier unterstützt die ITS-Testautomatisierung mit der Kamera ITS-in-a-Box. Die Unterstützung für manuelle Tests deckt alle Formfaktoren von Android-Geräten ab.

ITS-in-a-Box bietet folgende Vorteile:

  • Automatisierung. Während des Tests ist kein menschliches Eingreifen erforderlich.
  • Einfache Fehlerbehebung Die Konsistenz der Testumgebung führt zu weniger Einrichtungsfehlern und erhöht die Reproduzierbarkeit.
  • Effizienz. Die Möglichkeit, Wiederholungsversuche für einzelne Kameras/Szenen durchzuführen, verbessert die Effizienz der Testausführung.

Erste Schritte

ITS-in-a-Box besteht aus einer Kunststoffbox, die aus CAD-Zeichnungen (Computer Aided Design) per Laser geschnitten wird, einem Diagrammtablet und einem Testgerät (Device Under Test, DUT). In der folgenden Tabelle werden die Funktionen und Spezifikationen der verschiedenen verfügbaren ITS-in-a-box-Rigs beschrieben.

Rig Diagrammabstand Bildwinkelbereich der Kamera des DUT (ca.) Funktionen
Modulare Basishalterung 22 cm 15°–130°
  • Kleiner Fußabdruck
  • Große Blende vorne zum Testen des Systems mit mehreren Kameras, ohne dass die Aussparung sekundäre Kameras blockiert
  • Plattform kann um 90° gedreht werden
  • Modulares Grundgestell und Teleskopausleger 22 cm bis 100 cm* 10°–120°
  • Großer Ausschnitt für die Blende auf der Vorderseite
  • Unterstützt das Testen von Kameras mit einer längeren minimalen Fokusentfernung (die meisten Telekameras)
  • WFoV ITS-in-a-box 22 cm 15°–130°
  • Große Stellfläche für viele DUT-Montagepositionen
  • Unterstützung für große DUTs wie Tablets
  • RFoV ITS-in-a-box 31 cm 60°–90°
  • Chart-Tablet
  • Innenbeleuchtung
  • *Die Länge des Teleskopauslegers kann an unterschiedliche Entfernungen angepasst werden.

    So starten Sie mit dem ITS-in-a-Box für Kameras:

    1. Sie können eine modulare, WFoV- oder RFoV-ITS-in-a-Box kaufen oder erstellen.
    2. Konfigurieren Sie ein Tablet mit der Kamera-ITS-Software.
    3. Führen Sie Tests aus.
    4. Ergebnisse von der DUT abrufen

    Tablet konfigurieren

    In diesem Abschnitt finden Sie eine detaillierte Anleitung zum Einrichten eines Tablets für die Verwendung mit den Camera ITS-Tests im Verzeichnis CameraITS. In dieser Anleitung wird als Beispiel ein Pixel C verwendet. Informationen zu Anforderungen und Empfehlungen für Tablets finden Sie unter Anforderungen an Tablets.

    Hinweis:Die Python-Scripts für die ITS-Kamera legen automatisch die folgenden Optionen auf dem Tablet für Sie fest:
    Einstellungen > Display > Ruhemodus > Nach 30 Minuten Inaktivität
    Adaptive Helligkeit > AUS

    1. Laden Sie das Tablet auf und schalten Sie es ein. Wenn du aufgefordert wirst, ein Konto einzurichten, überspringe es (Für Kamera-ITS ist kein Konto erforderlich, das mit dem Tablet gekoppelt ist).
    2. Aktualisieren Sie das Tablet auf Android 7.0 oder höher. Android 6.x und niedrigere Versionen unterstützen die Kamera-ITS nicht.
    3. Aktivieren Sie den Entwicklermodus.
    4. Kehren Sie zu den Einstellungen zurück und wählen Sie Entwickleroptionen aus.
      Optionen aktivieren
      • An
      • Bildschirm aktiv lassen
      • USB-Debugging (Damit kann der Host das Tablet im Debug-Modus ausführen. Wenn Sie das Tablet zum ersten Mal mit dem Host verbinden, werden Sie auf dem Tablet gefragt: USB-Debugging zulassen? Wenn auf dem Tablet keine Aufforderung zum Debuggen angezeigt wird, trennen Sie die Verbindung und stellen Sie sie dann wieder her.
      Optionen deaktivieren
      • Automatische Systemupdates
      • Über USB installierte Apps prüfen
    5. Ermitteln Sie die DUT- und Diagramm-IDs, indem Sie $ adb devices ausführen, um die verfügbaren Geräte aufzulisten. Um device_id und chart_id zu ermitteln, schließen Sie Geräte an und wieder aus und beobachten Sie, welche Geräte verbunden und getrennt werden.
    6. Führen Sie drei Testläufe durch, um Hinweise und Nutzeraufforderungen zu unterdrücken, die Diagramme auf dem Tablet-Bildschirm verdecken können.
      1. Legen Sie das Tablet mit der Vorderseite nach oben auf einen Tisch. Befestigen Sie es nicht an der Rückseite des Kartons.
      2. Führen Sie den folgenden Befehl aus:
        python tools/run_all_tests.py device=$device_id camera=0 chart=$chart_id scenes=2,3
        
        Für die Szenen 2 und 3 muss das Tablet ein Bild anzeigen. Daher wird die Aufforderung Drive erlauben, auf Fotos, Medien und Dateien auf Ihrem Gerät zuzugreifen? angezeigt. Um diese Aufforderung zu löschen (und zukünftige Aufforderungen zu verhindern), klicken Sie auf Zulassen.
      3. Führen Sie den oben genannten Befehl noch einmal aus. Auf dem Tablet wird die Frage Eine Kopie dieser Datei behalten? angezeigt und Google Drive vorgeschlagen. Um diese Aufforderung zu löschen (und zukünftige Aufforderungen zu verhindern), klicken Sie auf das Drive-Symbol und dann auf Abbrechen, um den Upload auf Drive abzubrechen.
      4. Führen Sie abschließend tools/run_all_tests.py aus und prüfen Sie, ob sich die Szenen automatisch ändern, während das Script die verschiedenen Szenen durchläuft. Die meisten Tests schlagen fehl (da die Kamera nicht auf das Diagramm gerichtet ist). Sie können jedoch prüfen, ob das Tablet die Szenen korrekt durchläuft, ohne Aufforderungen oder andere Pop-ups auf dem Bildschirm anzuzeigen.

    Tests ausführen

    Bevor Sie das ITS-in-a-Box ausführen, prüfen Sie, ob Ihre Testumgebung die folgende Hardware und Software enthält:

    • 1 ITS-in-a-Box
    • Ein (1) hochauflösendes 10"-Tablet zur Anzeige von Szenen, S/N: 5811000011
    • Ein (1) DUT, auf dem die App „CTS Verifier 7.0_8+“ installiert ist. Beispiel-DUT:
      • Ein (1) Pixel NOF26W für Tests der Rückkamera(0), Seriennummer: FA6BM0305016. Um die CTS Verifier App zu installieren, entpacken Sie android-cts-verifier.zip und führen Sie
        adb -s FA6BM0305016 install -r -g android-cts-verifier/CtsVerifier.apk
        

    Tablet-basierte Szenen ausführen

    So führen Sie Szenen 0 bis 4, 6 und „scene_change“ mit der Rückkamera aus:

    cd android-cts-verifier/CameraITS
    . build/envsetup.sh
    python tools/run_all_tests.py camera=0
    

    Beispiel:

    Kamera 0 – Seriennummer: FA6BM0305016
    Abbildung 1: Kamera 0, Seriennummer: FA6BM0305016

    Szenen noch einmal versuchen

    Sie können Szenen für eine einzelne Kamera wiederholen:

    • So wiederholen Sie Szenen mit einer einzelnen Kamera:
      python tools/run_all_tests.py device=FA6BM0305016 camera=0 scenes=3,4
      

    Szene 5 ausführen

    Für Szene 5 ist eine spezielle Einrichtung mit bestimmter Beleuchtung erforderlich. Weitere Informationen finden Sie unter CameraITS.pdf im CTS Verifier, den Sie unter Compatibility Test Suite Downloads herunterladen können. Szene 5 muss separat (außerhalb des Containers) ausgeführt werden.

    Kameraszene 5
    Abbildung 2. Kameraszene 5

    So führen Sie Szene 5 für die Front- und Rückkamera auf einem einzigen Gerät aus:

    python tools/run_all_tests.py device=FA6BM0305016 camera=0 scenes=5
    python tools/run_all_tests.py device=FA6BM0305016 camera=1 scenes=5
    

    Ergebnisse abrufen

    Sie können sich die Ergebnisse während des Tests ansehen und die abgeschlossenen Ergebnisse als Bericht speichern.

    • Ergebnisse ansehen So speichern Sie Kamera-ITS-Ergebnisse als Bericht:
      1. Drücken Sie auf Übernehmen und speichern Sie den Bericht.
        ITS-Bericht für Kamera
        Abbildung 3 Bericht „Kamera-ITS“
      2. Berichte vom Gerät abrufen:
        adb -s FA6BM0305016 pull /sdcard/verifierReports
        
      3. Entpacken Sie die Berichtsdatei und öffnen Sie test_result.xml.
        Kamera-ITS-Berichte
        Abbildung 4 Berichte zu Kamera-ITS

    Anforderungen für Tablets

    Bei Android 15 und höher müssen Tablets, die als ITS-Diagrammanzeige verwendet werden, auf der folgenden Zulassungsliste für Tablets stehen. Eine Liste der Tablets, die Tests bei schlechten Lichtverhältnissen unterstützen, finden Sie unter Unterstützte Tablets für Tests bei schlechten Lichtverhältnissen. Wenn Sie Android 14 oder niedriger verwenden, lesen Sie die Informationen unter Tabletanforderungen für Android 14 und niedriger.

    Die Tablets in der Zulassungsliste werden anhand der folgenden Kriterien ausgewählt:

    • Displaygröße von etwa 10 Zoll mit einer Bildschirmauflösung von mehr als 1.920 × 1.200 Pixeln
    • Es darf kein Flimmern durch PWM-gesteuertes (Pulse-Width Modulation) Dimmen des Bildschirms auftreten.
    • Kann ADB-Befehle ausführen, die von ITS-Tests gesendet werden, und Diagrammbilder mit der vorgegebenen Bildschirmhelligkeit anzeigen.

    Der Wert brightness muss in config.yml gemäß dem Tabletmodell festgelegt werden. Wenn Sie wissen möchten, ob Ihr Tabletmodell einem Gerätenamen auf der Zulassungsliste entspricht, drucken Sie den Wert ro.product.device aus, indem Sie den Befehl adb shell getprop | grep 'ro.product.device' adb ausführen.

    Gerät Displaygröße
    (Zoll)
    Displaygröße
    (Pixel)
    Tabletabmessungen
    (Zoll)
    Display-
    Helligkeit
    Gerätename
    (ro.product
    .device)
    Version des Tablet-Betriebssystems
    Google
    Pixel C
    10,2 2560 × 1800 9,53 × 7,05 × 0,28 96 Drache Android 6 oder höher
    Honor
    Pad 8
    11 2.000 × 1.200 10,18 × 6,76 × 0,29 192 HNHEY-Q Android 12
    Huawei
    MediaPad m5
    10.8 2560 x 1600 10,18 × 6,76 × 0,29 192 HWCMR09 Android 8 oder höher
    Lenovo
    Tab M10 Plus
    10.3 1920 × 1200 9,61 x 6,03 x 0,32 192 X606F Android 9 oder höher
    Lenovo
    Tab P11
    11 2.000 × 1.200 10,17 × 6,42 × 0,30 192 J606F Android 11 oder höher
    Lenovo
    Tab P11 Gen2
    11,5 2.000 × 1.200 10,59 x 6,67 x 0,29 192 TB350FU Android 13 oder höher
    Nokia
    T21
    10.4 2.000 × 1.200 9,74 x 6,19 x 0,30 192 AGTA Android 12 und höher
    Samsung
    Galaxy Tab A7
    10,4 2.000 × 1.200 9,75 × 6,2 × 0,28 192 gta4lwifi Android 10 oder höher
    Samsung
    Galaxy Tab A8
    10,50 1920 × 1200 9,72 × 6,73 × 0,27 192 gta8wifi Android 11 oder höher
    Samsung
    Galaxy Tab A9+
    11 1920 × 1200 10,12 × 6,64 × 0,27 192 gta9pwifi Android 13 oder höher
    Vivo
    Pad2
    12.1 2800 x 1968 26,5 x 19,1 x 0,67 cm 192 DPD2221 Android 13 oder höher
    Xiaomi
    Pad 5
    11 2560 × 1600 10,18 × 6,76 × 0,29 192 nabu Android 13 oder höher
    Xiaomi
    Redmi
    Pad
    10,61 2.000 × 1.200 9,86 × 6,22 × 0,28 192 yunluo Android 14 oder höher
    Xiaomi
    Redmi
    Pad SE
    11 2560 x 1600 10,06 × 6,58 × 0,29 Zoll 192 xun Android 13 oder höher

    Unterstützte Tablets für Aufnahmen bei schlechten Lichtverhältnissen

    In der folgenden Tabelle sind Tablets aufgeführt, die Tests für Szenen bei wenig Licht unterstützen. Diese Tablets können die Helligkeit erreichen, die für Szenen bei wenig Licht erforderlich ist, sodass das Testgerät das Diagramm richtig belichten kann.
    Gerät Gerätename (ro.product.device) Betriebssystemversion des Tablets
    Huawei
    MediaPad m5
    HWCMR09 Android 8 oder höher
    Samsung Galaxy Tab A8 gta8wifi Android 11 oder höher
    Samsung Galaxy Tab A9+ gta9pwifi Android 13 oder höher
    Xiaomi Pad 5 nabu Android 13 oder höher
    Xiaomi
    Redmi
    Pad SE
    xun Android 13 oder höher

    Tablet-Anforderungen für Android 14 und niedriger

    Tablets müssen etwa 10 Zoll und eine Bildschirmauflösung von mehr als 1920 x 1200 Pixeln haben. Das Tablet darf nicht die Pulsweitenmodulation (PWM) zum Einstellen der Helligkeit verwenden. Der Wert für brightness muss gemäß dem Tablet-Modell in config.yml festgelegt werden. In der folgenden Tabelle sind die empfohlenen Tablets für ITS-Tests sowie die Android-Releaseversionen für das DUT aufgeführt, mit dem die Tablets funktionieren.

    Gerät Displaygröße
    (Zoll)
    Displaygröße
    (Pixel)
    Tabletabmessungen
    (Zoll)
    Display
    helligkeit
    Display
    bits
    Unterstütztes
    Testgerät-Betriebssystem
    Unterstütztes
    Tablet-Betriebssystem
    Samsung
    Galaxy Tab A8
    10,50 1920 × 1200 9,72 × 6,37 × 0,27 192 8 Android 13 oder höher Android 11 oder höher
    Xiaomi
    Pad 5
    11 2560 x 1600 10,03 × 6,55 × 0,27 1024 11 Android 12 und höher Nur Android 11
    Lenovo
    Tab M10 Plus
    10.3 1920 × 1200 9,61 x 6,03 x 0,32 192 8 Android 12 und höher Android 9 oder höher
    Samsung
    Galaxy Tab A7
    10,4 2.000 × 1.200 9,75 × 6,2 × 0,28 192 8 Android 12 und höher Android 10 oder höher
    Chuwi
    Hi9 Air 10.1
    10.1 2560 × 1600 9,52 × 6,77 × 0,31 192 8 Android 7 oder höher Android 8 oder höher
    ASUS
    ZenPad 3
    9.7 2048 × 1536 9,47 x 6,44 x 0,28 192 8 Android 7 oder höher Android 6 oder höher
    Huawei
    MediaPad m5
    10.8 2560 x 1600 10,18 × 6,76 × 0,29 192 8 Android 7 oder höher Android 8 oder höher
    Google
    Pixel C
    10,2 2560 × 1800 9,53 × 7,05 × 0,28 96 8 Android 7 oder höher Android 6 oder höher
    Sony
    Xperia Z4
    10.1 2560 × 1600 10 × 6,57 × 0,24 192 8 Android 7 oder höher Android 5 oder höher

    Häufig gestellte Fragen

    F1: Wie finde ich heraus, welche Prüfstände ich für mein Gerät benötige?

    In ITS-in-a-box-Version 1 des ROTV-Systems (RFoV) werden RFoV-Kameras für Tests von Tablet-Szenen im Verzeichnis CameraITS/tests getestet. Der RFoV wird als 60° < FoV < 90° definiert. Bei Kameras mit größerem Sichtfeld sind die Lampen möglicherweise auf den Bildern zu sehen oder die Diagramme decken einen zu kleinen Bereich im Sichtfeld ab, was sich auf die Testergebnisse auswirken kann.

    Mit der WFoV ITS-in-a-Box-Version 2 werden WFoV-Kameras für Tablet-Szenentests im Verzeichnis CameraITS/tests getestet. Der Weitwinkel-FOV wird als FoV >= 90° definiert. Das Testgestell der Version 2 ist funktional mit der Version 1 identisch, aber größer. Mit der Testvorrichtung der Revision 2 können sowohl RFoV- als auch WFoV-Kameras unter Android 9 und höher getestet werden. Aufgrund des größeren Platzes ist Überarbeitung 2 ideal,

    Mit dem modularen Stativ werden Weitwinkelkameras für Tablet-Szenentests im Verzeichnis CameraITS/tests getestet. Der Weitwinkel wird als FoV >= 90° definiert. Mit dem modularen Stativ können sowohl RFoV- als auch WFoV-Kameras für Geräte mit Android 9 und höher getestet werden. Außerdem wird das Tele-Verlängerungsgestell unterstützt, das an Telekameras mit einer längeren Mindestfokusdistanz angebracht werden kann. Das modulare Basisgestell ist funktional mit dem WFoV ITS-in-a-Box identisch, aber kleiner.

    Mit dem Sensor Fusion Box werden der Zeitversatz zwischen Kamera und Gyroskop sowie die Frame-Synchronisierung von Systemen mit mehreren Kameras mithilfe von Tests in scenes=sensor_fusion geprüft. Für das REALTIME-Funktionsflag ist eine Kamera-/Gyroskop-Zeitabweichung von weniger als 1 ms erforderlich.

    Geräte mit mehreren Kameras können mit einem einzigen Testaufbau für statische ITS-Tests und mit einem Sensorfusions-Testaufbau getestet werden, wenn die Kamera die REALTIME-Funktionsflag hat.

    In der folgenden Tabelle finden Sie einige Beispielkonfigurationen.

    Verwendungsbeispiele FoVs für Kameras IN REALTIME? Empfohlene Rigs Hinweise
    1 75° Nein Rev 1 oder 2 Android 7.0 oder höher
    2 75° Ja Modulare Basis, Rev 1 oder 2 und Sensorfusion Android 9 oder höher
    3 75° + 95° Ja Rev 2 + Sensorfusion Android 9 oder höher
    4 75° + 95° + 20° Ja Modulare Basis, Teleerweiterung und Sensorfusion Android 9 oder höher
    5 75° + 95° Tablet Nein Rev 2 Android 9 oder höher

    Frage 2: Wie lege ich fest, welches Testgestell verwendet wird?

    Der Abstandsparameter für das Diagramm muss korrekt sein, damit der richtige Prüfstand bestimmt werden kann. Das Testgestell der Version 1 (RFoV) hat einen Abstand von 31 cm zum Diagramm und das Testgestell der Version 2 (WFoV) einen Abstand von 22 cm. Standardmäßig ist der Abstand zum Diagramm auf 31 cm eingestellt.

    Von Android 10 auf Android 11

    Fügen Sie in der Befehlszeile das Flag dist hinzu, um in Android 10 bis 11 den richtigen Test-Rig zu identifizieren. Der Standardwert für dist ist 31. Führen Sie den folgenden Befehl aus, um den Parameter chart_distance zu ändern.
    python tools/run_all_tests.py ... chart=# dist=22
    

    Android 12 und höher

    Um das richtige Testgerät unter Android 12 und höher zu identifizieren, können Sie die Datei „config.yml“ bearbeiten und den Parameter chart_distance ändern.
    edit config.yml
    chart_distance: 31.0 → chart_distance: 22.0
    

    F3: Wie kann ich die Helligkeit des Tablets regeln?

    Standardmäßig ist die Helligkeit des Tablets auf 96 eingestellt.

    So ändern Sie die Helligkeit auf Tablets mit Android 7.0 bis Android 9:

    edit tools/wake_up_screen.py
    DISPLAY_LEVEL=96 → DISPLAY_LEVEL=192
    

    Wenn Sie die Helligkeit auf Tablets mit Android 10 bis 11 ändern möchten, können Sie den Wert in der Befehlszeile ändern, indem Sie das Flag brightness hinzufügen:

    python tools/run_all_tests.py device=# camera=# chart=# brightness=192
    

    So ändern Sie die Helligkeit auf Tablets mit Android 12 und höher:

    edit config.yml
    brightness: 96 → brightness: 192
    

    Frage 4: Wie kann ich einen einzelnen Test debuggen?

    Tests können zu Debugging-Zwecken einzeln ausgeführt werden. Die Ergebnisse werden jedoch nur an CtsVerifier.apk gesendet, wenn die gesamte Szene ausgeführt wird.

    So führen Sie eine einzelne Szene in Android 11 und niedriger aus:

    1. Laden Sie eine Szene, indem Sie das Flag scenes in tools/run_all_tests.py hinzufügen:
      python tools/run_all_tests.py device=# camera=# chart=# scenes=#
      
    2. Drücken Sie Strg + C, um die Tests anzuhalten, nachdem die Szene als geladen in stdout protokolliert wurde.

      Wenn die richtige Szene bereits auf dem Bildschirm zu sehen ist, aktivieren Sie den Bildschirm:

      python tools/wake_up_screen.py screen=#
      
    3. Einen einzelnen Test ausführen

      python tests/scene#/test_*.py device=# camera=#

      Die Diagramme werden dann im lokalen Verzeichnis generiert und stdout und stderr werden auf dem Bildschirm angezeigt.

      Fügen Sie dem Skript print-Anweisungen hinzu, um weitere Informationen zur Fehlerbehebung zu erhalten. Fügen Sie das Flag debug=True hinzu, um die Testausgabe für die Fehlerbehebung zu erhöhen.

      python tests/scene#/test_*.py device=# camera=# debug=True

    Wenn Sie tools/run_all_tests.py ausführen, werden die Ergebnisse auf dem lokalen Bildschirm ausgegeben und Bilder werden im lokalen Verzeichnis anstelle des generierten /tmp/tmp###-Verzeichnisses gespeichert.

    So führen Sie eine einzelne Szene in Android 12 und höher aus:

    1. Bearbeiten Sie die Datei config.yml.

      edit config.yml
      camera: <camera-id> → camera:  0
      scene: <scene-name> → scene: scene1_1
    2. Führen Sie den einzelnen Test aus.

      python tools/run_all_tests.py -c config.yml --test_bed TEST_BED_TABLET_SCENES
      

    Die Ergebnisse werden im Verzeichnis /tmp/logs/mobly/TEST_BED_TABLET_SCENES/ nach Laufzeit sortiert ausgegeben.

    Frage 5: Warum muss ich fehlgeschlagene Tests als ganze Szene ausführen, anstatt sie einzeln noch einmal auszuführen?

    Tests können zur Fehlerbehebung einzeln ausgeführt werden, die Ergebnisse werden jedoch nur an CtsVerifier.apk gesendet, wenn die gesamte Szene ausgeführt wird.

    Mit der Kamera-ITS wird sichergestellt, dass Drittanbieter-Apps eine kompatible Kameraschnittstelle haben. Ähnlich wie bei einem Einheitentest wird bei jedem Test eine einzelne Spezifikation in der Kamera beansprucht. Um unzuverlässiges Verhalten zu erkennen, wird erwartet, dass diese Tests als Gruppe für eine ganze Szene bestanden werden. Auch wenn ein einzelner unzuverlässiger Test beispielsweise eine ganze Szene wiederholen kann, ist es schwierig, mehrere unzuverlässige Tests zu bestehen.

    Angenommen, in einer Szene gibt es 10 Tests, bei denen jeweils mit einer Wahrscheinlichkeit von 50% PASS zurückgegeben wird. Wenn jeder Test einzeln durchgeführt wird, besteht eine hohe Wahrscheinlichkeit, dass ein Bediener dafür sorgt, dass die Kamera die Kamera-ITS passiert. Wenn die Tests jedoch aggregiert als Szene ausgeführt werden, besteht eine Wahrscheinlichkeit von 0,1 %, dass die Szene erfolgreich ist.

    Frage 6: Wie kann ich eine einzelne Szene ausführen oder die Ablaufszenen neu anordnen?

    Standardmäßig führt das Script tools/run_all_tests.py alle Szenen der Reihe nach aus. Szenen können jedoch einzeln oder in einer bestimmten Reihenfolge ausgeführt und an CtsVerifier.apk gemeldet werden.

    So führen Sie unter Android 11 oder niedriger eine einzelne Szene (z. B. Szene 2) oder mehrere Szenen in einer bestimmten Reihenfolge aus:

    python tools/run_all_tests.py device=# camera=# chart=# scenes=2
    
    python tools/run_all_tests.py device=# camera=# chart=# scenes=3,2
    

    So führen Sie unter Android 12 und höher eine einzelne Szene oder mehrere Szenen in einer bestimmten Reihenfolge aus:

    python tools/run_all_tests.py scenes=2
    
    python tools/run_all_tests.py scenes=3,2
    

    Die zusätzlichen Parameter werden in der Datei config.yml festgelegt.

    Frage 7: Einige Tests für Szene 1 schlagen mit der Tablet-Einrichtung fehl, aber mit einem Papierdiagramm sind sie erfolgreich. Woran liegt das?

    Achten Sie darauf, dass das Tablet und die Testumgebung die folgenden Spezifikationen erfüllen.

    Spezifikationen des Tablets

    Das Tablet muss die folgenden Spezifikationen erfüllen:

    • Displaygröße (Zoll): 10"
    • Displaygröße (Pixel): mehr als 1920 x 1200 Pixel

    Weitere Informationen finden Sie unter Anforderungen an Tablets.

    Helligkeit des Tablets

    Die Tests liefern möglicherweise keine korrekten Ergebnisse, wenn die Displayhelligkeit des Tablets zu niedrig ist.

    Weitere Informationen finden Sie unter Wie kann ich die Tablet-Helligkeit steuern?

    Beleuchtungsstärke der Verpackung (Luxmeter erforderlich)

    Der Ziel-Lux-Wert beim Öffnen des Tablets muss zwischen 100 und 300 liegen.

    Wenn der Lux-Wert zu hoch ist, wird FAIL zurückgegeben.scene1/test_param_flash_mode.py Wenn der Lux-Wert zu niedrig ist, schlagen mehrere Tests fehl.

    F8: Wie kann ich Sensorfusionstests beheben?

    1. Sie müssen Mitglied einer dialout-Gruppe sein.

      groups | egrep ‘dialout'
    2. Prüfen Sie, ob der Sensor Fusion Controller angeschlossen ist. Ermitteln Sie dazu, ob Microchip Technology mit dem USB-Port verbunden ist.

      lsusb
      …
      Bus 003 Device 004: ID 04d8:fc73 Microchip Technology, Inc.
      …
      
    3. Führen Sie den Test mit den folgenden Befehlen mehrmals aus, um eine Verteilung der Testversuche zu erhalten.

      Android 11 oder niedriger:

      python tools/run_sensor_fusion_box.py device=A camera=0 num_runs=10 rotator=default
      

      Ab Android 12:

      python tools/run_sensor_fusion_box.py num_runs=10
      

      Die zusätzlichen Parameter werden in der Datei config.yml festgelegt.

      Ausführungsausgaben befinden sich im Ordner /tmp/tmp###, der im Ordner sensor_fusion_# erstellt wurde, wobei # die Ausführungsnummer ist. Häufige Ursachen für Fehler:

      1. Das Smartphone ist nicht richtig zentriert.
      2. Es wurden nicht genügend Funktionen auf dem Bild gefunden (oft ein FoV- oder Beleuchtungsproblem).
      3. Der zurückgegebene FAIL ist gültig und der Zeitversatz zwischen Kamera und Gyroskop muss korrigiert werden.

    Frage 9: Welche Informationen sollte ich bei der Meldung eines Testfehlers angeben?

    Wenn Sie einen Testfehler melden, fügen Sie die für den Test generierten Dateien und Bilder hinzu.

    1. Wenn Sie den Test über tools/run_all_tests.py ausgeführt haben, hängen Sie dem Fehler ein gezipptes /tmp/-Verzeichnis an.
    2. Wenn Sie den Test alleine ausgeführt haben, hängen Sie alle Bildschirmausgaben und generierten Bilder an den Fehler an.

    Fügen Sie außerdem einen Fehlerbericht hinzu. Wenn der betreffende Test fehlschlägt, verwenden Sie den folgenden Befehl, um einen Fehlerbericht zu generieren und die generierte ZIP-Datei an den Fehler anzuhängen.

    adb -s device_id bugreport
    

    Frage 10: Wie führe ich eine Testszene für die Sensorfusion mit einer Kamera aus, die bei einer Mindestfokusdistanz unscharfe Bilder bei einer Entfernung von 25 cm zum Testchart erzeugt?

    Wenn die Kamera in einem Abstand von 25 cm nicht scharfstellen kann, entfernen Sie die Wandhalterung des Sensorfusionskastens. Platzieren Sie das Diagramm in einer Entfernung, in der das DUT scharfstellen kann, und ändern Sie chart_distance in config.yml in die gemessene Entfernung zwischen dem DUT und dem Diagramm. Abbildung 5 zeigt ein Beispiel dafür, wie Sie in diesem Fall die Diagrammdistanz messen.

    Beispiel für TELE-Test mit Sensor_Fusion6
    Abbildung 5. Messdiagramm für die Sensorfusionstestszene
      edit config.yml
    chart_distance: 25 → chart_distance: DISTANCE_BETWEEN_DUT_AND_CHART
    

    Frage 11: Wie führe ich Tablet-Testszenen für eine Kamera mit einer Mindestfokusdistanz durch, die bei einer Entfernung von 31 cm zum Testchart unscharfe Bilder erzeugt?

    Wenn Ihre Kamera bei einem Testabstand von 31 cm (Tiefe des RFoV-Testgestells) nicht scharf genug ist, bringen Sie die Kamera vor dem Gestell in einem Abstand an, der es ermöglicht, dass die Diagrammszene etwa 60% des Kamerasichtfelds (FoV) mit schärferen Bildern füllt. Dieser Abstand kann kleiner als die minimale Brennweite der Kamera sein. Lassen Sie die chart_distance in config.yml auf 31 cm. Die Diagrammskalierung auf dem Tablet wird vom Sichtfeld der Kamera bestimmt, wie in der folgenden Tabelle dargestellt:

    Sichtfeld für Kamera Skalierungsfaktor für Diagramme
    60 > FoV > 40 0,67-fach
    40 > Blickwinkel > 25 0,5-fach
    Blickwinkel < 25 0,33-fach

    Frage 12: Welche Tests werden mit der logischen Multi-Kamera-API auf welchen Kameras ausgeführt?

    Wenn für Ihre Kamera REQUEST_AVAILABLE_CAPABILITIES_LOGICAL_MULTI_CAMERA verwendet wird, werden alle unterstützten ITS-Tests auf der logischen Kamera der obersten Ebene ausgeführt. Ein Teil der ITS-Tests wird auf den physischen Unterkameras ausgeführt. Diese Tests sind in tools/run_all_tests.py unter der Konstante SUB_CAMERA_TESTS aufgeführt.