中 華 大 學

70  Download (0)

全文

(1)

中 華 大 學 碩 士 論 文

題目:基於DSP之影像導航實現

DSP based and implementation of image guidance

系 所 別:電機工程學系碩士班 學號姓名:M09501033 許士威 指導教授:駱 樂 博士

中華民國 九十八 年 七 月

(2)

基於DSP之影像導航實現

DSP based and implementation of image guidance

研 究 生:許士威 Student:Shih-Wei Hsu

指導教授:駱 樂 博士 Advisor Dr. Leh Luoh

中華大學

電機工程學系碩士班

碩士論文

A Thesis

Submitted to Institute of Electrical Engineering Chung Hua University

In Partial Fulfillment of the Requirements For the Degree of

Master of Science In

Electrical Engineering July 2009

Hsin-Chu, Taiwan, Republic of China

中 華 民 國 九 十 八年 七 月

(3)

基於DSP之影像導航實現

研 究 生:許士威 指導教授:駱 樂 博士

中華大學

電機工程學系碩士班

中文摘要

本篇論文的主旨為發展影像為主的智慧型自走車導航系統,利用 CCD 射影機 來擷取道路的影像。自動導航車輛在 1950 年代開始被使用,在相關的研究中,

大致分成環境資訊的擷取、行進路徑特徵點的抽取以及導航策略三個部份。本研 究中以德州儀器公司的 TMS320C6416 數位信號處理器,結合 CCD 影像擷取模組,

實作一個安裝於自走車的影像導航系統。影像感知部分是採用霍氏轉換去提升路 面邊緣辨識的強健性,導航策略是利用辨識出的路面邊緣資料,去設計車體控制 法則。本篇論文建立了一套影像導航系統,並實作在 TMS320C6416 數位信號處理 器,再以八種不同的場景做實驗,由此來驗證本研究發展的軟硬體即時處理的效 能。

(4)

DSP based and implementation of image guidance

Student : Shih-Wei Advisor : Dr. Leh Luoh

Institute of Electrical Engineering Chung Hua University

Abstract

The purpose of this thesis is to develop a image-based intelligent automatic guided vehicle system, which utilizes CCD camera to capture the road image. The automatic guided vehicles started use in 1950 and it is divided into three parts in the related research, which are the environment information acquisition, feature extraction as well as the guiding and navigation strategy. This thesis is based on a CCD image collection module and TMS320C6416 high-order VLIW digital signal processor of Texas Instrument to implement a image-based intelligent automatic guided vehicle system platform which sets upon the model car. The phantom sensation part uses Hough transformation to promote the edge of pavement identification robust, the navigation strategy is to use the information of edge of pavement material, and design the chassis control principle. This paper has established a set of image guidance system and materially applied in the TMS320C6416 digital signal processors, then does the experiment again by taking eight different scenes in order to prove the efficiency of real time software and hardware process developed by this research.

(5)

致謝

感謝指導教授駱樂老師這些日子以來悉心嚴謹的教誨,使我在做人處事及學 識經驗上獲益良多,亦在我遭遇因難與挫折時能適時給予指導與鼓勵,使學生能 順利完成研究,在這裡向指導教授獻上最誠摯的敬意與謝意。

感謝諸位口試委員:中科院副所長蔡德平 教授、明新科大曾仲熙 教授、明 新科大李迪章 教授、銘傳大學李棟良 教授以及中華大學駱樂 教授對論文內容 的指導與建議,使本論文能更加完備。

感謝電機所系統組全體學長、同學以及學弟的協助與支持。有了你們讓我研 究所的生活不會孤單,在我苦悶遇到挫折時有你們陪著一路相挺讓我由衷的感 激。

最後,感謝我的父母多年的栽培和兄妹們的鼓勵與支持,有了你們,才有今 日的我。

僅以此微薄的研究成果獻給所有關心我的人。

(6)

目錄

中文摘要...i

Abstract...ii

致謝...iii

目錄...iv

圖目錄...vi

表目錄...ix

第一章 緒論...1

1.1 研究動機...1

1.2 文獻回顧...3

1.3 章節架構...5

第二章 硬體介紹...4

2.1 引言...4

2.2 TMS320C6416 數位訊號處理器 ...8

2.3 VDB 影像處理擴充子卡 ...13

2.4 負重致遠自走車...18

2.5 系統平台規劃...19

2.6 本章結論...20

第三章 數位影像處理...21

3.1 引言...21

3.2 影像擷取...22

3.2.1 YIQ 影像模式...22

3.3 前處理...23

3.3.1 直方圖等化...23

(7)

3.3.2 中位數濾波器...24

3.3.3 侵蝕...25

3.3.4 膨脹...26

3.4 影像分割...27

3.5 特徵抽取...29

3.6 知識庫...31

3.7 輸出結果...31

3.8 本章結論...32

第四章 影像導航系統設計與實現...33

4.1 引言...33

4.2 影像導航系統設計...33

4.3 影像導航系統實現...37

4.3.1 CCD 攝影機基本參數 ...37

4.3.2 場景實驗...38

4.4 本章結論...52

第五章 結論...53

5.1 結論...53

5.2 未來研究方向...53

參考文獻...55

(8)

圖目錄

圖 1.1 AVCSS 相關研究之流程圖 ...2

圖 2.1 TMS320C6416 平台配置圖 ...9

圖 2.2 TMS320C6416 記憶體配置圖 ...10

圖 2.3 TMS320C6416 內部架構方塊圖 ...11

圖 2.4 CPU 內部示意圖 ...11

圖 2.5 影像處理系統架構...13

圖 2.6 VDB 配置圖 ...14

圖 2.7 VDB 平台示意圖 ...14

圖 2.8 影像擷取方塊圖...15

圖 2.9 影像顯示方塊圖...16

圖 2.10 FPGA 邏輯方塊圖 ...17

圖 2.11 益眾科技的負重致遠自走車...18

圖 2.12 負重致遠自走車 8051 電路圖...19

圖 2.13 馬達驅動電路圖...19

圖 2.14 系統平台規劃圖 ...20

圖 3.1 數位影像處理的基本流程圖...21

圖 3.2 影像基本單位...22

圖 3.3 直方圖等化...24

圖 3.4 中位數濾波器...24

圖 3.5 中位數濾波...25

圖 3.6 侵蝕...25

圖 3.7 矩陣 A 被矩陣 B 侵蝕...26

圖 3.8 侵蝕運算的實作方法...26

圖 3.9 矩陣 A 被矩陣 B 膨脹...26

(9)

圖 3.10 膨脹運算的實作方法...27

圖 3.11 侵蝕與膨脹運算...27

圖 3.12 Sobel Mask...28

圖 3.13 Sobel 運算 ...28

圖 3.14 邊緣連接運算...28

圖 3.15 直線參數示意圖...29

圖 3.16 累積陣列...30

圖 3.17 霍氏轉換找出影像中最長之直線...30

圖 3.18 累計陣列...31

圖 4.1 影像導航系統的設計...33

圖 4.2 影像導航系統的設計程式...34

圖 4.3 左轉模式程式流程...35

圖 4.4 右轉模式程式流程...36

圖 4.5 CCD 攝影機參數示意圖 ...38

圖 4.6 座標系對照圖...38

圖 4.7 場景一:牆角右轉...39

圖 4.8 場景一實驗圖...40

圖 4.9 場景二:牆角左轉...40

圖 4.10 場景二實驗圖...41

圖 4.11 場景三:樓梯右轉...42

圖 4.12 場景三實驗圖...43

圖 4.13 場景四:樓梯左轉...43

圖 4.14 場景四實驗圖...44

圖 4.15 場景五:樓梯邊緣...45

圖 4.16 場景五實驗圖...46

圖 4.17 場景六:右側凸角...46

(10)

圖 4.18 場景六實驗圖...47

圖 4.19 場景七:左側凸角...48

圖 4.20 場景七實驗圖...49

圖 4.21 場景八:實驗桌上...49

圖 4.22 場景八實驗圖...51

圖 4.23 智慧型自走車行走軌跡...42

(11)

表目錄

表 1.1 各感測器的優缺點分析...2 表 4.1 CCD 攝影機參數 ...34

(12)

第一章 緒論

1.1 研究動機

隨著科技不斷的進步,自動化的應用也愈來愈普遍,為了提高工作服務之效 能,也衍生出各式各樣用途的機器人,也越多的人投入機器人的研究領域發展。

人類希望有一天可以利用機器人,來幫助人類從事一些重複性、具危險性等工 作。由於機器人本身沒有足夠的智慧獨自完成一些複雜的任務,為了讓機器人具 有和人一樣可以適時做出適當的決策與智慧,所以必須在機器人上裝置感測器,

使其可以跟人一樣對四周環境有所感受以及偵測,再搭配演算法可以使機器人偵 測四周環境後有所行動,例如機器手臂、建築用的機器人、水下探勘的機器人、

