基于HALCON的螺釘安裝檢測 工程管理專業(yè)_第1頁
基于HALCON的螺釘安裝檢測 工程管理專業(yè)_第2頁
基于HALCON的螺釘安裝檢測 工程管理專業(yè)_第3頁
已閱讀5頁,還剩26頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)

文檔簡介

1、摘 要 目前在市場上對于螺釘安裝的檢測大多采用人工,當(dāng)需要檢查的螺絲數(shù)量多以及螺絲體積較小的時候,工人檢查和安裝就比較費力。因此,為了使檢測的結(jié)果更為快速和準(zhǔn)確,本文嘗試?yán)脵C器視覺算法來解決這一問題。在設(shè)計之前,我們對機器視覺和圖像處理技術(shù)進行了相關(guān)的了解,以便更好地解決問題。接著開始試驗,首先我們在合適的光照條件下取得螺絲安裝的圖像;然后通過HALCON軟件對得到的圖像進行相關(guān)的圖像預(yù)處理并進行檢測,檢查是否安裝螺釘,且對螺釘位置進行重點圈示;最后將得到的檢測結(jié)果與C+Builder進行交互,通過BCB設(shè)計的用戶界面展示出來。關(guān)鍵字: 螺釘; 機器視覺;圖像處理; HALCON; C+Bu

2、ilder machine vision; image processing; HALCON;C+Builder 目 錄1.緒論11.1課題研究的背景及意義11.2國內(nèi)外研究現(xiàn)狀22.機器視覺及軟件介紹32.1機器視覺技術(shù)簡介32.2機器視覺系統(tǒng)32.2.1機器視覺系統(tǒng)簡介32.2.2機器視覺檢測42.2.3機器視覺的發(fā)展動向52.3機器視覺軟件52.3.1 HALCON 簡介52.3.2 HALCON 特點62.3.3 HALCON 功能發(fā)展63.圖像處理73.1 圖像處理技術(shù)73.1.1圖像和數(shù)字圖像73.1.2圖像技術(shù)和圖像工程73.2數(shù)字圖像處理系統(tǒng)83.2.1圖像處理和分析系統(tǒng)83.

3、2.2 圖像采集模塊93.2.3圖像的數(shù)據(jù)編碼和傳輸9圖像預(yù)處理技術(shù)介紹94.1 圖像增強94.2灰度值變換104.3圖像平滑114.3.1圖像平滑介紹114.3.2 中值濾波11螺釘安裝檢測的軟件設(shè)計125.1圖像處理的算法流程125.2螺釘安裝檢測的程序設(shè)計14用戶界面設(shè)計186.1 C+ builder簡介186.2 HALCON與BCB混合編程196.2.1混合編程的設(shè)計流程196.2.2環(huán)境配置與庫函數(shù)調(diào)用206.3 螺釘安裝檢測界面設(shè)計21結(jié)語23參考文獻24附錄25致謝271 緒論1.1 課題研究的背景及意義改革開放以后,經(jīng)濟發(fā)展越來越快,許多行業(yè)對檢測方面的技術(shù)要求提高。比如,

4、需要對圖像進行實時的監(jiān)控,對儀器檢測的精密度要求也越來越高,還有對半導(dǎo)體芯片的封裝檢測。我國傳統(tǒng)檢測方式主要是人工檢測,但在現(xiàn)在絕大多數(shù)行業(yè)的檢測中,人工檢測存在明顯的缺陷和局限性。人工檢測不僅工作量大、效率低,而且人工檢測的結(jié)果容易受到工作人員的熟練度和身體疲勞情況的影響,進而影響到檢測結(jié)果,同時在高精度檢測要求下,人工檢測的速度太慢,無法達到企業(yè)的要求。因此,現(xiàn)代工業(yè)急需一種新的技術(shù)來替代人工檢測。機器視覺由于近來數(shù)字圖像處理和計算機技術(shù)的快速發(fā)展脫穎而出。工廠機器上的螺釘因為時間久了和平時的碰撞沖擊,有些螺釘就會變的松動甚至脫落。螺釘?shù)乃蓜雍兔撀涠紩C器的正常運行產(chǎn)生一定的影響,給人們

5、帶來一些不可避免的損失。隨著工業(yè)發(fā)展對技術(shù)方面要求的提高現(xiàn)代工業(yè)生產(chǎn)中,螺釘?shù)陌惭b檢測也是工業(yè)界的研究熱點之一,怎樣將其數(shù)字化和客觀化,是值得我們?nèi)ヌ剿髋c深究的。目前在實際螺釘安裝檢測中使用比較多的是標(biāo)準(zhǔn)樣本進行對比。這種方法雖然操作比較簡便,只需要在標(biāo)準(zhǔn)光照條件下,由檢測人員將待檢測的螺釘孔與標(biāo)準(zhǔn)樣照進行對比,直觀的來判別螺釘是否已安裝就可以了;但由于人工檢測無法保證持久的準(zhǔn)確率,因為人工觀察的久了,精神上會感到很疲勞。所以人工檢測的方法可靠性較低,容易受到客觀影響,難以實現(xiàn)大批量的檢測。而機器視覺系統(tǒng)就不一樣了,它就能做到高速且持久,同時還有著非接觸、精確度高、抗干擾能力強等優(yōu)點,因此,機

