本发明涉及一种基于机器视觉的水域垃圾自动清洁船及自动清洁方法。
背景技术:
在我国,对人工湖、水库、小型河道的垃圾清理目前仍多以人工清理为主,效率较低。水面智能清洁无人船相比于人工清污,降低了风险系数、减少了人力投入、提高了工作效率,但从目前清洁船大多面向大规模水域或海域。目前现有的垃圾清洁无人船多使用人工规划的行驶路线进行清理,或使用成本较高的激光雷达等传感器,较少涉及结合机器视觉的导航算法。其太阳能装置多固定于船身,角度无法自行调节。
技术实现要素:
发明目的:针对上述现有技术,提出一种基于机器视觉的水域垃圾自动清洁船及自动清洁方法,可实现小规模水域内的垃圾自动识别与清理功能。
技术方案:一种基于机器视觉的水域垃圾自动清洁方法,在垃圾清洁船上设置摄像头和位置定位模块,通过所述摄像头采集水面图像,对所述水面图像进行处理得到水面垃圾坐标位置,根据水面垃圾坐标位置设定垃圾清洁船的巡航路线,所述垃圾清洁船根据所述巡航路线进行,在水面垃圾位置处进行垃圾收集。
进一步的,对所述水面图像进行处理得到水面垃圾坐标位置包括如下步骤:
1),将图像缩放后对图像进行二值化处理,将二值化阈值从255开始逐渐减小,并使用边缘检测提取轮廓,直到检测到第一条边缘;
2),利用Hough直线检测提取此时二值化图像中的直线;
3),对直线以上部分进行屏蔽,保留直线以下部分;
4),对直线以下部分的图像应用自适应二值化和Canny边缘检测处理;
5),对于边缘内部的闭合区域面积以及闭合区域的中心点位置进行计算;
6),对于闭合区域的面积进行筛选,提取面积在5至1000像素范围内的闭合区域;
7),对筛选的到的闭合区域做最小外接正方形并截取,对截取到的局部图像进行特征提取后,判断是否为垃圾,并计算得到垃圾的坐标位置。
进一步的,所述垃圾清洁船的动力电源由船体上的角度可调太阳能电池板提供,通过舵机控制太阳能电池板的朝向始终正对太阳。
一种基于机器视觉的水域垃圾自动清洁船,包括船身主体、船体推进驱动机构,在船体主体的顶部设有俯仰角和方向角可调的太阳能电池板,电池板的俯仰角和方向角由舵机控制,船身主体前方有摄像头以及GPS模块,摄像头用于采集水面图像,船身主体底部设有垃圾收集网;船身内部设有控制器,摄像头采集的水面图像传输到控制器中;其中,所述控制器包括:
图像处理模块,用于对水面图像进行处理得到水面垃圾坐标位置;
巡航路线设定模块,用于根据水面垃圾坐标位置设定垃圾清洁船的巡航路线;
驱动控制模块,用于控制船体推进驱动机构动作,船体沿巡航路线进行。
进一步的,所述控制器还包括舵机控制模块,所述舵机控制模块输出控制信号到所述舵机,控制太阳能电池板的朝向始终正对太阳。
有益效果:本发明的一种基于机器视觉的水域垃圾自动清洁船及自动清洁方法,能够对水面图像进行处理得到水面垃圾坐标位置,根据水面垃圾坐标位置设定垃圾清洁船的巡航路线,垃圾清洁船根据巡航路线进行,在水面垃圾位置处进行垃圾收集。本发明可以根据水面图像自动判断垃圾的位置和距离,并自动行驶至垃圾处并收集垃圾,在未发现垃圾时自动巡航,因此可减少人力投入,降低工作风险,提高工作效率。
附图说明
图1为本发明方法的流程图;
图2为基于机器视觉的水域垃圾自动清洁船的结构示意图。
具体实施方式
下面结合附图对本发明做更进一步的解释。
一种基于机器视觉的水域垃圾自动清洁方法,在垃圾清洁船上设置摄像头和位置定位模块,通过摄像头采集水面图像,对水面图像进行处理得到水面垃圾坐标位置,根据水面垃圾坐标位置设定垃圾清洁船的巡航路线,垃圾清洁船根据巡航路线进行,在水面垃圾位置处进行垃圾收集。垃圾清洁船的动力由船体上的角度可调太阳能电池板提供,通过舵机控制太阳能电池板的朝向始终正对太阳。
如图1所示,对水面图像使用OpenCV计算机视觉库进行编程,处理得到水面垃圾坐标位置包括如下步骤:
1),将图像缩放为640×480像素大小,对图像进行二值化处理,将二值化阈值从255开始逐渐减小,并使用边缘检测提取轮廓,直到检测到第一条边缘;此第一条边缘即为当阈值减小到一定程度时,检测到的图像中反差最显著的区域。
2),利用Hough直线检测提取此时二值化图像中的直线。Hough变换通过r=xcosθ+ysinθ,将直角坐标中的点映射为极坐标描述的一条曲线。对于图像中同一条直线上的多个点,由上式可知,经过Hough变换后为多条相交于同一点的曲线。Hough直线检测通过判断是否存在这一交点,识别图像中的直线。由于水域对岸边的直线多为贯穿图像的最显著的直线,且水面与岸边景物对光线的反射情况不同,二值化阈值改变过程中此区域被识别为反差最显著的区域,通过该步骤提取的直线即视为水域对岸边的直线。
3),对直线以上部分进行屏蔽,保留直线以下部分,即仅保留水面部分,减少岸边景物对下一步处理的干扰。
4),对直线以下的水面部分的图像应用自适应二值化和Canny边缘检测处理,可能检测的到多个边缘初步认定为垃圾。
5),对于边缘内部的闭合区域面积以及闭合区域的中心点位置进行计算。
6),对于闭合区域的面积进行筛选,提取面积在5至1000像素范围内的闭合区域,即将面积过小的边缘视作水波而排除,将面积较大的边缘视作岸边建筑物倒影等干扰因素而排除。
7),对筛选的到的闭合区域做最小外接正方形并截取,对截取到的局部图像进行图像特征提取后,使用已经过训练的深度神经网络进行分类,判断是否为垃圾。将已判断为垃圾的区域中心点作为垃圾在图像中的坐标位置,结合坐标位置和摄像头视角计算得到垃圾的方位角作为船的航向。设坐标为(x,y),单位为像素,则方位角其中α为摄像头视角。
如图2所示,一种基于机器视觉的水域垃圾自动清洁船,船身主体由两浮筒6和支架1组成,船身支架两侧有推进装置。船身上方支架上设有一俯仰角和方向角可调的太阳能电池板9,电池板的俯仰角和方向角由舵机控制,以实时对准太阳方向。船身前方有摄像头7以及GPS模块8,摄像头7用于采集水面图像。船身下方有垃圾收集网3和导流板5,船体的向前运动中垃圾收集网3能够将垃圾收集至网中。船身内部有船体驱动机构以及控制器2,摄像头7采集的数据传输到控制器2中,控制器对水面图像进行上述处理得到水面垃圾坐标位置,根据水面垃圾坐标位置设定垃圾清洁船的巡航路线,巡航路线包括了所有的垃圾坐标位置,垃圾清洁船根据巡航路线进行,在水面垃圾位置处进行垃圾收集。
太阳能电池板9两侧装有光强传感器,通过光强传感器检测太阳的位置,太阳能电池板9内部装有数字罗盘,通过数字罗盘检测当前太阳能电池板的朝向;通过当前时间和理论公式计算太阳的方位角和高度角,使用PID控制器并通过舵机调整太阳能电池板的方向角和俯仰角,以保证发生船体转向运动时太阳能电池板始终正对太阳,达到最高效率。船体内还带有锂电池辅助供电,并在太阳能发电充足时储存电能。
其中,太阳高度角α表示为:
sinα=sinφsinδ+cosφcosδcosω
太阳方位角γ表示为:
sinγ=cosδsinω/cost
其中δ为赤纬角表示为:
δ=23.45sin[(N-82)×365/370]
N为该日在一年中的序号;ω为时角,表示为:ω=15(t-12),其中t为当地太阳时,单位为小时;φ为当地纬度,可通过GPS模块获得。
进一步的,船体上还设有无线传输模块,该无线传输模块可与遥控器进行无线通信,可通过遥控器手动切换至人工遥控模式并便于监测小船的运行状态。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。