ARCore: bu nədir, imkanları və genişləndirilmiş reallıq texnologiyası

Müəllif: IT Sectr Dərc olunub: 2026-03-25 Oxuma vaxtı: 8 dəq

ARCore platforması — Google-ın Android üçün genişləndirilmiş reallıq həlli, smartfonun kamerasından və inersial sensorlarından istifadə edərək məkanda mövqeyi izləyir. Google AR Developers, 2025-in məlumatlarına görə, platforma Motion Tracking, Environmental Understanding və Light Estimation — virtual obyektləri real mühitdə yerləşdirmək üçün üç əsas texnologiyanı dəstəkləyir. Platformalararası arxitektura tərtibatçılara Android, iOS, Unity və Unreal Engine üçün vahid kod bazası ilə AR tətbiqləri yaratmağa imkan verir.

Başlıca

  • ARCore — Google-ın Android üçün genişləndirilmiş reallıq platforması, 2018-ci ildə təqdim edilmişdir.
  • Motion Tracking — IMU və görüntü analizinə əsaslanan cihaz hərəkətinin izlənməsi texnologiyası.
  • Environmental Understanding — müstəvilərin, sərhədlərin və səth relyefinin tanınması.
  • Cloud Anchors — AR obyektlərinin bulud vasitəsilə bir neçə cihaz arasında sinxronizasiya mexanizmi.
  • ARCore SDK Android (Kotlin/Java), iOS, Unity və Unreal Engine üçün mövcuddur.

ARCore nədir?

ARCore — Google-ın 2018-ci ildə Project Tango-nun daha yüngül və əlçatan formatda davamçısı kimi elan edilmiş genişləndirilmiş reallıq platformasıdır. Xüsusi dərinlik sensorları tələb edən Tango-dan fərqli olaraq, ARCore yalnız kamera və inersial sensorlardan (IMU) istifadə edərək standart Android smartfonlarında işləyir.

ARCore üç əsas texnologiyadan istifadə edir: cihazın mövqeyini izləmək üçün Motion Tracking, üfüqi və şaquli müstəviləri aşkarlamaq üçün Environmental Understanding və virtual obyektlərin işıqlandırılmasını real mühitə uyğunlaşdırmaq üçün Light Estimation. Bu üç texnologiya istənilən səthdə təbii görünən AR obyektləri yerləşdirməyə imkan verir.

Google I/O 2024 məlumatlarına görə, ARCore Samsung, Xiaomi, Huawei, OnePlus, Google Pixel və digər smartfonlar daxil olmaqla 1 milyarddan çox Android cihazında dəstəklənir. Platforma Google Play Services for AR ilə inteqrasiya edilmişdir ki, bu da ARCore-u Android versiyasından asılı olmayaraq Google Play Store vasitəsilə yeniləməyə imkan verir.

ARCore-un təkamülü

Altı versiya ərzində ARCore əhəmiyyətli təkamül keçmişdir: ARCore 1.0 — əsas izləmə və müstəvi tanıma; ARCore 1.2 — şaquli müstəvilər və Augmented Images; ARCore 1.7 — çoxistifadəçi sessiyalar üçün Cloud Anchors; ARCore 1.10 — üz mimikasını izləmək üçün Augmented Faces.

ARCore 1.20+ cihazda TensorFlow Lite ML modeli vasitəsilə obyekt kateqoriyalarının (döşəmə, tavan, divar, mebel, bitki, qapı) tanınması olan Scene Semantic Understanding-i əhatə edir. Street View Geometry API açıq havada AR naviqasiyası üçün Google Street View dərinlik xəritələrindən istifadə etməyə imkan verir.

kotlin
// ARCore sessiyasının işə salınması
val session = Session(context)
val config = Config(session)
config.lightEstimationMode =
    Config.LightEstimationMode.ENVIRONMENTAL_HDR
config.planeFindingMode =
    Config.PlaneFindingMode.HORIZONTAL_AND_VERTICAL
session.configure(config)

// Kadrın işlənməsi
val frame = session.update()
val pointCloud = frame.acquirePointCloud()
val planes = session.getAllTrackables(
    Plane::class.java
)

ARCore necə işləyir

ARCore hibrid yanaşmadan istifadə edir: IMU (inersial ölçü modulu) cihazın mövqeyini yüksək tezliklə (1000 Hz-ə qədər) proqnozlaşdırır, vizual odometriya isə 30–60 Hz tezlikdə kameradan xarakterik nöqtələrin analizi əsasında səhvləri düzəldir. Bu yanaşma stasionar şəraitdə təxminən 1–2 santimetr dəqiqliklə izləmə təmin edir.

Environmental Understanding prosesi üç mərhələdə işləyir: əvvəlcə ARCore kamera görüntüsündə xarakterik nöqtələri (feature points) tapır, sonra eyni müstəvidə yerləşən nöqtə qruplarını müəyyən edir və onları çoxbucaqlıya yaxınlaşdırır. Müstəvi tanındıqdan sonra ARCore yeni kadrlar gəldikcə yenilənən Plane tipli Trackable obyekti yaradır.