處理危險物品的機器人、導盲機器人等等,皆有相當成功的例子[1-3]。在這些 研究主題中,一個很重要的核心研究主題就是影像導航技術。

影像導航技術另一個很重要的應用,就是智慧型運輸系統。智慧型運輸系統 ITS(intelligent transportation system)同樣是藉由先進之電腦、資訊、電 子、通訊與感測科技的應用,及透過所提供即時資訊的溝通與連結,以改善人、

車、路等運輸次系統間的互動關係,進而增進運輸系統之安全、效率與舒適,以 減少交通環境衝擊之有效整合型運輸系統。就美國ITS America之分類方式,ITS 大體包含七個子系統,其中一項便是先進車輛控制及安全系統AVCSS(Advanced Vehicle Control and Safety System)的發展。AVCSS之主要特色係利用感測器 協助人類感官功能之不足,減少危險之發生,同時提高自動控制之程度,從事更 安全、準確、可靠之控制,彌補駕駛人因判斷錯誤及技術不佳所造成的疏失與危 險。其相關的技術包含:防撞警示系統、自動停放車輛、車間與車-路間通訊、自 動車輛診斷、自動橫向縱向控制。圖 1.1所示為AVCSS的技術領域所涵蓋的範圍。

由於牽涉的範為龐大,所以本論文主要探討的研究方向以自動導航駕駛系統為 主。

(13)

圖 1.1 AVCSS相關研究之流程圖

在影像導航技術中,許多的感測器被用來擷取外界的環境,諸如:紅外線、

超音波、雷射、雷達以及影像。表 1.1為各感測器的優缺點分析。

名稱 儲存資料型態 應用範圍 優點 缺點

紅外線 點資料 測距或定位 價格低廉 反應範圍窄

超音波 點資料 測距或定位 價格低廉 反應範圍窄

雷射 點資料 距離量測 精密度相當高

且反應速度快

價格昂貴許多

雷達 空間立體資料 避障礙物及立 體路徑探測

適應特殊地形 對平坦道路無 法處理

影像 面資料 控制回授方面 能獲得較豐富

外借資料且價 格低廉

處理時間過長

表 1.1 各感測器的優缺點分析

其他如全球定位系統GPS(Global Positioning System)一般會搭配電子地 圖實現出車輛定位,但誤差方面稍來的大,約十至二十公尺,所以只能實現出大

(14)

致上的定位。另外,也有較特別的如[4],利用磁鐵的裝置來當作感測器,但此 缺點為須在路面埋設磁鐵裝置,成本也較高,對於一般道路並不適用。而近年來,

由於計算機的處理速度與影像感測器不斷提昇及成本的考量下,使得影像已被應 用在許多不同的領域中,尤其在自動導航的領域中,因為影像可提供較豐富的資 訊。而本研究就是特別著重在影像部份,在減低成本考量下,只利用一台CCD攝 影機為系統擷取室內道路環境的感測器,將道路環境中的特徵擷取出來,進一步 達成智慧型自走車,達到如同人類駕駛一般。

1.2 文獻回顧

在智慧型影像導航技術在未知的環境中,障礙物與自走車的相對關係是行進 過程中一個關鍵的問題。其中避障、導航及路徑規劃等一直是受到廣泛討論的問 題,同時感測器的應用成了智慧型自走車導航的關鍵。近年來,機器視覺在障礙 物偵測與導航方面的應用已逐漸扮演重要的角色。目前用於智慧型自走車導航的 方法已有不少的研究與應用,最簡單的方式是Petriu在1991年讓自走車沿著事先 在地面上規劃好的感應導引線(inductive guide wire)行走[5],而達到導航的 目的。類似做法,例如在地面上貼反光線或者在地底下埋設感應線。但利用感應 線的方式必須保持路面的清潔,否則感應線將無法正常作用而影響導航結果。同 時軌道上不可出現障礙物,否則將出現碰撞而造成無法預知的結果。另一種導航 方式則是Pagac, Nebot以及Hugh在1998年利用超音波或紅外線測距感測器來評 估周遭的環境,並建構出周遭環境的地圖,使自走車能藉此內建地圖做為導航的 依據[6-8],因為軌道非固定,故此種方法比起事先於路面上規劃路徑來得有彈 性。然而其缺點是在使用上會有檢測距離上的限制、較低的量測分辨率、以及需 要能反射的物體及反射的角度等問題。所以目前多數的研究中,有關機器人的定 位及障礙物的檢測均以影像視覺為主要的感測工具。本論文所採用的研究方法,

就是採用影像辨識或影像視覺技術。

由於電腦速度與性能之提升,影像處理技術已普遍被使用在智慧型自走車的

(15)

導航系統當中。在室內走廊上,由於環境較為單純,Beccari等人在1997年利用 環境中一些特殊符號的影像特徵做為導航的依據,如天花板、電燈等[9];或是Lee 在1999年利用走道與牆面間的邊線、長廊盡頭的消失點當作導航的特徵

[10,11],也能以全方位影像感測系統作為系統的視覺資訊[12,13]。而在戶外導 航方面,大多是以路面邊線或車道中央分隔線做為導航之參考依據,例如1998 年美國維吉尼亞工業大學Christine系統[14]與佛羅里達大學的C2系統[15],均 是在路面上標示出與路面形成強烈對比的白色線條,再利用攝影機追蹤地面上的 引導線以跟隨的方式達到導航目的。此法與在地面上貼軌道的原理相似,不同的 是將原來的一維感測器換成二維CCD 攝影機,困難度相對提高許多,但卻可以得 到更豐富的資訊。

另一不同設計方向是使用影像處理來偵測障礙物,需定義障礙物的特徵並由 影像中找出此特徵。Ohya於1998年[16]使用單一攝影機配合超音波感測器,將擷 取到的影像分成五個區域,算出每個區域的像素平均值,若此值超過門檻值,便 判定為危險區域並啟動避障行為。然而此方法必須為背景環境單純的,否則極易 發生誤判的狀況。Kyoung在1997年[17]則先讓自走車記憶環境中的影像,在行進 時將擷取到的影像與原先前儲存的影像互相比對,如果此區域產生差異則表示有 障礙物存在,但此方法缺點為需要大量的記憶空間。另一個偵測障礙物的方式,

則是Yuan在1998年對光流法(optical flow)作分析[18-21],光流法是利用連 續影像中各像數的亮度變話找出影像中的光流場,再藉光流場估計移動物體的運 動向量進行特徵匹配。此方式於動態障礙物偵測時有顯著的效果,但缺點是當障 礙物太小或靜止不動時光流分析將會失敗,而且光流分析必須同時處理大量的影 像,也必須加強雜訊的忍受程度。其實在智慧型自走車移動主題中,避免與障礙 物發生碰撞為一基本要求。若是環境已知,則可使用全域的路徑規劃。Hwang在 2003年提出起點和終點間找出一條最佳路徑,到目前為止也有許多演算法被提出 [22,23]。Latmobe在1991年[24]為了得到起點與終點的路徑,特別使用方格分割 法,先將整個全域環境以數個小方格涵蓋,接著判斷是否有物體落於規劃之方格

(16)

中,並記錄環境所佔據的方格位置,藉以找出可供自走車行走的格點,最後以二 元搜尋法找出起終點的路徑。[25-28]則藉由設計模糊控制器使自走車沿著牆壁 或保持於兩牆的中間行走,完成導航的動作。

在智慧型自走車自動導航控制系統中,本篇論文是利用影像處理為基礎,以 CCD攝影機為感測器,辨識室內環境的特徵點,建立自動導航控制系統架構。經 由具體實驗驗證,我們所發展之自動導航系統確實可行。

1.3 章節架構

本論文共分為五章,第一章為緒論,為國內外相關的研究文獻回顧,說明以 視覺為主的智慧型自走車自動導航系統的動機與目的與發展。第二章則說明智慧 型自走車所採用的硬體介紹,第三章是說明智慧型自走車影像辨識與導航的方 式,第四章為實驗結果,第五章為結論。

(17)

第二章 硬體介紹

2.1 引言

現在是一個數位的世界,大型積體電路(VLSI)的發展更造成了微處理機的蓬 勃興起,導致了高速度、高位元的數位訊號處理器的出現。其中最重要的里程碑 應是 1982 年由德州儀器公司(Texas Instrument)所推出具有哈佛(Harvard)架構 及硬體乘法器的定點式數位訊號處理器 TMS32010,從那時開始數位訊號處理理 論藉由電腦軟體以及 DSP 晶片的結合,才得以廣泛的應用在包括控制、醫學、汽 車、儀器和通訊等領域。

