[摘 要] 目前許多棒材生產(chǎn)企業(yè)都是由人工進(jìn)行計(jì)數(shù)的,勞動(dòng)強(qiáng)度大且特別容易計(jì)數(shù)出錯(cuò),影響生產(chǎn)效率。針對(duì)這種情況,將利用數(shù)字圖像處理技術(shù)以及opencv數(shù)據(jù)庫(kù)和C++開(kāi)發(fā)棒材自動(dòng)計(jì)數(shù)檢測(cè)系統(tǒng)。通過(guò)圖像采集設(shè)備,將采集的圖像轉(zhuǎn)換為8位Ipllmage格式的灰度化圖像,對(duì)采集來(lái)的圖像進(jìn)行平滑濾波處理轉(zhuǎn)化為二值圖像,提高數(shù)字圖像處理的精度,便于后續(xù)對(duì)所得到的結(jié)果進(jìn)行形態(tài)學(xué)的處理以及提取輪廓個(gè)數(shù)(即為棒材根數(shù)),以實(shí)現(xiàn)自動(dòng)計(jì)數(shù) 。
[關(guān) 鍵 詞] 自動(dòng)計(jì)數(shù);數(shù)字圖像處理技術(shù);Opencv;Microsoft Visual C++
[中圖分類號(hào)] G712 [文獻(xiàn)標(biāo)志碼] A [文章編號(hào)] 2096-0603(2016)34-0065-01
一、引言
數(shù)字圖像處理技術(shù)是隨著計(jì)算機(jī)應(yīng)用和發(fā)展于20世紀(jì)60年代興起的一個(gè)全新的技術(shù)領(lǐng)域,在理論概述和實(shí)際運(yùn)用方面都取得了輝煌的成績(jī)。
圖像處理載入的是低品質(zhì)、有噪音的圖片,經(jīng)過(guò)人為改善后輸出品質(zhì)高的圖像。目前圖像處理的方法多種多樣,主要包括圖片圖像腐蝕、細(xì)化、濾波、銳化等,隨著微電子技術(shù)和計(jì)算機(jī)運(yùn)用技術(shù)的發(fā)展,圖像處理技術(shù)在各個(gè)領(lǐng)域廣泛運(yùn)用。
二、棒材物體計(jì)數(shù)系統(tǒng)軟件的構(gòu)建
三、棒材端面圖像預(yù)處理
(一)圖片預(yù)處理的概述。圖像經(jīng)過(guò)攝像頭等輸入設(shè)備獲取單幀數(shù)據(jù)圖像,將其轉(zhuǎn)換為8位Ipllmage格式的灰度化圖像。在圖像采集的過(guò)程中存在干擾,要對(duì)載入圖片的平滑濾波的操作提高圖片精度,最后將真彩圖片灰度化處理后轉(zhuǎn)化成二值圖像,便于分離背景和工件端面,為后續(xù)的形態(tài)學(xué)處理做準(zhǔn)備。
(二)圖片的載入及格式的轉(zhuǎn)換。載入的圖片必須把其轉(zhuǎn)換成8位Ipllmage格式的灰度化圖像,進(jìn)行形態(tài)學(xué)處理。
1.載入圖像的格式。是定義一個(gè)名為img的空間結(jié)構(gòu)體指針變量,并對(duì)其初始化使其等于0或NULL。
2.圖片灰度化處理。其格式如下:
void cvCvtColor
src為輸入的單精度圖像。
dst為輸出的單精度圖像。
src及dst均為象征代號(hào)其具體可以用空間結(jié)構(gòu)體指針變量定義過(guò)的變量名即可。
code為色彩空間轉(zhuǎn)換,例如將24位真彩圖轉(zhuǎn)化為單通道黑白圖片。
為了便捷這里建議使用vLoadImage指令:
M>0時(shí),就是將載入的圖片強(qiáng)制轉(zhuǎn)變成3通道真彩圖。
M=0時(shí),就是將載入的圖片強(qiáng)制轉(zhuǎn)變成單通道黑白圖。
M<0時(shí),就是將載入的圖片的格式同原圖像的一致。
灰度化后效果圖如下:
(三)對(duì)圖片感興趣區(qū)域分割。所謂對(duì)圖片感興趣區(qū)域分割即圖片ROI提取,如圖2所示。除了棒材端面以外,還有很大一部分是背景區(qū)域,對(duì)其進(jìn)行處理毫無(wú)意義,故在圖像處理以前,需對(duì)圖片進(jìn)行劃分,提高計(jì)數(shù)準(zhǔn)確度。
這里用到的算法是定義矩形框的偏移和大小算法CvRect指令。
(四)圖像平滑濾波處理。圖像平滑就是對(duì)加載的圖像進(jìn)行修復(fù)、除噪、增強(qiáng)的一種處理技術(shù),每一張圖片或多或少都摻雜著一些噪音,因此提高信噪比,是圖像預(yù)處理的首要任務(wù)。下面介紹下3種常用的濾波方式:均值濾波、中值濾波、高斯濾波。
1.均值濾波。均值濾波該算法的基本思路就是求出一個(gè)像素點(diǎn)的像素值及其周圍的8個(gè)像素點(diǎn)的像素值之和的平均值,并賦值給當(dāng)前像素點(diǎn),作為當(dāng)前像素點(diǎn)新的像素值,其方法簡(jiǎn)單,計(jì)算速度快,但是它在降低噪聲的同時(shí)圖像會(huì)產(chǎn)生模糊。
2.中值濾波。中值濾波采用非線性濾波模式,其工作方式是取局部像素點(diǎn)的像素值,進(jìn)行比較,對(duì)于該局部中與周圍像素值相差較大的像素值的點(diǎn),舍去其當(dāng)前像素值,并將周圍的像素值賦值給當(dāng)前像素點(diǎn),故其計(jì)算量小,穩(wěn)定性高,使用方便。
3.高斯濾波。高斯函數(shù)就是標(biāo)準(zhǔn)的正態(tài)分布函數(shù),對(duì)圖像做平滑濾波,剔除噪聲,然后求二階導(dǎo)數(shù),通過(guò)二階求導(dǎo)的優(yōu)化邊緣,在計(jì)算時(shí)也是頻域乘積=>空域卷積。在二維空間中,高斯函數(shù)是中心對(duì)稱的,對(duì)于濾波效果,其在一個(gè)圖像的各個(gè)方向上都是均衡的,故其是最好的平滑濾波器。
(五)圖像濾波效果的實(shí)現(xiàn)。圖像濾波采用Smooth指令進(jìn)行濾波,該算法運(yùn)算速度快,但是其運(yùn)算的精度差。而中值濾波可以有效地提高邊緣質(zhì)量,減少邊緣模糊,且還可以在圖像處理中用來(lái)保護(hù)邊緣信息,但是其在圖片處理中存在拖尾和短拖尾噪聲濾波中效果不佳的現(xiàn)象。高斯卷積平滑濾波其效果最佳,所以采用高斯卷積平滑濾波是最優(yōu)選擇。
四、結(jié)語(yǔ)
本文介紹了棒材端面預(yù)處理的基本流程,并對(duì)其基本過(guò)程(圖片的載入、圖片的格式轉(zhuǎn)換、圖片的灰度化處理、圖片的平滑濾波處理及一些利用opencv編程的算法指令和一些基本的編程要領(lǐng))做了講解。
參考文獻(xiàn):
[1]李邦明,劉中合,王瑞雪,等.數(shù)字圖像處理技術(shù)在棒材計(jì)數(shù)中的應(yīng)用[J].農(nóng)業(yè)裝備與車輛工程,2006(3).
[2]艾天予.淺析數(shù)字圖像處理發(fā)展與應(yīng)用[J].文藝生活(中旬刊),2010(7).
[3]楊小岡,孟飛,李俊山.一種實(shí)用的圖像濾波算法[J].計(jì)算機(jī)應(yīng)用,2009(6).
[4]吳玉蓮.圖像處理的中值濾波方法及其應(yīng)用[D].西安電子科技大學(xué),2006.
[5]康泱.基于像素分類思想的圖像自適應(yīng)混合去噪算法[D].華中科技大學(xué),2006.