基于卷积神经网络的智能垃圾分拣车

2022-03-22 08:04石则斌罗雪峰闻春敖蔡佩君
实验室研究与探索 2022年12期
关键词:树莓图像识别摄像头

石则斌, 罗雪峰, 王 隐, 闻春敖, 蔡佩君

(浙江大学光电科学与工程学院,杭州 310027)

0 引 言

垃圾分类是垃圾处理流程中的基础环节,一直以来是各级政府倡导与推行的重要工作。由于配套设施不完善,人们垃圾分类意识与能力不强,该项工作成效并不理想,收集到的垃圾多为混合垃圾,后续仍需人工进行分类,增加了处理成本。将后续分拣工作交由机器完成[1],不仅能降低成本,提高工作效率,也能避免工人长期与垃圾接触所引发的健康问题。

目前常见的智能车多基于机器人操作系统(Robot Operating System,ROS),使用激光雷达进行定位导航[2-3],该类车价格昂贵,不适合用于垃圾分拣。为此,设计一种智能垃圾分拣车,基于树莓派平台,利用单目广角摄像头、倾斜角度传感器、超声波测距传感器等,通过Yolo-Fastest目标检测算法,实现自主路径规划、垃圾拾取分类、垃圾定点运放的功能[4-5],具有较高的性价比,对智能垃圾分拣做了一定的探索。

1 原 理

1.1 Yolo-Fastest网络结构

卷积神经网络是一种前馈型神经网络,包括输入层、卷积层、池化层、全连接层以及输出层,各层的神经元都只与上一层相连[6]。本项目采用的Yolo-fastest算法基于轻量级神经网络EfficientNet-Lite[7-9],通过量化和算子优化,使得算法模型体积更小,运算速度更快。

Yolo-Fastest是Yolo系列中最轻、最快的通用目标检测算法,其网络结构如图1 所示。与传统Yolo 网络一样,Yolo-Fastest 网络由主干网络和深层网络组成,主干网络用于提取图像特征,深层网络用于提取目标物的边界框。与传统Yolo不同,Yolo-Fastest的主干网只有27 层,其中第1 层为标准卷积层,其余均为深度可分离卷积层,大大减少了模型的参数量和运算量[10-11]。

图1 Yolo-Fastest算法网络结构

Yolo-Fastest卷积神经网络将输入的图片分割成S×S个网格,每个单元格负责检测那些中心点落在该格子内的目标,通过卷积网络提取特征,使用全连接层得到预测值。利用神经网络,可得到检测目标的中心位置(x,y),并根据损失函数Loss 计算预测结果的置信度。

1.2 超声波测距

超声波测距与雷达原理一样,利用超声波在空气中的传播速度已知,测量声波从发射到遇到障碍物反射回来的时间,根据发射与接收的时间差计算出发射点到障碍物的实际距离。超声波在空气中的传播速度为340 m/s,根据计时器记录的时间t,就可以计算出发射点距障碍物的距离:

这就是所谓的时间差测距法。

2 硬件设计

以简单可靠、经济实用为设计理念设计的垃圾分拣车整体结构如图2 所示。图2(a)是垃圾分拣车的系统框图,分拣车以树莓派4B[12]为开发平台,通过单目广角摄像头获取的图像,作为主要信息;超声波测距传感器、倾斜角度传感器作为辅助信息来源,通过算法处理,输出信号控制电动机和舵机,控制分拣车的运动和垃圾抓取。图2(b)是分拣车的实物图,长35 cm、宽25 cm、高50 cm。

图2 垃圾分拣车整体结构

2.1 主控模块

采用4 GBRAM 树莓派4B 作为主控制板。树莓派4B 是一款基于Cortex-A72 架构的微型计算机板卡,搭载了4 核BCM2711 处理器,主频达1.5 GH,具有强大的运算性能,可作为低成本开发平台,能较好地满足分拣车的运算需求,同时也符合简单可靠、经济实用的设计理念。

2.2 单目广角摄像头

使用135°广角无畸变摄像头。该摄像头采用OV2710 传感器,具有最高200 万像素,支持手动调焦和自动曝光,通过USB接口可免驱动与树莓派主板相连。使用时获取的图像分辨率设置为640 ×480,能比较稳定地获取较大视场范围的清晰图像,使得分拣车一次性获得尽可能多的信息,提高分拣效率。

2.3 超声波测距传感器

使用超声波传感器获取距离信息,作为分拣车运动控制的辅助信息来源,进一步提高分拣车运动的准确性。该传感器包括超声波发射器、接收器与控制电路,采用I/O口TRIG触发,可提供2 ~400 cm的非接触式距离,测距准确度可达3 mm。

2.4 倾斜角度传感器

分拣车运动过程中因为运动累计误差,产生角度偏移,导致无法准确驶向垃圾堆放点,引入倾斜角度传感器,能在任意位置得到准确的角度,通过与初始角度比较,对分拣车姿态做出修正,保证分拣车沿直线行驶。该传感器工作电压在3 ~5 V,测量范围-180° ~180°,具有1°的测量准确度和0.01°的分辨率。

2.5 抓取框

分拣车针对室内等较平坦地面,采用抓取框的抓取方式。图3 所示为分拣车的抓取框,由亚克力板制成,其中前臂、左右臂分别与舵机相连,通过运动抓取算法控制,可实现某一臂的单独抬放和组合抬放,配合分拣车的前移和左右移,实现对不同位置垃圾的快速抓取。在抓取框与地面接触一侧装有毛刷,避免电池、果皮等较小垃圾从分拣框下方漏过,同时减小分拣框与地面的摩擦。

