一章 緒論
1.1 機器視覺檢測技術(shù)概述
機器視覺是研究用相機和計算機來模仿人的眼睛和大腦完成對目標的識別、跟蹤和測量等任務的科學[1]。通俗地說,就是用機器代替人眼來做測量和判斷[2]。它的工作過程大致為:首先,使用相機將被攝取目標轉(zhuǎn)換成圖像信號,傳送給專用的圖像處理系統(tǒng),圖像系統(tǒng)對這圖像中包含的信息進行處理和計算;然后計算機根據(jù)處理的結(jié)果做出判斷或決策;將控制信號傳送給執(zhí)行機構(gòu)。機器視覺的特點是自動化、客觀、非接觸和高精度,與一般意義上的圖像處理系統(tǒng)相比,機器視覺強調(diào)的是精度和速度,以及工業(yè)現(xiàn)場環(huán)境下的可靠性。
機器視覺實際上是數(shù)字視覺技術(shù)與工業(yè)制造技術(shù)的結(jié)合的綜合性技術(shù),主要包括數(shù)字圖像處理技術(shù)、機械工程技術(shù)、控制技術(shù)、電光源照明技術(shù),光學成像技術(shù)、傳感器技術(shù)、模擬與數(shù)字視頻技術(shù),計算機軟硬技術(shù),人機接口技術(shù)等。這些技術(shù)在機器視覺中是并列關(guān)系,這些技術(shù)相互協(xié)調(diào)應用才能構(gòu)成一個成功的工業(yè)機器視覺應用系統(tǒng)。
將機器視覺應用到制造業(yè)的檢測領(lǐng)域中,用機器視覺系統(tǒng)確定產(chǎn)品相對于一組標準要求的偏差的過程通常稱為機器視覺檢測[3]。它特指機器視覺在工業(yè)檢測方面的應用,是機器視覺應用和研究領(lǐng)域中的一個重要分支。
機器視覺檢測是一種適合現(xiàn)代制造技術(shù)發(fā)展的檢測方式。它與傳統(tǒng)的檢測方法相比,有著如下的優(yōu)勢:首先,機器視覺可以實現(xiàn)非接觸在線檢測,完成對生產(chǎn)線上的零件進行100%的檢測,滿足自動化制造系統(tǒng)中的工序間檢測和過程檢測的要求;其次,機器視覺檢測是通過計算機或者數(shù)字信號處理器中的程序?qū)D像信息進行處理而得到的測量結(jié)果,因此機器視覺檢測具有一定的智能和柔性,適于現(xiàn)代企業(yè)的柔性生產(chǎn)方式;再次,只要選用足夠高精度的鏡頭和圖像傳感器,機器視覺檢測技術(shù)可以達到較高的檢測精度;機器視覺易于實現(xiàn)信息的集成和管理,為實現(xiàn)計一算機集成制造技術(shù)提供必要的支持。并且機器視覺檢測與傳統(tǒng)的人工檢測相比效率更高,檢測結(jié)果更加準確可靠。由于機器視覺檢測不會受到操作者的疲勞度、責任心和經(jīng)驗等因素的影響,在一些不適合人工作業(yè)的危險場合,人工視覺難以滿足要求的場合和帶有高度重復性、智能性并且靠人的眼睛無法連續(xù)穩(wěn)定地進行產(chǎn)品檢測的場合,機器視覺可以發(fā)揮它自身的優(yōu)勢來、高質(zhì)量的完成檢測任務。
機器視覺檢測是與先進制造工藝與現(xiàn)代制造生產(chǎn)模式相適應的智能化、自動化、柔性的檢測手段。在國外己經(jīng)將機器視覺系統(tǒng)廣泛地用于工況監(jiān)視、成品檢驗和質(zhì)量控制等領(lǐng)域。在中國,這種應用也在逐漸被認知,對于機器視覺的需求將越來越廣泛。
1.2 機器視覺檢測的研究概況
機器視覺技術(shù)是在20世紀50年代從統(tǒng)計模式識別興起的,但由于機器視覺系統(tǒng)的復雜性,當時的研究工作主要集中在對二維圖像的分析、識別和理解上,如光學字符識別、工件表面、顯微圖片和航空照片的分析解釋等。
60年代中期,R. Robert開創(chuàng)性的三維景物分析研究成為機器視覺的起源,他運用數(shù)字圖像研究實體模型,對物體形狀和結(jié)構(gòu)進行了描述。
70年代,MIT的學者提出了機器視覺的理論。
80年代,Marr從信息處理的角度綜合了圖像處理、心理物理學、神經(jīng)心理學及精神病學的研究成果,提出了第一個較為完備的視覺處理框架,他將視覺分為自上而下的三個階段,創(chuàng)建了Marr的理論框架。
近年來,隨著機器視覺理論及應用技術(shù)的不斷發(fā)展,人們逐漸認識到Marr的理論框架存在以下不足,即被動接受信號,無主動性和目的性,處理過程沒有反饋環(huán)節(jié),用一些假設和基本的約束保證通用性。因此,許多學者在機器視覺的現(xiàn)狀與目標、理論與方法以及實驗與應用等方面發(fā)表了許多不同的見解,探索了新的理論,在很大程度上促進了機器視覺技術(shù)的發(fā)展[4,5]。
當前,隨著機器視覺檢測系統(tǒng)應用的增加,對機器視覺的研究也越來越多。一些研究機構(gòu)或企業(yè)開發(fā)了機器視覺系統(tǒng)軟件的開發(fā)平臺或者函數(shù)庫,提供一些常用的算法和工具。但是,機器視覺是一門交叉性強的學科,因此在研究和應用中一套視覺系統(tǒng)一般只針對某一種檢測任務來進行研究和開發(fā),沒有一套機器視覺系統(tǒng)是對任何檢測工程來說是通用的。
根據(jù)機器視覺的應用領(lǐng)域不同,對機器視覺檢測的研究可以分為不同的種類,不同的學者對分類也有不同的見解[6,7]。在現(xiàn)階段的研究中通常分為以下三種類型:
(1)尺寸測量
尺寸測量是機器視覺研究和應用的重要應用領(lǐng)域,也是一個比較早開始的研究的方向。機器視覺應用于尺寸測量工程中時,從視覺系統(tǒng)的硬件(光源、圖像傳感器等)的選用到軟件算法的設計中的每一個環(huán)節(jié)都對性能產(chǎn)生影響。需要根據(jù)工程的自身特點選擇合適的硬件。
(2)表面質(zhì)量檢測
機器視覺檢測技術(shù)已經(jīng)廣泛應用到工業(yè)產(chǎn)品的表面檢測中,主要檢測的內(nèi)容包括毛刺、劃痕、磨損等。但對復雜曲面的視覺檢測仍有一定的困難,一方面,工件表面的反射方向復雜、存在陰影等因素影響著圖像的質(zhì)量,另一方面相機的鏡頭方向和距離工件的位置的控制也是影響檢測精度的因素。
(3)目標分類與識別
目標分類與識別一直是研究的熱點,物體識別的基本方法是建立物體模型,使用各種匹配算法從真實的圖像中識別出物體最相似的目標。根據(jù)物體識別任務所在的空間,物體識別可以分為二維特征識別和三維特征的識別。二維識別用在識別遠距離的物體或者在場景中穩(wěn)定的位置的物體。三維識別通過物體的灰度圖或2.5維圖獲取實際場景中的信息來識別物體的三維結(jié)構(gòu)特征。信件分揀、指紋識別、人臉識別、車牌識別等都是此方面典型的應用。
1.3 機器視覺檢測技術(shù)的應用
自上世紀八十年代初開始,國外有關(guān)視覺檢測技術(shù)的研究逐漸興起。美國人首先將視覺檢測系統(tǒng)應用于制造業(yè)[8],其中,有100多家公司躋身于視覺檢測系統(tǒng)的經(jīng)營市場。而國內(nèi)的視覺檢測研究從上世紀九十年代才開始得到重視。相關(guān)資料表明,目前視覺檢測技術(shù)已經(jīng)在印刷電路板的檢測、汽車車身檢測、鋼板表面的自動探傷、機械零件的自動識別分類和幾何尺寸測量、大型工件平行度和垂直度測量、容器容積或雜質(zhì)檢測及農(nóng)產(chǎn)品的檢測等領(lǐng)域得到了廣泛應用。
在電子工業(yè)中,由于超大規(guī)模集成電路的出現(xiàn),使得集成芯片(IC)的密度和復雜度大大提高,PCB的布線變得更加復雜。傳統(tǒng)的檢測方法越來越不適應,檢測成本越來越高。而視覺檢測以其快速、精確的優(yōu)點,為印刷電路板(PCB)和集成芯片(IC)的自動檢測提供了高性價比的新方案。PCB和IC的檢測代表了一類重要的視覺應用領(lǐng)域,目前在PCB和IC的生產(chǎn)線上,大約60%的檢測任務是由機器視覺檢測來完成的。Perkins等人描述了用于檢測平板上元器件(如裝配的PCB)的機器視覺系統(tǒng),系統(tǒng)應用邊緣檢測,細化和連接邊緣成分段直線來處理PCB圖像,并對準模型和場景在分割描述的基礎(chǔ)上決定匹配點[9]。Franci
Lahajnar等人描述對電路板自動檢測的機器視覺系統(tǒng)[10],他們應用亞像素邊緣檢測技術(shù)和半自動校正系統(tǒng)來分辨電路板的物理特性,通過檢測電路板的尺寸反映刀具的磨損情況。
在汽車制造業(yè)中,視覺檢測主要用在轎車車身生產(chǎn)線,對車身側(cè)圍、底盤、以及整個下身總成關(guān)鍵尺寸進行檢測,還用于生產(chǎn)線中機器手的定位、瞄準,從而實現(xiàn)機器手的自適應自動化安裝,大大提高了汽車產(chǎn)品質(zhì)量和生產(chǎn)效率,降低了生產(chǎn)成本。Schmidberger等人用一個裝配在機器人上的照相機來檢測大尺寸平面上的信息,移動機器人拍攝不同部位圖像,通過圖像處理的方法比較被測零件與標準零件圖像,從而檢測裂縫、折疊、孔洞丟失等缺陷[11]。Dimitrios
Kosmopoulos等人開發(fā)了汽車用自動檢測間隙系統(tǒng)[12],任務是測量車身與裝在其上的各種面板(包括門,發(fā)動機罩等)之間的間隙尺寸。該系統(tǒng)在多于30處位置進行檢測,測量的有效(RMS)。
< 0.1mm。
< 0.1mm。
在機械零件檢測中,主要包括零件的自動識別與分類、零件幾何尺寸與形位誤差的測量以及工件表面或內(nèi)部的缺陷檢測。機械零件的視覺檢測是將三維物體拍攝成二維的數(shù)字圖像,根據(jù)圖像來分析和理解空間物體。大部分機械零件的構(gòu)成要素是直線和圓弧,對它們的檢測,常采用測量點序列進行擬合以求得參數(shù)值。在Mills研究的尺寸測量系統(tǒng)中[13],使用高分辨率線掃描相機來獲取圓柱形零件的檢測圖像,通過對圖像的處理及分析,計算其尺寸誤差。Bremner描述了一個使用x-y驅(qū)動條鋼形狀的尺寸檢測系統(tǒng)[14],在3×2mm2的視場內(nèi)達到0.01mm的精度。
視覺檢測在農(nóng)業(yè)中的應用主要體現(xiàn)在農(nóng)產(chǎn)品的檢測方面,農(nóng)產(chǎn)品的圖像檢測技術(shù)按其目的不同可分成:分級、檢驗和分類。1999年,J.
Paliwal等人研究了不同品種小麥的識別技術(shù)[15],基于彩色參數(shù)和傅立葉描述算子,利用小距離分類器,對五種加拿大小麥的識別,其準確率分別為100%、94%、93%、99%和95%。X
Lou等人對完整小麥和破損小麥的檢測進行了研究,分別采用基于統(tǒng)計分類器的K-近鄰法和基于BP網(wǎng)絡分類器的檢測方法。試驗結(jié)果表明,基于BP網(wǎng)絡分類器的識別準確率高于基于統(tǒng)計分類器的方法[16]。
在醫(yī)藥業(yè)中,膠囊類的藥品包裝一般使用鋁塑板包裝,其優(yōu)點是方便、衛(wèi)生及密封性好。但存在漏裝、殘缺、漏粉等現(xiàn)象。針對這一問題,左奇等人提出一種基于局部二值化的視覺檢測方法[17]。相關(guān)實驗表明,檢測為合格品的正確識別率為99.95%,識別速率達200粒/s。
機器視覺檢測已經(jīng)滲入到工業(yè)生產(chǎn)的各個領(lǐng)域。成為保證產(chǎn)品質(zhì)量的一個重要環(huán)節(jié)。
1.4 課題背景及本文主要工作
注塑制品的應用以輕工業(yè)和建筑業(yè)為主,目前在發(fā)達國家,其消費比例可達40%以上。隨著功能性塑料的開發(fā),更多的注塑制品進入衛(wèi)生領(lǐng)域?,F(xiàn)在塑料作為一種新型材料,正在迅速進入辦公室自動化、海洋開發(fā)、信息產(chǎn)業(yè)等技術(shù)領(lǐng)域,并逐漸向其他領(lǐng)域拓寬[18]。
但是注塑產(chǎn)品的質(zhì)量檢測卻是令每個注塑企業(yè)頭痛的問題。如果不掌握正確的注塑質(zhì)量檢測方法,就很難控制注塑件的質(zhì)量,甚至會出現(xiàn)一些意想不到的品質(zhì)問題,給企業(yè)造成很大的經(jīng)濟損失。一些注塑企業(yè)由于對注塑生產(chǎn)過程中的產(chǎn)品質(zhì)量檢測方法不當,經(jīng)常出現(xiàn)各種產(chǎn)品質(zhì)量問題(如:外觀、顏色、結(jié)構(gòu)、尺寸、強度、裝配不良等),造成注塑產(chǎn)品不良率高、批量退貨、客戶抱怨、延誤交期,導致注塑過程中廢品率高、料耗大、成本高,企業(yè)的競爭力下降。
而現(xiàn)在國內(nèi)檢測工具多為投影儀、精密高度尺、針規(guī)、量塊、半徑樣板、卡尺等。而這些離線檢測方法不利生產(chǎn)過程的自動化,不符合現(xiàn)代制造業(yè)檢測實時,在線,非接觸的要求。于是現(xiàn)在少數(shù)大型注塑產(chǎn)品生產(chǎn)商,就開始采用機器視覺的辦法進行在線實時檢測。正是這種基于機器視覺的檢測方法使得注塑產(chǎn)品檢測過程的自動化、智能化成為可能。
基于此,本文將研究重點放在實現(xiàn)注塑制品的機器視覺檢測,提高注塑制品檢測的效率以及產(chǎn)品的生產(chǎn)質(zhì)量。
本文在東北大學流程工業(yè)與綜合自動化重點實驗室的注塑生產(chǎn)過程基礎(chǔ)上設計并實現(xiàn)了基于機器視覺技術(shù)的檢測系統(tǒng),實現(xiàn)注塑制品的自動質(zhì)量檢測,分揀,以及為注塑機控制提供定性控制反饋消息的功能。主要工作包括以下幾個方面:
(1)
在調(diào)研注塑生產(chǎn)過程、查閱大量文獻的基礎(chǔ)上,本文完成了基于機器視覺的注塑制品質(zhì)量檢測系統(tǒng)的軟硬件設計。根據(jù)系統(tǒng)要求,對硬件設備進行選型,搭建機器視覺檢測系統(tǒng)的硬件平臺。在硬件平臺的基礎(chǔ)上,利用VC++編寫攝像頭的控制代碼。改進人機界面,增強軟件功能。用軟件實現(xiàn)理論研究的算法,對圖像進行處理。并與注塑機控制系統(tǒng)進行通訊,實現(xiàn)交互控制。
(2)
針對所獲取的圖像存在背景、噪聲等干擾信息,不適于直接進行缺陷檢測的問題,本文研究了相關(guān)的預處理算法。針對單一采用閾值或差影法進行背景分割都存在缺陷的情況,本文采用先閾值后差影的方法,得到了優(yōu)于上述兩種算法的分割背景制品圖像。為了解決分割背景處理后,有可能出現(xiàn)的噪聲問題,本文改變了常規(guī)的濾波步驟,在得到背景圖像前先進行濾波,然后再判別背景與目標??朔肃徲蚱骄▽α闵⒃肼暱朔蛔阋约爸兄禐V波方法在大面積噪聲處理時失效的問題。增強了背景分割算法對于外界環(huán)境變化的適應能力,提高了算法的實用性。
(3)在取得滿意圖像的基礎(chǔ),進行制品缺陷的特征提取研究。首先,分析了注塑制品質(zhì)量缺陷的特點,提出將注塑制品缺陷分為形狀缺陷以及紋理缺陷分別進行特征提取的思路。在形狀特征提取方面,本文提出一種兼顧實時性與準確性的方法,利用幾何特征檢測的迅速性對制品進行初步的定性判斷,如有缺陷的制品產(chǎn)生,再通過不變矩得到缺陷的細節(jié)特征。在紋理特征提取上,結(jié)合灰度共生矩陣,Gabor小波濾波器各自的優(yōu)點,對特征向量進行優(yōu)化組合,減少了傳統(tǒng)方法的特征向量維數(shù),在保證準確率的情況下,提高了分類效率。
(4)對注塑制品的缺陷檢測方法進行了研究。選擇多分類支持向量機并根據(jù)系統(tǒng)的特點與要求對分類器進行了設計。綜合應用上述方法,實現(xiàn)了基于機器視覺的注塑制品缺陷檢測,獲得了較高的檢測正確率,較好的滿足了注塑制品檢測的要求。
第二章 系統(tǒng)的設計與實現(xiàn)
上一章介紹了機器視覺檢測系統(tǒng)的研究現(xiàn)狀,分析了當前機器視覺檢測系統(tǒng)存在的問題及發(fā)展方向,為本文對機器視覺檢測系統(tǒng)的研究奠定了基礎(chǔ)。本章首先對機器視覺檢測系統(tǒng)的組成、原理及相關(guān)設備選型進行研究,結(jié)合實際注塑生產(chǎn)過程設計并實現(xiàn)了注塑制品視覺檢測系統(tǒng)硬件平臺的搭建;在Visual
C++6.0編程環(huán)境下建立注塑制品視覺檢測系統(tǒng)人機界面,為后續(xù)工作提供基礎(chǔ)軟件平臺。
2.1 系統(tǒng)總體結(jié)構(gòu)
基于機器視覺的檢測技術(shù)是一種有效的非接觸檢測技術(shù),廣泛應用于各種加工件的在線檢測以及高精度、高速度的測量。典型視覺檢測系統(tǒng)由CCD傳感器、光學系統(tǒng)、計算機數(shù)據(jù)采集和處理系統(tǒng)、機械運動工作平臺等部分組成[19]。本文所設計的機器視覺系統(tǒng)結(jié)構(gòu)組成框圖。
視覺檢測系統(tǒng)的硬件由光源、CCD攝像機、圖像采集卡、工業(yè)計算機,機械臂組成;軟件為在VC++平臺下編寫的圖像獲取程序及其他相關(guān)功能組件。整個視覺系統(tǒng)的工作過程如下:首先由機械臂將注塑制品夾至兩臺攝像機的位置,拍取制品的正反兩面的圖像;然后通過1394采集卡將圖像傳送到工業(yè)PC機,通過圖像處理軟件的運算,得到制品的缺陷信息,并將這些信息發(fā)送到注塑生產(chǎn)控制上位機中;控制系統(tǒng)根據(jù)所得到信息對控制參數(shù)進行調(diào)整,并控制分揀系統(tǒng)將缺陷制品與合格制品分揀到不同位置。
2.2 硬件系統(tǒng)的設計與實現(xiàn)
視覺系統(tǒng)的硬件設計優(yōu)劣直接關(guān)系到圖像獲取的效果,并且對圖像處理方法的選擇以及檢測效果產(chǎn)生直接的影響。因此,系統(tǒng)的硬件設計與實現(xiàn)是視覺檢測系統(tǒng)搭建的重要環(huán)節(jié)。
2.2.1 硬件系統(tǒng)設計
獲得注塑制品的過程,稱之為注塑成型或者注射成型,或者簡單的稱之為注塑[20]。一個完整的注塑工藝流程主要由閉模、注射座前進、注射、保壓、預塑計量、冷卻、開模、取出制品等程序組成,如圖2.2所示。
為了在獲得制品待檢測信息的同時保證生產(chǎn)過程的連續(xù)、穩(wěn)定,本設計使用視覺傳感器與取出機構(gòu)配合共同完成采集制品圖像信息。本文根據(jù)機器視覺工作原理的基本結(jié)構(gòu)設計(如圖2.3所示),以及注塑制品的特點對設備進行選型并將硬件系統(tǒng)組裝實現(xiàn)。
2.2.2 系統(tǒng)關(guān)鍵設備選型
機器視覺檢測系統(tǒng)關(guān)鍵設備的選型與檢測的要求息息相關(guān),本文依據(jù)GB-T
14486-93塑料件尺寸公差標準,在考慮小可測的形狀以及紋理特征基礎(chǔ)上,查閱大量文獻,進行了相關(guān)實驗,確定了光源、數(shù)字攝相機、光學鏡頭、采集卡以及工業(yè)計算機等關(guān)鍵設備。
(1)光源與照明方式
在機器視覺應用系統(tǒng)中,合適的光源與照明方式往往是整個系統(tǒng)成敗的關(guān)鍵[21]。光源與照明方式的配合應盡可能地突出物體的特征,在物體需要檢測的部分與那些不重要部分之間產(chǎn)生明顯區(qū)別,增加對比度;同時還應保證足夠的整體亮度,使得物體位置的變化不影響成像的質(zhì)量。
LED光源具有形狀自由、使用壽命長、響應時間短、顏色自由、綜合成本低等優(yōu)點,且在外部條件 (外部光噪聲,目標的傾斜,材質(zhì)和系統(tǒng)類型)
不斷變化的情況下均能持續(xù)的獲得對比鮮明的圖像。因此,選用LED光源作為視覺檢測系統(tǒng)的光源。在此基礎(chǔ)上,結(jié)合實驗室注塑制品特點,選用線條照明方式(單向照明),如圖2.4所示,實現(xiàn)對制品照明,該照明方式可以通過對照射角度的調(diào)節(jié),實現(xiàn)對制品邊緣以及紋理特征的突出顯式,為實現(xiàn)對制品缺陷的檢測提供可靠的保證。
(2)數(shù)字攝相機
由于CCD相機具有體積小巧、性能可靠、清晰度高等優(yōu)點,本設計選用了Basler公司的CCD數(shù)字攝像機。相對于其他視覺系統(tǒng)而言,注塑制品體積較大、精度較高,因此,本設計選用了200萬像素CCD黑白攝像機;其型號為Basler
A641f,分辨率為 ,傳感器類型為逐行掃描CCD,機械光學接口為C型,外部接口為IEEE 1394;
(3)光學鏡頭
考慮到本實驗系統(tǒng)測量距離固定、視場較大,且鏡頭必須與攝像機配合使用等因素,本設計選用了Computar
M1214-MP百萬像素固定焦距鏡頭,其焦距為12mm,分辨率在中心和邊緣處超過100線對/mm,視場角H:40.4o、V:30.8o。
另外,實驗過程中發(fā)現(xiàn),光的反射作用對圖像的影響同樣不可忽視,而偏振片能夠使光的透振方向與景物周圍反射光的偏振方向垂直,可以消除光反射產(chǎn)生的影響,使得影像清晰,突出被檢測特征部分的信息。因此,本設計選用與鏡頭配套的偏振片,來減弱光反射對于圖像所造成的影響。
(4)圖像采集卡
本設計針對Baslar公司的A641f面掃描攝相機,選取了雙路IEEE
1394接口的圖像采集卡,其具有高速、穩(wěn)定、大緩存等特點,保持視覺傳感器與PC機之間的通訊與數(shù)據(jù)傳輸;
(5)工業(yè)計算機
本設計選用惠普公司生產(chǎn)的Pavilion(暢游人)V1369cn計算機。該計算機采用強大的支持超線程技術(shù)的Intel
64位PⅣ2.93G處理器,全面支持64位應用程序;512M DDR2內(nèi)存,進一步提升系統(tǒng)性能;全新nVidia Geforce
7300LE顯卡,增強的視覺體驗;80G 7200r/m的高速大容量硬盤提供快捷方便的信息存儲。
2.2.3 硬件系統(tǒng)的實現(xiàn)
硬件系統(tǒng)實現(xiàn)重要的部分就是攝像頭與光源位置的選擇。攝像頭的安裝位置主要根據(jù)機械臂的工作流程來選取。本系統(tǒng)選用了機械臂上行與釋放兩個階段的位置,對注塑制品進行圖像采集。在上述兩處位置進行圖像采集不僅大限度的獲取了制品正面與背面的信息,而且易于攝像機的安裝,便于系統(tǒng)設計。攝像機1與攝像機2及其光源的布置。
攝像頭所在位置能夠得到圖像正反兩面的信息,而且沒有改變原本的注塑機生產(chǎn)過程,同時保證了圖像質(zhì)量。
接下來將雙回路IEEE1394圖像采集卡插入計算機內(nèi),通過兩條1394傳輸線,與相機連接,并安裝相機驅(qū)動。然后進行光學調(diào)焦,得到清晰,且能突出圖像主要特征的圖像。
通過上述各個環(huán)節(jié)的選型與設計,完成了注塑制品機器視覺檢測系統(tǒng)硬件平臺的搭建工作。系統(tǒng)如圖2.8所示。
本系統(tǒng)主要有以下優(yōu)點:
(1)該設計沒有破壞生產(chǎn)的連續(xù)性,保證在正常的連續(xù)生產(chǎn)過程中也能得穩(wěn)定的圖像;
(2)能夠得到注塑制品正反面的圖像信息;
(3)通過高分辨率的數(shù)字攝像機,能夠得到更精確的注塑制品的特征;
(4)系統(tǒng)各個組成部分采用模塊化設計,易于改造與維護。
2.3 軟件系統(tǒng)的設計與實現(xiàn)
本系統(tǒng)軟件采用采用C++語言,在VisualC++6.0下開發(fā)調(diào)試。與Java和C#等現(xiàn)代編程語言相比,C++在程序運行的效率、內(nèi)存使用的可控性和編程的靈活性上具有優(yōu)勢。并且VisualC++平臺能夠提供良好的人機界面,便于用戶的操作和使用。軟件設計采用模塊式設計思路,各功能模塊都以主程序界面為初始啟動界面,并通過主程序界面相聯(lián)系。本系統(tǒng)軟件具有良好的可靠性、易維護性、易擴充性及易裝卸性。
2.3.1 軟件系統(tǒng)基本框架
本系統(tǒng)采用模塊化的設計思想,化整為零,將各個功能用相應的模塊來設計。在設計過程中,遵循由上至下的設計方法,首先根據(jù)系統(tǒng)的總體需求,將系統(tǒng)劃分為各個功能模塊:圖像采集與顯示模塊、系統(tǒng)通信模塊以及輔助功能模塊三部分。這樣不但增加了程序的可讀性,也增加了程序的可維護性,使流程圖更加清晰明了,同時避免了大量的重復編程工作。
如圖2.9與圖2.10分別為軟件的總體結(jié)構(gòu)流程圖和系統(tǒng)的程序界面。
2.3.2 圖像的采集與顯示模塊
圖像的采集與顯示是視覺軟件系統(tǒng)基本的功能,通過查閱和分析大量相關(guān)資料,本文編寫了實用高效的程序,實現(xiàn)了圖像的采集與顯示功能。
2.3.2.1 圖像采集模塊
圖像采集模塊編程是與硬件設備直接相關(guān)一個環(huán)節(jié),也是計算機直接控制數(shù)字攝像機的過程。在這個過程中,計算機將不僅控制攝像機的起動和停止,還可以將攝像機實時傳來的圖像信息,以二維數(shù)組的形式存入計算機內(nèi)存中,以備使用??紤]到實際操作的方便,本文建立了兩個消息響應函數(shù),一個是開始采集響應函數(shù)啟動攝像機,進行圖像數(shù)據(jù)的實時采集函數(shù);一個是停止采集響應函數(shù),主要來釋放采集進程調(diào)用的一些內(nèi)存資源,關(guān)閉攝像機。由于兩部攝像使用大致相同,以下以攝像機1為例設計其響應函數(shù)。
(1)采集開始消息響應函數(shù)程序
在用戶給出圖像采集命令后,系統(tǒng)對攝像機進行一系列初始化工作,并把在圖像緩沖區(qū)中的數(shù)據(jù)保存在系統(tǒng)內(nèi)存中。其程序流程圖如圖2.11所示。
(2)采集停止響應函數(shù)程序流程圖
在用戶發(fā)出結(jié)束采集的命令后,程序并不會立即結(jié)束,而是需要進行相關(guān)的內(nèi)存釋放工作,保證內(nèi)存的正確調(diào)用,使系統(tǒng)能夠穩(wěn)定運行。其工作流程圖如圖2.12所示。
2.3.2.2 圖像的顯示模塊
經(jīng)過上面的圖像采集工作,僅是把攝像實時采集到的圖像信息作為一個二維數(shù)組放到指定內(nèi)存中。即使運行程序,在程序的窗口中也無法顯示圖像。因此需要設計圖像的顯示模塊,將內(nèi)存中二維數(shù)組轉(zhuǎn)化為圖像格式,在計算機的屏幕上顯示出來。
(1)數(shù)位轉(zhuǎn)換
首先需要進行數(shù)位轉(zhuǎn)換運算。因為本系統(tǒng)使用Basler數(shù)字攝像機得到是16位的二維灰度圖像。普通計算機只能顯示8位圖像數(shù)據(jù),如果仍然采用16位灰度圖像數(shù)據(jù),不僅給編程造成不必要的麻煩,而且極大影響程了程序運行速度。所以這里要將16位數(shù)據(jù)轉(zhuǎn)換成8位。這時要建立一段新的內(nèi)存區(qū)域,用來存放轉(zhuǎn)換后的圖像信息。16位數(shù)據(jù)中有12位顏色信息,4位其它信息,其方法是對其右移位4位,然后僅保留低8位,去掉高4位,就能得到8位圖像信息。
(2)圖像的顯示
用來作為圖像處理的位圖,都是DIB位圖。實際上它就是存入內(nèi)在中的去掉了14個字節(jié)位圖文件頭的BMP文件。它由兩部分組成,即位圖信息和像素數(shù)據(jù)。這兩部分可以存放在一起,也可以分開存放。這種位圖有著以下優(yōu)點:
1)采用單一位平面,結(jié)構(gòu)比較簡單;
2)坐標原點在左下角,圖像從低一層開始存放;
3)位圖信息頭中包括了圖像的分辨率與顏色的倍數(shù);
4)像素數(shù)據(jù)可以采用行程編碼。
像素數(shù)據(jù)已經(jīng)由攝像機輸入機算機內(nèi)存。位圖信息則可根據(jù)實際情況編寫。而位圖信息又由信息頭和調(diào)色板數(shù)據(jù)組成。位圖信息頭如表2.4所示。調(diào)色板可以用256色調(diào)色板,只在設置RGB時,令三個顏色分量相同,這樣就實現(xiàn)了灰色圖像的顯示。利用StretchDIBits在指定的位置以指定的大小來顯示1394采集傳來的圖像信息,其流程圖如2.13。使用開始采集的子程序來啟動攝像機,將圖像數(shù)據(jù)放放指定內(nèi)存,用以位圖形式顯示出來。
2.3.3 系統(tǒng)通訊模塊
前一小節(jié)完成了圖像的實時采集與顯示功能,但是僅僅這樣,成像系統(tǒng)相對注塑機來說還是獨立的。對攝像機來說,雖然它能夠通過一些信息的檢測完成拍照時間的判定,但是,由于機器視覺系統(tǒng)一直處于檢測狀態(tài),這樣就大大占用了系統(tǒng)資源,影響的整個系統(tǒng)的工作效率。這就需要注塑機控制系統(tǒng)給出確定的信號,來控制攝像機進行拍攝。而且通過視覺系統(tǒng)的檢測,確定制品的質(zhì)量狀況,反饋給控制系統(tǒng)相關(guān)信息,實現(xiàn)產(chǎn)品的分揀以及控制系統(tǒng)的參數(shù)改善都需要我們建立二者之間通訊,保證成像系統(tǒng)注塑機協(xié)同工作。
通訊功能的實現(xiàn)主要是通過Windows Socket(簡稱WinSock)來實現(xiàn)的。它是Windows
環(huán)境下TCP/IP協(xié)議的網(wǎng)絡編程接口。Socket 也叫套接字,套接字是一個通信終結(jié)點,它是Windows Sockets
應用程序用來在網(wǎng)絡上發(fā)送或接收數(shù)據(jù)包的對象。套接字具有類型,與正在運行的進程相關(guān)聯(lián),并且可以有名稱。MFC為使用Windows Sockets
編寫網(wǎng)絡通信程序提供了兩種模型,內(nèi)嵌在兩個MFC類中即:CAsyncSocket和CSocket。一個標準的有連接的通信程序中函數(shù)調(diào)用關(guān)系,
本系統(tǒng)以成像系統(tǒng)的計算機作為服務器,控制注塑機工業(yè)的PC機作為客戶端。在注塑機的機械手在經(jīng)過注塑制品出口時,即攝像機鏡頭中心近似水平的位置延遲2秒,客戶端立即向服務器發(fā)信號,告訴服務器攝像機1所采集到的圖像就是注塑制品正面的圖像。服務器保存該圖像信息后就向客戶端發(fā)信號,告訴它延遲2秒可以提前結(jié)束,繼續(xù)運行。當機械手將注塑制品放到傳送帶上之后,客戶端要發(fā)信號告訴服務器,攝像機2現(xiàn)在所采集到圖像信息是注塑制品反面的圖像信息,服務器對相關(guān)的相關(guān)圖像信息保存,處理后,將檢測結(jié)果發(fā)送給注塑機控制系統(tǒng)并對傳送帶進行相關(guān)控制操作。如果制品合格,傳送帶正轉(zhuǎn)。如果出現(xiàn)質(zhì)量缺陷,傳送帶反轉(zhuǎn),從而實現(xiàn)制品的分揀。其流程圖如2.14所示。
2.3.4 輔助功能模塊
在實現(xiàn)了圖像顯示和系統(tǒng)通訊等基本功能之后,本文又編寫了輔助功能模塊。添加的輔助功能使軟件系統(tǒng)能夠更加方便快捷的得到用戶滿意的圖像。
2.3.4.1 圖像效果調(diào)節(jié)
可以由用戶輸入亮度,增益,快門等設定值來調(diào)節(jié)得到的圖像效果。
亮度是指畫面的明亮程度,單位是堪德拉每平米(cd/m2)或稱nits。人眼之所以能看到物體的明暗,是因為物體所反射色光的光量(熱量)有差異之緣故。光量越多,明度越高,反之明度越低。
快門的設定將會影響攝像頭的曝光量。得到圖像的效果如何與曝光量有很大關(guān)系,也就是說應該通不同的光線量使ccd能夠得到的圖像清晰度是有很大不同的。而且曝光控制還可以用來調(diào)節(jié)景物整體亮度,如果攝像對象過于黯淡,可以調(diào)節(jié)快門標尺來增加亮度。
以上的調(diào)節(jié)功能使用戶能夠根據(jù)實際工作的環(huán)境來調(diào)節(jié)得到圖像的顯示效果,方便快捷的得到用戶需要的圖像。
2.3.4.2 圖像保存功能
除了可以通過系統(tǒng)間的通訊來保存圖像,該系統(tǒng)還提供了兩種其他保存圖像的方式。
(1)系統(tǒng)自動判定保存
該方法是在視覺系統(tǒng)與控制系統(tǒng)無法聯(lián)網(wǎng)的情況下設計的備用方案。
該方法的原理是每相隔一段時間獲取攝像機得到的圖像情況。如果某幅圖像的白色像素值較比前一幅圖像產(chǎn)生較大幅度的增加,表明有注塑制品傳到了攝像頭的范圍之內(nèi),就保留該幅圖片。如果白色像素又回到原來的水平值,表明制品已經(jīng)移出該區(qū)域,進行下一輪的判斷。
(2)圖像定時連續(xù)自動保存
用戶可以設定圖像保存的開始時間,保存圖像的時間間隔以及保存圖像的數(shù)量等參數(shù),讓視覺系統(tǒng)自動按照用戶的要求保存相關(guān)的圖像。該功能可以幫助用戶分析特定時間內(nèi)的圖像變化情況。
2.4 本章小結(jié)
本章首先介紹了機器視覺檢測系統(tǒng)的組成、原理及相關(guān)設備知識,然后通過對這些知識的理解,將機器視覺檢測系統(tǒng)與注塑生產(chǎn)過程相結(jié)合,完成了基于機器視覺的注塑制品檢測系統(tǒng)硬件部分的設計。接著設計了視覺系統(tǒng)的軟件部分,實現(xiàn)了圖像的采集、顯示,系統(tǒng)間通訊以及圖像處理輔助功能。該設計大程度上避免了對原有生產(chǎn)過程的影響,全面捕捉到注塑制品的待檢測信息,為研究基于機器視覺的注塑制品缺陷檢測提供可靠的保證。
第三章 注塑制品圖像處理
上一章搭建的系統(tǒng)平臺旨在實現(xiàn)對注塑制品圖像的采集。在圖像采集過程中,由于存在背景以及噪聲等因素的干擾,影響了對圖像的快速處理以及對缺陷的快速判斷,因此,本章針對圖像背景分割以及圖像濾波等圖像處理問題展開研究。
3.1 注塑制品圖像處理總述
低質(zhì)量的圖像必然影響到識別處理全過程及結(jié)果輸出,甚至可能因此做出錯誤的識別。注塑機機器視覺所得到的圖像由于包含有復雜的背景信息,所以在對注塑制品圖像進行模式識別之前,必須要對圖像的背景進行分離,提取其制品圖像,并通過濾波算法改善圖像的視覺效果,將圖像轉(zhuǎn)換成一種更適合于機器進行分析處理的形式。
圖像背景分割過程有選擇地突出制品信息,無用的背景信息,以提高圖像的使用價值和后續(xù)圖像分析的速度。圖像背景分割是圖像處理與計算機視覺領(lǐng)域低層次視覺中為基礎(chǔ)和重要的領(lǐng)域之一,它是對圖像進行視覺分析和模式識別的基本前提,隨后的圖像理解,諸如特征提取和對象識別,都依賴于圖像背景分割的質(zhì)量。
圖像濾波能夠大大降低圖像采集過程引起的外界噪聲干擾,增強圖像的邊緣,改善原始圖像質(zhì)量。而且由于外界環(huán)境的變化,分割算法也可能會引入噪聲。因此有必要運用濾波算法來消除噪聲,提高圖像的質(zhì)量。
3.2 注塑制品圖像背景分割
在注塑制品圖像中,我們感興趣的是制品所在的區(qū)域,稱為目標;而非制品區(qū)域,是不希望被處理的區(qū)域,將其統(tǒng)稱為背景。圖像背景分割的目的就是去掉圖像中的背景區(qū)域。背景分割是對圖像進行視覺分析和模式識別的基本前提。圖像特征提取和分類的正確率以及運算速度都依賴于圖像背景分割的質(zhì)量。研究者們提出了很多種背景分割算法,依照分割時所依據(jù)的圖像特性不同,大致可以分為三大類[22]:閉值方法、區(qū)域提取法以及邊界分割法。
3.2.1 傳統(tǒng)背景分割方法
由于邊界分割法實時性差,而且對具有復雜背景的圖像失效,因此,本文選擇對閉值方法中的閾值分割法以及區(qū)域提取方法中的差影法進行研究。
3.2.1.1 閾值分割方法
閾值分割[23]是一種廣泛使用的圖像分割技術(shù),它利用了圖像中欲提取的目標與背景在灰度特性上的差異,通過選取閾值的方法,把圖像劃分為具有不同灰度級的兩類區(qū)域(目標和背景)的組合。其中,閾值選取的準確與否直接關(guān)系到分割的優(yōu)劣。
如何確定閾值是圖像分割的一個關(guān)鍵問題。如果閾值選取太小,則會把一些不是背景的像素也當作背景,造成誤識;如果閾值選取得太大,則會把一些背景漏掉,造成漏識。下面分析幾種閾值的選取方法:
(1)基于圖像灰度直方圖的閾值選取法
基于圖像灰度直方圖分析的方法是指直接從圖像的原始灰度級直方圖上確定閾值,是直觀、應用普遍的圖像分割方法。該方法簡單易行,并且取得很好的分割效果,但是對于灰度直方圖中波峰不明顯或波谷寬闊平坦的圖像,很難根據(jù)直方圖的峰谷來選擇閾值,此時該方法的使用受到了限制。而且在不同試驗條件下外界的亮度也是波動的,這樣對圖像灰度直方圖的閾值選取法會產(chǎn)生較大影響。
(2)基于圖像差距量的閾值選取方法
這類方法的典型方法是大類間方差法[24]。這種方法能使分割出來的目標與背景之間的差距很大,即目標與背景之間有很高的對比度,該方法計算簡單,在一定條件下不受圖像對比度與亮度的變化的影響。大類間方差法是該類方法中較為成功的一種,該方法是在判別式分析與小二乘法原理的基礎(chǔ)上推導出來的,閾值在該判別式取得大時得到。
(3)基于熵的閾值選取方法
20世紀80年代初,人們開始考慮用信息論中熵的概念進行閾值選取,1980年P(guān)un首先提出了大后驗熵上限法,1985年Kapur等人提出了一維大熵閾值法。根據(jù)大熵原理,選取一個閾值t,使圖像用這個閾值分割出的兩部分的一階灰度統(tǒng)計的信息量大。即一維熵大。熵該方法存在的一些不足之處是:對噪聲敏感,與大類間方差法方法相比一維大熵法由于涉及對數(shù)運算。速度較慢,實時性較差。
(4)逼近迭代法
這種方法的原理是將直方圖用兩個或多個正態(tài)分布的概率密度函數(shù)來近似的方法,閾值取為對應兩個或多個正態(tài)分布大值之間的小概率處近的灰度值,其結(jié)果具有小誤差的分割,這里誤差包括將目標誤認為背景被剔除而將背景、噪聲歸并為目標,使兩者之和為小。迭代所得的閾值分割目標圖像的效果很好,能較好區(qū)分圖像的前景和背景的主要區(qū)域所在。但迭代算法運算量較大,而且往往沒有比Otsu算法更加明顯的優(yōu)勢,
(5)其他閾值選取方法
近年來,隨著遺傳算法、小波變換、數(shù)學形態(tài)學及模糊集合論等理論的發(fā)展,這些理論也被引入到圖像閾值分割的領(lǐng)域,產(chǎn)生了許多新的閾值化方法。這些算法雖然有著比較好的運算效果,但是計算復雜度高,很難滿足實時檢測的要求。
3.2.1.2 差影法
差影法它適用于靜止攝像機的情況,是圖像處理領(lǐng)域簡單常用的方法之一??捎糜谌コ环鶊D像中不需要的加性圖案,加性圖案可能是緩慢變化的背景陰影、周期性的噪聲或者是在圖像上每一像素處均已知的附加污染。差影法在動態(tài)檢測與識別技術(shù)、血管造影技術(shù)及印刷線路板掩模缺陷的診斷等技術(shù)中都有應用[25,26],利用它可以檢測同一場景中兩幅圖像間的變化。
所謂的差影法[27]就是圖像的相減運算(又稱為減影技術(shù)),該運算是把同一景物在不同時間拍攝的圖像或同一景物在不同波段的圖像相減,通過將當前幀與背景幀的灰度差與設定閾值比較來判定是否有運動發(fā)生,消除背景干擾,并將前景從背景中分離出來,增強兩幅圖像之間的差異,得到運動目標的位置和形狀等較完整的信息。差影圖像提供了圖像間的差異信息,對圖像背景的消除有顯著的效果。利用差影圖像提供的圖像間的差異信息以達到動態(tài)監(jiān)測、運動目標檢測和識別以及目標識別等目的.
3.2.2 傳統(tǒng)方法在注塑制品背景分割中的應用分析
3.2.2.1 閾值分割方法在注塑制品背景分割中的應用分析
由于大類間方差法識別效果好,方法計算簡單,受圖像對比度與亮度的變化的影響小。因此本文采用該方法來獲取閾值。制品圖像灰度直方圖的形狀是多變的,有雙峰但無明顯低谷或者是雙峰與低谷都不明顯,采用大類間方差法能夠快速穩(wěn)定的選取出理想的背景分割閾值,得到較為滿意的結(jié)果。而且即使圖像對比度與亮度的發(fā)生微弱的變化,其對分割效果的影響也很小。
因方差是灰度分布均勻性的一種度量,方差值越大,說明構(gòu)成圖像的兩部分差別越大,當部分目標錯分為背景或部分背景錯分為目標都會導致兩部分差別變小,因此使類間方差大的分割意味著錯分概率小。
由運行結(jié)果可知,由于制品區(qū)域的灰度值和背景區(qū)域的灰度值有很小一部分是數(shù)值相近的,制品圖像部分信息丟失,而且制品邊緣部分的一些背景沒有得到徹底的消除。因此,單純的使用閾值分割方法很難得到令人非常滿意的結(jié)果。
3.2.2.2 差影法在注塑制品背景分割中的應用分析
在注塑制品的檢測中,我們得到的圖像都是在同一外界環(huán)境下,同一位置上得到的,可以通過先獲取背景圖像,然后再將制品圖像與背景圖像做差得到差影圖像來消除背景,但是這種方法適用于背景和前景灰度有明顯對比度的情況,否則會出現(xiàn)漏檢或者噪聲。雖然我們的背景要暗于制品,但是機器手臂夾子的灰度值與制品的灰度值接近,在夾子附近的位置往往會出現(xiàn)噪聲點。
雖然減小閾值能夠減少噪聲,但是由于外界的光線條件總是變化著的,太小的閾值又會導致誤判斷,不能很好的消除背景。因此單純的差影法無法滿足我們的要求。