บันทึกประจำรุ่นชุดทดสอบรูปภาพจากกล้อง Android 12

การเปลี่ยนแปลง ITS ของกล้อง จำนวนหนึ่งรวมอยู่ในรุ่น Android 12 หน้านี้สรุปการเปลี่ยนแปลงซึ่งแบ่งออกเป็นสี่หมวดหมู่กว้างๆ:

รีแฟคเตอร์เป็น Python 3

เนื่องจากการเลิกใช้งาน Python 2.7 ในเดือนมกราคม 2020 โค้ดเบสของ Camera ITS ทั้งหมดจึงได้รับการปรับโครงสร้างใหม่เป็น Python 3 Android 12 ต้องใช้เวอร์ชันและไลบรารีของ Python ต่อไปนี้:

ตัวเรียกใช้การทดสอบหลัก tools/run_all_tests.py ยังคงเหมือนกับเวอร์ชัน Android 11 หรือต่ำกว่า และได้รับการปรับโครงสร้างใหม่เป็น Python 3

การทดสอบแต่ละรายการทั้งหมดได้รับการปรับโครงสร้างใหม่และใช้คลาสการตั้งค่าการทดสอบใหม่ที่กำหนดไว้ใน tests/its_base_test.py ชื่อการทดสอบและฟังก์ชันการทำงานส่วนใหญ่ยังคงเหมือนเดิม ใน Android 12 การทดสอบแต่ละรายการจะโหลดฉากต่างๆ แม้ว่าการโหลดฉากสำหรับการทดสอบแต่ละครั้งจะเพิ่มเวลาการทดสอบโดยรวม แต่ก็ทำให้สามารถแก้ไขจุดบกพร่องของการทดสอบแต่ละรายการได้

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการเปลี่ยนแปลงการทดสอบแต่ละรายการ โปรดดูที่ การทดสอบการเปลี่ยนแปลง

โมดูล Python ต่อไปนี้ได้รับการปรับโครงสร้างใหม่ด้วยการเปลี่ยนชื่อ:

  • pymodules/its/caps.pyutils/camera_properties_utils.py
  • pymodules/its/cv2image.pyutils/opencv_processing_utils.py
  • pymodules/its/device.pyutils/its_session_utils.py
  • pymodules/its/error.pyutils/error_util.py
  • pymodules/its/image.pyutils/image_processing_utils.py
  • pymodules/its/objects.pyutils/capture_request_utils.py
  • pymodules/its/target.pyutils/target_exposure_utils.py
  • tools/hw.pyutils/sensor_fusion_utils.py

การใช้กรอบการทดสอบ Mobly

Mobly เป็นเฟรมเวิร์กการทดสอบที่ใช้ Python ซึ่งรองรับกรณีทดสอบที่ต้องใช้อุปกรณ์หลายเครื่องพร้อมการตั้งค่าฮาร์ดแวร์แบบกำหนดเอง Camera ITS ใช้โครงสร้างพื้นฐานการทดสอบ Mobly เพื่อให้สามารถควบคุมและบันทึกการทดสอบได้ดียิ่งขึ้น

Camera ITS ใช้โครงสร้างพื้นฐานการทดสอบ Mobly เพื่อให้สามารถควบคุมและบันทึกการทดสอบได้ดียิ่งขึ้น Mobly เป็นเฟรมเวิร์กการทดสอบที่ใช้ Python ซึ่งรองรับกรณีทดสอบที่ต้องใช้อุปกรณ์หลายเครื่องพร้อมการตั้งค่าฮาร์ดแวร์แบบกำหนดเอง สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ Mobly โปรดดูที่ google/mobly

ไฟล์ config.yml

ด้วยกรอบงาน Mobly คุณสามารถตั้งค่าอุปกรณ์ภายใต้การทดสอบ (DUT) และแท็บเล็ตแผนภูมิในคลาส its_base_test ไฟล์ config.yml (YAML) ใช้เพื่อสร้างห้องทดสอบ Mobly คุณสามารถกำหนดค่า Testbed หลายรายการภายในไฟล์กำหนดค่านี้ได้ เช่น แท็บเล็ตและเซ็นเซอร์ Fusion Testbed ภายในส่วนตัวควบคุมของ Testbed แต่ละส่วน คุณสามารถระบุ device_ids เพื่อระบุอุปกรณ์ Android ที่เหมาะสมสำหรับผู้ทดสอบได้ นอกจากรหัสอุปกรณ์แล้ว พารามิเตอร์อื่นๆ เช่น brightness ของแท็บเล็ต , chart_distance , debug_mode , camera_id และ scene_id จะถูกส่งผ่านในคลาสทดสอบ ค่าพารามิเตอร์การทดสอบทั่วไปคือ:

