張銀勝,單慧琳,何秉坤,郭子民
(1.無(wú)錫學(xué)院 電子信息工程學(xué)院,江蘇 無(wú)錫 214105;2.南京信息工程大學(xué) 電子與信息工程學(xué)院,江蘇 南京 210044)
機(jī)器學(xué)習(xí)作為人工智能等專業(yè)的必修課,也可作為電子信息類專業(yè)的選修課,教學(xué)目標(biāo)是使學(xué)生理解機(jī)器學(xué)習(xí)的基本問(wèn)題和算法,掌握相關(guān)實(shí)踐方法,為學(xué)生今后從事相關(guān)領(lǐng)域的研究工作奠定堅(jiān)實(shí)的基礎(chǔ)。該課程的實(shí)驗(yàn)教學(xué)側(cè)重于電子信息與人工智能相結(jié)合,內(nèi)容設(shè)計(jì)一般以示例入手,逐步推進(jìn),以體現(xiàn)算法思想與基本原理。其中,目標(biāo)分揀是實(shí)驗(yàn)項(xiàng)目的重點(diǎn),傳統(tǒng)實(shí)驗(yàn)教學(xué)通常在虛擬仿真環(huán)境下完成,利用計(jì)算機(jī)技術(shù)模擬目標(biāo)進(jìn)行分揀,雖然仿真實(shí)驗(yàn)存在效率高、可重復(fù)性強(qiáng)、成本低等優(yōu)點(diǎn),但直觀性差、模型準(zhǔn)確性低,存在數(shù)據(jù)缺乏和驗(yàn)證不確定性等問(wèn)題。因此十分迫切需要設(shè)計(jì)一種目標(biāo)分揀實(shí)驗(yàn)系統(tǒng)。
特征提取是目標(biāo)分揀的關(guān)鍵技術(shù),卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network,CNN)可自動(dòng)提取圖像特征,模型提取的特征隨著網(wǎng)絡(luò)深度增加越來(lái)越抽象,識(shí)別能力更強(qiáng)。Krizhevsky 等[1]提出AlexNet,在ImageNet 數(shù)據(jù)集上達(dá)到15.3%的top5 錯(cuò)誤率,遠(yuǎn)超其他傳統(tǒng)特征提取方式。2015 年,GoogleNet[2]、VGG[3]、ResNet[4]和DenseNet[5]相繼被提出。Wang 等[6]使用ResNet 網(wǎng)絡(luò)作為卷積層,提出自動(dòng)檢測(cè)系統(tǒng),有效解決了區(qū)域誤檢問(wèn)題。Vo 等[7]修改原始ResNet 模型,在全局平均池化層后添加兩個(gè)全連接層,能快速實(shí)現(xiàn)分類模型的穩(wěn)定和泛化。董子源等[8]提出一種注意力機(jī)制模型,通過(guò)全局、局部特征提取與特征融合機(jī)制等手段建立圖像分類模型GCNet,以獲得更完善、有效的特征信息,但實(shí)驗(yàn)過(guò)程較復(fù)雜。Song 等[9]提出基于Inceptionv4[10]和ResNet 的自動(dòng)分類網(wǎng)絡(luò)DSCR,解決了由于使用縮減模塊而導(dǎo)致模型過(guò)于敏感的問(wèn)題,但分類效率較低。YOLOv3 算法[11]在犧牲少量精度的前提下,取得了較高的檢測(cè)速度。張靜等[12]通過(guò)減少YOLOv3 特征提取網(wǎng)絡(luò)中卷積層的層數(shù),以提升模型精度和速度,但對(duì)類間差距不明顯的目標(biāo)存在誤檢現(xiàn)象。
目前,深度學(xué)習(xí)逐步應(yīng)用于課程實(shí)驗(yàn)教學(xué)中。張飛等[13]開(kāi)發(fā)了機(jī)器人抓取實(shí)驗(yàn)教學(xué)系統(tǒng)。邱益等[14]開(kāi)發(fā)了平面無(wú)序列抓取實(shí)驗(yàn)系統(tǒng)。孫友昭等[15]開(kāi)發(fā)了自動(dòng)化控制仿真實(shí)踐教學(xué)平臺(tái),取得了一定的實(shí)踐教學(xué)成效。然而,上述實(shí)驗(yàn)教學(xué)系統(tǒng)的功能集中在實(shí)驗(yàn)操作本身,技術(shù)較陳舊,在檢測(cè)速度、精度上落后于新技術(shù)。
為此,本文提出一種基于深度學(xué)習(xí)的目標(biāo)分揀教學(xué)實(shí)驗(yàn)系統(tǒng),聚焦目標(biāo)源頭進(jìn)行分類和控制操作,使學(xué)生既能通過(guò)算法優(yōu)化、設(shè)計(jì)和操作驗(yàn)證目標(biāo)檢測(cè)算法,還能通過(guò)實(shí)驗(yàn)數(shù)據(jù)分析目標(biāo)分揀算法的結(jié)果。
在虛擬仿真教學(xué)中,目標(biāo)分揀存在實(shí)驗(yàn)過(guò)程復(fù)雜、成本高等問(wèn)題。為了解決該問(wèn)題,本文教學(xué)實(shí)驗(yàn)系統(tǒng)圍繞目標(biāo)識(shí)別分類的算法實(shí)現(xiàn)、分揀操作等教學(xué)要求,簡(jiǎn)化硬件設(shè)計(jì),聚焦目標(biāo)采集、識(shí)別、分類、分揀操作等主要功能。其中,目標(biāo)分揀實(shí)驗(yàn)的教學(xué)要求是學(xué)習(xí)并掌握目標(biāo)檢測(cè)與分揀的基本原理,通過(guò)軟、硬件的綜合設(shè)計(jì),實(shí)現(xiàn)目標(biāo)檢測(cè)與分揀,可選擇元器件、水果等目標(biāo)進(jìn)行實(shí)驗(yàn),學(xué)生可通過(guò)改進(jìn)檢測(cè)算法提升目標(biāo)檢測(cè)的速度和精度。系統(tǒng)總體結(jié)構(gòu)如圖1所示。
Fig.1 Overall system structure圖1 系統(tǒng)總體結(jié)構(gòu)
由圖1 可見(jiàn),系統(tǒng)主要包括主控模塊、攝像頭、機(jī)械臂、分揀模塊等。主控部分由Jetson Nano 和STM32 芯片組成,二者間采用串口進(jìn)行通信。首先由攝像頭將拍攝到的目標(biāo)圖片傳輸至Jetson Nano;然后由Jetson Nano 根據(jù)目標(biāo)檢測(cè)算法識(shí)別、分類目標(biāo),同時(shí)STM32 對(duì)目標(biāo)當(dāng)前位置進(jìn)行三維坐標(biāo)轉(zhuǎn)換,控制機(jī)械臂進(jìn)行抓取,通過(guò)分揀模塊實(shí)現(xiàn)自動(dòng)分揀。分揀模塊主要由STM32芯片、42步進(jìn)電機(jī)、6個(gè)舵機(jī)及7 個(gè)光電傳感器組成。其中,STM32 負(fù)責(zé)控制42步進(jìn)電機(jī)帶動(dòng)傳送帶運(yùn)送物料;光電傳感器起開(kāi)關(guān)作用,當(dāng)物料落至傳送帶時(shí)光電傳感器檢測(cè)到物料,并反饋給STM32,隨后STM32 驅(qū)動(dòng)步進(jìn)電機(jī)轉(zhuǎn)動(dòng);舵機(jī)主要完成分揀擋板的旋轉(zhuǎn)運(yùn)動(dòng),驅(qū)動(dòng)擋板與傳送帶形成45~60°夾角,使傳送過(guò)來(lái)的物料落至分揀槽,分揀槽內(nèi)置的光電傳感器發(fā)出分揀完成信號(hào),再由STM32 控制各部分電機(jī)完成復(fù)原操作。
YOLOv3 網(wǎng)絡(luò)結(jié)構(gòu)如圖2 所示,整個(gè)框架分為主干網(wǎng)絡(luò)(Darknet-53)、特征層融合和分類檢測(cè)3個(gè)部分[16-18]。
Fig.2 YOLOv3 network structure圖2 YOLOv3網(wǎng)絡(luò)結(jié)構(gòu)
由于YOLOv2無(wú)法處理大尺度與小尺度物品數(shù)據(jù)的圖片,YOLOv3 采用3 個(gè)不同大小的網(wǎng)格劃分原始圖像,通過(guò)金字塔網(wǎng)絡(luò)解決該問(wèn)題。預(yù)測(cè)大物體時(shí)使用13×13 的網(wǎng)格(具有最大感受野),預(yù)測(cè)中等物體時(shí)使用26×26 的網(wǎng)格(中等感受野),預(yù)測(cè)小物體時(shí)使用52×52 的網(wǎng)格(較小感受野)。
YOLOv3 的損失函數(shù)是在YOLOv2 的基礎(chǔ)上改進(jìn)所得,將分類損失替換為二值交叉熵?fù)p失,損失函數(shù)由目標(biāo)置信度損失、目標(biāo)類別損失和目標(biāo)定位偏移量損失相加所得,具體計(jì)算公式如式(1)所示。
式中:λ1、λ2、λ3為置信度誤差、類別誤差與偏移量誤差的權(quán)重,分別表示對(duì)應(yīng)誤差在損失函數(shù)中所占權(quán)重;Lconf(o,c)為目標(biāo)置信度損失;Lclɑ(O,C)為目標(biāo)類別損失;Lloc(l,g)為目標(biāo)定位偏移量損失。
目標(biāo)置信度為檢測(cè)目標(biāo)矩形框內(nèi),存在被測(cè)目標(biāo)的概率,目標(biāo)置信度損失采用二值交叉熵?fù)p失,具體計(jì)算公式如式(2)所示。其中,通過(guò)Oi∈(0,1)表示檢測(cè)目標(biāo)是否在預(yù)測(cè)目標(biāo)邊界框i內(nèi),0 代表不存在,1 代表存在。預(yù)測(cè)值采用Sigmoid 函數(shù)計(jì)算,代表預(yù)測(cè)目標(biāo)邊界框i內(nèi)真實(shí)存在目標(biāo)的Sigmoid 概率,如式(3)所示。
式中:ci表示預(yù)測(cè)值。
2.2.1 特征提取網(wǎng)絡(luò)
為了解決Darknet-53 網(wǎng)絡(luò)在前向特征提取時(shí),參數(shù)量和計(jì)算量較大的問(wèn)題[19-20],本文采用輕量級(jí)網(wǎng)絡(luò)Mobile-NetV2 進(jìn)行前向推理。MobileNetV2 的網(wǎng)絡(luò)結(jié)構(gòu)如圖3所示。
Fig.3 Network architecture of MobileNetV2圖3 MobileNetV2的網(wǎng)絡(luò)結(jié)構(gòu)
MobileNetV2 模型雖然具有較高的分類效率,但在僅使用低維度提取特征時(shí),提取的目標(biāo)特征有限。為此,在深度可分離卷積前使用1×1 的網(wǎng)絡(luò)結(jié)構(gòu),將高維度特征值映射在低維度空間內(nèi),在計(jì)算深度可分離卷積后,再利用擴(kuò)展連接層將計(jì)算的低維度信息傳入下一層卷積網(wǎng)絡(luò),以減少通道數(shù)、計(jì)算量和運(yùn)算時(shí)間。
實(shí)驗(yàn)表明,在連接過(guò)程中采用擴(kuò)展6 倍的分離卷積網(wǎng)絡(luò)能較好的滿足運(yùn)算需求,同時(shí)該模型采用1×1 的卷積核進(jìn)行維度轉(zhuǎn)換過(guò)程。考慮到原有激活函數(shù)ReLU 在反向輸入情況下不會(huì)激活神經(jīng)元,在大梯度運(yùn)算時(shí)會(huì)導(dǎo)致?tīng)顟B(tài)無(wú)法激活,造成目標(biāo)物體進(jìn)入網(wǎng)絡(luò)時(shí)喪失目標(biāo)信息或信息被破壞的問(wèn)題。因此,在升高維度時(shí)將激活函數(shù)ReLU 替換為線性激活函數(shù),以確保在降維過(guò)程中最大限度地保留目標(biāo)信息。
在主干網(wǎng)絡(luò)內(nèi)部,在信息處理時(shí),Darknet-53 使用標(biāo)準(zhǔn)卷積融合相鄰的兩層特征層。然而,當(dāng)面對(duì)混在一起的物品時(shí)檢測(cè)效果較差,并且特征金字塔結(jié)構(gòu)(Feature Pyramid Networks,F(xiàn)PN)過(guò)深會(huì)增加目標(biāo)檢測(cè)的計(jì)算量。為此,本文系統(tǒng)采用分組卷積和逐點(diǎn)卷積替換標(biāo)準(zhǔn)卷積,在此結(jié)構(gòu)下相同輸入模型的卷積個(gè)數(shù)僅為Darknet-53 網(wǎng)絡(luò)的1/3,以此提升模型檢測(cè)速度和精度。
綜上所述,MobileNetV2 網(wǎng)絡(luò)采用深度可分離卷積操作大幅減少了網(wǎng)絡(luò)的運(yùn)算量和參數(shù)量,既降低了網(wǎng)絡(luò)復(fù)雜度,又提升了網(wǎng)絡(luò)推理速度與檢測(cè)模塊的運(yùn)行速度。
2.2.2 特征尺度
YOLOv3 網(wǎng)絡(luò)直接使用1×1 多維度卷積核,替換傳統(tǒng)YOLOv2網(wǎng)絡(luò)使用的3×3與5×5的多維度,既能達(dá)到傳統(tǒng)網(wǎng)絡(luò)卷積核的性能,還能節(jié)約90%的計(jì)算效能,減少模型所需參數(shù)和計(jì)算維度。同時(shí),3×3 與5×5 多維度卷積核采用傳統(tǒng)特征圖進(jìn)行線性有機(jī)結(jié)合,實(shí)現(xiàn)跨通道的信息交互與資源整合,1×1 的多維度卷積核僅需一個(gè)特征圖就能有效表示在多維度通道間的交互。
在各不同物體分類的任務(wù)和回歸壓縮為0 到1 的置信度方面,1×1 卷積核有效替代了作為分類器的完全連接層(Fully Connected Layers),在視覺(jué)任務(wù)方面降低了大量計(jì)算量,既節(jié)約了實(shí)際部署能源消耗,又降低了算力。
2.2.3 損失函數(shù)
YOLOv3 中主干網(wǎng)絡(luò)Darknet-53 會(huì)輸出3 種不同尺度的特征圖,分別對(duì)應(yīng)不同尺度的Loss 函數(shù),需要將最終的計(jì)算損失結(jié)果求和后再進(jìn)行反向傳播。
在判斷物體的過(guò)程中會(huì)出現(xiàn)正例、負(fù)例和忽視3 種情況,因此在輸入特征圖中應(yīng)統(tǒng)計(jì)邊界框數(shù)量,針對(duì)特征圖中識(shí)別出的每一個(gè)對(duì)象,選擇交并比(Intersection over Union,IoU)最大值為正例,邊界框如果大于0.5 則忽視,剩余的為負(fù)例。
在實(shí)際計(jì)算過(guò)程中會(huì)出現(xiàn)背景錯(cuò)誤檢測(cè)的問(wèn)題,對(duì)于訓(xùn)練圖片的真值(Ground Truth),若中心點(diǎn)在某個(gè)區(qū)域內(nèi),同時(shí)另一個(gè)物體的中心點(diǎn)恰好也在此處,則將該區(qū)域內(nèi)所有框體與Ground Truth 值進(jìn)行匹配,選擇最優(yōu)值作為預(yù)測(cè)框體進(jìn)行計(jì)算,其余框體繼續(xù)按照流程進(jìn)行剔除。
此外,本文增加Focal Loss 函數(shù)修正模型,根據(jù)樣本分辨的難易程度給樣本損失添加權(quán)重。在實(shí)際應(yīng)用中,置信度高的負(fù)樣本在總體樣本中占比較大,剔除或減弱該部分損失能明顯提升損失函數(shù)的效率,因此在交叉熵前加入權(quán)重因子形成新的損失函數(shù),如式(4)所示。
式中:log 為交叉熵?fù)p失函數(shù);γ為權(quán)重的參數(shù),當(dāng)γ>1時(shí),能取得更好的效果(默認(rèn)值為2);Pt為目標(biāo)物體的置信度,為容易區(qū)分的樣本(置信度接近1 或接近0)添加較小的權(quán)重α1,為難分辨的樣本(置信度在0.5 附近)添加較大權(quán)重α2,如式(5)所示。
綜上,損失函數(shù)的計(jì)算取決于樣本的區(qū)分難度,采用Focal Loss 在處理類不均衡問(wèn)題時(shí),效果優(yōu)于傳統(tǒng)YOLOv3算法中使用的損失函數(shù)。
2.2.4 利用K-means++實(shí)現(xiàn)錨點(diǎn)框聚類
為了高效預(yù)測(cè)不同尺度與寬高比的物體邊界框,一般采用Anchor(錨點(diǎn)框)機(jī)制。合適的Anchor 值既能快速準(zhǔn)確定位邊界框,還能減少計(jì)算量和損失值,提升目標(biāo)檢測(cè)精度與速度。
傳統(tǒng)YOLOv3 錨框利用K-means 算法進(jìn)行聚類所得,由于K-means 隨機(jī)生成的聚類初始點(diǎn)對(duì)聚類結(jié)果具有較大影響,極易造成每次聚類結(jié)果產(chǎn)生嚴(yán)重偏差。雖然,YOLOv3 能在不同尺度下實(shí)現(xiàn)檢測(cè),但聚類結(jié)果在尺寸上沒(méi)有明顯差別,難以根據(jù)算法要求對(duì)錨框進(jìn)行排序,一旦直接將聚類結(jié)果應(yīng)用到各尺度的特征圖檢測(cè)中,將降低檢測(cè)精度。
為此,本文系統(tǒng)首先分析目標(biāo)圖像的形狀及特點(diǎn),手動(dòng)選擇K-Means++的12個(gè)初始聚類框,以有效降低原始算法在初始聚類點(diǎn)時(shí)的聚類偏差,得到尺寸更好的先驗(yàn)框,并將其匹配到對(duì)應(yīng)的特征圖上,達(dá)到提升系統(tǒng)檢測(cè)召回率、準(zhǔn)確率的目的。
目標(biāo)抓取控制由機(jī)械臂實(shí)現(xiàn),通過(guò)逆運(yùn)動(dòng)學(xué)求解和角度轉(zhuǎn)化,獲得目標(biāo)點(diǎn)坐標(biāo)的對(duì)應(yīng)角度數(shù)值和轉(zhuǎn)化后的舵機(jī)脈寬數(shù)據(jù),控制舵機(jī)轉(zhuǎn)動(dòng)。通過(guò)移動(dòng)、夾取、抬升操作抓取目標(biāo)后進(jìn)行轉(zhuǎn)動(dòng)、抬升、放置操作,一般抓取過(guò)程包括靠近目標(biāo)、對(duì)齊目標(biāo)、夾取目標(biāo)、機(jī)體抬升、回歸中位解5 個(gè)步驟。
機(jī)械臂控制系統(tǒng)由控制芯片、六自由度機(jī)械臂機(jī)械結(jié)構(gòu)、姿態(tài)控制模塊、舵機(jī)和電源模塊等組成。其中,控制芯片為STM32,通過(guò)串行外設(shè)接口(Serial Peripheral Interface,SPI)接受來(lái)自Jetson Nano 的目標(biāo)檢測(cè)信號(hào),以控制機(jī)械臂姿態(tài),進(jìn)而實(shí)現(xiàn)目標(biāo)抓??;六自由度機(jī)械臂包含6 個(gè)舵機(jī),每個(gè)舵機(jī)均具有堵轉(zhuǎn)保護(hù)和過(guò)溫保護(hù)功能;姿態(tài)控制模塊實(shí)現(xiàn)機(jī)械臂各關(guān)節(jié)的撓度控制。
電源接通后,通過(guò)編程接口將控制程序燒錄至控制芯片內(nèi),STM32 輸出脈沖寬度調(diào)制(Pulse Width Modulation,PWM)信號(hào)。通過(guò)修改輸入信號(hào)的脈寬可轉(zhuǎn)換舵機(jī)角度:①當(dāng)脈沖寬度為1.5 ms 時(shí)進(jìn)行舵機(jī)位置歸一化;②脈寬每增加0.5 ms,舵機(jī)輸出軸角度順時(shí)針旋轉(zhuǎn)45°;③脈沖寬度每減小0.5 ms,舵機(jī)輸出軸的角度逆時(shí)針旋轉(zhuǎn)45°。
本文提出的目標(biāo)分揀實(shí)驗(yàn)系統(tǒng)應(yīng)用場(chǎng)景廣泛[21-22],在機(jī)器學(xué)習(xí)及創(chuàng)新實(shí)踐等課程中,學(xué)生可通過(guò)系統(tǒng)驗(yàn)證與優(yōu)化檢測(cè)算法、完成綜合設(shè)計(jì)和目標(biāo)分揀操作等內(nèi)容。本文以元器件分揀為例,YOLOv3 原算法和改進(jìn)YOLOv3 算法的元器件檢測(cè)結(jié)果如圖4、圖5所示。
Fig.4 Component detection results based on original YOLOv3 algorithm圖4 基于YOLOv3原算法的元器件檢測(cè)結(jié)果
Fig.5 Component detection results based on improved YOLOv3 algorithm圖5 基于改進(jìn)YOLOv3算法的元器件檢測(cè)結(jié)果
本文系統(tǒng)采用六自由度機(jī)械臂結(jié)合視覺(jué)識(shí)別算法進(jìn)行操作,開(kāi)發(fā)的分揀樣機(jī)和分揀過(guò)程如圖6、圖7 所示。同時(shí),采用原算法和改進(jìn)算法進(jìn)行比較實(shí)驗(yàn),實(shí)驗(yàn)結(jié)果如表1所示。由此可見(jiàn),系統(tǒng)能快速識(shí)別、分揀目標(biāo),改進(jìn)后的算法相較于原算法更快速、精確。
Table 1 Evaluation indicator表1 評(píng)價(jià)指標(biāo)
Fig.6 Target sorting prototype圖6 目標(biāo)分揀樣機(jī)
Fig.7 Screenshot of target sorting process圖7 目標(biāo)分揀過(guò)程截圖
由表1 可知,輕量級(jí)主干網(wǎng)絡(luò)能提升算法的識(shí)別精度與檢測(cè)速度,改進(jìn)后算法的mAP_0.5(損失函數(shù)IoU=0.5 時(shí)對(duì)應(yīng)的平均準(zhǔn)確率)從70.2%提升至93.6%。在檢測(cè)速度方面,處理一幀圖片的速度減少了9.35 ms,權(quán)重模型大小減少11.3 MB。
圖8 為改進(jìn)前后的Loss 值變化曲線,當(dāng)樣本數(shù)量為400 時(shí),改進(jìn)前的初始Loss 值相較于改進(jìn)后的初始Loss 值更高,經(jīng)過(guò)200 次迭代后一直維持在0.25 以下,證實(shí)了改進(jìn)后算法能提升檢測(cè)目標(biāo)的速度與準(zhǔn)確度。
Fig.8 Loss curve of detection results圖8 檢測(cè)結(jié)果的loss曲線
同時(shí),在機(jī)器學(xué)習(xí)、創(chuàng)新實(shí)踐等課程開(kāi)設(shè)了目標(biāo)分揀實(shí)驗(yàn)項(xiàng)目。其中,機(jī)器學(xué)習(xí)課程重點(diǎn)考查分類算法,實(shí)驗(yàn)內(nèi)容是目標(biāo)檢測(cè)算法的驗(yàn)證與完善,分揀操作結(jié)果證明了檢測(cè)算法精度的重要性;創(chuàng)新實(shí)踐課程中目標(biāo)分揀作為設(shè)計(jì)選題之一,實(shí)踐內(nèi)容包括目標(biāo)數(shù)據(jù)集的采集與預(yù)處理、網(wǎng)絡(luò)模型搭建與優(yōu)化、控制系統(tǒng)設(shè)計(jì)編程、機(jī)械臂調(diào)試操作、分揀模塊設(shè)計(jì)等,學(xué)生在樣機(jī)上能分類元器件、水果、垃圾等。2022 年無(wú)錫學(xué)院電子信息工程學(xué)院通信工程專業(yè)的課程教學(xué)質(zhì)量報(bào)告顯示,該系統(tǒng)的教學(xué)效果良好,相較于傳統(tǒng)實(shí)驗(yàn)方案課程目標(biāo)達(dá)成度得到了明顯提升,如表2所示。
Table 2 Achievement situation of curriculum objectives表2 課程目標(biāo)達(dá)成情況
為了解決傳統(tǒng)目標(biāo)分揀實(shí)驗(yàn)的虛擬仿真教學(xué)實(shí)驗(yàn)系統(tǒng),因依靠人工提取的圖像特征進(jìn)行分類,導(dǎo)致過(guò)程復(fù)雜、成本高、分類效率低、無(wú)法滿足機(jī)器學(xué)習(xí)等課程實(shí)驗(yàn)需求的問(wèn)題。本文通過(guò)改進(jìn)YOLOv3 算法,提出一種基于深度學(xué)習(xí)的目標(biāo)分揀教學(xué)實(shí)驗(yàn)系統(tǒng)。具體為:①利用Mobile-NetV2 替換傳統(tǒng)算法的特征提取網(wǎng)絡(luò),以減少特征尺度;②將YOLOv3 的損失函數(shù)替換為調(diào)整后的Focal loss;③將錨點(diǎn)框聚類算法替換為K-Means++。
本文以元器件分揀為例,在物理樣機(jī)上的比較實(shí)驗(yàn)結(jié)果表明,所提模型能快速識(shí)別與分揀目標(biāo)、控制機(jī)械臂進(jìn)行分揀操作,完成了目標(biāo)分揀實(shí)驗(yàn)的教學(xué)要求。雖然,該系統(tǒng)為人工智能相關(guān)專業(yè)的教學(xué)、科研和課外學(xué)術(shù)競(jìng)賽提供了一套完整的實(shí)驗(yàn)平臺(tái),具有良好的實(shí)用價(jià)值,但分類物品的種類有待提高,目標(biāo)檢測(cè)精度仍具有進(jìn)一步提升的空間。