ARCore प्लेटफ़ॉर्म — Android पर संवर्धित वास्तविकता के लिए Google का समाधान, जो अंतरिक्ष में स्थिति को ट्रैक करने के लिए स्मार्टफ़ोन के कैमरे और जड़त्वीय सेंसर का उपयोग करता है। Google AR Developers, 2025 के अनुसार, यह प्लेटफ़ॉर्म Motion Tracking, Environmental Understanding और Light Estimation — वास्तविक वातावरण में वर्चुअल ऑब्जेक्ट रखने के लिए तीन मूलभूत तकनीकों का समर्थन करता है। क्रॉस-प्लेटफ़ॉर्म आर्किटेक्चर डेवलपर्स को एकीकृत कोड बेस के साथ Android, iOS, Unity और Unreal Engine के लिए AR ऐप बनाने की अनुमति देता है।
मुख्य बिंदु
ARCore Google का संवर्धित वास्तविकता प्लेटफ़ॉर्म है, जिसे 2018 में Project Tango के उत्तराधिकारी के रूप में हल्के और अधिक सुलभ रूप में घोषित किया गया। Tango के विपरीत, जिसके लिए विशेष डेप्थ सेंसर की आवश्यकता थी, ARCore केवल कैमरे और जड़त्वीय सेंसर (IMU) का उपयोग करके मानक Android स्मार्टफ़ोन पर काम करता है।
ARCore तीन मुख्य तकनीकों का उपयोग करता है: Motion Tracking डिवाइस की स्थिति को ट्रैक करने के लिए, Environmental Understanding क्षैतिज और ऊर्ध्वाधर समतल सतहों का पता लगाने के लिए, और Light Estimation वर्चुअल ऑब्जेक्ट की रोशनी को वास्तविक वातावरण के अनुसार समायोजित करने के लिए। ये तीन तकनीकें AR ऑब्जेक्ट को किसी भी सतह पर प्राकृतिक दिखाने में सक्षम बनाती हैं।
Google I/O 2024 के अनुसार, ARCore Samsung, Xiaomi, Huawei, OnePlus, Google Pixel और अन्य सहित 1 बिलियन से अधिक Android डिवाइसों पर समर्थित है। यह प्लेटफ़ॉर्म Google Play Services for AR के साथ एकीकृत है, जो Android संस्करण से स्वतंत्र रूप से Google Play Store के माध्यम से ARCore को अपडेट करने की अनुमति देता है।
छह संस्करणों में, ARCore ने महत्वपूर्ण विकास किया है: ARCore 1.0 — बुनियादी ट्रैकिंग और समतल सतह पहचान; ARCore 1.2 — ऊर्ध्वाधर समतल सतहें और Augmented Images; ARCore 1.7 — मल्टीप्लेयर सत्रों के लिए Cloud Anchors; ARCore 1.10 — चेहरे के भाव ट्रैकिंग के लिए Augmented Faces।
ARCore 1.20+ में Scene Semantic Understanding शामिल है — डिवाइस पर TensorFlow Lite ML मॉडल के माध्यम से ऑब्जेक्ट श्रेणियों (फर्श, छत, दीवार, फर्नीचर, पौधा, दरवाज़ा) की पहचान। Street View Geometry API बाहरी AR नेविगेशन के लिए Google Street View की डेप्थ मैप का उपयोग करने की अनुमति देता है।
// ARCore सत्र आरंभ करना
val session = Session(context)
val config = Config(session)
config.lightEstimationMode =
Config.LightEstimationMode.ENVIRONMENTAL_HDR
config.planeFindingMode =
Config.PlaneFindingMode.HORIZONTAL_AND_VERTICAL
session.configure(config)
// फ्रेम प्रसंस्करण
val frame = session.update()
val pointCloud = frame.acquirePointCloud()
val planes = session.getAllTrackables(
Plane::class.java
)
ARCore एक हाइब्रिड दृष्टिकोण का उपयोग करता है: IMU (जड़त्वीय मापन मॉड्यूल) उच्च आवृत्ति (1000 Hz तक) पर डिवाइस की स्थिति का पूर्वानुमान लगाता है, जबकि विज़ुअल ओडोमेट्री 30–60 Hz पर कैमरे से विशेषता बिंदु विश्लेषण के आधार पर त्रुटियों को सुधारता है। यह दृष्टिकोण स्थिर स्थितियों में लगभग 1–2 सेंटीमीटर की ट्रैकिंग सटीकता प्रदान करता है।
Environmental Understanding प्रक्रिया तीन चरणों में काम करती है: पहले ARCore कैमरे की छवि में विशेषता बिंदु ढूंढता है, फिर एक ही समतल सतह पर स्थित बिंदुओं के समूहों की पहचान करता है और उन्हें बहुभुज में अनुमानित करता है। समतल सतह की पहचान के बाद, ARCore एक Trackable ऑब्जेक्ट बनाता है जो नए फ्रेम प्राप्त होने पर अपडेट होता है।
Google के अनुसार, ARCore कैमरे से 1 मीटर की दूरी तक 10x10 सेंटीमीटर आकार की समतल सतह का पता लगाता है। मध्यम आकार के कमरों (20 वर्ग मीटर) के लिए, पूर्ण समतल सतह स्कैनिंग में लगभग 2–4 सेकंड लगते हैं। ToF सेंसर समर्थन के साथ Depth API का उपयोग करने पर, पहचान सटीकता 40% बढ़ जाती है।
Depth API एक ARCore तकनीक है जो कैमरे से छवि के स्टीरियो विश्लेषण के आधार पर दृश्य की डेप्थ मैप बनाती है। ToF सेंसर (Time-of-Flight) वाले डिवाइसों पर, डेप्थ मैप 2 सेमी तक की सटीकता के साथ तुरंत प्राप्त होता है। डेप्थ सेंसर के बिना डिवाइसों पर, Depth API एकल फ्रेम से गहराई का अनुमान लगाने के लिए मशीन लर्निंग का उपयोग करता है, जो लगभग 10 सेमी की सटीकता प्रदान करता है।
Scene Mesh पर्यावरण का एक त्रि-आयामी जाल है जिसे ARCore रीयल टाइम में बनाता है। इस जाल का उपयोग टकराव भौतिकी, वर्चुअल ऑब्जेक्ट के ऑक्लूज़न और छाया प्रतिपादन के लिए किया जाता है। Scene Mesh OpenGL ES 3.1 और Depth API समर्थन वाले डिवाइसों पर उपलब्ध है, जो प्रति फ्रेम 500 हजार तक बहुभुज उत्पन्न करता है।
// डेप्थ मैप प्राप्त करना
val depthImage = frame.acquireDepthImage16Bits()
// पहचाने गए समतल सतह पर ऑब्जेक्ट रखना
val hitResult = frame.hitTest(x, y)
.firstOrNull { it.trackable is Plane }
hitResult?.let { result ->
val anchor = session.createAnchor(
result.hitPose
)
val model = ModelRenderable.builder()
.setSourceId(R.raw.my_model)
.build()
.exceptionally { null }
AnchorNode(anchor).apply {
this.renderable = model.get()
}
}
हालांकि ARCore और ARKit समान कार्यों को हल करते हैं — स्थिति ट्रैकिंग, समतल सतह पहचान और प्रकाश अनुमान — उनके दृष्टिकोण और पारिस्थितिकी तंत्र भिन्न हैं। ARCore क्रॉस-प्लेटफ़ॉर्म संगतता को प्राथमिकता देता है, जबकि ARKit Apple हार्डवेयर के साथ गहन एकीकरण का उपयोग करता है।
मुख्य अंतर: ARCore ARCore SDK के माध्यम से Android और iOS पर काम करता है, जबकि ARKit केवल iOS पर काम करता है। ARCore Firebase के माध्यम से सिंक्रोनाइज़ेशन के लिए Cloud Anchors का उपयोग करता है, जबकि ARKit सीधे डिवाइस-से-डिवाइस आदान-प्रदान के लिए ARWorldMap का उपयोग करता है। Depth API वाला ARCore ToF सेंसर को सपोर्ट करता है, जबकि LiDAR वाला ARKit 3 सेमी तक की सटीकता के साथ लेज़र स्कैनिंग प्रदान करता है।
Google 2024 बेंचमार्क परीक्षणों के अनुसार, जायरोस्कोप और ToF सेंसर वाले डिवाइसों पर ARCore की ट्रैकिंग सटीकता LiDAR वाले iPhone पर ARKit के बराबर है — 2 मीटर की दूरी पर त्रुटि 2 सेमी से अधिक नहीं होती है। ToF के बिना डिवाइसों पर, ARCore आरंभीकरण गति में ARKit से पीछे है: 3 सेकंड बनाम 0.5 सेकंड।
ARCore और ARKit के बीच चुनाव लक्षित दर्शकों पर निर्भर करता है: यदि ऐप केवल iOS के लिए है, तो ARKit बेहतर प्रदर्शन और विशिष्ट LiDAR सुविधाओं तक पहुंच प्रदान करता है। यदि क्रॉस-प्लेटफ़ॉर्म समर्थन की आवश्यकता है, तो ArcoreiOS SDK के साथ ARCore न्यूनतम प्लेटफ़ॉर्म अंतर के साथ एकीकृत कोड बेस का उपयोग करने की अनुमति देता है, हालांकि प्रत्येक प्लेटफ़ॉर्म की कुछ हार्डवेयर क्षमताओं की हानि के साथ।
| विशेषता | ARCore | ARKit |
|---|---|---|
| प्लेटफ़ॉर्म | Android + iOS + Unity/Unreal | केवल iOS |
| डेप्थ सेंसर | ToF (वैकल्पिक) | LiDAR (Pro मॉडल) |
| सिंक्रोनाइज़ेशन | Cloud Anchors (Firebase) | ARWorldMap (Multipeer) |
| चेहरा ट्रैकिंग | Augmented Faces | Face Tracking (TrueDepth) |
| VIO सटीकता | 1–3 सेमी | 0.5–1 सेमी |
ARCore एकीकरण build.gradle में Google Play Services for AR की निर्भरता जोड़ने से शुरू होता है: com.google.ar:core। ऐप को ArCoreApk.checkAvailability() के माध्यम से डिवाइस पर ARCore की उपलब्धता की जांच करनी चाहिए — यदि ARCore स्थापित नहीं है, तो उपयोगकर्ता को Google Play Store से इसे स्थापित करने का संकेत दें।
एक बुनियादी ARCore प्रोजेक्ट में शामिल है: Session और Config बनाना, कैमरा प्रदर्शन के लिए SurfaceView सेट करना, session.resume() के माध्यम से सत्र शुरू करना और session.update() के माध्यम से फ्रेम प्रोसेस करना। 3D ऑब्जेक्ट रेंडरिंग के लिए Sceneform SDK (Filament पर आधारित Google लाइब्रेरी) या जटिल दृश्यों के लिए Unity/Unreal का उपयोग किया जाता है।
Google Kotlin ऐप के लिए Sceneform की सिफारिश करता है — यह तैयार घटक प्रदान करता है: 3D मॉडल (OBJ, glTF, FBX) लोड करने के लिए ModelRenderable, AR दृश्य में Android View एम्बेड करने के लिए ViewRenderable और टच हैंडलिंग के लिए MotionEvent। Sceneform स्वचालित रूप से AR सत्र जीवनचक्र और संसाधन मुक्ति का प्रबंधन करता है।
ARCore खराब रोशनी, एकसमान सतहों या तेज़ डिवाइस आंदोलनों पर ट्रैकिंग खो सकता है। ट्रैकिंग स्थिति frame.getTrackingState() के माध्यम से उपलब्ध है — मान TRACKING, PAUSED और STOPPED हैं। PAUSED में संक्रमण करते समय, रेंडरिंग को रोकने और उपयोगकर्ता को मार्गदर्शन दिखाने की सिफारिश की जाती है: “डिवाइस को धीमी गति से घुमाएं” या “अधिक रोशनी वाली जगह पर जाएं।”
विफलता के बाद स्वचालित पुनर्प्राप्ति के लिए, ARCore सहेजे गए विशेषता बिंदु मानचित्र के आधार पर पुनः स्थानीकरण का समर्थन करता है। डेवलपर session.serialize() के माध्यम से मानचित्र को सहेज सकता है और session.deserialize() के माध्यम से पुनर्स्थापित कर सकता है — लंबे समय तक चलने वाले AR अनुभवों के लिए उपयोगी जहां उपयोगकर्ता उसी भौतिक स्थान पर लौटता है। मानचित्र पुनर्स्थापना में 1–2 सेकंड लगते हैं बशर्ते कि वातावरण में महत्वपूर्ण परिवर्तन न हुआ हो।
class ARCoreActivity : AppCompatActivity() {
private lateinit var session: Session
override fun onResume() {
super.onResume()
when (ArCoreApk.getInstance()
.checkAvailability(this)
) {
ArCoreApk.Availability.SUPPORTED_INSTALLED -> {
session = Session(this)
session.resume()
}
else -> {
showInstallPrompt()
}
}
}
}
अक्सर पूछे जाने वाले प्रश्न
ARCore 1 बिलियन से अधिक Android डिवाइसों पर समर्थित है, जिसमें Google Pixel 2+, Samsung Galaxy S7+, Xiaomi Mi 8+, Huawei P20+, OnePlus 6+, Sony Xperia XZ2+ और कई अन्य शामिल हैं। प्रमाणित डिवाइसों की पूरी सूची developers.google.com/ar/devices पर प्रकाशित है।
ARCore के बुनियादी कार्य — Motion Tracking और Environmental Understanding — इंटरनेट की आवश्यकता नहीं है। Cloud Anchors और क्लाउड संदर्भों वाली Augmented Images के लिए कनेक्शन की आवश्यकता है। Depth API और Scene Mesh नेटवर्क कनेक्शन के बिना पूरी तरह से डिवाइस पर काम करते हैं।
हां, ARCore का उपयोग सीधे OpenGL ES 3.1 के साथ, Unity या Unreal Engine के साथ किया जा सकता है। Sceneform सरल Kotlin प्रोजेक्ट के लिए अनुशंसित विकल्प है, लेकिन यह अनिवार्य नहीं है। यथार्थवादी भौतिकी के साथ जटिल 3D दृश्यों के लिए, ARCore SDK समर्थन वाले गेम इंजन का उपयोग करना बेहतर है।
ARCore पर्याप्त रोशनी (100–500 लक्स) वाले इनडोर स्थानों के लिए अनुकूलित है। बाहर तेज़ धूप में, कैमरे के ओवरएक्सपोज़र के कारण ट्रैकिंग सटीकता कम हो सकती है। बाहरी उपयोग के लिए, Google Street View Geometry API की सिफारिश करता है, जो शहरी स्थानों के लिए डेप्थ मैप प्रदान करता है।
Scene Viewer बिना कोड लिखे AR में 3D मॉडल देखने के लिए Google का तैयार UI घटक है, जो WebXR के माध्यम से काम करता है। ARCore सत्र, ट्रैकिंग और रेंडरिंग के सभी पहलुओं पर प्रोग्रामेटिक नियंत्रण के साथ कस्टम AR अनुभव बनाने के लिए एक पूर्ण-विशेषताओं वाला SDK है।
सारांश
हम एक मोबाइल एप्लिकेशन टर्नकी विकसित करेंगे
IT Sectr 2017 से स्टार्टअप और व्यवसायों के लिए iOS और Android एप्लिकेशन बनाता है। हम आपको सलाह देंगे और सर्वोत्तम समाधान प्रस्तावित करेंगे।
यह भी पढ़ें