brightness: 192  (all tablets except Pixel C)
chart_distance: 31.0  (rev1/rev1a box for FoV < 90° cameras)
chart_distance: 22.0 (rev2 test rig for FoV > 90° cameras)

การทดสอบบนแท็บเล็ต

สำหรับการทดสอบบนแท็บเล็ต ต้องมีคีย์เวิร์ด TABLET อยู่ในชื่อเตียงทดสอบ ในระหว่างการเริ่มต้น รันเนอร์ทดสอบ Mobly จะเตรียมใช้งาน TestParams และส่งต่อไปยังการทดสอบแต่ละรายการ

ต่อไปนี้คือไฟล์ config.yml ตัวอย่างสำหรับการรันบนแท็บเล็ต

TestBeds:
  - Name: TEST_BED_TABLET_SCENES
    # Test configuration for scenes[0:4, 6, _change]
    Controllers:
        AndroidDevice:
          - serial: 8A9X0NS5Z
            label: dut
          - serial: 5B16001229
            label: tablet

    TestParams:
      brightness: 192
      chart_distance: 22.0
      debug_mode: "False"
      chart_loc_arg: ""
      camera: 0
      scene: <scene-name>  # if <scene-name> runs all scenes

สามารถเรียกใช้ testbed ได้โดยใช้ tools/run_all_tests.py หากไม่มีค่าบรรทัดคำสั่ง การทดสอบจะรันด้วยค่าไฟล์ config.yml นอกจากนี้ คุณยังลบล้างค่า camera และไฟล์กำหนดค่า scene ที่บรรทัดคำสั่งโดยใช้คำสั่งที่คล้ายกับ Android 11 หรือต่ำกว่า

ตัวอย่างเช่น:

python tools/run_all_tests.py
python tools/run_all_tests.py camera=1
python tools/run_all_tests.py scenes=2,1,0
python tools/run_all_tests.py camera=1 scenes=2,1,0

การทดสอบฟิวชั่นเซ็นเซอร์

สำหรับ การทดสอบฟิวชันของเซ็นเซอร์ ชื่อเตียงทดสอบต้องมีคีย์เวิร์ด SENSOR_FUSION เตียงทดสอบที่ถูกต้องจะถูกกำหนดโดยฉากที่ทำการทดสอบ Android 12 รองรับทั้ง คอนโทรลเลอร์ Arduino และ Canakit สำหรับการรวมเซ็นเซอร์

ต่อไปนี้คือไฟล์ config.yml ตัวอย่างสำหรับการรันฟิวชั่นเซ็นเซอร์

Testbeds
  - Name: TEST_BED_SENSOR_FUSION
    # Test configuration for sensor_fusion/test_sensor_fusion.py
    Controllers:
        AndroidDevice:
          - serial: 8A9X0NS5Z
            label: dut

    TestParams:
      fps: 30
      img_size: 640,480
      test_length: 7
      debug_mode: "False"
      chart_distance: 25
      rotator_cntl: arduino         # cntl can be arduino or canakit
      rotator_ch: 1
      camera: 0

หากต้องการรันการทดสอบฟิวชันของเซ็นเซอร์กับ อุปกรณ์ทดสอบฟิวชันของเซนเซอร์ ให้ใช้:

python tools/run_all_tests.py scenes=sensor_fusion
python tools/run_all_tests.py scenes=sensor_fusion camera=0

เตียงทดสอบหลายอัน

สามารถรวม Testbed หลายรายการไว้ในไฟล์ปรับแต่งได้ การรวมกันที่พบบ่อยที่สุดคือมีทั้งเตียงทดสอบแท็บเล็ตและเตียงทดสอบฟิวชันเซ็นเซอร์

ต่อไปนี้คือไฟล์ config.yml ตัวอย่างที่มีทั้งแท็บเล็ตและเซนเซอร์ฟิวชันทดสอบ

