CN108582085B - 控制命令的确定方法、装置和机器人 - Google Patents
控制命令的确定方法、装置和机器人 Download PDFInfo
- Publication number
- CN108582085B CN108582085B CN201810794825.3A CN201810794825A CN108582085B CN 108582085 B CN108582085 B CN 108582085B CN 201810794825 A CN201810794825 A CN 201810794825A CN 108582085 B CN108582085 B CN 108582085B
- Authority
- CN
- China
- Prior art keywords
- image
- control command
- packaged
- determining
- command
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 64
- 238000004806 packaging method and process Methods 0.000 claims description 43
- 238000012858 packaging process Methods 0.000 claims description 3
- 238000005538 encapsulation Methods 0.000 abstract description 17
- 230000000875 corresponding effect Effects 0.000 description 127
- 230000009471 action Effects 0.000 description 51
- 230000006399 behavior Effects 0.000 description 48
- 238000010586 diagram Methods 0.000 description 13
- 230000007246 mechanism Effects 0.000 description 9
- 230000008569 process Effects 0.000 description 9
- 230000006870 function Effects 0.000 description 7
- 238000004458 analytical method Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 241000282414 Homo sapiens Species 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 239000003086 colorant Substances 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000010191 image analysis Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000033001 locomotion Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000004080 punching Methods 0.000 description 1
- 238000004064 recycling Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Images
Classifications
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J9/00—Programme-controlled manipulators
- B25J9/16—Programme controls
- B25J9/1615—Programme controls characterised by special kind of manipulator, e.g. planar, scara, gantry, cantilever, space, closed chain, passive/active joints and tendon driven manipulators
- B25J9/162—Mobile manipulator, movable base with manipulator arm mounted on it
Landscapes
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Orthopedic Medicine & Surgery (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Manipulator (AREA)
- Image Analysis (AREA)
Abstract
本发明提供了一种控制命令的确定方法、装置和机器人,其中,该方法包括:采集多个控制命令图像;如果控制命令图像中存在封装图像,根据该封装图像所对应的位置区域中的指定的控制命令图像对应的控制命令,确定该封装图像对应的控制命令。本发明通过图像对控制命令进行封装,从而得到较为复杂的控制命令,提高了命令封装的便捷性,从而使得用户对机器人的控制操作更加便捷。
Description
技术领域
本发明涉及机器人控制技术领域,尤其是涉及一种控制命令的确定方法、装置和机器人。
背景技术
随着控制技术的不断发展,机器人及其他智能终端的应用日渐丰富,机器人既能接受预先编排的程序,也能接受人类指挥,以完成复杂运动,服务于人类。
现有技术中已存在根据图像处理解析出信息,从而转化为命令,并完成相应功能的机器人产品。机器人识别图像执行命令常用的方式为:机器人首先识别含有某类信息的图像,然后解析出该图像包含的信息,得到该信息对应预设的命令,最后根据预设命令执行相应行为。但该方式机器人从图像中得到的信息较为单一,使得机器人的行为也较为单一;为了提高机器人行为的丰富性,往往需要使图像包含更多的信息,但这需要工程师修改或更新机器人的系统程序,操作繁琐,且用户也难以实现。
发明内容
有鉴于此,本发明的目的在于提供一种控制命令的确定方法、装置和机器人,以实现用户对控制命令的确定,从而得到较为复杂的控制命令,提高命令封装的便捷性,从而使得用户对机器人的控制操作更加便捷。
第一方面,本发明实施例提供了一种控制命令的确定方法,该方法应用于机器人,该方法包括:采集多个控制命令图像;如果控制命令图像中存在封装图像,根据封装图像所对应的位置区域中的指定的控制命令图像对应的控制命令,确定封装图像对应的控制命令。
结合第一方面,本发明实施例提供了第一方面的第一种可能的实施方式,其中,上述根据封装图像所对应的位置区域中的指定的控制命令图像对应的控制命令,确定封装图像对应的控制命令的步骤,包括:将封装图像所对应的位置区域中的指定的控制命令图像对应的控制命令,确定为子命令;根据指定的控制命令图像的位置关系确定子命令间的执行顺序;将子命令,以及子命令间的执行顺序确定为封装图像对应的控制命令。
结合第一方面或第一方面的第一种可能的实施方式,本发明实施例提供了第一方面的第二种可能的实施方式,其中,上述指定的控制命令图像通过下述方式获得:如果封装图像位于封装图像对应的位置区域中,将位置区域中,除封装图像以外的控制命令图像,确定为指定的控制命令图像;和/或,如果封装图像位于封装图像对应的位置区域之外,将位置区域中的控制命令图像,确定为指定的控制命令图像。
结合第一方面第二种可能的实施方式,本发明实施例提供了第一方面的第三种可能的实施方式,其中,上述如果封装图像位于封装图像对应的位置区域之外,将位置区域中的控制命令图像,确定为指定的控制命令图像的步骤,包括:如果封装图像位于封装图像对应的位置区域之外的指定位置,将位置区域中的控制命令图像,确定为指定的控制命令图像。
结合第一方面,本发明实施例提供了第一方面的第四种可能的实施方式,其中,上述封装图像具有指定特征;指定特征包括图像类型、形状、颜色或者亮度中的一种。
第二方面,本发明实施例提供了一种控制命令的确定装置,该装置设置于机器人,装置包括:图像采集模块,用于采集多个控制命令图像;命令确定模块,用于如果控制命令图像中存在封装图像,根据封装图像所对应的位置区域中的指定的控制命令图像对应的控制命令,确定封装图像对应的控制命令。
结合第二方面,本发明实施例提供了第二方面的第一种可能的实施方式,其中,上述命令确定模块,还用于:将封装图像所对应的位置区域中的指定的控制命令图像对应的控制命令,确定为子命令;根据指定的控制命令图像的位置关系确定子命令间的执行顺序;将子命令,以及子命令间的执行顺序确定为封装图像对应的控制命令。
结合第二方面或第二方面的第一种可能的实施方式,本发明实施例提供了第二方面的第二种可能的实施方式,其中,上述指定的控制命令图像通过下述方式获得:如果封装图像位于封装图像对应的位置区域中,将位置区域中,除封装图像以外的控制命令图像,确定为指定的控制命令图像;和/或,如果封装图像位于封装图像对应的位置区域之外,将位置区域中的控制命令图像,确定为指定的控制命令图像。
结合第二方面,本发明实施例提供了第二方面的第三种可能的实施方式,其中,上述封装图像具有指定特征;指定特征包括图像类型、形状、颜色或者亮度中的一种。
第三方面,本发明实施例提供了一种机器人,包括处理器和执行机构;上述控制命令的确定装置设置于处理器中。
本发明提供了一种控制命令的确定方法、装置和机器人,首先采集多个控制命令图像,如果该控制命令图像中存在封装图像,则根据该封装图像所对应的位置区域中的指定的控制命令图像对应的控制命令,确定该封装图像对应的控制命令。本发明通过封装图像对控制命令进行封装,从而得到较为复杂的控制命令,提高了命令封装的便捷性,从而使得用户对机器人的控制操作更加便捷。
本发明的其他特征和优点将在随后的说明书中阐述,或者,部分特征和优点可以从说明书推知或毫无疑义地确定,或者通过实施本发明的上述技术即可得知。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施方式,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种控制命令的确定方法的流程图;
图2为本发明实施例提供的一种控制命令图像的示意图;
图3为本发明实施例提供的一种图像识别实现机器人行为的解析流程图;
图4为本发明实施例提供的一种控制命令封装方式的示意图;
图5为本发明实施例提供的另一种控制命令封装方式的示意图;
图6为本发明实施例提供的一种编程图版的示意图;
图7为本发明实施例提供的一种各行为单元对应的机器人实际执行的步骤流程图;
图8为本发明实施例提供的另一种编程图版的示意图;
图9为本发明实施例提供的另一种各行为单元对应的机器人实际执行的步骤流程图;
图10为本发明实施例提供的另一种编程图版的示意图;
图11为本发明实施例提供的另一种编程图版的示意图;
图12为本发明实施例提供的另一种各行为单元对应的机器人实际执行的步骤流程图;
图13为本发明实施例提供的另一种各行为单元对应的机器人实际执行的步骤流程图;
图14为本发明实施例提供的另一种编程图版的示意图;
图15为本发明实施例提供的一种控制命令的确定装置的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
通常,机器人识别图像并执行命令的具体方式为:机器人识别图像,该图像中含有某类信息,查找到该信息对应预设的命令后,机器人根据预设命令执行相应行为。例如,如果定义当机器人发现数字,就报出数字的大小,此时机器人识别出数字“2”之后,语音播报,“这是2”;再如,机器人进行人脸识别,当发现人脸并识别出结果后,即完成相应打卡操作等。但该方式机器人从图像中得到的信息较为单一,使得机器人的行为也较为单一;为了提高机器人行为的丰富性,往往需要使图像包含更多的信息,但这需要工程师修改或更新机器人的系统程序,操作繁琐,且用户也难以实现。
基于此,本发明实施例提供了一种控制命令的确定方法、装置和机器人,该技术可以应用于空间交互型的机器人或其他智能终端的控制中,尤其可以应用于基于实物编程的机器人控制中;为便于对本实施例进行理解,首先对本发明实施例所公开的一种控制命令的确定方法进行详细介绍。
参见图1所示的一种控制命令的确定方法的流程图;该方法应用于机器人,该方法包括:
步骤S102,采集多个控制命令图像;
可以通过摄像装置或红外摄像装置采集该控制命令图像;该控制命令图像通常包含图样、形状、符号、文字、条码等具有较为显著的识别特征,以便于机器人可以快速识别摄像采集区域内的图像中是否包含控制命令图像,并准确识别该控制命令图像对应的控制命令。
参见图2所示的一种控制命令图像的示意图;左侧图像为“箭头”形状,可以用于代表“前进”的控制命令;中部图像为“音乐符号”形状,可以用于代表“播放音乐”的控制命令;右侧图像为“L1”文字,可以用于代表“按照第1条设定线路行走”的控制命令。
具体地,上述控制命令图像(也可以称为命令图片)可以设置为多种颜色和形状,例如,矩形、三角形、圆形等;该控制命令图像上还可以设置各种图像,文字或编码中的一种或者多种的组合。除了用于表达控制命令的控制命令图像外,还可以设置用于表达其他特殊含义的图像。
上述控制命令图像可以代表机器人的某个动作或者某类行为的组合,该控制命令图像可附着在任意实物上,例如积木、拼图、各种拼接模块、贴纸等;还可以由电子显示屏显示或者投影设备显示。
可以预先设置各控制命令图像的图像特征与控制命令的对应关系,机器人采集到控制命令图像后,解析出该图像的图像特征,再从上述对应关系中查找到对应的控制命令;机器人得到该控制命令后,再控制驱动执行机构执行相应的动作。
步骤S104,如果控制命令图像中存在封装图像,根据封装图像所对应的位置区域中的指定的控制命令图像对应的控制命令,确定封装图像对应的控制命令。
为了从控制命令图像中识别出封装图像,该封装图像可以预先进行定义,例如,封装图像可以放置在特定的位置,或者是具有特定的大小、颜色、形状、背景等预先设定的特征等。在初始状态下,该封装图像对应的控制命令可以为指定的封装生成命令,或者不包含任何命令;该封装图像所对应的位置区域也可以预先设置,例如,可以在图板上预先划定某一位置区域作为该封装图像所对应的位置区域。
上述位置区域中的指定的控制命令图像,可以为该位置区域中的全部的控制命令图像,也可以为部分控制命令图像;例如,如果该封装图像也位于该位置区域中,此时位置区域中的指定的控制命令图像通常为除该封装图像以外的其他控制命令图像。
如果上述位置区域中包含多个控制命令图像,则封装图像对应的控制命令通常包括多个子命令;该封装图像的控制命令在执行时,可以按照预先设定的顺序执行该子命令,该预先设定的顺序可以为同时执行、顺序执行、循环执行等;该预先设定的顺序可以根据各子命令对应的控制命令图像所处的位置确定。
上述封装图像的控制命令中各子命令的顺序可以根据用户的实际需要进行预先设置,例如,用户想要机器人先完成播放语音的动作,再完成向后退的动作,可以将播放语音作为顺序执行的第一个子命令,将向后退作为顺序执行的第二个子命令。
上述确定封装图像对应的控制命令过程,也可以称为控制命令的封装过程,可以在机器人完成上述指定的控制命令图像对应的控制命令的同时进行执行,也可以有单独的执行过程;执行动作完成后,当再次使用该封装图像时,该封装图像具体执行的控制命令与上述确定的封装图像对应的控制命令一致。封装图像的控制命令主要是用于根据相应的控制命令,来进行后续的操作,机器人可以按照封装图像的控制命令中各子命令的执行顺序执行各子命令。
本发明实施例提供了一种控制命令的确定方法,首先采集多个控制命令图像,如果该控制命令图像中存在封装图像,则根据该封装图像所对应的位置区域中的指定的控制命令图像对应的控制命令,确定该封装图像对应的控制命令。该方式通过封装图像对控制命令进行封装,从而得到较为复杂的控制命令,提高了命令封装的便捷性,从而使得用户对机器人的控制操作更加便捷。
本发明实施例还提供了另一种控制命令的确定方法,以及基于该控制命令确定方法的机器人控制方法,该方法在上述图1所示方法的基础上实现;该方法中,首先定义了一种基于图像的机器人命令方法,通过解析机器人的行为,并定义对机器人的图像命令或命令,从而实现机器人行为的命令封装。通过图像识别实现机器人行为的解析流程如图3所示。该定义方法首先定义了一种机器人的行为逻辑,将机器人的行为做了分割与描述;并将机器人行为与空间的实体相对应,通过机器人的摄像装置或其他传感器获取相应信息,整合后由机器人执行;从而实现通过空间实体化的简单交互,实现机器人复杂行为的过程。
该定义方法具体包括如下部分:
(1)建立机器人的行为逻辑,即对机器人的行为进行定义;具体包括对机器人的具体表现进行分类、将机器人的复杂行为分割为行为单元,每个行为单元设置为一组同时执行的动作单元的组合等。
机器人的一系列动作是由每个执行机构配合组成的,每个执行机构在时间线上都可独立运动或表现,作为一个动作单元。机器人完成一个复杂动作,需要在同一时间段下,各个执行机构同时动作。而机器人同时执行的一组动作可以组成一个组合,作为机器人行为的一个单元,即多个动作单元组成一个行为单元,多个行为单元连接在一起,形成了一个机器人的复杂动作。
这样可以将机器人的复杂动作进行拆分,分解为具体的命令,当然,也可根据机器人实际的功能进行机器人命令的定义。本实施例中,一个行为单元相当于上述一组控制命令图像;一个动作单元相当于上述一个控制命令图像,或者一个控制命令图像对应的动作。
(2)建立图像命令定义与行为对应关系,包括一些特殊命令(例如,上述封装图像对应的封装生成命令)的定义;具体而言,对于机器人接受的图像命令,可将一副图片分割为若干个图像命令的集。将机器人的行为对应到命令上,该命令可以是动作单元、行为单元、或定义好的动作组合。
(3)上述定义完毕后,即实现机器人与图像的交互,机器人通过图像识别、命令解析,依照预设逻辑执行各行为单元或功能,完成将命令转换为行为的过程,从而实现相应的行为、表现或功能。
基于上述机器人行为的解析流程,下面进一步描述如何确定封装图像对应的控制命令;具体地,如果控制命令图像中存在封装图像,将封装图像所对应的位置区域中的指定的控制命令图像对应的控制命令,确定为子命令;根据指定的控制命令图像的位置关系确定子命令间的执行顺序;将子命令,以及子命令间的执行顺序保存确定为封装图像对应的控制命令。
机器人采集控制命令图像,并识别出控制命令图像中是否存在封装图像,如果存在,则获取该封装图像对应的控制命令,如果该控制命令中存在子命令,说明该封装图像已完成命令封装过程,则根据该封装图像的控制命令中,各子命令以及子命令之间的执行顺序,按照执行顺序执行子命令,完成封装图像的控制命令执行;若封装图像的控制命令为空或者为封装生成命令,则先按照上述方式确定封装图像的控制命令。
如上述实施例所述,在确定封装图像对应的控制命令的过程中,根据该封装图像所对应的位置区域中,指定的控制命令图像对应的控制命令,确定该封装图像对应的控制命令;其中,该封装图像对应的控制命令中,各个子命令的执行顺序根据指定的控制命令图像的位置关系确定。
其中,上述指定的控制命令图像,具体可以通过多种方式确定,在其中一种方式中,如果封装图像位于封装图像对应的位置区域中,将位置区域中,除封装图像以外的控制命令图像,确定为指定的控制命令图像。
具体而言,如图4所示的一种控制命令封装方式的示意图;在图4左边的图板中,整个图板均为封装图像对应的位置区域,即图4中所示的标有封装指令映射区域字样的框起来的区域,图板中“F”为封装图像,控制命令图像1、控制命令图像2、控制命令图像3为指定的控制命令图像,根据控制命令图像1、控制命令图像2、控制命令图像3的位置关系,可以确定各控制命令图像对应控制命令的执行顺序,例如,可以同时执行控制命令图像1、控制命令图像2对应的控制命令,再执行控制命令图像3对应的控制命令。
在图4中间的图板中,整个图板被分成4个位置区域,每一行为一个位置区域,图板中“F1”、“F2”均为封装图像,控制命令图像1、控制命令图像2为封装图像“F1”指定的控制命令图像,控制命令图像1和控制命令图像2对应的控制命令可以同时执行;控制命令图像4为封装图像“F2”指定的控制命令图像。
在图4右边的图板中,整个图板被分成左右两个位置区域,图板中带有灰度背景的“F”为封装图像,控制命令图像1、控制命令图像2为封装图像“F”指定的控制命令图像,在左边的位置区域中,可以先执行控制命令图像1对应的控制命令,再执行控制命令图像2对应的控制命令。
在另外一种方式中,如果封装图像位于封装图像对应的位置区域之外,将位置区域中的控制命令图像,确定为指定的控制命令图像。
具体而言,如图5所示的另一种控制命令封装方式的示意图;在图5左边的图板中,“F”为封装图像,独立于位置区域之外,该位置区域为图板中所有的控制命令图像放置区域,即图5中所示的标有封装指令映射区域字样的框起来的区域,控制命令图像1、控制命令图像2、控制命令图像3位于该位置区域中,被确定为指定的控制命令图像;根据控制命令图像1、控制命令图像2、控制命令图像3的位置关系,可以同时执行控制命令图像1、控制命令图像2对应的控制命令,再执行控制命令图像3对应的控制命令。
在图5中间的图板中,“F”为封装图像,独立于位置区域之外,该位置区域为图板中部分的控制命令图像放置区域,即图5中所示的用方框框起来的区域;控制命令图像1、控制命令图像2位于该位置区域中,可以先执行控制命令图像1对应的控制命令,再执行控制命令图像2对应的控制命令。
在图5右边的图板中,“F1”、“F2”为封装图像,独立于位置区域之外;具体可以根据封装图像对应的控制命令图像与位置区域的位置关系,确定每个封装图像对应的控制命令图像对应的位置区域;如图中,可以将处于同一行的位置区域确定为该行的控制命令图像对应的封装图像的位置区域;因此,控制命令图像1、控制命令图像2位于封装图像“F1”对应的位置区域中,被确定“F1”对应的指定的控制命令图像,控制命令图像4位于封装图像“F2”对应的位置区域中,被确定为“F2”对应的指定的控制命令图像。
上述提供了两种指定的控制命令图像的确定方式,即如果封装图像位于封装图像对应的位置区域中,将位置区域中,除封装图像以外的控制命令图像,确定为指定的控制命令图像;以及如果封装图像位于封装图像对应的位置区域之外,将位置区域中的控制命令图像,确定为指定的控制命令图像;在实际实现时,可以通过上述两种方式之一确定指定的控制命令图像,也可以同时使用这两种方式确定指定的控制命令图像。
进一步地,上述指定的控制命令图像,具体还可以通过下述方式确定:如果封装图像位于封装图像对应的位置区域之外的指定位置,将位置区域中的控制命令图像,确定为指定的控制命令图像。其中,该指定位置可以为预先划定的指定区域,如上述图5中所示,左边图板中,右上角的位置即为该指定位置;在如右边图板中,最右侧一列的位置即为该指定位置。
上述封装图像通常具有指定特征;该指定特征包括图像的类型、形状、颜色或者亮度中的一种。如上述提到的封装图像“F”,将特定字母作为封装图像,将数字作为指定的控制命令图像,当特定字母出现时,说明需要确定该特定字母对应的封装图像的控制命令。
在确定封装图像的控制命令过程中,可以对一个独立块进行封装,成为该独立块的复制块,当独立块受限于数量或者其他因素时,经由封装图像封装得到的复制块可以实现独立块扩充的目的。例如,一块用于机器人采集控制命令图像的图板预先划定有指定数量的位置,用于放置控制命令图像,如16个位置;此时,该机器人可能一次仅能识别16个控制命令图像对应的控制命令,并执行16个动作;而如果控制命令图像中存在封装图像,该封装图像的控制命令中包括多个控制命令,如16个,此时,机器人采集一次图板上的控制命令图像后,可以执行多于16个动作,从而增加了机器人执行动作的数量。
上述方式中,定义了机器人的图像解析流程,并定义了封装图像的控制命令的确定方式,可以使用户通过控制命令图像对控制命令进行封装,从而得到较为复杂的控制命令,提高了命令封装的便捷性,从而使得用户对机器人的控制操作更加便捷;同时,较为复杂的控制命令可以控制控制机器人执行复杂的行为,提高了机器人行为的丰富性。
基于上述控制命令的确定方法,本发明实施例还提供了一种机器人控制方法;该方法可以在封装图像的控制命令确定完成之后执行;该方法包括如下步骤:
步骤(1),采集多个控制命令图像;
步骤(2),识别各控制命令图像对应的控制命令,执行该控制命令;如果控制命令图像中存在封装图像,获取该封装图像对应的控制命令中各子命令,以及子命令间的执行顺序;按照执行顺序执行各子命令,以完成封装图像的控制命令的执行。
上述机器人控制方法中,对简单的控制命令图像进行封装处理,从而控制机器人执行较为复杂的行为,同时也扩展了机器人可执行动作的数量,提高了机器人行为的丰富性,使得用户对机器人的控制操作更加便捷。
为了便于理解,本发明实施例还提供了一种上述机器人控制方法的具体应用示例,包括如下步骤:
步骤(1)定义机器人行为含义,及图像命令(相当于上述控制命令)与行为逻辑的对应关系,设定图板中封装图像的放置区域,及其对应的位置区域。
步骤(2)用户在编程图板上插接贴有命令图片(相当于上述控制命令图像)的插片,如图6所示,其中图板角部的黑点用于机器人识别图板。
步骤(3)将图板树立在机器人前,以便于机器人扫描,机器人识别图板,进而识别图板上的各命令图片(相当于上述控制命令图像);然后自动识别出封装图像;根据封装图像确定其对应的位置区域,解析出该区域中图片对应的控制命令。
步骤(4)根据设定的行为逻辑,执行封装图像对应的各控制命令,完成相应行为与功能,同时将各控制命令,以及各控制命令间的执行顺序封装至该封装图像中。
图7为各行为单元对应的机器人实际执行的步骤流程图,图中,首先执行行为单元1(轮子向前走1m;播放语音1:你好,我是一个机器人;右手臂摆动1次),然后执行行为单元2(旋转180度;播放语音2:欢迎来到这个商场),最后执行行为单元3(播放语音3:希望你今天玩的愉快;右手臂抬起)。上述执行单元中,各命令图片的含义是可以为预先设定完成的,其播放的语音也是预先生成或者录制的。
封装图像对应的控制命令可以被多次调用。如图8所示,图6中的控制命令图像对应的控制命令封装在图8中的封装图像“F”中,当封装图像“F”被调用时,对应图9各行为单元对应的机器人实际执行的步骤,可知,机器人识别图8所示的图板后的行为是:首先执行行为单元1(轮子向前走1m;播放语音1:你好,我是一个机器人;右手臂摆动1次),其次执行行为单元2(旋转180度;播放语音2:欢迎来到这个商场),然后执行行为单元3(播放语音3:希望你今天玩的愉快;右手臂抬起),最后执行行为单元4(播放语音4:最后偷偷告诉你,今天商场有活动呦;向后退);上述各行为单元中的每个动作由不同的执行机构同时执行。
上述方式中,实现了通过封装图像的复杂命令,来控制机器人执行复杂的行为,简化了机器人的控制方式,提高了机器人行为的丰富性。
本发明实施例还提供了另一种控制命令的确定方法,该方法在上述方法的基础上实现,为了进一步丰富机器人的行为,上述封装图像的控制命令可以与条件、判断、循环等组合使用,实现图像的控制命令的循环使用或者多次调用等功能。例如,封装图像的控制命令确定后,确定好的控制命令可以作为子命令再次被封装;具体而言,在上述按照执行顺序执行各子命令,以完成执行封装图像的控制命令的步骤中,如果子命令中存在封装图像对应的控制命令,获取该控制命令对应的二级子命令,以及二级子命令间的执行顺序;按照执行顺序执行二级子命令,以完成子命令中封装图像对应的控制命令的执行。
下面通过具体应用示例说明,该应用示例包括如下步骤:
步骤(1)定义机器人行为含义,及图像命令(相当于上述控制命令)与行为逻辑的对应关系,设定图板中每行为一个分组的位置区域。
步骤(2)用户在编程图板上插接贴有命令图片(相当于上述控制命令图像)的插片,如图10所示,其中图板角部的黑点用于机器人识别图板。
步骤(3)将图板树立在机器人前,以便于机器人扫描,机器人识别图板,进而识别图板上的各命令图片;然后自动识别出封装图像;根据封装图像确定其对应的位置区域,解析出该区域中图片对应的命令。
步骤(4)将各命令图片对象的控制命令封装为该封装图像的控制命令。
封装完成后,封装图像F1包含的控制命令以及控制命令直接的执行顺序,如下述图11所示;首先执行行为单元1(轮子向前走1m;播放语音1:你好,我是一个机器人;右手臂摆动1次),然后执行行为单元2(旋转180度;播放语音2:欢迎来到这个商场),最后执行行为单元3(播放语音3:希望你今天玩的愉快;右手臂抬起),完成封装图像“F1”的控制命令执行。上述执行单元中,各命令图片的含义是可以为预先设定完成的,其播放的语音也是预先生成或者录制的;上述各行为单元中的每个动作由不同的执行机构同时执行。
步骤(5)用户在编程图板上重新插接贴有命令图片的插片,如图12所示,其中图板角部的黑点用于机器人识别图板。
步骤(6)将图板树立在机器人前,以便于机器人扫描,机器人识别图板,进而识别图板上的各命令图片(相当于上述控制命令图像);然后自动识别出封装图像;根据封装图像对应的控制命令图像确定其对应的位置区域,解析出该区域中图片对应的命令。
步骤(7)将各命令图片对象的控制命令封装为该封装图像的控制命令。
步骤(7)中,在封装图像“F1”的基础上继续进行封装,封装完成后,控制命令图像F2对应的控制命令以及控制命令直接的执行顺序,如下述图13所示;首先执行行为单元1(轮子向前走1m;播放语音1:你好,我是一个机器人;右手臂摆动1次),其次执行行为单元2(旋转180度;播放语音2:欢迎来到这个商场),然后执行行为单元3(播放语音3:希望你今天玩的愉快;右手臂抬起),接着执行行为单元4(向后退;播放语音4:最后偷偷告诉你,今天商场有活动呦),继续执行行为单元5(举左手;播放语音5:有活动的地方就在我的左手边),最后执行行为单元6(向左转),完成封装图像“F2”的执行;上述各行为单元中的每个动作由不同的执行机构同时执行。
步骤(8)用户在编程图板上重新插接贴有命令图片的插片,如图14所示,其中图板角部的黑点用于机器人识别图板。图14中仅有一张控制命令图像F2,此时,机器人执行的控制命令与上述图13所示。
本发明实施例对封装图像进行多次封装,使得机器人实现更为复杂的行为,提高了机器人行为的丰富性,使得用户对机器人的控制操作更加便捷。
对应于上述方法实施例,参见图15所示的一种控制命令的确定装置的结构示意图,该装置设置于机器人,该装置包括:
图像采集模块150,用于采集多个控制命令图像;
命令确定模块151,用于如果控制命令图像中存在封装图像,根据封装图像所对应的位置区域中的指定的控制命令图像对应的控制命令,确定封装图像对应的控制命令。
上述命令确定模块,还用于:将封装图像所对应的位置区域中的指定的控制命令图像对应的控制命令,确定为子命令;根据指定的控制命令图像的位置关系确定子命令间的执行顺序;将子命令,以及子命令间的执行顺序保存确定为封装图像对应的控制命令。
上述指定的控制命令图像通过下述方式获得:如果封装图像位于封装图像对应的位置区域中,将位置区域中,除封装图像以外的控制命令图像,确定为指定的控制命令图像;和/或,如果封装图像位于封装图像对应的位置区域之外,将位置区域中的控制命令图像,确定为指定的控制命令图像。
上述封装图像具有指定特征;指定特征包括图像类型、形状、颜色或者亮度中的一种。
本发明实施例提供的控制命令的确定装置,与上述实施例提供的控制命令的确定方法具有相同的技术特征,所以也能解决相同的技术问题,达到相同的技术效果。
本实施例还提供了一种与上述方法实施例相对应的机器人,该机器人包括处理器和执行机构;上述装置设置于机器人的处理器中。
本发明实施例所提供的一种控制命令的确定方法、装置和机器人,可以实现通过简单的图片控制命令来控制机器人执行复杂的行为;也可以解析复杂的图片命令,以实现图片命令的封装,而且该方式用图像输入命令,在短时间内给机器人复杂的命令,从而控制机器人的复杂行为,提高了机器人的执行效率,丰富了机器人的行为动作。
本发明实施例所提供的一种控制命令的确定方法、装置和机器人的计算机程序产品,包括存储了程序代码的计算机可读存储介质,所述程序代码包括的命令可用于执行前面方法实施例中所述的方法,具体实现可参见方法实施例,在此不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统和/或装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干命令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
最后应说明的是:以上所述实施例,仅为本发明的具体实施方式,用以说明本发明的技术方案,而非对其限制,本发明的保护范围并不局限于此,尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,其依然可以对前述实施例所记载的技术方案进行修改或可轻易想到变化,或者对其中部分技术特征进行等同替换;而这些修改、变化或者替换,并不使相应技术方案的本质脱离本发明实施例技术方案的精神和范围,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应所述以权利要求的保护范围为准。
Claims (6)
1.一种控制命令的确定方法,其特征在于,所述方法应用于机器人,所述方法包括:
采集多个控制命令图像;
如果所述控制命令图像中存在封装图像,根据所述封装图像所对应的位置区域中的指定的控制命令图像对应的控制命令,确定所述封装图像对应的控制命令;
根据所述封装图像所对应的位置区域中的指定的控制命令图像对应的控制命令,确定所述封装图像对应的控制命令的步骤,包括:将所述封装图像所对应的位置区域中的指定的控制命令图像对应的控制命令,确定为子命令;根据所述指定的控制命令图像的位置关系确定所述子命令间的执行顺序;将所述子命令,以及所述子命令间的执行顺序确定为所述封装图像对应的控制命令;
如果所述封装图像对应的控制命令中存在子命令,所述封装图像已完成命令封装过程,则根据该封装图像的控制命令中各子命令以及子命令之间的执行顺序,按照执行顺序执行子命令,完成封装图像的控制命令执行;若所述封装图像的控制命令为空或者为封装生成命令,根据所述确定所述封装图像对应的控制命令的步骤确定所述封装图像对应的控制命令;其中,所述封装生成命令包括图像命令定义与行为对应关系;
所述指定的控制命令图像通过下述方式获得:如果所述封装图像位于所述封装图像对应的所述位置区域中,将所述位置区域中,除所述封装图像以外的控制命令图像,确定为指定的控制命令图像;
和,如果所述封装图像位于所述封装图像对应的所述位置区域之外,将所述位置区域中的控制命令图像,确定为指定的控制命令图像。
2.根据权利要求1所述的方法,其特征在于,如果所述封装图像位于所述封装图像对应的所述位置区域之外,将所述位置区域中的控制命令图像,确定为指定的控制命令图像的步骤,包括:
如果所述封装图像位于所述封装图像对应的所述位置区域之外的指定位置,将所述位置区域中的控制命令图像,确定为指定的控制命令图像。
3.根据权利要求1所述的方法,其特征在于,所述封装图像具有指定特征;所述指定特征包括图像类型、形状、颜色或者亮度中的一种。
4.一种控制命令的确定装置,其特征在于,所述装置设置于机器人,所述装置包括:
图像采集模块,用于采集多个控制命令图像;
命令确定模块,用于如果所述控制命令图像中存在封装图像,根据所述封装图像所对应的位置区域中的指定的控制命令图像对应的控制命令,确定所述封装图像对应的控制命令;
所述命令确定模块,还用于:将所述封装图像所对应的位置区域中的指定的控制命令图像对应的控制命令,确定为子命令;根据所述指定的控制命令图像的位置关系确定所述子命令间的执行顺序;将所述子命令,以及所述子命令间的执行顺序确定为所述封装图像对应的控制命令;
如果所述封装图像对应的控制命令中存在子命令,所述封装图像已完成命令封装过程,则根据该封装图像的控制命令中各子命令以及子命令之间的执行顺序,按照执行顺序执行子命令,完成封装图像的控制命令执行;若所述封装图像的控制命令为空或者为封装生成命令,根据所述确定所述封装图像对应的控制命令的步骤确定所述封装图像对应的控制命令;其中,所述封装生成命令包括图像命令定义与行为对应关系;
所述指定的控制命令图像通过下述方式获得:如果所述封装图像位于所述封装图像对应的所述位置区域中,将所述位置区域中,除所述封装图像以外的控制命令图像,确定为指定的控制命令图像;
和/或,如果所述封装图像位于所述封装图像对应的所述位置区域之外,将所述位置区域中的控制命令图像,确定为指定的控制命令图像。
5.根据权利要求4所述的装置,其特征在于,所述封装图像具有指定特征;所述指定特征包括图像类型、形状、颜色或者亮度中的一种。
6.一种机器人,其特征在于,包括处理器和执行机构;权利要求4-5任一项所述的装置设置于所述处理器中。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810794825.3A CN108582085B (zh) | 2018-07-18 | 2018-07-18 | 控制命令的确定方法、装置和机器人 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810794825.3A CN108582085B (zh) | 2018-07-18 | 2018-07-18 | 控制命令的确定方法、装置和机器人 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108582085A CN108582085A (zh) | 2018-09-28 |
CN108582085B true CN108582085B (zh) | 2021-03-02 |
Family
ID=63618684
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810794825.3A Active CN108582085B (zh) | 2018-07-18 | 2018-07-18 | 控制命令的确定方法、装置和机器人 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108582085B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109531575A (zh) * | 2018-12-29 | 2019-03-29 | 深圳市哎哟不错机器人科研有限公司 | 基于色彩控制的机器人 |
WO2020227977A1 (zh) * | 2019-05-15 | 2020-11-19 | 深圳市大疆创新科技有限公司 | 遥控可移动平台的控制方法、设备及可读存储介质 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5764958A (en) * | 1995-11-30 | 1998-06-09 | International Business Machines Corporation | Method and apparatus for creating dynamic roles with a system object model |
CN101789194A (zh) * | 2009-01-23 | 2010-07-28 | 汤祖琴 | 积木式学习编程装置 |
CN102136208B (zh) * | 2011-03-30 | 2013-01-09 | 中国科学院软件研究所 | 一种实物编程方法和系统 |
CN103552071A (zh) * | 2013-10-16 | 2014-02-05 | 无锡信捷电气股份有限公司 | 一种智能机器人的编程方法 |
CN106985150A (zh) * | 2017-03-21 | 2017-07-28 | 深圳泰坦创新科技有限公司 | 控制机器人动作的方法和装置 |
-
2018
- 2018-07-18 CN CN201810794825.3A patent/CN108582085B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN108582085A (zh) | 2018-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11369872B2 (en) | Storage medium storing game program, game processing method, and information processing apparatus | |
CN105047042B (zh) | 一种面向儿童实物编程方法及系统 | |
CN108279878B (zh) | 一种基于增强现实的实物编程方法及系统 | |
JP2013501304A (ja) | 対象物抽出のためのシステム及び方法 | |
CN108305325A (zh) | 虚拟对象的显示方法及装置 | |
AU2017294531B2 (en) | A device for generating computer programs and a method for generating computer programs | |
CN108961927A (zh) | 计算机编程学习教具、识别运行系统及方法 | |
JP7477260B2 (ja) | 情報処理装置、情報処理プログラム及び情報処理方法 | |
CN108499107A (zh) | 虚拟现实中虚拟角色的控制方法、装置及存储介质 | |
CN108582085B (zh) | 控制命令的确定方法、装置和机器人 | |
CN108582084B (zh) | 机器人的控制方法、装置和机器人 | |
CN108415285B (zh) | 机器人的控制方法、装置和机器人 | |
CN113721582B (zh) | 座舱系统响应效率测试方法、设备、存储介质及装置 | |
KR101997016B1 (ko) | 증강현실을 이용한 격자 맵의 미션 기반 퍼즐 조립 시스템 및 방법 | |
CN108582086B (zh) | 机器人的控制方法、装置和机器人 | |
US10546406B2 (en) | User generated character animation | |
CN110750501A (zh) | 文件检索方法和装置、存储介质及相关设备 | |
CN110427241B (zh) | 一种目标消除方法及装置 | |
CN116212368A (zh) | 游戏中场景搭建控制方法、装置及电子设备 | |
CN110119202B (zh) | 一种实现场景交互的方法及系统 | |
CN109799975B (zh) | 一种基于神经网络的动作游戏制作方法和系统 | |
CN114510142B (zh) | 基于二维图像的手势识别方法及其系统和电子设备 | |
CN111753922B (zh) | 一种模型训练标签的处理方法、装置及电子设备 | |
US20250173253A1 (en) | Video Game User Interface Testing System | |
CN109545007A (zh) | 一种基于增强现实的实体编程系统、方法及学具 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
CP03 | Change of name, title or address |
Address after: Building 65, No. 17, Jiujiang Road, Tongji New Economic Zone, Jimo District, Qingdao City, Shandong Province, 266200 Patentee after: Qingdao Evolver xiaopang Robot Technology Co.,Ltd. Address before: 100192 1005-008, floor 1, building 27, 25 North Third Ring Road West, Haidian District, Beijing Patentee before: BEIJING EVOLVER ROBOTICS Co.,Ltd. |
|
CP03 | Change of name, title or address |