李頎 郭夢媛
摘要:針對蘋果樹結構復雜、樹干之間相互遮擋、導致國內外大規模機械設備自動剪枝誤剪率高等問題,提出1種基于深度學習的休眠期蘋果樹點云的語義分割。以陜西省禮泉蘋果種植基地的休眠期蘋果樹為研究對象,為了解決雙視角點云配準之間非重疊點對距離過大導致配準誤差大的問題,用 Kinect V2 傳感器獲取休眠期蘋果樹點云,對每株果樹采用改進迭代最近點算法(Iterative closest point, ICP)進行多視角三維重建,對于大規模的果樹點云,構建基于超點圖的果樹分割網絡(Super point graphs network, SPGNet),對果樹點云進行語義分割,保留果樹點云的復雜幾何信息。結果表明,當果樹雙視角點云的配準誤差小于1 mm時,可成功分割休眠期蘋果樹的樹干與分枝,對分類精度、預測值與真實值的交并比(IoU)進行評估,其中樹干的分類精度、IoU分別為94.0%、0.85,分枝的分類精度、IoU分別為83.1%、0.75。由此可見,研究結果可解決機械設備自動剪枝誤剪率高的問題,能在自然光線條件、大規模休眠期蘋果樹場景下實現對休眠期蘋果樹樹干與分枝的分割,為大規模自動剪枝提供依據。
關鍵詞:多視角果樹三維重建;超點圖;深度學習;果樹點云語義分割
中圖分類號:S661.1文獻標識碼:A文章編號:1000-4440(2023)05-1189-10
Semantic segmentation of apple tree point cloud in dormant period based on deep learningLI Qi GUO Meng-yuan
(1.School of Electronic Information and Artificial Intelligence, Shaanxi University of Science and Technology, Xian 710021, China;2.School of Electrical and Control Engineering, Shaanxi University of Science and Technology, Xian 710021, China)
Abstract:Aiming at the problems of complex structure of apple trees, mutual occlusion between the trunks, and false pruning of large-scale mechanical equipment at home and abroad, a semantic segmentation of apple tree point cloud in dormant period based on deep learning was proposed. Taking the dormant apple trees in Liquan apple planting base in Shaanxi province as the research object, in order to solve the problem of large registration error caused by the large distance between non-overlapping point pairs in dual-view point cloud registration, the Kinect V2 sensor was used to obtain the point cloud of dormant apple trees, and the improved iterative closest point algorithm (ICP) was used for multi-view three-dimensional reconstruction of each fruit tree. For large-scale fruit tree point cloud data, a fruit tree segmentation network based on super point graphs (SPGNet) was constructed to perform semantic segmentation on fruit tree point cloud, and the complex geometric information of fruit tree point cloud was retained. The results showed that when the registration error of the dual-view point cloud of the fruit tree was less than 1 mm, the trunk and branches of the apple tree in the dormant period could be successfully segmented. The classification accuracy and intersection over union of predicted and true values (IoU) were evaluated. The classification accuracy and IoU of the trunk were 94.0% and 0.85, respectively, and the classification accuracy and IoU of the branches were 83.1% and 0.75, respectively. In a word, the research results could solve the problem of high mis-cutting rate in the process of automatic pruning of mechanical equipment, and could realize the segmentation of trunks and branches of dormant apple trees under natural light conditions and large-scale dormant apple tree scenes, and could provide a basis for large-scale automatic pruning.
Key words:multi-view fruit tree three-dimensional reconstruction;super-point graph;deep learning;fruit tree point cloud semantic segmentation
2021年,陜西省蘋果樹的種植面積為6.21×105hm2,陜西省蘋果產量為1.24×107t,占全國蘋果總產量的26.9%。對休眠期蘋果樹進行剪枝是提高果樹產量的重要措施,傳統的蘋果樹剪枝嚴重依賴人工操作,不僅成本高昂,而且浪費人力、效率低下[1]。雖然目前國內外大規模蘋果樹自動剪枝的機械設備得到了廣泛研究[2],但是機械化剪枝設備錯誤、遺漏的修剪會導致蘋果產量下降。因此,提高休眠期蘋果樹樹干與分枝的分類精度,可以降低機械化設備自動剪枝的誤剪率,提高蘋果產量并減少勞動力需求[3]。
常用于果樹枝條語義分割的數據包括二維圖像、三維點云等。Amatya等[4]使用貝葉斯分類法,將帶有葉片的荔枝圖像分成4個類別,其中樹干識別率達到89.2%。韓文康等[5]用Atrus空間金字塔池、門特征金字塔網絡來增強網絡的特征提取能力,結果顯示,蘋果和樹枝語義分割模型的精確率和召回率分別為87.6%和77.2%。Majeed等[6]使用 Kinect V2 傳感器獲取蘋果幼樹的彩色(RGB)和深度圖像,使用SegNet對簡單的前景二維圖像進行分割。
由于果樹的二維圖像中缺少深度信息,導致樹干與分枝的分割精度低。Elfiky等[7]提出基于幾何特征從兩側對休眠的紡錘形蘋果樹進行三維重建,結果顯示,基于自適應建模方案的主枝修剪點的檢測精度達到 96.0%。Medeiros等[8]通過分裂合并聚類算法,將休眠蘋果樹點云分為樹干、連接點和分枝,結果顯示,平均分割精度為98%,平均直徑誤差為0.6 cm,該分割使用機器視覺算法手動提取點云特征,由于光照度的變化和背景的復雜,果樹枝條分割的魯棒性通常較差,并且激光雷達的成本較高。
本研究以休眠期蘋果樹為試驗對象,通過改進迭代最近點算法對果樹進行多視角三維重建,并將結果輸入基于超點圖的深度學習網絡(Super point graphs network, SPGNet),以期使果樹的復雜幾何信息得到實質性保留,在大規模休眠期蘋果樹的場景下實現對休眠期蘋果樹樹干與分枝的分割。
1材料與方法
1.1試驗場地
本研究的試驗場地位于陜西省咸陽市禮泉蘋果種植基地,基地內果樹的行距、株距分別為4.3 m、3.2 m,具體場景見圖1a。在休眠期,蘋果樹形成低矮的紡錘形(下文將紡錘形結構的矮化休眠蘋果樹簡稱為蘋果樹),種植基地內的矮化蘋果樹冠幅為2.1 m,主蔓長度最長可達1.2 m,平均高度約為2.4 m,去除背景后的紡錘形蘋果樹如圖1b所示。
1.2數據采集與點云預處理
1.2.1數據采集本研究于2022年2-3月在陜西省咸陽市禮泉蘋果種植基地采集數據。由于高精度點云需要高性能的傳感器和穩定的成像環境,而以Kinect為代表的基于光子飛行時間(Time-of-Fligh,ToF)的RGB-D傳感器在點云精度、成本和處理速度3個方面更加平衡,因此本研究使用 Kinect V2 傳感器獲取點云。由于果樹平均高度約為2.4 m,Kinect V2安裝在距離地面150 cm處的支架上,構成數據采集設備,該位置配合Kinect V2的視場角,可將果樹分枝完全覆蓋,Kinect V2的部分參數見表1。數據采集設備距離蘋果樹主莖中心1.8~2.1 m,Kinect V2沿順時針方向繞果樹旋轉,每旋轉60°采集1次數據,旋轉360°后數據采集完畢。
圖2a描述了獲取單株果樹三維數據的方法,將其中第1視角(0°)的點云命名為Tree_1,將其他5個視角的點云分別命名為Tree_2、Tree_3、Tree_4、Tree_5、Tree_6,詳見圖2b。數據采集系統由個人計算機開發和測試,硬件配置為AMD R7-4800H SSD、NVIDIA RTX2060 4G,軟件環境選擇OpenCV 3.4.13、PCL1.8.1。
1.2.2點云預處理由于數據采集設備獲取的果樹點云也包括附近的樹木和地面,因此根據果樹點云在空間坐標系的x、y、z坐標,結合樹的寬度、高度,設置x的閾值范圍為(-1.4 m,0.9 m),y的閾值范圍為(3.1 m,1.0 m),可有效過濾點云中的背景。數據采集設備放置在距果樹1.8~2.1 m的位置,可以通過將z 閾值設置為(0.9 m,-1.3 m)去除點云中的地面信息。
1.3休眠期蘋果樹的三維重建
1.4休眠期蘋果樹的語義分割
本研究通過改進迭代最近點算法對休眠期蘋果樹的點云進行三維重建,提高了果樹三維模型的精度。在大規模休眠期蘋果樹場景下對果樹點云進行語義分割,執行分割任務時不僅可以克服果樹點云規模大、無序且不規則的問題,而且可以保留果樹點云的復雜幾何信息。
二維圖片的語義分割通常使用卷積神經網絡(Convolutional neural network,CNN)[10],但CNN需要輸入規則的數據,因此CNN需要先對三維模型進行規則化處理,常見的處理方法是將三維模型體素化。三維模型體素化的缺點是CNN的輸入數據會變得稀疏且影響點云的旋轉、平移。超點圖具有豐富的邊緣特征,并且可編碼三維點云中物體各部分之間的上下文關系[11]。因此,本研究擬利用超點圖(Super point graph,SPG)對休眠期蘋果樹進行語義分割。由于受到 PointNet[12]、門控圖神經網絡(Graph neural networks, GNNs)[13]的影響,本研究擬構建基于超點圖的深度學習網絡(Super point graphs network, SPGNet),實現在大規模休眠期蘋果樹場景下的語義分割,休眠期蘋果樹樹干與分枝的分割流程如圖6所示。
SPGNet輸入如圖7a所示的休眠期蘋果樹點云后,將大規模蘋果樹三維模型的語義分割問題分成幾何分割、超點嵌入和上下文分割3個不同規模的問題,如圖7b、圖7c所示。
1.4.1基于語義分割的超點圖構建矮化的蘋果樹結構呈紡錘形,在大規模蘋果樹場景下的語義分割目標不是檢索如汽車、椅子等簡單對象,而是為了將休眠期蘋果樹分解為簡單的幾何部分。SPGNet將如圖8a所示的果樹三維模型作為輸入,該三維模型遵循全局能量模型且被分割成如圖8b所示的簡單并具有意義的幾何塊,又稱為超點。最后,由超點、邊構成超邊,使超點之間的空間鄰接關系通過超邊連接,如圖8c所示。
1.4.2超點嵌入與上下文分割
1.4.3模型訓練和超參數本研究對休眠期蘋果樹的語義分割網絡進行了端到端的訓練,使用 120 株果樹三維模型進行訓練和測試,每株果樹有31 832~100 521個點,隨機選擇84株果樹模型(70%)進行訓練,其余36株果樹模型(30%)用于測試。同時,通過Cloud Compare v2.11.3軟件手動將果樹的點云標記為樹干(Trunk)、樹枝(Branch) 2類,分別用灰色、淺黑色標注。為了提高計算性能,使用0.006的體素對果樹點云進行二次采樣。本研究中使用的 SPGNet 的超參數見表2。
SPGNet試驗在顯卡為NVIDIA GeForce RTX2080 Ti、操作系統為Ubuntu 18.04、運行內存為128 G、算力為7.5的服務器上運行,使用的軟件工具包括 CUDA 10.0、CUDNN 9.1 和 Python 3.7,試驗在 Pytorch 1.10 中實現。
1.4.4性能評價指標
2結果與分析
2.1果樹的雙視角配準誤差分析
為了選擇雙視角果樹點云的配準視角,本研究隨機選擇自然光下10株結構不同的果樹,針對2種不同的雙視角配準方案進行配準誤差分析。圖10顯示了以0°視角點云為源點云,利用公式(14)對果樹源點云與目標點云的配準誤差分析結果,即果樹點云在視角差分別為60°、180°時前后2幀點云平均距離誤差(MDE)的對比結果。相比于視角差為60°的休眠期蘋果樹點云配準結果,視角差為180°時存在更多的非重疊點對。在進行雙視角配準時,0~180° 的MDE最大為3.80 mm,而0~60°的MDE最大為0.28 mm,因此本研究中雙視角配準的視角差選擇60°。
2.2果樹點云分割結果的分析
本研究采用SPGNet模型,在休眠期蘋果樹點云的訓練集與測試集內進行性能測試。首先評估模型在訓練集上是否出現過擬合現象。圖11a、圖11b分別顯示了果樹點云在訓練過程中的學習準確率、最小批量損失曲線。本研究發現,模型的最大學習準確率為97%,最小批量損失為0.07,進行第200次訓練時的學習準確率與最小批量損失趨于穩定。因此可見,本研究模型在果樹訓練集上得到了適當訓練。
此外,本研究使用OA、mAcc、mIoU等指標,在由36株果樹三維模型構成的測試集上評估本模型的分割結果。如圖12a所示,SPGNet在測試集上的OA、mAcc、mIoU分別為90.1%、89%、81%。如圖12b所示,果樹樹干的分類精度、IoU分別為94.0%、0.85;果樹分枝的分類精度、IoU分別為83.1%、0.75,雖然果樹分枝的分割精度低于果樹樹干,但是該結果獲得了休眠期果樹的預期分割性能。
2.3本研究模型與目前先進點云分割網絡性能的對比
為了分析本研究模型點云分割的性能,本研究將所提方法與目前先進的點云分割網絡Point CNN[15]、DGCNN[16]在休眠期蘋果樹數據集上進行比較試驗。為了保證比較試驗的可靠性,2種比較模型均按照本研究模型的訓練方式進行訓練。由表3可知,本研究模型的mAcc、OA均排在首位,分別比Point CNN的mAcc、OA高1.9個百分點、1.9個百分點。經分析,Point CNN面對輸入順序不同的點云,定義了1個x變換矩陣,保證了點云輸入順序不影響點云輸出結果,從而利于Point CNN模型保留蘋果樹完整的點云特征并能夠自適應地學習特征的權重,相比之下,DGCNN使用基于動態圖的方法來學習點云之間的關系,但對點云的局部和全局結構不夠敏感, 因此Point CNN的特征學習方法略優于DGCNN。a:SDGNet學習準確率曲線;b:最小批量損失曲線。
本研究得出的休眠期蘋果樹樹干與分枝的分割結果如圖13c所示。由于存在人工標注錯誤及分枝形狀類似于樹干的情況,因此在樹干和分枝之間的連接處會出現漏檢、樹干被錯誤分割為分枝的現象。雖然對果樹的復雜結構存在一些分割錯誤,但是最終的果樹分枝分割準確率為83%,并識別出果樹分枝的破損。在大規模休眠期蘋果樹場景下,將來可通過提取蘋果樹的骨架點、使深度網絡在復雜的果樹點云中學習更多特征等方法進一步提高果樹樹干與分枝的分割精度。
3結論
本研究針對大規模機械設備自動剪枝時誤剪率高、蘋果樹相互遮擋導致雙視角點云配準誤差大的問題,采用視角差為 60° 的果樹點云,使用改進最近迭代點算法進行多視角三維重建,配準誤差為0.28 mm,可有效保留果樹的真實特征。本研究提出的基于超點圖的深度學習網絡,實現了OA為90.1%、mAcc為89%、mIoU為81%的果樹樹干與分枝的分割,其中樹干的分類精度最高為94.0%。與目前先進點云語義分割網絡性能對比發現,本研究模型的整體精度比Point CNN高1.9個百分點,比 DGCNN高2.7個百分點,實現了自然光線下大規模休眠期蘋果樹場景的果樹樹干與分枝的分割。當休眠期蘋果樹的分類精度較高時,可降低現有機械設備自動剪枝時的誤剪率。為了進一步推動機械設備在大規模休眠期蘋果樹場景下自動剪枝效率的提高,下一步可側重于研究休眠期蘋果樹分枝的長度,并根據分枝長度匹配自動剪枝的最佳方案。
參考文獻:
[1]KARKEE M, ADHIKARI B, AMATYA S, et al. Identification of pruning branches in tall spindle apple trees for automated pruning[J]. Computers & Electronics in Agriculture, 2014, 103:127-135.
[2]MIKA A, BULER Z, TREDER W. Mechanical pruning of apple trees as an alternative to manual pruning[J]. Ogrodnictwo,2016,15(1):113-121.
[3]HE L, SCHUPP J. Sensing and automation in pruning of apple trees: a review[J]. Agronomy, 2018, 8(10):211.
[4]AMATYA S, KARKEE M, GONGAL A, et al. Detection of cherry tree branches with full foliage in planar architecture for automated sweet-cherry harvesting[J]. Biosystems Engineering, 2016, 146(4):3-15.
[5]HAN W K, CHEN C. Fruit detection and segmentation for apple harvesting using visual sensor in orchards[J]. Sensors, 2019, 19(20): 4599.
[6]MAJEED Y, ZHANG J, ZHANG X, et al. Deep learning based segmentation for automated training of apple trees on trellis wires[J]. Computers and Electronics in Agriculture, 2020, 170: 105277.
[7]ELFIKY N M, AKBAR S A, SUN J, et al. Automation of dormant pruning in specialty crop production: an adaptive framework for automatic reconstruction and modeling of apple trees[C]. Piscataway, NJ:IEEE Computer Society,2015: 65-73.
[8]MEDEIROS H, KIM D, SUN J, et al. Modeling dormant fruit trees for agricultural automation[J]. Journal of Field Robotics, 2017, 34(7):1203-1224.
[9]徐思雨,祝繼華,田智強,等. 逐步求精的多視角點云配準方法[J].自動化學報,2019,45(8):1486-1494.
[10]張蕊,孟曉曼,曾志遠,等. 圖卷積神經網絡在點云語義分割中的研究綜述[J].計算機工程與應用, 2022, 58(24):29-46.
[11]LANDRIEU L, SIMONOVSKY M. Large-scale point cloud semantic segmentation with superpoint graphs[C]. Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition, 2018:4558-4567.
[12]GUINARD S,LANDRIEU L. Weakly supervised segmentation-aided classification of urban scenes from 3d LiDAR point clouds[C]//International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences. 2017:151-157.
[13]LI Y, TARLOW D, BROCKSCHMIDT M, et al. Gated graph sequence neural networks[C]. Ithaca, NY:Openreview. net,2016.
[14]CHO K, VAN MERRINBOER B, BOUGARES F, et al. Learning phrase representations using RNN encoder-decoder for statistical machine translation[C]. Stroudsburg:ACL,2014.
[15]LI Y, BU R, SUN M, et al. Pointcnn: convolution on x-trans formed points[C]. Montreal Canada: Neural Information Processing System. Foundation, 2018.
[16]WANG Y, SUN Y B, LIU Z W, et al. Dynamic graph CNN for learning on point clouds[J]. ACM Transactions on Graphics, 2018, 38(5):1-12.(責任編輯:徐艷)