本发明涉及图像增强,具体涉及一种基于图像处理的机械臂定位抓取方法及系统。
背景技术:
1、机械臂定位抓取是指通过视觉感知或者其他传感器获取目标物体的位置信息,然后使用机械臂执行精确的抓取动作。现有方法中在机械臂末端安装视觉传感器采集拍摄画面,根据拍摄画面中目标物体的位置,规划机械臂的运动路径,准确抓取目标物体。
2、在实际情况中,目标物体在传送带上处于移动状态,视觉传感器对捕捉的每一帧目标物体的图像进行分析时,每一帧目标物体的图像中容易出现目标物体运动模糊现象,导致目标物体的定位不准确,进而使得机械臂不能准确抓取目标物体。
技术实现思路
1、为了解决每一帧目标物体的图像中容易出现目标物体运动模糊现象,导致目标物体的定位不准确的技术问题,本发明的目的在于提供一种基于图像处理的机械臂定位抓取方法及系统,所采用的技术方案具体如下:
2、第一方面,本发明一个实施例提供了一种基于图像处理的机械臂定位抓取方法,该方法包括以下步骤:
3、获取连续预设数量帧目标物体的灰度图像;
4、根据灰度图像中连通域的大小,获取每帧灰度图像中的目标区域;根据相邻两帧灰度图像的目标区域内相同像素点的位置变化,获取目标区域内每个像素点的移动向量;根据每个目标区域内移动向量长度的变化情况,获取每个目标区域的增强值,筛选出模糊区域;
5、将模糊区域所在的灰度图像及其之前的所有灰度图像,作为模糊区域的参考图像;根据每帧参考图像的目标区域内每个像素点的移动向量角度的变化速度,每帧参考图像的目标区域内每个像素点的移动向量与前一帧参考图像中相同像素点的移动向量之间的角度变化,每帧参考图像的目标区域的增强值和每帧参考图像的目标区域内每个像素点与周围像素点之间的移动向量模长差异的波动,获取每帧参考图像的目标区域内每个像素点的模糊值;
6、根据模糊区域内每个像素点在对应参考图像中相同像素点的模糊值的变化趋势,对模糊区域内每个像素点的模糊值进行修正,获取模糊区域内每个像素点的实际模糊值;
7、根据所述实际模糊值对模糊区域内每个像素点的灰度值进行调整,获得增强模糊区域,进行机械臂定位抓取。
8、进一步地,所述目标区域的获取方法为:
9、通过连通域算法,获取每帧灰度图像中的连通域;
10、将每帧灰度图像中最大面积的连通域,作为每帧灰度图像中的目标区域;其中,每帧灰度图像中的目标区域均为目标物体所在的区域,每个目标区域中的像素点数量相同。
11、进一步地,所述根据每个目标区域内移动向量长度的变化情况,获取每个目标区域的增强值,筛选出模糊区域的方法为:
12、对于任一目标区域,获取该目标区域内每个像素点的移动向量长度;
13、获取该目标区域内最大移动向量长度与最小移动向量长度的相加结果,作为该目标区内移动向量长度的变化权重;
14、通过变化权重,对该目标区域内最大移动向量长度与最小移动向量长度的差值,进行调整,获取该目标区域的整体变化值;
15、根据该目标区域的整体变化值和该目标区域内移动向量长度的方差,获取该目标区域的增强值;
16、当归一化的增强值大于预设的增强值阈值时,将对应的目标区域作为模糊区域。
17、进一步地,所述增强值的计算公式为:
18、
19、式中,为第q个目标区域的增强值;为第q个目标区域内最大移动向量长度;为第q个目标区域内最小移动向量长度;为第q个目标区域的变化权重;为第q个目标区域内移动向量长度的方差。
20、进一步地,所述根据每帧参考图像的目标区域内每个像素点的移动向量角度的变化速度,每帧参考图像的目标区域内每个像素点的移动向量与前一帧参考图像中相同像素点的移动向量之间的角度变化,每帧参考图像的目标区域的增强值和每帧参考图像的目标区域内每个像素点与周围像素点之间的移动向量模长差异的波动,获取每帧参考图像的目标区域内每个像素点的模糊值的方法为:
21、获取相邻两帧参考图像之间的时间间隔的大小,作为第一时长;其中,每相邻两帧参考图像之间的时间间隔均相等;
22、获取第k帧参考图像的目标区域内每个像素点的移动向量角度的大小与第一时长的比值,作为第k帧参考图像的目标区域内对应像素点的移动向量的角速度;
23、根据第k帧参考图像的目标区域内每个像素点与第(k-1)帧参考图像中相同像素点之间的移动向量角度大小的差异,第一时长,以及第(k-1)帧参考图像的目标区域内每个像素点的移动向量的角速度,获取第k帧参考图像的目标区域内每个像素点的移动向量的角度加速度;
24、根据第k帧参考图像的目标区域内每个像素点的移动向量的角速度和角度加速度,以及第k帧参考图像的目标区域的增强值和第k帧参考图像的目标区域内每个像素点与四邻域像素点之间的移动向量模长差异的波动,获取第k帧参考图像的目标区域内每个像素点的模糊值。
25、进一步地,所述角度加速度的计算公式为:
26、
27、
28、式中,为第k帧参考图像的目标区域内第i个像素点的移动向量的角度加速度;为第k帧参考图像的目标区域内第i个像素点的移动向量角度的大小;为第(k-1)帧参考图像的目标区域内第i个像素点的移动向量角度的大小;为第(k-1)帧参考图像的目标区域内第i个像素点的移动向量的角速度;t为第一时长。
29、进一步地,所述模糊值的计算公式为:
30、
31、式中,为第k帧参考图像的目标区域内第i个像素点的模糊值;为第k帧参考图像的目标区域的增强值;为第k帧参考图像的目标区域内第i个像素点的移动向量角度的大小;t为第一时长;为第k帧参考图像的目标区域内第i个像素点的移动向量的角速度;为第k帧参考图像的目标区域内第i个像素点的移动向量的角度加速度;n为第k帧参考图像的目标区域内第i个像素点的邻域像素点的总数量;为第k帧参考图像的目标区域内第i个像素点的移动向量模长;为第k帧参考图像的目标区域内第i个像素点的第n个邻域像素点的移动向量模长;为第k帧参考图像的目标区域内第i个像素点与每个邻域像素点的移动向量模长差值的均值。
32、进一步地,所述实际模糊值的获取方法为:
33、对于任一模糊区域,将该模糊区域内第j个像素点作为目标像素点;
34、将该模糊区域的参考图像中与目标像素点相同的像素点的模糊值根据时间顺序进行排序,获得模糊值序列;
35、从模糊值序列的最后一个模糊值开始,减去相邻的前一个模糊值,将获得的差值作为目标差值;
36、当目标差值小于预设的目标差值阈值时,停止获取目标差值;
37、将获取的目标差值进行累加的结果,作为第一结果;
38、将参与获取第一结果的模糊值数量,作为第一数量;
39、将第一结果与第一数量的乘积,作为调节值;
40、将归一化的调节值,作为该模糊区域内第j个像素点的第一权重;
41、将该模糊区域内第j个像素点的第一权重与模糊值的乘积,作为该模糊区域中第j个像素点的实际模糊值。
42、进一步地,所述根据所述实际模糊值对模糊区域内每个像素点的灰度值进行调整的方法为:
43、将模糊区域内每个像素点的实际模糊值进行归一化的结果,作为对应像素点的模糊特征值;
44、将模糊特征值进行负相关的结果,作为对应像素点的非模糊特征值;
45、当模糊特征值大于预设的模糊特征值阈值时,将对应像素点的灰度值与非模糊特征值的乘积,作为对应像素点的调整灰度值;
46、当模糊分界值小于或者等于预设的分界值阈值时,获取对应像素点的灰度值与非模糊特征值的乘积,作为对应像素点的灰度调整值;将对应像素点的灰度值与灰度调整值的相加结果,作为对应像素点的调整灰度值。
47、第二方面,本发明另一个实施例提供了一种基于图像处理的机械臂定位抓取系统,该系统包括:存储器、处理器以及存储在所述存储器中并可在处理器上运行的计算机程序,处理器执行所述计算机程序时,实现上述任意一项方法的步骤。
48、本发明具有如下有益效果:
49、根据灰度图像中连通域的大小,获取每帧灰度图像中的目标区域,确定每帧灰度图像中目标物体所在的位置,初步确定每帧灰度图像中的目标物体进行定位识别;进而根据相邻两帧灰度图像的目标区域内相同像素点的位置变化,获取目标区域内每个像素点的移动向量,为分析每个目标区域内是否存在运动模糊现象做准备,进而根据每个目标区域内移动向量长度的变化情况,获取每个目标区域的增强值,筛选出模糊区域,对模糊区域进行分析,提高对运动模糊缺陷进行处理的效率;为了对模糊区域进行准确增强,进而将模糊区域所在的灰度图像及其之前的所有灰度图像,作为模糊区域的参考图像,基于参考图像中目标区域内每个像素点的移动向量的变化和分布情况,进而准确高效的获取模糊区域内每个像素点的实际模糊值,对模糊区域内每个像素点的灰度值进行准确调整,准确对模糊区域进行增强,进而对每帧灰度图像中的目标物体进行准确定位识别,使得机械臂准确高效抓取目标物体。