一种弹琴机器人的控制方法及控制装置与流程

文档序号:36362977发布日期:2023-12-14 05:53阅读:23来源:国知局
一种弹琴机器人的控制方法及控制装置与流程

本说明书涉及人工智能领域以及视觉识别领域,尤其涉及一种弹琴机器人的控制方法及控制装置。


背景技术:

1、随着人工智能领域的迅速发展,大量机器人在众多实际应用场景中出现,如智能教育机器人、情感交流机器人、烹饪机器人、表演机器人等。而随着机器人精度的愈加进步,机器人所能做到的拟人化程度越来越高,一些更高拟人化需求的机器人应运而生,如,可弹奏钢琴的弹琴机器人。

2、然而,现有的弹琴机器人在拟人化弹奏过程中无法做到对琴键的准确定位,原因在于拟人化弹奏钢琴往往需要弹琴机器人的头颈部位做出动作,造成弹琴机器人相机视角的变化,而现有的定位方式并不能在相机移动的同时,准确的定位琴键的位置,导致弹琴机器人对于琴键的实时定位,存在着较大的误差。

3、因此,如何有效的减少弹琴机器人对琴键实时定位的误差,是一个亟待解决的问题。


技术实现思路

1、本说明书提供一种弹琴机器人的控制方法及控制装置,以部分的解决现有技术存在的上述问题。

2、本说明书采用下述技术方案:

3、本说明书提供了一种弹琴机器人的控制方法,包括:

4、弹琴机器人通过设置的相机,对琴键区域进行图像采集,得到采集后的图像;

5、从所述图像中识别出各图像特征点,根据所述图像中包含的各像素点对应的深度信息以及所述各图像特征点在所述图像中坐标,确定所述各图像特征点在相机坐标系下的坐标;

6、根据所述各图像特征点在相机坐标系下的坐标以及琴键模板,确定出所述琴键模板中各琴键在所述相机坐标系下的坐标,所述琴键模板用于表示各琴键在世界坐标系下的坐标;

7、通过所述弹琴机器人在弹琴过程中所处位姿以及各琴键在相机坐标系下的坐标,确定出所述弹琴机器人在弹琴过程中所处位姿下所述弹琴机器人与各琴键之间的相对位置;

8、通过预先确定的误差拟合函数,对所述相对位置进行误差补偿,获取补偿后相对位置,所述误差拟合函数用于表示各位姿下弹琴机器人对琴键的视觉定位误差,所述误差拟合函数是预先基于所述弹琴机器人在各位姿下的视觉定位误差值拟合出的;

9、根据所述补偿后相对位置,控制所述弹琴机器人上的机械臂进行弹奏。

10、可选地,从所述图像中识别出各图像特征点,根据所述图像中包含的各像素点对应的深度信息以及所述各图像特征点在所述图像中坐标,确定所述各图像特征点在相机坐标系下的坐标,具体包括:

11、确定所述图像对应的二值图像;

12、根据所述二值图像中像素值的变化,确定满足预设长度范围且满足预设斜率范围的直线,作为黑键区域与白键区域的分隔线,以及确定所述二值图像中各黑键的边缘线;

13、根据确定出的所述分隔线以及各黑键的边缘线,确定出所述各图像特征点,以及所述各图像特征点在所述二值图像中的坐标,其中,针对每个黑键,在该黑键中位于所述分隔线上的两个角点中选择距离所述二值图像中心点最近的一个作为图像特征点;

14、根据所述各图像特征点在所述二值图像中的坐标,确定出所述各图像特征点在所述图像中的坐标;

15、根据所述图像中包含的各像素点对应的深度信息以及所述各图像特征点在所述图像中坐标,确定出所述各图像特征点在相机坐标系下的坐标。

16、可选地,根据所述图像中包含的各像素点对应的深度信息以及所述各图像特征点在所述图像中坐标,确定出所述各图像特征点在相机坐标系下的坐标,具体包括:

17、根据所述图像中包含的各像素点对应的深度信息,确定琴键区域点云;