6、器視覺的推廣應(yīng)用理所當(dāng)然。針對這種狀況,本課題試圖通過圖像處理和機器視覺技術(shù)設(shè)計出能精確等問題。1.2國內(nèi)外研究現(xiàn)狀在國內(nèi),機器視覺是近些年來新興的技術(shù),它是通過計算機模擬人的視覺來觀察事物,在自動化領(lǐng)域、產(chǎn)品檢測領(lǐng)域和智能機器人領(lǐng)域有著極其重要的作用。最早應(yīng)用的行業(yè)主要是電子行業(yè)和半導(dǎo)體行業(yè),比如PCB印刷、電路組裝、元器件制造、半導(dǎo)體設(shè)備。剛開始的時候,機器視覺產(chǎn)品主要靠幫外國企業(yè)制造加工或者做一些系統(tǒng)集成的工作,很少有自己創(chuàng)造發(fā)展的,從事這方面的公司也很少,大多在摸索階段,正嘗試著開始發(fā)展自己的技術(shù)。但經(jīng)過這么多年的發(fā)展,從2006年以后,我國的機器視覺技術(shù)慢慢的就逐漸提高了,特別是工業(yè)

7、領(lǐng)域,機器視覺在這方面的發(fā)展以居世界前列了。在工業(yè)領(lǐng)域中,機器視覺主要用來對于產(chǎn)品質(zhì)量的檢測和分類,我們的螺釘安裝檢測就屬于其中之一;當(dāng)然,它還用于幫助機器人定位,現(xiàn)如今火熱的智能機器人就利用了機器視覺技術(shù)。在機器人的眼部裝上機器視覺系統(tǒng)以后,機器人就具有了一定的感知能力,它能通過視覺傳感器來獲取圖像信息,并進行一定的自我分析,實現(xiàn)簡單的定位功能。機器視覺能得到這么迅速的發(fā)展與它的技術(shù)實用性是離不開的。首先,在過去的時候,我們一般利用人工對產(chǎn)品進行檢測,效率低就不說了,而且人因為工作久了身體勞累、精神疲憊,對產(chǎn)品的檢測也就不能保持一貫的專注了,所以產(chǎn)品的標(biāo)準(zhǔn)率也不能保證,因此利用機器視覺來替代

8、人工檢測是社會發(fā)展的需要,機器視覺讓我們在產(chǎn)品生產(chǎn)中更加自動化,效率更高。而自從2013年至今,中國自己的機器視覺公司發(fā)展十分迅速,處在快速成長期,擁有了自己的專業(yè)技術(shù),可以通過機器視覺做到許多我們以前想都想不到的事,比如對人臉的識別鎖定,不過在這方面還需完善,還有很長的路要走,相信未來僅通過一幅照片就可以在網(wǎng)絡(luò)上找到真人的事情指日可待。就在2017年的4月13日,百度收購了美國科技公司xPerception,加強了自己在視覺感知領(lǐng)域的軟硬件能力。在國際上,機器視覺產(chǎn)業(yè)已經(jīng)比較成熟,發(fā)展較快的主要是歐洲、美國和日本,他們現(xiàn)在對機器視覺的發(fā)展就是穩(wěn)中求變,既保證能占有現(xiàn)在的市場,而又繼續(xù)向前奮進

9、創(chuàng)新。國外機器視覺與國內(nèi)相比的話,不僅技術(shù)上有一定的領(lǐng)先,而且國外企業(yè)的品牌效應(yīng)和知識產(chǎn)權(quán)發(fā)展的相當(dāng)好,國內(nèi)在這方面還需要努力。機器視覺是一次技術(shù)層面的改革創(chuàng)新,隨著市場需求量的不斷擴大,在我國的新興產(chǎn)業(yè)中名列前茅,未來甚至可能成為我國的支柱產(chǎn)業(yè)。中國很多流水線代工廠在過去的幾年里正在不斷的采購大量自動化設(shè)備取代不斷減少的工人和日益上漲的人工成本。隨著國家的政策對高新技術(shù)行業(yè)的大力支持,機器視覺行業(yè)在最近幾年必將成為中國生產(chǎn)制造行業(yè)的爆發(fā)行業(yè),機器視覺產(chǎn)業(yè)將會保持快速增長。而且由于機器視覺技術(shù)自身的突出特點 ,十分符合當(dāng)今的工業(yè)需求,正流行的智能機器人技術(shù)、自動駕駛汽車技術(shù)也需要它的支持,我們

10、有理由相信它的未來前景將是一片光明。機器視覺及軟件介紹2.1機器視覺技術(shù)簡介機器視覺,簡而言之就是利用機器代替人工進行目標(biāo)識別、判斷與測量。它是現(xiàn)代光學(xué)、電子學(xué)、軟件工程、信號處理與系統(tǒng)控制技術(shù)等多學(xué)科的交叉與融合。機器視覺與某些學(xué)科還有一些相似,如圖像處理、模式識別和計算機視覺等。但它與這些學(xué)科也有區(qū)別,有著自己的特點。首先,機器視覺是一門綜合技術(shù),它包含許多其它的技術(shù),例如電源照明技術(shù)、傳感器技術(shù)、數(shù)字圖像處理技術(shù)等等,機器視覺需要與這些技術(shù)相互協(xié)調(diào)才能完成相關(guān)的功能。然后就是機器視覺的可靠性,它能夠在比較惡劣的工業(yè)環(huán)境中保持穩(wěn)定工作,而且因為非接觸的特點,它的安全性也比較高,不會損壞物品

