Auf dieser Seite werden die Änderungen an Kamera-Bild-Test-Suite (ITS) für Android 11. Es gibt folgende Änderungen: Kategorien:
- Änderungen an der Hardware
- MANDATED-Tests auf API-Ebene
- Beleuchtung testen
- Änderungen am Szenennamen
- Änderungen und Ergänzungen testen
- Erhöhte Anzahl von LIMITED-Kameratests
Hardwareänderungen
Android 11 bringt einige Hardwareänderungen Kosten senken und die Verfügbarkeit erhöhen. Diese Änderungen fallen in folgende Kategorien: Kategorien:
- Weiterer Hersteller
- Einheitliche Fertigungsmethoden
- Mehr Tablet-Optionen
- Geringeres Öffnen des Tablets
- Neuer Sensor Fusion-Controller
Weiterer Hersteller
Rahi Systems ist qualifiziert, zusätzlich zu unseren Lieferunternehmen, MYWAY-Design. Unternehmensinformationen für qualifizierte Anbieter sind folgt:
Rahi Systems Inc.
48303 Fremont Blvd, Fremont CA 94538, USA
rahisystems.com/products/android-device-testing-equipment/
androidpartner@rahisystems.com
+1 510 319 3802MYWAY-Design
4F. Nr. 163, Fu-Ying Road, XinZhuang District, Neu-Taipeh, Taiwan
twmyway.com
vertrieb@myway.tw
+886-2-29089060
Einheitliche Fertigungsmethoden
Die rev1 reguläres Sichtfeld (RFoV) ITS-in-a-box Das Testgehäuse wurde umgestaltet, um die Herstellungsverfahren des WFoV-Feld und Sensor Fusion Box Gehäuse testen. Die Funktionalität ist identisch und der Einfachheit halber wird als rev1a bezeichnet. Das neue Design ermöglicht es Herstellern, eine Kunststofftyp für die Herstellung aller Testgehäuse. Außerdem ist das Tablet Die Halterung und die Halterungen wurden neu gestaltet, um größere Vielfalt an Tablets zu kompensieren. und LED-Lichtbalken.
Die neuesten Beschreibungen und mechanischen Zeichnungen kannst du hier herunterladen: RFoV-Box (rev1a) und WFoV-Box (Version 2.9):
Mehr Tablet-Optionen
Tablets wie das Samsung Galaxy Tab A 10.1 und das Chuwi Hi9 Air 10.1 sind zur Liste der empfohlenen Tablets hinzugefügt. Es ist wichtig, dass das Tablet keine Pulsbreitenmodulation (PWM) zur Anpassung der Bildschirmhelligkeit, um Banding zu vermeiden aufgenommenen Bildern.
Die neuesten Informationen zu empfohlenen Tablets findest du unter Anforderungen an Tablets
Weniger Öffnen des Tablets
Damit das Galaxy Tab A 10.1 genutzt werden kann, wird das Öffnen des Tablets etwas reduziert. sowohl für das RFoV-Testgehäuse (rev1a) als auch für das WFoV-Testgehäuse (rev2) hoch. Die Überarbeitungen, die diese Änderungen widerspiegeln, sind rev1a.1 und rev2.9. Für diese Zeichnungen Siehe RFoV-Box (rev1a) und WFoV-Box (Version 2.9):
Neuer Sensor Fusion-Controller
Die Hardware des Sensor Fusion-Controllers wurde neu gestaltet, um Herstellung. Der neue Controller basiert auf Arduino und Schild der Routing-Platine, die oben auf dem Arduino angebracht wird. Abbildung 1 zeigt die und Abbildung 2 zeigt die mechanische Zeichnung des Gehäuses. Das neue Steuerung wird über eine einzelne 5-V-Stromversorgung betrieben, die den Motor mit Strom versorgt . Die Elektronik wird vollständig über den USB-Anschluss gesteuert. Das separate Netzteil ermöglicht eine vollständige Isolierung Elektronik und dem Servomotor an. Außerdem kann ein einzelner Controller bis zu sechs Servomotoren.
Abbildung 1: Draufsicht auf das Arduino-Schild
Abbildung 2: Gehäusedesign
Android 11 ist abwärtskompatibel mit Controller. So rufen Sie Tests mit dem Arduino-basierten Controller auf:
python tools/run_all_tests.py device=# camera=# rot_rig=arduino:1 scenes=sensor_fusion
Erste API-Ebene
In Android 10 sind ITS-Tests als MANDATED
gekennzeichnet.
und NOT_YET_MANDATED
. Einführung als Android 10
müssen alle MANDATED
-Tests bestanden werden. Die NOT_YET_MANDATED
-Tests können fehlschlagen
werden für die CTS-Prüfungsberichte jedoch als PASS
tabellarisch. Die MANDATED
-Tests
gilt auch für aktualisierte Geräte. Diese Anforderung für ein Upgrade
Geräte, die alle MANDATED
Tests bestanden haben, zu Verzögerungen bei der
MANDATED
-Tests, da ältere Geräte die Tests ebenfalls bestehen müssen.
In Android 11 werden MANDATED
-Tests durch das
ersten API-Level-Flag aus den Phone-Eigenschaften. Für Geräte mit Upgrade auf
Android 11, Tests werden als NOT_YET_MANDATED
ausgeführt
Tests, d. h., ein Test kann fehlschlagen, aber als PASS
in
CtsVerifier.apk
Beispiel:
- In Android 11:
test_channel_saturation
-Test istMANDATED
für Geräte mit einem ersten API-Level größer als 29. - In Android 10:
test_channel_saturation
-Test istMANDATED
für alle Geräte.
Szenenbeleuchtung wird überprüft
In Android 11 wird die Szenenbeleuchtung durch die Helligkeit in den Ecken der Szene analysieren. Alle manuellen Szenen sind wurden auf Beleuchtung geprüft. Tablet-basierte Szenen werden für RHF-Kameras geprüft. und WFoV-Kameras auf dem WFoV-Testgeländer. Wenn die Lichtstärke unzureichend ist, wird ein Fehler gemeldet und der Test schlägt fehl.
Änderungen am Szenennamen
In Android 10 macht Szene 1 den Großteil der und einen großen Prozentsatz der Gesamttestzeit. Wenn ein Test in Szene 1 vorliegt schlägt er fehl, muss die gesamte Szene erneut ausgeführt werden. Die gesamte Szene wird wiederholt, reduziert die Zahl der Grenztests. In Android 11 Wiederholungszeiten werden reduziert, indem Szene 1 in zwei Szenen aufgeteilt wird: Scene1_1 und Szene1_2.
In der folgenden Tabelle sind die Testzeiten für die Pixel 4-Rückkamera tabellarisch dargestellt für verschiedene Szenen. Die Anzahl der Tests wird aufgeteilt, um die Testzeit auszugleichen. um die Anzahl der Tests nicht auszugleichen.
Außerdem wird der Name bereinigt. Szene 2 ist mit Buchstaben geteilt und Szene 1 mit Zahlen geteilt ist. Die Nomenklatur für die verschiedenen Erweiterungen lautet wie folgt:
- Szenen mit demselben Diagramm, aber unterschiedlichen Tests:
*_1,2,3
- Szenen mit unterschiedlichen Diagrammen, aber denselben Tests:
*_a,b,c
Ambiente-Option | Anzahl der Tests | Pixel 4-Laufzeit (Min:Sek.) |
---|---|---|
0 | 11 | 1:12 |
1_1 | 22 | 5:12 |
1_2 | 13 | 5:20 |
2_a | 5 | 3:22 |
2_b | 1 | 0:24 |
2_c | 1 | 0:24 |
3 | 6 | 2:04 |
4 | 2 | 2:46 |
Änderungen testen
Tests wurden auf die erste API-Ebene aktualisiert
In Android 11 sind die Tests in der folgenden Tabelle
wurde aktualisiert, um das Flag der ersten API-Ebene zu verwenden. Für alle diese Tests wird ein
erstes API-Level von 29 mit Ausnahme des test_tonemap_curve
-Tests, bei dem
das erste API-Level 30.
Ambiente-Option | Test name | Erste API-Ebene | Beschreibung |
---|---|---|---|
0 | test_tonemap_curve |
30 | Sicherstellen, dass die Pipeline korrekte Farbausgaben mit linearer Tonnemap und idealem Ergebnis hat
Bildeingabe (abhängig von test_test_patterns ). |
1 | test_ae_precapture_trigger |
29 | Teste den AE-Zustandsautomaten, wenn du den Auslöser für die Vorabaufnahme verwendest. Mit AE sicherstellen deaktivierter Trigger für die Vorerfassung keine Auswirkungen. |
test_channel_saturation |
29 | RGB-Kanäle sollten mit ähnlichen Werten gesättigt werden, um Färbungen zu vermeiden gesättigte Regionen gesättigt sind. | |
2_a/b/c | test_num_faces |
29 | Größere Altersvielfalt bei Gesichtern |
Tests mit Änderungen
Die Tests in der folgenden Tabelle wurden in Android aktualisiert. 11. Die Änderungen werden beschrieben in der Spalte Beschreibung der Änderungen.
Ambiente-Option | Test name | Erste API-Ebene | Beschreibung der Änderungen |
---|---|---|---|
1 | test_burst_sameness_manual |
30 | Reduzieren Sie die Toleranz auf 2%. |
4 | test_aspect_ratio_and_crop |
30 | Zur Ausführung auf LIMITED Geräten ändern. |
test_multi_camera_alignment |
30 | Sie können die Kameras einzeln durchgehen, wenn Aufnahmen mit mehreren Kameras nicht unterstützt werden. Überarbeiten Sie die Logik für die Kameraauswahl, um drei und vier Kameras zu berücksichtigen. Mono-, Tiefen- und Infrarotkameras überspringen. |
Neue Tests
Die Tests in der folgenden Tabelle sind aktiviert in Android 11 Die Tests sind in der Tabelle zusammengefasst In den folgenden Abschnitten finden Sie eine detaillierte Beschreibung.
Ambiente-Option | Test name | Erste API-Ebene | Beschreibung |
---|---|---|---|
0 | test_vibration_restrictions |
30 | Achten Sie darauf, dass Warnungen und Vibrationen bei Bildaufnahmen nicht aktiviert sind. |
2_a | test_jpeg_quality |
30 | Testen Sie, ob Quantisierungstabellen die Komprimierung für mehr JPEG-Dateien verringern die Qualität zu verbessern. |
2_d/2_e | test_num_faces |
30 | Für mehr Vielfalt bei Gesichtern |
2_e | test_continuous_picture |
30 | 3A muss sich in android.control.afAvailableModes =
CONTINUOUS_PICTURE. angleichen |
ändern | test_scene_change |
31 | android.control.afSceneChange bei Szenenwechsel durchgesetzt. |
6 | test_zoom |
30 | android.control.zoomRatioRange testen. |
Szene0/test_vibration_restriction
Für diesen Test ist keine bestimmte Szene erforderlich, aber das zu testende Gerät auf einer harten Oberfläche platziert oder auf einer harten Oberfläche montiert sind. Dazu gehört die Montage am ITS-in-a-box-Testgehäuse
Assertions
- Keine Vibrationen während der Kameranutzung
Szene2_a/JPEG-Qualität_testen
Method
Die verschiedenen Teile der JPEG-Datei werden durch 2-Byte-Markierungen definiert. Weitere Informationen Weitere Informationen finden Sie unter JPEG.
Der Test extrahiert die Quantisierungsmatrizes aus der JPEG-Aufnahme. Markierung für die Quantisierungsmatrizen in der JPEG-Aufnahme ist die Sequenz [255, 219]. Wenn die Markierung gefunden wird, geben die nächsten beiden Listenelemente die Größe an. JPEG DQT Die Größenmarkierung ist normalerweise [0, 132] = 256*0+132 = 132, was die Größe der die DQT-Daten in der JPEG-Aufnahme. Die eingebetteten Daten haben folgendes Format: [255, 219, 0, 132, 0 (Luma-Marker), 8x8-Luma-Matrix, 1 (Chroma-Marker), 8x8-Chroma Matrix] verwendet werden.
0
für den Luma-Matrixmarker und 1
für den Chroma Marker werden angezeigt.
einheitlich für eine Reihe von Geräten, einschließlich Smartphones, die die beiden
in separate DQT-Abschnitte in der JPEG-Datei aufgeteilt. Luma-Matrizen haben in der Regel
eine höhere Vielfalt an Werten im Vergleich zu den Chromamatrizen, da das menschliche Auge
als auf Chroma-Bilder und JPEG-Bilder.
Die extrahierten Luma- und Chromamatrizen sind unten für die Qualitätsfaktoren von
85 und 25 für die Rückkamera von Pixel 4, die Scene2_a mit dem ITS-Teststand aufnimmt.
Die Matrixwerte erhöhen sich (was auf eine erhöhte Komprimierung hindeutet) für
Qualitätseinstellung auswählen. Diese Matrizen werden nur dann mit dem Skript gedruckt, wenn
wird das Flag debug=True
angewendet. Beachten Sie die größere Abweichung bei den Einträgen im
Luma-Matrizen im Vergleich zu den Chroma-Matrizen.
luma matrix (quality = 85) chroma matrix (quality = 85)
[[ 5 3 4 4 4 3 5 4] [[ 5 5 5 7 6 7 14 8]
[ 4 4 5 5 5 6 7 12] [ 8 14 30 20 17 20 30 30]
[ 8 7 7 7 7 15 11 11] [30 30 30 30 30 30 30 30]
[ 9 12 17 15 18 18 17 15] [30 30 30 30 30 30 30 30]
[17 17 19 22 28 23 19 20] [30 30 30 30 30 30 30 30]
[26 21 17 17 24 33 24 26] [30 30 30 30 30 30 30 30]
[29 29 31 31 31 19 23 34] [30 30 30 30 30 30 30 30]
[36 34 30 36 28 30 31 30]] [30 30 30 30 30 30 30 30]]
luma matrix (quality = 25) chroma matrix (quality = 25)
[[ 32 22 24 28 24 20 32 28] [[ 34 36 36 48 42 48 94 52]
[ 26 28 36 34 32 38 48 80] [ 52 94 198 132 112 132 198 198]
[ 52 48 44 44 48 98 70 74] [198 198 198 198 198 198 198 198]
[ 58 80 116 102 122 120 114 102] [198 198 198 198 198 198 198 198]
[112 110 128 144 184 156 128 136] [198 198 198 198 198 198 198 198]
[174 138 110 112 160 218 162 174] [198 198 198 198 198 198 198 198]
[190 196 206 208 206 124 154 226] [198 198 198 198 198 198 198 198]
[242 224 200 240 184 202 206 198]] [198 198 198 198 198 198 198 198]]
Abbildung 3 zeigt die durchschnittlichen Matrixwerte für die Pixel 4-Rückkamera im Vergleich zu JPEG. die Qualität zu verbessern. Bei erhöhter JPEG-Qualität wird die (Durchschnitt der Luma/Chroma-DQT-Matrix) nimmt ab.
Abbildung 3: Rückkamera von Pixel 4 (Luma/Chroma DQT Matrix) im Vergleich zu JPEG Qualität
Assertions
- Bei [25, 45, 65, 86] hat eine Qualität von +20 eine Reduzierung der Quantisierung um 20 %. Matrixmittelwertes.
- Nutzlasten der DQT-Matrix sind Quadratzahlen.
Abbildung 4 zeigt ein Beispiel für ein Smartphone, das den Test nicht besteht. Bei sehr niedrigen
hochwertigen Bildern (jpeg.quality < 50
) werden nicht stärker komprimiert.
Quantisierungsmatrix.
Abbildung 4: Beispiel für fehlgeschlagenen Test
szene2_d/e test_anzahl_gesichter
Es werden zwei neue Gesichtserkennungsszenen hinzugefügt, um die Vielfalt der Gesichter auf der Gesichtserkennungsalgorithmus prüft. Durch wiederholtes Testen einer Reihe von Kameras das herausforderndste Gesicht wird in Scene2_d erwartet. Vor allem hat das Modell einen Hut und einen Bart. die Gesichtsszenen. Die neuen Szenen sind in den Abbildungen 5 und 6 zu sehen.
Abbildung 5. Scene2_d
Abbildung 6: Scene2_e
Assertions
num_faces == 3
Szene2_e/test_fortlaufendes_Bild
Method
Der Test test_continuous_picture
nutzt Scene2_e, kann aber aktiviert werden
mit den Gesichtern. In diesem Test sind 50 Frames mit VGA-Auflösung
mit der ersten Einstellung android.control.afMode = 4
(CONTINUOUS_PICTURE)
erfasst.
Es wird erwartet, dass sich das 3A-System am Ende einer Aufnahme mit 50 Frames eingerichtet hat.
Assertions
- 3A ist am Ende der Aufnahme konvergiert.
Szenenwechsel/Testszenenänderung
Method
Es wird ein neuer Test aktiviert, um zu prüfen, ob das Flag android.control.afSceneChange
durch einen Szenenwechsel geltend gemacht. Für den Szenenwechsel wird das Tablet verwendet
eine Gesichterszene zu zeigen und dann das Tablet ein- und auszuschalten, um eine
Szenenwechsel Die Szene verwendet Scene2_e, befindet sich aber in einer separaten Szene,
die erforderliche Tablet-Steuerung.
Für manuelle Tests kann der Szenenwechsel auch durch eine Handbewegung Ihre Hand vor die Kamera halten.
Abbildung 7 zeigt ein Zeitdiagramm des Tests. Timing zwischen Bildschirmdrehung aus und die Erfassung wird basierend auf den Ereignisergebnissen früherer Aufnahmen angepasst.
Abbildung 7: Timing-Diagramm für test_scene_change
Bedingungen ändern:
- Wenn es einen Szenenwechsel gibt und
afSceneChange == 1
, gibt der TestPASS
. - Bei einem Szenenwechsel und
afSceneChange == 0
ändert sich die Szene verschiebt 5 Frames früher, umafSceneChange
mehr Zeit zu geben, etwas zu tun. - Wenn es keinen Szenenwechsel gibt und
afSceneChange == 1
, gibt der TestFAIL
. - Wenn es keinen Szenenwechsel gibt und
afSceneChange == 0
, ändert sich die Szene verschiebt 30 Frames früher, um Szenenwechsel bei der Aufnahme zu erfassen.
Assertions
- Ein-/Aus-Schaltflächen für Bildschirm/Szene
- Das Flag
afSceneChange
befindet sich in [0, 1]. - Wenn kein Szenenwechsel vorhanden ist, konvergiert 3A (funktional identisch mit
test_continuous_picture
. - Wenn
afSceneChange == 1
, muss sich die Helligkeit im Bild ändern. PASS
innerhalb von sechs Versuchen mit geändertem Timing basierend auf vorherigen Ergebnissen.
Szene 6/Test-Zoom
Method
Zum Testen von android.control.zoomRatioRange
ist eine neue Szene erforderlich:
entweder ist die Funktion bei etablierten Szenen nicht klein genug, um vergrößert zu werden.
(Szenen [1, 2, 4]) oder viele Objekte enthält, die nicht leicht zu erkennen sind,
die die Extraktion von Features erschwert (Szene 3).
Abbildung 8 zeigt die neue Szene mit einer regelmäßigen Anordnung von Kreisen. Das Array von
Mit Kreisen werden die Anforderungen an das Zentrieren von DUT/Diagrammen lockerer und es können Kreise
immer in der Mitte des Bilds. In dieser Szene wird ein Array von 9 x 5
schwarze Kreise über das gesamte Tablet. Ein Kreis wird ersetzt.
mit einem Quadrat oben rechts, um die Ausrichtung anzuzeigen. Die Kreisgrößen
eine Funktion mit einer Fläche von etwa 7.500 Pixeln (radius=50pixels
) für eine
4.000 × 3.000 Pixel aufgenommener Sensor, der mit einem Sichtfeld von etwa 80 Grad aufgenommen wurde.
Abbildung 8: Szene "test_zoom"
Abbildung 9: Pixel 4 cam[0] zoom = [1, 3,33, 5,67, 8] Bilder mit gefundenem Kreis
Abbildung 9 zeigt aufgenommene Bilder für die Rückkamera von Pixel 4 als Zoomfaktor. steigt in vier Schritten von 1 auf 8x an. Diese Bilder werden ohne ganz besondere Vorsicht walten lassen, außer bei der Verwendung der Testöffnung zwei Öffnungen, damit sowohl die Front- als auch die Rückkamera getestet werden können. Ein Versatz von Mittelpunkt wird erwartet und ist zu sehen, da die Tabellenreihe etwas links vom Diagramm verläuft. in der Mitte. Außerdem ist das Diagramm ausreichend, um den Zoom zu testen. höhere Verhältnisse als 8x.
Kreise werden gesucht...
Der Test enthält eine find_circle()
-Methode mit findContours
, die alle
Konturen erstellt und die Konturensuche auf die gewünschten Kreise eingegrenzt wird.
Folgendes:
- Die Fläche von Konturen muss größer als 10 Pixel sein.
- Konturen müssen das
NUM_PTS >= 15
-Zeichen haben. - Konturen müssen schwarze Mitte haben.
- Konturen müssen kreisförmig sein, das heißt, ihre Fläche ist in der Nähe des pi*r2-Bereichs der Kontur.
Testbereich
android.control.zoomRatioRange
wird in 10 Schritte unterteilt.
- [1, 7] Tests [1, 1,67, 2,33, 3, 3,67, 4,33, 5, 5,67, 6,33, 7]
Wenn der gefundene Kreis die Bildbegrenzungen berührt, wird das Zoomen angehalten. Es wird geprüft, ob im Test eine ausreichende Zoomstufe erreicht wurde. (10x)
Assertions
- Bei jeder Zoomeinstellung wird mindestens ein Kreis gefunden.
- Es wird 10-mal oder maximal
android.control.zoomRatioRange
getestet. - Der Kreisradius wird mit Zoom skaliert (RTOL 10% vom erwarteten Wert).
- Kreismittelversatz zur Mitte mit Zoom (RTOL 10% vom erwarteten Wert).
- Die erforderliche Zoomstufe ist erreicht (2x).
Mehr Kameratests für LIMITED
In Android 11 werden die Tests in der folgenden Tabelle
LIMITED
Kameras testen. Zusätzlich zu den neuen Tests
Der scene4/test_aspect_ratio_and_crop
-Test wurde aktualisiert, um Tests zu ermöglichen
von LIMITED
Geräten mit einem ersten API-Level von 30 oder höher.
Ambiente-Option | Test name |
---|---|
0 | test_vibration_restrictions |
2_a | test_jpeg_quality |
2_d/2_e | test_num_faces |
4 | test_aspect_ratio_and_crop |
6 | test_zoom |
Abbildung 10 zeigt den geheimen ITS-Decodierer von Android 11“ Klingelton Der geheime Decoder Ring zeigt an, über welche Testeinstellungen die einzelnen Tests gesteuert sind. Das Gating ist zur besseren Lesbarkeit farblich gekennzeichnet. Die wichtigsten Elemente für das Gating sind:
MANUAL_SENSOR
READ_3A
*MANUAL SENSOR
erforderlichCOMPUTE_TARGET_EXPOSURES
*MANUAL SENSOR
erforderlichPER_FRAME_CONTROL
RAW
SENSORS
*REALTIME
MULTI_CAMERA
MANUAL SENSOR
, READ_3A
, COMPUTE_TARGET_EXPOSURES
und
PER_FRAME_CONTROL
für die meisten Tests. Außerdem sind Tests, die
Geräte, die für LIMITED
aktiviert sind, werden hellgrün hervorgehoben.
Abbildung 10. Geheimer Decoderring für Android 11