ชุดทดสอบรูปภาพกล้อง Android (ITS) เป็นส่วนหนึ่งของชุดทดสอบความเข้ากันได้ของ Android (CTS) และรวมการทดสอบที่ตรวจสอบเนื้อหารูปภาพ CTS Verifier รองรับการทดสอบอัตโนมัติของ ITS ด้วยกล้อง ITS-in-a-box; การสนับสนุนการทดสอบด้วยตนเองครอบคลุมปัจจัยรูปแบบอุปกรณ์ Android ทั้งหมด
ITS-in-a-box ประกอบด้วยคุณประโยชน์ดังต่อไปนี้:
- ระบบอัตโนมัติ ไม่จำเป็นต้องมีการแทรกแซงจากมนุษย์ในระหว่างการทดสอบ
- แก้ไขปัญหาได้ง่าย ความสม่ำเสมอของสภาพแวดล้อมการทดสอบทำให้เกิดข้อผิดพลาดในการตั้งค่าน้อยลงและเพิ่มความสามารถในการทำซ้ำ
- ประสิทธิภาพ. ความสามารถในการลองใหม่อีกครั้งสำหรับกล้อง/ฉากแต่ละตัวช่วยปรับปรุงประสิทธิภาพการดำเนินการทดสอบ
เริ่ม
ITS-in-a-box ประกอบด้วยกล่องพลาสติกที่ถูกตัดด้วยเลเซอร์จากแบบเขียนแบบโดยใช้คอมพิวเตอร์ช่วย (CAD) แท็บเล็ตแผนภูมิ และอุปกรณ์ที่อยู่ระหว่างการทดสอบ (DUT) คุณสามารถใช้ ITS-in-a-box ที่มีขอบเขตการมองเห็นกว้าง (WFoV) ซึ่งสามารถทดสอบทั้งกล้อง WFaV (FoV > 90 องศา) และ RFoV (FoV < 90 องศา) หรือกล้องภาคสนามปกติของ -view (RFoV) ในกล่องเดียว
ในการเริ่มต้นใช้งานกล้อง ITS-in-a-box:
- ซื้อหรือสร้าง WfoV หรือ RFoV ITS-in-a-box
- กำหนดค่าแท็บเล็ต ด้วยซอฟต์แวร์ Camera ITS
- เรียกใช้การทดสอบ
- รับผลลัพธ์ จาก DUT
กำหนดค่าแท็บเล็ต
ส่วนนี้ให้คำแนะนำทีละขั้นตอนสำหรับการตั้งค่าแท็บเล็ตเพื่อใช้กับ การทดสอบ Camera ITS ที่อยู่ในไดเร็กทอรี CameraITS
คำแนะนำเหล่านี้ใช้ Pixel C เป็นแท็บเล็ตตัวอย่าง สำหรับข้อมูลเกี่ยวกับข้อกำหนดและคำแนะนำของแท็บเล็ต โปรดดูที่ ข้อกำหนดของแท็บเล็ต
หมายเหตุ: สคริปต์ Camera ITS Python จะตั้งค่าตัวเลือกต่อไปนี้บนแท็บเล็ตให้คุณโดยอัตโนมัติ:
การตั้งค่า > จอแสดงผล > สลีป > หลังจากไม่มีการใช้งานเป็นเวลา 30 นาที
ความสว่างที่ปรับได้ > ปิด
- ชาร์จแท็บเล็ตและเปิดเครื่อง หากได้รับแจ้งให้ตั้งค่าบัญชี ให้ข้ามไป (Camera ITS ไม่จำเป็นต้องมีบัญชีใดๆ ที่จับคู่กับแท็บเล็ต)
- อัปเดตแท็บเล็ตเป็น Android 7.0 หรือสูงกว่า Android 6.x และเวอร์ชันต่ำกว่าไม่รองรับ Camera ITS
- เปิดใช้งาน โหมดนักพัฒนาซอฟต์แวร์
- กลับไปที่ การตั้งค่า แล้วเลือก ตัวเลือกนักพัฒนา
เปิดใช้งานตัวเลือก - บน
- ตื่นตัว
- การแก้ไขข้อบกพร่อง USB (อนุญาตให้โฮสต์เรียกใช้แท็บเล็ตในโหมดแก้ไขข้อบกพร่อง เมื่อคุณเชื่อมต่อแท็บเล็ตกับโฮสต์เป็นครั้งแรก แท็บเล็ต จะแจ้งให้อนุญาตการแก้ไขข้อบกพร่อง USB หรือไม่ หากแท็บเล็ตไม่แสดงพร้อมท์การแก้ไขข้อบกพร่อง ให้ยกเลิกการเชื่อมต่อแล้วเชื่อมต่อใหม่ ยาเม็ด.)
ปิดการใช้งานตัวเลือก - อัพเดตระบบอัตโนมัติ
- ตรวจสอบแอปผ่าน USB
- กำหนด DUT และ ID แผนภูมิโดยการรัน
$ adb devices
เพื่อแสดงรายการอุปกรณ์ที่มีอยู่ หากต้องการกำหนดdevice_id
และchart_id
ให้เสียบและถอดปลั๊กอุปกรณ์ และสังเกตอุปกรณ์ที่เชื่อมต่อและยกเลิกการเชื่อมต่อ - ทำการทดสอบสามครั้งเพื่อระงับคำแนะนำและข้อความแจ้งผู้ใช้ที่อาจบดบังแผนภูมิบนหน้าจอแท็บเล็ต
- วางแท็บเล็ตหงายขึ้นบนโต๊ะ (อย่าติดแท็บเล็ตเข้ากับแผงด้านหลังของกล่อง)
- เรียกใช้คำสั่งต่อไปนี้:
python tools/run_all_tests.py device=$device_id camera=0 chart=$chart_id scenes=2,3
ฉาก 2 และ 3 ต้องการให้แท็บเล็ตแสดงภาพ ดังนั้นแท็บเล็ตจึงแจ้ง ให้อนุญาตให้ไดรฟ์เข้าถึงรูปภาพ สื่อ และไฟล์ในอุปกรณ์ของคุณ - ล้างพรอมต์นี้ (และป้องกันพรอมต์ในอนาคต) โดยกด อนุญาต - รันคำสั่งอีกครั้ง แท็บเล็ตแจ้งว่า Keep a copy of this file? และแนะนำ Google Drive ล้างข้อความแจ้งนี้ (และป้องกันข้อความแจ้งในอนาคต) โดยกดไอคอนไดรฟ์ จากนั้น คลิกยกเลิก เพื่ออัปโหลดไปยังไดรฟ์
- สุดท้าย ให้เรียกใช้
tools/run_all_tests.py
และยืนยันว่าฉากต่างๆ เปลี่ยนไปโดยอัตโนมัติเมื่อสคริปต์วนไปตามฉากต่างๆ แม้ว่าการทดสอบส่วนใหญ่จะล้มเหลว (เนื่องจากกล้องไม่ได้ชี้ไปที่แผนภูมิ) คุณสามารถตรวจสอบว่าแท็บเล็ตหมุนเวียนไปตามฉากต่างๆ ได้อย่างถูกต้อง โดยไม่ต้องแสดงข้อความแจ้งหรือป๊อปอัปอื่นๆ บนหน้าจอ
ทำการทดสอบ
ก่อนที่จะรัน ITS-in-a-box ตรวจสอบให้แน่ใจว่าการตั้งค่าการทดสอบของคุณมีฮาร์ดแวร์และซอฟต์แวร์ต่อไปนี้:
- หนึ่ง (1) ในกล่อง
- แท็บเล็ตความละเอียดสูง 10" หนึ่ง (1) ตัวสำหรับแสดงฉาก, S/N: 5811000011
- หนึ่ง (1) DUT ที่ติดตั้งแอป CTS Verifier 7.0_8+ ตัวอย่าง DUT:
- หนึ่ง (1) พิกเซล NOF26W สำหรับการทดสอบกล้องด้านหลัง (0) S/N: FA6BM0305016 หากต้องการติดตั้งแอป CTS Verifier ให้แตก
android-cts-verifier.zip
จากนั้นเรียกใช้adb -s FA6BM0305016 install -r -g android-cts-verifier/CtsVerifier.apk
- หนึ่ง (1) พิกเซล NOF26W สำหรับการทดสอบกล้องด้านหลัง (0) S/N: FA6BM0305016 หากต้องการติดตั้งแอป CTS Verifier ให้แตก
เรียกใช้ฉากที่ใช้แท็บเล็ต
หากต้องการเรียกใช้ฉาก 0 ถึง 4, 6 และ scene_change บนกล้องด้านหลัง:
cd android-cts-verifier/CameraITS
. build/envsetup.sh
python tools/run_all_tests.py camera=0
ตัวอย่าง:
![กล้อง 0 วินาที/N: FA6BM0305016](https://source.android.google.cn/static/compatibility/cts/images/camera_its_cam0.png?authuser=2&hl=th)
ลองฉากอีกครั้ง
คุณสามารถลองฉากอีกครั้งสำหรับกล้องตัวเดียว:
- หากต้องการลองฉากอีกครั้งด้วยกล้องตัวเดียว:
python tools/run_all_tests.py device=FA6BM0305016 camera=0 scenes=3,4
วิ่งฉากที่ 5
ฉากที่ 5 ต้องมีการตั้งค่าพิเศษพร้อมแสงเฉพาะ (สำหรับรายละเอียด โปรดดูที่ CameraITS.pdf
ใน CTS Verifier ซึ่งคุณสามารถดาวน์โหลดได้ที่ ดาวน์โหลดชุดทดสอบความเข้ากันได้ ) คุณต้องรันฉาก 5 แยกกัน (นอกกรอบ)
![ฉากกล้อง5](https://source.android.google.cn/static/compatibility/cts/images/camera_its_scene5.png?authuser=2&hl=th)
หากต้องการเรียกใช้ฉาก 5 สำหรับกล้องหน้าและกล้องหลังบนอุปกรณ์เครื่องเดียว:
python tools/run_all_tests.py device=FA6BM0305016 camera=0 scenes=5
python tools/run_all_tests.py device=FA6BM0305016 camera=1 scenes=5
รับผลลัพธ์
คุณสามารถดูผลลัพธ์ระหว่างการทดสอบและบันทึกผลลัพธ์ที่เสร็จสมบูรณ์เป็นรายงานได้
- ดูผลลัพธ์ หากต้องการบันทึกผลลัพธ์ของ Camera ITS เป็นรายงาน:
- กด ผ่าน และบันทึกรายงาน
รูปที่ 3 รายงาน ITS ของกล้อง - ดึงรายงานจากอุปกรณ์:
adb -s FA6BM0305016 pull /sdcard/verifierReports
- แตกไฟล์รายงานและดู
test_result.xml
รูปที่ 4 รายงาน ITS ของกล้อง
- กด ผ่าน และบันทึกรายงาน
ข้อกำหนดของแท็บเล็ต
แท็บเล็ตจะต้องมีขนาดจอแสดงผลประมาณ 10 นิ้ว โดยมีความละเอียดหน้าจอมากกว่า 1920 x 1200 พิกเซล แท็บเล็ตจะต้องไม่ใช้การปรับความกว้างพัลส์ (PWM) เพื่อตั้งค่าระดับความสว่าง ต้องตั้งค่า brightness
ใน config.yml
ตามรุ่นแท็บเล็ต ตารางด้านล่างแสดงรายการแท็บเล็ตที่แนะนำสำหรับการทดสอบ ITS พร้อมด้วยเวอร์ชัน Android ที่วางจำหน่ายสำหรับ DUT ที่แท็บเล็ตใช้งานได้
อุปกรณ์ | ขนาดการแสดงผล (นิ้ว) | ขนาดการแสดงผล (พิกเซล) | ขนาดแท็บเล็ต (นิ้ว) | แสดง ความสว่าง | แสดง บิต | ได้รับการสนับสนุน ระบบปฏิบัติการ DUT | ได้รับการสนับสนุน ระบบปฏิบัติการแท็บเล็ต |
---|---|---|---|---|---|---|---|
ซัมซุง กาแล็กซี่แท็บ A8 | 10.5 | 1920x1200 | 9.72 x 6.37 x 0.27 | 192 | 8 | แอนดรอยด์ 13+ | แอนดรอยด์ 11+ |
เสี่ยวมี่ แผ่นที่ 5 | 11 | 2560 x 1600 | 10.03 x 6.55 x 0.27 | 1,024 | 11 | แอนดรอยด์ 12+ | ระบบปฏิบัติการ Android 11 เท่านั้น |
เลอโนโว แท็บ M10 พลัส | 10.3 | 1920x1200 | 9.61 x 6.03 x 0.32 | 192 | 8 | แอนดรอยด์ 12+ | แอนดรอยด์ 9+ |
ซัมซุง กาแล็กซี่แท็บ A7 | 10.4 | 2000x1200 | 9.75 x 6.2 x 0.28 | 192 | 8 | แอนดรอยด์ 12+ | แอนดรอยด์ 10+ |
ชูวี ไฮ 9 แอร์ 10.1 | 10.1 | 2560 x 1600 | 9.52 x 6.77 x 0.31 | 192 | 8 | แอนดรอยด์ 7+ | แอนดรอยด์ 8+ |
อัสซุส เซนแพด 3 | 9.7 | 2048 x 1536 | 9.47 x 6.44 x 0.28 | 192 | 8 | แอนดรอยด์ 7+ | แอนดรอยด์ 6+ |
หัวเว่ย มีเดียแพด m5 | 10.8 | 2560 x 1600 | 10.18 x 6.76 x 0.29 | 192 | 8 | แอนดรอยด์ 7+ | แอนดรอยด์ 8+ |
Google พิกเซล ซี | 10.2 | 2560 x 1800 | 9.53 x 7.05 x 0.28 | 96 | 8 | แอนดรอยด์ 7+ | แอนดรอยด์ 6+ |
โซนี่ เอ็กซ์พีเรีย Z4 | 10.1 | 2560 x 1600 | 10x6.57x0.24 | 192 | 8 | แอนดรอยด์ 7+ | แอนดรอยด์ 5+ |
คำถามที่พบบ่อย
คำถามที่ 1: ฉันจะทราบได้อย่างไรว่าแท่นทดสอบใดที่ฉันต้องการสำหรับอุปกรณ์ของฉัน
RFoV ITS-in-a-box การแก้ไข 1 ทดสอบกล้อง RFoV สำหรับการทดสอบฉาก 0 ถึงฉาก 4 ในไดเรกทอรี CameraITS/tests
RFoV ถูกกำหนดให้เป็น 60° < FoV < 90° สำหรับกล้อง FoV ขนาดใหญ่ แสงอาจปรากฏในรูปภาพหรือแผนภูมิอาจครอบคลุมพื้นที่ใน FoV น้อยเกินไป ซึ่งส่งผลต่อผลการทดสอบ
WFaV ITS-in-a-box การแก้ไข 2 ทดสอบกล้อง WFaV สำหรับการทดสอบฉาก 0 ถึงฉาก 4 ในไดเร็กทอรี CameraITS/tests
WFaV ถูกกำหนดให้เป็น FoV >= 90° มีฟังก์ชันการทำงานเหมือนกับการแก้ไขครั้งที่ 1 แต่มีขนาดใหญ่กว่า อุปกรณ์ทดสอบการแก้ไข 2 สามารถทดสอบทั้งกล้อง RFoV และ WFOV ใน Android 9 ขึ้นไป
กล่องฟิวชันเซ็นเซอร์ จะทดสอบการชดเชยเวลาของกล้อง/ไจโรสโคป และการซิงค์เฟรมของระบบกล้องหลายตัวกับการทดสอบใน scenes=sensor_fusion
จำเป็นต้องมีการชดเชยเวลาของกล้อง/ไจโรสโคปที่น้อยกว่า 1 มิลลิวินาทีสำหรับการตั้งค่าสถานะคุณสมบัติแบบ REALTIME
สามารถทดสอบอุปกรณ์ที่มีกล้องหลายตัวได้ด้วยอุปกรณ์ตัวเดียวสำหรับการทดสอบ ITS แบบคงที่และอุปกรณ์ฟิวชันเซ็นเซอร์ หากกล้องมีแฟล็กคุณสมบัติ REALTIME
ชุดการกำหนดค่าตัวอย่างมีอยู่ในตารางด้านล่าง
ตัวอย่าง | กล้อง FoV | เรียลไทม์? | แท่นขุดเจาะที่แนะนำ | หมายเหตุ |
---|---|---|---|---|
1 | 75° | เลขที่ | รอบที่ 1 หรือ 2 | ระบบปฏิบัติการ Android 7.0 หรือสูงกว่า |
2 | 75° | ใช่ | ฟิวชั่นเซ็นเซอร์ Rev 1 หรือ 2 + | ระบบปฏิบัติการ Android 9 หรือสูงกว่า |
3 | 75° + 95° | ใช่ | Rev 2 + เซ็นเซอร์ฟิวชั่น | ระบบปฏิบัติการ Android 9 หรือสูงกว่า |
คำถามที่ 2: ฉันจะกำหนดได้อย่างไรว่าอุปกรณ์ทดสอบใดที่ใช้งานอยู่
เพื่อกำหนดแท่นทดสอบที่ถูกต้อง ตรวจสอบให้แน่ใจว่าพารามิเตอร์ระยะทางของแผนภูมิถูกต้อง แท่นทดสอบ rev1 (RFoV) มีระยะผัง 31 ซม. และแท่นทดสอบ rev2 (WFOV) มีระยะผัง 22 ซม. ตามค่าเริ่มต้น ระยะห่างของแผนภูมิจะตั้งไว้ที่ 31 ซม.
ระบบปฏิบัติการ Android 10 ถึง Android 11
หากต้องการระบุอุปกรณ์ทดสอบที่ถูกต้องใน Android 10 ถึง 11 ให้เพิ่มแฟล็กdist
ที่บรรทัดคำสั่ง ค่าเริ่มต้นสำหรับ dist
คือ 31
รันคำสั่งต่อไปนี้เพื่อเปลี่ยนพารามิเตอร์ chart_distance
python tools/run_all_tests.py ... chart=# dist=22
แอนดรอยด์ 12
หากต้องการระบุอุปกรณ์ทดสอบที่ถูกต้องใน Android 12 คุณสามารถแก้ไขไฟล์ config.yml เพื่อเปลี่ยนพารามิเตอร์chart_distance
ได้edit config.yml chart_distance: 31.0 → chart_distance: 22.0
คำถามที่ 3: ฉันจะควบคุมความสว่างของแท็บเล็ตได้อย่างไร
ตามค่าเริ่มต้น ความสว่างของแท็บเล็ตจะตั้งไว้ที่ 96
หากต้องการเปลี่ยนความสว่างบนแท็บเล็ตที่ใช้ Android 7.0 ถึง Android 9 ให้รัน:
edit tools/wake_up_screen.py DISPLAY_LEVEL=96 → DISPLAY_LEVEL=192
หากต้องการเปลี่ยนความสว่างบนแท็บเล็ตที่ใช้ Android 10 ถึง 11 คุณสามารถเปลี่ยนค่าได้ที่บรรทัดคำสั่งโดยเพิ่มแฟล็ก brightness
:
python tools/run_all_tests.py device=# camera=# chart=# brightness=192
หากต้องการเปลี่ยนความสว่างบนแท็บเล็ตที่ใช้ Android 12 ให้รัน:
edit config.yml brightness: 96 → brightness: 192
คำถามที่ 4: ฉันจะดีบักการทดสอบเดี่ยวได้อย่างไร
การทดสอบสามารถดำเนินการทีละรายการเพื่อจุดประสงค์ในการแก้ไขจุดบกพร่อง แต่ผลลัพธ์จะไม่ถูกรายงานไปยัง CtsVerifier.apk
เว้นแต่จะมีการเรียกใช้ทั้งฉาก
หากต้องการเรียกใช้แต่ละฉากใน Android 11 และต่ำกว่า:
- โหลดฉากโดยเพิ่มการตั้งค่า
scenes
ในtools/run_all_tests.py
:python tools/run_all_tests.py device=# camera=# chart=# scenes=#
กด Control+C เพื่อหยุดการทดสอบหลังจากที่ฉากถูกบันทึกว่าโหลดไปที่
stdout
หากฉากที่ถูกต้องปรากฏบนหน้าจออยู่แล้ว ให้ปลุกหน้าจอ:
python tools/wake_up_screen.py screen=#
ทำการทดสอบรายบุคคล
python tests/scene#/test_*.py device=# camera=#
จากนั้นพล็อตจะถูกสร้างขึ้นในไดเร็กทอรีในเครื่อง จากนั้น
stdout
และstderr
จะถูกพิมพ์ลงบนหน้าจอหากต้องการข้อมูลเพิ่มเติมสำหรับการดีบัก ให้เพิ่มคำสั่ง
print
ลงในสคริปต์ หากต้องการเพิ่มเอาต์พุตการทดสอบสำหรับการดีบัก ให้เพิ่มแฟล็กdebug=True
python tests/scene#/test_*.py device=# camera=# debug=True
ผลลัพธ์จะถูกพิมพ์ไปยังหน้าจอในเครื่องและรูปภาพจะถูกบันทึกในไดเร็กทอรีในเครื่อง แทนที่จะเป็นไดเร็กทอรี /tmp/tmp###
ที่สร้างขึ้นเมื่อรัน tools/run_all_tests.py
หากต้องการเรียกใช้แต่ละฉากใน Android 12 ให้ทำดังนี้
แก้ไขไฟล์
config.yml
edit config.yml camera: <camera-id> → camera: 0 scene: <scene-name> → scene: scene1_1
ดำเนินการทดสอบรายบุคคล
python tools/run_all_tests.py -c config.yml --test_bed TEST_BED_TABLET_SCENES
ผลลัพธ์จะถูกพิมพ์ในไดเร็กทอรี /tmp/logs/mobly/TEST_BED_TABLET_SCENES/
จัดเรียงตามเวลารัน
คำถามที่ 5: เหตุใดฉันจึงต้องรันการทดสอบที่ล้มเหลวทั้งฉากแทนที่จะทำการทดสอบซ้ำทีละรายการ
การทดสอบสามารถดำเนินการทีละรายการเพื่อจุดประสงค์ในการแก้ไขจุดบกพร่อง แต่ผลลัพธ์จะไม่ถูกรายงานไปยัง CtsVerifier.apk
เว้นแต่จะมีการเรียกใช้ทั้งฉาก
Camera ITS ช่วยให้มั่นใจได้ว่าแอปของบุคคลที่สามมีอินเทอร์เฟซกล้องที่เข้ากันได้ เช่นเดียวกับ การทดสอบหน่วย การทดสอบแต่ละครั้งจะเน้นไปที่ข้อกำหนดเฉพาะในกล้อง เพื่อตรวจจับพฤติกรรมที่ไม่น่าเชื่อถือ การทดสอบเหล่านี้จะต้องผ่านเป็นกลุ่มตลอดทั้งฉาก ตัวอย่างเช่น แม้ว่าการทดสอบที่ไม่น่าเชื่อถือเพียงครั้งเดียวอาจผ่านการฉายซ้ำของทั้งฉาก แต่ก็เป็นเรื่องยากที่การทดสอบที่ไม่น่าเชื่อถือหลายครั้งจะผ่าน
เป็นตัวอย่างที่รุนแรง ลองพิจารณากรณีที่มีการทดสอบ 10 ครั้งในฉากที่แต่ละฉากมีความน่าจะเป็น 50% ที่จะส่งคืน PASS
การดำเนินการทดสอบแต่ละครั้งเป็นรายบุคคล มีโอกาสสูงที่ผู้ปฏิบัติงานจะสามารถให้กล้องผ่านการทดสอบ Camera ITS ได้ อย่างไรก็ตาม หากทำการทดสอบโดยรวมเป็นฉากเดียว มีโอกาสเพียง 0.1% เท่านั้นที่ฉากจะผ่าน
คำถามที่ 6: ฉันจะรันฉากเดียวหรือเรียงลำดับฉากที่กำลังรันใหม่ได้อย่างไร
ตามค่าเริ่มต้น script tools/run_all_tests.py
จะรันฉากทั้งหมดตามลำดับ อย่างไรก็ตาม สามารถเรียกใช้ฉากทีละฉากหรือตามลำดับที่ระบุและรายงานไปที่ CtsVerifier.apk
หากต้องการเรียกใช้แต่ละฉาก (เช่น ฉากที่ 2) หรือเรียกใช้มากกว่าหนึ่งฉากตามลำดับเฉพาะใน Android 11 หรือต่ำกว่า ให้ทำดังนี้
python tools/run_all_tests.py device=# camera=# chart=# scenes=2
python tools/run_all_tests.py device=# camera=# chart=# scenes=3,2
หากต้องการเรียกใช้แต่ละฉากหรือเรียกใช้มากกว่าหนึ่งฉากตามลำดับเฉพาะใน Android 12 ให้ทำดังนี้
python tools/run_all_tests.py scenes=2
python tools/run_all_tests.py scenes=3,2
พารามิเตอร์เพิ่มเติมถูกตั้งค่าในไฟล์ config.yml
คำถามที่ 7: การทดสอบฉากที่ 1 จำนวนหนึ่งล้มเหลวด้วยการตั้งค่าแท็บเล็ต แต่ผ่านด้วยแผนภูมิกระดาษ เกิดอะไรขึ้น?
ตรวจสอบให้แน่ใจว่าแท็บเล็ตและสภาพแวดล้อมการทดสอบตรงตามข้อกำหนดต่อไปนี้
ข้อมูลจำเพาะของแท็บเล็ต
ตรวจสอบให้แน่ใจว่าแท็บเล็ตมีคุณสมบัติตรงตามข้อกำหนดต่อไปนี้:
- ขนาดหน้าจอ(นิ้ว):10นิ้ว
- ขนาดการแสดงผล (พิกเซล): มากกว่า 1920 x 1200 พิกเซล
สำหรับรายละเอียดเพิ่มเติม โปรดดู ข้อกำหนดของแท็บเล็ต
ความสว่างของแท็บเล็ต
การทดสอบอาจไม่ได้ผลลัพธ์ที่ถูกต้องหากความสว่างของจอแสดงผลแท็บเล็ตต่ำเกินไป
สำหรับรายละเอียดเพิ่มเติม โปรดดู ฉันจะควบคุมความสว่างของแท็บเล็ตได้อย่างไร
ระดับแสงสว่างของกล่อง (ต้องใช้ลักซ์มิเตอร์)
ตรวจสอบให้แน่ใจว่าค่าลักซ์เป้าหมายเมื่อเปิดแท็บเล็ตอยู่ระหว่าง 100 ถึง 300
หากระดับลักซ์สูงเกินไป scene1/test_param_flash_mode.py
จะส่งกลับ FAIL
หากระดับลักซ์ต่ำเกินไป การทดสอบหลายครั้งจะล้มเหลว
คำถามที่ 8: ฉันจะดีบักการทดสอบฟิวชันของเซ็นเซอร์ได้อย่างไร
ตรวจสอบให้แน่ใจว่าคุณอยู่ในกลุ่ม
dialout
groups | egrep ‘dialout'
ตรวจสอบให้แน่ใจว่าตัวควบคุมฟิวชันเซ็นเซอร์เชื่อมต่ออยู่โดยพิจารณาว่า Microchip Technology เชื่อมต่อกับพอร์ต USB หรือไม่
lsusb … Bus 003 Device 004: ID 04d8:fc73 Microchip Technology, Inc. …
รันการทดสอบหลายครั้งเพื่อรับการกระจายความพยายามในการทดสอบด้วยคำสั่งต่อไปนี้
ใน Android 11 หรือต่ำกว่า:
python tools/run_sensor_fusion_box.py device=A camera=0 num_runs=10 rotator=default
ใน Android 12:
python tools/run_sensor_fusion_box.py num_runs=10
พารามิเตอร์เพิ่มเติมถูกตั้งค่าในไฟล์
config.yml
เอาต์พุตการรันอยู่ในโฟลเดอร์
/tmp/tmp###
ที่สร้างขึ้นภายใต้โฟลเดอร์sensor_fusion_#
โดยที่#
คือหมายเลขการรัน สาเหตุทั่วไปของความล้มเหลวคือ:- โทรศัพท์ไม่ได้อยู่ตรงกลางอย่างถูกต้อง
- พบคุณสมบัติไม่เพียงพอในภาพ (มักเป็นปัญหา FoV หรือแสง)
-
FAIL
ที่ส่งคืนนั้นถูกต้อง และต้องแก้ไขการชดเชยเวลาระหว่างกล้องและไจโรสโคป
คำถามที่ 9: ฉันควรรวมข้อมูลใดบ้างเมื่อรายงานข้อบกพร่องในการทดสอบ
เมื่อรายงานข้อบกพร่องในการทดสอบ ให้รวมไฟล์และรูปภาพที่สร้างขึ้นสำหรับการทดสอบด้วย
- หากคุณรันการทดสอบผ่าน
tools/run_all_tests.py
ให้แนบไดเร็กทอรี zipped/tmp/
เข้ากับจุดบกพร่อง - หากคุณทำการทดสอบด้วยตัวเอง ให้แนบเอาต์พุตหน้าจอทั้งหมดและสร้างรูปภาพให้กับจุดบกพร่อง
รวมถึงรายงานข้อผิดพลาดด้วย หลังจากการทดสอบที่เป็นปัญหาล้มเหลว ให้ใช้คำสั่งต่อไปนี้เพื่อสร้างรายงานจุดบกพร่องและแนบไฟล์ zip ที่สร้างขึ้นเข้ากับจุดบกพร่อง
adb -s device_id bugreport
คำถามที่ 10: ฉันจะรันฉากทดสอบเซนเซอร์ฟิวชันด้วยกล้องที่มีระยะโฟกัสต่ำสุดที่สร้างภาพเบลอที่ระยะแผนภูมิ 25 ซม. ได้อย่างไร
หากกล้องของคุณไม่สามารถโฟกัสที่ระยะ 25 ซม. ให้ถอดแผงยึดแผนภูมิของกล่องฟิวชันเซ็นเซอร์ออก วางแผนภูมิไว้ที่ระยะห่างที่ DUT สามารถโฟกัสได้ และเปลี่ยน chart_distance
ใน config.yml
เป็นระยะทางที่วัดได้ระหว่าง DUT และแผนภูมิ รูปที่ 5 แสดงตัวอย่างวิธีการวัดระยะทางของแผนภูมิในสถานการณ์นี้
![ตัวอย่างการทดสอบ TELE ของ sensor_fusion6](https://source.android.google.cn/static/compatibility/cts/images/sensor-fusion-box-measure-chart-distance.png?authuser=2&hl=th)
edit config.yml chart_distance: 25 → chart_distance: DISTANCE_BETWEEN_DUT_AND_CHART
คำถามที่ 11: ฉันจะรันฉากทดสอบแท็บเล็ตสำหรับกล้องที่มีระยะโฟกัสต่ำสุดที่สร้างภาพเบลอที่ระยะแผนภูมิ 31 ซม. ได้อย่างไร
หากกล้องของคุณไม่สามารถสร้างภาพที่คมชัดเพียงพอในการทดสอบที่ระยะ 31 ซม. (ความลึกของอุปกรณ์ทดสอบ RFoV) ให้ติดตั้งกล้องของคุณที่ด้านหน้าแท่นขุดเจาะในระยะไกลเพื่อให้ฉากในแผนภูมิเติมเต็มพื้นที่ประมาณ 60% ของพื้นที่กล้องของ มุมมอง (FoV) ด้วยภาพที่คมชัดยิ่งขึ้น ระยะนี้สามารถน้อยกว่าระยะโฟกัสต่ำสุดของกล้องได้ ปล่อยให้ chart_distance
ใน config.yml
อยู่ที่ 31 ซม. การปรับขนาดแผนภูมิบนแท็บเล็ตถูกกำหนดโดยกล้อง FoV ดังที่แสดงในตารางต่อไปนี้:
กล้องโฟโต้ | ปัจจัยการปรับขนาดแผนภูมิ |
---|---|
60 > FoV > 40 | 0.67x |
40 > FoV > 25 | 0.5 เท่า |
FoV < 25 | 0.33x |
คำถามที่ 12: ด้วย API ของกล้องหลายตัวแบบลอจิคัล การทดสอบใดที่ดำเนินการกับกล้องตัวใด
หากกล้องของคุณใช้ REQUEST_AVAILABLE_CAPABILITIES_LOGICAL_MULTI_CAMERA
การทดสอบ ITS ที่รองรับทั้งหมดจะดำเนินการบนกล้องลอจิคัลระดับบนสุด การทดสอบ ITS ชุดย่อยจะดำเนินการบนกล้องย่อยทางกายภาพ และการทดสอบเหล่านี้แสดงอยู่ใน tools/run_all_tests.py
ใต้ค่าคงที่ SUB_CAMERA_TESTS