Android 12 के Camera इमेज टेस्ट सुइट की रिलीज़ की जानकारी

Android 12 रिलीज़ में, कैमरा आईटीएस से जुड़े कई बदलाव किए गए हैं. इस पेज पर, उन बदलावों के बारे में खास जानकारी दी गई है जो चार मुख्य कैटगरी में आते हैं:

Python 3 में फिर से बनाना

जनवरी 2020 में Python 2.7 के बंद होने की वजह से, 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 फ़्रेमवर्क की मदद से, its_base_test क्लास में टेस्ट किए जा रहे डिवाइस (DUT) और चार्ट टैबलेट को सेट अप किया जा सकता है. config.yml (YAML) फ़ाइल का इस्तेमाल, Mobly टेस्टबेड बनाने के लिए किया जाता है. इस कॉन्फ़िगरेशन फ़ाइल में कई टेस्टबेड कॉन्फ़िगर किए जा सकते हैं. उदाहरण के लिए, टैबलेट और सेंसर फ़्यूज़न टेस्टबेड. हर टेस्टबेड के कंट्रोलर सेक्शन में, 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

tools/run_all_tests.py का इस्तेमाल करके, टेस्टबेड को चालू किया जा सकता है. अगर कोई कमांड लाइन वैल्यू मौजूद नहीं है, तो टेस्ट config.yml फ़ाइल वैल्यू के साथ चलते हैं. इसके अलावा, Android 11 या उससे पहले के वर्शन में इस्तेमाल किए जाने वाले कमांड का इस्तेमाल करके, कमांड लाइन पर camera और scene कॉन्फ़िगरेशन फ़ाइल की वैल्यू बदली जा सकती हैं.

उदाहरण के लिए:

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

एक से ज़्यादा टेस्टबेड

कॉन्फ़िगरेशन फ़ाइल में कई टेस्टबेड शामिल किए जा सकते हैं. आम तौर पर, टैबलेट टेस्टबेड और सेंसर फ़्यूज़न टेस्टबेड, दोनों का इस्तेमाल किया जाता है.

यहां एक 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 में, मैन्युअल तरीके से जांच करने की सुविधा अब भी काम करती है. हालांकि, टेस्टबेड के नाम में MANUAL कीवर्ड का इस्तेमाल करके, टेस्टबेड के तौर पर टेस्टिंग की पहचान की जानी चाहिए. इसके अलावा, जांच के लिए इस्तेमाल किए जाने वाले प्लैटफ़ॉर्म में टैबलेट आईडी शामिल नहीं किया जा सकता.

मैन्युअल तरीके से जांच करने के लिए, यहां 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 की पुष्टि करने वाले टूल को नहीं दी जाती. camera और scene के लिए, कमांड लाइन पर config.yml फ़ाइलों को ओवरराइट नहीं किया जा सकता. इसलिए, जिस टेस्ट की जांच की जा रही है उसके लिए config.yml फ़ाइल में ये पैरामीटर सही होने चाहिए. इसके अलावा, अगर कॉन्फ़िगरेशन फ़ाइल में एक से ज़्यादा टेस्टबेड हैं, तो आपको --test_bed फ़्लैग की मदद से टेस्टबेड की जानकारी देनी होगी. उदाहरण के लिए:

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

आर्टफ़ैक्ट की जांच करना

Android 12 में, कैमरा ITS के लिए टेस्ट आर्टफ़ैक्ट, Android 11 या इससे पहले के वर्शन की तरह ही सेव किए जाते हैं. हालांकि, इनमें ये बदलाव किए गए हैं:

  • टेस्ट आर्टफ़ैक्ट /tmp डायरेक्ट्री में, CameraITS_ को आठ वर्णों वाली रैंडम स्ट्रिंग के पहले जोड़ा गया है, ताकि इसे साफ़ तौर पर देखा जा सके.
  • हर टेस्ट के लिए, test_name_stdout.txt और test_name_stderr.txt के बजाय test_log.DEBUG में टेस्ट का आउटपुट और गड़बड़ियां सेव की जाती हैं.
  • हर टेस्ट से मिली डीयूटी और टैबलेट की लॉगकैट, /tmp/CameraITS_######## डायरेक्ट्री में सेव होती हैं. इससे डीबग करने की प्रोसेस आसान हो जाती है, क्योंकि 3A से जुड़ी समस्याओं को डीबग करने के लिए ज़रूरी सभी जानकारी लॉग की जाती है.

