कैमरे को अलग-अलग तरह से दिखाना

Android Camera Image Test Suite (ITS), Android Compatibility Test Suite (CTS) Verifier का हिस्सा है. इसमें ऐसे टेस्ट शामिल हैं जिनसे इमेज कॉन्टेंट की पुष्टि की जाती है. CTS Verifier, Camera ITS-in-a-box की मदद से ITS टेस्ट को ऑटोमेट करने की सुविधा देता है. साथ ही, मैन्युअल टेस्ट के लिए, सभी Android डिवाइस फ़ॉर्म फ़ैक्टर के लिए सहायता उपलब्ध है.

ITS-in-a-box में ये फ़ायदे शामिल हैं:

  • ऑटोमेशन. जांच के दौरान, किसी व्यक्ति की मदद की ज़रूरत नहीं होती.
  • समस्याओं को आसानी से हल करना. टेस्टिंग एनवायरमेंट के एक जैसे होने से, सेटअप से जुड़ी गड़बड़ियां कम होती हैं और टेस्ट को दोहराने की संभावना बढ़ती है.
  • काम की क्षमता. हर कैमरे/सीन के लिए फिर से कोशिश करने की सुविधा से, टेस्ट को बेहतर तरीके से लागू किया जा सकता है.

शुरू करें

ITS-in-a-box में एक प्लास्टिक बॉक्स होता है, जिसे कंप्यूटर-ऐडेड डिज़ाइन (सीएडी) ड्रॉइंग से लेज़र कट किया जाता है. इसमें एक चार्ट टैबलेट और टेस्ट किया जा रहा डिवाइस (डीयूटी) भी होता है. नीचे दी गई टेबल में, उपलब्ध अलग-अलग ITS-in-a-box रिग की सुविधाओं और खास बातों के बारे में बताया गया है.

