• 沒有找到結果。

中 華 大 學

N/A
N/A
Protected

Academic year: 2022

Share "中 華 大 學"

Copied!
66
0
0

加載中.... (立即查看全文)

全文

(1)

中 華 大 學 碩 士 論 文

題目:以 FPGA 為基礎實現移動物體偵測系統

FPGA-Based Moving Object Detection System Design

系 所 別: 電機工程學系碩士班 學號姓名: E09601009 賴炳成 指導教授: 許駿飛 博士

中 華 民 國 九十八 年 七 月

(2)

摘 摘 摘

摘 要 要 要 要

目前的數位影像處理系統大多是以個人電腦硬體架構為基礎,外 接數位攝影機擷取影像資料,再搭配特定的數位影像處理軟體,做處 理運算得到所想要的資訊,但電腦架構的數位影像處理系統特點為體 積較大、消耗功率較高、且相對成本較高。本論文使用 ALTERA 公 司的 FPGA(Field Programmable Gate Array)開發實驗板 DE1 為基礎,

以 Verilog 硬體描述語言來實現移動物體偵測及中心座標顯示系統。

所提出之系統由外接的 CMOS Image Sensor 讀取影像,經由與儲存在 記憶體中的背景影像資料做比對來偵測不同於背景影像資料的移動 物體連續影像,將移動物體影像以紅色外框框起來顯示於 VGA 監控 螢幕中,並將移動物體外框的中心座標顯示於七段顯示器上。最後,

經由實際實驗測試結果顯示所提出之系統能達到對外來物體及移動 物體做即時偵測與追蹤的目的。

關鍵字: FPGA、Verilog 硬體描述語言、移動物體偵測

(3)

Abstract

Recently, most of the digital image processing systems are developed based on a personal computer hardware architecture, catching image data through an external connected digital video camera, to use specific digital image processing software to handling and operating the image data to get some specific information. The features of a computer based digital image processing system are large volume, larger power consumption and higher cost. This thesis uses ALTERA’s FPGA (Field Programmable Gate Array) development board (DE1) as a basis, and uses Verilog hardware description language to implement the moving object detection and central coordination display system. The system catch image through an external connected CMOS Image Sensor, to detect the continuous moving object image by comparing the difference of image data and background image data stored in the memory, and mark the moving object image with red block frame displaying in the VGA monitor, also display the central coordination of the moving object in the 7 segment displayer. Finally, through actual experiment test, the results show that the system could detect and trace the moving object real time.

Keyword: FPGA, Verilog hardware description language, moving object detection

(4)

誌 謝

在此由衷地感謝我的指導教授許駿飛博士,從我考取碩士班到畢 業這兩年的研究所期間中,給予耐心與細心的指導與提供意見,讓我 在求學期間所學良多。同時在此期間中法乾學長的私下教導,及晟 博、佑任、凱麟、順良同學在學期間的幫忙,也讓我在畢業前論文能 順利地提交。最後要謝謝口試委員在百忙當中能撥時間來審閱我的論 文,同時提供寶貴的意見,讓此篇論文能再更改善些。

(5)

目 錄

中文摘要 ………I 英文摘要 ………II 誌謝………. III 目錄 ………IV 圖表索引 ………VI

第一章 緒論 ………1

1.1 研究動機與目的………1

1.2 相關技術背景………2

1.3 研究方法………4

1.4 論文架構………5

第二章 系統硬體架構 ………7

2.1 ALTERA DE1 開發實驗板………8

2.2 CMOS Image Sensor Module ………11

2.3 DRAM 晶片………17

2.4 VGA Display Monitor ………22

第三章 系統開發環境與軟體架構 ………27

3.1 ALTERA Quartus II 系統開發環境 ……… 27

3.2 系統軟體架構………29

(6)

3.3 影像讀取………32

3.4 影像灰階轉換………34

3.5 影像存取………35

3.6 影像比對與物體外框標示………36

3.7 影像顯示………39

3.8 物體中心座標顯示………41

第四章 系統操作與測試 ………43

4.1 系統操作………43

4.2 系統於不同環境測試結果………44

第五章 結論與未來研究 ………53

5.1 結論………53

5.2 未來研究………53

參考文獻 ………55

作者簡介 ………56

(7)

圖 目 錄

圖 2.1 系統硬體架構 ………8

圖 2.2 ALTERA DE1 開發實驗板 ………10

圖 2.3 Micron MT9M011 CIS IC 方塊圖 ………13

圖 2.4 Micron MT9M011 CIS IC 外部接腳訊號 ………14

圖 2.5 Micron MT9M011 CIS IC 像素陣列圖案 ………16

圖 2.6 Micron MT9M011 CIS IC 資料輸出時序圖 ………16

圖 2.7 ICSI IS42S16400 SDR DRAM 功能方塊圖 ………18

圖 2.8 SDR DRAM Read with Auto Precharge Diagram ………19

圖 2.9 SDR DRAM Write with Auto Precharge Diagram ………20

圖 2.10 SDR DRAM Full Page Read Cycle Diagram………21

圖 2.11 SDR DRAM Full Page Write Cycle Diagram………22

圖 2.12 VGA 顯示規格掃描方式說明圖 ………23

圖 2.13 DE1 開發實驗板 VGA Connector 信號接線圖 ………25

圖 2.14 VGA 水平信號時序圖 ………26

圖 3.1 Quartus II 系統開發環境 ………28

圖 3.2 Quartus II 軟體的硬體描述語言編譯………29

圖 3.3 系統軟體架構圖 ………32

(8)

圖 3.4 Bayer color pattern to RGB 像素 ………33

圖 3.5 RGB 列資料映射方法 ………34

圖 3.6 影像灰階轉換 ………35

圖 3.7 影像存取示意圖 ………36

圖 3.8 物體影像 X-Min、X-Max、Y-Min 和 Y-Max 判斷流程圖……38

圖 3.9 物體影像的外框標示判斷法則 ………39

圖 3.10 影像顯示程式流程圖………41

圖 4.1 移動物體偵測系統組成 ………43

圖 4.2 臨界值設定測試 ………45

圖 4.3 數位相機拍門口的背景影像 ………46

圖 4.4 曝光值設定測試 ………46

圖 4.5 門口無移動物體時之偵測影像與座標值顯示測試 …………47

圖 4.6 門口有移動物體時之偵測影像與座標值顯示測試 …………47

圖 4.7 教室內物體偵測測試 ………49

圖 4.8 房間內移動物體偵測測試 ………50

圖 4.9 電腦教室內移動物體偵測測試 ………51

圖 4.10 戶外移動物體偵測測試………52

(9)

表 目 錄

表 2.1 VGA 連接器信號接腳說明………24

(10)

第一章 緒論

1.1 研究動機與目的

在現代電子化的社會中,電子產品常被用來做為提供各種需求的 解決方法以解決各式各樣的問題。隨著科技快速進步,傳統許多原來 必須藉由人力來作業的方式,現在很多都被以電子化的方式來取代,

藉此以提供更低的成本、較低的失誤及誤差、較長的工作時間、較容 易管理、較快速且即時處理等等的優點。

在各種電子化的項目中,電子視覺的部份在近幾年中更是蓬勃發 展,其提供了替代人的眼睛來做自動化檢測、自動化定位、辨認、判 定和自動追蹤定位與監控等等的功能,對於人類社會中的各種相關需 求提供了很大的幫助,因此便以電子視覺這個部份來做為研究的方 向。在電子視覺的應用方面,電子視覺有一部份被用來做為代替人們 對某一區域或某物體的長時間監控,及提供特定資訊給使用者,其中 使用用途有安全監控、物體追蹤或特定用途的對一區域空間做長時間 監控偵測用途等等。

