一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

物品识别方法、电子设备、可读存储介质及产品与流程

2021-11-05 21:39:00 来源:中国专利 TAG:


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.具体地,所述物品陈列装置,包括:
43.视频获取模块,被配置为获取用户更新物品陈列时的目标视频的起始帧和结束帧,所述起始帧包括用户未开始更新物品陈列时货架的陈列信息,所述结束帧包括用户已完成更新物品陈列时货架的陈列信息;
44.坐标获取模块,被配置为根据预设的目标检测模型分别获取所述起始帧和所述结束帧中目标物体的坐标信息;所述目标物体至少包括货架上陈列的物品;
45.确定模块,被配置为根据所述起始帧和所述结束帧中目标物体的坐标信息,依次确定所述起始帧和所述结束帧中相同位置的目标物体是否匹配;
46.确认模块,被配置为若所述起始帧和所述结束帧中存在参考位置的目标物体不匹配的情况,则确认在用户更新物品陈列前后所述参考位置的目标物体出现变动。
47.可选的,所述坐标获取模块还被配置为根据预设的目标检测模型分别获取所述起始帧和所述结束帧中每个目标物体的多个边界框,不同的边界框的置信度不同;对每个目标物体的多个边界框进行非极大抑制处理,获取剩余的至少一个边界框;在所述剩余的至少一个边界框中确定置信度最大且超过预定边界阈值的边界框作为对应目标物体的边界框;根据每个所述目标物体的目标物体的边界框,获取每个所述目标物体的坐标信息。
48.可选的,所述坐标获取模块还被配置为根据预设的目标检测模型分别获取所述起始帧和所述结束帧中多个物品和多个隔架的坐标信息;根据所述多个物品和多个隔架的坐标信息,获取同一隔架上两个相邻物品之间的距离;若所述同一隔架上两个相邻物品之间的距离大于或等于预设距离阈值,确定所述两个相邻物品之间存在空货道。
49.可选的,所述视频获取模块还被配置为对所述目标视频中的视频帧依次进行识别,获取物品数量不再变化且隔架未被遮挡的视频帧作为所述起始帧;获取所述目标视频中在所述起始帧后与所述起始帧的相似度满足预设条件的视频帧作为所述结束帧。
50.可选的,所述视频获取模块还被配置为剔除所述目标视频中在所述起始帧后隔架被遮挡的视频帧;从剩余的多个视频帧中获取与所述起始帧的相似度最高的视频帧作为所述结束帧。
51.可选的,所述视频获取模块还被配置为从剩余的多个视频帧中获取与所述起始帧的汉明距离最小的视频帧作为所述结束帧。
52.可选的,所述确定模块,被配置为根据所述起始帧和所述结束帧中目标物体的坐标信息,确定所述起始帧和所述结束帧中每个所述目标物体的感兴趣区域;在所述起始帧和所述结束帧中每个所述目标物体的感兴趣区域中识别每个所述目标物体的特征点;获取所述起始帧和所述结束帧中相同位置的目标物体的特征点的匹配百分比;若所述参考位置的所述匹配百分比大于或等于预设百分比阈值,确认所述起始帧和所述结束帧中所述参考位置的目标物体匹配;若所述参考位置的所述匹配百分比小于所述预设百分比阈值,确认所述起始帧和所述结束帧中所述参考位置的目标物体不匹配。
53.可选的,所述装置还包括:
54.图像获取模块,被配置为获取包括货架陈列信息的多个训练图像,所述多个训练图像包括的货架的陈列信息不完全相同;
55.图像标注模块,被配置为分别标注每个训练图像中目标物体的边界框,获取标注后多个训练图像;
56.图像增强模块,被配置为对所述标注后多个训练图像进行图像增强,获取增强后多个训练图像;
57.模型训练模块,被配置为根据所述增强后多个训练图像通过目标检测框架训练模型,获取所述目标检测模型。
58.可选的,所述坐标获取模块还被配置为根据预设的目标检测模型获取用户肢体的坐标信息;所述确定模块还被配置为若所述起始帧和所述结束帧中存在多个相同位置的目标物体不匹配,根据所述用户肢体的坐标信息在所述多个相同位置中确定更新物品陈列前后目标物体出现变动的所述参考位置。
59.第三方面,本公开实施例提供了一种计算机程序产品,其包括计算机指令,该计算机指令被处理器执行时实现第一方面任一实施例所述的方法。
60.第四方面,本公开实施例提供了一种电子设备,包括存储器和处理器,其中,所述存储器用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器执行以实现如第一方面任一实施例所述的方法。
61.第五方面,本公开实施例中提供了一种计算机可读存储介质,其上存储有计算机指令,该计算机指令被处理器执行时实现如第一方面任一实施例所述的方法。
62.根据本公开实施例提供一种物品识别方法,该方法可以获取用户更新物品陈列时的目标视频的起始帧和结束帧,然后根据预设的目标检测模型分别获取该起始帧和结束帧中目标物体的坐标信息;并根据该起始帧和结束帧中目标物体的坐标信息,依次确定该起始帧和结束帧中相同位置的目标物体是否匹配;若起始帧和结束帧中存在参考位置的目标物体不匹配的情况,则确认在用户更新物品陈列前后该参考位置的目标物体出现变动,即起始帧中该参考位置的目标物体可能被拿走或者变换位置。这样一来,通过采集的每个用户拿取物品的目标视频即可动态获取货柜的物品陈列情况,实现对物品陈列的实时监控,以便于运维人员确认用户拿取物品的数量和\或类型,避免恶意用户多次拿取的情况。
63.同时,由于可以获取每次用户拿取的物品数量和类型,因此可以实现对物品库存的实时监控,以便于运维人员在确认库存较小时及时补充库存。并且,运维人员也可以统计最受用户或客户欢迎的物品的种类,便于调整之后对物品陈列的规划。
64.应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
65.结合附图,通过以下非限制性实施方式的详细描述,本公开的其它特征、目的和优点将变得更加明显。在附图中:
66.图1示出根据本公开实施例的物品陈列装置的结构图;
67.图2示出根据本公开一实施方式的主板的示意性结构框图;
68.图3示出根据本公开一实施方式的控制板的示意性结构框图;
69.图4示出根据本公开实施例的物品识别方法的流程图;
70.图5示出根据本公开实施例的物品识别方法的流程图;
71.图6示出根据本公开实施例的物品识别方法的流程图;
72.图7示出根据本公开实施例的物品识别方法的流程图;
73.图8示出根据本公开实施例的物品识别方法的流程图;
74.图9示出根据本公开实施例的物品陈列装置的结构示意图;
75.图10示出根据本公开实施例的物品陈列装置的结构示意图;
76.图11示出根据本公开的实施例的电子设备的结构框图;
77.图12示出根据本公开实施例的方法的计算机系统的结构示意图。
具体实施方式
78.下文中,将参考附图详细描述本公开的示例性实施例,以使本领域技术人员可容易地实现它们。此外,为了清楚起见,在附图中省略了与描述示例性实施例无关的部分。
79.在本公开中,应理解,诸如“包括”或“具有”等的术语旨在指示本说明书中所公开的特征、数字、步骤、行为、部件、部分或其组合的存在,并且不欲排除一个或多个其他特征、数字、步骤、行为、部件、部分或其组合存在或被添加的可能性。
80.另外还需要说明的是,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本公开。
81.本公开实施例所述的物品展示场景为将需要展示的多个物品依次放置在物品陈列柜中,以便于用户查阅、取用或者购买等。示例的,该物品陈列柜可以为公共场所中的无人售货设备,超市中的冷藏柜,公司茶水间的零食架和饮品架,或者工厂展览区的样品陈列柜等。需要说明的是,本技术实施例对用于物品陈列装置的具体类型不作任何限制。
82.以线下的无人售货机为例,无人售货机中陈列有多个待售物品,用户可以根据需求进行购买,通过本技术的方法可以对采集到的用户购买物品时的视频进行处理,即可获知用户购买的物品的种类,便于供应商对物品受欢迎程度进行统计。
83.或者,以公司茶水间的零食架和饮品架为例,公司将提供的零食和饮品放置在零食架和饮品架上,员工可以按照需求进行取用。通过本技术的方法可以对员工取用零食或饮品时的视频进行处理,统计得到每种零食或饮品的受欢迎程度,便于公司对零食和饮品种类的优化。
84.或者,以工厂展览区的样品陈列柜为例,工厂可以将生产的产品放置在样品陈列柜中,客户可以查看和试用每个产品以确定产品的性能。通过本技术的方法可以对客户拿取产品进行试用的视频进行处理,确定最受客户欢迎的产品,以便于调整工厂之后的生产规划。
85.或者,以超市中的冷藏柜为例,超市将售卖的各种需要冷藏的酸奶或者冰淇淋等物品放置在冷藏柜中,便于消费者据需求进行购买,通过本技术的方法可以对用户拿取物品时的视频进行处理,即可获知用户购买的物品的种类,便于超市对之后的供货计划进行调整。
86.示例性的,图1示出根据本公开一实施方式的物品陈列装置100的示意性结构框图,如图1所示,该物品陈列装置100包括多个隔架10a,每个隔架10a上设置有多个货道,每
个货道可以放置有多个物品10c,不同的货道陈列的物品10c可以相同,也可以不同。
87.进一步的,该物品陈列装置100还可以设置有柜体10d和柜门10e,该多个隔架10a设置在柜体10d内,柜门10e用于封闭该柜体10d,实现陈列物品的隔架10a与外界的隔离,避免陈列的物品被外界物体误触掉落。该柜门10e的固定侧与柜体10d的开口端的边缘转动连接,实现柜门10e的转动开启。
88.可选的,该物品陈列装置100可以设置有摄像头10f,该摄像头10f可以设置在柜门10e靠近隔架10a一侧的任意位置。优选的,为了保证摄像头10f能够拍摄到完整的多个隔架10a的图像,可以将该摄像头10f设置到柜门10e上把手所在的一侧,该把手为用户开启柜门10e时的施力部。随着柜门10e的开启,摄像头10f拍摄的隔架10a的数量越多,当柜门10e开启至最大时,摄像头10f即可拍摄到所有隔架10a的图像。
89.具体的,该物品陈列装置100还可以有控温功能,即该物品陈列装置100可以包括压缩机、冷凝器、节流元件以及蒸发器,其中压缩机、冷凝器、节流元件以及蒸发器通过充注有冷媒的管道连接以形成封闭管路,组成能够循环冷媒的制冷系统或制热系统。
90.其中,压缩机是指用于将低压冷媒提升为高压冷媒的从动的流体机械,压缩机能够吸入低温低压的气态冷媒,通过电机运转带动活塞对冷媒进行压缩后,排出高温高压的气态冷媒,为制冷循环提供动力,压缩机可以包括往复式压缩机、螺杆式压缩机、回转式压缩机、涡旋式压缩机和离心式压缩机等,本技术实施例对压缩机的具体类型不作任何限制。
91.冷凝器是指用于使冷凝器中的冷媒与冷凝器外的空气进行热量交换,以实现放热的换热器。具体的,冷凝器可以包括长度较长的用于容纳冷媒的管道,该管道通常可以由铜之类的导热性能较强的金属材料制成,且该管道通常可以被盘成螺旋形状。另外,为了提高冷凝器的换热效率,可以在管道上设置热传导性能优异的散热片,以加大散热面积,从而加速热量交换的速度,提高换热效率。也还可以通过设置与冷凝器匹配的风机或风扇,以加快冷凝器周围空气的流动速度,从而加速热量交换的速度,提高换热效率。
92.节流元件用于使常温高压的液体冷媒通过节流元件节流以成为低温低压的气体冷媒,其中节流元件也可以被称为节流元件或调节阀,节流元件可以包括膨胀阀、毛细管等。另外,节流元件还可以控制流经节流元件的冷媒的流量,避免流经节流元件的冷媒的流量过大或过小。其中,若流经节流元件的冷媒的流量过大,则会导致流出节流元件的冷媒仍包括液态冷媒,液态冷媒进入压缩机会产生液击,对压缩机造成伤害;若流经节流元件的冷媒的流量过小,则会导致进入压缩机的冷媒过少,降低压缩机的工作效率。
93.蒸发器是指用于使蒸发器中的冷媒与冷凝器外的空气进行热量交换,以实现吸热的换热器。具体的,蒸发器可以包括长度较长的用于容纳冷媒的管道,该管道通常可以由铜之类的导热性能较强的金属材料制成,且该管道通常可以被盘成螺旋形状。另外,为了提高冷凝器的换热效率,可以在管道上设置热传导性能优异的散热片,以加大散热面积,从而加速热量交换的速度,提高换热效率。也还可以通过设置与蒸发器匹配的风机或风扇,以加快蒸发器周围空气的流动速度,从而加速热量交换的速度,提高换热效率。
94.冷媒也可由被称为制冷剂、致冷剂或雪种,是指制冷系统或制热系统中完成能量转化的媒介物质。冷媒通常为容易发生可逆相变的物质,通过可逆相变冷媒可以传递热量,具体的,气态的冷媒在受压时,放热变成液体,当高压液体减压变成气体时,便会吸热。冷媒可以包括氨、空气、水、盐水、氟里昂等,其中氟利昂可以包括一氟三氯甲烷、二氟一氯甲烷、
三氟甲烷、四氟乙烷、三氟二氯乙烷等。
95.当物品陈列装置100具备制冷功能时,低温低压的汽态冷媒从蒸发器流入压缩机,由压缩机对低温低压的汽态冷媒进行压缩,并使高温高压的气态冷媒流入冷凝器;高温高压的气态冷媒通过冷凝器与冷凝器外界的空气进行热交换,使高温高压的气态冷媒在冷凝器中被冷却为常温高压的液态冷媒,之后常温高压的液态冷媒流入节流元件,节流元件通过对常温高压的液态冷媒节流,使流出节流元件的冷媒转变为低温低压的液态冷媒;低温低压的液态冷媒流入蒸发器,低温低压的液态冷媒通过蒸发器与蒸发器外界的空气进行热交换,低温低压的液态冷媒蒸发气化为低温低压的气态冷媒以吸取热量。其中,蒸发器外界的空气能够被导入物品陈列装置100的储藏区,冷凝器外界的空气能够被导入物品陈列装置100的外部,从而实现将物品陈列装置100的储藏区(多个隔架10a可以设置在该储藏区)中的热量搬运至物品陈列装置100的外部,对物品陈列装置100的储藏区进行制冷。
96.当物品陈列装置100具备制热功能时,低温低压的汽态冷媒从冷凝器流入压缩机,由压缩机对低温低压的汽态冷媒进行压缩,并使高温高压的气态冷媒流入蒸发器;高温高压的气态冷媒通过蒸发器与蒸发器外界的空气进行热交换,使高温高压的气态冷媒在蒸发器中被冷却为常温高压的液态冷媒,之后常温高压的液态冷媒流入节流元件,节流元件通过对常温高压的液态冷媒节流,使流出节流元件的冷媒转变为低温低压的液态冷媒;低温低压的液态冷媒流入冷凝器,低温低压的液态冷媒通过冷凝器与冷凝器外界的空气进行热交换,低温低压的液态冷媒蒸发气化为低温低压的气态冷媒以吸取热量。其中,蒸发器外界的空气能够被导入物品陈列装置100的储藏区,冷凝器外界的空气能够被导入物品陈列装置100的外部,从而实现将物品陈列装置100的外部的热量搬运至物品陈列装置100的储藏区,对物品陈列装置100的储藏区进行制热。
97.在本技术的一个实施例中,物品陈列装置100的柜体中设置有控制板以及电源管理模块,物品陈列装置100的柜门中设置有主板。
98.在本技术的一个实施例中,图2示出根据本公开一实施方式的主板的示意性结构框图,如图2所示,主板200包括处理器201、随机存取存储器202、闪存203、无线局域网蓝牙模块204、陀螺仪205、压力传感器206、麦克风207、喇叭208、摄像头209以及蜂窝通信模块210。
99.处理器可以包括一个或多个处理单元,例如:处理器可以包括应用处理器,调制解调处理器,图形处理器,图像信号处理器,控制器,存储器,视频编解码器,数字信号处理器,基带处理器,和/或神经网络处理器中的一个或多个。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
100.其中,图像信号处理器isp用于处理摄像头反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给图像信号处理器isp处理,转化为肉眼可见的图像。图像信号处理器isp还可以对图像的噪点,亮度,肤色进行算法优化。图像信号处理器isp还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,图像信号处理器isp可以设置在摄像头中。
101.数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,数字信号处理器可以用于对频点能量进行傅里叶变换等。
102.视频编解码器用于对数字视频压缩或解压缩。物品陈列装置100可以支持一种或
多种视频编解码器。这样,物品陈列装置100可以播放或录制多种编码格式的视频。
103.神经网络计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过神经网络计算处理器可以实现物品陈列装置100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
104.在一些实施例中,处理器可以包括一个或多个接口。接口可以包括集成电路接口,集成电路内置音频接口,脉冲编码调制接口,通用异步收发传输器接口,移动产业处理器接口,通用输入输出接口,用户标识模块接口,和/或通用串行总线接口等。
105.随机存取存储器202可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令以及数据。处理器201通过运行存储在随机存取存储器202的指令,从而执行物品陈列装置100的各种功能应用以及数据处理。随机存取存储器202可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储物品陈列装置100使用过程中所创建的数据(比如音频数据,图像数据等)等。
106.闪存203可以用于实现扩展物品陈列装置100的存储能力。闪存203可以通过闪存接口与处理器201通信,实现数据存储功能。例如将音乐,视频等文件保存在闪存中。
107.通过处理器201、随机存取存储器202以及闪存203可以构成最小系统,以提供系统运行环境。
108.无线局域网蓝牙模块204可以提供应用在物品陈列装置100上的包括无线局域网,蓝牙,全球导航卫星系统,调频,近距离无线通信技术,红外技术等无线通信的解决方案。无线局域网蓝牙模块204可以是集成至少一个通信处理模块的一个或多个器件。无线局域网蓝牙模块204经由天线接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器201。无线局域网蓝牙模块204还可以从处理器201接收待发送的信号,对其进行调频,放大,经天线转为电磁波辐射出去。在本技术的一个实施例中,通过无线局域网蓝牙模块可以与用户的终端进行通信。
109.蜂窝通信模块210可以提供应用在物品陈列装置100上的包括2g/3g/4g/5g等无线通信的解决方案。蜂窝通信模块210可以包括至少一个滤波器,开关,功率放大器,低噪声放大器等。蜂窝通信模块210可以由天线接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。蜂窝通信模块210还可以对经调制解调处理器调制后的信号放大,经天线转为电磁波辐射出去。在一些实施例中,蜂窝通信模块210的至少部分功能模块可以被设置于处理器201中。在一些实施例中,蜂窝通信模块210的至少部分功能模块可以与处理器201的至少部分模块被设置在同一个器件中。在本技术的一个实施例中,通过蜂窝通信模块210可以与物品陈列装置100的维修服务提供商的云端服务器进行通信。
110.通过无线局域网蓝牙模块204以及蜂窝通信模块210,物品陈列装置100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统,通用分组无线服务,码分多址接入,宽带码分多址,时分码分多址,长期演进等。
111.陀螺仪205可以用于确定物品陈列装置100的柜门的实时姿态。
112.压力传感器206用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器206可以设置于显示屏。压力传感器206的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导
电材料的平行板。当有力作用于压力传感器206,电极之间的电容改变,根据电容的变化确定压力的强度。当有触摸操作作用于显示屏,根据压力传感器206检测所述触摸操作强度,也可以根据压力传感器206的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如:当有触摸操作强度小于第一压力阈值的触摸操作作用于饮料选择应用图标时,执行查看饮料具体信息的指令。当有触摸操作强度大于或等于第一压力阈值的触摸操作作用于饮料选择应用图标时,执行购买饮料的指令。
113.麦克风207,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风207发声,将声音信号输入到麦克风207。物品陈列装置100可以设置至少一个麦克风207。在另一些实施例中,物品陈列装置100可以设置两个麦克风207,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,物品陈列装置100还可以设置三个,四个或更多麦克风207,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。在本技术的一个实施例中,通过麦克风207可以采集物品陈列装置100运行时的声音。
114.喇叭208,也称“扬声器”,用于将音频电信号转换为声音信号。物品陈列装置100可以通过喇叭208播放音乐,或播放提示语音。
115.摄像头209用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件或互补金属氧化物半导体光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给图像信号处理器转换成数字图像信号。图像信号处理器将数字图像信号输出到数字信号处理器加工处理。数字信号处理器将数字图像信号转换成标准的rgb,yuv等格式的图像信号。在一些实施例中,物品陈列装置100可以包括1个或多个摄像头209。在本技术的一个实施例中,摄像头209可以具备对自身加热的功能,以确保自身的镜头不会起雾。
116.在本技术的一个实施例中,图3示出根据本公开一实施方式的控制板的示意性结构框图,如图3所示,控制板300包括电源输入接口301、电源输出接口302、计量芯片303、微控制单元芯片304、实时时钟芯片、灯开关接口305、控温开关接口306、蒸发风机接口307、压缩机接口308、冷凝风机接口309、温度传感器接口310、通信接口311以及电源接口312。
117.其中,计量芯片303即电量传感器,通过计量芯片303可以获取电压数据、电流数据、实时功率数据以及平均功率数据。通过实时时钟芯片可以保持微控制单元芯片的时间。通过灯开关接口305可以接收物品陈列装置100的灯开关的控制信号。通过控温开关接口306可以接收物品陈列装置100的控温控制开关的控制信号。通过蒸发风机接口307可以向物品陈列装置100的蒸发风机发送蒸发风机控制信号,以控制蒸发风机运行。通过压缩机接口308可以向物品陈列装置100的压缩机发送压缩机控制信号,以控制压缩机运行。通过冷凝风机接口309可以向物品陈列装置100的冷凝风机发送冷凝风机控制信号,以控制冷凝风机运行。通过温度传感器接口310可以接收一个或多个温度传感器采集的温度传感器数据,以便于确定物品陈列装置100一个或多个位置的温度值。
118.在本技术的一个实施例中,电源管理模块包括交流转直流转换模块,充电管理模块以及电池。电源管理模块用于为主板和控制板供电,并对电池进行充放电管理。电源管理模块还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他
一些实施例中,电源管理模块也可以设置于处理器中。
119.在本技术的一个实施例中,物品陈列装置100还包括显示屏。物品陈列装置100通过图形处理器,显示屏,以及应用处理器等实现显示功能。图形处理器为图像处理的微处理器,连接显示屏和应用处理器。图形处理器用于执行数学和几何计算,用于图形渲染。处理器可包括一个或多个图形处理器,其执行程序指令以生成或改变显示信息。
120.显示屏用于显示图像,视频等。显示屏包括显示面板。显示面板可以采用液晶显示屏,有机发光二极管,有源矩阵有机发光二极体或主动矩阵有机发光二极体,柔性发光二极管,量子点发光二极管等。在一些实施例中,物品陈列装置100可以包括一个或多个显示屏。
121.可以理解的是,本技术实施例示意的结构并不构成对物品陈列装置100的具体限定。在本技术另一些实施例中,物品陈列装置100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
122.图4示出根据本公开的实施例的物品识别方法的流程图,如图4所示,该物品识别方法包括以下步骤401至步骤405:
123.在步骤401中,获取用户更新物品陈列时的目标视频的起始帧和结束帧,该起始帧包括用户未开始更新物品陈列时货架的陈列信息,该结束帧包括用户已完成更新物品陈列时货架的陈列信息。
124.在步骤402中,根据预设的目标检测模型分别获取该起始帧和该结束帧中目标物体的坐标信息;该目标物体至少包括货架上陈列的物品。
125.在步骤403中,根据该起始帧和该结束帧中目标物体的坐标信息,依次确定该起始帧和该结束帧中相同位置的目标物体是否匹配。
126.在步骤404中,若该起始帧和该结束帧中存在参考位置的目标物体不匹配的情况,则确认在用户更新物品陈列前后该参考位置的目标物体出现变动。
127.示例的,本公开实施例以无人售货机为例进行说明,可以将摄像头设置在无人售货机的柜门内侧的门把手上,当用户开启柜门时,该摄像头开启,同时开始采集货架方向的图像信息形成该用户的目标视频。
128.待用户购物完成或者在目标视频的录制过程中,即可获取该目标视频的起始帧和结束帧,即获取用户尚未拿取所需物品时的视频帧作为起始帧,该起始帧为用户尚未拿取所需物品时货架的图像信息,包括用户未开始更新物品陈列时货架的陈列信息;以及获取用户已经拿取完物品时的视频帧作为结束帧,该结束帧为用户已经拿取完物品时的图像信息,包括用户已完成更新物品陈列时货架的陈列信息。通过比较该起始帧与结束帧的差异,即可确定用户购买的物品类型和\或数量(不同货道上拿取的物品数量),实现对物品陈列的动态监控,同时可以根据获取到的售卖记录更新所记录的该物品的库存,达到了对物品库存实时监控的目的。
129.具体的,可以预先设置目标检测模型,该目标检测模型可以识别货架的图像信息中所有目标物体的坐标信息。当无人售货机获取到目标视频的起始帧和结束帧之后,可以分别将该起始帧和结束帧输入至预设的目标检测模型,该目标检测模型即可输出该起始帧和结束帧包括的所有目标物体的坐标信息,例如,该起始帧和结束帧上每个货道放置的物品的坐标信息,实际应用中,还可以通过该目标检测模型识别该起始帧和结束帧包括的货
架的隔架的坐标信息,空货道的坐标信息,以及购买物品时用户肢体的坐标信息,例如,该肢体可以为用户的手部。根据上述隔架的坐标信息,空货道的坐标信息,以及用户肢体的坐标信息,可以辅助定位每个货道放置的物品的坐标信息,使得该目标检测模型识别到的物品的坐标信息更精确。
130.根据该起始帧和结束帧包括的所有目标物体的坐标信息,依次确定该起始帧和该结束帧中相同位置的目标物体是否匹配,即确定该起始帧和该结束帧中在同一隔架的同一货道上放置的物品是否匹配,以参考位置为例,该参考位置为起始帧和结束帧中的任意位置,即任意一个隔架以及该隔架上的任意一个货道。若参考位置上的目标物体匹配,则说明该参考位置上的物品没有被售卖;若不匹配,即用户在更新物品陈列前后该参考位置可能放置的物品不同,或者起始帧中该参考位置放置有物品,结束帧中该参考位置变为空货道,说明用户购物前或购物后该该参考位置上的物品出现变动,即该货道上之前的物品已经被售卖。此时无人售货机即可根据起始帧中该隔架该货道上的物品更新该物品的库存信息。
131.需要说明的是,本公开实施例仅以无人售货机为例进行说明,可以理解在其他物品陈列装置上也可以实施本技术的方法,只需要将摄像图设置在合适的可以监控货架阵列信息的位置即可。
132.示例的,在对目标视频的起始帧和结束帧进行识别之前,还需要预先通过训练得到该目标检测模型。具体的,可以预先获取多个训练图像,该训练图像中可能包括货架的阵列信息以及用户在更新物品陈列时的肢体信息,且该多个训练图像包括的阵列信息或者用户的肢体信息不完全相同,即该多个训练图像可以反映货架在多个角度、多个时间的图像信息。然后分别标注每个训练图像中目标物体的边界框,获取标注后多个训练图像,即采用预选框标注出每个训练图像中目标物体的边界,例如,分别标注每个训练图像中隔架的边界框,物品的边界框,空货道的边界框,用户肢体的边界框等。接着对该标注后多个训练图像进行图像增强,获取增强后多个训练图像,最后即可根据该增强后多个训练图像通过目标检测框架训练模型,获取该目标检测模型。
133.例如,可以截取多个目标视频中的多个视频帧作为多个训练图像,并对该多个训练图像进行标注,然后采用随机旋转,随机裁剪和mosaic(马赛克)数据增强的方式,改变标注完的数据集中图像的饱和度和明度,或者还可以改变图像的色调,来对训练图像进行增强,同时将训练图像进行等比例缩放以适应网络的输入大小。采用上述增强后训练图像进行模型训练,可以保证模型在光照变化、部分遮挡、几何变化、尺度变化、视角变化等的情况下仍旧能有效识别目标。具体的,为了便于训练,可以将获取到的多个训练图像进行划分,分为训练集和测试集,训练集和测试集各自所占的图像数量的比例为7:3。
134.接着,使用k

