一种基于形态特征和单目测量的机器人自主捡球方法与流程

专利2022-05-09  28



1.本发明属于图像处理和深度学习技术领域,具体涉及一种基于形态特征和单目测量的机器人自主捡球方法。


背景技术:

2.随着现代人对身体健康的重视,羽毛球成为越来越多人选择的运动方式,同时我国又是羽毛球强国,存在大量的羽毛球专业运动员。在专业的羽毛球训练中,大量掉落在地上的羽毛球需要浪费大量的人力进行拾取,浪费时间的同时,更导致腰椎的损伤,减少了职业寿命,对于普通人的锻炼目的更是适得其反。
3.目前针对羽毛球的拾取主要是依靠人力,即使有一些拾取工具,仍然需要人参与,不能在训练间隙得到良好的休息,不但浪费人力时间,而且会影响训练效果,更重要的是,由于人工拾取强度较大,所以长期的捡球会增加腰椎负担,影响身体健康。


技术实现要素:

4.发明目的:为了克服现有技术中存在的不足,提供一种基于形态特征和单目测量的机器人自主捡球方法,其通过设计自主捡球机器人,无需人力参与即可以自动拾取识别球场上的羽毛球,通过单目摄像头的距离测量和卷积神经网络的羽毛球特征提取,使得羽毛球识别拾取机器人自动运行到目标羽毛球所在位置,创新性的使用单目摄像头测量羽毛球的位置信息,搭建了用于羽毛球识别的卷积神经网路并且设计了一种针对多个羽毛球的路径规划方法,具有识别精准,拾取效率高的特点,对准确快速寻找羽毛球、提高羽毛球拾取效率、降低人工的拾取强度具有重大意义。
5.技术方案:为实现上述目的,本发明提供一种基于形态特征和单目测量的机器人自主捡球方法,包括如下步骤:
6.s1:通过机器人采集存在梯形畸变羽毛球和球场彩色图像信息,得到正投影形式下的羽毛球及球场彩色图像信息;
7.s2:对得到的羽毛球及球场彩色图像信息进行数据处理,通过设计一种针对无测距功能的单目摄像头的目标物体位置信息测量方法获得存在梯形畸变羽毛球和球场彩色图像与实际位置距离的映射关系;
8.s3:利用搭建和训练好的特征提取网络寻找得到目标羽毛球质心的像素点位置,根据步骤s2获得的映射关系得到目标羽毛球的位置信息;
9.s4:根据目标羽毛球的位置信息,获取目标羽毛球和机器人的实际相对位置,完成机器人的运动路径规划;
10.s5:上位机根据机器人的运动路径规划结果,控制机器人运动至目标羽毛球位置,并完成机器人对羽毛球的拾取操作。
11.进一步地,所述步骤s1中机器人通过单目摄像头采集存在梯形畸变羽毛球和球场彩色图像信息。
12.进一步地,所述步骤s2中数据处理的具体方法为:
13.a1:对采集得到的存在梯形畸变的羽毛球及球场彩色图像信息进行预处理,得到存在梯形畸变的羽毛球及球场彩色图像信息中的羽毛球场边缘信息;
14.a2:对步骤a1获取的羽毛球场边缘信息进行处理,通过透视变换矫正采集得到的存在梯形畸变的羽毛球及球场彩色图像信息,得到正投影形式下的羽毛球及球场彩色图像信息和羽毛球及球场的实际位置距离和存在梯形畸变羽毛球及球场彩色图像信息的映射关系。
15.进一步地,所述步骤a1中预处理的方法为:
16.b1:对采集得到的存在梯形畸变的羽毛球及球场彩色图像信息进行灰度变换,得到并保存存在梯形畸变的羽毛球及球场灰度图像;
17.b2:使用高斯滤波器对存在梯形畸变的羽毛球及球场灰度图像进行滤波,消除图像数字化时所混入的噪声,简化图像所带的信息,得到滤波处理后的存在梯形畸变的羽毛球及球场灰度图像;
18.b3:用模板掩码计算滤波处理后的存在梯形畸变的羽毛球及球场灰度图像的灰度的梯度的幅值和方向,并进行非极大值抑制,得到存在梯形畸变的羽毛球及球场灰度边缘图像。
19.所述步骤b1包括:
20.根据以下公式,对所述采集得到的存在梯形畸变的羽毛球及球场彩色图像信息进行灰度变换处理,得到存在梯形畸变的羽毛球及球场灰度图像:
21.gray_c(i
g
,j
g
)=c
r
×
r(i
g
,j
g
) c
g
×
g(i
g
,j
g
) c
b
×
b(i
g
,j
g
)
22.其中,gray_c(i
g
,j
g
)为存在梯形畸变的羽毛球及球场灰度图像中第i
g
行和第j
g
列的像素点灰度值,c
r
、c
g
和c
b
分别为存在梯形畸变的羽毛球及球场彩色图像中各像素点的红色、绿色及蓝色三色的权值,并且取值c
r
=0.299、c
g
=0.587和c
b
=0.144,r(i
g
,j
g
)、g(i
g
,j
g
)和b(i
g
,j
g
)分别为存在梯形畸变的羽毛球及球场灰度图像中第i
g
行和第j
g
列像素点的红色、绿色及蓝色分量值。
23.所述步骤b2包括:
24.高斯滤波器的原理为根据待滤波的像素点及其邻域点的灰度值按照高斯公式生成的参数规则进行加权平均,这样可以有效滤去存在梯形畸变的羽毛球及球场灰度图像中叠加的高频噪声。二维高斯公式如下:
[0025][0026]
其中,g0(x
g
,y
g
)为距离待滤波的像素点x
g
行,y
g
列的像素点的加权平均权值,a为加权比例系数,u
x
,u
y
分别表示待滤波的像素点位于存在梯形畸变的羽毛球及球场灰度图像的第u
x
行和第u
y
列像素点,σ为存在梯形畸变的羽毛球及球场灰度图像的标准方差。经过高斯滤波器后,得到了滤波处理后的存在梯形畸变的羽毛球及球场灰度图像。
[0027]
所述步骤b3包括:
[0028]
根据以下模板掩码计算所述滤波处理后的存在梯形畸变的羽毛球及球场灰度图像的羽毛球场边缘。
[0029][0030][0031][0032]
其中s
x
为x方向上的模板掩码,用于检测y方向的存在梯形畸变的羽毛球及球场灰度图像的羽毛球场边缘,s
y
为y方向上的模板掩码,用于检测x方向的存在梯形畸变的羽毛球及球场灰度图像的羽毛球场边缘,k
s
表示邻域标记矩阵,[i
e
,j
e
]表示待计算像素点位于存在梯形畸变的羽毛球及球场灰度图像的第i
e
行,第j
e
列像素点,表示待计算像素点相邻的八个像素点在存在梯形畸变的羽毛球及球场灰度图像中的灰度值。
[0033]
根据以上两个模板掩码,可以计算出存在梯形畸变的羽毛球及球场灰度图像的梯度幅值及相应的方向:
[0034]
g
x
=s
x
*k
s
[0035]
g
y
=s
y
*k
s
[0036][0037][0038]
其中,g
x
,g
y
分别为待计算像素点在存在梯形畸变的羽毛球及球场灰度图像中x,y方向上的梯度幅值。g为待计算像素点在存在梯形畸变的羽毛球及球场灰度图像中的梯度幅值,θ
g
为待计算像素点在存在梯形畸变的羽毛球及球场灰度图像中的梯度方向。
[0039]
此时根据以下公式对得到的存在梯形畸变的羽毛球及球场灰度图像的梯度幅值及相应的方向进行非极大值抑制:
[0040]
g
p
=(1

tan(θ
p
))
×
positon1 tanθ
p
×
positlon2
[0041]
其中g
p
表示非极大值抑制的参考梯度幅值,positon1,positon2分别表示与θ
p
相邻的两个角度为的参考梯度。若g>g
p
,认为待测像素点是一个在存在梯形畸变的羽毛球及球场灰度图像中的羽毛球场边缘像素点。由此得到存在梯形畸变的羽毛球及球场灰度图像中的羽毛球场边缘。
[0042]
进一步地,所述步骤a2的具体方法为:
[0043]
c1:对存在梯形畸变的羽毛球及球场灰度图像中的羽毛球场边缘进行直线检测,得到存在梯形畸变的羽毛球及球场彩色图像中的羽毛球场边缘的角点像素点坐标;
[0044]
c2:根据存在梯形畸变的羽毛球及球场彩色图像中的羽毛球场边缘的角点像素点坐标,对存在梯形畸变的羽毛球及球场彩色图像进行投影变换,得到正投影形式下的羽毛球及球场彩色图像信息;
[0045]
c3:根据正投影形式下的羽毛球及球场彩色图像信息,通过实验得到羽毛球及球场的实际位置距离和存在梯形畸变羽毛球及球场彩色图像信息的映射关系。
[0046]
所述步骤c1中包括:
[0047]
根据以下公式,一条直线可表示为:
[0048]
r=x
p
cosθ
l
y
p
sinθ
l
[0049]
其中,r为极坐标系下直线上的点距极点的最小距离。θ
l
为极坐标系下直线上的点与极轴的夹角,x
p
,y
p
表示直线上的点x方向和y方向的坐标。
[0050]
对于存在梯形畸变的羽毛球及球场灰度图像中的羽毛球场边缘上的每一个像素点(x
i
,y
i
),在以r,θ
l
为参数的平面内做映射,根据累加原理:
[0051]
a
n
(r,θ
l
)=a
n
‑1(r,θ
l
) l
[0052]
其中,a
n
(r,θ
l
),a
n
‑1(r,θ
l
)分别表示存在梯形畸变的羽毛球及球场灰度图像中的羽毛球场边缘上的累积到第n个像素点,第n

