李慧群
摘 要:該文針對(duì)平臺(tái)定位系統(tǒng)中的圖像識(shí)別和位移計(jì)算模塊展開研究。利用MATLAB的數(shù)字圖像處理環(huán)境,開發(fā)了一套圖像識(shí)別與處理程序,實(shí)現(xiàn)了從CCD讀取圖像、圖像分割、特征信息提取、模板匹配、相對(duì)位移計(jì)算等功能。該文研究的圖像均是二維圖像,首采用灰度變換增強(qiáng)、二值化圖像等方法對(duì)圖像進(jìn)行預(yù)處理,較好地解決了背景和噪聲干擾、部分遮擋的圖像匹配問(wèn)題。
關(guān)鍵詞:圖像識(shí)別 模板匹配 MATLAB 邊緣提取
中圖分類號(hào):TP333 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-3791(2015)11(a)-0003-02
直寫平臺(tái)上定位系統(tǒng)應(yīng)該包括:光源、CCD攝像頭、圖像采集卡、圖像處理系統(tǒng)等,通過(guò)使用圖像攝取裝置將被檢測(cè)的目標(biāo)轉(zhuǎn)換成圖像信號(hào),傳送給圖像處理系統(tǒng),然后根據(jù)亮度、顏色和像素分布等信息,再轉(zhuǎn)變成數(shù)字化信號(hào)[1]。圖像處理系統(tǒng)對(duì)這些數(shù)字化信號(hào)進(jìn)行各種運(yùn)算,以得到被檢測(cè)目標(biāo)的特征值,如數(shù)量、面積、長(zhǎng)度、位置,進(jìn)而依據(jù)預(yù)設(shè)的允許度和其他條件輸出結(jié)果進(jìn)行判別,根據(jù)判別的結(jié)果來(lái)控制現(xiàn)場(chǎng)的設(shè)備動(dòng)作。直寫平臺(tái)上的定位系統(tǒng)在用于生產(chǎn)和裝配上可以提高一定柔性和自動(dòng)化程度。
1 圖像識(shí)別系統(tǒng)
1.1 圖像識(shí)別概述
圖像處理系統(tǒng)是直寫平臺(tái)定位系統(tǒng)中的一個(gè)重要組成模塊。
圖像識(shí)別所討論的問(wèn)題,是研究計(jì)算機(jī)代替人工,可以自動(dòng)地接受并處理大量的物理信息,從而在人工視覺(jué)難以滿足要求的場(chǎng)合代替人類的部分腦力勞動(dòng)。在研制自動(dòng)識(shí)別機(jī)時(shí),計(jì)算機(jī)也往往借鑒人的思考邏輯,采用同樣的處理方式,然而圖像的灰度與色彩是由光強(qiáng)和波長(zhǎng)不同的光波所引起,它們與目標(biāo)元件表面的光線條件、特性、方向等多種因素有關(guān)[2]。在各種不同情況的工作環(huán)境里,景物與圖像已有較多區(qū)別。所以要區(qū)分圖像屬于哪一類,計(jì)算機(jī)通常要采用預(yù)處理、分割、特征提取、分析分類、識(shí)別等步驟。
1.2 圖像識(shí)別系統(tǒng)的構(gòu)成
在直寫平臺(tái)的圖像識(shí)別系統(tǒng),設(shè)計(jì)其基本組成包括圖像輸入設(shè)備、執(zhí)行處理分析與控制的計(jì)算機(jī)、輸出設(shè)備、及存儲(chǔ)設(shè)備中的圖像數(shù)據(jù)庫(kù)、圖像處理程序庫(kù)與模型庫(kù)。
2 圖像分割與特征提取
圖像識(shí)別系統(tǒng)想要進(jìn)行圖像分析和識(shí)別,首先必須先得到圖像,并且所獲取圖像的質(zhì)量會(huì)影響對(duì)圖像的分析和識(shí)別的結(jié)果,所以要對(duì)原始圖像進(jìn)行預(yù)處理:圖像分割與特征提取[3]。
2.1 圖像分割
圖像分割是由圖像處理得到圖像分析的先行步驟,它將圖像分割成若干特定區(qū)域且提取目標(biāo)的技術(shù)。圖像分割算法的研究近代得到高速發(fā)展,到目前為止提出的分割算法有基于閾值的分割方法、基于區(qū)域的分割方法、基于邊緣的分割方法以及基于特定理論的分割方法等。該文采用的是基于閥值的分割法。
2.2 特征提取
圖像的特征提取是圖像識(shí)別的關(guān)鍵步驟,其中如何提取具有較強(qiáng)表示能力的圖像特征是智能圖像處理的一個(gè)研究熱點(diǎn)。特征提取依據(jù)原始圖像,通過(guò)計(jì)算產(chǎn)生一組原始特征進(jìn)行特征形成,良好的特征應(yīng)具有獨(dú)立性好、可區(qū)別性、數(shù)量少等特點(diǎn)。
在圖像識(shí)別系統(tǒng)中,所使用的技術(shù)是二值化圖像,即將目標(biāo)圖像(區(qū)域或邊界)和背景(也包括非目標(biāo)部分)表以不同的灰度級(jí),一般前者灰度值為255,后者的灰度值通常為0。二值化圖像有利于圖像的進(jìn)一步處理,在形狀和結(jié)構(gòu)分析中具有顯著作用,可以凸顯目標(biāo)元件的輪廓。二值化圖像是特征提取的第一步。
點(diǎn)特征是圖像最基本的特征之一,尤其是圖像邊緣曲線上曲率極大值或二維圖像亮度變化劇烈的點(diǎn),這些點(diǎn)決定了目標(biāo)的輪廓特征[4]。因此在圖像識(shí)別系統(tǒng)的圖像配準(zhǔn)中,特征主要針對(duì)點(diǎn)特征。而在點(diǎn)特征提取過(guò)程中則先要剔除不穩(wěn)定的特征點(diǎn),不穩(wěn)定的特征點(diǎn)主要是分布于圖像邊緣的特征點(diǎn)或是一些低對(duì)比度的特征點(diǎn)。因此在程序中側(cè)重于角點(diǎn)的提取。所采用的圖像的角點(diǎn)檢測(cè)方法是先將圖像分割為區(qū)域,然后提取區(qū)域邊界直線,之后求直線的交點(diǎn)為角點(diǎn)。
3 模板匹配
在直寫平臺(tái)上要通過(guò)圖像識(shí)別系統(tǒng)對(duì)元件進(jìn)行識(shí)別,需要進(jìn)行模板匹配。其工作的基本原理是通過(guò)相關(guān)函數(shù)的計(jì)算通過(guò)已知模式到被搜索圖中尋找相應(yīng)模式[5]。
該程序采用的是金字塔搜索策略。金字塔搜索法也叫分層搜索法,是直接基于人眼的視覺(jué)特點(diǎn),先粗后精地觀看事物[6]。利用這種方法具有相當(dāng)高的處理速度。
程序先要對(duì)模板和被搜索圖均進(jìn)行分層預(yù)處理。分層預(yù)處理是將每個(gè)像素平均為一個(gè)像素來(lái)組成二級(jí)影像,再將此二級(jí)影像用同樣的方法處理后得到一個(gè)分辨率更低的圖像。如果依次進(jìn)行下去了次分層處理的話,可以得到個(gè)處理后的圖像。
第一步是從和出發(fā),在的所有搜索位置上和進(jìn)行匹配相似度運(yùn)算,找到相關(guān)的粗匹配位置,并確定粗匹配位置。這個(gè)時(shí)期搜索過(guò)程很快,因?yàn)楫?dāng)前和數(shù)據(jù)量很少,但是這時(shí)相似度值較小,所以可能產(chǎn)生若干個(gè)可能的粗匹配位置。
第二步要從較高分辨率的圖像和上直接進(jìn)行,先在上一步得到的粗匹配位置進(jìn)行相關(guān)搜索,找出一個(gè)或少數(shù)幾個(gè)可能性更大的匹配位置,重復(fù)以上步驟,直到在最高分辨率的搜索圖和模板上找到匹配位置后結(jié)束搜索。
4 程序設(shè)計(jì)及調(diào)試
4.1 程序設(shè)計(jì)
要實(shí)現(xiàn)對(duì)元件的跟蹤,整體設(shè)計(jì)思路是通過(guò)CCD攝像頭獲得元件的圖像,對(duì)濾波,灰度變換,讀取坐標(biāo)等獲得的原始圖像數(shù)據(jù)進(jìn)行處理,并在獲得模板和搜索圖的特征提取的基礎(chǔ)上接著使用改進(jìn)后的匹配算法進(jìn)行模板匹配計(jì)算。在實(shí)際工作中還需要保證兩件事情可以同時(shí)進(jìn)行,一是根據(jù)前后兩幀中元件的坐標(biāo)差值與平臺(tái)的光柵尺的讀數(shù)比較得出元件是否按操作運(yùn)動(dòng);二是模板更新,在工作中需要根據(jù)當(dāng)前目標(biāo)元件和初始模塊的相似度去判斷模板是否需要更新,來(lái)保證模板的正確性。
根據(jù)當(dāng)前圖像識(shí)別系統(tǒng)的總體設(shè)計(jì)樣式和要求,對(duì)系統(tǒng)進(jìn)行設(shè)計(jì),該系統(tǒng)主要包括圖像獲取、圖像處理、模板匹配、結(jié)果實(shí)現(xiàn)與反饋等模塊。
4.2 程序調(diào)試
在直寫平臺(tái)上對(duì)系統(tǒng)進(jìn)行試運(yùn)行并進(jìn)行結(jié)果分析。
首先實(shí)現(xiàn)模板的提取,這是是在初始圖像中完成的。要取得初始的匹配模板,只需要用鼠標(biāo)在初始圖像中的目標(biāo)區(qū)域里要跟蹤的目標(biāo)元件進(jìn)行矩形框選取。如果在工作中需要更新模板即后續(xù)蹤效果不良好的情況下,重復(fù)上步操作可以重新選擇新的模板。
對(duì)平臺(tái)進(jìn)行操作,移動(dòng)元件三次,每次移動(dòng)后動(dòng)運(yùn)行圖像識(shí)別程序獲得一組數(shù)據(jù),數(shù)據(jù)中絕對(duì)坐標(biāo)的單位是,像素的單位是個(gè)。設(shè)第次和第次的X軸絕對(duì)坐標(biāo)的差為,Y軸絕對(duì)坐標(biāo)的差為,X軸像素坐標(biāo)的為,Y軸像素坐標(biāo)的差為,則位移,。如表1所示。
由于元件的絕對(duì)坐標(biāo)和像素坐標(biāo)的單位不同,在這里將對(duì)絕對(duì)坐標(biāo)和像素坐標(biāo)比值進(jìn)行分析得出誤差。建表如表2所示:
由此可知,系統(tǒng)的誤差可控制在10%以內(nèi),但存在較大波動(dòng),這是系統(tǒng)最主要的缺陷之一。這個(gè)缺陷是由系統(tǒng)缺少鏡頭標(biāo)定這個(gè)環(huán)節(jié)所造成的。
經(jīng)過(guò)多次的實(shí)踐過(guò)程可以得到系統(tǒng)中絕對(duì)坐標(biāo)和像素坐標(biāo)位移的換算比例為。
5 結(jié)語(yǔ)
在直寫平臺(tái)的圖像識(shí)別系統(tǒng)里所使用的匹配算法依然存在一些的問(wèn)題,之后要在本文研究的匹配算法上面繼續(xù)改進(jìn)。其中比如,如何屏蔽不合適的檢測(cè)點(diǎn),如何減少匹配計(jì)算的數(shù)量以提高運(yùn)算速度等,都是后續(xù)工作的前進(jìn)方向。并且,在加深環(huán)境對(duì)匹配效果影響的研究前提下去實(shí)現(xiàn)在復(fù)雜環(huán)境下對(duì)目標(biāo)元件的跟蹤。同時(shí)為了實(shí)現(xiàn)一個(gè)完整的自動(dòng)檢測(cè)過(guò)程,在該直寫平臺(tái)上還添加串口通信和電機(jī)的伺服控制單元,根據(jù)數(shù)據(jù)輸出來(lái)控制電機(jī)帶動(dòng)攝像機(jī)運(yùn)動(dòng),使整個(gè)系統(tǒng)形成一個(gè)閉環(huán),提高系統(tǒng)的工作精度。
參考文獻(xiàn)
[1] 章毓晉.圖像處理和分析基礎(chǔ)[M].北京:高等教育出版社,2002.
[2] 夏良正.數(shù)字圖像處理[M].南京:東南大學(xué)出版社,1999.
[3] 羅軍輝,馮平,哈力旦稟.MATLAB7. 0在圖像處理中的應(yīng)用[M].北京:機(jī)械工業(yè)出版社,2005.
[4] 馬平.數(shù)字圖像處理和壓縮[M].北京:電子工業(yè)出版社,2007
[5] 程衛(wèi)國(guó),馮峰,姚東.MATLAB5.3應(yīng)用指南[M].北京:人民郵電出版社,1999.
[6] 樓順天,姚若玉,沈俊霞.MATLAB7.X程序設(shè)計(jì)語(yǔ)言[M].西安:西安電子科技大學(xué)出版社,2000.