CN115755910A - 一种家庭服务机器人的控制方法及系统 - Google Patents
一种家庭服务机器人的控制方法及系统 Download PDFInfo
- Publication number
- CN115755910A CN115755910A CN202211452185.0A CN202211452185A CN115755910A CN 115755910 A CN115755910 A CN 115755910A CN 202211452185 A CN202211452185 A CN 202211452185A CN 115755910 A CN115755910 A CN 115755910A
- Authority
- CN
- China
- Prior art keywords
- robot
- served
- yaw
- value
- data
- 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.)
- Granted
Links
Images
Landscapes
- Manipulator (AREA)
Abstract
本发明提供一种家庭服务机器人的控制方法及系统,基于偏航数据,利用决策树模型进行预测,得到的预测偏航值可精确地定位机器人在室内的方向角度,使得在进行基于激光雷达的SLAM室内定位时,能更精准地进行特征点匹配;将多张待服务对象的图像输入至深度学习网络模型中进行深度学习,很好地识别出不同状态下的家用电器,图像包括家里光线太暗、有人站在冰箱门前等情况,方便机器人识别出各种家用电器;在规划机器人路径时,通过学习算法对功耗进行预测,以达到功耗最小化的目的。
Description
技术领域
本发明属于自动化控制技术领域,尤其涉及一种家庭服务机器人的控制方法及系统。
背景技术
家庭服务机器人是为人类服务的特种机器人,能够代替人完成家庭服务工作的机器人,应用在使用者的家庭中,以完成包括物品搬运、家电控制、清洁卫生等工作,例如在人或宠物走来走去的情况下导航到冰箱处拿某个食物,或者将脏衣服丢到洗衣机。
为了完成使用者赋予给它的工作任务,机器人需要在室内实现精准定位,特别是朝向角度需要很精准,才能控制或者操作相关的待服务对象;而室内环境是一种动态环境,即导航路上存在多种活动的障碍物,家电也可能被更换,而且随着灯光的变化,或者类似的两种家电并排放在一块,则有可能导致机器人识别错误;在机器人的路径规划中,目前普遍是按最短路径或最小时间规划,但是最短路径和最小时间并不完全代表最优的功耗,并未发现在行驶中何种因素会对功耗起到减小作用,导致机器人很耗电,在进行家庭服务过程中频繁充电。
上述内容仅用于辅助理解本发明的技术方案,并不代表承认上述内容是现有技术。
发明内容
本发明的目的在于克服上述现有技术存在的不足,提供一种家庭服务机器人的控制方法及系统,主要用于解决现有技术中机器人在室内角度偏航定位不精准、对象识别精度差、耗电多等问题。
为了实现上述目的,第一方面,本发明提供一种家庭服务机器人的控制方法,包括以下步骤:
S10、接收服务指令,所述服务指令被配置为使机器人到达或相继经过至少一个预设待服务对象以执行设定任务动作;
S20、采集检测偏航数据,输入至决策树模型,得到预测偏航值;所述决策树模型被配置为内设有偏航数据的分类预测策略,并利用数据集训练所得;
S30、基于SLAM进行室内定位,通过学习算法预测并制定功耗最优的行驶路径;
S40、在行驶过程中,采集待服务对象的图像,输入至深度学习网络模型中进行识别,得到所述待服务对象的类别,与服务指令中的预设待服务对象的类别进行判定,如相符,继续执行设定任务动作。
在一些实施例中,在步骤S20中,包括以下步骤:
所述偏航数据包括由IMU传感器采集的第一偏航值和由里程计采集的第二偏航值;
在制定偏航数据的分类预测策略时,利用角度测量工具,测量机器人的真实朝向角度,将偏航数据分成360种分类,记录与每一种分类下偏航数据相对应的第一偏航值和第二偏航值,生成真实朝向角度与第一偏航值、第二偏航值的映射表;
利用IMU传感器和里程计产生偏航值,分为训练集、验证集和测试集,采用K折交叉验证方法进行训练,得到训练后的决策树模型。
在一些实施例中,在步骤S20中,包括以下步骤:
测量当机器人处于异常状态时的第一偏航值和第二偏航值,定义为异常数据集;所述异常状态包括但不限于所述机器人在空转、磁场环境变弱后IMU传感器的输出出现振动;
在训练决策树模型时,加入所述异常数据集。
在一些实施例中,在步骤S20中,包括以下步骤:
将每种分类分布在决策树模型的端点上,每个端点赋值为一个矩阵,所述矩阵中包括360个整数,其中一个为1,其他为0,整数1在矩阵中的位置表示对应的偏航数据分类。
在一些实施例中,在步骤S30中,包括以下步骤:
控制机器人按任意方向移动,采集里程计数据和电流值,计算机器人前行、后移、转弯时的电流消耗值;
根据服务指令,制定出若干条到达或相继经过至少一个预设待服务对象的行驶路径,利用线性SVR算法对电流消耗值进行预测,选择电流消耗值最小时对应的最优行驶路径。
在一些实施例中,在步骤S30中,包括以下步骤:
在利用线性SVR算法对电流消耗值进行预测时,对预测的电流消耗值进行容错率判断,当预测的电流消耗值小于等于真实电流值×容错率,且大于等于真实电流值×(2-容错率),保留对应的行驶路径,其中,容错率的取值范围为1.1~1.6。
在一些实施例中,在步骤S30中,包括以下步骤:
在选择最优行驶路径时,先筛选出曲线移动路程比直线移动路程大的行驶路径,再在筛选出的行驶路径中按电流消耗值排序,选取电流消耗值最小对应的最优行驶路径。
在一些实施例中,在步骤S40中,包括以下步骤:
应用网络爬虫程序在互联网上爬取各种待服务对象的图片,得到对应的URL地址,所述待服务对象包括但不限于冰箱、洗衣机、消毒柜、洗碗机中的一种或多种;
将爬取的图片分为训练集和测试集,将输入归一化为150*150,输入至LeNet5改进型深度学习网络模型中,经卷积学习循环处理,以最大值作为图像中的明显特征,输出识别结果,所述识别结果被配置为代表待服务对象是否属于某一类别的结果。
在一些实施例中,在步骤S40中,包括以下步骤:
改变所爬取图片的对比度和亮度,模拟待服务对象被遮挡或光线变暗的情况,将处理后的图片输入至LeNet5改进型深度学习网络模型中进行训练。
第二方面,本发明提供一种应用于如上述家庭服务机器人的控制方法的系统,包括:
接收模块,被配置为接收服务指令,所述服务指令被配置为使机器人到达或相继经过至少一个预设待服务对象以执行设定任务动作;
偏航预测模块,被配置为采集检测偏航数据,输入至决策树模型,得到预测偏航值;所述决策树模型被配置为内设有偏航数据的分类预测策略,并利用数据集训练所得;
路径预测模块,被配置为基于SLAM进行室内定位,通过学习算法预测并制定功耗最优的行驶路径;
识别模块,被配置为在行驶过程中,采集待服务对象的图像,输入至深度学习网络模型中进行识别,得到所述待服务对象的类别,与服务指令中的预设待服务对象的类别进行判定,如相符,继续执行设定任务动作。
相比现有技术,本发明的有益效果至少包括:
基于偏航数据,利用决策树模型进行预测,得到的预测偏航值可精确地定位机器人在室内的方向角度,使得在进行基于激光雷达的SLAM室内定位时,能更精准地进行特征点匹配;
将多张待服务对象的图像输入至深度学习网络模型中进行深度学习,很好地识别出不同状态下的家用电器,图像包括家里光线太暗、有人站在冰箱门前等情况,方便机器人识别出各种家用电器;
在规划机器人路径时,通过学习算法对功耗进行预测,以达到功耗最小化的目的。
附图说明
利用附图对本发明作进一步说明,但附图中的实施例不构成对本发明的任何限制,对于本领域的普通技术人员,在不付出创造性劳动的前提下,还可以根据以下附图获得其它的附图。
图1是一种实施例下一种家庭服务机器人的控制方法的流程示意图。
图2是一种实施例下陀螺仪发生数据漂移的示意图。
图3是一种实施例下IMU传感器异常状态下输出偏转值的示意图。
图4是一种实施例下IMU传感器在重复测试10次时的测试结果示意图。
图5是一种实施例下决策树模型运算结果第一示意图。
图6是一种实施例下决策树模型运算结果第二示意图。
图7是一种实施例下决策树模型运算结果第三示意图。
图8是一种实施例下一种家庭服务机器人的控制系统的示意图。
具体实施方式
下面将结合附图对本发明的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在本发明的描述中,需要说明的是,术语“中心”、“上”、“下”、“左”、“右”、“竖直”、“水平”、“内”、“外”等指示的方位或位置关系为基于附图所示的方位或位置关系,仅是为了便于描述本发明和简化描述,而不是指示或暗示所指的装置或元件必须具有特定的方位、以特定的方位构造和操作,因此不能理解为对本发明的限制。此外,术语“第一”、“第二”、“第三”仅用于描述目的,而不能理解为指示或暗示相对重要性。
发明人发现:
一般在室内动态环境中移动机器人很难获得精确的定位,主要表现在一些惯性传感器,例如GPS、陀螺仪、电子罗盘、加速度计在室内的方向测量值不准确,同时里程计信息有累积误差而无法计算精确的定位信息。一般陀螺仪在校准后,在室内旋转到某个角度突然停下,它输出的方向角度数据还会漂移一段时间停止,而且漂移的幅度较大,时间较长,最后的稳定值不一定就是真实值,因此采用回归的算法拟合曲线不一定准确,而且因为是不标准的非线性曲线,拟合出来的多项式阶数较高运算量较大,对于算力有限的机器人实时定位不太适合。
利用里程计定位也有类似的困扰,在直流电机或者步进电机上,再套用一个减速电机,光电编码器可以读取的脉冲数较多,可以实现较为精确的角度计算,进而在机器人旋转时可以获取较为精确的角度值,但光电编码器每一个栅格对应某个精度的角度值时,还是会有一定的误差存在,这种误差会不断累积导致误差越来越大。同时由于地面有摩擦力,机器人在移动时会有轻微打滑现象,特别是在室内动态环境中碰到较重的障碍物后轮子会打滑空转,此时光电编码器还在读数,但机器人的方向并未改变。
每秒钟利用陀螺仪和里程计都可以输出大量的方向角度数据,因为传感器本身精度有限,同时有观测误差存在,因此会产生很多的异常值,最终导致机器人的方向角度定位精度很差,当机器人需要以某一特定角度对待服务对象执行某种动作时,很容易出错。
另外地,由于家庭里的环境多变,人们和动物在房子里移动,形成移动的障碍物,其次家电和家具的位置会改变,有时会添加一些新的家电和家具,家里的旧电器和家具被扔掉,甚至随着时间推移,光线的变化,人是否站在冰箱或者洗衣机前面等情况,都会导致机器人无法很好识别出家电的位置和类别,无法执行相关动作。
鉴于此,参照图1,第一方面,本发明提供一种家庭服务机器人的控制方法,包括以下步骤:
S10、接收服务指令,所述服务指令被配置为使机器人到达或相继经过至少一个预设待服务对象以执行设定任务动作;
例如使用者向机器人下发一个服务指令,是让机器人去冰箱拿一瓶饮料来到沙发,或者让机器人去洗手间拿脏衣服并放进洗衣机,最后回到客厅充电。可见机器人需要根据此服务指令,在家庭室内环境中按照一定的路线、经过一定的预设待服务对象、执行一定的设定任务动作。
S20、采集检测偏航数据,输入至决策树模型,得到预测偏航值;所述决策树模型被配置为内设有偏航数据的分类预测策略,并利用数据集训练所得;
由于决策树模型已经提前得到训练,当采集到由传感器和里程计所检测得到的检测偏航数据后,先进行数据清洗和分析,输入决策树模型后,会根据此检测偏航数据分类出一个结果,即预测在某时刻某方向下的真实角度数据,以此得到机器人在室内动态环境下的精准方向角度信息。
S30、基于SLAM进行室内定位,通过学习算法预测并制定功耗最优的行驶路径;
经过S20中的偏航预测后,为激光SLAM室内定位的特征点匹配打好了基础,提高SLAM特征点匹配精度,然后通过机器学习算法,预测出不同行驶路径下机器人的功耗,并规划出功耗最小的路径。
S40、在行驶过程中,采集待服务对象的图像,输入至深度学习网络模型中进行识别,得到所述待服务对象的类别,与服务指令中的预设待服务对象的类别进行判定,如相符,继续执行设定任务动作。
为了解决最后一米的精确定位问题,使得机器人在来到待服务对象所在区域后,能更好地控制其与待服务对象的距离和角度,在行驶过程中,当机器人需要面对待服务对象时,先采集一张其的图像,输入到深度学习网络模型中进行识别,深度学习网络模型中预设有多种待服务对象在不同状态下的图像,经过对比识别后,可以得到所采集的这张图像对应的待服务对象的类别,并与服务指令中的预设待服务对象的类别进行判定,如相符,继续执行设定任务动作。如果不相符,可以控制机器人调整角度或者距离后,再次采集图像进行判别,在经过至少两次判别后,仍不相符,则报警,停止作业。
实施例1:
在本实施例1中,在步骤S20中,包括以下步骤:
所述偏航数据包括由IMU传感器采集的第一偏航值和由里程计采集的第二偏航值;优选地,IMU传感器为陀螺仪;陀螺仪和里程计的成本不高,将陀螺仪的输出数据和经过滤波后的里程计数据进行数据清洗、分析和决策树建模,并利用该决策树模型预测移动机器人在某时刻某方向的真实角度数据;
在制定偏航数据的分类预测策略时,利用角度测量工具,可以是圆尺,精准测量机器人在某时刻下的真实朝向角度,将偏航数据分成360种分类,记录与每一种分类下偏航数据相对应的第一偏航值和第二偏航值,生成真实朝向角度与第一偏航值、第二偏航值的映射表;
利用IMU传感器和里程计产生偏航值,偏航值就是用来进行机器学习训练的数据,可以通过python自带的函数将这些大量的数据划分为训练集、验证集和测试集,采用K折交叉验证方法进行训练,得到训练后的决策树模型。
需要说明的是,通常机器人旋转一周的角度是360度,如果将类别划为360种分类,每种类别代表1度,由于决策树模型一般用来分类,在本实施例中,巧妙地将分类的类别划分为360种,当分类到具体某一类别时,也即代表预测得到机器人的旋转角度,这样就可以用决策树模型进行角度预测了,进一步地,由IMU传感器采集的第一偏航值作为一个属性值,由里程计采集的第二偏航值作为另一个属性值,通过圆尺测量出来的角度值为预测值,通过数据预处理后,对以上属性值和预测值加以训练,得到一个决策树模型,这一决策树模型只有两个属性,运算简单,适合移动机器人的边缘计算,每秒进行一次预测,可作为机器人的朝向数据使用。
作为一种实施方式,陀螺仪在校准后,在室内旋转到某个角度突然停下,它输出的方向角度数据还会漂移一段时间停止,而且漂移的幅度较大,时间较长,如图2所示,数据一般在初始点处于高位,在50秒左右进入谷底,在200秒左右进入平稳期,后期有一些波动,在300秒之后数据基本不会出现波动,虽然在时间大于300秒后数据走向趋于平稳,但是最后的稳定值不一定就是真实值,因此采用回归的算法拟合曲线不一定准确,而且因为是不标准的非线性曲线,拟合出来的多项式阶数较高运算量较大,对于算力有限的机器人实时定位不太适合。
作为一种实施方式,IMU传感器采用多IMU传感器融合模块,里面运行有多IMU传感器融合算法,因此该模块输出数据更准确,当移动机器人在室内环境中旋转突然停止时,输出偏转值如图3所示。
从图3中可以看出,输出的偏航值是周期性的,可以在图3底部用圆圈标记出来,波特率为115200,一个周期内有90个数据点,输出格式为Byte,因此周期为10*90/115200=0.0078125秒,在一个周期内,数据仍有剧烈的漂移,需要计算一个周期内的偏航值平均值,在图3中平均值为90度。如果重复测试10次,则每次移动机器人在同一个方向旋转和停止,可以在停止位置处放置一个物体验证其是否同一个方向,进行10次测试,10次测试结果如图4所示。
从图4可以看出,在室内环境中,对于同一个方向,同一个多IMU传感器融合模块的偏航值每次都不相同,10次测试的偏航值范围在87~94之间,因此在室内环境中,IMU传感器的偏航值并不准确。
为了解决该问题,引入了决策树算法,每秒钟有大量的数据来自IMU传感器融合模块,以及里程计,这些数据可以通过机器学习算法进行分析,考虑到移动机器人的CPU和电池功耗有限,复杂的机器学习算法并不适合在移动机器人上运行,比如SVM算法可以将数据从低维转换到高维,并对数据进行分类,但会消耗大量的硬件资源,花费较长的时间,而决策树算法与其他机器学习算法相比,运行速度快,节省CPU计算量,适合运行在移动机器人上,用来每秒预测偏航值。通常决策树算法可以用在分类上,但不能预测,如果将偏航值分为360个分类,每一个分类代表一度,那么分类就可以转化为预测。
作为一种实施方式,在步骤S20中,包括以下步骤:
测量当机器人处于异常状态时的第一偏航值和第二偏航值,定义为异常数据集;所述异常状态包括但不限于所述机器人在空转、磁场环境变弱后IMU传感器的输出出现振动;
在训练决策树模型时,加入所述异常数据集。
需要说明的是,在真实的应用场景中,会出现一些异常状态,例如机器人在移动过程中撞到障碍物,导致轮子打滑,或者当运行在建筑密集或偏远的建筑物内时,地球磁场很弱,IMU传感器的输出角度值会出现大幅振动,种种原因导致所产生的第一偏航值和第二偏航值出现异常,当出现异常值时,不能将其删掉,仍然将这些异常值保存至异常数据集,利用这个异常数据集来训练决策树模型,使得决策树模型在处理这种异常状态时更准确。
在本实施例中,参照图5至7,从图5至图7是依次放大的关系,在步骤S20中,包括以下步骤:
将每种分类分布在决策树模型的端点上,每个端点赋值为一个矩阵,所述矩阵中包括360个整数,其中一个为1,其他为0,整数1在矩阵中的位置表示对应的偏航数据分类。当计算确定了矩阵中1所在的位置后,由于1在矩阵中有360种可能,每一个位置对应一种分类,也对应机器人在这一时刻下的预测偏航值,相当于对机器人的方向角度进行预测。决策树模型的偏航值输出精度可达99%,与圆尺测得的真偏航值非常接近,提高了室内环境下移动机器人的偏航值的测量精度。
实施例2:
在本实施例2中,在步骤S30中,包括以下步骤:
控制机器人按任意方向移动,采集里程计数据和电流值,计算机器人前行、后移、转弯时的电流消耗值;
根据服务指令,制定出若干条到达或相继经过至少一个预设待服务对象的行驶路径,利用线性SVR算法对电流消耗值进行预测,选择电流消耗值最小时对应的最优行驶路径。
需要说明的是,机器人可以理解为电阻是恒定的,所以其电流值也即代表了其功耗,由于机器人可以进行前行、后移、转弯等行驶动作,不同行驶动作所消需要的功耗是不一样的,机器人移动的数据与ROS系统中的里计程数据相关,可以在ROS系统的topic中读取,原始数据中包含很多异常值、缺失值、重复值,需要从原始数据中清除,数据清洗后需要对数据进行标准化和统一,消除数据表中数值的不均匀性。
经过采集及计算后,可以得到当机器人线性移动,例如前行、后移时的电流消耗值,还有当机器人有角速度,如左转或右转时的电流消耗值,经比较得出转弯时的电流消耗值更小。
所以当根据服务指令,制定出不同的行驶路径后,可以根据行驶路径中直线移动路程和曲线移动路程的长度和行驶时间,预测出不同路径的电流消耗值,并选取其中流消耗值最小时对应的最优行驶路径,可以有效降低机器人的能耗,节省电池电量。
其中,在利用线性SVR算法对电流消耗值进行预测时,将功耗作为机器人路径规划的影响因素,利用机器学习算法来预测功耗,使机器人按照最小化耗电量进行路径规划。由于在电流消耗的预测中,当ROS或Ubuntu系统中多线程阻塞时会出现缺失值,或者出现其他无同步状态时会出现缺失值。当机器人处于停止状态或其他原始运动状态时,会出现重复值。当机器人的速度发生剧烈变化时,通常是机器人突然启动或停止,或从直线运动到向左或向右转弯等情况下,都会出现异常值。上述情况在现实世界中机器人的移动过程中都有可能会出现,因此不需要删除缺失值、重复值和异常值,在运行机器学习算法之前不需要做数据清理,使机器人更能适应动态变化的家庭室内环境。
由于预测的电流消耗值一般分布在10000~70000之间,分布范围较大,很难与真实电流值完全相等,因此本实施例中对预测的电流消耗值进行容错率判断,以确定预测的电流消耗值是否在真实电流值的容错比例范围内,当预测的电流消耗值小于等于真实电流值×容错率,且大于等于真实电流值×(2-容错率),保留对应的行驶路径,其中,容错率的取值范围为1.1~1.6,例如当容错率为1.5时,预测的电流消耗值需要小于等于1.5倍的真实电流值、大于等于0.5倍的真实电流值,才证明此预测的电流消耗值有效,并保留对应的行驶路径。
更进一步地,在选择最优行驶路径时,先筛选出曲线移动路程比直线移动路程大的行驶路径,因为机器人走曲线比走直线更省电,为了高效地实现低功耗行驶,先筛选出曲线移动路程更多的行驶路径,再在筛选出的行驶路径中按电流消耗值排序,选取电流消耗值最小对应的最优行驶路径。
实施例3:
在本实施例3中,通过SLAM相关技术,机器人可以导航到待服务对象的边上,但如果需要机器人的机械臂打开电冰箱的门或者洗衣机的上盖,需要机器人能够正对着家用电器的门或者盖的精确位置处停下来,而SLAM技术中因为传感器和里程计的累积误差的存在,加上在动态环境中因为机器人避障而不断改变规划好的路径,导致累积误差不断加大,机器人只能停在家用电器边上大概范围内的位置上,无法在距离家用电器的较为精准的位置上停下来。再退一步,即使机器人在距离家用电器的较为精准的位置上停下来,但家用电器会经常更换,而且有时会移动家用电器的位置,此时机器人也无法导航到家用电器处。
因此为了解决家用电器多样化改变的识别问题,本实施例通过深度学习的方式让机器人能够自动识别家用电器,在步骤S40中,包括以下步骤:
为了获得足够多的待服务对象的图片来训练新设计的深度学习网络,本实施例应用网络爬虫程序在互联网上爬取各种待服务对象的图片,得到对应的URL地址,所述待服务对象包括但不限于冰箱、洗衣机、消毒柜、洗碗机中的一种或多种;
将爬取的图片导入request和re库,request.get()方法通过添加头部信息来请求URL的内容,因为请求的内容是图像格式,调用content.decode()方法来转换格式。re.findall('"objURL":"(.*?)",',html_1)方法是使用正则表达式来搜索匹配条件的图像,"objURL"是具有键值结果的dict格式数据,".*?,可以用更少的字符串遍历整个网页代码,判断当前结果是否已经遍历过,如果为真,则丢弃当前结果,整个过程循环,直到获得所需数量的图片。
编写脚本将抓取的图像重命名为“object.number.jpg”,为接下来的深度学习做准备,把图像分为训练集和测试集,由于所抓取的图像是RGB彩色图,是3通道图像而且是两层,所以在进行深度学习时,先将输入归一化为150*150,输入至LeNet5改进型深度学习网络模型中,第一个Conv2D的大小为3*3,学习步长为1,因此输出为148*148,卷积核的数量为16,由于是valid卷积,输出尺寸为150-2=148,共有16个大小为3*3的卷积核,它们是3个通道图像,如果加上偏置值,参数的数量为(3*3*3+1)*16=448。下一层MaxPooling2D层的内核为2*2,大小为74*74,它提取2*2平方的最大值作为该区域的特征,池化层没有计算参数。
按上述过程循环3次,经卷积学习循环处理,以最大值作为图像中的明显特征,参数可以统计到以上段落,flatten layer是一维向量,可以应用到下一个全连通层,最后输出结果应该是真或假来判断是否是洗衣机,因此dense_1layer的输出为1。总参数为各层参数之和。
对于3个通道的图像,RGB的整数值范围是0-255,这个范围太大了,可能会影响预测结果,imagedatgenerator()方法会在训练过程开始前将该值转换为范围为0-1的浮点数。训练过程会占用较多的GPU资源,“allow_growth”的值应该为“True”,逐步控制GPU资源。
批大小为20,epoch为15,目标大小为150*150,因为应用了二进制交叉熵损失,class_mode='binary',每个epoch有100步,验证生成器的返回次数为50,每个epoch记录一行日志。设置上述参数后,训练过程开始,可以明显得出,在每个epoch中损失越来越小,精度越来越高,说明该模型对训练图像具有完美的区分功能。在epoch 1中,验证精度为0.5070,对于2个分类来说,它接近概率的一半是合理的。在第15个epoch,验证精度为0.8350,这说明本实施例中的深度学习网络模型对新测试图像的分类函数有很好的效果。
经上述处理,输出识别结果,所述识别结果被配置为代表待服务对象是否属于某一类别的结果,可以准确得出待服务对象的类别。
作为一种实施方式,为了使学习网络模型的训练结果更贴近实际应用场景,在爬取到图片后,改变所爬取图片的对比度和亮度,以模拟不同的光照条件,另外的,利用随机生成的色块阻挡图片,以模拟待服务对象被遮挡或光线变暗的情况,或者,在使用者家庭中拍摄有人在待服务对象前面、待服务对象处于打开或关闭门后的照片,将按以上步骤处理后的图片输入至LeNet5改进型深度学习网络模型中进行训练。
参照图8,第二方面,本发明提供一种应用于上述实施例中家庭服务机器人的控制方法的系统,包括:
接收模块,被配置为接收服务指令,所述服务指令被配置为使机器人到达或相继经过至少一个预设待服务对象以执行设定任务动作;
偏航预测模块,被配置为采集检测偏航数据,输入至决策树模型,得到预测偏航值;所述决策树模型被配置为内设有偏航数据的分类预测策略,并利用数据集训练所得;
路径预测模块,被配置为基于SLAM进行室内定位,通过学习算法预测并制定功耗最优的行驶路径;
识别模块,被配置为在行驶过程中,采集待服务对象的图像,输入至深度学习网络模型中进行识别,得到所述待服务对象的类别,与服务指令中的预设待服务对象的类别进行判定,如相符,继续执行设定任务动作。
机器人通过接收模块来接收使用者下发的服务指令,得到任务后,开始利用偏航预测模块进行定位,即确定此时机器人的角度方位,基于此偏航预测结果,进行SLAM室内定位,并规划出多条行驶路径,选取其中功耗最优的那一条,机器人按照选取出来的最优行驶路径进行行驶,在行驶过程中,机器人会到达或经过设定的待服务对象,通过SLAM技术可以将机器人导航到待服务对象附近,然后通过识别模块,进一步采集待服务对象的图像,通过深度学习网络模型识别出其类别,如果相符则继续执行设定任务动作,在执行设定任务动作时,可以再进一步执行角度偏航调整,使机器人以最优的角度面向待服务对象,方便执行设定任务,直至依次完成服务指令中所设定的预设待服务对象和设定任务动作。
相对于现有技术,本发明提供一种家庭服务机器人的控制方法及系统,基于偏航数据,利用决策树模型进行预测,得到的预测偏航值可精确地定位机器人在室内的方向角度,使得在进行基于激光雷达的SLAM室内定位时,能更精准地进行特征点匹配;
将多张待服务对象的图像输入至深度学习网络模型中进行深度学习,很好地识别出不同状态下的家用电器,图像包括家里光线太暗、有人站在冰箱门前等情况,方便机器人识别出各种家用电器;
在规划机器人路径时,通过学习算法对功耗进行预测,以达到功耗最小化的目的。
最后需要强调的是,本发明不限于上述实施方式,以上仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
以上描述为发明的主要流程步骤,其中可穿插其它功能步骤,并可打乱上述逻辑顺序和流程步骤,若数据的处理方式按照此流程步骤形式处理或数据处理的核心思想近似、雷同,均应受到保护。
Claims (10)
1.一种家庭服务机器人的控制方法,其特征在于,包括以下步骤:
S10、接收服务指令,所述服务指令被配置为使机器人到达或相继经过至少一个预设待服务对象以执行设定任务动作;
S20、采集检测偏航数据,输入至决策树模型,得到预测偏航值;所述决策树模型被配置为内设有偏航数据的分类预测策略,并利用数据集训练所得;
S30、基于SLAM进行室内定位,通过学习算法预测并制定功耗最优的行驶路径;
S40、在行驶过程中,采集待服务对象的图像,输入至深度学习网络模型中进行识别,得到所述待服务对象的类别,与服务指令中的预设待服务对象的类别进行判定,如相符,继续执行设定任务动作。
2.如权利要求1所述的一种家庭服务机器人的控制方法,其特征在于,在步骤S20中,包括以下步骤:
所述偏航数据包括由IMU传感器采集的第一偏航值和由里程计采集的第二偏航值;
在制定偏航数据的分类预测策略时,利用角度测量工具,测量机器人的真实朝向角度,将偏航数据分成360种分类,记录与每一种分类下偏航数据相对应的第一偏航值和第二偏航值,生成真实朝向角度与第一偏航值、第二偏航值的映射表;
利用IMU传感器和里程计产生偏航值,分为训练集、验证集和测试集,采用K折交叉验证方法进行训练,得到训练后的决策树模型。
3.如权利要求2所述的一种家庭服务机器人的控制方法,其特征在于,在步骤S20中,包括以下步骤:
测量当机器人处于异常状态时的第一偏航值和第二偏航值,定义为异常数据集;所述异常状态包括但不限于所述机器人在空转、磁场环境变弱后IMU传感器的输出出现振动;
在训练决策树模型时,加入所述异常数据集。
4.如权利要求3所述的一种家庭服务机器人的控制方法,其特征在于,在步骤S20中,包括以下步骤:
将每种分类分布在决策树模型的端点上,每个端点赋值为一个矩阵,所述矩阵中包括360个整数,其中一个为1,其他为0,整数1在矩阵中的位置表示对应的偏航数据分类。
5.如权利要求4所述的一种家庭服务机器人的控制方法,其特征在于,在步骤S30中,包括以下步骤:
控制机器人按任意方向移动,采集里程计数据和电流值,计算机器人前行、后移、转弯时的电流消耗值;
根据服务指令,制定出若干条到达或相继经过至少一个预设待服务对象的行驶路径,利用线性SVR算法对电流消耗值进行预测,选择电流消耗值最小时对应的最优行驶路径。
6.如权利要求5所述的一种家庭服务机器人的控制方法,其特征在于,在步骤S30中,包括以下步骤:
在利用线性SVR算法对电流消耗值进行预测时,对预测的电流消耗值进行容错率判断,当预测的电流消耗值小于等于真实电流值×容错率,且大于等于真实电流值×(2-容错率),保留对应的行驶路径,其中,容错率的取值范围为1.1~1.6。
7.如权利要求6所述的一种家庭服务机器人的控制方法,其特征在于,在步骤S30中,包括以下步骤:
在选择最优行驶路径时,先筛选出曲线移动路程比直线移动路程大的行驶路径,再在筛选出的行驶路径中按电流消耗值排序,选取电流消耗值最小对应的最优行驶路径。
8.如权利要求7所述的一种家庭服务机器人的控制方法,其特征在于,在步骤S40中,包括以下步骤:
应用网络爬虫程序在互联网上爬取各种待服务对象的图片,得到对应的URL地址,所述待服务对象包括但不限于冰箱、洗衣机、消毒柜、洗碗机中的一种或多种;
将爬取的图片分为训练集和测试集,将输入归一化为150*150,输入至LeNet5改进型深度学习网络模型中,经卷积学习循环处理,以最大值作为图像中的明显特征,输出识别结果,所述识别结果被配置为代表待服务对象是否属于某一类别的结果。
9.如权利要求8所述的一种家庭服务机器人的控制方法,其特征在于,在步骤S40中,包括以下步骤:
改变所爬取图片的对比度和亮度,模拟待服务对象被遮挡或光线变暗的情况,将处理后的图片输入至LeNet5改进型深度学习网络模型中进行训练。
10.一种应用于如权利要求1至9任一项所述家庭服务机器人的控制方法的系统,其特征在于,包括:
接收模块,被配置为接收服务指令,所述服务指令被配置为使机器人到达或相继经过至少一个预设待服务对象以执行设定任务动作;
偏航预测模块,被配置为采集检测偏航数据,输入至决策树模型,得到预测偏航值;所述决策树模型被配置为内设有偏航数据的分类预测策略,并利用数据集训练所得;
路径预测模块,被配置为基于SLAM进行室内定位,通过学习算法预测并制定功耗最优的行驶路径;
识别模块,被配置为在行驶过程中,采集待服务对象的图像,输入至深度学习网络模型中进行识别,得到所述待服务对象的类别,与服务指令中的预设待服务对象的类别进行判定,如相符,继续执行设定任务动作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211452185.0A CN115755910B (zh) | 2022-11-17 | 2022-11-17 | 一种家庭服务机器人的控制方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211452185.0A CN115755910B (zh) | 2022-11-17 | 2022-11-17 | 一种家庭服务机器人的控制方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115755910A true CN115755910A (zh) | 2023-03-07 |
CN115755910B CN115755910B (zh) | 2023-07-25 |
Family
ID=85333086
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211452185.0A Active CN115755910B (zh) | 2022-11-17 | 2022-11-17 | 一种家庭服务机器人的控制方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115755910B (zh) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105573329A (zh) * | 2015-12-16 | 2016-05-11 | 上海卫星工程研究所 | 基于决策树的姿轨控数据分析方法 |
CN106767893A (zh) * | 2017-03-02 | 2017-05-31 | 深圳星震宇信息科技有限公司 | 车辆行驶里程计算方法 |
CN107092926A (zh) * | 2017-03-30 | 2017-08-25 | 哈尔滨工程大学 | 基于深度学习的服务机器人物体识别算法 |
CN107816998A (zh) * | 2016-09-13 | 2018-03-20 | 腾讯科技(深圳)有限公司 | 信息处理方法及装置 |
CN108225304A (zh) * | 2018-01-26 | 2018-06-29 | 青岛美吉海洋地理信息技术有限公司 | 基于多源传感器室内快速定位方法与系统 |
CN111852769A (zh) * | 2020-07-22 | 2020-10-30 | 武汉展盛科技有限公司 | 风机scada数据的偏航静态偏差角预测方法及系统 |
CN113411744A (zh) * | 2021-06-21 | 2021-09-17 | 中国矿业大学 | 一种高精度的室内定位追踪方法 |
-
2022
- 2022-11-17 CN CN202211452185.0A patent/CN115755910B/zh active Active
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105573329A (zh) * | 2015-12-16 | 2016-05-11 | 上海卫星工程研究所 | 基于决策树的姿轨控数据分析方法 |
CN107816998A (zh) * | 2016-09-13 | 2018-03-20 | 腾讯科技(深圳)有限公司 | 信息处理方法及装置 |
CN106767893A (zh) * | 2017-03-02 | 2017-05-31 | 深圳星震宇信息科技有限公司 | 车辆行驶里程计算方法 |
CN107092926A (zh) * | 2017-03-30 | 2017-08-25 | 哈尔滨工程大学 | 基于深度学习的服务机器人物体识别算法 |
CN108225304A (zh) * | 2018-01-26 | 2018-06-29 | 青岛美吉海洋地理信息技术有限公司 | 基于多源传感器室内快速定位方法与系统 |
CN111852769A (zh) * | 2020-07-22 | 2020-10-30 | 武汉展盛科技有限公司 | 风机scada数据的偏航静态偏差角预测方法及系统 |
CN113411744A (zh) * | 2021-06-21 | 2021-09-17 | 中国矿业大学 | 一种高精度的室内定位追踪方法 |
Non-Patent Citations (2)
Title |
---|
张健敏等: "一种多运动模式下自适应阈值零速修正算法", 《北京航空航天大学学报》 * |
苏国梁: "考虑风能随机性趋势的风电机组偏航启动优化研究", 《可再生能源》 * |
Also Published As
Publication number | Publication date |
---|---|
CN115755910B (zh) | 2023-07-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107564012B (zh) | 面向未知环境的增强现实方法及装置 | |
US10513037B2 (en) | Control method and system, and mobile robot using the same | |
US9361702B2 (en) | Image detection method and device | |
CN108876822B (zh) | 一种行为危险度评估方法及家庭安防看护系统 | |
CN109344717B (zh) | 一种多阈值动态统计的深海目标在线检测识别方法 | |
CN105700525B (zh) | 基于Kinect传感器深度图机器人工作环境不确定性地图构建法 | |
CN112734699B (zh) | 物品状态告警方法、装置、存储介质及电子装置 | |
Kumar et al. | A unified grid-based wandering pattern detection algorithm | |
CN105122277A (zh) | 智能机器的网络 | |
CN115511255A (zh) | 一种智慧园区的立体智能管理方法及系统 | |
Xia et al. | Vision-based measurement and prediction of object trajectory for robotic manipulation in dynamic and uncertain scenarios | |
Proudman et al. | Online estimation of diameter at breast height (DBH) of forest trees using a handheld LiDAR | |
JP7320756B2 (ja) | 車両シミュレーションシステム、車両シミュレーション方法およびコンピュータプログラム | |
CN109086696A (zh) | 一种异常行为检测方法、装置、电子设备及存储介质 | |
CN105404866A (zh) | 一种多模式自动实施人体状态感知的实现方法 | |
Adam et al. | Computing the sensory uncertainty field of a vision-based localization sensor | |
CN115755910B (zh) | 一种家庭服务机器人的控制方法及系统 | |
Paletta et al. | FACTS-a computer vision system for 3D recovery and semantic mapping of human factors | |
Wang et al. | Robot gaining robust pouring skills through fusing vision and audio | |
CN116872194A (zh) | 一种机器人控制方法、装置、可读存储介质及机器人 | |
WO2023076831A1 (en) | Extrinsic camera calibration using calibration object | |
Saputri et al. | Building Security System Using GP2Y0A21YK0 Infrared Sensor and Arduino Uno | |
Marchenkov et al. | User presence detection based on tracking network activity in smartroom | |
Challa et al. | Optimizing HVAC Efficiency via Deep Neural Networks for Real-Time Classroom Occupancy | |
Xiao | Mapping implementation on Roomba: A focus on LiDAR and VSLAM technologies |
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 |