Google məlumatlarına görə, ARCore kameradan 1 metr məsafədə 10x10 santimetr ölçüsündə müstəviləri müəyyən edir. Orta ölçülü otaqlar (ərazi 20 m²) üçün müstəvilərin tam skan edilməsi təxminən 2–4 saniyə çəkir. ToF sensoru dəstəyi ilə Depth API istifadə edildikdə tanıma dəqiqliyi 40% artır.

Depth API və Scene Mesh

Depth API — kameradan stereo görüntü analizi əsasında səhnənin dərinlik xəritəsini quran ARCore texnologiyasıdır. ToF (Time-of-Flight) sensoru olan cihazlarda dərinlik xəritəsi 2 sm dəqiqliklə ani olaraq əldə edilir. Dərinlik sensoru olmayan cihazlarda Depth API tək kadrdan dərinliyi qiymətləndirmək üçün maşın öyrənməsindən istifadə edir ki, bu da təxminən 10 sm dəqiqlik verir.

Scene Mesh — ARCore-un real vaxtda qurduğu üçölçülü ətraf mühit şəbəkəsidir. Şəbəkə toqquşma fizikası, virtual obyektlərin oklüzyası və kölgə salma üçün istifadə olunur. Scene Mesh OpenGL ES 3.1 və Depth API dəstəyi olan cihazlarda mövcuddur və kadr başına 500 min çoxbucaqlıya qədər əhatə edir.

kotlin
// Dərinlik xəritəsinin alınması
val depthImage = frame.acquireDepthImage16Bits()

// Obyektin tanınmış müstəvidə yerləşdirilməsi
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 və ARKit: müqayisə

ARCore və ARKit eyni vəzifələri — mövqe izləmə, müstəvi tanıma və işıqlandırma qiymətləndirməsini həll etsə də, onların yanaşmaları və ekosistemləri fərqlidir. ARCore platformalararasılığa və uyğunluğa üstünlük verir, ARKit isə Apple avadanlığı ilə dərin inteqrasiyadan istifadə edir.

Əsas fərqlər: ARCore Android və iOS-da ARCore SDK vasitəsilə işləyir, ARKit — yalnız iOS-da. ARCore Firebase vasitəsilə sinxronizasiya üçün Cloud Anchors-dan istifadə edir, ARKit — birbaşa cihazlar arası mübadilə üçün ARWorldMap-dən. Depth API ilə ARCore ToF sensorlarını, LiDAR ilə ARKit isə 3 sm dəqiqliklə lazer skan edilməsini dəstəkləyir.

Google 2024 müqayisə testlərinə görə, giroskop və ToF sensoru olan cihazlarda ARCore izləmə dəqiqliyi LiDAR-lı iPhone-da ARKit ilə müqayisə edilə bilər — 2 metr məsafədə xəta 2 sm-dən çox deyil. ToF olmayan cihazlarda ARCore başlatma sürətinə görə ARKit-dən geri qalır: 3 saniyəyə qarşı 0,5 saniyə.

ARCore və ARKit arasında seçim hədəf auditoriyadan asılıdır: tətbiq yalnız iOS üçündürsə, ARKit daha yaxşı performans və LiDAR-ın eksklüziv funksiyalarına çıxış təmin edir. Hər iki platforma dəstəyi lazımdırsa, ARCore ARCore iOS SDK ilə minimal platforma fərqləri ilə vahid kod bazasından istifadə etməyə imkan verir, baxmayaraq ki, hər platformanın bəzi aparat imkanları itirilir.

XüsusiyyətARCoreARKit
PlatformaAndroid + iOS + Unity/Unrealyalnız iOS
Dərinlik sensoruToF (istəyə bağlı)LiDAR (Pro modellər)
SinxronizasiyaCloud Anchors (Firebase)ARWorldMap (Multipeer)
Üz izləməAugmented FacesFace Tracking (TrueDepth)
VIO dəqiqliyi1–3 sm0,5–1 sm

ARCore-un tətbiqə inteqrasiyası

ARCore inteqrasiyası build.gradle faylına Google Play Services for AR asıllılığının əlavə edilməsi ilə başlayır: com.google.ar:core. Tətbiq ArCoreApk.checkAvailability() vasitəsilə cihazda ARCore-un mövcudluğunu yoxlamalıdır — ARCore quraşdırılmayıbsa, istifadəçiyə Google Play Store-dan quraşdırmağı təklif etməlidir.

Əsas ARCore layihəsinə daxildir: Session və Config yaradılması, kameranı göstərmək üçün SurfaceView-in konfiqurasiyası, session.resume() ilə sessiyanın başladılması və session.update() ilə kadrların işlənməsi. 3D obyektlərin render edilməsi üçün Sceneform SDK (Google-ın Filament əsaslı kitabxanası) və ya mürəkkəb səhnələr üçün Unity/Unreal istifadə olunur.