Testbeds
  - Name: TEST_BED_TABLET_SCENES
    # Test configuration for scenes[0:4, 6, _change]
    Controllers:
        AndroidDevice:
          - serial: 8A9X0NS5Z
            label: dut
          - serial: 5B16001229
            label: tablet

    TestParams:
      brightness: 192
      chart_distance: 22.0
      debug_mode: "False"
      chart_loc_arg: ""
      camera: 0
      scene: <scene-name>  # if <scene-name> runs all scenes

  - Name: TEST_BED_SENSOR_FUSION
    # Test configuration for sensor_fusion/test_sensor_fusion.py
    Controllers:
        AndroidDevice:
          - serial: 8A9X0NS5Z
            label: dut

    TestParams:
      fps: 30
      img_size: 640,480
      test_length: 7
      debug_mode: "False"
      chart_distance: 25
      rotator_cntl: arduino         # cntl can be arduino or canakit
      rotator_ch: 1
      camera: 0

การทดสอบด้วยตนเอง

Android 12 ยังคงรองรับการทดสอบด้วยตนเองต่อไป อย่างไรก็ตาม Testbed จะต้องระบุการทดสอบดังกล่าวด้วยคีย์เวิร์ด MANUAL ในชื่อ Testbed นอกจากนี้ Testbed ไม่สามารถรวม ID แท็บเล็ตได้

ต่อไปนี้คือไฟล์ config.yml ตัวอย่างสำหรับการทดสอบด้วยตนเอง

TestBeds:
  - Name: TEST_BED_MANUAL
    Controllers:
        AndroidDevice:
          - serial: 8A9X0NS5Z
            label: dut

    TestParams:
      debug_mode: "False"
      chart_distance: 31.0
      camera: 0
      scene: scene1

ทดสอบฉากโดยไม่ต้องใช้แท็บเล็ต

การทดสอบฉาก 0 และฉาก 5 สามารถทำได้ด้วย TEST_BED_TABLET_SCENES หรือ TEST_BED_MANUAL อย่างไรก็ตาม หากการทดสอบเสร็จสิ้นด้วย TEST_BED_TABLET_SCENES แท็บเล็ตจะต้องเชื่อมต่อและรหัสซีเรียลของแท็บเล็ตจะต้องถูกต้องแม้ว่าจะไม่ได้ใช้แท็บเล็ตก็ตาม เนื่องจากการตั้งค่าคลาสการทดสอบจะกำหนดค่ารหัสซีเรียลสำหรับแท็บเล็ต

ดำเนินการทดสอบรายบุคคล

การทดสอบแต่ละรายการสามารถดำเนินการได้เพื่อวัตถุประสงค์ในการแก้ไขจุดบกพร่องเท่านั้น เนื่องจากผลลัพธ์จะไม่ถูกรายงานไปยัง CTS Verifier เนื่องจากไม่สามารถเขียนทับไฟล์ config.yml ที่บรรทัดคำสั่งสำหรับ camera และ scene ได้ พารามิเตอร์เหล่านี้จึงต้องถูกต้องในไฟล์ config.yml สำหรับการทดสอบแต่ละรายการที่ต้องการ นอกจากนี้ หากมีมากกว่าหนึ่ง testbed ในไฟล์กำหนดค่า คุณต้องระบุ testbed ด้วยแฟล็ก --test_bed ตัวอย่างเช่น:

python tests/scene1_1/test_black_white.py --config config.yml --test_bed TEST_BED_TABLET_SCENES

ทดสอบสิ่งประดิษฐ์

ใน Android 12 อาร์ติแฟกต์ทดสอบสำหรับ Camera ITS จะถูกจัดเก็บคล้ายกับ Android 11 หรือต่ำกว่า แต่มีการเปลี่ยนแปลงดังต่อไปนี้:

  • ไดเร็กทอรี test artifact /tmp มี CameraITS_ นำหน้าสตริงสุ่ม 8 อักขระเพื่อความชัดเจน
  • ผลลัพธ์การทดสอบและข้อผิดพลาดจะถูกจัดเก็บไว้ใน test_log.DEBUG สำหรับการทดสอบแต่ละครั้ง แทนที่จะเป็น test_name_stdout.txt และ test_name_stderr.txt
  • Logcats ของ DUT และแท็บเล็ตจากการทดสอบแต่ละครั้งจะอยู่ในไดเร็กทอรี /tmp/CameraITS_######## ที่จัดเก็บไว้ในไดเร็กทอรี ซึ่งทำให้การดีบักง่ายขึ้น เนื่องจากข้อมูลทั้งหมดที่จำเป็นสำหรับการดีบักปัญหา 3A ได้รับการบันทึกไว้

