任何產(chǎn)品的生產(chǎn)制造過程中,質(zhì)量檢驗都是非常重要且關鍵的一環(huán)。傳統(tǒng)的產(chǎn)品檢測方式基本就是靠人工肉眼或檢驗員依托一些特定工具進行,此種方式效率低,速度慢,誤判率高,已經(jīng)無法滿足現(xiàn)代工業(yè)制造的需求。引進機器視覺檢測技術,是適應現(xiàn)代化生產(chǎn)制造趨勢的必然要求。
機器視覺定位是什么?它和機器視覺檢測有什么不同之處?這些問題是很多剛接觸機器視覺檢測設備的制造商都會疑惑的。
通俗的來說,機器視覺定位和機器視覺檢測其實同屬同一行業(yè)的。
機器視覺檢測系統(tǒng)就是用機器代替人眼來做測量和判斷。機器視覺檢測系統(tǒng)是指通過機器視覺產(chǎn)品(即圖像攝取裝置,分 CMOS 和CCD 兩種)將被攝取目標轉換成圖像信號,傳送給專用的圖像處理系統(tǒng),根據(jù)像素分布和亮度、顏色等信息,轉變成數(shù)字化信號;圖像系統(tǒng)對這些信號進行各種運算來抽取目標的特征,進而根據(jù)判別的結果來控制現(xiàn)場的設備動作。
而視覺定位,由于在機器視覺系統(tǒng)的應用中,有些用于定位,有些由于檢測,因此就有了不同的叫法。具體的應用要根據(jù)實際需求情況要求而定,所以,在叫法上也存在著差異。比如自動打孔,那用途就是定位,檢查產(chǎn)品缺陷時就是用到的就是檢測,測量產(chǎn)品大小時,用到的就是測量功能。
簡而言之,視覺檢測和視覺定位是機器視覺技術的功能,一種用于視覺檢測,另一種用于視覺定位。而由于機器視覺檢測設備具有高精度、高效率、準確率高、非接觸檢測等諸多優(yōu)勢,可廣泛應用于各個行業(yè),比如精密五金檢測、塑膠件檢測、電子元器件檢測、電子產(chǎn)品檢測等等,發(fā)揮其巨大的作用。
機器視覺系統(tǒng)中的軟件開發(fā)工具
機器視覺系統(tǒng)的硬件選擇好,并且把它們組裝好,基本的骨架就已經(jīng)成型,但它還是一具沒有靈魂“尸體”。首先,我們要讓他活起來,必須給他通電,讓他的心臟跳動起來;其次,我們要讓他的腦子動起來,不然腦死亡,眼睛也啟動不了。讓機器視覺系統(tǒng)的大腦運作的正是他的軟件。
人腦功能可以分為不用學習就會的基本功能和需要學習才能實現(xiàn)的特殊功能,人的視覺功能基本上不用學習就會,機器的視覺功能就是需要學習才能實現(xiàn)的特殊功能。
圖像處理軟件就是機器視覺的特殊功能的實現(xiàn)方式,是需要開發(fā)商或者用戶來開發(fā)完成的功能。圖像處理軟件包括機器視覺開發(fā)工具和開發(fā)出的圖像處理應用軟件。
一、開發(fā)工具(開發(fā)軟件平臺)
計算機的軟件開發(fā)工具包括:C、C++、Visual C++、LabVIEW、C#、JAVA、BASIC、FORTRAN等,從運算的速度和編程的靈活性來看,圖像處理和分析的軟件開發(fā)平臺選擇VC開發(fā)較好。
由于機器視覺從大的類別上來看仍屬于自動化智能控制系統(tǒng),經(jīng)常與其他類型的控制系統(tǒng)集成以構成完整的自動化系統(tǒng)來完成自動化任務,C等文本編程語言適合通用軟件開發(fā),并不太適合自動化系統(tǒng)的開發(fā)。
C:面向過程的單純語言。
C++:C的升級版,面向?qū)ο蟮膹碗s語言。
Visual C++:C++的升級版,將不可視的C++變成了可視型。是最通用,功能最強大的機器視覺開發(fā)平臺,用戶較多,是微軟開發(fā)的軟件平臺,和WINDOWS搭配運行性能較好。
LabVIEW:NI 公司的圖形化開發(fā)平臺,開發(fā)軟件快,維護較為容易,特別適合工控行業(yè)或自動化測試行業(yè)的工程師使用。它的特點有:1、95%以上的編程工作由鼠標完成;2、程序以數(shù)據(jù)流的方式編寫,更符合人的思維方式;3、邊編寫,邊編譯,參及時發(fā)現(xiàn)錯誤;4、編程、調(diào)試效率較文本編程語言高。
二、圖像開發(fā)工具包(機器視覺算法理論具體化)
1、HALCON:德國MVTec軟件公司出品,底層的功能算法很多,運算性能快,用其開發(fā)需要一定軟件功底和圖像處理理論。
2、VisionPro:美國康耐視(Congex)公司出品,算法性能好,開發(fā)上比HALCON容易上手。
3、NI Vision:美國NI公司出品,與LabVIEW圖形化編程工具無縫集成,上手快,開發(fā)周期短,價格較便宜,性能方面在速度和精度方面稍比前兩種軟件差些。
4、Opencv:一個開源的計算機視覺庫。
綜上所述,機器視覺系統(tǒng)采用LabVIEW+NI Vision的方式開發(fā),較容易上手,適合自動化控制領域的視覺開發(fā)。