使用傳統(tǒng)的機(jī)器視覺檢測方法來確定缺陷并非易事,例如發(fā)現(xiàn)工業(yè)相機(jī)外殼上可能存在的缺陷。深度學(xué)習(xí)技術(shù)為此類缺陷檢測應(yīng)用提供了一種有效的方法。
通常,使用傳統(tǒng)的機(jī)器視覺檢測方法來確定缺陷并不是一件容易的事,例如發(fā)現(xiàn)工業(yè)相機(jī)外殼上可能存在的缺陷。然而,深度學(xué)習(xí)技術(shù)卻為此類缺陷檢測應(yīng)用提供了一種有效的方法。
為了測試這一點(diǎn),F(xiàn)LIRSystems公司的工程師們使用頗具成效益的組件建立了一套演示裝置,用于測試該系統(tǒng)的可行性和有效性。
該演示包括檢查相機(jī)的外殼是否有劃痕、油漆是否均勻以及是否存在印刷缺陷。為了避免上述缺陷,工業(yè)相機(jī)制造商必須檢查相機(jī)外殼,以確保產(chǎn)品外觀完美。
很難對傳統(tǒng)機(jī)器視覺系統(tǒng)進(jìn)行編程以識別一定范圍的潛在缺陷,并且也很難確定哪些潛在的缺陷是可以接受的,哪些潛在的缺陷是不能接受的。即便一個(gè)小缺陷可以接受,兩個(gè)小缺陷還可以接受嗎?一個(gè)大缺陷和一個(gè)小缺陷呢?這種需要主觀判斷的檢測應(yīng)用,正是
深度學(xué)習(xí)技術(shù)可以有效部署的地方。
圖1:為了對系統(tǒng)進(jìn)行測試,F(xiàn)LIR的工程師使用了一臺工業(yè)相機(jī)、一個(gè)AAEON單板計(jì)算機(jī)和IntelMovidius的神經(jīng)計(jì)算棒。
為了測試如何應(yīng)用深度學(xué)習(xí)技術(shù)來解決這個(gè)問題,F(xiàn)LIR的工程師使用了一臺160萬像素的BlackflySUSB3工業(yè)相機(jī)以及一臺AAEONUpSquared單板計(jì)算機(jī),單板機(jī)配備Celeron處理器和4GB內(nèi)存,采用Ubuntu16.04操作系統(tǒng);此外還配備了IntelMovidius的神經(jīng)計(jì)算棒(NCS)(見圖1)。據(jù)Intel報(bào)道,神經(jīng)計(jì)算棒于2017年發(fā)布,是基于USB的“深度學(xué)習(xí)推理工具和獨(dú)立的人工智能加速器,為廣泛的邊緣主機(jī)設(shè)備提供專用深度神經(jīng)網(wǎng)絡(luò)處理功能”。
神經(jīng)計(jì)算棒采用英特爾MovidiusMyriad2視覺處理單元(VPU)。這是一個(gè)片上系統(tǒng)(SoC),配備兩個(gè)傳統(tǒng)的32位RISC處理器內(nèi)核和12個(gè)獨(dú)特的SHAVE矢量處理內(nèi)核。這些矢量處理內(nèi)核可用于加速深度神經(jīng)網(wǎng)絡(luò)使用的高分支邏輯。流行的深度學(xué)習(xí)框架(包括Caffe、TensorFlow、Torch和Theano)可用于為神經(jīng)計(jì)算棒構(gòu)建和訓(xùn)練神經(jīng)網(wǎng)絡(luò)。
選擇MobileNetV1作為神經(jīng)網(wǎng)絡(luò),因?yàn)樗Y(jié)合了高精度、小尺寸以及優(yōu)化的移動(dòng)硬件等優(yōu)勢。FLIR使用TensorFlow框架來構(gòu)建并訓(xùn)練了一個(gè)權(quán)重為0.63的網(wǎng)絡(luò),MobileNet網(wǎng)絡(luò)的最大可能權(quán)重為1。所選的輸入圖像大小為224×224。最終產(chǎn)生了一個(gè)具有大約3.25億Mult-Adds和260萬個(gè)參數(shù)的網(wǎng)絡(luò)。
圖2:IntelMovidiusMyriad2VPU直接集成到新型Firefly相機(jī)中,使得用戶能夠?qū)⒔?jīng)過訓(xùn)練的神經(jīng)網(wǎng)絡(luò)直接部署到相機(jī)上,并在邊緣進(jìn)行推理。
使用了包含61個(gè)已知良好外殼和167個(gè)不良外殼的一組小型數(shù)據(jù)集。通過仔細(xì)設(shè)計(jì)測試環(huán)境來獲得最大程度的圖像一致性,使得圖像之間的唯一變化是缺陷。為了消除不同外殼之間的過渡狀態(tài)的偽結(jié)果,增加了第三個(gè)“等待”狀態(tài)。這是通過在該階段的120幅圖像上訓(xùn)練一個(gè)“等待”事件來實(shí)現(xiàn)的,其中部分相機(jī)外殼在框架外,被遮擋或未對準(zhǔn)。
訓(xùn)練是在臺式PC上進(jìn)行的,并使用NVIDIAGTX1080圖形處理單元(GPU)進(jìn)行加速。網(wǎng)絡(luò)經(jīng)過優(yōu)化,使用Bazel轉(zhuǎn)換為Movidius圖形格式。該工具最初是由Google開發(fā)的,可自動(dòng)構(gòu)建和測試軟件。
當(dāng)分類速度能達(dá)到25fps、并且準(zhǔn)確率達(dá)到97.3%時(shí),就可以宣布成功了。這比每3~4秒檢測10臺相機(jī)(可以通過手動(dòng)檢查實(shí)現(xiàn))要快得多。
FLIR將IntelMovidiusMyriad2VPU直接集成到新型Firefly相機(jī)(見圖2)中,實(shí)現(xiàn)了下一步的深度學(xué)習(xí)。這款相機(jī)已經(jīng)在2018年11月的德國斯圖嘉特VISION展上展出。
FLIR能夠讓用戶將經(jīng)過訓(xùn)練的神經(jīng)網(wǎng)絡(luò)直接部署到相機(jī)上,并能以“與系統(tǒng)相同的速度和精度”,在邊緣進(jìn)行推理;主系統(tǒng)由單獨(dú)的相機(jī)、主機(jī)和神經(jīng)計(jì)算棒構(gòu)成。最初的型號采用單色158萬像素SonyIMX296CMOS圖像傳感器,通過USB3.1Gen1接口提供3.45μm的像素尺寸和高達(dá)60fps的幀率。推理結(jié)果可以通過GPIO輸出,也可以作為GenICam塊數(shù)據(jù)輸出。
對于具有Myriad2VPU和MobileNet特性的機(jī)器視覺應(yīng)用,這臺售價(jià)299美元的相機(jī)可以省去主機(jī)系統(tǒng)。FLIRFirefly相機(jī)的重量僅為20克,體積不到標(biāo)準(zhǔn)“ice-cube”相機(jī)(27mm×27mm×14mm)的一半,能夠大大減小嵌入式視覺系統(tǒng)的尺寸和重量。
FLIRFirefly相機(jī)在成像和進(jìn)行推理時(shí)消耗的功率為1.5W。對于需要進(jìn)一步處理或結(jié)合推理與傳統(tǒng)計(jì)算機(jī)視覺技術(shù)的更復(fù)雜的任務(wù),F(xiàn)irefly相機(jī)仍然不需單獨(dú)的神經(jīng)計(jì)算棒。
FLIR表示,F(xiàn)irefly相機(jī)允許用戶輕松開始深度學(xué)習(xí)推理。由于使用熟悉的GenICam和USB3協(xié)議,用戶可以將其插入現(xiàn)有的應(yīng)用中,并將其作為一個(gè)標(biāo)準(zhǔn)的機(jī)器視覺相機(jī)使用。推理生成的元數(shù)據(jù),如對象分類或位置數(shù)據(jù),可以作為GPIO信號或GenICam塊數(shù)據(jù)輸出。