11、。最后要說的就是它的高速度和高精度特點,能夠有效提高生產(chǎn)效率。2.2機器視覺系統(tǒng)2.2.1 機器視覺系統(tǒng)簡介機器視覺系統(tǒng)就是對通過機器獲取的圖像進行相關(guān)處理的系統(tǒng),如圖2-1。首先,在合適的場景下,通過機器攝像頭,比如CCD取得清晰的圖片,然后把它轉(zhuǎn)換成圖像信號,交給圖像處理系統(tǒng)進行相關(guān)處理,根據(jù)它的大小、色彩轉(zhuǎn)變成相應(yīng)的數(shù)字化信號,接著就對數(shù)字化信號進行特征提取,依靠這些特征來進行描述和判斷,最后把判斷結(jié)果反饋給機器,讓機器依據(jù)結(jié)果做出相應(yīng)的操作。當(dāng)然其中包含許多有技術(shù)含量的操作和值得注意的地方,在這里特別介紹一下。比如,獲取圖像時,我們要使機器能有好的光源照射,這樣才能捕捉到好的照片;還有

12、將圖像轉(zhuǎn)變成數(shù)字信號時,要嚴(yán)格根據(jù)圖像像素的分布、圖像的顏色來進行數(shù)字化操作;而根據(jù)對圖像特征值進行處理,我們還能實現(xiàn)坐標(biāo)計算以及創(chuàng)建有一個灰度直方圖的功能;最后,我們還需要一個完好的反饋系統(tǒng),保證結(jié)果能夠及時,準(zhǔn)確的傳達給機器。在現(xiàn)代工業(yè)生產(chǎn)中,機器視覺系統(tǒng)被廣泛地用于對產(chǎn)品生產(chǎn)過程的質(zhì)量監(jiān)控,我們本課題研究的對螺釘?shù)陌惭b檢測就屬于這方面。還有就是對成品的檢驗,如對產(chǎn)品表面的缺陷檢測,保證產(chǎn)品出廠前的質(zhì)量安全。2.2.2 機器視覺檢測機器視覺檢測技術(shù)在現(xiàn)今有許多的應(yīng)用,特別是在工業(yè)的應(yīng)用上十分廣泛,下面介紹一下它在各個方面的相關(guān)應(yīng)用。在半導(dǎo)體行業(yè)方面,主要是對芯片表面多膠和臟污的檢測,還有w

13、afer檢測,大都需要通過光源照射,根據(jù)反光情況進行判斷。在電子產(chǎn)品方面,也主要是對表面缺陷的檢測,比如LED燈表面缺陷檢測、手機屏表面劃傷檢測。在激光加工方面,對產(chǎn)品檢測的要求就更高了,因為激光加工本身就是一個很精細(xì)的活,要對它進行檢測就需要更高的水準(zhǔn)了,比如對手機玻璃屏聽筒孔定位及對IC元件字符及PIN間距檢測,都是毫厘之差都不能有,要求十分高。在醫(yī)藥方面主要有對注射液的雜質(zhì)檢測,因為雜質(zhì)顆粒很小,人眼一般很難察覺出來,還有就是對針尖缺陷檢測,檢查針尖是否歪了或者閉合了。對日用產(chǎn)品的檢測也有很多,比如對布匹、紙杯缺陷的檢測,化妝品瓶身的字符檢測,手機卡槽的尺寸檢測,剃須刀彈片檢測,總之機器

14、視覺檢測已經(jīng)應(yīng)用到了生活的方方面面,人們也將越來越離不開它。2.2.3 機器視覺的發(fā)展動向機器視覺隨著如今計算機技術(shù)和人工智能技術(shù)的發(fā)展,自身的發(fā)展方向也多了起來,前景也更加美好了。因為對許多領(lǐng)域的深入研究和當(dāng)今計算機技術(shù)的飛速發(fā)展,很多的計算機實時應(yīng)用的商業(yè)化已觸手可及,還有的已經(jīng)得到相關(guān)應(yīng)用,比如身份識別、智能交通和信息安全等。機器視覺未來甚至可能成為一種嵌入式系統(tǒng),利用一個微小的處理器就能完成許多功能,它不在局限于工廠產(chǎn)品檢測,能夠應(yīng)用于許多方面。例如,現(xiàn)在正在測試的無人駕駛汽車,就需要機器視覺對前方道路的精確檢測,能夠準(zhǔn)確判斷前方的各種事物,然后反饋給處理系統(tǒng),實時的做出最正確的操作,

15、保證汽車的正常行駛。還要一個很重要的方面就是智能機器人和機器視覺的結(jié)合,當(dāng)未來的機器人能夠擁有一顆類似人的眼睛,它所能做的就太多了,就不在局限于僅僅做一些搬運之類的工作了,而是擁有無限的可能。就說在工廠,流水線可能就會被機器人占領(lǐng)了;每家每戶也有可能擁有一個能干的機器人保姆,幫助你解決生活中的繁瑣事;也許,機器人還能幫你當(dāng)司機,為你做導(dǎo)游,帶你領(lǐng)略自然的風(fēng)光。2.3機器視覺軟件2.3.1 HALCON簡介mvtec HALCON是一個集成開發(fā)環(huán)境的機器視覺的綜合標(biāo)準(zhǔn)的軟件(HDevelop),能在全球范圍內(nèi)使用。HALCON靈活的架構(gòu)便于各種機器視覺應(yīng)用的迅速發(fā)展,利用它,能減少你的開發(fā)成本以

