CN117021083A - 机器人及其控制方法、装置、存储介质 - Google Patents
机器人及其控制方法、装置、存储介质 Download PDFInfo
- Publication number
- CN117021083A CN117021083A CN202311002234.5A CN202311002234A CN117021083A CN 117021083 A CN117021083 A CN 117021083A CN 202311002234 A CN202311002234 A CN 202311002234A CN 117021083 A CN117021083 A CN 117021083A
- Authority
- CN
- China
- Prior art keywords
- robot
- text information
- capability
- information
- incremental
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 91
- 230000008569 process Effects 0.000 claims description 29
- 238000006243 chemical reaction Methods 0.000 claims description 14
- 230000004044 response Effects 0.000 claims description 11
- 238000013507 mapping Methods 0.000 claims description 10
- 230000000694 effects Effects 0.000 abstract description 13
- 238000001514 detection method Methods 0.000 abstract description 11
- 230000000875 corresponding effect Effects 0.000 description 78
- 230000006399 behavior Effects 0.000 description 20
- 230000001276 controlling effect Effects 0.000 description 13
- 230000006870 function Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 8
- 239000011664 nicotinic acid Substances 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 238000004590 computer program Methods 0.000 description 6
- 238000005516 engineering process Methods 0.000 description 6
- 230000007613 environmental effect Effects 0.000 description 6
- 238000000605 extraction Methods 0.000 description 4
- 230000001795 light effect Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000011160 research Methods 0.000 description 3
- 238000002604 ultrasonography Methods 0.000 description 3
- 241001465754 Metazoa Species 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 2
- 239000000284 extract Substances 0.000 description 2
- 230000009191 jumping Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000003058 natural language processing Methods 0.000 description 2
- 241000282412 Homo Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 210000000544 articulatio talocruralis Anatomy 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000003542 behavioural effect Effects 0.000 description 1
- 239000000872 buffer Substances 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001427 coherent effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 210000003414 extremity Anatomy 0.000 description 1
- 210000004394 hip joint Anatomy 0.000 description 1
- 210000001503 joint Anatomy 0.000 description 1
- 210000000629 knee joint Anatomy 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 210000003141 lower extremity Anatomy 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 210000001364 upper extremity Anatomy 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
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
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B25—HAND TOOLS; PORTABLE POWER-DRIVEN TOOLS; MANIPULATORS
- B25J—MANIPULATORS; CHAMBERS PROVIDED WITH MANIPULATION DEVICES
- B25J13/00—Controls for manipulators
- B25J13/003—Controls for manipulators by means of an audio-responsive input
-
- 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/1694—Programme controls characterised by use of sensors other than normal servo-feedback from position, speed or acceleration sensors, perception control, multi-sensor controlled systems, sensor fusion
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02P—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN THE PRODUCTION OR PROCESSING OF GOODS
- Y02P90/00—Enabling technologies with a potential contribution to greenhouse gas [GHG] emissions mitigation
- Y02P90/02—Total factory control, e.g. smart factories, flexible manufacturing systems [FMS] or integrated manufacturing systems [IMS]
Landscapes
- Engineering & Computer Science (AREA)
- Robotics (AREA)
- Mechanical Engineering (AREA)
- Multimedia (AREA)
- Manipulator (AREA)
Abstract
本公开涉及机器人技术领域,具体提供了一种机器人及其控制方法、装置、存储介质。一种机器人控制方法,包括响应于检测到目标用户的语音指令,将语音指令转换为文本形式的增量文本信息,根据增量文本信息和已缓存的目标用户的历史文本信息进行语义识别,得到语音指令对应的语义信息,基于语义信息调用机器人的能力集生成目标控制任务,根据目标控制任务控制机器人运行。本公开实施方式中,利用语音编程降低机器人编程控制的难度和复杂度,并且通过对用户语音指令的语义识别,可以根据指令自由组合控制任务,机器人控制的灵活性更强,而且通过对历史指令进行上下文关联,可以识别用户模糊指令,提高机器人控制效果。
Description
技术领域
本公开涉及机器人技术领域,具体涉及一种机器人及其控制方法、装置、存储介质。
背景技术
随着机器人技术的发展,针对仿生机器人的研究越来越多,仿生机器人具有优秀的运动平衡能力,仿生机器人可以包括例如双足机器人、四足机器人等。相关技术中,针对仿生机器人的行为控制,需要专业人员进行任务编程,技术门槛较高,且编程操作复杂。
发明内容
为提高机器人控制效果,本公开实施方式提供了一种机器人控制方法、装置、机器人及存储介质。
第一方面,本公开实施方式提供了一种机器人控制方法,应用于机器人,所述方法包括:
响应于检测到目标用户的语音指令,将所述语音指令转为文本形式的增量文本信息;
根据所述增量文本信息和已缓存的所述目标用户的历史文本信息进行语义识别,得到所述语音指令对应的语义信息;
基于所述语义信息调用所述机器人的能力集中的一个或多个能力模块,生成与所述语音指令对应的目标控制任务;
根据所述目标控制任务控制所述机器人运行。
在一些实施方式中,所述响应于检测到目标用户的语音指令,将所述语音指令转为文本形式的增量文本信息,包括:
响应于检测到语音指令,提取所述语音指令的第一声纹信息;
将所述第一声纹信息与预先存储的所述目标用户的第二声纹信息进行匹配,并在匹配成功的情况下,确定检测到所述目标用户的所述语音指令;
对所述语音指令进行文本转换,得到所述增量文本信息。
在一些实施方式中,所述根据所述增量文本信息和已缓存的所述目标用户的历史文本信息进行语义识别,得到所述语音指令对应的语义信息,包括:
根据所述增量文本信息以及已缓存的位于所述增量文本信息之前预设数量的历史文本信息,得到全量文本信息;
对所述全量文本信息进行语义识别,得到所述语音指令对应的所述语义信息。
在一些实施方式中,所述根据所述增量文本信息以及已缓存的位于所述增量文本信息之前预设数量的历史文本信息,得到全量文本信息,包括:
将所述增量文本信息缓存在所述目标用户对应的指令列表的队尾中;
从所述指令列表中获取所述增量文本信息,以及位于所述增量文本信息之前预设数量的历史文本信息;
根据所述增量文本信息和位于所述增量文本信息之前预设数量的历史文本信息,进行文本拼接得到所述全量文本信息。
在一些实施方式中,基于所述语义信息调用所述机器人的能力集中的一个或多个能力模块,生成与所述语音指令对应的目标控制任务,包括:
基于所述语义信息从所述机器人的能力集中确定与所述语音指令对应的一个或多个目标能力模块;
基于预设代码格式调用所述目标能力模块进行代码编程,得到所述目标控制任务。
在一些实施方式中,所述根据所述增量文本信息和已缓存的所述目标用户的历史文本信息进行语义识别,得到所述语音指令对应的语义信息,包括:
在根据所述增量文本信息确定所述语音指令为所述机器人的非内置指令的情况下,执行根据所述增量文本信息和已缓存的所述目标用户的历史文本信息进行语义识别,得到所述语音指令对应的语义信息的过程。
在一些实施方式中,所述方法还包括:
在根据所述增量文本信息确定所述语音指令为所述机器人的内置指令的情况下,根据所述内置指令对应的映射关系,确定所述语音指令对应所述目标控制任务。
在一些实施方式中,预先建立所述机器人的能力集的过程包括:
根据预设类别对所述机器人的基础能力进行分类处理,得到每个类别对应的所述能力模块;
根据各个类别对应的所述能力模块,构建得到所述能力集。
在一些实施方式中,所述根据预设类别对所述机器人的基础能力进行分类处理,得到每个类别对应的所述能力模块,包括:
对于每个类别,根据所述类别对应的至少一个基础能力构建得到一个或多个能力子模块;
根据所述基础能力和所述能力子模块,得到所述类别对应的所述能力模块。
第二方面,本公开实施方式提供了一种机器人控制装置,应用于机器人,所述装置包括:
文本转换模块,被配置为响应于检测到目标用户的语音指令,将所述语音指令转为文本形式的增量文本信息;
语义识别模块,被配置为根据所述增量文本信息和已缓存的所述目标用户的历史文本信息进行语义识别,得到所述语音指令对应的语义信息;
任务编程模块,被配置为基于所述语义信息调用所述机器人的能力集中的一个或多个能力模块,生成与所述语音指令对应的目标控制任务;
任务运行模块,被配置为根据所述目标控制任务控制所述机器人运行。
在一些实施方式中,所述文本转换模块被配置为:
响应于检测到语音指令,提取所述语音指令的第一声纹信息;
将所述第一声纹信息与预先存储的所述目标用户的第二声纹信息进行匹配,并在匹配成功的情况下,确定检测到所述目标用户的所述语音指令;
对所述语音指令进行文本转换,得到所述增量文本信息。
在一些实施方式中,所述语义识别模块被配置为:
根据所述增量文本信息以及已缓存的位于所述增量文本信息之前预设数量的历史文本信息,得到全量文本信息;
对所述全量文本信息进行语义识别,得到所述语音指令对应的所述语义信息。
在一些实施方式中,所述语义识别模块被配置为:
将所述增量文本信息缓存在所述目标用户对应的指令列表的队尾中;
从所述指令列表中获取所述增量文本信息,以及位于所述增量文本信息之前预设数量的历史文本信息;
根据所述增量文本信息和位于所述增量文本信息之前预设数量的历史文本信息,进行文本拼接得到所述全量文本信息。
在一些实施方式中,所述任务编程模块被配置为:
基于所述语义信息从所述机器人的能力集中确定与所述语音指令对应的一个或多个目标能力模块;
基于预设代码格式调用所述目标能力模块进行代码编程,得到所述目标控制任务。
在一些实施方式中,所述语义识别模块被配置为:
在根据所述增量文本信息确定所述语音指令为所述机器人的非内置指令的情况下,执行根据所述增量文本信息和已缓存的所述目标用户的历史文本信息进行语义识别,得到所述语音指令对应的语义信息的过程。
在一些实施方式中,所述语义识别模块被配置为:
在根据所述增量文本信息确定所述语音指令为所述机器人的内置指令的情况下,根据所述内置指令对应的映射关系,确定所述语音指令对应所述目标控制任务。
在一些实施方式中,所述任务编程模块被配置为:
根据预设类别对所述机器人的基础能力进行分类处理,得到每个类别对应的所述能力模块;
根据各个类别对应的所述能力模块,构建得到所述能力集。
在一些实施方式中,所述任务编程模块被配置为:
对于每个类别,根据所述类别对应的至少一个基础能力构建得到一个或多个能力子模块;
根据所述基础能力和所述能力子模块,得到所述类别对应的所述能力模块。
第三方面,本公开实施方式提供了一种机器人,包括:
处理器;
存储器,存储有计算机指令,所述计算机指令用于使处理器执行根据第一方面任意实施方式所述的方法。
第四方面,本公开实施方式提供了一种存储介质,存储有计算机指令,所述计算机指令用于使计算机执行根据第一方面任意实施方式所述的方法。
本公开实施方式的机器人控制方法,包括响应于检测到目标用户的语音指令,将语音指令转换为文本形式的增量文本信息,根据增量文本信息和已缓存的目标用户的历史文本信息进行语义识别,得到语音指令对应的语义信息,基于语义信息调用机器人的能力集生成目标控制任务,根据目标控制任务控制机器人运行。本公开实施方式中,利用语音编程降低机器人编程控制的难度和复杂度,并且通过对用户语音指令的语义识别,可以根据指令自由组合控制任务,机器人控制的灵活性更强,而且通过对历史指令进行上下文关联,可以识别用户模糊指令,提高机器人控制效果。
附图说明
为了更清楚地说明本公开具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本公开的一些实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是根据本公开一些实施方式中机器人控制方法的场景示意图。
图2是根据本公开一些实施方式中机器人控制方法的流程图。
图3是根据本公开一些实施方式中机器人控制方法的流程图。
图4是根据本公开一些实施方式中机器人控制方法的流程图。
图5是根据本公开一些实施方式中机器人控制方法的流程图。
图6是根据本公开一些实施方式中机器人控制方法的流程图。
图7是根据本公开一些实施方式中机器人控制方法的原理示意图。
图8是根据本公开一些实施方式中机器人控制方法的流程图。
图9是根据本公开一些实施方式中机器人控制方法的流程图。
图10是根据本公开一些实施方式中机器人控制装置的结构框图。
图11是根据本公开一些实施方式中机器人的结构框图。
具体实施方式
下面将结合附图对本公开的技术方案进行清楚、完整地描述,显然,所描述的实施方式是本公开一部分实施方式,而不是全部的实施方式。基于本公开中的实施方式,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施方式,都属于本公开保护的范围。此外,下面所描述的本公开不同实施方式中所涉及的技术特征只要彼此之间未构成冲突就可以相互结合。
仿生机器人具有优秀的运动平衡能力和丰富的可操作性,因此针对仿生机器人的研究是机器人领域重要的方向之一。
例如以双足机器人为例,双足机器人即为仿人体的机器人,其下肢可以像人类一样摆动实现诸如行走、奔跑、下蹲、跳跃等操作,同时上肢可以模仿人类手臂实现摆臂、抓取等操作。又例如以四足机器人为例,四足机器人为模仿四足动物的机器人,其四肢可以像动物一样摆动实现诸如行走、奔跑、跳跃等操作,四足机器人往往具有很好的运动平衡能力。
上述的双足机器人和四足机器人均是一种仿生机器人,仿生机器人的行为控制一直是机器人研究的重点和难点。
目前相关技术中,针对仿生机器人的行为控制,主要是依赖于工作人员进行任务编程,然后根据编程得到的任务来控制机器人运行。例如以机器人演示场景为例,为了展示机器人的运动能力或者其他能力,工作人员需要现场进行任务编程。任务编程的方式是根据机器人的基础能力组合一系列的机器人行为组合,进而编程得到一个任务,然后机器人执行编程任务,实现相应的行为控制。
机器人的能力可以理解为机器人自身提供的行为功能,比如关节运动、灯光、导航、雷达、语音等功能,均可以称为机器人的能力。基础能力即为针对机器人的行为无法再拆分的最小单元模块,也称为机器人的原子模块。
机器人的每个基础能力即为内置于机器人中的一个独立的程序模块,工作人员进行任务编程时,可通过各个基础能力提供的API(Application Programming Interface,应用程序编程接口)调用所需的一个或多个基础能力,从而实现机器人行为控制。
可以看到,传统的机器人编程控制方式技术门槛很高,且编程操作复杂,导致机器人可玩性和实用性较低,难以落地应用。
在软件开发领域,语音编程是一种新兴的编程方式,其提供了一种语音指令到程序代码的编程解决方案。对于机器人控制来说,利用语音编程可以有效降低机器人控制代码的编程门槛,用户只需要发出语音指令,机器人即可自主完成相应的任务编程。
相关技术中,传统的语音编程方案是通过指令映射实现,也即,需要开发人员预先在机器人中内置对应不同能力的控制代码,并且建立控制代码与文本指令的映射关系。当机器人采集到用户的语音指令之后,通过语音转文本得到文本指令,然后利用内置的映射关系找到文本指令对应的控制代码,实现语音编程,进而通过执行控制代码完成机器人的语音控制。
但是,这种方式能够提供的控制指令十分有限,往往只能实现例如“前进”、“趴下”等基础指令,而且内置指令是预先写好并内置在机器人中的程序指令,从而机器人只能提供固定模式的运动行为,无法按照用户指令随意组合行为方式,灵活性不足,控制效果较差。
基于上述相关技术中存在的缺陷,本公开实施方式提供了一种机器人控制方法、装置、机器人及存储介质,旨在利用语音编程降低机器人编程控制的难度和复杂度,并且通过对用户语音指令的语义识别,可以根据指令自由组合控制任务,机器人控制的灵活性更强,而且通过对历史指令进行上下文关联,可以识别用户模糊指令,提高机器人控制效果。
图1示出了本公开一些实施方式中机器人的应用场景示意图,下面结合图1进行说明。
如图1所示,本公开示例的机器人及其控制方法的场景中,包括用户100和机器人200。
用户100是指用于发出语音指令的对象,本公开实施方式中,无需限制用户100是具备编程能力的专业人员,通过语音编程的方式,可以使得没有任何专业知识的人员也能够实现对机器人200的复杂控制。
机器人200是指行为控制的目标对象,本公开实施方式中所述的机器人行为,是指任何发生在机器人上的状态变化,例如机器人行为可以包括机器人的运动,还可以包括机器人发出语音、振动、光效等,本公开对此不作限制。在本公开实施方式中,机器人200可以是任意形态的机器人,例如双足机器人、四足机器人等,本公开对此不作限制。
在上述场景基础上,下面结合图2对本公开实施方式的机器人控制方法进行说明。
在一些实施方式中,本公开实施方式提供了一种机器人控制方法,该方法可应用于前述机器人200中,控制方法包括:
S210、响应于检测到目标用户的语音指令,将语音指令转为文本形式的增量文本信息。
本公开实施方式中,机器人具有拾取环境音的能力,例如机器人可以具有一个或多个麦克风,通过麦克风可以拾取环境音,当用户发出语音指令的情况下,机器人通过拾取环境音,并可以从环境音中提取得到用户语音指令。
值得说明的是,本公开实施方式中,机器人可以对拾取得到的语音指令进行声纹识别,从而确定发出该语音指令的用户身份。例如一个示例中,可结合图1所示,当用户A发出语音指令的情况下,机器人通过拾取用户A的语音指令并进行声纹识别,确定该语音指令所对应的用户身份为“用户A”。
本公开实施方式中,目标用户是指具有机器人控制权限的用户,例如目标用户可以是预先在机器人中录入过身份信息的用户,目标用户可以是机器人的管理员、主人、开发者、访客等。
在一些实施方式中,在机器人检测到用户发出的语音指令之后,可以提取该语音指令的声纹信息,并将该声纹信息与预先录入的目标用户的声纹信息进行匹配,在匹配通过的情况下,即可确定检测到的语音指令是目标用户发出的语音指令。
在确定语音指令是目标用户发出的语音指令的情况下,可以通过语音转文本的技术,将语音指令对应的指令信息转换为文本形式的增量文本信息。对于语音转文本的具体算法,本领域技术人员参照相关技术毫无疑问可以理解并充分实现,本公开对此不再赘述。
值得说明的是,结合人类语言习惯可以理解,用户在针对机器人进行语音控制时,其连续多次发出的语音指令可能是存在上下文关联的。例如,在第一次控制过程中,用户的语音指令1为“你向前走10米”,在机器人执行相应的动作之后,用户在第二次控制时的语音指令2为“算了,你还是回去吧”。
对于人类的连贯对话场景,人类结合上下文显然是可以理解语音指令2中的“回去”,指的是“机器人后退10米”。但是对于机器人语音编程任务,由于机器人不具有上下文指令的关联能力,从而仅依据语音指令2是无法识别到用户的真实意图,可能会将语音指令误识别为其他语义,进而执行错误的动作行为,或者机器人直接报错,无法识别用户语音指令。
因而本公开实施方式中,检测到目标用户每次的语音指令并进行文本转换之后,定义每次检测到的文本信息为增量文本信息,也即该文本信息是当前控制过程中新增的文本信息。将语音指令的文本信息定义为增量文本信息的目的,是为了结合之前已经产生的历史语音指令所对应的历史文本信息,从而结合上下文对语音指令进行语义识别,从而得到正确语义。
S220、根据增量文本信息和已缓存的目标用户的历史文本信息进行语义识别,得到语音指令对应的语义信息。
本公开实施方式中,在目标用户每次发出语音指令并转换为文本信息指令,机器人会将每次的文本信息按照时间顺序进行缓存。从而对于某次控制过程来说,本次产生的语音指令转换的文本信息即为增量文本信息,而在本次之前产生的语音指令所转换的文本信息即为历史文本信息。
例如前文示例中,用户在第一次控制过程中,语音指令转换的文本信息为“你向前走10米”,机器人在完成任务编程并执行该任务的同时,会将该文本信息缓存在内存中。
从而在第二次控制过程中,语音指令转换的文本信息为“算了,你还是回去吧”,此时,之前缓存的文本信息“你向前走10米”即为历史文本信息,而本次新增的文本信息“算了,你还是回去吧”即为增量文本信息。
在本公开实施方式中,即可根据历史文本信息和增量文本信息组装得到全量文本信息,例如结合历史文本信息“你向前走10米”,以及增量文本信息“算了,你还是回去吧”,按照时间顺序进行组装得到的全量文本信息即为“你向前走10米;算了,你还是回去吧”。
然后,即可根据全量文本信息进行语义识别,语义识别是一种NLP(NaturalLanguage Processing,自然语言处理)技术,主要实现的是计算机模拟人类语言理解效果,从而有效识别出每句话所包含的意义,分析出用户真实意图。相关技术中,语义识别技术例如可以包括基于语法规则的语义提取、基于深度神经网络的生成式语言模型的语义提取,本公开对此不作限制。
在前文示例中,通过语义识别计算对全量文本信息“你向前走10米;算了,你还是回去吧”进行语义识别,即可确定语音指令2的“算了,你还是回去吧”中的用户意图为“后退10米”,也即语义指令对应的语义信息为“后退10米”。
S230、基于语义信息调用机器人的能力集中的一个或多个能力模块,生成与语音指令对应的目标控制任务。
本公开实施方式中,可预先对机器人的各个基础能力进行整合、分类及封装,得到机器人的能力集。能力集中根据能力类别可包括多个不同的能力模块,每个能力模块下包括至少一个基础能力。
在一些实施方式中,可以根据机器人能力的不同预先划分多个预设类别,然后将机器人所有的基础能力分类处理至各个预设类别中,之后根据每个预设类别包括的基础能力构建得到相应的能力模块,最后整合所有类别对应的能力模块,得到机器人的能力集。
例如一个示例中,本公开所述的能力集包括“运动(Motion)”能力模块,该能力模块中包括有所有用于控制机器人各关节运动的基础能力,基础能力例如包括腰关节运动能力、髋关节运动能力、膝关节运动能力、踝关节运动能力等。用户在针对机器人运动任务编程时,即可通过能力集提供的API接口调用并任意组合“运动(Motion)”能力模块中的各个基础能力,实现机器人的运动控制。
本公开实施方式中,对于预先构建机器人能力集的过程本公开下文实施方式进行说明,在此暂不详述。
在通过前述方法过程得到语音指令对应的语义信息之后,该语义信息即可作为机器人任务编程的请求指令。可以理解,任务编程需要调用机器人一个或多个基础能力,本公开实施方式中,机器人的基础能力被分类封装在能力集的各个能力模块中,能力集会提供调取各个能力模块的API。
从而本公开实施方式中,首先可以根据语义信息确定任务编程所需要调用的一个或多个能力模块,也即本公开所述的目标能力模块,然后即可通过能力集提供的API来调用这些目标能力模块进行任务编程,生成与该语义信息相对应的控制机器人的任务,也即本公开所述的目标控制任务。
例如前文示例中,语义信息为控制机器人运动,从而对应的编程任务即为控制机器人运动的任务,机器人根据该语义信息确定“运动(Motion)”能力模块为目标能力模块,然后根据语义信息的具体任务参数调用“运动(Motion)”能力模块中的各个基础能力,完成运动任务的编程,得到的运动任务即为本公开所述的目标控制任务。
S240、根据目标控制任务控制机器人运行。
本公开实施方式中,在编程得到目标控制任务之后,机器人即可执行该目标控制任务,从而实现机器人行为控制。
值得说明的是,在一些实施方式中,在得到目标控制任务之后,机器人可以理解执行目标控制任务,也可以将目标控制任务存储在机器人的任务列表中,等待用户后续调用运行,本公开对此不作限制。
结合前文示例场景可知,在机器人行为控制场景中,用户只需要发出语音指令即可实现对机器人行为的控制,无需掌握编程相关的专业能力,极大降低了机器人控制的难度和复杂度。
而且,机器人通过对用户语音指令进行语义识别,用户可以通过与机器人的自然语言交流,实现更多机器人行为控制,相较于传统的指令映射方案,本公开实施方式方法既无需要求用户必须说出规定好的语音指令,更加符合自然语言习惯,也不局限于仅能实现内置的简单指令,可以根据语义信息实现更多复杂的机器人行为控制。
另外,利用缓存机制结合增量语音指令与历史语音指令,可以提供对语音指令的上下文关联能力,从而实现对用户模糊指令的准确识别。例如前文示例中,机器人通过结合历史语音指令,可以准确识别出模糊指令“回去”所对应的用户真实意图,从而具有极高的控制灵活性和效果。
通过上述可知,本公开实施方式中,利用语音编程降低机器人编程控制的难度和复杂度,并且通过对用户语音指令的语义识别,可以根据指令自由组合控制任务,机器人控制的灵活性更强,而且通过对历史指令进行上下文关联,可以识别用户模糊指令,提高机器人控制效果。
如图3所示,在一些实施方式中,本公开示例的机器人控制方法,响应于检测到目标用户的语音指令,将语音指令转为文本形式的增量文本信息的过程,包括:
S211、响应于检测到语音指令,提取语音指令的第一声纹信息。
S212、将第一声纹信息与预先存储的目标用户的第二声纹信息进行匹配,并在匹配成功的情况下,确定检测到目标用户的语音指令。
S213、对语音指令进行文本转换,得到增量文本信息。
声纹识别是生物识别技术的一种,声纹是指声波的频谱,其具有唯一性。因此本公开实施方式中,机器人可以预先录入一个或多个具有机器人控制权限的用户的声纹信息,该声纹信息即为第二声纹信息。
例如图1示例场景中,用户A和用户B可以分别预先在机器人中录入自己的第二声纹信息,机器人可以将用户身份标识(例如用户ID)及第二声纹信息对应存储。
在机器人控制场景中,当机器人检测到环境音,通过语音提取得到环境音中携带的语音指令之后,即可利用声纹提取技术,提取得到语音指令对应的第一声纹信息。
然后将第一声纹信息与预先存储的一个或多个第二声纹信息逐一进行匹配,如果第一声纹信息与存储的某个第二声纹信息匹配成功,说明发出该第一声纹信息对应语音指令的用户,即为第二声纹信息对应的目标用户。
例如图1示例中,机器人检测得到用户A发出的语音指令,并提取得到第一声纹信息。然后将第一声纹信息与预先存储的用户A的第二声纹信息及用户B的第二声纹信息分别进行匹配,在匹配到与用户A的第二声纹信息匹配成功的情况下,即可确定语音指令为目标用户(也即用户A)发出的。
在确定发出语音指令的用户为预先存储的目标用户的情况下,说明目标用户具有对机器人的控制权限,从而即可按照前述的方法步骤,对语音指令进行文本转换,得到文本形式的增量文本信息。本领域技术人员参照前述即可,本公开不再赘述。
如图4所示,在一些实施方式中,本公开示例的机器人控制方法,得到语音指令的语义信息的过程,包括:
S410、根据增量文本信息以及已缓存的位于增量文本信息之前预设数量的历史文本信息,得到全量文本信息。
S420、对全量文本信息进行语义识别,得到语音指令对应的语义信息。
本公开实施方式中,在得到增量文本信息之后,需要结合增量文本信息之前已经缓存的历史文本信息,得到全量文本信息。在一些实施方式中,可以利用指令列表实现增量文本信息以及历史文本信息的缓存,下面结合图5进行说明。
如图5所示,在一些实施方式中,本公开示例的机器人控制方法,确定全量文本信息的过程,包括:
S411、将增量文本信息缓存在目标用户对应的指令列表的队尾中。
S412、从指令列表中获取增量文本信息,以及位于增量文本信息之前预设数量的历史文本信息。
S413、根据所述增量文本信息和位于所述增量文本信息之前预设数量的历史文本信息,进行文本拼接得到所述全量文本信息。
本公开实施方式中,机器人可以预先为具有控制权限的目标用户生成对应的指令列表,也即每个目标用户对应一个指令列表,指令列表的作用是存储该目标用户发出的语音指令的文本信息。
例如以图1示例场景为例,假设目标用户共包括用户A和用户B,从而机器人可以在录入目标用户的信息时,为每个目标用户分配内存,并生成对应的指令列表。例如一个示例中,指令列表可如下表一所示:
表一
指令发生时间 | 用户A | 用户B |
表一中,第一列的“指令发生时间”表示目标用户发出语音指令的时间,第二列和第三列即表示每个目标用户所产生的语音指令。
本公开实施方式中,机器人在检测到每个目标用户发出的语音指令之后,通过前述方法过程即可得到每条语音指令所对应的文本信息,然后将文本信息按照时间顺序存储在各自对应的指令列表中。
例如一个示例场景中,在T1时刻,用户A的指令列表如下表二所示:
表二
指令发生时间 | 用户A |
10:52 | 你向前走10米 |
机器人在执行上述动作行为之后,到了T2=10:55时刻,用户A再次发出语音指令“算了,你还是回去吧”,机器人通过前述方法过程,得到语音指令对应的文本信息“算了,你还是回去吧”,该文本信息即为当前时刻产生的增量文本信息。
在得到增量文本信息“算了,你还是回去吧”之后,即可将该增量文本信息缓存在指令列表中,并按照时间先后顺序,将该增量文本信息缓存在指令列表的队尾,得到的指令列表可如下表三所示:
表三
指令发生时间 | 用户A |
10:52 | 你向前走10米 |
10:55 | 算了,你还是回去吧 |
本公开实施方式中,在进行语义识别时,即需要结合新产生的增量文本信息以及历史存储在指令列表中的历史文本信息。可以理解,在本示例中,增量文本信息即为“算了,你还是回去吧”,而历史文本信息即为在增量文本信息之前存储的“你向前走10米”。
值得说明的是,在本示例中,指令列表中仅示出了一条历史文本信息,事实上,随着时间进行,用户A的指令列表中逐渐会积累很多文本信息,从而在某次控制过程中,相对于当前增量文本信息的历史文本信息会包括很多条。
从而本公开一些实施方式中,可以结合增量文本信息以及用户A的指令列表中存储的全部历史文本信息,组装得到全量文本信息。也可以结合增量文本信息及之前预设数量的历史文本信息,组装得到全量文本信息。
例如一个示例中,增量文本信息之前有10条历史文本信息,本公开实施方式中,既可以将增量文本信息与之前的全部10条历史文本信息组装得到全量文本信息;也可以将增量文本信息与之前的n条历史文本信息组装得到全量文本信息,n例如可以取值1~3;本公开对此不作限制。
以表三示例场景为例,通过历史文本信息“你向前走10米”和增量文本信息“算了,你还是回去吧”,即可组装得到全量文本信息为“你向前走10米;算了,你还是回去吧”。然后,即可利用语义识别技术对全量文本信息进行语义识别,即可确定语音指令2的“算了,你还是回去吧”中的用户意图为“后退10米”,也即语义指令对应的语义信息为“后退10米”。
在确定语义信息之后,即可基于该语义信息调用机器人的能力集中的目标能力模块进行任务编程,得到目标控制任务。为便于理解,下文中结合图6实施方式,对预先构建机器人能力集的过程进行说明。
如图6所示,在一些实施方式中,本公开示例的机器人控制方法中,预先建立机器人的能力集的过程,包括:
S610、根据预设类别对机器人的基础能力进行分类处理,得到每个类别对应的能力模块。
S620、根据各个类别对应的能力模块,构建得到能力集。
本公开实施方式中,首先可对机器人所有基础能力进行整合,然后根据能力类型的不同将基础能力划分为多个预设类别,每个类别中至少包括一个基础能力,之后根据每个类别下包括的基础能力构建得到每个类别对应的能力模块。
例如一个示例中,机器人能力的预设类别可以包括:音频能力、灯效能力、触摸板能力、定位能力、电源管理能力、深度检测能力、雷达检测能力、惯性数据检测能力、里程计能力、超声通信能力、皮肤控制能力、网络能力、运动能力、导航能力、目标跟随能力、人脸识别能力、声纹识别能力、手势识别能力、人员信息管理能力、任务管理能力共计20个类别的能力。
从而可以根据上述的20个预设类别,将所有的基础能力进行分类处理,也即,将基础能力按照上述的预设类别进行分类,其中每个类别中包括至少一个基础能力。
在实现对机器人基础能力进行整合分类之后,即可根据每个类别包括的基础能力构建得到该类别对应的能力模块,也即得到上述20个类别对应的能力模块,分别为:
1、音频(Audio)模块
可包括录入音效/音频、播放音频、播放文本、在线对话等一系列与音频相关的基础能力。
2、灯效(Led)模块
可包括机器人头灯、尾灯、眼灯的灯效播放、暂停、更换等一系列与灯效相关的基础能力。
3、触摸板(Touch)模块
可包括与机器人触摸板相关的一系列基础能力,例如查询触摸板状态及数据。
4、定位(GPS)模块
可包括与机器人卫星定位GPS功能相关的一系列基础能力,例如查询GPS状态及数据。
5、电池***(BMS)模块
可包括与机器人BMS(Battery Management System,电池管理***)功能相关的一系列基础能力,例如电池电量、电压、电流、温度等检测。
6、深度检测(ToF)模块
可包括机器人深度检测能力,例如ToF(Time of flight,飞行时间)数据检测等。
7、雷达(Lidar)模块
可包括与机器人雷达功能相关的一系列基础能力,例如查询雷达状态及检测数据等。
8、惯导(IMU)模块
可包括与机器人IMU(Inertial Measurement Unit,惯性测量单元)相关的一系列基础能力,例如查询IMU状态及检测数据等。
9、里程计(Odometer)模块
可包括与机器人里程计相关的一系列基础能力,例如查询里程计状态及数据等。
10、超声波(Ultrasonic)模块
可包括与机器人超声波相关的一些列基础能力,例如查询超声传感器状态及数据等。
11、皮肤(Skin)模块
可包括与机器人皮肤相关的基础能力,例如控制皮肤状态等。
12、网络(Network)模块
可包括与机器人网络信息相关的一系列基础能力,例如控制机器人网络等。
13、运动(Motion)模块
可包括与机器人关节运动相关的一系列基础能力,例如控制各个关节运动等。
14、导航(Navigation)模块
可包括与机器人导航功能相关的一系列基础能力,例如控制机器人在现有地图中导航至目标位置等。
15、跟随(Follow)模块
可包括机器人跟随目标的基础能力,例如跟随目标对象运动等。
16、人脸识别(Face)模块
可包括与机器人人脸识别相关的一系列基础能力,例如采集人脸图像、基于图像库进行人脸识别、确认目标人员等。
17、声纹识别(Voiceprint)模块
可包括与机器人声纹识别相关的一系列基础能力,例如声纹采集、基于声纹库进行声纹识别、确认目标人员等。
18、手势识别(Gesture)模块
可包括与机器人手势识别相关的一系列基础能力,例如手势图像采集、基于手势库进行手势识别、确认目标人员等。
19、人员信息管理(Personnel)模块
可包括与机器人人员信息获取相关的一系列基础能力,例如获取上述的数据库信息等。
20、任务管理(Task)模块
可包括针对机器人任务控制的基础能力,例如控制当前任务的运行、暂停、终止等。
在本示例中,通过上述构建的各个能力模块,进行封装处理得到机器人的能力集,机器人的能力集的架构可如图7所示。
在图7所示的能力集架构中,能力集除了包括上述的20个能力模块,还包括机器人模块和能力集接口模块。机器人模块主要负责提供机器人整体能力,涵盖上述20个能力模块。而能力集接口模块则负责提供整个能力集的API接口,同样涉及上述20个能力模块,从而即可通过该API接口调用能力集中任意一个能力模块的一个或多个基础能力。
通过上述可知,本公开实施方式中,通过对机器人能力进行整合分类封装得到机器人能力集,可以通过能力集调用机器人所有能力,实现基础能力之间的灵活组合调用,简化任务编程操作,而且降低任务运行对机器人资源的占用,任务运行和控制的逻辑简单,提高机器人控制效果。
本公开一些实施方式中,在上述对每个能力模块进行封装时,可以预先基于基础能力构建较为上层的能力子模块,简化用户任务编程操作,下面结合图8实施方式进行说明。
如图8所示,在一些实施方式中,本公开示例的机器人控制方法,构建每个类别的能力模块的过程包括:
S611、对于每个类别,根据该类别对应的至少一个基础能力构建得到一个或多个能力子模块。
S612、根据基础能力和能力子模块,得到该类别对应的能力模块。
本公开实施方式中,基于前述可知,机器人的基础能力是指无法再拆分的最小行为模块,本公开所述的能力子模块则是根据一个或多个基础能力构建的更为上层的能力,其可以理解为机器人多个基础能力的组合。
本公开实施方式中,对于每个类别,可以根据该类别的一个或者多个基础能力构建得到能力子模块,然后将这些能力子模块以及原本的基础能力封装为一个能力模块。
例如一个示例中,机器人的眼灯亮、灭分别各对应一个基础能力,若用户期望机器人运行一个“眼灯以固定时间交替亮灭”的任务。在相关技术方案中,在任务编程中需要设置机器人眼灯以固定时间不断交替调用这两个基础能力。而在本公开实施方式中,可以将这两个分别控制机器人眼灯亮灭的基础能力构建为一个能力子模块,机器人在任务编程时,直接调用该能力子模块即可实现上述任务的编程,大大简化的编程难度,降低机器人控制的技术门槛。
上述仅以一个能力模块为例进行说明,对于任意一个能力模块均可以通过上述过程构建,本公开对此不再赘述。在得到各个能力模块之后,即可通过前述过程构建得到最终的机器人能力集。
通过上述可知,本公开实施方式中,能力集中的每个能力模块包括根据基础能力构建的能力子模块,能力子模块相较于基础能力更为上层,从而进一步简化任务编程操作,提高机器人控制效果。
本公开实施方式中,在得到语义信息之后,即可调用前述构建的能力集的能力模块实现任务编程,下面结合图9实施方式进行说明。
如图9所示,在一些实施方式中,本公开示例的机器人控制方法,生成目标控制任务的过程,包括:
S231、基于语义信息从机器人的能力集中确定与语音指令对应的一个或多个目标能力模块。
S232、基于预设代码格式调用目标能力模块进行代码编程,得到目标控制任务。
本公开实施方式中,预先构建的能力集提供多个程序接口,例如前述示例中,能力集提供C/C++/python三种语言的API程序接口,换言之,任务编程可以采用多种编程语言进行,本公开对此不作限制。
本公开实施方式中,在确定语音指令对应的语义信息之后,即可根据该语义信息确定需要调用的能力集中的一个或多个能力模块,需要调用的能力模块即为本公开所述的目标能力模块。
另外,在一些实施方式中,可以预先配置好任务编程的预设代码格式,也即对任务进行编程的编程语言,例如预设代码格式可以是C/C++/python中任意一种或多种编程语言,本公开对此不作限制。
在确定任务编程所需的目标能力模块之后,即可通过这些目标能力模块提供的API调用一个或多个底层的基础能力,并利用预设代码格式进行任务代码的编程,得到最终的目标控制任务。
本公开实施方式中,基于语义信息进行任务编程的算法,可以采用编程脚本实现,本公开对此不再赘述。
通过上述可知,本公开实施方式中,能力集可以提供多种语言的程序接口,从而可以适用于不同的编程语言实现机器人控制,提高机器人的实用性和控制效果。
值得说明的是,本公开上述实施方式中,通过结合上下文关联的语义识别方法,可以实现较为复杂指令或模糊指令的机器人控制,实现例如复杂任务、定时任务的机器人控制。例如一个示例场景中,用户语音指令可以是“下午2点50分,你去找到张三,让他来我办公室一趟”,通过前述方法过程生成目标控制任务之后,机器人依次调用定时能力、导航能力、人脸识别能力及语音播报能力等执行目标控制任务,完成任务执行。
而对于一些简单指令,例如“前进”、“趴下”等基础指令,如果继续采用上述方法过程进行上下文关联并进行语义识别,无疑加重了机器人的计算负担。
因此,本公开一些实施方式中,在对目标用户的语音指令进行文本转换,得到增量文本信息的情况下,首先根据增量文本信息确定语音指令是否为机器人的内置指令。
可以理解,内置指令是指机器人预先内置的一些基础指令,其主要是实现机器人的一些基础能力。本公开一些实施方式中,即可预先在机器人中存储一定数量的内置指令,并通过指令映射的方式,预先为这些内置指令配置对应的任务代码。
从而,本公开一些实施方式中,在根据增量文本信息确定语音指令是内置指令的情况下,例如可以通过对增量文本信息进行关键词识别来确定是否为内置指令。例如一个示例场景中,增量文本信息为“前进”,通过文本识别匹配到增量文本信息包括关键词“前进”,从而即可确定语音指令为内置指令。
在确定语音指令为内置指令的情况下,由于该指令非常简单,如果继续结合指令列表的历史文本信息进行语义识别,无疑造成计算资源的冗余浪费。从而,即可直接根据预先存储的映射关系,确定该内置指令对应的任务代码,该任务代码即为本公开所述的目标控制任务。
反之,在确定语音指令不是内置指令的情况下,即可按照前述的方法步骤,结合指令列表中的历史文本信息进行语义识别,并完成任务编程,本公开对此不再赘述。
通过上述可知,本公开实施方式中,通过对语音指令进行内置指令判断,避免机器人在执行基础指令的情况下,额外产生的计算资源的用于浪费,提高控制效果。
在一些实施方式中,本公开实施方式提供了一种机器人控制装置,该装置可应用于前述机器人200中,如图10所示,控制装置包括:
文本转换模块10,被配置为响应于检测到目标用户的语音指令,将所述语音指令转为文本形式的增量文本信息;
语义识别模块20,被配置为根据所述增量文本信息和已缓存的所述目标用户的历史文本信息进行语义识别,得到所述语音指令对应的语义信息;
任务编程模块30,被配置为基于所述语义信息调用所述机器人的能力集中的一个或多个能力模块,生成与所述语音指令对应的目标控制任务;
任务运行模块40,被配置为根据所述目标控制任务控制所述机器人运行。
通过上述可知,本公开实施方式中,利用语音编程降低机器人编程控制的难度和复杂度,并且通过对用户语音指令的语义识别,可以根据指令自由组合控制任务,机器人控制的灵活性更强,而且通过对历史指令进行上下文关联,可以识别用户模糊指令,提高机器人控制效果。
在一些实施方式中,所述文本转换模块10被配置为:
响应于检测到语音指令,提取所述语音指令的第一声纹信息;
将所述第一声纹信息与预先存储的所述目标用户的第二声纹信息进行匹配,并在匹配成功的情况下,确定检测到所述目标用户的所述语音指令;
对所述语音指令进行文本转换,得到所述增量文本信息。
在一些实施方式中,所述语义识别模块20被配置为:
将所述增量文本信息缓存在所述目标用户对应的指令列表的队尾中;
从所述指令列表中获取所述增量文本信息,以及位于所述增量文本信息之前预设数量的历史文本信息;
对所述增量文本信息及所述预设数量的历史文本信息进行语义识别,确定所述语音指令对应的所述语义信息。
在一些实施方式中,所述任务编程模块30被配置为:
基于所述语义信息从所述机器人的能力集中确定与所述语音指令对应的一个或多个目标能力模块;
基于预设代码格式调用所述目标能力模块进行代码编程,得到所述目标控制任务。
在一些实施方式中,所述语义识别模块20被配置为:
在根据所述增量文本信息确定所述语音指令为所述机器人的非内置指令的情况下,执行根据所述增量文本信息和已缓存的所述目标用户的历史文本信息进行语义识别,得到所述语音指令对应的语义信息的过程;
在根据所述增量文本信息确定所述语音指令为所述机器人的内置指令的情况下,根据所述内置指令对应的映射关系,确定所述语音指令对应所述目标控制任务。
在一些实施方式中,所述任务编程模块30被配置为:
根据预设类别对所述机器人的基础能力进行分类处理,得到每个类别对应的所述能力模块;
根据各个类别对应的所述能力模块,构建得到所述能力集。
在一些实施方式中,所述任务编程模块30被配置为:
对于每个类别,根据所述类别对应的至少一个基础能力构建得到一个或多个能力子模块;
根据所述基础能力和所述能力子模块,得到所述类别对应的所述能力模块。
在一些实施方式中,本公开示例提供了一种机器人,包括:
处理器;
存储器,存储有计算机指令,所述计算机指令用于使处理器执行上述任意实施方式所述的方法。
在一些实施方式中,本公开示例提供了一种存储介质,存储有计算机指令,所述计算机指令用于使计算机执行上述任意实施方式所述的方法。
具体而言,图11示出了适于用来实现本公开方法的机器人600的结构示意图,通过图11所示机器人,可实现上述处理器及存储介质相应功能。
如图11所示,机器人600包括处理器601,其可以根据存储在存储器602中的程序或者从存储部分608加载到存储器602中的程序而执行各种适当的动作和处理。在存储器602中,还存储有机器人600操作所需的各种程序和数据。处理器601和存储器602通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
以下部件连接至I/O接口605:包括键盘、鼠标等的输入部分606;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分607;包括硬盘等的存储部分608;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分609。通信部分609经由诸如因特网的网络执行通信处理。驱动器610也根据需要连接至I/O接口605。可拆卸介质611,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器610上,以便于从其上读出的计算机程序根据需要被安装入存储部分608。
特别地,根据本公开的实施方式,上文方法过程可以被实现为计算机软件程序。例如,本公开的实施方式包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,计算机程序包含用于执行上述方法的程序代码。在这样的实施方式中,该计算机程序可以通过通信部分609从网络上被下载和安装,和/或从可拆卸介质611被安装。
附图中的流程图和框图,图示了按照本公开各种实施方式的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
显然,上述实施方式仅仅是为清楚地说明所作的举例,而并非对实施方式的限定。对于所属领域的普通技术人员来说,在上述说明的基础上还可以做出其它不同形式的变化或变动。这里无需也无法对所有的实施方式予以穷举。而由此所引伸出的显而易见的变化或变动仍处于本公开创造的保护范围之中。
Claims (12)
1.一种机器人控制方法,其特征在于,应用于机器人,所述方法包括:
响应于检测到目标用户的语音指令,将所述语音指令转为文本形式的增量文本信息;
根据所述增量文本信息和已缓存的所述目标用户的历史文本信息进行语义识别,得到所述语音指令对应的语义信息;
基于所述语义信息调用所述机器人的能力集中的一个或多个能力模块,生成与所述语音指令对应的目标控制任务;
根据所述目标控制任务控制所述机器人运行。
2.根据权利要求1所述的方法,其特征在于,所述响应于检测到目标用户的语音指令,将所述语音指令转为文本形式的增量文本信息,包括:
响应于检测到语音指令,提取所述语音指令的第一声纹信息;
将所述第一声纹信息与预先存储的所述目标用户的第二声纹信息进行匹配,并在匹配成功的情况下,确定检测到所述目标用户的所述语音指令;
对所述语音指令进行文本转换,得到所述增量文本信息。
3.根据权利要求1所述的方法,其特征在于,所述根据所述增量文本信息和已缓存的所述目标用户的历史文本信息进行语义识别,得到所述语音指令对应的语义信息,包括:
根据所述增量文本信息以及已缓存的位于所述增量文本信息之前预设数量的历史文本信息,得到全量文本信息;
对所述全量文本信息进行语义识别,得到所述语音指令对应的所述语义信息。
4.根据权利要求3所述的方法,其特征在于,所述根据所述增量文本信息以及已缓存的位于所述增量文本信息之前预设数量的历史文本信息,得到全量文本信息,包括:
将所述增量文本信息缓存在所述目标用户对应的指令列表的队尾中;
从所述指令列表中获取所述增量文本信息,以及位于所述增量文本信息之前预设数量的历史文本信息;
根据所述增量文本信息和位于所述增量文本信息之前预设数量的历史文本信息,进行文本拼接得到所述全量文本信息。
5.根据权利要求1至4任一项所述的方法,其特征在于,基于所述语义信息调用所述机器人的能力集中的一个或多个能力模块,生成与所述语音指令对应的目标控制任务,包括:
基于所述语义信息从所述机器人的能力集中确定与所述语音指令对应的一个或多个目标能力模块;
基于预设代码格式调用所述目标能力模块进行代码编程,得到所述目标控制任务。
6.根据权利要求1至4任一项所述的方法,其特征在于,所述根据所述增量文本信息和已缓存的所述目标用户的历史文本信息进行语义识别,得到所述语音指令对应的语义信息,包括:
在根据所述增量文本信息确定所述语音指令为所述机器人的非内置指令的情况下,执行根据所述增量文本信息和已缓存的所述目标用户的历史文本信息进行语义识别,得到所述语音指令对应的语义信息的过程。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
在根据所述增量文本信息确定所述语音指令为所述机器人的内置指令的情况下,根据所述内置指令对应的映射关系,确定所述语音指令对应所述目标控制任务。
8.根据权利要求1所述的方法,其特征在于,预先建立所述机器人的能力集的过程包括:
根据预设类别对所述机器人的基础能力进行分类处理,得到每个类别对应的所述能力模块;
根据各个类别对应的所述能力模块,构建得到所述能力集。
9.根据权利要求8所述的方法,其特征在于,所述根据预设类别对所述机器人的基础能力进行分类处理,得到每个类别对应的所述能力模块,包括:
对于每个类别,根据所述类别对应的至少一个基础能力构建得到一个或多个能力子模块;
根据所述基础能力和所述能力子模块,得到所述类别对应的所述能力模块。
10.一种机器人控制装置,其特征在于,应用于机器人,所述装置包括:
文本转换模块,被配置为响应于检测到目标用户的语音指令,将所述语音指令转为文本形式的增量文本信息;
语义识别模块,被配置为根据所述增量文本信息和已缓存的所述目标用户的历史文本信息进行语义识别,得到所述语音指令对应的语义信息;
任务编程模块,被配置为基于所述语义信息调用所述机器人的能力集中的一个或多个能力模块,生成与所述语音指令对应的目标控制任务;
任务运行模块,被配置为根据所述目标控制任务控制所述机器人运行。
11.一种机器人,其特征在于,包括:
处理器;
存储器,存储有计算机指令,所述计算机指令用于使处理器执行根据权利要求1至9任一项所述的方法。
12.一种存储介质,其特征在于,存储有计算机指令,所述计算机指令用于使计算机执行根据权利要求1至9任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311002234.5A CN117021083A (zh) | 2023-08-09 | 2023-08-09 | 机器人及其控制方法、装置、存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311002234.5A CN117021083A (zh) | 2023-08-09 | 2023-08-09 | 机器人及其控制方法、装置、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117021083A true CN117021083A (zh) | 2023-11-10 |
Family
ID=88623972
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311002234.5A Pending CN117021083A (zh) | 2023-08-09 | 2023-08-09 | 机器人及其控制方法、装置、存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117021083A (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160351194A1 (en) * | 2015-05-27 | 2016-12-01 | Google Inc. | Context-sensitive dynamic update of voice to text model in a voice-enabled electronic device |
CN107220292A (zh) * | 2017-04-25 | 2017-09-29 | 上海庆科信息技术有限公司 | 智能对话装置、反馈式智能语音控制***及方法 |
CN107943458A (zh) * | 2017-11-20 | 2018-04-20 | 上海木爷机器人技术有限公司 | 一种机器人开发*** |
CN108509619A (zh) * | 2018-04-04 | 2018-09-07 | 科大讯飞股份有限公司 | 一种语音交互方法及设备 |
CN114662500A (zh) * | 2022-03-18 | 2022-06-24 | 支付宝(杭州)信息技术有限公司 | 一种人机交互方法、装置及电子设备 |
CN114785842A (zh) * | 2022-06-22 | 2022-07-22 | 北京云迹科技股份有限公司 | 基于语音交换***的机器人调度方法、装置、设备及介质 |
WO2022252946A1 (zh) * | 2021-06-03 | 2022-12-08 | 广州小鹏汽车科技有限公司 | 语音控制方法、语音控制装置、服务器和存储介质 |
CN116072119A (zh) * | 2023-03-31 | 2023-05-05 | 北京华录高诚科技有限公司 | 用于应急指挥的语音控制***、方法、电子设备和介质 |
-
2023
- 2023-08-09 CN CN202311002234.5A patent/CN117021083A/zh active Pending
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160351194A1 (en) * | 2015-05-27 | 2016-12-01 | Google Inc. | Context-sensitive dynamic update of voice to text model in a voice-enabled electronic device |
CN107220292A (zh) * | 2017-04-25 | 2017-09-29 | 上海庆科信息技术有限公司 | 智能对话装置、反馈式智能语音控制***及方法 |
CN107943458A (zh) * | 2017-11-20 | 2018-04-20 | 上海木爷机器人技术有限公司 | 一种机器人开发*** |
CN108509619A (zh) * | 2018-04-04 | 2018-09-07 | 科大讯飞股份有限公司 | 一种语音交互方法及设备 |
WO2022252946A1 (zh) * | 2021-06-03 | 2022-12-08 | 广州小鹏汽车科技有限公司 | 语音控制方法、语音控制装置、服务器和存储介质 |
CN114662500A (zh) * | 2022-03-18 | 2022-06-24 | 支付宝(杭州)信息技术有限公司 | 一种人机交互方法、装置及电子设备 |
CN114785842A (zh) * | 2022-06-22 | 2022-07-22 | 北京云迹科技股份有限公司 | 基于语音交换***的机器人调度方法、装置、设备及介质 |
CN116072119A (zh) * | 2023-03-31 | 2023-05-05 | 北京华录高诚科技有限公司 | 用于应急指挥的语音控制***、方法、电子设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111432989B (zh) | 人工增强基于云的机器人智能框架及相关方法 | |
Scheutz et al. | An overview of the distributed integrated cognition affect and reflection diarc architecture | |
CN110490213B (zh) | 图像识别方法、装置及存储介质 | |
US11430171B2 (en) | Explainable artificial intelligence | |
US11568855B2 (en) | System and method for defining dialog intents and building zero-shot intent recognition models | |
JP7191987B2 (ja) | 話者埋め込みと訓練された生成モデルとを使用する話者ダイアライゼーション | |
CN110599557B (zh) | 图像描述生成方法、模型训练方法、设备和存储介质 | |
Zhu et al. | AR-mentor: Augmented reality based mentoring system | |
Oviatt et al. | Designing the user interface for multimodal speech and pen-based gesture applications: State-of-the-art systems and future research directions | |
KR102656620B1 (ko) | 전자 장치, 그의 제어 방법 및 비일시적 컴퓨터 판독가능 기록매체 | |
Schiffer et al. | Caesar: an intelligent domestic service robot | |
CN114127710A (zh) | 利用对话搜索历史的歧义解决方案 | |
CN110807566A (zh) | 人工智能模型评测方法、装置、设备及存储介质 | |
KR20180096483A (ko) | 전자 장치, 이의 제어 방법 및 비일시적인 컴퓨터 판독가능 기록매체 | |
CN114127694A (zh) | 用于会话***的错误恢复 | |
Maurtua et al. | Enhancing safe human-robot collaboration through natural multimodal communication | |
Tang et al. | Real-time robot localization, vision, and speech recognition on Nvidia Jetson TX1 | |
Pineda et al. | Ioca: Interaction-oriented cognitive architecture | |
Cacace et al. | A robust multimodal fusion framework for command interpretation in human-robot cooperation | |
CN109002498B (zh) | 人机对话方法、装置、设备及存储介质 | |
CN111177346A (zh) | 人机交互方法、装置、电子设备、存储介质 | |
CN117021083A (zh) | 机器人及其控制方法、装置、存储介质 | |
Giachos et al. | A contemporary survey on intelligent human-robot interfaces focused on natural language processing | |
US20240096093A1 (en) | Ai-driven augmented reality mentoring and collaboration | |
CN112242139B (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 |