一种图片识别方法及装置与流程

文档序号:27315175发布日期:2021-11-09 23:44阅读:202来源:国知局
一种图片识别方法及装置与流程

1.本发明实施例涉及计算机视觉技术领域,尤其涉及一种图片识别方法、装置、计算设备及计算机可读存储介质。


背景技术:

2.近年来,随着深度学习技术的快速发展,市面上出现了很多有别于传统自动售货机的智能售货机,该种智能售货机是深度学习技术在计算机视觉上的应用。图1a中示出了一种智能售货机,分为4

5层货架,每层高度可相等或不等,用来放置零售商品。每一层顶部设置有一个摄像头,用于拍摄这一层的商品,为了使摄像头尽量完整地拍摄到该层所有位置的商品,因此需要把摄像头安装在每层货架的顶部并居中,拍摄到的照片如图1b所示。通过使用目标检测算法对每次打开

关闭柜门前后拍摄的图片进行目标检测,比较打开

关闭柜门前后各种类型的商品个数变化,从而确定用户购买的商品种类和个数,自动结算扣款金额。例如,在检测到用户关闭柜门时,摄像头拍摄商品图片,使用目标检测算法确定该层现有矿泉水5瓶,果汁2瓶。又通过对用户打开柜门前拍摄的图片进行目标检测,确定有矿泉水4瓶,果汁1瓶,则可知用户买走1瓶矿泉水和1瓶果汁,如此可在智能售货机的显示屏显示1瓶矿泉水和1瓶果汁对应的价格,以便用户付款。
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.图1a为本发明实施例提供的一种智能售货机的示意图;
66.图1b为本发明实施例提供的一种摄像头拍摄到的智能售货机内商品的示意图;
67.图2为本发明实施例提供的一种图片识别方法的流程示意图;
68.图3a为本发明实施例提供的一种可能的对第一图片进行对象识别的过程;
69.图3b为本发明实施例提供的一种可能的对第二图片进行对象识别后得到的各第二检测框的示意图;
70.图3c为本发明实施例提供的一种可能的确定位置重叠区域的示意图;
71.图4为本发明实施例提供的一种图片识别方法的流程示意图;
72.图5为本发明实施例提供的一种根据第三异常框的位置信息在第二图片中确定虚拟框的示意图;
73.图6为本发明实施例提供的一种图片识别方法的流程示意图;
74.图7为本发明实施例提供的一种图片识别装置的结构示意图;
75.图8为本发明实施例提供的一种计算机设备。
具体实施方式
76.为使本技术的目的、实施方式和优点更加清楚,下面将结合本技术示例性实施例中的附图,对本技术示例性实施方式进行清楚、完整地描述,显然,所描述的示例性实施例仅是本技术一部分实施例,而不是全部的实施例。
77.基于本技术描述的示例性实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本技术所附权利要求保护的范围。此外,虽然本技术中公开内容按照示范性一个或几个实例来介绍,但应理解,可以就这些公开内容的各个方面也可以单独构成一个完整实施方式。
78.需要说明的是,本技术中对于术语的简要说明,仅是为了方便理解接下来描述的实施方式,而不是意图限定本技术的实施方式。除非另有说明,这些术语应当按照其普通和通常的含义理解。
79.本技术中说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”等是用于区别类似或同类的对象或实体,而不必然意味着限定特定的顺序或先后次序,除非另外注明(unless otherwise indicated)。应该理解这样使用的用语在适当情况下可以互换,例如能够根据本技术实施例图示或描述中给出那些以外的顺序实施。
80.此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖但不排他的包含,例如,包含了一系列组件的产品或设备不必限于清楚地列出的那些组件,而是可包括没有清楚地列出的或对于这些产品或设备固有的其它组件。
81.用户在打开

关闭柜门过程中,取走想要购买的商品,但是智能售货机可能由于对用户打开