為 了 要 達 到 即 時 的 數 位 信 號 處 理 運 算 要 求 , 可 程 式 化 的 DSP 晶 片 (Programmable Digital Signal Processor)必定有其特殊的硬體架構與軟體指 令,以期能提高 PDSP 晶片的運算速度,PDSP 晶片主要的特徵可歸納有以下幾點:

1. 進階的哈佛架構 2. 具有硬體乘法器

3. 指令的管線(pipeline)操作 4. 特殊的定址模式

5. 特殊功能的 DSP 指令 6. 具有晶片內外記憶體架構

德州儀器公司自 1982 年推出第一顆數位信號處理器 TMS32010 以來,在 PDSP 晶片上已發展出應用領域非常寬廣的產品線:

1. C2000 DSP 以 C24X、C28X 為代表,提供工業上數位控制領域上的應用,

像馬達控制、不斷電系統和變頻器等等的應用,TMS320C28X DSP 在數位 控制上是此類型 DSP 中具有最好性能的 DSP,而 TMS320C24X DSP 則屬於 基本型的 DSP,如果設計者想要設計出高階且有效率的控制系統,可以 考慮此類型的 DSP,所以稱此類型的 DSP 為控制最佳化應用型 DSP。

(18)

2. C5000 DSP 以 C54X、C55X 為代表,這類型的 DSP 多用於消費性的電子產 品上,這類產品的特色是是輕薄短小,所以對電源的效率特別講究,新 一代的 TMS320C55X DSP 消耗功率更低,它的程式碼與目前應用非常廣泛 的 TMS320C54X DSP 是完全相容的,我們稱此類 DSP 為電源效率應用型 DSP。

3. C6000 DSP 以 C64X、C62X(定點數)、C67X(浮點數)為代表,這類 DSP 是 TI 目前最高性能的 DSP,主要應用在 3G 無線通訊、伺服機、高階影 像處理以及 3D 繪圖等領域上,TMS320C64X DSP 是 TI 目前最新一代且最 高性能的 DSP,它的性能比 TMS320C62X DSP 高出有十倍之多,本篇論文 所使用的數位處理器應用平台即是以此處理器來完成,而此類型 DSP 稱 之為高性能應用 DSP。

智慧型影像導航技術發展平台上,因為要針對影像方面做即時的處理與運 作,本篇論文採用德州儀器公司所出的 DSP TMS320C6416 為主要的發展平台,在 視 覺 擷 取 部 分 搭 配 德 州 儀 器 公 司 的 協 力 廠 商 提 供 的 影 像 處 理 子 卡 ( Video Daughter Board, VDB),而其中 DSP 是以量化數值處理,經由時間與數值取樣以 掌 握 資 料 的 精 確 度 , 舉 凡 快 速 傅 利 葉 轉 換 ( FFT )、 Z 轉 換 、 迴 旋 運 算

(Convolution)、相關運算(Correlation)、最小平方法(Least Mean Square)、

Kaiser Windows 以及有限脈衝反應(Finite Impulse Response)等數理方法均 可達到即時實踐的要求。

DSP 與微處理器最大的差異在 DSP 的匯流排是分開的,一個是資料匯流排,

一個是程式匯流排;而微處理器內部只有一個匯流排供資料傳輸與程式執行使 用;DSP 備有硬體乘法器,目前最快的可在一個指令週期完成 32-bit 乘 32-bit 的指令;微處理器是以微碼(micro code)來執行,遇到乘法運算指令時就得耗 掉好幾個指令週期,主因在 DSP 內部有較多的暫存器,微處理器暫存器較少,得 時常至外部記憶體搬資料來運算,DSP 指令具備重新執行功能,因此在數學運算 速度超越一般的微處理器。

(19)

2.2 TMS320C6416 數位訊號處理器

德州儀器出產的 TMS320C6416 發展平台有以下規格,相關的特性描述如下 [29,30]:

1. 512K Flash 以及 16MB SDRAM。

2. C6416 DSK CCS v2.2 IDE,包括快速 Simulators 並可利用 Analysis Toolkit 即時更新。

3. 每秒高達 600MHz 的執行速度,最高可達 720MHz 的時脈。

4. TMS320C6416 CPU 的 架 構 是 採 用 先 進 超 長 指 令 架 構 ( Very Long Instruction Word, VLIW),一個時脈最多可一次執行八個 32-bit 的指 令運算,其內部方塊圖如下所示,具有兩個乘法器以及六個算數邏輯單 元。

5. TMS320C6416 的每個邏輯單元有 32 個 32-bit 通用暫存器。

6. 1056Kbytes 的晶片內部記憶體(on-chip memory),晶片內有兩層快取 記憶體(cache memory),第一層分成程式碼快取(L1P Cache)以及資 料快取(L1D Cache)各為 16Kbytes,第二層快取(L2)則為不指定的 1024Kbytes。

7. 32-bit 定點式(fixed-point)數位訊號處理器。

8. 三個 32-bit 的計時器(Timer)。

9. 三個多通道緩衝高速串列埠(Multi-channel Buffered Serial Port, McBSP)。

10.兩個外部記憶體存取介面(External memory interface, EMIF),分別 是 EMIFA 及 EMIFB。

11.一個 32-bit 或 16-bit 的 Host Port Interface(HPI)。

12.除了 DSK 外,TI 還提供了一個功能強大的整合開發環境 Code Composer Studio(CCS),給 DSP 軟體開發者一個完整的開發環境,本篇論文的平

(20)

台製作就是利用此一工具完成。

圖 2.1 TMS320C6416 平台配置圖

圖 2.1 所示為 TMS320C6416 平台配置圖,在其配置圖上,有 JTAG 的接腳,

發展者可透過 JTAG 做系統除錯。整體的記憶體配置如下,影像子卡(VDB)在記 憶體映射的配置,是由 EMIFA 的 CE2 以及 CE3 對映,EMIF 得主要功能為提供各 種控制及時序介面信號,以連接各類型記憶體元件,做為 TMS320C6X 之外部擴充 記憶體。TMS320C6X 可以在不需設計外加控制電路情況下,直接連接的記憶體元 件類型包括:同步靜態記憶體(SBSRAM)[31]、同步動態記憶體(SDRAM)及非 同步元件如:非同步靜態記憶體(ASRAM)、ROM、FIFO[32]等。另外,EMIF 負責 管理外部匯流排,對四種來源的使用外部記憶體要求提供必要的服務,包括:程 式記憶體控制器、資料記憶體控制器、DMA 控制器以及其他共用外部記憶體的外 部元件。當多個使用要求同時提出時,EMIF 依事先設計的優先順序提供必要之 服務。本系統平台的使用牽涉的是對周邊裝置做存取的動作,因此主要的功能是 以 FIFO 為目的。

(21)

圖 2.2 TMS320C6416 記憶體配置圖

(22)

圖 2.3 TMS320C6416 內部架構方塊圖

TMS320C6416 的內部架構方塊圖如圖 2.3 所示,包括 CPU、內部程式記憶體、

內部資料記憶體、DMA 控制器、外部程式記憶體介面及晶片內周邊裝置(on-chip peripherals)。CPU 中包含八個運算單元及暫存器群組(register files),負 責資料傳遞及指令的執行,有關各部份操作原理可參考相關的資料手冊[29,30]。

圖 2.4 CPU 內部示意圖

(23)

圖 2.4 分別為 TMS320C64X 及 TMS320C62X/67X 的 CPU 內部示意圖,CPU 中共 有兩個運算單元組,各含有四個運算單元,分別稱為.L、.S、.M、.D 運算單元,

其中.M 運算單元為 16 位元乘法器,.L、.S、.D 運算單原則為數學/邏輯運算單 元,並且各具有特殊用途:.L 運算單元具有邏輯功能以及計數器;.S 運算單元 則是位元移位、branch 與控制暫存器交換資料;.D 運算單元是有產生 linear、

circular 位置,以存取外界記憶體資料。

另外,在 CPU 中共有兩組暫存器群組,在 C64X 有 32 個 32 位元暫存器,

C62X/C67X 有 16 個 32 位元暫存器;各暫存器可獨立使用,也可結合相鄰暫存器,

成為 40 位元的延伸暫存器。圖 2.4 中黃色標示區塊,主要是 C64X 及 C62X/C67X 的不同點,以.M 運算單元來說,加強後的架構每個周期可以一次執行兩個 16 乘 16 位元的運算,相當於 C62X/C67X 的兩倍。相同的概念,也可套用至其他的六 個運算單元;包含可以同時執行兩個 16 位元的加/減、比較、移位、最小/最大 及絕對值的運算。除此之外,同.M 運算單元中,乘法器可以一次執行四個 8 位 元的乘法運算;其他的六個運算單元,可以一次執行四個 8 位元的加/減、比較、