在這裡以移動物體的偵測來做為本論文的探討主題,希望能提供 的功能為能夠對某一特定設定的視覺空間內,做偵測是否有非特定的 外來移動物體或侵入的物體,在監視器中以標示外框來框住其物體,

(11)

並能做即時的追蹤及提供其物體中心點在監視器中的座標值的資 訊,做即時的偵測追蹤與監控。並且使用 FPGA(Field Programmable Gate Array)晶片當作系統的核心晶片,特點是容易實現應用系統及相 對價格較低、較低系統功率消耗且可將系統小型化。

1.2 相關技術背景

移動物體偵測的研究主題內容涵蓋了硬體、軟體、平台與方法的 領域範圍。以實現平台來探討,相關技術的實現方式多以個人電腦為 系統主體,以外接數位攝影機擷取影像,再以特定的影像處理軟體或 撰寫高階程式語言來分析處理影像資訊,其優點是可做複雜的影像資 料運算處理及分析,如影像平滑運算處理及消除雜訊等等,缺點是系 統價格成本昂貴、體積較大及消耗功率高[1]-[5]。亦有學者以數位 訊號處理器晶片(Digital Signal Processor, DSP)為核心的嵌入式影像 處理系統來達成移動物體偵測功能的研究實現,其特點為 DSP 內部 有特殊支援的影像處理功能及相關的函式庫程式,使開發者容易對輸 入影像資料做影像處理及演算法運算,且 DSP 系統的特點為系統處 理速度較快,與體積較小且消耗功率較低等優點[6]。而以 ARM 系 統晶片來做為處理核心的系統其優缺點則是介於個人電腦系統和數 位訊號處理器晶片系統之間[7] 。

(12)

在參考文獻[6]“以 DSP 實現移動物體影像的即時偵測與追蹤系 統”即利用 TI 德州儀器公司的 DSP(Digital Signal Processing) DM642 晶片來實現移動物體的偵測與追蹤,其特定用途的 DSP 晶片由於提 供了影像處理的相關指令集(Image and Video Processing Library),可 讓系統開發者能更輕易發展影像相關產品,同時也能讓系統具有較強 的功能,如可影像壓縮與解壓縮影像及做影像濾波、雜訊去除等影像 處理演算法等等,但由於是特定用途的 DSP,其內建許多可供使用的 特殊功能及要求高效能,也因此會有複雜及龐大的硬體線路而增加 IC 的成本,相對於 FPGA 來說價格會較高。

另一方面,在參考文獻[1]“以適應性背景相減法偵測及追蹤移 動物體”,其以電腦為硬體架構及以 C++程式語言來實現影像處理演 算法以達到系統功能的目標,此參考文獻提出了幾個對於系統功能很 有幫助的演算法,包含錯誤偵測抑制和陰影移除與雜訊消除,其中錯 誤偵測抑制為消除背景有輕微移動的情形而造成的誤偵測,而陰影移 除與雜訊消除主要為將物體的陰影影像排除在物體影像之外,以讓系 統在追蹤物體時能只標示物體實體而不將物體陰影影像包含在內。上 述參考文獻具有良好的系統能力,但因為是以電腦架構來實現系統功 能,因此系統有無法小型化及消耗功率高的缺點。

本論文採用 ALTERA 公司的 FPGA 晶片做為處理的核心,以

(13)

Verilog 硬體描述語言來做為 FPGA 硬體規劃程式語言以實現本論文 研究。硬體開發平台採用 ALTERA 公司的 FPGA DE1 開發實驗板,

開發系統軟體採用 ALTERA 公司的 Quartus II System,系統的影像輸 入採用外接 CMOS Image Sensor Module 來擷取影像,擷取的影像則 儲存到 DE1 實驗板上的 SDR DRAM 晶片內,FPGA 晶片可對 DRAM 內的影像資料做存取的動作,再把欲顯示的影像資訊輸出到連接 DE1 實驗板的 VGA Monitor 上。因此,要實現本論文研究則需了解包括 FPGA 晶片、FPGA 晶片開發系統、Verilog 硬體描述語言程式撰寫開 發、CMOS Image Sensor Module 影像擷取、DRAM 晶片存取運作、

VGA Monitor 影像顯示及實現本論文研究主題的方法等等。

1.3 研究方法

此研究使用 ALTERA 公司的 FPGA DE1 開發實驗板來做為開發 平台,以 Verilog 硬體描述語言來規劃 DE1 實驗板上的 ALTERA Cyclone II FPGA 晶片,經由外接的彩色 CMOS Image Sensor Module 來擷取影像,所擷取的影像資料的每一個彩色像素資料為由 RGB 三 筆資料所組成,將讀取的 RGB 資料轉成灰階的資訊後,再將每一灰 階像素資訊儲存在 DRAM 記憶體晶片中的一個記憶體區塊中,先把 背景影像資訊儲存後,再持續讀取監控的影像資料,並將之儲存在

(14)

DRAM 晶片的另一記憶體區塊中。持續地將監控的影像資料與背景 影像資料做比較,如其中的像素灰階值的差異值有大於所設定的差異 臨界值時,便可知監控中的影像畫面中有某些像素與背景影像是不同 的,亦即有外來的移動物體進入。經由將偵測到的物體影像像素在影 像矩陣座標的 Xmin、Xmax、Ymin、Ymax 的位置資訊做處理,即可 得到移動物體的影像外圍框架的資訊,並將外圍框架顯示在監視器 上。經由 Xmin、Xmax、Ymin、Ymax 的資訊即可得到移動物體或外 來物體的中心座標的資訊。

1.4 論文架構

第一章 緒論: 主要內容為本論文研究的研究動機、研究目的、

相關技術背景、研究方法的說明與本論文架構。

第二章 系統硬體架構: 主要內容為介紹此系統的硬體開發平台 ALTERA DE1 開 發 實驗板 及說明 系統 硬體架 構,並對 ALTERA Cyclone II FPGA 晶片、CMOS Image Sensor Module、DRAM 晶片、

VGA Display Monitor 的硬體功能一一解說。

第三章 系統開發環境與軟體架構: 介紹 ALTERA Quartus II FPGA 系統開發環境,說明此系統的軟體架構,並對影像讀取、影像 灰階轉換、影像存取、影像比對與物體外框標示、影像顯示、物體中

(15)

心座標顯示的軟體運作方法一一解說。

第四章 系統操作與測試: 說明本論文研究所提供的系統功能,

解說系統的操作,並將實做完成後的系統於不同環境做實際測試,說 明測試結果及對測試結果做討論。

第五章 結論與未來研究: 對本論文研究做總結討論並對所提出 系統的未來可研究方向做探討。

(16)

第二章 系統硬體架構

圖 2.1 是本論文所提出移動物體偵測系統之硬體架構圖,此系統 使用 ALTERA 公司的 Cyclone II FPGA Family 的晶片為核心,其 IC 編號為 EP2C20F484C7N,其 LE (Logic Element) 數量有 18,752 個,

且最大可使用 I/O 數為 315 個[8]。影像擷取裝置使用 IMAGIC Technologies 公司的 CMOS Image Sensor Module[9],CMOS Image Sensor 晶片為 Micron 公司的 MT9M011 IC, Optical Format 為 1/3 inch,Active Pixels 為 1280 x 1024[10]。使用的記憶體 IC 為 Integrated Circuit Solution(ICSI)公司的 IS42S16400 64M bits Synchronous DRAM 晶片[11]。監視器則使用一般接個人電腦用的 VGA Monitor。

