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 रिग की सुविधाओं और खास बातों के बारे में बताया गया है.
रिग | चार्ट की दूरी | डीयूटी कैमरे के फ़ील्ड ऑफ़ व्यू (एफ़ओवी) की सीमा (अनुमानित) | सुविधाएं |
---|---|---|---|
मॉड्यूलर बेस रिग | 22 सें॰मी॰ | 60° - 120° |
|
मॉड्यूलर बेस रिग और टेली एक्सटेंशन रिग | 22 सें॰मी॰ - 100 सें॰मी॰* | 10° से 120° तक | |
अलग-अलग तरह की सुविधाएं | 22 सें॰मी॰ | 60° - 120° |
|
RFoV ITS-in-a-box | 31 सें॰मी॰ | 60° - 90° |
|
*अलग-अलग चार्ट की दूरियों के लिए, टेली एक्सटेंशन रिग की लंबाई में बदलाव किया जा सकता है. |
Camera ITS-in-a-box का इस्तेमाल शुरू करने के लिए:
- कोई मॉड्युलर, WFoV या RFoV प्रॉडक्ट खरीदें या बनाएं.
- Camera ITS सॉफ़्टवेयर की मदद से, किसी टैबलेट को कॉन्फ़िगर करना.
- टेस्ट चलाएं.
- डीयूटी से नतीजे पाएं.
टैबलेट को कॉन्फ़िगर करें
इस सेक्शन में,
CameraITS
डायरेक्ट्री में मौजूद
कैमरे के आईटीएस टेस्ट के साथ इस्तेमाल करने के लिए, टैबलेट को सेट अप करने के बारे में सिलसिलेवार निर्देश दिए गए हैं. इन निर्देशों में Pixel C का इस्तेमाल,
टैबलेट के उदाहरण के तौर पर किया गया है. टैबलेट से जुड़ी ज़रूरी शर्तों और सुझावों के बारे में जानने के लिए, टैबलेट से जुड़ी ज़रूरी शर्तें लेख पढ़ें.
ध्यान दें: Camera ITS Python स्क्रिप्ट, आपके लिए टैबलेट पर ये विकल्प अपने-आप सेट करती हैं:
सेटिंग > डिसप्ले > स्लीप मोड > 30 मिनट तक कोई गतिविधि न होने पर
ऐडैप्टिव ब्राइटनेस > बंद करें
- टैबलेट को चार्ज करें और चालू करें. अगर आपको खाता सेट अप करने के लिए कहा जाए, तो इसे स्किप करें (Camera ITS को टैबलेट के साथ जोड़े गए किसी खाते की ज़रूरत नहीं होती).
- टैबलेट को Android 7.0 या इसके बाद के वर्शन पर अपडेट करें. Android 6.x और इससे पहले के वर्शन पर, Camera ITS की सुविधा काम नहीं करती.
- डेवलपर मोड चालू करें.
- सेटिंग पर वापस जाएं और डेवलपर के लिए सेटिंग और टूल चुनें.
विकल्प चालू करना - चालू है
- सचेत रहें
- यूएसबी डीबगिंग (इससे होस्ट, टैबलेट को डीबग मोड में चला सकता है. जब टैबलेट को पहली बार होस्ट से कनेक्ट किया जाता है, तो टैबलेट पर क्या यूएसबी डीबग करने की अनुमति दें? मैसेज दिखता है. अगर टैबलेट डीबग करने का प्रॉम्प्ट नहीं दिखाता है, तो उसे डिसकनेक्ट करके फिर से कनेक्ट करें.)
विकल्प बंद करें - अपने आप होने वाले सिस्टम अपडेट
- यूएसबी पर ऐप्लिकेशन की पुष्टि करें
- उपलब्ध डिवाइसों की सूची देखने के लिए,
$ adb devices
चलाकर डीयूटी और चार्ट आईडी का पता लगाएं.device_id
औरchart_id
का पता लगाने के लिए, डिवाइसों को प्लग इन और अनप्लग करें. साथ ही, उन डिवाइसों को देखें जो कनेक्ट और डिसकनेक्ट होते हैं. - टैबलेट स्क्रीन पर चार्ट को छिपाने वाले हिंट और उपयोगकर्ता के प्रॉम्प्ट को हटाने के लिए, तीन टेस्ट रन करें.
- टैबलेट को टेबल पर ऊपर की ओर रखें. टैबलेट को बॉक्स के पीछे के पैनल से अटैच न करें.
- यह कमांड चलाएं:
दूसरे और तीसरे सीन में, टैबलेट पर एक इमेज दिखती है. इसलिए, टैबलेट पर यह मैसेज दिखता है कि Drive को अपने डिवाइस पर मौजूद फ़ोटो, मीडिया, और फ़ाइलें ऐक्सेस करने की अनुमति दें?. अनुमति दें दबाकर, इस प्रॉम्प्ट को हटाएं. इससे, आने वाले समय में आपको यह प्रॉम्प्ट नहीं दिखेगा.python tools/run_all_tests.py device=$device_id camera=0 chart=$chart_id scenes=2,3
- निर्देश को फिर से चलाएं. टैबलेट पर, क्या आपको इस फ़ाइल की कॉपी रखनी है? का प्रॉम्प्ट दिया गया है और Google Drive का सुझाव दिया गया है. Drive आइकॉन को दबाकर, इस प्रॉम्प्ट को हटाएं. इसके बाद, Drive में अपलोड करने के लिए रद्द करें पर क्लिक करें. ऐसा करने पर, आने वाले समय में भी यह प्रॉम्प्ट नहीं दिखेगा.
- आखिर में,
tools/run_all_tests.py
चलाएं और पुष्टि करें कि स्क्रिप्ट के अलग-अलग सीन के बीच स्विच करने पर, सीन अपने-आप बदलते हैं. हालांकि, ज़्यादातर जांच नहीं हो पाती हैं (क्योंकि कैमरा, चार्ट की ओर नहीं होता). हालांकि, आप यह पुष्टि कर सकते हैं कि टैबलेट पर कोई निर्देश या पॉप-अप दिखाए बिना, सभी सीन सही तरीके से चलने लगे हैं या नहीं.
टेस्ट चलाना
ITS-in-a-box को चलाने से पहले, पक्का करें कि आपके टेस्ट सेटअप में यहां दिए गए हार्डवेयर और सॉफ़्टवेयर शामिल हों:
- एक (1) बॉक्स में अलग से
- सीन दिखाने के लिए, हाई रिज़ॉल्यूशन वाला एक (1) 10" टैबलेट, S/N: 5811000011
- एक (1) DUT जिसमें CTS Verifier
7.0_8+ ऐप्लिकेशन इंस्टॉल हो. DUT का उदाहरण:
- बैक कैमरे (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) की जांच के लिए, एक(1) Pixel NOF26W, S/N: FA6BM0305016. CTS Verifier ऐप्लिकेशन
इंस्टॉल करने के लिए,
टैबलेट पर चलने वाले सीन चलाना
रीयर कैमरे पर सीन 0 से 4, 6, और scene_change चलाने के लिए:
cd android-cts-verifier/CameraITS
. build/envsetup.sh
python tools/run_all_tests.py camera=0
उदाहरण:
सीन फिर से चलाना
किसी एक कैमरे के लिए, सीन फिर से रिकॉर्ड किए जा सकते हैं:
- किसी एक कैमरे पर सीन फिर से रिकॉर्ड करने के लिए:
python tools/run_all_tests.py device=FA6BM0305016 camera=0 scenes=3,4
पांचवां सीन चलाना
सीन 5 के लिए, खास लाइटिंग के साथ खास सेटअप की ज़रूरत होती है. ज़्यादा जानकारी के लिए, सीटीएस की पुष्टि करने वाले टूल में CameraITS.pdf
देखें. इसे कंपैटिबिलिटी टेस्ट सुइट डाउनलोड सेक्शन में डाउनलोड किया जा सकता है.
आपको सीन 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
नतीजे पाना
जांच के दौरान नतीजे देखे जा सकते हैं. साथ ही, पूरे हो चुके नतीजों को रिपोर्ट के तौर पर सेव किया जा सकता है.
- नतीजे देखें. कैमरे से मिले आईटीएस के नतीजों को रिपोर्ट के तौर पर सेव करने के लिए:
- पास दबाएं और रिपोर्ट सेव करें.
तीसरा डायग्राम. कैमरे की आईटीएस रिपोर्ट - डिवाइस से रिपोर्ट पाना:
adb -s FA6BM0305016 pull /sdcard/verifierReports
- रिपोर्ट फ़ाइल को अनज़िप करें और
test_result.xml
देखें.
चौथी इमेज. कैमरे से जुड़ी ITS रिपोर्ट
- पास दबाएं और रिपोर्ट सेव करें.
टैबलेट से जुड़ी ज़रूरी शर्तें
Android 15 और इसके बाद के वर्शन के लिए, आईटीएस चार्ट डिसप्ले के तौर पर इस्तेमाल किए जाने वाले टैबलेट, यहां दी गई अनुमति वाली सूची में होने चाहिए. कम रोशनी वाले सीन की जांच करने की सुविधा वाले टेबलेट की सूची के लिए, कम रोशनी वाले सीन की जांच करने की सुविधा वाले टेबलेट देखें. Android 14 या इससे पहले के वर्शन के लिए, Android 14 और इससे पहले के वर्शन के लिए टैबलेट से जुड़ी ज़रूरी शर्तें देखें.
अनुमति वाली सूची में टैबलेट को इन शर्तों के आधार पर चुना जाता है:
- 1920 x 1200 पिक्सल से ज़्यादा रिज़ॉल्यूशन वाली स्क्रीन के साथ करीब 10 इंच का डिसप्ले साइज़.
- इसमें, पल्स-विड्थ मॉड्यूलेशन (पीएमडब्ल्यू) से कंट्रोल की गई स्क्रीन के डाइम होने की वजह से, मापी गई फ़्लिकरिंग नहीं होनी चाहिए.
- यह ITS टेस्ट से भेजे गए adb निर्देशों को लागू कर सकता है. साथ ही, स्क्रीन की तय की गई चमक के साथ चार्ट की इमेज दिखा सकता है.
टैबलेट के मॉडल के हिसाब से, brightness
वैल्यू को config.yml
में सेट किया जाना चाहिए. यह पता लगाने के लिए कि आपका टैबलेट मॉडल, अनुमति वाली सूची में मौजूद डिवाइस के नाम से मेल खाता है या नहीं, adb shell getprop | grep 'ro.product.device'
adb कमांड चलाकर ro.product.device
वैल्यू को प्रिंट करें.
डिवाइस | डिसप्ले का साइज़ (इंच) |
डिसप्ले साइज़ (पिक्सल) |
टैबलेट के डाइमेंशन (इंच) |
डिसप्ले स्क्रीन की रोशनी |
डिवाइस का नाम (ro.product .device) |
Tablet OS वर्शन |
---|---|---|---|---|---|---|
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 | 2,000 x 1,200 | 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 1,200 | 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 | डीपीडी2221 | Android 13 और उसके बाद के वर्शन के लिए |
Xiaomi पैड 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 रेडमी पैड एसई |
11 | 2560 x 1600 | 10.06 x 6.58 x 0.29 | 192 | xun | Android 13 और उसके बाद के वर्शन |
कम रोशनी वाले सीन के लिए इस्तेमाल किए जा सकने वाले टैबलेट
नीचे दी गई टेबल में उन टैबलेट की सूची दी गई है जिन पर कम रोशनी वाले सीन की जांच की जा सकती है. ये टैबलेट, कम रोशनी वाले सीन के लिए ज़रूरी ब्राइटनेस लेवल तक पहुंच सकते हैं. इससे डीयूटी, चार्ट को सही तरीके से दिखा सकता है.डिवाइस | डिवाइस का नाम (ro.product.device) | टैबलेट का ओएस वर्शन |
---|---|---|
Huawei MediaPad m5 |
एचडब्ल्यूसीएमआर09 | Android 8 और उसके बाद के वर्शन |
Samsung Galaxy Tab A8 | gta8वाई-फ़ाई | 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 कैमरों की जांच करता है. RFoV को 60° < FoV < 90° के तौर पर तय किया जाता है.
बड़े एफ़ओवी कैमरों के लिए, इमेज में लाइटें दिख सकती हैं या ऐसा हो सकता है कि चार्ट, एफ़ओवी में बहुत छोटे हिस्से को कवर कर रहे हों. इससे जांच के नतीजों पर असर पड़ता है.
WFoV ITS-in-a-box
रिव्यूज़न 2,
CameraITS/tests
डायरेक्ट्री में टैबलेट के सीन टेस्ट के लिए, WFoV कैमरों की जांच करता है. WFoV को इस तरह से परिभाषित किया गया है:
FoV >= 90°.
रिविज़न 2 टेस्ट रिग, रिविज़न 1 की तरह ही काम करता है, लेकिन यह बड़ा है. रिविज़न 2 टेस्ट रिग,
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 या 2 | Android 7.0 या इसके बाद का वर्शन |
2 | 75° | हां | मॉड्यूलर बेस, या Rev 1 या 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 और इससे पहले के वर्शन पर कोई एक सीन चलाने के लिए:
tools/run_all_tests.py
मेंscenes
फ़्लैग जोड़कर कोई सीन लोड करें:python tools/run_all_tests.py device=# camera=# chart=# scenes=#
-
stdout
पर लोड होने के बाद, जांच को रोकने के लिए Control+C दबाएं.अगर स्क्रीन पर सही सीन पहले से मौजूद है, तो स्क्रीन को चालू करें:
python tools/wake_up_screen.py screen=#
-
अलग-अलग टेस्ट चलाएं.
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 और उसके बाद के वर्शन में कोई एक सीन चलाने के लिए:
-
config.yml
फ़ाइल में बदलाव करें.edit config.yml camera: <camera-id> → camera: 0 scene: <scene-name> → scene: scene1_1
-
अलग-अलग टेस्ट चलाएं.
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
फ़ाइल में सेट किए जाते हैं.
Q7: टैबलेट सेटअप करने पर कई सीन 1 टेस्ट फ़ेल हो जाते हैं, लेकिन पेपर चार्ट से पास हो जाते हैं. क्या गड़बड़ है?
पक्का करें कि टैबलेट और टेस्ट एनवायरमेंट, यहां दी गई जानकारी के मुताबिक हो.
टैबलेट की खास बातें
पक्का करें कि टैबलेट इन स्पेसिफ़िकेशन के मुताबिक हो:
- डिसप्ले का साइज़ (इंच): 10 इंच
- डिसप्ले का साइज़ (पिक्सल): 1920 x 1200 पिक्सल से ज़्यादा
ज़्यादा जानकारी के लिए, टेबलेट से जुड़ी ज़रूरी शर्तें देखें.
टैबलेट की रोशनी
अगर टैबलेट डिसप्ले की चमक बहुत कम है, तो हो सकता है कि जांच के नतीजे सही न हों.
ज़्यादा जानकारी के लिए, मैं टैबलेट की चमक कैसे कंट्रोल करूं? देखें
बॉक्स की लाइटिंग का लेवल (इसके लिए लक्स मीटर की ज़रूरत होती है)
पक्का करें कि टैबलेट खोलने पर टारगेट लक्स वैल्यू, 100 से 300 के बीच हो.
अगर लक्स लेवल बहुत ज़्यादा है, तो scene1/test_param_flash_mode.py
FAIL
दिखाता है. अगर लक्स लेवल बहुत कम है, तो कई टेस्ट पूरे नहीं होते.
Q8: मैं सेंसर फ़्यूज़न टेस्ट कैसे डीबग करूं?
पक्का करें कि आप
dialout
ग्रुप में हों.groups | egrep ‘dialout'
यह तय करके पक्का करें कि सेंसर फ़्यूज़न कंट्रोलर कनेक्ट किया गया है कि माइक्रोचिप टेक्नोलॉजी यूएसबी पोर्ट से कनेक्ट है या नहीं.
lsusb … Bus 003 Device 004: ID 04d8:fc73 Microchip Technology, Inc. …
नीचे दिए गए निर्देशों का इस्तेमाल करके, टेस्ट के कई प्रयासों का डिस्ट्रिब्यूशन पाने के लिए, टेस्ट को कई बार चलाएं.
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###
फ़ोल्डर में मौजूद होते हैं. यहां#
, रन नंबर है. ऐसा होने की आम वजहें ये हैं:- फ़ोन ठीक से बीच में नहीं है.
- इमेज में ज़रूरत के मुताबिक फ़ीचर नहीं मिलते. आम तौर पर, फ़ील्ड ऑफ़ व्यू या लाइटिंग से जुड़ी समस्या होती है.
- दिखाया गया
FAIL
मान्य है. साथ ही, कैमरे और घुमाव-गति सेंसर के बीच समय के ऑफ़सेट को ठीक करना ज़रूरी है.
नौवां सवाल: जांच से जुड़े किसी गड़बड़ी की शिकायत करते समय, मुझे कौनसी जानकारी देनी चाहिए?
टेस्टिंग से जुड़ी गड़बड़ी की शिकायत करते समय, टेस्ट के लिए जनरेट की गई फ़ाइलें और इमेज शामिल करें.
- अगर आपने
tools/run_all_tests.py
की मदद से जांच की है, तो गड़बड़ी में ज़िप की गई/tmp/
डायरेक्ट्री अटैच करें. - अगर आपने टेस्ट खुद चलाया है, तो गड़बड़ी के साथ सभी स्क्रीन आउटपुट और जनरेट की गई इमेज अटैच करें.
गड़बड़ी की रिपोर्ट भी शामिल करें. जिस टेस्ट में गड़बड़ी मिली है वह पास न होने पर, गड़बड़ी की रिपोर्ट जनरेट करने के लिए नीचे दिए गए निर्देश का पालन करें. साथ ही, जनरेट की गई zip फ़ाइल को गड़बड़ी से अटैच करें.
adb -s device_id bugreport
दसवां सवाल: ऐसे कैमरे के साथ sensor_fusion टेस्ट सीन कैसे चलाया जा सकता है जिसकी फ़ोकस की कम से कम दूरी, चार्ट से 25 सेंटीमीटर की दूरी पर धुंधली इमेज बनाती है?
अगर आपका कैमरा 25 सेंटीमीटर की दूरी पर फ़ोकस नहीं कर पा रहा है, तो सेंसर फ़्यूज़न बॉक्स के चार्ट-माउंटिंग पैनल को हटा दें. चार्ट को ऐसी दूरी पर रखें जहां डीयूटी, फ़ोकस कर सके. साथ ही, config.yml
में chart_distance
को डीयूटी और चार्ट के बीच की मापी गई दूरी में बदल सके. इस स्थिति में चार्ट की दूरी को मेज़र करने का तरीका, पांचवें चित्र में दिखाया गया है.
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
का इस्तेमाल करता है, तो इसके साथ काम करने वाले सभी आईटीएस टेस्ट, टॉप-लेवल लॉजिकल कैमरे पर किए जाएंगे. आईटीएस टेस्ट का एक सबसेट, फ़िज़िकल सब-कैमरों पर चलाया जाता है. इन टेस्ट की सूची, tools/run_all_tests.py
में SUB_CAMERA_TESTS
कॉन्स्टेंट के नीचे दी गई है.