ภาพรวม ITS ของกล้อง

ชุดทดสอบรูปภาพจากกล้อง (ITS) เป็นเฟรมเวิร์กสำหรับเรียกใช้การทดสอบในรูปภาพ ที่กล้อง Android สร้างขึ้น เป้าหมายทั่วไปของการทดสอบแต่ละครั้งใน ITS คือการ กำหนดค่ากล้องในลักษณะที่เฉพาะเจาะจง ถ่ายภาพอย่างน้อย 1 ช็อต และ ตรวจสอบช็อตเพื่อดูว่ามีข้อมูลรูปภาพที่คาดไว้หรือไม่ การทดสอบหลายอย่าง ต้องใช้กล้องที่เล็งไปยังชาร์ตเป้าหมายที่เฉพาะเจาะจงหรือ ส่องสว่างที่ความเข้มที่เฉพาะเจาะจง

ITS อยู่ในชุดทดสอบ CTS Verifier ใน cts/apps/CameraITS อุปกรณ์ต้องผ่านการทดสอบ ITS ที่สอดคล้องกับฟีเจอร์ที่รองรับ ซึ่งเฟรมเวิร์กกล้องโฆษณาสำหรับแอปของบุคคลที่สามเป็นส่วนย่อยของ CTS

ตั้งค่า

หากต้องการเรียกใช้การทดสอบ ITS คุณต้องตั้งค่าสิ่งต่อไปนี้

  • อุปกรณ์ภายใต้การทดสอบ (DUT)
  • เครื่องโฮสต์ (เช่น เดสก์ท็อปหรือแล็ปท็อป Linux)
  • ฉากที่กล้องถ่ายภาพ

การตั้งค่าอุปกรณ์ภายใต้การทดสอบ (DUT)

หากต้องการตั้งค่า DUT ให้ทำตามขั้นตอนต่อไปนี้

  1. เชื่อมต่อ DUT กับเครื่องโฮสต์ผ่าน USB
  2. ให้สิทธิ์โฮสต์ในการเข้าถึง DUT ผ่าน ADB
  3. ติดตั้งแอป CTS Verifier (CtsVerifier.apk) ในอุปกรณ์ ดูข้อมูลเพิ่มเติมได้ที่การใช้ CTS Verifier

    extract root/out/host/linux-x86/cts-verfier/android-cts-verifier.zip
    cd android-cts-verifier
    adb install -r -g CtsVerifier.apk
  4. ใน DUT ให้เปิดแอปกล้องเริ่มต้นและปิดหน้าต่างทั้งหมดที่ ปรากฏขึ้นเมื่อเปิดแอปเพื่อหลีกเลี่ยงการรบกวนระหว่างการทดสอบ

การตั้งค่าโฮสต์

ITS กำหนดให้เครื่องโฮสต์ต้องเชื่อมต่อกับ DUT ผ่าน USB, ใช้ ADB เพื่อควบคุมและสื่อสารกับอุปกรณ์ได้ และต้องติดตั้งซอฟต์แวร์ที่จำเป็น

หากต้องการตั้งค่าเครื่องโฮสต์ ให้ตรวจสอบว่าได้ติดตั้งซอฟต์แวร์ต่อไปนี้แล้ว

เครื่องมือแพลตฟอร์ม Android SDK

ต้องติดตั้งเครื่องมือแพลตฟอร์ม Android SDK และ ADB ต้องอยู่ใน เส้นทางที่เรียกใช้งานได้ของเชลล์หรือเทอร์มินัลที่ทำงานในเครื่องโฮสต์ สำหรับเครื่องมือแพลตฟอร์ม Android SDK เวอร์ชันที่เผยแพร่ต่อสาธารณะ โปรดดู บันทึกประจำรุ่นของเครื่องมือแพลตฟอร์ม SDK

Python

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

Mobly

สำหรับ Android 12 ขึ้นไป คุณต้องติดตั้งเฟรมเวิร์กการทดสอบ Mobly Mobly ช่วยให้คุณตั้งค่า DUT และแท็บเล็ตแผนภูมิในits_base_test ชั้นเรียนได้ หากต้องการติดตั้งเฟรมเวิร์กการทดสอบ Mobly ให้เรียกใช้คำสั่งต่อไปนี้

pip install mobly

การตั้งค่าสภาพแวดล้อม

หากต้องการตั้งค่าสภาพแวดล้อมการทดสอบ ให้เรียกใช้คำสั่งต่อไปนี้

