农田微弱导航信息的图像检测方法及系统的制作方法

文档序号:6365922阅读:189来源:国知局
专利名称:农田微弱导航信息的图像检测方法及系统的制作方法
技术领域
本发明涉及机器视觉导航技术领域,特别涉及一种农田微弱导航信息的图像检测方法及系统。
背景技术
农田作业机械自动导航系统是现代农业工程 技术的重要组成部分,其在耕作、播种、施肥、收割、喷洒农药、农田环境信息采集等方面有着广泛的用途。随着以信息化技术为核心的精细农业的快速发展,基于机器视觉的导航技术以其灵活性、实时性和精度好等优点得到了普遍的关注。对于分界区域明显的作业环境,如耕作、收割、插秧等,图像中含有较多的导航信息,但对于播种等田间作业环境,由于区域分界不明显,图像中含有的信息量很少,目标物及非目标物的顔色、纹理等特征十分接近,其导航路径的图像识别一直以来都是个难题未能得到解決。

发明内容
(一 )要解决的技术问题本发明要解决的技术问题是如何在农田区域分界不明显的情况下,实现导航路径的图像识别。( ニ )技术方案为解决上述技术问题,本发明提供了一种农田微弱导航信息的图像检测方法,所述方法包括以下步骤SI :采集当前农田的待检测图像;S2:判断所述待检测图像是否为第一帧图像,若是,则进行第一帧图像的导航直线检测,返回步骤Si,否则进行非第一帧图像的导航直线检测;S3:根据所述非第一帧图像的导航直线检测的结果进行田端检测,判断是否到达田端,若是,则结束检测,否则,返回步骤Si。优选地,所述第一帧图像的导航直线检测具体包括以下步骤Al :对所述待检测图像进行小波行变换,以去除所述待检测图像中各行的高频分量,再对小波行变换后的图像进行反变换,以获得平滑后的待检测图像;A2 :获取所述平滑后的待检测图像中各行的波谷位置的坐标并存储至数组V中,所述平滑后的待检测图像以左上方为坐标原点;A3 :计算所述数组V中各点坐标的X方向坐标的平均值xva,以点(xva, ysize/2)为已知点,对所述数组V中的各点进行过已知点的Hough变换,以获得导航直线,其中,ysize为所述平滑后的待检测图像的y方向的像素个数。优选地,步骤A2中具体包括以下步骤A21 :对所述平滑后的待检测图像进行y方向上的投影以获得累计直方图,计算所述累计直方图中的波谷位置的X方向坐标Xv;
A22 :对所述平滑后的待检测图像里预设行中的第一行,以X方向坐标Xv为中心,左右各扩展第一预设个数的像素为范围,寻找波谷位置的坐标(xvC1,yj并保存至所述数组V中,对所述预设行中的其他行,则以上一行所获得的波谷位置的X方向坐标为中心,左右各扩展所述第一预设个数的像素为范围,寻找波谷位置的坐标并保存至所述数组V中;A23:对所述平滑后的 待检测图像里除所述预设行外的其他行,分别以所述预设行中的波谷位置的X方向坐标的平均值为中心,左右各扩展所述第一预设个数的像素为范围,寻找波谷位置的坐标并保存至所述数组V中。优选地,步骤A3之后还包括以下步骤A4 :将所述导航直线上各点坐标存入导航直线数组L中。5、如权利要求4所述的方法,其特征在干,所述非第一帧图像的导航直线检测具体包括以下步骤BI :将所述待检测图像的上ー帧图像对应的数组V中大于等于预设坐标(Χ(ι,%)的y方向值的坐标存入数组Vt中,将所述待检测图像的上一帧图像对应的导航直线数组L中小于预设坐标(X(l,y0)的y方向值的坐标存入数组Lb中,所述待检测图像以左上方为坐标原点;B2 :计算所述数组Vt内各点的X方向坐标的平均值xvta,以点(xvta,y0/2)为已知点,对所述数组Vt内各点进行过已知点的Hough变换,以获得拟合直线lt,将所述拟合直线It上各点坐标存入数组Lt中;B3 :分别以所述数组Lt和数组Lb中各点坐标为中心,各行向左右各扩展第二预设个数的像素为处理区域范围;B4 :对所述待检测图像中的处理区域范围内的图像进行小波行变换,以去除所述待检测图像中的处理区域范围内各行的高频分量,再对小波行变换后的图像进行反变换,以获得平滑后的待检测图像中处理区域范围内的图像;B5:获取所述平滑后的待检测图像中的处理区域范围内的图像中各行的波谷位置的坐标并存储至数组V中;B6 :计算所述数组V中各点坐标的X方向坐标的平均值xva,以点(xva, ysize/2)为已知点,对所述数组V中的各点进行过已知点的Hough变换,以获得导航直线,其中,ysize为所述待检测图像中的处理区域范围内的图像中y方向的像素个数;B7 :将所述待检测图像的导航直线上各点坐标存入导航直线数组L中。优选地,所述第二预设个数m通过下式计算,m = tana Xysize/2其中,a为允许的最大侧向偏转角,ysize为所述待检测图像中的处理区域范围内的图像中I方向的像素个数。优选地,步骤S3中具体通过如下步骤来判断是否到达田端Cl :对所述平滑后的待检测图像中的处理区域范围内的图像对应的数组V中大于预设坐标(X(i,y0)的I方向值的预设个数的坐标计算X方向的平均值xt ;C2 :对所述平滑后的待检测图像中的处理区域范围内的图像对应的数组V中小于预设坐标(X(i,y0)的I方向值的预设个数的坐标计算X方向的平均值xd ;C3 :若满足I Xt-Xd I > 2m,则判断为到达田端,否则返回步骤SI。
本发明还公开了ー种农田微弱导航信息的图像检测系统,所述系统包括图像采集模块,用于采集当前农田的待检测图像;判断检测模块,用于判断所述待检测图像是否为第一帧图像,若是,则进行第一帧图像的导航直线检测,返回图像采集模块,否则进行非第一帧图像的导航直线检测;田端检测模块,用于根据所述非第一帧图像的导航直线检测的结果进行田端检测,判断是否到达田端,若是,则结束检测,否则,返回图像采集模块。(三)有益效果本发明通过针对具有微弱导航信息的农田作业环境,利用小波变换与线形分析、前后帧相互关联及分段Hough变换等方法,在农田区域分界不明显的情况下,实现了导航 路径的图像识别,并且检测结果准确、稳定和快速。


图I是本发明的方法的硬件结构的结构示意图;图2是按照本发明ー种实施方式的农田微弱导航信息的图像检测方法的流程图;图3是本发明一种实施例的第一帧图像的导航直线检测的结果示意图;图4是本发明一种实施例的非第一帧图像的导航直线检测的结果示意图;图5是本发明一种实施例的判断是否到达田端的结果示意图。
具体实施例方式下面结合附图和实施例,对本发明的具体实施方式
作进ー步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。參照图1,本发明的方法的硬件结构为连接了摄像机的农业机械,在农业机械在刚开始作业时,通常沿着农田边的田埂与农田的分界线直线行走,在作业过程中则沿着已作业地与未作业地的分界线直线行走。因此,为了实现自动导航,需要对这些分界区域的导航直线进行检测。本实施方式中将摄像机(分辨率为640x480,帧率为30帧/秒)安装在农业机械的前方侧面,从行走目标的正上方采集导航目标(田埂与农田、已作业地与未作业地的分界线)的图像;摄像机安装的高度和俯视角度,在能够获得控制农业机械正常行走所需要的区域分界线长度的基础上,以尽量拍摄到近视野信息为原则进行确定。图2是按照本发明ー种实施方式的农田微弱导航信息的图像检测方法的流程图;參照图2,本实施方式的方法包括以下步骤SI :采集当前农田的待检测图像;S2:判断所述待检测图像是否为第一帧图像,若是,则进行第一帧图像的导航直线检测,返回步骤Si,否则进行非第一帧图像的导航直线检测;S3:根据所述非第一帧图像的导航直线检测的结果进行田端检测,判断是否到达田端,若是,则结束检测,否则,返回步骤Si。优选地,所述第一帧图像的导航直线检测具体包括以下步骤Al :对所述待检测图像进行小波行变换,以去除所述待检测图像中各行的高频分量,再对小波行变换后的图像进行反变换,以获得平滑后的待检测图像;A2 :获取所述平滑后的待检测图像中各行的波谷位置的坐标并存储至数组V中,所述平滑后的待检测图像以左上方为坐标原点;A3 :计算所述数组V中各点坐标的X方向坐标的平均值xva,以点(xva, ysize/2)为已知点,对所述数组V中的各点进行过已知点的Hough变换,以获得导航直线,其中,ysize为所述平滑后的待检测图像的y方向的像素个数。优选地,步骤A2中具体包括以下步骤A21 :对所述平滑后的待检测图像进行I方向上的投影以获得累计直方图,计算所述累计直方图中的波谷位置的X方向坐标Xv ;A22 :对所述平滑后的待检测图像里预设行中的第一行,以X方向坐标Xv为中心,左右各扩展第一预设个数的像素为范围,寻找波谷位置的坐标(xvC1,yj并保存至所述数组V中,对所述预设行中的其他行,则以上一行所获得的波谷位置的X方向坐标为中心,左右各扩展所述第一预设个数的像素 为范围,寻找波谷位置的坐标并保存至所述数组V中;A23:对所述平滑后的待检测图像里除所述预设行外的其他行,分别以所述预设行中的波谷位置的X方向坐标的平均值为中心,左右各扩展所述第一预设个数的像素为范围,寻找波谷位置的坐标并保存至所述数组V中。优选地,步骤A3之后还包括以下步骤A4 :将所述导航直线上各点坐标存入导航直线数组L中。优选地,所述非第一帧图像的导航直线检测具体包括以下步骤BI :将所述待检测图像的上ー帧图像对应的数组V中大于等于预设坐标( ,%)的y方向值的坐标存入数组Vt中,将所述待检测图像的上一帧图像对应的导航直线数组L中小于预设坐标(X(l,y0)的y方向值的坐标存入数组Lb中,所述待检测图像以左上方为坐标原点;B2 :计算所述数组Vt内各点的X方向坐标的平均值xvta,以点(xvta,y0/2)为已知点,对所述数组Vt内各点进行过已知点的Hough变换,以获得拟合直线lt,将所述拟合直线It上各点坐标存入数组Lt中;B3 :分别以所述数组Lt和数组Lb中各点坐标为中心,各行向左右各扩展第二预设个数的像素为处理区域范围;B4 :对所述待检测图像中的处理区域范围内的图像进行小波行变换,以去除所述待检测图像中的处理区域范围内各行的高频分量,再对小波行变换后的图像进行反变换,以获得平滑后的待检测图像中处理区域范围内的图像;B5:获取所述平滑后的待检测图像中的处理区域范围内的图像中各行的波谷位置的坐标并存储至数组V中;B6 :计算所述数组V中各点坐标的X方向坐标的平均值xva,以点(xva, ysize/2)为已知点,对所述数组V中的各点进行过已知点的Hough变换,以获得导航直线,其中,ysize为所述待检测图像中的处理区域范围内的图像中y方向的像素个数;B7 :将所述待检测图像的导航直线上各点坐标存入导航直线数组L中。优选地,所述第二预设个数m通过下式计算,m = tan α X ysize/2其中,α为允许的最大侧向偏转角,ysize为所述待检测图像中的处理区域范围内的图像中I方向的像素个数。
优选地,步骤S3中具体通过如下步骤来判断是否到达田端Cl :对所述平滑后的待检测图像中的处理区域范围内的图像对应的数组V中大于预设坐标(X(i,y0)的I方向值的预设个数的坐标计算X方向的平均值xt ;C2 :对所述平滑后的待检测图像中的处理区域范围内的图像对应的数组V中小于预设坐标(X(i,y0)的I方向值的预设个数的坐标计算X方向的平均值xd ;C3 :若满足I Xt-Xd I > 2m,则判断为到达田端,否则返回步骤SI。实施例I本实施例中,所述第一帧图像的导航直线检测先对于摄像机采集到的彩色图像序列,再找出整幅图像中最大的颜色分量并对该分量图像进行一维Daubechies小波行变换, 去除高频噪声,实现图像平滑处理,然后计算平滑后图像的垂直累计直方图并确定波谷位置,以波谷置开始,至下而上逐行分析线形特征,寻找候补点,最终完成导航直线的检测。参照图3,本实施例中,所述第一帧图像的导航直线检测的具体步骤如下(I)、利用小波系数N = 8的Daubechies小波对整幅图像进行逐行变换,去除各行中的高频分量后,进行反变换,如此进行3次得到平滑后的图像。(2)、对平滑后的图像数据进行垂直方向上的投影(即y方向投影)以获得累计直方图,计算累计直方图中波谷位置的坐标并记为Xv,定义用于存放各行候补点的数组V,之后从图像下方开始,自下向上扫描前10行像素。在扫描第一行像素时,以xv为中点,左右各扩展5个像素作为范围,在此范围内寻找波谷位置记作(xvCI,yj并存入数组V中。扫描第二行像素时,以xv0为中心,同样左右各扩展5个像素作为范围寻找第二行的波谷位置记作(xvl,yvl)并存入数组V中。之后8行以此类推(如图2所示)。(3)、从第10行开始,每次均以其前10行波谷位置的平均值作为中心,左右各扩展5个像素作为扫描范围寻找当前行波谷直至图像顶端,每次寻找到波谷后,都将其位置坐标存入数组V中。(4)、计算数组V中各点坐标的X方向坐标的平均值记为xva,以点(xva,ysize/2)为已知点对数组V进行过已知点的快速Hough变换获得导航直线。统计导航直线的各点的坐标并存入数组L中,其中L中坐标个数与图像高度ysize的像素个数相同。本实施例中,从第2帧图像开始,以后各帧图像均和其前一帧进行关联,利用上一帧的候补点群进行分段Hough变换,根据Hough变换获得的直线重新确定各行的处理区域并进行小波平滑处理。其中,进行小波平滑的图像同样为彩色图像中最大颜色的分量图像。之后,在平滑后的图像行内分析线形特征,寻找当前帧的候补点群,完成导航直线的检测。参照图4,所述非第一帧图像的导航直线检测的具体步骤如下。(I)、将数组V中存放的上一帧图像上方ysize/4长度内的各行候补点群数据存入数组Vt中,计算Vt内各点的X方向坐标的平均值记为Xvta,以点(xvta,ysize/8)为已知点,对Vt进行过已知点的Hough变换并得到拟合直线lt,之后将It上各点坐标存入数组Lt中。(2)、将数组L中表示图像下方3ysize/4长度内的数据点存入数组Lb中。(3)、对于图像上方ysize/4长度,以数组Lt中各点数据为中心,各行向左右分别扩展m个像素宽度(m = tana XySize/2,其中,a为作业时允许的最大侧向偏转角,且本实施例中取值为3° ),缩小横向处理区域范围为lti-m至lti+m(如图4中虚线所示;其中,Iti表示数组Lt中的各个数据的X方向坐标)并对该区域进行小波平滑处理(该处理方式与所述第一帧图像的导航直线检测的方式相同)。之后,计算得到y方向上ysize/8处(ysize/4长度的中心)下方10行的波谷信息,从ysize/8处开始向上寻找直至图像顶端(该寻找方式与所述第一帧图像的导航直线检测的方式相同)。同理,对于ysize/4区域的下半部分,首先获得y方向上ysize/8处上方10行的波谷位置信息,之后从ysize/8处开始向下寻找直至图像ysize/4处。在查找过程中,每当找到相应候补点后,将其对应存入数组V中。(4)对于图像下方3ysize/4长度,以数组Lb中各点数据为中心,各行同样向左右分别扩展m个像素宽度,缩小横向处理区域范围为lbi-m至lbi+m(如图4中虚线所示;其中,Ibi表示数组Lb中的各个数据的X方向坐标)并对该区域进行小波平滑处理。计算图像y方向上5ysize/8处(图像下方3ysize/4长度的中心)下方10行的波谷信息,之后从5ysiZe/8处开始利用类似所述第一帧图像的导航直线检测的步骤(3)中所述的方法向上寻找直至图像ysize/4处。同理,对于3ysiZe/4区域的下半部分,采用类似方法完成各行候补点的寻找。每当查找到相应的候补点后,将其对应存入数组V中。(5)、利用类似所述第一帧图像的导航直线检测的步骤(4)中的方法对数组V进行过已知点的Hough变换获得当前帧的导航直线并将其各点各坐标存入数组L中。本实施例中,从第2帧图像开始,需要考虑作业机械是否到达田端。由于田端处不会出现区域分界线,故可利用该特征完成田端的检测,参照图5,本实施例中通过如下步骤来判断是否到达田端完成对所述非第一帧图像的导航直线检测后,查看当前帧图像中y方向上ysize/4处上下各10行的候补点群数据。即读取数组V中ysize/4处上下各10行的数据。计算其X方向坐标的平均值,并分别记为Xt及&。若|xt_xdl > 2m,则认为达到了田端,停止检测(如图5所示),否则继续进行图像的采集。本发明还公开了一种农田微弱导航信息的图像检测系统,所述系统包括图像采集模块,用于采集当前农田的待检测图像;判断检测模块,用于判断所述待检测图像是否为第一帧图像,若是,则进行第一帧图像的导航直线检测,返回图像采集模块,否则进行非第一帧图像的导航直线检测;
田端检测模块,用于根据所述非第一帧图像的导航直线检测的结果进行田端检测,判断是否到达田端,若是,则结束检测,否则,返回图像采集模块。以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。
权利要求
1.一种农田微弱导航信息的图像检测方法,其特征在于,所述方法包括以下步骤Si:采集当前农田的待检测图像;S2:判断所述待检测图像是否为第一帧图像,若是,则进行第一帧图像的导航直线检测,返回步骤SI,否则进行非第一帧图像的导航直线检测;S3:根据所述非第一帧图像的导航直线检测的结果进行田端检测,判断是否到达田端, 若是,则结束检测,否则,返回步骤SI。
2.如权利要求I所述的方法,其特征在于,所述第一帧图像的导航直线检测具体包括以下步骤Al :对所述待检测图像进行小波行变换,以去除所述待检测图像中各行的高频分量,再对小波行变换后的图像进行反变换,以获得平滑后的待检测图像;A2 :获取所述平滑后的待检测图像中各行的波谷位置的坐标并存储至数组V中,所述平滑后的待检测图像以左上方为坐标原点;A3 :计算所述数组V中各点坐标的X方向坐标的平均值xva,以点(xva,ysize/2)为已知点,对所述数组V中的各点进行过已知点的Hough变换,以获得导航直线,其中,ysize为所述平滑后的待检测图像的y方向的像素个数。
3.如权利要求2所述的方法,其特征在于,步骤A2中具体包括以下步骤A21 :对所述平滑后的待检测图像进行y方向上的投影以获得累计直方图,计算所述累计直方图中的波谷位置的X方向坐标Xv ;A22 :对所述平滑后的待检测图像里预设行中的第一行,以X方向坐标Xv为中心,左右各扩展第一预设个数的像素为范围,寻找波谷位置的坐标(xvC1,yv。)并保存至所述数组V中, 对所述预设行中的其他行,则以上一行所获得的波谷位置的X方向坐标为中心,左右各扩展所述第一预设个数的像素为范围,寻找波谷位置的坐标并保存至所述数组V中;A23 :对所述平滑后的待检测图像里除所述预设行外的其他行,分别以所述预设行中的波谷位置的X方向坐标的平均值为中心,左右各扩展所述第一预设个数的像素为范围,寻找波谷位置的坐标并保存至所述数组V中。
4.如权利要求2所述的方法,其特征在于,步骤A3之后还包括以下步骤A4 :将所述导航直线上各点坐标存入导航直线数组L中。
5.如权利要求4所述的方法,其特征在于,所述非第一帧图像的导航直线检测具体包括以下步骤BI :将所述待检测图像的上一帧图像对应的数组V中大于等于预设坐标( ,%)的y方向值的坐标存入数组Vt中,将所述待检测图像的上一帧图像对应的导航直线数组L中小于预设坐标( ,%)的y方向值的坐标存入数组Lb中,所述待检测图像以左上方为坐标原点; B2 :计算所述数组Vt内各点的X方向坐标的平均值Xvta,以点(Xvta,y(1/2)为已知点,对所述数组Vt内各点进行过已知点的Hough变换,以获得拟合直线lt,将所述拟合直线It上各点坐标存入数组Lt中;B3 :分别以所述数组Lt和数组Lb中各点坐标为中心,各行向左右各扩展第二预设个数的像素为处理区域范围;B4 :对所述待检测图像中的处理区域范围内的图像进行小波行变换,以去除所述待检测图像中的处理区域范围内各行的高频分量,再对小波行变换后的图像进行反变换,以获得平滑后的待检测图像中处理区域范围内的图像;B5 :获取所述平滑后的待检测图像中的处理区域范围内的图像中各行的波谷位置的坐标并存储至数组V中;B6 :计算所述数组V中各点坐标的X方向坐标的平均值xva,以点(xva,ysize/2)为已知点,对所述数组V中的各点进行过已知点的Hough变换,以获得导航直线,其中,ysize为所述待检测图像中的处理区域范围内的图像中y方向的像素个数;B7 :将所述待检测图像的导航直线上各点坐标存入导航直线数组L中。
6.如权利要求5所述的方法,其特征在于,所述第二预设个数m通过下式计算,m = tana Xysize/2其中,a为允许的最大侧向偏转角,ysize为所述待检测图像中的处理区域范围内的图像中y方向的像素个数。
7.如权利要求6所述的方法,其特征在于,步骤S3中具体通过如下步骤来判断是否到达田端Cl :对所述平滑后的待检测图像中的处理区域范围内的图像对应的数组V中大于预设坐标(Xci, y0)的I方向值的预设个数的坐标计算X方向的平均值Xt ;C2 :对所述平滑后的待检测图像中的处理区域范围内的图像对应的数组V中小于预设坐标(Xci, y0)的I方向值的预设个数的坐标计算X方向的平均值Xd ;C3 :若满足|xt-xd| > 2m,则判断为到达田端,否则返回步骤SI。
8.—种农田微弱导航信息的图像检测系统,其特征在于,所述系统包括图像采集模块,用于采集当前农田的待检测图像;判断检测模块,用于判断所述待检测图像是否为第一帧图像,若是,则进行第一帧图像的导航直线检测,返回图像采集模块,否则进行非第一帧图像的导航直线检测;田端检测模块,用于根据所述非第一帧图像的导航直线检测的结果进行田端检测,判断是否到达田端,若是,则结束检测,否则,返回图像采集模块。
全文摘要
本发明公开了一种农田微弱导航信息的图像检测方法及系统,涉及机器视觉导航技术领域,所述方法包括以下步骤S1采集当前农田的待检测图像;S2判断所述待检测图像是否为第一帧图像,若是,则进行第一帧图像的导航直线检测,返回步骤S1,否则进行非第一帧图像的导航直线检测;S3根据所述非第一帧图像的导航直线检测的结果进行田端检测,判断是否到达田端,若是,则结束检测,否则,返回步骤S1。本发明通过针对具有微弱导航信息的农田作业环境,利用小波变换与线形分析、前后帧相互关联及分段Hough变换等方法,在农田区域分界不明显的情况下,实现了导航路径的图像识别,并且检测结果准确、稳定和快速。
文档编号G06K9/00GK102629317SQ201210058950
公开日2012年8月8日 申请日期2012年3月7日 优先权日2012年3月7日
发明者刘阳, 陈兵旗 申请人:中国农业大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1