1个像素点时每一个映射在以r,θ
l
为参数的平面内经过点(r,θ
l
)的次数。当a
n
(r,θ
l
)大于阈值30,认为检测到一条直线,此时通过逆映射得到直线函数为:
[0053][0054]
由此检测存在梯形畸变的羽毛球及球场灰度图像中的羽毛球场边缘,得到存在梯形畸变的羽毛球及球场灰度图像中的羽毛球场边缘四个角点的像素点坐标。
[0055]
所述步骤c2中包括:
[0056]
由存在梯形畸变的羽毛球及球场灰度图像中的羽毛球场边缘四个角点的像素点坐标,根据以下公式:
[0057]
x1=a
31
[0058]
y1=a
32
[0059]
x2=a
11
a
31

a
13
*x2[0060]
y2=a
12
a
32

a
13
*y2[0061]
x3=a
11
a
21
a
31

a
13
*x3‑
a
23
*x3[0062]
y3=a
12
a
22
a
32

a
13
*y3‑
a
23
*y3[0063]
x4=a
21
a
31

a
23
*x4[0064]
y4=a
22
a
32

a
23
*y4[0065]
a
33
=1
[0066]
其中,和,分别表示存在梯形畸变的羽毛球及球场灰度图像中的羽毛球场边缘四个角点的像素点坐标。为投影变换参数,其中为投影变换的线性变换参数,a
31
和a
32
为投影变换的平移变换参数,a
12
和a
13
为投影变换的透视变换参数。
[0067]
根据以上投影变换参数,投影变换的计算公式为:
[0068][0069][0070][0071]
其中,u和v表示待变换像素点在存在梯形畸变的羽毛球及球场彩色图像中的像素点,坐标x
t
和y
t
分别表示待变换像素点经过投影变换后在正投影形式下的羽毛球及球场彩色图像中的像素点坐标。x

t
,y

t
,z