ทดสอบการเปลี่ยนแปลง

ใน Android 12 ฉากบนแท็บเล็ตจะเป็นไฟล์ PNG แทนที่จะเป็นไฟล์ PDF การใช้ไฟล์ PNG ช่วยให้แท็บเล็ตหลายรุ่นสามารถแสดงฉากได้อย่างเหมาะสม

scene0/test_jitter.py

การทดสอบ test_jitter ทำงานบนกล้องที่ซ่อนอยู่จริงใน Android 12

scene1_1/test_black_white.py

สำหรับ Android 12 test_black_white มีฟังก์ชันทั้ง test_black_white และ test_channel_saturation

ตารางต่อไปนี้อธิบายการทดสอบทั้งสองรายการใน Android 11

ชื่อการทดสอบ ระดับ API แรก การยืนยัน
scene1_1/test_black_white.py ทั้งหมด การเปิดรับแสงสั้น ค่า RGB อัตราขยายต่ำ ~[0, 0, 0]
การเปิดรับแสงนาน ค่า RGB อัตราขยายสูง ~[255, 255, 255]
scene1_1/test_channel_saturation.py 29 ลดความทนทานต่อความแตกต่าง [255, 255, 255] เพื่อขจัดสีจางในภาพสีขาว

ตารางต่อไปนี้อธิบายการทดสอบแบบรวม scene1_1/test_black_white.py ใน Android 12

ชื่อการทดสอบ ระดับ API แรก การยืนยัน
scene1_1/test_black_white.py ทั้งหมด การเปิดรับแสงสั้น ค่า RGB อัตราขยายต่ำ ~[0, 0, 0]
การเปิดรับแสงนาน ค่า RGB อัตราขยายสูง ~[255, 255, 255] และลดความคลาดเคลื่อนระหว่างค่าต่างๆ เพื่อขจัดโทนสีในภาพสีขาว

scene1_1/test_burst_sameness_manual.py

การทดสอบ test_burst_sameness_manual ทำงานบนกล้องที่ซ่อนอยู่จริงใน Android 12

scene1_2/test_tonemap_sequence.py

การทดสอบ test_tonemap_sequence ทำงานบนกล้องจำนวนจำกัดใน Android 12

scene1_2/test_yuv_plus_raw.py

การทดสอบ test_yuv_plus_raw ทำงานบนกล้องที่ซ่อนอยู่จริงใน Android 12

scene2_a/test_format_combos.py

การทดสอบ test_format_combos ทำงานบนกล้องจำนวนจำกัดใน Android 12

scene3/test_flip_mirror.py

การทดสอบ test_flip_mirror ทำงานบนกล้องจำนวนจำกัดใน Android 12

scene4/test_aspect_ratio_and_crop.py

การค้นหาแวดวงใน scene4/test_aspect_ratio_and_crop.py ได้รับการปรับโครงสร้างใหม่ใน Android 12

Android เวอร์ชันก่อนหน้าใช้วิธีการที่เกี่ยวข้องกับการค้นหารูปร่างลูก (วงกลม) ภายในรูปร่างหลัก (สี่เหลี่ยมจัตุรัส) พร้อมตัวกรองขนาดและสี Android 12 ใช้วิธีการที่เกี่ยวข้องกับการค้นหารูปทรงทั้งหมดแล้วกรองโดยการค้นหาฟีเจอร์ที่เป็น วงกลม มากที่สุด หากต้องการคัดกรองวงกลมปลอมบนจอแสดงผล จะต้องมีพื้นที่เส้นขอบขั้นต่ำ และเส้นขอบของวงกลมต้องเป็นสีดำ

รูปทรงและเกณฑ์การเลือกจะแสดงอยู่ในรูปภาพต่อไปนี้

การวาดภาพโครงร่างและเกณฑ์การคัดเลือก

รูปที่ 1 การวาดแนวความคิดของรูปทรงและเกณฑ์การคัดเลือก

วิธี Android 12 นั้นง่ายกว่าและใช้เพื่อแก้ไขปัญหาการตัดขอบกล่องในแท็บเล็ตดิสเพลย์บางรุ่น ผู้สมัครแวดวงทั้งหมดจะถูกบันทึกไว้เพื่อวัตถุประสงค์ในการแก้ไขจุดบกพร่อง

