基于嵌入式GPU的模切工件邊緣缺陷檢測(cè)算法研發(fā)
發(fā)布時(shí)間:2021-04-01 02:39
當(dāng)前模切機(jī)生產(chǎn)的工件檢測(cè)大多采用人工抽樣檢測(cè)的方法,以剔除不合格的模切件。但人工檢測(cè)的方法存在成本高、檢測(cè)率低下和易引入二次破壞等問題。因此本文研發(fā)了一套基于嵌入式GPU的模切件邊緣缺陷檢測(cè)算法,能高效率并準(zhǔn)確地檢測(cè)模切件邊緣缺陷,具有較高的工程應(yīng)用價(jià)值。本文基于機(jī)器視覺,通過線陣相機(jī)和編碼器結(jié)合獲取模切件圖像,在對(duì)圖像進(jìn)行尺寸校正、亮度校正和定位后,針對(duì)膠區(qū)邊緣研發(fā)了 CLAHE增強(qiáng)的改進(jìn)Canny算法進(jìn)行邊緣檢測(cè),針對(duì)非膠區(qū)邊緣研發(fā)了腐蝕膨脹作差后進(jìn)行Zernike矩亞像素邊緣檢測(cè)。對(duì)于有角度偏移的工件,研發(fā)了基于非膠區(qū)邊緣像素為特征值的二階矩計(jì)算旋轉(zhuǎn)角度,并進(jìn)行校正。接著對(duì)模切件邊緣輪廓進(jìn)行分割、擬合和誤差計(jì)算,通過先驗(yàn)信息對(duì)輪廓基元進(jìn)行直線與曲線的分割,針對(duì)直線采用基于最小二乘的線性方程擬合,針對(duì)曲線采用基于最小二乘的五階多項(xiàng)式擬合,通過標(biāo)準(zhǔn)工件對(duì)應(yīng)邊緣擬合的方程式與待測(cè)工件對(duì)應(yīng)區(qū)域像素點(diǎn)的相對(duì)最小均方誤差判斷邊緣是否存在缺陷。最后,為了提高算法性能,針對(duì)邊緣缺陷算法各個(gè)環(huán)節(jié),利用嵌入式GPU Tegra X1實(shí)現(xiàn)基于CUDA的并行加速優(yōu)化,并對(duì)算法準(zhǔn)確性和性能進(jìn)行測(cè)試。經(jīng)過測(cè)...
【文章來(lái)源】:浙江大學(xué)浙江省 211工程院校 985工程院校 教育部直屬院校
【文章頁(yè)數(shù)】:90 頁(yè)
【學(xué)位級(jí)別】:碩士
【部分圖文】:
圖2-7?GPU內(nèi)存空間示意圖??
浙江大學(xué)碩士學(xué)位論文?相關(guān)技術(shù)概述??[59]。如圖2-8所示:??SM??SM??!???SM??fmw1!?wmmm?^??q?SP?SP?SP?SP??p??TT?SP?SP?SP?SP??u??寄存器文件?指令調(diào)度器??—她.'屬暴_??共享內(nèi)存?.__...??圖2-8CUDA編程模型示意圖??NVIDIA公司開發(fā)的CUDA編程模型進(jìn)行大致分為以下四種:??(1)?Wrap??GPU分配指令的基本單位。一個(gè)Wrap包含32個(gè)線程指令,這些指令本身??應(yīng)當(dāng)是相同的,但處理的數(shù)據(jù)可以不同。因此,每次SM發(fā)布指令時(shí),只需發(fā)布??一次,就可以有32個(gè)SP得到指令,由于SP各自具有獨(dú)立的寄存器,即使得到??相同的指令,也可以針對(duì)不同的數(shù)據(jù)進(jìn)行處理,大大地提高了執(zhí)行效率。但是如??果當(dāng)前執(zhí)行的算法包含很多分支,SM為了使不同SP執(zhí)行不同的指令,會(huì)分多??次分別發(fā)送,這會(huì)極大地降低并行效率。因此,在GPU編程時(shí),減少分支數(shù)量??是保證算法并行度的一個(gè)重要環(huán)節(jié)。??(2)?Thread??即最基本的線程單位,邏輯上每個(gè)SP執(zhí)行一個(gè)Thread,實(shí)際運(yùn)行時(shí)由SM??負(fù)責(zé)分配與管理。??(3)?Block??多個(gè)Thread俎成的線程塊,擁有共享內(nèi)存,并且線程之間可以直接進(jìn)行同??步。從硬件上來(lái)看,一個(gè)Block只由一個(gè)SM控制,不同Block之間基本獨(dú)立,??無(wú)法同步,無(wú)法讀寫共享內(nèi)存。但也正因?yàn)槠洫?dú)立性,使程序可以在硬件配置不??同的GPU上運(yùn)行,增強(qiáng)了其通用性。??16??
浙江大學(xué)碩士學(xué)位論文?模切件圖像邊緣缺陷檢測(cè)算法分析與研發(fā)??3模切件圖像邊緣缺陷檢測(cè)算法分析與研發(fā)??本章基于機(jī)器視覺系統(tǒng),結(jié)合邊緣處理、旋轉(zhuǎn)角度計(jì)算和基元擬合等技術(shù),??研發(fā)模切件的邊緣缺陷檢測(cè)算法。首先對(duì)相機(jī)采集的模切件圖像進(jìn)行預(yù)處理,對(duì)??圖像進(jìn)行尺寸校正和亮度校正,接著進(jìn)行模切件定位,排除工件外部背景的干擾,??再進(jìn)行邊緣檢測(cè),之后對(duì)存在角度偏移的工件進(jìn)行旋轉(zhuǎn)角度計(jì)算并校正,最后對(duì)??邊緣輪廓進(jìn)行基元的分割與擬合,通過標(biāo)準(zhǔn)件相應(yīng)區(qū)域擬合的方程式與待測(cè)工件??對(duì)應(yīng)區(qū)域的誤差進(jìn)行比較判斷工件是否合格。通過研究經(jīng)典的實(shí)現(xiàn)算法,分析各??流程中的各種算法的應(yīng)用場(chǎng)合以及優(yōu)缺點(diǎn),并進(jìn)行相關(guān)的改進(jìn)與測(cè)試,設(shè)計(jì)了本??文的算法方案。??3.1圖像預(yù)處理和模切件定位??3.1.1圖像尺寸校正??本文選用線陣CCD對(duì)圖像進(jìn)行采集,線陣相機(jī)主要的優(yōu)勢(shì)在于分辨率高、??測(cè)量精度高和抗干擾能力強(qiáng),在機(jī)器視覺系統(tǒng)中廣泛應(yīng)用,但在實(shí)際應(yīng)用中,機(jī)??器視覺系統(tǒng)存在相機(jī)畸變,使得成像質(zhì)量下降,圖像的集合精度降低,測(cè)量系統(tǒng)??的誤差變大,因此需對(duì)鏡頭畸變進(jìn)行標(biāo)定和補(bǔ)償。??fTrrrrrri??I?????????I??I?????????I????????I??I.????:???I??圖3-1標(biāo)定板示意圖??本文采用標(biāo)定板的方式是對(duì)鏡頭畸變進(jìn)行標(biāo)定和補(bǔ)償,標(biāo)定板參數(shù)如表3-1??所示。通過標(biāo)定板已知實(shí)際物理尺寸的標(biāo)定圓,采集標(biāo)定圓的圖像,并求取圓的??像素直徑,獲得物理尺寸和像素間的換算關(guān)系,得到尺寸矯正系數(shù),進(jìn)一步得到??圖像行列方向的分辨率。??18??
本文編號(hào):3112535
【文章來(lái)源】:浙江大學(xué)浙江省 211工程院校 985工程院校 教育部直屬院校
【文章頁(yè)數(shù)】:90 頁(yè)
【學(xué)位級(jí)別】:碩士
【部分圖文】:
圖2-7?GPU內(nèi)存空間示意圖??
浙江大學(xué)碩士學(xué)位論文?相關(guān)技術(shù)概述??[59]。如圖2-8所示:??SM??SM??!???SM??fmw1!?wmmm?^??q?SP?SP?SP?SP??p??TT?SP?SP?SP?SP??u??寄存器文件?指令調(diào)度器??—她.'屬暴_??共享內(nèi)存?.__...??圖2-8CUDA編程模型示意圖??NVIDIA公司開發(fā)的CUDA編程模型進(jìn)行大致分為以下四種:??(1)?Wrap??GPU分配指令的基本單位。一個(gè)Wrap包含32個(gè)線程指令,這些指令本身??應(yīng)當(dāng)是相同的,但處理的數(shù)據(jù)可以不同。因此,每次SM發(fā)布指令時(shí),只需發(fā)布??一次,就可以有32個(gè)SP得到指令,由于SP各自具有獨(dú)立的寄存器,即使得到??相同的指令,也可以針對(duì)不同的數(shù)據(jù)進(jìn)行處理,大大地提高了執(zhí)行效率。但是如??果當(dāng)前執(zhí)行的算法包含很多分支,SM為了使不同SP執(zhí)行不同的指令,會(huì)分多??次分別發(fā)送,這會(huì)極大地降低并行效率。因此,在GPU編程時(shí),減少分支數(shù)量??是保證算法并行度的一個(gè)重要環(huán)節(jié)。??(2)?Thread??即最基本的線程單位,邏輯上每個(gè)SP執(zhí)行一個(gè)Thread,實(shí)際運(yùn)行時(shí)由SM??負(fù)責(zé)分配與管理。??(3)?Block??多個(gè)Thread俎成的線程塊,擁有共享內(nèi)存,并且線程之間可以直接進(jìn)行同??步。從硬件上來(lái)看,一個(gè)Block只由一個(gè)SM控制,不同Block之間基本獨(dú)立,??無(wú)法同步,無(wú)法讀寫共享內(nèi)存。但也正因?yàn)槠洫?dú)立性,使程序可以在硬件配置不??同的GPU上運(yùn)行,增強(qiáng)了其通用性。??16??
浙江大學(xué)碩士學(xué)位論文?模切件圖像邊緣缺陷檢測(cè)算法分析與研發(fā)??3模切件圖像邊緣缺陷檢測(cè)算法分析與研發(fā)??本章基于機(jī)器視覺系統(tǒng),結(jié)合邊緣處理、旋轉(zhuǎn)角度計(jì)算和基元擬合等技術(shù),??研發(fā)模切件的邊緣缺陷檢測(cè)算法。首先對(duì)相機(jī)采集的模切件圖像進(jìn)行預(yù)處理,對(duì)??圖像進(jìn)行尺寸校正和亮度校正,接著進(jìn)行模切件定位,排除工件外部背景的干擾,??再進(jìn)行邊緣檢測(cè),之后對(duì)存在角度偏移的工件進(jìn)行旋轉(zhuǎn)角度計(jì)算并校正,最后對(duì)??邊緣輪廓進(jìn)行基元的分割與擬合,通過標(biāo)準(zhǔn)件相應(yīng)區(qū)域擬合的方程式與待測(cè)工件??對(duì)應(yīng)區(qū)域的誤差進(jìn)行比較判斷工件是否合格。通過研究經(jīng)典的實(shí)現(xiàn)算法,分析各??流程中的各種算法的應(yīng)用場(chǎng)合以及優(yōu)缺點(diǎn),并進(jìn)行相關(guān)的改進(jìn)與測(cè)試,設(shè)計(jì)了本??文的算法方案。??3.1圖像預(yù)處理和模切件定位??3.1.1圖像尺寸校正??本文選用線陣CCD對(duì)圖像進(jìn)行采集,線陣相機(jī)主要的優(yōu)勢(shì)在于分辨率高、??測(cè)量精度高和抗干擾能力強(qiáng),在機(jī)器視覺系統(tǒng)中廣泛應(yīng)用,但在實(shí)際應(yīng)用中,機(jī)??器視覺系統(tǒng)存在相機(jī)畸變,使得成像質(zhì)量下降,圖像的集合精度降低,測(cè)量系統(tǒng)??的誤差變大,因此需對(duì)鏡頭畸變進(jìn)行標(biāo)定和補(bǔ)償。??fTrrrrrri??I?????????I??I?????????I????????I??I.????:???I??圖3-1標(biāo)定板示意圖??本文采用標(biāo)定板的方式是對(duì)鏡頭畸變進(jìn)行標(biāo)定和補(bǔ)償,標(biāo)定板參數(shù)如表3-1??所示。通過標(biāo)定板已知實(shí)際物理尺寸的標(biāo)定圓,采集標(biāo)定圓的圖像,并求取圓的??像素直徑,獲得物理尺寸和像素間的換算關(guān)系,得到尺寸矯正系數(shù),進(jìn)一步得到??圖像行列方向的分辨率。??18??
本文編號(hào):3112535
本文鏈接:http://sikaile.net/kejilunwen/shengwushengchang/3112535.html
最近更新
教材專著