現(xiàn)階段做增強現(xiàn)實(AR技術(shù))開發(fā)的人員大致可以分為三類:
1.主要研究增強現(xiàn)實相關(guān)的算法,可能會提供相關(guān)的開源SDK供其他開發(fā)者使用,推動行業(yè)技術(shù)進步。一般都是教育領(lǐng)域的AR研究人員在進行這部分的工作。
2.開發(fā)商業(yè)增強現(xiàn)實SDK或者增強現(xiàn)實瀏覽器,提供方便快捷平臺給中小型開發(fā)者使用,控制行業(yè)上游。 一般都是大型AR公司的開發(fā)人員,在從事相關(guān)的開發(fā)工作。
3.利用商業(yè)SDK或開源SDk進行二次開發(fā),尋求增強現(xiàn)實在商業(yè)上的應(yīng)用。從事該方面工作的人員主要是小型AR公司或團隊。
現(xiàn)在AR市場開展得比較好的國外公司主要有metaio、Total Immersion、高通、Layer,前面三個公司都有自己的商業(yè)SDK平臺開放給開發(fā)者使用,分別是metaio的metaio SDK、Total Immsion的D’Fusion、以及高通的voforia 。而Layer則主要是進行AR瀏覽器的開發(fā),metaio也有自己的AR瀏覽器。國內(nèi)也有些有AR技術(shù)實力的公司從事增強現(xiàn)實開發(fā)控件的開發(fā)包等,如包括藍師特、86AR、愛迪斯通等。
通過我們AR技術(shù)團隊對增強現(xiàn)實SDK的研究與比較,總結(jié)出現(xiàn)在一個完善的AR SDK必須要具備以下接個特性:
1.圖像、標(biāo)志識別
2.人體、面部識別
3.三維環(huán)境追蹤和投影(3D tracking and mapping)
4.支持多平臺開發(fā)
5.內(nèi)置三維渲染引擎
6.內(nèi)置物理引擎
7.腳本支持
而前面介紹的幾個商業(yè)SDK基本上都附合以上特性,在后面我們會對它們進行詳細介紹,下面我們主要集中看一款開源的增強現(xiàn)實類庫。
國內(nèi)現(xiàn)在使用最廣泛的開源類庫就是ARToolKit,是C++做的增強現(xiàn)實的一個庫,但是他只具備前面所說的1、5兩個特性,由此可以看出商業(yè)與開源類庫還是存在很大差距,為了使其支持Android、flash等多平臺的開發(fā),很多開發(fā)者基于VRToolKit進行封裝,形成了以下類庫,可以把它們統(tǒng)稱為ARToolKit系的類庫。
ARToolKit系的類庫:
FLARToolkit:ARToolKit的Flash版本。
SLARToolkit :ARToolKit的Slverlight版本,可以支持Windows Phone開發(fā)。
andar:ARToolKit的Android版本。
osgart:ARToolKit的OSG版本。
nyartoolkit:ARToolKit的一個多語言包裝版本,包括C#、JAVA等。
另外還有一些個人認為比較有特色的能夠支持AR開發(fā)的一些開源庫,包括PTAM、bazAR、Handheld AR、windage、DART、DroidAR、Mixare、OpenSpace3D、Goblin XNA、Augmented Reality FLOSS,有興趣的朋友可以去它們網(wǎng)站了解其相關(guān)內(nèi)容,或直接向我人AR技術(shù)研究團隊交流,后續(xù)86AR技術(shù)研究團隊還會挑出一些典型AR項目進行介紹。