t
为投影变换的中间计算结果,表示未归一化状态下待变换像素点经过投影变换后在正投影形式下的羽毛球及球场彩色图像中的像素点坐标。由此得到正投影形式下的羽毛球及球场彩色图像信息。
[0072]
所述步骤c3中包括:
[0073]
由于根据步骤c2所得到的目标羽毛球的在正投影形式下的羽毛球及球场彩色图像中的位置信息是在正投影形式得到的,在正投影的形势下,正投影形式下的羽毛球及球场彩色图像中的任意一点与摄像头的距离和像素点个数呈线性关系,这提供了一种使用单目摄像头测距的方式,具体的实际大小计算公式如下:
[0074]
x
actual
=x
*
*k
px
x
camera
[0075]
y
actual
=y
*
*k
py
y
camera
[0076]
其中,x
actual
和y
actual
表示在以摄像头位置为坐标原点,实际距离为轴的坐标系下,目标羽毛球在所述坐标系中的坐标,k
px
和k
py
分别表示在x方向和y方向上单位长度映射在正投影形式下的羽毛球及球场彩色图像中的像素点个数。x
camera
和y
camera
表示摄像头位置和正投影形式下的羽毛球及球场彩色图像中左上角点的实际位置在x方向和y方向的距离。x
*
和y
*
表示正投影形式下的羽毛球及球场彩色图像中待计算的像素点的像素点坐标。由于正投影形式下的羽毛球及球场彩色图像存在梯形畸变羽毛球及球场彩色图像上的点是一一对应的,因此通过单目摄像头得到了存在梯形畸变羽毛球及球场彩色图像中任意一点和羽毛球识别拾取机器人的实际距离,从而得到了羽毛球及球场的实际位置距离和存在梯形畸变羽毛球及球场彩色图像信息的映射关系。
[0077]
进一步地,所述步骤s3具体包括如下过程:
[0078]
d1:对正投影形式下的羽毛球及球场彩色图像进行打标签操作,得到打好标签的数据集,并记为羽毛球源数据集;
[0079]
d2:搭建适用于羽毛球的多特征卷积神经网络,并确定网络结构,选择网络优化器并使用羽毛球源数据集与特征数据集对多特征卷积神经网络进行训练,得到训练好的适用于多特征卷积神经网络模型;
[0080]
d3:根据羽毛球及球场彩色图像与实际位置距离的映射关系,使用训练好的多特征卷积神经网络模型对羽毛球及球场彩色图像进行预测,得到目标羽毛球的位置信息。
[0081]
进一步地,所述步骤d1中打标签操作的过程为:
[0082]
用标签名badminton来对应正投影形式下的羽毛球及球场彩色图像中羽毛球所在的位置,在正投影形式下的羽毛球及球场彩色图像中羽毛球位置画出羽毛球候选框并打上
标签,打上标签,将打上标签后的数据集记为羽毛球源数据集,源数据集的数据结构如下式所示:
[0083]
[num x
b y
b w
b h
b
]
[0084]
其中,num为0,对应羽毛球源数据集集中唯一的目标badminton,x
b
,y
b
,分别对应羽毛球源数据集中羽毛球候选框的左上角顶点在正投影形式下的羽毛球及球场彩色图像中的像素点坐标,w
b
,h
b
分别对应羽毛球源数据集中羽毛球候选框的宽度和高度在正投影形式下的羽毛球及球场彩色图像中所占的像素点个数。
[0085]
进一步地,所述步骤d2包括:
[0086]
e1:搭建由三部分适用于羽毛球的多特征卷积神经网络的第一部分,第一部分对正投影形式下的羽毛球及球场彩色图像输入五个卷积层和四个池化层,得到正投影形式下的羽毛球及球场彩色图像的中间张量;
[0087]
e2:搭建由三部分适用于羽毛球的多特征卷积神经网络的第二部分和第三部分,第二部分对得到正投影形式下的羽毛球及球场彩色图像的中间张量一方面输入五个卷积层和两个池化层,得到正投影形式下的羽毛球及球场彩色图像的大羽毛球的输出张量,第三部分对得到正投影形式下的羽毛球及球场彩色图像的中间张量输入一个上采样层和一个卷积层,得到正投影形式下的羽毛球及球场彩色图像的小羽毛球的输出张量;
[0088]
e3:羽毛球源数据集按照8:1:1的比例划分为训练集,验证集和测试集,在训练的过程中,将羽毛球源数据集的每个数据作为一个训练单元,损失函数使用交叉熵损失函数,采用adam优化器进行学习优化,对网络进行充分训练,得到训练好的适用于羽毛球的多特征卷积神经网络。
[0089]
所述步骤e1的主要目的是提取正投影形式下的羽毛球及球场彩色图像的全局特征,该步骤中的卷积层都选用了16个3*3的卷积核,卷积层的输出尺寸计算公式如下列公式所示:
[0090][0091][0092]
d
o
=k
c
[0093]
其中,w
i
和h
i
分别表示卷积输入的羽毛球张量的x和y方向上的尺寸,w
o
和h
o
分别表示卷积输出的羽毛球张量的x和y方向上的尺寸,k
c
为卷积核的个数,f
c
为3,表示卷积核的大小,s
c
为卷积步长,表示每次卷积核移动的尺寸,p
c
为卷积边界填充尺寸,使得输入的羽毛球张量的尺寸为s
c
的倍数,不产生重复卷积。在本方法中,采用k
c
=3,s
c
=1,p
c
=0,提取羽毛球特征。
[0094]
该步骤中池化层均为最大池化层,池化层的目的是使得输出的羽毛球张量变为需要的尺寸池化层能够使池化层的尺寸计算公式如下:
[0095][0096]
其中,z
p
为池化输出的羽毛球张量的尺寸,w
p
为池化输入的羽毛球张量的尺寸,f
p
为池化内核的大小,s
p
为池化步长,表示每次池化内核移动的尺寸。本方法中,f
p
=3,s
p
=1,突出羽毛球特征。经过此步骤,得到正投影形式下的羽毛球及球场彩色图像的中间张量其尺寸为26*26*256。
[0097]
所述步骤e2对正投影形式下的羽毛球及球场彩色图像的中间张量输入两个不同结构的网络,分别用于预测正投影形式下的羽毛球及球场彩色图像中的大羽毛球和小羽毛球,其中,大羽毛球通过将所述正投影形式下的羽毛球及球场彩色图像的中间张量输入由一个由3*3的卷积核,步长为1,填充数量为1的卷积层和采用2*2大小的矩形窗口进行滑动,步长为2的池化层组成的网络,最终得到的大尺寸预测结果为13*13*255的羽毛球张量。
[0098]
对于小羽毛球,将正投影形式下的羽毛球及球场彩色图像的中间张量输入一个上采样层,上采样层的输出计算公式为:
[0099]
o
u
=s
u
(i
u

1) 2p
u
k
u
[0100]
其中,o
u
表示上采样输出的羽毛球张量的尺寸,s
u
为上采样步长,表示每次上采样内核移动的尺寸,i
u
为上采样输入的羽毛球张量的尺寸,p
u
为上采样边界填充尺寸,使得输入的羽毛球张量的尺寸为s
u
的倍数,k
u
为上采样内核的大小。通过上采样层,得到一个尺寸为13*13*255的羽毛球张量,与尺寸为26*26*256的正投影形式下的羽毛球及球场彩色图像的中间张量进行拼接,再输入由一个由两个3*3的卷积核,步长为1,填充数量为1的卷积层组成的网络,输出一个尺寸为26*26*255的羽毛球张量。
[0101]
进一步地,所述步骤d3包括:
[0102]
对步骤e3中练好的适用于羽毛球的多特征卷积神经网络得到的羽毛球张量进行处理,,对于输出的一个尺寸为26*26*255的羽毛球张量。该向量表示将原图像分为26*26个目标区域,对于每个目标区域生成三个不同尺度的目标,该目标由一个大小为85的向量组成,其中向量的前五列分别表示正投影形式下的羽毛球及球场彩色图像的羽毛球预测候选框的左上角顶点在所述正投影形式下的羽毛球及球场彩色图像中的像素点坐标,宽度和高度在所述正投影形式下的羽毛球及球场彩色图像中所占的像素点个数,以及候选框内存在羽毛球的概率,第六列为1表示预测结果为badminton,后80列均为0,由此,得到目标羽毛球在正投影形式下的羽毛球及球场彩色图像中的像素点坐标为:
[0103][0104][0105]
其中,m
10
和m
01
分别表示目标羽毛球的中心点在正投影形式下的羽毛球及球场彩色图像中的x和y方向的像素点的坐标,x
r
,y
r
分别对应正投影形式下的羽毛球及球场彩色图像中羽毛球目标候选框的左上角顶点在正投影形式下的羽毛球及球场彩色图像中的像素点坐标,w
r
,h
r
分别对应正投影形式下的羽毛球及球场彩色图像中目标羽毛球候选框的宽度和高度在正投影形式下的羽毛球及球场彩色图像中所占的像素点个数;经过此计算,得到了目标羽毛球在正投影形式下的羽毛球及球场彩色图像中的位置信息。
[0106]
进一步地,所述步骤s4包括:
[0107]
f1:根据正投影形式下的羽毛球及球场彩色图像大小和像素点在真实羽毛球及球场中的实际大小得到目标羽毛球在实际羽毛球场中的位置信息;
[0108]
f2:根据目标羽毛球在实际羽毛球场中的位置信息,规划出羽毛球拾取路线。
[0109]
所述步骤f1中包括:
[0110]
根据得到的羽毛球及球场的实际位置距离和存在梯形畸变羽毛球及球场彩色图像信息的映射关系和得到的目标羽毛球的在正投影形式下的羽毛球及球场彩色图像中的位置信息,计算得到目标羽毛球在实际羽毛球场中的位置信息,计算公式如下:
[0111]
x
aatual
=m
10
*k
px
x
camera
[0112]
y
actual
=m
01
*k
py
y
camera
[0113]
该公式中m
10
和m
01
是目标羽毛球的中心点在正投影形式下的羽毛球及球场彩色图像中的x和y方向的像素点的坐标,实际上隐藏了投影变换复杂的计算过程。由此通过单目摄像头得到了目标羽毛球和羽毛球识别拾取机器人的实际距离,从而得到目标羽毛球在实际羽毛球场中的位置信息。
[0114]
所述步骤f2中包括:
[0115]
对于正投影形式下的羽毛球及球场彩色图像中的多个目标羽毛球,通过步骤f1可得到每一个目标羽毛球在实际羽毛球场中的位置信息,对所述位置信息的y方向的距离进行快速排序,排序方法如下:
[0116]
sort(start,end)=sort(start,point

1) sort(point 1,end)
[0117]
其中,sort为快速排序函数,start表示需排序的目标羽毛球在实际羽毛球场中的位置信息组成的数组的第一个值,end表示需排序的目标羽毛球在实际羽毛球场中的位置信息组成的数组的最后一个值,point为分离点,表示当前待排序的目标羽毛球在实际羽毛球场中的位置信息,经过此操作,小于point的目标羽毛球在实际羽毛球场中的位置信息将在数组中移至point后方,由此小于point的目标羽毛球在实际羽毛球场中的位置信息将在数组中移至point前方,得到一个按目标羽毛球在实际羽毛球场中的位置信息的y方向的距离升序排序的矩阵:
[0118][0119]
其中,[0 0]表示起始时羽毛球识别拾取机器人在以摄像头位置为坐标原点,实际距离为轴的坐标系下的位置,[x
ai
y
ai
](ai=1,2,...,n)为经过排序后,目标羽毛球在实际羽毛球场中的位置信息的y方向的距离大小为第ai个的目标羽毛球在实际羽毛球场中的位置信息。得到矩阵后,羽毛球识别拾取机器人每次移动的路径为:
[0120]
x
move
=x
ai 1

x
ai
[0121]
y
move
=y
ai 1