means算法对训练集包括的多个训练图像进行聚类,为每个目标物体确定多个,例如九个不同的符合待检测的目标物体尺度特点的边界框尺寸(由于不同的训练图像可能为不同角度不同距离拍摄的货架的图像,因此同意目标物体在不同的训练图像上的边界框大小不一样,这里指的是根据该多个训练图像,为同一个目标物体确定多个符合其尺度特点的来自于不同角度不同距离拍摄的图像上的边界框)。可选的,可以目标检测框架(yolov5)对训练集进行训练,为了达到良好的训练效果,可以在原有的yolov5基础上修改网络结构,将backbone(主干网络)的最后一个cspnet(cross stage partial networks,跨阶段局部网络)结构替换成transformer(变换器)结构,模型的精度上限可以
随着训练集的增长而增长;同时,在模型中添加标签平滑,可以防止防止模型在训练时过于自信地预测标签,改善泛化能力差的问题;还可以引入focal loss(焦点损失)以解决困难样本收敛困难的问题。
135.构建好待训练的模型之后,即可采用该训练集中的多个训练图像通过目标检测框架训练该模型,直到模型不再收敛,即可得到目标检测模型。训练完成之后可以使用前述测试集包括的多个训练图像对该目标检测模型进行测试,以确定其预测精度。
136.具体的,该目标检测模型的输出结果的格式可以为json格式,示例如下:
137.138.[0139][0140]
其中,detail:为一个二维列表,第一维列表表示物品存在于第几个隔架上,第二维表示存在于隔架的横向位置,里面的内容为键值对。
[0141]
sku_code:物品的sku编码。
[0142]
sku_name:物品的sku名称。
[0143]
score:模型推理的得分。
[0144]
location:物品位于图像的坐标位置图片,其中图片的左上角为原点横向为x轴、纵向为y轴,其中top_x为检测到的物品左上角顶点映射到x轴坐标,top_y为检测到的物品左上角顶点映射到y轴坐标,width检测到的物品的宽度,height为检测到的物品的高度。
[0145]
rows:为一个二维列表,第一维为rows(隔架)的数量,第二维里面有五个值,其中:
[0146]
第一个值为识别到的隔架的左上角顶点映射到x轴的位置。
[0147]
第二个值为识别到的隔架的左上角顶点映射到y轴的位置。
[0148]
第三个值为识别到的隔架的右下角顶点映射到x轴的位置。
[0149]
第四个值为识别到的隔架的右下角顶点映射到y轴的位置。
[0150]
第五个值为模型行推理的得分。
[0151]
hands:为一个二维列表,第一维为hands(用户肢体)的数量,第二维里面有五个值,其中:
[0152]
第一个值为识别到的肢体的左上角顶点映射到x轴的位置。
[0153]
第二个值为识别到的肢体的左上角顶点映射到y轴的位置。
[0154]
第三个值为识别到的肢体的右下角顶点映射到x轴的位置。
[0155]
第四个值为识别到的肢体的右下角顶点映射到y轴的位置。
[0156]
第五个值为模型行推理的得分。
[0157]
在一个实施例中,如图5所示,所述步骤402的步骤,即根据预设的目标检测模型分别获取该起始帧和该结束帧中目标物体的坐标信息的步骤,可以通过步骤4021至步骤4024实现:
[0158]
在步骤4021中,根据预设的目标检测模型分别获取该起始帧和该结束帧中每个目标物体的多个边界框,不同的边界框的置信度不同。
[0159]
在步骤4022中,对每个目标物体的多个边界框进行非极大抑制处理,取剩余的至少一个边界框。
[0160]
在步骤4023中,在所述剩余的至少一个边界框中确定置信度最大且超过预定边界阈值的边界框作为对应目标物体的边界框。
[0161]
在步骤4024中,根据每个该目标物体的目标物体的边界框,获取每个该目标物体的坐标信息。
[0162]
示例的,由于训练该目标检测模型时为每一个目标物体设置了多个边界框,因此该目标检测模型可以为同一个目标物体输出多个边界框。同时根据上述目标检测模型的输
出格式可知,目标检测模型可以为每一个目标物体的边界框(由边界框的对角线上的两个顶点的四个坐标信息确定)预测置信度。
[0163]
也就是说,在将获取到的起始帧和结束帧输入至目标检测模型之后,该目标检测模型可以输出该起始帧和结束帧中每个目标物体的多个边界框,且不同的边界框的置信度不同。此时可以对获取到的每个目标物体的多个边界框进行非极大抑制处理,即去掉置信度最大和置信度最小的边界框,然后在剩余的至少一个边界框中确定置信度最大且超过预定边界阈值的边界框作为对应目标物体的边界框,进而根据最终确定的该目标物体的边界框获取每个该目标物体的坐标信息。
[0164]
在一个实施例中,如图6所示,所述步骤402的步骤,即根据预设的目标检测模型分别获取该起始帧和该结束帧中目标物体的坐标信息的步骤,可以通过步骤4025至步骤4027实现:
[0165]
在步骤4025中,根据预设的目标检测模型分别获取该起始帧和该结束帧中多个物品和多个隔架的坐标信息。
[0166]
在步骤4026中,根据该多个物品和多个隔架的坐标信息,获取同一隔架上两个相邻物品之间的距离。
[0167]
在步骤4027中,若该同一隔架上两个相邻物品之间的距离大于或等于预设距离阈值,确定该两个相邻物品之间存在空货道。
[0168]
示例的,实际应用中通过训练该目标检测模型,可以使得该目标检测模型直接输出空货道的坐标信息。同时,还可以通过该目标检测模型识别起始帧和结束帧包括的多个物品和多个隔架的坐标信息,根据该多个物品和多个隔架的坐标信息,获取同一隔架上两个相邻物品之间的距离。若该同一隔架上两个相邻物品之间的距离大于或等于预设距离阈值,确定该两个相邻物品之间存在空货道,此时根据该两个相邻物品之间的距离可以确定其之间存在空货道的数量。具体的,预先设置一个空货道的尺寸阈值,然后确定该两个相邻物品之间的距离与尺寸阈值的倍数关系,将该倍数取整即为空货道的数量,然后即可以根据该两个相邻物品之间的距离以及该尺寸阈值确定该空货道的边界框。若该同一隔架上两个相邻物品之间的距离小于该预设距离阈值,说明该两个相邻物品之间不存在空货道。
[0169]
在一个实施例中,如图7所示,所述步骤401,即获取用户更新物品陈列时的目标视频的起始帧和结束帧的步骤,可以通过步骤4011和步骤4012实现:
[0170]
在步骤4011中,对该用户更新物品陈列时的目标视频中的视频帧依次进行识别,获取物品数量不再变化且隔架未被遮挡的视频帧作为该起始帧。
[0171]
在步骤4012中,获取该用户更新物品陈列时的目标视频中在该起始帧后与该起始帧的相似度满足预设条件的视频帧作为该结束帧。
[0172]
该预设条件可以为小于或等于第一预设相似度阈值,大于或等于第而预设相似度阈值。若某一视频帧与该起始帧的相似度大于第一预设相似度阈值,可以说明该视频帧仍然为用户未购物前的视频帧,可以排除;若某一视频帧与该起始帧的相似度小于第而预设相似度阈值,可以说明该视频帧中可能出现用户肢体遮挡货柜陈列的情况,即为用户正在购物的视频帧,也可以将其排除。
[0173]
示例的,可以采用该目标检测模型对目标视频的每一帧进行识别,从第一个视频帧开始,直到识别出图像中的物品数量不再变化且用户肢体的的横向位置未与隔架发生重
合,则确认得到起始帧。然后从该起始帧开始获取与其相似度小于或等于第一预设相似度阈值,大于或等于第而预设相似度阈值的视频帧作为结束帧。
[0174]
可选的,为了提高效率,在获取到起始帧之后,可以采用该目标检测模型继续进行识别,将用户拿取物品时隔架被遮挡的视频帧全部识别出之后,对该部分视频帧,以及该部分视频帧之前除起始帧之外的视频帧全部排除,然后在剩余的多个视频帧中获取与所述起始帧的相似度最高的视频帧作为所述结束帧。由于剩余多个视频帧中不存在未购物前的视频帧,因此其与起始帧的相似度必然小于第一预设相似度阈值,此时仅需要在该剩余多个视频帧中获取与起始帧的相似度最高的视频帧作为结束帧即可。
[0175]
具体的,可以使用感知哈希算法依次计算剩余的多个视频帧以及起始帧的指纹数据,然后根据该多个视频帧以及起始帧的指纹数据依次计算该剩余的多个视频帧与该起始帧的汉明距离,将该汉明距离最小的视频帧,作为结束帧。具体的,采用感知哈希算法,能够找到最相似的两个视频帧,即两个开门角度最相近的两个视频帧,使得获取视频帧时的干扰最小化
[0176]
在一个实施例中,如图8所示,所述步骤403,即该根据该起始帧和该结束帧中目标物体的坐标信息,依次确定该起始帧和该结束帧中相同位置的目标物体是否匹配的步骤,可以通过步骤4031至步骤4035实现:
[0177]
在步骤4031中,根据该起始帧和该结束帧中目标物体的坐标信息,确定该起始帧和该结束帧中每个该目标物体的感兴趣区域。
[0178]
在步骤4032中,在该起始帧和该结束帧中每个该目标物体的感兴趣区域中识别每个该目标物体的特征点。
[0179]
在步骤4033中,获取该起始帧和该结束帧中相同位置的目标物体的特征点的匹配百分比。
[0180]
在步骤4034中,若该参考位置的该匹配百分比大于或等于预设百分比阈值,确认该起始帧和该结束帧中该参考位置的目标物体匹配。
[0181]
在步骤4035中,若该参考位置的该匹配百分比小于该预设百分比阈值,确认该起始帧和该结束帧中该参考位置的目标物体不匹配。
[0182]
示例的,目标物体的感兴趣区域可以为该目标物体的边界框内的图像区域,或者包括该边界框内图像区域的其他图像区域。具体的,以任意一个目标物体为例,在通过目标检测模型识别起始帧和结束帧中该目标物体的坐标信息之后,可以根据起始帧和结束帧中目标物体的坐标信息确定起始帧和结束帧中目标物体的边界框,进而将起始帧和结束帧中目标物体的边界框种包括的图像区域分别作为起始帧和结束帧中该目标物体的感兴趣区域。
[0183]
在获取到该起始帧和该结束帧中每个该目标物体的感兴趣区域之后,可以采用sift算子对该起始帧和该结束帧中每个目标物体的感兴趣区域进行计算,生成该每个目标物体的特征点。然后依次确定起始帧和结束帧中相同位置的目标物体的关键点的匹配百分比,该匹配百分比为起始帧和结束帧中相同位置上匹配成功特征点数量与结束帧或起始帧中该位置的特征点总数量的比值;或者该匹配百分比为起始帧和结束帧中相同位置上匹配成功特征点数量与结束帧或起始帧中识别出的特征点总数量的比值。具体的,采用sift算法,对尺度缩放、亮度变化保持不变性,对视角变化、噪声等也存在一定程度的稳定性、独特
性、多量性和可扩展性,保证了关键点不会因实际应用中的光照、噪声等因素而变化。
[0184]
若参考位置的目标物体的关键点的匹配百分比大于或等于预设百分比阈值,则确认该参考位置上的目标物体未发生变化,即该目标视频中的物品并非该参考位置的物品。若参考位置的目标物体的关键点的匹配百分比小于预设百分比阈值,则确认该参考位置上的目标物体已发生变化,即该目标视频中的物品为该参考位置的物品。
[0185]
实际应用中,由于图像识别中可能存在误差,因此实际可能会出现起始帧和结束帧中存在多个相同位置的目标物体不匹配的情况,难以确定真实出现物品更新的参考位置。此时,可以通过用户肢体的坐标信息对真实出现物品更新的参考位置进行辅助确定。
[0186]
可选的,可以首先根据预设的目标检测模型获取用户肢体的坐标信息。如果起始帧和结束帧中存在多个相同位置的目标物体不匹配,则可以根据用户肢体的坐标信息在该多个相同位置中确定更新物品陈列前后目标物体出现变动的参考位置。具体的,可以采用目标检测模型识别该目标视频中每一视频帧中用户肢体的坐标信息,例如用户手部处于货架的第几层隔架的隔架位置,以及手部处于该隔架的第几个货道的货道位置,然后将每个视频帧与起始帧进行对比,记录每一层被用户肢体遮挡的物品位置。由于用户肢体在其运动轨迹的折返点的坐标信息与真实出现物品更新的参考位置的坐标信息相同或相近,即用户肢体在折返点遮挡的物品的位置最有可能是用户更新物品陈列的位置,因此可以通过每一视频帧中用户肢体的坐标信息确定用户肢体的移动轨迹,然后将折返点的坐标信息与多个相同位置的坐标信息进行比对,将多个相同位置中与该折返点的坐标信息相同或相近的位置作为真实出现物品更新的参考位置。
[0187]
本技术提供的物品识别方法,该方法可以通过采集的每个用户拿取物品的目标视频动态获取货柜的物品陈列情况,实现对物品陈列的实时监控,以便于运维人员确认用户拿取物品的数量和\或类型,避免恶意用户多次拿取的情况。
[0188]
同时,由于可以获取每次用户拿取的物品数量和类型,因此可以实现对物品库存的实时监控,以便于运维人员在确认库存较小时及时补充库存。并且,运维人员也可以统计最受用户或客户欢迎的物品的种类,便于调整之后对物品陈列的规划。
[0189]
以无人售货机为例,通过无人售货机采集的每个用户购物的目标视频即可动态获取货柜的物品陈列情况,实现对物品陈列的实时监控,以便于运维人员确认用户拿取物品的数量和类型,避免恶意用户多次拿取的情况。
[0190]
同时,由于可以获取每次销售时用户拿取的物品数量和类型,因此可以实现对物品库存的实时监控,以便于运维人员在确认库存较小时及时补充库存,避免出现无人售货机无货可卖的情况,提高了无人售货机的实用性,用户体验较佳。
[0191]
并且,结合上述方法,通过动态监控物品销售可以获取到某一物品的销售数据,然后可推算出该区域消费者的口味偏好,进而告知工厂该区域重点生产种类方向和数量,节约产能,避免浪费。
[0192]
在一个实施例中,目标检测模型可以为通过预先训练获取的。
[0193]
在步骤401之前,物品识别方法还可以包括如下步骤:
[0194]
接收边缘服务器发送的更新权值参数,并根据更新权值参数对私有检测模型进行更新;
[0195]
将货架的历史图像信息作为输入,将历史图像信息中目标物体的坐标信息作为输
出,对更新后的私有检测模型进行训练;
[0196]
当训练后的私有检测模型未收敛时,根据训练后的私有检测模型获取梯度更新矢量,并向边缘服务器发送梯度更新矢量;
[0197]
当训练后的私有检测模型收敛时,根据私有检测模型获取目标检测模型。
[0198]
其中,货架的历史图像信息以及历史图像信息中目标物体的坐标信息,可以为通过读取预先储存在物品陈列装置中的历史图像信息以及与历史图像信息对应的坐标信息来实现。其中,历史图像信息以及与历史图像信息对应的坐标信息可以为物品陈列装置自身采集的,也可以由其他装置或系统针对物品陈列装置进行数据采集并传输至物品陈列装置的。
[0199]
私有检测模型可以为神经网络(neural network,nn)模型、卷积神经网络(convolutional neural networks,cnn)模型或长短期记忆网络(long shorttermmemory,lstm)模型等。
[0200]
边缘服务器用于对梯度更新矢量进行聚合,并根据聚合后的梯度更新矢量对边缘服务器的共有检测模型的权值参数进行更新,以获取更新权值参数。边缘服务器可以是云端服务器,也可以是由物品识别服务提供商提供的服务器。需要说明的是,一个边缘服务器可以对应一个或多个物品识别装置,例如,物品识别服务提供商可以将所管辖的区域分成多块,每一块区域中的多个物品识别装置对应一个边缘服务器。
[0201]
共有检测模型可以为神经网络模型、卷积神经网络模型或长短期记忆网络模型等。
[0202]
本实施例的技术方案中中,由物品陈列装置接收的边缘服务器发送的更新权值参数,是边缘服务器根据多个物品陈列装置发送的梯度更新矢量进行聚合,并根据聚合后的梯度更新矢量对边缘服务器的共有检测模型的权值参数进行更新得到的,因此物品陈列装置上的更新后的私有检测模型能够反映上一轮训练中边缘服务器的共有检测模型所学习到的,货架的历史图像信息与历史图像信息中目标物体的坐标信息之间的共有规律。将货架的历史图像信息作为输入,将历史图像信息中目标物体的坐标信息作为输出,对更新后的私有检测模型进行训练,可以使更新后的私有检测模型在学习到共有规律的基础上,还能够个性化的针对该物品陈列装置自身所采集的数据进行学习,使训练后的私有检测模型能够学习到该物品陈列装置自身的货架的图像信息与该图像信息中目标物体的坐标信息之间的私有规律;当训练后的私有检测模型未收敛时,说明该训练后的私有检测模型仍需要继续训练,通过根据训练后的私有检测模型获取梯度更新矢量,并发送梯度更新矢量,可以使边缘服务器能够继续基于多个物品陈列装置上传的梯度更新矢量获取相应的更新权值参数,从而继续对各个物品陈列装置的私有检测模型继续进行训练;当训练后的私有检测模型收敛时,可以认为该收敛的私有检测模型能够基于货架的图像信息获取较为准确的图像信息中目标物体的坐标信息,可以将该收敛的私有检测模型储存为所述预设的目标检测模型。在这一技术方案中,一方面目标检测模型可以为即学习到共有规律,又学习到私有规律的模型,根据其获取的目标物体的坐标信息较为准确;另一方面由于对各个物品陈列装置的私有检测模型继续进行训练的过程由物品陈列装置来执行,与仅有服务器对检测模型进行训练相比较,在服务器端所需的处理资源较少,训练速度较快。
[0203]
在一个实施例中,在接收边缘服务器发送的更新权值参数之前,物品识别方法还
可以包括如下步骤:
[0204]
接收私有数据上传指令;响应于私有数据上传指令,发送目标时间区间内货架的历史图像信息与目标时间区间内的历史图像信息中目标物体的坐标信息;接收边缘服务器发送的初始权值参数;根据初始权值参数对初始检测模型进行更新,以获取私有检测模型。
[0205]
其中,目标时间区间可以为预先设定的,例如可以预先将收到私有数据上传指令的前一天的下午6:00至下午6:30设定为目标时间区间。目标时间区间也可以为根据其他装置或系统发送的目标时间区间设置指令确定。
[0206]
初始检测模型可以为神经网络模型、卷积神经网络模型或长短期记忆网络模型等,初始检测模型可以理解为未经过训练的检测模型。
[0207]
在该实施方式中,通过接收私有数据上传指令,并响应于私有数据上传指令,发送目标时间区间内货架的历史图像信息与目标时间区间内的历史图像信息中目标物体的坐标信息,可以使边缘服务器基于根据该目标时间区间内较少的信息(即货架的历史图像信息以及历史图像信息中目标物体的坐标信息)对自身的初始检测模型进行初步训练,得到共有检测模型,此时该共有检测模型可以理解为对多个物品陈列装置中图像信息与图像信息中目标物体的坐标信息的共有规律进行了初步学习后的模型。之后边缘服务器将基于该共有检测模型获取的初始权值参数向物品阵列装置发送,使物品陈列装置根据该初始权值参数对初始检测模型进行更新,以获取私有检测模型,私有检测模型此时可以理解为与边缘服务器上的共有检测模型学习到相同规律的模型,即此时该私有检测模型是对多个物品陈列装置中的图像信息以及图像信息中目标物体的坐标信息的共有规律进行了初步学习后的模型,从而方便之后对私有检测模型进行多轮的训练,无需基于初始检测模型进行训练,降低了训练的难度。
[0208]
图9示出根据本公开的实施例的物品陈列装置的结构框图。其中,该装置可以通过软件、硬件或者两者的结合实现成为电子设备的部分或者全部。
[0209]
如图9所示,所述物品陈列装置900包括视频获取模块901、坐标获取模块902、确定模块903和确认模块904。
[0210]
其中,视频获取模块901,被配置为获取用户更新物品陈列时的目标视频的起始帧和结束帧,所述起始帧包括用户未开始更新物品陈列时货架的陈列信息,所述结束帧包括用户已完成更新物品陈列时货架的陈列信息。
[0211]
坐标获取模块902,被配置为根据预设的目标检测模型分别获取所述起始帧和所述结束帧中目标物体的坐标信息;所述目标物体至少包括货架上陈列的物品。
[0212]
确定模块903,被配置为根据所述起始帧和所述结束帧中目标物体的坐标信息,依次确定所述起始帧和所述结束帧中相同位置的目标物体是否匹配。
[0213]
确认模块904,被配置为若所述起始帧和所述结束帧中存在参考位置的目标物体不匹配的情况,则确认在用户更新物品陈列前后所述参考位置的目标物体出现变动。
[0214]
可选的,所述坐标获取模块902还被配置为根据预设的目标检测模型分别获取所述起始帧和所述结束帧中每个目标物体的多个边界框,不同的边界框的置信度不同;对每个目标物体的多个边界框进行非极大抑制处理,获取剩余的至少一个边界框;在所述剩余的至少一个边界框中确定置信度最大且超过预定边界阈值的边界框作为对应目标物体的边界框;根据每个所述目标物体的目标物体的边界框,获取每个所述目标物体的坐标信息。
[0215]
可选的,所述坐标获取模块902还被配置为根据预设的目标检测模型分别获取所述起始帧和所述结束帧中多个物品和多个隔架的坐标信息;根据所述多个物品和多个隔架的坐标信息,获取同一隔架上两个相邻物品之间的距离;若所述同一隔架上两个相邻物品之间的距离大于或等于预设距离阈值,确定所述两个相邻物品之间存在空货道。
[0216]
可选的,所述视频获取模块901还被配置为对所述目标视频中的视频帧依次进行识别,获取物品数量不再变化且隔架未被遮挡的视频帧作为所述起始帧;获取所述目标视频中在所述起始帧后与所述起始帧的相似度满足预设条件的视频帧作为所述结束帧。
[0217]
可选的,所述视频获取模块901还被配置为剔除所述目标视频中在所述起始帧后隔架被遮挡的视频帧;从剩余的多个视频帧中获取与所述起始帧的相似度最高的视频帧作为所述结束帧。
[0218]
可选的,所述视频获取模块901还被配置为从剩余的多个视频帧中获取与所述起始帧的汉明距离最小的视频帧作为所述结束帧。
[0219]
可选的,所述确定模块903,被配置为根据所述起始帧和所述结束帧中目标物体的坐标信息,确定所述起始帧和所述结束帧中每个所述目标物体的感兴趣区域;在所述起始帧和所述结束帧中每个所述目标物体的感兴趣区域中识别每个所述目标物体的特征点;获取所述起始帧和所述结束帧中相同位置的目标物体的特征点的匹配百分比;若所述参考位置的所述匹配百分比大于或等于预设百分比阈值,确认所述起始帧和所述结束帧中所述参考位置的目标物体匹配;若所述参考位置的所述匹配百分比小于所述预设百分比阈值,确认所述起始帧和所述结束帧中所述参考位置的目标物体不匹配。
[0220]
可选的,如图10所示,所述装置900还包括图像获取模块905,图像标注模块906,图像增强模块907和模型训练模块908。
[0221]
其中,图像获取模块905,被配置为获取包括货架陈列信息的多个训练图像,所述多个训练图像包括的货架的陈列信息不完全相同。
[0222]
图像标注模块906,被配置为分别标注每个训练图像中目标物体的边界框,获取标注后多个训练图像。
[0223]
图像增强模块907,被配置为对所述标注后多个训练图像进行图像增强,获取增强后多个训练图像。
[0224]
模型训练模块908,被配置为根据所述增强后多个训练图像通过目标检测框架训练模型,获取所述目标检测模型。
[0225]
可选的,所述坐标获取模块902还被配置为根据预设的目标检测模型获取用户肢体的坐标信息;所述确定模块903还被配置为若所述起始帧和所述结束帧中存在多个相同位置的目标物体不匹配,根据所述用户肢体的坐标信息在所述多个相同位置中确定更新物品陈列前后目标物体出现变动的所述参考位置。
[0226]
本技术提供的物品陈列装置,该装置可以通过采集的每个用户拿取物品的目标视频动态获取货柜的物品陈列情况,实现对物品陈列的实时监控,以便于运维人员确认用户拿取物品的数量和\或类型,避免恶意用户多次拿取的情况。
[0227]
同时,由于可以获取每次用户拿取的物品数量和类型,因此可以实现对物品库存的实时监控,以便于运维人员在确认库存较小时及时补充库存。并且,运维人员也可以统计最受用户或客户欢迎的物品的种类,便于调整之后对物品陈列的规划。
[0228]
本公开还公开了一种电子设备,图11示出根据本公开的实施例的电子设备的结构框图。
[0229]
如图11所示,所述电子设备1100包括存储器1101和处理器1102,其中,存储器1101用于存储一条或多条计算机指令,其中,所述一条或多条计算机指令被所述处理器1102执行以实现根据本公开的实施例的方法。
[0230]
具体地,所述物品识别方法,包括:
[0231]
获取用户更新物品陈列时的目标视频的起始帧和结束帧,所述起始帧包括用户未开始更新物品陈列时货架的陈列信息,所述结束帧包括用户已完成更新物品陈列时货架的陈列信息;
[0232]
根据预设的目标检测模型分别获取所述起始帧和所述结束帧中目标物体的坐标信息;所述目标物体至少包括货架上陈列的物品;
[0233]
根据所述起始帧和所述结束帧中目标物体的坐标信息,依次确定所述起始帧和所述结束帧中相同位置的目标物体是否匹配;
[0234]
若所述起始帧和所述结束帧中存在参考位置的目标物体不匹配的情况,则确认在用户更新物品陈列前后所述参考位置的目标物体出现变动。
[0235]
可选的,所述根据预设的目标检测模型分别获取所述起始帧和所述结束帧中目标物体的坐标信息包括:
[0236]
根据预设的目标检测模型分别获取所述起始帧和所述结束帧中每个目标物体的多个边界框,不同的边界框的置信度不同;
[0237]
对每个目标物体的多个边界框进行非极大抑制处理,获取剩余的至少一个边界框;
[0238]
在所述剩余的至少一个边界框中确定置信度最大且超过预定边界阈值的边界框作为对应目标物体的边界框;
[0239]
根据每个所述目标物体的目标物体的边界框,获取每个所述目标物体的坐标信息。
[0240]
可选的,所述根据预设的目标检测模型分别获取所述起始帧和所述结束帧中目标物体的坐标信息包括:
[0241]
根据预设的目标检测模型分别获取所述起始帧和所述结束帧中多个物品和多个隔架的坐标信息;
[0242]
根据所述多个物品和多个隔架的坐标信息,获取同一隔架上两个相邻物品之间的距离;
[0243]
若所述同一隔架上两个相邻物品之间的距离大于或等于预设距离阈值,确定所述两个相邻物品之间存在空货道。
[0244]
可选的,所述获取用户更新物品陈列时的目标视频的起始帧和结束帧包括:
[0245]
对所述目标视频中的视频帧依次进行识别,获取物品数量不再变化且隔架未被遮挡的视频帧作为所述起始帧;
[0246]
获取所述目标视频中在所述起始帧后与所述起始帧的相似度满足预设条件的视频帧作为所述结束帧。
[0247]
可选的,所述获取所述目标视频中在所述起始帧后与所述起始帧的相似度满足预
设条件的视频帧作为所述结束帧包括:
[0248]
剔除所述目标视频中在所述起始帧后隔架被遮挡的视频帧;
[0249]
从剩余的多个视频帧中获取与所述起始帧的相似度最高的视频帧作为所述结束帧。
[0250]
可选的,所述从剩余的多个视频帧中获取与所述起始帧的相似度最高的视频帧作为所述结束帧包括:
[0251]
从剩余的多个视频帧中获取与所述起始帧的汉明距离最小的视频帧作为所述结束帧。
[0252]
可选的,所述根据所述起始帧和所述结束帧中目标物体的坐标信息,依次确定所述起始帧和所述结束帧中相同位置的目标物体是否匹配包括:
[0253]
根据所述起始帧和所述结束帧中目标物体的坐标信息,确定所述起始帧和所述结束帧中每个所述目标物体的感兴趣区域;
[0254]
在所述起始帧和所述结束帧中每个所述目标物体的感兴趣区域中识别每个所述目标物体的特征点;
[0255]
获取所述起始帧和所述结束帧中相同位置的目标物体的特征点的匹配百分比;
[0256]
若所述参考位置的所述匹配百分比大于或等于预设百分比阈值,确认所述起始帧和所述结束帧中所述参考位置的目标物体匹配;
[0257]
若所述参考位置的所述匹配百分比小于所述预设百分比阈值,确认所述起始帧和所述结束帧中所述参考位置的目标物体不匹配。
[0258]
可选的,所述方法还包括:
[0259]
获取包括货架陈列信息的多个训练图像,所述多个训练图像包括的所述货架的陈列信息不完全相同;
[0260]
分别标注每个训练图像中目标物体的边界框,获取标注后多个训练图像;
[0261]
对所述标注后多个训练图像进行图像增强,获取增强后多个训练图像;
[0262]
根据所述增强后多个训练图像通过目标检测框架训练模型,获取所述目标检测模型。
[0263]
可选的,所述方法还包括:
[0264]
根据预设的目标检测模型获取用户肢体的坐标信息;
[0265]
若所述起始帧和所述结束帧中存在多个相同位置的目标物体不匹配,根据所述用户肢体的坐标信息在所述多个相同位置中确定更新物品陈列前后目标物体出现变动的所述参考位置。
[0266]
图12示出适于用来实现根据本公开实施例的方法的计算机系统的结构示意图。
[0267]
如图12所示,计算机系统1200包括处理单元1201,其可以根据存储在只读存储器(rom)1202中的程序或者从存储部分1208加载到随机访问存储器(ram)1203中的程序而执行上述实施例中的各种方法。在ram 1203中,还存储有系统1200操作所需的各种程序和数据。处理单元1201、rom 1202以及ram 1203通过总线1204彼此相连。输入/输出(i/o)接口1205也连接至总线1204。
[0268]
以下部件连接至i/o接口1205:包括键盘、鼠标等的输入部分1206;包括诸如阴极射线管(crt)、液晶显示器(lcd)等以及扬声器等的输出部分1207;包括硬盘等的存储部分
1208;以及包括诸如lan卡、调制解调器等的网络接口卡的通信部分1209。通信部分1209经由诸如因特网的网络执行通信过程。驱动器1210也根据需要连接至i/o接口1205。可拆卸介质1211,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1210上,以便于从其上读出的计算机程序根据需要被安装入存储部分1208。其中,所述处理单元1201可实现为cpu、gpu、tpu、fpga、npu等处理单元。
[0269]
特别地,根据本公开的实施例,上文描述的方法可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括有形地包含在机器可读介质上的计算机程序,所述计算机程序包含用于执行上述方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1209从网络上被下载和安装,和/或从可拆卸介质1211被安装。
[0270]
另外,本公开还提供了一种计算机程序产品,该计算机程序产品中存储有计算机程序,当所述计算机程序被处理器执行时,使所述处理器至少可以实现如前述实施例中提供的方法。
[0271]
附图中的流程图和框图,图示了按照本公开各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
[0272]
描述于本公开实施例中所涉及到的单元或模块可以通过软件的方式实现,也可以通过可编程硬件的方式来实现。所描述的单元或模块也可以设置在处理器中,这些单元或模块的名称在某种情况下并不构成对该单元或模块本身的限定。
[0273]
作为另一方面,本公开还提供了一种计算机可读存储介质,该计算机可读存储介质可以是上述实施例中电子设备或计算机系统中所包含的计算机可读存储介质;也可以是单独存在,未装配入设备中的计算机可读存储介质。计算机可读存储介质存储有一个或者一个以上程序,所述程序被一个或者一个以上的处理器用来执行描述于本公开的方法。
[0274]
以上描述仅为本公开的较佳实施例以及对所运用技术原理的说明。本领域技术人员应当理解,本公开中所涉及的发明范围,并不限于上述技术特征的特定组合而成的技术方案,同时也应涵盖在不脱离所述发明构思的情况下,由上述技术特征或其等同特征进行任意组合而形成的其它技术方案。例如上述特征与本公开中公开的(但不限于)具有类似功能的技术特征进行互相替换而形成的技术方案。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献