本发明涉及智能移动设备的控制领域,具体涉及一种智能移动设备的人体检测方法和装置。
背景技术:
现有技术中,智能移动设备如扫地机器人等,一般根据已规划的路径行进,当其与障碍物发生碰撞时,才进行脱困处理,以绕开障碍物。如此,就会存在这样一个问题,人具有自主性,会出现在任何地方进行活动。由于智能移动设备无法识别障碍物或人体,则会发生碰撞,带来隐藏的安全问题。若只碰撞到障碍物,可能只会破坏物体。但若是碰撞到人体,则可能会危害到人身安全,性质恶劣。因此,需要一种相应的解决方法。
技术实现要素:
鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的一种智能移动设备的人体检测方法和装置。
依据本发明的一个方面,提供了一种智能移动设备的人体检测方法,包括:
通过单线激光对智能移动设备的周边环境进行扫描,得到若干个扫描点;
根据所述若干个扫描点的分布情况,识别出一段或多段由扫描点构成的符合圆弧特征的曲线;
判断识别出的各段曲线是否符合人腿特征,是则根据相应曲线确定检测出的人体位置。
可选地,所述根据所述若干个扫描点的分布情况,识别出一段或多段由扫描点构成的符合圆弧特征的曲线包括:
根据所述若干个扫描点的分布情况进行圆拟合,得到一段或多段由扫描点构成的曲线。
可选地,所述根据所述若干个扫描点的分布情况,识别出一段或多段由扫描点构成的符合圆弧特征的曲线包括:
在识别出一段符合圆弧特征的曲线时,判定该圆弧两个端点对应的直线上是否存在连续的扫描点;
若是,则根据连续的扫描点估计圆弧对应的探测物体的宽度;
若所述宽度大于预设值,则舍弃掉识别出的符合圆弧特征的曲线,以及不对所述连续的扫描点进行是否符合圆弧特征的识别。
可选地,所述判断识别出的各段曲线是否符合人腿特征包括:
判断各段曲线对应的圆心角是否在第一预设角度范围内,是则判定相应曲线符合人腿特征。
可选地,所述预设范围为60°至120°。
可选地,所述判断识别出的各段曲线是否符合人腿特征包括:
判断各段曲线是否符合圆周角定理,是则判定相应曲线符合人腿特征。
可选地,所述判断各段曲线是否符合圆周角定理包括:
对一段曲线,沿该段曲线的第一端点至第二端点,依次计算曲线上各点与所述第一端点、所述第二端点形成的圆周角角度;
若各点对应的圆周角角度变化趋势为先变小再变大,则判定该段曲线不符合圆周角定理。
可选地,所述判断各段曲线是否符合圆周角定理包括:
对一段曲线,沿该段曲线的第一端点至第二端点,依次计算曲线上各点与所述第一端点、所述第二端点形成的圆周角角度;
计算各圆周角角度的均方差,若所述均方差大于预设值,则判定该段曲线不符合圆周角定理。
可选地,所述根据相应曲线确定检测出的人体位置包括:
若两段曲线的距离小于预设值,则根据该两段曲线确定同一个人体。
可选地,所述智能移动设备为扫地机器人,所述通过单线激光对智能移动设备的周边环境进行扫描包括:
通过所述扫地机器人上的激光雷达以预设频率进行360°环绕扫描。
依据本发明的另一个方面,提供了一种智能移动设备的人体检测装置,包括:
扫描单元,适于通过单线激光对智能移动设备的周边环境进行扫描,得到若干个扫描点;
识别单元,适于根据所述若干个扫描点的分布情况,识别出一段或多段由扫描点构成的符合圆弧特征的曲线;
确定单元,适于判断识别出的各段曲线是否符合人腿特征,是则根据相应曲线确定检测出的人体位置。
可选地,所述识别单元,适于根据所述若干个扫描点的分布情况进行圆拟合,得到一段或多段由扫描点构成的曲线。
可选地,所述识别单元,适于在识别出一段符合圆弧特征的曲线时,判定该圆弧两个端点对应的直线上是否存在连续的扫描点;
若是,则根据连续的扫描点估计圆弧对应的探测物体的宽度;
若所述宽度大于预设值,则舍弃掉识别出的符合圆弧特征的曲线,以及不对所述连续的扫描点进行是否符合圆弧特征的识别。
可选地,所述确定单元,适于判断各段曲线对应的圆心角是否在第一预设角度范围内,是则判定相应曲线符合人腿特征。
可选地,所述预设范围为60°至120°。
可选地,所述确定单元,适于判断各段曲线是否符合圆周角定理,是则判定相应曲线符合人腿特征。
可选地,所述确定单元,进一步适于对一段曲线,沿该段曲线的第一端点至第二端点,依次计算曲线上各点与所述第一端点、所述第二端点形成的圆周角角度;
若各点对应的圆周角角度变化趋势为先变小再变大,则判定该段曲线不符合圆周角定理。
可选地,所述确定单元,进一步适于对一段曲线,沿该段曲线的第一端点至第二端点,依次计算曲线上各点与所述第一端点、所述第二端点形成的圆周角角度;
计算各圆周角角度的均方差,若所述均方差大于预设值,则判定该段曲线不符合圆周角定理。
可选地,所述确定单元,适于若两段曲线的距离小于预设值,则根据该两段曲线确定同一个人体。
可选地,所述智能移动设备为扫地机器人,所述扫描单元,适于通过所述扫地机器人上的激光雷达以预设频率进行360°环绕扫描。
依据本发明的又一方面,提供了一种电子设备,包括:处理器;以及被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行如上述任一所述的方法。
依据本发明的再一方面,提供了一种计算机可读存储介质,其中,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被处理器执行时,实现如上述任一所述的方法。
由上述可知,本发明的技术方案,通过单线激光对智能移动设备的周边环境进行扫描,得到若干个扫描点。根据若干个扫描点的分布情况,识别出一段或多段由扫描点构成的符合圆弧特征的曲线。判断识别出的各段曲线是否符合人腿特征,是则根据相应曲线确定检测出的人体位置。结合人体轮廓的曲线特征进行识别判断,可以准确地识别出周边环境中的人体,获得人体所在的位置。同时,只对扫描获得的曲线进行符合人腿特征的判断,减少了一定的数据处理工作,可以有效地提高识别效率和工作效率。而且,采用单线激光进行扫描,可以确保扫描效率和准确率,同时扩大扫描范围。
上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了根据本发明一个实施例的一种智能移动设备的人体检测方法的流程示意图;
图2示出了根据本发明一个实施例的一种智能移动设备的人体检测装置的结构示意图;
图3示出了根据本发明一个实施例的电子设备的结构示意图;
图4示出了根据本发明一个实施例的计算机可读存储介质的结构示意图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了根据本发明一个实施例的一种智能移动设备的人体检测方法的流程示意图。如图1所示,该方法包括:
步骤s110,通过单线激光对智能移动设备的周边环境进行扫描,得到若干个扫描点。
智能移动设备可以是任意可以移动的智能设备,如扫地机器人、无人移动平台等。单线激光设置在智能移动设备上,可通过发出激光进行扫描,获得扫描点。获得扫描点可以反应出物体的轮廓信息,以及物体所在的位置信息。单线激光工作效率高,若对单线激光进行旋转操作,可以获得智能移动设备360°范围内的物体轮廓的扫描点,扩大扫描范围。本实施例的智能移动设备需要对周边环境中的人进行检测,因此通过单线激光扫描,获取周边环境中存在的人体信息。
步骤s120,根据若干个扫描点的分布情况,识别出一段或多段由扫描点构成的符合圆弧特征的曲线。
对扫描点进行处理,分析获得周围环境的具体信息,例如将扫描点依次连接,获得物体的轮廓,通过轮廓判断物体属性,以判断周边环境是否存在人。人体轮廓多为曲线,缺少尖锐的棱角,通过识别是否存在一段或多段扫描点构成的符合圆环特征的曲线,就可以有效的识别出周围环境中是否人体。识别曲线是否符合圆弧特征,可以通过曲线的曲率变化,若曲率存在变化且变化较大,则说明该段曲线符合圆弧特征。
在一个具体的例子中,智能移动设备为扫地机器人,其通过单线激光可以扫描到人体特征中的人腿。人腿相当于一个圆柱,单线激光扫描到人腿,可以获得圆弧曲线。因此,若扫描点中存在一段或多段符合圆弧特征的曲线,则说明周边环境中可能存在人。
步骤s130,判断识别出的各段曲线是否符合人腿特征,是则根据相应曲线确定检测出的人体位置。
周边环境中可能还存在有其他物体的轮廓符合圆弧特征的曲线,例如圆柱形桌子或椅子。因此,需要进一步判断符合圆弧特征的曲线是否符合人腿特征,例如曲线的宽度、曲率等是否符合人腿轮廓。只有当曲线符合人腿特征,才判断该曲线属于人腿轮廓的曲线,曲线所在的位置就是人体位置。在识别出人体位置后,智能移动设备可以进行相应的处理,例如避让人体或对人体进行跟踪等。另一方面,只对曲线进行符合人腿特征的判断,减少了一定的数据处理工作,可以有效地提高识别效率和工作效率。
本发明的技术方案,通过单线激光对智能移动设备的周边环境进行扫描,得到若干个扫描点。根据若干个扫描点的分布情况,识别出一段或多段由扫描点构成的符合圆弧特征的曲线。判断识别出的各段曲线是否符合人腿特征,是则根据相应曲线确定检测出的人体位置。结合人体轮廓的曲线特征进行识别判断,可以准确地识别出周边环境中的人体,获得人体所在的位置。同时,只对扫描获得的曲线进行符合人腿特征的判断,减少了一定的数据处理工作,可以有效地提高识别效率和工作效率。而且,采用单线激光进行扫描,可以确保扫描效率和准确率,同时扩大扫描范围。
在本发明的一个实施例中,如图1所示的方法中,步骤s120中的根据若干个扫描点的分布情况,识别出一段或多段由扫描点构成的符合圆弧特征的曲线包括:根据若干个扫描点的分布情况进行圆拟合,得到一段或多段由扫描点构成的曲线。
在上述实施例中,依次连接扫描点获得物体的轮廓。但是采用该方法获得的轮廓曲线,是由多段线段组成的曲率不连续的折线,这样并不符合通常物体的轮廓是连续的客观规律。因此,需要对对折线进行圆滑处理,使其更加符合轮廓线的客观规律。对于符合圆弧特征的曲线,如连续的几个扫描点之间曲率变化较大,对其进行圆拟合,也就是将其处理为一段理论上的圆弧。
在本发明的一个实施例中,如图1所示的方法中,步骤s120中的根据若干个扫描点的分布情况,识别出一段或多段由扫描点构成的符合圆弧特征的曲线包括:在识别出一段符合圆弧特征的曲线时,判定该圆弧两个端点对应的直线上是否存在连续的扫描点;若是,则根据连续的扫描点估计圆弧对应的探测物体的宽度;若宽度大于预设值,则舍弃掉识别出的符合圆弧特征的曲线,以及不对连续的扫描点进行是否符合圆弧特征的识别。
由上述实施例可知,对符合圆弧特征的曲线进行识别,是为了判断该曲线是否符合人腿特征。考虑到在实际中,正常体型的人腿,其宽度一般在10cm-20cm之间。若曲线的两个端点之间的距离超过20cm或不足10cm,则该段曲线的宽度明显不符合人腿的宽度,因此将其过滤,减小需要判定的数据量,为下一步判定提高效率。
另一方面,激光在扫描过程中存在测量误差,例如在扫描到一面墙时,由于测量误差,可能会得到波浪形的扫描点。这样就会获得多段连续的符合圆弧特征的曲线。为了避免将这种符合圆弧特征曲线误判为符合人腿特征的曲线,需要对多段连续的符合圆弧特征的曲线进行特殊处理。具体地,连接该多段圆弧的两个端点,获得对应的直线。这样,该段直线的中间必然存在连续的扫描点。判断多段圆弧中的第一段圆弧的宽度是否符合人腿的宽度,若不符合,则说明对应的圆弧并非是扫描到人腿获得的曲线。同理可以得知,该段直线中间的所有圆弧曲线也并非是扫描到人腿获得的曲线,因此弃掉识别出的符合圆弧特征的曲线,以及不对连续的扫描点进行是否符合圆弧特征的识别,减少数据处理量,提高识别速率。
在本发明的一个实施例中,如图1所示的方法中,步骤s130中的判断识别出的各段曲线是否符合人腿特征包括:判断各段曲线对应的圆心角是否在第一预设角度范围内,是则判定相应曲线符合人腿特征。
智能移动设备在激光扫描时,相当于在一个固定的位置进行扫描。若扫描到人腿,只能获得人腿的部分轮廓,而并不能获得整个闭合的圆形轮廓。因此,符合人腿特征的曲线应该具有一定扇形角度。由于该曲线可以认为是圆弧,也就是说,通过判断曲线对应的圆心角角度是否在第一预设角度范围内,可以有效地识别相应的曲线是否符合人腿特征。第一预设角度范围结合人腿的轮廓曲线进行设定。
考虑到人腿轮廓曲线的并非是理论上的圆形,为了提高判定准确率,设定第一预设角度范围为60°至120°。当曲线对应的圆心角角度为60°-120°之间,认为该曲线是符合人腿特征的曲线,将该曲线对应的物体认定为是人体。若曲线对应的圆心角角度过大或过小,难以与实际的人腿轮廓曲线匹配,也就判定该曲线不符合人腿特征。
在本发明的一个实施例中,如图1所示的方法中,步骤s130中的判断识别出的各段曲线是否符合人腿特征包括:判断各段曲线是否符合圆周角定理,是则判定相应曲线符合人腿特征。
除了根据曲线的圆心角进行判断,还可以对曲线的圆周角进行判断。在实际操作过程中,将人腿的轮廓曲线认为是一个完整的圆,那么从轮廓曲线上得到的任意一段圆弧都应该符合圆周角定理,也就是该段圆弧对应圆弧上的任意一点的圆周角均相等。因此,以曲线上除了曲线的两个端点外任意一点为顶点,该顶点与两个端点组成的角认为是曲线的圆周角,若多个圆周角的角度相等,说明该曲线符合圆周角定理,因此判定该曲线符合人腿特征。
在一个具体的例子中,曲线的两个端点为m、n,在该曲线上取任意三个不重合点a、b、c,且a、b、c与m、n不重合,分别与两个端点m、n组成三个曲线的圆周角∠man、∠mbn、∠mcn,若该三个圆周角的角度相等,则该段曲线符合圆周角定理。
在本发明的一个实施例中,上述方法中,判断各段曲线是否符合圆周角定理包括:对一段曲线,沿该段曲线的第一端点至第二端点,依次计算曲线上各点与第一端点、第二端点形成的圆周角角度;若各点对应的圆周角角度变化趋势为先变小再变大,则判定该段曲线不符合圆周角定理。
考虑到人腿的轮廓曲线实际上并不是理论上的圆,因此扫描人腿获得的的曲线并非完全符合圆周角定理。也就是说,可能各个圆周角并不相等。另外,在激光扫描的过程中,若扫描到存在直角的墙体或其他物体,也会获得曲线。为了避免发生误判,提高判定的准确率,进一步优化上述圆周角定理的判定。
扫描直角的墙体或物体获得的曲线,其圆周角的变换具有一定的规律。例如,若沿该段曲线的第一端点至第二端点,依次取曲线上的一点为顶点,与两个端点组成圆周角。越靠近端点的顶点,其圆周角角度越大。因此,在依次取点为顶点组成的圆周角,圆周角的变化规律为逐渐减小,再逐渐增大。
以上述实施例为例,曲线的两个端点为m、n,从m点处开始,每隔一定距离依次在该曲线上取一个点,与两个端点组成圆周角。例如取a、b、c、d,且a、b、c、d与m、n不重合,分别与两个端点m、n组成四个曲线的圆周角∠man、∠mbn、∠mcn、∠mdn。该四个圆周角的变换规律为先减小在增大,也就是∠man>∠mbn,∠mcn<∠mdn。当判断各个圆周角之间符合先变小再变大的变化规律,则认为该曲线是扫描到直角部位获得的曲线。而人腿的轮廓曲线不存在直角特征,因此判定该曲线不符合圆周角定理,也就是不符合人腿特征。
在本发明的一个实施例中,上述方法中,判断各段曲线是否符合圆周角定理包括:对一段曲线,沿该段曲线的第一端点至第二端点,依次计算曲线上各点与第一端点、第二端点形成的圆周角角度;计算各圆周角角度的均方差,若均方差大于预设值,则判定该段曲线不符合圆周角定理。
考虑到人腿的轮廓曲线实际上并不是理论上的圆,因此扫描人腿获得的的曲线并非完全符合圆周角定理,而是各个圆周角在一定的角度范围内波动。通过判断各个圆周角角度的均方差,获得圆周角的离散程度。若离散程度在预设范围内,则认为该曲线符合圆周角定理。
以上述实施例为例,曲线的两个端点为m、n,从m点处开始,每隔一定距离依次在该曲线上取一个点,与两个端点组成圆周角。例如取a、b、c、d,且a、b、c、d与m、n不重合,分别与两个端点m、n组成四个曲线的圆周角∠man、∠mbn、∠mcn、∠mdn。计算四个圆周角的均方差,若均方差小于预设值,说明四个圆周角的离散程度较小,则判定该曲线符合圆周角定理。若均方差大于预设值,说明四个圆周角的离散程度较大,则判定该曲线不符合圆周角定理。例如预设值为0.5,若均方差为0,说明四个圆周角的角度相等。若均方差为2,大于0.5,四个圆周角的离散程度较大,曲线的曲率变化较大,不符合人腿的轮廓曲线特征。
在本发明的一个实施例中,如图1所示的方法中,步骤s120中的根据相应曲线确定检测出的人体位置包括:若两段曲线的距离小于预设值,则根据该两段曲线确定同一个人体。
一个人对应有两条腿,在激光扫描过程中,大概率会获得符合人腿特征的两段曲线。考虑到现实中,两条腿之间的距离一般不会超过一定值,因此通过对两段曲线之间的距离进行判断,确认这两段曲线是否属于同一个人。例如一般正常行走的成人,两腿之间的距离为60cm。设定曲线的距离预设值为75cm,当两段曲线之间的距离小于75cm,判断该两段曲线属于同一个人的两条腿,根据两段曲线的位置确定人体的位置。例如其中一段曲线距离智能移动设备100cm,另一段曲线距离智能移动设备80cm,取两者的中间值,确定人体位置在距离智能移动设备90cm处。
当然还存在一种情况,在扫描过程中可能只能获得一段符合人腿特征的曲线。在该情况下,也将该段曲线认为是人腿轮廓曲线,根据该曲线的位置确定人腿位置。在实际扫描过程中,可能存在两条人腿重合,无法获得两段符合人腿特征曲线的情况,例如智能移动设备位于人体侧面,从侧面进行扫描时,人体的两条腿重合,无法获得两段曲线。
在本发明的一个实施例中,如图1所示的方法中,智能移动设备为扫地机器人。步骤s110中的通过单线激光对智能移动设备的周边环境进行扫描包括:通过扫地机器人上的激光雷达以预设频率进行360°环绕扫描。
扫地机器人在清扫过程中进行扫描,确定周边环境中的人体位置,从而可以实现对人体进行跟踪提高清扫效率;或者对人体进行避让,避免发生碰撞,提高工作准确率。单线激光为激光雷达,为了减少一定的数据处理量,在实际扫描过程中,激光雷达并非实时不停扫描,而是以预设频率进行扫描。例如以1s、5s、8s的间隔时间进行一次扫描,确保在每一次扫描完成后,留有一定时间处理扫描结果,以确保结果准确性。将激光雷达设置在扫地机器人的旋转平台上,当扫地机器人进行旋转或单独对激光雷达进行旋转,激光雷达即可实现360°的环绕扫描,获得周边环境的全部物体的轮廓信息。
图2示出了本发明一个实施例提供的一种智能移动设备的人体检测装置。如图2所示,该装置200包括:
扫描单元210,适于通过单线激光对智能移动设备的周边环境进行扫描,得到若干个扫描点。
智能移动设备可以是任意可以移动的智能设备,如扫地机器人、无人移动平台等。单线激光设置在智能移动设备上,可通过发出激光进行扫描,获得扫描点。获得扫描点可以反应出物体的轮廓信息,以及物体所在的位置信息。单线激光工作效率高,若对单线激光进行旋转操作,可以获得智能移动设备360°范围内的物体轮廓的扫描点,扩大扫描范围。本实施例的智能移动设备需要对周边环境中的人进行检测,因此通过单线激光扫描,获取周边环境中存在的人体信息。
识别单元220,适于根据若干个扫描点的分布情况,识别出一段或多段由扫描点构成的符合圆弧特征的曲线。
对扫描点进行处理,分析获得周围环境的具体信息,例如将扫描点依次连接,获得物体的轮廓,通过轮廓判断物体属性,以判断周边环境是否存在人。人体轮廓多为曲线,缺少尖锐的棱角,通过识别是否存在一段或多段扫描点构成的符合圆环特征的曲线,就可以有效的识别出周围环境中是否人体。识别曲线是否符合圆弧特征,可以通过曲线的曲率变化,若曲率存在变化且变化较大,则说明该段曲线符合圆弧特征。
在一个具体的例子中,智能移动设备为扫地机器人,其通过单线激光可以扫描到人体特征中的人腿。人腿相当于一个圆柱,单线激光扫描到人腿,可以获得圆弧曲线。因此,若扫描点中存在一段或多段符合圆弧特征的曲线,则说明周边环境中可能存在人。
确定单元230,适于判断识别出的各段曲线是否符合人腿特征,是则根据相应曲线确定检测出的人体位置。
周边环境中可能还存在有其他物体的轮廓符合圆弧特征的曲线,例如圆柱形桌子或椅子。因此,需要进一步判断符合圆弧特征的曲线是否符合人腿特征,例如曲线的宽度、曲率等是否符合人腿轮廓。只有当曲线符合人腿特征,才判断该曲线属于人腿轮廓的曲线,曲线所在的位置就是人体位置。在识别出人体位置后,智能移动设备可以进行相应的处理,例如避让人体或对人体进行跟踪等。另一方面,只对曲线进行符合人腿特征的判断,减少了一定的数据处理工作,可以有效地提高识别效率和工作效率。
本发明的技术方案,通过单线激光对智能移动设备的周边环境进行扫描,得到若干个扫描点。根据若干个扫描点的分布情况,识别出一段或多段由扫描点构成的符合圆弧特征的曲线。判断识别出的各段曲线是否符合人腿特征,是则根据相应曲线确定检测出的人体位置。结合人体轮廓的曲线特征进行识别判断,可以准确地识别出周边环境中的人体,获得人体所在的位置。同时,只对扫描获得的曲线进行符合人腿特征的判断,减少了一定的数据处理工作,可以有效地提高识别效率和工作效率。而且,采用单线激光进行扫描,可以确保扫描效率和准确率,同时扩大扫描范围。
在本发明的一个实施例中,如图2所示的装置200中,识别单元220,适于根据若干个扫描点的分布情况进行圆拟合,得到一段或多段由扫描点构成的曲线。
在上述实施例中,依次连接扫描点获得物体的轮廓。但是采用该方法获得的轮廓曲线,是由多段线段组成的曲率不连续的折线,这样并不符合通常物体的轮廓是连续的客观规律。因此,需要对对折线进行圆滑处理,使其更加符合轮廓线的客观规律。对于符合圆弧特征的曲线,如连续的几个扫描点之间曲率变化较大,对其进行圆拟合,也就是将其处理为一段理论上的圆弧。
在本发明的一个实施例中,如图2所示的装置200中,识别单元220,适于在识别出一段符合圆弧特征的曲线时,判定该圆弧两个端点对应的直线上是否存在连续的扫描点;若是,则根据连续的扫描点估计圆弧对应的探测物体的宽度;若宽度大于预设值,则舍弃掉识别出的符合圆弧特征的曲线,以及不对连续的扫描点进行是否符合圆弧特征的识别。
由上述实施例可知,对符合圆弧特征的曲线进行识别,是为了判断该曲线是否符合人腿特征。考虑到在实际中,正常体型的人腿,其宽度一般在10cm-20cm之间。若曲线的两个端点之间的距离超过20cm或不足10cm,则该段曲线的宽度明显不符合人腿的宽度,因此将其过滤,减小需要判定的数据量,为下一步判定提高效率。
另一方面,激光在扫描过程中存在测量误差,例如在扫描到一面墙时,由于测量误差,可能会得到波浪形的扫描点。这样就会获得多段连续的符合圆弧特征的曲线。为了避免将这种符合圆弧特征曲线误判为符合人腿特征的曲线,需要对多段连续的符合圆弧特征的曲线进行特殊处理。具体地,连接该多段圆弧的两个端点,获得对应的直线。这样,该段直线的中间必然存在连续的扫描点。判断多段圆弧中的第一段圆弧的宽度是否符合人腿的宽度,若不符合,则说明对应的圆弧并非是扫描到人腿获得的曲线。同理可以得知,该段直线中间的所有圆弧曲线也并非是扫描到人腿获得的曲线,因此弃掉识别出的符合圆弧特征的曲线,以及不对连续的扫描点进行是否符合圆弧特征的识别,减少数据处理量,提高识别速率。
在本发明的一个实施例中,如图2所示的装置200中,确定单元230,适于判断各段曲线对应的圆心角是否在第一预设角度范围内,是则判定相应曲线符合人腿特征。
智能移动设备在激光扫描时,相当于在一个固定的位置进行扫描。若扫描到人腿,只能获得人腿的部分轮廓,而并不能获得整个闭合的圆形轮廓。因此,符合人腿特征的曲线应该具有一定扇形角度。由于该曲线可以认为是圆弧,也就是说,通过判断曲线对应的圆心角角度是否在第一预设角度范围内,可以有效地识别相应的曲线是否符合人腿特征。第一预设角度范围结合人腿的轮廓曲线进行设定。
考虑到人腿轮廓曲线的并非是理论上的圆形,为了提高判定准确率,设定第一预设角度范围为60°至120°。当曲线对应的圆心角角度为60°-120°之间,认为该曲线是符合人腿特征的曲线,将该曲线对应的物体认定为是人体。若曲线对应的圆心角角度过大或过小,难以与实际的人腿轮廓曲线匹配,也就判定该曲线不符合人腿特征。
在本发明的一个实施例中,如图2所示的装置200中,确定单元230,适于判断各段曲线是否符合圆周角定理,是则判定相应曲线符合人腿特征。
除了根据曲线的圆心角进行判断,还可以对曲线的圆周角进行判断。在实际操作过程中,将人腿的轮廓曲线认为是一个完整的圆,那么从轮廓曲线上得到的任意一段圆弧都应该符合圆周角定理,也就是该段圆弧对应圆弧上的任意一点的圆周角均相等。因此,以曲线上除了曲线的两个端点外任意一点为顶点,该顶点与两个端点组成的角认为是曲线的圆周角,若多个圆周角的角度相等,说明该曲线符合圆周角定理,因此判定该曲线符合人腿特征。
在一个具体的例子中,曲线的两个端点为m、n,在该曲线上取任意三个不重合点a、b、c,且a、b、c与m、n不重合,分别与两个端点m、n组成三个曲线的圆周角∠man、∠mbn、∠mcn,若该三个圆周角的角度相等,则该段曲线符合圆周角定理。
在本发明的一个实施例中,上述装置200中,确定单元230,进一步适于对一段曲线,沿该段曲线的第一端点至第二端点,依次计算曲线上各点与第一端点、第二端点形成的圆周角角度;若各点对应的圆周角角度变化趋势为先变小再变大,则判定该段曲线不符合圆周角定理。
考虑到人腿的轮廓曲线实际上并不是理论上的圆,因此扫描人腿获得的的曲线并非完全符合圆周角定理。也就是说,可能各个圆周角并不相等。另外,在激光扫描的过程中,若扫描到存在直角的墙体或其他物体,也会获得曲线。为了避免发生误判,提高判定的准确率,进一步优化上述圆周角定理的判定。
扫描直角的墙体或物体获得的曲线,其圆周角的变换具有一定的规律。例如,若沿该段曲线的第一端点至第二端点,依次取曲线上的一点为顶点,与两个端点组成圆周角。越靠近端点的顶点,其圆周角角度越大。因此,在依次取点为顶点组成的圆周角,圆周角的变化规律为逐渐减小,再逐渐增大。
以上述实施例为例,曲线的两个端点为m、n,从m点处开始,每隔一定距离依次在该曲线上取一个点,与两个端点组成圆周角。例如取a、b、c、d,且a、b、c、d与m、n不重合,分别与两个端点m、n组成四个曲线的圆周角∠man、∠mbn、∠mcn、∠mdn。该四个圆周角的变换规律为先减小在增大,也就是∠man>∠mbn,∠mcn<∠mdn。当判断各个圆周角之间符合先变小再变大的变化规律,则认为该曲线是扫描到直角部位获得的曲线。而人腿的轮廓曲线不存在直角特征,因此判定该曲线不符合圆周角定理,也就是不符合人腿特征。
在本发明的一个实施例中,上述装置200中,确定单元230,进一步适于对一段曲线,沿该段曲线的第一端点至第二端点,依次计算曲线上各点与第一端点、第二端点形成的圆周角角度;计算各圆周角角度的均方差,若均方差大于预设值,则判定该段曲线不符合圆周角定理。
考虑到人腿的轮廓曲线实际上并不是理论上的圆,因此扫描人腿获得的的曲线并非完全符合圆周角定理,而是各个圆周角在一定的角度范围内波动。通过判断各个圆周角角度的均方差,获得圆周角的离散程度。若离散程度在预设范围内,则认为该曲线符合圆周角定理。
以上述实施例为例,曲线的两个端点为m、n,从m点处开始,每隔一定距离依次在该曲线上取一个点,与两个端点组成圆周角。例如取a、b、c、d,且a、b、c、d与m、n不重合,分别与两个端点m、n组成四个曲线的圆周角∠man、∠mbn、∠mcn、∠mdn。计算四个圆周角的均方差,若均方差小于预设值,说明四个圆周角的离散程度较小,则判定该曲线符合圆周角定理。若均方差大于预设值,说明四个圆周角的离散程度较大,则判定该曲线不符合圆周角定理。例如预设值为0.5,若均方差为0,说明四个圆周角的角度相等。若均方差为2,大于0.5,四个圆周角的离散程度较大,曲线的曲率变化较大,不符合人腿的轮廓曲线特征。
在本发明的一个实施例中,如图2所示的装置200中,确定单元230,适于若两段曲线的距离小于预设值,则根据该两段曲线确定同一个人体。
一个人对应有两条腿,在激光扫描过程中,大概率会获得符合人腿特征的两段曲线。考虑到现实中,两条腿之间的距离一般不会超过一定值,因此通过对两段曲线之间的距离进行判断,确认这两段曲线是否属于同一个人。例如一般正常行走的成人,两腿之间的距离为60cm。设定曲线的距离预设值为75cm,当两段曲线之间的距离小于75cm,判断该两段曲线属于同一个人的两条腿,根据两段曲线的位置确定人体的位置。例如其中一段曲线距离智能移动设备100cm,另一段曲线距离智能移动设备80cm,取两者的中间值,确定人体位置在距离智能移动设备90cm处。
当然还存在一种情况,在扫描过程中可能只能获得一段符合人腿特征的曲线。在该情况下,也将该段曲线认为是人腿轮廓曲线,根据该曲线的位置确定人腿位置。在实际扫描过程中,可能存在两条人腿重合,无法获得两段符合人腿特征曲线的情况,例如智能移动设备位于人体侧面,从侧面进行扫描时,人体的两条腿重合,无法获得两段曲线。
在本发明的一个实施例中,如图2所示的装置200中,智能移动设备为扫地机器人,扫描单元210,适于通过扫地机器人上的激光雷达以预设频率进行360°环绕扫描。
扫地机器人在清扫过程中进行扫描,确定周边环境中的人体位置,从而可以实现对人体进行跟踪提高清扫效率;或者对人体进行避让,避免发生碰撞,提高工作准确率。单线激光为激光雷达,为了减少一定的数据处理量,在实际扫描过程中,激光雷达并非实时不停扫描,而是以预设频率进行扫描。例如以1s、5s、8s的间隔时间进行一次扫描,确保在每一次扫描完成后,留有一定时间处理扫描结果,以确保结果准确性。将激光雷达设置在扫地机器人的旋转平台上,当扫地机器人进行旋转或单独对激光雷达进行旋转,激光雷达即可实现360°的环绕扫描,获得周边环境的全部物体的轮廓信息。
综上所述,本发明的技术方案,通过单线激光对智能移动设备的周边环境进行扫描,得到若干个扫描点。根据若干个扫描点的分布情况,识别出一段或多段由扫描点构成的符合圆弧特征的曲线。判断识别出的各段曲线是否符合人腿特征,是则根据相应曲线确定检测出的人体位置。结合人体轮廓的曲线特征进行识别判断,可以准确地识别出周边环境中的人体,获得人体所在的位置。同时,只对扫描获得的曲线进行符合人腿特征的判断,减少了一定的数据处理工作,可以有效地提高识别效率和工作效率。而且,采用单线激光进行扫描,可以确保扫描效率和准确率,同时扩大扫描范围。
需要说明的是:
在此提供的算法和显示不与任何特定计算机、虚拟装置或者其它设备固有相关。各种通用装置也可以与基于在此的示教一起使用。根据上面的描述,构造这类装置所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(dsp)来实现根据本发明实施例的一种智能移动设备的人体检测装置、电子设备、计算机可读存储介质中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
例如,图3示出了根据本发明一个实施例的电子设备的结构示意图。该电子设备包括处理器310和被安排成存储计算机可执行指令(计算机可读程序代码)的存储器320。存储器320可以是诸如闪存、eeprom(电可擦除可编程只读存储器)、eprom、硬盘或者rom之类的电子存储器。存储器320具有存储用于执行上述方法中的任何方法步骤的计算机可读程序代码331的存储空间330。例如,用于存储计算机可读程序代码的存储空间330可以包括分别用于实现上面的方法中的各种步骤的各个计算机可读程序代码331。计算机可读程序代码331可以从一个或者多个计算机程序产品中读出或者写入到这一个或者多个计算机程序产品中。这些计算机程序产品包括诸如硬盘,紧致盘(cd)、存储卡或者软盘之类的程序代码载体。这样的计算机程序产品通常为例如图4所述的计算机可读存储介质。图4示出了根据本发明一个实施例的一种计算机可读存储介质的结构示意图。该计算机可读存储介质400存储有用于执行根据本发明的方法步骤的计算机可读程序代码331,可以被电子设备300的处理器310读取,当计算机可读程序代码331由电子设备300运行时,导致该电子设备300执行上面所描述的方法中的各个步骤,具体来说,该计算机可读存储介质存储的计算机可读程序代码331可以执行上述任一实施例中示出的方法。计算机可读程序代码331可以以适当形式进行压缩。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本发明提供了a1、一种智能移动设备的人体检测方法,包括:
通过单线激光对智能移动设备的周边环境进行扫描,得到若干个扫描点;
根据所述若干个扫描点的分布情况,识别出一段或多段由扫描点构成的符合圆弧特征的曲线;
判断识别出的各段曲线是否符合人腿特征,是则根据相应曲线确定检测出的人体位置。
a2、如a1所述的方法,其中,所述根据所述若干个扫描点的分布情况,识别出一段或多段由扫描点构成的符合圆弧特征的曲线包括:
根据所述若干个扫描点的分布情况进行圆拟合,得到一段或多段由扫描点构成的曲线。
a3、如a1所述的方法,其中,所述根据所述若干个扫描点的分布情况,识别出一段或多段由扫描点构成的符合圆弧特征的曲线包括:
在识别出一段符合圆弧特征的曲线时,判定该圆弧两个端点对应的直线上是否存在连续的扫描点;
若是,则根据连续的扫描点估计圆弧对应的探测物体的宽度;
若所述宽度大于预设值,则舍弃掉识别出的符合圆弧特征的曲线,以及不对所述连续的扫描点进行是否符合圆弧特征的识别。
a4、如a1所述的方法,其中,所述判断识别出的各段曲线是否符合人腿特征包括:
判断各段曲线对应的圆心角是否在第一预设角度范围内,是则判定相应曲线符合人腿特征。
a5、如a4所述的方法,其中,所述预设范围为60°至120°。
a6、如a1所述的方法,其中,所述判断识别出的各段曲线是否符合人腿特征包括:
判断各段曲线是否符合圆周角定理,是则判定相应曲线符合人腿特征。
a7、如a6所述的方法,其中,所述判断各段曲线是否符合圆周角定理包括:
对一段曲线,沿该段曲线的第一端点至第二端点,依次计算曲线上各点与所述第一端点、所述第二端点形成的圆周角角度;
若各点对应的圆周角角度变化趋势为先变小再变大,则判定该段曲线不符合圆周角定理。
a8、如a6所述的方法,其中,所述判断各段曲线是否符合圆周角定理包括:
对一段曲线,沿该段曲线的第一端点至第二端点,依次计算曲线上各点与所述第一端点、所述第二端点形成的圆周角角度;
计算各圆周角角度的均方差,若所述均方差大于预设值,则判定该段曲线不符合圆周角定理。
a9、如a1所述的方法,其中,所述根据相应曲线确定检测出的人体位置包括:
若两段曲线的距离小于预设值,则根据该两段曲线确定同一个人体。
a10、如a1所述的方法,其中,所述智能移动设备为扫地机器人,所述通过单线激光对智能移动设备的周边环境进行扫描包括:
通过所述扫地机器人上的激光雷达以预设频率进行360°环绕扫描。
本发明还提供了b11、一种智能移动设备的人体检测装置,包括:
扫描单元,适于通过单线激光对智能移动设备的周边环境进行扫描,得到若干个扫描点;
识别单元,适于根据所述若干个扫描点的分布情况,识别出一段或多段由扫描点构成的符合圆弧特征的曲线;
确定单元,适于判断识别出的各段曲线是否符合人腿特征,是则根据相应曲线确定检测出的人体位置。
b12、如b11所述的装置,其中,所述识别单元,适于根据所述若干个扫描点的分布情况进行圆拟合,得到一段或多段由扫描点构成的曲线。
b13、如b11所述的装置,其中,所述识别单元,适于在识别出一段符合圆弧特征的曲线时,判定该圆弧两个端点对应的直线上是否存在连续的扫描点;
若是,则根据连续的扫描点估计圆弧对应的探测物体的宽度;
若所述宽度大于预设值,则舍弃掉识别出的符合圆弧特征的曲线,以及不对所述连续的扫描点进行是否符合圆弧特征的识别。
b14、如b11所述的装置,其中,所述确定单元,适于判断各段曲线对应的圆心角是否在第一预设角度范围内,是则判定相应曲线符合人腿特征。
b15、如b14所述的装置,其中,所述预设范围为60°至120°。
b16、如b11所述的装置,其中,所述确定单元,适于判断各段曲线是否符合圆周角定理,是则判定相应曲线符合人腿特征。
b17、如b16所述的装置,其中,所述确定单元,进一步适于对一段曲线,沿该段曲线的第一端点至第二端点,依次计算曲线上各点与所述第一端点、所述第二端点形成的圆周角角度;
若各点对应的圆周角角度变化趋势为先变小再变大,则判定该段曲线不符合圆周角定理。
b18、如b16所述的装置,其中,所述确定单元,进一步适于对一段曲线,沿该段曲线的第一端点至第二端点,依次计算曲线上各点与所述第一端点、所述第二端点形成的圆周角角度;
计算各圆周角角度的均方差,若所述均方差大于预设值,则判定该段曲线不符合圆周角定理。
b19、如b11所述的装置,其中,所述确定单元,适于若两段曲线的距离小于预设值,则根据该两段曲线确定同一个人体。
b20、如b11所述的装置,其中,所述智能移动设备为扫地机器人,所述扫描单元,适于通过所述扫地机器人上的激光雷达以预设频率进行360°环绕扫描。
本发明还提供了c21、一种电子设备,其中,该电子设备包括:处理器;以及被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行如a1-a10中任一项所述的方法。
本发明还提供了d22、一种计算机可读存储介质,其中,所述计算机可读存储介质存储一个或多个程序,所述一个或多个程序当被处理器执行时,实现如a1-a10中任一项所述的方法。