关闭柜门前后的图片识别错误,导致对用户购买商品的判断出现错误,从而为用户显示了错误的扣款金额。本发明实施例通过分析智能售货机可能出现识别错误的原因,针对性地提出了纠正识别错误的方法,从而提高了图片识别的准确性,为用户提供良好的
购物体验。
82.本发明实施例提供的方法的执行主体可以是服务器,也可以是各种智能设备上如智能售货机,智能冰箱等。服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(content delivery network,cdn)、以及大数据和人工智能平台等基础云计算服务的云服务器。
83.图2示例性的示出了本发明实施例提供的一种图片识别方法,包括:
84.步骤201,将第一时刻获取的第一图片进行对象识别,得到处于不同位置的各第一检测框和对应的各第一识别结果。
85.步骤202,将第二时刻获取的第二图片进行对象识别,得到处于不同位置的各第二检测框和对应的各第二识别结果。
86.步骤203,针对任一第一检测框,若根据各第一检测框与各第二检测框的位置信息,确定与任一第二检测框具有位置匹配关系,则将具有位置匹配关系的第一检测框和第二检测框分别确定为第一异常框和第二异常框。
87.步骤204,确定第一异常框与第二异常框的位置重叠区域;确定位置重叠区域在第一图片中对应的第一子图与在第二图片中对应的第二子图之间的第一相似度;若第一相似度满足第一设定条件,则将第二异常框的第二识别结果更新为第一异常框的第一识别结果。
88.在步骤201中,获取第一图片进行对象识别,得到处于不同位置的各第一检测框和对应的各第一识别结果。图3a示出了一种可能的对第一图片进行对象识别的过程,如图3a所示,智能售货机内置的摄像装置拍摄的第一图片如左图,圆形表示各个种类的商品,各个商品之间画有虚线是为了方便读者在后续理解商品的移动情况。对第一图片进行对象识别,可以得到处于不同位置的各第一检测框和对应的各第一识别结果,如右图所示,可以看到,此时显示智能售货机该层货架内有类别为a、b、c、d、e、f、g、h和i的商品,个数分别为1。
89.进行对象识别的方法可以采用各种方法,例如one

stage检测器和two

stage检测器等,本发明实施例对此不作限制。
90.在步骤202中,获取第二图片进行对象识别,进行对象识别的方法与步骤201相同,此处不再赘述。
91.第一图片和第二图片分别为不同时刻对智能售货机内的商品进行拍摄得到的图片,对二者的拍摄时刻不作限制,步骤201和步骤202的执行顺序也可以进行调换,也可同时进行,本发明实施例对此不作限制。
92.例如当智能售货机检测到柜门被打开后又被关闭,则启动智能售货机内的摄像装置进行拍摄,获得第一图片,对第一图片进行对象识别得到各第一检测框和各第一识别结果。然后获取上一次检测到柜门被打开后又被关闭时拍摄的第二图片,对第二图片进行对象识别,得到各第二检测框和各第二识别结果;也可以是,在对拍到的每张图片进行对象识别后得到检测框和识别结果后,均保存检测框和识别结果,那么在对第一图片进行对象识别得到各第一检测框和各第一识别结果,直接调取各第二检测框和各第二识别结果。以上仅为示例,本发明实施例对此不作限制。
93.对第二图片进行对象识别后得到的各第二检测框如图3b所示。为了方便介绍本方
案,假设用户此次打开

关闭柜门的过程中并未拿走任何商品,即第二图片中的商品种类和个数与第一图片中的商品种类和个数相同,但是两次的识别结果出现了错误。
94.请结合图3a右图和图3b,出现错误的情况可能有如下3种:1、商品并未移动或移动很小,但是检测框的位置发生了变化,导致识别成了另一种商品,例如第一图片中的商品d在第二图片中被识别为商品j;2、商品并未移动或移动很小,但是,在对第二图片的识别中,没有被识别出来,例如第一图片中的商品e在第二图片中没有被识别出来;3、商品发生了少量的位移,导致在对象识别中识别成了另一种商品,例如第一图片中的商品f、g、h、i,在第二图片中分别被识别成了商品k、l、m、n。
95.下面针对以上三种可能出现的情况,本发明实施例针对性地提出解决方案。
96.步骤203和步骤204中提出的方法可以对情况1中出现的问题做出有效的解决。
97.在步骤203中,根据各第一检测框和各第二检测框的位置信息,确定具有位置匹配关系的第一检测框和第二检测框分别为第一异常框和第二异常框。由于用户在打开