बदलावों की जांच करना

Android 12 में, टैबलेट के लिए स्क्रीन व्यू, PDF फ़ाइलों के बजाय PNG फ़ाइलों के तौर पर सेव होते हैं. 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 में मौजूद दो अलग-अलग टेस्ट के बारे में बताया गया है.

टेस्ट का नाम पहला एपीआई लेवल एश्योरेशन
scene1_1/test_black_white.py सभी कम एक्सपोज़र, कम गेन वाली आरजीबी वैल्यू ~[0, 0, 0]
ज़्यादा एक्सपोज़र, ज़्यादा गेन वाली आरजीबी वैल्यू ~[255, 255, 255]
scene1_1/test_channel_saturation.py 29 सफ़ेद इमेज में रंग की टिनट को हटाने के लिए, [255, 255, 255] के बीच के अंतर को कम किया गया है.

नीचे दी गई टेबल में, Android 12 में मर्ज किए गए टेस्ट, scene1_1/test_black_white.py के बारे में बताया गया है.

टेस्ट का नाम पहला एपीआई लेवल एश्योरेशन
scene1_1/test_black_white.py सभी कम एक्सपोज़र, कम गेन वाली आरजीबी वैल्यू ~[0, 0, 0]
ज़्यादा एक्सपोज़र, ज़्यादा गेन वाली आरजीबी वैल्यू ~[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

Android 12 में, scene4/test_aspect_ratio_and_crop.py में सर्कल ढूंढने की सुविधा को फिर से तैयार किया गया है.

Android के पुराने वर्शन में, साइज़ और रंग के फ़िल्टर की मदद से पैरंट कॉन्टूर (स्क्वेयर) में चाइल्ड कॉन्टूर (सर्कल) ढूंढने का तरीका इस्तेमाल किया जाता था. Android 12 में, सभी कॉन्टूर ढूंढने के बाद, सबसे गोल आकार वाली सुविधाओं को ढूंढकर फ़िल्टर करने का तरीका इस्तेमाल किया जाता है. डिसप्ले पर ग़लत सर्कल को हटाने के लिए, कम से कम कॉन्टूर एरिया होना ज़रूरी है. साथ ही, सर्कल का कॉन्टूर काला होना चाहिए.

इस इमेज में, कॉन्टूर और उन्हें चुनने की शर्तें दिखाई गई हैं.

कॉन्टूर और चुनने से जुड़ी ज़रूरी शर्तों की कॉन्सेप्ट ड्रॉइंग

पहली इमेज. कॉन्टूर और चुनने से जुड़ी ज़रूरी शर्तों की कॉन्सेप्ट ड्रॉइंग

Android 12 में, यह तरीका आसान है और कुछ डिसप्ले टैबलेट में, बॉउंडिंग बॉक्स की क्लिपिंग से जुड़ी समस्या को हल करता है. डीबग करने के लिए, सर्कल के सभी उम्मीदवारों को लॉग किया जाता है.

Android 12 में, FULL और LEVEL3 डिवाइसों के लिए काट-छांट करने की जांच की जाती है. Android 11 या इससे पहले के वर्शन, FULL डिवाइसों के लिए काट-छांट की जांच के एश्योरेशन को स्किप करते हैं.

नीचे दी गई टेबल में, test_aspect_ratio_and_crop.py के लिए ऐसे एसेर्टमेंट की सूची दी गई है जो किसी डिवाइस लेवल और पहले एपीआई लेवल से जुड़े हैं.

डिवाइस लेवल पहला एपीआई लेवल एश्योरेशन
सीमित सभी आसपेक्ट रेशियो
4:3, 16:9, 2:1 फ़ॉर्मैट के लिए फ़ील्ड ऑफ़ व्यू (FOV)
फ़ुल < 31 आसपेक्ट रेशियो
4:3, 16:9, 2:1 फ़ॉर्मैट के लिए फ़ील्ड ऑफ़ व्यू (FOV)
फ़ुल ≥ 31 काटें
आस्पेक्ट रेशियो
4:3, 16:9, 2:1 फ़ॉर्मैट के लिए फ़ील्ड ऑफ़ व्यू (FOV)
LEVEL3 सभी काटें
आस्पेक्ट रेशियो
4:3, 16:9, 2:1 फ़ॉर्मैट के लिए फ़ील्ड ऑफ़ व्यू (FOV)

scene4/test_multi_camera_alignment.py

scene4/test_multi_camera_alignment.py में YUV कैप्चर के लिए undo_zoom() तरीके को फिर से तैयार किया गया था, ताकि उन सेंसर पर काट-छांट को ज़्यादा सटीक तरीके से किया जा सके जो कैप्चर के आसपेक्ट रेशियो से मेल नहीं खाते.

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% हिस्से में मास्क किया जाता है. हालांकि, फ़ीचर की कम से कम संख्या 30 होनी चाहिए.

अगर इस तरीके से मिली सुविधाएं कम हैं, तो Android 12 सबसे पहले, सुविधाओं का पता लगाने वाले हिस्से के बीच के 20% हिस्से को मास्क करता है. साथ ही, ज़्यादा से ज़्यादा सुविधाओं को, सुविधाओं की ज़रूरी शर्तों के दो गुने तक सीमित करता है.

इस इमेज में, Android 11 और Android 12 में सुविधाओं का पता लगाने की सुविधा के बीच का अंतर दिखाया गया है. सुविधा से जुड़ी ज़रूरी शर्तों के थ्रेशोल्ड को बढ़ाने पर, खराब क्वालिटी की सुविधाओं का पता चलता है. साथ ही, मेज़रमेंट पर भी बुरा असर पड़ता है.

Android 11 और Android 12 के बीच, सुविधा का पता लगाने में अंतर
sensor_fusion सुविधा का पता लगाने में अंतर

दूसरी इमेज. Android 11 और Android 12 के बीच, सुविधा का पता लगाने की सुविधा में अंतर

नए टेस्ट

scene0/test_solid_color_test_pattern.py

Android 12 के लिए, नया टेस्ट test_solid_color_test_pattern चालू किया गया है. यह जांच सभी कैमरों के लिए चालू होती है. इसकी जानकारी नीचे दी गई टेबल में दी गई है.

सीन टेस्ट का नाम पहला एपीआई लेवल जानकारी
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 देखें.

Method

सेट किए गए पैरामीटर के लिए YUV फ़्रेम कैप्चर किए जाते हैं और इमेज कॉन्टेंट की पुष्टि की जाती है. टेस्ट पैटर्न सीधे इमेज सेंसर से आउटपुट होता है, इसलिए किसी खास सीन की ज़रूरत नहीं होती. अगर PER_FRAME_CONTROL काम करता है, तो जांच की गई हर सेटिंग के लिए एक YUV फ़्रेम कैप्चर किया जाता है. अगर PER_FRAME_CONTROL काम नहीं करता है, तो चार फ़्रेम कैप्चर किए जाते हैं. हालांकि, LIMITED कैमरों में टेस्ट कवरेज को बढ़ाने के लिए, सिर्फ़ आखिरी फ़्रेम का विश्लेषण किया जाता है.

YUV कैप्चर, पूरी तरह से संतृप्त BLACK, WHITE, RED, GREEN, और BLUE टेस्ट पैटर्न पर सेट होते हैं. टेस्ट पैटर्न की परिभाषा, सेंसर के Bayer पैटर्न के हिसाब से होती है. इसलिए, हर रंग के लिए कलर चैनल सेट होने चाहिए, जैसा कि नीचे दी गई टेबल में दिखाया गया है.

रंग testPatternData (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 के लिए टेस्ट के एश्योरमेंट के बारे में बताया गया है.

कैमरा
पहला एपीआई लेवल
कैमरे का टाइप एक्सपोर्ट किए गए रंग
31 Bayer ब्लैक, व्हाइट, रेड, ग्रीन, ब्लू
31 MONO ब्लैक, व्हाइट
< 31 Bayer/MONO काला

परफ़ॉर्मेंस क्लास टेस्ट

scene2_c/test_camera_launch_perf_class.py

यह पुष्टि करता है कि scene2_c फ़ेस सीन की मदद से, सामने और पीछे के प्राइमरी कैमरे, दोनों के लिए कैमरा चालू होने में 500 मिलीसेकंड से कम समय लगता है.

scene2_c/test_jpeg_capture_perf_class.py

यह पुष्टि करता है कि scene2_c फ़ेस सीन की मदद से, सामने और पीछे के प्राइमरी कैमरे, दोनों के लिए 1080 पिक्सल JPEG कैप्चर करने में लगने वाला समय एक सेकंड से कम है.