cd CameraITS
source build/envsetup.sh

คำสั่งนี้จะตรวจสอบการติดตั้ง Python ตั้งค่าตัวแปรสภาพแวดล้อม PYTHONPATH และเรียกใช้การทดสอบหน่วยในโมดูล utils/*.py หากไม่มีข้อผิดพลาดปรากฏในเทอร์มินัล แสดงว่าสภาพแวดล้อมพร้อมที่จะเรียกใช้การทดสอบ ITS แล้ว

การตั้งค่าฉาก

หากต้องการตั้งค่าฉาก เราขอแนะนําให้ใช้การตั้งค่า Camera ITS-in-a-box เพื่อ ความสะดวกในการทำงานอัตโนมัติ ความน่าเชื่อถือ และประสิทธิภาพในการทดสอบ แท่นทดสอบ ITS-in-a-box รองรับข้อกำหนดด้านการจัดแสง การจัดกึ่งกลาง และการเปลี่ยนแผนภูมิทั้งหมด สำหรับ ITS นอกจากนี้ คุณต้องมี ITS-in-a-box สำหรับการทดสอบส่วนขยายกล้อง ด้วย

สำหรับการทดสอบด้วยตนเอง โปรดตรวจสอบสิ่งต่อไปนี้

  • วาง DUT บนขาตั้ง
  • DUT ชี้ไปยังฉากที่ถูกต้องสำหรับการทดสอบแต่ละครั้ง (สคริปต์การทดสอบ ITS ระบุพรอมต์เพื่อเปลี่ยนการตั้งค่าฉากก่อนเริ่มการทดสอบในฉากใหม่ )
  • DUT เชื่อมต่อกับเครื่องโฮสต์ผ่าน USB
  • DUT ไม่เคลื่อนที่ในระหว่างการทดสอบ
  • ฉากสว่างด้วยแหล่งกำเนิดแสงที่สม่ำเสมอและไม่ผันผวน (อย่า ใช้หลอดฟลูออเรสเซนต์เพราะจะทำให้เกิดการกะพริบ)

สคริปต์ทดสอบ ITS จะแสดงข้อความแจ้งให้ผู้ใช้เปลี่ยนการตั้งค่าฉาก ก่อนเริ่มการทดสอบในฉากใหม่

ต้องตั้งค่าการวางแนวโทรศัพท์เพื่อให้กล้องถ่ายภาพโดยไม่มีการหมุน วิธีที่ง่ายที่สุดในการตรวจสอบคือการใช้ฉากใบหน้าใน scene2 โทรศัพท์ส่วนใหญ่จะอยู่ในแนวนอนโดยหมุนโทรศัพท์ทวนเข็มนาฬิกาสำหรับกล้องหลังและหมุนตามเข็มนาฬิกาสำหรับกล้องหน้า

ไฟล์การกำหนดค่า

เมื่อใช้เฟรมเวิร์ก Mobly คุณต้องสร้างไฟล์การกำหนดค่า config.yml เพื่อ กำหนดแท่นทดสอบ Mobly ตัวอย่างสำหรับกรณีการใช้งานต่างๆ มีดังนี้

ไฟล์ config.yml ของฉากที่ใช้แท็บเล็ต

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

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"  # "True" or "False"; quotes needed
      lighting_cntl: <controller-type>  # "arduino" or "None"; quotes needed
      lighting_ch: <controller-channel>
      camera: 0
      foldable_device: "False". # set "True" if testing foldable
      scene: <scene-name>  # if <scene-name> runs all scenes

หากต้องการเรียกใช้ Test Bed ให้เรียกใช้ tools/run_all_tests.py หากไม่มีค่าในบรรทัดคำสั่งที่ระบุกล้องหรือฉาก ระบบจะเรียกใช้การทดสอบด้วยค่าในไฟล์ config.yml หากมีค่าบรรทัดคำสั่งสำหรับกล้องหรือฉาก ค่าเหล่านี้จะลบล้างค่าในส่วน TestParams ของไฟล์ config.yml เช่น

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=0 scenes=scene_tele
python tools/run_all_tests.py camera=0.4 scenes=4,scene6_tele

ไฟล์ sensor_fusion scene config.yml

ต่อไปนี้เป็นตัวอย่างconfig_ymlไฟล์สำหรับsensor_fusionการทดสอบ สําหรับsensor_fusionการทดสอบSENSOR_FUSION คีย์เวิร์ดต้องอยู่ในชื่อ Testbed Android 13 ขึ้นไปรองรับเฉพาะคอนโทรลเลอร์ Arduino สำหรับการรวมเซ็นเซอร์เนื่องจากการทดสอบการแสดงตัวอย่างและการป้องกันภาพสั่นของวิดีโอ Android 12 รองรับตัวควบคุม Arduino และ Canakit

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
      rotator_ch: 1
      camera: 0

หากต้องการเรียกใช้การทดสอบ sensor_fusion ด้วยกล่องรวมเซ็นเซอร์ ให้เรียกใช้คำสั่งต่อไปนี้

python tools/run_all_tests.py scenes=sensor_fusion
python tools/run_all_tests.py scenes=sensor_fusion camera=0
python tools/run_all_tests.py scenes=scene_flash,feature_combination
python tools/run_all_tests.py scenes=checkerboard camera=1

ไฟล์ config.yml ของ Testbed หลายรายการ

ต่อไปนี้เป็นตัวอย่างไฟล์ config.yml ที่มีแพลตฟอร์มทดสอบหลายแพลตฟอร์ม ซึ่งได้แก่ แพลตฟอร์มทดสอบแท็บเล็ตและแพลตฟอร์มทดสอบ sensor_fusion ระบบจะกำหนด Testbed ที่ถูกต้อง ตามฉากที่ทดสอบ

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

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

ต่อไปนี้เป็นตัวอย่างไฟล์ config.yml สำหรับการทดสอบด้วยตนเอง ตั้งแต่ Android 14 เป็นต้นไป ระบบจะรองรับการทดสอบด้วยตนเองสำหรับการทดสอบทั้งหมด ยกเว้นการทดสอบ scene_extensions สำหรับการทดสอบด้วยตนเอง คีย์เวิร์ด MANUAL ต้องอยู่ในชื่อ Testbed นอกจากนี้ ส่วนAndroidDevice ยังต้องไม่มีส่วนหมายเลขประจำเครื่องหรือส่วนป้ายกำกับสำหรับแท็บเล็ตด้วย

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

    TestParams:
      debug_mode: "False"
      camera: 0
      scene: 1

ไฟล์ Gen2 rig testing config.yml

ต่อไปนี้เป็นตัวอย่างconfig.ymlไฟล์ของTEST_BED_GEN2เทสต์เบด โดยใช้แท่นทดสอบนี้สำหรับscene_ipการทดสอบ ซึ่งใช้ แท่นทดสอบ Gen2](/docs/compatibility/cts/camera-its-box-gen2) ตัวอย่างต่อไปนี้แสดงพารามิเตอร์ของ Testbed เมื่ออุปกรณ์ Gen2 พร้อมใช้งานและไม่ได้ข้ามการทดสอบ scene_ip

Testbeds
  - Name: TEST_BED_GEN2
    # Test configuration for scene_ip/test_default_jca_ip.py
    Controllers:
        AndroidDevice:
          - serial: <device-id>  # quotes needed if serial id entirely numeric
            label: dut
    TestParams:
      debug_mode: "False"  # quotes are needed here
      chart_distance: 30
      rotator_cntl: gen2_rotator   # gen2 rig specific. "None" if gen2 rig not available
      rotator_ch: 0
      camera: <camera-id>
      foldable_device: "False"  # "True" if testing foldable device
      tablet_device: "False"  # "True" if testing tablet device
      lighting_cntl: gen2_lights  # gen2 rig specific. "None" if gen2 rig not available
      lighting_ch: 1
      scene: scene_ip

ตัวอย่างต่อไปนี้แสดงพารามิเตอร์ของ Testbed เมื่ออุปกรณ์ Gen2 ไม่พร้อมใช้งานและระบบข้ามการทดสอบ scene_ip

Testbeds
  - Name: TEST_BED_GEN2
    # Test configuration for scene_ip/test_default_jca_ip.py
    Controllers:
        AndroidDevice:
          - serial: <device-id>  # quotes needed if serial id entirely numeric
            label: dut
    TestParams:
      debug_mode: "False"  # quotes are needed here
      chart_distance: 30
      rotator_cntl: "None"   # gen2 rig specific. "None" if gen2 rig not available
      rotator_ch: <controller-channel>
      camera: <camera-id>
      foldable_device: "False"  # "True" if testing foldable device
      tablet_device: "False"  # "True" if testing tablet device
      lighting_cntl: "None"  # gen2 rig specific. "None" if gen2 rig not available
      lighting_ch: <controller-channel>
      scene: scene_ip

หากต้องการเรียกใช้การทดสอบ scene_ip ให้ใช้คำสั่งใดคำสั่งหนึ่งต่อไปนี้

python tests/scene_ip/test_default_jca_ip.py -c config.yml
python tools/run_all_tests.py camera=<camera-id> scenes=scene_ip

การทดสอบ ITS ที่ทำงานอยู่

ส่วนนี้จะอธิบายวิธีเรียกใช้การทดสอบ ITS

การเรียกใช้การทดสอบ

หลังจากตั้งค่าอุปกรณ์ เครื่องโฮสต์ (รวมถึงสภาพแวดล้อม) และฉากจริงแล้ว ให้เรียกใช้การทดสอบ ITS โดยใช้กระบวนการต่อไปนี้

  1. เปิดแอป CTS Verifier ในเมนูการทดสอบ ให้เลือก การทดสอบ ITS ของกล้อง

  2. จากเครื่องโฮสต์ ให้เรียกใช้การทดสอบ ITS จากCameraITS/ ไดเรกทอรี เช่น สำหรับอุปกรณ์ที่มีกล้องหน้าและกล้องหลัง ให้เรียกใช้คำสั่งต่อไปนี้

    python tools/run_all_tests.py

    สคริปต์จะวนซ้ำผ่านกล้องและฉากทดสอบตามไฟล์ config.yml สำหรับการตั้งค่าการแก้ไขข้อบกพร่อง เราขอแนะนำให้เรียกใช้ฉากใดฉากหนึ่งของ scene2 โดยมีการทดสอบเพียงครั้งเดียวเพื่อให้ได้ผลลัพธ์ที่เร็วที่สุด

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

    Preparing to run ITS on camera 0
    Start running ITS on camera:  0
    Press Enter after placing camera 0 to frame the test scene:
    scene1_1
    The scene setup should be: A grey card covering at least the   middle 30% of the scene
    Running vendor 3A on device
    Capture an image to check the test scene
    Capturing 1 frame with 1 format [yuv]
    Please check scene setup in /tmp/tmpwBOA7g/0/scene1_1.jpg
    Is the image okay for ITS scene1_1? (Y/N)
    

    การเรียกใช้สคริปต์แต่ละครั้งจะพิมพ์บันทึกที่แสดง PASS, FAIL, FAIL* หรือ SKIP สำหรับการทดสอบ ITS แต่ละรายการ FAIL* แสดงว่าการทดสอบล้มเหลว แต่เนื่องจากยังไม่มีการกำหนดให้ทำการทดสอบ การทดสอบจะรายงานเป็น PASS ไปยัง CtsVerifier SKIP แสดงว่าการทดสอบผ่านเนื่องจาก อุปกรณ์ไม่ได้โฆษณาความสามารถพื้นฐานที่กำลังทดสอบ ตัวอย่างเช่น หากอุปกรณ์ไม่ได้โฆษณาผ่านอินเทอร์เฟซกล้องว่ารองรับ DNG ระบบจะข้ามการทดสอบที่เกี่ยวข้องกับการจับภาพไฟล์ DNG และนับเป็นการทดสอบที่PASS

  3. หากต้องการรับทราบว่าการทดสอบเป็นไปตามข้อกำหนดในการทดสอบ ให้แตะปุ่ม เครื่องหมายถูกสีเขียว จากนั้นรายการ Camera ITS Test ในเมนูการทดสอบของ CTS Verifier จะเปลี่ยนเป็นสีเขียว ซึ่งหมายความว่าโทรศัพท์ผ่าน Camera ITS แล้ว

การทดสอบ DUT แบบขนาน

อุปกรณ์ที่ใช้ Android 14 ขึ้นไปรองรับการทดสอบ DUT แบบขนาน ซึ่งช่วยให้คุณทดสอบ DUT พร้อมกันกับอุปกรณ์หลายเครื่องเพื่อเร่งการทดสอบโดยรวมได้ เช่น การทดสอบแบบคู่ขนานช่วยให้คุณทดสอบกล้อง 0 ในอุปกรณ์หนึ่งและกล้อง 1 ในอีกอุปกรณ์หนึ่งได้พร้อมกัน การทดสอบทั้งหมดสำหรับเซสชันการทดสอบแบบคู่ขนานจะรวมกันในเซสชัน CTS Verifier บน DUT อ้างอิง คุณต้องทำการทดสอบแบบคู่ขนานด้วยการควบคุมแสงสว่างของ Arduino เนื่องจากระบบควบคุมแสงสว่างด้วยตนเองไม่รองรับการทดสอบแบบคู่ขนาน ตรวจสอบว่าช่อง อื่นในตัวควบคุม Arduino เดียวกันควบคุมไฟสำหรับอุปกรณ์แต่ละเครื่อง

ต่อไปนี้เป็นตัวอย่างไฟล์ config.yml ที่กำหนดแพลตฟอร์มทดสอบ 3 แพลตฟอร์มเพื่อเรียกใช้แบบขนาน

TestBeds:
  - Name: TEST_BED_TABLET_SCENES_INDEX_0
    Controllers:
        AndroidDevice:
          - serial: <device-id-0>
            label: dut
          - serial: <tablet-id-0>
            label: tablet
    TestParams:
      brightness: 192
      chart_distance: 22.0
      debug_mode: "False"
      lighting_cntl: "arduino"
      lighting_ch: <controller-channel-0>
      camera: 0
      scene: <scene-name>  # if <scene-name> left as-is runs all scenes
      foldable_device: "False"

  - Name: TEST_BED_TABLET_SCENES_INDEX_1
    Controllers:
        AndroidDevice:
          - serial: <device-id-1>
            label: dut
          - serial: <tablet-id-1>
            label: tablet
    TestParams:
      brightness: 192
      chart_distance: 22.0
      debug_mode: "False"
      lighting_cntl: "arduino"
      lighting_ch: <controller-channel-1>
      camera: 1
      scene: <scene-name>  # if <scene-name> left as-is runs all scenes
      foldable_device: "False"

  # TEST_BED_SENSOR_FUSION represents testbed index 2
  # Parallel sensor_fusion is currently unsupported due to Arduino requirements
  - Name: TEST_BED_SENSOR_FUSION
    # Test configuration for sensor_fusion
    Controllers:
        AndroidDevice:
          - serial: <device-id>
            label: dut
    TestParams:
      fps: 30
      img_size: 640,480
      test_length: 7
      debug_mode: "False"
      chart_distance: 25
      rotator_cntl: "arduino"
      rotator_ch: <controller-channel-2>
      camera: <camera-id>
      foldable_device: "False"
      tablet_device: "False"
      lighting_cntl: "None"
      lighting_ch: <controller-channel>
      scene: "sensor_fusion"

หากต้องการเรียกใช้ Testbed แบบคู่ขนาน ให้ใช้คำสั่งต่อไปนี้

for i in 0 1 2; do python3 tools/run_all_tests.py testbed_index=$i num_testbeds=3 & done; wait

โมเดลสัญญาณรบกวน DNG

อุปกรณ์ที่โฆษณาความสามารถในการจับภาพ RAW หรือ DNG ต้องระบุโมเดลสัญญาณรบกวน ในข้อมูลเมตาของผลลัพธ์การจับภาพของภาพ RAW แต่ละภาพ โมเดลสัญญาณรบกวนนี้ ต้องฝังอยู่ใน HAL ของกล้องสำหรับกล้องแต่ละตัว (เช่น กล้องหน้า และกล้องหลัง) ในอุปกรณ์ที่อ้างว่ารองรับ

การใช้งานโมเดลเสียง

หากต้องการใช้โมเดลสัญญาณรบกวน ให้ทำตามขั้นตอนต่อไปนี้เพื่อสร้างโมเดลสัญญาณรบกวนและ ฝังโมเดลลงใน HAL ของกล้อง

  1. หากต้องการสร้างโมเดลสัญญาณรบกวนสำหรับกล้องแต่ละตัว ให้เรียกใช้สคริปต์ dng_noise_model.py ในไดเรกทอรี tools ซึ่งจะแสดงข้อมูลโค้ด C ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีตั้งค่ากล้องและจับภาพสภาพแวดล้อมได้ที่DngNoiseModel.pdfเอกสารในไดเรกทอรี tools

  2. หากต้องการใช้โมเดลสัญญาณรบกวนสำหรับอุปกรณ์ ให้ตัดและวางข้อมูลโค้ด C ลงใน HAL ของกล้อง

การตรวจสอบความถูกต้องของโมเดลเสียง

การทดสอบ ITS tests/scene1_1/test_dng_noise_model.py อัตโนมัติจะตรวจสอบโมเดลสัญญาณรบกวนโดยยืนยันว่าค่าสัญญาณรบกวน สำหรับการเปิดรับแสงและค่าเกนของช็อตที่ระบุในข้อมูลกล้องถูกต้อง