國立臺灣大學生農學院生物產業機電工程學系 碩士論文
Department of Bio-Industrial Mechatronics Engineering College of Bioresources and Agriculture
National Taiwan University Master Thesis
基於立體視覺之即時障礙物追蹤與避障方法
Real-time Obstacle Tracking and Collision Avoidance Methods Based on Stereo Vision
莊凱強
Kai-Chiang Chuang 指導教授:林達德 博士 Advisor: Ta-Te Lin, Ph.D.
中華民國 102 年 6 月
June 2013
誌謝
在生機所求學這兩年說長不長說短不短,能順利取得碩士學位實為可貴,心 中除了感激還是感激。能完成這篇論文首先感謝我的指導教授林達德老師,在我 碩一撞牆期時給我莫大的鼓勵,並不厭其煩的於求學階段點出許多小缺失以建立 日後嚴謹的研究態度,更提供了 405 的優質學習環境,使實驗室成為知識的黃金 屋。除此之外,特別感謝答應前來擔任口試委員的江昭皚老師和林聖泉老師抽空 給予指導。
兩年的研究生活中,感謝實驗室的夥伴們:十分感謝安智學長無論在計畫執 行、研究方法、做人處事方面都是個能夠讓我學習並欽佩的模範。感謝俞州、昶 志、嘉鴻學長們在口試前的這幾個月中,回想起你們那些名言錦句真是受用無窮。
感謝小六、笑點、宗誠學長姐,你們的學習態度讓我時時警惕且不敢懈怠。感謝 Flora 能給予英文上的諮詢,簡直就是一部活字典。感謝韋太在我遇到瓶頸時一 同殺出演算法的突圍,總是帶給實驗室無限的歡樂氣氛。感謝同屆的志軒在每個 熬夜的夜晚裡總是一同奮戰,並在由田比賽中隻手遮天擊敗對手。感謝大宇、金 毛、庭宇在實驗時的幫忙,因為有你們讓我在實驗室更快樂。
另外,感謝同屆的渝灃、佳倫、嘉臨,你們是我這兩年生活中不可或缺的重 要元素,一起娛樂、一起分享,讓我的求學生涯中增添了許多色彩。同屆的明宏、
小麥、哭哭以及許多生機系義氣相挺的人,在艱困的研究歷程中仍互相鼓勵互相 支持,有你們真好。
最後,感謝我的家人,在生活上能給予莫大的經濟及精神支持,讓我無後顧 之憂。
要感謝的人太多了不及備載,感謝在這兩年中出現的你們,是你們成就了我。
i
中文摘要
本研究以兩顆 CCD 攝影機建構一套雙眼視覺立體影像系統藉以作為車輛與 農業環境監控預警系統之應用。此系統將可計算出影像中像素的三維資訊,然後 利用此資訊投影至上視圖進行障礙物偵測,再設定幾何限制將障礙物標定於畫面 中。針對偵測到之移動障礙物影像,以巴氏距離 (Bhattacharyya distance) 進行結 合距離與色彩特徵的計算,再匹配以達到追蹤目的,追蹤到目標物除了可計算取 得運動的行進資訊與速度外,還可依此判斷該障礙物之動態行為作為警示作用。
除此之外,追蹤到的障礙物其座標位置將會被紀錄並利用卡爾曼濾波器 (Kalman filter) 進行軌跡預測。此外,先透過立體視覺對前方資訊進行地圖的建立,再藉 由 A* 路徑規劃演算法達到導航與避障的作用。綜合立體視覺系統所得到的環境 資訊,以抬頭顯示器之概念加以整合與顯示作為系統的避障模式。經過實驗驗證,
本系統已能成功應用於車輛導航和農業的即時環境監測,透過提出的適應性巴氏 距離和交叉比對方法在不同場景皆能達到 95% 以上的追蹤準確率,軌跡預測誤 差平均約 25 公分。在路徑規劃演算法 A* 的應用下,進行區域式地圖搜尋,其 搜尋範圍平均約 49% ,經實驗驗證能有效應用於即時導航。
關鍵詞:立體視覺、巴氏距離、卡爾曼濾波器、A* 演算法
ii
Abstract
In this study, a dual camera stereo vision system was built to apply in the pre-crash warning system of vehicle and agriculture environment monitoring. Based on this stereo vision system, the three-dimensional information of each pixel in the image can be estimated. Then, this information was projected to top-view so as to detect and mark obstacles according to some geometric limited. For these detected moving obstacles, we combined depth and color features and calculate Bhattacharyya distance to match different obstacles between the two continuous images in the video sequence. While the targets have been tracked, the motion models will be built. Meanwhile, the state of obstacles and their speed can also be estimated which is useful for warning. In addition, Kalman filter was employed in location prediction with these models, and then we achieve navigation and obstacle avoidance by means of A * path-planning algorithm.
Finally, the concept of head-up display design is applied to integrate with the above information ahead of vehicle, which can help users to make correct decision. After experimental validation, our system is capable of applying in the vehicle autonomous navigation and monitoring of agriculture. With the adaptive Bhattacharyya distance and cross matching methods, the experimental results indicate that the performance of target tracking is over 95%, and the trajectory prediction error is about 25 cm. Besides, local path planning technique can be conducted in real time vehicle navigation with 49% of map searching.
Keywords: stereo vision, Bhattacharyya distance, Kalman filter, A star
iii
目錄
中文摘要... i
Abstract ... ii
目錄... iii
圖目錄... v
表目錄... viii
第一章 緒論... 1
1.1 前言... 1
1.2 研究目的... 3
第二章 文獻探討... 5
2.1 立體視覺... 5
2.1.1 攝影機校正... 5
2.1.2 圖像比對... 6
2.1.3 計算深度資訊... 7
2.2 障礙物偵測... 8
2.3 目標物追蹤... 9
2.4 導航系統... 14
2.4.1 路徑規劃... 14
2.4.2 勢力場... 18
2.5 立體視覺的應用... 22
2.5.1 車輛上的應用... 22
2.5.2 農業上的應用... 24
第三章 材料與方法... 25
3.1 系統架構... 25
3.1.1 硬體架構... 25
3.1.2 軟體架構... 29
3.2 立體視覺... 31
3.2.1 攝影機校正... 31
3.2.2 立體視覺理論... 34
3.2.3 圖像匹配與像差影像... 36
3.3 障礙物偵測方法... 38
3.3.1 建立上視圖... 39
iv
3.3.2 團塊法... 40
3.3.3 設立障礙物條件... 42
3.4 障礙物追蹤方法... 42
3.4.1 特徵擷取與匹配... 43
3.4.2 適應性追蹤演算法... 47
3.4.3 速度估算方法... 50
3.5 避障模式... 51
3.5.1 建立權重地圖... 51
3.5.2 卡爾曼濾波器... 54
3.5.3 路徑規劃... 58
3.5.4 避障標誌辨識方法... 62
3.5.5 障礙物動態行為分析... 64
3.5.6 警示系統與導航... 66
3.6 系統驗證與實驗方法... 69
第四章 結果與討論... 71
4.1 立體視覺... 71
4.1.1 攝影機校正... 71
4.1.2 像差影像... 75
4.1.3 距離估測... 76
4.2 障礙物偵測結果... 77
4.3 追蹤方法探討... 83
4.3.1 不同特徵之追蹤效果... 83
4.3.2 背景影響... 86
4.3.3 障礙物速度估算... 87
4.3.4 適應性追蹤方法... 91
4.3.5 障礙物追蹤結果... 92
4.3.6 橫向移動與追蹤效果之探討... 96
4.4 避障模式... 97
4.4.1 卡爾曼濾波器之探討... 97
4.4.2 路徑規劃... 100
4.4.3 避障標誌辨識結果... 103
4.4.4 導航與警示系統... 104
第五章 結論與建議... 106
5.1 結論... 106
5.2 建議... 108
參考文獻... 109
v
圖目錄
圖 2-1 Mean-shift 示意圖 ... 13
圖 2-2 不同演算法搜尋範圍比較 ... 17
圖 2-3 兩種 Potential fields 行為模式 ... 19
圖 2-4 二維地圖中同時具有兩種行為的勢力場 ... 21
圖 2-5 具有兩種行為的勢力場以及移動軌跡 ... 22
圖 3-1 雙眼立體視覺系統 ... 26
圖 3-2 鏡頭穩定架 ... 26
圖 3-3 鏡頭穩定架設計圖 ... 26
圖 3-4 雙眼視覺之可移動式車架 ... 27
圖 3-5 攝影機架示意圖 ... 28
圖 3-6 系統流程圖 ... 30
圖 3-7 核心方法架構圖 ... 31
圖 3-8 校正物映射到影像平面示意圖 ... 32
圖 3-9 極限幾何解釋與物體距離關係之示意圖 ... 35
圖 3-10 像素比對示意圖 ... 38
圖 3-11 立體視覺系統之前方環境上視圖 ... 40
圖 3-12 距離與分層影像的關係示意圖 ... 41
圖 3-13 團塊處理後之上視圖 ... 41
圖 3-14 追蹤方法資訊流程圖 ... 43
圖 3-15 障礙物 (a) 含背景,(b) 不含背景 ... 44
圖 3-16 障礙物匹配示意圖 ... 46
圖 3-17 障礙物匹配值散布圖 ... 47
圖 3-18 追蹤失敗示意圖 ... 49
vi
圖 3-19 速度與匹配閾值之關係 ... 50
圖 3-20 避障模式示意圖 ... 51
圖 3-21 避障模式流程圖 ... 52
圖 3-22 高斯平滑化係數 ... 52
圖 3-23 膨脹運算使用的結構元素示意圖 ... 54
圖 3-24 節點八相鄰示意圖 ... 58
圖 3-25 進行路徑規劃的網格狀地圖 ... 59
圖 3-26 該節點經過其八相鄰到終點之成本 ... 59
圖 3-27 路徑規劃過程圖 ... 60
圖 3-28 路徑規劃過程圖 ... 61
圖 3-29 路徑規劃分類及其代表的標誌 ... 62
圖 3-30 避障標誌辨識流程圖 ... 63
圖 3-31 障礙物狀態示意圖 ... 65
圖 3-32 障礙物空間平滑化前後軌跡 ... 65
圖 3-33 立體視覺架設於車艙內之示意圖 ... 70
圖 4-1 校正用的棋盤方格影像,擷取自 (a) 左攝影機 (b) 右攝影機 ... 71
圖 4-2 攝影機畫面中心校正示意圖 ... 73
圖 4-3 校正前後比較圖 ... 74
圖 4-4 像差影像結果圖 (a) 原始影像 (b) SGBM ... 75
圖 4-5 立體視覺之距離估測誤差 ... 76
圖 4-6 障礙物偵測之結果與顯示方法 ... 77
圖 4-7 障礙物表現示意圖 (a) 簡單幾何形狀 (b) 輪廓 ... 78
圖 4-8 立體視覺之影像序列於農場中的障礙物偵測結果 ... 80
圖 4-9 立體視覺之影像序列於校園中的障礙物偵測結果 ... 81
圖 4-10 立體視覺之影像序列於市區的障礙物偵測結果 ... 82
圖 4-11 因距離相同匹配錯誤之結果 ... 84
vii
圖 4-12 因色彩資訊相似匹配錯誤之結果 ... 84
圖 4-13 結合距離與色彩資訊之結果 ... 85
圖 4-14 背景去除前後之結果 ... 87
圖 4-15 系統與實際相對速度之關係 ... 88
圖 4-16 速度估算驗證結果 ... 89
圖 4-17 障礙物速度估算實驗結果 ... 91
圖 4-18 適應性巴氏距離改良的結果示意圖 ... 91
圖 4-19 立體視覺之影像序列於校園中的障礙物追蹤結果 ... 93
圖 4-20 立體視覺之影像序列於校園中的障礙物追蹤結果 ... 94
圖 4-21 立體視覺之影像序列於市區中的障礙物追蹤結果 ... 95
圖 4-22 立體視覺在不同距離之水平偵測範圍 ... 96
圖 4-23 障礙物橫向移動實驗示意圖 ... 966
圖 4-24 卡爾曼濾波器探討 ... 99
圖 4-25 軌跡預測與實際軌跡的比較 ... 100
圖 4-26 左影像與路徑規劃結果 ... 102
圖 4-27 路徑規劃之地圖搜尋百分比 ... 103
圖 4-28 避障標誌辨識錯誤的例子 (a) 路徑規劃結果 (b) 辨識結果 ... 104
圖 4-29 避障與導航顯示介面 ... 105
viii
表目錄
表 3-1 硬體設備列表 ... 27
表 3-2 實驗相關參數 ... 48
表 3-3 速度不同的障礙物追蹤成功率 ... 48
表 3-4 卡爾曼濾波器演算法 ... 57
表 3-5 路徑規劃演算法 ... 61
表 3-6 HUD 避障模式資訊對照表... 68
表 4-1 攝影機內參數 ... 72
表 4-2 各場景中障礙物偵測的結果 ... 79
表 4-3 不同特徵之成功追蹤率 ... 83
表 4-4 不同影片之追蹤成功率 ... 85
表 4-5 單因子變異數分析之報表 ... 86
表 4-6 去除與保留背景之追蹤成功率 ... 87
表 4-7 障礙物追蹤於各場景相關資訊 ... 92
表 4-8 橫向移動於不同距離之追蹤結果 ... 97
表 4-9 避障標誌辨識結果 ... 104
1
第一章 緒論
1.1 前言
目標物追蹤在計算機視覺領域中是一個極為重要且具有挑戰性的主題。伴隨 著電腦運算速度的提升,以及便宜且易取得的攝影機,促使學者們紛紛投入並利 用自動化的動態視頻進行分析,至今已發展出許多目標物追蹤的演算法。利用影 像序列追蹤分析主要包含三個步驟:偵測欲追蹤之移動物體、由兩個不同時間所 捕捉的畫面進行物體追蹤、分析與辨識各障礙物之行為。目前追蹤物體技術已相 當成熟,應用的領域大致可分為六大類,分別為基於運動模式的物體辨識、自動 化監視系統、視訊索引、人機介面、監視交通狀況以及車輛導航等應用。
偵測及追蹤技術的應用伴隨著人並與安全息息相關,近幾年全球汽車工業發 展蓬勃,加上各國交通道路建設日趨發達,使得汽車的使用量大增,卻造成交通 事故經常發生,探究其原因多為駕駛人專注力不佳或是未注意其他車輛而造成擦 撞的意外,為了增加駕駛人的行車安全,主要車廠如 TOYOTA 公司,所出產的 新型車款皆將防撞安全機制 (Pre-Crash Safety, PCS) 列為重要配備,並開發車輛 避障系統。此技術以裝設攝影機、雷達、超音波等感測器最為常見,其中車商 VOLVO 公司利用雷射感應系統開發了車輛行人偵測系統 (Pedestrian Detection System, PCS) 以取得車前資訊;日本的 Mazda 車廠已將追蹤技術應用在車道偏 離警示系統 (Lane Departure Warning System) 並用以進行車輛導航;另外,先進 停車導引系統 (Advanced Parking Guidance System, APGS) 不但是令人耳目一新 的主動式停車輔助技術,也是目前國際大廠投入先進安全車輛的成果,其運用超 音波與影像辨識之感測技術偵測車輛周圍鄰近障礙物,再配合電腦計算之路徑引 導駕駛者以自動控制車輛進入停車格,以達到更安全有效率之停車動作。
想獲得環境資訊的方法有很多種,常見的距離感測器如紅外線、雷射、立體
2
視覺、超音波等且各有其優缺點,感測器種類的選定則端看其用途。超音波不受 物體顏色及光源影響,Elfes et al. (1987) 將機器視覺結合聲納應用在自走型機器 人建立室內環境時的障礙物偵測;軍事之海底深度的估測也常以超聲波來取得海 中物體的位置資訊;而雷射的高準確度應用受環境限制較少,Garcia et al. (2009) 以及 Guivant et al. (2000) 將雷射測距儀架設於車輛上於戶外進行地圖重建並導 航。立體視覺則是經由兩個攝影機組成並可得大量的環境資訊,包括物體外形,
顏色,明暗,陰影等,與上述之其他種類的感測器獲得較為單純的量測資訊相比 則有較豐富的環境訊息。一般而言,單顆攝影機能解決大部分簡單應用 (Liu et al., 2007),但應用層面多在於辨識、追蹤的部分,雖然特定狀況下可達到環境偵 測的功能,但僅限於嚴格定義下之空間環境,面對實際應用則相對困難。立體視 覺指的是裝設兩個以上攝影機,利用立體視覺原理依據兩攝影機之間距使得左右 影像有所差異,分析兩張影像之關係以獲得目標深度為主的資訊,此方法須仰賴 有效的圖像匹配 (Correspondence Matching) 以及極限幾何 (Epipolar Geometry) 演算法,同時也具有視覺偵測的優點。由於各種感測器之優缺點不同,近年來結 合多種感測器以獲得更大效益的探討相當廣泛 (Mockel et al., 2003; Wender and Dietmayer, 2007)。徐 (2011) 則結合雷射測距儀和數位單眼相機同時取得深度及 色彩資訊,於場景中多個位置運用馬達原地旋轉取景,獲得不同位置中 360 度的 空間及顏色資訊,將三維座標中坐標資訊的點雲 (Point Cloud) 投影至平面上將 色彩與點雲結合。
利用影像序列進行物體追蹤在近年研究尤為常見,主要為找尋前後兩不同影 像中物體的特徵點或具代表之物理特性做為匹配過程中的依據。Zhu (2011) 運用 尺度不變特徵轉換 (Scale-Invariant Feature Transform, SIFT) 來偵測與描述影像 中的局部性特徵進行匹配,以及色彩之密度函數為特徵的均值平均追蹤 (Mean- Shift) 演算法來搜尋影像中欲追蹤物體的位置。另外,Cohn et al. (1998) 利用光 流法 (Optical Flow) 在不同影像中,亮度恆定且物體運動位移相對小且為剛體運 動下等條件考量追蹤選定之物體。
3
農業領域中立體視覺也廣泛被使用。基於影像處理技術利用立體視覺計算作 物之高度及寬度等物理特性以便計算其生長率 (Chapron et al., 1993),另外 Billingsley (2005) 曾利用立體視覺偵測農場周圍之野生動物,以避免農作物遭到 破壞;立體視覺在農業上的應用範疇也包含追蹤技術,但早期攝影機並不普及 Ollis 和 Stenz (1996) 僅以黑白攝影機利用演算法及影像處理找出影像中收割機 的位置,來追蹤收割作物時的情形。
1.2 研究目的
在探討以上眾多文獻之後,許多感測器可獲得前方物體資訊,但各有其缺點,
雷射搭配單一攝影機難以將兩者完美結合,無法給予每個座標點正確的色彩資訊,
主要是因為攝影機無法提供深度資訊且必須知道畫面中每個像素所代表的實際 距離,攝影機與雷射之間座標轉換關係需精確才得以準確獲得前方色彩及深度資 訊。市上銷售之遊戲機使用之 Kinect 攝影機雖能同時獲得深度及色彩資訊但卻 受紅外線干擾而受限於室內的使用。而紅外線則是容易受各種熱源與光線干擾且 偵測的距離也有較大限制,須配合雷射使用但也造成成本上的增加。反觀,使用 雙攝影機以模仿人類的雙眼視覺系統,可達成立體成像和測距的目的,且攝影機 價格相較其他感測器更為廉價,故此方法較為合乎成本效益且不受限於室內或室 外等特定場景。為了能將立體視覺應用於農業監測與車輛安全上,本論文主要的 研究方向為三個部分:障礙物追蹤、避障方法,並以校園、市區、農場做為實驗 驗證的場景。以下利用條列的方式說明本研究之具體分項項目:
1. 由 1.1 節提及的文獻可知運用單一攝影機下所發展之演算法普遍可解決 部分追蹤問題,但現實情況常會遇到物體顏色相似度過高的情形,因此 單顆攝影機所提供的色彩資訊不足以解決這類型問題;然而各種距離感 測器則僅能提供片面的深度資訊而僅以此訊息卻無法有效追蹤多個並 排的物體,而此種情形尤為常見。因此,如欲同時解決上述之特殊情形
4
下的物體追蹤,色彩與距離資訊的結合是必要的。
2. 車輛對障礙物的安全避障與導航概念源自於機器人領域,強調在當了解 周圍環境狀況後進行正確的判斷跟規劃,自走車除了必須偵測前方資訊 之外,亦會利用路徑規劃 (Pathfinding) 進行避障與導航的功能。然而,
路徑規劃僅能將事先利用感測器所得到的環境資訊納入考量,因此先建 立 地 圖 (Grid Map) 再 根 據 目 標 方 向 與 定 位 引 入 價 值 函 數 (Cost Function) 作為演算法計算最小成本的規範。本文的避障方法將依據偵 測與追蹤到之障礙物進行動態行為判斷以及運動模型的建立,再利用演 算法達成障礙物的位置估測和路徑規劃,如此一來便有足夠資訊提供給 駕駛員進行行車安全的判斷達到警示之效果。
3. 立體視覺已有眾多發展卻鮮少將立體視覺同時應用於農業車輛與行人 偵測及追蹤上。因此,本研究之實驗場景主要以農業車輛安全上之應用 為主軸進行系統的驗證跟效能測試。
5
第二章 文獻探討
2.1 立體視覺
立體視覺為兩個或多個攝影機所構成,其主要藉由兩攝影機的像素來進行特 徵匹配以及計算深度值,為了減少左右兩影像特徵匹配上的難度,通常假設兩影 像的光軸為水平對齊的,然而不論硬體加工多精密,都會有些許誤差,因此必須 透過軟體來進行修正。
2.1.1 攝影機校正
在 3D 電腦視覺中,攝影機校正 (Camera Calibration) 指的是求取攝影機的 內在參數 (Intrinsic Parameters) 與外在參數 (Extrinsic Parameters)。前者可以用來 描述攝影機座標 (Camera Coordinates) 與影像座標 (Image Coordinates) 之間的 轉換關係,一般而言,攝影機內部機構與鏡頭不變動則內在參數是固定的;後者 則是用來描述世界座標 (World Coordinates) 其與攝影機擺放的位置和方向有關,
意指如果移動攝影機,其外在參數就必須再重新校正一次。一旦有了內外參數,
就可以從影像座標去推算三維資訊。
目前已發表過許多校正方法 (Zhang, 1999; Tsai, 1987),依據使用的校正物不 同而主要可分成四類:使用三維物體校正、自我校正、使用二維平面校正、使用 一維長度校正。
三維物體校正主要是使用 2 或 3 個互相垂直的平面來校正,由於校正物體在 三度空間須提供長寬高的幾何特性因此此種校正方法可以獲得非常精密的校正 結果,但缺點是需製作校正參考物體。
自我校正方法在 1997 年由 Hartley (1997) 提出,其方法只需一個固定場景,
不須利用任何校正物,而是以自然環境中至少三張影像中獲得的平面上對應的特
6
徵點,並分析其不同影像中的位置來校正。
二維平面校正是目前較常使用的方法 (Sturm and Maybank, 1999; Zhang, 1999),其製作的平面須不會任意扭曲,精準的棋盤方格平面,比起三維參考物可 說是簡易許多,使用者僅需拍攝該平面在各個不同角度的旋轉或位移所產生的影 像,即有足夠的資訊可求得攝影機的內外參數。
一維校正物是利用一長度已知的物體,固定一端並移動另一端來估測攝影機 的參數。其最大優點是對二維或三維校正當需要同時校正多台交互重疊之攝影機 參數時會需要校正點同時可以讓多組攝影機看到,較不易達成,而對一維校正法 來說固定端並不需要同時被多組攝影機看到,因此實際運用限制較少,此方法是 由 Zhang (1999) 提出。
以上所提及的四種校正方法,主要目的都是為了得到左右兩個影像平面之間 的旋轉、平移關係,再投影使之同時滿足光軸平行對齊的幾何限制以方便正確計 算出立體視差。
2.1.2 圖像比對
圖像比對主要是通過找出左右兩影像之對應關係,其技術被普遍認為是立體 視覺中最困難也最關鍵的問題,主要原因是左右影像有:光學失真、平滑表面的 鏡面反射、投影縮減、透視失真、低紋理、重複紋理、透明物體、重疊和非連續 的差異等問題。因此,是否找出正確的對應特徵點將直接影響最後計算視差的結 果,而後有許多研究都是針對對應點匹配的演算法做討論。
演算法依據其搜尋對應特徵點的範圍可分為區域性與全域性,區域性的方法 在比對時僅考慮特徵點附近的像素,處理速度較快但對於沒有滿足同軸幾何限制 的影像,容易發生比對錯誤;全域性則是搜尋整張影像的像素,相對的計算時間 較久,但適應性較好,較可修正誤差。
區域性方法中,匹配代價是圖像比對的基礎,實際是對不同視差進行灰階相 似性測量,常見的有灰階差的平方 SD (Squared intensity differences)、灰階差的絕
7
對值 AD (Absolute intensity differences),另外在求匹配代價時可設定一個上限值,
來降低之後累加的過程中因錯誤匹配造成的影響。疊加的目的是為增強匹配代價 的可靠性,而根據原本的匹配代價不同,可分為 SAD (Sum of squared intensity differences) 、SSD (Sum of absolute intensity differences)、NCC (Normalized cross- correlation)等,其中 NCC 是進行捲積運算,直接找出特徵值。在完成累加之後即 可獲得視差值,只需在一定範圍內選取累加匹配代價最好的點 (SAD 和 SSD 取 最小值,NCC 取最大值)。
全域性常見的方法是 Graph Cut,Boykov (2001) 將其運用在雙眼視覺的圖像 匹配上,其作法是將兩左右影像每個像素點都以向量連接,並由限制條件給予該 向量一個值,構成向量網圖,將特徵匹配從原本像素比較,轉換成匹配成功的數 量大小問題,進而得到的是考慮所有可能狀況後的最佳解,有效降低比對錯誤的 情況。
2.1.3 計算深度資訊
雙眼立體視覺三維距離量測是基於視差原理,由圖像匹配找出之左右影像對 應特徵點後可算出其視差,而攝影機在經過校正後,可獲得滿足光軸平行對齊的 幾何限制,只要已知攝影機焦距 f,以及利用經過校正及硬體上的設定所得的兩 基線之間距離,根據賴 (2012) 所使用的計算視差公式可得到以左影像中特徵點 的像素二維座標與真實空間座標的轉換關係,如下式
0 1 0
0 1 0
0 0 1 )
( L
L
R L
y x
x x
B y C
C x
C f C d
T Z
Y X
(2.1)
其中 TB 為基線向量,也就是兩攝影機之間的向量,x、y 為特徵點在左影像中的 像素座標。d 為立體視覺計算出的像差值,
xL
C 和
yL
C 分別是左右攝影機校正後畫
8
面中心 x 的座標
yL
C 則是左攝影機校正後畫面中心的 y 座標,f 為左攝影機之焦 距。
2.2 障礙物偵測
障礙物偵測是電腦視覺領域與影像處理過程技術上用來決定該物體是否屬 於特定狀況下我們所關注的目標。障礙物偵測的概念是用於主動搜尋一範圍中所 有資料,生活中較常應用的包含影像檢索、影像監控、汽車與行人偵測、道路安 全駕駛系統等。因此要如何從影像序列中找出特定障礙物是一個須努力的方向。
機器學習 (Machine Learning) 是一種設計和分析使計算機自動學習的演算法,並 從數據中自動分析獲得規律來對未知數據進行預測,有利於我們進行分類與判斷,
而監督式學習 (Supervised Learning) 是機器學習中的一種技巧,可透過訓練資料 中建立一個模式並依此模式推測新的物件。機器學習已有十分廣泛的應用,如計 算機視覺、生物特徵識別、資料探索、DNA 序列、指紋辨識等。因此,在進行機 器學習前最重要的步驟是障礙物的特徵提取,若能計算出屬於該障礙物之具有代 表性特徵,將可以節省偵測流程的複雜度並提升偵測的準確度。常見的特徵如直 方統計圖、物體方位、外型、紋理與色彩特徵,藉由萃取出的特徵並蒐集大量樣 本便可進行監督式學習。監督式學習方法包含類神經網路 (Artificial Neural Networks, ANN)、決策樹 (Decision trees)、Adaptive Boosting (AdaBoost)、支持向 量機 (Support Vector Machines, SVM) (Yilmaz et al., 2006)。
類神經網路是一個能夠學習並且可總結歸納的系統,由輸入層、輸出層、隱 藏層組成,運算是透過許多非線性的運算單元 (Neuron) 和位於這些運算單元之 間的眾多連結,以平行且分散的方式進行運算並輸出純量結果。透過訓練樣本的 校正以及統計學方法,可調整各層的權重並建立一個可表達局部空間結構的模型,
其過程稱為自動學習,此模型將是一個可自動偵測識別的系統 (Rowley et al., 1998)。
機器學習中,決策樹是一個預測模型,樹中的節點為每個可能的結果,而分
9
叉路代表可能的路徑,由樹的根節點到各個階層的葉節點僅會有單一輸出,可用 於分析數據,此為條件機率下的分類,透過此方法可分次處理較複雜的情況以達 最終分類結果 (Safanian and Landgrebe, 1991)。
AdaBoost 由 Freund and Schapire (1995) 提出,此種演算法是二元分類器,
並利用多個弱分類器,針對訓練樣本來學習,將每一回合最高的分類器取出,依 據誤差值給予適當的權重,同時也調高此分類器無法正確分類的樣本權重,如此 一來在下一回合的運算中,就可以針對這些錯誤分類的樣本去找較佳的分類器,
再將它取出,重複此循環,最後將這些被選出的弱分類器依權重累加,成為一個 能有效辨識的強分類器。
支持向量機是一種機器學習的分類方法,主要以統計學習的方式發展而成。
Boser et al. (1992) 提出利用非線性的分類法,藉由尋找兩個不同類別之間的最佳 分隔面來做分類,此平面為非線性,稱為超平面 (Separating Hyper-plane),此超 平面通常是選擇邊限 (Margin) 最大的平行線。其先利用已知類別資料進行訓練,
進而由這些訓練資料選出支持向量 (Support Vector),並以此產生訓練模型,然 後將以此模型對測試資料點進行分類。
2.3 目標物追蹤
視頻中影像序列在近年來的研究尤為常見,為了能夠將偵測到的障礙物進行 運動模型建立與預測或是畫出軌跡,需匹配各個不同時間的影像所偵測到的障礙 物。追蹤演算法以上一個物件資訊估測現在時刻目標物件的資訊,以及在畫面中 比對 (Match) 並尋找符合目標物件特徵的區域。常見的物體追蹤方法有點追蹤 (Point Tracking) 以及核心追蹤 (Kernel Tracking)。
首先我們必須初步決定目標物的位置,原先在影像視頻中我們對影像內容一 無所知,在固定攝影機的狀況下如果我們可以知道前後兩張影像之間的變化,就 可以將運動中的目標找出來。光流 (Optical Flow) 是關於視頻中的物體運動檢測 概念,用來描述相對於觀察者運動所造成觀測目標的運動,光流法實際是利用像
10
素點的強度隨時間的變化進而推斷出物體移動速度的方法,每一時間 t 皆以一個 三維 (x, y, t) 向量表示指定座標的瞬時速度。Lucas-Kanade (1981) 算法就是重要 的光流法之一,藉由假設在不同影像中,亮度恆定,不同影像時間間隔中物體運 動位移相對微小並且為剛體運動的條件考量之下,進行影像間選定之特徵的運動 模式估測與進行追蹤。若以I 代表亮度,式 (2.2) 為亮度恆定式,對被追蹤部分 像素不隨時間變化則進行微分
) ), ( ( ) ), ( ( ) ,
(x t I x t t I x t dt t dt
f (2.2) ) 0
(
t
x
f (2.3)
以時間連續的假設來說,在實際應用上指的是時間變化相對於物體運動需足夠小,
以一維空間為例,則
0
t I t x x
I (2.4)
Ix
x I
, v
t x
, It
t I
(2.5)
基於前述三種假設,實際上影像的亮度並非恆定,時間也可能因攝影機的設定不 符合假設,為了求得實際速度,便利用牛頓法進行迭代,使速度趨近最佳值。擴 展應用至二維空間則光流方程式如下
0
y t
xu I v I
I (2.6)
t
Tu I
I
(2.7)
其中
v
u u 為二維速度分量,
y x
I
I I 為二維光流分量,光流方向為
I u It
。
但是對於大多數的攝影機來說,大而不連貫的現象與假設是相違背的,因此需要 一個較大的窗口來捕捉大的運動,因此提出金字塔法將影像解析度降低,並由低 解析度至高解析度進行追蹤,以此提升追蹤的穩定度。
假設在初始的條件上,已初步知道目標物的位置後,我們可以將連續影像中 的目標物以各種方式描述,Yilmaz et al. (2006) 提出的通盤性介紹物體追蹤方法
11
介紹指出,追蹤障礙物的表示方法大致有點描述、簡單幾何圖形、物體輪廓、骨 架模型等。點 (Point) 方式是其中一種描述,點追蹤是基於目標物前一個時間點 的狀態包含了位置與運動的資訊,接著以點追蹤的演算法描述不同時間畫面間物 件點位置的關係以便進行估測,或是解決不同畫面之間的對應關係。要如何找尋 特徵點作為追蹤的點相當重要,這些點必須不易受雜訊的影響,並且在兩個正交 的方向上都有明顯的導數,此點又稱作角點 (Corner),至今已發展出許多尋找角 點的方法,如 Harris (1988) 利用灰階強度的二階導數矩陣以及 2004 年 Lowe 提 出的 SIFT (Scale-Invariant Feature Transform) 方法。卡爾曼濾波器 (Kalman Filter) 是一種點追蹤的方法,計算機視覺中常見其應用,其將目標位置、速度的測量值 利用動態信息將原始影像中具有的雜訊濾除,並估計或預測目標的位置。應用方 面如 1969 年阿波羅計畫中飛船的導航電腦便使用這種濾波器來預測軌道。卡爾 曼濾波器的基礎建立在高斯雜訊,並以式 (2.8) 描述系統物理狀態的線性隨機微 分方程式
k k k k k
k F x Bu w
x 1 (2.8)
其中Fk是作用在xk1上的動態矩陣,Bk是作用在系統uk的輸入控制模型,wk為 過程雜訊 (Process noise) 並假設為常態分佈變異數為 Q 且均值為零,對於時刻 為 k 真實狀態
x
k的一個測量狀態z
k可以下式 (2.9) 來表示k k k
k H x v
z (2.9)
Hk是觀測模型,描述狀態如何映射輸出,
v
k為觀測雜訊 (Measurement Noise) 為 常態分佈變異數為 R 且均值為零,而初始狀態至觀測狀態的每一時刻雜訊均線 性獨立。對於滿足式 (2.8) (2.9) 線性隨機微分系統,過程與觀測都是高斯白雜訊 (White Gaussian Noise) 條件,卡爾曼濾波器是最佳的資訊處理器,並可估算系統 的最佳化輸出 (Welch, 1995)。核心追蹤的核心 (Kernel) 指的是用來表現物體的外型,當目標物可以簡單 的幾何形狀如橢圓形或是長方形表示時,特徵就可以從此區域得到,此區域稱為
12
樣板 (Template),樣板是根據前一個影像中的目標物所建立的,可以是顏色或是 輪廓特徵組成,進而利用影像進行比對並找尋出與目標物件樣板相似的區域。平 均移動演算法 (Mean-Shift) 是一種利用已知物體樣板來進行追蹤的演算法。由 於早期在進行資料分析與估測中,非參數式的資料點密度之梯度運算上,常用的 方法為均值位移法,其特性是尋找資料群中的極值時,易於收斂並且其移動方向 皆會指向梯度最大的方向進行一對,以求得資料群的極值。因此特性,分別由 1975 年Fukunaga等人,Comaniciu and Meer (1999) 提出使用在影像處理之應用 中,並在文章中證明了 Mean-shift 算法在滿足一定的條件下可以收斂到最近的一 個概率密度函數的穩定點。均值位移法裡,假設有一組資料xi,其中有 n 個資料 點,存在於 d 維度之座標空間中,此資料可用一範圍為 h 之多變量核心密度估算 方法 (Multivariate Kernel Density Estimate) 可搭配核心公式K(x)且針對資料
) (i
x 建立模型,多變量核心密度估算可以表示為式 (2.10)
n
i
i
d h
x K x nh x f
1
) 1 (
)
(
(2.10)
在計算密度梯度前,先假設 )
( ' )
(x K x
g (2.11) 計算資料密度梯度及式 (2.10) 多變量核心密度估算公式 f(x)
之梯度 fK(x)
n
i
i d i
K h
x K x x nh x
x f x f
1
2 ( ) '( )
) 2 ( )
(
n
i
i
d i h
x g x x x
nh2 2 1( ) ( )
x
h x g x
h x g x x h
x g x
nh n
i
i n
i
i n i
i
i d
1 1 1
2
) (
) (
) 2 (
(2.12)
上式中包含了一個簡單的均值位移向量Mh。由上式可再結合Mh,重新以 f(x)
13
與梯度 fk(x)
表示Mh,如式 (2.13)
x h
x g x
h x g x x M
n i
i n
i
i i
h
1 1
) (
) (
) ( 2
)
2 ( x f
x f Mh h K
(2.13)
上式 (2.7) 可知,可以藉由正規化資料密度之梯度求得均值位移向量Mh,有關 Mean-shift 公式其含意如下圖 2-1 所示。均值位移法的應用式可將前一張影像所 偵測到之目標物進行影像像素灰階強度或色彩資訊的直方統計圖,等到下一個時 間點之影像進行均值位移法運算,找到相似的影像區塊區塊,藉以追蹤目標物。
在此計算方法中,若目標物在不同影像中有大小或角度變化時,將不易偵測到其 位置。
圖 2-1 Mean-shift 示意圖
為了改善此缺點,Bradski and Kaehler (1998) 將其改良,稱為Continuously Apative Mean-Shift (Camshift),針對均值位移法對於障礙物大小與角度改變而效能降低 的缺點進行改良。在此方法中在決定下次搜尋視窗位置時,Camshift 方法採用的 是當前目標物影像中計算其零階矩 (Zeroth Moment) 與一階矩 (First Moment) 來決定搜尋起始位置,零階矩M00定義如式 (2.14)
x y
y x I
M00 ( , ) (2.14)
14
另外,一階矩的計算如下
x y
y x xI
M10 ( , ),
x y
y x yI
M01 ( , ) (2.15)
00 10
M xc M ,
00 01
M
yc M (2.16)
其中,
( x
c, y
c)
代表均值搜尋視窗在新的影像中的起始位置。新的搜尋視窗大小 是由零階矩M00所決定,此方法最初應用在人臉追蹤上。結合了原本的Mean-Shift 演算法以及改良的適應性區域搜尋法,適應性區域法的使用過程是引用顏色的機 率函數概念,將每一個像素利用 Hue (H),Saturation (S),Value (V) 色彩模型中 的 H 分量進行色彩直方圖的統計,並以背景投影 (Back Projection) 方法找出該 目標物在下一個影像中的位置。搜尋視窗大小與當前的目標物影像之像素有關,因此可假設新搜尋視窗大小單位為 s,s 可表示如式 (2.17)
2 M25500
s (2.17)
根據當前目標物的影像大小可利用 s 來動態計算新的搜尋式窗大小為 s 的倍數。
如此重複執行即可達到連續追蹤物件的效果。
2.4 導航系統
2.4.1 路徑規劃
車輛對障礙物的安全避障與導航概念源自於機器人領域,強調在了解周圍環 境狀況後進行正確的判斷跟規劃,自走車除了必須偵測前方資訊之外,亦會利用 路徑規劃 (Pathfinding) 達到避障與導航的功能。然而,學者將路徑規劃稱為最 短路徑問題 (Shortest Path Problem),是研究圖形理論 (Graph Theory) 的重要問 題,各種最短路徑演算法的搜尋範圍跟方式亦有所差異,時間複雜度也不同,即
15
使路徑目標皆是最短路徑,但經過路段可能不盡相同,將其應用在即時資訊環境 中時,當環境地圖不斷改變,路段便會進行更新,以符合即時性的需求。Hwang (1992) 將路徑規劃問題所使用的演算法分成兩類:最佳解的最佳演算法;近似解 的啟發式演算法。前者顧名思義能夠找尋出最短路徑且獨一無二,是一開始最先 被提出來解決最短路徑問題的方法,但是最佳解演算法的時間複雜度隨著路網的 規模成指數成長,若要應用在即時導航系統上顯然不適合,因此啟發式演算法的 提出解決了此問題,能在有限時間內求得次佳解,於時間複雜度與正確性之間取 得平衡。路徑規劃演算法之中又以代克思托演算法 (Dijkstra’s Algorithm) 和 A*
演算法 (A-Star Algorithm) 的應用最為常見 (Ferguson et al., 2005; Yao et al., 2010),以下將進行此兩種演算法的說明。
Dijkstra’s algorithm 是路徑規劃演算法中最早被提出 (Dijkstra, 1959),面對 最短路徑問題時首先必須建立地圖,常用的表示法有格線地圖 (Grid Map) 和四 元樹區塊分割法,最後再根據目標方向與定位引入價值函數 (Cost Function) 作 為演算法計算最小成本的規範,而地圖將由許多節點所組成。假設任意兩節點之 間存在一條捷徑,或稱成本最少的路徑,則問題將可被簡化成最短路徑是由許許 多多個節點與節點間找出的最短路徑所組合而成,這種概念又可稱為貪婪法 (Greedy Method),指的是由各階段的區域最佳解 (Locally Optimal Solution) 累加 即可在最後找出全域的最佳解 (Globally Optimal Solution)。Dijkstra’s algorithm 的 演算過程首先先將地圖中所有的節點分成兩個集合 S 和 Q,分別放「已拜訪過點 的集合」以及「未拜訪過點的集合」,初始狀態 S 為空集合,起點 O 的成本標籤 為 0,記為L(O) 0;初始化時其他節點的成本暫時標籤為無窮大,記為L(i) 。
只要 Q 集合裡有未拜訪過的點,每次都會從集合 Q 中選出一個節點,此節 點必須是集合 Q 中暫時標籤L(i)最小值者,並將此點移到 S 集合中,其餘暫時標 籤便會隨時更新,直到所有的節點都從集合 Q 中轉移到集合 S,代表每條節線
) ,
( ji 都已經被拓展,拓展的概念為:若存在一條從節點 i 到節點 j 的節線,則從
16
起點 O 到節點 i 的最短路徑由節點( ji, )拓展一條從起點 O 到節點 j 的路徑,路 徑成本為L(i) w(i, j),如果小於目前L( j)值,則以L(i) w(i,j)取代L( j)。到達 終點D時,每條節線(i, j)都只被拓展一次。演算法結束時L( j)儲存的便是從起點
O 到節點 j 的最短路徑,如果路徑不存在,L( j)為無窮大。以下為上述描述 Dijkstra’s algorithm 的步驟:
Step 1: 起點 O 的成本標籤為 0,L(O) 0,其餘非起點的節點 i 皆設為暫時
標籤L(i) 。(i)為連結節點的節點集合,令iO
Step 2: 更新節點 i 的 中為暫時標籤的節點:L(j) min[L(j),L(i) w(i,j)]
Step 3: 在所有暫時標籤中選擇L(j) min[L(j)]及節點 j
Step 4: 令節 j 點為永久標籤且令i j
Step 5: 若iD,即為起點 O 到終點 D 的最短路徑,如果iD則回到 Step 2
經過上述說明可知不管節點數有多少,Dijkstra’s algorithm 都會拜訪所有的節點,
以時間複雜度為O(n2)來看,計算所花費的時間會隨節點數成指數成長。
A* 演算法在 1968 年由 Hart 等三人提出,以最佳解優先搜尋法 (Best first search, BFS) 搜尋地圖節點之路徑最佳方法,在此搜尋演算法中,只要其點與終 點之間有路徑存在,則保證搜尋出最少花費成本之路徑,並且導入了歐式距離作 為啟發式 (Heuristic) 距離估算方法,計算中繼點與終點的相對直線距離,以此 做為選擇下一節點的依據,相較於Dijkstra’s algorithm 全域性的地圖搜尋演算法,
A*演算法屬於區域式的地圖搜尋,雖無法保證找出最短路徑,但可提升運算速度 並有效降低時間複雜度,在實際應用上幫助是相當大的。由下圖 2-2 可清楚的看
)
(i
17
出白色部分兩種演算法的搜尋範圍之間的差異,而紅色線段為路徑規劃的結果。
在過去的研究,這兩種演算法的應用也不算少,總結本節的敘述說明傳統的 Dijkstra 演算法是一種全域性的地圖搜尋演算法,可保證找出最短路徑,曾應用 於智慧型車輛的避障與導航 (Li et al., 2009),但運算速度較慢使得實際運用較受 限制。隨著 A* 演算法的出現,試圖以較少的運算量找出適合的路徑,主要核心 為將全域式搜尋改良為區域式,可提升運算速度,雖然無法保證路徑為最短,但 提升運算速度的優勢使得 A* 演算法廣泛的被應用在機器人或車輛的即時導航 系統 (Yershov et al., 2011) 。然而,對於戶外地圖隨著機器人或是車輛的移動而 改變,除了須更新地圖外,也必須重新計算路徑即便 A* 降低系統運算量,然而 地理上的直線距離並無法反映現實的交通狀況而造成了戶外應用的限制,為了克 服此問題,Dynamic A* 演算法應運而生,簡稱 D* (Stentz, 1994),主要優勢在於 不用發現環境有些許變化就重新計算,提升了戶外環境的靈活性與適應性。針對 導航中的機器人需同時移動並隨時進行路徑規劃來說,D* 演算法是較佳的選擇。
然而,以相對靜態的路徑指引判斷來說,僅在特定的條件之下才執行演算法,因 此 A* 演算法即可達到良好的效果。
圖 2-2 不同演算法搜尋範圍比較 (a) Dijkstra’s algorithm,(b) A* algorithm
(網路資源)
18
2.4.2 勢力場
除了路徑規劃之外,在進行地圖建置以及路徑規劃演算法運算時,通常會逐 漸在空間中開發出一個無障礙的安全區域或稱為自由空間 (Free Space)。這種表 示方法引入不同於價值函數的勢力場函數 (Potential Function),而是定義地圖上 不同行為的梯度向量,這些梯度向量可視為能量場或勢力場。這種方法漸漸應用 在車輛行駛或機器人之避障與導航 (Koren et al., 1991; Jia et al, 2007)。
勢力場 (Potential Fields) 的概念是由 Andrews and Hogan (1983) 所提出的,
該篇文章所提出的方法是將障礙物施加一個排斥力於移動中的機器人,而終點目 標則施予一個吸引力。而後,在機器人領域逐漸成為一個廣泛被應用的路徑安全 規劃方法。相較於路徑規劃演算法來說,它並不是一種量化空間的方法,而是一 種利用向量或磁場概念來表示物體靠近時的趨勢,向量可幫助導航中的物體進行 速度變化和定位。Potential fields 根據性質分成兩種行為,如下圖 2-3 (a) 稱為目 標尋找行為 (SeekGoal Behavior),具有吸引力的勢力場,由許多周圍向量集合指 向中心圓圈的目標稱為目標勢力場,一旦進入到其勢力範圍,行駛中的物體便會 朝藍色目標移動。相較於吸引力的勢力場,圖 2-3 (b) 稱作避障行為 (Avoid Obstacle Behavior),具有排斥的勢力場,其向量集合由中心障礙物向外發散,排 除障礙物影響的半徑範圍之外,向量大小隨距離中心障礙物的遠近由零逐漸增加,
一旦進入到此影響範圍則會逐漸遠離中心障礙物直到向量大小為零。在進行導航 時二維環境會同時包含這兩種行為,障礙物可能隨時間地點數量也會不同。
19
(a) (b)
圖 2-3 兩種 Potential fields 行為模式 (a) Seek goal behavior,(b) Avoid obstacle behavior (Goodrich, 2008)
以一個物體在二維地圖進行導航的例子,我們可以想像勢力場是一種將現在 位置向量v[x,y]T映射到下一個位置[x,y]T的梯度向量的表現。首先我們 以分量 x 和 y 來定義圖 2-3 (a) 行為所產生的向量 v,步驟如下
Step 1: 定義(xG,yG)為目標的中心座標位置,r 為半徑。v[x,y]T代表 (x,y) 位置向量
Step 2:
計 算 位 置 與 目 標 中 心 點 的 相 位 角 以 及 距 離 , tan 1( )
G G
x x
y y
2
2 ( )
)
(x xG y yG
d
Step 3: 根據下列條件設定 x 和y 若dr 則xy0
若rdsr 則 x(dr)cos,y(dr)sin
20
若dsr 則 xscos,yssin
到此已經建立了梯度向量與座標位置的關係,當位置與目標中心距離 d 越小,
則驅動物體移動的力量越小,可由圖 2-3 (a) 看出箭頭長短的變化,當 d 小於半 徑 r 時向量大小等於零。而公式中的 s 則是代表勢力場的影響範圍程度,在影 響範圍最遠出有向量最大值,為一常數。同理,避障的行為模式也可以以梯 度向量來表示:
Step 1: 定義(xO,yO)為目標的中心座標位置,r 為半徑。v[x,y]T代表(x,y) 位置向量
Step 2:
計 算 位 置 與 目 標 中 心 點 的 相 位 角 以 及 距 離 , tan 1( )
O O
x x
y y
2
2 ( )
)
(x xO y yO
d
Step 3: 根據下列條件設定 x 和y
若dr 則xsign(cos),ysign(sin)
若rdsr 則x(srd)cos,y(srd)sin 若dsr 則xy0
根據上面式子以及圖 2-3 (b),可觀察出向量均以障礙物中心向外發散式的型態,
向量梯度隨著障礙物影響範圍由中心向外遞減,而座標位置落在障礙物單位圓 內則向量梯度趨近無限大。上式中 sign 為一個可根據不同座標位置回傳正負符 號的函式,為一常數,可用來調整障礙物勢力場的強度。
實際上地圖會同時包含上述兩種行為且障礙物種類不只一種,因此可依據 使用者根據不同障礙物設定影響之範圍。接著將探討如何結合多種勢力場,以
21
利應用在各種狀況,以圖 2-4 為例,一個二維地圖上擁有兩種不同行為模式所 結合而成的勢力場。根據上述兩種不同行為進行的向量分析後,我們得知目標 行為模式會產生吸引趨勢的Gx和Gy兩方向的梯度向量,障礙物行為模式對 影響範圍發散式的產生向量梯度Ox和Ox,因此只要經過向量的合成便可進 行運算,如下式 (2.18)
x x x
O
G
, y
Oy
Gy
(2.18)透過式 (2.18) 得到該勢力場的梯度向量x 和y ,如此便可計算出速度
2
2 y
x
v 以及方向 tan 1( )
O O
x x
y y
,若是將物體放在如圖 2-5 的勢力場,
便可看清楚出物體移動時的軌跡。
圖 2-4 二維地圖中同時具有兩種行為的勢力場 (Goodrich, 2008)
22
圖 2-5 具有兩種行為的勢力場以及移動軌跡 (Goodrich, 2008)
2.5 立體視覺的應用
2.5.1 車輛上的應用
近年來智慧型車輛的發展與多項產業相互關聯,並以車輛工程為核心。然而,
較多的前瞻性車輛工程藉由創新電子材料、感測裝置、生技燃料、油電混合技術、
燃料電池作為配備,逐漸降低傳統機械的使用比重。再加上保持行車距離裝置、
抬頭顯示器、智慧型主被動安全系統、車輛防撞系統、車輛定位導航系統等發展 為方向,以提升駕駛員行車安全並降低工作負擔與舒適車輛的智慧化,故許多汽 車廠商皆以此為目的開發各種技術。以下將針對目前市場中已開發的技術產品以 及立體視覺在車輛上應用的發展過程做說明。
在車輛領域中,所謂的立體視覺,是能夠感知空間物體的實際距離,通常以 影像處理技術來達成目的,其原理是利用兩顆攝影機擷取影像,並透過影像匹配 再根據幾何關係計算深度。早期的應用為單顆攝影機,所開發的技術通常會搭配 其他感測器的使用,如豐田汽車的撞擊警示系統 (Pre-Crash Safety System, PCS) 是利用汽車上裝設紅外線感測器與攝影機,以達到在一定安全距離內幫駕駛人踩
23
剎車的動作。著名車商 Volvo 公司針對行人安全研發一套應用雷射與攝影機的行 人偵測及完全主動煞車系統 (Pedestrian Detection with Full Auto Brake,簡稱 PDFAB),在必要時警告駕駛並預先加壓剎車。相較於單攝影機,立體視覺透過 多攝影機將影像資訊由二維擴增至三維,最常見於障礙物偵測功能的開發,透過 深度感知技術,獲得較精準的障礙物三維空間座標與相對位置,如 Subaru 公司 所推出之雙攝影機立體視覺的系統。未來除了繼續發展低成本、高效能的安全輔 助系統,並可根據外在的三維資訊,開發即時定位和地圖建構等技術,將其應用 在車輛導航。
立體視覺在車輛於道路環境的應用依照技術發展的過程可分為車輛偵測、車 輛追蹤、車輛行為分析 (Sivaraman and Trivedi, 2013)。早期的車輛偵測技術以裝 設單顆攝影機為主,可裝設於車輛來彌補後照鏡無法看到之車身附近的死角或是 特定區段的道路監控,主要技術可分為基於外觀特徵搭配機器學習方法 (Sun et al., 2006) 和運動狀態為基礎來偵測 (Diaz et al., 2008)。然而,基於物體於影像中 的運動來偵測物體的方法較外觀特徵來的普及,以外觀來偵測車輛須仰賴具有代 表性的特徵和機器學習方法,基於運動狀態的偵測方法則是透過物體追蹤、運動 狀態、軌跡預測等方法。兩顆攝影機構成的立體視覺除了保留了單顆攝影機擁有 的影像資訊外,更可得到深度資訊,其應用性也較高,逐漸取代了單顆攝影機。
為了能更進一步分析車輛的動態行為甚至預測車輛的位置,以追蹤技術為議題的 討論逐漸增加。根據穩定的偵測方法,再針對車輛於道路的運動模式使用不同的 預測器進行追蹤和預測,大致可分為三類:一般車輛行駛為線性運動之下的卡爾 曼濾波器 (Franke et al., 2005)、用來描述非線性的狀態如轉彎的行為,則用改良 前者的擴展式卡爾曼濾波器 (Extended Kalman Filter, EKF) (Barth and Franke, 2009) 以 及 擁 有 線 性 與 非 線 性 兩 者 運 動 模 式 的 粒 子 濾 波 器 (Particle Filter) (Catalin and Nedevschi, 2008)。當立體視覺的偵測與追蹤技術到達一定水準後,有 學者去探討車輛的運動行為,應用的範圍包含車輛在道路上的軌跡和速度 (Sivaraman et al., 2011)、十字路口上車流量 (Barth and Franke, 2010) 以及不同車
24
輛運動模型的建立 (Kasper et al., 2011)。
2.5.2 農業上的應用
隨著世界人口數不斷增長,糧食和農產品的需求量亦隨之增加,面臨此問題 要如何克服將是十分重要的。在台灣的早期,勞動力為農業重要生產要素與資源 之一,台灣農業勞動力曾在經濟發展過程中扮演重要的角色,隨著科技發展及技 術進步,機械化漸漸取代人力的農業自動化,優點是可以解決勞工短缺問題及改 善工作環境、提高農業生產力及產品品質、發展高科技農業及開發水準。立體視 覺在農業上的應用及文獻不勝枚舉,若根據農業上應用的功能來分主要有:定位 與偵測、追蹤與導航、量測。
立體視覺在影像中偵測目標物是最常見的應用,先利用演算法進行攝影機校 正之後便可根據立體視覺理論得到正確的三維座標。一般來說,利用雙眼視覺攝 影機進行偵測的主要流程依序為影像擷取、影像前處理、特徵擷取、偵測與影像 分割,為了從影像中取得感興趣的區塊,特徵的擷取和影像分割是很重要的。
Rovira-Más et al. (2005) 曾利用 Hough transform 找出作物線,也有根據作物的外 觀形狀及顏色做為特徵進行標定並採收的例子 (Ollis and Stentz, 1996; Lv et al., 2011 )。此外,農業工具機如曳引機或中耕機在田間進行播種或翻土的工作相當 普遍,尤其國外的農地通常面積較大相對工作時間長,因此有將立體視覺應用在 農業車輛的導航以協助駕駛員 (Kise et al., 2005; Rovira−Más et al., 2004)。
近年來,為了解決台灣農地面積狹小與颱風所造成的農業虧損的問題,集約 式栽種農作物方式的「植物工廠」日益發展,植物工廠透過硬體設備進行環境控 制與系統整合,以便進行生長環境與生育狀況的觀察,最終目的在於全年性的生 產栽培。林等人 (2012) 以立體視覺估算植物的面積與建立生長模型,並進一步 分析生長速率與環境因子的關係找出最佳的環境參數。除此之外,國外也有利用 立體視覺觀察溫室中植物的生長情形 (Tilneac et al., 2012)。
25
第三章 材料與方法
3.1 系統架構
本研究主要核心分為兩部分:獲得三維點雲和障礙物追蹤與避障演算法,獲 得三維點雲的方法是利用雙眼立體視覺系統,並進行像差影像的計算,在這之前 必須先將攝影機進行校正,校正包含消除徑向與切向的畸變,以及透過計算獲得 兩攝影機之間的旋轉平移關係,使之滿足同軸的限制。在獲得視差影像之後,再 進一步利用三角幾何關係推得影像中的每個像素點真實的世界座標。
一旦立體視覺獲得三維點雲後,利用影像處理技術與特徵比對的方法進行障 礙物的偵測與追蹤,將影像序列中各個感興趣的目標物找出並將其關係連結起來 同時記錄其座標資訊,並判斷目標物的動態行為。接著,藉由卡爾曼濾波器可進 行目標物的狀態位置預測,結合歷史與未來資訊後便可透過路徑規劃演算法進行 避障,如此一來則能有效指引駕駛員做正確的行車判斷。本節將依據硬體架構與 軟體上的系統流程圖做詳細說明。
3.1.1 硬體架構
本研究建立一套雙眼立體視覺系統,包含一組雙眼立體視覺機構、影像擷取 卡、以及執行軟體系統的桌上型電腦。雙眼立體視覺機構由兩個影像解析度 640
× 480 的攝影機組成,其鏡頭焦距為 16 mm,在理想的雙眼視覺系統中,在兩個
CCD 攝影機須於同一水平上,且光軸需平行且對齊之限制下,可確保校正與圖 像匹配的準確度並可減少運算時間,根據實驗經驗,每次進行實驗前必須進行鏡 頭校正。為了節省校正所花費的時間,設計一個鏡頭固定機構以避免鏡頭晃動需 再次校正的麻煩,如圖 3-3。影像擷取部分則是採用 USB 介面的四通道擷取卡並 連結至電腦觀測左右影像,如圖 3-1、3-2,詳細規格說明請見表 3-1。
26
圖 3-1 雙眼立體視覺系統
圖 3-2 鏡頭穩定架
圖 3-3 鏡頭穩定架設計圖