关键词:
深度学习
百香果目标检测
立体匹配
双目视觉测距
嵌入式系统
摘要:
随着乡村振兴政策的不断深入推进,我国在农业作物上的产量逐年攀升,尤其是水果产量方面,然而当前我国大多数的水果供应链其采摘环节仍主要依靠人工,不仅效率低下,且随着人力成本的不断升高,势必会阻碍水果产业的进一步扩大发展,无法满足市场的供求。为了克服以上限制,当下使用水果采摘机器人代替人工采摘逐渐成为研究的热点,且今后必将成为果园农业管理现代化的发展趋势。其中,识别定位系统作为机器人采摘的关键,其对于复杂目标对象的判断、目标深度值的计算以及双目测距模型与目标检测模型的整合具有一定的难度,同时要兼顾嵌入式的落地。其在技术上的突破,必能有效提高水果识别与定位的性能,从而提升采摘精准度,提升效率,降低成本的同时带动水果产业进一步发展。本文主要针对自然环境下百香果复杂目标识别度不高、目标深度值计算精度较低以及测距模型和目标检测模型的结合等问题,研究并改进了基于深度学习网络的果实目标检测模型和基于双目视觉的目标果实测距定位算法,并将其布署在NVIDIA Jetson TX2嵌入式平台,实验结果表明在水平方向上对目标百香果进行识别定位精度相对最高,平均相对误差为10.32%;而在正下方进行识别定位,其平均相对误差最高,为12.85%。其研究结果为百香果水果采摘机器人实现奠定了基础。文章主要的研究工作分以下三部分:(1)果实目标检测。提出了基于YOLOv3的百香果检测模型,在对通用目标检测模型进行理论结构分析和验证的基础上,针对百香果目标尺寸的特点,利用基于交并比为距离度量的改进K-means++算法重新获取与目标果实相匹配的锚选框,提高对目标的框选精度以及模型的收敛速度;其次,在输出网络中将用以筛选目标预测框的Soft-NMS算法通过线性函数的形式对其高斯函数的抑制参数进行改进,以提高模型在不同密集场景下的适应性和检测能力。最后,利用增强的YOLOv3模型在经过预处理之后的百香果数据集上进行实验对比,实验结果表明:增强后的YOLOv3目标检测算法m AP达到94.62%,F1值达到了94.34%,较原YOLOv3算法分别提升了4.58%和3.68%,平均检测速度为25.45帧/s。(2)基于双目视觉的百香果果实测距方法及其实现。首先,分析了双目视觉测距的基本原理及流程,其次,在MATLAB平台采用张正友标定法实现了对双目相机镜头参数的获取,重投影误差为0.07,解决了相机畸变导致双目视觉测距精度变差的问题;再有,分析了计算视差的匹配算法的基本实现流程,研究并实现了SGBM立体匹配算法,该算法具有立体匹配效果好、运行速度适中的优点,适合于嵌入式系统的需求。最后,通过Python语言在Py Charm平台上对基于YOLOv3算法的测距模型进验证,试验结果表明以上算法完全满足百香果的高精度目标定位功能需求,为该算法在嵌入式平台的实现奠定基础。(3)基于嵌入式开发平台的果实识别与定位软硬件系统的实现。首先完成NVIDIA Jetson TX2平台操作系统及环境的基本安装,并基于Deep Stream框架完成了对python开发环境的部署,实现了对视频流的解编码及加速;其次,将YOLOv3目标检测算法移植入所部署的环境中,并在嵌入式系统上完成了YOLOv3的训练;最后,基于SGBM立体匹配算法,实现了百香果目标识别与定位。试验验证表明,该系统在性能上基本满足果实实时识别与定位的需求,在90cm的识别范围内,百香果的平均识别率为97%,平均帧率达到20fps,测距的平均相对误差为11.30%。