無標記擴增實境實驗平台建置與追蹤技術驗證(精簡版)

5,431 views
5,314 views

Published on

擴增實境技術是在真實視訊影像中加入虛擬物件,並透過追蹤與定位技術,可以與人們產生良好之互動效果。在視覺追蹤應用領域裡,可分為標記與無標記兩類應用。標記識別技術較為成熟,目前擴增實境開發平台以採用標記識別為主;至於無標記則侷限在特定方法之識別追蹤應用領域,例如樂高玩具利用包裝盒上之印刷圖片當作辨識物件。面對無標記擴增實境之應用日趨重要,且必須因應不同物件採用不同特徵之識別追蹤方法來達成無標記擴增實境之應用。而目前擴增實境平台並不提供模組化方式來替換識別追蹤方法,因此本文提出無標記擴增實境實驗平台,以現有擴增實境套件ARtoolKit為基礎,整合OpenCV與OpenGL函式庫,並採用模組化方式來設計視覺追蹤方法,做為驗證無標記擴增實境識別追蹤方法之平台,且透過視窗操作選擇不同視覺追蹤模組來呈現各式追蹤方法,以利分析驗證追蹤效能。

0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
5,431
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
138
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

無標記擴增實境實驗平台建置與追蹤技術驗證(精簡版)

  1. 1. 國防大學理工學院資訊工程學系 資訊科學碩士班 碩士學位論文 無標記擴增實境實驗平台建置與追蹤技術驗證 Markerless Augmented Reality Platform Design and Verification of Tracking Technologies 研 究 生 : 鍾 德 煥 指 導 教 授 : 王 順 吉中 華 民 國 一 O O 年 五 月 十 二 日
  2. 2. 碩士學位論文指導教授推薦書國防大學理工學院資訊工程學系資訊科學碩士班 鍾德煥 君所提之論文無標記擴增實境實驗平台建置與追蹤技術驗證 係由本人指導撰寫,同意提付審查。 此 致 系主任 指導教授 : 日 期 : 100 年 月 日
  3. 3. 誌謝 本研究論文之完成,首先感謝恩師王順吉老師悉心無私教誨、耐心指導與督促,得以順利完成,使本人不僅能在學識上有所獲益,更能在為人處世及事理分析等各方面更成熟穩健,師恩浩蕩,特於卷首致上最誠摯的謝意! 論文口試期間,幸蒙台北大學資訊工程學系系主任黃俊堯教授、銘傳大學資訊學院院長賈叢林教授、本院陳丙堃教授與賴義鵬教授,鼎力斧正,使論文更完整,衷心感謝。在學習過程中,感謝實驗室智仁與鼎捷學長於課業及研究領域的指導,以及正豪與昭瑞同學的互相勉勵,也感謝蒼昱、志偉及裕宸學弟在各個研討會、論文撰寫及口試期間的多方協助。 除此之外也感謝智隆在擔任所長期間的諸多幫忙,以及全展在論文修正期間的多方幫忙,更感謝佳萱、宣羽和捷文在口試期間的幫忙,當然也感謝陪我一同度過無數個用餐時光的同學們,在此一併誌謝。 衷心感謝生育與教養的父母,於求學過程中給予的鼓勵。也感謝聯傑國際蔡實學協理給予求學階段的通融,使本人能無後顧之憂在課業上專心研究。最後謹將這份成果獻給每一位幫助過我的貴人,有你們支持及鼓勵,才能使本論文達臻善臻美。 ii
  4. 4. 摘要 擴增實境技術是在真實視訊影像中加入虛擬物件,並透過追蹤與定位技術,可以與人們產生良好之互動效果。在視覺追蹤應用領域裡,可分為標記與無標記兩類應用。標記識別技術較為成熟,目前擴增實境開發平台以採用標記識別為主;至於無標記則侷限在特定方法之識別追蹤應用領域,例如樂高玩具利用包裝盒上之印刷圖片當作辨識物件。面對無標記擴增實境之應用日趨重要,且必須因應不同物件採用不同特徵之識別追蹤方法來達成無標記擴增實境之應用。而目前擴增實境平台並不提供模組化方式來替換識別追蹤方法,因此本文提出無標記擴增實境實驗平台,以現有擴增實境套件 ARtoolKit 為基礎,整合 OpenCV 與 OpenGL 函式庫,並採用模組化方式來設計視覺追蹤方法,做為驗證無標記擴增實境識別追蹤方法之平台,且透過視窗操作選擇不同視覺追蹤模組來呈現各式追蹤方法,以利分析驗證追蹤效能。關鍵字:擴增實境,無標記,虛擬實境,視覺追蹤,特徵追蹤,自然特徵 iii
  5. 5. ABSTRACT The technique of augmented reality (AR) is to augment 3D virtual objects intoreal images. Individual can interact with 3D virtual objects using tracking andregistration methods. Visual tracking is the most popular tracking approach used inAR system, and markers are simply and generally used for identification andtracking. Moreover, natural feature or marker-less identification and tracking isgetting more and more important and can be widely used in numerous applications.Therefore, many natural feature extraction and object tracking schemes aredeveloped to efficiently identify and track natural objects. However, few ofplatforms are designed to verify different tracking algorithms for AR system. In thisthesis, a novel tracking verification platform for AR environment, ARStudio, isproposed. ARStudio is on the basis of ARToolKit, and integrates the library ofOpenCV and OpenGL. Furthermore, we modularize each component such as imagecapture, image transform, visual tracking, image rendering, for the purpose ofindependent usage and design. Users can select different displaying windows, andeasily demonstrate results by using drag and drop. Experimental results manifest thatARStudio can be used for the purpose of verifying tracking schemes and ARapplications. :Keywords Augmented Reality, Markerless, Virtual Reality, Visual Tracking, FeatureTracking, Natural Features. iv
  6. 6. 目錄誌謝 ............................................................................................................................... ii摘要 ..............................................................................................................................iiiABSTRACT ................................................................................................................. iv目錄 ............................................................................................................................... ii表目錄 .......................................................................................................................... iv圖目錄 ........................................................................................................................... v1. 緒論 ....................................................................................................................... 1 1.1. 研究動機 .................................................................................................. 1 1.2. 研究目的 .................................................................................................. 4 1.3. 研究架構 .................................................................................................. 42. 相關文獻探討 ....................................................................................................... 5 2.1. 擴增實境介紹 .......................................................................................... 5 2.1.1. 擴增實境的源起 ............................................................................... 5 2.1.2. 擴增實境的原理 ............................................................................... 7 2.1.3. 擴增實境的分類 ............................................................................... 9 2.1.4. 擴增實境的呈現 ............................................................................. 15 2.1.5. 擴增實境的應用 ............................................................................. 22 2.1.6. 小結.................................................................................................. 28 2.2. 基礎概念介紹 ........................................................................................ 28 2.2.1. 座標系統.......................................................................................... 29 2.2.2. 投影原理.......................................................................................... 32 2.2.3. 攝影機模型...................................................................................... 34 ii
  7. 7. 2.2.4. 三維物件顯示 ................................................................................. 43 2.2.5. 小結.................................................................................................. 44 2.3. 應用技術介紹 ........................................................................................ 44 2.3.1. 標記追蹤.......................................................................................... 45 2.3.2. 前景物偵測...................................................................................... 46 2.3.3. 物件追蹤.......................................................................................... 50 2.3.4. 擴增實境在追蹤辨識上的限制 ..................................................... 54 2.3.5. 小結.................................................................................................. 543. 現有開發技術分析 ............................................................................................. 55 3.1. 現有技術分析 ........................................................................................ 55 3.2. 採用套件分析 ........................................................................................ 60 3.2.1. ARtoolKit......................................................................................... 61 3.2.2. OpenCV ........................................................................................... 63 3.2.3. OpenGL............................................................................................ 66 3.3. 小結 ........................................................................................................ 694. 全文下載 ............................................................................................................... 1 4.1. 無標記擴增實境實驗平台建置與追蹤技術驗證 .................................. 1 4.2. 運用擴增實境技術建立數位學習環境 .................................................. 2參考文獻 ....................................................................................................................... 4論文發表 ..................................................................................................................... 12自傳 ............................................................................................................................. 13 iii
  8. 8. 表目錄表 3-1 擴增實境現有技術整理。............................................................................. 60 iv
  9. 9. 圖目錄圖 2.1 頭戴顯示器[2]。 ............................................................................................. 6圖 2.2 真實-虛擬連續性[5]。 .................................................................................... 6圖 2.3 擴增實境的基礎架構[51]。 ........................................................................... 8圖 2.4 擴增實境的基本運作。 .................................................................................. 9圖 2.5 ARToolKit標記範例[72]。............................................................................. 10圖 2.6 自行設計可用於ARToolKit之標記。 .......................................................... 11圖 2.7 ARTag應用實例[78]。 ................................................................................... 11圖 2.8 透過QR-Code Generator產生之範例[59]。................................................. 12圖 2.9 QR Code結合擴增實境之應用[8]。 ............................................................. 13圖 2.10 無標記擴增實境應用[83]。 ....................................................................... 14圖 2.11 樂高擴增實境展示機[82]。 ....................................................................... 14圖 2.12 一般顯示器呈現原理。.............................................................................. 16圖 2.13 頭戴式影視顯示器呈現原理。.................................................................. 17圖 2.14 頭戴式光學投射顯示器呈現原理。.......................................................... 17圖 2.15 光學投射顯示器原理。.............................................................................. 18圖 2.16 Lumus公司的產品資訊[60]。 ..................................................................... 19圖 2.17 第一部星際大戰中的場景[61]。 ............................................................... 20圖 2.18 日立的Transpost系統[62]。......................................................................... 20圖 2.19 N-3D立體顯示器[63]。 ............................................................................... 21圖 2.20 Heliodisplay空氣投影[64]。........................................................................ 22圖 2.21 隱形眼鏡鏡頭[65]。 ................................................................................... 22圖 2.22 魔法書的應用[13]。 ................................................................................... 23 v
  10. 10. 圖 2.23 化學教學應用[14]:(a)擴增化學;(b)BSM模型。 ................................. 24圖 2.24 太陽與地球之運轉[15]。 ........................................................................... 24圖 2.25 心室模型[18]。 ........................................................................................... 25圖 2.26 裝甲運兵車維修作業[19]。 ....................................................................... 26圖 2.27 虛擬寵物遊戲EyePet™[67]。 .................................................................... 26圖 2.28 損毀古蹟重建之應用[20]:(a)原址;(b)疊加虛擬模型之面貌。........... 27圖 2.29 虛擬博物館系統[21]。 ............................................................................... 28圖 2.30 物體與物體座標系統[55]。 ....................................................................... 30圖 2.31 世界座標系統與物體座標系統[55]。 ....................................................... 30圖 2.32 物件與觀察者座標系統[55]。 ................................................................... 31圖 2.33 投影問題[56]。 ........................................................................................... 32圖 2.34 正交投影示意圖。 ...................................................................................... 33圖 2.35 透視投射示意圖。 ...................................................................................... 34圖 2.36 針孔攝影機模型[52]。 ............................................................................... 35圖 2.37 針孔攝影機模型之投影關係圖[52]。 ....................................................... 36圖 2.38 影像座標系統 ( x, y) 與攝影機座標系統 ( xcam , y cam ) 。 ................................. 37圖 2.39 世界座標系統 Q w 與攝影機座標系統 Q c 之轉換圖[52]。 ......................... 40圖 2.40 三維虛擬物件呈現流程。.......................................................................... 43圖 2.41 標記座標與攝影機座標關係圖[7]。 ......................................................... 45圖 2.42 ARToolKit之標記追蹤定位流程。 ............................................................. 46圖 2.43 移動車輛輪廓偵測[29]。 ........................................................................... 51圖 3.1 ARToolKit NFT之無標記應用範例[72]。 .................................................... 56圖 3.2 辨識影像放置於標記外之應用[72]。 ......................................................... 57圖 3.3 ARToolKit運作架構。 ................................................................................... 62 vi
  11. 11. 圖 3.4 OpenCV運作架構。....................................................................................... 64圖 3.5 OpenCV使用者介面運作架構。................................................................... 66圖 3.6 OpenGL與一般程式之運作關係。............................................................... 67圖 3.7 OpenGL使用者介面運作關係。................................................................... 69 vii
  12. 12. 1. 緒論 擴增實境就是將真實世界的影像、素材和資料,與電腦裡的虛擬物件互相結合,產生出複合式之影像。在現今軟硬體技術的提升與配合下,擴增實境之技術才得以在現實生活中呈現。雖然目前此技術已經開始逐漸蓬勃發展,然而要讓此技術變成日常生活的一部份,則需搭配更多的軟硬體相關技術。1.1. 研究動機 隨著影像處理之硬體技術的提升,影像媒體也漸漸的由類比轉為數位、二維影像轉為三維影像,電影阿凡達(Avatar)推出後更是掀起全球三維立體電影狂潮,之後廠商也相繼投入三維立體電影之拍攝。由此可知人類對於三維立體影像之期待,儘管三維立體動畫影像已經是行之有年的技術,然而礙於硬體平台以及相關技術都未能普及之情況下,坊間之視訊影像依然採用傳統二維影像之方式來呈現;當然在遊戲領域之應用中,早已全面邁入三維立體動畫特效。以往個人電腦著重提升中央處理器(Central Processing Unit, CPU)之運算能力,但到達一定技術門檻後,若單純只靠中央處理器來處理影像資訊,顯然是不夠的。所以,在視訊相關應用必須搭配圖形處理器(Graphic Processing Unit, GPU)來追求極致的視覺效果。因為唯有支援硬體加速轉換與光源(Transform & 、像素著色器(Pixel Shader)、頂點著色器(Vertex Shader)和 BumpLighting, T&L)Mapping 等三維立體影像技術之硬體,才能擁有流暢且細膩的三維立體影像。 隨著智慧型手機(Smart Phone)的熱潮,行動數位化更替資訊研究領域創造出不同之研究方向,而且攝影機更是智慧型手機之基本配備,所以可研究之領域更為寬廣;以往只有電腦才能處理之資訊,現在的智慧型手機也可以輕鬆處理了。除了傳統的應用外,這些智慧型手機有一個嶄新之應用領域,那就是擴 1
  13. 13. 增實境(Augmented Reality, AR);智慧型手機夾帶其在行動力上之優勢,是以往電腦所無法比擬的。例如 IKEA 就透過這項技術來介紹其一系列的家具,消費者可以在展示場透過智慧型手機之協助,運用擴增實境之技術來將家具與空間進行結合,最後透過結合之複合影像來決定是否進行採購。另外信義房屋創新推出的「iPhone 看屋 App」 ,不管消費者在哪裡,只要拿起手機對準所在地的街景,螢幕就會列出附近相關物件資訊,這些都是智慧型手機的發展的優勢。在頭戴式顯示器(Head-Mounted Display, HDM)不夠便利,而三維立體影像投影技術依然處在研發階段之情況下;智慧型手機之顯示器,就順理成章的成為擴增實境用來顯示虛擬物件之平台。也因為如此,整個擴增實境之應用發展,在這一兩年間得以迅速擴大及成長。 以往購買玩具在尚未拆開包裝之前,很難得知玩具之特性與全貌;現在樂高(LEGO)採用擴增實境之技術,只需要在特殊展示螢幕前,讓展示器辨識到該包裝盒上之商品圖標資訊,就可以在該顯示器看到該款玩具的三維立體動畫展示,讓消費者迅速瞭解並感受此款玩具的特性。另外,被人津津樂道的魔法書(MagicBook)應用,讓閱讀不再是那樣枯燥與呆板,配合三維立體即時互動之呈現方式,會使得書本變的更加生動有趣。這些都是擴增實境在標記(Marker)應用上之例子。 然而綜觀全盤擴增實境之應用,大多數依然需要配合標記來運作,對於現實環境來說,要將標記帶在身邊有點不切實際,而且目前之開發套件並非採用相同之標記圖庫,所以往往只能在固定領域採用特定之標記,可想而知其應用範圍將受到很大之限制。因此,若可以採用現實生活中之物件來取代標記,相信擴增實境之應用將會大為提升。 目前坊間已經有許多開發環境可供使用者選擇,然而大部分採用標記方式運作,當然現有開發環境也陸續提供無標記(Markerless)之應用,不過依然侷限 2
  14. 14. 在開發平台採取之無標記辨識方法上。因為對於不同之應用領域,需要針對不同之辨識物件與環境採取不同之辨識方法,來達到最佳辨識效果。所以,如何在不同環境下辨識各種物件將是發展無標記應用所要面臨之問題。不管標記或無標記均需對物件進行追蹤與辨識,唯一的差異在於是否使用日常生活中之物件。簡而言之,標記方式需要特別準備標記圖卡來當作操作物件,而無標記則不需要。就應用層面來看,無標記的應用將會是擴增實境未來之研究重點。 既然無標記將會是未來的研究重點,而且既有開發環境也只提供有限制的無標記之應用方法,對於影像研究人員來說,要怎麼樣在既有的開發環境上開發無標記之追蹤與辨識技術,這將是影像研究人員在擴增實境研究上所要面臨的重大問題。因為擴增實境所涵蓋之影像技術非常廣泛,除了基礎的數位影像處理(Digital Image Processing)技術外,還包括了計算機視覺(Computer Vision)和計算機圖學(Computer Graphics, CG),所要涉略領域非常廣泛,若沒有一個整合開發環境,將無法驗證無標記擴增實境技術之各種方法。 目前開放原始碼的 ARToolKit 擴增實境開發工具,並不支援 OpenCV 影像處理函式庫,而所需影像處理函式均需自行撰寫;若要使用 OpenCV 函式庫來處理影像資料,則必需將彼此影像格式互相轉換。而 ARToolKit 對於三維立體物件位置及姿態之呈現,均需使用 OpenGL 函式庫,視訊追蹤後要如何將追蹤物件使用三維立體虛擬物件來取代,都需要透過 OpenGL 函式庫。如果研究需要取得使用者介面之控制權,便無法採用 ARToolKit 搭配 GLUT(The OpenGLUtility Toolkit)之現有架構來處理使用者介面,而必需配合複雜之應用程式介面(Application Programming Interface, API)來重新改寫部分 ARToolKit 函式才能達成。 3
  15. 15. 1.2. 研究目的 近幾年來擴增實境相關技術之發展與應用與日俱增,越來越多的研究學者投入相關研究領域。這種融入現實生活並且可以與虛擬物件有良好即時互動效果 之 技 術 , 不 但 具 有 虛 擬 實 境 所 強 調 的 想 像 力 (Imagination) 、 融 入 性(Immersion)、互動性(Interaction),更將環境背景轉到現實生活中,提升人們接受度。 然而,目前既有擴增實境之開發函式庫或開發平台,主要目的為提供擴增實境之應用開發,無法提供無標記擴增實境技術研究方法之驗證。故本文預計整合 ARToolKit、OpenCV 與 OpenGL 等函式庫,提出一個適合無標記擴增實境相關技術研發之驗證平台,且此平台各項功能採用模組化設計,以更彈性提供各種追蹤與辨識方法之驗證。1.3. 研究架構 本論文分為六章,第一章是緒論,介紹研究動機、研究目的和論文架構;第二章是相關文獻探討,介紹擴增實境之既有技術與相關研究,並對現有擴增實境開發平台做分析;第三章是現有開發技術分析,分析目前既有擴增實境開發套件;第四章是無標記擴增實境驗證平台建置,說明開發平台的設計架構;;第五章是結果與分析,介紹擴增實境開發平台之成果;第六章是結論,本文結論以及未來研究方向。 4
  16. 16. 2. 相關文獻探討 本章首先對擴增實境做一介紹,讓我們對擴增實境有所瞭解;然後提及將會應用到之基礎概念,最後則針對辨識方法做一簡短的介紹。2.1. 擴增實境介紹 擴增實境是一個結合真實、創意與媒體世界的科技,對於人類的科技應用與創新,將會是改變人們生活應用的關鍵技術。其初期主要以個人電腦當作運作平台,然而隨著智慧型手機運算能力的提升,許多研究也朝向這個平台發展。2.1.1. 擴增實境的源起 擴增實境,是一種即時運算攝影機影像的位置與角度,並在真實影像中加入虛擬物件的一種技術,此種技術之目的在於將虛擬物件融入真實環境之中,真實與虛擬可透過事先定義的互動行為進行互動,最後將其呈現在顯示器上。1965 年在哈佛大學擔任副教授的Ivan E. Sutherland[1],提出Ultimate Display的構想,使用電腦顯示三度空間中的物體,並與他的學生Bob Sproully在 1968 年建立了第一個虛擬實境與擴增實境的頭戴顯示系統[2][3],如圖 2.1所示。而在1970 與 80 年代,美國空軍阿姆斯壯實驗室、航太總署艾密斯研究中心也開始投入研究,直到 1990 年代初「擴增實境」這個名詞才被波音公司的幾個科學家正式提出[4],後續之文獻才不斷對其做更深入的定義與探討。 5
  17. 17. 圖 2.1 頭戴顯示器[2]。 對許多人來說,或許是第一次聽到擴增實境這一個名詞,然而另外一個名詞-「虛擬實境(Virtual Reality)」,相信一定不會感到陌生。在 1994 年PaulMilgram和Fumio Kishino等人[5],提出了「真實-虛擬連續性(Reality–VirtualityContinuum)」的理論,他們將真實環境和虛擬環境分別作為連續性的兩端,如圖 。其中靠2.2所示,然而位於兩邊端點之間的被稱為「混合實境(Mixed Reality)」近 真 實 環 境 的 是 擴 增 實 境 , 靠 近 虛 擬 環 境 的 則 是 擴 增 虛 境 (AugmentedVirtuality)。 圖 2.2 真實-虛擬連續性[5]。 以融入的程度來區分,虛擬實境與擴增實境仍有差異存在的,擴增實境提供一個複合式之景觀,讓使用者所見之場景為真假兼具;而虛擬實境則是一種 6
  18. 18. 完全融入之環境(Totally Immersive Environment),讓使用者的視覺、聽覺與知覺等,則必須完全在虛擬實境系統的控制中,系統必須模擬出一個涵蓋使用者各種輸入處理之完全人造世界,這是一個非常有挑戰性的議題。 在 1997 年 Ronald Azuma[6] 提 出 了 擴 增 實 境 是 由 虛 擬 環 境 ( Virtual 。所謂的虛擬環境技Environments, VE)所變化而來的(或者稱呼為虛擬實境)術是讓使用者完全沉浸在一個合成環境中,使用者無法看到在位於他周圍的真實世界;而擴增實境則在真實世界中複合疊加虛擬物件,換句話說,擴增實境允許使用者看到真實的世界。為此Azuma下了一個更明確的定義,它必須同時擁有下面三個特性:一是結合真實與虛擬(Combines real and virtual)、二是即時性的互動(Interactive in real time)、三是資訊的呈現必需在三度空間內(Registeredin 3-D)。2.1.2. 擴增實境的原理 有別於虛擬實境技術,是以假想空間將現實畫面完整重現於電腦畫面;而擴增實境技術,則是將實際資訊以虛擬方式重疊至現實環境,藉由將虛擬資訊融入真實環境以提高生活之便利。 在 2005 年Oliver Bimber和Ramesh Raskar的「Spatial Augmented RealityMerging Real and Virtual Worlds」著作一書中提出了擴增實境的基礎架構[51],如圖 2.3中所示 第一層的追蹤(Tracking)與定位(Registration) 顯示技術(Display 。 、Technology)和三維立體繪圖(Rendering)為基礎部分。第二層為人機互動機制(Interaction devices and techniques)、展示(Presentation)和創作(Authoring),如果與虛擬實境比較的話,目前虛擬實境技術則較為成熟。因為虛擬實境的大部分研究已經邁向此階段,而目前擴增實境則依然停留在基礎階段。第三層為應用程序,透過擴增實境之相關技術,有效的將結果呈現在使用者面前。第四層 7
  19. 19. 則是終端使用者。 User Application Interaction Devices and Techniques Presentation Authoring Tracking and Registration Display Technology Rendering 圖 2.3 擴增實境的基礎架構[51]。 關於追蹤定位技術,依據不同的應用範圍,將會採用不同的追蹤定位技術。以追蹤技術來說,有計算機視覺、電磁裝置、全球地位系統(Global PositioningSystem, GPS)、羅盤、迴轉儀(Gyroscope)等技術;對於影像處理技術來說,利用 計 算 機 視 覺 來 進 行 追 蹤 是 一 個 值 得 發 展 的 一 個 領 域 。 視 覺 追 蹤 (VisualTracking)又可以區分標記與無標記兩類。至於定位技術,主要是將追蹤資訊準確地呈現在裝置上。例如在擴增實境的應用中,將虛擬物件準確的取代真實影像中的被追蹤物件。 此外有別於既有的追蹤與定位,視覺追蹤技術採用了攝影機來當作輸入裝置,所以額外增加校準(Calibration)這一個部分,其主要是由軟體即時地計算攝影鏡頭的各項參數,例如視野範圍、感應位置與物件位置、歪斜率等等。所以,以視覺追蹤技術來說,可以分為追蹤、定位與校準這三個部分。 將視覺追蹤技術用於擴增實境應用,其基本運作流程分為四大部分,圖 2.4為標記視覺追蹤運作示意圖:(1) 從攝影機讀取標記物件之影像。(2) 分析追蹤物件之角度及位置,進行位置及姿態的估算。(3) 載入三維立體虛擬物件,並進行疊加作業。 8
  20. 20. (4) 將三維立體影像依據分析演算的結果,呈現在顯示器上。 讀取標記 標記物件偵測、 物件影像 分析標記物件之 角度及位置 在螢幕上呈現 擴增實境影像 載入3D虛擬物件 並進行影像疊加 圖 2.4 擴增實境的基本運作。2.1.3. 擴增實境的分類 在視覺追蹤環境下的擴增實境應用,受到影像辨識技術的影響極深,而在整個發展上可以分為標記與無標記兩大類,而各有優缺點,可依據用途選擇。標記定位技術較成熟及容易開發,而無標記定位技術也因為擴增實境之推廣,將更備受矚目。2.1.3.1. 標記系統 標記系統,是應用一個可以被可靠參考(Trusted Reference)的圖形標記,並稱之為基準標記(Fiducial Marker)是目前發展相對成熟的視覺追蹤技術。現有多個不同單位發展的基準標記系統(Fiducial Marker System),且各自擁有獨特的處 9
  21. 21. 理的方式,對系統效能及現場光源變化的反應程度各有不同。目前廣泛被使用的基準追蹤(Fiducial Base Tracking)系統是由Kato等人[7]發展出來並應用於ARToolKit,它提供相對可靠穩定建置應用的函式庫,圖 2.5為ARToolKit[72]常用之標記。 圖 2.5 ARToolKit標記範例[72]。 標記擴增實境系統必須經由特定標記、圖樣提供系統辨識及定位,除了函式庫所包含之標記外,也可以依據需求自行設計標記圖示,如圖 2.6所示。為了能夠準確的追蹤定位,ARToolKit[72]官方建議圖標設計的原則如下:(1) 在黑色正方形中間包含一個白色正方形,可參考套件所附之 blankPatt.gif 圖檔。(2) 白色正方形內之圖案採用黑色、白色或彩色來設計。(3) 白色正方形內之細部圖案最好為非對稱設計。 10
  22. 22. 圖 2.6 自行設計可用於 ARToolKit 之標記。 不同的開發套件之標記也採用不同的設計方式,如圖 2.7為ARTag[78]官方網站的應用介紹,可以從圖中看到其標記設計與ARToolKit之標記不同。依據ARToolKit[72]官方網站介紹,ARTag開發套件針對ARToolKit之標記部分進行修改,而運作原理則與ARToolKit相同。 圖 2.7 ARTag應用實例[78]。 QR Code(Quick Response Code)為另一種常見的標記,它是二維條碼的一種,在 1994 年由日本Denso-Wave公司發明[58]。其來自英文「Quick Response」 11
  23. 23. 的縮寫,即快速反應的意思,因為發明者希望QR Code可讓其內容快速被解碼。QR碼目前廣泛應用於日本,並為目前日本最流行的二維空間條碼。它在水平與垂直方向中都包含有意義之資訊,所以比普通條碼可儲存更多資料,亦無需像普通條碼般在掃描時需直線對準掃描器。 圖 2.8為透過QR-Code Generator[59]所產生之QR Code圖像,呈正方形,只有黑白兩色。在 3 個角落,印有較小,像「回」字的正方圖案,主要用於幫助解碼軟體定位,使用者不需要對準,無論以任何角度掃描,資料仍可正確被讀取。也因為辨識率高,所以有學者用它取代原本的標記,將其運用在擴增實境的應用上。Kan等人[8]在 2009 年就將QR Code結合擴增實境應用於商品之展示,如圖 2.9所示。 圖 2.8 透過QR-Code Generator產生之範例[59]。 12
  24. 24. 圖 2.9 QR Code結合擴增實境之應用[8]。 目前智慧型手機在擴增實境上的應用有越來越廣泛之趨勢,QR Code 搭配手機的應用也是行之有年,相信未來會有更多結合 QR Code 在擴增實境之相關應用被提出;不過,這只是整個擴增實境應用的一小部分,而有更大的應用將會在無標記的應用領域上。2.1.3.2. 無標記系統 有別於標記系統,無標記系統採用自然特徵追蹤(Nature Feature Tracking)當作基礎技術,不需採用特定之標記、圖樣來進行追蹤辨識與定位,使用者可以依據喜好自行設計圖樣或使用真實物件來達成追蹤辨識與定位之目的。在2004 年Gordon等人[9]使用不變的影像特徵來進行識別追蹤。Yuan等人[11]在2005 年提出一個廣義的擴增實境定位方法,運用此概念即可結合自然特徵追蹤方法來進行定位。關於無標記之特徵點辨識,常採用物件的紋理、顏色、輪廓等來當作辨識之條件。 德國Metaio公司之擴增實境開發套件Unifeye,在其白皮書中就採用圖形辨 13
  25. 25. 識來當作無標記應用之範例說明,如圖 2.10中所示,系統辨識出書中的圖形,立即在顯示器上顯示相對應的三維虛擬影像。至於實際運用,其並未侷限於平面之圖形,亦可採用實體物件當作追蹤辨識之特徵,只要有足夠之特徵可以供辨識即可。圖 2.11為樂高採用Unifeye所設計之擴增實境展示機,利用辨識相關圖示標籤與消費者即時互動,來將玩具之三維物件呈現在銷售機螢幕上。 圖 2.10 無標記擴增實境應用[83]。 圖 2.11 樂高擴增實境展示機[82]。 關於無標記的應用,通常需要伴隨著事前的辨識訓練,也就是針對不同之 14
  26. 26. 應用,需要不同的訓練,才能夠讓系統如預期般的運作;另外,對於不同之實體物件,也需採用不同的辨識方法,如此才能達到最佳辨識效果。雖然無標記之辨識能力不如標記來的成熟,然而其確有不可取代性。因為採用現實生活中之實體物件當作辨識物件,這樣就不必拘泥於既有的標記圖示,而其應用也會變的比較廣泛。不過目前之開發套件,只針對該套件提出之應用做有限度的支援;也因為如此,才需要更多的追蹤辨識技術加入擴增實境之領域。2.1.4. 擴增實境的呈現 擴增實境的呈現技術也是引導整個技術發展的很大原因之一,虛擬實境往往需要搭配全套設備一起使用,所以能應用的範圍給侷限住了;而擴增實境則希望將場景移往日常生活之中,所以要有輕便的相關設備才能得到大眾的青睞。從顯示方式的型態來看,1994 年Milgram等人[5]將擴增實境顯示器分為See-Through與Monitor-Based兩大類,並在混和實境中探討各種顯示概念;Vallino(1998) [12]依據此概念將擴增實境之影像呈現方式分為三類:(1) 一般顯示器之顯示(Monitor-based augmented reality display)。(2) 頭戴式之影視顯示(Video see-through augmented reality display)。(3) 頭戴式之光學投射顯示(Optical see-through augmented reality display)。 本文參考Vallino [12]之概念重新繪製圖 2.12~圖 2.15,這三類顯示器是目前已經成熟之技術。除此之外,目前亦有許多新式顯示器在開發,若將其運用在擴增實境應用上,對於擴增實境之推展有很大幫助,故本文亦介紹未來顯示器之發展。2.1.4.1. 一般之顯示器顯示型 以顯示器呈現,是將所有場景與虛擬物件採用顯示器方式來呈現,這是一 15
  27. 27. 種最簡型式的擴增實境系統,除了桌上型顯示器之外,還有一些手持式顯示(Handheld Display),例如智慧型手機和PDA就是現在非常常見到的行動顯示器,其顯示運作原理與傳統顯示器類似,故本文將這類手持顯示器歸類為一般顯示器類型,如圖 2.12為擴增實境透過顯示器呈現之示意圖。 圖 2.12 一般顯示器呈現原理。2.1.4.2. 頭戴式之影視顯示型 頭戴式之影視顯示型(Video see-through HMD),也就是所謂頭戴式顯示(Head-mounted Display, HMD),是一個具有外部影像擷取、定位,且能和電腦所產生的影像,以畫面重疊方式整合顯示之呈現系統。此種方式早已廣泛應用於虛擬實境領域中,而頭戴影視式顯示器,則是將最後整合畫面,以影視方式顯示於頭戴式顯示螢幕上。此種方式如同一般顯示器,空間的立體感會消失,如果運算上有所延遲,也會影響整個呈現結果,如圖 2.13為擴增實境透過頭戴式之影視顯示器呈現之示意圖。 16
  28. 28. 繪圖系統 頭戴型顯示器 攝影機 真實場景視訊 顯示器 3D虛擬物件 真實場景 使用者視景點 真實場景與虛擬 物件視訊整合 整合後之擴增視訊 圖 2.13 頭戴式影視顯示器呈現原理。2.1.4.3. 頭戴式之光學投射顯示型 頭戴式光學投射顯示型(Optical see-through HMD),其與前兩種方式不同;一般顯示器顯示型與頭戴式影視呈現型可以將真實環境影視與虛擬物件影像進行畫面重疊整合於單一顯示器上。而光學投射式,則不需要如此,它是藉由投影與真實場景融合,以減少影視所造成的失真,如圖 2.14為擴增實境透過頭戴式之光學顯示器呈現之示意圖。 圖 2.14 頭戴式光學投射顯示器呈現原理。 17
  29. 29. 從圖 2.15中可知其利用分光鏡將擴增實境之虛擬影像顯示在鏡片上面,而此時真實環境影像也透過眼鏡與虛擬影像整合並傳達給配戴者,這種方式不像影視顯示型會讓觀看者與真實世界脫離,但卻能提供相等的,甚至更真實之視覺模擬效果。 圖 2.15 光學投射顯示器原理。 關於這類產品已經可以在坊間搜尋的到,一家以色列公司Lumus就開發出了這種特殊的眼鏡,可以讓用戶來觀看電視、閱讀E-mail或者瀏覽股票行情等資訊,如圖 2.16為Lumus公司的產品資訊與運作示意圖。 18
  30. 30. 圖 2.16 Lumus公司的產品資訊[60]。2.1.4.4. 未來顯示器之發展 在 1977 年推出的「星際大戰(Star Wars)」系列電影中,莉亞公主發出的信息,被以全息圖(Hologram)的形式發送給絶地武士,如圖 2.17為星際大戰中之場景畫面。在「回到未來 2」電影中,也有呈現這種投影技術之情節。簡單地說,全息圖就是讓影像直接出現在空氣裡面,不管是二維還是三維影像都將栩栩如生地出現在空氣中呈現。對於這樣的技術,不管對於過去甚至現在來說,都是具有挑戰性,若在此技術成熟並普及在生活中後,擴增實境之應用也將更生活化。 19
  31. 31. 圖 2.17 第一部星際大戰中的場景[61]。 日 本 日 立 公 司 人 類 交 互 作 用 實 驗 室 (Hitachi Human InteractionLaboratory)[62]就有從事這方面的開發,如圖 2.18所示。其命名為Transpost,這套系統可以將二維圖像轉變成立體圖像,它能使人不用戴特殊眼鏡就能看到立體圖像,就有如星際大戰中的全息通訊系統。 圖 2.18 日立的Transpost系統[62]。 日本Aircord實驗室[63]也利用iPAD展示他們研發的N-3D立體顯示器,如圖2.19所示,用一個金字塔形的銀幕膠片來投射影像內容,讓人們直接使用肉眼 20
  32. 32. 從各個方向觀看立體影像。首先在iPad的銀幕上會顯示出多個動畫畫面,每一個畫面可以投射到透明罩的一個斜面上,經過光線的折射後,多個畫面將會在透明罩的中心部位整合,然後再經過多次的反射後,使用者就能使用肉眼看到這種立體畫面。此外,該系統不僅可在iPad上運作,亦可以採用投影設備來進行展示。 圖 2.19 N-3D立體顯示器[63]。 美國麻省理工學院的研究生Chad Dyne[64],也發明空氣投影和互動技術,並將其命名為Heliodisplay,它可以在氣流形成的牆上投影出具有交互功能的圖像,此技術來源是海市蜃樓的原理,將圖像投射在水蒸氣上,由於分子震動不均衡,可以形成層次和立體感很強的圖像。目前可以在IO2 Technology[64]中找到這個產品的相關資訊,如圖 2.20為實際展示影片畫面。 21
  33. 33. 圖 2.20 Heliodisplay空氣投影[64]。 除了上述所介紹的顯示器之外,目前還有眾多之顯示方式被提出,例如華盛頓大學(University of Washington)的Babak Parviz[65]在 2009 年時便在北京的BioCas研討會上展示一款可代替LED電腦螢幕、能將影像直接投射到視網膜上之隱形眼鏡,如圖 2.21中所示,左圖為隱形眼鏡電路與鏡頭,右圖為配戴在兔子眼睛上後的情景。不管這些新新的顯示技術目前的是否已經成熟,相信未來都會影響著擴增實境之發展。 圖 2.21 隱形眼鏡鏡頭[65]。2.1.5. 擴增實境的應用 眾所皆知,擴增實境的應用,正如火如荼地在各個領域中展開。可將其應 22
  34. 34. 用在教育、醫學、遊戲、軍事、維修、商業等各種領域中,而各個領域的相關文獻也都不斷被提及,甚至有些已經朝向商品化階段。 魔 法 書 為 Mark 等 人 [13] 在 華 盛 頓 大 學 之 人 機 介 面 科 技 實 驗 室 (HumanInterface Technology Laboratory)所進行之研究計畫。如圖 2.22所示,它是使用手持式之擴增實境顯示(Hand Held Display, HHD)方式,將虛擬物件與真實的書整合呈現,在人機介面操作上,則是以書籍、電腦搭配手持式顯示器,所整合之真實與虛擬混成環境,作為整個系統之溝通介面。若使用者並未使用任何擴增實境之嵌入式科技,這本魔法書就如同一般書籍一樣,使用者可以直接進行閱讀;若不同的使用者,在不同的角度分別使用手持式顯示器觀看書籍,在書籍的上方,則會出現配合書籍內容的虛擬主角、虛擬物件與虛擬場景,而且會隨著觀看角度不同,而改變呈現效果,從傳統實體書籍搖身一變成為立體多媒體書籍。當使用者翻閱不同畫面時,不同的場景與情節,將搭配書籍內容以即時改變方式,呈現在觀賞者的眼前。 圖 2.22 魔法書的應用[13]。 在教育學習上,可將其應用於數位學習,或者互動的幼教教材,甚至將其應用在以往較抽象的物理化學原理上。2007 年Bötschi等人[14]在有機化學的教學上,就針對採用擴增化學(Augmented Chemistry, AC)這一套有形的使用者介面與傳統BSM模型(Ball-and-Stick Model, BSM)這兩種教學方式做一比較。如圖 23
  35. 35. 2.23所示,圖(a)為使用背投影方式呈現擴增化學使用介面之畫面,右方圖示為使用右手操作來旋轉立方體,而在標記上方可看到分子結構;圖(b)為傳統BSM模型的教學設備,右方圖示為傳統BSM模型實際組合的分子結構。在 2002 年Shelton等人[15]將其應用在地球與太陽之運作教學上,如圖 2.24所示,左圖為使用者配戴頭戴顯示器操作畫面,右圖為使用者觀看頭戴顯示器之顯示畫面。這些教學方式可以讓學生有身歷其境的感覺,可以有效的提升學生學習興趣。 (a) (b) 圖 2.23 化學教學應用[14]:(a)擴增化學;(b)BSM模型。 圖 2.24 太陽與地球之運轉[15]。 24
  36. 36. 醫學科技不斷的提升,相信對於全體人民來說,這是一個很大的福音。除了外科手術應用上,對於沒有臨床經驗的醫護人員,亦可透過擴增實境的幫忙,來提升其操作上之相關經驗。Fischer等人[18]提出採用現有的IGS(Image GuidedSurgery)醫學設備,結合擴增實境技術來完成擴增實境在醫學手術上之應用。其利用攝影機追蹤標記,並透過醫療數位影像傳輸協定(Digital Imaging andCommunications in Medicine, DICOM)來取得電腦斷層掃描(X-ray ComputedTomography, CT)或核磁共振攝影(Magnetic Resonance Imaging, MRI)所產生之影像資料,最後透過擴增實境繪圖技術,將三維影像呈現在醫療設備上,如圖2.25為IGS結合擴增實境技術顯示MRI掃瞄之心臟三維影像。 圖 2.25 心室模型[18]。 在設備的維護上,寶馬汽車(BMW)便在汽車維修上應用擴增實境的技術。維修人員只要帶上一幅具有顯示功能的眼鏡,配合聲控功能,當維修人員對着汽車引擎時,眼鏡便會顯示出相關配件的位置及操作程序。不但省卻查閱操作手册的時間,亦減少出錯的機會。而Steve Henderson和Steve Feiner[19]指出,在複雜的維修作業中 透過擴增實境技術的幫助可以減少時間和精力的浪費 如圖 , 。2.26所示,透過擴增實境應用系統的幫助來對裝甲運兵車進行維修作業。相信此技術對軍方或民間來說,是一個很有用的一項技術,其不但可以節省訓練上的時間,亦可幫助維修人員迅速進入狀況。 25
  37. 37. 圖 2.26 裝甲運兵車維修作業[19]。 以遊戲的發展史來看,從早期挑戰人工智慧,進而發展到網路連線對戰,這代表著人們渴望彼此的互動。Wii Sport®[66]的推出,其利用偵測玩家的行為、力道、角度等,進而做出不同的回饋效果,這更是改變了以往玩遊戲的習慣。若在視覺上能結合擴增實境,讓整個遊戲融入到真實環境中,相信這將再次顛覆整個遊戲市場。日本Sony在 2009 年秋季推出適合全家大小一道同樂的虛擬寵物遊戲EyePet™[67],透過PlayStation®Eye攝影機搭配擴增實境技術,將EyePet融入真實環境中,讓玩家以臥房或客廳為舞台,與俏皮EyePet進行深度互動。 圖 2.27 虛擬寵物遊戲EyePet™[67]。 26
  38. 38. 以往對於已經消失的歷史古蹟,只能透過既有的圖片或文字來想像古蹟昔日的風貌,然而如果能結合擴增實境的技術,那麼可以在原遺址上,利用三維繪圖技術,進行虛擬原貌恢復。在 2001 年Vlahakis等人[20]提出將已經毀損的古蹟建築透過擴增實境之技術,在原址疊加古蹟原來的面貌。 (a) (b) 圖 2.28 損毀古蹟重建之應用[20]:(a)原址;(b)疊加虛擬模型之面貌。 在瀏覽博物館時,以往對於文物的介紹,只能從文字或者導覽語音來進行瞭解,若善用擴增實境之技術,不在只能透過語音方式來瞭解文物的歷史,而更可以透過互動方式,進行相關文物資訊的查詢與介紹,對於該文物有更深入的瞭解。2005 年Huang [21]提出利用電腦視覺技術來輔導參觀者與展場之間的互動,提升參觀者對展場的融入感與互動性;在博物館的應用中,利用擴增實境之技術來顯示文物資訊以增加參觀者的融入感,如圖 2.29為利用文物展示系統呈現之結果。 27
  39. 39. 圖 2.29 虛擬博物館系統[21]。2.1.6. 小結 從上述討論可知擴增實境之發展,是經過漫長歲月之洗滌,在相關技術相繼成熟後,才能有此佳績。未來其所能帶給人類之貢獻,是可以想像的,至於要怎麼樣運用此技術,更是相關研究人員該探索的,相信不久之將來,一定會有更多的探討文獻相繼提出,讓這個研究領域的技術融入生活中。2.2. 基礎概念介紹 要處理三維電腦繪圖,就必須先瞭解座標的相關知識,想要在二維的螢幕描繪出三維空間之物體,就必需要瞭解投影之原理。換句話說,三維物體之呈現是使用投射的概念,將三維圖形投影成二維圖形在螢幕上顯示出來。雖然投影成二維圖形,但為了讓此二維圖形看起來有三維的感覺,可以使用一些三維效果讓觀看者產生三維的幻覺。 這些看似簡單的觀念,其背後都有一堆數學算式作為基礎,簡單的來看待,就是需要在不同的座標系統間進行轉換,最後才能有一個滿意之呈現效果。 28
  40. 40. 2.2.1. 座標系統 對一個位置,通常需要給予一個固定單位的座標用來提供識別其位置所做,所以不管是二維、三維都需要統一的測量與定位方式;在三維圖形處理中將會使用多種座標系統,它們在各自的場合中有其獨特的地方,透過它們之間的轉換,可以簡化圖形程式之開發,然而不同座標系要如何轉換,就必需深入的去瞭解計算機圖學,常見座標系統有[53][55]:(1) 世界座標系統(World Coordinate System, WCS)。(2) 物體座標系統(Object Coordinate System)。(3) 觀察座標系統(Observe Coordinate System)。(4) 設備座標(Device Coordinates, DC) 系統與正規化設備座標 (Normalized Device Coordinates, NDC) 系統。(5) 螢幕座標系統(Screen Coordinate System)。 以下針對各個座標系統做一簡短介紹,首先介紹的是世界座標系統,世界座標系統是一個獨特的座標系統,因為世界座標系統建立了描述其它座標系統所需要的參考框架。從非技術意義上來說,世界座標系統所建立的是整個場景的最大座標系統,其它的座標系統都是參考世界座標系統來建立的。 世界座標系統也被廣泛稱為全局座標系統或宇宙座標系統。對整個場景中的每一個物體,它的位置和方向一般是指它在世界座標中的值,它是一個絕對座標,不會隨者觀察者方向之變化而改變。 物體座標系統適合特定的物體相關連的座標系統,也被稱為模型座標系統(Model Coordinate System)或局部座標系統(Local Coordinate System),對於場景中的每一個物體都可以有自己的物體座標系統,而且其和其它物體的物體座標 29
  41. 41. 系統是相互獨立的。圖 2.30顯示了物體與物體座標系統的關係,而圖 2.31則顯示了世界座標系統與物體座標系統之間的關係。 y-axis 物體 O x-axis z-axis 物體座標系統 圖 2.30 物體與物體座標系統[55]。 圖 2.31 世界座標系統與物體座標系統[55]。 物體座標系統在三維世界中處處存在,每一個物體發生移動或改變方向時,和該物體相關的物體座標系統,也隨之移動或改變方向,這將大幅簡化對 30
  42. 42. 各個模型的控制。 觀察座標系統是與觀察者相關的座標系統,也被稱為攝影機座標系統,在該座標系中採用右手座標系統,攝影機觀察點位於原點,X軸為右,Z軸為前,Y軸向上,而這裡的上方,並非一定是世界座標中的上方,而是指攝影機本身的上方,如圖 2.32所示。觀察者座標系在三維圖形處理中非常重要,它是聯繫三維世界座標系統與二維設備座標系統的橋樑。 圖 2.32 物件與觀察者座標系統[55]。 設備座標系統是與圖形設備的物理參數有關之座標系統;而正規化座標系統是獨立於具體物理設備的一種座標系統 其具有顯示空間和在 X 與 Y 方向上 ,都是從 0 到 1。對於每台物理設備而言,NDC 與 DC 是座標值相差一個比例因子,它可以看成是一個抽象的圖形設備。 最後是螢幕座標系統,其為顯示器的平面座標系統,它的座標原點位於螢幕的左上角,水平方向右為 X 軸方向,垂直向下為 Y 軸方向,以像素為單位。任何物體的頂點座標最終都要轉化為螢幕座標系統中的座標來進行顯示。 31
  43. 43. 2.2.2. 投影原理 在很久以來藝術家與建築師都試圖在解決如何用二維方法表示三維物體或場景這樣的一個問題,而其所面臨的問題在現今圖學的設計者也同樣面臨相同問題。而三維電腦繪圖的投影原理是一種由三維到二維的過程,利用二維座標來表示三維空間中的位置,在電腦螢幕上的像素仍然為平面的,也就是將三維笛卡兒座標轉換成可繪製在螢幕上的二維座標,如圖 2.33所示,為空間中之點P投影到投影平面P’之示意圖,P點的映射是由一條穿過P點並與投影平面相交之投影線來確定;而物體投影的結果取決於物體上一個個點進行投影所產生之投影線間之空間關係。 圖 2.33 投影問題[56]。2.2.2.1. 正交投影 正交投影(Orthographic Projection)是一系列用於顯示三維物體的輪廓、細節或 精 確 測 量 結 果 的 變 換 方 法 。 通 常 又 被 稱 作 平 面 圖 (Plane) 、 截 面 圖(Cross-section)、鳥瞰圖(Birds-eye)或立面圖(Elevation)。在平行投影中所有的投影線都互相平行並且有著相同的投影方向。此外,如果所有投影線都垂直於視 32
  44. 44. 平面,就會有正平行投影,即正交投影;否則就有斜平行投影,及斜投影(ObliqueProjection)。所以正交投影可視為平行投影一種,其方法為指定一個立方或長方體為剪裁體積以進行投影,剪裁區域外的物件皆不會繪製出來。其特點為「所有具有相同維度的物體不管遠近其大小皆相同」 。此種投影常用於建築設計,電腦輔助繪圖(CAD)或二維圖形上。指定正交投射的剪裁體積時,可以指定其遠、近、左、右、上與下方剪裁平面(Clipping Planes)。在此觀察區域內的物體會投射到螢幕的二維影像上,圖 2.34為正交投影示意圖。 圖 2.34 正交投影示意圖。2.2.2.2. 透視投影 透視投影的定義更為複雜。可以將其理解為透過攝影機取景器對於被投影物體進行觀察。攝影機的位置、朝向和視野都將影響投影變換的結果。圖 2.35為透視投影(Perspective Projection)示意圖,透視投影會使遠方的物體看起來比近端物體小,此種方法的觀測區形狀像是尖端被切掉的金字塔,切下來的部分 33
  45. 45. 稱為截頂錐體(Frustum)。靠近觀察區域前方的物體大小與實際大小較相近,但靠近末端的物體投射後會縮小許多。此種投射方式為虛擬與三維立體動畫帶來最佳的真實感。 圖 2.35 透視投射示意圖。2.2.3. 攝影機模型 在Learning OpenCV[52]書中提及針孔攝影機模型(Pinhole Camera Model)為最簡單之攝影機模型,其為一透視投影(Perspective Projective )的成像方式,如圖 2.36所示。想像有一光線是從很遠的場景或很遠的物體發射過來,但其實是來自於某一條光線。影像平面(Image Plane)是成像結果也稱為投影平面(Projective Plane),其中圖像是被聚焦。在整個成像的過程中,所選擇之投影中心(Projection Center)與影像平面(Image Plane)對於整個成像的結果有著決定性影響。這些看似簡單的觀念,裡面包含著許多座標系統之轉換,接下來就做一簡單之介紹。 34
  46. 46. 圖 2.36 針孔攝影機模型[52]。在圖 2.36中可看到兩個相似三角形,利用相似三角形原理推得: h H H  或 h  f f D D (2.1)其中各個參數說明如下:(1) f 是攝影機焦距。(2) D 是攝影機到物體的距離。(3) H 是物體實際高度。(4) h 是 Image plane 中物體的圖像高度。 將整個應用擴展到三維空間,並將整個光學軸(Optical Axis)往下移位,其目的在於消除負號,讓所有的計算都在光學軸之上。在基本的針孔攝影機模型中,將投影中心放置在歐氏座標系統(Euclidean Coordinate)的原點,並將影像平面放置在Z 軸上距離原點為 f 的位置。在此針孔攝影機模型之下,一個在三維空間的點 Q  (X, Y, Z) T ,其投影至二維影像上的q點,其中 q  ( x screen , y screen ) 。也就是由投影中心與三維座標點Q之連線和成像平面之交點,如圖 2.37所示。 35
  47. 47. 圖 2.37 針孔攝影機模型之投影關係圖[52]。 將座標為 ( X , Y , Z ) 之物理點 Q 映射到投影平面上座標為 ( x screen , y screen ) 之點q的過程稱為投影變換(Projective Transform),而齊次座標可把維度為n的投影空間上的點用(n+1)維向量表示;換句話說,二維平面投影空間,可以使用一個三維向量 q  (q1 , q 2 , q 3 ) 來表示該平面的點,如公式(2.2)所示,其中λ為一比例係數,因為投影空間上的所有比例不變,因此可以透過除以 q 3 來計算實際之像素座標值。 xq   q1  y    q  q  2 (2.2)f   q3    藉由前面所提之相似三角形的原理,可推算出三維座標點 Q  (X, Y, Z) T 投影 X Y到影像平面上之二維點 q  ( f , f ) T ,故可獲得從三維空間投影至二維空間之 Z Z映射關係。其中的投影中心又稱之為攝影機中心(Camera Center)或光學中心(Optical Center),Z軸稱之為主軸(Principal Axis),而主軸與影像平面的交點稱之為主點(Principal Point)。對於大部分影像呈現採用矩形而非正方形,故針對X軸與Y軸分別定義兩個不同之焦距 f x 與 f y ,透過公式 (2.1)推得投影平面上座標: 36
  48. 48. H Xx screen  f x    f x   D Z (2.3) H Y y screen  f y    f y   D Z 然而公式(2.3)是在假設影像平面座標系統之原點是落在主點之上。不過事實上並不完全是如此,其與主點的位置會有一位移存在,如圖 2.38所示。重新整理如公式(2.4)所示: Xx screen  f x    c x Z (2.4) Y y screen  f y    c y Z 圖 2.38 影像座標系統 ( x, y ) 與攝影機座標系統 ( xcam , y cam ) 。 從公式(2.4)中可知 c x 與 c y 分別代表x與y上的偏移量,不過為了便於後續討論,在此暫且將移位值忽略。接下來討論如何從攝影機座標系轉成影像座標系, 37
  49. 49. f將公式(2.2)重新定義表示成公式(2.5),其中   。 Zc xc  X c y    Y  c  c (2.5)f    Zc    將三維空間座標點與二維影像座標點均採用齊次座標系統來表示,整個三維空間轉換二維空間的投影關係以齊次座標之線性映射(Linear Mapping)重新表示成公式(2.6)。 X c  x c  1 0 0 0    y   0 1 0 0  Yc  c   Z  (2.6) f  0 0 1 0   c     1   將攝影機座標系以 Q c 表示,而影像座標系以 qi 表示。故非齊次座標可表示成公式(2.7),而齊次座標表示成公式(2.8),並重新整理公式(2.6)推得公式(2.9)。 Xc Ycxi  f , yi  f (2.7) Zc Zc X  f 0 0 0  c   f 0 0 0qi   0 0 0  c    0 0 0 Q c Y  f  Z   f  (2.8) 0  0 1 0  c   0  1  0 1 0    38
  50. 50. X  fX c   f 0 0 0  c   f 0 0 0 fY    0 0 0  c    0 0 0Qc Y f  Z   f  (2.9) c  Zc   0   0 1 0  c   0  1  0 1 0    其 中 三 維 空 間 點 表 示 為 Qc  ( X c , Yc , Z c ,1) T , 二 維 影 像 點 表 示 為q c  ( fX c , fYc , Z c ) T ,而中間 3x4 的矩陣以 M  diag ( f , f ,1)I | 0 來表示,並將其稱為攝影機投影矩陣(Camera Projection Matrix),則公式(2.9)可以簡化為公式(2.10):q c  MQc (2.10) 前面為了便於討論,將位移值忽略,若重新加入位移則公式(2.9)表示成公式(2.11)。 X  fX  Zc x   f 0 cx 0  c  fY  Zc    0 f cy 0  c  Y y   Z  (2.11) Z  0   0 1 0  c   1  再將其中攝影機投影矩陣的部分表示成下式: f 0 cx K  0  f cy   (2.12) 0  0 1  則公式(2.11)式可被表示成一更簡潔的形式如(2.13)所示,其中矩陣K稱為攝影機校正矩陣(Camera Calibration Matrix)。 39
  51. 51. q c  K I | 0Qc (2.13) 一般而言,在真實空間下的三維座標皆以世界座標系統來表示,而非以相機座標系統(Camera Coordinate),所以在這之間還有一個座標轉換的動作,在二個座標系統之間的關係,可用旋轉(Rotation)與位移(Translation)來轉換,如圖2.39所示。  ( R, t ) X w  Y  Qw   w  Zw     1   x q   y 圖 2.39 世界座標系統 Q w 與攝影機座標系統 Q c 之轉換圖[52]。 假設 Q 為一在世界座標系統下之三維座標點,齊次座標點以Q w  (X w , Yw , Z w ,1) T 表示;而 Q c 表示為在相機座標系統下之相對三維座標點,則Q w 與 Q c 之關係可經由一位移矩陣T與一旋轉矩陣R來表示,其中位移向量t表示攝影機在世界座標系統之位置,而R表示攝影機之方向,故將之表示成公式 40
  52. 52. (2.14):  R11 R12 R13 T1   X w  R R23 T2   Yw   R3 x 3 T3 x1   Rt  R22 RQc   21     Q w  0 T R33 T3   Z w  01x 3 1  Qw (2.14)  R31 R32  T 1  4x4       0 0 0 1  1 並將之導入公式(2.13)式,則可得 X w  f cx   Rt   Yw  0 Rq  0 cy  T    KRI | t Qw 1  Z w   f  0 (2.15)  0 0 1       1  公式(2.15)即為針孔攝影機模型一般的投影關係式,相機投影矩陣則為M  KRI | -t  ,其自由度(Degrees Of Freedom)為 9;其中K為 3 個 ( f , c x , c y ) 、R為3 個和t為 3 個。包含在K 矩陣之中的參數,稱之為攝影機之內部參數(IntrinsicParameter),而參數R和t則稱之為攝影機之外部參數(Extrinsic Parameter)。所謂內部參數是用來定義相機座標與影像座標之關係,而外部參數則是用來定義相機座標與世界座標之關係,可透過相機校正來獲得這些參數。 另外,在真實的感光耦合元件(Charge Coupled Devices, CCD)相機中,物理意義上的像素在X方向與Y方向之量值不一定為 1 比 1。換句話說,如果影像上的像素並非 1 比 1,則必須在X 與Y 方向各導入一個比例參數 (q x , q y ) 來做調整;因此感光耦合元件相機之相機校正矩陣K 可表示成公式(2.16)。 41
  53. 53.  fx 0 cx K 0  fy cy   (2.16) 0  0 1  其中, f x  fq x , f y  fq y 。另外,在感光耦合元件相機中,在物理意義上的像素也不一定是矩形,而 X 軸與 Y 軸有一歪斜的參數 s ,最後將整個完整的感光耦合元件相機校正矩陣表示為:  fx s cx K 0  fy cy   (2.17) 0  0 1  因此整個呈現過程是經過多重的座標系統轉換,若不考慮過多的參數,則針孔攝影機模型之投影可用公式(2.18)表示 對於整個攝影機之參數矩陣計算採 。用Heikkila和Silven[22]的方法,這也是OpenCV內部所採用之方法。 1 0 0 0  R  Rt q  K 0 1 0 0   T Qw  K R |  Rt Qw  MQw 1    0 (2.18) 0 0 1 0     重新整理各個參數說明如下:(1) 二維影像上的 q 點。(2) 三維座標點 Q。(3) 三維齊次座標點 Qw。(4) 三維攝影機座標點 Qc。(5) M 稱為攝影機投影矩陣。(6) K 稱為攝影機校正矩陣。 42
  54. 54. (7) R 稱為旋轉矩陣。(8) T 稱為位移矩陣。(9) t 稱為位移向量。2.2.4. 三維物件顯示 上一節介紹了針孔攝影機模型的運作原理,在三維電腦繪圖領域中,也運用類似的觀念,只不過其需要經過更多的座標系統轉換,這樣才能使物體以適合的位置、大小與方向顯示出來,依據OpenGL Programming Guide [53] 與Computer Graphics Using OpenGL[54]書籍整理座標系統轉換流程如圖 2.40所示。三維虛擬物件要有三維空間呈現之效果,其必須將三維物件透過相關的幾何座標轉換轉成人類所接受之座標,再利用投影變換矩陣來將影像轉換成二維影像,除此之外還需要仿造人類的視野來決定哪些影像將呈現在顯示設備上,除此之外,面對不同的顯示設備還有不同設備間之座標轉換要處理,整個詳細流程就不在此討論。 圖 2.40 三維虛擬物件呈現流程。 在擴增實境的應用中,要將三維虛擬物件融入真實環境之中,首先必須將三維立體物件仿造攝影機擷取影像的原理來運作,最後利用三維繪圖技術將真實環境與三維立體虛擬物件做疊加的動作,如此才能達到將虛擬物件融入真實環境之中。 43
  55. 55. 2.2.5. 小結 不論是將真實影像透過顯示器來顯示,或者利用三維電腦繪圖來呈現虛擬物件,實際上都是將影像在二維的螢幕中來顯示,其中三維虛擬物件之所以能營造出三維景深,主要是透過觀察二維影像所得。常見的效果便是物體遠近,將同樣大小的物體放在遠端與近端會有不一樣的大小感受,這種遠近的效果稱為透視法;另外亦可透過改變物件之顏色、色彩強度、材質、燈光以及陰影達到不同之三維影像效果。 不管擴增實境或三維繪圖技術,都無法脫離傳統二維的顯示方式,所以瞭解底層之幾何轉換是必要的,也是因為這些技術與三維效果之結合,擴增實境才可以將虛擬物件融入真實影像之中,而不會讓人感受到太過虛假之情境。2.3. 應用技術介紹 在前面兩節已經對擴增實境以及攝影機成相有所介紹,接下來將以技術層面來探討與分析,如何將虛擬的物件融入到一個真實環境影像之中。三維影像技術對於擴增實境來說是不可或缺的,而所謂之三維影像技術不單只有呈現真實度與複雜度的問題,還包括追蹤與定位的技術部分。換句話說,利用追蹤技術將物件從影像中分離出來,並透過幾何變換矩陣取得物件所在位置之座標,最後才將虛擬物件繪製在追蹤物件的座標位置上,有了這一系列的追蹤定位技術,才能在現實環境中達成與虛擬物件即時互動之效果。 從2.1節中有提到追蹤定位技術的概念,可以瞭解視覺追蹤在影像處理領域之重要性,故在此探討之追蹤辨識技術,將以此為主。擴增實境之標記追蹤技術已經非常的成熟,已經無須對其做深入之探討與研究;然而採用自然特徵追蹤為基礎之無標記追蹤,可以採用標記追蹤來當作開發藍圖,將無標記追蹤技術整合到擴增實境開發平台中。故此節將針對標記在擴增實境中的運作流程做 44
  56. 56. 一簡單之介紹,再來則介紹追蹤所需要之相關背景技術。2.3.1. 標記追蹤 目前廣泛被使用的基準追蹤系統是由Kato 等人[7]發展出來並應用於ARToolKit中,如圖 2.41所示,其透過座標轉換將標記座標轉換成攝影機座標,然後依據門檻值取得標記矩形之四條線段,接著偵測標記內之圖案並找到具體的對應識別ID,接著將標記位置透過向量矩陣轉換算出三維立體虛擬物件之位置,然後載入圖標識別碼對應之三維立體虛擬物件,最後在標記位置上繪製虛擬物件,運作示意圖如圖 2.42所示。 Yc Camera Screen Coordinates Camera Coordinates Oc Xc xc yc ( xc , yc ) Zc Marker Marker Coordinates Ym Xm (Xm,Ym,Zm) Zm 圖 2.41 標記座標與攝影機座標關係圖[7]。 45
  57. 57. 圖 2.42 ARToolKit 之標記追蹤定位流程。2.3.2. 前景物偵測 除了影像幾何座標轉換以及繪製虛擬物件之相關技術外,追蹤技術亦是擴增實境中不可或缺的重要關鍵技術之一,然而在影像處理研究領域裡,視覺追蹤也並非是一塊新的研究領域,不過也並非既有的所有視覺追蹤都能夠運用於擴增實境中。 在物件追蹤之前,首先必須能夠區分影像中的前景與背景,根據運動偵測技 術 的 不 同 , 常 見 的 移 動 物 體 偵 測 追 蹤 方法 有 三 類 , 分 別 是 背 景 相 減 法(Background Subtraction)、時序差異法(Temporal Differencing)與光流法(OpticalFlow Method)[23]。2.3.2.1. 背景影像相減法 背景影像相減法為目前在視覺監測應用上最廣泛使用的運動偵測方法,計算公式如(2.19)所示,其基本運作原理是先用一段時間建立一個初步的背景模 46
  58. 58. 型。然後,使用目前的圖像中減去背景圖片來偵測移動像素。其中影像片段中固定不變的部份視作背景,再將每一畫格上的像素與背景影像進行相減後得到差異強度影像,若差異大於給定之門檻值,則視該點為移動像素或稱之為前景,但它對不斷的明暗變化和移動的攝影機處理效果不彰。  I ( x, y ), if I k ( x, y )  Bk ( x, y )  TdFk ( x, y )   k (2.19)  0, Otherwise 其中 Fk ( x, y ) 代表第 k 個畫格時,前景影像 Fk 上點 ( x, y) 的灰階值,灰階值等於 0 就代表該點屬於背景; I k 為第 k 個畫格的影像; Bk 為第 k 的畫格時的背景影像; Td 為差異強度門檻值。 背景影像相減法最為關鍵之地方在於一開始如何從影像片段中擷取出背景,目前也已經有許多不同的方法被提出,最常見的有Longa等人[24]的採取訓練片段進行平均之平均法以及Lai等人[25]的統計每個像素上灰階值出現頻率之投票法。2.3.2.2. 時序差異法 時序相減法最大的優點是不必預先產生背景影像,其基本運作方式是將連續影像中的前後兩個畫格直接相減後得到差異強度影像,再配合門檻值分離出前景影像,如公式(2.20)所示:  I ( x, y ), if I k ( x, y )  I k 1 ( x, y )  TdFk ( x, y )   k (2.20)  0, Otherwise 其中 Fk ( x, y ) 代表第 k 個畫格時,前景影像 Fk 上點 ( x, y ) 的灰階值,灰階值 47
  59. 59. 等於 0 就代表該點屬於背景; I k 是第 k 個畫格的影像;Td 為差異強度門檻值。 由於時序相減法不需要使用到背景影像,適合在背景光影變化幅度較大的情況下使用,但是對於偵測物體的形狀和位置也有較大的誤差。2.3.2.3. 光流法 當眼睛觀察運動物體時,物體的景像在眼睛之視網膜上形成一系列連續變化的圖像,這一系列連續變化的資訊不斷「流過」視網膜(即圖像平面) ,好像一種光的「流」 ,故稱之為光流。光流表達了圖像之變化,由於它包含了目標運動的資訊,因此可被觀察者用來確定目標的運動情況。 光流法在模式識別、計算機視覺以及其他圖像處理應用中非常有用,它與運動檢測以及運動估計緊密相關。其定義為在連續的影像平面上,各個像素之亮度梯度。其原理是利用連續影像中各像素的亮度變化找出影像中的光流場(Optical Flow Field),再藉光流場估計移動物體的運動向量後進行特徵匹配。 光流與影像流最大的差別在於,當物體在空間中產生位移,連續的影像平面上會有影像流以及光流的發生。影像流是因為物體與攝影機之間的相對移動所造成的,光流則是由於物體的相對移動或是環境的亮度梯度改變而產生。 廣義的說,光流法就是指偵測光線強弱改變之演算法,也就是以影像梯度為匹配或追蹤基礎之演算法。最常被提及的兩種光流法,其中第一種由Lucas,B.D.與Kanade, T. [26]於 1981 年所發表的方法,它以計算簡單、快速且經過多年普遍應用,此法稱為Lucas–Kanade Optical Flow Method,簡稱LK光流法。另一種則由Horn, B.K.P.與Schunck, B.G.[27]於 1981 年所發表的Horn–SchunckMethod,簡稱HS光流法。在OpenCV函數庫中,其針對LK光流法分別實現了金字塔與非金字塔的LK稠密光流演算法;同樣的OpenCV亦提供HS光流法之演算法函式庫。 48
  60. 60. 在移動物體偵測追蹤方法中,光流法的優勢在於不需建立背景,因此適用於拍攝平台也會有運動的情況;然而光流法的計算方式複雜,運算量大,而且對於場景中的雜訊非常敏感,往往需要額外搭配專業之硬體設備來進行即時運算,故對於沒有強力運算能力之平台比較不適合。除此之外光流法也非能在各個環境中應用,下面整理了可能不適合的環境與可能會遭遇的問題[49]:(1) 光流法可能不適用之環境: a. 沒有灰值梯度變化的物體。 b. 光源移動造成所有物體皆產生光流。 (a) 在所有物體靜止的房間之內,理論上所有特徵皆無光流產生,但若 此時光源產生改變(移動、亮度、照射方向、色溫等),在改變的 瞬間所有受光源照射的物體皆產生光流,因此會造成錯誤的光流向 量。 (b) 如果物體在空間中靜止不動,但環境的光源發生改變時,由於物體 與攝影機之間沒有相對移動存在,自然也就不會有影像流的發生。 (c) 但環境光源的變動依然會使影像平面的亮度梯度發生改變,此時有 光流值的產生。也就是說當物體靜止,但環境光源產生變化時,影 像流為零,但光流值並不為零。 c. 已經維持在穩定旋轉狀態且無梯度變化的物體 例如已經維持穩定等速 。 旋轉的電扇,此時扇葉已狀似一個圓形的圖形,故不產生光流。(2) 光流法可能產生問題之狀況: a. 遮蔽(Occlusion)問題:在進入遮蔽區與脫離遮蔽區的光流很可能產生錯 誤向量。 b. 視野(Aperture)問題:若特徵的移動並未涵蓋在匹配的範圍之內,則向 量會指向視野範圍內最可能的位置,但並非正確。 49
  61. 61. 2.3.3. 物件追蹤 一般對影像之處理與分析,首先是利用物件追蹤(Object Tracking)的技術來追蹤動態物體,一旦追蹤到物體,就可以做進一步的肢體動作分析。而目前的物體追蹤是透過比對連續影像間物體的相似度來完成,於是物體特徵的擷取,相似程度的判別,目標物的搜尋,都涵蓋在此議題中。目前物體追蹤的方法可概分成四類[23][28]:區域式追蹤 (Region-Based Tracking)、主動式輪廓追蹤(Active Contour-Based Tracking)、特徵追蹤(Feature-Based Tracking)、以及模型追蹤(Model-Based Tracking)。2.3.3.1. 區域式追蹤 假設影像變動的區域即為目標物之位置 藉由偵測這些變動區域之位置來 ,追蹤目標物。通常利用目前影像與背景相減或者利用相鄰兩張影像間之差異來偵測出變化區域,然後再進一步的建立規則來做篩選、合併或分割。 此方法之缺點在於無法處理物體合併之問題,以取得物體之三維動作,且對於雜亂有變動之背景亦不適用。2.3.3.2. 主動式輪廓追蹤 主動式輪廓追蹤其方法是使用輪廓線(Contour)來描述移動的物體,並利用輪廓線之改變來進行追蹤,如Paragios等人[29]就利用這樣的方法來進行移動物件偵測。此方法的好處在於更有效率,且降低了複雜度,由於輪廓線是封閉曲線,即使物體交錯,也較容易解決。但其缺點仍然是缺乏三維的資訊,無法進行三度空間上的追蹤,且此演算法的追蹤效果對於初步輪廓的偵測或選取非常敏感,故較難用於全自動的偵測追蹤系統。圖 2.43採用主動式輪廓追蹤在高速公路上的偵測情形,從圖中可看出輪廓逐次縮小,最後達成追蹤之目的。 50
  62. 62. 圖 2.43 移動車輛輪廓偵測[29]。2.3.3.3. 特徵追蹤 特徵追蹤是利用物體的特徵來進行追蹤,首先針對要追蹤的物體擷取特徵,這些特徵可分為三種:整體性特徵(Global Feature Based),如重心、周長、面積與顏色等;局部性特徵(Local Feature Based),如線段、曲線段與頂點等;相依圖形特徵(Dependence Graph Based),如特徵間的結構變化等。當影像中目標物的低階特徵擷取出後,即可匯集成更高階的特徵資訊,利用比對連續影像間之高階特徵來追蹤該物體。 除了相依圖形特徵方法外,其餘兩種方法可以用來即時追蹤多個移動物體,利用運動特徵、局部特徵或相依的結構特徵來解決物體交錯的問題,但是使用運動特徵的方法穩定性不高,而使用局部特徵的方法則比較耗時費力。此演算法的另一缺點是,用二維影像對物體的辨識度並不高,且通常無法還原出物體的三維資訊。 若 考 慮 良 好 的 辨 識 效 果 , Lowe[31] 所 發 表 的 尺 度 不 變 特 徵 轉 換(Scale-invariant feature transform, SIFT)是一個選擇,它在空間尺度中尋找極值 51
  63. 63. 點,並提取出其位置、尺度、旋轉不變數,可用來偵測與描述影像中的局部性特徵且有很好的辨識效果,不過辨識時間需要比較久。 為了改善SIFT搜尋速度慢,Bay等人[33]提出SURF (Speeded-Up RobustFeatures),雖然找出之特徵點不及SIFT演算法來的多,不過其搜尋速度卻比SURF快上許多,也是目前常用之搜尋特徵點演算法。除此之外,針對SIFT提出 改 善 的 尚 有 Ke 等 人 [34] 所 提 出 的 PCA-SIFT(Principal ComponentsAnalysis-SIFT)與Morel 等人[35]提出的Affine-SIFT (ASIFT)等方法。 在實際的應用,除了採用改良的方法來縮短辨識時間,亦可利用硬體平台來加快演算速度,例如採用多核心之中央處理器或圖形處理器來進行運算處理,而SiftGPU[69]與GPU SURF[71]則分別是透過圖形處理器來完成SIFT與SURF演算法之例子。2.3.3.4. 模型追蹤 模型追蹤的方法將會提供較精細與準確的判斷,因此需要良好的物體結構模型,可加入物體本身之運動特性。所以,其比較不易受附近背景或其它物體干擾之影響,也較能對抗物體間交錯問題,所以相對地運算量也比較大。通常其追蹤的方式可分為「建立物體模型」「建立運動模型」與「預測和搜索策略」 、三個步驟。 模型追蹤的方法與前三者方法相比,有幾項優點。因為其取得之影像即為三維資訊,故不需要額外處理才能獲得三維資訊;並且利用先前的三維資訊,便可整合做為判斷下一個動作之根據,故縱使物體間互相交錯,也可以準確地進行判斷;除此之外,仍可應用於物體動作變化很大之應用。 52
  64. 64. 2.3.3.5. 追蹤技術之發展趨勢 如果只單靠一種追蹤技術可能會因為外在環境之影響,導致萃取之資訊與實際情況有所不同,例如在追蹤過程中找不到相似之處,或者因為交錯之遮蔽影響,結果導致被遮蔽物之部分資訊遺失,所以目前有相關研究結合多種追蹤技術,來確保其追蹤系統運作正常。 大部分的追蹤方法會搭配數學演算法,使系統能夠快速找到連續影像之間的相似處,例如卡爾曼濾波器(Kalman Filter)追蹤、粒子慮除器(Particle Filter)追蹤和平均移動(Mean Shift)追蹤。其中 Mean Shift 是利用影像色彩的直方圖來追蹤目標,但其對於快速移動物體之追蹤效果並不好;而 Kalman Filter 演算法受限於線性系統與高斯分佈的預測問題,在較多雜訊的狀況下,其追蹤失敗之情形將會提升。 為了解決這個問題,Tanizaki[36]提出了Particle Filter 演算法以貝氏機率的觀念,解決雜訊非高斯及非線性的問題,並且對快速移動之物體也有良好的效果。除此之外,還有從Mean Shift改良成之Cam Shift(Continuously AdaptiveMean-Shift)演算法,其主要通過視訊圖像中運動物體的顏色訊息來達到追蹤之目的。其運作原理為將輸入影像由RGB色彩空間轉換為HSV或HSI色彩空間,接著設定搜尋視窗並計算出搜尋視窗內之色彩分布直方圖,然後執行MeanShift演算法來計算结果,並將結果作為下ㄧ張影像執行MeanShift演算法之初始值。 在 OpenCV 中,除了提供 Kalman Filter 外,對於 Mean Shift 與 Cam Shift追蹤演算法也有提供完善之函式庫以供使用;除此之外,OpenCV 在 2.2 版中更實現了 FAST、STAR、SIFT、SURF 與 MSER 等多套特徵追蹤演算法,對於對於物件追蹤之開發,有著莫大之幫助。 53
  65. 65. 2.3.4. 擴增實境在追蹤辨識上的限制 由於不管是在標記或無標記之擴增實境系統中,在進行影像追蹤、辨識及定位時,其所使用之底層核心技術均為影像處理之技術,故應用上仍受到既有影像處理技術之限制,整理如下:(1) 環境光源: 由於擴增實境,是經由影像辨識在追蹤及置放三維物件,故在追踨及辨識 時,週邊環境光源,易影響其辨識效果。(2) 影像解析度: 攝影機的解析度易影響辨識及追蹤效果,解析度愈高辨識效果愈佳,反之 則愈差,然解析度愈高,相對所需之運算資源越多。(3) 對於辨識標記或圖樣之角度: 一般而言攝影機與圖樣平面的夾角以 90 度為最佳,然這樣將降低使用的靈 活度,故角度愈大靈活性愈高,相對的辨識效果愈差。(4) 辨識圖樣或物件之材質: 辨識圖樣與物件之材質,若為光面材質,易引起反光,將導致辨識效果變 差,故製造材質亦是考量因素之一。2.3.5. 小結 從前面幾節可以知道,整個擴增實境所運用到的之技術非常的廣泛,除了要對物件進行辨識與追蹤,而且在追蹤到物件之後,還必須透過座標轉換等相關計算來取得物件之座標資訊,最後才可以利用三維繪圖技術將三維虛擬物件繪製到顯示器上。然而這還不包含Guan 等人[37]所提及之物件遮蔽問題,否則將會運用更多之計算機圖學技術才能實現擴增實境之運用。 54
  66. 66. 3. 現有開發技術分析 因為擴增實境所涵蓋之影像技術非常廣泛,除了基礎的數位影像處理技術外,還包括了計算機視覺和計算機圖學,若沒有一個整合開發環境,相信所要涉略的領域將會非常的廣泛,所幸目前已經有眾多的開發平台提供應用程式開發人員採用。此章首先針對既有之擴增實境平台做一介紹,再依據本文採用之函式庫進行分析,並做一簡短的結論。3.1. 現有技術分析 擴增實境發展至今,已經有許多相關的開發平台,例如ARToolkit[72]、ARTag[78]等,這些開發套件也多採用標記方式來達成擴增實境的應用,以下將逐一探討。 ARToolKit為美國華盛頓州立大學Human Interface Technology Laboratory的Kato等人[7]使用C 語言所開發出來的一套擴增實境之電腦視覺追蹤函式庫,其利用視訊追蹤能力來追蹤已定義之標記,並在標記處繪製指定的三維物件。其解決了兩個擴增實境的問題-追蹤與虛擬物件互動的問題,然而僅能追蹤特定之標記物件。 在 ARtoolKit 套件推出後,有許多的開發套件架構在其上面發展出新的開發平台,其目的不外乎提供更多的創作與運行環境,例如 NyARToolKit 與jARToolKit 就是可以運作在 Java 上的 ARToolKit,除此之外 NyARToolKit 也支援 C#以及 Android 作業系統;FLARToolkit 則是 Flash 版本的 ARToolKit;而ARmagic 則是在 Windows 上運作的創作開發平台。當然這些新的開發平台依然侷限在 ARToolKit 所提供的能力範圍下。 ARToolKit Professional Edition[77]是ARToolKit商業化的版本,其結合了許 55
  67. 67. 多新的影像處理技術,並支援目前最新的影像串流技術(Video Streaming)協定,對於影像處理研究人員來說,其採用OpenCV來當作基礎架構,更是引人注目。對於研究人員來說,適合採用Development license的授權方式,因為此種方式可以讓研究人員長期在上面進行研究與發展;但是對於並非要進行商業行為的研究人員來說 此種方式可能需要較高的研究成本 但是它的NFT(Natural Features , ,Tracking)擴展套件提供對自然紋理表面特徵的追蹤技術,可讓研究人員開發出無標記之擴增實境應用。 雖然ARToolKit NFT套件可以發展無標記之應用,不過對於辨識之影像依然需要傳統標記當作辨識參考,此標記之設計必須是黑色邊框搭配白色或淺色背景,如果背景顏色並非白色或淺色,則在黑色邊框外必須額外添加白色邊框,如圖 3.1所示。至於辨識之影像周圍,至少提供一個標記來當作辨識參考,如圖3.2所示,值得注意的是這些標記沒有受到任何特定大小之限制。 圖 3.1 ARToolKit NFT之無標記應用範例[72]。 56
  68. 68. 圖 3.2 辨識影像放置於標記外之應用[72]。 從以上分析可以知道,雖然 ARToolKit NFT 號稱可以使用 JPEG 當作辨識影像,不過依然需要搭配標記使用,顯然與真正無標記還有一段落差。 ARTag[78]為Mark Fiala修改ARToolKit之標記偵測模組而衍生之開發套件,所以基本運作原理與ARToolKit相同;不過因為其著重在標記的辨識率及處理上,並且採用既定的標記函式庫,所以不必與ARToolKit一樣,需要載入標記文件檔,其聲稱相較於ARToolKit,其有較高的辨識率及較短的處理時間。雖然在標記辨識上優於ARToolKit,然而與ARToolKit同樣都屬於需要特定標記的函式庫,依然不適用於非標記的應用領域;但其建構在OpenCV函式庫基礎上,所以對於只需要標記影像處理的研究人員,可以採用此開發平台搭配OpenCV函式庫來實現擴增實境的應用。除此之外,其支援.wrl(VRML)、.obj(Wavefront,Maya)與.ase (3D-Studio export)這幾種三維模型的處理,相形之下只支援.wrl的ARToolKit就顯得略遜一籌。 ARToolKit Plus[79]為ARToolKit之延伸,除了功能性加強外,還可用在開發行動裝置之平台上,其辨識標記原理來自於ARTag之靈感。 Goblin XNA[80]為架構在ARTag之上的開發平台,其結合了ARTag 的辨識技術與XNA的電腦圖學技術。其採用C#當作開發平台的語言,有別於ARToolKit與ARTag等函式庫。 DART(Designers Augmented Reality Toolkit)[81] 是由Georgia Institute of 57

×