熊治國 周恒旭 馮煜升
本文引用格式:熊治國,周恒旭,馮煜升.基于CNN的機(jī)器人環(huán)境點(diǎn)云分類研究[J].自動化與信息工程,2023,44(2):16-21.
XIONG Zhiguo, ZHOU Hengxu,?FENG Yusheng. Research on point cloud classification of robot environment based on CNN[J]. Automation & Information Engineering, 2023,44(2):16-21.
摘要:為解決目前三維點(diǎn)云識別算法存在訓(xùn)練模型計算量較大、算法網(wǎng)絡(luò)結(jié)構(gòu)復(fù)雜的問題,進(jìn)行基于卷積神經(jīng)網(wǎng)絡(luò)(CNN)的機(jī)器人環(huán)境點(diǎn)云分類研究。首先,在機(jī)器人仿真環(huán)境中搭建家庭相關(guān)物品模擬服務(wù)場景,并使用模擬三維激光雷達(dá)生成環(huán)境點(diǎn)云;然后,將環(huán)境點(diǎn)云聚類分割出單個物體的點(diǎn)云簇;接著,利用二維投影法將三維點(diǎn)云數(shù)據(jù)轉(zhuǎn)化為二維圖像信息;最后,利用數(shù)據(jù)增強(qiáng)技術(shù)擴(kuò)展數(shù)據(jù)集,并結(jié)合改進(jìn)的LeNet-5卷積神經(jīng)網(wǎng)絡(luò)訓(xùn)練識別模型,得到相較于經(jīng)典的LeNet-5模型更高的精度。實(shí)驗(yàn)結(jié)果表明,將環(huán)境點(diǎn)云先分割成單個物體,再進(jìn)行分類識別是可行的,并具有一定的應(yīng)用價值。
關(guān)鍵詞:機(jī)器人環(huán)境理解;激光點(diǎn)云;數(shù)據(jù)增強(qiáng);卷積神經(jīng)網(wǎng)絡(luò);物體分類
中圖分類號:TP242??????????????文獻(xiàn)標(biāo)志碼:A??????????文章編號:1674-2605(2023)02-0004-06
DOI:10.3969/j.issn.1674-2605.2023.02.004
Research on Point Cloud Classification of Robot Environment Based on CNN
XIONG Zhiguo??ZHOU Hengxu??FENG Yusheng
(School of Aviation, Beijing Institute of Technology,?Zhuhai 519000,?China)
Abstract:?To solve the problems of large training model computation and complex algorithm network structure in current 3D point cloud recognition algorithms, a research on point cloud classification in robot environments based on convolutional neural networks (CNN) is conducted. Firstly, build a simulation service scenario for household related items in a robot simulation environment, and use a simulated 3D LiDAR to generate environmental point clouds; Then, the environmental point cloud is clustered and segmented into point cloud clusters of individual objects; Next, the 2D projection method is used to convert the 3D point cloud data into 2D image information; Finally, by utilizing data augmentation technology to expand the dataset and combining it with the improved LeNet-5 convolutional neural network to train the recognition model, higher accuracy was obtained compared to the classic LeNet-5 model. The experimental results indicate that it is feasible to segment the environmental point cloud into a single object before recognition, and it has certain application value.
Keywords: robot environment understanding; laser point cloud; data enhancement; convolutional neural network; object classification
0 引言
復(fù)合機(jī)器人對周圍環(huán)境的理解是實(shí)現(xiàn)智能化的基礎(chǔ),也是實(shí)現(xiàn)其他高級功能的前提條件。智能復(fù)合機(jī)器人需要傳感器加持來實(shí)現(xiàn)具體功能,如PR2機(jī)器人利用二維激光雷達(dá)(light detection and ranging, LiDAR)實(shí)現(xiàn)即時定位與地圖構(gòu)建(simultaneous localization and mapping, SLAM);利用深度攝像頭
實(shí)現(xiàn)物體檢測[1]等。基于LiDAR的機(jī)器人成像系統(tǒng)廣泛應(yīng)用于視覺測量、檢測、分類識別、引導(dǎo)和自動化裝配等領(lǐng)域[2]。在利用LiDAR進(jìn)行機(jī)械臂避障的過程中[3],三維環(huán)境信息經(jīng)地面分割、體素網(wǎng)格濾波、點(diǎn)云語義分割和包圍盒提取后,可得到完整的避障所需信息,同時分割后的點(diǎn)云簇具有分類識別物體的特征信息。
近些年,利用深度學(xué)習(xí)進(jìn)行點(diǎn)云處理和物體識別成為研究熱點(diǎn)[4-6],主要分為基于點(diǎn)云圖的算法和基于鳥瞰圖的算法2大類。其中,基于點(diǎn)云圖的算法結(jié)合卷積神經(jīng)網(wǎng)絡(luò)(convolutional neural network, CNN)提出一種在三維空間中與點(diǎn)云順序無關(guān)的算子[7]。文獻(xiàn)[8]將CNN用于三維體素化后的點(diǎn)云匹配,證明深度學(xué)習(xí)具有較強(qiáng)的點(diǎn)云特征提取能力。文獻(xiàn)[9]利用深度學(xué)習(xí)進(jìn)行3D點(diǎn)云的目標(biāo)檢測,但對遠(yuǎn)距離稀疏點(diǎn)云的檢測效果不佳。文獻(xiàn)[10]利用圖卷積網(wǎng)絡(luò)對點(diǎn)云數(shù)據(jù)進(jìn)行分類,在標(biāo)準(zhǔn)數(shù)據(jù)集上取得良好的效果,但模型較為復(fù)雜,需要大量調(diào)試網(wǎng)絡(luò)參數(shù)。文獻(xiàn)[11]提出一種融合CNN和多重參考系模型(multiple reference frame, MRF)的點(diǎn)云分割方法,操作復(fù)雜?;邙B瞰圖的算法先將點(diǎn)云數(shù)據(jù)轉(zhuǎn)換為鳥瞰圖,再利用RCNN、Fast RCNN、Faster RCNN、YOLO和SSD等算法[12-18]進(jìn)行目標(biāo)檢測。
綜上所述,一方面,使用大型深度學(xué)習(xí)網(wǎng)絡(luò)直接處理點(diǎn)云或點(diǎn)云鳥瞰圖時,對數(shù)據(jù)集和算力的要求較高,部署階段需壓縮模型??紤]到二維圖像的深度學(xué)習(xí)算法更加成熟穩(wěn)定,較小的網(wǎng)絡(luò)結(jié)構(gòu)也能實(shí)現(xiàn)良好的識別效果,且家庭服務(wù)場景中的物體種類有限,故先將單個物體的三維點(diǎn)云簇通過不同角度投影得到多角度圖像,再進(jìn)行深度學(xué)習(xí)構(gòu)建物體分類識別模型是一種可行的策略。相較于輸入完整的點(diǎn)云,點(diǎn)云投影圖像可靈活地進(jìn)行分類處理,通用性強(qiáng)。另一方面,因?yàn)槎S圖像不含景深信息,若僅使用二維圖像需要大量訓(xùn)練才能實(shí)現(xiàn)語義理解。若利用三維雷達(dá)獲取點(diǎn)云數(shù)據(jù),經(jīng)過處理形成單個物體的點(diǎn)云簇[3],可避免從單一視角理解復(fù)雜景深環(huán)境信息的特點(diǎn),解決不同景深下的物體相互遮擋造成的語義理解難題。
本文針對復(fù)合機(jī)器人對家庭服務(wù)場景存在的理解難題,首先,基于前期工作[3]將仿真環(huán)境中家庭服務(wù)場景的點(diǎn)云處理成單個物體的點(diǎn)云簇,并通過投影法將物體的三維圖像轉(zhuǎn)化為二維圖像;然后,利用數(shù)據(jù)增強(qiáng)技術(shù)擴(kuò)充圖像數(shù)據(jù)形成數(shù)據(jù)集;最后,利用數(shù)據(jù)集對卷積神經(jīng)網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練,并通過不斷調(diào)整網(wǎng)絡(luò)參數(shù)來提高準(zhǔn)確率,從而達(dá)到準(zhǔn)確分類識別物體的效果。
1 場景搭建和物體點(diǎn)云獲取
本文通過CoppeliaSim機(jī)器人仿真軟件進(jìn)行智能復(fù)合機(jī)器人的家庭服務(wù)場景搭建。家庭服務(wù)場景為常見的室內(nèi)非結(jié)構(gòu)場景,主要包括衣柜、沙發(fā)、椅子、盆栽、桌子、人等6類,如圖1所示。
為獲取家庭服務(wù)場景的激光點(diǎn)云數(shù)據(jù),在仿真環(huán)境中采用模擬的VLP-16三維激光雷達(dá)傳感器插件進(jìn)行仿真,利用CoppeliaSim的遠(yuǎn)程API與Python通信,獲取復(fù)合機(jī)器人三維激光雷達(dá)的點(diǎn)云單幀數(shù)據(jù),并保存為.ply格式文件,經(jīng)MATLAB可視化后如圖2所示。
2 數(shù)據(jù)集制作
利用文獻(xiàn)[3]的方法,在包含各類物體的環(huán)境點(diǎn)云基礎(chǔ)上,首先,利用基于橫截面積的算法對環(huán)境點(diǎn)云數(shù)據(jù)進(jìn)行地面分割,將大面積的地面點(diǎn)云分離,避免聚類時出現(xiàn)干擾;然后,采用體素網(wǎng)格濾波算法對環(huán)境點(diǎn)云進(jìn)行壓縮,以減少點(diǎn)云數(shù)據(jù)量,便于后續(xù)算法聚類;最后,采用改進(jìn)的基于密度的噪聲應(yīng)用空間聚類(density-based spatial clustering of applications with noise, DBSCAN)算法對分割壓縮后的環(huán)境點(diǎn)云進(jìn)行單個物體點(diǎn)云的聚類分割,將家庭服務(wù)場景的單幀點(diǎn)云數(shù)據(jù)聚類分割成6個點(diǎn)云簇,即6個不同類別物體,其中人的點(diǎn)云簇如圖3所示。
通過不同角度將6類物體的三維點(diǎn)云簇投影,每類物體獲得80幅二維投影圖像。由每類物體80幅圖像形成的數(shù)據(jù)集數(shù)據(jù)數(shù)量較少,訓(xùn)練的識別模型魯棒性不強(qiáng)。本文通過縮小放大、旋轉(zhuǎn)(45°、90°、180°、270°)、像素平移、翻轉(zhuǎn)(水平、垂直)、明亮度改變和添加噪聲(椒鹽、高斯)等方法對圖像進(jìn)行數(shù)據(jù)增強(qiáng),使1幅圖像衍生出132幅圖像,6類物體的數(shù)據(jù)集共有63 360幅圖像。數(shù)據(jù)增強(qiáng)后的人點(diǎn)云投影圖集如圖4所示。
3 卷積神經(jīng)網(wǎng)絡(luò)
物體識別問題可視為分類問題。通過機(jī)器學(xué)習(xí)方法將環(huán)境點(diǎn)云分割成單個物體點(diǎn)云,故在物體點(diǎn)云投影圖分類后無需再錨框。通過先驗(yàn)知識和前期的實(shí)驗(yàn)積累,在經(jīng)典的LeNet-5卷積神經(jīng)網(wǎng)絡(luò)模型的基礎(chǔ)上設(shè)計圖像分類模型,并根據(jù)數(shù)據(jù)集和圖像大小、圖像中物體的分辨率和外觀屬性,調(diào)整LeNet-5卷積神經(jīng)網(wǎng)絡(luò)的池化方式、卷積核大小,增大全連接層的神經(jīng)元個數(shù)和層數(shù),如圖5所示。
改進(jìn)的LeNet-5卷積神經(jīng)網(wǎng)絡(luò)包含3個卷積層、3個池化層、2個全連接層和1個Softmax層。其中,Softmax層用于分類預(yù)測。
4 實(shí)驗(yàn)
4.1 算法實(shí)施過程
物體分類識別算法流程如圖6所示。
首先,將數(shù)據(jù)集中的圖像轉(zhuǎn)換成64×64像素的小圖像,并獲取所有圖像的路徑名,存放到對應(yīng)的圖像路徑列表中,同時將有圖像的標(biāo)簽存放到標(biāo)簽列表中;然后,對圖像路徑列表和標(biāo)簽列表打亂處理,并將亂序的列表分為2部分,一部分用來訓(xùn)練,另一部分用來測試;接著,將圖像進(jìn)行解碼操作,生成圖像batch(批),對訓(xùn)練變量聲明;最后,將圖像batch輸入到改進(jìn)的LeNet-5卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行訓(xùn)練,保存訓(xùn)練后的模型。
4.2 評價指標(biāo)
本文選擇的模型評價指標(biāo)為誤差損失和精度。誤差損失越低,精度越高,模型性能越佳。
誤差損失采用交叉熵計算,如公式(1)所示。
式中:x為輸入,p為真實(shí)分布,q為模型的預(yù)測分布。
精度(ACC)是真實(shí)標(biāo)簽值與模型預(yù)測值的差的平方和,如公式(2)所示。
式中:y為真實(shí)標(biāo)簽值,為模型預(yù)測值。
4.3 模型訓(xùn)練及對比分析
模型訓(xùn)練的硬件環(huán)境:英特爾I5-8300H處理器、英偉達(dá)GTX1050Ti顯卡和500 GB固態(tài)內(nèi)存;軟件環(huán)境:Python3.6.5、tensorflow1.8.0、cuda9.0和cudnn7.6.5。訓(xùn)練參數(shù)設(shè)置:BATCH_SIZE為32,MAX_STEP為6?000,learning_rate為0.000?001,激活函數(shù)為ReLU函數(shù)。訓(xùn)練過程誤差損失的變化如圖7所示。
由圖7可知,在不斷訓(xùn)練過程中,誤差損失由1.8降低至0.2,說明模型訓(xùn)練輸出不斷接近真實(shí)標(biāo)簽值。
訓(xùn)練過程精度的變化如圖8所示。
由圖8可知,在不斷訓(xùn)練過程中,精度不斷提高,在訓(xùn)練步數(shù)為6 000時,精度接近0.98。
為進(jìn)一步測試改進(jìn)的LeNet-5卷積神經(jīng)網(wǎng)絡(luò)性能,將該網(wǎng)絡(luò)模型與經(jīng)典的LeNet-5網(wǎng)絡(luò)模型進(jìn)行對比測試。對比測試采用相同的數(shù)據(jù)集,設(shè)置相同的訓(xùn)練步數(shù),重復(fù)進(jìn)行3次訓(xùn)練,誤差損失結(jié)果如表1所示,精度結(jié)果如表2所示。
由表1可知,2種網(wǎng)絡(luò)模型的誤差損失相差不大,平均數(shù)值較小,說明2個網(wǎng)絡(luò)模型都進(jìn)行了有效的反饋學(xué)習(xí)和網(wǎng)絡(luò)參數(shù)的自動調(diào)整。
由表2可知,改進(jìn)的LeNet-5卷積神經(jīng)網(wǎng)絡(luò)模型相較于經(jīng)典的LeNet-5模型,精度明顯提升。
編寫Python和GUI界面,載入訓(xùn)練后的分類模型,使用未經(jīng)過訓(xùn)練的圖像作為推理測試。以盆栽植物點(diǎn)云為例,測試效果如圖9所示。
改進(jìn)的LeNet-5卷積神經(jīng)網(wǎng)絡(luò)模型正確識別了盆栽植物(標(biāo)簽為zhiwu),置信度為0.905。作為對比,同樣的圖像利用經(jīng)典的LeNet-5網(wǎng)絡(luò)模型進(jìn)行訓(xùn)練預(yù)測,測試效果如圖10所示。
經(jīng)典的LeNet-5網(wǎng)絡(luò)模型對盆栽植物的置信度為0.449,說明對于點(diǎn)狀成型的特征圖片,經(jīng)典的LeNet-5模型難以有效分類識別。
5 結(jié)論
本文利用改進(jìn)的LeNet-5卷積神經(jīng)網(wǎng)絡(luò)對單物體點(diǎn)云二維圖像進(jìn)行分類識別,相較于經(jīng)典的LeNet-5網(wǎng)絡(luò)模型具有更高的精度。同時驗(yàn)證了卷積神經(jīng)網(wǎng)絡(luò)可用于點(diǎn)云的二維圖像識別,相較于完整的物體直觀圖像信息,物體點(diǎn)云圖像包含物體特征信息較少,識別難度較大,需要改進(jìn)網(wǎng)絡(luò)結(jié)構(gòu)以提高識別精度。本文在研究過程中,使用了數(shù)據(jù)增強(qiáng)技術(shù)對數(shù)據(jù)進(jìn)行擴(kuò)充,提高了訓(xùn)練模型的魯棒性,為后續(xù)復(fù)合機(jī)器人進(jìn)行更高級的功能開發(fā)提供基礎(chǔ)條件。
參考文獻(xiàn)
[1] BOHREN J, RUSU R B, JONES?E G, et al. Towards autonomous robotic butlers: lessons learned with the PR2[C]//?2011 IEEE International Conference on Robotics and Automa-tion. IEEE, 2011:5568-5575.
[2] 盧榮勝,史艷瓊,胡海兵.機(jī)器人視覺三維成像技術(shù)綜述[J].激光與光電子學(xué)進(jìn)展,2020,57(4):9-27.
[3] 周恒旭,何志敏,周燕.面向機(jī)械臂避障的非結(jié)構(gòu)場景感知研究[J].機(jī)械與電子,2020,38(9):74-80.
[4] 俞斌,董晨,劉延華,等.基于深度學(xué)習(xí)的點(diǎn)云分割方法綜述[J].計算機(jī)工程與應(yīng)用,2020,56(1):38-45.
[5] 張佳穎,趙曉麗,陳正.基于深度學(xué)習(xí)的點(diǎn)云語義分割綜述[J].激光與光電子學(xué)進(jìn)展,2020,57(4):28-46.
[6] 許安寧.基于深度學(xué)習(xí)的三維點(diǎn)云語義分割方法綜述[J].長江信息通信,2021,34(1):59-62.
[7] QI C R, SU H, MO K, et al. PointNet: deep learning on point sets for 3D?classification and segmentation[C]//Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition,?2017:652-660.
[8] 梁振斌,熊風(fēng)光,韓燮,等.基于深度學(xué)習(xí)的點(diǎn)云匹配[J].計算機(jī)工程與設(shè)計,2020,41(6):1689-1693.
[9] 敖建鋒,蘇澤鍇,劉傳立,等.基于點(diǎn)云深度學(xué)習(xí)的3D目標(biāo)檢測[J].激光與紅外,2020,50(10):1276-1282.
[10] 王旭嬌,馬杰,王楠楠,等.基于圖卷積網(wǎng)絡(luò)的深度學(xué)習(xí)點(diǎn)云分類模型[J].激光與光電子學(xué)進(jìn)展,2019,56(21):56-60.
[11] 蔣騰平,王永君,張林淇,等.融合CNN和MRF的激光點(diǎn)云層次化語義分割方法[J].測繪學(xué)報,2021,50(2):215-225.
[12] GIRSHICK R, DONAHUE J, DARRELL?T, et al. Rich feature hierarchies for accurate object detection and semantic segmentation[J].IEEE Computer Society, 2013.
[13] GIRSHICK?R. Fast R-CNN[C]//Proceedings of the IEEE Inter-national Conference on Computer Vision,?2015:1440-1448.
[14] REN S, HE K, GIRSHICK?R, et al. Faster R-CNN: towards real-time object detection with region proposal networks[C]//?Advances in Neural Information Processing Systems,?2015:91-99.
[15] REDMON J, DIVVALA S, GIRSHICK?R, et al. You only look once: unified, real-time object detection[C]//Proceedings of the IEEE Conference?on Computer Vision and Pattern Recogni-tion,?2016:779-788.
[16] REDMON J, FARHADI A. YOLO9000: better, faster, stronger[C]//Proceedings of the IEEE Conference on Compu-ter Vision?and Pattern Recognition,?2017:7263-7271.
[17] REDMON J, FARHADI?A. YOLOv3: an incremental improvement[J]. arXiv preprint arXiv:1804.02767, 2018.
[18] LIU W, ANGUELOV D, ERHAN?D, et al. SSD: single shot multibox detector[C]//European Conference on Computer Vision. Springer, Cham, 2016:21-37.
[19] 魏溪含,涂銘,張修鵬著.深度學(xué)習(xí)與圖像識別:原理與實(shí)踐[M].北京:機(jī)械工業(yè)出版社, 2019.
作者簡介:
熊治國,男,1977年生,博士,副教授,主要研究方向:無人機(jī)飛行控制。E-mail: xiongzhiguo416@163.com
周恒旭(通信作者),男,1992年生,碩士,助教,主要研究方向:機(jī)器人智能控制等。E-mail: 1281859757@qq.com