y
ai
[0122]
其中,x
move
和y
move
分别表示每次羽毛球识别拾取机器人在x方向和y方向上移动的距离,x
ai 1
,y
ai 1
和x
ai
,y
ai
分别表示目标羽毛球在实际羽毛球场中的位置信息的y方向的距离大小为第ai 1个和第ai个的目标羽毛球在实际羽毛球场中的位置信息。
[0123]
进一步地,所述步骤s4和s5包括:
[0124]
由步骤s3得到每次羽毛球识别拾取机器人在x方向和y方向上移动的距离后,控制羽毛球识别拾取机器人移动至指定位置,所属机器人可由串口发送指定速度运动,由于串
口难以发送浮点型变量,因此速度计算转换公式为:
[0125][0126]
其中,v为羽毛球识别拾取机器人的实际移动速度,v
h
和v
l
是两位十六进制数,分别表示串口中速度的低八位和高八位。int表示十六进制转化为十进制,即串口通过将速度放大一千倍变为整型传播,传输结束后再缩小一千倍得到实际值。
[0127]
根据速度计算定义公式:
[0128][0129][0130]
其中,t
x
和t
y
表示串口发送给羽毛球识别拾取机器人x方向和y方向速度的时间,v
x
和v
y
分别表示串口发送给羽毛球识别拾取机器人的人x方向和y方向的速度。通过控制时间的不同,羽毛球识别拾取机器人依次移动到每一个目标羽毛球在实际羽毛球场中的位置,实现拾取。
[0131]
有益效果:本发明与现有技术相比,针对球场内大量落球无人拾取或依靠人力拾取的问题,设计出一款羽毛球识别拾取机器人,其充分考虑羽毛球的特征和单目摄像头的局限和特点,设计了单目摄像头的测距方法和适用于羽毛球的卷积神经网络,利用羽毛球的识别和单目摄像头的测距方法实现了机器人对于目标羽毛球的自动识别和拾取,提升了羽毛球的拾取效率和自动化性能,解决了目前拾取羽毛球主要依靠人力,捡球浪费时间,效率低,且对人体造成损伤等问题,并且具有移植到其他体育领域的可能性,可应用于球类体育项目的教学训练,应用前景广泛。
附图说明
[0132]
图1为本发明方法的流程示意图;
[0133]
图2为羽毛球识别拾取机器人的实物图;
[0134]
图3为通过单目摄像头采集的存在梯形畸变的羽毛球及球场彩色图像信息示意图;
[0135]
图4为经投影变换后正投影形式下的羽毛球及球场彩色图像示意图;
[0136]
图5为目标羽毛球的识别结果图1;
[0137]
图6为目标羽毛球的识别结果图2;
[0138]
图7为羽毛球识别拾取机器人在路径规划完成后拾取羽毛球的操作图1;
[0139]
图8为羽毛球识别拾取机器人在路径规划完成后拾取羽毛球的操作图2。
具体实施方式
[0140]
下面结合附图和具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
[0141]
本实施例中将设计好的基于形态特征和位置信息单目测量的自主捡球机器人应
用于羽毛球场,用于实现对于羽毛球场地上掉落羽毛球的自动识别和拾取,图2为自主捡球机器人的实务图,参照图1,提供一种基于形态特征和单目测量的机器人自主捡球方法,包括如下步骤:
[0142]
步骤1:设计一种针对无测距功能的单目摄像头的目标物体位置信息测量方法,通过羽毛球识别拾取机器人所装备的单目摄像头得到的存在梯形畸变羽毛球及球场彩色图像信息,得到正投影形式下的羽毛球及球场彩色图像信息,由此可得到羽毛球及球场的实际位置距离和存在梯形畸变羽毛球及球场彩色图像信息的映射关系。
[0143]
步骤2:对正投影形式下的羽毛球及球场彩色图像信息进行处理,将正投影形式下的羽毛球及球场彩色图像信息作为输入层输入对羽毛球进行优化的特征提取网络,获取球场中羽毛球的形态特征,通过步骤1获取的映射关系得到目标羽毛球的位置信息。
[0144]
步骤3:根据目标羽毛球的位置信息,获取目标羽毛球和羽毛球识别拾取机器人的实际相对位置,完成羽毛球识别拾取机器人的运动路径规划。
[0145]
步骤4:上位机根据羽毛球识别拾取机器人的运动路径规划结果,控制羽毛球识别拾取机器人运动至目标羽毛球位置,并完成羽毛球识别拾取机器人对羽毛球的拾取操作。
[0146]
在本发明实施例中,步骤1包括:
[0147]
步骤1.1:采集并保存通过羽毛球识别拾取机器人所装备的单目摄像头得到的存在梯形畸变羽毛球及球场彩色图像信息,对采集得到的存在梯形畸变的羽毛球及球场彩色图像信息进行预处理,得到存在梯形畸变的羽毛球及球场彩色图像信息中的羽毛球场边缘信息。
[0148]
步骤1.2:对存在梯形畸变的羽毛球及球场彩色图像信息中的羽毛球场边缘信息进行处理,通过透视变换矫正采集得到的存在梯形畸变的羽毛球及球场彩色图像信息,得到正投影形式下的羽毛球及球场彩色图像信息和羽毛球及球场的实际位置距离和存在梯形畸变羽毛球及球场彩色图像信息的映射关系。
[0149]
在本发明实施例中,步骤1.1包括:
[0150]
步骤1.1.1:对采集得到的存在梯形畸变的羽毛球及球场彩色图像信息进行灰度变换,得到并保存存在梯形畸变的羽毛球及球场灰度图像;
[0151]
步骤1.1.2:使用高斯滤波器对存在梯形畸变的羽毛球及球场灰度图像进行滤波,消除图像数字化时所混入的噪声,简化图像所带的信息,得到滤波处理后的存在梯形畸变的羽毛球及球场灰度图像;
[0152]
步骤1.1.3:用模板掩码计算滤波处理后的存在梯形畸变的羽毛球及球场灰度图像的灰度的梯度的幅值和方向,并进行非极大值抑制,得到存在梯形畸变的羽毛球及球场灰度边缘图像。
[0153]
步骤1.1.1包括:
[0154]
根据以下公式,对采集得到的存在梯形畸变的羽毛球及球场彩色图像信息进行灰度变换处理,得到存在梯形畸变的羽毛球及球场灰度图像:
[0155]
gray_c(i
g
,j
g
)=c
r
×
r(i
g
,j
g
) c
g
×
g(i
g
,j
g
) c
b
×
b(i
g
,j
g
)
[0156]
其中,gray_c(i
g
,j
g
)为存在梯形畸变的羽毛球及球场灰度图像中第i
g
行和第i
g
列的像素点灰度值,c
r
、c
g
和c
b
分别为存在梯形畸变的羽毛球及球场彩色图像中各像素点的红色、绿色及蓝色三色的权值,并且取值c
r
=0.299、c
g
=0.587和c
b
=0.144,r(i
g
,j
g
)、g(i
g

j
g
)和b(i
g
,j
g
)分别为存在梯形畸变的羽毛球及球场灰度图像中第i
g
行和第j
g
列像素点的红色、绿色及蓝色分量值。
[0157]
步骤1.1.2包括:
[0158]
高斯滤波器的原理为根据待滤波的像素点及其邻域点的灰度值按照高斯公式生成的参数规则进行加权平均,这样可以有效滤去存在梯形畸变的羽毛球及球场灰度图像中叠加的高频噪声。二维高斯公式如下:
[0159][0160]
其中,g0(x
g
,y
g
)为距离待滤波的像素点x
g
行,y
g
列的像素点的加权平均权值,a为加权比例系数,u
x
,u
y
分别表示待滤波的像素点位于存在梯形畸变的羽毛球及球场灰度图像的第u
x
行和第u
y
列像素点,σ为存在梯形畸变的羽毛球及球场灰度图像的标准方差。经过高斯滤波器后,得到了滤波处理后的存在梯形畸变的羽毛球及球场灰度图像。
[0161]
在本发明实施例中,步骤1.1.3包括:
[0162]
根据以下模板掩码计算所述滤波处理后的存在梯形畸变的羽毛球及球场灰度图像的羽毛球场边缘。
[0163][0164][0165][0166]
其中s
x
为x方向上的模板掩码,用于检测y方向的存在梯形畸变的羽毛球及球场灰度图像的羽毛球场边缘,s
y
为y方向上的模板掩码,用于检测x方向的存在梯形畸变的羽毛球及球场灰度图像的羽毛球场边缘,k
s
表示邻域标记矩阵,[i
e
,j
e
]表示待计算像素点位于存在梯形畸变的羽毛球及球场灰度图像的第i
e
行,第j
e
列像素点,表示待计算像素点相邻的八个像素点在存在梯形畸变的羽毛球及球场灰度图像中的灰度值。
[0167]
根据以上两个模板掩码,可以计算出存在梯形畸变的羽毛球及球场灰度图像的梯度幅值及相应的方向:
[0168]
g
x
=s
x
*k
s
[0169]
g
y
=s
y
*k
s
[0170][0171][0172]
其中,g
x
,g
y
分别为待计算像素点在存在梯形畸变的羽毛球及球场灰度图像中x,y方向上的梯度幅值。g为待计算像素点在存在梯形畸变的羽毛球及球场灰度图像中的梯度
幅值,θ
g
为待计算像素点在存在梯形畸变的羽毛球及球场灰度图像中的梯度方向。
[0173]
此时根据以下公式对得到的存在梯形畸变的羽毛球及球场灰度图像的梯度幅值及相应的方向进行非极大值抑制:
[0174]
g
p
=(1

tan(θ
p
))
×
positon1 tanθ
p
×
position2
[0175]
其中g
p
表示非极大值抑制的参考梯度幅值,positon1,positon2分别表示与θ
p
相邻的两个角度为的参考梯度。若g>g
p
,认为待测像素点是一个在存在梯形畸变的羽毛球及球场灰度图像中的羽毛球场边缘像素点。由此得到存在梯形畸变的羽毛球及球场灰度图像中的羽毛球场边缘。
[0176]
图3和图4分别是本发明实施例提供的通过单目摄像头采集的存在梯形畸变的羽毛球及球场彩色图像信息和经投影变换后正投影形式下的羽毛球及球场彩色图像,包括以下步骤:
[0177]
步骤1.2,包括:
[0178]
步骤1.2.1:对所述存在梯形畸变的羽毛球及球场灰度图像中的羽毛球场边缘进行直线检测,得到存在梯形畸变的羽毛球及球场彩色图像中的羽毛球场边缘的角点像素点坐标。
[0179]
步骤1.2.2:根据存在梯形畸变的羽毛球及球场彩色图像中的羽毛球场边缘的角点像素点坐标,对所述存在梯形畸变的羽毛球及球场彩色图像进行投影变换,得到正投影形式下的羽毛球及球场彩色图像信息。
[0180]
步骤1.2.3:根据正投影形式下的羽毛球及球场彩色图像信息,通过实验得到羽毛球及球场的实际位置距离和存在梯形畸变羽毛球及球场彩色图像信息的映射关系。
[0181]
根据以下公式,一条直线可表示为:
[0182]
r=x
p
cosθ
l
y
p
sinθ
l
[0183]
其中,r为极坐标系下直线上的点距极点的最小距离,θ
l
为极坐标系下直线上的点与极轴的夹角,x
p
,y
p
表示直线上的点x方向和y方向的坐标。
[0184]
对于存在梯形畸变的羽毛球及球场灰度图像中的羽毛球场边缘上的每一个像素点(x
i
,y
i
),在以r,θ
l
为参数的平面内做映射,根据累加原理:
[0185]
a
n
(r,θ
l
)=a
n
‑1(r
r
θ
l
) 1
[0186]
其中,a
n
(r,θ
l
),a
n
‑1(r,θ
l
)分别表示存在梯形畸变的羽毛球及球场灰度图像中的羽毛球场边缘上的累积到第n个像素点,第n

