Punti chiave
- Anche se molte persone considerano l’AR solo una tecnologia di intrattenimento, in realtà è ampiamente utilizzata in diversi settori come la sanità, l’e-commerce, l’architettura e molti altri.
- Ci sono due grandi classi di applicazioni AR: applicazioni basate su marcatori e applicazioni basate sulla posizione. Le app basate su marcatori utilizzano marcatori predefiniti per attivare la visualizzazione di sovrapposizioni AR in cima all’immagine. Le app basate sulla localizzazione utilizzano le informazioni del GPS, dell’accelerometro o della bussola per visualizzare gli oggetti AR sopra quelli fisici.
- Per scegliere un SDK AR, i criteri più importanti da considerare sono: il costo, le piattaforme supportate, il riconoscimento delle immagini e il supporto del tracking, il supporto Unity, il supporto OpenSceneGraph, GPS, ecc.
- Questo articolo fornisce un’utile tabella che riassume tutte le principali caratteristiche e funzionalità di sei toolkit AR ampiamente disponibili.
La realtà aumentata (AR) è diventata la nuova tendenza nel mondo digitale e difficilmente si può incontrare una persona che non abbia familiarità con essa dopo il boom che Pokemon Go ha portato nella vita dell’utente medio mobile. Anche se molte persone considerano l’AR solo una tecnologia di intrattenimento, in realtà è ampiamente utilizzata in più settori come l’assistenza sanitaria, l’e-commerce, l’architettura e molti altri. Questo articolo abbatterà questo stereotipo.
Il potenziale dell’AR è senza soluzione di continuità e i marchi stanno già utilizzando questa tecnologia nel loro business per fornire una nuova esperienza utente. Le aziende implementano l’AR per creare demo di prodotti, pubblicità interattiva e fornire informazioni in tempo reale ai clienti. È stato dimostrato che quando le persone toccano o interagiscono con un prodotto, sono più propense ad acquistarlo a causa del legame emotivo stabilito.
Secondo una previsione di Statista, il mercato della realtà aumentata e virtuale dovrebbe raggiungere la dimensione di 215 miliardi di dollari nel 2021. Essendo un mercato in rapida crescita con un enorme potenziale, l’AR attrae sia le grandi aziende come Google, Apple, Facebook, ecc, sia le piccole imprese.
Questo articolo mira ad aiutare gli sviluppatori a creare la loro prima app AR riassumendo le informazioni sui più popolari e utili AR software development kit (SDKs) che sono disponibili. Inoltre, abbiamo elencato i criteri a cui bisogna prestare attenzione mentre si costruiscono applicazioni di realtà aumentata.
Quali tipi di applicazioni di realtà aumentata esistono?
Prima di iniziare lo sviluppo di un’app di realtà aumentata, bisogna scegliere tra due grandi categorie: app di localizzazione e app basate su marcatori. Di seguito discutiamo brevemente le differenze tra loro.
Applicazioni basate su marcatori
Le app basate su marcatori si basano sul riconoscimento delle immagini. Usano marcatori in bianco e nero come trigger per visualizzare il contenuto AR. Per vedere la componente aumentata, devi puntare la fotocamera sulla posizione di un marcatore in qualsiasi punto intorno a te. Una volta che il dispositivo riconosce il marcatore, un’app sovrappone i dati digitali su questo marcatore e si può vedere l’oggetto aumentato.
Quando si costruisce un’app basata sul marcatore, si forniscono le immagini o i loro descrittori in anticipo per semplificare il processo di ricerca quando i dati della telecamera vengono analizzati. In altre parole, gli oggetti sono già hard-coded nella vostra app, quindi sono più facili da individuare. Non c’è da stupirsi che la maggior parte delle app AR siano basate su marcatori.
Applicazioni basate sulla localizzazione
Le app AR basate sulla localizzazione funzionano senza marcatori. Rilevano la posizione dell’utente con l’aiuto di un GPS, un accelerometro o una bussola digitale e sovrappongono gli oggetti di realtà aumentata su luoghi fisici reali. La più famosa app location-based è sicuramente Pokemon Go.
Queste app possono inviare notifiche all’utente in base alla sua posizione per fornire loro nuovi contenuti AR relativi a un dato luogo. Per esempio, un’app potrebbe dare raccomandazioni sui migliori bar nelle vicinanze, e mostrare come arrivarci. Come ulteriore esempio, un’app potrebbe aiutare l’utente a trovare la sua auto all’interno di un enorme parcheggio usando il GPS.
Quali sono i principali criteri per scegliere un SDK di Realtà Aumentata?
Quando si tratta di scegliere un kit di sviluppo, è facile essere frustrati dal numero di strumenti disponibili. Al fine di scegliere l’SDK che meglio si adatta al tuo progetto, dovresti assicurarti che supporti tutte le caratteristiche richieste dalla tua app. Di seguito, elenchiamo i principali punti da considerare.
Costo
Il prezzo è il primo segno distintivo di un SDK AR. Per coloro che vogliono provare lo sviluppo AR per la prima volta, le migliori opzioni sono gli SDK AR open-source gratuiti, che sono aperti ai contributi e possono essere estesi con nuove funzionalità proposte dagli sviluppatori.
Gli SDK a pagamento nella maggior parte dei casi offrono diversi piani tariffari, a seconda delle esigenze dell’utente. I livelli gratuiti hanno possibilità limitate e sono intesi come una “versione demo” del prodotto completo. Costruire un’app complessa con un grande contenuto dinamico richiederà probabilmente una licenza commerciale. Quindi siate pronti a pagare.
Piattaforme
Se avete intenzione di sviluppare la vostra app per iOS o Android, non ci saranno problemi nella scelta di un toolkit di realtà aumentata, dato che quasi tutti li supportano. Nel frattempo, la scelta di strumenti che sono compatibili con Windows o macOS è piuttosto piccola. Tuttavia, è possibile costruire la vostra app per computer Windows o smartphone utilizzando kit di sviluppo di realtà aumentata, che supportano la Universal Windows Platform (UWP).
Riconoscimento delle immagini
Questa caratteristica è un must-have per qualsiasi app AR in quanto permette di identificare oggetti, luoghi e immagini. A questo scopo, gli smartphone e altri dispositivi utilizzano la visione artificiale insieme alla fotocamera e al software di intelligenza artificiale per tracciare le immagini che possono essere successivamente sovrapposte con animazioni, suoni, contenuti HTML ecc.
Riconoscimento e tracciamento 3D
Il riconoscimento e il tracciamento delle immagini 3D è una delle caratteristiche più importanti di qualsiasi SDK AR. Grazie al tracciamento, un’applicazione può “capire” e valorizzare i grandi spazi intorno all’utente all’interno di grandi edifici come aeroporti, stazioni degli autobus, centri commerciali, ecc. Le applicazioni che lo supportano possono riconoscere oggetti tridimensionali come scatole, tazze, cilindri, giocattoli ecc.
Attualmente, questa tecnologia è comunemente usata nei giochi mobili e nell’e-commerce.
Supporto di Unity
Unity è noto per essere il motore di gioco più popolare e potente al mondo. Anche se di solito è usato per sviluppare giochi per computer, può anche essere utilizzato per creare applicazioni AR con effetti potenti. Sia che tu voglia creare un’esperienza all’avanguardia o estendere un’idea più tradizionale con nuove tecniche, uno strumento multiuso come Unity ti permette di implementare entrambe le cose.
Supporto OpenSceneGraph
OpenSceneGraph è un toolkit grafico 3D open source (application programming interface). È usato dagli sviluppatori di applicazioni in domini come i giochi per computer, la realtà aumentata e virtuale, la visualizzazione scientifica e la modellazione.
Supporto cloud vs storage locale
Quando si sviluppano applicazioni mobili AR, si deve decidere se i dati dell’utente saranno memorizzati localmente o nel cloud. Questa decisione è principalmente guidata dal numero di marcatori che si intende creare. Se avete intenzione di aggiungere un gran numero di marcatori alla vostra applicazione, considerate di memorizzare tutti questi dati nel cloud, altrimenti la vostra applicazione utilizzerà molto spazio di archiviazione sul dispositivo. Inoltre, avere un’idea del numero di marcatori che la vostra app utilizza è importante perché alcuni SDK di realtà aumentata supportano un centinaio di marcatori mentre altri ne supportano migliaia.
D’altra parte, memorizzare i marcatori localmente (cioè, on-device) permette agli utenti di eseguire l’applicazione di realtà aumentata offline, il che potrebbe essere comodo quando non si ha sempre a disposizione il Wi-Fi o i dati mobili.
Supporto GPS (geolocalizzazione)
Se si ha intenzione di creare un’applicazione AR location-based, la geolocalizzazione è una caratteristica fondamentale che deve essere supportata dallo strumento AR che si intende utilizzare. Il GPS può essere usato sia nei giochi AR come Pokemon Go sia nelle applicazioni fatte per sovrapporre i dati su alcune località vicine (per esempio per trovare il ristorante più vicino).
Supporto SLAM
SLAM significa Simultaneous Localization and Mapping. Si tratta di un algoritmo che mappa l’ambiente in cui si trova l’utente e traccia tutti i suoi movimenti. Le applicazioni AR che contengono questa caratteristica possono ricordare la posizione degli oggetti fisici all’interno di un certo ambiente e posizionare gli oggetti virtuali di conseguenza alla loro posizione e ai movimenti degli utenti. SLAM ha un enorme potenziale e può essere usato in molti tipi di applicazioni, non solo in quelle AR. Il vantaggio principale di questa tecnologia è la capacità di essere usata al chiuso mentre il GPS è disponibile solo all’aperto.
Top 6 SDK di Realtà Aumentata per App Mobili
Una volta che conosci tutte le caratteristiche che potresti richiedere ad un SDK per creare la tua app di realtà aumentata, puoi controllare la seguente lista di sei strumenti popolari che sono disponibili sul mercato. Riteniamo che questi toolkit siano i più rilevanti e appropriati in base all’insieme di caratteristiche che forniscono e al loro rapporto qualità-prezzo. Alcuni di essi sono gratuiti.
Vuforia
Vuforia è un portale leader per lo sviluppo di applicazioni di realtà aumentata che ha un ampio set di caratteristiche. Vuforia augmented reality SDK:
- Riconosce più oggetti tra cui scatole, cilindri e giocattoli così come le immagini.
- Supporta il riconoscimento del testo tra cui circa 100.000 parole o un vocabolario personalizzato.
- Consente di creare VuMarks personalizzati, che hanno un aspetto migliore di un tipico QR-code.
- Consente di creare una mappa geometrica 3D di qualsiasi ambiente utilizzando la sua caratteristica Smart terrain
- Trasforma immagini statiche in video full motion che possono essere riprodotti direttamente su una superficie di destinazione.
- Fornisce un plugin per Unity.
- Supporta sia il cloud che lo storage locale.
Piattaforme supportate: iOS, Android, Universal Windows Platform, Unity.
Prezzi: versione gratuita, versione classica – $499 una tantum, cloud – $99 al mese e versione Pro per uso commerciale.
Video Presentazione:
ARToolKit
ARToolKit è uno strumento open-source per creare applicazioni di realtà aumentata. Anche se è una libreria gratuita, fornisce un set piuttosto ricco di funzionalità per il tracciamento, tra cui:
- Supporto Unity3D e OpenSceneGraph.
- Supporta sia la singola che la doppia fotocamera.
- Supporto GPS e bussole per la creazione di applicazioni AR basate sulla posizione.
- Possibilità di creare applicazioni AR in tempo reale.
- Integrazione con gli occhiali intelligenti.
- Lingue multiple supportate
- Calibrazione automatica della fotocamera.
Piattaforme supportate: Android, iOS, Linux, Windows, Mac OS e Smart Glasses.
Prezzo: gratis
Google ARCore
Con due milioni di utenti attivi Android, Google non poteva perdere l’occasione di dare agli sviluppatori l’opportunità di creare app AR su questo sistema operativo. Ecco come è apparso Google ARCore.
Questo toolkit funziona con Java/OpenGL, Unity e Unreal. Fornisce caratteristiche come:
- Motion tracking. ARCore può determinare la posizione e l’orientamento del dispositivo utilizzando la fotocamera e individuare i punti caratteristici nella stanza. Questo aiuta a posizionare accuratamente gli oggetti virtuali.
- Comprensione dell’ambiente. Grazie alla possibilità di rilevare le superfici orizzontali, è possibile posizionare oggetti virtuali su tavoli o sul pavimento. Questa caratteristica può essere utilizzata anche per il motion tracking.
- Stima della luce. Questa tecnologia permette alla vostra app di adattarsi all’illuminazione dell’ambiente e di illuminare gli oggetti virtuali in modo che sembrino naturali all’interno dello spazio circostante. Con l’aiuto del light tracking intelligente gli sviluppatori possono ora creare oggetti molto realistici.
Dispositivi supportati: Attualmente: Google Pixel, Pixel XL, Pixel 2, Pixel 2 XL, Samsung Galaxy S7-S8+, Samsung A5-A8, Samsung Note8, Asus Zenfone AR, Huawei P20, OnePlus 5 ARCore è progettato per funzionare su dispositivi con Android 7.0 e superiori.
Prezzi: gratis
Video di presentazione:
Apple ARKit
Con iOS11, Apple ha introdotto il proprio ARKit, annunciato durante la Worldwide Developers Conference di Apple nel giugno 2017. Ecco le caratteristiche dell’SDK di realtà aumentata di Apple per iOS:
- Visual Inertial Odometry (VIO) che permette di tracciare en ambiente con precisione senza alcuna calibrazione aggiuntiva.
- Robust face tracking per applicare facilmente effetti facciali o creare espressioni facciali di personaggi 3D.
- Tracciamento del livello di luce dell’ambiente per applicare la corretta quantità di illuminazione agli oggetti virtuali.
- Rilevamento di piani orizzontali come tavoli e pavimenti, superfici verticali e di forma irregolare.
- Rilevamento di oggetti 2D e permette agli sviluppatori di interagire con loro.
- Integrazione con strumenti di terze parti come Unity e Unreal Engine.
Compatibile con i seguenti dispositivi: iPhone 6s e 6s Plus, iPhone 7 e 7 Plus, iPhone SE, iPad Pro (9.7, 10.5 o 12.9) – sia di prima che di seconda generazione, iPad (2017),iPhone 8 e 8 Plus, iPhone X
Prezzo: gratis
Maxst
MAXST ha due SDK disponibili: un SDK 2D per il tracking delle immagini e un SDK 3D per il riconoscimento ambientale. Ecco l’elenco delle caratteristiche dell’SDK 3D:
- MAXST Visual Simultaneous Localization and Mapping per il tracking e la mappatura degli ambienti. Quando si traccia l’ambiente circostante, la mappa viene automaticamente estesa oltre la prima vista insieme al movimento della telecamera. Le mappe possono anche essere salvate per gli usi successivi.
- Salvare i file creati con la localizzazione visiva simultanea e la mappatura per rendere gli oggetti 3D dove si vuole su di esso per creare esperienze AR più coinvolgenti.
- QR e scansione di codici a barre.
- Tracciamento esteso dell’immagine e tracciamento multi-target. È possibile tracciare l’obiettivo fino a quando la fotocamera può vederlo e può anche tracciare fino a 3 immagini allo stesso tempo.
- Tracciamento e posizionamento di oggetti digitali in relazione al piano.
- Integrazione del plugin Unity.
Piattaforme supportate: Android, iOS, Mac OS e Windows.
Prezzi: versione gratuita, Pro-One time fee – $499, Pro-Subscription – $599 all’anno, versione Enterprise.
Presentazione video:
Wikitude
Wikitude ha recentemente introdotto il suo SDK7, incluso il supporto per la localizzazione e il mapping simultanei. Lo strumento fornisce attualmente le seguenti caratteristiche:
- Riconoscimento e tracciamento 3D.
- Riconoscimento e tracciamento delle immagini.
- Riconoscimento cloud (permette di lavorare con migliaia di immagini target ospitate nel cloud).
- Servizi basati sulla localizzazione.
- Integrazione con gli occhiali intelligenti.
- Integrazione con plugin esterni, incluso Unity.
Piattaforme supportate: Android, iOS, Smart Glasses (attualmente Google Glass, Epson Moverio BT-200 e Vuzix M100).
Prezzi: Versione Pro – €2490 all’anno per app, Pro3D – €2990 all’anno per app, Cloud – €4490 all’anno per app, versione Enterprise.
Tabella di confronto degli SDK AR
Abbiamo deciso di organizzare le principali caratteristiche e funzionalità degli strumenti AR menzionati in una tabella in modo da poterli confrontare rapidamente.
AR SDK |
Meglio per: |
Piattaforme supportate |
Costo |
Vuforia |
Marker-basati su app |
|
|
ARToolKit |
Location-basato su app |
|
Free |
Google ARCore |
Marker-basato su app |
|
Free |
Apple ARKit |
Marker-basati su app |
|
Free |
MAXST |
Marker-basati su app |
|
|
Wikitude |
Marker-basati su app |
|
|
Conclusioni
Inutile dire che la tecnologia della realtà aumentata fa tendenza. Ogni nuovo lancio di app AR provoca ondate di eccitazione. Pertanto, gli sviluppatori esperti stanno cercando di padroneggiare questa tecnologia e lanciare le proprie app AR.
Ora, gli sviluppatori hanno una vasta scelta di toolkit AR per creare sia app basate su marcatori che su luoghi. Il primo passo per iniziare è scegliere l’SDK di realtà aumentata più adatto a soddisfare le loro esigenze. Questo articolo rende facile confrontare caratteristiche come il riconoscimento delle immagini e del 3D, le possibilità di memorizzazione, il supporto Unity e SLAM, ecc, per i team di sviluppo per selezionare facilmente il miglior toolkit per le loro future app.
Speriamo che questo articolo ti abbia ispirato a costruire la tua app AR utilizzando gli strumenti elencati! Sei stato ispirato dal nostro articolo? Vai avanti a costruire un’app AR eccezionale!
Informazioni sull’autore
Andrii Zhuravlov-Galchenko è il capo del dipartimento di sviluppo mobile di GBKSOFT. Con oltre 10 anni di esperienza come sviluppatore, gli piace mescolare diverse tecnologie come il web, la computer vision e lo sviluppo mobile. Andrii è sempre alla ricerca di nuove tecnologie e appassionato di innovazione, e cerca di portare entrambe in ogni suo progetto. Come team leader è sempre pronto ad aiutare con qualsiasi tipo di problema.