一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

数据处理方法和装置、计算机设备及计算机存储介质与流程

2022-05-06 05:35:36 来源:中国专利 TAG:


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.图1为本公开实施例提供的一种数据处理方法的实现流程示意图;
39.图2为本公开实施例提供的一种数据处理方法的实现流程示意图;
40.图3为本公开实施例提供的一种数据处理方法的实现流程示意图;
41.图4a为本公开实施例提供的一种数据处理系统的示意图;
42.图4b为本公开实施例提供的一种对弈机器人的部件间电连接示意图;
43.图4c为本公开实施例提供的一种对弈机器人的俯视图;
44.图4d为本公开实施例提供的一种对弈机器人前方有用户时,摄像头的观察画面示意图;
45.图4e为本公开实施例提供的一种对弈机器人下棋的流程示意图;
46.图5为本公开实施例提供的一种数据处理装置的组成结构示意图;
47.图6为本公开实施例中计算机设备的一种硬件实体示意图。
具体实施方式
48.为了使本公开的目的、技术方案和优点更加清楚,下面将结合附图对本公开作进一步地详细描述,所描述的实施例不应视为对本公开的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本公开保护的范围。
49.在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
50.在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本公开实施例能够以除了在这里图示或描述的以外的顺序实施。
51.除非另有定义,本文所使用的所有的技术和科学术语与属于本公开的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本公开实施例的目的,不是旨在限制本公开。
52.随着计算机和机器人技术的发展,能够实现与人进行交互的机器人逐渐有了很大的市场需求。目前的交互机器人,一般主要是以工业机器人作为机械本体结合视觉,经研发人员的研发后,实现下棋、绘图等功能。但是,这种工业机器人作为机械本体的交互机器人成本极高,完全不可能达到面向消费者的愿景。同时由于在人机交互过程中,机器人在制动过程中因受外界干扰、异常等多种因素的影响,容易造成机械臂抓取位置或绘制位置的偏差,如此不断叠加导致用户体验效果不佳。
53.本公开实施例提供一种数据处理方法,可以通过第一转换参数将第一坐标系中的位置转换为第二坐标系中的位置,实现对象在不同坐标系中位置的统一,以得到更加准确的目标操作对象、目标操作指令以及目标位置信息,从而提高目标操作指令执行的精准度,进而提高了用户的人机交互体验。下面说明本公开实施例提出的计算机设备的示例性应用。本公开实施例提出的计算机设备可以实施为手机终端、笔记本电脑、平板电脑、交互机器人(例如,对弈机器人、绘图机器人等)、其他线上游戏平台、服务器、台式计算机、智能电视、车载设备以及工业设备等。
54.下面,将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述。
55.图1为本公开实施例提供的一种数据处理方法的实现流程示意图,如图1所示,所述方法包括:
56.步骤s11、获取至少一个对象在第一坐标系中的第一位置信息。
57.这里,对象可以是任意合适场景的对象。例如,在对弈场景中,该对象可以是五子棋的棋子、象棋的棋子、围棋的棋子等。又例如,在绘制场景中,该对象可以是画笔、图形、橡皮擦等。
58.在一些实施方式中,第一坐标系可以包括但不限于像素坐标系、图像坐标系、相机坐标系、世界坐标系等。其中,像素坐标系可以是以图像左上角为原点,u轴和v轴分别平行于图像两边的坐标系,用(u,v)表示其坐标值,u表示图像所在的行,v表示图像所在的列。图像坐标系可以是以图像中心为坐标原点,x轴和y轴平行于图像两边,可以用(x,y)表示物体的坐标值。相机坐标系是以摄像机光心为圆心,摄像机的光轴与图像平面垂直。世界坐标系是为了描述相机的位置而被引入的,任何维的旋转可以表示为坐标向量与合适的方阵的乘积。在实施时,本领域技术人员可以根据实际情况选取合适的第一坐标系,本公开实施例并不限定。
59.例如,在对弈场景中,第一坐标系可以是相机坐标系。
60.在一些实施方式中,可以通过摄像模组、传感器、红外感应等方式来获取每一对象的第一位置信息。
61.在一些实施方式中,机器人在接收到操作指令之后,获取该第一位置信息。其中,操作指令用于指示当前由机器人操作。例如,该操作指令可以是用户按下第一按键,该第一按键可以是实体按键,也可以是虚拟按键。该第一按键可以是任意合适的按键,例如,开始键、开局键、完成键、下棋键。又例如,该操作指令还可以是用户执行的手势操作、语音操作、体感操作等。
62.步骤s12、基于第一转换参数,将每一对象在第一坐标系中的第一位置信息转换为在第二坐标系中的第二位置信息。
63.这里,第一转换参数可以是预先设置的,也可以是通过标定、对比等方式计算得到的。
64.在一些实施方式中,第二坐标系可以包括但不限于图像坐标系、像素坐标系等。在实施时,本领域技术人员可以根据实际情况选取合适的第二坐标系,本公开实施例并不限定。
65.例如,在对弈场景中,第二坐标系可以是棋盘图像坐标系。
66.在一些实施方式中,该第一转换参数可以预先存储在计算机设备中,也可以存储在云端、或其它终端中。在第一转换参数存储在计算机设备的情况下,计算机设备根据该第一转换参数,将第一位置信息转换为第二位置信息。在第一转换参数存储在其它终端的情况下,计算机设备将第一位置信息发送给其它终端,使得其它终端根据该第一转换参数,将第一位置信息转换为第二位置信息,并将该第二位置信息返回至计算机设备中。
67.步骤s13、基于每一所述对象的第二位置信息和预设操作规则,确定目标操作信息,目标操作信息包括目标操作对象、目标操作指令和在第二坐标系中的目标位置信息。
68.这里,预设操作规则可以包括但不限于对弈规则、绘制规则等。在实施时,可以根据实际交互场景确定预设操作规则,本公开不作限定。
69.在一些实施方式中,可以基于该第一位置信息,确定该场景信息。例如,在该第一位置信息包括五子棋的位置信息的情况下,可以确定该场景是五子棋场景。又例如,在该第
一位置信息包括图形位置的情况下,可以确定该场景是画画场景。
70.在一些实施方式中,可以预先建立场景信息和预设操作规则这二者之间的对应关系的映射表,并将该映射表存储至计算机设备、或其它终端中。在映射表存储在计算机设备的情况下,计算机设备根据场景信息,在映射表中确定与场景信息匹配的预设操作规则。在映射表存储在其它终端的情况下,计算机设备将场景信息发送给其它终端,使得其它终端根据该场景信息,在映射表中确定与场景信息匹配的预设操作规则,并预设操作规则返回至计算机设备中。
71.例如,在场景信息为五子棋场景的情况下,计算机设备根据该五子棋场景,在映射表中查找与五子棋场景匹配的预设操作规则为五子棋对弈规则。又例如,在场景信息为画画场景的情况下,计算机设备根据该画画场景,在映射表中查找与画画场景匹配的预设操作规则为画画规则。
72.目标操作对象可以是任意合适场景的对象。例如,在对弈场景中,该目标操作对象可以是棋子等。又例如,在绘制场景中,该目标操作对象可以是画笔、图形、橡皮擦等。
73.目标操作指令可以包括但不限于下棋指令、吃棋指令、绘制指令、移动指令、擦除指令等。在实施时,可以根据实际交互场景确定目标操作指令,本公开不作限定。
74.在一些实施方式中,在预设操作规则包括对弈规则的情况下,对象包括棋子,目标操作对象包括目标棋子,所述步骤13包括步骤s131,其中:
75.步骤s131、基于每一所述棋子的第二位置信息和对弈规则,确定目标棋子、目标操作指令和在所述第二坐标系中的目标位置信息。
76.这里,计算机设备可以是对弈机器人。目标操作指令可以包括但不限于下棋指令、吃棋指令等。
77.在一些实施方式中,在预设操作规则包括绘制规则的情况下,对象包括图形,目标操作对象包括目标图形,所述步骤13包括步骤s132,其中:
78.步骤s132、基于每一图形的第二位置信息和绘制规则,确定目标图形、目标操作指令和在第二坐标系中的目标位置信息。
79.这里,该计算机设备包括绘图机器人。目标操作指令可以包括但不限于绘制操作、移动操作、擦除操作等。
80.步骤s14、基于目标操作对象和目标位置信息,执行目标操作指令。
81.这里,根据应用场景,计算机设备控制对应的机械臂、机械手等硬件设备执行该目标操作指令。例如,在对弈场景中,目标操作对象包括目标棋子,计算机设备控制机械臂将目标棋子放置在目标位置。又例如,在对弈场景中,目标操作对象包括第一棋子和第二棋子,计算机设备控制机械臂将第一棋子移动至第二棋子的位置。还例如,在绘画场景中,目标操作对象包括目标图形,计算机设备控制机械臂以目标位置为起点绘制目标图形。
82.本公开实施例中,通过获取至少一个对象在第一坐标系中的第一位置信息;基于第一转换参数,将每一所述对象在所述第一坐标系中的所述第一位置信息转换为在第二坐标系中的第二位置信息;基于每一所述对象的第二位置信息和预设操作规则,确定目标操作信息,所述目标操作信息包括目标操作对象、目标操作指令和在所述第二坐标系中的目标位置信息;基于所述目标操作对象和所述目标位置信息,执行所述目标操作指令。这样,可以通过第一转换参数将第一坐标系中的位置转换为第二坐标系中的位置,实现对象在不
同坐标系中位置的统一,以得到更加准确的目标操作对象、目标操作指令以及目标位置信息,从而提高目标操作指令执行的精准度,进而提高了用户的人机交互体验。
83.图2为本公开实施例提供的一种数据处理方法的实现流程示意图,如图2所示,所述数据处理方法包括:
84.步骤s21、获取摄像模组采集的图像信息。
85.这里,计算机设备可以内置摄像模组,也可以外置摄像模组。该摄像模组用于采集目标区域的图像信息。该目标区域可以包括但不限于虚拟棋盘中的对弈区域、实体棋盘中的对弈区域、虚拟的绘制区域、实体的绘制区域等。摄像模组可以是任何合适的能够捕获图像的各类器件。在一些实施方式中,该摄像模组可以是普通相机或摄像机,也可以是具有极限广角拍摄的广角模组。
86.该图像信息可以是直接由摄像模组采集的未经处理的图像,也可以是由摄像模组采集的并经由计算机设备进行处理后的图像。
87.步骤s22、基于图像信息,获取每一对象在第一坐标系中的第一位置信息。
88.这里,可以采用合适的识别算法对图像信息进行识别,以获取每一对象的第一位置信息。例如,光学字符识别(optical character recognition,ocr)算法、基于深度学习的目标检测算法等。在实施时,本领域技术人员可以根据实际情况选取合适的识别算法,本公开实施例并不限定。
89.步骤s23、基于第一转换参数,将每一对象在第一坐标系中的第一位置信息转换为在第二坐标系中的第二位置信息。
90.步骤s24、基于每一对象的第二位置信息和预设操作规则,确定目标操作信息,目标操作信息包括目标操作对象、目标操作指令和在第二坐标系中的目标位置信息。
91.步骤s25、基于目标操作对象和目标位置信息,执行目标操作指令。
92.上述步骤s23至步骤s25对应于前述步骤s12至步骤s14,在实施时,可以参照前述步骤s12至s14的具体实施方式。
93.在一些实施方式中,所述方法还包括:
94.步骤s26、对摄像模组进行标定,确定第一转换参数。
95.这里,第一转换参数可以包括但不限于摄像模组的内参、畸变参数、外参、或其它转换矩阵等。其中,摄像模组的内参是摄像模组的固有参数,该固有参数可以从制造商获取,也可以通过对摄像模组进行标定来获取。该畸变参数用于校正由于摄像模组自身的特性带来的图像畸变。例如,镜头畸变,这是由于摄像模组的镜片因光线的通过产生不规则的折射带来的。
96.在一些实施方式中,可以使用线性标定方法、非线性优化标定方法、张正友标定方法、棋盘标定方法、角点标定方法、相机标定方法或其它标定方法对摄像模组进行标定,以获得该第一转换参数。本公开实施例对标定方法不作限定,只要能够获取该第一转换参数即可。
97.本公开实施例中,获取摄像模组采集的图像信息;基于图像信息,获取每一对象在第一坐标系中的第一位置信息;基于第一转换参数,将每一对象在第一坐标系中的第一位置信息转换为在第二坐标系中的第二位置信息;基于每一对象的第二位置信息和预设操作规则,确定目标操作信息,目标操作信息包括目标操作对象、目标操作指令和在第二坐标系
中的目标位置信息;基于目标操作对象和目标位置信息,执行目标操作指令。这样,在利用摄像模组获得准确的第一位置信息后,通过第一转换参数将第一坐标系中的位置转换为第二坐标系中的位置,实现对象在不同坐标系中位置的统一,以得到更加准确的目标操作对象、目标操作指令以及目标位置信息,从而进一步提高了目标操作指令执行的精准度。
98.图3为本公开实施例提供的一种数据处理方法的实现流程示意图,如图3所示,所述方法包括步骤s31至步骤s35:
99.步骤s31、获取至少一个对象在第一坐标系中的第一位置信息。
100.步骤s32、基于第一转换参数,将每一对象在第一坐标系中的第一位置信息转换为在第二坐标系中的第二位置信息。
101.步骤s33、基于每一所述对象的第二位置信息和预设操作规则,确定目标操作信息,目标操作信息包括目标操作对象、目标操作指令和在第二坐标系中的目标位置信息。
102.上述步骤s31至步骤s33对应于前述步骤s11至步骤s13,在实施时,可以参照前述步骤s11至s13的具体实施方式。
103.步骤s34、基于第二转换参数,将目标位置信息转换为在第三坐标系中的第三位置信息。
104.这里,第二转换参数可以是预先设置的,也可以是通过标定、对比等方式计算得到的。该第二转换参数可以包括但不限于转换矩阵等。在一些实施方式中,可以使用手眼标定方法进行标定,以获得该第二转换参数。本公开实施例对标定方法不作限定,只要能够获取该第二转换参数即可。第三坐标系可以包括但不限于空间坐标系、图像坐标系等。
105.例如,在对弈场景中,该第三坐标系可以是机械臂坐标系。
106.步骤s35、基于目标操作对象和第三位置信息,执行目标操作指令。
107.这里,目标操作指令可以包括但不限于下棋指令、吃棋指令、绘制指令、擦除指令、移动指令等。
108.在一些实施方式中,在目标操作指令包括下棋指令的情况下,所述第三位置信息包括所述目标棋子的第三子位置,所述步骤s35包括步骤s351,其中:
109.步骤s351、控制对弈机器人的机械臂将目标棋子放置在第三子位置。
110.这里,该计算机设备可以是对弈机器人,该对弈机器人至少包括机械臂。在实施时,对弈机器人控制机械臂抓取目标棋子后,并移动至第三位置信息处释放该目标棋子,以实现将目标棋子放置在第三子位置。
111.例如,在围棋对弈中,对弈机器人可以控制机械臂运动,从装有黑棋的框中抓取一黑棋,并运动至第三子位置处进行释放。
112.在一些实施方式中,在目标操作指令包括吃棋指令的情况下,目标棋子包括第一棋子和第二棋子,第三位置信息包括第一棋子的第一子位置和第二棋子的第二子位置,所述步骤s35包括步骤s361至步骤s362,其中:
113.步骤s361、基于第一子位置,控制机械臂取走第一棋子。
114.这里,该计算机设备可以是对弈机器人,该对弈机器人至少包括机械臂。第一棋子可以是对方的棋子。
115.步骤s362、基于第二子位置,控制机械臂抓取所述第二棋子,并将第二棋子移动至第一子位置。
116.这里,第二棋子可以是己方的棋子。
117.在实施时,在吃棋的过程中,对弈机器人可以先取对方棋子再放己方棋子,也可以先放己方棋子再取对方棋子,本公开实施例不作限定。
118.例如,在象棋对弈中,对弈机器人可以控制机械臂运动,先从对方的第一子位置中取走“炮”(第一棋子),再从第二子位置中抓取“马”(第二棋子),并将该“马”(第二棋子)移动至第二子位置。
119.在一些实施方式中,步骤s35,包括步骤s371至步骤s373中的至少之一:
120.步骤s371、在目标操作指令包括绘制指令的情况下,控制绘图机器人的机械臂按照目标位置信息绘制目标图形。
121.这里,该计算机设备可以是绘图机器人,该绘图机器人至少包括机械臂。该绘制指令可以包括但不限于画圆、画线段、画曲线、画点等。该目标位置信息可以包括但不限于起始位置、中心位置、终止位置等中的至少一个。
122.例如,在绘制指令是画圆,目标位置信息是起始位置的情况下,绘图机器人控制该机械臂在该起始位置处画圆。又例如,在绘制指令是画线段,目标位置信息是起始位置和终止位置的情况下,绘图机器人控制该机械臂从该起始位置处起画线段至该终止位置。
123.步骤s372、在目标操作指令包括擦除指令的情况下,控制绘图机器人的机械臂擦除目标位置的所述目标图形。
124.这里,该擦除指令可以包括但不限于擦除圆、擦除线段、擦除曲线、擦除点等。该目标位置信息可以包括但不限于起始位置、中心位置、终止位置等中的至少一个。
125.例如,在擦除指令是擦除曲线,目标位置信息是起始位置和终止位置的情况下,绘图机器人控制该机械臂擦除从该起始位置至该终止位置的曲线。
126.步骤s373、在所述目标操作指令包括移动指令的情况下,获取目标位置信息中的第四子位置和第五子位置,并控制绘图机器人的机械臂将位于第四子位置的目标图形移动至第五子位置。
127.这里,该擦除指令可以包括但不限于移动圆、移动线段、移动曲线、移动点等。该目标位置信息至少包括第四子位置和第五子位置。其中,该第四子位置可以是原来的位置,第五子位置可以是放置的位置。该第四子位置和第五子位置可以是起始位置、中心位置、终止位置等中的至少一个。
128.例如,在移动指令是移动点,第四子位置是第一起始位置、第五子位置是第二起始位置的情况下,绘图机器人控制该机械臂将位于第一起始位置(第四子位置)的点移动至第二起始位置(第五子位置)。
129.在一些实施方式中,所述方法还包括:
130.步骤s36、对机器人的机械臂进行标定,确定第二转换参数。
131.这里,计算机设备可以是机器人,该机器人至少包括机械臂。第二转换参数可以包括但不限于转换矩阵等。
132.在一些实施方式中,可以使用线性标定方法、非线性优化标定方法、手眼标定方法或其它标定方法对机械臂进行标定,以获得该第二转换参数。本公开实施例对标定方法不作限定,只要能够获取该第二转换参数即可。
133.本公开实施例中,获取至少一个对象在第一坐标系中的第一位置信息;基于第一
转换参数,将每一对象在所述第一坐标系中的第一位置信息转换为在第二坐标系中的第二位置信息;基于每一对象的第二位置信息和预设操作规则,确定目标操作信息,目标操作信息包括目标操作对象、目标操作指令和在第二坐标系中的目标位置信息;基于第二转换参数,将目标位置信息转换为在第三坐标系中的第三位置信息;基于目标操作对象和第三位置信息,执行目标操作指令。这样,在获取第二位置信息后,通过第二转换参数将第二坐标系中的位置转换为第三坐标系中的位置,实现对象在不同坐标系中位置的统一,以得到更加准确的目标操作对象、目标操作指令以及目标位置信息,从而进一步提高了目标操作指令执行的精准度。
134.图4a为本公开实施例提供的一种数据处理系统的示意图,如图4a所示,该数据处理系统40包括标定模块41、获取模块42、确定模块43和执行模块44。
135.所述标定模块41,用于基于标定方法,确定第一转换参数和第二转换参数。
136.所述获取模块42,用于获取至少一个对象在第一坐标系中的第一位置信息。
137.所述确定模块43,用于基于第一转换参数,将每一对象在第一坐标系中的第一位置信息转换为在第二坐标系中的第二位置信息,并基于每一对象的第二位置信息和预设操作规则,确定目标操作信息,该目标操作信息包括目标操作对象、目标操作指令和目标位置信息。
138.所述执行模块44,用于基于第二转换参数,将目标位置信息转换为在第三坐标系中的第三位置信息,基于目标操作对象和第三位置信息,执行目标操作指令。
139.在一些实施方式中,所述标定模块41包括:初始化模块和转换模块。其中,初始化模块用于初始化第一坐标系、第二坐标系和第三坐标系。转换模块用于基于标定方法,确定第一坐标系和第二坐标系之间的第一转换参数、第二坐标系和第三坐标系的第二转换参数。
140.例如,在对弈场景中,分别初始化视觉模组坐标系(第一坐标系)、棋盘坐标系(第二坐标系)及机械臂坐标系(第三坐标系),基于手眼标定方法,确定从视觉模组坐标系转换为棋盘坐标系的第一转换参数,并确定从棋盘坐标系转换为机械臂坐标系的第二转换参数。基于该第一转换参数和第二转换参数,实现视觉模组坐标系和机械臂坐标系的统一。
141.例如,以棋盘格子宽度为一个单位,定义棋盘坐标系量纲,并定义棋盘为二维直角坐标系。又例如,机械臂采用三轴机械臂,每个机械臂的每个自由度增加位置传感器,通过三轴机械臂正逆解,实现对机械臂进行标定。
142.在一些实施方式中,所述获取模块42,还用于:获取摄像模组采集的图像信息;基于图像信息,获取每一对象在第一坐标系中的第一位置信息。
143.图4b为本公开实施例提供的一种对弈机器人400的部件间电连接示意图,如图4b所示,对弈机器人至少包括处理单元401、摄像头402和机械臂403,其中处理单元401可以包括但不限于中央处理器、控制器等,其与摄像头402电连接,可以接收摄像头402拍摄到棋盘信息和对象目标物信息,并根据接收到的棋盘信息和对向目标物信息计算并发出控制机械臂403动作的指令或信号;处理单元402与机械臂403电连接,可以将控制机械臂403动作的指令或信号发送至机械臂403对应的驱动单元,以驱动机械臂403动作。其中,对弈机器人的对向目标物指位于对弈机器人对面的需要与对弈机器人交互的物体,该物体可以是用户、玩偶、另一对弈机器人等,本公开实施例对此不作限定。
144.图4c为本公开实施例提供的一种对弈机器人的俯视图,如图4c所示,对弈机器人至少包括摄像头402和机械臂403,该机械臂403可以在棋盘404的范围内移动,以抓取或释放棋子405,摄像头402可以拍摄到棋盘404的信息和用户信息。在对弈机器人设置有两个机械臂403的情况下,可以采用任意一个机械臂403来抓取和释放棋子405,而另外一个机械臂403在空余时间内可以进行一些动作,用于与用户交互信息。
145.图4d为本公开实施例提供的一种对弈机器人前方有用户时,摄像头的观察画面示意图,如图4d所示,摄像头402的可拍摄区域406包括互相垂直的第一侧边4061和第二侧边4062,第一侧边4061的长度大于第二侧边4062的长度,第二侧边4062与水平方向平行。进而,摄像头402的可拍摄区域406沿第一侧边4061的方向为竖直方向,沿第二侧边4062的方向为水平方向,且摄像头402可拍摄区域406沿第一侧边4061的方向的长度比较长,能很好的适应包括棋盘404和用户407的长距离拍摄要求;对应的,摄像头402可拍摄区域406沿第二侧边4062的方向的长度比较短,在保证水平方向上的拍摄需求的前提下,不会浪费拍摄资源。
146.在一些实施方式中,所述执行模块44,还用于:基于第二转换参数,将所述目标位置信息转换为在第三坐标系中的第三位置信息;基于所述目标操作对象和所述第三位置信息,执行所述目标操作指令。
147.在一些实施方式中,在预设操作规则包括对弈规则的情况下,对象包括棋子,目标操作对象包括目标棋子,所述确定模块43,还用于:基于每一棋子的第二位置信息和对弈规则,确定目标棋子、目标操作指令和在第二坐标系中的目标位置信息。
148.在一些实施方式中,在目标操作指令包括下棋指令的情况下,第三位置信息包括目标棋子的第三子位置,所述执行模块44,还用于:控制对弈机器人的机械臂将目标棋子放置在第三子位置。
149.在一些实施方式中,在目标操作指令包括吃棋指令的情况下,目标棋子包括第一棋子和第二棋子,第三位置信息包括第一棋子的第一子位置和第二棋子的第二子位置,所述执行模块44,还用于:基于第一子位置,控制机械臂取走第一棋子;基于第二子位置,控制机械臂抓取第二棋子,并将第二棋子移动至第一子位置。
150.在一些实施方式中,在预设操作规则包括绘制规则的情况下,对象包括图形,目标操作对象包括目标图形;所述确定模块43,还用于:基于每一图形的第二位置信息和绘制规则,确定目标图形、目标操作指令和在第二坐标系中的目标位置信息。
151.在一些实施方式中,所述执行模块44,还用于以下至少之一:在目标操作指令包括绘制指令的情况下,控制绘图机器人的机械臂按照目标位置信息绘制目标图形;在目标操作指令包括擦除指令的情况下,控制绘图机器人的机械臂擦除目标位置的目标图形;在目标操作指令包括移动指令的情况下,获取目标位置信息中的第四子位置和第五子位置,并控制绘图机器人的机械臂将位于第四子位置的目标图形移动至第五子位置。
152.在一些实施方式中,所述数据处理系统包括云端和对弈机器人,该云端包括标定模块41和确定模块43,该对弈机器人包括获取模块42和执行模块44。
153.例如,首先,对弈机器人通过摄像模组采集图像信息,并将该图像信息发送至云端。然后,云端基于该图像信息,获取每一棋子在摄像模组坐标系中的第一位置信息;基于该第一转换参数,将每一第一位置信息转换为在棋盘坐标系中的第二位置信息;基于每一
第二位置信息和对弈规则,确定目标棋子、目标操作指令和目标位置信息;基于该第二转换参数,将目标位置信息转换为在机械臂坐标系中的第三位置信息;将该目标棋子、目标操作指令和第三位置信息返给对弈机器人。最后,对弈机器人基于该目标棋子和第三位置信息,执行该目标操作指令。
154.又例如,首先,对弈机器人通过摄像模组采集图像信息,并将该图像信息发送至云端。然后,云端基于该图像信息,获取每一棋子在摄像模组坐标系中的第一位置信息;基于该第一转换参数,将每一第一位置信息转换为在棋盘坐标系中的第二位置信息;基于每一第二位置信息和对弈规则,确定目标棋子、目标操作指令和目标位置信息,将该目标棋子、目标操作指令和目标位置信息返给对弈机器人。最后,对弈机器人基于该第二转换参数,将目标位置信息转换为在机械臂坐标系中的第三位置信息;基于该目标棋子和第三位置信息,执行该目标操作指令。
155.图4e为本公开实施例提供的一种对弈机器人下棋的流程示意图,如图4e所示,该流程包括以下步骤:
156.步骤st1:用户下棋;
157.步骤st2:用户按下下棋键,发出对弈机器人下棋指令;
158.步骤st3:对弈机器人启动摄像模组采集图像信息,将该图像信息发送给云端;
159.步骤st4:云端进行图像识别、坐标转换和分析后,返回操作信息给对弈机器人;
160.步骤st5:对弈机器人解析该操作信息,得到第一棋子及其第一子位置、第二棋子及其第二子位置、和吃棋指令;
161.步骤st6:对弈机器人控制机械臂取走位于第一子位置的第一棋子;
162.步骤st7:对弈机器人控制机械臂移动至第二子位置,取走第二棋子,并放置第一子位置;
163.步骤st8:对弈机器人复位,采用语音、指示灯、或按键等方式提示用户下棋,继续执行步骤st1。
164.在本公开实施例中,在人机对弈的过程中,人将棋子放歪,通过摄像模块,基于棋盘坐标系的定义都可以实现准确抓取,并且在放置棋子的时候准确放置到棋盘格交叉点处,实现了“歪抓正放”,从而可以提高用户的对弈体验。
165.基于上述实施例,本公开实施例提供一种数据处理装置,图5为本公开实施例提供的一种数据处理装置的组成结构示意图,如图5所示,所述数据处理装置50包括第一获取模块51、第一转换模块52、第一确定模块53以及执行模块53。
166.所述第一获取模块51,用于获取至少一个对象在第一坐标系中的第一位置信息;
167.所述第一转换模块52,用于基于第一转换参数,将每一所述对象在所述第一坐标系中的所述第一位置信息转换为在第二坐标系中的第二位置信息;
168.所述第一确定模块53,用于基于每一所述对象的第二位置信息和预设操作规则,确定目标操作信息,所述目标操作信息包括目标操作对象、目标操作指令和在所述第二坐标系中的目标位置信息;
169.所述执行模块54,用于基于所述目标操作对象和所述目标位置信息,执行所述目标操作指令。
170.在一些实施方式中,所述第一获取模块51,还用于:获取摄像模组采集的图像信
息;基于所述图像信息,获取每一所述对象在第一坐标系中的第一位置信息。
171.在一些实施方式中,所述装置还包括:第二确定模块,用于对所述摄像模组进行标定,确定所述第一转换参数。
172.在一些实施方式中,所述执行模块54,还用于:基于第二转换参数,将所述目标位置信息转换为在第三坐标系中的第三位置信息;基于所述目标操作对象和所述第三位置信息,执行所述目标操作指令。
173.在一些实施方式中,所述装置还包括:第三确定模块,用于对所述机器人的机械臂进行标定,确定所述第二转换参数。
174.在一些实施方式中,在所述预设操作规则包括对弈规则的情况下,所述对象包括棋子,所述目标操作对象包括目标棋子,所述第一确定模块53,还用于:基于每一所述棋子的第二位置信息和对弈规则,确定目标棋子、目标操作指令和在所述第二坐标系中的目标位置信息。
175.在一些实施方式中,在所述目标操作指令包括下棋指令的情况下,所述第三位置信息包括所述目标棋子的第三子位置,所述执行模块54,还用于:控制所述对弈机器人的机械臂将所述目标棋子放置在所述第三子位置。
176.在一些实施方式中,在所述目标操作指令包括吃棋指令的情况下,所述目标棋子包括第一棋子和第二棋子,所述第三位置信息包括所述第一棋子的第一子位置和所述第二棋子的第二子位置,所述执行模块54,还用于:基于所述第一子位置,控制所述机械臂取走所述第一棋子;基于所述第二子位置,控制所述机械臂抓取所述第二棋子,并将所述第二棋子移动至所述第一子位置。
177.在一些实施方式中,在所述预设操作规则包括绘制规则的情况下,所述对象包括图形,所述目标操作对象包括目标图形;所述第一确定模块53,还用于:基于每一所述图形的第二位置信息和绘制规则,确定目标图形、目标操作指令和在所述第二坐标系中的目标位置信息。
178.在一些实施方式中,所述执行模块54,还用于以下至少之一:在所述目标操作指令包括绘制指令的情况下,控制所述绘图机器人的机械臂按照所述目标位置信息绘制所述目标图形;在所述目标操作指令包括擦除指令的情况下,控制所述绘图机器人的机械臂擦除所述目标位置的所述目标图形;在所述目标操作指令包括移动指令的情况下,获取所述目标位置信息中的第四子位置和第五子位置,并控制所述绘图机器人的机械臂将位于所述第四子位置的所述目标图形移动至所述第五子位置。
179.以上装置实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本公开装置实施例中未披露的技术细节,请参照本公开方法实施例的描述而理解。
180.需要说明的是,本公开实施例中,如果以软件功能模块的形式实现上述的对弈方法,并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本公开实施例的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一台电子设备(可以是个人计算机、服务器、或者网络设备等)执行本公开各个实施例所述方法的全部或部分。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read only memory,
rom)、磁碟或者光盘等各种可以存储程序代码的介质。这样,本公开实施例不限制于任何特定的硬件和软件结合。
181.本公开实施例提供一种计算机设备,包括存储器和处理器,所述存储器存储有可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述方法。
182.本公开实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现上述方法。所述计算机可读存储介质可以是瞬时性的,也可以是非瞬时性的。
183.本公开实施例提供一种计算机程序产品,所述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,所述计算机程序被计算机读取并执行时,实现上述方法中的部分或全部步骤。该计算机程序产品可以具体通过硬件、软件或其结合的方式实现。在一个可选实施例中,所述计算机程序产品具体体现为计算机存储介质,在另一个可选实施例中,计算机程序产品具体体现为软件产品,例如软件开发包(software development kit,sdk)等等。
184.这里需要指出的是:以上存储介质和设备实施例的描述,与上述方法实施例的描述是类似的,具有同方法实施例相似的有益效果。对于本公开存储介质和设备实施例中未披露的技术细节,请参照本公开方法实施例的描述而理解。
185.需要说明的是,图6为本公开实施例中计算机设备的一种硬件实体示意图,如图6所示,该计算机设备600的硬件实体包括:处理器601、通信接口602和存储器603,其中:
186.处理器601通常控制计算机设备600的总体操作。
187.通信接口602可以使计算机设备通过网络与其他终端或服务器通信。
188.存储器603配置为存储由处理器601可执行的指令和应用,还可以缓存待处理器601以及计算机设备600中各模块待处理或已经处理的数据(例如,图像数据、音频数据、语音通信数据和视频通信数据),可以通过闪存(flash)或随机访问存储器(random access memory,ram)实现。处理器601、通信接口602和存储器603之间可以通过总线604进行数据传输。
189.应理解,说明书通篇中提到的“一个实施例”或“一实施例”意味着与实施例有关的特定特征、结构或特性包括在本公开的至少一个实施例中。因此,在整个说明书各处出现的“在一个实施例中”或“在一实施例中”未必一定指相同的实施例。此外,这些特定的特征、结构或特性可以任意适合的方式结合在一个或多个实施例中。应理解,在本公开的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本公开实施例的实施过程构成任何限定。上述本公开实施例序号仅仅为了描述,不代表实施例的优劣。
190.需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。
191.在本公开所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为
一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
192.上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元;既可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
193.另外,在本公开实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
194.本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:移动存储设备、只读存储器(read only memory,rom)、磁碟或者光盘等各种可以存储程序代码的介质。
195.或者,本公开上述集成的单元如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。基于这样的理解,本公开的技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台电子设备(可以是个人计算机、服务器、或者网络设备等)执行本公开各个实施例所述方法的全部或部分。而前述的存储介质包括:移动存储设备、rom、磁碟或者光盘等各种可以存储程序代码的介质。
196.以上所述,仅为本公开的实施方式,但本公开的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本公开揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本公开的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献