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

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

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 टेस्ट इन्फ़्रास्ट्रक्चर का इस्तेमाल करता है, ताकि टेस्ट को बेहतर तरीके से कंट्रोल किया जा सके और उनकी लॉगिंग की जा सके.

कैमरा आईटीएस, Mobly टेस्ट इन्फ़्रास्ट्रक्चर का इस्तेमाल करता है, ताकि टेस्ट को बेहतर तरीके से कंट्रोल किया जा सके और उनकी लॉगिंग की जा सके. Mobly, Python पर आधारित एक टेस्ट फ़्रेमवर्क है. यह उन टेस्ट केस के साथ काम करता है जिनके लिए कस्टम हार्डवेयर सेटअप वाले कई डिवाइसों की ज़रूरत होती है. Mobly के बारे में ज़्यादा जानकारी के लिए, google/mobly पर जाएं.

config.yml फ़ाइलें

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

  • टेस्ट आर्टफ़ैक्ट /tmp डायरेक्ट्री में, CameraITS_ को आठ वर्णों वाली रैंडम स्ट्रिंग से पहले जोड़ा गया है, ताकि जानकारी साफ़ तौर पर दी जा सके.
  • टेस्ट के आउटपुट और गड़बड़ियों को test_name_stdout.txt और test_name_stderr.txt के बजाय, हर टेस्ट के लिए test_log.DEBUG में सेव किया जाता है.
  • हर टेस्ट के DUT और टैबलेट के लॉगकैट, /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 में की जाने वाली दो अलग-अलग जांचों के बारे में बताया गया है.

टेस्ट का नाम पहला एपीआई लेवल Assertions
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 के बारे में बताया गया है.

टेस्ट का नाम पहला एपीआई लेवल Assertions
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 के लिए ऐसे दावे दिए गए हैं जो किसी डिवाइस लेवल और पहले एपीआई लेवल से मेल खाते हैं.

डिवाइस लेवल पहला एपीआई लेवल Assertions
सीमित सभी आसपेक्ट रेशियो
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

YUV कैप्चर करने के लिए undo_zoom() तरीके को 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% हिस्से पर मास्क कर दिया जाता है, ताकि रोलिंग शटर इफ़ेक्ट से बचा जा सके. इसके लिए, कम से कम 30 सुविधाओं की ज़रूरत होती है.

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

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

Android 11 और Android 12 में सेंसर फ़्यूज़न की सुविधा का पता लगाने के तरीके में अंतर

दूसरी इमेज. 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 टेस्ट पैटर्न पर सेट किया जाता है. टेस्ट पैटर्न की परिभाषा, सेंसर के बेयर पैटर्न के हिसाब से होती है. इसलिए, हर रंग के लिए कलर चैनल सेट किए जाने चाहिए. इसके बारे में यहां दी गई टेबल में बताया गया है.

रंग 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 BLACK, WHITE, RED, GREEN, BLUE
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 कैप्चर करने में लगने वाले समय की पुष्टि करता है. यह समय एक सेकंड से कम होना चाहिए.