本系統的功能為以 CMOS Image Sensor Module 預先將某一視覺 影像空間設定為背景影像,再以 CMOS Image Sensor Module 持續地 對其視覺影像空間做監控,如有不同於所設定的背景影像的物體影像 出現在 VGA Monitor 的監控畫面中時,便會出現一紅色線條的矩形框 框以框住其所設背景影像外的物體的外圍,並且其紅色線條矩形外框 會跟隨物體的形狀、大小及位置的變化而在監控畫面移動和縮放變 化。並且同時將物體矩形外框的中心點以相對於監控畫面左下角的座 標值顯示在 4 個七段顯示器上,其座標值範圍為以 XY 方向各 0~99

(17)

的範圍值作顯示,前兩位數顯示物體矩形外框中心點的 X 座標,後 兩位數則顯示 Y 座標。

VGA Monitor 所顯示的畫面以黑白灰階的方式顯示,且將移動物 體標示外框以紅色線條顯示。為了使監視畫面能得到清楚影像,可經 由 ALTERA DE1 實驗板上的 Switch 開關的設定,來依外在環境的光 線亮度而改變 CMOS Image Sensor Module 的曝光值設定,以得到適 當的影像畫面顯示品質及較佳的移動物體偵測的正確性及穩定性。

圖 2.1 系統硬體架構

2.1 ALTERA DE1 開發實驗板

此系統使用 ALTERA 的 FPGA DE1 開發實驗板當作本系統的開 發平台,DE1 開發實驗板是用來輔助 ALTERA 的 Cyclone II 系列的

(18)

FPGA 晶片開發之用,可用來做為教育學習及專業開發實驗之用途,

實驗板上整合了許多的晶片元件及輸出入接頭零件,讓學習者或開發 人員能方便及即時地利用此實驗板來做為系統的開發平台,不需另行 自行設計及製作硬體開發環境。而此 DE1 開發實驗板主要是用來作 為多媒體相關的資訊電子系統產品開發之用,其提供了可供鍵盤或滑 鼠輸入的 PS/2 介面及可供聲音輸入的麥克風輸入介面,並且有聲音 及 VGA 影像輸出的影音輸出介面。ALTERA 的 Cyclone II 晶片可經 由晶片內提供的輸出入接腳介面及所提供的信號相位對準功能來與 記憶體作連接,以讓所開發的系統能具有儲存及處理影音資訊的能 力,並且 Cyclone II 晶片亦可經由輸出入擴充槽來連接 CMOS Image Sensor Module (CIS Module)或其它的輸出入裝置元件。

圖 2.2 是 DE1 開發實驗板的照片及零件種類規格包含如下[12]:

FPGA

* Cyclone II EP2C20F484C7 FPGA and EPCS4 serial configuration device

I/O Devices

* Built-in USB Blaster for FPGA configuration * RS-232 port

* VGA DAC resistor network (4096 colors) * PS/2 mouse or keyboard port

* Line-in, Line-out, microphone-in (24-bit audio CODEC) * Expansion headers (76 signal pins)

Memory

* 8-MB SDRAM, 512-KB SRAM, 4-MB Flash * SD memory card slot

Switches, LEDs, Displays, and Clocks

(19)

* 10 toggle switches

* 4 debounced pushbutton switches * 10 red LEDs, 8 green LEDs * Four 7-segment displays

* 27-MHz and 50-MHz oscillators, external SMA clock input

ALTERA DE1 開發實驗板搭配 ALTERA 的 Quartus II 軟體開發 系統來將硬體描述語言編譯及合成過的結果 program 到 DE1 開發實 驗板的 FPGA 晶片之中,以讓使用者較容易來驗證硬體描述語言程 式的正確與否以實現系統功能。使用者可透過 USB Port 的連結來執 行 program 的動作,且可反覆修改及執行直至系統功能正確為止。

圖 2.2 ALTERA DE1 開發實驗板[12]

(20)

ALTERA DE1 開發實驗板使用 Cyclone II FPGA Family 晶片為主 要處理核心,其是基於 1.2V 90nm 的 SRAM 製程的 IC,提供從 4K 到超過 68K 個邏輯單元(Logic Element, LE)的選擇範圍,並且有達到 1.1Mbits 的內嵌記憶體(Embedded RAM),具有鎖相迴圈( Phase Lock Loop,PLL)電路和高速記憶體介面以支援 SRAM 和 DRAM 元件。

Cyclone II 支援差動和單端的 I/O 標準,包括 LVDS 於資料速率 805 Mbps 的 Receiver 和 640 Mbps 的 Transmitter[8]。

所使用 EP2C20 系列的 EP2C20F484C7N IC,其有 18K 個 LEs (Logic Elements),52 個 M4K RAM Blocks,共 23Mbits,26 個乘法 器,4 個鎖相迴圈( Phase Lock Loop, PLL)電路,315 個可設定 I/O 埠 [8]。FPGA 晶片的 LE 數量越多時可允許硬體描述語言(HDL)合成越 大的硬體電路規格,但相對的因為包含了較大的矽積體電路面積,其 價格也會較昂貴。PLL 的提供使 FPGA 晶片具備有產生精準的時鐘 脈波訊號的能力。共使用了 73K bits,即 30%的 FPGA IC 內部記憶體 空間,FPGA IC 的內部記憶體空間可做為 Buffer 和 Register 的用途。

2.2 CMOS Image Sensor Module

所提出之系統使用 IMAGIC TECHNOLOGIES 公司的 CMOS Image Sensor Module (CIS Module) ,型號為 C1M1,其產品特徵為

(21)

[9]:

* CMOS image sensor with SXGA resolution (1280 x 1024) and 3.6um x 3.6um pixel size.

* Embedded 10 bit ADC.

* Raw RGB output data format.

* Fully automatic Xenon and LED-type flash support.

* Simple two-wire serial programming interface.

* Optical aperture of F/2.8.

* Focusing range of 50 cm to infinity.

* Compact form factor of 9.0 x 9.0 x 6.9mm.

* Frame rate: SXGA 15 fps; VGA 60 fps; CIF 150 fps.

在此系統中 CIS 的解析度使用 VGA type 解析度,以 I2C 串列介面 做為 CIS Module 的組態設定介面。其光學聚焦範圍為 50 公分到無限 遠,因此無法對 50 公分距離以內的物體產生清楚的影像,如果要聚 焦 50 公分內的物體則須另接其他鏡片。CIS Module 內所使用的 CIS 晶片為 Micron 公司的 MT9M011,可程式化控制的項目有 Gain、Frame size/rate、Exposure、Left-right and top-bottom image reversal、Window size 和 Panning 等等[10]。

(22)

圖 2.3 Micron MT9M011 CIS IC 方塊圖[10]

圖 2.3 為 Micron MT9M011 CIS 晶片的內部結構方塊圖,目前 CIS 的 pixel 電路分為被動式(passive)和主動式(active)兩種,此 CIS IC 採用的是 Active Pixel,Active Pixel Sensor 採用電壓位準的輸出,而 Passive Pixel Sensor 採用電荷轉移方式,Active Pixel Sensor 的電壓位 準輸出雜訊較小且輸出速度較快。像素資料到達 Analog Processing 電 路處理後,再將類比訊號以 10 bit ADC 電路轉換後,即可得到 10 bits 的數位畫素影像資料。

(23)

圖 2.4 Micron MT9M011 CIS IC 外部接腳訊號[10]

我們可經由圖 2.4 中所標示的 SDATA 和 SCLK 訊號接腳以 I2C 串列介面連接到 FPGA 晶片,以 FPGA 來對 Micron MT9M011 CIS IC 做內部組態設定。LINE_VALID 接腳在每一列(Line)的像素在做輸出 資料時會維持高位準訊號,在做換行動作時則維持低位準訊號。

