Android 17 Camera Image Test Suite के रिलीज़ नोट

Android 17 की रिलीज़ में, Camera ITS में कई बदलाव किए गए हैं. इस पेज पर, Android 17 के लिए Camera ITS में किए गए बदलावों के बारे में खास जानकारी दी गई है.

Python और पैकेज के वर्शन

हमारा सुझाव है कि Android 17 और इसके बाद के वर्शन के लिए, पैकेज मैनेजमेंट सॉफ़्टवेयर का इस्तेमाल करें. इससे पैकेज के सही वर्शन को बंडल किया जा सकता है, ताकि Android रिलीज़ डेवलपमेंट के लिए वर्चुअल एनवायरमेंट बनाया जा सके. उदाहरण के लिए, पैकेज मैनेजमेंट टूल देखें. यह टूल, ज़रूरी ज़्यादातर पैकेज को मैनेज करता है. इसके लिए, Python 3 के दस्तावेज़ में venv देखें.

venv का इस्तेमाल करके वर्चुअल एनवायरमेंट बनाने के लिए, यह तरीका अपनाएं:

  1. Python 3.12 और python3-venv इंस्टॉल करें

    sudo apt install python3.12
    sudo apt install python3.12-venv python3.12-dev
    
  2. Python इंस्टॉल होने की पुष्टि करना

    python3.12 --version
    
  3. apt को अपडेट करें और pip को इंस्टॉल करें

    sudo apt-get update
    sudo apt install python3-pip
    
  4. वर्चुअल एनवायरमेंट बनाना

    python3.12 -m venv its_android17_env
    
  5. वर्चुअल एनवायरमेंट चालू करें

    source its_android17_env/bin/activate
    
  6. ज़रूरी पैकेज की सूची के साथ its_android17_env.txt बनाएं

    beautifulsoup4==4.14.3
    contourpy==1.3.1
    cycler==0.12.1
    fonttools==4.56.0
    imagecodecs==2026.3.6
    ImageIO==2.37.3
    jinja2==3.1.6
    kiwisolver==1.4.8
    lazy-loader==0.5
    MarkupSafe==3.0.3
    matplotlib==3.10.0
    mobly==1.12.3
    mobly-android-partner-tools==1.5.2
    networkx==3.6.1
    numpy==2.2.2
    opencv-python==4.11.0.86
    packaging==24.2
    pillow==11.1.0
    portpicker==1.6.0
    protobuf==6.33.6
    psutil==6.1.1
    pyparsing==3.2.1
    pyserial==3.5
    python-dateutil==2.9.0.post0
    pyudev==0.24.4
    PyYAML==6.0.2
    scikit-image==0.26.0
    scipy==1.15.1
    six==1.17.0
    soupsieve==2.8.3
    snippet-uiautomator==1.1.2
    tifffile==2026.3.3
    
  7. its_android17_env.txt में दिए गए पैकेज इंस्टॉल करें

    pip install -r its_android17_env.txt
    
  8. ffmpeg downloader की मदद से, FFmpeg 7.0.2 वर्शन इंस्टॉल करें

    pip install ffmpeg-downloader
    ffdl install 7.0.2
    

    (ज़रूरी नहीं) अगर ffmpeg downloader काम नहीं करता है, तो किसी ऑनलाइन सोर्स से 7.0.2 डाउनलोड करें.

  9. FFmpeg के 7.0.2 वर्शन के इंस्टॉल होने की पुष्टि करना

    ffmpeg -version
    

    अगर FFmpeg का वर्शन अब भी 7.0.2 नहीं है, तो बाइनरी को सिमलंक करें. PATH को उस जगह के हिसाब से अडजस्ट करें जहां आपने its_android17_env को सेव किया है.

    ln -s ~/.local/share/ffmpeg-downloader/ffmpeg/ffmpeg ~/PATH/its_android17_env/bin/ffmpeg
    ln -s ~/.local/share/ffmpeg-downloader/ffmpeg/ffprobe ~/PATH/its_android17_env/bin/ffprobe
    
  10. पुष्टि करें कि कौनसे पैकेज इंस्टॉल किए गए हैं

    pip freeze
    
  11. (ज़रूरी नहीं) एनवायरमेंट को बंद करने का निर्देश:

    deactivate
    

नए या अपडेट किए गए सीन

Android 17 में ये सीन जोड़े गए हैं:

दृश्य Description
gen2_chart नया सीन, जिसमें टेस्ट की एकरूपता और भरोसेमंदता को बेहतर बनाने के लिए, टैबलेट सीन के बजाय test_chart_gen2 पेपर चार्ट का इस्तेमाल किया जाता है . test_chart_gen2 का इस्तेमाल scene_ip में भी किया जाता है.
wide_gamut वाइड गैमट सपोर्ट वाले टैबलेट के लिए नया सीन.
3 यह कुकी, चार्ट का पता लगाने के लिए ArUco मार्कर का इस्तेमाल करती है, ताकि तेज़ी से और भरोसेमंद तरीके से काम किया जा सके. इस बदलाव से, टेलीकैमरा टेस्टिंग में देखे गए फ़ील्ड ऑफ़ व्यू और दूरी की ज़्यादा रेंज को शामिल किया जा सकेगा. मार्कर का इस्तेमाल करने से, साइज़ तय करने के मौजूदा तरीके और ऑप्टिमाइज़र से जुड़ी समस्याएं ठीक हो जाती हैं. ज़्यादा जानकारी के लिए, scene3 देखें.
flash टेस्ट, Gen2 रिग का इस्तेमाल करके चलाए जा सकते हैं.

नई जांच के आंकड़े

Android 17 में ये टेस्ट शामिल हैं:

दृश्य टेस्ट का नाम Description
gen2_chart test_tonemap_sequence यह कुकी पुष्टि करती है कि एक जैसा और अलग-अलग डिस्ट्रिब्यूशन करने के लिए, android.tonemap.mode पैरामीटर सही तरीके से लागू किया गया है.
ip test_jca_jpegr_ip यह पुष्टि करता है कि JPEG_R JCA प्रीव्यू स्नैपशॉट और कैप्चर की गई इमेज के बीच, वाइट बैलेंस का अंतर चुने गए थ्रेशोल्ड के अंदर है.
wide_gamut test_display_p3 इसकी मदद से यह पुष्टि की जाती है कि P3 JPEG आउटपुट में सही आईसीसी प्रोफ़ाइल है और इसमें sRGB गैमट के बाहर के रंग एक प्रतिशत से ज़्यादा हैं.

फिर से बनाए गए टेस्ट

Android 17 में, टेस्ट कवरेज बढ़ाने और टेस्ट को ज़्यादा तार्किक तरीके से ग्रुप करने के लिए, इन टेस्ट को फिर से तैयार किया गया है:

दृश्य टेस्ट का नाम Description
1_2 tests_param_tonemap_mode tests_param_tonemap_mode टेस्ट का scene1_2 वर्शन अब काम नहीं करता. इसका इस्तेमाल सिर्फ़ Android 16 या इससे पहले के वर्शन पर काम करने वाले डिवाइसों पर किया जाता है.
1_2 test_tonemap_sequence test_tonemap_sequence टेस्ट का scene1_2 वर्शन, सिर्फ़ Android 16 या इससे पहले के वर्शन वाले डिवाइसों पर इस्तेमाल किया जाता है.
2_b test_yuv_jpeg_capture_sameness आरएमएस के अंतर की थ्रेशोल्ड वैल्यू को कम कर दिया गया है. इससे यह पक्का करने में मदद मिलती है कि रंगत से जुड़े रंग के अंतर को गड़बड़ी के तौर पर तब फ़्लैग किया जाए, जब वे उपयोगकर्ता के लिए दिखने वाले अंतर की वजह बनें.
3 test_edge_enhancement यह ArUco मार्कर का इस्तेमाल करके, ऑब्जेक्ट की मौजूदगी और ओरिएंटेशन, दोनों की पुष्टि करता है. इस तरीके से, अल्ट्रा-वाइड (यूडब्ल्यू) से लेकर टेली ऐप्लिकेशन तक के कैमरों के लिए, ऑब्जेक्ट का पता लगाने की सुविधा मिलती है.
3 test_flip_mirror यह ArUco मार्कर का इस्तेमाल करके, ऑब्जेक्ट की मौजूदगी और ओरिएंटेशन, दोनों की पुष्टि करता है. PASS स्टेटस सिर्फ़ तब दिया जाता है, जब सभी मार्कर का पता चल गया हो और उन्हें सही तरीके से अलाइन किया गया हो. अपनी जगह से हटाए गए या घुमाए गए चार्ट के लिए, यह टेस्ट काम नहीं करता.
3 test_landscape_to_portrait ArUco मार्कर के साथ अपडेट किया गया scene3 चार्ट लोड करता है.
3 test_lens_movement_report यह ArUco मार्कर का इस्तेमाल करके, ऑब्जेक्ट की मौजूदगी और ओरिएंटेशन, दोनों की पुष्टि करता है. इस तरीके से, अल्ट्रा-वाइड (यूडब्ल्यू) से लेकर टेली ऐप्लिकेशन तक के कैमरों के लिए, ऑब्जेक्ट का पता लगाने की सुविधा मिलती है.
4 test_multi_camera_alignment अगर डिवाइस में सिर्फ़ एक वाइड और एक सुपर टेली कैमरा है, तो यह टेस्ट छोड़ दिया जाता है.
flash test_auto_flash इस कुकी का इस्तेमाल, टेस्ट को अपडेट करने के लिए किया जाता है. इससे यह पुष्टि की जाती है कि अलग-अलग ज़ूम लेवल पर फ़्लैश सही तरीके से काम करता है.
ip test_default_jca_ip इसमें मौजूदा जांचों को ज़रूरी कर दिया गया है: चमक में अंतर, सफ़ेद रंग के बैलेंस में अंतर, और फ़ील्ड ऑफ़ व्यू (एफ़ओवी) का मेल न खाना. यह डिफ़ॉल्ट कैमरा ऐप्लिकेशन और JCA कैप्चर के बीच, कलर रेंडरिंग के अंतर की not_yet_mandated जांच करता है.