ใน Android 12 การทดสอบครอบตัดจะดำเนินการกับอุปกรณ์ FULL และ LEVEL3 Android 11 หรือเวอร์ชันต่ำกว่าจะข้ามการยืนยันการทดสอบครอบตัดสำหรับอุปกรณ์ FULL

ตารางต่อไปนี้แสดงรายการการยืนยันสำหรับ test_aspect_ratio_and_crop.py ที่สอดคล้องกับระดับอุปกรณ์ที่กำหนดและระดับ API แรก

ระดับอุปกรณ์ ระดับ API แรก การยืนยัน
ถูก จำกัด ทั้งหมด อัตราส่วนภาพ
FoV สำหรับรูปแบบ 4:3, 16:9, 2:1
เต็ม < 31 อัตราส่วนภาพ
FoV สำหรับรูปแบบ 4:3, 16:9, 2:1
เต็ม ≥ 31 ครอบตัด
อัตราส่วนภาพ
FoV สำหรับรูปแบบ 4:3, 16:9, 2:1
ระดับ 3 ทั้งหมด ครอบตัด
อัตราส่วนภาพ
FoV สำหรับรูปแบบ 4:3, 16:9, 2:1

scene4/test_multi_camera_alignment.py

วิธีการ undo_zoom() สำหรับการจับภาพ YUV ใน scene4/test_multi_camera_alignment.py ได้รับการปรับโครงสร้างใหม่เพื่อให้พิจารณาได้แม่นยำยิ่งขึ้นสำหรับการครอบตัดบนเซ็นเซอร์ที่ไม่ตรงกับอัตราส่วนภาพของการบันทึก

รหัส Android 11 Python 2

zoom_ratio = min(1.0 * yuv_w / cr_w, 1.0 * yuv_h / cr_h)
circle[i]['x'] = cr['left'] + circle[i]['x'] / zoom_ratio
circle[i]['y'] = cr['top'] + circle[i]['y'] / zoom_ratio
circle[i]['r'] = circle[i]['r'] / zoom_ratio

รหัส Android 12 Python 3

yuv_aspect = yuv_w / yuv_h
relative_aspect = yuv_aspect / (cr_w/cr_h)
if relative_aspect > 1:
  zoom_ratio = yuv_w / cr_w
  yuv_x = 0
  yuv_y = (cr_h - cr_w / yuv_aspect) / 2
else:
  zoom_ratio = yuv_h / cr_h
  yuv_x = (cr_w - cr_h * yuv_aspect) / 2
  yuv_y = 0
circle['x'] = cr['left'] + yuv_x + circle['x'] / zoom_ratio
circle['y'] = cr['top'] + yuv_y + circle['y'] / zoom_ratio
circle['r'] = circle['r'] / zoom_ratio

sensor_fusion/test_sensor_fusion.py

ใน Android 12 จะมีการเพิ่มวิธีการตรวจจับฟีเจอร์ในรูปภาพสำหรับการทดสอบฟิวชั่นเซ็นเซอร์

ในเวอร์ชันที่ต่ำกว่า Android 12 ระบบจะใช้รูปภาพทั้งหมดเพื่อค้นหาฟีเจอร์ที่ดีที่สุด 240 รายการ จากนั้นจะมาสก์ไว้ที่กึ่งกลาง 20% เพื่อหลีกเลี่ยงเอฟเฟกต์ Rolling Shutter โดยข้อกำหนดฟีเจอร์ขั้นต่ำคือ 30 รายการ

หากฟีเจอร์ที่พบโดยวิธีนี้ไม่เพียงพอ Android 12 จะมาสก์พื้นที่การตรวจจับฟีเจอร์ไว้ที่กึ่งกลาง 20% ก่อน และจำกัดฟีเจอร์สูงสุดไว้ที่ 2 เท่าของข้อกำหนดฟีเจอร์ขั้นต่ำ

รูปภาพต่อไปนี้แสดงความแตกต่างระหว่างการตรวจจับฟีเจอร์ของ Android 11 และ Android 12 การเพิ่มเกณฑ์ข้อกำหนดคุณสมบัติขั้นต่ำส่งผลให้ตรวจพบคุณสมบัติคุณภาพต่ำและส่งผลเสียต่อการวัด

ความแตกต่างในการตรวจจับฟีเจอร์ระหว่างการตรวจจับฟีเจอร์เซ็นเซอร์_ฟิวชั่นของ Android 11 และ Android 12

