Zbiór testów obrazu z aplikacji aparatu (ITS) na Androida jest częścią weryfikatora pakietu Compatibility Test Suite (CTS) na Androida i zawiera testy weryfikujące zawartość obrazu. Narzędzie CTS Verifier umożliwia automatyzację testów ITS za pomocą ITS-in-a-box w przypadku kamery. Obsługa testów ręcznych obejmuje wszystkie formaty urządzeń z Androidem.
ITS-in-a-box zapewnia te korzyści:
- Automatyzacja Podczas testu nie jest wymagana interwencja człowieka.
- Łatwe rozwiązywanie problemów. Spójność środowiska testowego prowadzi do mniejszej liczby błędów konfiguracji i zwiększa możliwość powtórzenia testu.
- Skuteczność. Możliwość ponownego próbowania w przypadku pojedynczej kamery lub sceny poprawia wydajność testu.
Rozpocznij
ITS-in-a-box to plastikowe pudełko wycinane laserowo z rysunków CAD, tablet do tworzenia wykresów i urządzenie testowe (DUT). W poniższej tabeli opisano funkcje i specyfikacje dostępnych systemów ITS-in-a-box.
Rig | Odległość na wykresie | Zakres pola widzenia kamery DUT (ok.) | Funkcje |
---|---|---|---|
Moduł podstawowy szkieletu | 22 cm | 60° – 120° |
|
Moduł podstawy i teleskopowy wysięgnik | 22 cm – 100 cm* | 10°–120° | |
WFoV ITS-in-a-box | 22 cm | 60° – 120° |
|
RFoV ITS-in-a-box | 31 cm | 60°–90° |
|
*Długość wysięgnika teleskopowego można dostosować do różnych odległości na wykresie. |
Aby rozpocząć korzystanie z ITS-in-a-box w przypadku kamery:
- Kup lub zbuduj modułową, WFoV lub RFoV ITS-in-a-box.
- Konfigurowanie tabletu za pomocą oprogramowania Camera ITS.
- Przeprowadzanie testów
- Zobacz wyniki z testu DUT.
Konfigurowanie tabletu
W tej sekcji znajdziesz szczegółowe instrukcje konfigurowania tabletu do korzystania z
testów ITS aparatu znajdujących się w katalogu
CameraITS
. W tych instrukcjach jako przykładowy tablet użyto urządzenia Pixel C. Informacje o wymaganiach i zaleceniach dotyczących tabletów znajdziesz w artykule Wymagania dotyczące tabletów.
Uwaga: skrypty Pythona Camera ITS automatycznie ustawiają na tablecie te opcje:
Ustawienia > Wyświetlacz > Uśpij > Po 30 minutach braku aktywności
Automatyczna jasność > WYŁĄCZONY
- Naładuj tablet i go włącz. Jeśli pojawi się prośba o utworzenie konta, ją pomiń (ITS kamery nie wymaga parowania z żadnym kontem na tablecie).
- Zaktualizuj tablet do Androida 7.0 lub nowszego. Android 6.x i starsze nie obsługują ITS kamery.
- Włącz tryb programisty.
- Wróć do Ustawień i wybierz Opcje programisty.
Włączanie opcji - Włączono
- Pozostaw włączony ekran
- Debugowanie przez USB (umożliwia hostowi uruchamianie tabletu w trybie debugowania). Gdy po raz pierwszy połączysz tablet z hostem, pojawi się pytanie Zezwolić na debugowanie przez USB? Jeśli tablet nie wyświetla prośby o debugowanie, odłącz go, a następnie ponownie podłącz.
Wyłączanie opcji - Automatyczne aktualizacje systemu
- Zweryfikuj aplikacje przez USB
- Aby określić identyfikatory DUT i wykresów, uruchom polecenie
$ adb devices
, aby wyświetlić listę dostępnych urządzeń. Aby określić, które z nich todevice_id
, a którechart_id
, podłącz i odłącz urządzenia, obserwując, które z nich łączą się i rozłączają. - Przeprowadź 3 testy, aby wyeliminować podpowiedzi i komunikaty, które mogą zasłaniać wykresy na ekranie tabletu.
- Umieść tablet ekranem do góry na stole (nie przyczepiaj go do tylnej części pudełka).
- Uruchom to polecenie:
Sceny 2 i 3 wymagają wyświetlenia obrazu na tablecie, dlatego tablet wyświetla prompt Zezwól Dyskowi na dostęp do zdjęć, multimediów i plików na urządzeniu?. Aby usunąć ten prompt (i zapobiec wyświetlaniu kolejnych), naciśnij Zezwól.python tools/run_all_tests.py device=$device_id camera=0 chart=$chart_id scenes=2,3
- Uruchom ponownie polecenie. Na tablecie pojawi się pytanie Czy chcesz zachować kopię tego pliku? i propozycja zapisania pliku na Dysku Google. Aby usunąć to prompt (i zapobiec wyświetlaniu kolejnych), kliknij ikonę Dysku, a następnie Anuluj przesyłanie na Dysk.
- Na koniec uruchom
tools/run_all_tests.py
i sprawdź, czy sceny zmieniają się automatycznie, gdy skrypt przechodzi przez różne sceny. Większość testów kończy się niepowodzeniem (ponieważ kamera nie jest skierowana na wykres), ale możesz sprawdzić, czy tablet prawidłowo przełącza się między scenami bez wyświetlania żadnych promptów ani innych wyskakujących okienek.
Przeprowadzanie testów
Zanim uruchomisz ITS-in-a-box, upewnij się, że konfiguracja testu zawiera następujący sprzęt i oprogramowanie:
- 1 urządzenie ITS-in-a-box
- 1 (jeden) tablet o wysokiej rozdzielczości 10 cali do wyświetlania scen, numer seryjny: 5811000011
- 1 urządzenie DUT z zainstalowaną aplikacją CTS Verifier w wersji 7.0_8+ lub nowszej. Przykład DUT:
- 1 urządzenie Pixel NOF26W do testowania tylnego aparatu (0), numer seryjny FA6BM0305016. Aby zainstalować aplikację CTS Verifier, rozpakuj plik
android-cts-verifier.zip
, a następnie uruchomadb -s FA6BM0305016 install -r -g android-cts-verifier/CtsVerifier.apk
- 1 urządzenie Pixel NOF26W do testowania tylnego aparatu (0), numer seryjny FA6BM0305016. Aby zainstalować aplikację CTS Verifier, rozpakuj plik
Uruchamianie scen na tabletach
Aby uruchomić sceny 0–4, 6 i scene_change na tylnym aparacie:
cd android-cts-verifier/CameraITS
. build/envsetup.sh
python tools/run_all_tests.py camera=0
Przykład:
Ponowne uruchamianie scen
Możesz ponownie wykonać sceny dla jednej kamery:
- Aby ponownie przetworzyć sceny na jednej kamerze:
python tools/run_all_tests.py device=FA6BM0305016 camera=0 scenes=3,4
Uruchom scenę 5
Scena 5 wymaga specjalnej konfiguracji z określonym oświetleniem (szczegółowe informacje znajdziesz w CameraITS.pdf
w CTS Verifier, który możesz pobrać na stronie Compatibility Test Suite Downloads).
Scena 5 musi być uruchomiona osobno (poza pudełkiem).
Aby uruchomić scenę 5 z przednim i tylnym aparatem na jednym urządzeniu:
python tools/run_all_tests.py device=FA6BM0305016 camera=0 scenes=5
python tools/run_all_tests.py device=FA6BM0305016 camera=1 scenes=5
Wyniki
Podczas testowania możesz wyświetlać wyniki i zapisywać je w postaci raportu.
- Wyświetl wyniki. Aby zapisać wyniki ITS aparatu jako raport:
- Naciśnij Przejdź dalej i zapisz raport.
Rysunek 3. Raport ITS o kamerze - Pobieranie raportów z urządzenia:
adb -s FA6BM0305016 pull /sdcard/verifierReports
- Rozpakuj plik raportu i otwórz
test_result.xml
.
Rysunek 4. Raporty ITS z kamer
- Naciśnij Przejdź dalej i zapisz raport.
Wymagania dotyczące tabletu
W przypadku Androida 15 i nowszych tablety używane do wyświetlania wykresu ITS muszą znajdować się na tej liście dozwolonych tabletów. Listę tabletów, które obsługują testowanie scen o słabym oświetleniu, znajdziesz w artykule Obsługiwane tablety do testowania scen o słabym oświetleniu. W przypadku Androida 14 lub starszego zapoznaj się z wymaganiami dotyczącymi tabletów z Androidem 14 lub starszym.
Tablety na liście dozwolonych są wybierane na podstawie tych kryteriów:
- Rozmiar ekranu około 10 cali z rozdzielczością większą niż 1920 x 1200 pikseli.
- Nie może występować żadne zmierzone migotanie spowodowane ściemnianiem ekranu za pomocą modulacji szerokości impulsu (PWM).
- Umożliwia wykonywanie poleceń adb wysyłanych przez testy ITS i wyświetlanie obrazów wykresów z ustawioną jasnością ekranu.
Wartość brightness
musi być ustawiona w config.yml
zgodnie z modelem tabletu. Aby sprawdzić, czy model Twojego tabletu odpowiada nazwie urządzenia na liście dozwolonych, wydrukuj wartość ro.product.device
, uruchamiając polecenie adb shell getprop | grep 'ro.product.device'
adb.
Urządzenie | Rozmiar wyświetlacza (w calach) |
Rozmiar wyświetlacza (w pikselach) |
Wymiary tabletu (w calach) |
Jasność wyświetlacza |
Nazwa urządzenia (ro.product .device) |
System operacyjny tabletu Wersja |
---|---|---|---|---|---|---|
Google Pixel C |
10.2 | 2560 x 1800 | 9,53 x 7,05 x 0,28 | 96 | smok | Android 6.0 lub nowszy |
Honor Pad 8 |
11 | 2000 x 1200 | 10,18 x 6,76 x 0,29 | 192 | HNHEY-Q | Android 12 |
Huawei MediaPad m5 |
10.8 | 2560 × 1600 | 10,18 x 6,76 x 0,29 | 192 | HWCMR09 | Android 8 lub nowszy |
Lenovo Tab M10 Plus |
10.3 | 1920 x 1200 | 9,61 x 6,03 x 0,32 | 192 | X606F | Android 9 lub nowszy |
Lenovo Tab P11 |
11 | 2000 x 1200 | 10,17 x 6,42 x 0,30 | 192 | J606F | Android 11 lub nowszy |
Lenovo Tab P11 Gen 2 |
11,5 | 2000 x 1200 | 10,59 x 6,67 x 0,29 | 192 | TB350FU | Android 13 lub nowszy |
Nokia T21 |
10.4 | 2000 x 1200 | 9,74 x 6,19 x 0,30 | 192 | AGTA | Android 12 lub nowszy |
Samsung Galaxy Tab A7 |
10.4 | 2000 x 1200 | 9,75 x 6,2 x 0,28 | 192 | gta4lwifi | Android 10 lub nowszy |
Samsung Galaxy Tab A8 |
10.5 | 1920 x 1200 | 9,72 x 6,73 x 0,27 | 192 | gta8wifi | Android 11 lub nowszy |
Samsung Galaxy Tab A9+ |
11 | 1920 x 1200 | 10,12 x 6,64 x 0,27 | 192 | gta9pwifi | Android 13 lub nowszy |
Vivo Pad2 |
12.1 | 2800 x 1968 | 10,47 x 7,54 x 0,26 | 192 | DPD2221 | Android 13 lub nowszy |
Xiaomi Pad 5 |
11 | 2560 × 1600 | 10,18 x 6,76 x 0,29 | 192 | nabu | Android 13 lub nowszy |
Xiaomi Redmi Pad |
10,61 | 2000 x 1200 | 9,86 x 6,22 x 0,28 | 192 | yunluo | Android 14 lub nowszy |
Xiaomi Redmi Pad SE |
11 | 2560 x 1600 | 10,06 x 6,58 x 0,29 | 192 | xun | Android 13 lub nowszy |
Obsługiwane tablety do scen o słabym oświetleniu
W tabeli poniżej znajdziesz tablety, które obsługują testowanie scen o słabym oświetleniu. Te tablety mogą osiągnąć poziom jasności potrzebny w przypadku sceny o słabym oświetleniu, co pozwala urządzeniu DUT prawidłowo ustawić ekspozycję wykresu.Urządzenie | Nazwa urządzenia (ro.product.device) | Wersja systemu operacyjnego tabletu |
---|---|---|
Huawei MediaPad m5 |
HWCMR09 | Android 8 lub nowszy |
Samsung Galaxy Tab A8 | gta8wifi | Android 11 lub nowszy |
Samsung Galaxy Tab A9+ | gta9pwifi | Android 13 lub nowszy |
Xiaomi Pad 5 | nabu | Android 13 lub nowszy |
Xiaomi Redmi Pad SE |
xun | Android 13 lub nowszy |
Wymagania dotyczące tabletów w Androidzie 14 i starszych
Tablety muszą mieć wyświetlacz o przekątnej około 10 cali i rozdzielczości większej niż 1920 x 1200 pikseli. Tablet nie może używać modulacji szerokości impulsu (PWM) do ustawiania poziomu jasności. Wartość brightness
musi być ustawiona w config.yml
zgodnie z modelem tabletu.
Tabela poniżej zawiera listę zalecanych tabletów do testowania ITS wraz z wersjami Androida dla urządzeń DUT, z którymi współpracują te tablety.
Urządzenie | Rozmiar wyświetlacza (w calach) |
Rozmiar wyświetlacza (w pikselach) |
Wymiary tabletu (w calach) |
Jasność wyświetlacza |
Wyświetlanie bitów |
Obsługiwane systemy operacyjne: DUT |
Obsługiwane systemy operacyjne |
---|---|---|---|---|---|---|---|
Samsung Galaxy Tab A8 |
10.5 | 1920 x 1200 | 9,72 x 6,37 x 0,27 | 192 | 8 | Android 13 lub nowszy | Android 11 lub nowszy |
Xiaomi Pad 5 |
11 | 2560 × 1600 | 10,03 x 6,55 x 0,27 | 1024 | 11 | Android 12 lub nowszy | Tylko Android 11 |
Lenovo Tab M10 Plus |
10.3 | 1920 x 1200 | 9,61 x 6,03 x 0,32 | 192 | 8 | Android 12 lub nowszy | Android 9 lub nowszy |
Samsung Galaxy Tab A7 |
10.4 | 2000 x 1200 | 9,75 x 6,2 x 0,28 | 192 | 8 | Android 12 lub nowszy | Android 10 lub nowszy |
Chuwi Hi9 Air 10.1 |
10.1 | 2560 x 1600 | 9,52 x 6,77 x 0,31 | 192 | 8 | Android 7 lub nowszy | Android 8 lub nowszy |
Asus ZenPad 3 |
9.7 | 2048 x 1536 | 9,47 x 6,44 x 0,28 | 192 | 8 | Android 7.0 lub nowszy | Android 6.0 lub nowszy |
Huawei MediaPad m5 |
10.8 | 2560 × 1600 | 10,18 x 6,76 x 0,29 | 192 | 8 | Android 7 lub nowszy | Android 8 lub nowszy |
Google Pixel C |
10.2 | 2560 x 1800 | 9,53 x 7,05 x 0,28 | 96 | 8 | Android 7.0 lub nowszy | Android 6.0 lub nowszy |
Sony Xperia Z4 |
10.1 | 2560 × 1600 | 10 x 6,57 x 0,24 | 192 | 8 | Android 7 lub nowszy | Android 5 lub nowszy |
Najczęstsze pytania
Pytanie 1. Jak określić, jakie stanowiska testowe są potrzebne do testowania mojego urządzenia?
Testy RFoV ITS-in-a-box w wersji 1 testują kamery RFoV w przypadku testów scen na tablecie w katalogu
CameraITS/tests
. RFoV to 60° < FoV < 90°.
W przypadku kamer o większym FoV światła mogą pojawiać się na zdjęciach lub wykresy mogą obejmować zbyt mały obszar w FoV, co może wpływać na wyniki testu.
WFoV ITS-in-a-box w wersji 2 testuje kamery WFoV w przypadku testów scen na tablecie w katalogu
CameraITS/tests
. WFoV jest zdefiniowany jako FoV >= 90°.
Urządzenie testowe w wersji 2 jest funkcjonalnie identyczne z wersją 1, ale większe. Urządzenie testowe w wersji 2.0 umożliwia testowanie kamer RFoV i WFoV w Androidzie 9 lub nowszym. Ze względu na większy rozmiar wersja 2 jest idealna, jeśli DUT to tablet
Modułowa podstawa rig
służy do testowania kamer WFoV w przypadku testów scen na tabletach w katalogu
CameraITS/tests
. WFoV to pole widzenia >= 90°.
Modułowe podstawy mogą testować kamery z RFoV i WFoV na urządzeniach z Androidem 9 lub nowszym.
Obsługuje też teleobiektyw, który można podłączyć do testowych teleobiektywów o dłuższej minimalnej odległości ostrości. Modułowe podstawy są pod względem funkcjonalności identyczne z urządzeniem WFoV ITS-in-a-box, ale są mniejsze.
pole sensor fusion box testuje opóźnienie w wyświetlaniu obrazu w przypadku systemu z wieloma kamerami i synchronizację klatek z testami w scenes=sensor_fusion
. Aby flaga funkcji REALTIME
działała prawidłowo, przesunięcie czasu działania aparatu i żyroskopu musi być mniejsze niż 1 ms.
Urządzenia z wieloma kamerami można testować za pomocą pojedynczego urządzenia do testów statycznych ITS oraz urządzenia do fuzji danych z czujników, jeśli kamera ma flagę funkcji REALTIME
.
Przykładowe konfiguracje znajdziesz w tabeli poniżej.
Przykład | Pole widzenia kamery | REALTIME? | Zalecane platformy | Uwagi |
---|---|---|---|---|
1 | 75° | Nie | Podstawa modułowa, wersja 1 lub 2 | Android 7.0 lub nowszy |
2 | 75° | Tak | Moduł podstawy, wersja 1 lub 2 oraz sensor fusion | Android 9 lub nowszy. |
3 | 75° + 95° | Tak | baza modułowa lub Rev 2 i zespół czujników. | Android 9 lub nowszy. |
4 | 75° + 95° + 20° | Tak | Modułowa podstawa, teleskopowe przedłużenie i połączenie czujników | Android 9 lub nowszy |
5 | Tablet 75° + 95° | Nie | Rev 2 | Android 9 lub nowszy. |
Pytanie 2. Jak określić, który sprzęt testowy jest używany?
Aby wyznaczyć prawidłowy testowy układ, sprawdź, czy parametr odległości na wykresie jest prawidłowy. Platforma testowa w wersji 1 (RFoV) ma odległość od wykresu wynoszącą 31 cm, a platforma w wersji 2 (WFoV) – 22 cm. Domyślna odległość od wykresu to 31 cm.
Z Androida 10 na Androida 11
Aby określić prawidłowy sprzęt testowy w Androidzie w wersjach od 10 do 11, dodaj w wierszu poleceń flagędist
. Wartość domyślna dla dist
to 31
. Aby zmienić parametr chart_distance
, uruchom to polecenie:
python tools/run_all_tests.py ... chart=# dist=22
Android 12 lub nowszy
Aby określić prawidłową konfigurację testową w Androidzie 12 i wyższych, możesz edytować plik config.yml, aby zmienić parametrchart_distance
.
edit config.yml chart_distance: 31.0 → chart_distance: 22.0
Pytanie 3. Jak mogę kontrolować jasność tabletu?
Domyślnie jasność tabletu jest ustawiona na 96.
Aby zmienić jasność na tabletach z Androidem 7.0–9, wykonaj te czynności:
edit tools/wake_up_screen.py DISPLAY_LEVEL=96 → DISPLAY_LEVEL=192
Aby zmienić jasność na tabletach z Androidem w wersji od 10 do 11, wartość można zmienić na linii poleceń, dodając flagę brightness
:
python tools/run_all_tests.py device=# camera=# chart=# brightness=192
Aby zmienić jasność na tabletach z Androidem 12 lub nowszym:
edit config.yml brightness: 96 → brightness: 192
Pytanie 4. Jak debugować pojedynczy test?
Testy można uruchamiać pojedynczo w celu debugowania, ale ich wyniki nie są przesyłane do CtsVerifier.apk
, chyba że uruchomiono całą scenę.
Aby uruchomić pojedynczą scenę w Androidzie 11 lub starszym:
- Wczytaj scenę, dodając flagę
scenes
w polutools/run_all_tests.py
:python tools/run_all_tests.py device=# camera=# chart=# scenes=#
-
Naciśnij Control+C, aby zatrzymać testy po zarejestrowaniu sceny jako załadowanej do
stdout
.Jeśli odpowiednia scena jest już na ekranie, obudź ekran:
python tools/wake_up_screen.py screen=#
-
Uruchomić pojedynczy test.
python tests/scene#/test_*.py device=# camera=#
Następnie wykresy są generowane w katalogu lokalnym, a na ekranie wyświetlane są wartości
stdout
istderr
.Aby uzyskać więcej informacji do debugowania, dodaj do skryptu instrukcje
print
. Aby zwiększyć ilość danych wyjściowych testu na potrzeby debugowania, dodaj flagędebug=True
.python tests/scene#/test_*.py device=# camera=# debug=True
Podczas uruchamiania tools/run_all_tests.py
wyniki są wyświetlane na lokalnym ekranie, a obrazy są zapisywane w lokalnym katalogu zamiast w wygenerowanym katalogu /tmp/tmp###
.
Aby uruchomić pojedynczą scenę w Androidzie 12 lub nowszym:
-
Edytuj plik
config.yml
.edit config.yml camera: <camera-id> → camera: 0 scene: <scene-name> → scene: scene1_1
-
Uruchom pojedynczy test.
python tools/run_all_tests.py -c config.yml --test_bed TEST_BED_TABLET_SCENES
Wyniki są drukowane w katalogu /tmp/logs/mobly/TEST_BED_TABLET_SCENES/
posortowane według czasu wykonywania.
Pytanie 5. Dlaczego muszę uruchamiać testy, które nie przeszły, jako całą scenę, zamiast uruchamiać testy pojedynczo?
Testy można uruchamiać pojedynczo na potrzeby debugowania, ale wyniki nie są raportowane do CtsVerifier.apk
, chyba że uruchomiono całą scenę.
ITS aparatu zapewnia, że aplikacje innych firm mają zgodny interfejs aparatu. Podobnie jak w przypadku testu jednostkowego, każdy test sprawdza pojedynczą specyfikację kamery. Aby wykryć nieprawidłowe działanie, te testy powinny przejść w całości w przypadku całej sceny. Na przykład pojedynczy niewiarygodny test może przejść ponowne odtwarzanie całej sceny, ale trudno jest uzyskać pozytywny wynik w przypadku wielu niewiarygodnych testów.
W skrajnym przypadku może się zdarzyć, że w scenie jest 10 testów, z których każdy ma 50% prawdopodobieństwo zwrócenia wartości PASS
. Jeśli testy są wykonywane osobno, istnieje duże prawdopodobieństwo, że operator może sprawić, że kamera przejdzie test ITS. Jeśli jednak testy są przeprowadzane zbiorczo jako scena, prawdopodobieństwo, że scena przejdzie, wynosi tylko 0,1%.
Pytanie 6. Jak uruchomić pojedynczą scenę lub zmienić kolejność scen?
Domyślnie skrypt tools/run_all_tests.py
uruchamia wszystkie sceny w kolejności. Sceny można jednak uruchamiać pojedynczo lub w określonej kolejności i przekazywać do CtsVerifier.apk
.
Aby uruchomić pojedynczą scenę (np. scenę 2) lub kilka scen w określonej kolejności w Androidzie 11 lub nowszym:
python tools/run_all_tests.py device=# camera=# chart=# scenes=2
python tools/run_all_tests.py device=# camera=# chart=# scenes=3,2
Aby uruchomić pojedynczą scenę lub kilka scen w określonej kolejności w Androidzie 12 lub nowszym:
python tools/run_all_tests.py scenes=2
python tools/run_all_tests.py scenes=3,2
Dodatkowe parametry są ustawiane w pliku config.yml
.
Pytanie 7. Niektóre testy sceny 1 kończą się niepowodzeniem w przypadku konfiguracji tabletu, ale są zaliczane na kartce. Co robię źle?
Upewnij się, że tablet i środowisko testowe spełniają te specyfikacje.
Specyfikacje tabletu
Upewnij się, że tablet spełnia te specyfikacje:
- Rozmiar wyświetlacza (cale): 10 cali
- Rozmiar wyświetlacza (piksele): więcej niż 1920 x 1200 pikseli
Więcej informacji znajdziesz w artykule Wymagania dotyczące tabletów.
Jasność tabletu
Jeśli jasność ekranu tabletu jest zbyt niska, testy mogą nie przynieść prawidłowych wyników.
Więcej informacji znajdziesz w artykule Jak zarządzać jasnością tabletu?
Poziom oświetlenia pudełka (wymaga miernika luksów)
Upewnij się, że docelowy poziom luksów przy otwieraniu tabletu mieści się w przedziale od 100 do 300.
Jeśli poziom luksów jest za wysoki, funkcja scene1/test_param_flash_mode.py
zwraca FAIL
. Jeśli poziom luksów jest zbyt niski, wiele testów nie powiedzie się.
Pytanie 8. Jak debugować testy fuzji danych z czujników?
Sprawdź, czy należysz do grupy
dialout
.groups | egrep ‘dialout'
Sprawdź, czy kontroler sensor fusion jest podłączony, sprawdzając, czy Microchip Technology jest podłączony do portu USB.
lsusb … Bus 003 Device 004: ID 04d8:fc73 Microchip Technology, Inc. …
Aby uzyskać rozkład prób testowych, uruchom test kilka razy, używając tych poleceń.
Na Androidzie 11 lub starszym:
python tools/run_sensor_fusion_box.py device=A camera=0 num_runs=10 rotator=default
W Androidzie 12 i nowszych:
python tools/run_sensor_fusion_box.py num_runs=10
Dodatkowe parametry są ustawiane w pliku
config.yml
.Dane wyjściowe procesu znajdują się w folderze
/tmp/tmp###
utworzonym w folderachsensor_fusion_#
, gdzie#
to numer procesu. Typowe przyczyny niepowodzenia:- Telefon nie jest wyśrodkowany.
- na obrazie nie znaleziono wystarczającej liczby cech (często jest to problem z polem widzenia lub oświetleniem);
- Zwrócona wartość
FAIL
jest prawidłowa, a opóźnienie między kamerą a żyroskopem musi zostać skorygowane.
Pytanie 9. Jakie informacje należy podać, zgłaszając błąd testowania?
Podczas zgłaszania błędu podczas testowania dołącz wygenerowane pliki i obrazy testowe.
- Jeśli test został przeprowadzony za pomocą
tools/run_all_tests.py
, dołącz do błędu spakowany katalog/tmp/
. - Jeśli test został przeprowadzony samodzielnie, dołącz do zgłoszenia wszystkie zrzuty ekranu i wygenerowane obrazy.
Dołącz też raport o błędzie. Gdy test się nie powiedzie, utwórz raport o błędzie, używając tego polecenia, i dołącz wygenerowany plik ZIP do błędu.
adb -s device_id bugreport
Pytanie 10. Jak uruchomić scenę testową sensor_fusion z kamerą, która ma minimalną odległość ostrości, która powoduje rozmycie obrazu w odległości 25 cm od wykresu?
Jeśli aparat nie może ustawić ostrości w odległości 25 cm, usuń panel montażowy mapy z modułu sensora fuzji. Umieść wykres w odległości, w której urządzenie może się skupić, i zmień wartość chart_distance
w funkcji config.yml
na zmierzoną odległość między urządzeniem a wykresem. Rysunek 5 przedstawia przykład pomiaru odległości na wykresie w tej sytuacji.
edit config.yml chart_distance: 25 → chart_distance: DISTANCE_BETWEEN_DUT_AND_CHART
Pytanie 11: jak przeprowadzić testy scen na tablecie w przypadku kamery, która ma minimalną odległość ostrości, ale tworzy niewyraźne obrazy w odległości 31 cm?
Jeśli Twój aparat nie może uzyskać wystarczająco ostrych obrazów podczas testowania w odległości 31 cm (głębokość testowego urządzenia RFoV), zamontuj aparat przed urządzeniem w taki sposób, aby scena z tablicą wypełniała około 60% pola widzenia aparatu (FoV) z ostrzejszymi obrazami. Ta odległość może być mniejsza niż minimalna odległość ostrości kamery. Pozostaw chart_distance
w config.yml
na głębokości 31 cm. Podziałka wykresu na tablecie jest określana przez pole widzenia kamery, jak pokazano w tabeli poniżej:
Kąt widzenia kamery | Współczynnik skalowania wykresu |
---|---|
60 > FoV > 40 | 0,67x |
40 > FoV > 25 | 0,5x |
FoV < 25 | 0,33x |
Pytanie 12. Które testy są przeprowadzane na poszczególnych kamerach w przypadku interfejsu API logicznej kamery?
Jeśli Twoja kamera używa
REQUEST_AVAILABLE_CAPABILITIES_LOGICAL_MULTI_CAMERA
, wszystkie obsługiwane testy ITS są przeprowadzane na najwyższym poziomie kamery logicznej. Podzbiór testów ITS jest przeprowadzany na fizycznych podkamerach. Te testy są wymienione w tools/run_all_tests.py
pod symbolem SUB_CAMERA_TESTS
.