टेस्ट की गतिविधियों को अलग-अलग करना

Android 17 में, अलग-अलग डिवाइसों पर पैरलल टेस्टिंग के लिए, कैमरा आईटीएस टेस्ट को CTS Verifier की दो गतिविधियों में बांटा गया है: Camera ITS Test और Camera ITS Sensor Fusion Rig Test. Camera ITS Sensor Fusion Rig Test गतिविधि में feature_combination और sensor_fusion सीन शामिल हैं. इसे सेंसर फ़्यूज़न टेस्ट रिग में अलग से चलाया जा सकता है. यहां दी गई टेबल में, हर गतिविधि में शामिल सीन के बारे में बताया गया है.

गतिविधि सीन Description
Camera ITS Test gen2_chart, scene0, scene1_1, scene1_2, scene1_3, scene2_a, scene2_b, scene2_c, scene2_d, scene2_e, scene2_f, scene2_g, scene3, scene4, scene5, scene6, scene8, scene9, scene_flash, scene_hdr, scene_ip, scene_low_light, scene_video, wide_gamut ऐसे सीन जो कैमरा आईटीएस-इन-अ-बॉक्स टेस्ट रिग और Gen2 टेस्ट रिग में चलते हैं.
Camera ITS Sensor Fusion Rig Test feature_combination, sensor_fusion ऐसे सीन जो सेंसर फ़्यूज़न टेस्ट रिग में चलते हैं.

बंद किए गए टेस्ट

Android 17 में, यहां दिए गए टेस्ट बंद कर दिए गए हैं. ऐसा इसलिए, क्योंकि टेस्ट फ़ंक्शन को अन्य टेस्ट में शामिल किया गया है:

दृश्य टेस्ट का नाम Description
sensor_fusion test_video_stabilization इस टेस्ट का अब इस्तेमाल नहीं किया जा रहा है. इसके बजाय, test_video_stabilization_jca का इस्तेमाल करें.

Gen2 रिग के अपडेट

Android 17 में, यहां दिए गए टेस्ट को Gen2 रिग में माइग्रेट कर दिया गया है:

दृश्य टेस्ट का नाम Description
7 test_multi_camera_switch एई और एडब्ल्यूबी की जांच के लिए, Gen2 चार्ट का इस्तेमाल करने के लिए, टेस्ट को Gen2 रिग सेटअप पर माइग्रेट किया गया. इस बदलाव के तहत, टैबलेट पर दिखने वाले टारगेट की जगह फ़िज़िकल चार्ट का इस्तेमाल किया जाएगा. इससे मोइरे इफ़ेक्ट को खत्म किया जा सकेगा. साथ ही, टेस्टिंग के लिए ज़्यादा स्थिर और दोहराने योग्य एनवायरमेंट उपलब्ध कराया जा सकेगा.
flash all tests gen2 रिग में scene_flash टेस्ट माइग्रेट किए गए. उपयोगकर्ता इन टेस्ट को सेंसर फ़्यूज़न रिग या Gen2 रिग एनवायरमेंट में पूरा कर सकते हैं.
sensor_fusion all tests sensor_fusion टेस्ट को gen2 रिग पर माइग्रेट किया गया. उपयोगकर्ता, इन टेस्ट को सेंसर फ़्यूज़न रिग या Gen2 रिग एनवायरमेंट में पूरा कर सकते हैं.