18、将所述琴键区域点云中包含的点云数据进行平面拟合,确定所述图像中白键表面的各像素点对应的理想深度信息;

19、通过所述理想深度信息以及所述各图像特征点在所述图像中的坐标,确定出所述各图像特征点在相机坐标系下的坐标。

20、可选地,根据所述各图像特征点在相机坐标系下的坐标以及琴键模板,确定出所述琴键模板中各琴键在所述相机坐标系下的坐标,具体包括:

21、根据所述各图像特征点,确定在相机坐标系下所述各图像特征点所形成的点云,将所述图像特征点在所述相机坐标系下所形成的点云与琴键模板中各特征点所对应的点云进行匹配,得到匹配结果,并根据所述匹配结果,获取所述各图像特征点在所述世界坐标系下的坐标;

22、根据所述各图像特征点在所述世界坐标系下的坐标以及所述各图像特征点在所述相机坐标系下坐标,建立第一转化矩阵,其中,所述第一转化矩阵用于表示所述相机坐标系与所述世界坐标系之间的坐标转化关系;

23、根据所述第一转化矩阵,确定出所述琴键模板中各琴键在所述相机坐标系下的坐标。

24、可选地,通过所述弹琴机器人在弹琴过程中所处位姿以及各琴键在相机坐标系下的坐标,确定出所述弹琴机器人在弹琴过程中所处位姿下所述弹琴机器人与各琴键之间的相对位置,具体包括:

25、通过预先确定的第二转化矩阵,将所述各琴键在相机坐标系下的坐标转化为机器人头部末端点坐标系下的坐标,所述第二转化矩阵用于表示所述相机坐标系与所述机器人头部末端点坐标系之间的坐标转化关系,其中,所述机器人头部末端点坐标系的原点为所述机器人头顶的中心点;

26、通过所述弹琴机器人根据弹琴过程中所处位姿确定出的第三转化矩阵,将所述各琴键在机器人头部末端点坐标系下的坐标转化为机器人坐标系下的坐标,其中,所述第三转化矩阵用于表示所述机器人头部末端点坐标系与所述机器人坐标系之间的坐标转化关系,所述机器人坐标系的原点位于弹琴机器人的腰部位置;

27、根据所述各琴键在机器人坐标系下的坐标,确定出所述弹琴机器人在弹琴过程中所处位姿下所述弹琴机器人与各琴键之间的相对位置。

28、可选地,预先确定所述误差拟合函数,具体包括:

29、在所述弹琴机器人执行弹琴之前,获取所述弹琴机器人在各预设位姿下采集到的图像,作为校准图像;

30、针对每个位姿,根据在该位姿下采集到的校准图像,确定预先标记出的各关键点在所述机器人坐标系下的坐标;

31、通过所述弹琴机器人将所述机械臂移动至所述各关键点在真实世界中的位置,并记录所述机械臂停留至各关键点在真实世界中的位置后所述机械臂在所述机器人坐标系中的坐标;

32、根据所述各关键点在机器人坐标系中的实际坐标以及基于所述校准图像确定出的所述各关键点在所述机器人坐标系下的坐标之间的坐标偏差,确定出该位姿下的视觉定位误差值;

33、根据各位姿下的视觉定位误差值,拟合误差拟合函数。

34、可选地,针对每个位姿,根据在该位姿下采集到的校准图像,确定预先标记出的各关键点在所述机器人坐标系下的坐标,具体包括:

35、针对每个位姿,弹琴机器人通过设置的相机,对琴键区域进行图像采集,获取采集后的该位姿下的校准图像;

36、从所述该位姿下的校准图像中识别出各图像特征点,根据所述该位姿下的各图像特征点在该位姿下的校准图像中的坐标以及该位姿下的校准图像中各像素点对应的深度信息,确定所述各图像特征点在所述相机坐标系下的坐标;

37、将该位姿下所述相机坐标系下的各图像特征点坐标与所述世界坐标系下琴键模板中各特征点坐标进行匹配,建立该位姿下所述相机坐标系与所述世界坐标系之间的坐标转化关系,根据该位姿下所述相机坐标系与所述世界坐标系之间的坐标转化关系确定出该位姿下所述各关键点在所述相机坐标系下的坐标;