关闭柜门拿走商品的过程中,很少会将货架上的商品挪动较大的位置,因此根据这一特质,可以先将位置相近的第一检测框和第二检测框确定为具有位置匹配关系的两个框,这两个框是同一个商品的概率很大。如此,可以在后续的计算中减少计算量,且提高了确定是否为同一商品的准确率。
98.具体的,本发明实施例提供如下两种确定具有位置匹配关系的第一检测框和第二检测框的方法。
99.方式一
100.确定多个第一检测框在第一图片的第一位置;确定多个第二检测框在第二图片的第二位置;针对任一第一检测框,确定第一检测框与任一第二检测框的位置重叠区域,若位置重叠区域满足第三设定条件,则确定第一检测框与第二检测框具有位置匹配关系。
101.结合图3a右图和图3b,在同一个坐标系下,分别确定第一图片中各第一检测框的坐标和第二图片中各第二检测框的坐标。按照从上至下,从左至右的顺序为检测框编号,针对第一图片中的第1个检测框,左上角和右下角的坐标分别为(100,1100),(300,900),将第二图片中的各第二检测框的坐标与第一图片中的第1个检测框的坐标进行比较,若第三设定条件为位置重叠区域的比例占二者并集的90%以上,则确定位置重叠区域满足第三设定条件的第二检测框为第二图片中的第1个检测框,以此类推,可得第一图片中的第1个检测框和第二图片中的第1个检测框具有位置匹配关系,第一图片中的第2个检测框和第二图片中的第2个检测框具有位置匹配关系,第一图片中的第4个检测框和第二图片中的第4个检测框具有位置匹配关系,第一图片中的第5个检测框和第二图片中的第5个检测框具有位置匹配关系,第一图片中的第3个检测框和第二图片中的任一检测框不具有位置匹配关系,第一图片中的第6个检测框和第二图片中的任一检测框不具有位置匹配关系,第一图片中的第7个检测框和第二图片中的任一检测框不具有位置匹配关系,第一图片中的第8个检测框和第二图片中的任一检测框不具有位置匹配关系,第一图片中的第9个检测框和第二图片中的任一个检测框不具有位置匹配关系。以上仅为示例,若将第三设定条件设置为位置重叠区域的比例占二者并集的60%以上,则具有位置匹配关系的第一检测框和第二检测框的数目会更多。当然,第三设定条件设定的越苛刻,则具有位置匹配关系的第一检测框和第二检测框会更少,在本步骤的计算量会减小,但也可能会导致遗漏一些商品没有移动,但是检
测框移动太多的情况,不过若存在遗漏计算,之后的步骤可以弥补。本领域技术人员可根据需要对第三设定条件进行设置。
102.方式二
103.可以不获取各第一检测框和各第二检测框的坐标,将第一图片和第二图片叠加在一起,提取位置重叠区域满足设定条件的第一检测框和第二检测框为具有位置匹配关系的检测框,采用此种方法无需将各个第二检测框的坐标均一一与第一检测框比对,可直接确定具有位置匹配关系的第一检测框和第二检测框。
104.为了方便描述,将具有位置匹配关系的第一检测框和第二检测框分别确定为第一异常框和第二异常框。
105.在步骤204中,确定第一异常框和第二异常框的位置重叠区域。以第一图片的第1个检测框和第二图片的第1个检测框为例,在步骤203中,确定了第一异常框的左上角和右下角的坐标分别为(100,1100),(300,900),第二异常框的左上角和右下角的坐标分别为(110,1100),(310,900),则位置重叠区域的左上角和右下角的坐标分别为(110,1100),(300,900)。
106.然后确定第一图片中在该位置重叠区域的第一子图,和第二图片中在该位置重叠区域的第二子图,例如在上述例子中,在第一图片中确定了位置重叠区域的第一子图如图3c左图所示,位置重叠区域用斜线阴影部分表示,在第二图片中确定了位置重叠区域的第二子图如图3c右图所示,位置重叠区域用斜线阴影部分表示。
107.确定第一子图和第二子图的第一相似度,确定相似度的方法有很多,例如通过mse(mean squared error,均方误差),ssim(structural similarity index,结构相似性)以及psnr(peak signal to noise ratio,峰值信噪比)的方法均可确定两张图片的相似度。若商品没有发生移动,或者移动较小时,第一子图和第二子图的相似度会很高。
108.若第一相似度满足第一设定条件,则可确定第一异常框和第二异常框圈出的是同一个商品。若此时第一识别结果和第二识别结果相同,则第二识别结果不变,若第一识别结果和第二识别结果不同,则将第二异常框的第二识别结果更新为第一异常框的第一识别结果。在上述例子中,第一异常框和第二异常框的识别结果均为商品a,因此识别相同。以此类推,可以对具有位置匹配关系的第一图片中的第2个检测框和第二图片中的第2个检测框、第一图片中的第4个检测框和第二图片中的第4个检测框、第一图片中的第5个检测框和第二图片中的第5个检测框均执行上述操作。那么针对第一图片中的第5个检测框和第二图片中的第5个检测框而言,第一相似度符合第一设定条件,但是识别结果不同,因此将第二图片中的商品j更新为商品d。
109.可选地,可以在确定位置匹配关系后,先确定具有位置匹配关系的两个检测框的识别结果为不同,再根据二者的位置重叠区域确定第一相似度是否符合第一设定条件,从而可以直接更新识别结果。以上仅为示例,本发明实施例对此不作限制。
110.由于在用户打开