Google Kotlin tətbiqləri üçün Sceneform-u tövsiyə edir — o, hazır komponentlər təmin edir: 3D modelləri yükləmək üçün ModelRenderable (OBJ, glTF, FBX), AR səhnəsinə Android View yerləşdirmək üçün ViewRenderable və toxunuşları idarə etmək üçün MotionEvent. Sceneform AR sessiyasının həyat dövrünü və resursların sərbəst buraxılmasını avtomatik idarə edir.

İzləmə xətalarının idarə edilməsi

ARCore zəif işıqlandırma, təkrəngli səthlər və ya cihazın sürətli hərəkətləri zamanı izləməni itirə bilər. İzləmə vəziyyəti frame.getTrackingState() vasitəsilə əldə edilir — TRACKING, PAUSED və STOPPED dəyərləri. PAUSED vəziyyətinə keçərkən renderinqi dayandırmaq və istifadəçiyə „Cihazı daha yavaş hərəkət etdirin” və ya „Daha işıqlı yerə keçin” kimi tövsiyələr göstərmək tövsiyə olunur.

Xətadan sonra avtomatik bərpa üçün ARCore saxlanılmış xarakterik nöqtə xəritəsi əsasında relokalizasiyanı dəstəkləyir. Tərtibatçı xəritəni session.serialize() ilə saxlaya və session.deserialize() ilə bərpa edə bilər — bu, istifadəçinin eyni fiziki məkana qayıtdığı uzunmüddətli AR təcrübəsi üçün faydalıdır. Xəritənin bərpası ətraf mühitin əhəmiyyətli dəyişməməsi şərti ilə 1–2 saniyə çəkir.

kotlin
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()
            }
        }
    }
}

Tez-tez verilən suallar

Hansı cihazlar ARCore-u dəstəkləyir?

ARCore Google Pixel 2+, Samsung Galaxy S7+, Xiaomi Mi 8+, Huawei P20+, OnePlus 6+, Sony Xperia XZ2+ və bir çox digərləri daxil olmaqla 1 milyarddan çox Android cihazında dəstəklənir. Sertifikatlaşdırılmış cihazların tam siyahısı developers.google.com/ar/devices saytında dərc edilmişdir.

ARCore-un işləməsi üçün internet lazımdırmı?

ARCore-un əsas funksiyaları — Motion Tracking və Environmental Understanding — internet tələb etmir. Cloud Anchors və bulud keçidləri olan Augmented Images bağlantı tələb edir. Depth API və Scene Mesh şəbəkəyə qoşulmadan tamamilə cihazda işləyir.

Sceneform olmadan AR tətbiqləri yaratmaq olarmı?

Bəli, ARCore birbaşa OpenGL ES 3.1 ilə, Unity və ya Unreal Engine ilə istifadə edilə bilər. Sceneform Kotlin-də sadə layihələr üçün tövsiyə olunan seçimdir, lakin məcburi deyil. Realistik fizikaya malik mürəkkəb 3D səhnələr üçün ARCore SDK dəstəyi olan oyun mühərriklərindən istifadə etmək daha yaxşıdır.

ARCore qapalı və açıq məkanlarda necə işləyir?

ARCore kifayət qədər işıqlandırması olan qapalı məkanlar üçün optimallaşdırılmışdır (100–500 lüks). Açıq havada parlaq günəş altında kameranın həddindən artıq işıqlanması səbəbindən izləmə dəqiqliyi azala bilər. Açıq havada iş üçün Google şəhər lokalizasiyaları üçün dərinlik xəritələri təmin edən Street View Geometry API-dən istifadə etməyi tövsiyə edir.

ARCore Scene Viewer-dən nə ilə fərqlənir?

Scene Viewer — kodsuz AR-də 3D modellərə baxmaq üçün WebXR vasitəsilə işləyən hazır Google UI komponentidir. ARCore sessiyanın, izləmənin və renderinqin bütün aspektləri üzərində proqram nəzarəti ilə fərdi AR təcrübəsi yaratmaq üçün tam hüquqlu SDK-dır.

Nəticə

  • ARCore — Google-ın Android və iOS-da işləyən platformalararası AR platforması.
  • Motion Tracking dəqiq mövqeləndirmə üçün IMU və vizual odometriya hibridindən istifadə edir.
  • Cloud Anchors Firebase vasitəsilə sinxronizasiya ilə çoxistifadəçi AR sessiyaları təmin edir.
  • Depth API səhnənin dərinlik xəritəsini qurur — proqram vasitəsilə və ya ToF sensoru ilə.
  • Sceneform — Kotlin-də minimal kodla AR tətbiqləri yaratmaq üçün tövsiyə olunan SDK.
  • Uyğunluq — ARCore sertifikatı ilə 1 milyarddan çox Android cihazı.
  • Seçim ARCore və ARKit arasında hədəf platformadan və dəqiqlik tələblərindən asılıdır.

Açar təslim mobil tətbiq hazırlayacağıq

IT Sectr 2017-ci ildən startaplar və bizneslər üçün iOS və Android tətbiqləri yaradır. Sizə məsləhət verəcəyik və ən yaxşı həlli təklif edəcəyik.

Layihəni müzakirə et

Həm də oxuyun