1.本发明涉及机器人技术领域,具体涉及一种尖锐物体处理方法及机器人。
背景技术:
2.随着清洁机器人的技术发展,清洁机器人逐渐步入普通家庭,逐步将人们从繁重琐碎的家务劳动中解放,从而为人们提供极大的便利。相关技术提供的清洁机器人能够对室内的物体进行扫描以构建地图,根据地图进行导航,但是,清洁机器人在建立地图时,并未对室内物体的边角进行识别。室内物体的边角对家庭的小孩或机器人容易构成潜在的风险,当管理者对室内物体的边角防护不当,小孩或机器人直接碰撞上边角时,如此容易造成严重后果。
技术实现要素:
3.本发明实施例的一个目的旨在提供一种尖锐物体处理方法及机器人,旨在解决相关技术不能够有效简洁地表达出边角的危险分布情况。
4.在第一方面,本发明实施例提供一种尖锐物体处理方法,包括:
5.获取机器人采集的环境图像,所述环境图像包含物体区域;
6.根据所述环境图像确定在所述物体区域内的边角;
7.根据预设视觉模型及所述物体区域确定目标物体区域,所述目标物体区域的移动类型为移动困难类型,出现在所述目标物体区域的边角为目标边角;
8.根据所述目标边角确定所述目标边角的危险等级;
9.根据至少一个所述目标边角的危险等级生成边角危险分布图。
10.可选地,所述处理方法还包括:
11.确定所述目标边角相对所述机器人的第一高度;
12.则:所述根据所述目标边角确定所述目标边角的危险等级包括:根据所述目标边角的尖锐角度及所述第一高度确定所述目标边角的危险等级。
13.可选地,所述根据所述目标边角的尖锐角度及所述第一高度确定所述目标边角的危险等级包括:
14.分别对所述目标边角的尖锐角度及所述第一高度作归一化处理,得到第一归一值及第二归一值,其中,所述第一归一值与所述目标边角的尖锐角度负相关,所述第二归一值与所述第一高度负相关;
15.根据预设的第一权重因子及所述第一归一值计算第一加权和,及根据预设的第二权重因子及所述第二归一值计算第二加权和;
16.根据所述第一加权和及所述第二加权和计算总加权和;
17.根据所述总加权和确定所述目标边角的危险等级。
18.可选地,所述机器人配置有多个数值范围,所述数值范围与所述危险等级对应,所述根据所述总加权和确定所述目标边角的危险等级包括:
19.确定所述总加权和对应的数值范围为目标数值范围;
20.确定所述目标数值范围的危险等级为所述目标边角的危险等级。
21.可选地,所述边角危险分布图中每个目标边角都配置有边角属性信息,所述方法还包括:
22.根据所述目标边角在所述目标物体区域的位置确定局部边角区域,所述局部边角区域为包含所述目标边角的局部区域;
23.确定所述局部边角区域的形状类型和/或颜色类型;
24.根据所述形状类型和/或所述颜色类型生成所述目标边角的边角属性信息。
25.可选地,所述处理方法还包括:
26.发送所述边角危险分布图至终端,其中,所述终端可响应在所述边角危险分布图上对所述目标边角输入的操作,将所述边角属性信息打包成连接请求,并将所述连接请求发送至服务器,以使所述服务器根据所述连接请求向所述终端返回与所述边角属性信息对应的商品页面信息,所述终端显示所述商品页面信息。
27.可选地,所述方法还包括:
28.确定包含参考边角的物体区域为参考物体区域,所述参考边角为尖锐角度小于危险角度阈值的边角;
29.若所述参考物体区域的移动类型为移动容易类型,则确定与所述参考物体区域相邻的物体区域为基准区域;
30.根据所述参考物体区域与所述基准区域控制所述机器人。
31.可选地,所述根据所述参考物体区域与所述基准区域控制所述机器人包括:
32.判断所述参考物体区域是否存在与基准区域未接触的悬空区域;
33.若存在,则确定所述参考物体区域相对地面的第二高度;
34.若所述第二高度小于所述机器人的高度,则控制所述机器人行走至与所述悬空区域相对的目标位置,并控制所述机器人自所述目标位置开始朝向所述悬空区域移动,以使所述机器人推动与所述参考物体区域的物体缩回所述基准区域内。
35.在第二方面,本发明实施例提供一种非易失性可读存储介质,所述非易失性可读存储介质存储有计算机可执行指令,所述计算机可执行指令用于使机器人执行上述的尖锐物体处理方法。
36.在第三方面,本发明实施例提供一种机器人,包括:
37.至少一个处理器;以及,
38.与所述至少一个处理器通信连接的存储器;其中,
39.所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行上述的尖锐物体处理方法。
40.在本发明实施例提供的尖锐物体处理方法中,获取机器人采集的环境图像,环境图像包含物体区域,根据预设视觉模型及物体区域确定目标物体区域,目标物体区域的移动类型为移动困难类型,出现在目标物体区域的边角为目标边角,根据目标边角确定目标边角的危险等级,根据至少一个目标边角的危险等级生成边角危险分布图。一方面,边角危险分布图能够有效地展示环境中各个目标边角的危险分布情况,有利于用户能够及时了解环境中的目标边角的危险分布情况,以便能够有效地采取相关的防护措施,给用户可参考
的呵护建议。另一方面,本实施例将移动困难类型的物体区域为目标物体区域,并根据目标物体区域的边角的危险等级生成边角危险分布图,无需将剪刀等容易移动的物体纳入边角危险分布图,有利于能够简洁地表达出边角的危险分布情况,由于目标物体区域对应的物体移动困难,目标边角的潜在危险会较为持久,因此,边角危险分布图展示的环境中各个目标边角的危险分布情况比较有意义和价值。
附图说明
41.一个或多个实施例通过与之对应的附图中的图片进行示例性说明,这些示例性说明并不构成对实施例的限定,附图中具有相同参考数字标号的元件表示为类似的元件,除非有特别申明,附图中的图不构成比例限制。
42.图1为本发明实施例提供的一种清洁系统的结构示意图;
43.图2为本发明另一实施例提供的一种清洁系统的结构示意图;
44.图3为本发明实施例提供的一种尖锐物体处理方法的流程示意图;
45.图4a至图4c为本发明实施例提供的不同边角的示意图;
46.图5为本发明实施例提供的一种应用场景的示意图;
47.图6为本发明实施例提供的机器人、终端及服务器之间的通信交互的示意图;
48.图7为本发明实施例提供的刀子的边角伸出矮桌的桌面的示意图;
49.图8为本发明实施例提供的一种尖锐物体处理装置的结构示意图;
50.图9为本发明实施例提供的一种机器人的电路结构示意图。
具体实施方式
51.为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
52.需要说明的是,如果不冲突,本发明实施例中的各个特征可以相互结合,均在本发明的保护范围之内。另外,虽然在装置示意图中进行了功能模块划分,在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于装置中的模块划分,或流程图中的顺序执行所示出或描述的步骤。再者,本发明所采用的“第一”、“第二”、“第三”等字样并不对数据和执行次序进行限定,仅是对功能和作用基本相同的相同项或相似项进行区分。
53.本发明实施例提供一种清洁系统,请参阅图1,清洁系统100包括机器人11及终端12,机器人11与终端12通信连接,其中,通信连接包括有线通信连接或无线通信连接,其中,有线通信连接包括利用金属导线、光纤等有形媒质传送信息的各类通信连接。无线通信连接包括6g通讯、5g通讯、4g通讯、3g通讯、2g通讯、cdma、zig-bee、蓝牙或无线wifi等。
54.机器人11设有摄像头和激光雷达,其中,摄像头可为双目摄像头或者三目摄像头或者多目摄像头。机器人11携带摄像头和激光雷达扫描周边环境,其中,摄像头采集周边环境的环境图像。机器人11根据测距算法处理环境图像,可得到前方物体与机器人的距离和/或高度。另外,机器人11根据预设视觉模型,可从环境图像中确定各个物体区域的移动类型。
55.可以理解的是,机器人11包括扫地机器人、拖地机器人、扫拖一体化机器人或者洗地机器人等。
56.终端12用于与机器人11进行通信交互,举例而言,机器人11可向终端12发送地图,或者机器人11向终端12发送边角危险分布图。终端12向机器人11发送清洁命令,机器人11根据清洁命令执行清洁操作,或者,终端12向机器人11发送更新后的地图,机器人11将更新后的地图保存在本地。
57.在一些实施例中,请参阅图2,清洁系统100还包括服务器13,服务器13分别与终端12和机器人11通信连接,终端12可向服务器13发送各类业务请求,服务器13根据各类业务请求执行相应业务逻辑。服务器13还可与机器人11进行通信交互,举例而言,终端12将控制命令远程传输给服务器13,服务器13将控制命令发送给机器人11。
58.本发明实施例提供一种尖锐物体处理方法。请参阅图3,尖锐物体处理方法包括以下步骤:
59.s31:获取机器人采集的环境图像,环境图像包含物体区域。
60.本步骤中,环境图像为机器人采集周边环境的图像,其中,环境图像由机器人的摄像头采集得到,摄像头可为双目摄像头或者三目摄像头或者多目摄像头。物体区域为环境图像中与摄像头拍摄到的物体对应的像素区域,举例而言,摄像头拍摄到沙发,环境图像中存在与沙发对应的像素区域,与沙发对应的像素区域为沙发的物体区域。摄像头拍摄到剪刀,环境图像中存在与剪刀对应的像素区域,与剪刀对应的像素区域为剪刀的物体区域。
61.在一些实施例中,获取机器人采集的环境图像包括:控制机器人执行沿墙清洁操作,获取机器人在执行沿墙清洁操作时采集的环境图像,其中,环境图像包括墙体尖锐区域,墙体尖锐区域包括墙体拐角的竖直线对应的区域和/或踢脚线对应的区域。
62.在一些实施例中,获取机器人采集的环境图像包括:控制机器人执行绕障操作,获取机器人在执行绕障操作时采集的环境图像,其中,环境图像包括障碍物的尖锐区域。
63.在一些实施例中,获取机器人采集的环境图像包括:控制机器人按照预设模式进行行走,当机器人在周边环境中检测出指定类型名称的物体时,控制机器人降低行走速度以采集环境图像。举例而言,指定类型名称包括柜子、桌、椅、床等,当机器人检测前方的物体为柜子、桌、椅或床时,机器人降低行走速度,以便能够采集到多帧环境图像,如此有利于能够更加准确可靠地提取出边角。
64.预设模式包括首次地图构建模式或者清洁模式。
65.在一些实施例中,控制机器人降低行走速度以采集环境图像包括:检测到所述物体的拐角区域时,控制机器人暂停行走并采集环境图像。
66.s32:根据环境图像确定在物体区域内的边角。
67.本步骤中,边角为物体的两个边沿线相交的区域,请参阅图4a,边沿线41与边沿线42相交的区域43为边角。请参阅图4b,边沿线44与边沿线45相交的区域46为边角。请参阅图4c,边沿线47与边沿线48相交的区域49为边角。
68.在一些实施例中,每个边角都有相应的尖锐角度,其中,尖锐角度为边角的角度,尖锐角度用于表示边角的尖锐程度。请结合图4a,边角的尖锐角度为90度。请结合图4b,边角的尖锐角度为60度。请结合图4c,边角的尖锐角度为120度。
69.在一些实施例中,根据环境图像确定在物体区域内的边角包括:根据预设边缘检
测算法,从环境图像中提取出每个物体区域,根据预设边角提取算法,提取每个物体区域的边角。
70.s33:根据预设视觉模型及物体区域确定目标物体区域,目标物体区域的移动类型为移动困难类型,出现在目标物体区域的边角为目标边角。
71.本步骤中,预设视觉模型由设计者提前训练生成,其中,预设视觉模型可为人工智能模型,人工智能模型可支持相应目标检测算法,目标检测算法包括yolo系列算法、resnet系列算法、inception系列算法或vgg系列算法等。本实施例收集各类室内物体的图像作为训练图像,并给每个室内物体的图像进行标注,将标注的图像输入神经网络中进行训练以生成预设视觉模型,其中,神经网络的损失函数可为bce损失函数等,激活函数可为sigmoid函数等。
72.移动类型用于表示物体是否可容易地被挪开,其中,移动类型包括移动困难类型和移动容易类型,移动困难类型用于表示物体不容易地被挪开且被挪开的频次很小,移动容易类型用于表示物体可容易地被挪开。通常,在室内,诸如沙发、床、大件柜、书柜、衣柜、电视柜、桌子、茶几桌等物体,上述物体的移动类型为移动困难类型,上述物体的特点是用户不容易挪开且挪开的频次很小,比如一年一次或者半年一次等。诸如沙发椅、木凳、花盆、婴儿车、盆栽、椅子、鞋子、沙发椅等物体,上述物体的移动类型为移动容易类型,上述物体的特点是用户需要花一些力气方可挪开。
73.在一些实施例中,根据预设视觉模型及物体区域确定目标物体区域包括以下步骤:根据预设视觉模型确定每个物体区域的移动类型,选择移动困难类型的物体区域为目标物体区域。
74.在一些实施例中,根据预设视觉模型及物体区域确定目标物体区域包括以下步骤:根据预设视觉模型确定每个物体区域的类型名称,类型名称与移动类型对应,根据每个物体区域的类型名称确定每个物体区域的移动类型,选择移动困难类型的物体区域为目标物体区域。请参阅表1:
75.表1
76.类型名称移动类型沙发移动困难类型桌子移动困难类型床移动困难类型茶几桌移动困难类型沙发椅移动容易类型体脂秤移动容易类型
77.由表1可知,当物体区域的类型名称为沙发时,沙发的移动类型为移动困难类型。当物体区域的类型名称为沙发椅时,沙发的移动类型为移动容易类型。
78.s34:根据目标边角确定目标边角的危险等级。
79.本步骤中,危险等级为目标边角对用户或机器人构成潜在危险的等级。在一些实施例中,目标边角的尖锐角度与危险等级呈负相关,亦即:尖锐角度越小,危险等级越高,尖锐角度越大,危险等级越小。由于尖锐角度越小,目标边角对用户或机器人构成的潜在危险越大,因此,危险等级越高。同理可得,由于尖锐角度越大,目标边角对用户或机器人构成的
潜在危险越小。
80.在一些实施例中,机器人配置有多个尖角范围,尖角范围与危险等级对应,其中,尖角范围越大,危险等级越小,尖角范围越小,危险等级越大。举例而言,机器人配置3个危险等级,分别为高危险等级、中危险等级及低危险等级,其中,高危险等级的尖角范围为(0,90
°
],中危险等级的尖角范围为(90
°
,120
°
],低危险等级的尖角范围为(120
°
,180
°
)。
81.根据目标边角确定目标边角的危险等级包括:确定目标边角的尖锐角度对应的尖角范围为目标尖角范围,确定目标尖角范围对应的危险等级为目标边角的危险等级。
82.目标边角在环境中是处在不同位置的,同一位置的目标边角对自我保护能力不强的人群构成的潜在危险程度是不同的,举例而言,目标边角在距离地面的10厘米高度处,此位置的目标边角会对爬行的婴幼孩构成的潜在危险程度较高,但是对成年人构成的潜在危险程度较低。
83.在一些实施例中,尖锐物体处理方法还包括:确定目标边角相对机器人的第一高度,则:根据目标边角确定目标边角的危险等级包括:根据目标边角的尖锐角度及第一高度确定目标边角的危险等级。其中,第一高度为目标边角的角点在竖直方向上到机器人的顶面的高度。
84.在一些实施例中,机器人配置有多个高度范围,高度范围与危险等级对应,其中,高度范围越大,危险等级越小,高度范围越小,危险等级越大。举例而言,机器人配置3个危险等级,分别为高危险等级、中危险等级及低危险等级,其中,高危险等级的高度范围为(0,50cm],中危险等级的尖角范围为(50cm,100cm],低危险等级的尖角范围为(100cm,200cm)。
85.在一些实施例中,根据目标边角的尖锐角度及第一高度确定目标边角的危险等级包括:判断目标边角对应的第一高度是否小于第一预设高度,若小于第一预设高度,则确定目标边角的危险等级为第一危险等级,若大于第一预设高度,则判断目标边角对应的第一高度是否小于第二预设高度,若小于第二预设高度,则确定目标边角的危险等级为第二危险等级,若大于第二预设高度,则判断目标边角对应的第一高度是否小于第三预设高度,若小于第三预设高度,则目标边角的危险等级为第二危险等级,若大于第三预设高度,则确定目标边角的危险等级为第三危险等级。其中,第一危险等级高于第二危险等级,第二危险等级高于第三危险等级,第一预设高度小于第二预设高度,第二预设高度小于第三预设高度,比如第一预设高度为50cm,第二预设高度为100cm,第三预设高度为200cm,第一危险等级为高危险等级,第二危险等级为中危险等级,第三危险等级为低危险等级。
86.在一些实施例中,根据目标边角的尖锐角度及第一高度确定目标边角的危险等级包括以下步骤:
87.s341:分别对目标边角的尖锐角度及第一高度作归一化处理,得到第一归一值及第二归一值。
88.s342:根据预设的第一权重因子及第一归一值计算第一加权和,及根据预设的第二权重因子及第二归一值计算第二加权和。
89.s343:根据第一加权和及第二加权和计算总加权和。
90.s344:根据总加权和确定目标边角的危险等级。
91.在s341中,第一归一值与目标边角的尖锐角度负相关,亦即:目标边角的尖锐角度越大,第一归一值越小,目标边角的尖锐角度越小,第一归一值越大。
92.对目标边角的尖锐角度作归一化处理,得到第一归一值包括:根据第一归一化公式计算第一归一值,其中,第一归一化公式为:θ∈(0,ω),为第一归一值,θ为目标边角的尖锐角度,ω为自定义的最大角度,比如ω为180度,则第一归一化公式为:θ∈(0,180),当目标边角的尖锐角度为90度时,第一归一值为0.5。
93.由第一归一化公式可知,第一归一值与目标边角的尖锐角度负相关。本实施例通过第一归一化公式能够将目标边角的尖锐角度在0-180度之间的变化进行归一化,以便后续能够与第一高度的归一值进行综合计算。另外,当尖锐角度越大时,说明目标边角构成的潜在危险越低,因此,第一归一值需要越小。当尖锐角度越小时,说明目标边角构成的潜在危险越高,因此,第一归一值需要越大,本实施例通过第一归一化公式能够有效地描述尖锐角度与第一归一值的负相关关系,有利于后续能够更加准确可靠地确定目标边角的危险等级。
94.第二归一值与第一高度负相关,亦即:第一高度越大,第二归一值越小,第一高度越小,第二归一值越大。
95.对第一高度作归一化处理,得到第二归一值包括:根据第二归一化公式计算第二归一值,其中,第二归一化公式为:ε=-ηd 1,ε为第二归一值,d为第一高度,单位为厘米cm,η为自定义的高度系数。
96.高度系数η可由用户自定义,比如为了防止婴幼儿与边角相撞,用户可将高度系数η设置成0.01cm或者0.001cm或者0.002cm等。比如η为0.01,则第二归一化公式为:ε=-0.01d 1,当第一高度为100cm时,第二归一值为0。当第一高度大于100cm时,第二归一值小于0。
97.本实施例通过第二归一化公式能够将第一高度进行归一化,以便后续能够与第一归一值进行综合计算。另外,在第一高度d小于最大保护高度η的前提下,当第一高度越大时,说明目标边角构成的潜在危险越低,因此,第二归一值需要越小。当第一高度越小时,说明目标边角构成的潜在危险越高,因此,第二归一值需要越大,本实施例通过第二归一化公式能够有效地描述第一高度与第二归一值的负相关关系,有利于后续能够更加准确可靠地确定目标边角的危险等级。
98.在s342中,根据预设的第一权重因子及第一归一值计算第一加权和包括:根据第一加权计算公式计算第一加权和,其中,第一加权计算公式为:γ为第一加权和,α为第一权重因子。
99.根据预设的第二权重因子及第二归一值计算第二加权和包括:根据第二加权计算公式计算第二加权和,其中,第二加权计算公式为:λ=β*ε,λ为第二加权和,β为第二权重因子。
100.在一些实施例中,第一权重因子与第二权重因子的和为自然数1。
101.在一些实施例中,第一权重因子大于第二权重因子,比如第一权重因子为0.8,第二权重因子为0.2。
102.在s343中,根据第一加权和及第二加权和计算总加权和包括:根据预设的加权和公式计算总加权和,其中,第二加权计算公式为:ψ=γ λ,ψ为总加权和。
103.通常,无论目标边角的尖锐角度为0-180度之间的任一角度,目标边角都会对用户构成潜在危险,但是,第一高度比较大时,目标边角就容易出现危险消失的情形,亦即目标边角高到一定程度后,目标边角再也不会对某类人群构成潜在危险了。在一些场景中,目标边角的尖锐角度很大,但是目标边角与机器人的第一高度却很小。或者,在一些场景中,目标边角的尖锐角度很小,但是目标边角与机器人的第一高度却很大。在一些场景中,目标边角的尖锐角度很大,但是目标边角与机器人的第一高度也很大。在一些场景中,目标边角的尖锐角度很小,但是目标边角与机器人的第一高度也很小。
104.联合第一归一化公式和第二归一化公式可知,目标边角的尖锐角度越大,第一加权和就越小,但是,第一加权和依然对总加权和产生正向影响,亦即会保留着目标边角的尖锐角度对危险等级的正面影响。但是,当第一高度变大以致超过1/η时,第二归一值变成负值,因此,第一高度对总加权和产生负向影响,亦即第一高度会削减第二加权和对危险等级的影响。总体而言,本实施例联合目标边角的尖锐角度及第一高度作加权计算,能够综合考虑多种因素来确定目标边角的危险等级,有利于能够更加准确可靠地确定目标边角的危险等级。
105.在s344中,机器人配置有多个数值范围,数值范围与危险等级对应,其中,数值范围越大,危险等级越大,数值范围越小,危险等级越小。举例而言,机器人配置3个危险等级,分别为高危险等级、中危险等级及低危险等级,其中,高危险等级的数值范围为(0.8,1],中危险等级的数值范围为(0.4,0.8],低危险等级的数值范围为[0,0.4)。
[0106]
根据总加权和确定目标边角的危险等级包括以下步骤:确定总加权和对应的数值范围为目标数值范围,确定目标数值范围的危险等级为目标边角的危险等级。
[0107]
举例而言,总加权和为0.9,目标数值范围为高危险等级的数值范围,因此,目标边角的危险等级为高危险等级。举例而言,总加权和为0.5,目标数值范围为中危险等级的数值范围,因此,目标边角的危险等级为中危险等级。
[0108]
s35:根据至少一个目标边角的危险等级生成边角危险分布图。
[0109]
本步骤中,边角危险分布图用于在目标边角的位置上标记相应的危险等级。在一些实施例中,机器人可将边角危险分布图发送给终端,终端可呈现边角危险分布图,用户通过边角危险分布图可知悉室内空间中各个目标边角及各个目标边角的危险等级。
[0110]
在一些实施例中,根据至少一个目标边角的危险等级生成边角危险分布图包括:确定目标边角的位置信息,根据目标边角的位置信息及危险等级生成边角危险分布图。
[0111]
为了详细理解本发明实施例提供的尖锐物体处理方法,本发明实施例结合图5对此作出详细说明,具体如下:
[0112]
请参阅图5,室内空间存在沙发51、电视柜52、书架53、固定三角凳54、移动椅子55及花盆56,其中,沙发51、电视柜52、书架53及固定三角凳54的移动类型为移动困难类型,移动椅子55及花盆56的移动类型为移动容易类型。
[0113]
机器人57在首次构建地图过程中,通过摄像头扫描室内空间,可采集到包含上述物体对应的物体区域的环境图像。接着,机器人57根据本实施例提供的方法,确定各个边角的尖锐角度。其中,由于移动椅子55及花盆56的移动类型为移动容易类型,因此,移动椅子55及花盆56的边角都不作为目标边角,沙发51、电视柜52、书架53及固定三角凳54的边角都作为目标边角。可以理解的是,为了方便直观的对比理解,本实施例未在图5中罗列出全部
目标边角。
[0114]
沙发51包括目标边角511,电视柜52包括目标边角521,书架53包括目标边角531,固定三角凳54包括目标边角541。目标边角511的危险等级、目标边角521的危险等级及目标边角531的危险等级都为高危险等级,目标边角541的危险等级为低危险等级。
[0115]
总体而言,一方面,边角危险分布图能够有效地展示环境中各个目标边角的危险分布情况,有利于用户能够及时了解环境中的目标边角的危险分布情况,以便能够有效地采取相关的防护措施,给用户可参考的呵护建议。另一方面,本实施例将移动困难类型的物体区域为目标物体区域,并根据目标物体区域的边角的危险等级生成边角危险分布图,无需将剪刀等容易移动的物体纳入边角危险分布图,有利于能够简洁地表达出边角的危险分布情况,由于目标物体区域对应的物体移动困难,目标边角的潜在危险会较为持久,因此,边角危险分布图展示的环境中各个目标边角的危险分布情况比较有意义和价值。
[0116]
在一些实施例中,边角危险分布图中每个目标边角都配置有边角属性信息,尖锐物体处理方法还包括以下步骤:根据目标边角在目标物体区域的位置确定局部边角区域,局部边角区域为包含目标边角的局部区域,确定局部边角区域的形状类型和/或颜色类型,根据形状类型和/或颜色类型生成目标边角的边角属性信息。
[0117]
根据目标边角在目标物体区域的位置确定局部边角区域包括:根据目标边角在目标物体区域的位置,以目标边角的角点为中心按照预设膨胀距离进行膨胀,得到局部边角区域。
[0118]
确定局部边角区域的形状类型包括:将局部边角区域输入预训练的神经网络模型,得到局部边角区域的形状类型。形状类型包括直角类型、锐角类型、钝角类型、踢脚类型等。预训练的神经网络模型可采用卷积神经网络,其中,预训练的神经网络模型可支持各类神经网络算法。
[0119]
确定局部边角区域的颜色类型包括:确定局部边角区域中每个像素的颜色数据,将属于同一颜色的颜色数据进行归类,得到至少一个同类颜色集合,确定包含最多数量的像素的颜色集合作为目标颜色集合,将目标颜色集合的颜色类型作为局部边角区域的颜色类型。
[0120]
在一些实施例中,尖锐物体处理方法还包括以下步骤:发送边角危险分布图至终端,其中,终端可响应在边角危险分布图上对目标边角输入的操作,将边角属性信息打包成连接请求,并将连接请求发送至服务器,以使服务器根据连接请求向终端返回与边角属性信息对应的商品页面信息,终端显示商品页面信息。
[0121]
请参阅图6,机器人、终端及服务器之间的通信交互过程如下:
[0122]
s61:机器人向终端发送边角危险分布图。
[0123]
在s61中,机器人将目标边角的边角属性信息封装在边角危险分布图中,其中,终端可从边角危险分布图中解析出各个目标边角的边角属性信息。
[0124]
s62:终端在应用程序app中呈现边角危险分布图。
[0125]
在s62中,用户操作终端,在边角危险分布图上对目标边角执行单击操作。
[0126]
s63:终端根据用户对目标边角输入的单击操作将边角属性信息打包成连接请求。
[0127]
s64:终端将连接请求发送至服务器。
[0128]
s65:服务器根据连接请求,向终端返回与边角属性信息对应的商品页面信息。
[0129]
在s65中,服务器解析连接请求,得到目标边角的边角属性信息。商品页面信息用于显示降低目标边角的潜在危险程度的商品,比如该商品为防撞条,其中,防撞条的形状类型与目标边角的形状类型相适应,和/或,防撞条的颜色类型与包含目标边角的局部边角区域的颜色类型相适应。比如沙发的局部边角区域的颜色类型为灰色类型,服务器可向终端推荐灰色类型的防撞条,再比如沙发的目标边角的形状类型为直角类型,服务器可向终端推荐直角类型的防撞条。
[0130]
s66:终端显示商品页面信息。
[0131]
本实施例将机器人生成的边角危险分布图发送给终端,终端能够可视化地显示边角危险分布图,用户可操作边角危险分布图,通过终端向服务器发送连接请求,服务器能够个性化、细粒度地向终端返回与目标边角对应的商品页面信息,使得用户能够在商品页面信息上下发订单购买用于降低目标边角的潜在危险程度的商品,提高了用户体验感。
[0132]
在一些实施例中,尖锐物体处理方法还包括以下步骤:确定包含参考边角的物体区域为参考物体区域,参考边角为尖锐角度小于危险角度阈值的边角,若参考物体区域的移动类型为移动容易类型,则确定与参考物体区域相邻的物体区域为基准区域,根据参考物体区域与基准区域控制机器人,若参考物体区域的移动类型为移动困难类型,则执行预设操作,预设操作由设计者自定义的操作,比如执行确定目标物体区域的操作等。
[0133]
危险角度阈值由设计者根据工程经验自定义,比如危险角度阈值为30度。当边角的尖锐角度小于危险角度阈值时,说明该边角(参考边角)对用户构成的潜在危险是很高的,需要迫切地降低该潜在风险。比如,用户在茶几台上使用完剪刀或者刀子,剪刀或者刀子露出茶几台的边沿时,剪刀或者刀子的尖锐角度小于危险角度阈值,剪刀或者刀子对用户构成的潜在危险是很高的,儿童容易误碰剪刀或者刀子而出现事故。当边角的尖锐角度大于危险角度阈值时,说明该边角对用户构成的潜在危险是较高的,可以无需迫切地降低该潜在风险。
[0134]
当边角(参考边角)的尖锐角度小于危险角度阈值,且参考物体区域的移动类型是移动容易类型时,机器人可利用自身的便利来降低该潜在风险,比如机器人可通过推挡将剪刀或者刀子推入茶几台内。
[0135]
在一些实施例中,根据参考物体区域与基准区域控制机器人包括以下步骤:判断参考物体区域是否存在与基准区域未接触的悬空区域,若存在,则确定参考物体区域相对地面的第二高度,若第二高度小于机器人的高度,则控制机器人行走至与悬空区域相对的目标位置,并控制机器人自目标位置开始朝向悬空区域移动,以使机器人推动与参考物体区域的物体缩回基准区域内,若第二高度大于机器人的高度,则控制机器人生成危险提示信息,若不存在与基准区域未接触的悬空区域,则执行指定操作。
[0136]
判断参考物体区域是否存在与基准区域未接触的悬空区域包括:根据预设边缘检测算法提取出参考物体区域的第一边沿线及基准区域的第二边沿线,判断第二边沿线是否包围第一边沿线,若包围,则确定参考物体区域不存在与基准区域未接触的悬空区域,若不包围,则确定第二边沿线与第一边沿线的交点,根据交点及第一边沿线上未落在基准区域的边沿点生成悬空区域。
[0137]
确定参考物体区域相对地面的第二高度包括:确定参考物体区域的中心点,计算中心点到地面的第二高度。
[0138]
控制机器人行走至与悬空区域相对的目标位置包括:根据悬空区域确定参考线,所述参考线为由悬空区域中最多边沿点组成的线段,根据参考线的直线方程及机器人的当前位置,在参考线上遍历出与机器人的当前位置最近的位置作为目标位置。
[0139]
根据悬空区域确定参考线包括:根据拟合算法,将悬空区域中各个边沿点进行直线拟合,得到至少一条线段,选择长度最大的线段作为参考线。
[0140]
请参阅图7,用户将刀子71放置在矮桌72的桌面上,其中,矮桌72的高度小于机器人的高度,刀子71的边角伸出矮桌72的桌面。由于刀子的边角的尖锐角度很小,因此,刀子对应的物体区域为参考物体区域,且刀子的移动类型为移动容易类型,矮桌72的桌面与刀子相邻,因此,机器人确定与刀子对应的参考物体区域相邻的桌面区域为基准区域。
[0141]
接着,机器人70判断刀子71与矮桌72是否存在未接触的悬空区域。由图7可知,刀子71与矮桌72存在未接触的悬空区域73,且刀子71到地面的高度小于机器人的高度,因此,机器人根据悬空区域73确定参考线74。
[0142]
再接着,机器人70结合当前位置,在参考线74上搜索目标位置75。
[0143]
再接着,机器人70行走至目标位置75并朝向悬空区域73进行移动,如此,机器人能够推动刀子71缩回矮桌72的桌面内。
[0144]
本实施例通过控制机器人将对用户构成的很高潜在危险且移动容易的物体推动缩回至低风险区域,如此能够降低该物体对用户的潜在风险,进而能够更好地保护用户。
[0145]
需要说明的是,在上述各个实施方式中,上述各步骤之间并不必然存在一定的先后顺序,本领域普通技术人员,根据本发明实施方式的描述可以理解,不同实施方式中,上述各步骤可以有不同的执行顺序,亦即,可以并行执行,亦可以交换执行等等。
[0146]
作为本发明实施方式的另一方面,本发明实施方式提供一种尖锐物体处理装置。其中,尖锐物体处理装置可以为软件模块,所述软件模块包括若干指令,其存储在存储器内,处理器可以访问该存储器,调用指令进行执行,以完成上述各个实施方式所阐述的尖锐物体处理方法。
[0147]
在一些实施方式中,尖锐物体处理装置亦可以由硬件器件搭建成的,例如,尖锐物体处理装置可以由一个或两个以上的芯片搭建而成,各个芯片可以互相协调工作,以完成上述各个实施方式所阐述的尖锐物体处理方法。再例如,尖锐物体处理装置还可以由各类逻辑器件搭建而成,诸如由通用处理器、数字信号处理器(dsp)、专用集成电路(asic)、现场可编程门阵列(fpga)、单片机、arm(acorn risc machine)或其它可编程逻辑器件、分立门或晶体管逻辑、分立的硬件组件或者这些部件的任何组合而搭建成。
[0148]
请参阅图8,尖锐物体处理装置800包括图像获取模块81、边角确定模块82、类型筛选模块83、等级确定模块84及分布图生成模块85。
[0149]
图像获取模块81用于获取机器人采集的环境图像,环境图像包含物体区域。边角确定模块82用于根据环境图像确定在物体区域内的边角。类型筛选模块83用于根据预设视觉模型及物体区域确定目标物体区域,目标物体区域的移动类型为移动困难类型,出现在目标物体区域的边角为目标边角。等级确定模块84用于根据目标边角确定目标边角的危险等级。分布图生成模块85用于根据至少一个目标边角的危险等级生成边角危险分布图。
[0150]
一方面,边角危险分布图能够有效地展示环境中各个目标边角的危险分布情况,有利于用户能够及时了解环境中的目标边角的危险分布情况,以便能够有效地采取相关的
防护措施,给用户可参考的呵护建议。另一方面,本实施例将移动困难类型的物体区域为目标物体区域,并根据目标物体区域的边角的危险等级生成边角危险分布图,无需将剪刀等容易移动的物体纳入边角危险分布图,有利于能够简洁地表达出边角的危险分布情况,由于目标物体区域对应的物体移动困难,目标边角的潜在危险会较为持久,因此,边角危险分布图展示的环境中各个目标边角的危险分布情况比较有意义和价值。
[0151]
在一些实施例中,请继续参阅图8,尖锐物体处理装置800还包括高度确定模块86,高度确定模块86用于确定目标边角相对机器人的第一高度。则:等级确定模块84具体用于:根据目标边角的尖锐角度及第一高度确定目标边角的危险等级。
[0152]
在一些实施例中,等级确定模块84还具体用于:分别对目标边角的尖锐角度及第一高度作归一化处理,得到第一归一值及第二归一值,其中,第一归一值与目标边角的尖锐角度负相关,第二归一值与第一高度负相关,根据预设的第一权重因子及第一归一值计算第一加权和,及根据预设的第二权重因子及第二归一值计算第二加权和,根据第一加权和及第二加权和计算总加权和,根据总加权和确定目标边角的危险等级。
[0153]
在一些实施例中,机器人配置有多个数值范围,数值范围与危险等级对应,等级确定模块84还具体用于:确定总加权和对应的数值范围为目标数值范围,确定目标数值范围的危险等级为目标边角的危险等级。
[0154]
在一些实施例中,边角危险分布图中每个目标边角都配置有边角属性信息,请继续参阅图8,尖锐物体处理装置800还包括属性生成模块87,属性生成模块87用于:根据目标边角在目标物体区域的位置确定局部边角区域,局部边角区域为包含目标边角的局部区域,确定局部边角区域的形状类型和/或颜色类型,根据形状类型和/或颜色类型生成目标边角的边角属性信息。
[0155]
在一些实施例中,请继续参阅图8,尖锐物体处理装置800还包括信息发送模块88,信息发送模块88用于:发送边角危险分布图至终端,其中,终端可响应在边角危险分布图上对目标边角输入的操作,将边角属性信息打包成连接请求,并将连接请求发送至服务器,以使服务器根据连接请求向终端返回与边角属性信息对应的商品页面信息,终端显示商品页面信息。
[0156]
在一些实施例中,请继续参阅图8,尖锐物体处理装置800还包括机器控制模块89,机器控制模块89用于:确定包含参考边角的物体区域为参考物体区域,参考边角为尖锐角度小于危险角度阈值的边角,若参考物体区域的移动类型为移动容易类型,则确定与参考物体区域相邻的物体区域为基准区域,根据参考物体区域与基准区域控制机器人。
[0157]
在一些实施例中,请继续参阅图8,机器控制模块89具体用于:判断参考物体区域是否存在与基准区域未接触的悬空区域,若存在,则确定参考物体区域相对地面的第二高度,若第二高度小于所述机器人的高度,则控制机器人行走至与悬空区域相对的目标位置,并控制机器人自目标位置开始朝向悬空区域移动,以使机器人推动与参考物体区域的物体缩回基准区域内。
[0158]
需要说明的是,上述尖锐物体处理装置可执行本发明实施方式所提供的尖锐物体处理方法,具备执行方法相应的功能模块和有益效果。未在尖锐物体处理装置实施方式中详尽描述的技术细节,可参见本发明实施方式所提供的尖锐物体处理方法。
[0159]
请参阅图9,图9为本发明实施例提供的一种机器人的电路结构示意图。如图9所
示,电子设备900包括一个或多个处理器91以及存储器92。其中,图9中以一个处理器91为例。
[0160]
处理器91和存储器92可以通过总线或者其他方式连接,图9中以通过总线连接为例。
[0161]
存储器92作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块,如本发明实施例中的尖锐物体处理方法对应的程序指令/模块。处理器91通过运行存储在存储器92中的非易失性软件程序、指令以及模块,从而执行尖锐物体处理装置的各种功能应用以及数据处理,即实现上述方法实施例提供的尖锐物体处理方法以及上述装置实施例的各个模块或单元的功能。
[0162]
存储器92可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他非易失性固态存储器件。在一些实施例中,存储器92可选包括相对于处理器91远程设置的存储器,这些远程存储器可以通过网络连接至处理器91。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
[0163]
所述程序指令/模块存储在所述存储器92中,当被所述一个或者多个处理器91执行时,执行上述任意方法实施例中的尖锐物体处理方法。
[0164]
本发明实施例还提供了一种非易失性计算机存储介质,所述计算机存储介质存储有计算机可执行指令,该计算机可执行指令被一个或多个处理器执行,例如图9中的一个处理器91,可使得上述一个或多个处理器可执行上述任意方法实施例中的尖锐物体处理方法。
[0165]
本发明实施例还提供了一种计算机程序产品,所述计算机程序产品包括存储在非易失性计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被电子设备执行时,使所述电子设备执行任一项所述的尖锐物体处理方法。
[0166]
以上所描述的装置或设备实施例仅仅是示意性的,其中所述作为分离部件说明的单元模块可以是或者也可以不是物理上分开的,作为模块单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络模块单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
[0167]
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对相关技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
[0168]
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;在本发明的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,步骤可以以任意顺序实现,并存在如上所述的本发明的不同方面的许多其它变化,为了简明,它们没有在细节中提供;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。