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° |
|
Modulares Grundgestell und Teleskopausleger | 22 cm bis 100 cm* | 10°–120° | |
WFoV ITS-in-a-box | 22 cm | 15°–130° |
|
RFoV ITS-in-a-box | 31 cm | 60°–90° |
|
*Die Länge des Teleskopauslegers kann an unterschiedliche Entfernungen angepasst werden. |
So starten Sie mit dem ITS-in-a-Box für Kameras:
- Sie können eine modulare, WFoV- oder RFoV-ITS-in-a-Box kaufen oder erstellen.
- Konfigurieren Sie ein Tablet mit der Kamera-ITS-Software.
- Führen Sie Tests aus.
- 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
- 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).
- Aktualisieren Sie das Tablet auf Android 7.0 oder höher. Android 6.x und niedrigere Versionen unterstützen die Kamera-ITS nicht.
- Aktivieren Sie den Entwicklermodus.
- 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
- Ermitteln Sie die DUT- und Diagramm-IDs, indem Sie
$ adb devices
ausführen, um die verfügbaren Geräte aufzulisten. Umdevice_id
undchart_id
zu ermitteln, schließen Sie Geräte an und wieder aus und beobachten Sie, welche Geräte verbunden und getrennt werden. - Führen Sie drei Testläufe durch, um Hinweise und Nutzeraufforderungen zu unterdrücken, die Diagramme auf dem Tablet-Bildschirm verdecken können.
- Legen Sie das Tablet mit der Vorderseite nach oben auf einen Tisch. Befestigen Sie es nicht an der Rückseite des Kartons.
- Führen Sie den folgenden Befehl aus:
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.python tools/run_all_tests.py device=$device_id camera=0 chart=$chart_id scenes=2,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.
- 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 Sieadb -s FA6BM0305016 install -r -g android-cts-verifier/CtsVerifier.apk
- Ein (1) Pixel NOF26W für Tests der Rückkamera(0), Seriennummer: FA6BM0305016. Um die CTS Verifier App zu installieren, entpacken Sie
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:
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.
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:
- Drücken Sie auf Übernehmen und speichern Sie den Bericht.
Abbildung 3 Bericht „Kamera-ITS“ - Berichte vom Gerät abrufen:
adb -s FA6BM0305016 pull /sdcard/verifierReports
- Entpacken Sie die Berichtsdatei und öffnen Sie
test_result.xml
.
Abbildung 4 Berichte zu Kamera-ITS
- Drücken Sie auf Übernehmen und speichern Sie den Bericht.
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 Flagdist
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 Parameterchart_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:
- Laden Sie eine Szene, indem Sie das Flag
scenes
intools/run_all_tests.py
hinzufügen:python tools/run_all_tests.py device=# camera=# chart=# scenes=#
-
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=#
-
Einen einzelnen Test ausführen
python tests/scene#/test_*.py device=# camera=#
Die Diagramme werden dann im lokalen Verzeichnis generiert und
stdout
undstderr
werden auf dem Bildschirm angezeigt.Fügen Sie dem Skript
print
-Anweisungen hinzu, um weitere Informationen zur Fehlerbehebung zu erhalten. Fügen Sie das Flagdebug=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:
-
Bearbeiten Sie die Datei
config.yml
.edit config.yml camera: <camera-id> → camera: 0 scene: <scene-name> → scene: scene1_1
-
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?
Sie müssen Mitglied einer
dialout
-Gruppe sein.groups | egrep ‘dialout'
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. …
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 Ordnersensor_fusion_#
erstellt wurde, wobei#
die Ausführungsnummer ist. Häufige Ursachen für Fehler:- Das Smartphone ist nicht richtig zentriert.
- Es wurden nicht genügend Funktionen auf dem Bild gefunden (oft ein FoV- oder Beleuchtungsproblem).
- 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.
- Wenn Sie den Test über
tools/run_all_tests.py
ausgeführt haben, hängen Sie dem Fehler ein gezipptes/tmp/
-Verzeichnis an. - 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.
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.