रिग चार्ट की दूरी डीयूटी कैमरे के फ़ील्ड ऑफ़ व्यू (एफ़ओवी) की रेंज (अनुमानित) सुविधाएं
मॉड्यूलर बेस रिग 22 सें॰मी॰ 60° - 120°
  • कम फ़ुटप्रिंट
  • सामने की तरफ़ बड़े एपर्चर वाला कटआउट, जिससे कई कैमरे वाले सिस्टम की जांच की जा सकती है. ऐसा करने पर, कटआउट की वजह से दूसरे कैमरे ब्लॉक नहीं होते
  • रिग को 90° घुमाया जा सकता है
  • मॉड्यूलर बेस रिग और टेली एक्सटेंशन रिग 22 सें॰मी॰ - 100 सें॰मी॰* 10° - 120°
  • सामने बड़ा एपर्चर वाला कटआउट
  • ऐसे कैमरों की जांच करने में मदद करता है जिनकी कम से कम फ़ोकस दूरी ज़्यादा होती है (ज़्यादातर टेली कैमरे)
  • WFoV ITS-in-a-box 22 सें॰मी॰ 60° - 120°
  • बड़ा फ़ुटप्रिंट, जिससे डीयूटी को कई जगहों पर माउंट किया जा सकता है
  • टैबलेट जैसे बड़े डीयूटी के लिए सहायता
  • RFoV ITS-in-a-box 31 सें॰मी॰ 60° - 90°
  • चार्ट टैबलेट
  • इंटरनल लाइटिंग सिस्टम
  • *अलग-अलग चार्ट की दूरियों के लिए, टेली एक्सटेंशन रिग की लंबाई में बदलाव किया जा सकता है.

    Camera ITS-in-a-box का इस्तेमाल शुरू करने के लिए:

    1. मॉड्यूलर, WFoV या RFoV ITS-in-a-box खरीदें या बनाएं.
    2. Camera ITS सॉफ़्टवेयर की मदद से, किसी टैबलेट को कॉन्फ़िगर करना.
    3. टेस्ट चलाएं.
    4. डीयूटी से नतीजे पाएं.

    टैबलेट को कॉन्फ़िगर करना

    इस सेक्शन में, CameraITS डायरेक्ट्री में मौजूद कैमरे के आईटीएस टेस्ट के साथ इस्तेमाल करने के लिए, टैबलेट को सेट अप करने का तरीका बताया गया है. इन निर्देशों में, उदाहरण के तौर पर Pixel C का इस्तेमाल किया गया है. टैबलेट से जुड़ी ज़रूरी शर्तों और सुझावों के बारे में जानने के लिए, टैबलेट से जुड़ी ज़रूरी शर्तें लेख पढ़ें.

    ध्यान दें: Camera ITS Python स्क्रिप्ट, आपके लिए टैबलेट पर ये विकल्प अपने-आप सेट करती हैं:
    सेटिंग > डिसप्ले > स्लीप मोड > 30 मिनट तक कोई गतिविधि न होने पर
    ऐडैप्टिव ब्राइटनेस > बंद करें

    1. टैबलेट को चार्ज करें और चालू करें. अगर आपसे कोई खाता सेट अप करने के लिए कहा जाए, तो उसे स्किप करें (Camera ITS को टैबलेट के साथ जोड़े गए किसी खाते की ज़रूरत नहीं होती).
    2. टैबलेट को Android 7.0 या इसके बाद के वर्शन पर अपडेट करें. Android 6.x और इससे पहले के वर्शन पर, Camera ITS की सुविधा काम नहीं करती.
    3. डेवलपर मोड चालू करें.
    4. सेटिंग पर वापस जाएं और डेवलपर के लिए सेटिंग और टूल चुनें.
      विकल्प चालू करना
      • चालू है
      • सचेत रहें
      • यूएसबी डीबगिंग (इससे होस्ट, टैबलेट को डीबग मोड में चला सकता है. जब टैबलेट को पहली बार होस्ट से कनेक्ट किया जाता है, तो टैबलेट पर क्या यूएसबी डीबग करने की अनुमति दें? मैसेज दिखता है. अगर टैबलेट पर डीबग करने का प्रॉम्प्ट नहीं दिखता है, तो टैबलेट को डिसकनेक्ट करें और फिर से कनेक्ट करें.
      विकल्प बंद करना
      • अपने आप होने वाले सिस्टम अपडेट
      • यूएसबी पर ऐप्लिकेशन की पुष्टि करें
    5. उपलब्ध डिवाइसों की सूची देखने के लिए, $ adb devices चलाकर डीयूटी और चार्ट आईडी का पता लगाएं. device_id और chart_id का पता लगाने के लिए, डिवाइसों को प्लग इन और अनप्लग करें. साथ ही, उन डिवाइसों को देखें जो कनेक्ट और डिसकनेक्ट होते हैं.
    6. टैबलेट स्क्रीन पर चार्ट को छिपाने वाले हिंट और उपयोगकर्ता के प्रॉम्प्ट को हटाने के लिए, तीन टेस्ट रन करें.
      1. टैबलेट को टेबल पर ऊपर की ओर रखें. टैबलेट को बॉक्स के पीछे के पैनल से अटैच न करें.
      2. यह कमांड चलाएं:
        python tools/run_all_tests.py device=$device_id camera=0 chart=$chart_id scenes=2,3
        
        दूसरे और तीसरे सीन में, टैबलेट पर एक इमेज दिखती है. इसलिए, टैबलेट पर यह मैसेज दिखता है कि Drive को अपने डिवाइस पर मौजूद फ़ोटो, मीडिया, और फ़ाइलें ऐक्सेस करने की अनुमति दें?. अनुमति दें दबाकर, इस प्रॉम्प्ट को हटाएं. इससे आने वाले समय में भी आपको यह प्रॉम्प्ट नहीं दिखेगा.
      3. निर्देश को फिर से चलाएं. इसके बाद, टेबलेट पर क्या इस फ़ाइल की कॉपी रखनी है? का मैसेज दिखेगा. साथ ही, Google Drive का सुझाव भी दिखेगा. Drive आइकॉन को दबाकर, इस प्रॉम्प्ट को हटाएं. इसके बाद, Drive में अपलोड करने के लिए रद्द करें पर क्लिक करें. ऐसा करने से, आने वाले समय में भी यह प्रॉम्प्ट नहीं दिखेगा.
      4. आखिर में, tools/run_all_tests.py चलाएं और पुष्टि करें कि स्क्रिप्ट के अलग-अलग सीन के बीच स्विच करने पर, सीन अपने-आप बदलते हैं. ज़्यादातर जांच पूरी नहीं होतीं, क्योंकि कैमरा चार्ट पर नहीं होता. हालांकि, इस बात की पुष्टि की जा सकती है कि टैबलेट, स्क्रीन पर कोई प्रॉम्प्ट या अन्य पॉप-अप दिखाए बिना, सही तरीके से सीन दिखाता है.

    टेस्ट चलाना

    ITS-in-a-box को चलाने से पहले, पक्का करें कि आपके टेस्ट सेटअप में ये हार्डवेयर और सॉफ़्टवेयर शामिल हों:

    • एक (1) ITS-in-a-box
    • सीन दिखाने के लिए, हाई रिज़ॉल्यूशन वाला एक (1) 10" टैबलेट, S/N: 5811000011
    • एक (1) डीयूटी, जिसमें CTS Verifier 7.0_8+ ऐप्लिकेशन इंस्टॉल हो. डीयूटी का उदाहरण:
      • बैक कैमरे (0) की जांच के लिए, एक(1) Pixel NOF26W, S/N: FA6BM0305016. CTS Verifier ऐप्लिकेशन को इंस्टॉल करने के लिए, android-cts-verifier.zip को अनज़िप करें. इसके बाद,
        adb -s FA6BM0305016 install -r -g android-cts-verifier/CtsVerifier.apk
        

    टैबलेट पर काम करने वाले सीन चलाना

    रीयर कैमरे पर सीन 0 से 4, 6, और scene_change चलाने के लिए:

    cd android-cts-verifier/CameraITS
    . build/envsetup.sh
    python tools/run_all_tests.py camera=0
    

    उदाहरण:

    कैमरा 0 का सीरियल नंबर: FA6BM0305016
    पहली इमेज. कैमरा 0 का सीरियल नंबर: FA6BM0305016

    सीन फिर से चलाना

    किसी एक कैमरे के लिए, सीन फिर से रिकॉर्ड किए जा सकते हैं:

    • किसी एक कैमरे पर सीन फिर से रिकॉर्ड करने के लिए:
      python tools/run_all_tests.py device=FA6BM0305016 camera=0 scenes=3,4
      

    पांचवां सीन चलाना

    सीन 5 के लिए, खास लाइटिंग के साथ खास सेटअप की ज़रूरत होती है. ज़्यादा जानकारी के लिए, सीटीएस की पुष्टि करने वाले टूल में CameraITS.pdf देखें. इसे कंपैटिबिलिटी टेस्ट सुइट डाउनलोड पर डाउनलोड किया जा सकता है. आपको सीन 5 को अलग से चलाना होगा (बॉक्स के बाहर).

    camera scene 5
    दूसरी इमेज. कैमरा सीन 5

    किसी एक डिवाइस पर, सामने और पीछे के कैमरे के लिए सीन 5 चलाने के लिए:

    python tools/run_all_tests.py device=FA6BM0305016 camera=0 scenes=5
    python tools/run_all_tests.py device=FA6BM0305016 camera=1 scenes=5
    

    नतीजे पाना

    जांच के दौरान नतीजे देखे जा सकते हैं. साथ ही, पूरे हो चुके नतीजों को रिपोर्ट के तौर पर सेव किया जा सकता है.

    • नतीजे देखें. कैमरे से मिले आईटीएस के नतीजों को रिपोर्ट के तौर पर सेव करने के लिए:
      1. पास करें दबाएं और रिपोर्ट सेव करें.
        कैमरे की आईटीएस रिपोर्ट
        तीसरा डायग्राम. कैमरे की आईटीएस रिपोर्ट
      2. डिवाइस से रिपोर्ट खींचने के लिए:
        adb -s FA6BM0305016 pull /sdcard/verifierReports
        
      3. रिपोर्ट फ़ाइल को अनज़िप करें और test_result.xml देखें.
        कैमरे की आईटीएस रिपोर्ट
        चौथी इमेज. कैमरे से जुड़ी ITS रिपोर्ट

    टैबलेट से जुड़ी ज़रूरी शर्तें

    Android 15 और इसके बाद के वर्शन के लिए, आईटीएस चार्ट डिसप्ले के तौर पर इस्तेमाल किए जाने वाले टैबलेट, यहां दी गई अनुमति वाली सूची में होने चाहिए. कम रोशनी वाले सीन की जांच करने की सुविधा वाले टेबलेट की सूची के लिए, कम रोशनी वाले सीन की जांच करने की सुविधा वाले टेबलेट देखें. Android 14 या इससे पहले के वर्शन के लिए, Android 14 और इससे पहले के वर्शन वाले टैबलेट के लिए ज़रूरी शर्तें देखें.

    अनुमति वाली सूची में टैबलेट को इन शर्तों के आधार पर चुना जाता है:

    • डिसप्ले का साइज़ करीब 10 इंच और स्क्रीन का रिज़ॉल्यूशन 1920 x 1200 पिक्सल से ज़्यादा होना चाहिए.
    • इसमें, पल्स-विड्थ मॉड्यूलेशन (पीएमडब्ल्यू) से कंट्रोल की गई स्क्रीन के डाइम होने की वजह से, मापी गई फ़्लिकरिंग नहीं होनी चाहिए.
    • यह ITS टेस्ट से भेजे गए adb निर्देशों को लागू कर सकता है. साथ ही, स्क्रीन की तय की गई चमक के साथ चार्ट की इमेज दिखा सकता है.

    टैबलेट के मॉडल के हिसाब से, brightness वैल्यू को config.yml में सेट करना ज़रूरी है. यह पता लगाने के लिए कि आपका टैबलेट मॉडल, अनुमति वाली सूची में मौजूद डिवाइस के नाम से मेल खाता है या नहीं, adb shell getprop | grep 'ro.product.device' adb कमांड चलाकर ro.product.device वैल्यू को प्रिंट करें.

    डिवाइस डिसप्ले का साइज़
    (इंच)
    डिसप्ले का साइज़
    (पिक्सल)
    टैबलेट के डाइमेंशन
    (इंच)
    डिसप्ले की
    चमक
    डिवाइस का नाम
    (ro.product
    .device)
    टैबलेट का ओएस
    वर्शन
    Google
    Pixel C
    10.2 2560 x 1800 9.53 x 7.05 x 0.28 96 ड्रैगन Android 6 और उसके बाद के वर्शन
    Honor
    Pad 8
    11 2000 x 1200 10.18 x 6.76 x 0.29 192 HNHEY-Q Android 12
    Huawei
    MediaPad m5
    10.8 2560 x 1600 10.18 x 6.76 x 0.29 192 HWCMR09 Android 8 और उसके बाद के वर्शन
    Lenovo
    Tab M10 Plus
    10.3 1920 x 1200 9.61 x 6.03 x 0.32 192 X606F Android 9 और उसके बाद के वर्शन
    Lenovo
    Tab P11
    11 2000 x 1200 10.17 x 6.42 x 0.30 192 J606F Android 11 और उसके बाद के वर्शन
    Lenovo
    Tab P11 Gen2
    11.5 2000 x 1200 10.59 x 6.67 x 0.29 192 TB350FU Android 13 और उसके बाद के वर्शन
    Nokia
    T21
    10.4 2000 x 1200 9.74 x 6.19 x 0.30 192 AGTA Android 12 और उसके बाद के वर्शन
    Samsung
    Galaxy Tab A7
    10.4 2000 x 1200 9.75 x 6.2 x 0.28 192 gta4lwifi Android 10 और उसके बाद के वर्शन
    Samsung
    Galaxy Tab A8
    10.5 1920 x 1200 9.72 x 6.73 x 0.27 192 gta8wifi Android 11 और उसके बाद के वर्शन
    Samsung
    Galaxy Tab A9+
    11 1920 x 1200 10.12 x 6.64 x 0.27 192 gta9pwifi Android 13 और उसके बाद के वर्शन
    Vivo
    Pad2
    12.1 2800 x 1968 10.47 x 7.54 x 0.26 192 DPD2221 Android 13 और उसके बाद के वर्शन
    Xiaomi
    Pad 5
    11 2560 x 1600 10.18 x 6.76 x 0.29 192 nabu Android 13 और उसके बाद के वर्शन
    Xiaomi
    Redmi
    Pad
    10.61 2000 x 1200 9.86 x 6.22 x 0.28 192 yunluo Android 14 और उसके बाद के वर्शन
    Xiaomi
    Redmi
    Pad SE
    11 2560 x 1600 10.06 x 6.58 x 0.29 192 xun Android 13 और उसके बाद के वर्शन

    कम रोशनी वाले सीन के लिए इस्तेमाल किए जा सकने वाले टैबलेट

    नीचे दी गई टेबल में उन टैबलेट की सूची दी गई है जिन पर कम रोशनी वाले सीन की जांच की जा सकती है. ये टैबलेट, कम रोशनी वाले सीन के लिए ज़रूरी ब्राइटनेस लेवल तक पहुंच सकते हैं. इससे डीयूटी, चार्ट को सही तरीके से दिखा सकता है.
    डिवाइस डिवाइस का नाम (ro.product.device) टैबलेट का ओएस वर्शन
    Huawei
    MediaPad m5
    HWCMR09 Android 8 और उसके बाद के वर्शन
    Samsung Galaxy Tab A8 gta8wifi Android 11 और उसके बाद के वर्शन
    Samsung Galaxy Tab A9+ gta9pwifi Android 13 और उसके बाद के वर्शन
    Xiaomi Pad 5 nabu Android 13 और उसके बाद के वर्शन
    Xiaomi
    Redmi
    Pad SE
    xun Android 13 और उसके बाद के वर्शन

    Android 14 और इससे पहले के वर्शन वाले टैबलेट के लिए ज़रूरी शर्तें

    टैबलेट का डिसप्ले साइज़ करीब 10 इंच होना चाहिए. साथ ही, स्क्रीन का रिज़ॉल्यूशन 1920 x 1200 पिक्सल से ज़्यादा होना चाहिए. टैबलेट को चमक का लेवल सेट करने के लिए,पल्स विड्थ मॉड्यूलेशन (PWM) का इस्तेमाल नहीं करना चाहिए. टैबलेट मॉडल के हिसाब से, brightness की वैल्यू को config.yml में सेट करना ज़रूरी है. नीचे दी गई टेबल में, आईटीएस टेस्टिंग के लिए सुझाए गए टैबलेट के साथ-साथ, उन डीयूटी के लिए Android रिलीज़ के वर्शन की सूची दी गई है जिनके साथ टैबलेट काम करते हैं.

    डिवाइस डिसप्ले का साइज़
    (इंच)
    डिसप्ले का साइज़
    (पिक्सल)
    टैबलेट के डाइमेंशन
    (इंच)
    डिसप्ले की
    चमक
    डिसप्ले
    बिट
    इस्तेमाल किए जा सकने वाले
    DUT OS
    इस्तेमाल किए जा सकने वाले
    टैबलेट ओएस
    Samsung
    Galaxy Tab A8
    10.5 1920 x 1200 9.72 x 6.37 x 0.27 192 8 Android 13 और उसके बाद के वर्शन Android 11 और उसके बाद के वर्शन
    Xiaomi
    Pad 5
    11 2560 x 1600 10.03 x 6.55 x 0.27 1024 11 Android 12 और उसके बाद के वर्शन सिर्फ़ Android 11
    Lenovo
    Tab M10 Plus
    10.3 1920 x 1200 9.61 x 6.03 x 0.32 192 8 Android 12 और उसके बाद के वर्शन Android 9 और उसके बाद के वर्शन
    Samsung
    Galaxy Tab A7
    10.4 2000 x 1200 9.75 x 6.2 x 0.28 192 8 Android 12 और उसके बाद के वर्शन Android 10 और उसके बाद के वर्शन
    Chuwi
    Hi9 Air 10.1
    10.1 2560 x 1600 9.52 x 6.77 x 0.31 192 8 Android 7 और उसके बाद के वर्शन Android 8 और उसके बाद के वर्शन
    Asus
    ZenPad 3
    9.7 2048 x 1536 9.47 x 6.44 x 0.28 192 8 Android 7 और उसके बाद के वर्शन Android 6 और उसके बाद के वर्शन
    Huawei
    MediaPad m5
    10.8 2560 x 1600 10.18 x 6.76 x 0.29 192 8 Android 7 और उसके बाद के वर्शन Android 8 और उसके बाद के वर्शन
    Google
    Pixel C
    10.2 2560 x 1800 9.53 x 7.05 x 0.28 96 8 Android 7 और उसके बाद के वर्शन Android 6 और उसके बाद के वर्शन
    Sony
    Xperia Z4
    10.1 2560 x 1600 10 x 6.57 x 0.24 192 8 Android 7 और उसके बाद के वर्शन Android 5 या उसके बाद के वर्शन

    अक्सर पूछे जाने वाले सवाल

    पहला सवाल: मैं यह कैसे तय करूं कि मेरे डिवाइस के लिए कौनसे टेस्ट रिग की ज़रूरत है?

    RFoV ITS-in-a-box रिविज़न 1, CameraITS/tests डायरेक्ट्री में टैबलेट के सीन टेस्ट के लिए RFoV कैमरों की जांच करता है. आरएफ़ओवी को इस तरह से परिभाषित किया गया है: 60° < एफ़ओवी < 90°. बड़े एफ़ओवी वाले कैमरों के लिए, लाइटें इमेज में दिख सकती हैं या चार्ट, एफ़ओवी में बहुत छोटा हिस्सा कवर कर सकते हैं. इससे जांच के नतीजों पर असर पड़ सकता है.

    WFoV ITS-in-a-box रिव्यूज़न 2, CameraITS/tests डायरेक्ट्री में टैबलेट के सीन टेस्ट के लिए, WFoV कैमरों की जांच करता है. WFoV को इस तरह से परिभाषित किया गया है: FoV >= 90°. रिविज़न 2 टेस्ट रिग, रिविज़न 1 की तरह ही काम करता है, लेकिन यह बड़ा है. दूसरे वर्शन के टेस्ट रिग की मदद से, Android 9 और उसके बाद के वर्शन में RFoV और WFoV, दोनों तरह के कैमरों की जांच की जा सकती है. अगर डीयूटी टैबलेट है, तो रीविज़न 2 सबसे सही है, क्योंकि इसका फ़ुटप्रिंट बड़ा है

    मॉड्यूलर बेस रिग , CameraITS/tests डायरेक्ट्री में टैबलेट के सीन टेस्ट के लिए, WFoV कैमरों की जांच करता है. WFoV को इस तरह से परिभाषित किया गया है: FoV >= 90°. मॉड्यूलर बेस रिग, Android 9 और उसके बाद के वर्शन वाले डिवाइसों के लिए, RFoV और WFoV, दोनों तरह के कैमरों की जांच कर सकता है. यह टेली एक्सटेंशन रिग के साथ भी काम करता है. इसे, कम से कम फ़ोकस दूरी के साथ टेली कैमरों की जांच करने के लिए अटैच किया जा सकता है. मॉड्यूलर बेस रिग, WFoV ITS-in-a-box के काम करने के तरीके जैसा ही है, लेकिन यह छोटा है.

    सेंसर फ़्यूज़न बॉक्स, कैमरा/जाइरोस्कोप के समय में होने वाले बदलाव और कई कैमरे वाले सिस्टम के फ़्रेम सिंक की जांच करता है. इसके लिए, वह scenes=sensor_fusion में मौजूद टेस्ट का इस्तेमाल करता है. REALTIME फ़ीचर फ़्लैग के लिए, कैमरा/जाइरोस्कोप के टाइमिंग ऑफ़सेट की वैल्यू 1 एमएस से कम होनी चाहिए.

    स्टैटिक ITS टेस्ट के लिए, एक से ज़्यादा कैमरे वाले डिवाइसों की जांच एक ही रिग से की जा सकती है. साथ ही, अगर कैमरे में REALTIME सुविधा का फ़्लैग है, तो सेंसर फ़्यूज़न रिग से भी जांच की जा सकती है.

    नीचे दी गई टेबल में, कॉन्फ़िगरेशन के उदाहरणों का एक सेट दिया गया है.

    उदाहरण कैमरे के फ़ील्ड ऑफ़ व्यू क्या यह रीयल-टाइम है? सुझाई गई रिग नोट
    1 75° नहीं मॉड्यूलर बेस, Rev 1 या Rev 2 Android 7.0 या इसके बाद का वर्शन
    2 75° हां मॉड्यूलर बेस, Rev 1 या Rev 2 और सेंसर फ़्यूज़न Android 9 या इसके बाद का वर्शन
    3 75° + 95° हां मॉड्यूलर बेस या Rev 2 और सेंसर फ़्यूज़न Android 9 या इसके बाद का वर्शन
    4 75° + 95° + 20° हां मॉड्यूलर बेस और टेली एक्सटेंशन और सेंसर फ़्यूज़न Android 9 या इसके बाद का वर्शन
    5 75° + 95° टैबलेट नहीं Rev 2 Android 9 या इसके बाद का वर्शन

    दूसरा सवाल: मैं यह कैसे तय करूं कि कौनसा टेस्ट रिग इस्तेमाल किया जा रहा है?

    सही टेस्ट रिग तय करने के लिए, पक्का करें कि चार्ट की दूरी का पैरामीटर सही हो. रिव1 टेस्ट रिग (RFoV) में चार्ट की दूरी 31 सेमी है और रिव2 रिग (WFoV) में चार्ट की दूरी 22 सेमी है. डिफ़ॉल्ट रूप से, चार्ट की दूरी 31 सेंटीमीटर पर सेट होती है.

    Android 10 से Android 11 पर अपग्रेड करना

    Android 10 से लेकर 11 तक के सही टेस्ट रिग की पहचान करने के लिए, कमांड लाइन में dist फ़्लैग जोड़ें. dist के लिए डिफ़ॉल्ट वैल्यू 31 है. chart_distance पैरामीटर बदलने के लिए, यह कमांड चलाएं.
    python tools/run_all_tests.py ... chart=# dist=22
    

    Android 12 और उसके बाद के वर्शन

    Android 12 और उसके बाद के वर्शन में सही टेस्ट रिग की पहचान करने के लिए, chart_distance पैरामीटर बदलने के लिए, config.yml फ़ाइल में बदलाव किया जा सकता है.
    edit config.yml
    chart_distance: 31.0 → chart_distance: 22.0
    

    तीसरा सवाल: मैं टैबलेट की स्क्रीन की चमक को कैसे कंट्रोल करूं?

    डिफ़ॉल्ट रूप से, टैबलेट की स्क्रीन की चमक 96 पर सेट होती है.

    Android 7.0 से लेकर Android 9 तक के वर्शन पर चलने वाले टैबलेट की स्क्रीन की चमक बदलने के लिए, ये निर्देश अपनाएं:

    edit tools/wake_up_screen.py
    DISPLAY_LEVEL=96 → DISPLAY_LEVEL=192
    

    Android 10 से लेकर 11 तक के वर्शन वाले टैबलेट की स्क्रीन की चमक बदलने के लिए, कमांड लाइन में brightness फ़्लैग जोड़कर वैल्यू बदली जा सकती है:

    python tools/run_all_tests.py device=# camera=# chart=# brightness=192
    

    Android 12 और उसके बाद के वर्शन वाले टैबलेट की स्क्रीन की चमक बदलने के लिए, ये निर्देश अपनाएं:

    edit config.yml
    brightness: 96 → brightness: 192
    

    चौथा सवाल: मैं किसी एक टेस्ट को कैसे डीबग करूं?

    डीबग करने के लिए, टेस्ट को अलग-अलग चलाया जा सकता है. हालांकि, जब तक पूरा सीन नहीं चलाया जाता, तब तक नतीजों को CtsVerifier.apk को नहीं भेजा जाता.

    Android 11 और इससे पहले के वर्शन पर कोई एक सीन चलाने के लिए:

    1. tools/run_all_tests.py में scenes फ़्लैग जोड़कर कोई सीन लोड करें:
      python tools/run_all_tests.py device=# camera=# chart=# scenes=#
      
    2. stdout पर लोड होने के बाद, जांच को रोकने के लिए Control+C दबाएं.

      अगर सही सीन पहले से ही स्क्रीन पर है, तो स्क्रीन को चालू करने के लिए:

      python tools/wake_up_screen.py screen=#
      
    3. अलग-अलग टेस्ट चलाएं.

      python tests/scene#/test_*.py device=# camera=#

      इसके बाद, लोकल डायरेक्ट्री में प्लॉट जनरेट किए जाते हैं और stdout और stderr को स्क्रीन पर प्रिंट किया जाता है.

      डीबग करने के बारे में ज़्यादा जानकारी पाने के लिए, स्क्रिप्ट में print स्टेटमेंट जोड़ें. डीबग करने के लिए टेस्ट आउटपुट बढ़ाने के लिए, debug=True फ़्लैग जोड़ें.

      python tests/scene#/test_*.py device=# camera=# debug=True

    tools/run_all_tests.py को चलाने पर, नतीजे लोकल स्क्रीन पर प्रिंट किए जाते हैं और इमेज, जनरेट की गई /tmp/tmp### डायरेक्ट्री के बजाय लोकल डायरेक्ट्री में सेव होती हैं.

    Android 12 और उसके बाद के वर्शन में कोई एक सीन चलाने के लिए:

    1. config.yml फ़ाइल में बदलाव करें.

      edit config.yml
      camera: <camera-id> → camera:  0
      scene: <scene-name> → scene: scene1_1
    2. अलग-अलग टेस्ट चलाएं.

      python tools/run_all_tests.py -c config.yml --test_bed TEST_BED_TABLET_SCENES
      

    नतीजे, /tmp/logs/mobly/TEST_BED_TABLET_SCENES/ डायरेक्ट्री में रन टाइम के हिसाब से क्रम में लगाए जाते हैं.

    पांचवां सवाल: मुझे टेस्ट को अलग-अलग चलाने के बजाय, पूरे सीन के तौर पर क्यों चलाना चाहिए?

    डीबग करने के लिए, टेस्ट को अलग-अलग चलाया जा सकता है. हालांकि, जब तक पूरा सीन नहीं चलाया जाता, तब तक नतीजों को CtsVerifier.apk को नहीं भेजा जाता.

    Camera ITS यह पक्का करता है कि तीसरे पक्ष के ऐप्लिकेशन में कैमरे का ऐसा इंटरफ़ेस हो जो काम करता हो. यूनिट टेस्ट की तरह ही, हर टेस्ट में कैमरे की किसी एक खास बात पर फ़ोकस किया जाता है. गलत व्यवहार का पता लगाने के लिए, यह ज़रूरी है कि ये टेस्ट पूरे सीन के लिए एक ग्रुप के तौर पर पास हों. उदाहरण के लिए, भरोसेमंद न होने वाला एक टेस्ट, पूरे सीन को फिर से चलाने की अनुमति दे सकता है. हालांकि, भरोसेमंद न होने वाले कई टेस्ट को अनुमति मिलना मुश्किल है.

    उदाहरण के लिए, किसी सीन में 10 टेस्ट हों और हर टेस्ट में PASS मिलने की संभावना 50% हो. हर जांच को अलग से चलाने पर, ऑपरेटर के पास कैमरे को कैमरा आईटीएस की जांच पास करने का ज़्यादा मौका होता है. हालांकि, अगर टेस्ट को एक सीन के तौर पर एक साथ चलाया जाता है, तो सीन के पास पास होने की सिर्फ़ 0.1% संभावना होती है.

    छठा सवाल: मैं एक सीन कैसे चलाऊं या चल रहे सीन का क्रम कैसे बदलूं?

    डिफ़ॉल्ट रूप से, स्क्रिप्ट tools/run_all_tests.py सभी सीन को क्रम में चलाती है. हालांकि, सीन को अलग-अलग या किसी तय क्रम में चलाया जा सकता है और CtsVerifier.apk को रिपोर्ट किया जा सकता है.

    Android 11 या इससे पहले के वर्शन में, किसी एक सीन (उदाहरण के लिए, सीन 2) को चलाने या एक से ज़्यादा सीन को किसी खास क्रम में चलाने के लिए:

    python tools/run_all_tests.py device=# camera=# chart=# scenes=2
    
    python tools/run_all_tests.py device=# camera=# chart=# scenes=3,2
    

    Android 12 और उसके बाद के वर्शन में, किसी एक सीन को चलाने या एक से ज़्यादा सीन को किसी खास क्रम में चलाने के लिए:

    python tools/run_all_tests.py scenes=2
    
    python tools/run_all_tests.py scenes=3,2
    

    अतिरिक्त पैरामीटर, config.yml फ़ाइल में सेट किए जाते हैं.

    सातवां सवाल: टैबलेट सेटअप के साथ, सीन 1 के कई टेस्ट पास नहीं होते, लेकिन पेपर चार्ट से पास हो जाते हैं. क्या गड़बड़ है?

    पक्का करें कि टैबलेट और टेस्ट एनवायरमेंट, यहां दी गई जानकारी के मुताबिक हों.

    टैबलेट की खास बातें

    पक्का करें कि टैबलेट इन स्पेसिफ़िकेशन के मुताबिक हो:

    • डिसप्ले का साइज़ (इंच): 10 इंच
    • डिसप्ले का साइज़ (पिक्सल): 1920 x 1200 पिक्सल से ज़्यादा

    ज़्यादा जानकारी के लिए, टेबलेट से जुड़ी ज़रूरी शर्तें देखें.

    टैबलेट की रोशनी

    अगर टैबलेट डिसप्ले की चमक बहुत कम है, तो हो सकता है कि जांच के नतीजे सही न हों.

    ज़्यादा जानकारी के लिए, मैं टेबलेट की स्क्रीन की चमक को कैसे कंट्रोल करूं? लेख पढ़ें

    बॉक्स की लाइटिंग का लेवल (इसके लिए लक्स मीटर की ज़रूरत होती है)

    पक्का करें कि टैबलेट खोलने पर टारगेट लक्स वैल्यू, 100 से 300 के बीच हो.

    अगर लक्स लेवल बहुत ज़्यादा है, तो scene1/test_param_flash_mode.py FAIL दिखाता है. अगर लक्स लेवल बहुत कम है, तो कई टेस्ट पूरे नहीं होते.

    आठवां सवाल: सेंसर फ़्यूज़न टेस्ट को डीबग कैसे करें?

    1. पक्का करें कि आप dialout ग्रुप में हों.

      groups | egrep ‘dialout'
    2. यह पक्का करें कि सेंसर फ़्यूज़न कंट्रोलर कनेक्ट है या नहीं. इसके लिए, देखें कि माइक्रोचिप टेक्नोलॉजी, यूएसबी पोर्ट से कनेक्ट है या नहीं.

      lsusb
      …
      Bus 003 Device 004: ID 04d8:fc73 Microchip Technology, Inc.
      …
      
    3. नीचे दिए गए निर्देशों का इस्तेमाल करके, टेस्ट के कई प्रयासों का डिस्ट्रिब्यूशन पाने के लिए, टेस्ट को कई बार चलाएं.

      Android 11 या इससे पहले के वर्शन में:

      python tools/run_sensor_fusion_box.py device=A camera=0 num_runs=10 rotator=default
      

      Android 12 और उसके बाद के वर्शन में:

      python tools/run_sensor_fusion_box.py num_runs=10
      

      अतिरिक्त पैरामीटर, config.yml फ़ाइल में सेट किए जाते हैं.

      रन आउट, sensor_fusion_# फ़ोल्डर में बनाए गए /tmp/tmp### फ़ोल्डर में मौजूद होते हैं. यहां #, रन नंबर है. ऐसा होने की आम वजहें ये हैं:

      1. फ़ोन ठीक से बीच में नहीं है.
      2. इमेज में ज़रूरत के मुताबिक फ़ीचर नहीं मिलते. आम तौर पर, फ़ील्ड ऑफ़ व्यू या लाइटिंग से जुड़ी समस्या होती है.
      3. दिखाया गया FAIL मान्य है. साथ ही, कैमरे और घुमाव-गति सेंसर के बीच समय के ऑफ़सेट को ठीक करना ज़रूरी है.

    नौवां सवाल: जांच से जुड़े किसी गड़बड़ी की शिकायत करते समय, मुझे कौनसी जानकारी देनी चाहिए?

    टेस्टिंग से जुड़ी गड़बड़ी की शिकायत करते समय, टेस्ट के लिए जनरेट की गई फ़ाइलें और इमेज शामिल करें.

    1. अगर आपने tools/run_all_tests.py की मदद से टेस्ट किया है, तो बग के साथ ज़िप की गई /tmp/ डायरेक्ट्री अटैच करें.
    2. अगर आपने टेस्ट को खुद चलाया है, तो बग में सभी स्क्रीन आउटपुट और जनरेट की गई इमेज अटैच करें.

    गड़बड़ी की रिपोर्ट भी शामिल करें. जिस टेस्ट में गड़बड़ी मिली है वह पास न होने पर, गड़बड़ी की रिपोर्ट जनरेट करने के लिए नीचे दिए गए निर्देश का पालन करें. साथ ही, जनरेट की गई zip फ़ाइल को गड़बड़ी से अटैच करें.

    adb -s device_id bugreport
    

    Q10: ऐसे कैमरे के साथ sensor_fusion टेस्ट सीन कैसे चलाया जा सकता है जिसकी फ़ोकस की कम से कम दूरी, चार्ट से 25 सेंटीमीटर की दूरी पर धुंधली इमेज बनाती है?

    अगर आपका कैमरा 25 सेंटीमीटर की दूरी पर फ़ोकस नहीं कर पा रहा है, तो सेंसर फ़्यूज़न बॉक्स के चार्ट-माउंटिंग पैनल को हटा दें. चार्ट को ऐसी दूरी पर रखें जहां डीयूटी फ़ोकस कर सके. साथ ही, chart_distance को config.yml में बदलकर, डीयूटी और चार्ट के बीच की मापी गई दूरी डालें. इस स्थिति में चार्ट की दूरी को मेज़र करने का तरीका, पांचवें चित्र में दिखाया गया है.

    sensor_fusion TELE टेस्टिंग का उदाहरण6
    पांचवीं इमेज. सेंसर फ़्यूज़न टेस्ट सीन के लिए चार्ट की दूरी को मेज़र करना
      edit config.yml
    chart_distance: 25 → chart_distance: DISTANCE_BETWEEN_DUT_AND_CHART
    

    Q11: ऐसे कैमरे के लिए टैबलेट टेस्ट सीन कैसे चलाएं जिसकी फ़ोकस की कम से कम दूरी 31 सेंटीमीटर है और चार्ट से 31 सेंटीमीटर की दूरी पर धुंधली इमेज बनाता है?

    अगर आपका कैमरा 31 सेंटीमीटर (RFoV टेस्ट रिग की गहराई) पर जांच करते समय, ज़रूरत के मुताबिक साफ़ इमेज नहीं दिखा पा रहा है, तो अपने कैमरे को रिग के सामने कुछ दूरी पर माउंट करें. इससे चार्ट सीन, कैमरे के फ़ील्ड ऑफ़ व्यू (FoV) के करीब 60% हिस्से को ज़्यादा साफ़ इमेज से भर पाएगा. यह दूरी, कैमरे की कम से कम फ़ोकस दूरी से कम हो सकती है. chart_distance को config.yml में 31 सें॰मी॰ पर छोड़ें. टैबलेट पर चार्ट का स्केलिंग, कैमरे के फ़ील्ड ऑफ़ व्यू (FoV) के हिसाब से तय होता है. इस बारे में यहां दी गई टेबल में बताया गया है:

    कैमरे का फ़ील्ड ऑफ़ व्यू चार्ट का स्केलिंग फ़ैक्टर
    60 > FoV > 40 0.67x
    40 > FoV > 25 0.5x
    फ़ील्ड ऑफ़ व्यू (FOV) 25 से कम 0.33x

    Q12: लॉजिकल मल्टी-कैमरा एपीआई की मदद से, किन कैमरों पर कौनसे टेस्ट चलाए जाते हैं?

    अगर आपका कैमरा REQUEST_AVAILABLE_CAPABILITIES_LOGICAL_MULTI_CAMERA का इस्तेमाल करता है, तो ITS से जुड़ी सभी टेस्ट, टॉप-लेवल लॉजिकल कैमरे पर की जाती हैं. आईटीएस टेस्ट का एक सबसेट, फ़िज़िकल सब-कैमरों पर चलाया जाता है. इन टेस्ट की सूची, tools/run_all_tests.py में SUB_CAMERA_TESTS कॉन्स्टेंट के नीचे दी गई है.