关闭柜门前后,可能会出现商品并未发生移动,或者移动较小,但是目标检测算法在第一图片和第二图片中将商品识别为不同的类别的情况,因此需要将第二图片中该商品的识别结果变更为第一图片中该商品的识别结果。具体为,通过第一检测框和第二检测框的位置信息,可以确定具有位置匹配关系的第一检测框和第二检测框,那么可以根据位置信息为第一检测框初步确定一个最有可能是相同商品的第二检测框,即
得到第一异常框和第二异常框。然后根据第一异常框和第二异常框的位置重叠区域确定第一子图和第二子图,其中第一子图为位置重叠区域在第一图片中的图像,第二子图为位置重叠区域在第二图片中的图像。由于商品的位置移动不大,因此若为同一个商品的话,那么第一子图和第二子图的第一相似度是很高的。因此通过第一子图与第二子图的第一相似度是否满足第一设定条件来确定第一异常框在第一图片中圈出的商品和第二异常框在第二图片中圈出的商品是否为同一商品。若第一相似度符合第一设定条件,则说明为同一商品,那么将第二异常框的识别结果更改为第一异常框的识别结果,如此,可以保证对于同一个商品而言,第一图片和第二图片的识别结果是一致的,那么就可以避免计算错用户的支付金额,从而带给用户更好的体验。
111.针对情况2出现的问题,可以采用如下方式解决。如图4所示,包括:
112.步骤401,针对任一第一检测框,若根据所述各第一检测框与所述各第二检测框的位置信息,不能确定具有位置匹配关系的任一第二检测框,则将不具有位置匹配关系的第一检测框确定为第三异常框;根据所述第三异常框的位置信息在所述第二图片中确定虚拟框。
113.步骤402,针对任一第三异常框,确定所述第三异常框在所述第一图片中对应的第三子图与所述虚拟框在所述第二图片中对应的第四子图的第二相似度;若所述第二相似度满足第二设定条件,则将所述第三异常框的第一识别结果确定为所述虚拟框的识别结果。
114.结合图3a右图和图3b,通过步骤203确定出了具有位置匹配关系的第一检测框和第二检测框,针对任一第一检测框,若没有与之具有位置匹配关系的第二检测框,则将该第一检测框确定为第三异常框。
115.例如,若确定第一图片中的第3、6、7、8和9个检测框与第二图片中的任一检测框不具有位置匹配关系,则可将第3、6、7、8和9个检测框确定为第三异常框,根据各第三异常框的位置信息在第二图片中确定虚拟框。图5示出了根据第三异常框的位置信息在第二图片中确定虚拟框的示意图。若第一图片中的第3个检测框的左上角坐标和右下角坐标分别为(900,1100)和(1100,900),则在第二图片的相应位置处确定一个虚拟框,以此类推,在第二图片中分别确定了5个虚拟框。
116.将第三异常框在第一图片中对应的第三子图和相应的虚拟框在第二图片中对应的第四子图进行相似度的比较,例如,针对第一图片中的第3个检测框,若其与相应的虚拟框的第二相似度满足第二设定条件,则可确定虚拟框对应的第四子图为一个与第一图片中的第3个检测框相同的商品,则可将第二图片中虚拟框的识别结果确定为商品e。若第二相似度不满足第二设定条件,则说明第二图片在虚拟框的位置处确实不存在商品e,或者商品e发生了较大的位移,导致第三子图和第四子图的相似度不满足第二设定条件。
117.以此类推,可以确定第一图片中的第6、7、8、9个检测框与相应的虚拟框的第二相似度,若第二相似度满足设定条件,则将第二图片中虚拟框的识别结果确定为相应的第一图片中的识别结果,例如第二图片中的离第6个检测框最近的虚拟框的识别结果确定为f等等。
118.由于在对象识别中,还可能出现对于同一个商品,商品未发生移动或移动较小,但是第一图片识别出而第二图片未识别出的情况,那么也会错误地将该在第二图片中未识别出的商品作为用户买走的商品进行扣款。那么针对这种情况,根据位置信息可能无法确定
出与第一检测框具有位置匹配关系的第二检测框,因此将不具有位置匹配关系的第一检测框确定为第三异常框,根据第三异常框的位置信息在第二图片中确定虚拟框,若商品位置未移动或移动较小,那么第一检测框在第一图片中对应的第三子图与虚拟框在第二图片中对应的第四子图的第二相似度是很高的。若第二相似度满足第二设定条件,则说明第三异常框在第一图片中圈出的商品和虚拟框在第二图片中圈出的商品是同一个商品,而第二图片没有识别出,因此将第三异常框的第一识别结果确定第二图片中虚拟框的识别结果。如此,可以保证对于同一个商品而言,第一图片和第二图片的识别结果是一致的,那么就可以避免计算错用户的支付金额,从而带给用户更好的体验。
119.针对情况3出现的问题,可以采用如下方式解决。如图6所示,包括:
120.步骤601,针对任一第一检测框,若根据所述各第一检测框与所述各第二检测框的位置信息,不能确定具有位置匹配关系的任一第二检测框,则将不具有位置匹配关系的第一检测框确定为第四异常框,将不具有位置匹配关系的第二检测框确定为第五异常框;
121.步骤602,根据所述第四异常框对应的第一识别结果和所述第五异常框对应的第二识别结果所属的属性类别和/或所述第四异常框和所述第五异常框的位置偏移量,将所述第五异常框的第二识别结果更新为所述第四异常框的第一识别结果。
122.例如,若确定第一图片中的第3、6、7、8和9个检测框与第二图片中的任一检测框不具有位置匹配关系,则可将第3、6、7、8和9个检测框确定为第四异常框,将不具有位置匹配关系的第二图片中的第3、6、7、8和9个检测框确定为第五异常框。
123.可选地,上述方法还可以在图4所示的步骤之后执行,在将第二图片中的虚拟框的识别结果确定为相应的第三异常框的识别结果后,则在图6所示的方法执行之前,将该第三异常框排除,那么,第四异常框即为第一图片中的第6、7、8、9个检测框,第五异常框即为第二图片中的第6、7、8、9个检测框。
124.以上仅为示例,本发明实施例对此不作限制。
125.下面以第四异常框为第一图片中的第6、7、8、9个检测框,第五异常框为第二图片中的第6、7、8、9个检测框为例。介绍本发明实施例提供的图片识别方法。
126.下面提供3种确定是否将第五异常框的识别结果更新为第四异常框的识别结果的方法。
127.方式一
128.根据第四异常框对应的第一识别结果和第五异常框对应的第二识别结果所属的属性类别和第四异常框和第五异常框的位置偏移量,将所述第五异常框的第二识别结果更新为所述第四异常框的第一识别结果。
129.步骤一、根据第四异常框对应的第一识别结果和第五异常框对应的第二识别结果的属性类别进行分组,属于同一属性类别的异常框确定为同一组。其中属性类别是预先定义的,例如根据容易混淆的概率进行分组,若商品a经常被误识别为商品k和l,则将商品a、k、l划分为同一组;还可以根据商品的颜色、样式进行分组,例如商品a为瓶装王老吉,商品b为可口可乐,二者颜色类似,则将商品a和商品b划分为同一组。
130.例如预设商品f和商品k属于同一个属性类别,商品g和商品b为同一个属性类别,商品h、i和商品l、m、n属于同一个属性类别,则在图3a右图和图3b中,将第一图片中的第6、7、8、9个检测框和第二图片中的第6、7、8、9个检测框根据上述预设的属性类别进行分组后,
得到如下结果:商品f对应的第四异常框和商品k对应的第五异常框确定为同一个分组;商品g在第二图片的第6、7、8、9个检测框中找不到同属一个类别的商品,则商品g对应的第四异常框无对应的分组;商品h、i对应的第四异常框和商品l、m、n对应的第五异常框确定为同一个分组。
131.步骤二、确定每个分组中的匹配方案。若分组中仅具有第四异常框或仅具有第五异常框,则没有匹配方案;若分组中具有一个第四异常框和一个第五异常框,则分配方案有一个,即该第四异常框和该第五异常框匹配,直接将该第五异常框的第二识别结果更新为该第四异常框的第一识别结果,例如在上述分组方案中,商品f对应的第四异常框和商品k对应的第五异常框确定为同一个分组,则将第二图片中的商品k更新为商品f;若分组中具有一个以上的第四异常框且第五异常框的数目不为0,或者具有一个以上的第五异常框且第四异常框的数目不为0,则确定多个匹配方案,例如在上述分组方案中,商品h、i对应的第四异常框和商品l、m、n对应的第五异常框确定为同一个分组,那么根据组合算法可确定多个匹配方案,如表一所示。
132.表一
[0133][0134]
步骤三、根据每个匹配方案中各第四异常框和各第五异常框的位置偏移量,确定最优匹配方案。
[0135]
可选地,获得商品h、i所在的第四异常框的坐标和商品l、m、n所在的第五异常框的坐标,在商品l、m、n所在的第五异常框中确定与商品h所在的第四异常框的坐标偏移量最小的商品。例如商品m和商品h的坐标偏移量最小,同理,商品i和商品n的坐标偏移量最小,则最优匹配方案为商品h所在的第四异常框和商品m所在的第五异常框匹配,商品i所在的第四异常框和商品n所在的第五异常框匹配。
[0136]
可选地,还可以计算每个匹配方案中的总位置偏移量来确定最优匹配方案。例如在表一所示出的6中匹配方案中,计算每种匹配方案的总位置偏移量,针对匹配方案1,商品h所在的第四异常框左上角和右下角的坐标分别为(x
hl1
,y
hl1
),(x
hr1
,y
hr1
),商品l所在的第五异常框的坐标分别为(x
ll1
,y
ll1
),(x
lr1
,y
lr1
),商品i所在的第四异常框左上角和右下角的坐标分别为(x
il1
,y
il1
),(x
ir1
,y
ir1
),商品m所在的第五异常框的坐标分别为(x
ml1
,y
ml1
),(x
mr1
,y
mr1
).
[0137]
则商品h所在的第四异常框和商品l所在的第五异常框的位置偏移量为p1=(x
ll1

x
hl2
)2+(y
ll1

y
hl2
)2+(x
lr1

x
hr2
)2+(y
lr1

y
hr2
)2;商品i所在的第四异常框和商品m所在的第五异常框的位置偏移量为p2=(x
ml1

x
il2
)2+(y
ml1

y
il2
)2+(x
mr1

x
ir2
)2+(y
mr1

y
ir2
)2。那么匹配方案1的总位置偏移量为s1=p1+p2;按照这种方法,可以计算出各匹配方案中的总位置偏移量,如表二所示。
[0138]
表二
[0139][0140]
将总位置偏移量,即偏移量的和最小的匹配方案确定为最优匹配方案。
[0141]
通过计算每个匹配方案中,任一第四异常框和对应的第五异常框的位置偏移量的和,可以将位置偏移量的和最小的匹配方案确定为最优匹配方案,那么在该最优匹配方案中,会兼顾到每一个第四异常框和对应的第五异常框的位置偏移量,最终确定的最优匹配方案的准确率更高。
[0142]
步骤四、基于最优匹配方案,将所述第五异常框的第二识别结果更新为对应的第四异常框的第一识别结果。
[0143]
例如,在步骤三中通过计算总位置偏移量,确定了匹配方案4为最优匹配方案,则将第二图片中商品m所在的第五异常框的识别结果更新为商品h,将第二图片中商品n所在的第五异常框的识别结果更新为商品i。
[0144]
方式二
[0145]
仅根据第四异常框对应的第一识别结果和所述第五异常框对应的第二识别结果所属的属性类别,将所述第五异常框的第二识别结果更新为所述第四异常框的第一识别结果。
[0146]
那么在该方法中,每个预设的属性类别中仅包括两种商品类别,如商品a和商品b为同一属性类别,商品i和商品n为同一个属性类别等等,那么当根据上述属性类别对第四异常框和第五异常框进行分组时,则每个分组中最多仅有两个商品对应的第四异常框或第五异常框。则可直接将两个异常框进行匹配,将该分组中的第五异常框的第二识别结果更新为第四异常框的第一识别结果。具体的实现方式可参照方式一,在此不再赘述。
[0147]
方式三
[0148]
仅根据第四异常框和所述第五异常框的位置偏移量,将所述第五异常框的第二识别结果更新为所述第四异常框的第一识别结果。
[0149]
那么在上述方法中,无需提前将各第四异常框和各第五异常框按照属性类别进行分组,根据位置偏移量即可确定各第四异常框对应的第五异常框,具体的实现方式可参照方式一,在此不再赘述。
[0150]
由于在对象识别中,还会出现商品发生了一定的位移,对于同一个商品,目标检测算法在对第一图片和第二图片进行对象识别时识别为不同的类别,那么也会错误扣款。针对这种情况,根据位置信息可能无法确定出与第一检测框具有位置匹配关系的第二检测框,因此将不具有位置匹配关系的第一检测框确定为第四异常框,将不具有位置匹配关系的第二检测框确定为第五异常框,通过第四异常框对应的第一识别结果和第五异常框对应的第二识别结果所属的类别和/或第四异常框和第五异常框之间的位置偏移量,综合判断
第五异常框和第四异常框之间的关系,从而对第五异常框的第二识别结果进行更新,如此,可以保证对于同一个商品而言,虽然发生了位移,但是第一图片和第二图片的识别结果是一致的,那么就可以避免计算错用户的支付金额,从而带给用户更好的体验。
[0151]
通过本发明实施例提供的方法,即使用户购买前的该商品类别识别是错误的,只要用户购买后也保持为同一类别,就不会对用户造成多结算扣款金额的问题。因此大幅度地降低了识别错误的概率,进而降低识别错误造成的货损、提升用户体验、帮助运营更精准地掌控补货需求。
[0152]
基于相同的技术构思,图7示例性的示出了本发明实施例提供的一种图片识别装置的结构,该结构可以执行图片识别的流程。
[0153]
如图7所示,该装置具体包括:
[0154]
识别单元701,用于将第一时刻获取的第一图片进行对象识别,得到处于不同位置的各第一检测框和对应的各第一识别结果;将第二时刻获取的第二图片进行对象识别,得到处于不同位置的各第二检测框和对应的各第二识别结果;
[0155]
确定单元702,用于针对任一第一检测框,若根据所述各第一检测框与所述各第二检测框的位置信息,确定与任一第二检测框具有位置匹配关系,则将具有位置匹配关系的第一检测框和第二检测框分别确定为第一异常框和第二异常框;
[0156]
处理单元703,用于确定所述第一异常框与所述第二异常框的位置重叠区域;确定所述位置重叠区域在所述第一图片中对应的第一子图与在所述第二图片中对应的第二子图之间的第一相似度;若所述第一相似度满足第一设定条件,则将所述第二异常框的第二识别结果更新为所述第一异常框的第一识别结果。
[0157]
基于相同的技术构思,本技术实施例提供了一种计算机设备,如图8所示,包括至少一个处理器801,以及与至少一个处理器连接的存储器802,本技术实施例中不限定处理器801与存储器802之间的具体连接介质,图8中处理器801和存储器802之间通过总线连接为例。总线可以分为地址总线、数据总线、控制总线等。
[0158]
在本技术实施例中,存储器802存储有可被至少一个处理器801执行的指令,至少一个处理器801通过执行存储器802存储的指令,可以执行上述图片识别方法的步骤。
[0159]
其中,处理器801是计算机设备的控制中心,可以利用各种接口和线路连接计算机设备的各个部分,通过运行或执行存储在存储器802内的指令以及调用存储在存储器802内的数据,从而进行图片识别。可选的,处理器801可包括一个或多个处理单元,处理器801可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器801中。在一些实施例中,处理器801和存储器802可以在同一芯片上实现,在一些实施例中,它们也可以在独立的芯片上分别实现。
[0160]
处理器801可以是通用处理器,例如中央处理器(cpu)、数字信号处理器、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件,可以实现或者执行本技术实施例中公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者任何常规的处理器等。结合本技术实施例所公开的方法的步骤可以直接体现为硬件处理器执行完成,或者用处理器中的硬件及软件模块组合执行完成。
[0161]
存储器802作为一种非易失性计算机可读存储介质,可用于存储非易失性软件程序、非易失性计算机可执行程序以及模块。存储器802可以包括至少一种类型的存储介质,例如可以包括闪存、硬盘、多媒体卡、卡型存储器、随机访问存储器(random access memory,ram)、静态随机访问存储器(static random access memory,sram)、可编程只读存储器(programmable read only memory,prom)、只读存储器(read only memory,rom)、带电可擦除可编程只读存储器(electrically erasable programmable read

only memory,eeprom)、磁性存储器、磁盘、光盘等等。存储器802是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。本技术实施例中的存储器802还可以是电路或者其它任意能够实现存储功能的装置,用于存储程序指令和/或数据。
[0162]
基于相同的技术构思,本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质存储有计算机可执行程序,计算机可执行程序用于使计算机执行上述任一方式所列的图片识别的方法。
[0163]
本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd

rom、光学存储器等)上实施的计算机程序产品的形式。
[0164]
本技术是参照根据本技术的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0165]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0166]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0167]
显然,本领域的技术人员可以对本技术进行各种改动和变型而不脱离本技术的精神和范围。这样,倘若本技术的这些修改和变型属于本技术权利要求及其等同技术的范围之内,则本技术也意图包含这些改动和变型在内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1