16、及提前開發(fā)產(chǎn)品的上市時間。mvtec HALCON提供卓越的性能和多核平臺和專用指令集avx2以及GPU加速。它包含成千上萬的庫文件在成像的所有領(lǐng)域,如斑點分析,形態(tài),匹配,測量,識別和三維視覺。2.3.2 HALCON特點HALCON是三維視覺的革命性技術(shù),它具有50多個形狀和灰度值特征的斑點分析,能匹配找到甚至旋轉(zhuǎn)或部分閉塞對象。HALCON能對非常大的圖像進行處理,大于32K32K,在如今來說基本上沒有什么超過限制的,而且對彩色的圖像它也能進行處理。同時HALCON具有高精度的測量,它包含光學(xué)字符識別(OCR和OCV)和驗證,檢測線、圓和橢圓的精度高達1 / 50像素,對任意形狀的感興趣

17、區(qū)域(ROIs)有顯著的靈活性和速度。它能夠做到精確三維攝像機標(biāo)定,能很好的完成圖像序列處理,這個對監(jiān)控技術(shù)提高很大。HALCON能夠在大多數(shù)計算機操作系統(tǒng)上運行,支持多核和多處理器計算機。HALCON也不限制你怎么獲取圖像,可以自行挑選合適的設(shè)備。原廠已經(jīng)提供了60余種相機的驅(qū)動鏈接。即使是尚未支持的相機,除了可以透過指針輕易的HALCONDLL文件和系統(tǒng)連接。HALCON軟件還能減少你的資金投入,它支持多種操作系統(tǒng)、工業(yè)相機和圖像采集卡提供的接口,支持genicam標(biāo)準(zhǔn)、GigE Vision,IIDC 1394,USB,USB3 Vision,和Camera Link。兼容Delphi

18、1requirements:HALCON / COM接口32位和Delphi的Borland版本5或更高版本。2.3.3 HALCON 功能發(fā)展隨著MVTec公司與學(xué)術(shù)界的合作不斷加深,HALCON 功能也在不斷的拓展更新,最新的HALCON13中,就有許多更加全面的功能。在HALCON 13中,基于表面的3D匹配在處理平面時變得更加健壯。這種改進尤其支持像選擇框這樣的應(yīng)用程序。HALCON 13還提供另外一種新的方法來從高質(zhì)量的多相機中重建3D物體。這種新方法使用了所有相機視圖的信息,從而獲得比普通立體重建方法更可靠的結(jié)果。通過HALCON 13,MVTec首次提供了基于深度學(xué)習(xí)的OCR:H

19、ALCON現(xiàn)在包含一個基于深度學(xué)習(xí)技術(shù)的新的OCR分類器,可以通過一些預(yù)先訓(xùn)練的字體來使用。有了這些,就有可能獲得比以前所有分類方法更高的閱讀速率。此外,HALCON 13的自動文本閱讀器速度更快,現(xiàn)在也支持點打印字符的閱讀。HALCON 13還可以讀取條碼,即使代碼的大部分是有缺陷的,或者根本不可見。此外,QR碼讀卡器已經(jīng)得到了改進,并且現(xiàn)在對諸如模糊或失真之類的常見挑戰(zhàn)更加健壯。3.圖像處理3.1 圖像處理技術(shù)3.1.1圖像和數(shù)字圖像圖像在書本上的定義是三維場景在二維平面上的影像。在我們生活中的理解就是我們眼睛所看到的自然界萬事萬物的映射,是我們認(rèn)識世界的重要途徑。有的東西不管用怎樣華麗的

20、語言描述,也不及看一眼圖像來的實際和給人的印象深刻。人在處理圖像信息時,基本上能夠瞬間捕獲二維畫面的所有內(nèi)容,因此在越來越信息化的社會中,圖像在信息傳播上起著重要的作用。而且隨著計算機技術(shù)的快速發(fā)展,我們甚至能自己創(chuàng)造各種千姿百態(tài)的圖像。將圖像橫縱分成各個均等的小方格,把每一個小方格稱為像素,給每一個像素賦以灰度值,就成為數(shù)字表示的圖像,再以數(shù)字格式存儲圖像數(shù)據(jù),這個圖像就成為數(shù)字圖像。數(shù)字圖像是用配置在二維平面上的灰度值或彩色值來表示信息的,信息擴展在二維平面上。用數(shù)學(xué)描述,若用f(x,y)表示(x,y)處的灰度值,則二維函數(shù)F(x,y)表示圖像。若為彩色圖像,可以認(rèn)為f(x,y)是由表示紅

21、色、綠色和藍色圖像的3個函數(shù)fr(x,y)、fg(x.y)和fb(x,y)組成的13。本課題后面主要用到的都是數(shù)字圖象,我們暫定就用(x,y)來代表數(shù)字圖像,且、x、y的取值都為整數(shù)。3.1.2圖像技術(shù)和圖像工程對各種與圖像有關(guān)的技術(shù)的總稱就是圖像技術(shù)。對于圖像技術(shù),我們的主要研究內(nèi)容是數(shù)字圖像,主要研究技術(shù)是計算機處理圖像技術(shù)。數(shù)字圖像只有經(jīng)過計算機圖像處理系統(tǒng)的加工,才能完美的輸入、輸出;現(xiàn)在我們生活中流行的PS軟件就是集合了許多的計算機技術(shù),能夠?qū)D像進行完美處理的經(jīng)典例子。利用計算機對圖像的處理包括:對圖像的獲取,把模擬圖像信號轉(zhuǎn)化為計算機能處理的數(shù)字信號;具體步驟為攝取圖像、光電轉(zhuǎn)換