38、通过该位姿下所述各关键点在相机坐标系下的坐标、预先确定的第二转化矩阵、所述弹琴机器人根据所述弹琴过程中所处位姿确定出的第三转化矩阵,确定出弹琴机器人在弹琴过程中该位姿下所述各关键点在机器人坐标系下的坐标。

39、本说明书提供了一种弹琴机器人的控制装置,包括:

40、采集模块,用于弹琴机器人通过设置的相机,对琴键区域进行图像采集,得到采集后的图像;

41、识别模块,用于从所述图像中识别出各图像特征点,根据所述图像中包含的各像素点对应的深度信息以及所述各图像特征点在所述图像中坐标,确定所述各图像特征点在相机坐标系下的坐标;

42、第一确定模块,用于根据所述各图像特征点在相机坐标系下的坐标以及琴键模板,确定出所述琴键模板中各琴键在所述相机坐标系下的坐标;

43、第二确定模块,用于通过所述弹琴机器人在弹琴过程中所处位姿以及各琴键在相机坐标系下的坐标,确定出所述弹琴机器人在弹琴过程中所处位姿下所述弹琴机器人与各琴键之间的相对位置;

44、误差补偿模块,用于通过预先确定的误差拟合函数,对所述相对位置进行误差补偿,获取补偿后相对位置;

45、控制模块,用于根据所述补偿后相对位置,控制所述弹琴机器人上的机械臂进行弹奏。

46、可选地,所述识别模块具体用于,

47、确定所述图像对应的二值图像;根据所述二值图像中像素值的变化,确定满足预设长度范围且满足预设斜率范围的直线,作为黑键区域与白键区域的分隔线,以及确定所述二值图像中各黑键的边缘线;根据确定出的所述分隔线以及各黑键的边缘线,确定出所述各图像特征点,以及所述各图像特征点在所述二值图像中的坐标,其中,针对每个黑键,在该黑键中位于所述分隔线上的两个角点中选择距离所述二值图像中心点最近的一个作为图像特征点;根据所述各图像特征点在所述二值图像中的坐标,确定出所述各图像特征点在所述图像中的坐标;根据所述图像中包含的各像素点对应的深度信息以及所述各图像特征点在所述图像中坐标,确定出所述各图像特征点在相机坐标系下的坐标。

48、可选地,所述识别模块具体用于,

49、根据所述图像中包含的各像素点对应的深度信息,确定琴键区域点云;将所述琴键区域点云中包含的点云数据进行平面拟合,确定所述图像中白键表面的各像素点对应的理想深度信息;通过所述理想深度信息以及所述各图像特征点在所述图像中的坐标,确定出所述各图像特征点在相机坐标系下的坐标。

50、可选地,所述第一确定模块具体用于,

51、根据所述各图像特征点,确定在相机坐标系下所述各图像特征点所形成的点云,将所述图像特征点在所述相机坐标系下所形成的点云与琴键模板中各特征点所对应的点云进行匹配,得到匹配结果,并根据所述匹配结果,获取所述各图像特征点在所述世界坐标系下的坐标;根据所述各图像特征点在所述世界坐标系下的坐标以及所述各图像特征点在所述相机坐标系下坐标,建立第一转化矩阵,其中,所述第一转化矩阵用于表示所述相机坐标系与所述世界坐标系之间的坐标转化关系;根据所述第一转化矩阵,确定出所述琴键模板中各琴键在所述相机坐标系下的坐标。

52、可选地,所述第二确定模块具体用于,