FRAME_VALID 接腳在每一頁框(Frame)的像素在做輸出資料時會維 持高位準訊號,在做換頁框動作時則維持低位準訊號。PIXCLK 接腳

(24)

是 Pixel Clock Output 時鐘脈波訊號輸出,當 PIXCLK 脈波訊號在上 緣動作時會有一像素資料經由 DOUT0~DOUT9 輸出。CLKIN 接腳是 此 IC 的內部數位電路運作的時鐘脈波訊號輸入,最大可為 25MHz。

圖 2.5 是 MT9M011 CIS IC 的像素圖案的描述,其以像素陣列右 上角一小區塊來圖示說明,MT9M011 CIS IC 的像素(Pixel)使用 Bayer color pattern 的結構,如圖示其偶數列是由綠色和紅色像素所組成,

而奇數列是由藍色和綠色像素所組成。CIS IC 的內部電路會將每一個 像素所感測到的光線強度轉換成訊號大小,以得到該色像素明暗程度 的資訊。圖 2.5 的像素組態結構以 4 個 R、G、B 色像素來組成一個 彩色影像的像素,而 R、G、B 色像素資料的輸出是以如圖所示,由 最上方的第一列開始,由右邊像素至左的行讀出方向的方式輸出,一 列結束後再以列讀出方向換下一列輸出,全部結束後再從頭重覆輸出 各自的 R、G、B 色彩訊號資料。

(25)

圖 2.5 Micron MT9M011 CIS IC 像素陣列圖案[10]

圖 2.6 Micron MT9M011 CIS IC 資料輸出時序圖描述像素資料讀 出時,每一個資料是跟 PIXCLK 脈波訊號同步,在 PIXCLK 的上升 緣時可讀到一個正確的像素資料,且 LINE_VALID 訊號在一列有效 的像素資料輸出時維持高位準電壓,而在一列有效的像素資料輸出結 束時,亦即在處於 Blanking 區域時則維持低位準電壓。

圖 2.6 Micron MT9M011 CIS IC 資料輸出時序圖[10]

(26)

2.3 DRAM 晶片

此系統使用 Integrated Circuit Solution Inc.(ICSI)公司的 SDR DRAM 產品,型號為 IS42S16400,是 64M bits 記憶容量的 Synchronous Dynamic RAM IC[11]。目前一般有在使用中的 Synchronous Dynamic RAM IC 規格有 SDR、DDR、DDR2 及 DDR3 等,而 SDR(Single Data Rate) type 亦即本系統使用的 DRAM 是上述各種 type 中操作速度最慢 的,但由於本系統使用的 CIS 晶片的資料輸出速率只有 25MHz,而 此 DRAM 的操作速率可達 100MHz~133MHz,對儲存與讀取影像資 料的速度已足夠。

圖 2.7 為 ICSI IS42S16400 SDR DRAM 的功能方塊圖,記憶體細 胞陣列由 4 個 Bank 組成,Bank 的選擇由 A13 及 A14 亦即 BA0、BA1 來決定。當要求 DRAM 執行任一動作時,透過由/CS、/RAS、/CAS、

/WE 這 4 個接腳輸入不同的電壓位準的組合來對 DRAM 晶片下命令 (Command) ,當下不同命令的同時,需要輸入位址時則由 Address 接腳輸入。在對記憶體細胞陣列(Cell Array)做定址動作時,會先有一 組位址輸入至 Row Decoder 的位置,以選擇某一 Bank 的某一 Row,

緊接著會有一組位址輸入至 Column Decoder 的位置,以選擇某一 Column,這樣便會有數個 Bits 的資料會被定址到。定址到所要存取 的位址時,當所執行的動作是寫入(Write)時,資料會由 DQ 腳位輸入

(27)

到所定址的位址的位元細胞(Bit Cell)中;而當所執行的動作是讀取 (Read)時,資料會由所定址的位元細胞(Bit Cell)中經 Sense Amplifier 而被做訊號放大的處理,後再被一筆一筆地經 DQ 腳位被讀出。

圖 2.7 ICSI IS42S16400 SDR DRAM 功能方塊圖[11]

在 ICSI IS42S16400 SDR DRAM 的接腳中,BA0 及 BA1 亦可當 成是 Address 的 A12 和 A13。因為此顆 DRAM 晶片是 16Bits 資料輸 出入,其使用到的 DQ 腳位為 DQ0~DQ15。當輸入 Row 的位址時使 用到 A0-A11,而當輸入 Column 的位址時則只使用到 A0-A7。

圖 2.8 是 Read with Auto Precharge 命令動作的訊號波形圖,其 /CAS latency 等於 2 且 Burst length 等於 4,在 command 為 READA 的時鐘脈波信號後的 2 個時鐘脈波信號開始,有 4 筆連續的 Data 於

(28)

Data Pin 腳位可被讀取出來。而在/CAS latency 等於 3 時,則在 READA command 之後的 3 個時鐘脈波信號之後,開始有 4 筆連續的 Data 於 Data Pin 腳位可被讀取出來。因為此命令是包含 Auto Precharge,因 此在之後不用另外再下 Precharge 的命令。/CAS latency 和 Burst length 的值是可由使用者來設定的。

圖 2.8 SDR DRAM Read with Auto Precharge Diagram[11]

圖 2.9 是 Write with Auto Precharge 命令動作的訊號波形圖,其 /CAS latency 的設定值並不會影響到 Write 的動作。其 Burst length 等 於 4,在 command 為 WRITEA 的同一時鐘脈波信號時開始輸入 4 筆 連續的 Data 於 Data Pin 腳位上。因為此命令是包含 Auto Precharge,

(29)

因此在之後不用另外再下 Precharge 的命令。/CAS latency 和 Burst length 的值是可由使用者來設定的。

圖 2.9 SDR DRAM Write with Auto Precharge Diagram[11]

圖 2.10 是 Full Page Read Cycle 命令動作的訊號波形圖,其/CAS latency 等於 2 或 3 且 Burst length 等於 Full Page,在 command 為 READ 的時鐘脈波信號後的第 2 個或第 3 個時鐘脈波信號開始,有 512 筆連 續的 Data 於 Data Pin 腳位可被讀取出來。其 512 筆連續的 Data 稱為 1 個 Page, 並且在 READ command 時須指定 512 筆連續的 Data 在 記憶體中的起始位置。

(30)

圖 2.10 SDR DRAM Full Page Read Cycle Diagram[11]

圖 2.11 是 Full Page Write Cycle 命令動作的訊號波形圖,其/CAS latency 等於 2 或 3 且 Burst length 等於 Full Page,在 command 為 WRITE 的同一時鐘脈波信號時開始連續輸入 512 筆連續的 Data 於 Data Pin 腳位上。其 512 筆連續的 Data 稱為 1 個 Page,並且在 WRITE command 時須指定 512 筆連續的 Data 要存在記憶體中的那一個起始位置。

(31)

圖 2.11 SDR DRAM Full Page Write Cycle Diagram[11]

2.4 VGA Display Monitor

VGA 顯示標準的顯示格式是由 640 x 480 像素的解析度所構成,

包含水平解析度 640 個像素及垂直解析度 480 個像素,這些像素組合 成為一個圖像。每一個像素的顏色是由紅、綠、藍(R,G,B)三原色的信 號電壓位準的高低所構成。RGB 的信號電壓位準越高,則顯示出來 的顏色則越深。像素在螢幕上的顯示是使用順序掃描開關的方式,在 單一瞬間只有其中一個像素被顯示,每一個像素快速輪流地被顯示以 達到呈現整個圖像的顯示效果。依人眼視覺暫留的原理,顯示的圖像 如果更新頻率達到每秒 60 次,便可感受到圖像完整且穩定的動態呈

(32)