22、、數(shù)字化。對圖像的復(fù)原,將模糊或損壞的圖像進行修復(fù)。對圖像的增強,改善圖像的畫面質(zhì)感。對圖像的分割,根據(jù)一定的規(guī)則和需要,將圖像分割成不同區(qū)域。圖像重建,僅通過一些輸入數(shù)據(jù),經(jīng)過處理后就能得到圖像,比如CT;圖像重建與計算機技術(shù)結(jié)合還能把多個二維圖像合成三維圖像,經(jīng)過光照和技術(shù)渲染,生成真實感十足的高質(zhì)量圖像。圖像壓縮編碼,因為圖像數(shù)據(jù)信息較大,經(jīng)過壓縮編碼能有效提高傳輸效率,而且壓縮后便于特征提取。此外,圖像技術(shù)還包括為了完成各種功能而進行的硬件設(shè)計制作等方面的技術(shù)。隨著圖像技術(shù)近年來的快速發(fā)展,出現(xiàn)了許多新理論、新算法、新手段和新設(shè)備。圖像工作者普遍認(rèn)為需對圖像和圖像處理技術(shù)進行綜合研究和

23、應(yīng)用,這個工作的框架就形成了圖像工程。圖像工程是一門系統(tǒng)地研究各種圖像理論、技術(shù)和應(yīng)用的交叉學(xué)科。圖像工程可簡單地分為三個層次:圖象處理、圖象分析和圖像理解。圖象處理主要是在圖像與圖像之間進行各種操作加工,讓圖像的視覺展示結(jié)果清晰,為圖像的自動識別打下基礎(chǔ)。圖像分析主要是對我們感興趣的地方進行檢測,提取特征區(qū)域,它要做就是講圖像信息轉(zhuǎn)換為數(shù)據(jù)信息,對目標(biāo)區(qū)域的特點和性質(zhì)加以概括。圖像理解需要根據(jù)我們所學(xué)習(xí)的知識,以及對目標(biāo)特征的分析,反過來了解整個圖像的所有內(nèi)容,進而弄懂圖像中各個目標(biāo)特征的獨立特性及它們之間的聯(lián)系關(guān)系,對圖像有一個整體的理解。由上所述,圖象處理、圖象分析和圖像理解處在三個不同

24、的抽象程度層次上。圖象處理是低層的操作,它的操作對象是像素,要處理的數(shù)據(jù)量相當(dāng)大,工作很繁瑣。圖象分析是中層的操作,對感興趣的目標(biāo)進行特征提取,將圖像信息變成數(shù)據(jù)描述的信息,要處理的數(shù)據(jù)量適中。而圖像理解就是高層操作了,它的操作對象就是從描述抽象出來的符號,抽象程度高,處理方法類似人的思維推理過程。3.2數(shù)字圖像處理系統(tǒng)3.2.1圖像處理和分析系統(tǒng)一個簡單的圖像處理系統(tǒng)最基本的就是圖像攝入設(shè)備、圖像處理設(shè)備和圖像輸出設(shè)備。圖像攝入設(shè)備就是為了獲取圖像,采集到圖像的相關(guān)信息,基本的設(shè)備有CCD攝像機、數(shù)碼攝像機、紅外遙感設(shè)備和掃描儀。通常圖像獲取后,就要通過圖像輸入卡,也稱采集卡對圖像進行處理,

25、輸入到計算機設(shè)備中。圖像處理設(shè)備主要是高速圖像處理卡,卡上固化了300多個函數(shù)的圖像處理庫,能有效的對圖像進行處理。當(dāng)然圖像處理也可以通過軟件完成,比如MATLAB軟件與HALCON軟件,它們也能對圖像進行加工處理。圖像輸出設(shè)備就是顯示卡、顯示器,圖像一般都是保存在顯示卡上的,然后通過連接顯示器,在顯示器上輸出。3.2.2圖像采集模塊圖像采集主要是通過攝像頭捕捉圖像,然后將圖像存儲在顯示卡。而采集數(shù)字圖像時,首先通過固態(tài)陣列的感光基元將圖像信息轉(zhuǎn)換為模擬電信號,然后通過數(shù)字化器將模擬電信號轉(zhuǎn)換為離散數(shù)字信號。圖像的數(shù)字化基本上要經(jīng)過5個步驟,首先通過采樣孔,讓圖像能夠被數(shù)字化設(shè)備觀測清楚,不被

26、其它條件干擾;其次讓采樣孔在圖像上規(guī)律移動,清晰地觀察到圖像的每一個像素;再通過光傳感器采樣每一個像素的亮度;然后通過A/D電路把光傳感器傳來的連續(xù)量轉(zhuǎn)變成整數(shù)值;最后將輸出的值按某種格式存儲起來,方便計算機對它的處理。3.2.3圖像的數(shù)據(jù)編碼和傳輸數(shù)字圖像的數(shù)據(jù)量太大,需要對它進行一定的數(shù)據(jù)壓縮,才能讓圖像的傳輸更加方便快捷。將圖像進行壓縮的方法主要就是對圖像數(shù)據(jù)進行編碼和對圖像數(shù)據(jù)進行變換壓縮。圖像數(shù)據(jù)是高度相關(guān)的,存在很多冗余,對圖像的壓縮就是去掉這些冗余信息。圖像編碼時我們一般使用預(yù)測編碼,根據(jù)空間冗余特性,用相鄰的已知像素預(yù)測當(dāng)前的像素值,可以有效的壓縮數(shù)據(jù)。預(yù)測編碼還需要對已知的像

