摘要:文章研究了一種基于機(jī)器人雙目視覺的機(jī)柜自動識別方法。文章詳細(xì)介紹了雙目立體視覺的基本原理,包括雙目立體視覺的成像原理和目標(biāo)識別的流程,重點(diǎn)研究了基于輕量化MobileNet的機(jī)柜識別方法并結(jié)合支持向量機(jī)對目標(biāo)進(jìn)行分類。實(shí)驗(yàn)結(jié)果表明,該方法有效地解決了背景與目標(biāo)混疊的問題,能夠準(zhǔn)確地識別機(jī)柜點(diǎn)云。該方法為智能機(jī)器人在復(fù)雜環(huán)境中的應(yīng)用提供了新的技術(shù)支持和理論依據(jù)。
關(guān)鍵詞:雙目視覺;目標(biāo)識別;MobileNet模型;支持向量機(jī)
中圖分類號:TH122
文獻(xiàn)標(biāo)志碼:A
0 引言
在現(xiàn)代工業(yè)自動化和智能制造領(lǐng)域,機(jī)柜作為計(jì)算設(shè)備和通信設(shè)備的重要載體,其自動化管理顯得尤為重要。隨著機(jī)器人技術(shù)的飛速發(fā)展,如何利用機(jī)器人高效、精準(zhǔn)地識別機(jī)柜也成了一個亟待解決的問題。因此,文章研究的基于機(jī)器人雙目立體視覺的機(jī)柜自動識別方法具有重要的理論研究和實(shí)際應(yīng)用意義。
目前,雙目立體視覺作為一種模擬人類雙眼觀察物體的技術(shù),已經(jīng)在機(jī)器人領(lǐng)域得到了廣泛應(yīng)用[1-2]。該技術(shù)通過采集左右兩幅視圖并計(jì)算其視差來重建場景的三維信息,為目標(biāo)識別提供豐富的深度信息。為了提高機(jī)柜識別的準(zhǔn)確性和效率,該研究引入了MobileNet[3-4]深度學(xué)習(xí)模型,該模型以其較小的模型參數(shù)和較快的計(jì)算速度,成了嵌入式設(shè)備和移動設(shè)備的理想選擇。
文章首先研究了面向機(jī)器人的雙目立體視覺方法的基本原理,詳細(xì)探討了雙目立體視覺的原理以及目標(biāo)識別的流程;其次,聚焦于基于輕量化MobileNet和支持向量機(jī)(Support Vector Machine, SVM)[5-6]的機(jī)柜識別方法研究;最后,構(gòu)建了系統(tǒng)并進(jìn)行了實(shí)驗(yàn)測試來驗(yàn)證該方法的有效性和可行性。希望該成果能夠推動智能制造和工業(yè)自動化的發(fā)展并為相關(guān)領(lǐng)域的研究提供有益的參考。
1 面向機(jī)器人的雙目立體視覺方法
1.1 雙目立體視覺
雙目立體視覺系統(tǒng)采用2個相機(jī)來模擬人類雙眼的工作,其基本原理如圖1所示。左相機(jī)和右相機(jī)分別從不同的視角拍攝同一場景的圖像,然后通過計(jì)算左右相機(jī)對應(yīng)像素點(diǎn)之間的視差(即2個圖像中同一物體點(diǎn)在水平位置上的偏移量)可以獲得場景中各點(diǎn)的深度信息。這種視差計(jì)算依賴于精確的相機(jī)校準(zhǔn)和圖像匹配算法,常采用三角測量方法將視差轉(zhuǎn)換為實(shí)際的三維坐標(biāo),從而實(shí)現(xiàn)對場景深度的重建,為后續(xù)的目標(biāo)識別提供基礎(chǔ)數(shù)據(jù)。
1.2 目標(biāo)識別總體方法
為了實(shí)現(xiàn)基于雙目立體視覺的目標(biāo)識別方法,該研究提出了一種如圖2所示的總體框架。
該系統(tǒng)通過左相機(jī)和右相機(jī)同時采集同一場景的圖像,為了確保雙目圖像的精確匹配需要進(jìn)行相機(jī)內(nèi)參數(shù)和外參的校準(zhǔn)。在完成相機(jī)校準(zhǔn)后,該方法須要進(jìn)行圖像預(yù)處理以提高圖像質(zhì)量和對比度,為后續(xù)的立體匹配打下良好的基礎(chǔ)。該方法通過立體匹配算法計(jì)算左右圖像之間的視差生成視差圖,再利用三角測量方法生成場景的深度圖。該方法在深度圖的基礎(chǔ)上進(jìn)行特征提取,通過深度學(xué)習(xí)模型如MobileNet進(jìn)行目標(biāo)識別提取特征向量,然后使用預(yù)先訓(xùn)練好的分類器對目標(biāo)進(jìn)行識別,分類器可以是SVM[7]、卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Network, CNN)[8]等,最終輸出目標(biāo)識別的結(jié)果。
2 引入輕量化MobileNet的機(jī)柜識別方法
2.1 深度圖的生成
在基于雙目立體視覺的研究和應(yīng)用中,OpenCV是使用最廣泛的工具之一。該工具可以實(shí)現(xiàn)相機(jī)校準(zhǔn)、圖像預(yù)處理、立體匹配和深度圖生成等一系列操作[9-10]。
在相機(jī)校準(zhǔn)時,該方法利用棋盤格標(biāo)定法通過采集不同角度的棋盤格圖像,使用OpenCV的calibrateCamera函數(shù)進(jìn)行相機(jī)校準(zhǔn),得到精確的相機(jī)參數(shù)。在圖像預(yù)處理過程中,OpenCV同樣提供了豐富的函數(shù)。例如:GaussianBlur函數(shù)可以進(jìn)行圖像去噪處理,equalizeHist函數(shù)能進(jìn)行直方圖均衡化以增強(qiáng)圖像的對比度和細(xì)節(jié)。立體匹配是雙目立體視覺中的關(guān)鍵步驟之一,常用的算法有塊匹配(Block Matching)和半全局匹配(Semi-Global Matching,SGM)。OpenCV提供了StereoBM和StereoSGBM2個立體匹配算法。其中,StereoBM適用于實(shí)時性要求較高但精度要求相對較低的場景,而StereoSGBM則在保證較高匹配精度的同時,也具有較好的計(jì)算效率。通過立體匹配算法得到視差圖后,該方法可以利用視差值通過三角測量方法計(jì)算深度信息。
2.2 基于MobileNet的特征提取
設(shè)點(diǎn)云數(shù)據(jù)為={(xi,yi,zi)}Ni=1,其中(xi,yi,zi)表示點(diǎn)云中第i個點(diǎn)的三維坐標(biāo),N為點(diǎn)云中的點(diǎn)數(shù)。通過攝像機(jī)的投影模型,該方法可以將三維點(diǎn)云數(shù)據(jù)映射到二維圖像平面上得到深度圖={dij},其中dij表示圖像平面上像素(i,j)對應(yīng)的深度值。
MobileNet是一種輕量化的卷積神經(jīng)網(wǎng)絡(luò),能夠有效地提取圖像的特征。該模型的核心是深度可分離卷積(Depthwise Separable Convolution),主要包括深度卷積(Depthwise Convolution)和逐點(diǎn)卷積(Pointwise Convolution)2個關(guān)鍵技術(shù)。
在深度卷積中,模型對每個輸入通道獨(dú)立地進(jìn)行卷積操作。設(shè)輸入特征圖為Fin∈?H×W×C,其中,H為高度,W為寬度,C為通道數(shù),深度卷積的濾波器為Kd∈?k×k×C,其中k為濾波器的大小,則深度卷積輸出特征圖Fd∈?H′×W′×C的計(jì)算方法為:
其中,*表示卷積操作,F(xiàn)d(:,:,c)為輸出特征圖在第c個通道上的特征圖。
在逐點(diǎn)卷積中,使用1×1的卷積核將深度卷積的輸出進(jìn)行通道混合。設(shè)逐點(diǎn)卷積的濾波器為Kp∈?1×1×C×C′,其中,C′為輸出通道數(shù),則逐點(diǎn)卷積輸出特征圖Fp∈?H′×W′×C′為:
通過上述2步操作,MobileNet可以高效地提取輸入深度圖的局部特征,生成高維度的特征向量f∈?D,其中D為特征向量的維度。
2.3 基于SVM分類器的目標(biāo)識別
在完成特征提取后,該方法使用SVM進(jìn)行目標(biāo)識別。設(shè)特征向量fi∈?D對應(yīng)的標(biāo)簽為yi∈{1,-1},則SVM的決策函數(shù)為:
其中,w∈?D為權(quán)重向量,b∈?為偏置向量,sign函數(shù)用于輸出分類結(jié)果,T表示轉(zhuǎn)置運(yùn)算。
3 系統(tǒng)分析與探討
為了對文章方法進(jìn)行測試,該實(shí)驗(yàn)采用了OAK-D-S2型號的機(jī)器視覺套件。該套件共包含3個相機(jī),兩側(cè)的2個相機(jī)為雙目立體視覺相機(jī),中間的為RGB相機(jī)。該實(shí)驗(yàn)采用兩側(cè)的相機(jī)進(jìn)行了雙目立體視覺的實(shí)驗(yàn),采用了RGB相機(jī)拍攝了目標(biāo)的二維圖片。
針對該機(jī)柜,實(shí)驗(yàn)使用OpenCV構(gòu)建了該區(qū)域的三維點(diǎn)云,在MATLAB平臺上實(shí)現(xiàn)基于MobileNet的特征提取和基于SVM的目標(biāo)識別方法。具體而言,實(shí)驗(yàn)首先使用Deep Learning Toolbox中的預(yù)訓(xùn)練MobileNet模型提取特征;特征提取完成后,得到的高維度特征向量被用于訓(xùn)練SVM分類器。實(shí)驗(yàn)使用Statistics and Machine Learning Toolbox來構(gòu)建SVM分類器。實(shí)驗(yàn)首先通過-fitcsvm-函數(shù)訓(xùn)練SVM模型,設(shè)置核函數(shù)參數(shù)為‘rbf’,利用-fitPosterior-函數(shù)進(jìn)行后處理以提高分類器的概率輸出性能;通過-predict-函數(shù)對測試數(shù)據(jù)進(jìn)行分類,輸出目標(biāo)識別結(jié)果。
從實(shí)驗(yàn)可以看出,基于MobileNet和SVM的目標(biāo)識別方法在復(fù)雜背景下對機(jī)柜具有良好的效果。在初始點(diǎn)云中,由于背景與機(jī)柜混疊在一起,難以明顯區(qū)分目標(biāo)。然而,在本方法處理之后,位于圖像中間區(qū)域的機(jī)柜的點(diǎn)云得到了清晰而準(zhǔn)確的識別,背景則被去除。總體而言,該結(jié)果顯示出所提方法的有效性。
分析表明,這種改進(jìn)的原因之一為MobileNet的深度可分離卷積結(jié)構(gòu)。通過深度卷積,MobileNet能夠捕捉到圖像中不同尺度和空間位置的特征,而逐點(diǎn)卷積則進(jìn)一步將這些特征進(jìn)行有效融合,從而增強(qiáng)了模型對復(fù)雜場景中細(xì)微差異的識別能力。此外,SVM分類器在特征空間中構(gòu)建了一個最優(yōu)的分類超平面,通過合理的核函數(shù)選擇和參數(shù)優(yōu)化,進(jìn)一步提高了對機(jī)柜點(diǎn)云的分類精度。
4 結(jié)語
文章提出并驗(yàn)證了一種基于雙目立體視覺和MobileNet深度學(xué)習(xí)模型的機(jī)柜自動識別方法。首先,雙目立體視覺技術(shù)通過生成深度圖,為三維場景的目標(biāo)識別提供了豐富的信息,然后,該研究通過利用MobileNet和SVM相結(jié)合的方法進(jìn)行了準(zhǔn)確的目標(biāo)識別。實(shí)驗(yàn)結(jié)果顯示,該方法成功區(qū)分了機(jī)柜與背景點(diǎn)云,驗(yàn)證了方法的有效性和實(shí)用性。該研究不僅豐富了雙目立體視覺的應(yīng)用場景,也為機(jī)器人自動化識別技術(shù)的發(fā)展提供了重要參考。未來的工作將進(jìn)一步優(yōu)化算法,提高實(shí)時性和適用性,以滿足更廣泛的工業(yè)應(yīng)用需求。
參考文獻(xiàn)
[1]呂強(qiáng),張海濤,王輝,等.基于雙目視覺技術(shù)的復(fù)雜環(huán)境下機(jī)器人自動導(dǎo)航研究[J].機(jī)械設(shè)計(jì)與制造工程,2023(9):79-84.
[2]郭金升,金耀花.基于雙目視覺的變電站自動化巡檢機(jī)器人目標(biāo)定位方法[J].精密制造與自動化,2023(3):35-37,64.
[3]黃裕凱,王青旺,沈韜,等.基于MobileNet的多尺度感受野特征融合算法[J].激光與光電子學(xué)進(jìn)展,2023(4):280-288.
[4]蘇童.基于改進(jìn)YOLO-MobileNet的近紅外圖像特征駕駛員人臉檢測[J].蘭州工業(yè)學(xué)院學(xué)報,2023(5):90-93,106.
[5]丁世飛,齊丙娟,譚紅艷.支持向量機(jī)理論與算法研究綜述[J].電子科技大學(xué)學(xué)報,2011(1):2-10.
[6]李召桐.支持向量機(jī)發(fā)展歷程及其應(yīng)用[J].信息系統(tǒng)工程,2024(3):124-126.
[7]陳江.基于改進(jìn)支持向量機(jī)的紙張缺陷圖像分類識別方法[J].造紙科學(xué)與技術(shù),2023(5):39-43,78.
[8]毛玉龍.基于不同卷積神經(jīng)網(wǎng)絡(luò)的目標(biāo)檢測算法對比研究[J].測繪標(biāo)準(zhǔn)化,2023(4):39-43.
[9]張瑞鵬,尹燕芳.基于OpenCV的遙操作工程機(jī)器人雙目視覺定位技術(shù)[J].計(jì)算機(jī)測量與控制,2020(12):172-175,180.
[10]王連增.基于VS+OpenCV的雙目視覺定位測距系統(tǒng)[J].現(xiàn)代計(jì)算機(jī),2020(14):58-62.
(編輯 王永超)
Automatic recognition method for cabinets based on robot binocular vision
QI Qiaoyun, LI Li
(Jinken College of Technology, Nanjing 211156, China)
Abstract:In this paper, a method of automatic cabinet recognition based on robot binocular vision is studied. Firstly, the basic principle of binocular stereo vision is introduced in detail, including the imaging principle of binocular stereo vision and the process of object recognition. Then, we focus on the cabinet recognition method based on the lightweight MobileNet, and combine it with the support vector machine for object classification. The experimental results show that this method effectively solves the problem of background and target aliasing and can accurately identify cabinet point clouds. This method provides a new technical support and theoretical basis for the application of intelligent robot in complex environment.
Key words:binocular vision; target recognition; MobileNet model; support vector machine