現,而不會有圖像在閃爍的感覺。

圖 2.12 以圖示說明了 VGA 顯示掃描方式是由螢幕最上方第 0 列開始由左往右掃描,從第 0 個像素至第 639 個像素,結束後再切換 至第 1 列,直到所有 480 列數都掃描完畢後再回到第 0 列重覆地往下 掃描。所有 640 x 480 個像素都掃描顯示後即完成一次圖像的完整顯 示,而以每秒約 60 個圖像的掃描顯示速率來進行掃描則可使人眼感 覺圖像顯示的完整穩定,此即為 VGA 的顯示原理。

圖 2.12 VGA 顯示規格掃描方式說明圖

表 2.1 是 VGA 連接器信號接腳的說明,其描述了 VGA 連接器

(33)

的每個接腳的名稱及用途說明。其中除了接地腳位外,其它接腳訊號 有使用到的只有 Red、Green、Blue、HSYNC 和 VSYNC,而 ID0、ID1、

ID2 和 ID3 並沒有被使用。Red、Green、Blue 信號簡稱 RGB 信號,

它們是 0V 至 0.7V 的類比電壓輸入信號,負責控制螢幕上某個像素 的顏色,透過改變 RGB 類比電壓輸入的大小則可得到不同的顏色。

HSYNC 為水平同步信號,而 VSYNC 為垂直同步信號,水平同步信 號和垂直同步信號是為了控制整個螢幕的掃描時間和速度,不同於 RGB 的類比信號,它們是屬於數位信號。水平同步信號決定螢幕中 一列的掃描時間,垂直同步信號則決定整個螢幕的掃描時間。

表 2.1 VGA 連接器信號接腳說明[12]

(34)

圖 2.13 是 DE1 開發實驗板的 VGA Connector 信號接線圖,因 FPGA 的腳位輸出信號為數位信號的型式,因此 DE1 開發實驗板中以 並聯不同電阻值的方式,將 FPGA 的 4 個數位輸出信號經不同電阻值 接到 VGA Connector 的 RGB 輸入腳位中的其中一個,以提供 VGA RGB 的類比信號輸入,而達到 4 位元數位轉類比的功能。

圖 2.13 DE1 開發實驗板 VGA Connector 信號接線圖[12]

(35)

圖 2.14 是 VGA 水平信號的時序圖,說明在 VGA 螢幕上每一列 的基本時序關係。 HSYNC 水平同步信號須提供一 Lo 位準信號且維 持一特定的時間長度(圖中之時間 a) ,其指示一個列的資料的結束,

並且亦為下一列的開始。在 HSYNC 水平同步低脈波信號之後,RGB 資料輸入信號須於一段稱為 Back porch(圖中之時間 b)的時間內維持 低位準電壓,之後即於 RGB 腳位上開始輸入該列的每個像素的 RGB 資料以使 VGA 螢幕產生色彩資訊,其時間區段即稱為 Display interval 時間(圖中之時間 c)。最後,在下一個 HSYNC 水平同步低脈波信號 產生之前,RGB 資料輸入信號須於一段稱為 Front porch(圖中之時間 d)的時間內維持低位準電壓。如此,一個列的顯示即完成。

而對 VSYNC 垂直同步信號來說,其跟圖 2.14 VGA 水平信號時 序圖是很類似的,VSYNC 垂直同步低脈波信號指示一個圖框(Frame) 的資料的結束,並且亦為下一圖框的開始,而 Display interval 表示一 個圖框中的全部的列的顯示時間區間。

圖 2.14 VGA 水平信號時序圖

(36)

第三章 系統開發環境與軟體架構

3.1 ALTERA Quartus II 系統開發環境

配合 ALTERA DE1 開發實驗板硬體平台的使用,系統開發環境 使用 ALTERA 的 Quartus II 軟體開發系統來供使用者開發硬體描述語 言 VHDL 或 Verilog HDL,進行編譯、分析及合成的動作,並可執行 偵錯及模擬,待最後功能正確後,可經由 USB Port 對 FPGA 做燒錄 (program)的動作。

Quartus II 軟體開發系統提供了下列的功能特點來加速設計的處 理作業[8]:

* Design Entry * Scripting Support

* Incremental Compilation: Initial Setup

* SOPC Builder

* MegaWizard® Plug-In Manager

* I/O Pin Assignment Analysis * Quartus II Integrated Synthesis

* Third-Party Design Entry and Synthesis * Basic Compilation Flow

圖 3.1 是 Quartus II 的系統開發環境,具專案整合管理及硬體描

(37)

述語言的編輯開發軟體。

圖 3.1 Quartus II 系統開發環境

圖 3.2 是 Quartus II 軟體使用硬體描述語言來做設計的編譯執行 結果,在最下方的 Message 區塊可提供編譯的所有訊息,包含編譯的 錯誤訊息以幫助使用者偵錯。從編譯報告視窗中,可得到關於此硬體 描述語言程式共使用了 FPGA IC 中的多少資源,可幫助使用者之後 在做硬體實現時 FPGA IC 規格的選擇。

(38)

圖 3.2 Quartus II 軟體的硬體描述語言編譯

3.2 系統軟體架構

本系統以 Verilog 硬體描述語言來實現 FPGA 的硬體功能,與傳 統的數位電路設計方法不同的是,傳統的數位電路設計使用電子零組 件接線圖的方式將系統需使用到的電子零組件連接起來以達到系統 所需的功能,此設計方式在數位電路系統規模不大時設計者尚可應 付,但是當系統功能非常複雜且龐大時,傳統的數位電路接線圖設計 方式便會遭遇瓶頸,使其無法在大型電路設計時被採用。而以硬體描 述語言來實現數位電路的設計,則大大簡化大型數位電路設計的困難

(39)

度,硬體描述語言使用如設計軟體程式的方式,將數位電路的運作以 程式語言的方式來描述,擁有程式語言的結構化、模組化、條件式判 斷及重覆性迴圈運作等等,使大型數位電路的實現變成較簡單的工 作,讓設計者可著重在設計處理資料的演算過程,而非如何以數位電 路零組件來組成,如此以大幅縮短產品的開發時間。硬體描述語言的 硬體實現設計方式主要依賴 EDA(Electrical Design Automation)工具 的快速發展,而目前流行的硬體描述語言主要有 VHDL 和 Verilog 兩 種,VHDL 語法較為嚴謹,而 Verilog 語法較為自由且程式可寫得較 為精簡,本系統使用 Verilog 來做 FPGA 的數位系統硬體實現。

本系統的軟體程式架構如圖 3.3 所示,主要包含 Main Program、

CIS Configure、CIS Image Capture、Raw to RGB、Mirror Column、

DRAM Access 及 VGA Display 等程式模組。Main Program 的功能為 操控其它的子程式和處理影像資料及實現系統功能。

CIS Configure 程式的功能主要用來設定 CIS 晶片中的 RGB cell 的 Gain 值和 CIS 的曝光值。如同相機的底片一樣,在較暗的環境中 需將曝光值調大,以得到較明亮且清晰的影像,在本系統的操作使用 過程中亦須隨著環境亮度的不同而調整曝光值,以得到適當的影像品 質及較佳的偵測能力和效果。

CIS Image Capture 程式的功能是用來讀取 CIS IC 所感測到的影

(40)

像資料,其配合 CIS 晶片的 FVAL 和 LVAL 信號來讀取如第 2.2 章節 CMOS Image Sensor Module 中的圖 2.5 Micron MT9M011 CIS IC 像 素陣列圖案的 Raw data 資料。

Raw to RGB 程式的功能是用來將在 CIS Image Capture 程式所讀 取到的 CIS Raw Data 轉換成能夠顯示及處理用的影像 RGB Data。