รูปที่ 2 ความแตกต่างในการตรวจจับฟีเจอร์ระหว่าง Android 11 และ Android 12

การทดสอบใหม่

scene0/test_solid_color_test_pattern.py

การทดสอบใหม่ test_solid_color_test_pattern เปิดใช้แล้วสำหรับ Android 12 การทดสอบนี้เปิดใช้กับกล้องทุกตัวและมีคำอธิบายอยู่ในตารางต่อไปนี้

ฉาก ชื่อการทดสอบ ระดับ API แรก คำอธิบาย
0 test_solid_color_test_pattern 31 ยืนยันเอาต์พุตภาพสีทึบและโปรแกรมสีของภาพ

ต้องเปิดใช้งานรูปแบบการทดสอบสีทึบเพื่อรองรับโหมดความเป็นส่วนตัวของกล้อง การทดสอบ test_solid_color_test_pattern ยืนยันเอาต์พุตภาพ YUV สีทึบด้วยสีที่กำหนดโดยรูปแบบที่เลือก และสีของภาพจะเปลี่ยนไปตามข้อกำหนด

พารามิเตอร์

  • cameraPrivacyModeSupport : กำหนดว่ากล้องรองรับโหมดความเป็นส่วนตัวหรือไม่
  • android.sensor.testPatternMode : ตั้งค่าโหมดรูปแบบการทดสอบ การทดสอบนี้ใช้ SOLID_COLOR
  • android.sensor.testPatternData : ตั้งค่ารูปแบบการทดสอบ R, Gr, Gb, G สำหรับโหมดรูปแบบการทดสอบ

สำหรับคำอธิบายของรูปแบบการทดสอบสีทึบ โปรดดูที่ SENSOR_TEST_PATTERN_MODE_SOLID_COLOR

วิธี

เฟรม YUV จะถูกบันทึกสำหรับพารามิเตอร์ที่ตั้งไว้ และเนื้อหารูปภาพได้รับการตรวจสอบแล้ว รูปแบบการทดสอบจะถูกส่งออกมาจากเซนเซอร์ภาพโดยตรง จึงไม่จำเป็นต้องมีฉากใดโดยเฉพาะ หากสนับสนุน PER_FRAME_CONTROL จะมีการบันทึกเฟรม YUV เฟรมเดียวสำหรับการตั้งค่าแต่ละรายการที่ทดสอบ หากไม่รองรับ PER_FRAME_CONTROL จะจับภาพสี่เฟรมโดยวิเคราะห์เฉพาะเฟรมสุดท้ายเพื่อเพิ่มความครอบคลุมการทดสอบให้สูงสุดในกล้อง LIMITED

การจับ YUV ถูกตั้งค่าเป็นรูปแบบการทดสอบ BLACK , WHITE , RED , GREEN และ BLUE ที่อิ่มตัวเต็มที่ เนื่องจากคำจำกัดความของรูปแบบการทดสอบเป็นไปตามรูปแบบของเซ็นเซอร์ไบเออร์ จึงต้องตั้งค่าช่องสีสำหรับแต่ละสีดังแสดงในตารางต่อไปนี้

สี ทดสอบรูปแบบข้อมูล (RGGB)
สีดำ (0, 0, 0, 0)
สีขาว (1, 1, 1, 1)
สีแดง (1, 0, 0, 0)
สีเขียว (0, 1, 1, 0)
สีฟ้า (0, 0, 0, 1)

ตารางการยืนยัน

ตารางต่อไปนี้อธิบายการยืนยันการทดสอบสำหรับ test_solid_color_test_pattern.py

กล้อง
ระดับ API แรก
ประเภทกล้อง ยืนยันสีแล้ว
31 ไบเออร์ ดำ, ขาว, แดง, เขียว, น้ำเงิน
31 โมโน ดำขาว
< 31 ไบเออร์/โมโน สีดำ

การทดสอบระดับประสิทธิภาพ

scene2_c/test_camera_launch_perf_class.py

ตรวจสอบว่าการเริ่มต้นกล้องน้อยกว่า 500 ms สำหรับกล้องหลักทั้งด้านหน้าและด้านหลังที่มีฉากใบหน้า scene2_c

scene2_c/test_jpeg_capture_perf_class.py

ตรวจสอบเวลาแฝงในการจับภาพ JPEG 1080p น้อยกว่า 1 วินาทีสำหรับกล้องหลักทั้งด้านหน้าและด้านหลังที่มีฉากใบหน้า scene2_c