平均、最小/最大和位元擴展的運算。C64X 這些硬體上的擴充,主要在 8 位元和 16 為元的資料型態上。對於程式碼產生工具來說,這些擴充有很多好處,藉由 加倍暫存器及加倍資料路徑的寬度來符合之前的指令包裝,C6000 的編譯器能用 此結構來減少配置的限制,來改善其表現。這些增加的和其他的功能使得 C64X 比原 C62X/C67X 的結構好,能減少近 25%的程式碼。

總結來說,C64X 的程式碼是與 C62X/C67X 相容的,但在架構上卻對 C62X/C67X 的多處地方做了下列的關鍵性擴充:

1. 暫存器單元的增強。

2. 資料路徑的擴展。

3. 經包裝的資料處理程序。

4. 硬體上增加運算單元。

統整以上資料可知,在硬體擴充的設計上,C64X 比原 C62X/C67X 的結構加

(24)

強許多,處理速度方面也提升了一倍的效能。因此,更適合用來處理資料處理量 大的視訊、影像及語音方面的應用,以達到即時(real-time)的目標。以圖 2.5 的視訊影像為例,輸入的影像單元經由 S 端子或是 AV 端子接收攝影設備的影像 資訊,作相對的影像編碼處理,接下來是以數位訊號處理器作影像資料處理,這 方面的影用包括視訊會議、監視系統、影像處理等等,都可透過處理器來完成。

本篇論文實驗平台即是以這個架構為基礎,使用 TMS320C64X 處理器配合一個視 訊處理模組,對即時擷取的影像資料做影像特徵的抽取處理。

圖 2.5 影像處理系統架構

2.3 VDB 影像處理擴充子卡

VDB 是由德州儀器公司的相關協力廠商,針對影像處理、監視系統、數位視 訊編解碼器以及網路視訊方面的相關應用,都可藉由 VDB 的發展板子開發。VDB 支援以 TMS320C6201 EVM 或者 TMS320C6711 DSK 及 TMS320C6416 DSK 相容。因此,

可針對不同的使用需求,選用相關的定點或浮點 C6000 系列發展[33,34]。

VDB 發展平台的元件配置如圖 2.6 所示,包含視訊編碼器(video encoder)、 視訊解碼器(video decoder)、XILINX 公司的 FPGA、RJ45 的網路端子、S 端子

(25)

以及 NTSC 規格的輸出入端子。

圖 2.6 VDB 配置圖

圖 2.7 VDB 平台示意圖

圖 2.7 是 VDB 的系統方塊配置情形。以下把 VDB 各部分依功能分門別類的 做說明:

一、視訊解碼器(Video Decoder)

SAA715 是由 Philips 生產的視訊影像編碼晶片,不管是在小型的影音設備 如桌上盒(set-top box)、個人影像錄製設備,到大型的顯示設備等等,都有極

(26)

高的效能表現。視訊影像輸入容許 S 或是 NTSC 規格系列的類比輸入訊號,經過 SAA715 編碼晶片後,可以依照需求,支援 16-bit 或是 8-bit 的資料輸出格式。

二、視訊編碼器(Video Encoder)

SAA7013 是由 Philips 所生產的視訊影像解碼晶片,他可輸出 PAL 或者是 NTSC 系列的輸出訊號,可以把影像的 Y Cb Cr 影像格式,轉換成 RGB 格式系列 的類比訊號,或者也可以直接處理 RGB 影像資訊,將其直接解碼輸出 PAL 或者是 NTSC 系列的輸出訊號。而輸出的格式有幾種不同的選擇,Y:I:Q 可以採用 4:

2:2、4:1:1、4:2:0 以及 4:1:0 的方式來輸出影像;以 4:2:2 的取樣 格式來做說明,代表每當 Y 取樣兩次,I 和 Q 各取樣一次。在本篇論文中,採用 的影像格式為 4:2:2,因為人眼對光線的敏感度比較高,遠遠超過對顏色變化 的感覺,因此在這採用 4:2:2 的色素比例,同時也兼顧到資料量的多寡。

圖 2.8 影像擷取方塊圖

(27)

影像擷取如圖 2.8 所示,影像擷取後在 FPGA 裡面建立兩個 Line Buffer 分 別存放前一列以及目前列數的資料,當前一列的資料由 FPGA 透過與 DSP 的 EMIF 介面,把資料存取到 DSP 的記憶體後,目前列數的資料則存放到前一列的 Buffer,而下一列的資料再依序存取進來。影像顯示如圖 2.9 的示意圖,在 DSP 端依序存取顯示的影像資料到 FPGA 內部資料記憶體,藉由中斷控制資料透過 Encoder 端把影像輸出到顯示端子。

圖 2.9 影像顯示方塊圖 三、FPGA

VDB 選擇 Xilinx 型號為 XC2S200-5PQ208C 的 FPGA 晶片,處理時脈可達 200MHz,主要功能為提供一個即時數位邏輯功能以及在 Decoder/Encoder 和 DSP 間提供一個雙向傳輸埠存取介面(dual ported access interface),在邏輯處 理部分包括影像資料的擷取、傳送、儲存以及與 DSP 間溝通,都可藉由 FPGA 來

(28)

達成。圖 2.10 為 FPGA 邏輯方塊示意圖,以不同方向的箭頭表示每個單元資料 的資訊處理及傳輸所需的位元數。總括來說,其主要功能可區分為下列幾點:

1. Video Decoder 資料的取得。

2. 轉換並顯示 Decoder 的資料。

3. 以緩衝記憶區塊的方式儲存 Decoder 以及 Encoder 的資料。

4. 重置、中斷以及網路邏輯介面。

5. 可規劃的控制和狀態暫存器。

圖 2.10 FPGA 邏輯方塊圖

(29)

四、Ethernet Controller

使用型號為 LAN91C111 的控制晶片,這顆晶片是由美商半導體史恩希公司

(SMSC)所開發出來的,混合了類比以及數位訊號的元件,可操作 10/100Mbps;

LAN91C111 支援 32-bit、16-bit 或者 8-bit 的介面傳輸模式。

2.4 負重致遠自走車

本篇論文所使用的自走車模組為益眾科技(ICTec)的 A03-0501 負重致遠自 走車,如圖 2.11。此自走車是藉由 8051 單晶片控制馬達,如圖 2.12 以及圖 2.13,並具有利用超音波發射與接收判別與障礙物遠近。不過本篇論文單以影像 控制自走車前進與轉彎,所以上述感測器將拆除於此車輛。將此自走車上 8051 控制馬達前進、左右轉部分與 TMS320C6416 連接,由 VDB 擷取外界環境再經過 TMS320C6416 影像處理判別來決定自走車前進與左右轉。

圖 2.11 益眾科技的負重致遠自走車

(30)

圖 2.12 負重致遠自走車 8051 電路圖

圖 2.13 馬達驅動電路圖

2.5 系統平台規劃

系統平台選擇以德州儀器 TMS320C6416 DSK 搭配 VDB 影像處理擴充子卡與益 眾科技的負重致遠自走車完成。整個系統平台的規劃如圖 2.14 所示,首先透過 CCD 攝影機,經由影像單元擷取影像,把影像資料傳輸到數位訊號平台,抽取出 影像資訊的特徵點,並把影像資訊傳送給影像顯示單元;然後利用抽取出來的資 訊特徵點,控制馬達,使車子可以前進與左右轉。

(31)

圖 2.14 系統平台規劃圖

2.6 本章結論

本章介紹了本篇論文所使用的硬體以及軟體開發環境,下一章節將介紹程式 的設計與應用。

(32)

第三章 數位影像處理

3.1 引言

數位影像處理是將類比影像數位化後利用電腦進行分析,由於一張影像本身 包含了許多的環境資訊,因此,如何正確的抽取出我們所關心的特徵物體並加以 辨識,將是機器視覺的應用中,能否確實的替代人為視覺的重要關鍵,在本節中 即針對數位影像處理的方法做了詳細的介紹與討論。

一套完整的數位影像辨識系統從影像獲得到影像特徵抽取完成等過程,會因 應用的不同,而有不同的設計解決方法。在影像辨識系統的設計中,從一張影像 的獲得、前處理、分割、特徵抽取到輸出結果等過程[35],可由圖 3.1的處理流 程圖表示出。

圖 3.1 數位影像處理的基本流程圖

而在影像辨識的過程中,正確的分割影像並抽取特徵,可說是機器視覺系統 能否正確辨識特徵物體的核心部分。在以下的介紹中,將依據圖 3.1的流程圖架 構設計影像辨識系統,使其能正確的辨識出室內道路環境的邊界標記,並針對各

(33)

部分方塊內的處理步驟做詳細的介紹,及討論本研究中所使用的室內道路環境辨 識方法。

3.2 影像擷取

數位影像是由有限個元素組合而成的,每個元素以二維矩陣排列,且有特定 的位置及數值,稱之為像素(Pixel),為數位影像的基本單位,如圖 3.2所示。