1个像素点时每一个映射在以r,θ
l
为参数的平面内经过点(r,θ
l
)的次数。当a
n
(r,θ
l
)大于阈值30,认为检测到一条直线,此时通过逆映射得到直线函数为:
[0187][0188]
由此检测存在梯形畸变的羽毛球及球场灰度图像中的羽毛球场边缘,得到存在梯形畸变的羽毛球及球场灰度图像中的羽毛球场边缘四个角点的像素点坐标。
[0189]
在本发明实施例中,步骤1.2.2,包括:
[0190]
由存在梯形畸变的羽毛球及球场灰度图像中的羽毛球场边缘四个角点的像素点坐标,根据以下公式:
[0191]
x1=a
31
[0192]
y1=a
32
[0193]
x2=a
11
a
31

a
13
*x2[0194]
y2=a
12
a
32

a
13
*y2[0195]
x3=a
11
a
21
a
31

a
13
*x3‑
a
23
*x3[0196]
y3=a
12
a
22
a
32

a
13
*y3‑
a
23
*y3[0197]
x4=a
21
a
31

a
23
*x4[0198]
y4=a
22
a
32

a
23
*y4[0199]
a
33
=1
[0200]
其中,和,分别表示所述存在梯形畸变的羽毛球及球场灰度图像中的羽毛球场边缘四个角点的像素点坐标。
[0201]
为投影变换参数,其中为投影变换的线性变换参数,a
31
和a
32
为投影变换的平移变换参数,a
12
和a
13
为投影变换的透视变换参数。
[0202]
根据以上投影变换参数,投影变换的计算公式为:
[0203][0204][0205][0206]
其中,u和v表示待变换像素点在存在梯形畸变的羽毛球及球场彩色图像中的像素点,坐标x
t
和y
t
分别表示待变换像素点经过投影变换后在正投影形式下的羽毛球及球场彩色图像中的像素点坐标。x

t
,y

t
,z