图3 垃圾分拣车抓取框

3 软件算法设计

分拣车使用64 Bit树莓派操作系统,使用C ++语言进行算法开发编写。软件设计包括图像识别和运动抓取算法两部分,图像识别采用目标检测算法Yolo-Fastest,在树莓派上能实现15 帧的较高帧数视频的目标检测;运动抓取采用一种反馈控制算法,能够较好地配合Yolo-Fastest算法做出快速的运动和抓取。

3.1 目标识别算法

实验选取一次性纸杯、橘子皮、矿泉水瓶、七号电池、A4 纸团,按分类标准可分为可回收垃圾、厨余垃圾、有害垃圾和其他垃圾。为得到较好的训练结果,用于训练和测试模型的数据集均由分拣车摄像头拍摄制作,分别从不同的角度和背景共拍摄了2 000 张照片,根据后续训练效果添加特定背景和角度下照片300张,同一照片中同时存在多个检测目标,尽可能保证各类目标总数相近。通过人工方式对数据集标签进行分类,将这些数据集按照9∶1的比例分为训练集和测试集在电脑上用于神经网络模型训练。

神经网络训练时Loss值与重复次数的关系如图4所示,Loss值越低,模型对测试集中目标的检测准确度越高,可见,当重复次数达到约6 000 次时,Loss 降到1%以下且变化逐渐趋于平稳。分别选取重复次数为7 000、8 000、9 000、10 000 和12 000 的模型作为待选定模型,分别部署在树莓派后,通过实际的图像识别效果,从中选取最优的模型。

图4 训练中Loss与重复次数关系

将训练获得的模型文件转换移植到树莓派的NCNN框架中进行测试,通过OpenCV 可实时预览识别结果。通过比较,综合考虑图像识别的精度和速度,最终选择重复次数为8 000 次的模型为最终模型。实验中,静止情况下,分拣车对2 m以内的目标可以实现95%以上的识别率,对4 m处的目标仍有60%左右的识别率。

3.2 小车运动和垃圾抓取算法

根据图像识别算法计算得到的目标坐标信息以及其他传感器获得的距离、角度等信息,算法可判断目标相对于分拣车的位置,产生指令控制分拣车运动和垃圾抓取动作。

垃圾分拣流程如图5 所示,分拣车启动,记录自身初始姿态,获取图像并识别。根据识别结果,未检测到垃圾时,分拣车会按一定的路线巡视;当检测到垃圾后,分拣车会向最近的垃圾移动并完成抓取。根据抓取垃圾的种类,分拣车将前往相应的垃圾堆放点,在这一过程中,分拣车将不断判断视野中是否出现相同类别的垃圾,如果有,分拣车会继续抓取,以提高垃圾分拣的效率;如果没有,分拣车会将垃圾在堆放区放下,并重复上述操作开始新一轮垃圾分拣。

图5 分拣车垃圾分拣流程

运动抓取算法中,核心问题是如何判断垃圾的实际位置。为解决这一问题,采用一种反馈控制算法,通过不断判断垃圾与分拣车的相对位置,进而反馈控制分拣车运动。目标识别时,图像识别算法会计算得到目标中心在整个图像中的相对位置,该值以像素的形式输出,由于摄像头固定在分拣车上随分拣车一起运动,可以认为所获取图像中,分拣车即摄像头的位置是固定不变的,通过比较目标中心与分拣车中心的像素,判断目标与分拣车的相对位置。该判断算法与人抓取物体的方式相似,通过快速的图像识别,将分拣车每次运动后新的位置进行反馈,控制分拣车做出新的运动,逼近目标直至完成抓取[13]。

3.3 实验结果

垃圾实际分拣情况如图6 所示,实验在3.5 m ×5.5 m的场地中进行,对随机摆放的10 个5 种上述垃圾进行分类,最快可在2 min 完成分拣,平均能在2 min 40 s完成分拣,分拣正确率90%以上。图6(a)为分拣车对场地中垃圾的识别结果,分拣车对目标具有很好的识别效果,对视场内的垃圾识别普遍具有0.9以上的高置信度;图6(b)为分拣车将垃圾运送投放至垃圾堆放点,完成垃圾分类堆放。

图6 垃圾实时分拣情况

4 结 语

分拣车通过目标识别算法,快速准确地对单目广角摄像头获取的图像进行识别,配合超声波测距传感器和倾斜角度传感器,利用麦克纳姆轮移动灵活快速的优势,提高分拣车的运动速度和灵活性[14],以较低的成本实现所需功能,符合简单可靠、经济实用的设计理念,对垃圾自动拾取、分类做了一定的探索研究,具有较好的应用前景。分拣车在硬件结构和算法上还有较大的提升空间,如使用机械爪和垃圾收集装置,进一步提高垃圾抓取的速度;应用更复杂的定位算法,实现单目摄像头的地图构建和空间定位[15-16],以适应更复杂环境下的工作等。

猜你喜欢
树莓图像识别摄像头
浙江首试公路非现场执法新型摄像头
摄像头连接器可提供360°视角图像
基于Resnet-50的猫狗图像识别
高速公路图像识别技术应用探讨
基于树莓派的骑行智能头盔设计
图像识别在物联网上的应用
图像识别在水质检测中的应用
基于树莓派的远程家居控制系统的设计
响应面法优化红树莓酒发酵工艺
奔驰360°摄像头系统介绍