इस पेज पर, Android 11 में Camera Image Test Suite (ITS) में हुए बदलावों के बारे में खास जानकारी दी गई है. बदलावों को इन कैटगरी में बांटा गया है:
- हार्डवेयर में बदलाव
- पहले एपीआई लेवल के लिए ज़रूरी टेस्ट
- टेस्ट लाइटिंग की पुष्टि की गई
- सीन के नाम में बदलाव
- बदलावों और जोड़े गए कॉन्टेंट की जांच करना
- कैमरे की सीमित टेस्टिंग की सुविधा को बढ़ाना
हार्डवेयर में बदलाव
Android 11 में, हार्डवेयर से जुड़े कई बदलाव किए गए हैं. इससे लागत कम करने और उपलब्धता बढ़ाने में मदद मिलती है. इन बदलावों को इन कैटगरी में बांटा गया है:
- अन्य मैन्युफ़ैक्चरर
- मैन्युफ़ैक्चरिंग के एक जैसे तरीके
- टैबलेट के ज़्यादा विकल्प
- टैबलेट को कम खोलना
- नया सेंसर फ़्यूज़न कंट्रोलर
अन्य मैन्युफ़ैक्चरर
Rahi Systems, MYWAY design के अलावा, आईटीएस के टेस्ट एन्क्लोज़र बनाने के लिए भी ज़रूरी शर्तें पूरी करता है. ज़रूरी शर्तें पूरी करने वाले वेंडर के लिए, कंपनी की जानकारी यहां दी गई है:
Rahi Systems Inc.
48303 Fremont Blvd, Fremont CA 94538, USA
rahisystems.com/products/android-device-testing-equipment/
androidpartner@rahisystems.com
+1-510-319-3802MYWAY डिज़ाइन
4F., No. 163, Fu-Ying Road, XinZhuang District, New Taipei City, Taiwan
twmyway.com
sales@myway.tw
+886-2-29089060
यूनिफ़ाइड मैन्युफ़ैक्चरिंग के तरीके
rev1 रेगुलर फ़ील्ड-ऑफ़-व्यू (आरएफ़ओवी) आईटीएस-इन-अ-बॉक्स टेस्ट एन्क्लोज़र को फिर से डिज़ाइन किया गया है, ताकि वाइड फ़ील्ड-ऑफ़-व्यू (डब्ल्यूएफ़ओवी) बॉक्स और सेंसर फ़्यूज़न बॉक्स टेस्ट एन्क्लोज़र में इस्तेमाल होने वाले मैन्युफ़ैक्चरिंग के तरीकों का इस्तेमाल किया जा सके. दोनों में एक जैसी सुविधाएं हैं. इस्तेमाल में आसानी के लिए, डिज़ाइन को rev1a कहा जाता है. रीडिज़ाइन की गई इस सुविधा की मदद से, मैन्युफ़ैक्चरर सभी टेस्ट एन्क्लोज़र बनाने के लिए, एक ही तरह की प्लास्टिक का इस्तेमाल कर सकते हैं. इसके अलावा, टैबलेट माउंट और लाइट होल्डर को फिर से डिज़ाइन किया गया है, ताकि अलग-अलग तरह के टैबलेट और एलईडी लाइट बार को आसानी से इस्तेमाल किया जा सके.
ब्यौरे और मैकेनिकल ड्रॉइंग का नया वर्शन डाउनलोड करने के लिए, RFoV बॉक्स (rev1a) और WFoV बॉक्स (rev2.9) देखें.
टैबलेट के लिए ज़्यादा विकल्प
Samsung Galaxy Tab A 10.1 और Chuwi Hi9 Air 10.1 जैसे टैबलेट, सुझाए गए टैबलेट की सूची में शामिल किए गए हैं. यह ज़रूरी है कि टैबलेट में पल्स विड्थ मॉड्यूलेशन (पीडब्ल्यूएम) न हो. इससे कैप्चर की गई इमेज में बैंडिंग को हटाने के लिए, स्क्रीन की रोशनी को अडजस्ट किया जा सकता है.
सुझाए गए टैबलेट के बारे में नई जानकारी के लिए, टैबलेट से जुड़ी ज़रूरी शर्तें देखें.
टैबलेट को कम बार खोला गया
Galaxy Tab A 10.1 का इस्तेमाल करने के लिए, RFoV (rev1a) और WFoV (rev2) टेस्ट एन्क्लोज़र, दोनों के लिए टैबलेट के खुलने की ऊंचाई को थोड़ा कम किया गया है. इन बदलावों को दिखाने वाले वर्शन, rev1a.1 और rev2.9 हैं. इन ड्रॉइंग के लिए, RFoV बॉक्स (rev1a) और WFoV बॉक्स (rev2.9) देखें.
सेंसर फ़्यूज़न कंट्रोलर
सेंसर फ़्यूज़न कंट्रोलर के हार्डवेयर को फिर से डिज़ाइन किया गया है, ताकि इसे बेहतर तरीके से बनाया जा सके. नया कंट्रोलर, Arduino पर आधारित है. इसमें कस्टम राउटिंग बोर्ड शील्ड है, जिसे Arduino के ऊपर लगाया जाता है. पहली इमेज में शील्ड और दूसरी इमेज में, एनक्लोज़र के लिए मैकेनिकल ड्राइंग दिखाई गई है. नए कंट्रोलर को 5 V की एक ही सप्लाई से पावर मिलती है. यह सप्लाई, मोटर को सीधे तौर पर पावर देती है. इलेक्ट्रॉनिक्स को पूरी तरह से यूएसबी कनेक्टर से कंट्रोल किया जाता है. अलग पावर सप्लाई की वजह से, कंट्रोल इलेक्ट्रॉनिक्स और सर्वो मोटर के बीच पूरी तरह से आइसोलेशन होता है. इसके अलावा, एक कंट्रोलर से ज़्यादा से ज़्यादा छह सर्वो मोटर कंट्रोल की जा सकती हैं.
पहली इमेज. Arduino शील्ड का टॉप व्यू
दूसरी इमेज. बाड़े का डिज़ाइन
Android 11, मौजूदा कंट्रोलर के साथ काम करता है. Arduino पर आधारित कंट्रोलर के साथ टेस्टिंग शुरू करने के लिए, इसका इस्तेमाल करें:
python tools/run_all_tests.py device=# camera=# rot_rig=arduino:1 scenes=sensor_fusion
पहला एपीआई लेवल
Android 10 में, ITS टेस्ट को MANDATED
और NOT_YET_MANDATED के तौर पर दिखाया जाता है. Android 10 डिवाइस के तौर पर लॉन्च करने के लिए, सभी MANDATED टेस्ट पास होने चाहिए. NOT_YET_MANDATED टेस्ट फ़ेल हो सकते हैं, लेकिन CTS verifier की रिपोर्टिंग के लिए इन्हें PASS के तौर पर टेबल में शामिल किया जाता है. MANDATED टेस्ट की ज़रूरी शर्त, अपग्रेड किए गए डिवाइसों पर भी लागू होती है. अपग्रेड किए गए डिवाइसों के लिए, सभी MANDATED टेस्ट पास करने की इस ज़रूरी शर्त की वजह से, टेस्ट को MANDATED टेस्ट बनने में समय लगता है. ऐसा इसलिए, क्योंकि पुराने डिवाइसों को भी टेस्ट पास करने होते हैं.
Android 11 में, MANDATED की जांच, फ़ोन की प्रॉपर्टी से मिले पहले एपीआई लेवल के फ़्लैग से की जाती है. Android 11 पर अपग्रेड किए जा रहे डिवाइसों के लिए, टेस्ट NOT_YET_MANDATED टेस्ट के तौर पर चलते हैं. इसका मतलब है कि कोई टेस्ट फ़ेल हो सकता है, लेकिन CtsVerifier.apk में उसे PASS के तौर पर शामिल किया जा सकता है.
उदाहरण के लिए:
- Android 11 में,
test_channel_saturationटेस्ट,MANDATEDहोता है. यह उन डिवाइसों के लिए होता है जिनमें एपीआई लेवल 29 से ज़्यादा होता है. - Android 10 में,
test_channel_saturationटेस्ट सभी डिवाइसों के लिएMANDATEDहै.
सीन की लाइटिंग की पुष्टि की जा रही है
Android 11 में, सीन की लाइटिंग की पुष्टि करने के लिए, सीन के कोनों में मौजूद रोशनी का विश्लेषण किया जाता है. मैन्युअल तरीके से बनाए गए सभी सीन की जांच, लाइटिंग के लिए की जाती है. साथ ही, टैबलेट पर आधारित सीन की जांच, RFoV टेस्ट रिग में RFoV कैमरों और WFoV टेस्ट रिग में WFoV कैमरों के लिए की जाती है. अगर रोशनी का लेवल ज़रूरत के मुताबिक नहीं है, तो गड़बड़ी की सूचना दी जाती है और जांच पूरी नहीं हो पाती.
सीन के नाम में बदलाव
Android 10 में, ज़्यादातर टेस्ट सीन 1 में किए जाते हैं. साथ ही, टेस्ट में लगने वाले कुल समय का ज़्यादातर हिस्सा भी सीन 1 में लगता है. अगर पहले सीन में कोई टेस्ट पूरा नहीं होता है, तो पूरे सीन को फिर से चलाना होगा. पूरे सीन को फिर से चलाने पर, मार्जिनल टेस्ट के पास होने की संभावना कम हो जाती है. Android 11 में, सीन 1 को दो सीन में बांटकर, सीन को फिर से चलाने के समय को कम किया गया है. ये दो सीन, scene1_1 और scene1_2 हैं.
यहां दी गई टेबल में, अलग-अलग सीन के लिए Pixel 4 के रीयर कैमरे (पीछे वाले कैमरे) के टेस्ट के समय की जानकारी दी गई है. टेस्ट की संख्या को टेस्ट के समय को बराबर करने के लिए बांटा जाता है, न कि टेस्ट की संख्या को बराबर करने के लिए.
इसके अलावा, नाम को साफ़ करने की सुविधा भी है. सीन 2 को अक्षरों और सीन 1 को संख्याओं में बांटा गया है. अलग-अलग एक्सटेंशन के नाम इस तरह हैं:
- एक ही चार्ट वाले सीन, लेकिन अलग-अलग टेस्ट:
*_1,2,3 - अलग-अलग चार्ट, लेकिन एक ही टेस्ट वाले सीन:
*_a,b,c
| सीन | टेस्ट की संख्या | Pixel 4 के चलने का समय (मिनट:सेकंड) |
|---|---|---|
| 0 | 11 | 1:12 |
| 1_1 | 22 | 5:12 |
| 1_2 | 13 | 5:20 |
| 2_a | 5 | 3:22 |
| 2_b | 1 | 0:24 |
| 2_c | 1 | 0:24 |
| 3 | 6 | 2:04 |
| 4 | 2 | 2:46 |
बदलावों को टेस्ट करें
पहले एपीआई लेवल का इस्तेमाल करने के लिए अपडेट किए गए टेस्ट
Android 11 में, यहां दी गई टेबल में मौजूद टेस्ट को अपडेट किया गया है, ताकि वे पहले एपीआई लेवल के फ़्लैग का इस्तेमाल कर सकें. इन सभी टेस्ट में, एपीआई लेवल 29 का इस्तेमाल किया जाता है. हालांकि, test_tonemap_curve टेस्ट में, एपीआई लेवल 30 का इस्तेमाल किया जाता है.
| सीन | टेस्ट का नाम | पहला एपीआई लेवल | ब्यौरा |
|---|---|---|---|
| 0 | test_tonemap_curve |
30 | पक्का करें कि पाइपलाइन में लीनियर टोनमैप और सही इमेज इनपुट के साथ, रंग के सही आउटपुट हों. यह test_test_patterns पर निर्भर करता है. |
| 1 | test_ae_precapture_trigger |
29 | प्रीकैप्चर ट्रिगर का इस्तेमाल करते समय, एई स्टेट मशीन की जांच करें. पक्का करें कि AE की सुविधा बंद होने पर, प्रीकैप्चर ट्रिगर का कोई असर न हो. |
test_channel_saturation |
29 | पक्का करें कि आरजीबी चैनल, मिलती-जुलती वैल्यू तक सैचुरेट हों, ताकि सैचुरेटेड क्षेत्रों में टिंट न दिखे. | |
| 2_a/b/c | test_num_faces |
29 | चेहरे वाले सीन में, अलग-अलग उम्र के लोगों को शामिल करें. |
बदलावों के साथ टेस्ट
यहां दी गई टेबल में दिए गए टेस्ट, Android 11 में अपडेट किए गए हैं. बदलावों के बारे में जानकारी, बदलावों की जानकारी कॉलम में दी गई है.
| सीन | टेस्ट का नाम | पहला एपीआई लेवल | बदलावों की जानकारी |
|---|---|---|---|
| 1 | test_burst_sameness_manual |
30 | सहनशीलता को 2% तक कम करो. |
| 4 | test_aspect_ratio_and_crop |
30 | इसे सिर्फ़ कुछ डिवाइसों पर चलाने के लिए बदलें. |
test_multi_camera_alignment |
30 | अगर मल्टी-कैमरा कैप्चर करने की सुविधा काम नहीं करती है, तो एक-एक करके सभी कैमरों से इमेज कैप्चर करें. तीन और चार कैमरे वाले सिस्टम के लिए, कैमरा चुनने के लॉजिक में बदलाव किया गया है. साथ ही, मोनो, सिर्फ़ डेप्थ, और आईआर कैमरों को छोड़ दिया गया है. |
नई जांच के आंकड़े
नीचे दी गई टेबल में दिए गए टेस्ट, Android 11 में चालू होते हैं. टेबल में टेस्ट के बारे में खास जानकारी दी गई है. साथ ही, नीचे दिए गए सेक्शन में इनके बारे में पूरी जानकारी दी गई है.
| सीन | टेस्ट का नाम | पहला एपीआई लेवल | ब्यौरा |
|---|---|---|---|
| 0 | test_vibration_restrictions |
30 | पक्का करें कि इमेज कैप्चर करने के दौरान, सूचनाएं और वाइब्रेशन चालू न हों. |
| 2_a | test_jpeg_quality |
30 | इस टेस्ट में यह देखा जाता है कि क्वांटाइज़ेशन टेबल, JPEG की क्वालिटी बढ़ाने के लिए कंप्रेस करने की प्रोसेस को कम करती हैं. |
| 2_d/2_e | test_num_faces |
30 | अलग-अलग उम्र के लोगों के चेहरे दिखाएं. |
| 2_e | test_continuous_picture |
30 | पक्का करें कि 3A, android.control.afAvailableModes =
CONTINUOUS_PICTURE. में सेटल हो जाए |
| बदलें | test_scene_change |
31 | android.control.afSceneChange सीन बदलने पर पुष्टि की गई. |
| 6 | test_zoom |
30 | टेस्ट android.control.zoomRatioRange. |
scene0/test_vibration_restriction
इस टेस्ट के लिए किसी खास सीन की ज़रूरत नहीं होती. हालांकि, जिस डिवाइस की जांच की जा रही है उसे किसी ठोस जगह पर रखना या लगाना ज़रूरी है. इसमें ITS-in-a-box टेस्ट एन्क्लोज़र पर माउंट करना शामिल है.
Asserts
- कैमरे का इस्तेमाल करते समय कोई वाइब्रेशन नहीं होता
scene2_a/test_jpeg_quality
Method
JPEG फ़ाइल के अलग-अलग हिस्सों को दो बाइट वाले मार्कर से तय किया जाता है. ज़्यादा जानकारी के लिए, JPEG देखें.
यह टेस्ट, JPEG कैप्चर से क्वांटाइज़ेशन मैट्रिक्स निकालता है. JPEG कैप्चर में क्वांटाइज़ेशन मैट्रिक्स के लिए मार्कर, [255, 219] क्रम में होता है. मार्कर मिलने पर, सूची के अगले दो आइटम का साइज़ होता है. JPEG DQT साइज़ मार्कर आम तौर पर [0, 132] = 256*0+132 = 132 होता है. इससे JPEG कैप्चर में DQT डेटा के साइज़ का पता चलता है. एम्बेड किया गया डेटा इस फ़ॉर्म में होता है: [255, 219, 0, 132, 0 (ल्युमा मार्कर), 8x8 ल्युमा मैट्रिक्स, 1 (क्रोमा मार्कर), 8x8 क्रोमा मैट्रिक्स].
लुमा मैट्रिक्स मार्कर के लिए 0 और क्रोमा मार्कर के लिए 1, कई डिवाइसों पर एक जैसा दिखता है. इनमें ऐसे फ़ोन भी शामिल हैं जो JPEG फ़ाइल में, दोनों मैट्रिक्स को अलग-अलग DQT सेक्शन में बांटते हैं. क्रोमा मैट्रिक्स की तुलना में, ल्यूमा मैट्रिक्स में वैल्यू की ज़्यादा वैरायटी होती है. ऐसा इसलिए, क्योंकि इंसानी आंखें क्रोमा की तुलना में ल्यूमा के लिए ज़्यादा संवेदनशील होती हैं. साथ ही, JPEG इमेज में इस बात का ध्यान रखा जाता है.
यहां Pixel 4 के रियर कैमरे से ITS टेस्ट रिग का इस्तेमाल करके scene2_a कैप्चर करने के लिए, क्वालिटी फ़ैक्टर 85 और 25 के लिए निकाले गए ल्यूमा और क्रोमा मैट्रिक्स के सैंपल दिखाए गए हैं.
कम क्वालिटी सेटिंग के लिए, मैट्रिक्स की वैल्यू काफ़ी बढ़ जाती हैं. इससे पता चलता है कि कंप्रेशन बढ़ गया है. ये मैट्रिक्स, स्क्रिप्ट के साथ सिर्फ़ तब प्रिंट होते हैं, जब debug=True फ़्लैग लागू किया जाता है. ध्यान दें कि क्रोमा मैट्रिक्स की तुलना में, ल्यूमा मैट्रिक्स में एंट्री में ज़्यादा अंतर है.
luma matrix (quality = 85) chroma matrix (quality = 85)
[[ 5 3 4 4 4 3 5 4] [[ 5 5 5 7 6 7 14 8]
[ 4 4 5 5 5 6 7 12] [ 8 14 30 20 17 20 30 30]
[ 8 7 7 7 7 15 11 11] [30 30 30 30 30 30 30 30]
[ 9 12 17 15 18 18 17 15] [30 30 30 30 30 30 30 30]
[17 17 19 22 28 23 19 20] [30 30 30 30 30 30 30 30]
[26 21 17 17 24 33 24 26] [30 30 30 30 30 30 30 30]
[29 29 31 31 31 19 23 34] [30 30 30 30 30 30 30 30]
[36 34 30 36 28 30 31 30]] [30 30 30 30 30 30 30 30]]
luma matrix (quality = 25) chroma matrix (quality = 25)
[[ 32 22 24 28 24 20 32 28] [[ 34 36 36 48 42 48 94 52]
[ 26 28 36 34 32 38 48 80] [ 52 94 198 132 112 132 198 198]
[ 52 48 44 44 48 98 70 74] [198 198 198 198 198 198 198 198]
[ 58 80 116 102 122 120 114 102] [198 198 198 198 198 198 198 198]
[112 110 128 144 184 156 128 136] [198 198 198 198 198 198 198 198]
[174 138 110 112 160 218 162 174] [198 198 198 198 198 198 198 198]
[190 196 206 208 206 124 154 226] [198 198 198 198 198 198 198 198]
[242 224 200 240 184 202 206 198]] [198 198 198 198 198 198 198 198]]
तीसरी इमेज में, Pixel 4 के रियर कैमरे की औसत मैट्रिक्स वैल्यू की तुलना JPEG क्वालिटी से की गई है. JPEG की क्वालिटी बढ़ने पर, कंप्रेशन का लेवल (ल्युमा/क्रोमा DQT मैट्रिक्स का औसत) कम हो जाता है.
तीसरी इमेज. Pixel 4 के रियर कैमरे के ल्यूमा/क्रोमा डीक्यूटी मैट्रिक्स की तुलना में JPEG क्वालिटी का औसत
Asserts
- [25, 45, 65, 86] के लिए, क्वालिटी में +20 की बढ़ोतरी होने पर, क्वॉन्टाइज़ेशन मैट्रिक्स के औसत में 20% की कमी आती है.
- DQT मैट्रिक्स के पेलोड, स्क्वेयर नंबर होते हैं.
चौथी इमेज में, टेस्ट पास न करने वाले फ़ोन का उदाहरण दिखाया गया है. ध्यान दें कि बहुत खराब क्वालिटी वाली इमेज (jpeg.quality < 50) के लिए, क्वॉन्टाइज़ेशन मैट्रिक्स में कंप्रेस करने की प्रोसेस नहीं बढ़ती है.
चौथी इमेज. जांच पूरी न होने का उदाहरण
scene2_d/e test_num_faces
चेहरे की पहचान करने वाले एल्गोरिदम की जांच के लिए, चेहरे की पहचान करने वाले दो नए सीन जोड़े गए हैं. इससे, चेहरे की पहचान करने वाले एल्गोरिदम की जांच में अलग-अलग तरह के चेहरों को शामिल किया जा सकेगा. कई कैमरों की बार-बार टेस्टिंग करने पर, यह उम्मीद की जाती है कि scene2_d में सबसे मुश्किल चेहरा, बाईं ओर मौजूद चेहरा होगा. खास तौर पर, मॉडल ने टोपी पहनी है और उसकी दाढ़ी है. चेहरे वाले सीन में ऐसा पहली बार हुआ है. नए सीन, इमेज 5 और 6 में दिखाए गए हैं.
पांचवी इमेज. scene2_d
छठी इमेज. scene2_e
Asserts
num_faces == 3
scene2_e/test_continuous_picture
Method
test_continuous_picture टेस्ट में scene2_e का इस्तेमाल किया जाता है. हालांकि, इसे चेहरे वाले किसी भी सीन के साथ चालू किया जा सकता है. इस टेस्ट में, वीजीए रिज़ॉल्यूशन के 50 फ़्रेम कैप्चर किए जाते हैं. इसके लिए, कैप्चर करने के अनुरोध की पहली सेटिंग android.control.afMode = 4
(CONTINUOUS_PICTURE) का इस्तेमाल किया जाता है.
50 फ़्रेम कैप्चर करने के बाद, 3A सिस्टम के सेटल होने की उम्मीद है.
Asserts
- कैप्चर के आखिर में, 3A कन्वर्ज हो जाता है.
scene_change/test_scene_change
Method
एक नया टेस्ट चालू किया गया है. इससे यह जांच की जाएगी कि सीन बदलने पर android.control.afSceneChange फ़्लैग को सेट किया गया है या नहीं. सीन बदलने के लिए, टैबलेट का इस्तेमाल किया गया है. इसमें चेहरे का सीन दिखाया गया है. इसके बाद, सीन बदलने के लिए टैबलेट को चालू और बंद किया गया है. इस सीन में scene2_e का फिर से इस्तेमाल किया गया है. हालांकि, यह एक अलग सीन में है, क्योंकि इसमें टैबलेट कंट्रोल की ज़रूरत है.
इसके अलावा, मैन्युअल टेस्टिंग के लिए, कैमरे के सामने हाथ हिलाकर सीन बदला जा सकता है.
सातवीं इमेज में, टेस्ट का टाइमिंग डायग्राम दिखाया गया है. स्क्रीन बंद होने और फ़ोटो कैप्चर होने के बीच के समय को, पिछली बार कैप्चर की गई फ़ोटो के नतीजों के आधार पर अडजस्ट किया जाता है.
सातवीं इमेज. test_scene_change के लिए टाइमिंग डायग्राम
लेआउट शिफ़्ट होने की वजहें:
- अगर सीन में बदलाव होता है और
afSceneChange == 1, तो टेस्टPASSदिखाता है. - अगर सीन में बदलाव होता है और
afSceneChange == 0मौजूद है, तो सीन में बदलाव पांच फ़्रेम पहले हो जाता है, ताकिafSceneChangeको ज़्यादा समय मिल सके. - अगर सीन में कोई बदलाव नहीं होता है और
afSceneChange == 1, तो टेस्टFAILदिखाता है. - अगर सीन में कोई बदलाव नहीं होता है और
afSceneChange == 0, तो सीन में बदलाव होने पर कैप्चर करने के लिए, सीन में बदलाव 30 फ़्रेम पहले हो जाता है.
Asserts
- स्क्रीन (सीन) टॉगल करता है.
afSceneChangeफ़्लैग की वैल्यू [0, 1] के बीच में होती है.- अगर सीन में कोई बदलाव नहीं होता है, तो 3A कन्वर्ज हो जाता है (यह
test_continuous_pictureकी तरह काम करता है). - अगर
afSceneChange == 1है, तो सीन में रोशनी बदलनी चाहिए. PASSको छह बार आज़माएं. इसमें समय, पिछले नतीजों के आधार पर बदलता है.
scene6/test_zoom
Method
android.control.zoomRatioRange की जांच करने के लिए, एक नए सीन की ज़रूरत है. ऐसा इसलिए, क्योंकि पहले से मौजूद सीन में या तो इतनी छोटी सुविधा नहीं है जिसे बड़ा किया जा सके (सीन [1, 2, 4]) या सीन में कई ऐसे ऑब्जेक्ट हैं जिन्हें आसानी से पहचाना नहीं जा सकता. इससे सुविधा को निकालने में मुश्किल होती है (सीन 3).
आठवीं इमेज में, सामान्य तौर पर व्यवस्थित किए गए सर्कल के साथ नया सीन दिखाया गया है. सर्कल की इस रेंज की वजह से, DUT/चार्ट को बीच में रखने की ज़रूरी शर्तें कम हो जाती हैं. साथ ही, इससे कैप्चर की गई इमेज के बीच में हमेशा एक सर्कल मौजूद रहता है. इस सीन में, 9x5 सर्कल की एक सीरीज़ दिखाई गई है. इन सर्कल का बॉर्डर काले रंग का है और ये पूरे टैबलेट पर फैले हुए हैं. ओरिएंटेशन दिखाने के लिए, ऊपर दाएं कोने में एक सर्कल को स्क्वेयर से बदल दिया गया है. सर्कल के साइज़ में, करीब 7500 पिक्सल (radius=50pixels) का एरिया होता है. यह 4000x3000 सेंसर के लिए होता है. इसे करीब 80 डिग्री के फ़ील्ड ऑफ़ व्यू (FoV) के साथ कैप्चर किया जाता है.
आठवीं इमेज. test_zoom सीन
नौवीं इमेज. Pixel 4 cam[0] zoom = [1, 3.33, 5.67, 8] images with found circle
नौवीं इमेज में, Pixel 4 के पीछे वाले कैमरे से ली गई इमेज दिखाई गई हैं. इनमें ज़ूम को चार चरणों में 1 से 8x तक बढ़ाया गया है. इमेज के इस सेट को कैप्चर करते समय, फ़ोकस को सेंटर में रखने के लिए कोई खास तरीका नहीं अपनाया गया है. हालांकि, फ़ोन के टेस्टिंग अपर्चर का इस्तेमाल किया गया है. इसमें दो ओपनिंग होती हैं, ताकि सामने और पीछे, दोनों कैमरों की टेस्टिंग की जा सके. सेंटर से कुछ दूरी पर होने की वजह से, चार्ट टैबलेट थोड़ा बाईं ओर दिखता है. इसके अलावा, चार्ट 8x से ज़्यादा ज़ूम रेशियो के साथ टेस्ट करने के लिए काफ़ी है.
मंडलियां ढूंढना
इस टेस्ट में, find_circle() का इस्तेमाल करने वाली findContours विधि शामिल है. यह सभी कंटूर का पता लगाती है और कंटूर की खोज को, इन चीज़ों की जांच करके ज़रूरी सर्कल तक सीमित करती है:
- आकृतियों का साइज़ 10 पिक्सल से ज़्यादा होना चाहिए.
- आकृतियों में
NUM_PTS >= 15होना चाहिए. - कंटूर के बीच में काला रंग होना चाहिए.
- आकृतियां, वृत्त जैसी होनी चाहिए. इसका मतलब है कि उनका क्षेत्रफल, आकृति के π*r2 क्षेत्रफल के आस-पास होना चाहिए.
टेस्ट रेंज
android.control.zoomRatioRange को 10 चरणों में बांटा गया है.
- [1, 7] टेस्ट [1, 1.67, 2.33, 3, 3.67, 4.33, 5, 5.67, 6.33, 7]
अगर मिला हुआ सर्कल, इमेज की सीमाओं को छूता है, तो ज़ूम करने की सुविधा बंद हो जाती है. यह जांच की जाती है कि टेस्ट में ज़ूम लेवल (10x) ज़रूरत के मुताबिक है या नहीं.
Asserts
- ज़ूम की हर सेटिंग पर कम से कम एक सर्कल दिखता है.
- 10 गुना या ज़्यादा से ज़्यादा
android.control.zoomRatioRangeकी जांच की जाती है. - सर्कल का रेडियस, ज़ूम के हिसाब से बदलता है (अनुमानित वैल्यू से आरटीओएल 10% है).
- सर्कल का सेंटर, ज़ूम करने पर सेंटर से हट जाता है. (आरटीओएल, अनुमानित वैल्यू से 10% ज़्यादा है).
- ज़ूम का लेवल ज़रूरत के मुताबिक है (दो गुना).
कैमरे की सीमित टेस्टिंग की सुविधा को बेहतर बनाया गया
Android 11 में, यहां दी गई टेबल में मौजूद टेस्ट, LIMITED कैमरों की जांच करते हैं. नई जांचों के अलावा, scene4/test_aspect_ratio_and_crop जांच को अपडेट किया गया है, ताकि LIMITED डिवाइसों की जांच की जा सके. इन डिवाइसों का पहला एपीआई लेवल 30 या उससे ज़्यादा है.
| सीन | टेस्ट का नाम |
|---|---|
| 0 | test_vibration_restrictions |
| 2_a | test_jpeg_quality |
| 2_d/2_e | test_num_faces |
| 4 | test_aspect_ratio_and_crop |
| 6 | test_zoom |
आकृति 10 में, Android 11 ITS सीक्रेट डिकोडर रिंग दिखाया गया है. सीक्रेट डिकोडर रिंग से पता चलता है कि अलग-अलग टेस्ट की सेटिंग को किन टेस्ट से सुरक्षित रखा गया है. इसे आसानी से समझने के लिए, अलग-अलग रंगों में दिखाया गया है. ये मुख्य आइटम हैं:
MANUAL_SENSORREAD_3A*ज़रूरी हैMANUAL SENSORCOMPUTE_TARGET_EXPOSURES*ज़रूरी हैMANUAL SENSORPER_FRAME_CONTROLRAWSENSORS*REALTIMEMULTI_CAMERA
MANUAL SENSOR, READ_3A, COMPUTE_TARGET_EXPOSURES, और
PER_FRAME_CONTROL ज़्यादातर टेस्ट को गेट करते हैं. इसके अलावा, जिन टेस्ट को LIMITED डिवाइसों के लिए चालू किया गया है उन्हें हल्के हरे रंग में हाइलाइट किया जाता है.
दसवीं इमेज. Android 11 सीक्रेट डिकोडर रिंग