t
为投影变换的中间计算结果,表示未归一化状态下待变换像素点经过投影变换后在正投影形式下的羽毛球及球场彩色图像中的像素点坐标。由此得到正投影形式下的羽毛球及球场彩色图像信息。
[0207]
在本发明实施例中,步骤1.2.3,包括:
[0208]
由于根据步骤1.2.2所得到的目标羽毛球的在正投影形式下的羽毛球及球场彩色图像中的位置信息是在正投影形式得到的,在正投影的形势下,正投影形式下的羽毛球及球场彩色图像中的任意一点与摄像头的距离和像素点个数呈线性关系,这提供了一种使用单目摄像头测距的方式,具体的实际大小计算公式如下:
[0209]
x
actual
=x
*
*k
px
x
camera
[0210]
y
actual
=y
*
*k
py
y
camera
[0211]
其中,x
actual
和t
actual
表示在以摄像头位置为坐标原点,实际距离为轴的坐标系下,目标羽毛球在坐标系中的坐标,k
px
和k
py
分别表示在x方向和y方向上单位长度映射在正投影形式下的羽毛球及球场彩色图像中的像素点个数。x
camera
和y
camera
表示摄像头位置和正投影形式下的羽毛球及球场彩色图像中左上角点的实际位置在x方向和y方向的距离。x
*
和y
*
表示正投影形式下的羽毛球及球场彩色图像中待计算的像素点的像素点坐标。由于正投影形式下的羽毛球及球场彩色图像存在梯形畸变羽毛球及球场彩色图像上的点是一一对应的,因此通过单目摄像头得到了存在梯形畸变羽毛球及球场彩色图像中任意一点和羽毛球识别拾取机器人的实际距离,从而得到了羽毛球及球场的实际位置距离和存在梯形畸变羽毛球及球场彩色图像信息的映射关系。
[0212]
图5,图6是本发明实施例提供的目标羽毛球的识别结果,包括以下步骤:
[0213]
在本发明实施例中,步骤2包括:
[0214]
步骤2.1:对正投影形式下的羽毛球及球场彩色图像进行打标签操作,得到打好标签的数据集,并记为羽毛球源数据集。
[0215]
步骤2.2:搭建适用于羽毛球的多特征卷积神经网络,并确定网络结构。选择网络优化器并使用源数据集与特征数据集对多特征卷积神经网络进行训练,得到训练好的适用于多特征卷积神经网络模型。
[0216]
步骤2.3:使用所述训练好的适用于多特征卷积神经网络模型对所述正投影形式下的羽毛球及球场彩色图像进行预测,得到目标羽毛球的位置信息。
[0217]
在本发明实施例中,步骤2.1包括:
[0218]
用标签名badminton来对应正投影形式下的羽毛球及球场彩色图像中羽毛球所在的位置,在正投影形式下的羽毛球及球场彩色图像中羽毛球位置画出羽毛球候选框并打上标签,打上标签,将打上标签后的数据集记为羽毛球源数据集,源数据集的数据结构如下式所示:
[0219]
[num x
b y
t w
b h
b
]
[0220]
其中,num为0,对应羽毛球源数据集集中唯一的目标badminton,x
b
,y
b
分别对应所述羽毛球源数据集中羽毛球候选框的左上角顶点在所述正投影形式下的羽毛球及球场彩色图像中的像素点坐标,w
b
,h
b
分别对应所述羽毛球源数据集中羽毛球候选框的宽度和高度在所述正投影形式下的羽毛球及球场彩色图像中所占的像素点个数。
[0221]
在本发明实施例中,步骤2.2包括:
[0222]
步骤2.2.1:搭建由三部分适用于羽毛球的多特征卷积神经网络的第一部分,第一部分对正投影形式下的羽毛球及球场彩色图像输入五个卷积层和四个池化层操作,得到正投影形式下的羽毛球及球场彩色图像的中间张量。
[0223]
步骤2.2.2:搭建由三部分适用于羽毛球的多特征卷积神经网络的第二部分和第三部分,第二部分对得到正投影形式下的羽毛球及球场彩色图像的中间张量一方面输入五个卷积层和两个池化层,得到正投影形式下的羽毛球及球场彩色图像的大羽毛球的输出张量。第三部分对得到正投影形式下的羽毛球及球场彩色图像的中间张量输入一个上采样层和一个卷积层,得到正投影形式下的羽毛球及球场彩色图像的小羽毛球的输出张量。
[0224]
步骤2.2.3:羽毛球源数据集按照8:1:1的比例划分为训练集,验证集和测试集,在训练的过程中,将羽毛球源数据集的每个数据作为一个训练单元,损失函数使用交叉熵损失函数,采用adam优化器进行学习优化,对网络进行充分训练,得到训练好的适用于羽毛球的多特征卷积神经网络;
[0225]
在本发明实施例中,步骤2.2.1包括:
[0226]
在此步骤中,主要目的是提取正投影形式下的羽毛球及球场彩色图像的全局特
征,该步骤中的卷积层都选用了16个3*3的卷积核,卷积层的输出尺寸计算公式如下列公式所示:
[0227][0228][0229]
d
o
=k
c
[0230]
其中,w
i
和h
i
分别表示卷积输入的羽毛球张量的x和y方向上的尺寸,w
o
和h
o
分别表示卷积输出的羽毛球张量的x和y方向上的尺寸,k
c
为卷积核的个数,f
c
为3,表示卷积核的大小,s
c
为卷积步长,表示每次卷积核移动的尺寸,p
c
为卷积边界填充尺寸,使得输入的羽毛球张量的尺寸为s
c
的倍数,不产生重复卷积。
[0231]
该步骤中池化层均为最大池化层,池化层的目的是使得输出的羽毛球张量变为需要的尺寸池化层能够使池化层的尺寸计算公式如下:
[0232][0233]
其中,z
p
为池化输出的羽毛球张量的尺寸,w
p
为池化输入的羽毛球张量的尺寸,f
p
为池化内核的大小,s
p
为池化步长,表示每次池化内核移动的尺寸。经过步骤2.2.1,得到正投影形式下的羽毛球及球场彩色图像的中间张量其尺寸为26*26*256。
[0234]
在本发明实施例中,步骤2.2.2包括:
[0235]
对正投影形式下的羽毛球及球场彩色图像的中间张量输入两个不同结构的网络,分别用于预测正投影形式下的羽毛球及球场彩色图像中的大羽毛球和小羽毛球,其中,大羽毛球通过将所述正投影形式下的羽毛球及球场彩色图像的中间张量输入由一个由3*3的卷积核,步长为1,填充数量为1的卷积层和采用2*2大小的矩形窗口进行滑动,步长为2的池化层组成的网络,最终得到的大尺寸预测结果为13*13*255的羽毛球张量。
[0236]
对于小羽毛球,将正投影形式下的羽毛球及球场彩色图像的中间张量输入一个上采样层,上采样层的输出计算公式为:
[0237]
o
u
=s
u
(i
u

1) 2p
u
k
u
[0238]
其中,o
u
表示上采样输出的羽毛球张量的尺寸,s
u
为上采样步长,表示每次上采样内核移动的尺寸,i
u
为上采样输入的羽毛球张量的尺寸,p
u
为上采样边界填充尺寸,使得输入的羽毛球张量的尺寸为s
u
的倍数,k
u
为上采样内核的大小,通过上采样层,得到一个尺寸为13*13*255的羽毛球张量,与尺寸为26*26*256的正投影形式下的羽毛球及球场彩色图像的中间张量进行拼接,再输入由一个由两个3*3的卷积核,步长为1,填充数量为1的卷积层组成的网络,输出一个尺寸为26*26*255的羽毛球张量。
[0239]
在本发明实施例中,步骤2.3包括:
[0240]
对步骤2.2.2中的尺寸为26*26*255的羽毛球张量和尺寸为13*13*255的羽毛球张量进行处理,255中是由3个长度为85的向量组成的,其中向量的前五列分别表示正投影形式下的羽毛球及球场彩色图像的羽毛球预测候选框的左上角顶点在所述正投影形式下的羽毛球及球场彩色图像中的像素点坐标,宽度和高度在正投影形式下的羽毛球及球场彩色
图像中所占的像素点个数,以及候选框内存在羽毛球的概率,第六列为1表示预测结果为badminton后80列均为0。由此,可得到目标羽毛球在正投影形式下的羽毛球及球场彩色图像中的像素点坐标为:
[0241][0242][0243]
其中,m
10
和m
01
分别表示目标羽毛球的中心点在正投影形式下的羽毛球及球场彩色图像中的x和y方向的像素点的坐标,x
r
,y
r
分别对应正投影形式下的羽毛球及球场彩色图像中羽毛球目标候选框的左上角顶点在所述正投影形式下的羽毛球及球场彩色图像中的像素点坐标,w
r
,h
r
分别对应正投影形式下的羽毛球及球场彩色图像中目标羽毛球候选框的宽度和高度在正投影形式下的羽毛球及球场彩色图像中所占的像素点个数。经过此计算,得到了目标羽毛球的在正投影形式下的羽毛球及球场彩色图像中的位置信息。
[0244]
图7、图8是本发明实施例提供的羽毛球识别拾取机器人在路径规划完成后拾取羽毛球的操作图,包括以下步骤:
[0245]
在本发明实施例中,步骤3包括:
[0246]
步骤3.1:根据正投影形式下的羽毛球及球场彩色图像大小和像素点在真实羽毛球及球场中的实际大小得到目标羽毛球在实际羽毛球场中的位置信息。
[0247]
步骤3.2:根据目标羽毛球在实际羽毛球场中的位置信息,规划出合理的羽毛球拾取路线。
[0248]
在本发明实施例中,步骤3.1包括:
[0249]
根据所述步骤1得到的羽毛球及球场的实际位置距离和存在梯形畸变羽毛球及球场彩色图像信息的映射关系和所述步骤2得到的目标羽毛球的在正投影形式下的羽毛球及球场彩色图像中的位置信息,计算得到目标羽毛球在实际羽毛球场中的位置信息,计算公式如下:
[0250]
x
actual
=m
10
*k
px
x
camera
[0251]
y
actual
=m
01
*k
py
y
camera
[0252]
该公式中m
10
和m
01
是目标羽毛球的中心点在正投影形式下的羽毛球及球场彩色图像中的x和y方向的像素点的坐标,实际上隐藏了投影变换复杂的计算过程。由此通过单目摄像头得到了目标羽毛球和羽毛球识别拾取机器人的实际距离,从而得到目标羽毛球在实际羽毛球场中的位置信息。
[0253]
在本发明实施例中,步骤3.2包括:
[0254]
对于正投影形式下的羽毛球及球场彩色图像中的多个目标羽毛球,通过步骤3.1可得到每一个目标羽毛球在实际羽毛球场中的位置信息,对所述位置信息的y方向的距离进行快速排序,排序方法如下:
[0255]
sort(start,end)=sort(start,point

1) sort(point 1,end)
[0256]
其中,sort为快速排序函数,start表示需排序的目标羽毛球在实际羽毛球场中的位置信息组成的数组的第一个值,end表示需排序的目标羽毛球在实际羽毛球场中的位置信息组成的数组的最后一个值,point为分离点,表示当前待排序的目标羽毛球在实际羽毛
球场中的位置信息,经过此操作,小于point的目标羽毛球在实际羽毛球场中的位置信息将在数组中移至point后方,由此小于point的目标羽毛球在实际羽毛球场中的位置信息将在数组中移至point前方,得到一个按目标羽毛球在实际羽毛球场中的位置信息的y方向的距离升序排序的矩阵:
[0257][0258]
其中,[0 0]表示起始时羽毛球识别拾取机器人在以摄像头位置为坐标原点,实际距离为轴的坐标系下的位置,[x
ai y
ai
](ai=1,2,...,n)为经过排序后,目标羽毛球在实际羽毛球场中的位置信息的y方向的距离大小为第ai个的目标羽毛球在实际羽毛球场中的位置信息。得到所述矩阵后,羽毛球识别拾取机器人每次移动的路径为:
[0259]
x
move
=x
ai 1