27、素和當(dāng)前像素值之間的預(yù)測誤差進行量化編碼處理,常用方法有DPCM和運動補償法。圖像預(yù)處理技術(shù)介紹4.1圖像增強像進行預(yù)處理。圖4-1(A)圖像增強前圖4-1(B)圖像增強后本文中使用emphasize算子進行圖像增強,由圖4-1可見,在圖像增強前,目標(biāo)區(qū)域和圖像的其它區(qū)域看起來幾乎沒什么區(qū)別,但在圖像增強后,可以看到我們關(guān)注的圓圈區(qū)域的對比度顯著增強。4.2灰度值變換我們在處理螺釘安裝檢測圖像時使用了scale_image_max算子,即最大化圖像的灰度值。該算子計算像素的最大和最小值,按照最大值比例化各個像素,它的作用是把原圖像的像素灰度經(jīng)過某個變換函數(shù)變換成新的圖像灰度,盡管變換前后像素個

28、數(shù)不變,但不同像素間的灰度差變大,因而對比度增強,圖像更加清晰。4.3圖像平滑4.3.1圖像平滑簡介圖像平滑,意思顯而易見就是平滑圖像,讓圖像中漸變較大的地方變的平緩舒松,抑制圖像噪聲。對圖像而言,它的邊緣、跳躍以及噪聲等灰度變化劇烈的部分代表圖像的高頻分量,而大面積背景區(qū)和灰度變化緩慢的區(qū)域代表圖像的低頻分量。圖像平滑主要就是抑制高頻部分,讓圖像表現(xiàn)出更多的低頻部分,看起來柔和一點,它可以在頻域進行,也可以在空間域進行。4.3.2 中值濾波 HYPERLINK /item/%E4%B8%AD%E5%80%BC%E6%BB%A4%E6%B3%A2%E6%B3%95 t /_blank 中值濾波

29、法是一種非線性平滑技術(shù),它將一個區(qū)域內(nèi)的所有像素的灰度值用它們的中值代替。即把灰度值相近且相鄰的一些像素連成一個區(qū)域,然后求出它們的中值,利用這個中值來代替這個區(qū)域,相當(dāng)于把很多個像素變成一個點,有化整為零的效果,它能很好的消除孤立的噪聲點,對脈沖噪聲(也稱椒鹽噪聲)的消除效果很好,特別是在消除噪聲的同時,還能有效保護邊緣區(qū)域,它還具有的一個優(yōu)良特性就是算法相對簡單,比較容易用硬件實現(xiàn)它的功能。中值濾波的函數(shù)模型為G(x,y)=medF(x-k,y-1),(k,1W),F(x,y)為初始圖像,對它進行函數(shù)變換,就得到處理后的圖像G(x,y);W是一個二維模板,通常代表的是3x3區(qū)域或者5x5區(qū)

30、域。在實際操作中,我們使用的是median_separate算子,即矩形掩碼的離散中值濾波。圖4-2 (A)圖像平滑前圖4-2(B)圖像平滑后本文使用mean_image算子來實現(xiàn)圖像平滑的功能,采用中值濾波的方式。5.螺釘安裝檢測的軟件設(shè)計5.1圖像處理的算法流程圖像采集模塊圖像采集模塊圖像預(yù)處理模塊圖像預(yù)處理模塊圖像分割模塊圖像分割模塊圖像分析模塊特征提取模塊圖像分析模塊特征提取模塊圖像實時采集模塊:通過圖像采集卡實時的、連續(xù)不斷的把攝像機獲取到的圖像及時的存儲到計算機內(nèi)存當(dāng)中去,然后再在計算機內(nèi)存中進行一系列的簡單圖像處理。在這個模塊我們首先關(guān)心的就是采集圖像的實時性,要求我們采集圖像的

31、速度要快,秒速采集秒速傳輸,讓問題能得到及時的反饋。其次就是采集圖像的質(zhì)量,保證采集到的圖像完好無損。圖像預(yù)處理模塊:對圖像進行預(yù)處理是為了方便后面對圖像進行更好的識別和操作。首先要做的就是去掉噪聲,把圖像上的斑點去掉,讓圖像看起來更干凈,比如濾波;然后對圖像進行增強,提高我們主要關(guān)注地方的圖像對比度;最后稍微平滑一下圖像,看起來更舒服一些。經(jīng)過圖像預(yù)處理后,能更好對圖像進行閾值選取和分割。圖像分割模塊:只有對圖像進行一定的分割,才能更好的得到我們想要的目標(biāo)區(qū)域。對圖像進行分割的方法有很多,我們要靈活選擇,根據(jù)不同的情況選擇出當(dāng)時最適合的方法,只要對圖像進行分割后,能幫助我們對目標(biāo)圖像進行更好

32、的分析,所謂最適合的就是最好的。本課題我們就選擇了最適合我們的閾值分割,閾值通過對圖像的灰度直方圖進行比較分析來選取。特征提取模塊:在將圖像分割為不同區(qū)域后,需要進行區(qū)域連通,并根據(jù)合適的特征提取出我們想要的區(qū)域。提取連通區(qū)域時需要用到connection和select_shape算子,connection算子是對region(區(qū)域)進行連通操作,也就是把鄰域內(nèi)(4連通或者8連通)區(qū)域歸納為一個區(qū)域,方便后面的select_shape進行感興趣區(qū)域選擇。select_shape算子依據(jù)形狀特點,及該特點的最大最小值選擇區(qū)域。圖像分析模塊:通過一系列的圖像處理操作,提取出我們想要的圖像信息后,對

