在視覺(jué)引導(dǎo),尺寸測(cè)量,產(chǎn)品檢測(cè),物體識(shí)別等幾個(gè)領(lǐng)域中,機(jī)器視覺(jué)是主要生產(chǎn)制造使用的。一個(gè)最基本的算法就是產(chǎn)品識(shí)別和定位,比如視覺(jué)引導(dǎo)機(jī)器人,要在圖像中識(shí)別出要抓取的產(chǎn)品,并定位出坐標(biāo),才引導(dǎo)機(jī)器人到指定的產(chǎn)品位置。尺寸測(cè)量,產(chǎn)品檢測(cè)等也是一樣的,在測(cè)量和檢測(cè)之前,首先要知道有沒(méi)有產(chǎn)品,產(chǎn)品的位置在哪里,才可以應(yīng)用后續(xù)的各種分析工具。因此,產(chǎn)品識(shí)別和定位是一個(gè)基本問(wèn)題。
如果要設(shè)計(jì)一個(gè)可行的產(chǎn)品識(shí)別和定位的算法,需要克服幾方面的困難:
快速的指定產(chǎn)品:工業(yè)產(chǎn)品千差萬(wàn)別。因此,對(duì)于每一個(gè)具體的應(yīng)用,需要從幾張,甚至一張圖像上,快速指定需要查找的產(chǎn)品,比如當(dāng)前產(chǎn)線需要定位鉚釘?shù)奈恢?,拍一張照片并進(jìn)行相應(yīng)的學(xué)習(xí),就可以在后續(xù)的圖像中進(jìn)行搜索定位
快速的搜索產(chǎn)品:對(duì)于一張200萬(wàn)像素的圖片,通常要求在幾十毫秒的時(shí)間可以識(shí)別和定位出產(chǎn)品的位置
高精度的定位:工業(yè)生產(chǎn)對(duì)精度和公差有嚴(yán)格的要求,因此產(chǎn)品的定位就要力求準(zhǔn)確?,F(xiàn)在普遍要求識(shí)別定位算法可以達(dá)到一個(gè)像素級(jí)別的定位精度,甚至可以達(dá)到亞像素級(jí)別。
可以適應(yīng)產(chǎn)品缺失,遮擋,臟污等的影響:如果一個(gè)產(chǎn)品被遮擋,導(dǎo)致產(chǎn)品在圖像中缺失一定比列,需要依然可以識(shí)別定位到物體。反之,如果產(chǎn)品表面發(fā)生臟污,導(dǎo)致表面的特征發(fā)生變化,需要依然可以識(shí)別定位
可以適應(yīng)光照亮度不均勻的影響:如果產(chǎn)品的亮度發(fā)生變化,比如一半亮一半暗,需要依然可以識(shí)別定位
可以識(shí)別旋轉(zhuǎn)的產(chǎn)品:產(chǎn)品通??赡茉?/span>360度范圍內(nèi)旋轉(zhuǎn)
可以識(shí)別多個(gè)產(chǎn)品:一張圖像中可能有多個(gè)產(chǎn)品,需要分別識(shí)別定位
可以準(zhǔn)確識(shí)別接近對(duì)稱的物體:接近對(duì)稱的物體很容易別識(shí)別成錯(cuò)誤的方向,需要進(jìn)行相應(yīng)的設(shè)計(jì)
可以應(yīng)對(duì)物體的極性翻轉(zhuǎn):比如學(xué)習(xí)的產(chǎn)品是白底黑字,但是實(shí)際上產(chǎn)品圖像有可能是黑底白字,需要可以識(shí)別
深度學(xué)習(xí)可以解決這個(gè)問(wèn)題嗎?深度學(xué)習(xí)中目標(biāo)檢測(cè)算法(one-stage和two-stages的各種算法),在這個(gè)應(yīng)用中有幾方面的難點(diǎn)
數(shù)據(jù)量:如何在只有一張圖像的情況下,學(xué)習(xí)到需要識(shí)別定位的物體?
速度:如何在一般配置的PC上達(dá)到ms級(jí)別的識(shí)別定位速度?傳統(tǒng)算法在幾千元的工控機(jī)上就可以發(fā)揮速度優(yōu)勢(shì),然而深度學(xué)習(xí)需要配置昂貴的GPU,或者在2019年會(huì)有一些垂直細(xì)分領(lǐng)域的ASIC芯片開發(fā)出來(lái)
定位精度:考慮到深度學(xué)習(xí)輸入的圖像本身都是進(jìn)行了縮放的圖像,那么在原圖上很難達(dá)到像素精度的匹配
識(shí)別準(zhǔn)確性:在數(shù)據(jù)量很少的情況下,怎么提升識(shí)別的準(zhǔn)確性?
考慮到此類問(wèn)題面臨的困難,一般還是用傳統(tǒng)的機(jī)器視覺(jué)方法來(lái)實(shí)現(xiàn)。