गहराई वास्तविकता को दिखाती है

प्लैटफ़ॉर्म के हिसाब से गाइड

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

Depth API, किसी सीन में मौजूद असल ऑब्जेक्ट के साइज़ और आकार को समझने में, डिवाइस के कैमरे की मदद करता है. यह डेप्थ इमेज या डेप्थ मैप बनाता है. इससे आपके ऐप्लिकेशन में ज़्यादा असली अनुभव मिलता है. उपयोगकर्ताओं को बेहतर और ज़्यादा असरदार अनुभव देने के लिए, डीप इमेज से मिली जानकारी का इस्तेमाल किया जा सकता है.

Depth API का इस्तेमाल करके डेवलप करने के उदाहरण

डेप्थ एपीआई की मदद से, ऑब्जेक्ट के ओक्लूज़न (ऑब्जेक्ट के बीच में आने से, उसके पीछे की चीज़ें न दिखना), बेहतर इमर्सिव अनुभव, और नए इंटरैक्शन को बेहतर बनाया जा सकता है. इससे एआर अनुभव को ज़्यादा असली बनाया जा सकता है. यहां कुछ तरीके दिए गए हैं जिनसे अपने प्रोजेक्ट में इसका इस्तेमाल किया जा सकता है. डेप्थ डेटा के काम करने के उदाहरण देखने के लिए, ARCore डेप्थ लैब में सैंपल सीन एक्सप्लोर करें. इसमें डेप्थ डेटा को ऐक्सेस करने के अलग-अलग तरीके दिखाए गए हैं. यह Unity ऐप्लिकेशन, GitHub पर ओपन-सोर्स है.

ऑक्लूज़न की सुविधा चालू करना

असल दुनिया के ऑब्जेक्ट के पीछे वर्चुअल ऑब्जेक्ट को सटीक तरीके से रेंडर करना या ऑब्स्क्यूज़न, बेहतरीन AR अनुभव के लिए ज़रूरी है. मान लें कि उपयोगकर्ता को किसी ऐसे सीन में वर्चुअल ऐंडी को शामिल करना है जिसमें दरवाज़े के बगल में एक ट्रंक है. ऑब्स्क्यूज़न के बिना रेंडर करने पर, एंडी की इमेज ट्रंक के किनारे के साथ अस्वाभाविक तरीके से ओवरलैप हो जाएगी. अगर किसी सीन की डेप्थ का इस्तेमाल किया जाता है और यह समझा जाता है कि लकड़ी के ट्रंक जैसे आस-पास के ऑब्जेक्ट से वर्चुअल ऐंडी कितनी दूर है, तो ऐंडी को ऑक्लूज़न की मदद से सटीक तरीके से रेंडर किया जा सकता है. इससे, वह आस-पास के ऑब्जेक्ट के बीच ज़्यादा असली लगेगा.

किसी सीन को बदलना

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

दूरी और डेप्थ ऑफ़ फ़ील्ड

क्या आपको यह दिखाना है कि कोई चीज़ दूर है? Depth API की मदद से, दूरी का आकलन किया जा सकता है और फ़ील्ड की डीपनेस वाले इफ़ेक्ट जोड़े जा सकते हैं. जैसे, किसी सीन के बैकग्राउंड या फ़ोरग्राउंड को धुंधला करना.

एआर ऑब्जेक्ट के साथ उपयोगकर्ता के इंटरैक्शन की सुविधा चालू करना

वर्चुअल कॉन्टेंट को, टक्कर और फ़िज़िक्स की मदद से असल दुनिया के साथ इंटरैक्ट करने की सुविधा देकर, उपयोगकर्ताओं को अपने ऐप्लिकेशन के ज़रिए दुनिया को “छूने” की अनुमति दें. वर्चुअल ऑब्जेक्ट को असल दुनिया की रुकावटों के ऊपर से गुज़रते हुए दिखाना या वर्चुअल पेंटबॉल को असल दुनिया के पेड़ पर मारकर उसे छिड़कते हुए दिखाना. गेम की फ़िज़िक्स के साथ, डेप्थ-आधारित टक्कर की सुविधा का इस्तेमाल करके, गेम को ज़्यादा असली बनाया जा सकता है.

हिट-टेस्ट को बेहतर बनाना

डेप्थ का इस्तेमाल, हिट-टेस्ट के नतीजों को बेहतर बनाने के लिए किया जा सकता है. प्लेन हिट-टेस्ट सिर्फ़ टेक्स्चर वाली प्लैनर सतहों पर काम करते हैं. वहीं, डेप्थ हिट-टेस्ट ज़्यादा जानकारी वाले होते हैं और ये नॉन-प्लेनर और कम टेक्स्चर वाले इलाकों पर भी काम करते हैं. ऐसा इसलिए होता है, क्योंकि डीप हिट-टेस्ट, किसी पॉइंट की सही गहराई और ओरिएंटेशन का पता लगाने के लिए, सीन की डीप जानकारी का इस्तेमाल करते हैं.