33、它進行總結(jié)分析,判斷螺釘是否安裝,得到最終的結(jié)論。5.2螺釘安裝檢測的程序設(shè)計read_image(Image_two_setup,6.bmp)/讀取螺釘?shù)膱D像 圖5-1get_image_size (Image_two_setup, Width_setup, Height_setup)/獲取圖片長寬 圖5-2gen_circle (ROI_0, 463.5, 717.5, 420.609)/在目標(biāo)區(qū)域生成圓 圖5-3reduce_domain (Image_two_setup, ROI_0, ImageReduced)/獲得目標(biāo)圓位置的圖像scale_image_max (ImageRedu

34、ced, ImageReduced_two_setup) / 最大化圖像的灰度值 mean_image (ImageReduced_two_setup, ImageMean2_two_setup, 15, 15)/取平均值平滑圖像圖5-4emphasize (ImageMean2_two_setup, ImageEmphasize_two_setup, 91, 91, 1)/增強圖像對比度圖5-5scale_image_max (ImageEmphasize_two_setup, ImageEmphasize_two_setup)/最大化圖像的灰度值 mean_image (ImageEmph

35、asize_two_setup, ImageEmphasize_two_setup, 15, 15)/取平均值平滑圖像scale_image_max (ImageEmphasize_two_setup, ImageEmphasize_two_setup) / 最大化圖像的灰度值 median_separate (ImageEmphasize_two_setup, ImageEmphasize_two_setup, 15, 15, mirrored) /使用矩形掩碼的離散中值濾波 scale_image_max (ImageEmphasize_two_setup, ImageEmphasize_

36、two_setup) threshold (ImageEmphasize_two_setup, Region2_setup, 0, 200)/分割圖像 圖5-6 closing_circle (Region2_setup, Region2_setup, 10)/關(guān)閉一個圓形結(jié)構(gòu)基礎(chǔ)的一個區(qū)域 圖5-7erosion_circle (Region2_setup, RegionErosion, 65)/用一個圓形的結(jié)構(gòu)元素來腐蝕圖像connection (RegionErosion, ConnectedRegions3_setup)/連通區(qū)域select_shape (ConnectedRegio

37、ns3_setup, ConnectedRegions31_setup, area,circularity,max_diameter, and, 3000,0.9,50, 99999,99999,99999)/根據(jù)特征值選擇區(qū)域 圖5-8count_obj (ConnectedRegions31_setup, Number)/用來計算被識別出來的區(qū)域的個數(shù) if (Number=1) check_result := 11 /不合格 無螺釘 else check_result := 99 /合格 已安裝螺釘 Endif6.用戶界面設(shè)計6.1 C+ Builder 簡介C+ Builder是由Bo

38、rland公司推出的一款可視化集成開發(fā)工具。C+builder不僅提供了快速、強大、現(xiàn)代的c+ ;還有驚人的框架:一個編譯器,一個調(diào)試器,一個ide ,四個平臺。在C+ Builder上開發(fā)時,能夠讓你專注于自己的代碼設(shè)計;因為它自身帶有許多的控件,有文本輸入的、顯示結(jié)果還有button按鈕,只需要把控件拖到窗體Form上,簡單設(shè)計一下控件的位置、名稱和屬性就能得到一個可視化的界面,十分的方便。而且在能快速進行可視化界面的同時,它還包含C+開發(fā)環(huán)境所能提供的所有功能,實現(xiàn)了可視化編程環(huán)境和功能強大的編程語言的完美結(jié)合,讓你的應(yīng)用程序比任何其它的C+有更好的市場。不僅如此C+ Builder的發(fā)

39、展也十分迅速,功能也將越來越完善。C+ Builder包括一個增強的語音基礎(chǔ)編譯Windows(32和64),iOS和Android,所有平臺上使用這一編譯器可以快速、一致地開發(fā)?,F(xiàn)在它還能提供快速開發(fā)功能、可視化的客戶端 / 服務(wù)器和讓企業(yè)進入它的數(shù)據(jù)庫中使用通用的數(shù)據(jù)庫訪問庫 (firedac)。6.2 HALCON 和 BCB 混合編程6.2.1 混合編程的設(shè)計流程HALCON和BCB混合編程就是在HALOCN中編寫好檢測程序,用C/C+格式導(dǎo)出,然后在BCB中通過庫文件調(diào)用它,以BCB為開發(fā)環(huán)境,編寫出一個可視化的檢測軟件。該方法的程序設(shè)計流程如圖6-1所示: 開始開始 讀取圖像 讀取

40、圖像HALCON螺釘安裝檢測系統(tǒng)HALCON螺釘安裝檢測系統(tǒng)HALCON導(dǎo)出C/C+代碼HALCON導(dǎo)出C/C+代碼BCB環(huán)境下封裝BCB環(huán)境下封裝C/C+代碼程序功能驗證程序功能驗證判斷得出結(jié)果判斷得出結(jié)果圖 6-1 HALCON與BCB混合編程設(shè)計流程以HALCON為核心編寫螺釘安裝檢測識別與統(tǒng)計系統(tǒng)應(yīng)用程序的步驟如下:步驟一:讀取圖像,把獲取到的圖像通過read_image算子獲取直接通過文件路徑找到圖像,然后讀取到程序中。步驟二:編寫HALCON程序,能夠?qū)ψx取的圖像執(zhí)行檢測代碼,檢測出螺釘是否安裝成功。步驟三:由HALCON導(dǎo)出檢測識別的程序代碼,生成C代碼或者C+代碼通過指令加入到