53、通过预先确定的第二转化矩阵,将所述各琴键在相机坐标系下的坐标转化为机器人头部末端点坐标系下的坐标,所述第二转化矩阵用于表示所述相机坐标系与所述机器人头部末端点坐标系之间的坐标转化关系,其中,所述机器人头部末端点坐标系的原点为所述机器人头顶的中心点;通过所述弹琴机器人根据弹琴过程中所处位姿确定出的第三转化矩阵,将所述各琴键在机器人头部末端点坐标系下的坐标转化为机器人坐标系下的坐标,其中,所述第三转化矩阵用于表示所述机器人头部末端点坐标系与所述机器人坐标系之间的坐标转化关系,所述机器人坐标系的原点位于弹琴机器人的腰部位置;根据所述各琴键在机器人坐标系下的坐标,确定出所述弹琴机器人在弹琴过程中所处位姿下所述弹琴机器人与各琴键之间的相对位置。

54、可选地,所述第二确定模块具体用于,

55、在所述弹琴机器人执行弹琴之前,获取所述弹琴机器人在各预设位姿下采集到的图像,作为校准图像;针对每个位姿,根据在该位姿下采集到的校准图像,确定预先标记出的各关键点在所述机器人坐标系下的坐标;通过所述弹琴机器人将所述机械臂移动至所述各关键点在真实世界中的位置,并记录所述机械臂停留至各关键点在真实世界中的位置后所述机械臂在所述机器人坐标系中的坐标;根据所述各关键点在机器人坐标系中的实际坐标以及基于所述校准图像确定出的所述各关键点在所述机器人坐标系下的坐标之间的坐标偏差,确定出该位姿下的视觉定位误差值;根据各位姿下的视觉定位误差值,拟合误差拟合函数。

56、可选地,所述第二确定模块具体用于,

57、针对每个位姿,弹琴机器人通过设置的相机,对琴键区域进行图像采集,获取采集后的该位姿下的校准图像;从所述该位姿下的校准图像中识别出各图像特征点,根据所述该位姿下的各图像特征点在该位姿下的校准图像中的坐标以及该位姿下的校准图像中各像素点对应的深度信息,确定所述各图像特征点在所述相机坐标系下的坐标;将该位姿下所述相机坐标系下的各图像特征点坐标与所述世界坐标系下琴键模板中各特征点坐标进行匹配,建立该位姿下所述相机坐标系与所述世界坐标系之间的坐标转化关系,根据该位姿下所述相机坐标系与所述世界坐标系之间的坐标转化关系确定出该位姿下所述各关键点在所述相机坐标系下的坐标;通过该位姿下所述各关键点在相机坐标系下的坐标、预先确定的第二转化矩阵、所述弹琴机器人根据所述弹琴过程中所处位姿确定出的第三转化矩阵,确定出弹琴机器人在弹琴过程中该位姿下所述各关键点在机器人坐标系下的坐标。

58、本说明书提供了一种计算机可读存储介质,所述存储介质存储有计算机程序,所述计算机程序被处理器执行时实现弹琴机器人的控制方法。

59、本说明书提供了一种电子设备,包括处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述弹琴机器人的控制方法。

60、本说明书采用的上述至少一个技术方案能够达到以下有益效果:

61、在本说明书提供的弹琴机器人的控制方法中,弹琴机器人通过设置的相机,对琴键区域进行图像采集,从采集后的图像中识别出图像特征点,根据采集后的图像中包含的各像素点对应的信息以及各图像特征点在采集后的图像中坐标,确定所述各图像特征点在相机坐标系下的坐标,根据所述各图像特征点在相机坐标系下的坐标以及琴键模板确定出琴键模板中各琴键在所述相机坐标系下的坐标。通过弹琴机器人在弹琴过程中所处位姿以及各琴键在相机坐标系下的坐标,确定出弹琴机器人与琴键之间的相对位置,通过预先确定的误差拟合函数,对弹琴机器人与琴键之间的相对位置进行误差补偿,可控制弹琴机器人上机械臂弹奏补偿后的相对位置。

62、从上述方法可以看出,通过预先确定的误差拟合函数对弹琴机器人与琴键之间的相对位置进行误差补偿,即可获取补偿后的相对位置,实现了对琴键的精准定位,通过误差拟合函数对弹琴机器人与琴键之间的相对位置进行误差补偿,减少了弹琴机器人对琴键实时定位的误差。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1