器視覺工業(yè)缺陷檢測(cè):光源、相機(jī)與圖像處理算法選型指南)
簡(jiǎn)介機(jī)器視覺工業(yè)缺陷檢測(cè)的那些事是一份面向工業(yè)視覺檢測(cè)工程師及學(xué)習(xí)者的知識(shí)梳理PDF文檔聚焦工件尺寸測(cè)量、表面缺陷檢測(cè)與Logo標(biāo)識(shí)識(shí)別等典型場(chǎng)景。內(nèi)容系統(tǒng)覆蓋視覺系統(tǒng)硬件選型包括LED、螢光燈、鹵素?zé)舻裙庠刺匦耘c背向、前向、同軸、低角度等照明方式的選擇要點(diǎn)也講解了相機(jī)、鏡頭、圖像采集卡的關(guān)鍵參數(shù)與匹配思路圖像處理部分則涉及去噪、增強(qiáng)、邊緣檢測(cè)、模板匹配等常用算法及主流算法庫有助于讀者建立從硬件搭建到算法落地的完整認(rèn)知。壓縮包內(nèi)共1個(gè)PDF文件大小1.26MB便于離線閱讀。目前已有1188人學(xué)習(xí)適合剛?cè)腴T機(jī)器視覺或需系統(tǒng)性梳理缺陷檢測(cè)知識(shí)的從業(yè)人員參考能幫助縮短設(shè)備選型與圖像調(diào)試的摸索過程。1. 機(jī)器視覺工業(yè)缺陷檢測(cè)一條劃痕怎么從看不見變成看得清工業(yè)缺陷檢測(cè)的現(xiàn)場(chǎng)常常是這樣同樣一條0.2mm寬的金屬劃痕在環(huán)形光下清晰得刺眼換到同軸光下就消失不見。這不是算法能力的問題而是光源、相機(jī)、鏡頭三個(gè)硬件環(huán)節(jié)在成像階段就已經(jīng)決定了結(jié)果。機(jī)器視覺的完整鏈路——光源、相機(jī)、鏡頭、圖像采集卡、圖像處理算法、缺陷識(shí)別——每一步都在壓縮不確定性選型錯(cuò)誤往往無法用后期算法補(bǔ)救。這份梳理正好覆蓋了這條鏈路硬件怎么選、參數(shù)怎么算、圖像處理在什么場(chǎng)景下用哪一類算法、Halcon和OpenCV各自的邊界在哪。剛接手視覺項(xiàng)目、需要在一周內(nèi)給出硬件選型方案的工程師或者想系統(tǒng)補(bǔ)一遍傳感器、鏡頭參數(shù)和算法選型邏輯的從業(yè)者都能直接照著用。2. 光源選型先定照明方式再挑燈型、顏色與波長(zhǎng)光源是視覺系統(tǒng)里最便宜、卻最容易被低估的硬件。兩千塊的燈能解決的問題最后可能要花兩萬塊在相機(jī)和算法上補(bǔ)。選型順序我習(xí)慣固定成三步先定照明方式再定燈型最后考慮光源顏色、波長(zhǎng)和表面反光處理。反過來做基本都會(huì)翻車。打光這活兒圈里常說是玄學(xué)其實(shí)背后就是這幾種光路邏輯把邏輯理清了剩下的是測(cè)試。2.1 背向、前向、結(jié)構(gòu)與頻閃四種照明方式的選擇邏輯照明方式?jīng)Q定圖像的基本面貌。背向照明把被測(cè)物放在光源和相機(jī)之間光線繞物體邊緣進(jìn)入鏡頭圖像呈現(xiàn)為黑白分明的輪廓對(duì)比度非常高但表面細(xì)節(jié)幾乎全部丟失。這種方式的典型用途是尺寸測(cè)量比如檢測(cè)工件的長(zhǎng)寬高、外輪廓、通孔位置因?yàn)檩喞吘壡逦鷾y(cè)量特征提取最穩(wěn)定。我一般會(huì)提醒項(xiàng)目成員背光圖能測(cè)尺寸但別指望同一張圖既測(cè)輪廓又看劃痕那是兩套照明方案。前向照明是光源和相機(jī)位于被測(cè)物同一側(cè)安裝最方便也是缺陷檢測(cè)的主力。它照射的是物體表面光線經(jīng)表面反射進(jìn)入鏡頭劃痕、斑點(diǎn)、孔洞、焊點(diǎn)這類表面特征會(huì)被亮度差異顯現(xiàn)出來。前向照明的難點(diǎn)在于反光控制表面越光滑鏡面反射越強(qiáng)越容易局部過曝。結(jié)構(gòu)光照明是把光柵或線光源投射到被測(cè)物上利用光柵畸變解調(diào)出物體三維信息適合做平整度檢測(cè)、凹凸測(cè)量這類需要高度信息的場(chǎng)景。頻閃光照明則用高頻率光脈沖照射物體相機(jī)與光源同步采集常用于高速運(yùn)動(dòng)物體的抓拍避免運(yùn)動(dòng)模糊。四種方式的分工很清晰測(cè)尺寸找背光看表面缺陷找前向量化凹凸找結(jié)構(gòu)光高速抓拍找頻閃。提示選擇照明方式時(shí)先回答兩個(gè)問題——你要檢測(cè)的是輪廓還是表面要檢測(cè)的物體是靜止還是運(yùn)動(dòng)的答案直接決定背光還是前向。2.2 穹形、環(huán)形、條形、同軸光四種燈型的應(yīng)用場(chǎng)景照明方式定了之后再選燈型。穹形光源是半球形漫射結(jié)構(gòu)光線從各個(gè)角度均勻打在物體表面專門對(duì)付球型或曲面物體、金屬鏡面這些容易產(chǎn)生定向反光的表面。玻璃瓶、滾珠、小工件表面、塑料或鋁制容器上的缺陷檢測(cè)用穹形光效果最穩(wěn)因?yàn)槁浒宴R面反光打散表面亮度均勻缺陷反而更突出。環(huán)形光源是通用性最強(qiáng)的首選多用于集成電路料帶與管腳字符檢測(cè)、金屬工件刻印字符、光滑表面劃痕、瓶口尺寸或裂痕檢測(cè)。環(huán)光安裝簡(jiǎn)單、價(jià)格親民但要注意它對(duì)傾斜表面會(huì)產(chǎn)生亮度不均遇到曲面工件需要換穹形。條形光源是從側(cè)面打光的照明方式常用角度是45度側(cè)光能避開正面照射的強(qiáng)烈反光同時(shí)對(duì)邊緣部分實(shí)現(xiàn)高亮照明。LCD缺陷檢測(cè)、包裝文字檢測(cè)、包裝膜破損檢測(cè)、紙張質(zhì)量檢測(cè)、常規(guī)印刷質(zhì)量檢測(cè)、制造物裂紋檢測(cè)、電子部件形狀識(shí)別和大小測(cè)量、各種線陣檢測(cè)都是條形光的典型戰(zhàn)場(chǎng)。同軸光的原理是光路與鏡頭同軸光線垂直照射后再垂直反射進(jìn)入鏡頭圖像效果為明亮背景上的黑色特征。它特別適合反光厲害的平面物體能加強(qiáng)有角度差異的表面特征比如劃痕、凹陷、壓印同時(shí)減少陰影。金屬、玻璃等光潔表面的劃痕和瑕疵檢測(cè)芯片和硅片的破損檢測(cè)金屬件上的沖壓字符檢測(cè)線路板焊點(diǎn)與符號(hào)檢測(cè)集成電路管腳字符檢測(cè)都用同軸光。另外還有入射角度不同帶來的效果差異高角度照射圖像整體較亮適合表面不反光的物體低角度照射背景黑、特征白能突出輪廓和表面凹凸變化多角度照射圖像柔和適合曲面。下表是常用燈型的速查對(duì)照。燈型成像特點(diǎn)典型場(chǎng)景穹形光源漫射均勻消除定向反光球面/曲面缺陷、金屬鏡面、玻璃瓶、滾珠環(huán)形光源環(huán)狀照明通用性強(qiáng)管腳字符、金屬刻印、光滑劃痕、瓶口檢測(cè)條形光源45度側(cè)光邊緣高亮LCD缺陷、紙張檢測(cè)、裂紋、線陣方案同軸光亮背景黑特征減少陰影金屬玻璃劃痕、芯片破損、焊點(diǎn)字符2.3 光源顏色、波長(zhǎng)與漫射三個(gè)容易忽略的細(xì)節(jié)燈型選完之后還有三個(gè)細(xì)節(jié)直接影響成像對(duì)比度。第一是光源顏色與背景顏色的關(guān)系。使用與被測(cè)物同色系的光會(huì)使圖像變亮比如紅光照射紅色物體物體更亮使用與被測(cè)物相反色系的光會(huì)使圖像變暗比如紅光照射藍(lán)色物體物體變暗藍(lán)光照射黃色物體呈現(xiàn)黑色。這個(gè)規(guī)律在做彩色物體缺陷檢測(cè)時(shí)非常實(shí)用——想突出某個(gè)顏色特征就選同色系光想把背景壓暗就用反色系光。第二是波長(zhǎng)選擇。波長(zhǎng)越長(zhǎng)穿透能力越強(qiáng)波長(zhǎng)越短擴(kuò)散能力越強(qiáng)。紅外穿透力強(qiáng)適合檢測(cè)透光性差的物體比如棕色口服液里面的雜質(zhì)檢測(cè)紫外對(duì)表面細(xì)微特征敏感適合檢測(cè)對(duì)比不夠明顯的地方比如食用油瓶上的文字檢測(cè)。如果工件表面反光嚴(yán)重則優(yōu)先選漫射光源多角度漫射照明能讓表面整體亮度均勻圖像背景柔和檢測(cè)特征不受背景干擾。注意光源顏色不能靠肉眼判斷最終效果必須以相機(jī)采集后的灰度直方圖為準(zhǔn)?,F(xiàn)場(chǎng)經(jīng)常出現(xiàn)肉眼看得很清楚、相機(jī)一拍對(duì)比度極低的情況這會(huì)直接影響后續(xù)閾值分割的穩(wěn)定性。3. 相機(jī)與鏡頭分辨率、幀率、接口的選型計(jì)算相機(jī)和鏡頭決定了圖像的空間分辨率和清晰度是整個(gè)視覺系統(tǒng)里參數(shù)計(jì)算最密集的部分。相機(jī)的任務(wù)是把光信號(hào)變成數(shù)字圖像鏡頭負(fù)責(zé)把視野映射到芯片靶面上。選型時(shí)要看的參數(shù)很多但真正決定方案是否成立的只有幾個(gè)分辨率算夠不夠、幀率跟不跟得上產(chǎn)線節(jié)拍、接口和鏡頭匹不匹配。圖像采集卡在這個(gè)環(huán)節(jié)的作用也要先搞清楚——它承擔(dān)A/D轉(zhuǎn)換、圖像傳輸、采集控制部分卡還帶FPGA或DSP做圖像處理?,F(xiàn)在千兆網(wǎng)口和USB3.0相機(jī)已經(jīng)把采集功能做進(jìn)相機(jī)本體獨(dú)立采集卡只在模擬相機(jī)、Camera Link或需要多相機(jī)并行觸發(fā)的場(chǎng)合才是必要的。3.1 面陣與線陣、CCD與CMOS按檢測(cè)任務(wù)選相機(jī)形態(tài)面陣相機(jī)一次采集一整幅二維圖像適合靜態(tài)或低速場(chǎng)景視場(chǎng)有限尺寸測(cè)量和一般缺陷檢測(cè)用面陣最方便。線陣相機(jī)則是一行一行地掃描用行頻表示速度單位為KHz比如12KHz表示相機(jī)1秒鐘最多采集12000行圖像數(shù)據(jù)。線陣方案適合大幅面連續(xù)運(yùn)動(dòng)的物體比如紙張、薄膜、金屬板材的表面檢測(cè)——產(chǎn)品是長(zhǎng)條形且連續(xù)運(yùn)動(dòng)的線陣相機(jī)加編碼器是最常見的做法。芯片類型的選擇相對(duì)明確。CCD傳感器圖像質(zhì)量高、靈敏度高、對(duì)比度高但存在Blooming現(xiàn)象、不能直接訪問每個(gè)像素、沒有片上處理功能適合高速動(dòng)態(tài)測(cè)量。CMOS傳感器把光敏元件、放大器、A/D轉(zhuǎn)換器、存儲(chǔ)器、數(shù)字信號(hào)處理器和計(jì)算機(jī)接口控制電路集成在一塊硅片上體積小、結(jié)構(gòu)簡(jiǎn)單、片上處理功能多、低功耗、沒有Blooming現(xiàn)象、能直接訪問單個(gè)像素、動(dòng)態(tài)范圍可達(dá)120dB、幀率可以更高缺點(diǎn)是一致性差、光靈敏度差、噪聲大。CMOS的隨機(jī)讀取特性還支持矩形感興趣區(qū)域AOI讀出針對(duì)較小AOI時(shí)可以獲得更高幀率。現(xiàn)實(shí)中CCD用于動(dòng)態(tài)測(cè)量CMOS用于低速或靜態(tài)測(cè)量但全局曝光CMOS現(xiàn)在已經(jīng)能勝任動(dòng)態(tài)測(cè)量而且CMOS是趨勢(shì)。對(duì)比項(xiàng)CCDCMOS成像質(zhì)量高一般價(jià)格較貴便宜功耗較高低動(dòng)態(tài)測(cè)量適合低速/靜態(tài)適合全局曝光亦可趨勢(shì)當(dāng)前主流正在趕上未來方向3.2 相機(jī)參數(shù)逐個(gè)理清分辨率、像元深度、信噪比與動(dòng)態(tài)范圍分辨率是相機(jī)最基本的參數(shù)由芯片靶面排列的像元數(shù)量決定。面陣相機(jī)用水平×垂直兩個(gè)數(shù)字表示比如1920(H)×1080(V)前面是每行的像元數(shù)量后面是像元行數(shù)。行業(yè)里常用多少K來表示分辨率1K即10242K即2048。幀頻和行頻對(duì)應(yīng)采集速度面陣相機(jī)用fps表示每秒最多采集多少幀線陣相機(jī)用KHz表示每秒采集多少行。實(shí)際應(yīng)用中相機(jī)速度需要滿足運(yùn)動(dòng)物體的成像要求而幀率首先受芯片設(shè)計(jì)最高時(shí)鐘限制。像元深度定義灰度由暗到亮的灰階數(shù)。8bit相機(jī)0代表全暗、255代表全亮10bit有1024個(gè)灰階12bit有4096個(gè)灰階。從8bit升到10bit或12bit確實(shí)能增強(qiáng)測(cè)量精度但代價(jià)是系統(tǒng)速度下降、集成難度提高線纜增加、尺寸變大所以要慎重。噪方面散粒噪聲由有效信號(hào)帶來、符合泊松分布不可避免噪聲平方等于信號(hào)均值相機(jī)固有噪聲來自讀出電路和信號(hào)處理放大電路每臺(tái)相機(jī)不一樣數(shù)字相機(jī)A/D轉(zhuǎn)換時(shí)還會(huì)產(chǎn)生量化噪聲量化位數(shù)越高噪聲越低。信噪比是有效信號(hào)平均灰度值與噪聲均方根的比值代表圖像質(zhì)量。動(dòng)態(tài)范圍表明相機(jī)探測(cè)光信號(hào)的范圍可用倍數(shù)、dB或Bit表示動(dòng)態(tài)范圍越大對(duì)光照強(qiáng)度的適應(yīng)能力越強(qiáng)。3.3 分辨率怎么算從視野和檢測(cè)精度反推最低像素分辨率選型是一個(gè)純計(jì)算過程。核心公式是相機(jī)像素精度單方向視野范圍大小/相機(jī)單方向分辨率反過來就是相機(jī)單方向分辨率單方向視野范圍大小/理論精度。舉個(gè)例子檢測(cè)物體表面劃痕物體大小為10×8mm要求檢測(cè)精度0.01mm假設(shè)拍攝視野范圍12×10mm那么相機(jī)最低分辨率應(yīng)該是(12/0.01)×(10/0.01)1200×1000約120萬像素。這里有一個(gè)關(guān)鍵的穩(wěn)定性原則如果一個(gè)像素對(duì)應(yīng)一個(gè)缺陷系統(tǒng)一定極不穩(wěn)定因?yàn)殡S便一個(gè)干擾像素點(diǎn)都可能被誤認(rèn)為缺陷。為了提高系統(tǒng)的精準(zhǔn)度和穩(wěn)定性最好讓缺陷面積覆蓋3到4個(gè)像素以上。按這個(gè)標(biāo)準(zhǔn)上面的例子要選130萬像素乘以3以上即最低不能少于300萬像素通常采用300萬像素的相機(jī)為最佳。我也見過有人抱著亞像素不放說要做到零點(diǎn)幾的亞像素精度但真有那個(gè)需求靠的是算法和光學(xué)放大而不是盲目降分辨率。實(shí)際選型時(shí)還要加上光照不穩(wěn)定余量和溫度漂移余量我一般會(huì)在理論值基礎(chǔ)上再乘2到3倍。3.4 鏡頭選型視場(chǎng)、焦距、景深與光學(xué)接口鏡頭選型要同時(shí)盯住五個(gè)參數(shù)視場(chǎng)、工作距離、景深、焦距、接口。視場(chǎng)是充滿相機(jī)采集芯片的物體部分選型時(shí)視野要略大于被測(cè)物體給運(yùn)動(dòng)控制留余量。工作距離是從鏡頭前部到受檢驗(yàn)物體的距離要確認(rèn)現(xiàn)場(chǎng)是否有安裝空間、距離是否可調(diào)。焦距的計(jì)算公式是f工作距離/視野范圍長(zhǎng)邊×CCD長(zhǎng)邊焦距大小直接影響成像效果——焦距越小景深越大但畸變?cè)酱鬂u暈現(xiàn)象越嚴(yán)重會(huì)使像差邊緣照度降低。景深和焦距、光圈、物距三者相關(guān)光圈越小景深越大拍攝距離越大景深越大焦距越短景深越大。對(duì)景深有要求的項(xiàng)目盡可能使用小光圈在選擇放大倍率的鏡頭時(shí)項(xiàng)目許可下盡量選低倍率鏡頭。光圈用F值表示如f1.4、f2、f2.8光圈越大圖像亮度越高、景深越小、分辨率越高。光學(xué)放大倍率用PMAGCCD Size/FOV計(jì)算。另外幾個(gè)規(guī)律值得記住同檔次的固定焦距鏡頭比變焦鏡頭分辨率高短焦鏡頭邊緣分辨率一般低于中心長(zhǎng)焦鏡頭中心比邊緣分辨率低光波波長(zhǎng)越短得到的圖像分辨率越高所以精密尺寸及位置測(cè)量系統(tǒng)盡量采用短波長(zhǎng)的單色光照明。鏡頭接口是現(xiàn)場(chǎng)最容易踩坑的地方。常用接口有C口、CS口、F口C型接口后截距17.526mmCS型接口后截距12.5mmF型接口46.5mm。C型鏡頭與C型攝像機(jī)、CS型鏡頭與CS型攝像機(jī)可以配合使用C型鏡頭與CS型攝像機(jī)之間增加一個(gè)5mm的C/CS轉(zhuǎn)接環(huán)可以配合使用CS型鏡頭與C型攝像機(jī)無法配合使用。M42鏡頭適配器源于高端攝像標(biāo)準(zhǔn)相機(jī)的Z軸均依據(jù)適配器優(yōu)化過一般情況下不要輕易拆卸鏡頭適配器。接口類型后截距接口形式C口17.526mm螺口CS口12.5mm螺口F口46.5mm卡口4. 圖像處理算法與算法庫預(yù)處理、分割與缺陷識(shí)別的選型邏輯硬件成像之后進(jìn)入軟件環(huán)節(jié)。圖像處理的完整流程分三步預(yù)處理讓缺陷特征更明顯分割把缺陷從背景里分離出來特征提取加分類器判斷是哪種缺陷。很多項(xiàng)目把精力全放在最后一步的分類器上實(shí)際上前面兩步?jīng)]做扎實(shí)后面再好的算法也白搭。預(yù)處理對(duì)圖像數(shù)據(jù)進(jìn)行加工使我們需要的特征更加明顯檢測(cè)處理根據(jù)圖像特征對(duì)損傷、尺寸進(jìn)行檢測(cè)——這是整個(gè)軟件鏈路的基本分工。4.1 預(yù)處理灰度變換、直方圖均衡化與濾波的取舍預(yù)處理的目標(biāo)是突出目標(biāo)特征、抑制無關(guān)信息。灰度變換包括線性灰度變換、分段線性灰度變換和非線性灰度變換核心邏輯是把感興趣的灰度區(qū)間拉伸增大缺陷與背景的對(duì)比度。直方圖增強(qiáng)包括直方圖統(tǒng)計(jì)和直方圖均衡化均衡化把灰度分布拉開適合整體偏暗或偏亮的圖像。但要注意光照不均的現(xiàn)場(chǎng)使用直方圖均衡化容易放大背景噪聲這是常見的誤用場(chǎng)景。降噪濾波是預(yù)處理里最需要分寸感的部分。鄰域平均法和加權(quán)平均法簡(jiǎn)單但會(huì)模糊邊緣中值濾波對(duì)椒鹽噪聲效果好且能較好保留邊緣均值濾波和高斯濾波適合平滑高斯噪聲但會(huì)模糊細(xì)節(jié)雙邊濾波在去噪的同時(shí)保留邊緣是表面缺陷檢測(cè)里比較穩(wěn)妥的選擇。邊緣銳化常用梯度銳化、Roberts算子、Laplace算子、Sobel算子。實(shí)際項(xiàng)目中劃痕檢測(cè)最常見的是Sobel或Canny找邊緣配合中值濾波去噪。我一般會(huì)提醒缺陷檢測(cè)里不要過度降噪中值濾波加輕高斯足夠了過度平滑會(huì)把細(xì)小劃痕也抹掉。4.2 分割與特征閾值、邊緣、Blob與LBP分割是把缺陷從背景中分離出來的關(guān)鍵步驟。閾值分割分三種固定閾值分割適合背景和缺陷灰度分離明顯的情況OTSU最優(yōu)閾值分割能自動(dòng)計(jì)算閾值是最常用的起點(diǎn)自適應(yīng)閾值分割適合光照不均、背景灰度漸變的場(chǎng)景比如紙張、薄膜表面?;谶吔绲姆指钣肅anny邊緣檢測(cè)、輪廓提取和邊界跟蹤適合劃痕、裂紋、毛刺這類線狀缺陷。Hough變換直線和圓檢測(cè)多用于定位和幾何尺寸測(cè)量。區(qū)域生長(zhǎng)、區(qū)域歸并與分裂、聚類分割屬于區(qū)域分割方法分水嶺分割常用于粘連目標(biāo)的分離。特征提取決定缺陷怎么描述。幾何特征包括位置與方向、周長(zhǎng)、面積、長(zhǎng)軸與短軸、距離形狀特征用Blob分析計(jì)算矩形度、圓形度、不變矩、偏心率、多邊形描述、曲線描述直方圖特征包括均值、方差、能量、熵計(jì)算簡(jiǎn)單具有平移和旋轉(zhuǎn)不變性對(duì)顏色像素的精確空間分布不敏感在表面檢測(cè)、缺陷識(shí)別中應(yīng)用廣泛。LBP局部二值模式對(duì)光照變化造成的灰度變化有較強(qiáng)魯棒性在表面缺陷檢測(cè)、指紋識(shí)別、光學(xué)字符識(shí)別、人臉識(shí)別及車牌識(shí)別領(lǐng)域都有應(yīng)用而且計(jì)算簡(jiǎn)單可用于實(shí)時(shí)檢測(cè)。選特征的原則是能用一個(gè)特征分清的不要用兩個(gè)Blob分析先做再看缺陷的灰度屬性最后才考慮紋理特征。4.3 缺陷分類與算法庫Halcon、OpenCV的現(xiàn)實(shí)對(duì)比缺陷目標(biāo)識(shí)別算法方面?zhèn)鹘y(tǒng)方法包括貝葉斯分類、K最近鄰KNN、人工神經(jīng)網(wǎng)絡(luò)ANN、支持向量機(jī)SVM、K-means等。樣本量不大時(shí)SVM在缺陷分類任務(wù)上表現(xiàn)穩(wěn)定K-means適合無監(jiān)督聚類打標(biāo)先聚類再人工標(biāo)注是快速建立缺陷樣本集的有效技巧。深度學(xué)習(xí)方案現(xiàn)在是熱門方向但傳統(tǒng)方法在缺陷樣本有限、要求可解釋性的場(chǎng)景下仍然有不可替代的地位。算法庫選型是項(xiàng)目落地時(shí)最現(xiàn)實(shí)的問題。Halcon底層功能算法多、運(yùn)算性能快、功能齊全、容易上手、開發(fā)項(xiàng)目周期短但它是非開源商業(yè)軟件價(jià)格大概10K到15K一個(gè)加密狗。OpenCV功能算法相對(duì)少一些但開源、可用于商用開發(fā)周期較長(zhǎng)有些算法要自己寫。我的經(jīng)驗(yàn)是項(xiàng)目周期短、預(yù)算允許、算法復(fù)用場(chǎng)景多的直接選Halcon做研究、做原型、想控制授權(quán)成本的走OpenCV路線但要做好自己寫算法的心理準(zhǔn)備。行業(yè)里做視覺集成的公司比如大恒圖像、凌云光、大族激光、康耐視、基恩士各家的方案也都是在這類庫基礎(chǔ)上做的二次開發(fā)。對(duì)比項(xiàng)HalconOpenCV開源情況非開源商用收費(fèi)開源可商用功能算法多且底層相對(duì)較少開發(fā)周期短易上手較長(zhǎng)部分算法需自寫適用對(duì)象商用項(xiàng)目研究、原型、低成本方案5. 避坑記錄打光、選型和現(xiàn)場(chǎng)調(diào)試的五次翻車這一章是梳理資料時(shí)對(duì)照現(xiàn)場(chǎng)經(jīng)歷整理出來的踩坑記錄。每一條都有人付過學(xué)費(fèi)現(xiàn)象、原因、解決思路寫清楚能幫你在方案階段就繞開。5.1 同軸光下金屬劃痕時(shí)有時(shí)無現(xiàn)象同軸光下檢測(cè)同一塊鋁板劃痕亮度不穩(wěn)定有時(shí)候清晰可見有時(shí)候幾乎消失導(dǎo)致漏檢率波動(dòng)。原因同軸光對(duì)表面角度差異敏感劃痕方向、深度和角度的變化會(huì)改變反射光路。劃痕方向與光路平行時(shí)反射光無法進(jìn)入鏡頭對(duì)比度驟降。解決改用低角度條形光并做旋轉(zhuǎn)角度測(cè)試或者用同軸光加一組側(cè)光輔助形成多角度照明組合。打光方案必須在樣品上實(shí)測(cè)確認(rèn)不能只看廠商給的效果圖。5.2 高分辨率相機(jī)一上產(chǎn)線幀率就掉現(xiàn)象標(biāo)稱500萬像素30fps的相機(jī)實(shí)際采集只有十幾幀產(chǎn)線上產(chǎn)品連續(xù)通過時(shí)頻繁漏檢。原因分辨率與幀率此消彼長(zhǎng)500萬像素全幅讀出的時(shí)間遠(yuǎn)高于小分辨率相機(jī)帶寬不足也會(huì)限制傳輸GigE相機(jī)接到百兆網(wǎng)卡或USB3.0相機(jī)經(jīng)過Hub幀率都會(huì)掉。解決按產(chǎn)線節(jié)拍反推最低幀率再選相機(jī)。不需要全幅輸出時(shí)用CMOS的AOI感興趣區(qū)域讀出幀率能明顯提升。同時(shí)檢查接口帶寬GigE接千兆網(wǎng)卡USB3.0直連主板不經(jīng)過Hub。5.3 C接口鏡頭裝不上CS接口相機(jī)現(xiàn)象鏡頭擰上去之后成像模糊或者根本擰不到底現(xiàn)場(chǎng)誤以為鏡頭壞了。原因C接口后截距是17.526mmCS接口是12.5mm兩者相差5mm。C型鏡頭裝在CS型攝像機(jī)上鏡片到芯片的距離不對(duì)無法合焦。解決C型鏡頭配CS型攝像機(jī)時(shí)加一個(gè)5mm的C/CS轉(zhuǎn)接環(huán)即可CS型鏡頭配C型攝像機(jī)則無法配合。采購時(shí)把鏡頭接口和后截距寫清楚別只看都是螺口。5.4 彩色相機(jī)做灰度缺陷檢測(cè)誤檢率偏高現(xiàn)象檢測(cè)白色塑料表面的黑色臟污用彩色相機(jī)轉(zhuǎn)灰度后誤檢率比預(yù)期高缺陷邊界模糊。原因彩色相機(jī)使用Bayer插值將顏色信息轉(zhuǎn)為灰度時(shí)會(huì)引入偽彩色和馬賽克噪聲缺陷邊界被插值算法模糊彩色成像為還原顏色本身就需要犧牲一定的空間分辨率。解決不涉及顏色判斷的缺陷檢測(cè)直接用黑白相機(jī)加對(duì)應(yīng)波長(zhǎng)的單色光比彩色相機(jī)轉(zhuǎn)灰度更穩(wěn)定。只有需要區(qū)分顏色缺陷時(shí)比如Logo印刷色彩錯(cuò)誤才用彩色相機(jī)。5.5 視野邊緣發(fā)暗導(dǎo)致漏檢現(xiàn)象畫面中心缺陷清晰靠近視野邊緣的缺陷對(duì)比度明顯下降邊緣區(qū)域出現(xiàn)漏檢。原因光源尺寸小于視野范圍光線在邊緣衰減鏡頭自身的漸暈和像差進(jìn)一步加重了邊緣亮度不均。解決光源尺寸選擇要求略大于視野保障整個(gè)視野內(nèi)光線均勻鏡頭靶面尺寸不能小于相機(jī)芯片尺寸2/3英寸鏡頭無法支撐1英寸以上靶面必要時(shí)做平場(chǎng)校正或多點(diǎn)光源補(bǔ)償。6. 選型實(shí)戰(zhàn)從需求表到參數(shù)表的完整推導(dǎo)用一個(gè)具體場(chǎng)景把前面的選型邏輯串起來。假設(shè)要檢測(cè)手機(jī)中框鋁合金表面的劃痕工件尺寸約120mm×60mm要求檢出0.05mm以上的劃痕生產(chǎn)節(jié)拍2秒一件工作距離固定200mm中框表面高反光。第一步算視野。工件120×60mm四周留10mm余量視野定為140×80mm。第二步算分辨率。單方向分辨率等于視野除以理論精度140/0.05280080/0.051600相乘約450萬像素。按缺陷覆蓋3到4個(gè)像素的穩(wěn)定性原則理論值要再乘3倍所以實(shí)際選型不低于1200萬像素。如果成本受限退一步的方案是500萬像素配合更高倍率鏡頭縮小視野但檢測(cè)穩(wěn)定性要重新驗(yàn)證。第三步選相機(jī)形態(tài)。工件是取放位靜態(tài)拍照節(jié)拍2秒選面陣CMOS全局曝光為佳黑白相機(jī)——金屬劃痕檢測(cè)不涉及顏色判斷黑白加單色光更穩(wěn)。第四步算鏡頭焦距。假設(shè)選1/1.8英寸黑白CMOS靶面約7.2mm×5.4mm焦距f工作距離/視野長(zhǎng)邊×CCD長(zhǎng)邊200/140×7.2≈10.3mm取12mm定焦。第五步算曝光時(shí)間。像素當(dāng)量視野長(zhǎng)邊/水平像素?cái)?shù)500萬相機(jī)水平方向約2448像素當(dāng)量約0.057mm/pixel。如果抓拍瞬間有0.5m/s的運(yùn)動(dòng)速度不出現(xiàn)拖影的條件是t≤像素當(dāng)量×1.5/運(yùn)動(dòng)速度即t≤0.057×1.5/500≈0.000171秒約1/5800秒。這意味著光源亮度必須足夠高才能在這個(gè)快門速度下保證圖像正常曝光。第六步定光源方案。鋁合金高反光表面主光源用同軸光增強(qiáng)劃痕凹陷特征再配一組低角度條形光突出輪廓雙光源組合。裝夾前用真實(shí)樣品試拍看灰度直方圖確認(rèn)缺陷與背景灰度差是否大于30個(gè)灰度級(jí)、有無過曝區(qū)域、邊緣有無暗角。這套流程走下來選型表就齊了1200萬像素黑白CMOS面陣相機(jī)、12mm定焦鏡頭、同軸光加低角度條形光、快門不低于1/5800秒。從那以后我每次做視覺選型都強(qiáng)制先走一遍這條推導(dǎo)鏈——視野、分辨率、幀率、焦距、曝光時(shí)間、光源所有參數(shù)寫進(jìn)表里再下單硬件到貨第一件事也是按這個(gè)表逐項(xiàng)驗(yàn)證。這套流程能幫你在方案階段就消滅掉一大半的現(xiàn)場(chǎng)問題。希望幫到你。本文還有配套的精品資源點(diǎn)擊獲取