41、BCB程序中;步驟四:配置HALCON和BCB混合編程的程序開發(fā)環(huán)境;BCB環(huán)境中利用按鈕控件來搭建可視化界面,通過程序語言的功能開發(fā)整個螺釘安裝檢測識別程序,并完成程序功能驗證;6.2.2 環(huán)境配置與庫函數(shù)調(diào)用由于圖像的處理過程是HDevelop中設(shè)計的,使用BCB設(shè)計用戶界面時需要 調(diào)用HDevelop中導(dǎo)出的C程序代碼及HALCON庫,所以首先要做的是在BCB中配 置相應(yīng)的混合編程環(huán)境,主要包括頭文件路徑和鏈接文件及路徑的設(shè)置,具體步 驟如下:步驟一:在project-options的Dictionaries/Conditionals屬性頁中配置Include path: D:halco

42、nqmqq_bcb;D:BCBopencv21_ok;D:Program FilesBorlandCBuilder6Projects;$(BCB)include;$(BCB)includevcl;C:Program FilesBorlandVictorVCL;D:BCBopencv21_okopencvBCinclude; D:Program FilesMVTecHALCON-10.0include步驟二:在project-options的Directories/Conditionals屬性頁中配置Library path:D:halconqmqq_bcb;D:Program FilesBor

43、land CBuilder6 Projects;$(BCB)libobj;$(BCB)lib;步驟三:導(dǎo)入OpenGLPackage:下載TOpenGL并解壓,打開C+ Builder 6.0。在菜單欄選擇project-options-Packages-Add,打開文件夾TOpenGLB,選擇OpenGLPackage.bpl文件,單擊打開按鈕就可以了。將OpenGLSrc.h復(fù)制到D:Program FilesBorlandCBuilderInclude文件夾下。將OpenGLPackage.bpl文件復(fù)制到D:Program FilesBorlandCBuilderBin文件夾下。將Op

44、enGLPackage.lib、OpenGLPackage.bpi文件復(fù)制到D:Program FilesBorlandCBuilderLib文件夾下。6.3 螺釘安裝檢測界面設(shè)計 圖6-2 (a)檢測前 圖6-2(b)檢測后結(jié)語經(jīng)過了差不多半年的努力奮斗,這篇論文終于接近了尾聲,我感覺十分不易。從最初在老師那拿到論文題目,接著自己慢慢摸索,到處查閱資料,然后進行反復(fù)的調(diào)試和修改,再到論文完成,每一步對我來說都是新的挑戰(zhàn),這也是我在學(xué)校所獨立完成的一個最大的項目。雖然說在摸索的過程中吃了很多苦,但我從中也學(xué)到了許多,從對機器視覺和HALCON了解甚少到如今的充分了解和能夠初步的運用,中間的每一

45、次進步都讓我興奮很久,看到因自己努力而漸漸完善的論文,心中充滿了滿足感。經(jīng)過這么長的學(xué)習(xí),我也充分認(rèn)識到了機器視覺檢測的強大之處,了解了它在很多方面的應(yīng)用,我也相信在未來機器視覺會隨著工業(yè)發(fā)展而日益壯大。這次做論文的經(jīng)歷使我受益匪淺,我感受到做論文就是要踏踏實實地去做,一步一步地去實現(xiàn)每個階段的目標(biāo),遇到瓶頸不要放棄,多去找資料,多看多學(xué),你會發(fā)現(xiàn)其實并不難,而且當(dāng)你成功時,內(nèi)心的喜悅會告訴你前面的辛苦都是值得的,狂風(fēng)暴雨后的彩虹才會更加的絢麗迷人。當(dāng)然,本課題中也有需要完善的地方,比如對閾值的選取,僅依靠灰度直方圖來判斷,有時可能會漏掉重要的圖像信息,因此需要進一步的完善。還有就是軟件部分,

46、本系統(tǒng)基本上能完整的實現(xiàn)螺釘安裝檢測的功能,但是要在工業(yè)市場上現(xiàn)場正常應(yīng)用還需不斷的調(diào)試、修改,盡量使軟件的操作簡單、直觀,讓工人能迅速上手,提高工作效率,實現(xiàn)它的真正使用價值。參考文獻:1 韓曉軍.數(shù)字圖像處理技術(shù)與應(yīng)用M.北京:電子工業(yè)出版社,2017.2 阮秋琦.數(shù)字圖像處理基礎(chǔ)M.北京:清華大學(xué)出版社,2009.3 張錚.數(shù)字圖像處理與機器視覺:Visual C+與Matlab實現(xiàn).M.北京:人 民郵電出版社,2014.4 陸衛(wèi)忠.C+ Builder 6程序設(shè)計教程M.科學(xué)出版社,2011.5 趙鵬.機器視覺理論及應(yīng)用M.北京:電子工業(yè)出版社,2011.6 左建中.螺紋檢測的機器視覺

47、方法研究M.天津:天津大學(xué)機械工 程學(xué)院,20067 張國云.數(shù)字圖像處理及工程應(yīng)用M.西安:西安電子科技大學(xué) 出版社,2016.8 孫興華,郭麗.數(shù)字圖像處理:編程框架、理論分析、實例應(yīng)用和源碼實現(xiàn)M.北京:機械工業(yè)出版社,2012.9 Kenneth R. Castleman.Digital image processingM.Beijing : Publishing House of Electronics Industry, 2008.10 趙景波.C+ Builder 6.0 基礎(chǔ)教程M.機械工業(yè)出版社,2004.11 余文勇.機器視覺自動檢測技術(shù)M.北京:化學(xué)工業(yè)出版社,2013.12 Ramesh Jain, Rangachar Kasturi, Brian G. Schunck.Machine visionM. 北京 :

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論