一种人工智能设备的目标运动信息的获得方法和装置
技术领域
本发明涉及智能设备技术,特别涉及一种人工智能设备的目标运动信息的获得方法和装置。
背景技术
随着科技的不断发展,当前已经可以通过人工智能设备例如机器人来代替人类执行一些任务,比如机器人可以做饭,或者机器人也可以洗衣服,或者机器人也可以在工厂中做一些对人类来说具有危险性的动作,以避免人类的危险。因此,机器人对人类生活或工作具有很大的帮助。
但是,目前的技术中,机器人的运动控制方式相对简单,例如在机器人中嵌入固定的执行程序,机器人内部的控制器在接收到传感器采集的外界数据后,将该采集数据与执行程序中的相关条件做比较,通过简单的逻辑判断而得到对应执行的动作,并且该动作的执行是依据预先存储在机器人中的动作参数,例如依据存储的行走步距值来进行行走。可是机器人依据该参数执行的动作不一定能得到较好的运动效果,例如由于行走步距值不合适使得机器人正在执行的任务并不能很好的完成。此时可以通过修改机器人的内部程序和对应的动作参数来优化其动作,使得机器人自身的运动能够得到完善和提高,但是很显然的,这种方式需要进行程序修改和调试,有可能多次的修改和调试才能达到一个较好的运动效果,繁琐复杂,使得机器人的动作优化效率很低,影响业务执行。
发明内容
有鉴于此,本发明提供一种人工智能设备的目标运动信息的获得方法和装置,以提高人工智能设备的优化效率。
具体地,本发明是通过如下技术方案实现的:
第一方面,提供一种人工智能设备的目标运动信息的获得方法,所述目标运动信息用于指导人工智能设备运动,所述方法包括:
获取传感器采集的多个运动信息,所述多个运动信息分别对应多个样本个体;
根据所述多个运动信息,确定用于优化对应运动的目标运动信息,所述目标运动信息对应所述多个运动信息中的共性特征,以使得所述人工智能设备根据所述目标运动信息执行对应的运动。
第二方面,提供一种人工智能设备的目标运动信息的获得装置,所述目标运动信息用于指导人工智能设备运动,所述装置包括:
信息接收模块,用于接收传感器采集的多个运动信息,所述多个运动信息分别对应多个样本个体;
信息处理模块,用于根据所述多个运动信息,确定用于优化对应运动的目标运动信息;所述目标运动信息对应所述多个运动信息中的共性特征,以使得所述人工智能设备根据所述目标运动信息执行对应的运动。
第三方面,提供一种人工智能设备的目标运动信息的闭环训练方法,所述目标运动信息用于指导人工智能设备运动,所述方法包括:
根据采集的多个人体的人体运动信息,确定用于优化对应运动的目标人体运动信息;
将所述目标人体运动信息发送至多个人工智能设备;
采集所述多个人工智能设备反馈的设备运动信息,所述设备运动信息是所述人工智能设备根据所述目标人体运动信息执行对应的运动得到,并根据多个所述设备运动信息,确定用于优化对应运动的目标设备运动信息;
根据所述目标人体运动信息、目标设备运动信息、以及所述人体运动信息和设备运动信息的各自占比,进行数据耦合,得到目标运动信息;
将所述目标运动信息发送至多个人工智能设备,并将所述多个人工智能设备执行所述目标运动信息对应的运动得到的新的设备运动信息与多个人体的新的人体运动信息进行所述的数据耦合,得到新的目标运动信息;其中,在所述数据耦合的循环多次执行过程中,按照预设的信息调整条件,逐步降低人体运动信息所占的比重,直至人体运动信息占比为零;
当人体运动信息占比为零后,采集多个人工智能设备反馈的设备运动信息,并根据所述设备运动信息得到目标运动信息,以使得人工智能设备根据所述目标运动信息执行对应的运动。
本发明实施例提供的人工智能设备的目标运动信息的获得方法和装置,是根据传感器采集的多个样本个体的运动信息,来得到优化运动的该目标运动信息,由于有了优化的依据,使得该目标运动信息能够较快的得到,并且也更加符合样本个体的运动,相对于现有技术中的单个设备的不断修改调试,提高了人工智能设备的优化效率。
附图说明
图1是本发明实施例提供的运动控制方法的应用场景一;
图2是本发明实施例提供的一种运动控制方法的流程图;
图3是本发明实施例提供的另一种运动控制方法的流程图;
图4是本发明实施例提供的运动控制方法的应用场景二;
图5是本发明实施例提供的运动控制方法中的数据耦合原理图;
图6是本发明实施例提供的运动控制装置的结构示意图;
图7是本发明实施例提供的人工智能设备的结构示意图;
图8是本发明实施例提供的运动控制装置的实体结构示意图;
图9是本发明实施例提供的人工智能设备的实体结构示意图。
具体实施方式
人工智能设备例如机器人,在执行某个动作时,是需要依据一些动作数据的,例如,假设机器人要将其手臂抬起,需要依据手臂抬起的高度、手臂抬起的角度等参数;假设机器人要进行行走,需要依据行走的步距、行走的速度等参数。上述的高度、速度等参数是存储在机器人内部中,比如存储在用于控制机器人运动的控制器中的存储模块。
但是现有的常规技术中,用于控制机器人运动的上述参数是相对固定的,一旦将该参数设置在机器人中,机器人就需要按照该参数来运动,而且修改参数也比较繁琐。本申请实施例的运动控制方式,就是要尽快的得到用于优化机器人运动的上述动作参数,使得机器人得到快速的提高和完善。需要说明的是,在后续本申请的各个实施例中,人工智能设备以机器人为例进行说明,实际实施中不局限于此,也可以是其他控制原理类似的人工智能设备。
本申请实施例的运动控制方法,通过采集大量的样本个体的运动信息,并综合根据这些信息来快速得到机器人运动的控制参数。具体的,参见图1,示出了本实施例的运动控制方法的一种可选的应用场景,首先简单说明下该场景。
选取用于采集运动信息的样本个体,该样本个体例如是人体,例如图1中所示的三个人11、12和13。实际实施中,选用哪些人作为样本个体,可以根据待优化的机器人的运动为依据。例如,假设要使用机器人进行烹饪,那可以选择一些厨师作为样本个体,或者,也可以是普通人不一定是厨师,但是要选择普通人在做饭时的运动进行采集(后续将详述);又例如,假设要使用机器人进行工厂的工件搬运,可以选择一些搬运工人作为样本个体。
此外,所选择的样本个体的数量也可以灵活设定,图1中仅示例性的示出了三个人,实际上用于选作样本个体的人的数量可以很多,比如50个人,100个人。通常情况下,样本数量越多得到的目标数据就越符合人体实际的运动情况,例如,选取10个搬运工人测试得到的搬运动作参数,与选取2个搬运工作得到的搬运动作参数相比,将更容易准确的总结出搬运动作的较好的动作参数。
如图1所示,还设置了服务器14,上述样本个体采集的数据需要传送到服务器14,由服务器14对数据进行处理得到目标数据。例如,上述的例子中,采集的很多搬运工人的搬运动作数据传送到服务器14,服务器14根据这些数据进行分析处理,得到这些工人通用的搬动动作参数,比如大家在搬运时基本上都是将胳膊上扬a角度,并且抬起b高度,甚至可能还采集到搬运时大家通常所施加的胳膊力量是c牛顿,相当于总结出大多数人运动的一些共性,作为要得到的目标数据。该目标数据由服务器14传输至机器人15,机器人15根据该目标数据运动时,就可以取得较好的运动效果了,机器人得到快速提高。
由上述描述,如图2所示,服务器14可以执行如下流程:
201、接收传感器采集的分别对应多个样本个体的多个运动信息;
202、根据多个运动信息,得到用于优化运动信息对应运动的目标运动信息;
203、将所述目标运动信息发送至人工智能设备,以使得所述人工智能设备根据所述目标运动信息执行对应的运动。
如图3所示,机器人15可以执行如下流程:
301、获取目标运动信息,所述目标运动信息是运动控制装置根据传感器采集的分别对应多个样本个体的多个运动信息得到;
302、根据所述目标运动信息执行对应的运动,以通过所述目标运动信息优化所述多个运动信息对应的运动。
具体的,如下将结合一些实际的应用场景或者应用方式,对上述服务器和机器人的处理进行详细说明:
应用一:假设机器人是专用于洗衣服的(也许该例子并不是很恰当,但仅用于说明本申请的运动控制方法的原理),那么,可以选取通常在家庭承担洗衣工作较多的女性个体作为样本个体,并且仅采集个体在洗衣服时的数据。
具体的,结合图1,在女性个体上设置传感器,个体11上安装传感器16,个体12上安装传感器17,个体13上安装传感器18。由于洗衣服主要是胳膊施力,所以可以将这些传感器设置在胳膊上。洗衣动作的参数可以包括:胳膊在洗衣时施加的力度、胳膊在搓衣服时的摆动幅度等等,可以设置对应采集这些参数的各种传感器。此外,为了不对测试人的生活造成不便,可以仅在洗衣服时才安装并启动这些传感器。
本实施例中,传感器采集的数据可以称为运动信息,即与洗衣服这个运动相关的一些信息;该运动信息采集后可以传递至服务器14,传递方式不做限制,可以通过网络传输信息。在服务器14侧,将接收到很多的运动信息,这些信息分别对应不同的样本个体,比如图1中所示的三个人,每个人都可以传递一条对应该测试人所集的洗衣服的运动信息。如下表1示例了可选的信息记录方式:
表1传感器采集的运动信息
样本标识 |
采集时间 |
力度信息 |
速度信息 |
幅度信息 |
环境信息 |
Y1 |
8:29 |
N1 |
V1 |
B1 |
S1 |
Y2 |
16:40 |
N2 |
V2 |
B2 |
S2 |
Y3 |
20:12 |
N3 |
V3 |
B3 |
S3 |
需要说明的是,表1中只是示例一些可选的信息,实际实施中可以根据实际情况进行变更。参见表1所示,Y1、Y2和Y3例如是分别对应于图1中所示的三个测试人体11、12和13。采集时间可以是测试人在洗衣服时启动传感器,传感器的启动时间,表示在该时间开始洗衣服;可选的,该采集时间也可以是一个时间段,例如Y1对应的8:29~9:01,其中的9:01是洗衣服结束的时间。其中的速度信息表示测试人在洗衣服时胳膊的摆动速度,环境信息可以是传感器采集的周围空气的湿度,通常情况下,洗衣服的环境中空气湿度会相对较高。本实施例中,例如,Y1可以称为一个样本个体,那么上述表1中对应该Y1的(Y1、8:29、N1、V1、B1和S1)的参数组合可以称为对应Y1的一个运动信息。
服务器14在获取到传感器采集的上述多个运动信息后,将根据这些运动信息得到用于优化运动信息对应运动的目标运动信息,例如,上述的例子中,采集了很多测试样本的洗衣服的运动参数,那么到底怎样洗衣服才能把衣服洗的更干净,比如胳膊需要摆动的幅度多大,胳膊摆动的速度多少等等,通过研究采集的数据总结出怎样运动才更合适。具体处理中,服务器可以根据多个人体运动信息(由于运动信息是采集的人体的,因此本实施例称为人体运动信息)的共性特征,得到对应共性特征的目标人体运动信息,该目标人体运动信息就是所要寻找的能够让洗衣服动作更优的参数。
仍以表1为例来举例:假设样本个体选择了10个人,表1中实际上获取到了10份运动信息,其中,每个人都有自己在洗衣服时的运动参数(例如速度、幅度),但是服务器经过统计后发现,这10个人中有7个人洗衣服时的胳膊摆动幅度在Bm左右,摆动速度在vm左右,力度在Nm,那么这些参数(Bm,vm,Nm)就可以称为是共性特征,也就是大多数人都是这么做的,该(Bm,vm,Nm)就可以作为目标运动信息。
如上所述的,描述了从10个人的样本数据中选择7个人数据的一种选择方式,这种寻找共性特征的方式也可以理解为,按照预设的数据筛选算法,从运动信息中去掉不可信数据;根据运动信息中的不可信数据之外的可信数据,分析得到所述目标运动信息。比如,在这10个人对应的数据中,洗衣服的摆动速度分别是v1、v2、v3、v4………v10,其中,v2至v8的速度数值(假设是相同的速度单位)假设都在15左右,有的是14、有的是16、有的是15,而v1的数值是6,v9的数值是25,v10的数值是10,那么经过统计,目的是寻找符合大多数人的运动规律的,则可以将v1、v9和v10的数值去除,认为这些是不可信数据,相当于异常数据,只保留v2至v8的速度数值,认为是可信数据。并且根据v2至v8的速度数值得到目标速度数值,比如可以设定为15,或者设定为14-16的范围段。而预设的数据筛选算法具体采用何种算法本实施例不做限制,只要能实现上述原理的数据筛选功能即可。
可选的,实际测试中,每个人的数据可能不尽相同,并不能找到完全一样的多个数据,此时服务器可以根据某种算法,找到大多数的数据是在什么样的范围,进而推导出一个共性数据范围或者该范围内的某个点数值也可以。总之所要得到的目标运动信息是大多数的测试样本所使用的参数,另外由上述可以看到,尽管在前述的描述中将(Y1、8:29、N1、V1、B1和S1)的参数组合作为一个运动信息,但是要得到的目标运动信息可以是其中的部分参数(Bm,vm,Nm),能用于指导机器人运动即可。
服务器14在得到目标运动信息后,将该信息发送至人工智能设备例如机器人,机器人就可以根据该信息执行洗衣服的动作,比如按照(Bm,vm,Nm)进行机器人胳膊的摆动和施力。由于服务器传递给机器人的目标运动信息,是根据测试人体的实际运动信息统计得到的,是大多数人都执行的动作对应的参数,因此机器人依据该参数执行的动作能够取得比较好的效果;并且本实施例采集的运动信息不是个别样本个体的数据,而是很多的样本个体对应的运动信息的大数据,能够统计得到较好的运动参数。
此外,这种方式的机器人动作优化,由于是直接获取多数样本的共性数据,能够使得机器人运动优化的速度提高,相比于传统的孤立调试,使得较优数据的获得效率比较快;并且,该方式中是由服务器自动采集获取样本数据,并在统计得到目标运动信息后传输至机器人,相比于传统的对机器人程序的不断修改和调试,使得机器人优化的方式更加方便和快捷,比如从机器人的使用者的角度来看,其不再需要自己调试和修改机器人参数,而是由机器人自己从服务器获取目标运动信息,该信息是服务器负责采集和处理得到,不需要使用者参与,总之,本实施例的运动控制方法不仅提高了机器人的优化速度,而且由于比较符合样本个体的实际运动情况,优化效果将更好。
从机器人15的角度来看,服务器处理得到的目标运动信息可以是存储在机器人15的存储模块中;当机器人15与服务器14之间暂时不通过网络连接时,机器人可以将存储模块中存储的上次获取的最新目标运动信息作为动作执行的依据,或者,机器人也可以与服务器通过网络连接,从服务器获取最新的目标运动信息后再执行对应的动作。
举例如下:使用者可能不希望自己的机器人一直通过网络连接服务器,那么使用者可以在1号的早上8:00,启动机器人的数据获取功能,使得机器人连网从服务器下载最新的目标运动信息,根据该信息执行洗衣服的动作。如果使用者感觉根据本次下载的信息机器人运动的效果比较好,可以一直使用该信息;或者,当使用者感觉机器人运动不好,衣服洗不干净,想要进一步提高其运动效果时,可以再次启动机器人的数据获取功能,使得机器人连网从服务器下载更新的目标运动信息;又或者,使用者也可以控制机器人定期从服务器获取信息。当然可选的,服务器也可以定期的按照预设时间向机器人推送其更新的目标运动信息,比如每隔一天进行推送。
如上所述的,服务器侧的数据采集和处理,并不是仅进行一次,数据的接收可以是一直进行的,或者定期进行的,以使得目标运动信息不断更新。具体的,比如,服务器可以设置一个时间间隔,在预设的时间间隔到达时执行目标运动信息的计算,例如可以设定在每天的22:00根据采集的样本个体的运动信息,计算目标运动信息。又比如,服务器也可以在多个运动信息更新完成时执行目标运动信息的计算,例如设定的样本个体是10个,那么这10个样本个体的采集运动信息是不断更新的,可能每天都会有更新,服务器在接收一次数据后,可以等到所有的10个样本个体的数据都再次更新完成时,执行上述处理。当然也可以是其他的设定方式,不再举例。
应用二:在上述的应用一的例子中,是以某个特定的目标应用场景为例,比如该目标应用场景是洗衣服;得到与洗衣服场景对应的目标运动信息,用于优化机器人的洗衣服运动。本实施例的应用二中,也可以不区分场景,比如将某个人作为样本个体之一时,可以采集这个人一天中的各种运动,例如洗衣服、做饭、跑步、跳舞等等,一直采集该测试人的动作;对应的,机器人接收到得目标运动信息也包括很多场景下的信息,比如洗衣服的数据、做饭的数据等,那么该机器人就可以是能够执行很多运动任务的机器人。
具体描述如下:以图1中的测试人11为例,该测试人上可以设置用于采集其运动信息的各种传感器,传感器的设置方式可以灵活设定,尽量使得测试人携带较为方便并且不会对测试人的行动造成不便。图1中的测试人11,仅示例了其身上设置的其中一个传感器16,用于采集其胳膊运动,还可以在该测试人的其他身体部位设置用于采集对应参数的传感器。传感器可以一直处于工作状态,例如可以在白天从测试人起床开始活动至晚上睡觉之间的时间段,传感器可以不间断的进行运动采集。采集的运动信息类似于表1所示,比如还可以包括,测试人的行走步距、行走速度,环境信息还可以包括周围的空气温度等,具体设置何种传感器采集何种运动参数,可以根据机器人待优化的运动确定。
本实施例中,服务器在接收到传感器采集的上述数据后,可以首先将这些数据按照应用场景进行区分,并分别对每种应用场景分析出对应的目标运动信息。举例如下:以表2为例示出其中的一部分采集参数。
表2传感器采集的运动信息
如表2所示,假设有6个人的运动信息,包括多种运动参数;这些运动信息中可能是对应不同的运动场景的,例如,当传感器采集测试人一天的运动信息时,包括了该测试人洗衣服时的参数,还包括该测试人烹饪时的一些动作,还包括该测试人在整理家务时的动作等等。不同的运动场景,测试人通常会采取不同的运动方式,例如洗衣服时手臂是有摆动幅度和摆动速度的,在晾衣服时手臂需要抬高,而在烹饪时手臂的运动可能是炒锅炒菜时的上下运动;服务器会将这些参数按照运动场景归类,同一类场景对应的数据才更容易找到其共性特征,不同类场景的数据通常是不容易找到共性特征的。
以表2为例,示例了两种运动场景,洗衣服和烹饪,假设上述的6个人的运动信息是分别对应这两种运动的信息,服务器可以按照环境参数来区分。比如,洗衣服时空气湿度会相对稍高些,而烹饪时的周围空气温度会相对较高,基于此,服务器发现Y1、Y2和Y5的运动信息中的湿度参数(S1、S2和S5)都处于洗衣服对应的湿度范围内,都相对较高,据此将Y1、Y2和Y5的运动信息归类为“洗衣服运动对应的信息”。又例如,烹饪时厨房的空气温度会相对较高,基于此,服务器发现Y3、Y4和Y6的运动信息中的温度参数(T3、T4和T6)都处于空气温度对应的温度范围内,都相对较高,据此将Y3、Y4和Y6的运动信息归类为“烹饪运动对应的信息”。
如上所述的,湿度参数(S1、S2和S5)、温度参数(T3、T4和T6)都可以作为区分运动场景的依据,可以将这类参数称为运动类型参数,用于确定运动类型的,比如根据湿度确定运动类型是洗衣服,根据温度确定运动类型是烹饪。依据这些运动类型参数,可以从采集到的多个运动信息中,获取属于同一运动类型的运动信息作为参照运动信息,比如,Y1、Y2和Y5同属于洗衣服运动,这几个样本对应的运动信息(例如力度、速度和幅度等)称为参照运动信息,根据这些参照运动信息确定用于优化洗衣服运动的目标运动信息。在确定好同一运动类型的参照运动信息后,可以按照前面描述过的方式,按照预设的数据筛选算法,从参照运动信息中去掉不可信数据;根据参照运动信息中的不可信数据之外的可信数据,分析得到所述目标运动信息。
当然上述只是示例了一种可能的场景区分方法,具体实施中,服务器也可以采用其他方法进行场景区分,比如,还可以设置一个用于拍摄测试人运动视频的设备,该设备将拍摄的运动视频发送给服务器,服务器可以结合视频分析来区分场景,比如服务器通过画面识别,得到测试人正在烹饪,再得到该烹饪时的时间是7:07,然后再查找该测试人上传的运动信息中该时间点对应的运动参数,并记录这些参数对应的场景是烹饪。
又例如,也可以是由测试人控制,在测试人自己做某个运动场景(比如洗衣服)之前,首先从其携带的传感器控制***中选择对应的场景(可以预先设置多个场景选项供测试人选择),以使得在传感器采集数据上报服务器时,将该场景信息也一并传输至服务器。其他的场景区分方式不再详细列举。
服务器在区分运动场景后,将分别对每种场景的运动信息,寻找其共性特征对应的目标运动信息,详细方法可以参见应用一的实施例,不再详述。服务器将分别对应各个场景的目标运动信息发送至机器人,机器人根据这些信息,在执行不同的场景运动时进行对应依据参数执行。
例如,机器人内部存储了洗衣服和烹饪的运动依据参数,当机器人执行洗衣服运动时,则从中获取洗衣服的参数对应执行动作,当机器人执行烹饪运动时,则从中获取烹饪的参数对应执行动作。机器人如何区分自己到底在执行何种运动,同样可以有多种场景识别方式,例如,机器人可以有控制器,当需要机器人做何种运动时,可以通过该控制器人工进行选择设定,则机器人据此从存储模块中调出对应的运动信息执行;又例如,机器人也可以通过传感器感知周围环境,比如湿度较高时,认为是洗衣服,则选用洗衣服的运动信息,温度较高时认为是烹饪,则选用烹饪的运动信息。同样,也可以结合视频判定。
可选的,服务器如果不区分场景,也可以采取其他的数据分析方法,找到目标运动信息,以使得机器人的运动具有更好的效果。
应用三:在上述的应用一和应用二中,都是以获取人体的运动信息为例,选择的样本个体是人;在本实施例的应用三中,服务器获取的样本个体的运动信息是机器人的运动信息,也就是说,样本个体除了包括测试人,还包括机器人,并且,从机器人采集的运动大数据也会进行共性特征的优化,且优化后重新输入机器人来指导机器人运动,形成机器人运动优化的闭环反馈,这样也使得对机器人运动的优化速度进一步提升,优化效果进一步提高。
具体的,参见图4,示出了本实施例的方法的原理,服务器14在根据采集的参数得到目标人体运动信息后,可以将该运动信息发送至多个机器人,例如包括机器人15、机器人19和机器人20,当然图4中是仅示例了三个机器人,实际实施中可以是很多的机器人,以获得大数据的样本。
也就是说,在本实施例中,用于测试的样本个体不仅包括人,还包括人工智能设备例如机器人。机器人上也是设置传感器,采集该机器人的运动信息,例如,以洗衣服为例,服务器14将洗衣服的相关参数传输至机器人15,机器人15据此执行洗衣服的动作,在动作过程中,设置在机器人上的传感器开始采集对应的参数,得到机器人在洗衣服时的一些运动信息,比如机器人的机械臂的摆动速度、摆动幅度等,机器人的运动信息的采集与人的信息采集的方法基本相同,不再详述。如果将人作为样本个体时采集的参数称为人体运动信息,那么可以将机器人作为样本个体时采集的参数称为设备运动信息。
需要说明的是,不同的机器人从服务器获取目标运动信息的时间可能并不是同步的,比如,机器人15设定在每天的时间8:00从服务器14获取更新的目标运动信息,而机器人19设定在每天的时间19:00从服务器14获取更新的目标运动信息,机器人20没有固定时间,可能是由机器人的主人(或者称为使用者)在希望获得更新信息时控制机器人从服务器14获取更新的目标运动信息。那么这种方式由于服务器侧的信息是不断更新的,因此在不同时间获取信息的各个机器人的动作所依据的参数就可能是不同的,通过传感器可以采集依据不同的信息执行的运动对应的运动信息,反馈至服务器。
服务器14在接收到很多的机器人反馈的设备运动信息后,也会采取与人体运动信息相同的方法,分析这些设备运动信息的共性特征,并得到对应的目标设备运动信息。并且,服务器14会将目标人体运动信息和目标设备运动信息进行数据耦合,得到一个两者综合得到的更新的目标运动信息。
参见图5,示出了服务器进行数据耦合的原理,具体是根据人体运动信息和设备运动信息分别在运动信息中的各自占比,以及目标人体运动信息和目标设备运动信息进行数据耦合,得到目标运动信息,参见如下公式:
目标运动信息=目标人体运动信息*人体运动信息占比+目标设备运动信息*设备运动信息占比;
举例如下:以洗衣服运动时的胳膊摆动速度为例,假设有20个人作为样本个体,分别具有各自对应的摆动速度,并且服务器分析出这些速度对应的目标人体运动信息(即目标摆动速度)是v1;此外,假设有10个机器人作为样本个体,分别具有各自对应的摆动速度,并且服务器分析出这些速度对应的目标设备运动信息(即目标摆动速度)是v2,那么,
人体运动信息占比=20/(20+10)=2/3;
设备运动信息占比=10/(20+10)=1/3;
目标摆动速度=v1*(2/3)+v2*(1/3)
其他运动信息中的参数都可以按照上述方法进行数据耦合的计算。在本实施例的运动控制方式中,服务器获得的从数量较多的样本个体采集的大数据,既包括从人体采集的数据,也包括从机器人采集的数据,并且根据这两部分数据进行耦合得到新的目标运动信息,服务器会将该新的目标运动信息传输至机器人,以进一步优化机器人的动作。
应用四:在上述的应用三中,服务器结合了人体运动信息和设备运动信息,综合得到用于指导机器人动作的目标运动信息;本实施例的应用四中,在此基础上进一步改进,在服务器根据上述两种信息进行优化的基础上,逐步降低人体运动信息所占的比重,并最终形成机器人自身的自我学习和闭环训练。
可选的,服务器可以根据预设的信息调整条件,对人体运动信息进行调整,以使得人体运动信息在总的运动信息中的占比降低,即逐步降低人体运动信息所占的比重。上述的预设的信息调整条件,比如是,服务器每隔一个星期就减少人体运动信息的比重,例如第一个星期人体运动信息在总信息中的比重是70%,第二个星期调整人体运动信息在总运动信息中的比重是50%,等;或者,该条件还可以设置如何降低人体运动信息的比重,比如每隔一段时间降低10%,或者降低5%等等,多种方式可以灵活设定。
其中,人体运动信息的占比降低,可以采用如下的方式:可以逐步减少作为样本个体的测试人体的数量,比如,最初选择了20个人作为样本个体,经过一段时间后,去掉了5个人,改为15个人的样本个体,再经过一段时间减少为包括10个人的样本个体,逐步减少直至最终取消人体的样本个体。或者也可以是采集的样本个体的数量不变,只是服务器在分析处理数据时,使用的样本个体的数据逐步减少。当人体运动信息减少至零时,服务器接收的样本个体采集的运动信息,只有通过传感器从机器人采集的设备运动信息,服务器根据这些设备运动信息寻找共性特征,得到目标设备运动信息,并反馈至机器人,机器人根据该目标设备运动信息再次执行对应的运动,采集到运动信息后再反馈至服务器,形成了机器人数据的闭环自我学习。
此外,在机器人的自我闭环训练的过程中,机器人的使用者如果觉得机器人的动作不能满足使用者的要求,使用者也可以对机器人的运动参数稍微进行修改,这样对应执行的动作的运动信息也会发生变化,传输至服务器后,由服务器根据这些运动信息寻找共性特征,进一步指导机器人的动作。
本申请实施例的运动控制方法中,不是仅对于单个的机器人运动参数的修改调试,而是由服务器自动收集传感器采集的大数据的运动信息样本,并根据这些大数据信息样本寻找共性特征得到较优的运动参数,以此来指导机器人的动作,使得机器人的优化效率得到提高,优化效果也较好。
此外,需要说明的是,机器人所执行的运动,不仅可以是洗衣服、做饭、或者执行某种工厂任务等可以帮助人类处理某个任务的动作,也可以是用于娱乐的机器人,比如跳舞的机器人,或者模仿人类进行跑步的机器人等等,对于这些机器人人类也希望其所做的运动能够更接近于人类,因为这样人类可以将这些机器人作为人类的一个日常生活的伙伴,陪人类一起娱乐或运动等,其实对人类的生活也是有帮助的。这种情况下,就可以采用上述实施例中所描述的方法,选用人体作为样本个体,采集很多人体跳舞的运动信息,服务器据此统计出大多数人体跳舞时所采用的动作参数,指导机器人运动,使得机器人跳舞更像人类。并且,本申请实施例的运动控制方法中,服务器采集的大数据是不断采集不断更新的,这样使得用于指导运动的参数也不断的得到优化。
在上述说明运动控制方法的基础上,本申请实施例还提供了一种运动控制装置,该装置可以设置在服务器14上,以使得服务器执行上述方法实施例中对应的运动控制方法。参见图6,该运动控制装置可以包括:信息接收模块61、信息处理模块62和信息发送模块62;其中,
信息接收模块61,用于接收传感器采集的多个运动信息,所述多个运动信息分别对应多个样本个体;
信息处理模块62,用于根据所述多个运动信息,确定用于优化对应运动的目标运动信息;
信息发送模块63,用于将所述目标运动信息发送至人工智能设备,以使得所述人工智能设备根据所述目标运动信息执行对应的运动。
进一步的,信息处理模块62,具体用于根据所述运动信息中的运动类型参数,确定所述运动信息对应的运动类型;从所述多个运动信息中,获取属于同一运动类型的运动信息作为参照运动信息,并根据所述参照运动信息确定用于优化对应运动的目标运动信息。
进一步的,所述样本个体包括:人体;所述运动信息包括:传感器采集的所述人体对应的人体运动信息。所述样本个体还包括:智能设备;所述运动信息还包括:传感器采集的智能设备对应的设备运动信息。信息处理模块62,具体用于根据人体运动信息确定目标人体运动信息;根据设备运动信息确定目标设备运动信息;并根据所述目标人体运动信息、目标设备运动信息、以及所述人体运动信息和设备运动信息分别在所述运动信息中的各自占比,进行数据耦合,得到所述目标运动信息。
本申请实施例还提供了一种人工智能设备,该设备例如是机器人;参见图7,该人工智能设备可以包括:信息获取模块71和运动执行模块72;其中,
信息获取模块71,用于获取目标运动信息,所述目标运动信息是运动控制装置根据传感器采集的多个运动信息得到,所述多个运动信息分别对应多个样本个体;
运动执行模块72,用于根据所述目标运动信息执行对应的运动,以通过所述目标运动信息优化所述多个运动信息对应的运动。
可选的,信息获取模块71,具体用于:获取预先存储在本地的所述目标运动信息;或者,从所述运动控制装置获取所述目标运动信息。
请参考图8,本申请实施例还提供了一种运动控制装置的实体结构示意图。该运动控制装置可能是包含计算能力的主机服务器,或者是个人计算机,或者是可携带的便携式计算机或终端等等,本实施例并不对该装置的具体实现做限定。如图8所示,该运动控制装置可以包括:处理器(processor)810,通信接口(Communications Interface)820,存储器(memory)830和总线840。
其中,处理器810,通信接口820,存储器830通过总线840完成相互间的通信。通信接口820,用于与传感器或者机器人中的通信接口进行通信进行运动信息的传输。
处理器810,可能是一个中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本实施例的一个或多个集成电路。存储器830,可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器,该存储器830用于存放程序指令。处理器810可以执行存储器830中的程序指令,以用于执行如下工作:接收传感器采集的分别对应多个样本个体的多个运动信息;根据所述多个运动信息,得到用于优化所述运动信息对应运动的目标运动信息;将所述目标运动信息发送至人工智能设备,以使得所述人工智能设备根据所述目标运动信息执行对应的运动。
请参考图9,本申请实施例还提供了一种人工智能设备的实体结构示意图。该人工人工智能设备例如是机器人。如图9所示,该人工智能设备可以包括:处理器(processor)910,通信接口(Communications Interface)920,存储器(memory)930和总线940。
其中,处理器910,通信接口920,存储器930通过总线940完成相互间的通信。通信接口920,用于与服务器进行通信进行运动信息的传输。
处理器910,可能是一个中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本实施例的一个或多个集成电路。存储器930,可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatilememory),例如至少一个磁盘存储器,该存储器930用于存放程序指令。处理器910可以执行存储器930中的程序指令,以用于执行如下工作:获取目标运动信息,所述目标运动信息是运动控制装置根据传感器采集的分别对应多个样本个体的多个运动信息得到;根据所述目标运动信息执行对应的运动,以通过所述目标运动信息优化所述多个运动信息对应的运动。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的***、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的***、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。