缺陷檢測(cè)分類
1.1 標(biāo)準(zhǔn)缺陷檢測(cè)
所謂標(biāo)準(zhǔn),就是不針對(duì)行業(yè)特點(diǎn),這里基本分為如下幾類:
標(biāo)準(zhǔn)預(yù)處理功能:圖像增強(qiáng)、腐蝕、膨脹、開運(yùn)算、閉運(yùn)算、濾波、傅立葉變換(頻域空間域轉(zhuǎn)換)、距離變換、差分、等
面積檢測(cè):閾值后計(jì)算ROI內(nèi)面積
Blob(閾值分割+特征提取)檢測(cè):閾值聯(lián)通后計(jì)算Blob
濃度差檢測(cè):計(jì)算ROI范圍內(nèi)的最大濃度、最小濃度、濃度差
直線/曲線上的毛刺/缺陷:擬合直線/曲線,計(jì)算邊緣點(diǎn)到直線/曲線距離
標(biāo)準(zhǔn)的做法一般都是拿標(biāo)準(zhǔn)的算法塊進(jìn)行組合,以達(dá)到缺陷檢測(cè)的效果,缺陷檢測(cè)標(biāo)準(zhǔn)流程一般是:
1設(shè)置基準(zhǔn)圖模板——>2當(dāng)前圖模板定位——>3生成仿射變換矩陣——>4旋轉(zhuǎn)平移圖像或者區(qū)域——>5預(yù)處理差分——>6預(yù)處理濾波/腐蝕/膨脹——>7Blob檢測(cè)——>8面積檢測(cè)
1.2 非標(biāo)缺陷檢測(cè)(針對(duì)行業(yè)特性)
相對(duì)與標(biāo)準(zhǔn)做法,非標(biāo)的做法就非常多,有些非標(biāo)的目的是為了減少操作步驟,例如將上面的組合流程變成一個(gè)工具,這個(gè)我們稱之為業(yè)務(wù)邏輯非標(biāo)。
還有一些非標(biāo)主要是做圖像預(yù)處理部分,例如修改一些標(biāo)準(zhǔn)預(yù)處理的算子和預(yù)處理流程,將瑕疵提取出來。當(dāng)然,對(duì)數(shù)學(xué)理論掌握程度較高的朋友,會(huì)推導(dǎo)理論公式,然后直接實(shí)現(xiàn)數(shù)學(xué)公式達(dá)到檢測(cè)效果。
2. 行業(yè)難點(diǎn)
傳統(tǒng)算法檢測(cè)缺陷:調(diào)試難度大,容易在檢測(cè)不穩(wěn)定情況下反復(fù)調(diào)參,且復(fù)雜缺陷誤測(cè)多,兼容性差
機(jī)器學(xué)習(xí)檢測(cè)缺陷:一般使用類似MLP的一些單層神經(jīng)網(wǎng)絡(luò),對(duì)缺陷特征進(jìn)行訓(xùn)練分類,該方法需要事先提取出缺陷部分,一般用來與傳統(tǒng)分割法搭配使用,達(dá)到缺陷檢測(cè)分類的效果。
深度學(xué)習(xí)檢測(cè)缺陷(打標(biāo)簽):一般需要客戶提供大量的缺陷樣本,而且缺陷種類越多、特征越不明顯,需要的缺陷樣本就越大。其次,打標(biāo)簽過程很難做到自動(dòng),需要手動(dòng)輔助框出缺陷位置,工作量非常大??偨Y(jié)就是訓(xùn)練周期久,訓(xùn)練樣本大,如果客戶可以提供大量樣本,那該方法是首選(半導(dǎo)體行業(yè)一般不會(huì)出現(xiàn)大量缺陷樣品)
深度學(xué)習(xí)檢測(cè)缺陷(遷移學(xué)習(xí)法):該方法我感覺會(huì)成為后面工業(yè)領(lǐng)域檢測(cè)瑕疵的一個(gè)大趨勢(shì),但是需要一些公司去收集各種行業(yè)的缺陷類型圖片和訓(xùn)練的網(wǎng)絡(luò)模型,并共享出來(突然感覺是個(gè)商機(jī),就看誰能抓住了),然后我們可以使用遷移學(xué)習(xí)的方法學(xué)習(xí)別人訓(xùn)練好的模型。
3. 常規(guī)缺陷檢測(cè)算法(Halcon)
總的來說,缺陷檢測(cè)的算法包括:
Blob分析+特征提取(常用,較簡(jiǎn)單)
定位(Blob定位、模板匹配定位)+ 差分(常用)
光度立體
特征訓(xùn)練
測(cè)量擬合(常用)
頻域+空間域結(jié)合(常用)
深度學(xué)習(xí)
3.1 差分法
標(biāo)準(zhǔn)缺陷檢測(cè)我覺得用差分法還是蠻多的。顧名思義,差分就是通過對(duì)兩幅圖像或和兩個(gè)區(qū)域作差,來找出其中有差異的區(qū)域。處理流程基本就是定位Blob分析+差分或模板匹配+差分的方式,主要用來檢測(cè)物品損壞,凸起,破洞,缺失,以及質(zhì)量檢測(cè)等。兩種方式的具體流程如下:
3.1.1 blob分析+差分
檢測(cè)流程如下:
讀取圖像
對(duì)圖像進(jìn)行Blob分析,提取圖像上的Roi檢測(cè)區(qū)域
在對(duì)Roi區(qū)域直接進(jìn)行差分處理或者與沒有缺陷的圖像進(jìn)行差分處理
ps:這里差分包含區(qū)域差分和圖像差分兩種方式。
最后求差集,根據(jù)差集部分的面積判斷該物品是否有缺陷
流程解析:以標(biāo)準(zhǔn)圖像中的灰度值為模板,計(jì)算處檢測(cè)圖像的灰度值,并與標(biāo)準(zhǔn)圖像作差,灰度值差異越大,則證明檢測(cè)圖像中存在與標(biāo)準(zhǔn)圖比有明顯灰度變化的區(qū)域,即這部分區(qū)域就是我們所要篩選出的缺陷區(qū)域。
示例分析:提取灰度值明顯的缺陷區(qū)域
*1.使用`intensity()`算子計(jì)算出模板圖(即標(biāo)準(zhǔn)圖,圖1)的檢測(cè)區(qū)域圖像的灰度平均值`OriginalMean`
intensity(OriginalRegion, ImageReduced1, OriginalMean, Deviation1)
*2.再`intensity()`算子計(jì)算出待測(cè)圖(圖2)的檢測(cè)區(qū)域圖像的灰度平均值`DetectMean`,計(jì)算出兩幅圖像灰度均值的差值
intensity (DetectRegion, ImageReduced2, DetectMean, Deviation2)
tuple_abs (OriginalMean-DetectMean, Abs)
*3.
*如果兩個(gè)區(qū)域的灰度值差值大于10(if(Abs>10)),則生成一副圖像(圖3),其灰度值為模板圖中計(jì)算得到的的平均灰度值;
*如果兩個(gè)區(qū)域的灰度值差值小于10(if(Abs<10)),則生成一副圖像(圖3),其灰度值為待測(cè)圖中計(jì)算得到的的平均灰度值。
*ps:這里計(jì)算結(jié)果是差值小于10,也就是檢測(cè)圖的灰度值差異和模板圖差異不大,直接生成一個(gè)后者的灰度均值圖像
if(Abs>10)
gen_image_proto (ImageReduced2, ImageCleared, OriginalMean)
else
gen_image_proto (ImageReduced2, ImageCleared, DetectMean)
endif
reduce_domain (ImageCleared, RegionDifference, ImageReduced1)
*4.將待測(cè)圖與新生成的灰度值圖像做差值(圖4),可以找到待測(cè)圖和模板圖灰度值有差異的區(qū)域
abs_diff_image (ImageReduced2, ImageReduced1, ImageAbsDiff, 1)
invert_image (ImageAbsDiff, ImageInvert)
threshold (ImageInvert, Region1, 0, 30)
opening_circle (Region1, RegionOpening, 1.5)
connection (RegionOpening, ConnectedRegions)
select_shape (ConnectedRegions, SelectedRegions, 'area', 'and', 10, 99999)
檢測(cè)效果如下:
沒理解的,再列舉一些Halcon中的差分例程練練手:
1.檢測(cè)毛刺(Blob+差分法)—— fin.hdev
2.電路板線路缺陷檢測(cè)(Blob+差分法)—— pcb_inspection.hdev
3.瓶口破損缺陷檢測(cè)(Blob+差分法)—— inspect_bottle_mouth.hdev(注意直角坐標(biāo)系和極坐標(biāo)系之間的轉(zhuǎn)換)
3.1.2 模板匹配+差分
流程如下:
先定位模板區(qū)域后,求得模板區(qū)域的坐標(biāo),創(chuàng)建物品的形狀模板create_shape_model,注意把模板的旋轉(zhuǎn)角度改為rad(0)和rad(360)
匹配模板find_shape_model時(shí),由于物品的缺陷使形狀有局部的改變,所以要把MinScore設(shè)置小一點(diǎn),否則匹配不到模板。并求得匹配項(xiàng)的坐標(biāo)
關(guān)鍵的一步,將模板區(qū)域仿射變換到匹配成功的區(qū)域。由于差集運(yùn)算是在相同的區(qū)域內(nèi)作用的,所以必須把模板區(qū)域轉(zhuǎn)換到匹配項(xiàng)的區(qū)域
最后求差集,根據(jù)差集部分的面積判斷該物品是否有缺陷
示例分析:印刷質(zhì)量缺陷檢測(cè)(可變現(xiàn)模板匹配+差分法)—— print_check.hdev
ps:里面沒用difference做差分,而是用了Halcon為變形模板提供的專門的差分算子:compare_variation_model();
3.1.3 兩種檢測(cè)方式對(duì)比
Blob分析適用于需要整張圖都是Roi區(qū)域或圖像某處Roi區(qū)域通過預(yù)處理很容易提取出來的情況。而Blob分析沒辦法定位到圖像R區(qū)域的時(shí)候就需要用到模板匹配了,通過模板匹配(形狀匹配或局部變形匹配)定位到圖像Roi區(qū)域,然后用差異模型去檢測(cè)缺陷,可以理解為模板匹配 + 差分是Blob分析 + 差分的進(jìn)階版,比較容易處理的可以交給兒子Blob分析處理,難的話爸爸模板匹配上。
3.2 頻域+空間結(jié)合法
3.2.1 傅里葉變換理論
傅里葉變換是一種函數(shù)在空間域和頻率域的變換,從空間域到頻率域的變換是傅里葉變換,而從頻率域到空間域是傅里葉的反變換。
時(shí)域與頻域:
頻域(frequency domain)
是指在對(duì)函數(shù)或信號(hào)進(jìn)行分析時(shí),分析其和頻率有關(guān)部份,而不是和時(shí)間有關(guān)的部份,和時(shí)域一詞相對(duì)。
時(shí)域(空間域)
是描述數(shù)學(xué)函數(shù)或物理信號(hào)對(duì)時(shí)間的關(guān)系。例如一個(gè)信號(hào)的時(shí)域波形可以表達(dá)信號(hào)隨著時(shí)間的變化。若考慮離散時(shí)間,時(shí)域中的函數(shù)或信號(hào),在各個(gè)離散時(shí)間點(diǎn)的數(shù)值均為已知。若考慮連續(xù)時(shí)間,則函數(shù)或信號(hào)在任意時(shí)間的數(shù)值均為已知。在研究時(shí)域的信號(hào)時(shí),常會(huì)用示波器將信號(hào)轉(zhuǎn)換為其時(shí)域的波形。
兩者相互間的變換
時(shí)域(信號(hào)對(duì)時(shí)間的函數(shù))和頻域(信號(hào)對(duì)頻率的函數(shù))的變換在數(shù)學(xué)上是通過積分變換實(shí)現(xiàn)。對(duì)周期信號(hào)可以直接使用傅立葉變換,對(duì)非周期信號(hào)則要進(jìn)行周期擴(kuò)展,使用拉普拉斯變換。
信號(hào)在頻率域的表現(xiàn):
在頻域中,頻率越大說明原始信號(hào) 變化速度越快;頻率越小說明原始信號(hào)越平緩。當(dāng)頻率為0時(shí),表示直流信號(hào),沒有變化。因此,頻率的大小反應(yīng)了信號(hào)的變化快慢。高頻分量解釋信號(hào)的突變部分,而低頻分量決定信號(hào)的整體形象。
在圖像處理中,頻率反應(yīng)了圖像在空域灰度變化劇烈程度,也就是圖像灰度的變化速度,也就是圖像的梯度大小。對(duì)圖像而言,圖像的邊緣部分是突變部分,變化較快,因此反應(yīng)在頻域上是高頻分量;圖像的噪聲大部分情況下是高頻部分;圖像平緩變化部分則為低頻分量。也就是說,傅立葉變換提供另外一個(gè)角度來觀察圖像, 可以將圖像從灰度分布轉(zhuǎn)化到頻率分布上來觀察圖像的特征。書面一點(diǎn)說就是,傅里葉變換提供了一條從空域到頻率自由轉(zhuǎn)換的途徑。對(duì)圖像處理而言,以下概念非常的重要。
由布布丶全權(quán)冠名的“ 第一屆圖像杯拳王挑戰(zhàn)錦標(biāo)賽 "`正式開始,有請(qǐng):
高頻代表隊(duì)參賽選手:噪聲、細(xì)節(jié)和邊緣
圖像高頻分量:圖像突變部分,在某些情況下指圖像邊緣信息,某些情況下指噪聲,更多是兩者的混合。
低頻代表隊(duì)參賽選手:圖像整體輪廓
圖像低頻分量:圖像(亮度/灰度)變化平緩的部分,代表著那是連續(xù)漸變的一塊區(qū)域,這部分就是低頻。對(duì)于一幅圖像來說,除去高頻的就是低頻了,也就是邊緣以內(nèi)的內(nèi)容為低頻,而邊緣內(nèi)的內(nèi)容就是圖像的大部分信息,即圖像的大致概貌和輪廓,是圖像的近似信息。
親高頻派裁判代表:高通濾波器 —— 讓圖像高頻分量通過,抑制低頻分量。
親低頻派裁判代表:低通濾波器 —— 與高通相反,讓圖像低頻分量通過,抑制高頻分量。
鐵面無私裁判代表:帶通濾波器 —— 使圖像在某一部分的頻率信息通過,其他過低或過高都抑制。
左右逢源裁判代表:帶阻濾波器,是帶通的反。
加強(qiáng)理解:圖像噪聲一般是白點(diǎn)或者黑點(diǎn),因?yàn)樗c正常的點(diǎn)顏色不一樣了,也就是說該像素點(diǎn)灰度值明顯不一樣了,也就是灰度有快速地變化了,所以是高頻部分;圖像細(xì)節(jié)處也是屬于灰度值急劇變化的區(qū)域,正是因?yàn)榛叶戎档募眲∽兓艜?huì)出現(xiàn)細(xì)節(jié),也屬于高頻部分;所以一般會(huì)對(duì)信號(hào)先進(jìn)行低通濾波處理,即過濾掉圖像中的高頻部分(噪聲/細(xì)節(jié)/邊緣),留下低頻(圖像輪廓),結(jié)果就是圖像模糊了。
ps:圖像處理中,有書上說低頻反應(yīng)輪廓,高頻反應(yīng)細(xì)節(jié);有的文章里面說低頻反應(yīng)的是背景,高頻反應(yīng)的是邊緣;低頻反應(yīng)輪廓,這里的輪廓指的不是邊緣(很多人會(huì)搞混覺得輪廓是指的就是邊緣),打個(gè)比方,近視眼的人摘了眼鏡,人們通常會(huì)說:“我什么也看不清,僅僅能看到一個(gè)大致輪廓。”就是類似的意思。所以圖像的邊緣提取仍是提起的邊緣的高頻信息,這兩種說法并不矛盾。
總結(jié):低頻代表圖像整體輪廓,高頻代表了圖像噪聲、邊緣和細(xì)節(jié),中頻代表圖像紋理等。
3.2.2 應(yīng)用場(chǎng)景
使用傅里葉變換進(jìn)行頻域分析的應(yīng)用場(chǎng)景:
具有一定紋理特征的圖像,紋理可以理解為條紋,如布匹、木板、紙張等材質(zhì)容易出現(xiàn)。
需要提取對(duì)比度低或者信噪比低的特征。
圖像尺寸較大或者需要與大尺寸濾波器進(jìn)行計(jì)算,此時(shí)轉(zhuǎn)換至頻域計(jì)算,具有速度優(yōu)勢(shì)。因?yàn)榭臻g域?yàn)V波為卷積過程(加權(quán)求和),頻域計(jì)算直接相乘。
3.2.3 核心檢測(cè)算子
在Halcon中,使用頻域進(jìn)行檢測(cè)的思路是先從空間域到頻域,在頻域中進(jìn)行適當(dāng)濾波,選擇自己想要的頻段,然后再返回到空間域中去,其中有兩個(gè)步驟是比較關(guān)鍵的:
1. 生成合適的濾波器
對(duì)應(yīng)的關(guān)鍵算子:
gen_std_bandpass
gen_sin_bandpass
*創(chuàng)建一個(gè)高斯濾波器,sigma越小濾波器越小,通過的信號(hào)更加的集中在低頻,這樣做的目的是得到背景
gen_gauss_filter( : ImageGauss : Sigma1, Sigma2, Phi, Norm, Mode, Width, Height : )(常用)
gen_mean_filter
gen_derivative_filter
gen_bandpass
gen_bandfilter
gen_highpass
gen_lowpass
2. 快速傅里葉變換(空間域和頻域之間的相互轉(zhuǎn)換)
對(duì)應(yīng)的關(guān)鍵算子:
fft_generic(Image : ImageFFT : Direction, Exponent, Norm, Mode, ResultType : )
rft_generic(Image : ImageFFT : Direction, Norm, ResultType, Width : )
兩個(gè)算子共同點(diǎn):
這兩個(gè)算子都可以進(jìn)行空間域—>頻域,頻域—>空間域的變換,只需要針對(duì)參數(shù)Direction分別進(jìn)行選擇,參數(shù)'to_freq'是進(jìn)行的是空間域—>頻域的變換,'from_freq'是頻域—>空間域的變換
針對(duì)參數(shù)ResultType,如果是to_freq',那么ResultType一般選擇'complex';如果是'from_freq',ResultType一般選擇’byte’(灰度圖像)。
兩個(gè)算子不同點(diǎn):
fft_generic:DC項(xiàng)在頻域中的位置可選在左上角(Mode:'dc_edge')或者原點(diǎn)平移到中心(Mode:'dc_center')
rft_generic:沒有設(shè)置項(xiàng)Mode,原點(diǎn)在默認(rèn)在左上角。
除此之外,fft_image:也可進(jìn)行快速傅里葉變化(空間域到頻域),等價(jià)于fft_generic(Image,ImageFFT,‘to_freq’,-1,‘sqrt’,‘dc_center’,‘complex’)
3.2.4 相關(guān)實(shí)際檢測(cè)案例
塑料制品的表面進(jìn)行缺陷檢測(cè) —— detect_indent_fft.hdev
* 1.對(duì)指定大小的圖片的fft速度進(jìn)行優(yōu)化
optimize_rft_speed (Width, Height, 'standard')
Sigma1 := 10.0
Sigma2 := 3.0
* 2.構(gòu)造兩個(gè)高斯濾波器,ps:Sigma參數(shù)的選取很重要
gen_gauss_filter (GaussFilter1, Sigma1, Sigma1, 0.0, 'none', 'rft', Width, Height)
gen_gauss_filter (GaussFilter2, Sigma2, Sigma2, 0.0, 'none', 'rft', Width, Height)
* 兩圖片相減(灰度)
sub_image (GaussFilter1, GaussFilter2, Filter, 1.025, 0)
NumImages := 16
for Index := 1 to NumImages by 1
read_image (Image, 'plastics/plastics_' + Index$'02')
rgb1_to_gray (Image, Image)
* 3.計(jì)算一個(gè)圖像的實(shí)值快速傅里葉變換(空間域轉(zhuǎn)至頻域)
rft_generic (Image, ImageFFT, 'to_freq', 'none', 'complex', Width)
* 4.用在頻域內(nèi)的濾波器使一個(gè)圖像卷積。
convol_fft (ImageFFT, Filter, ImageConvol)
* 5.卷積后的頻域圖像轉(zhuǎn)至空間域
rft_generic (ImageConvol, ImageFiltered, 'from_freq', 'n', 'real', Width)
* 6.濾波之后的圖像交給形態(tài)學(xué)來分析
* 空間域上的blob圖像分割
*原圖矩形內(nèi)的灰度值范圍(max-min)作為輸出圖像像素值,擴(kuò)大了亮的部分
gray_range_rect (ImageFiltered, ImageResult, 10, 10)
* 獲得圖像最大灰度值和最小灰度值
min_max_gray (ImageResult, ImageResult, 0, Min, Max, Range)
*二值化提取( 5.55是經(jīng)驗(yàn)值,在調(diào)試中得到)
threshold (ImageResult, RegionDynThresh, max([5.55,Max * 0.8]), 255)
select_shape (RegionDynThresh, SelectedRegions, 'area', 'and', 1, 99999)
對(duì)于處理這種細(xì)微的缺陷,也可使用頻域處理。該例程的關(guān)鍵就是使用兩個(gè)低通濾波器,進(jìn)行相減后構(gòu)造了一個(gè)帶阻濾波器(先通過高反差保留讓中高頻通過,然后通過高斯模糊抑制高頻,最終的結(jié)果是讓中頻通過)來提取缺陷分量。
此外,Halcon中關(guān)于傅里葉變換的例程還有:detect_mura_defects_texture.hdev
檢測(cè)布料表面劃痕
*《Halcon機(jī)器視覺算法原理與編程實(shí)戰(zhàn)》16-1
* 將測(cè)試圖像轉(zhuǎn)化為單通道的灰度圖像
rgb1_to_gray (Image, ImageGray)
* 1.創(chuàng)建一個(gè)高斯濾波器,用于將傅里葉轉(zhuǎn)換后的圖像進(jìn)行濾波
gen_gauss_filter (GaussFilter, 3.0, 3.0, 0.0, 'none', 'rft', Width, Height)
* 對(duì)灰度圖像進(jìn)行顏色反轉(zhuǎn)
invert_image (ImageGray, ImageInvert)
* 2.對(duì)反轉(zhuǎn)后的圖像進(jìn)行傅里葉變換
rft_generic (ImageInvert, ImageFFT, 'to_freq', 'none', 'complex', Width)
* 3.對(duì)傅里葉圖像做卷積,使用之前創(chuàng)建的高斯濾波器作為卷積核
convol_fft (ImageFFT, GaussFilter, ImageConvol)
* 4.將卷積后的傅里葉圖像還原為空間域圖像。可見圖像的突變部分得到了增強(qiáng)
rft_generic (ImageConvol, ImageFiltered, 'from_freq', 'n', 'real', Width)
* 5.設(shè)置提取線條的參數(shù),將圖像中的有灰度差異的線條提取出來
calculate_lines_gauss_parameters (17, [25,3], Sigma, Low, High)
lines_gauss (ImageFiltered, Lines, Sigma, Low, High, 'dark', 'true', 'gaussian', 'true')
木板劃痕檢測(cè)
dev_update_off ()
dev_close_window ()
read_image (Image, '缺陷檢測(cè)木板劃痕提取.jpg')
* 1.彩色轉(zhuǎn)灰度圖
count_channels (Image, Channels)
if (Channels == 3 or Channels == 4)
rgb1_to_gray (Image, Image)
endif
get_image_size (Image, Width, Height)
dev_open_window_fit_size (0, 0, Width, Height, -1, -1, WindowHandle)
dev_display (Image)
* 2.傅里葉變換去背景
fft_generic (Image, ImageFFT, 'to_freq', -1, 'sqrt', 'dc_center', 'complex')
gen_rectangle2 (Rectangle1, 308.5, 176.56, rad(-0), 179.4, 7.725)
gen_rectangle2 (Rectangle2, 306.955, 175, rad(-90), 180.765, 4.68)
union2 (Rectangle1, Rectangle2, UnionRectangle)
paint_region (UnionRectangle, ImageFFT, ImageResult, 0, 'fill')
fft_generic (ImageResult, ImageFFT1, 'from_freq', 1, 'sqrt', 'dc_center', 'byte')
* 3.提取劃痕
threshold (ImageFFT1, Regions, 5, 240)
connection (Regions, ConnectedRegions)
select_shape (ConnectedRegions, SelectedRegions, 'area', 'and', 20, 99999)
union1 (SelectedRegions, RegionUnion)
dilation_rectangle1 (RegionUnion, RegionDilation, 5, 5)
connection (RegionDilation, ConnectedRegions1)
select_shape (ConnectedRegions1, SelectedRegions1, ['width','height'], 'and', [30,15], [150,100])
dilation_rectangle1 (SelectedRegions1, RegionDilation1, 11, 11)
union1 (RegionDilation1, RegionUnion1)
skeleton (RegionUnion1, Skeleton)
* 4.顯示
dev_set_color ('red')
dev_display (Image)
dev_display (Skeleton)
審核編輯:劉清
-
神經(jīng)網(wǎng)絡(luò)
+關(guān)注
關(guān)注
42文章
4814瀏覽量
103550 -
傅立葉變換
+關(guān)注
關(guān)注
3文章
105瀏覽量
32896 -
HALCON
+關(guān)注
關(guān)注
17文章
66瀏覽量
27792 -
ROI
+關(guān)注
關(guān)注
0文章
15瀏覽量
6438 -
MLP
+關(guān)注
關(guān)注
0文章
57瀏覽量
4606
原文標(biāo)題:Halcon視覺:缺陷檢測(cè)分類
文章出處:【微信號(hào):gh_a8b121171b08,微信公眾號(hào):機(jī)器人及PLC自動(dòng)化應(yīng)用】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
機(jī)器視覺表面缺陷檢測(cè)技術(shù)
機(jī)器視覺檢測(cè)之產(chǎn)品缺陷檢測(cè),提高產(chǎn)品良品率
機(jī)器視覺檢測(cè)系統(tǒng)在薄膜表面缺陷檢測(cè)的應(yīng)用
深圳CCD視覺檢測(cè)系統(tǒng)在陶瓷缺陷檢測(cè)的應(yīng)用
紗布瑕疵缺陷機(jī)器視覺檢測(cè)的應(yīng)用
廣東機(jī)器視覺缺陷檢測(cè)系統(tǒng)在包裝袋封口檢測(cè)的應(yīng)用
四元數(shù)數(shù)控:機(jī)器視覺檢測(cè)產(chǎn)品有什么缺陷檢測(cè)?
四元數(shù)數(shù)控:深圳機(jī)器視覺對(duì)手機(jī)外殼缺陷有什么檢測(cè)?
關(guān)于缺陷檢測(cè)設(shè)備,機(jī)器視覺缺陷檢測(cè)的內(nèi)容有哪些
視覺檢測(cè)應(yīng)用廣泛,視覺檢測(cè)表面常見的缺陷有哪些
機(jī)器視覺檢測(cè)中的外觀缺陷檢測(cè)
C#使用Halcon開發(fā)視覺檢測(cè)程序
基于Halcon圖像處理的表面缺陷檢測(cè)方案

視覺檢測(cè)設(shè)備的分類

評(píng)論