本发明属于图像预处理技术领域,尤其涉及一种机器人视觉图像预处理系统及图像处理方法。
背景技术:
在人的众多感觉中,视觉是人最重要的感觉能力,机器人视觉被认为是研究智能机器人的一个重要分支,视觉定位是机器人视觉最适合的任务之一,它可在自动搬运、装配、焊接、喷涂等工业现场中有广泛的应用,现有的机器人视觉定位技术针对复杂的运动,定位效率较低而且定位不够精确,目前机器人图像识别和视觉定位的方法以及图像处理方法都存在优化范围定位精度不高和定位速度慢的缺陷;同时,现有机器人视觉图像预处理过程中,对采集的视觉图像增强效果较差,不够均衡;另外,由于强光源以及摄像头的镜头等因素,摄像头拍摄的图像经常会产生虚影或炫光。
综上所述,现有技术存在的问题是:
现有机器人视觉定位精度不高,定位速度慢;图像预处理过程中,对采集的视觉图像增强效果较差,不够均衡;同时,由于强光源以及摄像头的镜头等因素,摄像头拍摄的图像经常会产生虚影或炫光。
技术实现要素:
针对现有技术存在的问题,本发明提供了一种机器人视觉图像预处理系统及图像处理方法。
本发明是这样实现的,一种机器人视觉图像预处理方法,所述机器人视觉图像预处理方法包括以下步骤:
步骤一,通过图像采集模块利用摄像头采集机器人周边环境图像数据;
步骤二,主控模块通过图像增强模块利用图像增强程序对采集的图像进行增强处理;图像增强处理中,对待增强图像进行滤波处理;对滤波处理后的待增强图像进行画质增强处理;对画质增强处理后的图像进行区域划分,得到多个图像区域;对多个图像区域进行分析,得到过增强的图像区域和弱增强的图像区域;对过增强的图像区域和弱增强的图像区域进行优化处理;优化处理中,等待,开始优化;用自动门限法进行图像分割,多目标标记;统计目标的形心、尺寸、灰度等特征,判断弱增强的图像区域是否存在,存在,则执行下一步,不存在,则记忆优化,返回;解耦并用自适应滤波计算预测值,判断是否转入相关优化模式;是,则即为增强的图像区域,否,则返回用自动门限法进行图像分割,多目标标记步骤;
对优化处理后的图像区域进行拼接,生成画质增强后的完整图像;
步骤三,通过图像修正模块利用图像修正程序对图像进行修正操作;图像进行修正中,获取图像,获取所述图像中亮度值大于一个预设亮度值的像素点,根据该像素点确定一个最小包围区域,并根据该最小包围区域确定所述图像中虚影和/或炫光所在的区域,修正所述虚影和/或炫光所在的区域;其中,所述确定步骤通过以下步骤确定所述虚影和/或炫光所在的区域:提取该最小包围区域的边界上的像素点,并在该最小包围区域之外为每个提取的像素点查找一个距离最近的像素点;计算所述提取的像素点的亮度值与查找到的对应像素点的亮度值的差值,并判断是否有差值小于一个预设差值;当有提取的像素点的亮度值与查找到的对应像素点的亮度值的差值小于所述预设差值时,根据该亮度值的差值小于预设差值的像素点及所获取的像素点来重新确定一个最小包围区域,并确定该重新确定的最小包围区域为虚影和/或炫光所在的区域;
步骤四,通过图像分割模块利用图像分割程序对图像进行分割处理;通过定位模块对目标标定位置进行视觉定位;视觉定位中,获取标准定位位置处的图像;提取所述图像的边缘点;对所述边缘点进行拟合,得到拟合后的曲线;基于所述拟合后的曲线,计算所述标准定位位置在世界坐标系的坐标;
通过图像特征提取模块利用图像提取程序提取图像特征元素;
步骤五,通过图像存储模块存储器存储采集的图像数据;并通过图像显示模块显示器显示机器人采集的环境图像数据。
进一步,所述对待增强图像进行滤波处理这一步骤,具体为:
依次采用盒式滤波方法、均值滤波方法、高斯滤波方法、中值滤波方法、双边滤波方法和导向滤波方法对待增强图像进行滤波处理。
进一步,所述采用高斯滤波方法对待增强图像进行滤波处理,包括以下步骤:
通过对高斯函数进行离散化,得到多个离散点;
根据多个离散点,获取对应的高斯函数值;
获取待增强图像的像素点数据;
将待增强图像的像素点数据与高斯函数值进行匹配,得到每一个像素点数据对应的高斯函数值;
根据匹配结果,将对应的高斯函数值作为权值,对待增强图像中的每一个像素点做加权平均处理。
进一步,所述对滤波处理后的待增强图像进行画质增强处理,包括以下步骤:
采用线性函数对待增强图像进行第一灰度值变换;
根据第一灰度值变换的结果,采用非线性函数对待增强图像进行第二灰度值变换;根据第二灰度值变换的结果,获取待增强图像的直方图;
通过积分概率密度函数,对待增强图像的直方图进行概率密度转化,得到画质增强后的图像。
进一步,所述提取所述图像的边缘点的步骤具体包括:
对所述图像进行预处理;
对预处理后的图像进行二值化处理;
对二值化处理后的图像进行边缘检测,获得边缘点的坐标;
所述对所述边缘点进行拟合,得到拟合后的曲线的步骤具体包括:
采用最小二乘法对所述边缘点进行拟合;
所述基于所述拟合后的曲线,计算所述标准定位位置在世界坐标系的坐标的步骤包括:
将所述拟合后的曲线表示为参数方程;
根据所述参数方程计算反映所述标准定位位置的点的坐标;
将所述点的坐标转换为世界坐标系中的坐标;
优化处理中,图像灰度范围是{1,2,…,l},n为图像像素总数,ni是灰度为i的像素个数,选择门限k将划分为c0和c1两类,其中c0为{1,2,…,k},c1为{k+1,k+2,…,l},由模式识别理论,
求得两类的类间方差为:
式中
的过程是自动确定门限k的过程,即最佳门限
本发明的另一目的在于提供一种机器人视觉图像预处理系统,所述机器人视觉图像预处理系统包括:
图像采集模块,与主控模块连接,用于通过摄像头采集机器人周边环境图像数据;
主控模块,与图像采集模块、图像增强模块、图像修正模块、图像特征提取模块、图像分割模块、定位模块、图像存储模块、图像显示模块连接,用于通过单片机控制各个模块正常工作;
图像增强模块,与主控模块连接,用于通过图像增强程序对采集的图像进行增强处理;
图像修正模块,与主控模块连接,用于通过图像修正程序对图像进行修正操作;
图像特征提取模块,与主控模块连接,用于通过图像提取程序提取图像特征元素;
图像分割模块,与主控模块连接,用于通过图像分割程序对图像进行分割处理;
定位模块,与主控模块连接,用于对目标标定位置进行视觉定位;
图像存储模块,与主控模块连接,用于通过存储器存储采集的图像数据;
图像显示模块,与主控模块连接,用于通过显示器显示机器人采集的环境图像数据。
本发明的另一目的在于提供一种搭载所述机器人视觉图像预处理系统的机器人。
本发明的另一目的在于提供一种机器人视觉图像预处理程序,应用于计算机,所述机器人视觉图像预处理程序实现所述机器人视觉图像预处理方法。
本发明的另一目的在于提供一种实现所述机器人视觉图像预处理方法的信息数据处理终端。
本发明的另一目的在于提供一种计算机可读存储介质,包括指令,当其在计算机上运行时,使得计算机执行所述的机器人视觉图像预处理方法。
本发明的优点及积极效果为:
本发明通过定位模块可以大大提高视觉定位精度和定位速度;通过图像增强模块对待增强图像进行滤波处理和画质增强处理,然后对图像进行区域划分,并对划分后的图像区域进行优化处理,最终将图像区域进行拼接,得到完整的画质增强后的图像;本发明无需在图像画质增强前对图像进行划分以及识别,可以直接对整个图像进行增强,然后对部分图像进行优化,解决了机器人图像增强速度较慢的问题,提高了图像画质增强的效率;同时,通过图像修正模块可以根据图像中各像素点的亮度值来确定图像中虚影和/或炫光所在的区域,并利用开操作、闭操作、及区域填充等方法对所述区域进行处理,以利用软件的方式修正图像中的虚影和炫光,无需通过硬件的方法来修正,应用方便,并且成本低。
本发明对过增强的图像区域和弱增强的图像区域进行优化处理;优化处理中,等待,开始优化;用自动门限法进行图像分割,多目标标记;统计目标的形心、尺寸、灰度等特征,判断弱增强的图像区域是否存在,存在,则执行下一步,不存在,则记忆优化,返回;解耦并用自适应滤波计算预测值,判断是否转入相关优化模式;是,则即为增强的图像区域,否,则返回用自动门限法进行图像分割,多目标标记步骤;可获得准确的增强的图像。
附图说明
图1是本发明实施例提供的机器人视觉图像预处理方法流程图。
图2是本发明实施例提供的机器人视觉图像预处理系统结构框图。
图2中:1、图像采集模块;2、主控模块;3、图像增强模块;4、图像修正模块;5、图像特征提取模块;6、图像分割模块;7、定位模块;8、图像存储模块;9、图像显示模块。
具体实施方式
为能进一步了解本发明的发明内容、特点及功效,兹例举以下实施例,并配合附图详细说明如下。
下面结合附图对本发明的结构作详细的描述。
如图1所示,本发明提供的机器人视觉图像预处理方法包括以下步骤:
s101,通过图像采集模块利用摄像头采集机器人周边环境图像数据;
s102,主控模块通过图像增强模块利用图像增强程序对采集的图像进行增强处理;
s103,通过图像修正模块利用图像修正程序对图像进行修正操作;通过图像特征提取模块利用图像提取程序提取图像特征元素;
s104,通过图像分割模块利用图像分割程序对图像进行分割处理;通过定位模块对目标标定位置进行视觉定位;
s105,通过图像存储模块存储器存储采集的图像数据;并通过图像显示模块显示器显示机器人采集的环境图像数据。
步骤s102,对过增强的图像区域和弱增强的图像区域进行优化处理;优化处理中,等待,开始优化;用自动门限法进行图像分割,多目标标记;统计目标的形心、尺寸、灰度等特征,判断弱增强的图像区域是否存在,存在,则执行下一步,不存在,则记忆优化,返回;解耦并用自适应滤波计算预测值,判断是否转入相关优化模式;是,则即为增强的图像区域,否,则返回用自动门限法进行图像分割,多目标标记步骤;优化处理中,图像灰度范围是{1,2,…,l},n为图像像素总数,ni是灰度为i的像素个数,选择门限k将划分为c0和c1两类,其中c0为{1,2,…,k},c1为{k+1,k+2,…,l},由模式识别理论,求得两类的类间方差为:
式中
的过程是自动确定门限k的过程,即最佳门限
如图2所示,本发明实施例提供的机器人视觉图像预处理系统包括:图像采集模块1、主控模块2、图像增强模块3、图像修正模块4、图像特征提取模块5、图像分割模块6、定位模块7、图像存储模块8、图像显示模块9。
图像采集模块1,与主控模块2连接,用于通过摄像头采集机器人周边环境图像数据;
主控模块2,与图像采集模块1、图像增强模块3、图像修正模块4、图像特征提取模块5、图像分割模块6、定位模块7、图像存储模块8、图像显示模块9连接,用于通过单片机控制各个模块正常工作;
图像增强模块3,与主控模块2连接,用于通过图像增强程序对采集的图像进行增强处理;
图像修正模块4,与主控模块2连接,用于通过图像修正程序对图像进行修正操作;
图像特征提取模块5,与主控模块2连接,用于通过图像提取程序提取图像特征元素;
图像分割模块6,与主控模块2连接,用于通过图像分割程序对图像进行分割处理;
定位模块7,与主控模块2连接,用于对目标标定位置进行视觉定位;
图像存储模块8,与主控模块2连接,用于通过存储器存储采集的图像数据;
图像显示模块9,与主控模块2连接,用于通过显示器显示机器人采集的环境图像数据。
本发明提供的图像增强模块3增强方法如下:
(1)对待增强图像进行滤波处理;对滤波处理后的待增强图像进行画质增强处理;
(2)对画质增强处理后的图像进行区域划分,得到多个图像区域;对多个图像区域进行分析,得到过增强的图像区域和弱增强的图像区域;
(3)对过增强的图像区域和弱增强的图像区域进行优化处理;对优化处理后的图像区域进行拼接,生成画质增强后的完整图像。
本发明提供的对待增强图像进行滤波处理这一步骤,其具体为:
依次采用盒式滤波方法、均值滤波方法、高斯滤波方法、中值滤波方法、双边滤波方法和导向滤波方法对待增强图像进行滤波处理。
本发明提供的采用高斯滤波方法对待增强图像进行滤波处理这一步骤,包括以下步骤:
通过对高斯函数进行离散化,得到多个离散点;
根据多个离散点,获取对应的高斯函数值;
获取待增强图像的像素点数据;
将待增强图像的像素点数据与高斯函数值进行匹配,得到每一个像素点数据对应的高斯函数值;
根据匹配结果,将对应的高斯函数值作为权值,对待增强图像中的每一个像素点做加权平均处理。
本发明提供的对滤波处理后的待增强图像进行画质增强处理这一步骤,包括以下步骤:
采用线性函数对待增强图像进行第一灰度值变换;
根据第一灰度值变换的结果,采用非线性函数对待增强图像进行第二灰度值变换;根据第二灰度值变换的结果,获取待增强图像的直方图;
通过积分概率密度函数,对待增强图像的直方图进行概率密度转化,得到画质增强后的图像。
本发明提供的图像修正模块4修正方法如下:
1)获取图像;
2)获取所述图像中亮度值大于一个预设亮度值的像素点,根据该像素点确定一个最小包围区域,并根据该最小包围区域确定所述图像中虚影和/或炫光所在的区域;
3)修正所述虚影和/或炫光所在的区域;其中,所述确定步骤通过以下步骤确定所述虚影和/或炫光所在的区域:
提取该最小包围区域的边界上的像素点,并在该最小包围区域之外为每个提取的像素点查找一个距离最近的像素点;
计算所述提取的像素点的亮度值与查找到的对应像素点的亮度值的差值,并判断是否有差值小于一个预设差值;当有提取的像素点的亮度值与查找到的对应像素点的亮度值的差值小于所述预设差值时,根据该亮度值的差值小于预设差值的像素点及所获取的像素点来重新确定一个最小包围区域,并确定该重新确定的最小包围区域为虚影和/或炫光所在的区域。
本发明提供的定位模块7定位方法如下:
a、获取标准定位位置处的图像;
b、提取所述图像的边缘点;
c、对所述边缘点进行拟合,得到拟合后的曲线;
d、基于所述拟合后的曲线,计算所述标准定位位置在世界坐标系的坐标。
本发明提供的“提取所述图像的边缘点”的步骤具体包括:
对所述图像进行预处理;
对预处理后的图像进行二值化处理;
对二值化处理后的图像进行边缘检测,获得边缘点的坐标。
本发明提供的“对所述边缘点进行拟合,得到拟合后的曲线”的步骤具体包括:
采用最小二乘法对所述边缘点进行拟合。
本发明提供的“基于所述拟合后的曲线,计算所述标准定位位置在世界坐标系的坐标”的步骤包括:
将所述拟合后的曲线表示为参数方程;
根据所述参数方程计算反映所述标准定位位置的点的坐标;
将所述点的坐标转换为世界坐标系中的坐标。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用全部或部分地以计算机程序产品的形式实现,所述计算机程序产品包括一个或多个计算机指令。在计算机上加载或执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输)。所述计算机可读取存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solidstatedisk(ssd))等。
以上所述仅是对本发明的较佳实施例而已,并非对本发明作任何形式上的限制,凡是依据本发明的技术实质对以上实施例所做的任何简单修改,等同变化与修饰,均属于本发明技术方案的范围内。