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