圖 3.2 影像基本單位

解析度表示影像中含有的像素數量,數量越多表示解析度越高。影像的種類 可分為彩色與灰階影像等。彩色影像中一個像素包含紅(R)、綠(G)、藍(B)

三種顏色,其中每個顏色的大小為8位元(bit),所以一個彩色像素為24位元。

灰階影像(Gray)表示每一個像素點中的R、G、B三種顏色的值都相等,均以8 位元表示。而彩色除了以RGB模式外,另有CMYK、HSV、YUV、YIQ、Lab 等模式。

各彩色模式有其特性,更可做不同的應用,各模式可以相互轉換。本文所利用之 影像處理擴充子卡(Video Daughter Board)其影像輸入格式為YIQ。

3.2.1 YIQ 影像模式

Y、I、Q 主要用於NTSC視訊標準上,其中的Y為彩色轉換成高灰階影像(Gray Image)的灰階值或稱之為亮度值(Luminance),I、Q為色差,而其轉換公式依 據人類的眼睛對於紅、藍、綠三原色不同感度而來,其中系數值越大則表人的眼 睛對於該顏色較為敏感,所以三種顏色之敏感度依序為綠色(0.587)、紅色

(0.299)、藍色(0.114),其RGB轉YIQ公式:

(34)

°

− +

°

=

°

°

=

+ +

=