x
ai
[0260]
y
move
=y
ai 1

y
ai
[0261]
其中,x
move
和y
move
分别表示每次羽毛球识别拾取机器人在x方向和y方向上移动的距离,x
ai 1
,y
ai 1
和x
ai
,y
ai
分别表示目标羽毛球在实际羽毛球场中的位置信息的y方向的距离大小为第ai 1个和第ai个的目标羽毛球在实际羽毛球场中的位置信息。
[0262]
在本发明实施例中,步骤4包括:
[0263]
由步骤4得到每次羽毛球识别拾取机器人在x方向和y方向上移动的距离后,控制羽毛球识别拾取机器人移动至指定位置,所属机器人可由串口发送指定速度运动,由于串口难以发送浮点型变量,因此速度计算转换公式为:
[0264][0265]
其中,v为羽毛球识别拾取机器人的实际移动速度,v
h
和v
l
是两位十六进制数,分别表示串口中速度的低八位和高八位。int表示十六进制转化为十进制,即串口通过将速度放大一千倍变为整型传播,传输结束后再缩小一千倍得到实际值。
[0266]
根据速度计算定义公式:
[0267][0268][0269]
其中,t
x
和t
y
表示串口发送给羽毛球识别拾取机器人x方向和y方向速度的时间,v
x
和v
y
分别表示串口发送给羽毛球识别拾取机器人的人x方向和y方向的速度,通过控制时间的不同,羽毛球识别拾取机器人依次移动到每一个目标羽毛球在实际羽毛球场中的位置,实现拾取。
[0270]
基于上述方案,本发明由单目摄像头(即单目结构光系统)采集羽毛球场和羽毛球的图像信息;经过预处理制成数据集,并划分数据单元,提取统计学特征;构建多特征卷积神经网络,使用采集到的数据训练网络,使用得到的网络模型对目标羽毛球位置进行获取,
自主识别拾取羽毛球。
[0271]
实例说明:在羽毛球识别拾取机器人确定在起始位置后,通过卷积神经网络获得目标羽毛球在正投影形式下的羽毛球及球场彩色图像中的像素点位置为(200,300),通过羽毛球及球场的实际位置距离和存在梯形畸变羽毛球及球场彩色图像信息的映射关系,得到实际目标羽毛球距离所述羽毛球识别拾取机器人x方向700cm,y方向540cm,则控制羽毛球识别拾取机器人以x方向0.5m/s的速度和y方向0.5m/s的速度分别运动1.4s和1.08s,运动到指定位置后实现拾取。
[0272]
本实施例还提供一种基于形态特征和位置信息单目测量的机器人自主捡球系统,该系统包括网络接口、存储器和处理器;其中,网络接口,用于在与其他外部网元之间进行收发信息过程中,实现信号的接收和发送;存储器,用于存储能够在所述处理器上运行的计算机程序指令;处理器,用于在运行计算机程序指令时,执行上述共识方法的步骤。
[0273]
本实施例还提供一种计算机存储介质,该计算机存储介质存储有计算机程序,在处理器执行所述计算机程序时可实现以上所描述的方法。所述计算机可读介质可以被认为是有形的且非暂时性的。非暂时性有形计算机可读介质的非限制性示例包括非易失性存储器电路(例如闪存电路、可擦除可编程只读存储器电路或掩膜只读存储器电路)、易失性存储器电路(例如静态随机存取存储器电路或动态随机存取存储器电路)、磁存储介质(例如模拟或数字磁带或硬盘驱动器)和光存储介质(例如cd、dvd或蓝光光盘)等。计算机程序包括存储在至少一个非暂时性有形计算机可读介质上的处理器可执行指令。计算机程序还可以包括或依赖于存储的数据。计算机程序可以包括与专用计算机的硬件交互的基本输入/输出系统(bios)、与专用计算机的特定设备交互的设备驱动程序、一个或多个操作系统、用户应用程序、后台服务、后台应用程序等。
[0274]
本领域内的技术人员应明白,本申请的实施例可提供为方法、系统、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。
[0275]
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0276]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0277]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一
个方框或多个方框中指定的功能的步骤。
[0278]
通过上述技术方案的实施,验证了本发明方法存在诸多优点,具体为:(1)提供了一种针对无测距功能的单目摄像头的目标物体位置信息测量方法,实现了低成本的图像距离测量。(2)提供了针对羽毛球的数据集的制作方法以及多特征卷积神经网络的搭建方法,实现了不同姿态下的羽毛球的识别。(3)提供了一种基于针对多个羽毛球的路径规划方法。(4)能有效的提高羽毛球拾取的自动化程度,节省了人力。