Mirror Column 程式的功能是用來將每一列的影像資料做左右交 換亦即左右映射的動作,因為 CIS 晶片感測影像是從一列的右邊到左 邊的方式輸出每一像素資料,但是 VGA 螢幕做顯示時是從左到右掃 描輸出,因此必須將每一列的影像資料做左右交換亦即左右映射的處 理。

DRAM Access 程式的功能是用來將使用者所設定的背景圖像存 在 DRAM 記憶體內,存在 DRAM 記憶體內的圖像是黑白灰階的影像 而非彩色的影像,並且亦會將 CIS 所感測的即時影像做儲存,然後再 將即時影像與背景影像由 Main Program 讀取出以做處理和比對的動 作。

VGA Display 程式的功能是用來將影像資料在 VGA 螢幕上顯 現,其輸出符合 VGA 標準的 VSYNC 及 HSYNC 信號給 VGA 螢幕,

及輸出 R、G、B 各 4 位元的數位影像資料,經過圖 2.13 DE1 開發實 驗板 VGA Connector 信號接線圖的 DAC 電阻電路後,連接至 VGA

(41)

螢幕的 RGB 接腳產生影像資訊。

圖 3.3 系統軟體架構圖

3.3 影像讀取

FPGA 以 25MHz 亦即 25M Pixels per second 的速率來讀取 CMOS Image Sensor 輸出的 Raw Data 影像資料,CMOS Image Sensor 會有一 個 25MHz 的 PIXCLK 的 Pixel Clock Output 同步脈波信號,如圖 2.6 Micron MT9M011 CIS IC 資 料 輸 出 時 序 圖 所 示 , 在 確 認 FRAME_VALID 和 LINE_VALID 在為 Hi 的狀態時,利用 PIXCLK 同

(42)

步脈波信號來同步讀取 Raw Data 影像資料。

Raw Data 為如圖 2.5 Micron MT9M011 CIS IC 像素陣列圖案所 示的單一 Red、Green 或 Blue 顏色強度的 CIS 像素細胞的數位資料,

而非一 RGB 像素的資料,因此須透過 Raw to RGB 程式將 Bayer color pattern 結構中相鄰的 Red、Blue 及 2 個 Green 組合成 RGB 像素資料,

如圖 3.4 Bayer color pattern to RGB 像素所示,最後得到一個像素位 址即包含 R、G、B 三個資料。

圖 3.4 Bayer color pattern to RGB 像素[10]

在轉成 RGB 資料之後須再經由一個能夠儲存 640 筆資料的記憶 體空間來將每一列的影像資料做左右交換亦即左右映射的動作,此動 作在 Mirror Column 程式部份進行,使用方法如圖 3.5 RGB 列資料 映射方法所示,在 640 筆資料大小的記憶體空間中取出順序與存入順 序是相反的。

(43)

圖 3.5 RGB 列資料映射方法

3.4 影像灰階轉換

再來便是將 RGB 資料轉換成黑白灰階影像資料以供影像儲存與 比對之用。將 RGB 資料轉換成黑白灰階影像資料的原因之一是因為 RGB 資料會佔據較大的記憶體儲存空間,以所使用的 DRAM 記憶體 其容量並無法存放,原因之二是要同時做儲存與讀取多筆的資料也會 有運作上的問題,並且灰階資料也簡化了影像比對的判斷。RGB 影 像至灰階的轉換是以下列公式作運算[13]:

Gray = (0.3 x Red) + (0.59 x Green) + (0.11 x Blue) (3.1)

經由(3.1)公式之轉換公式,可將所讀取之 RGB 彩色影像(如圖 3.6(a) 所示)轉換灰階後成為於 VGA 顯示器上的影像(如圖 3.6(b)所示)。

(44)

(a)彩色影像資訊 (b)轉換後灰階影像資訊 圖 3.6 影像灰階轉換

3.5 影像存取

此系統使用背景比對法來偵測物體的移動,經由不斷地比對即時 影像與先前所儲存的影像以判斷是否有移動物體或外來物體,以及藉 此得到物體的位置。我們須儲存兩個影像,一是背景影像,二是即時 影像,將背景影像與即時影像存放在 DRAM 記憶體上的不同區塊空 間,背景影像在儲存後便不須變更,而即時影像則須不停地更新。

此系統使用 Integrated Circuit Solution Inc.(ICSI)公司的 SDR DRAM 產品,型號為 IS42S16400,是 64M bits 記憶容量的 Synchronous Dynamic RAM IC。一筆存取的資料為 16bits,此 DRAM 最多可存取 4M 的資料,總記憶位址為 h0 ~ h400000。記憶體儲存空間的規劃為 背景影像儲存在 Address h0 ~ Address h50000(640 x 512),而即時影像 儲存在 Address h100000 ~ Address h150000(h100000 + 640 x 512)。而

(45)

為什麼是 640 x 512 而非 640 x 480 的原因是因為使用的 CIS 晶片的 內部像素陣列的結構中實際有做影像感測的像素有 1280 x 1024 個,

經過 Raw to RGB 及灰階轉換後會產生 640 x 512 個 RGB 像素影像 資料,因此一個圖像須規劃的儲存空間為 640 x 512 個。

圖 3.7 是影像存取的示意圖,由圖中可知系統依 CIS 是輸入背景 影像或是即時影像而分別儲存在不同的記憶體空間,並且即時地讀取 背景影像和即時影像以做影像比對。

圖 3.7 影像存取示意圖

3.6 影像比對與物體外框標示

即時影像和背景影像做影像比對的方式為系統預先設定一個灰 階度影像差的臨界值,當即時影像和背景影像的某些像素的影像灰階 度相差的值大於預設的臨界值時,便判斷其像素的影像與原背景影像 不同,而為原背景影像外的物體或移動物體。因 CIS 影像感測晶片的 像素資料輸出的解析度是 10bits 數位資料輸出,經過 Raw to RGB 及 灰階轉換後依然還是 10bits 的數位影像資料,因而灰階影像值的大小

(46)

範圍會是從 0~1023。系統的影像比對的臨界值經過測試後是設定為 127,即當即時影像和背景影像的像素的影像灰階度相差的值大於 127 時即判定為不同的影像。

如圖 3.7 影像存取示意圖所示,在做影像比對時 FPGA 是持續地 重覆讀取即時影像和背景影像做影像比對,發現不同的影像像素時可 經由持續計數的水平計數器和垂直計數器,而得知該不同像素在 VGA 影像畫面的相對位置。系統持續地做每一像素的影像比對,也 同時更新 4 個系統變數,包含 X-Min、X-Max、Y-Min 和 Y-Max 亦即 影像差異的最左、最右、最下及最上方的像素位置,以為後續的物體 外框標示做準備,其判斷處理方法如圖 3.8 所示。

(47)

圖 3.8 物體影像 X-Min、X-Max、Y-Min 和 Y-Max 判斷流程圖

物體影像的外框標示方法如圖 3.9 物體影像的外框標示判斷法 則所示,其中 H_Cont 為下一個要在 VGA 螢幕做顯示的像素位置的 水平座標,而 V_Cont 為下一個要在 VGA 螢幕做顯示的像素位置的 垂直座標,X-Min、X-Max、Y-Min 和 Y-Max 是物體影像的最左、最 右、最下及最上方的像素位置。圖 3.9 的第一個判斷式 H_Cont=X_Min

& V_Cont>Y_Min & V_Cont<Y_Max 是用來標示物體影像外框的左

(48)

方框線之用,而第二個、第三個及第四個判斷式是分別用來標示物體 影像外框的右方、下方、上方框線之用。如此持續地判斷及更新便可 將在 VGA 螢幕中的移動物體影像的外框以紅色框線在螢幕中顯現。