33 cos ) ( 492 . 0 33 sin ) ( 877 . 0

33 sin ) ( 492 . 0 33 cos ) ( 877 . 0

114 . 0 587 . 0 299 . 0

Y B Y

R Q

Y B Y

R I

B G

R Y

(3.1)

或簡化為下列的轉換矩陣:

⎥⎥

⎢⎢

⎥⎥

⎢⎢

=

⎥⎥

⎢⎢

B G R

Q I Y

311 . 0 523 . 0 212 . 0

321 . 0 275 . 0 596 . 0

114 . 0 587 . 0 299 . 0

(3.2)

3.3 前處理

由於在獲得的影像中,可能會有雜訊的干擾(Noise Corrupted),或是影 像的灰階值(Gray Level)分佈不均,導致影像特徵物的顯現不明顯,而無法正 確辨識出來。影像前處理的目的在於將有意義的資訊擷取出來,提供正確的資訊 給之後的影像分割分析使用。在本篇論文研究中,利用了以下四種影像處理方 式,對所獲得到的影像作消除雜訊以及灰階值重新分佈的動作:

3.3.1 直方圖等化

由於外界的亮度會影響影像中灰階值的分佈情形,因此利用影像的直方圖的 重新分佈可使影像的對比分佈均勻,讓比較暗的圖對比加強,讓比較亮的圖對比 度減低。

(35)

(a) (b)

(c) (d)

圖 3.3 直方圖等化

(a)光源弱的影像 (b)圖(a)直方圖等化後的圖 (c)光源強的影像 (d)圖(c)直方圖等化後的圖

3.3.2 中位數濾波器

中位數濾波器(Median filtering)是將遮罩(Mask)中所有數值排序之後,

取數列中間的數值。若數值個數為偶數,則中位數是中間兩個數值的平均。中位 數濾波器是一種非線性空間濾波器,本篇論文所使用5×5遮罩,輸出值為遮罩內 所有數值的中位數。舉例來說:

圖 3.4 中位數濾波器

影像遮罩內的灰階值為1、10、15、45、50、51、55、55、56、57、58、58、

(36)

60 、65、66、69、69、72、82、108、158、165、245、254、255。取其中位數 為60。

(a) (b)

圖 3.5 中位數濾波

(a)雜訊的圖 (b)圖(a)中位數濾波後的圖

3.3.3 侵蝕

侵蝕運算(Erosion)為形態學中最重要的兩種基本運算之一,通常是應用 在二元影像的處理。每執行一次可以將二元資料的前景部分的邊界區域侵蝕一 圈,使其邊界區域變小變薄。其做法為掃描二元影像上的每個像素點,檢查每個 點周圍的8個點是否全部為1,若是,則在新的二元圖上的同一個位置記錄為1,

若無則記錄為0。如下圖所示:

(a) (b)

圖 3.6 侵蝕

(a)二值化矩陣A (b)遮罩矩陣B

(37)

圖 3.7 矩陣A被矩陣B侵蝕

圖 3.8 侵蝕運算的實作方法

3.3.4 膨脹

膨脹運算(Dilation)為形態學中最重要的兩種基本運算之一,通常是應用 在二元影像的處理。每執行一次可以將二元資料的前景部分的邊界區域擴張一 圈,使其邊界區域變大變寬。其做法是掃描二元圖上的每個點,檢查每個點的周 圍8個點是否有1,若是,則在新的二元圖上的同一個位置記錄為1,若無則記錄 為0。如下圖所示:

圖 3.9 矩陣A被矩陣B膨脹

(38)

圖 3.10 膨脹運算的實作方法

(a) (b)

(c) (d)

圖 3.11 侵蝕與膨脹運算

(a)原始二值化 (b)圖(a)侵蝕運算 (c)圖(a)膨脹運算 (d)圖(a)侵蝕膨脹運算

3.4 影像分割

在影像辨識的過程中,必須先對影像中各圖樣區塊做一適當的分割,才能進 一步討論各區塊所代表的意義。也因此,在做影像分割前通常必須先對所欲分析 的影像有初步的了解,才可針對所欲辨識的特徵物做正確的分割。在本篇論文的 研究中由於是針對牆壁與路面的邊界部分,因此在影像分割的部分,本篇論文使 用了Sobel遮罩設計,如圖 3.12。在經由此處理步驟後,我們已將影像中具有邊 界的物體分割出來。以理想情況而言,這種方法應該只會在邊界上產生像素。實 際上,這一組像素點很少能完整的表示一條邊界,這是因為雜訊或來自不均勻照 明的破碎邊緣以及引入假強度不連續性的其他效應。因此,邊緣檢測演算法通常 伴隨著將邊緣像素連接程序。連接邊緣點的最簡單方法就是分析在一個影像中已

(39)

經被分類為邊緣點的每一 四周小鄰域內之像素的特點。根據一組先前定義 的準則判定為近似的所有點被連接,以形成享有這些準則的像素邊緣,如下圖所 示:

) , (x y

圖 3.12 Sobel Mask

(a) (b)

圖 3.13 Sobel運算

(a)原始圖 (b)圖(a)Sobel Mask後的圖

(a) (b)

圖 3.14 邊緣連接運算

(a)原始圖 (b)圖(a)作邊緣連接後的圖

(40)

3.5 特徵抽取

在影像辨識的過程中,通常必須先對所要辨識的物體有正確的認知和了解,

才能找出欲辨識物體較明顯的特徵,進而定義一套適合此類特徵的函數做比較與 辨識的運算。同樣的,在室內環境辨識的應用中,也是必須要先抽取所要辨識的 物體,在本篇論文所要抽取出的特徵物是地面與牆壁的邊緣。由於本篇論文的智 慧型自走車其功能是藉著影像得到特徵物的直線參數,來控制車體本身的行進方 式,因此研究霍氏轉換(Hough Transform)[36]的應用來獲得牆壁與地面的資 訊,從影像資料經由霍氏轉換得到所需要的資訊。

霍氏轉換是在1962年由Hough所提出來的一種強健性偵測直線的方法,從影 像空間轉換至參數空間,經由累計陣列找出局部最大值,得到正確的直線參數。

而Merlin、Faber和Ballard則發揚光大霍氏轉換,使其不只應用在直線偵測,只 要是線性的曲線皆能利用廣義霍氏轉換得到。

霍氏轉換其原理:在一給定直線上,其直線方程式為y=ax+b,在此直線 上考慮一點(

x

1,

y

1),則必滿足

y

1 =

ax

1+

b

,在其直線上考慮另一點 亦滿 足 ,但若直線呈現垂直狀態時,其 會趨近於無限,因此採用一直線 的法線

) , (

x

2

y

2

b

ax

y

2 = 2 +

a

θ θ sin

cos y

x

r= + 來表示。

圖 3.15 直線參數示意圖

在 座標平面中,通過一點的直線可以無限多條,因此可透過由一點映 射至參數空間(parameter space),此參數空間可以用二維陣列來表示,通過

) , (x y

(41)

此點的所有直線參數記錄在此二維陣列。

圖 3.16 累積陣列

在影像空間中,其

θ

的範圍從0~179度便可掃描完所有通過一點的直線,利 用r =xcosθ + ysinθ,來計算每一個

θ

所對應的r,而r的範圍限制於影像平面 對角線的長度。將每一點所對應至參數空間的所有參數,在累計矩陣內作累加,

計算出最大的參數,再將它代回影像空間。圖 3.17是一張影像使用霍氏轉換後 得到在影像中最長之直線,以紅線標示。圖 3.18是圖 3.17的累計陣列,圖中最 亮點即為最大參數。

圖 3.17 霍氏轉換找出影像中最長之直線

(42)

圖 3.18 累計陣列

3.6 知識庫

一般來說,在影像辨識的過程中,必須先對欲辨識的影像有基本的了解,才 可針對影像中的特徵物體設計辨識的方法,也因此在不同的應用中,均會採取不 同的辨識方法;以本篇論文研究中,室內環境特徵辨識的應用為例:設計整套辨 識方法即為知識基礎的應用,而之後再延伸發展出的知識庫,也成為專門解決特 定問題的專家系統。

3.7 輸出結果

利用上述的影像處理方式,將室內環境的特徵參數提供給視覺導航系統,由 本篇論文所開發出的智慧型自走車的導航系統,決定車子本身該如何行進。

(43)

3.8 本章結論

經由本章的影像處理辨識過程後,已經能將影像中的牆壁與路面的邊緣辨識 出,而更進一步的必須將所得到的特徵參數套用於視覺導航系統,下一章節將介 紹視覺導航系統的設計與實踐。

(44)

第四章

影像導航系統設計與實現

4.1 引言

一般來說,在影像導航系統的設計中,發展一套健全的影像辨識系統,以取 代人為的視覺與判斷是非常重要的。而由於影像本身為二維龐大的訊號,以一張 640×480 像素的 8-bit 灰階影像來說,就大約需要 300K byte 的記憶體容量,也 因此,在許多機器視覺的應用中,必須耗費較多的運算時間於影像訊號的處理及 辨識上,所以也較不易應用於高速運動的控制系統中。若能針對影像中的特徵物 迅速辨識出來,將可大量減少影像辨識系統耗費在處理非特徵物體的時間。

4.2 影像導航系統設計

在本篇論文的設計中,我們必須利用每一時刻所擷取到的影像辨識出路面邊 界的變化,去更新自走車的動態變化,使車子能正確的跟隨路面邊界的變化行 駛。圖 4.1 即表示整個影像導航系統的設計流程。

圖 4.1 影像導航系統的設計

(45)

在圖 4.1 中,CCD 攝影機擷取到某一時刻的影像,利用影像的前處理將其雜 訊去除,在利用上一章節所提到的影像處理做法將影像中特徵點的抽取,再利用 該特徵點去判斷車子的導航策略,在本篇論文中,將車子分成五種動態:直走、

左轉、微左轉、右轉以及微右轉。其中左右轉即是車體本身旋轉 90 度,而微左 右轉則是判斷車子若偏離了道路邊緣線做適當的微左、微右調整,至於到底要微 左、微右旋轉多少度則視車體偏離道路邊緣線的角度做判斷。而根據以上的影像 導航視覺系統設計,本篇論文進一步利用程式的流程關係將其實現出來。

圖 4.2 影像導航系統的設計程式

(46)

圖 4.2 中即表示了整個影像導航系統的設計流程,以下將對每一個處理流 程做詳細介紹:

z 系統開始:打開自走車的電源並觸發它行走。

z 前進:車子直線前進。

z 影像擷取與處理:擷取影像並用第三章的影像處理程序取得影像的特徵 點。

z 檢查特徵線:檢查有無取得影像中的特徵線,若無則車子繼續前行;反 之則進入下一步驟。

z 角度判斷:將特徵線角度依不同範圍分成兩種模式。

z 左轉模式:這個模式是特徵線角度範圍在 0 度至 79 度,詳細說明流程 在圖 4.3。

圖 4.3 左轉模式程式流程

(47)

z 左轉:當左轉模式根據圖 4.3 的程式流程左轉後,系統將會進入到下 一個步驟。

z 右轉模式:這個模式是特徵線角度範圍在 101 度至 179 度,詳細說明流 程在圖 4.4。

圖 4.4 右轉模式程式流程

z 右轉:當右轉模式根據圖 4.4 的程式流程右轉後,系統將會進入到下 一個步驟。

z 讀取下一時刻影像:當系統要繼續時,則流程回到影像擷取與處理,反 之則往下一個步驟。

z 系統結束:自走車停止。

綜觀上述的影像導航系統設計,本篇論文結合了系統理論與影像處理的應 用,提高了影像辨識的速度,整體而言,本篇論文具備了以下優點:

(48)

1. 在影像處理的過程中,本篇論文只需對單張影像進行處理,在抽取以及 辨識出特徵線後,即可得道路面的邊界與自走車的狀態,也因此,並不 需儲存前一時刻的影像,做較複雜的影像辨識處理(例如:光流法),

而減少了影像處理時間。

2. 針對智慧型自走車走過的每一點做記錄,建立起道路座標,當下次經過 此地方時可以比對位置座標,加快車子行走的速度。

3. 利用此影像導航系統的設計,可以使車子行走於樓梯邊緣,比一般單利 用雷射、紅外線或是超音波可走路況多許多。因為雷射、紅外線以及超 音波所測得的資訊都是點資訊,若遇到路面消失不見會偵測錯誤。

在智慧型自走車的影像導航系統的設計中,發展一套快速而穩健的影像辨識 系統是不可缺少的。在本篇論文研究中,經過了以上程式流程設計後,我們進一 步的利用了實車實現,在下一節中,本篇論文設計了八個場景並對結果做討論。

4.3 影像導航系統實現

本節設計了八種場景:牆角右轉、牆角左轉、樓梯右轉、樓梯左轉、樓梯邊 緣、右側凸角、左側凸角以及實驗桌上。

4.3.1 CCD 攝影機基本參數

CCD 攝影機基本參數可藉由校正來計算得到,如水平視角、垂直視角及焦 距,表 4.1 為 CCD 攝影機的內在與外在參數。

內在參數 外在參數

2α 54.50° h 33.80 cm

β 68.43° θ 60°

UST SH-KR800N

CCD

size 320×240 L 10 cm 表 4.1 CCD 攝影機參數

(49)

圖 4.5 CCD 攝影機參數示意圖

圖 4.6 座標系對照圖

4.3.2 場景實驗

本篇論文以本校工學院以及實驗室為場景實驗地點,根據不同情況設計八種 不同情況的場景,讓智慧型自走車分別於這八種場景實地走一遍,並在事後做分 析。圖 4.6 是自走車行走於場景中定義的相對座標與影像中抽取出的特徵線定 義角度。

(50)

一、牆角右轉

圖 4.7 場景一:牆角右轉

圖 4.7 是場景一的俯視圖,可以由圖中得知牆壁出現在自走車的左側,而 自走車根據所在位置定義直走是 Y 軸方向,而右轉是 X 軸方向。初始位置自走車 擷取到的影像(取樣頻率 5 frames/sec)如圖 4.8(a),從圖中抽取出的特徵 線角度為 164 度,在影像導航設計的流程中,特徵線角度在 101 度至 179 度這個 範圍內即進入了右轉模式,在這模式中,164 度是介於 151 度至 170 度之間,當 特徵線在這個範圍裡面,對自走車所下達的決策是直走,所以自走車便會沿著所 偵測到的特徵線(牆壁與路面的邊界)前進。當車子前進到快碰到牆壁時,這時 便會偵測到前方牆壁與路面的邊緣,如圖 4.8(b)特徵線便會變成 91 度,在右 轉模式中,特徵線角度落於 80 度至 100 度時,將會下達右轉的命令給車子,這 時自走車便會右轉 90 度後,根據當時的情況繼續讀取下一時刻的影像還是停止 系統。

(51)

(a) (b)

圖 4.8 場景一實驗圖

(a)初始位置擷取到的影像 (b)快行進到牆壁所擷取到的影像 二、牆角左轉

圖 4.9 場景二:牆角左轉

圖 4.9 是場景二的俯視圖,可以由圖中得知牆壁出現在自走車的右側,而 自走車根據所在位置定義直走是 Y 軸方向,而左轉是負 X 軸方向。初始位置自走 車擷取到的影像如圖 4.10(a),從圖中抽取出的特徵線角度為 20 度(實際測 得角度為 200 度,但超過 180 度的角度將會減去 180 度),在影像導航設計的流 程中,特徵線角度在 0 度至 79 度這個範圍內即進入了左轉模式,在這模式中,

20 度是介於 11 度至 30 度之間,當特徵線在這個範圍內,對自走車所下達的決

(52)

策是直走,所以自走車便會沿著所偵測到的特徵線(牆壁與路面的邊界)前進。

當車子前進到快碰到牆壁時,這時便會偵測到前方牆壁與路面的邊緣,如圖 4.10

(b)特徵線便會變成 87 度,在左轉模式中,特徵線角度落於 80 度至 100 度時,

將會下達左轉的命令給車子,這時自走車便會左轉 90 度後,根據當時的情況繼 續讀取下一時刻的影像還是停止系統。

(a) (b)

圖 4.10 場景二實驗圖

(a)初始位置擷取到的影像 (b)快行進到牆壁所擷取到的影像

(53)

三、樓梯右轉

圖 4.11 場景三:樓梯右轉

圖 4.11 是場景三的俯視圖,可以由圖中得知牆壁出現在自走車的左側,而 自走車根據所在位置定義直走是 Y 軸方向,而右轉是 X 軸方向。初始位置自走車 擷取到的影像如圖 4.12(a),從圖中抽取出的特徵線角度為 167 度,在影像導 航設計的流程中,特徵線角度在 101 度至 179 度這個範圍內即進入了右轉模式,

在這模式中,167 度是介於 151 度至 170 度之間,當特徵線在這個範圍裡面,對 自走車所下達的決策是直走,所以自走車便會沿著所偵測到的特徵線(牆壁與路 面的邊界)前進。當車子前進到快碰到牆壁時,這時便會偵測到前方牆壁與路面 的邊緣,如圖 4.12(b)特徵線便會變成 90 度,在右轉模式中,特徵線角度落 於 80 度至 100 度時,將會下達右轉的命令給車子,這時自走車便會右轉 90 度後,

根據當時的情況繼續讀取下一時刻的影像還是停止系統。

(54)

(a) (b)

圖 4.12 場景三實驗圖

(a)初始位置擷取到的影像 (b)快行進到牆壁所擷取到的影像 四、樓梯左轉

圖 4.13 場景四:樓梯左轉

圖 4.13 是場景四的俯視圖,可以由圖中得知牆壁出現在自走車的右側,而 自走車根據所在位置定義直走是 Y 軸方向,而左轉是負 X 軸方向。初始位置自走 車擷取到的影像如圖 4.14(a),從圖中抽取出的特徵線角度為 20 度(實際測 得角度為 200 度,但超過 180 度的角度將會減去 180 度),在影像導航設計的流

(55)

程中,特徵線角度在 0 度至 79 度這個範圍內即進入了左轉模式,在這模式中,

20 度是介於 11 度至 30 度之間,當特徵線在這個範圍內,對自走車所下達的決 策是直走,所以自走車便會沿著所偵測到的特徵線(牆壁與路面的邊界)前進。

當車子前進到快碰到牆壁時,這時便會偵測到前方牆壁與路面的邊緣,如圖 4.14

(b)特徵線便會變成 89 度,在左轉模式中,特徵線角度落於 80 度至 100 度時,

將會下達左轉的命令給車子,這時自走車便會左轉 90 度後,根據當時的情況繼 續讀取下一時刻的影像還是停止系統。

(a) (b)

圖 4.14 場景四實驗圖

(a)初始位置擷取到的影像 (b)快行進到牆壁所擷取到的影像

(56)

五、樓梯邊緣

圖 4.15 場景五:樓梯邊緣

圖 4.15 是場景五的俯視圖,可以由圖中得知樓梯邊緣的止滑踏板出現在自 走車的右側,而自走車根據所在位置定義直走是負 X 軸方向,而左轉是負 Y 軸方 向。初始位置自走車擷取到的影像如圖 4.16(a),從圖中抽取出的特徵線角度 為 20 度(實際測得角度為 200 度,但超過 180 度的角度將會減去 180 度),在 影像導航設計的流程中,特徵線角度在 0 度至 79 度這個範圍內即進入了左轉模 式,在這模式中,20 度是介於 11 度至 30 度之間,當特徵線在這個範圍內,對 自走車所下達的決策是直走,所以自走車便會沿著所偵測到的特徵線(牆壁與路 面的邊界)前進。當車子前進到快碰到牆壁時,這時便會偵測到前方牆壁與路面 的邊緣,如圖 4.16(b)特徵線便會變成 92 度,在左轉模式中,特徵線角度落

(57)

於 80 度至 100 度時,將會下達左轉的命令給車子,這時自走車便會左轉 90 度後,

根據當時的情況繼續讀取下一時刻的影像還是停止系統。

(a) (b)

圖 4.16 場景五實驗圖

(a)初始位置擷取到的影像 (b)快行進到牆壁所擷取到的影像 六、右側凸角

圖 4.17 場景六:右側凸角

圖 4.17 是場景六的俯視圖,可以由圖中得知牆壁出現在自走車的右側,而

(58)

自走車根據所在位置定義直走是 Y 軸方向,而左轉是負 X 軸方向。這個場景跟之 前不同的是,當自走車走到右側凸角處,它所要追尋的特徵線將會不見,這時會 根據最後一次偵測到的特徵線為準則,直到找到下一條的特徵線。初始位置自走 車擷取到的影像如圖 4.18(a),從圖中抽取出的特徵線角度為 13 度,在影像 導航設計的流程中,特徵線角度在 0 度至 79 度這個範圍內即進入了左轉模式,

在這模式中,13 度是介於 11 度至 30 度之間,當特徵線在這個範圍內,對自走 車所下達的決策是直走,所以自走車便會沿著所偵測到的特徵線(牆壁與路面的 邊界)前進。當車子前進到右側牆壁快消失,也就是所要依據的特徵線會找不到,

這時智慧型自走車將會依據最後找的特徵線資料,如圖 4.18(b)最後一次偵測 到的特徵線角度為 20 度,也是落在左轉模式的直走範圍內,所以假使下一刻找 不到特徵線了,車子本身還是會依據上一次所找到的特徵線資料所行走,直到遇 到牆壁左轉為止。

(a) (b)

圖 4.18 場景六實驗圖

(a)初始位置擷取到的影像 (b)右側牆壁快消失的影像

(59)

七、左側凸角

圖 4.19 場景七:左側凸角

圖 4.19 是場景七的俯視圖,可以由圖中得知牆壁出現在自走車的左側,而 自走車根據所在位置定義直走是 Y 軸方向,而右轉是 X 軸方向。這個場景上一個 一樣,當自走車走到左側凸角處,它所要追尋的特徵線將會不見,這時會根據最 後一次偵測到的特徵線為準則,直到找到下一條的特徵線。初始位置自走車擷取 到的影像如圖 4.20(a),從圖中抽取出的特徵線角度為 162 度,在影像導航設 計的流程中,特徵線角度在 101 度至 179 度這個範圍內即進入了右轉模式,在這 模式中,162 度是介於 151 度至 170 度之間,當特徵線在這個範圍內,對自走車 所下達的決策是直走,所以自走車便會沿著所偵測到的特徵線(牆壁與路面的邊 界)前進。當車子前進到左側牆壁快消失,也就是所要依據的特徵線會找不到,

這時智慧型自走車將會依據最後找的特徵線資料,如圖 4.20(b)最後一次偵測 到的特徵線角度為 158 度,也是落在左轉模式的直走範圍內,所以假使下一刻找

(60)

不到特徵線了,車子本身還是會依據上一次所找到的特徵線資料所行走,直到遇 到牆壁左轉為止。

(a) (b)

圖 4.20 場景七實驗圖

(a)初始位置擷取到的影像 (b)左側牆壁快消失的影像 八、實驗桌上

圖 4.21 場景八:實驗桌上

圖 4.21 是場景八的俯視圖,可以由圖中得知牆壁出現在自走車的左側,而 自走車根據所在位置定義直走是 Y 軸方向,而右轉是 X 軸方向。初始位置自走車 擷取到的影像如圖 4.22(a),從圖中抽取出的特徵線角度為 165 度,在影像導 航設計的流程中,特徵線角度在 101 度至 179 度這個範圍內即進入了右轉模式,

(61)

在這模式中,165 度是介於 151 度至 170 度之間,當特徵線在這個範圍裡面,對 自走車所下達的決策是直走,所以自走車便會沿著所偵測到的特徵線(牆壁與桌 面的邊界)前進。當車子前進到快接近邊界時,這時便會偵測到前方桌面的邊緣,

如圖 4.22(b)特徵線便會變成 92 度,在右轉模式中,特徵線角度落於 80 度至 100 度時,將會下達右轉的命令給車子,這時自走車便會右轉 90 度後,不使系 統停止,讓自走車繼續行走。如圖 4.22(c)這時偵測到的特徵線角度為 129 度,這個範圍的角度進入了右轉模式中的微右轉,因為右轉模式中車子直走的角 度範圍是 151 度至 170 度,取中間值為 160 度,所以車子會微右轉 31 度(160 度 -129 度)。將車子導正後車子會繼續行走,如圖 4.22(d)這時所偵測到的特徵 線角度為 158 度,所以車子會在右轉模式下繼續直走。如圖 4.22(e)當車子走 到快接近桌子邊緣時,這時偵測到的特徵線角度為 100 度,所以車子會在這時候 向右旋轉 90 度後,不使系統停止讓車子繼續前進了一段後,如圖 4.22(f)這 時才下命令使系統停止。將智慧型自走車在這段時間內走的軌跡記錄讀出來,如 圖 4.23,每個點代表車子所行走的軌跡,點與點之間的距離是 0.14 公分。

(62)

(a) (b)

(c) (d)

(e) (f)

圖 4.22 場景八實驗圖

(a)初始位置擷取到的影像 (b)行走至邊界所擷取到的影像 (c)需要微右轉調整的影像 (d)微右轉調整後的影像 (e)行走至邊界所擷取到的影像 (f)系統停止所擷取到的影像

(63)

圖 4.23 智慧型自走車行走軌跡

4.4 本章結論

本章利用了第二章介紹的硬體建立了影像導航系統平台,並結合第三張的影 像處理與辨識,再搭配本章的程式設計流程,最後在軟體平台發展環境 CCS 中,

驗證了實際的路況情形。

(64)

第五章 結論

5.1 結論

由於近年來處理器的處理速度不斷加快,使得許多原本要靠電腦來處理的影 像導航系統之設計,可以移到處理器中來實現。然而影像為基礎的系統應用在高 速運動的即時控制系統中,仍受限於需要處理龐大的二維影像訊號,因此如何建 立快速而強健的影像系統,也是車輛的自動影像導航系統中最大的瓶頸所在。

本篇論文的研究中,利用影像辨識的技術快速的將影像中的辨識線提出,再 利用其辨識線去控制車輛的動態,並針對所走過的路徑作記錄,往後若再走到記 錄過的路徑上,將會大大提升智慧型自走車的行走速度。本篇論文中,用八個不 同的場景去做實驗,也克服了這些場景的困難度。實驗中的影像導航系統平台是 採用德州儀器所推出的 TMS320C6416 DSK,此平台可應用在高效能和高密集的記 憶體使用。在影像處理編解碼以及資料傳輸方面,使用德州儀器公司的協力廠商 所開發的影像處理子卡(VDB),TMS320C6416 DSK 搭配 VDB,可以應用在影像處 理與辨識的系統上。系統的軟體發展平台使用德州儀器的 Code Composer Studio 綜合開發工具。結合這些系統開發工具,可以快速的建立影像導航系統平台。這 個系統每秒擷取五張影像作前處理,然後進行特徵線的抽取與辨識,再經由 FPGA 去控制智慧型自走車的馬達轉速,以達到自走車行進方向控制與自動導航的目 的,由上一章節的實驗結果可以證明這些都是可以實現的。

5.2 未來研究方向

本篇論文的研究著重於高速運動的影像導航系統設計,有關本研究的未來發 展分成兩部份:

一、影像導航系統設計

1. 發展更精確的特徵點辨識演算法,目前本篇是對路面與牆壁的邊緣為特

(65)

徵線,未來希望可以更進一步對路面的障礙物或是移動物體做辨識,使 自走車的影像導航系統更為建全。

2. 未來可以希望減少影像處理上的運算,若偵測到的特徵線出現在畫面右 邊,就只對畫面右半部做處理,這樣可以大大提升運算上面的速度。

二、實車系統的設計

1. 在影像擷取方面,希望可以更換高速或是高倍畫素的攝影機,這樣擷取 的到影像將會更清晰、雜訊減少。

2. 由於室內環境過於複雜,所以若能加上其他測距的感測器來輔助,將會 提升車子本身的強健性。

(66)

參考文獻

[1] Gianluca Antonelli, Stefano Chiaverini, Roberto Finotello, and Riccardo Schiavon, “Real-Time Path Planning and Obstacle Avoidance for RAIS: An Autonomous Underwater Vehicle",

IEEE Journal of Oceanic Engineering, Vol.26, No.2, pp.216-227, 2001.

[2] Hideo Mori, Shinji Kotani, and Noriaki Kiyohiro, “A Robotic Travel Aid “HITOMI" ", Proceedings of the IEEE/RSJ/GI

International Conference on Intelligent Robots and Systems, Vol.3, pp.1716-1723, 1994.

[3] 徐肇鴻,導盲機器人之路徑規劃與控制,國立交通大學電機與控制 工程系碩士論文,1999年。

[4] T. Hessburg and M. Tomizuka, “Fuzzy Logic Control for Lateral Vehicle Guidance" IEEE Control Systems Magazine, Vol.14, Issue 4, pp. 55- 63, Aug. 1994.

[5] E. M. Petriu, “Automated Guided Vehicle with Absolute Encoded Guide-path," IEEE Transactions on Robotics and Automation, Vol.7, No.4, pp.562-565, 1991.

[6] J. Borenstein and Y. Koren, “Histogramic In-motion Mapping for Mobile Robot Obstacle Avoidance," IEEE Transactions on Robotics and Automation, Vol.7, No.4,pp.535-539, 1991.

[7] A. P. Tirumalai, B. G. Schunck and R. C. Jain, “Evidential Reasoning for Building Environment Maps," IEEE Transactions on Systems, Man, and Cybernetics, Vol.25, No.1, pp.10-20, 1995.

[8] D. Pagac, E. M. Nebot and D. W. Hugh, “An Evidential Approach to

(67)

Map-building for Autonomous Vehicles," IEEE Transactions on Robotics and Automation, Vol.14, No.4, pp.623-629, 1998.

[9] G. Beccari, S. Caselli, F. Zanichelli and A. Calafiore, “Vision-based Line Tracking and Navigation in Structured Environments," IEEE Computational Intelligence in Robotics and Automation, pp.406-411, 1997.

[10] F. M. Pan and W. H. Tsai, “Automatic Environment Learning and Path Generation for Indoor Autonomous Land Vehicle Guidance Using Computer Vision Techniques,"Proc. of Nat. Comput. Symp. '93, Chiayi, Taiwan, pp.311-321, 1993.

[11] W. H. Lee, K. S. Roh and I. S. Kweon, “Self- localization of Mobile Robot without Camera Calibration Using Projective Invariants,"

pattern recognition letters Vol.21, pp.45-60, 1999.

[12] Y. Yagi, H. Nagai, K.Yamazawa and M. Yachida, “Reactive Visual Navigation Based on Omnidirectional Sensing-path Following and Collision Avoidance," Proc. IEEE/RSJ International Conference on Intelligent Robots and Systems, Vol.1, pp.58-63, 1999.

[13] Y. Yagi, S. Kawato and S. Tsuji, “Real-Time Omnidirectional Image Sensor (COPIS) for Vision-Guided Navigation,” IEEE Trans. Robotics and

Automation, Vol.10, No.1, pp.11-22, 1994.

[14] C. Roman and C. Reinholtz, “Robust Course-boundary Extraction Algorithms for Autonomous Vehicles," IEEE Intelligent Systems, pp.32-38, Nov. 1998.

[15] R. R. Murphy, “Sensor and Information Fusion for Improved Vision-based Vehicle Guidance," IEEE Intelligent Systems, pp.49-56, Nov. 1998.

(68)

[16] A. Ohya, A. Kosaka and A. Kak, “Vision-based Navigation by a Mobile Robot with Obstacle Avoidance using Single-Camera Vision and Ultrasonic sensing," IEEE Transactions on Robotics and Automatic, Vol.14, No.6, pp969-978, 1998.

[17] S. R. Kyoung and H. L. Wang, “Obstacle Detection and Self- localization without Camera Calibration using Projective

Invariant," Proc IEEE/RSJ International Conference on Intelligent Robots and Systems, Vol.2, pp.1030-1035, 1997.

[18] G. S. Young, T. H. Hong, M. Herman and J. C. S. Yang, “New Visual Invariant for Obstacle Detection Using Optical Flow Induced from General Motion," Proc IEEE Workshop on Applications of Computer Vision, pp.100-109, 1992.

[19] T. Suzuki and T. Kanada, “Measurement of Vehicle Motion and Orientation Using Optical Flow," Proc IEEE/IEEJ/JSAI International Conference on Intelligent Transportation Systems, pp.25-30, 1999.

[20] A. Giachetti, M. Campani and V. Torre, “The use of Optical Flow for Road Navigation," IEEE Trans. on Robotics and Automation, Vol.141, pp.34-48, 1998.

[21] X. Yuan, Z. Hu, J. Chen, R. Chen and P. Liu, “Online Learning and Object Recognition for AUV Optical Vision," Proc. IEEE

International Conference on System, Vol.6, pp.857-862, 1999.

[22] Y. K. Hwang and N. Ahuja, “A potential field approach to path planning," IEEE Transactions on Robotics and Automation, Vol.8, No.1, pp.23-32, Feb. 1992.

[23] Y. H. Liu and Suguru Arimoto, “Path planning using a tangent graph for mobile robots among polygonal and curved obstacles," Int. J.

數據

Updating...

參考文獻

相關主題 :