माइग्रेट किए गए टेस्ट चलाने से पहले, Android 17 में पेश किया गया Gen2 रिग चार्ट इंस्टॉल करें. नए चार्ट की मदद से, Gen2 रिग में सभी सेंसर फ़्यूज़न टेस्ट किए जा सकते हैं. ज़्यादा जानकारी के लिए, टेस्टिंग के लिए चार्ट सेट अप करना लेख पढ़ें.

टेस्ट का नया स्टेटस: पास*

17 में, PASS* टेस्ट स्टेटस की सुविधा जोड़ी गई है. इससे, मामूली तौर पर पास होने वाले टेस्ट का पता लगाया जा सकता है. ज़्यादा जानकारी के लिए, टेस्ट में मामूली तौर पर पास होना (PASS* टेस्ट स्टेटस) लेख पढ़ें.

चार्ट को बड़ा करने की सुविधा में सुधार

Android 17 में, TEST_BED_TABLET_SCENES के लिए config.yml में chart_scaling पैरामीटर जोड़ा गया है. इससे, ज़्यादा फ़ील्ड ऑफ़ व्यू (FoV) वाले टेली कैमरा डिवाइसों के साथ चार्ट स्केलिंग की समस्याओं को ठीक किया जा सकता है. ज़्यादा जानकारी के लिए, चार्ट स्केलिंग में सुधार: chart_scaling पैरामीटर देखें.

वाइड-गैमट टेस्टिंग के लिए नया टैबलेट

Android 17 और इसके बाद के वर्शन के लिए, Samsung Galaxy Tab S10 FE (Wi-Fi और 5G, दोनों मॉडल) को टैबलेट की अनुमति वाली सूची में शामिल किया गया है. Samsung Galaxy Tab S10 FE को वाइड-गैमट टेस्ट चार्ट दिखाने की अनुमति मिली है. साथ ही, इसे टैबलेट पर आधारित अन्य सभी सीन दिखाने की भी अनुमति मिली है. यह पुष्टि करने के लिए कि आपका डिवाइस अनुमति वाली सूची में शामिल है, adb shell getprop ro.product.device कमांड का इस्तेमाल करें. इससे यह पुष्टि की जा सकेगी कि प्रॉडक्ट आईडी, यहां दी गई सूची में शामिल वैल्यू से मेल खाता है.

    'gts10fewifi',  # Samsung Galaxy Tab S10 FE
    'gts10fe',  # Samsung Galaxy Tab S10 FE 5G

बिल्ड की मंज़ूरी के लिए, इकट्ठा किए गए नतीजे सबमिट करना

Android 17 में, अपडेट किए गए CTS Verifier APK का इस्तेमाल करके, बिल्ड को मंज़ूरी देने के लिए, Camera ITS के टेस्ट के कुल नतीजे सबमिट करने की प्रोसेस शुरू की गई है.

डेटा एग्रीगेशन के नए सिस्टम में ये सुधार किए गए हैं:

  • समय की बचत: इससे एक ही बिल्ड फ़िंगरप्रिंट वाले डिवाइसों पर, पासिंग सीन को बार-बार फिर से चलाने की ज़रूरत नहीं पड़ती.
  • पैरलल एक्ज़ीक्यूशन: इससे कई डिवाइसों पर एक साथ कई सीन की टेस्टिंग की जा सकती है. हालांकि, इसके लिए ज़रूरी है कि सभी डिवाइसों का बिल्ड फ़िंगरप्रिंट एक जैसा हो.
  • आसान रिपोर्टिंग: इससे, CTS Verifier की कई रिपोर्ट (अलग-अलग टेस्ट रन या डिवाइसों से इकट्ठा की गई) से टेस्ट के नतीजों को एक ही सबमिशन में इकट्ठा किया जा सकता है.

ज़्यादा जानकारी के लिए, टेस्ट के कुल नतीजे सबमिट करना लेख पढ़ें.