圖 3.9 物體影像的外框標示判斷法則

3.7 影像顯示

VGA 顯示器除了接地腳位外,其它接腳訊號有使用到的只有 Red、Green、Blue、HSYNC 和 VSYNC。在經過影像比對後,產生 的影像信號可能是 10bits 的灰階影像信號,或者是 10bits 的移動物體

(49)

紅色外框影像信號。

如圖 2.13 DE1 開發實驗板的 VGA Connector 信號接線圖所示,

FPGA 使用 4bits 輸出信號經不同電阻值接到 VGA Connector 中 RGB 輸入腳位中的其中一個,以提供 VGA 監視器 RGB 的類比信號輸入,

而達到 4 位元數位轉類比的功能。因此,在影像資料處理過程中都是 以 10bits 做處理,而在做影像顯示時僅使用最高 4bits 輸出至 VGA 螢 幕。在顯示灰階影像時,是將灰階影像資料的最高 4bits 輸出到圖 2.13 DE1 開發實驗板的 VGA Connector 信號接線圖中的 Red、Green、Blue 的各 4bits 輸入端,在 VGA 螢幕也因此顯現灰階影像。在做顯示移動 物體紅色外框影像時,FPGA 則輸出 4bits 1111 資料至 Red 4bits 輸 入端,而 Green、Blue 的各 4bits 輸入端則皆輸入 0,如此便會於 VGA 螢幕上顯現移動物體紅色外框影像。

VGA 顯示器的 HSYNC 和 VSYNC 輸入信號則須如圖 2.14 VGA 水平信號時序圖所示產生,HSYNC、VSYNC 及像素資料的輸出則如 圖 3.10 影像顯示程式流程圖所示。

(50)

圖 3.10 影像顯示程式流程圖

3.8 物體中心座標顯示

此系統使用 DE1 開發實驗板上的 4 個 7 段顯示器來即時顯示移 動物體外框的中心點在 VGA 螢幕影像上相對於螢幕左下角的座標位 置。左邊兩位數顯示 X 座標,座標顯示範圍為 0~99,右邊兩位數顯 示 Y 座標,座標顯示範圍亦為 0~99。方法為以影像比對時所得到的 X-Min、X-Max、Y-Min 和 Y-Max 來做運算,先得到移動物體的

(51)

X_Center 和 Y_Center 再算出 X_Coordinate 和 Y_Coordinate,其中 X_Center 和 Y_Center 的值是由顯示 VGA 螢幕影像時顯示像素的脈 波信號的計數值所計算得來的,因此在將其轉成座標時需先扣掉圖 2.14 VGA 水平信號時序圖所示的 Sync_a 和 Back porch_b 時間的脈 波信號數,亦即所稱 Blanking 的時間的脈波信號數,如此在轉成座 標值後其座標值才會正確。座標值轉換的公式如下列所示:

X_Center = (X_Min + X_Max)/2; (3.2) Y_Center = (Y_Min + Y_Max)/2; (3.3) X_Coordinate = ((X_Center-144)*100)/640; (3.4) Y_Coordinate = ((513-Y_Center)*100)/480; (3.5)

得到 X 座標和 Y 座標後,再以數字對 7 段顯示器的資料轉換格式,

用掃描顯示方式將 X 座標和 Y 座標顯示在 4 個 7 段顯示器上。

(52)

第四章 系統操作與測試

如圖 4.1 所示為本文所提出之移動物體偵測系統的組成,其包含 ALTERA DE1 FPGA 開發實驗板、CIS 模組及 VGA 顯示器,將 CIS 模組對準所欲監控的空間,經由 CIS 模組將監控的影像輸入到 DE1 開發實驗板上的 DRAM 記憶體晶片上,DE1 開發實驗板上的 FPGA 晶片存取及處理影像資訊後再將影像資訊輸出到 VGA 顯示器上。

圖 4.1 移動物體偵測系統組成

4.1 系統操作

當 Verilog 程式 program 到 FPGA 晶片之後,按下 KEY3 即可 由 VGA 螢幕上觀看到 CIS 模組所看到的即時影像。由 SW0~SW8 的

(53)

Up 或是 Down 的位置可來設定 CIS 的曝光時間,以依環境的明暗度 來調整曝光時間讓系統可得到較適當的輸入影像,SW0~SW8 的設定 值愈大則曝光時間愈長,設定完後按下 KEY1 則曝光時間即被更新。

當要儲存背景影像時,先讓 SW9 保持在 Down 的位置再按下 KEY2,

則背景影像即被輸入到系統中。在背景影像設定完後,將 SW9 保持 在 Up 的位置再按下 KEY3,則 VGA 螢幕上便可觀看到即時影像,

並且移動物體影像偵測比對的工作即同時開始進行,當偵測到外來移 動物體時,於 VGA 螢幕上便會有紅色外框將移動物體影像框住,且 在 7 段顯示器顯示 XY 座標。

4.2 系統於不同環境測試結果

此系統的影像偵測臨界值的設定很重要,當設定過小時,因背景 環境影像光線亮度穩定性的關係,或者 CIS 影像感測穩定性的關係都 有可能會造成錯誤判斷而有誤動作,因而有假訊號產生;而當設定過 大時,則有可能會因物體灰階度與背景太過接近而造成偵測不到的情 形。因此,臨界值須設定在不會造成誤動作或不穩定的情形下儘量設 小。

將圖 4.2(a) 臨界值設為 73 和圖 4.2(b)臨界值設為 127 做比 較,可看到當臨界值設為 73 時,圖 4.2(a)中的移動物體紅色外框線

(54)

呈現不穩定的情形;而將臨界值設為 127 時,移動物體紅色外框線則 呈現穩定不閃爍的狀態,經於不同環境測試後都能正確偵測,因此便 將系統的影像偵測臨界值設為 127。

(a)臨界值設為 73 不穩定 (b)臨界值設為 127 較穩定

圖 4.2 臨界值設定測試

圖 4.3 是以數位相機拍一室內朝門口的背景空間所得到的影像 照片,圖 4.4(a)是當偵測系統的曝光值設為 4 時,從系統 VGA 螢幕 所看到的影像,其只有背景影像而並無外來移動物體影像,但在螢幕 右下角卻有小紅色框框的假訊號,而當將曝光值設為 2 時即可得到如 圖 4.4(b)的正常無假訊號的影像結果。

圖 4.5 是門口無移動物體時之偵測影像與座標值顯示測試,當無 移動物體時,VGA 螢幕無紅色外框,並且 ALTERA DE1 開發實驗板 上的 7 段顯示器顯示 X 為 00 及 Y 為 00。圖 4.6(a)是有一個人出現 在門口偵測範圍時所得到的影像,可看到此系統可正確地偵測到移動

(55)

物體,並以紅色外框框住移動物體,紅色外框隨物體位置變動而變 動,而可達到偵測與追蹤的目的。而圖 4.6(b)的 7 段顯示器為顯示 圖 4.6(a)中門口移動物體的中心座標 X 為 21 而 Y 為 43,系統的移 動物體中心座標追蹤與顯示亦是正常動作。

圖 4.3 數位相機拍門口的背景影像

(a)曝光值設為 4 有雜訊 (b)曝光值設為 2 無雜訊 圖 4.4 曝光值設定測試

(56)

(a)門口之偵測影像 (b) 座標值顯示 圖 4.5 門口無移動物體時之偵測影像與座標值顯示測試

(a)門口之偵測影像 (b) 座標值顯示 圖 4.6 門口有移動物體時之偵測影像與座標值顯示測試