नीचे दिए गए उदाहरण में, हरे रंग के ऐंडी स्टैंडर्ड प्लेन हिट-टेस्ट दिखाते हैं और लाल रंग के ऐंडी, डेप्थ हिट-टेस्ट दिखाते हैं.

मेरे डिवाइस पर यह सुविधा काम नहीं करती

Depth API सिर्फ़ उन डिवाइसों पर काम करता है जिनमें डेप्थ की सुविधा के लिए प्रोसेसिंग पावर हो. साथ ही, इसे ARCore में मैन्युअल तरीके से चालू करना होगा, जैसा कि डेप्थ की सुविधा चालू करना में बताया गया है.

कुछ डिवाइसों में हार्डवेयर डेप्थ सेंसर भी हो सकता है, जैसे कि टाइम-ऑफ़-फ़्लाइट (ToF) सेंसर. Depth API के साथ काम करने वाले डिवाइसों की अप-टू-डेट सूची देखने के लिए, ARCore के साथ काम करने वाले डिवाइस पेज पर जाएं. साथ ही, उन डिवाइसों की सूची भी देखें जिनमें Depth API के साथ काम करने वाला हार्डवेयर डेप्थ सेंसर है, जैसे कि ToF सेंसर.

डेप्थ इमेज

डेप्थ एपीआई, डेप्थ इमेज बनाने के लिए, डेप्थ-फ़्रॉम-मोशन एल्गोरिदम का इस्तेमाल करता है. इससे दुनिया का 3D व्यू मिलता है. डेप्थ इमेज के हर पिक्सल से यह मेज़र किया जाता है कि सीन, कैमरे से कितनी दूर है. यह एल्गोरिदम, डिवाइस की कई इमेज को अलग-अलग ऐंगल से लेता है और उनकी तुलना करता है. इससे, यह अनुमान लगाया जाता है कि जब उपयोगकर्ता अपना फ़ोन घुमाता है, तो हर पिक्सल की दूरी क्या है. यह मशीन लर्निंग का चुनिंदा तौर पर इस्तेमाल करके, डेप्थ प्रोसेसिंग को बेहतर बनाता है. ऐसा तब भी होता है, जब उपयोगकर्ता की गतिविधियां कम हों. यह उपयोगकर्ता के डिवाइस में मौजूद किसी भी अतिरिक्त हार्डवेयर का भी फ़ायदा लेता है. अगर डिवाइस में खास डीपथ सेंसर है, जैसे कि ToF, तो एल्गोरिदम सभी उपलब्ध सोर्स से डेटा को अपने-आप मर्ज कर देता है. इससे मौजूदा डीप इमेज बेहतर बनती है. साथ ही, कैमरे के न हिलने पर भी डीप इफ़ेक्ट दिखता है. यह सुविधा, सफ़ेद दीवारों जैसे ऐसे सतहों पर भी बेहतर डेप्थ देती है जिनमें कम या कोई भी चीज़ नहीं होती. साथ ही, यह डाइनैमिक सीन में भी बेहतर डेप्थ देती है, जैसे कि चल रहे लोगों या ऑब्जेक्ट वाले सीन.

नीचे दी गई इमेज में, दीवार पर साइकल के साथ एक हॉलवे की कैमरा इमेज और कैमरा इमेज से बनाई गई डीप इमेज का विज़ुअलाइज़ेशन दिखाया गया है. लाल रंग से दिखाए गए हिस्से, कैमरे के ज़्यादा करीब हैं और नीले रंग से दिखाए गए हिस्से, कैमरे से ज़्यादा दूर हैं.

मोशन से डेप्थ

जब उपयोगकर्ता अपने डिवाइस को हिलाता है, तब डेप्थ डेटा उपलब्ध हो जाता है. इस एल्गोरिदम से, 0 से 65 मीटर तक की गहराई का सटीक अनुमान लगाया जा सकता है. सबसे सटीक नतीजे तब मिलते हैं, जब डिवाइस असल जगह से आधा मीटर से लेकर पांच मीटर की दूरी पर हो. उपयोगकर्ता को अपने डिवाइस को ज़्यादा घुमाने के लिए बढ़ावा देने वाले अनुभवों से बेहतर नतीजे मिलेंगे.

डेप्थ इमेज पाना

Depth API की मदद से, हर कैमरा फ़्रेम से मेल खाने वाली डीप इमेज हासिल की जा सकती हैं. कैप्चर की गई डीप इमेज का टाइमस्टैंप और फ़ील्ड ऑफ़ व्यू, कैमरे जैसा ही होता है. सही डेप्थ डेटा सिर्फ़ तब उपलब्ध होता है, जब उपयोगकर्ता अपने डिवाइस को इधर-उधर घुमाना शुरू कर देता है. ऐसा इसलिए होता है, क्योंकि डेप्थ की जानकारी मोशन से मिलती है. सफ़ेद दीवारों जैसी कम या कोई सुविधा नहीं होने पर, सतह की गहराई का अनुमान सटीक नहीं होगा.

अब क्या होगा

  • ARCore डेप्थ लैब देखें. इसमें, डेप्थ डेटा को ऐक्सेस करने के अलग-अलग तरीके दिखाए गए हैं.