基于面陣CCD的運動(dòng)物體瞬時(shí)位置的檢測
因為要給出目標點(diǎn)的位置,所以每張圖像上的物體最終只能用1個(gè)點(diǎn)來(lái)表示,這個(gè)點(diǎn)就是物體的中心點(diǎn),在圖形學(xué)上稱(chēng)為圖形的幾何中心。確定物體的幾何中心,只需掃描整張圖像,尋找顏色是白色點(diǎn),記錄它們的橫坐標和縱坐標,并做累加,同時(shí)累加白色點(diǎn)的個(gè)數,最后把累加得到的橫坐標的值除以白色點(diǎn)個(gè)數后,得到的值就是物體中心點(diǎn)的橫坐標數值,縱坐標也是如此。其算法表示如下:
一般,這樣得到物體的幾何中心還是比較準確的,除非物體在運動(dòng)過(guò)程中發(fā)生了非常大的形變。得到的質(zhì)心是運動(dòng)物體在圖像中的像素坐標,轉換成實(shí)際坐標從而達到對運動(dòng)目標的實(shí)時(shí)監測。
4 軟件設計
CCD采集獲得的圖像為8位位圖格式,本文采用可視化編程軟件VC++實(shí)現圖像預覽以及處理。處理后的數據經(jīng)串口輸出給控制部分。計算機的程序流程圖如圖4所示。
面陣CCD采集到的圖像經(jīng)處理提取后,得如圖5所示其實(shí)時(shí)圖像,并提取跟蹤目標的坐標,圖像每過(guò)100 ms數據處理1次,并與下位機進(jìn)行通信進(jìn)行控制。

在串口通信模塊軟件實(shí)現中使用API函數結合非阻塞通信、多線(xiàn)程等手段;在主線(xiàn)程中處理圖像數據,在輔助線(xiàn)程中監視串口,有數據到達時(shí)依靠事件驅動(dòng),讀人數據并向主線(xiàn)程報告,并且WaitCommEvent(),ReadFile(),WriteFile()都使用了非阻塞通信技術(shù),依靠重疊(overlapped)讀寫(xiě)操作,讓串口讀寫(xiě)操作在后臺運行。這樣做大大節省了時(shí)間,提高了系統的運行效率。
5 硬件設計
計算機通過(guò)RS 232的方式與單片機進(jìn)行通信,將測得的位置信息傳送給單片機,單片機收到數據后控制步進(jìn)電機進(jìn)行跟蹤。其主要包括下位機與上位機的通信,以及步進(jìn)電機的驅動(dòng)電路的設計,硬件控制的框圖如圖6所示。

6 結語(yǔ)
本文通過(guò)面陣CCD對圖像采集,結合計算機數字圖像處理技術(shù)以及單片機,實(shí)現了對數據圖像的掃描處理,從而獲得了跟蹤點(diǎn)的目標位置及對掃描的圖像進(jìn)行實(shí)時(shí)動(dòng)態(tài)的顯示以及跟蹤。在軟件設計中使用了快速中值濾波和多線(xiàn)程技術(shù)使得在實(shí)際使用中能夠達到實(shí)時(shí)準確的目標,為提高非接觸位置測量方面的理論研究、測量技術(shù)及工程設計的水平將有很大的幫助。隨著(zhù)CCD傳感器制作技術(shù)的提高,圖像處理軟件的進(jìn)一步發(fā)展,CCD傳感器與集成電路進(jìn)一步集成,面陣CCD傳感器的應用前景將更加廣闊,其應用的領(lǐng)域將深入到每一個(gè)相關(guān)的專(zhuān)業(yè)領(lǐng)域,將給人們帶來(lái)新的概念。
評論