技术特征:
1.一种基于形态特征和单目测量的机器人自主捡球方法,其特征在于:包括如下步骤:s1:通过机器人采集存在梯形畸变羽毛球和球场彩色图像信息,得到正投影形式下的羽毛球及球场彩色图像信息;s2:对得到的羽毛球及球场彩色图像信息进行数据处理,通过设计一种针对无测距功能的单目摄像头的目标物体位置信息测量方法获得存在梯形畸变羽毛球和球场彩色图像与实际位置距离的映射关系;s3:利用搭建和训练好的特征提取网络寻找得到目标羽毛球质心的像素点位置,根据步骤s2获得的映射关系得到目标羽毛球的位置信息;s4:根据目标羽毛球的位置信息,获取目标羽毛球和机器人的实际相对位置,完成机器人的运动路径规划;s5:上位机根据机器人的运动路径规划结果,控制机器人运动至目标羽毛球位置,并完成机器人对羽毛球的拾取操作。2.根据权利要求1所述的一种基于形态特征和单目测量的机器人自主捡球方法,其特征在于:所述步骤s1中机器人通过单目摄像头采集存在梯形畸变羽毛球和球场彩色图像信息。3.根据权利要求1所述的一种基于形态特征和单目测量的机器人自主捡球方法,其特征在于:所述步骤s2中数据处理的具体方法为:a1:对采集得到的存在梯形畸变的羽毛球及球场彩色图像信息进行预处理,得到存在梯形畸变的羽毛球及球场彩色图像信息中的羽毛球场边缘信息;a2:对步骤a1获取的羽毛球场边缘信息进行处理,通过透视变换矫正采集得到的存在梯形畸变的羽毛球及球场彩色图像信息,得到正投影形式下的羽毛球及球场彩色图像信息和羽毛球及球场的实际位置距离和存在梯形畸变羽毛球及球场彩色图像信息的映射关系。4.根据权利要求3所述的一种基于形态特征和单目测量的机器人自主捡球方法,其特征在于:所述步骤a1中预处理的方法为:b1:对采集得到的存在梯形畸变的羽毛球及球场彩色图像信息进行灰度变换,得到并保存存在梯形畸变的羽毛球及球场灰度图像;b2:使用高斯滤波器对存在梯形畸变的羽毛球及球场灰度图像进行滤波,消除图像数字化时所混入的噪声,简化图像所带的信息,得到滤波处理后的存在梯形畸变的羽毛球及球场灰度图像;b3:用模板掩码计算滤波处理后的存在梯形畸变的羽毛球及球场灰度图像的灰度的梯度的幅值和方向,并进行非极大值抑制,得到存在梯形畸变的羽毛球及球场灰度边缘图像。5.根据权利要求3所述的一种基于形态特征和单目测量的机器人自主捡球方法,其特征在于:所述步骤a2的具体方法为:c1:对存在梯形畸变的羽毛球及球场灰度图像中的羽毛球场边缘进行直线检测,得到存在梯形畸变的羽毛球及球场彩色图像中的羽毛球场边缘的角点像素点坐标;c2:根据存在梯形畸变的羽毛球及球场彩色图像中的羽毛球场边缘的角点像素点坐标,对存在梯形畸变的羽毛球及球场彩色图像进行投影变换,得到正投影形式下的羽毛球及球场彩色图像信息;c3:根据正投影形式下的羽毛球及球场彩色图像信息,通过实验得到羽毛球及球场的
实际位置距离和存在梯形畸变羽毛球及球场彩色图像信息的映射关系。6.根据权利要求1所述的一种基于形态特征和单目测量的机器人自主捡球方法,其特征在于:所述步骤s3具体包括如下过程:d1:对正投影形式下的羽毛球及球场彩色图像进行打标签操作,得到打好标签的数据集,并记为羽毛球源数据集;d2:搭建适用于羽毛球的多特征卷积神经网络,并确定网络结构,选择网络优化器并使用羽毛球源数据集与特征数据集对多特征卷积神经网络进行训练,得到训练好的适用于多特征卷积神经网络模型;d3:根据羽毛球及球场彩色图像与实际位置距离的映射关系,使用训练好的多特征卷积神经网络模型对羽毛球及球场彩色图像进行预测,得到目标羽毛球的位置信息。7.根据权利要求6所述的一种基于形态特征和单目测量的机器人自主捡球方法,其特征在于:所述步骤d1中打标签操作的过程为:用标签名badminton来对应正投影形式下的羽毛球及球场彩色图像中羽毛球所在的位置,在正投影形式下的羽毛球及球场彩色图像中羽毛球位置画出羽毛球候选框并打上标签,打上标签,将打上标签后的数据集记为羽毛球源数据集,源数据集的数据结构如下式所示:[num x
b y
b w
b h
b
]其中,num为0,对应羽毛球源数据集集中唯一的目标badminton,x
b
,y
b
,分别对应羽毛球源数据集中羽毛球候选框的左上角顶点在正投影形式下的羽毛球及球场彩色图像中的像素点坐标,w
b
,h
b
分别对应羽毛球源数据集中羽毛球候选框的宽度和高度在正投影形式下的羽毛球及球场彩色图像中所占的像素点个数。8.根据权利要求6所述的一种基于形态特征和单目测量的机器人自主捡球方法,其特征在于:所述步骤d2包括:e1:搭建由三部分适用于羽毛球的多特征卷积神经网络的第一部分,第一部分对正投影形式下的羽毛球及球场彩色图像输入五个卷积层和四个池化层,得到正投影形式下的羽毛球及球场彩色图像的中间张量;e2:搭建由三部分适用于羽毛球的多特征卷积神经网络的第二部分和第三部分,第二部分对得到正投影形式下的羽毛球及球场彩色图像的中间张量一方面输入五个卷积层和两个池化层,得到正投影形式下的羽毛球及球场彩色图像的大羽毛球的输出张量,第三部分对得到正投影形式下的羽毛球及球场彩色图像的中间张量输入一个上采样层和一个卷积层,得到正投影形式下的羽毛球及球场彩色图像的小羽毛球的输出张量;e3:羽毛球源数据集按照8:1:1的比例划分为训练集,验证集和测试集,在训练的过程中,将羽毛球源数据集的每个数据作为一个训练单元,损失函数使用交叉熵损失函数,采用adam优化器进行学习优化,对网络进行充分训练,得到训练好的适用于羽毛球的多特征卷积神经网络。9.根据权利要求8所述的一种基于形态特征和单目测量的机器人自主捡球方法,其特征在于:所述步骤d3包括:对步骤e3中练好的适用于羽毛球的多特征卷积神经网络得到的羽毛球张量进行处理,其中向量的前五列分别表示正投影形式下的羽毛球及球场彩色图像的羽毛球预测候选框
的左上角顶点在所述正投影形式下的羽毛球及球场彩色图像中的像素点坐标,宽度和高度在所述正投影形式下的羽毛球及球场彩色图像中所占的像素点个数,以及候选框内存在羽毛球的概率,第六列为1表示预测结果为badminton,后80个维度为0,由此,得到目标羽毛球在正投影形式下的羽毛球及球场彩色图像中的像素点坐标为:在正投影形式下的羽毛球及球场彩色图像中的像素点坐标为:其中,m
10
和m
01
分别表示目标羽毛球的中心点在正投影形式下的羽毛球及球场彩色图像中的x和y方向的像素点的坐标,x
r
,y
r
分别对应正投影形式下的羽毛球及球场彩色图像中羽毛球目标候选框的左上角顶点在正投影形式下的羽毛球及球场彩色图像中的像素点坐标,w
r
,h
r
分别对应正投影形式下的羽毛球及球场彩色图像中目标羽毛球候选框的宽度和高度在正投影形式下的羽毛球及球场彩色图像中所占的像素点个数;经过此计算,得到了目标羽毛球在正投影形式下的羽毛球及球场彩色图像中的位置信息。10.根据权利要求1所述的一种基于形态特征和单目测量的机器人自主捡球方法,其特征在于:所述步骤s4包括:f1:根据正投影形式下的羽毛球及球场彩色图像大小和像素点在真实羽毛球及球场中的实际大小得到目标羽毛球在实际羽毛球场中的位置信息;f2:根据目标羽毛球在实际羽毛球场中的位置信息,规划出羽毛球拾取路线。
技术总结
本发明公开了一种基于形态特征和单目测量的机器人自主捡球方法,包括:采集羽毛球和球场彩色图像信息,得到羽毛球及球场彩色图像信息;对得到的羽毛球及球场彩色图像信息进行数据处理,获得映射关系;利用搭建和训练好的特征提取网络寻找得到目标羽毛球质心的像素点位置,根据获得的映射关系得到目标羽毛球的位置信息;获取目标羽毛球和机器人的实际相对位置,完成机器人的运动路径规划;控制机器人完成对羽毛球的拾取操作。本发明充分考虑了羽毛球的特征和单目摄像头的局限和特点,设计了单目摄像头的测距方法和适用于羽毛球的卷积神经网络,实现了机器人对于目标羽毛球的自动识别和拾取,提升了羽毛球的拾取效率和自动化性能。性能。性能。


技术研发人员:谢非 刘宗熙 吴启宇 吴奕之 杨继全 叶欣雨 陈瑾杰 汪铁铮 李群召
受保护的技术使用者:南京师范大学
技术研发日:2021.02.24
技术公布日:2021/6/29

转载请注明原文地址:https://doc.8miu.com/read-22510.html

最新回复(0)