為了進一步驗證所提出系統之效能,將系統運用於教室內、房間 內、電腦教室內及戶外的移動物體偵測的測試結果的照片如圖 4.7 至 圖 4.10 所示,由實測結果顯示此系統可正確地偵測到移動物體並且 即時將移動物體標示出來。由圖 4.7(a)的背景影像及 4.7(b)的偵測

(57)

結果可發現放在白板上的可口可樂罐子被成功偵測到而以紅色外框 框住,並且圖 4.7(c)的七段顯示器顯示其可口可樂罐子的 X 座標為 69,Y 座標則為 31。圖 4.8 為於一房間中的偵測測試結果,不管人 體是於較遠或較近的距離,或是各種姿勢變化如直立、擺動手腳或是 做蹲下的姿勢都能即時偵測追蹤。圖 4.9 則為於電腦教室中的偵測測 試結果,人體位於電腦教室內的桌椅後,不管是直立擺動手腳或是做 蹲下的姿勢亦都能即時偵測追蹤。圖 4.10 為於門外環境的偵測測試 結果,有一隻小狗從腳踏車旁跑過,從監控螢幕上同樣可即時偵測到 小狗影像,而因為是以數位相機朝監控螢幕上拍攝偵測影像,因此照 片中的移動影像及紅色外框有一點重影的現像。

(58)

(a) 教室背景影像 (b)教室內物體偵測

(c)教室內物體座標值 (d)數位相機拍教室影像 圖 4.7 教室內物體偵測測試

(59)

(a)人於房間內較遠處直立 (b)人於房間內較遠處舉起右手

(c)人於房間內較遠處蹲下 (d)人於房間內較近處直立

(e)人於房間內較近處舉起右手 (f)人於房間內較近處蹲下 圖 4.8 房間內移動物體偵測測試

(60)

(a)電腦教室內無移動物體 (b)人於電腦教室內直立

(c)人於電腦教室內舉起左手 (d)人於電腦教室內蹲下 圖 4.9 電腦教室內移動物體偵測測試

(61)

(a)無移動物體 (b)小狗移動中 圖 4.10 戶外移動物體偵測測試

從系統測試中發現當物體接近日光燈時,室內日光燈光線的閃爍 會使 CIS 感應到的物體影像亮度會有變動的情形,使系統在判別物體 外框的位置資訊時也會因光線而變動,因而造成 VGA 螢幕顯示時會 有物體外框飄動的現象。由於 ALTERA DE1 開發實驗板的 VGA 信 號輸出只有 4 位元信號輸出,使 VGA 螢幕顯示影像時影像的解析度 及清晰度較為不足。論文中的測試影像圖片由於是以數位相機拍攝 VGA 螢幕所顯示的影像,因此會有圖片影像不夠清晰的情形,而移 動物體的圖片更會有影像飄動的情形。

(62)

第五章 結論與未來研究

5.1 結論

由測試結果可知本論文所提出的移動物體偵測系統可正確地以 FPGA 為基礎來實現移動物體的偵測與追蹤,相對於使用 DSP 或 PC 為架構可有較低的成本、較低的功率消耗及較小的系統體積。在測試 過程中發現環境光線的明顯變化會影響系統的偵測判斷的結果而造 成雜訊或誤動作的產生,其需要有光線的穩定性才不會讓系統有誤動 作產生。目前此系統只能做單一物體的移動偵測與追蹤,如果有一個 以上的物體進入監控畫面時,系統無法區分其為一個以上的物體而各 別標示,會將所有物體一起框起來標示。

5.2 未來研究

對於目前的系統限制只能偵測追蹤單一物體移動的部份,未來可 再針對監控影像的資訊再加以深入處理及做更多分析判斷的動作,以 找出一些分析法則將各別物體的資訊獨立於其它物體的影像資訊之 外,而來實現多物體分別追蹤的目標。而環境光線亮度對於系統的影 響的部份,未來可再針對環境光線亮度感應的方向進行研究,以能讓 系統以光線亮度感應的結果來知道環境光線亮度變化的情形以自動

(63)

調整 CIS 的曝光值,達到適應性自動曝光調整的功能,以讓系統不會 因外在環境光線亮度的改變而造成系統誤動作。

(64)

參考文獻

[1] 凌啟銘,以適應性背景相減法偵測及追蹤移動物體,國立中央 大學碩士論文,2004。

[2] 簡隆至,即時移動物體偵測及自動追蹤系統,國立臺灣科技大 學碩士論文,2004。

[3] 張龍生,動態場景中的人物之偵測與追蹤,大同大學碩士論文,

2004。

[4] Rui Zhang, Sizhu Zhang and Songyu Yu, “Moving Objects Detection Method Based on Brightness Distortion and Chromaticity Distortion”, IEEE Transactions on Consumer Electronics, Vol. 53, pp. 1177-1185, Aug. 2007.

[5] Lucia Maddalena and Alfredo Petrosino, “A Self-Organizing Approach to Background Subtraction for Visual Surveillance Applications”, IEEE Transactions on Image Processing, Vol. 17, pp. 1168-1177, Jul. 2008.

[6] 林文祥,以 DSP 實現移動物體影像的即時偵測與追蹤系統,國 立臺灣科技大學碩士論文,2006。

[7] 簡宏恩,以軟/硬體共設計方式實現即時監控系統,國立雲林科 技大學碩士論文,2004。

[8] http://www.altera.com

(65)

[9] http://www.imagictek.com [10] http://www.micron.com [11] http://www.icsi.com.tw [12] http://www.terasic.com.tw

[13] 洪啟智,真偽鈔辨識系統之硬體設計,國立高雄第一科技大學 碩士論文,2004。

[14] 繆紹綱,數位影像處理活用 Matlab,全華圖書,2007。

[15] 簡弘倫,Verilog 晶片設計,文魁資訊,2005。

[16] 莊慧仁,FPGA/CPLD 數位電路設計入門與實務應用-使用 Quartus II,全華圖書,2006。

(66)

作者簡介

姓 名: 賴炳成

出生日: 中華民國 58 年 10 月 13 日 出生地: 中華民國台灣省嘉義縣

學 歷: 中華大學 電機工程學系 學士學位 中華大學 電機工程學系 碩士學位

參考文獻

相關文件

在這次的實作遊戲中,我們必須要先對所使用到的硬體 和軟體有其基本的認識,這樣我們才能充分利用我們所擁有 的條件,進一步達成目標。首先 DE2-70 繼承了 Altera 一系 列的開發軟體,如

YouTuber 們只要點開網頁,就能快速使用這些服務。此外 Google 也推出 了 YouTube API,能讓開發者利用 YouTube

倒傳遞神經網路的演算法使 SPOT 假色影像轉換到 SPOT 自然色影 像。影像的結果。(3)以不同天的 SPOT 假色影像進行網路回想,產 生

圖 4.7 是場景一的俯視圖,可以由圖中得知牆壁出現在自走車的左側,而 自走車根據所在位置定義直走是 Y 軸方向,而右轉是 X 軸方向。初始位置自走車

在軟體的使用方面,使用 Simulink 來進行。Simulink 是一種分析與模擬動態

電腦視覺的影像處理與分析在軟體部分,本研究分別使用美國微 軟公司所開發的 Visual C++ 6.0 以及美國 Matrox Imaging 公司所發展 出來的 Matrox Imaging Library 7.0。其中

第一、文中利用直方圖(Histogram)與高頻影像亮度資訊圖來作資料量的比 較,觀察直方圖可以了解差影像與原高解析層級高頻影像的值域分佈情形,舉例 來說,圖-4.3 為 Test Sample

影像傳輸時代的到來,讓 CMOS Sensor 產業蓬勃發展,CMOS Sensor 在 1967 年出現,不過當時技術並未成熟,直至 1990 年初