CN113128464A - 图像识别方法和系统 - Google Patents

图像识别方法和系统 Download PDF

Info

Publication number
CN113128464A
CN113128464A CN202110496865.1A CN202110496865A CN113128464A CN 113128464 A CN113128464 A CN 113128464A CN 202110496865 A CN202110496865 A CN 202110496865A CN 113128464 A CN113128464 A CN 113128464A
Authority
CN
China
Prior art keywords
image
difference
target
current
intersection
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
Application number
CN202110496865.1A
Other languages
English (en)
Other versions
CN113128464B (zh
Inventor
宋启恒
王梦雄
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alipay Hangzhou Information Technology Co Ltd
Original Assignee
Alipay Hangzhou Information Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Alipay Hangzhou Information Technology Co Ltd filed Critical Alipay Hangzhou Information Technology Co Ltd
Priority to CN202110496865.1A priority Critical patent/CN113128464B/zh
Publication of CN113128464A publication Critical patent/CN113128464A/zh
Application granted granted Critical
Publication of CN113128464B publication Critical patent/CN113128464B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/52Surveillance or monitoring of activities, e.g. for recognising suspicious objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/94Hardware or software architectures specially adapted for image or video understanding
    • G06V10/95Hardware or software architectures specially adapted for image or video understanding structured as a network, e.g. client-server architectures

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Image Analysis (AREA)

Abstract

本说明书提供的图像识别方法和系统,可以获取开门前的第一图像、关门前的至少一个第二图像以及关门后的第三图像。至少一个第二图像与第三图像按照时间顺序形成连续的图像帧。所述方法和系统可以通过对比多个连续帧与第一图像之间的差异区域,排除由于关门振动和人影晃动等外界环境影响引起的开门前图像和关门后图像的差异,提高图像识别的准确率,精确识别出开门前的图像与关门后的图像是否存在由于拿取物品引起的差异,从而提高识别用户是否拿取物品的准确度,防止在用户没有拿取物品的情况下由于数据传输引起的等待,提高用户体验感。

Description

图像识别方法和系统
技术领域
本说明书涉及无人零售领域,尤其涉及一种图像识别方法和系统。
背景技术
在基于计算机视觉的智能货柜场景中,货柜中每层摄像头会在开门前拍摄柜内图像、关门后再次拍摄柜内图像。在进行商品结算时,货柜会将开门前的图像与关门后的图像进行对比,若二者存在差异,则判定用户拿取了商品,货柜会将开门前的图像与关门后的图像上传至云端服务器进一步做物品识别;若二者不存在差异,则判定用户没有拿取商品,货柜不会将图像上传到服务器。目前通常采用图像差分法直接对比开门前的图像与关门后的图像来获取图像差异。当用户没有拿取商品时,图像可能受到一些外界的影响(如门外人影变化,关门之后产生的震动导致商品在来回位移),导致开门前的图像与关门后的图像存在差异,从而将图像上传至服务器。这会导致结算流程过长,影响用户体验。
因此,需要提供一种精度更高的图像识别方法和系统,能够剔除外界环境影响,精确识别出开门前的图像与关门后的图像是否存在差异,从而确定用户是否拿取商品。
发明内容
本说明书提供一种精度更高的图像识别方法和系统,能够剔除外界环境影响,精确识别出开门前的图像与关门后的图像是否存在差异,从而确定用户是否拿取商品。
第一方面,本说明书提供一种图像识别方法,用于对智能货柜进行图像识别,包括:从所述智能货柜的视觉传感器中获取第一图像,所述第一图像包括所述视觉传感器采集的所述智能货柜的开门信号前的一个图像帧;从所述视觉传感器中获取至少一个第二图像以及第三图像,所述至少一个第二图像包括所述视觉传感器采集的所述智能货柜的关门信号前的至少一个连续的图像帧,所述第三图像包括所述视觉传感器采集的所述关门信号后的一个图像帧,所述至少一个第二图像与所述第三图像形成连续的图像帧;以及基于所述第一图像与所述至少一个第二图像的差异,识别所述第一图像与所述第三图像之间是否存在目标差异,所述目标差异包括所述智能货柜中的物品变化引起的差异。
在一些实施例中,所述至少一个第二图像与所述第三图像基于时间顺序排列形成目标序列,所述目标序列包括多个目标图像,所述多个目标图像包括所述至少一个第二图像和所述第三图像,所述基于所述第一图像与所述至少一个第二图像的差异,识别所述第一图像与所述第三图像之间是否存在目标差异,包括:基于所述目标序列,依次对所述目标图像执行图像差分操作,直至确定所述第一图像与所述第三图像之间是否存在所述目标差异,所述图像差分操作包括:将所述第一图像与当前目标图像求差,确定所述当前目标图像对应的当前差异区域;以及基于所述当前差异区域确定所述第一图像与所述第三图像之间是否存在所述目标差异。
在一些实施例中,所述将所述第一图像与当前目标图像求差,确定所述当前目标图像对应的当前差异区域,包括:基于预设图像处理方法获取所述第一图像的多个第一像素点以及所述当前目标图像的多个第二像素点,所述多个第一像素点与所述多个第二像素点一一对应;对所述多个第一像素点与所述多个第二像素点逐一求差,确定所述当前目标图像对应的目标像素点的位置以及差异值,所述目标像素点包括所述多个第一像素点与所述多个第二像素点中存在差异的像素点;以及将相邻的所述目标像素点作为一个差异点集合,将所述差异点集合中的所述目标像素点的差异值进行特征融合作为所述差异点集合的差异值,确定所述当前差异区域,所述当前差异区域包括所述差异点集合及其对应的差异值。
在一些实施例中,所述基于所述当前差异区域确定所述第一图像与所述第三图像之间是否存在所述目标差异,包括:确定所述当前差异区域的差异小于预设的第一阈值,确定所述第一图像与所述第三图像之间不存在所述目标差异;或者确定所述当前差异区域的差异大于所述第一阈值,对所述当前差异区域与所述当前目标图像前的所有目标图像对应的差异区域求交集,获取当前差异交集区域,基于所述当前差异交集区域以及所述当前目标图像在所述目标序列中的位置,确定所述第一图像与所述第三图像之间是否存在所述目标差异。
在一些实施例中,所述确定所述当前差异区域的差异小于预设的第一阈值,包括:确定所述当前差异区域中的所述差异点集合的数量小于预设的第一数量阈值,并且所述当前差异区域中的所述差异点集合的差异值均小于预设的第一差异阈值,所述第一阈值包括所述第一数量阈值以及所述第一差异阈值;以及所述确定所述当前差异区域的差异大于所述第一阈值,包括以下情况中的至少一个:确定所述当前差异区域中的所述差异点集合的数量大于所述第一数量阈值;以及确定所述当前差异区域中的所述差异点集合的差异值中的至少一个大于所述第一差异阈值。
在一些实施例中,所述对所述当前差异区域与所述当前目标图像前的所有目标图像对应的差异区域求交集,获取当前差异交集区域,包括:对所述当前差异区域以及所述当前目标图像前的所有目标图像对应的差异区域求交集,确定同时在所述当前差异区域中和当前目标图像前的所有目标图像对应差异区域中存在差异的目标交集像素点的位置;以及将相邻的所述目标交集像素点作为一个差异交集点集合,将所述差异交集点集合中的所述目标交集像素点的差异值进行特征融合作为所述差异交集点集合的差异值,确定所述当前差异交集区域,所述当前差异交集区域包括所述差异交集点集合及其对应的差异值。
在一些实施例中,所述基于所述当前差异交集区域以及所述当前目标图像在所述目标序列中的位置,确定所述第一图像与所述第三图像之间是否存在所述目标差异,包括:确定所述当前目标图像不是所述多个目标图像中的最后一个,对与所述当前目标图像相邻的下一个目标图像执行所述图像差分操作;或者确定所述当前目标图像是所述多个目标图像中的最后一个,基于所述当前差异交集区域,确定所述第一图像与所述第三图像之间是否存在所述目标差异。
在一些实施例中,所述基于所述当前差异交集区域,确定所述第一图像与所述第三图像之间是否存在所述目标差异,包括:确定所述当前差异交集区域的差异小于预设的第二阈值,确定所述第一图像与所述第三图像之间存在不所述目标差异;或者确定所述当前差异交集区域的差异大于所述第二阈值,将所述当前差异交集区域中的所述差异交集点集合所在的位置与预设区域进行匹配,确定所述第一图像与所述第三图像之间是否存在所述目标差异。
在一些实施例中,所述确定所述当前差异交集区域的差异小于预设的第二阈值,包括:确定所述当前差异交集区域中的所述差异交集点集合的数量小于预设的第二数量阈值,并且所述当前差异交集区域中的所述差异交集点集合的差异值均小于预设的第二差异阈值,所述第二阈值包括所述第二数量阈值以及所述第二差异阈值;以及所述确定所述当前差异交集区域的差异大于所述第二阈值,包括以下情况中的至少一个:确定所述当前差异交集区域中的所述差异交集点集合的数量大于所述第二数量阈值;以及确定所述当前差异交集区域中的所述差异交集点集合的差异值中的至少一个大于所述第二差异阈值。
在一些实施例中,所述将所述当前差异交集区域中的所述差异交集点集合所在的位置与预设区域进行匹配,确定所述第一图像与所述第三图像之间是否存在所述目标差异,包括:确定所述差异交集点集合所在的位置完全位于所述预设区域内,确定所述第一图像与所述第三图像之间不存在所述目标差异;或者确定所述差异交集点集合所在的位置至少部分不位于所述预设区域内,确定所述第一图像与所述第三图像之间存在所述目标差异。
在一些实施例中,所述预设区域包括所述智能货柜的柜门在所述目标图像中所处的区域。
在一些实施例中,所述图像识别方法,还包括:确定所述第一图像与所述第三图像之间存在所述目标差异,将所述第一图像和所述第三图像发送至所述智能货柜的服务器。
第二方面,本说明书还提供一种图像识别系统,包括至少一个存储介质以及至少一个处理器,所述至少一个存储介质存储有至少一个指令集用于对智能货柜进行图像识别;所述至少一个处理器同所述至少一个存储介质通信连接,其中,当所述图像识别系统运行时,所述至少一个处理器读取所述至少一个指令集并实施本说明书第一方面所述的图像识别方法。
由以上技术方案可知,本说明书提供的图像识别方法和系统,可以获取开门前的第一图像、关门前的至少一个第二图像以及关门后的第三图像。至少一个第二图像与第三图像按照时间顺序形成序列,序列中包括多个目标图像。所述方法和系统可以将开门前的第一图像与关门前的第二图像以及关门后的第三图像分别求差,获取第二图像和第三图像各自对应的差异区域,并对比不同图像对应的差异区域之间是否存在交集,若不存在交集或交集小于阈值,则认为当前差异是由于关门振动引起的;若存在交集且交集区域位于柜门区域,则认为当前差异是由于人影晃动引起的;若存在交集且交集区域不位于柜门区域,则认为第一图像与第三图像之间存在由于用户拿取物品引起的目标差异。所述方法和系统可以通过对比多个连续帧与第一图像之间的差异区域,排除由于关门振动和人影晃动等外界环境影响引起的开门前图像和关门后图像的差异,提高图像识别的准确率,精确识别出开门前的图像与关门后的图像是否存在由于拿取物品引起的差异,从而提高识别用户是否拿取物品的准确度,防止在用户没有拿取物品的情况下由于数据传输引起的等待,提高用户体验感。
本说明书提供的图像识别方法和系统的其他功能将在以下说明中部分列出。根据描述,以下数字和示例介绍的内容将对那些本领域的普通技术人员显而易见。本说明书提供的图像识别方法和系统的创造性方面可以通过实践或使用下面详细示例中所述的方法、装置和组合得到充分解释。
附图说明
为了更清楚地说明本说明书实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了根据本说明书的实施例提供的一种智能货柜的结构示意图;
图2示出了根据本说明书的实施例提供的一种计算设备的结构示意图;
图3示出了根据本说明书的实施例提供的一种图像识别方法流程图;
图4示出了根据本说明书的实施例提供的一种差分操作的流程图;
图5示出了根据本说明书的实施例提供的一种确定当前差异区域的流程图;以及
图6示出了根据本说明书的实施例提供的一种当前差异交集区域的示意图。
具体实施方式
以下描述提供了本说明书的特定应用场景和要求,目的是使本领域技术人员能够制造和使用本说明书中的内容。对于本领域技术人员来说,对所公开的实施例的各种局部修改是显而易见的,并且在不脱离本说明书的精神和范围的情况下,可以将这里定义的一般原理应用于其他实施例和应用。因此,本说明书不限于所示的实施例,而是与权利要求一致的最宽范围。
这里使用的术语仅用于描述特定示例实施例的目的,而不是限制性的。比如,除非上下文另有明确说明,这里所使用的,单数形式“一”,“一个”和“该”也可以包括复数形式。当在本说明书中使用时,术语“包括”、“包含”和/或“含有”意思是指所关联的整数,步骤、操作、元素和/或组件存在,但不排除一个或多个其他特征、整数、步骤、操作、元素、组件和/或组的存在或在该系统/方法中可以添加其他特征、整数、步骤、操作、元素、组件和/或组。
考虑到以下描述,本说明书的这些特征和其他特征、以及结构的相关元件的操作和功能、以及部件的组合和制造的经济性可以得到明显提高。参考附图,所有这些形成本说明书的一部分。然而,应该清楚地理解,附图仅用于说明和描述的目的,并不旨在限制本说明书的范围。还应理解,附图未按比例绘制。
本说明书中使用的流程图示出了根据本说明书中的一些实施例的系统实现的操作。应该清楚地理解,流程图的操作可以不按顺序实现。相反,操作可以以反转顺序或同时实现。此外,可以向流程图添加一个或多个其他操作。可以从流程图中移除一个或多个操作。
智慧零售就是运用互联网、物联网技术,感知消费习惯,预测消费趋势,引导生产制造,为消费者提供多样化、个性化的产品和服务。智能货柜是智能零售最典型的应用。在基于视觉识别技术的智能货柜场景中,顾客通过人脸识别或者扫码开门,从所述智能货柜中取出商品,所述智能货柜依靠摄像头获取用户开门前的图像以及用户关门后的图像,并对关门前的图像和关门后的图像进行对比,以确定二者之间是否存在差异。若存在差异则认为用户从所述智能货柜中拿取了物品,将两个图像上传至云端服务器进一步对图像进行商品自动识别并进行商品自动交易结算;若不存在差异则认为用户没有从智能货柜中拿取物品,则不会将图像上传至云端服务器,以节省数据传输的时间,提升用户体验。
现有技术中,在对开门前的图像和关门后的图像进行对比时,主要通过是简单的图像差分算法,仅对开门前的图像和关门后的图像进行相减,获取2张图像的RGB通道的差异,并将RGB通道的差异与预先设定好的阈值进行对比。若RGB通道的差异不大于所述阈值,则认为图像无变动,无需将图像上传至云端的服务器进行物品识别;若RGB通道的差异大于所述阈值,则认为图像有变动,需将图像上传至云端的服务器进行进一步的物品识别。这种方法依赖于阈值的设定,阈值设定过大,无法识别到更换商品的情况;阈值设定过小,无法剔除掉由于外界因素导致的图像差异,比如,门外光线变化引起的图像差异,再比如,门外人影晃动或人影经过引起的差异,再比如,关门时门体振动导致商品晃动引起的差异,等等。在这种情况下,当用户并没有拿取商品时,由于外界因素导致的开门前的图像和关门后的图像存在差异,也会触发智能货柜将开门前的图像和关门后的图像上传至云端的服务器进行进一步的物品识别,这样会增加结算流程的时间,影响用户体验。
为了剔除掉其他的由于外界因素引起的开门前的图像和关门后的图像差异,精确的识别出开门前的图像和关门后的图像之间的差异是否是由于用户拿取商品而产生的,本说明书提供一种图像识别方法和系统,不仅可以对比开门前的图像和关门后的图像,还可以获取关门前的图像之间的多个连续的图像帧,并依次计算开门前的图像与所述多个连续的图像帧以及关门后的图像之间的差异,并对比各个图像对应的差异是否存在交集;若不存在交集,则证明开门前的图像和关门后的图像之间的差异可能是由于关门振动引起;若存在交集,则进一步判断交集所在的区域,若交集位于柜门前的位置,则证明开门前的图像和关门后的图像之间的差异可能是由于门前人影晃动引起的;若交集至少一部分不位于柜门前的位置,则证明开门前的图像和关门后的图像之间的差异可能是由于用户拿取商品引起的。所述方法和系统可以通过获取关门前的多个连续的图像帧并进行对比,剔除由于外界因素导致的图像差异,从而精确识别出用户是否拿取物品,减少用户等待时间,提升用户体验。
图1示出了根据本说明书的实施例提供的一种智能货柜001的结构示意图。智能货柜001可以用于陈列和存储物品。所述物品可以是零星的可以单独存在的物体。比如,一瓶饮料、一包零食,等等。如图1所示,智能货柜001可以包括至少一个承载装置400以及图像识别系统200。在一些实施例中,智能货柜001还可以包括机架600。在一些实施例中,智能货柜001还可以包括服务器800。在一些实施例中,智能货柜001还可以包括感应传感器900。
机架600可以是智能货柜001的支撑基座。
至少一个承载装置400可以安装在机架600上,用于承载所述物品。图1示出了5个承载装置400。需要说明的是,图1只是示例性说明,智能货柜001上的承载装置400的数量可以是任意数。每个承载装置400可以包括托盘460和视觉传感器480。
托盘460可以安装在机架600上。托盘460可以用于承载物品。所述物品在托盘460上可以按照预设的陈列规则陈列。比如,托盘460可以被分割为多列,每一列陈列同一种物品,不同列可以陈列不同种类的物品,也可以陈列同一种物品。为了帮助提高图像识别模型的识别准确率,托盘460上的物品应满足预设的陈列规则。比如,从视觉传感器480的角度来说,托盘460上的物品之间不应该相互遮挡。
视觉传感器480可以位于托盘460上方,用于拍摄当前承载装置400上的托盘460上的所述物品的图像,以监测当前托盘460上的所述物品的变化。智能货柜001可以根据视觉传感器480采集的所述图像识别出当前时刻用户从托盘460上取走的物品。视觉传感器480可以安装在托盘460的预设位置和预设角度。视觉检测装置800可以是普通摄像头,也可以使用一个广角的普通摄像头,例如拍摄角度是160度的广角摄像头,或者可以使用鱼眼摄像头。
图像识别系统200可以存储有执行本说明书描述的图像识别方法的数据或指令,并可以执行或用于执行所述数据和/或指令。图像识别系统200可以包括具有数据信息处理功能的硬件设备和驱动该硬件设备工作所需必要的程序。当然,图像识别系统200也可以仅为具有数据处理能力的硬件设备,或者,仅为运行在硬件设备中的程序。图像识别系统200运行时可以与每个承载装置400中的视觉传感器480通信连接,接收视觉传感器480采集的托盘460上的物品的图像,并基于本说明书描述的图像识别方法对视觉传感器480拍摄的图像进行识别,以确定开门前的图像和关门后的图像之间是否存在由于用户拿取商品引起的目标差异。图像识别系统200运行时还可以与服务器800通信连接,当确定开门前的图像和关门后的图像之间存在所述目标差异时,将开门前的图像和关门后的图像发送给服务器800。图像识别系统200运行时还可以与感应传感器900通信连接,接收感应传感器900的感应数据。在一些实施例中,图像识别系统200可以安装在智能货架001上,比如,安装在智能货架001的机架600上,或机架600的内部。
所述通信连接是指能够直接地或者间接地接收信息的任何形式的连接。在一些实施例中,图像识别系统200可以同视觉传感器480以及感应传感器900通过无线通信连接来彼此传递数据;在一些实施例中,图像识别系统200也可以同视觉传感器480以及感应传感器900通过电线直接连接来彼此传递数据;在一些实施例中,图像识别系统200也可以通过电线同其他电路直接连接来建立同视觉传感器480以及感应传感器900的间接连接,从而实现彼此传递数据。所述无线通信连接可以是网络连接,蓝牙连接,NFC连接,等等。
在一些实施例中,图像识别系统200可以包括移动设备、平板电脑、笔记本电脑、机动车辆的内置设备或类似内容,或其任意组合。在一些实施例中,所述移动设备可包括智能家居设备、智能移动设备或类似设备,或其任意组合。在一些实施例中,所述智能家居装置可包括智能电视、台式电脑等,或任意组合。在一些实施例中,所述智能移动设备可包括智能手机、个人数字辅助、游戏设备、导航设备等,或其任意组合。在一些实施例中,所述机动车中的内置装置可包括车载计算机、车载电视等。在一些实施例中,图像识别系统200可以是具有定位技术的设备,用于定位图像识别系统200的位置。
服务器800可以存储有对图像进行物品识别的数据或指令,并可以执行或用于执行所述数据和/或指令。服务器800可以包括具有数据信息处理功能的硬件设备和驱动该硬件设备工作所需必要的程序。当然,服务器800也可以仅为具有数据处理能力的硬件设备,或者,仅为运行在硬件设备中的程序。
图像识别系统200可以通过网络100与服务器800通信连接。网络100可以促进信息和/或数据的交换。如图1所示,图像识别系统200与服务器800可以同网络100连接,并且通过网络100互相传输信息和/或数据。例如,图像识别系统200可以通过网络100向服务器800发送图像数据。在一些实施例中,网络100可以是任何类型的有线或无线网络,也可以是其组合。比如,网络100可以包括电缆网络,有线网络、光纤网络、电信通信网络、内联网、互联网、局域网(LAN)、广域网(WAN)、无线局域网(WLAN)、大都市市区网(MAN)、广域网(WAN)、公用电话交换网(PSTN)、蓝牙网络、ZigBee网络、近场通信(NFC)网络或类似网络。在一些实施例中,网络100可以包括一个或多个网络接入点。例如,有线或无线网络接入点,如基站和/或互联网交换点,通过该接入点,图像识别系统200与服务器800可以连接到网络100以交换数据和/或信息。
感应传感器900可以设置在智能货柜001的柜门处,用户感应所述柜门的状态,比如,打开状态还是闭合状态。感应传感器900可以与图像识别系统200通信连接,并将感应数据发送给图像识别系统200。图像识别系统200可以根据所述感应数据判断当前时刻柜门是打开状态还是闭合状态。感应传感器900可以是霍尔传感器,也可以是红外传感器,还可以是超声波传感器、雷达传感器,等等。
图2示出了根据本说明书的实施例提供的一种计算设备300的结构示意图。在一些实施例中,计算设备300所示的结构适用于图像识别系统200。在一些实施例中,计算设备300所示的结构也适用于服务器800。在一些实施例中,图像识别系统200执行所述图像识别方法的数据或指令可以在计算设备300上实现。所述图像识别方法在本说明书中的其他部分介绍。
如图2所示,计算设备300可以包括至少一个存储介质330和至少一个处理器320。在一些实施例中,计算设备300还可以包括通信端口350和内部通信总线310。在一些实施例中,计算设备300还可以包括I/O组件360。
内部通信总线310可以连接不同的系统组件,实现各组件间的数据通信,包括存储介质330、处理器320、通信端口350以及I/O组件360。例如,处理器320可以通过内部通信总线310将数据发送到存储介质330或I/O组件360等其它硬件中。在一些实施例中,内部通信总线310可以为工业标准(ISA)总线、扩展工业标准(EISA)总线、视频电子标准(VESA)总线、外部部件互联标准(PCI)总线等。
I/O组件360可以用于输入或输出信号、数据或信息。I/O组件360支持计算设备300和其他组件之间的输入/输出。在一些实施例中,I/O组件360可以包括输入装置和输出装置。示例性输入装置可以包括摄像头、键盘、鼠标、显示屏和麦克风等,或其任意组合。示例性输出装置可以包括显示装置、语音播放装置(比如,扬声器等等)、打印机、投影仪等或其任意组合。示例性显示装置可以包括液晶显示器(LCD)、基于发光二极管(LED)的显示器、平板显示器、曲面显示器、电视设备、阴极射线管(CRT)等或其任意组合。
通信端口350可以连接到网络以便计算设备300同外界的数据通信。所述连接可以是有线连接、无线连接或两者的组合。有线连接可以包括电缆、光缆或电话线等或其任意组合。无线连接可以包括蓝牙、Wi-Fi、WiMax、WLAN、ZigBee、移动网络(例如,3G、4G或5G等)等或其任意组合。在一些实施例中,通信端口350可以是标准化端口,如RS232、RS485等。在一些实施例中,通信端口350可以是专门设计的端口。
存储介质330可以包括数据存储装置。所述数据存储装置可以是非暂时性存储介质,也可以是暂时性存储介质。比如,所述数据存储装置可以包括磁盘332、只读存储介质(ROM)334或随机存取存储介质(RAM)336中的一种或多种。存储介质330还包括存储在所述数据存储装置中的至少一个指令集。所述至少一个指令集用于所述图像识别。所述指令是计算机程序代码,所述计算机程序代码可以包括执行本说明书提供的图像识别方法的程序、例程、对象、组件、数据结构、过程、模块等等。
至少一个处理器320可以同至少一个存储介质330以及通信端口350通过内部通信总线310通信连接。至少一个处理器320用以执行上述至少一个指令集。当计算设备300运行时,至少一个处理器320读取所述至少一个指令集,并且根据所述至少一个指令集的指示执行本说明书提供的图像识别方法。当所述图像识别系统200运行时,至少一个处理器320读取所述至少一个指令集,并且根据所述至少一个指令集的指示执行本说明书提供的图像识别方法。处理器320可以执行图像识别方法包含的所有步骤。处理器320可以是一个或多个处理器的形式,在一些实施例中,处理器320可以包括一个或多个硬件处理器,例如微控制器,微处理器,精简指令集计算机(RISC),专用集成电路(ASIC),特定于应用的指令集处理器(ASIP),中央处理单元(CPU),图形处理单元(GPU),物理处理单元(PPU),微控制器单元,数字信号处理器(DSP),现场可编程门阵列(FPGA),高级RISC机器(ARM),可编程逻辑器件(PLD),能够执行一个或多个功能的任何电路或处理器等,或其任何组合。仅仅为了说明问题,在本说明书中计算设备300中仅描述了一个处理器320。然而,应当注意,本说明书中计算设备300还可以包括多个处理器,因此,本说明书中披露的操作和/或方法步骤可以如本说明书所述的由一个处理器执行,也可以由多个处理器联合执行。例如,如果在本说明书中计算设备300的处理器320执行步骤A和步骤B,则应该理解,步骤A和步骤B也可以由两个不同处理器320联合或分开执行(例如,第一处理器执行步骤A,第二处理器执行步骤B,或者第一和第二处理器共同执行步骤A和B)。
图3示出了根据本说明书的实施例提供的一种图像识别方法P100的流程图。如前所述,图像识别系统200可以执行本说明书所述的图像识别方法P100。具体地,当图像识别系统200在计算设备300上运行时,处理器320可以读取存储在其本地存储介质中的指令集,然后根据所述指令集的规定,执行本说明书所述的图像识别方法P100,用于对智能货柜001进行图像识别。
所述方法P100可以包括:
S120:从所述智能货柜001的视觉传感器480中获取第一图像。
所述第一图像可以是所述视觉传感器480采集的所述智能货柜001的开门信号前的一个图像帧。如前所述,视觉传感器480运行时用于拍摄托盘460上的物品的图像,生成视频数据。图像识别系统200可以与感应传感器900通信连接。感应传感器900可以感应柜门的状态,并向图像识别系统200发送监测数据。当用户开启柜门时,感应传感器900检测到柜门的状态为打开,向图像识别系统200发送开门信号。图像识别系统200基于所述开门信号的时间,从视觉传感器480拍摄的视频数据中获取开门前的图像。也就是说,感应传感器900在监测到柜门打开时,会生成开门信号,所述开门信号中包含有柜门打开时的时间。图像识别系统200基于所述开门信号的时间,从所述视频数据中获取所述开门信号前的最近一个图像帧作为开门前的图像,即所述第一图像。
S140:从所述视觉传感器480中获取至少一个第二图像以及第三图像。
所述至少一个第二图像可以包括所述视觉传感器480采集的所述智能货柜001的关门信号前的至少一个连续的图像帧。所述第三图像可以包括所述视觉传感器480采集的所述关门信号后的一个图像帧,所述至少一个第二图像与所述第三图像形成连续的图像帧。如前所述,感应传感器900可以感应柜门的状态,并向图像识别系统200发送监测数据。当用户关闭柜门时,感应传感器900检测到柜门的状态为关闭,向图像识别系统200发送关门信号。图像识别系统200基于所述关门信号的时间,从视觉传感器480拍摄的视频数据中获取关门后的图像以及关门前的图像。也就是说,感应传感器900在监测到柜门关闭时,会生成关门信号,所述关门信号中包含有柜门关闭时的时间。图像识别系统200基于所述关门信号的时间,从所述视频数据中获取所述关门信号后的最近一个图像帧作为关门后的图像,即所述第三图像。图像识别系统200基于所述关门信号的时间,从所述视频数据中获取所述关门信号前的最近至少一个图像帧作为关门前的图像,即所述至少一个第二图像。
所述第二图像的数量越多,所述图像识别方法P100的识别精度越高,其耗费的时间就越长。在一些实施例中,所述第二图像的数量可以是1个,也可以是2个,还可以是3个,4个,5个,6个,8个,10个,等等。优选的,在一些实施例中,第二图像的数量不少于5个。所述第二图像的数量可以根据实验数据获得,也可以通过机器学习的方法得到。所述第二图像的数量可以进行设定或更改。不同场景,不同尺寸的智能货柜001,或者智能货柜001中的物品不同都可能导致所述第二图像的数量不同。
需要说明的是,所述至少一个第二图像和所述第三图像是连续的图像帧,即所述至少一个第二图像与所述第三图像在所述视频数据中的连续的。所述至少一个第二图像与所述第三图像基于时间顺序排列形成目标序列。为了方便描述,我们将所述目标序列中的图像帧定义为目标图像。即所述目标序列可以包括多个目标图像。所述多个目标图像就是所述至少一个第二图像和所述第三图像。为了方便描述,我们将所述目标序列中包含的所述目标图像的数量定义为M。按照时间的先后顺序,我们将所述M个目标图像分别定义为第1个目标图像、第2个目标图像、第3个目标图像、……、第i个目标图像、……、第M个目标图像。其中,所述第三图像就是所述第M个目标图像。
S160:基于所述第一图像与所述至少一个第二图像的差异,识别所述第一图像与所述第三图像之间是否存在目标差异。
为了方便描述,我们将所述目标差异定义为所述智能货柜001中的物品变化引起的差异,比如,用户从智能货柜001中拿取物品引起的差异,比如,用户更换智能货柜中物品的位置引起的差异,等等。所述目标差异不包括由于外界环境因素引起的差异,比如,关门振动导致物品振动的差异、比如柜门处人影晃动引起的差异,等等。步骤S160可以包括基于所述目标序列,依次对所述目标图像执行图像差分操作,直至确定所述第一图像与所述第三图像之间是否存在所述目标差异。也就是说,步骤S160可以是依次对第1个目标图像、第2个目标图像、第3个目标图像、……、第i个目标图像、……、第M个目标图像执行所述图像差分操作,直至确定所述第一图像与所述第三图像之间是否存在所述目标差异。当提前确定所述第一图像与所述第三图像之间是否存在所述目标差异时,可以停止对所述目标图像执行所述图像差分操作。比如,当对第j个目标图像执行完所述图像差分操作后,已经确定所述第一图像与所述第三图像之间是存在或不存在所述目标差异时,则不再继续对剩余的目标图像执行所述图像差分操作。
在一些实施例中,所述方法P100还可以包括:
S180:确定所述第一图像与所述第三图像之间存在所述目标差异,将所述第一图像和所述第三图像发送至所述智能货柜001的服务器800。
图4示出了根据本说明书的实施例提供的一种差分操作P200的流程图。图4示出的流程图与步骤S160相对应。如图4所示,在对第i个目标图像执行所述图像差分操作P200时,所述图像差分操作P200可以包括:
S220:将所述第一图像与当前目标图像(第i个目标图像)求差,确定所述当前目标图像(第i个目标图像)对应的当前差异区域。
将所述第一图像与当前目标图像(第i个目标图像)求差可以是对所述第一图像与当前目标图像(第i个目标图像)相减,获得所述第一图像与当前目标图像(第i个目标图像)的差分图像。所述差分图像由所述第一图像与当前目标图像(第i个目标图像)之间存在差异的像素点构成。
图5示出了根据本说明书的实施例提供的一种确定当前差异区域的流程图。图5示出了步骤S220的具体流程图。如图5所示,具体地,步骤S220可以是:
S222:基于预设图像处理方法获取所述第一图像的多个第一像素点以及所述当前目标图像(第i个目标图像)的多个第二像素点。
其中,所述多个第一像素点与所述多个第二像素点一一对应。所述第一图像以及所述目标图像都是由多个像素点构成的,并且所述第一图像的多个第一像素点的个数以及位置与所述第二图像的多个第二像素点的个数以及位置一致。
S224:对所述多个第一像素点与所述多个第二像素点逐一求差,确定所述当前目标图像对应的目标像素点的位置以及差异值。
具体地,步骤S224可以是,将所述多个第二像素点中的每个第二像素点的像素值与其对应的第一像素点的像素值进减,获取其对应的差异值。当第二像素点与第一像素点的像素值相同时,二者之间的差异值为0。为了方便描述,我们将所述第一图像与当前目标图像(第i个目标图像)(即所述多个第一像素点与所述多个第二像素点)中存在差异的像素点(即差异值不为0的像素点)定义为所述目标像素点。通过步骤S224可以确定所述第一图像与当前目标图像(第i个目标图像)之间存在差异的目标像素点的位置以及目标像素点对应的差异值。
S226:将相邻的所述目标像素点作为一个差异点集合,将所述差异点集合中的所述目标像素点的差异值进行特征融合作为所述差异点集合的差异值,确定所述当前差异区域。
为了防止噪点出现,我们将相邻的所述目标像素点作为一个差异点集合,并将所述差异点集合中的目标像素点所在的位置划分为一个区域。所述差异点集合对应的差异值可以是所述差异点集合中的所有目标像素点的差异值进行特征融合的结果。所述特征融合可以是平均值计算,也可以是加权平均值计算,等等。所述第一图像与当前目标图像(第i个目标图像)之间的所有目标像素点可以被划分为至少一个差异点集合。每个差异点集合可以形成一个区域。所述目标像素点可以被划分为至少一个区域。所述至少一个区域可以作为所述第一图像与当前目标图像(第i个目标图像)之间的差异区域。为了方便描述,我们将所述第一图像与当前目标图像(第i个目标图像)之间的差异区域定义为当前差异区域(第i个目标图像对应的差异区域)。所述当前差异区域可以包括所述至少一个差异点集合及其对应的差异值。所述第一图像与第i-1个目标图像之间的差异区域定义为当前差异区域(第i-1个目标图像对应的差异区域)
如图4所示,所述图像差分操作P200还可以包括:
S240:基于所述当前差异区域(第i个目标图像对应的差异区域)确定所述第一图像与所述第三图像之间是否存在所述目标差异。
当获取所述第一图像与当前目标图像(第i个目标图像)之间的当前差异区域(第i个目标图像对应的差异区域)时,我们可以先对当前差异区域(第i个目标图像对应的差异区域)进行判断,以确定所述第一图像与当前目标图像(第i个目标图像)之间是否存在所述目标差异。若所述第一图像与当前目标图像(第i个目标图像)之间不存在差异,由于当前目标图像(第i个目标图像)是关门之前的图像帧,其与所述第三图像之间的时间差较小,因此,所述第一图像与所述第三图像之间也不存在差异,更不存在所述目标差异。若所述第一图像与当前目标图像(第i个目标图像)之间存在差异,则需进一步判断当前差异区域(第i个目标图像对应的差异区域)与所述当前目标图像前的所有目标图像对应的差异区域(第i-1个目标图像对应的差异区域)之间是否存在交集。
步骤S240判断所述第一图像与当前目标图像(第i个目标图像)之间是否存在差异可以是判断所述第一图像与当前目标图像(第i个目标图像)之间的差异是否足够小。即判断当前差异区域(第i个目标图像对应的差异区域)是否足够小,或者说判断当前差异区域(第i个目标图像对应的差异区域)是否小于预设的第一阈值。若当前差异区域(第i个目标图像对应的差异区域)的差异足够小或没有差异,小于第一阈值,则判定所述第一图像与当前目标图像(第i个目标图像)之间不存在差异;若当前差异区域(第i个目标图像对应的差异区域)的差异足够大,大于第一阈值,则判定所述第一图像与当前目标图像(第i个目标图像)之间存在差异。
具体地,步骤S240可以包括S242和S244中的一种:
S242:确定所述当前差异区域(第i个目标图像对应的差异区域)的差异小于预设的第一阈值,确定所述第一图像与所述第三图像之间不存在所述目标差异。
所述第一阈值可以包括第一数量阈值以及第一差异阈值。所述第一阈值可以预先存储在图像识别系统200中。所述第一阈值可以依据经验获得,也可以依据标注数据通过机器学习的方法得到。所述确定所述当前差异区域(第i个目标图像对应的差异区域)的差异小于预设的第一阈值可以是确定所述当前差异区域(第i个目标图像对应的差异区域)中的所述差异点集合的数量小于所述第一数量阈值,并且所述当前差异区域(第i个目标图像对应的差异区域)中的所述差异点集合的差异值均小于预设的第一差异阈值。
S244:确定所述当前差异区域(第i个目标图像对应的差异区域)的差异大于所述第一阈值,对所述当前差异区域(第i个目标图像对应的差异区域)与所述当前目标图像前的所有目标图像对应的差异区域(第1个目标图像对应的差异区域至第i-1个目标图像对应的差异区域)求交集,获取当前差异交集区域(前i个目标图像对应的差异区域的交集),基于所述当前差异交集区域(前i个目标图像对应的差异区域的交集)以及所述当前目标图像(第i个目标图像)在所述目标序列中的位置,确定所述第一图像与所述第三图像之间是否存在所述目标差异。
所述确定所述当前差异区域(第i个目标图像对应的差异区域)的差异大于所述第一阈值,可以是确定所述当前差异区域(第i个目标图像对应的差异区域)中的所述差异点集合的数量大于所述第一数量阈值,也可以是,确定所述当前差异区域(第i个目标图像对应的差异区域)中的所述差异点集合的差异值中的至少一个大于所述第一差异阈值。
当所述当前差异区域(第i个目标图像对应的差异区域)的差异大于所述第一阈值时,说明所述第一图像与当前目标图像(第i个目标图像)之间存在差异。所述第一图像与当前目标图像(第i个目标图像)之间的差异是不是所述目标差异需要进一步证明。当关门时产生振动导致物品发生振动时,由于物品振动导致所述M个目标图像中的每个目标图像中的物品位置都可能不一样。那么由于物品振动引起的第一图像与目标图像之间的差异区域也可能是不同的。比如,当在第1个目标图像中,物品是向上振动时,第2个目标图像中,物品可能是向下振动的,因此,所述第一图像与第1个目标图像之间的差异区域与所述第一图像与第2个目标图像之间的差异区域是不同的。因此,所述第一图像与第1个目标图像之间的差异区域与所述第一图像与第2个目标图像之间的差异区域之间的交集可以是很小甚至可以是没有交集的。
在步骤S244中,所述当前目标图像前的所有目标图像对应的差异区域可以通过图5所示的方法进行计算。本说明书在此不再赘述。
当所述当前目标图像为所述多个目标图像中的第一个(第1个目标图像)时,与所述当前目标图像(第1个目标图像)相邻的所述前一个目标图像(第0个目标图像)为所述当前目标图像(第1个目标图像)。
当前差异交集区域(前i个目标图像对应的差异区域的交集)可以是在第i个目标图像对应的差异区域与前i-1个目标图像对应的差异区域中同时出现的目标像素点的位置及其对应的差异值。为了方便描述,我们将在第i个目标图像对应的差异区域与前i-1个目标图像对应的差异区域中同时出现的目标像素点定义为目标交集像素点。当前差异交集区域(前i个目标图像对应的差异区域的交集)可以包括在第i个目标图像对应的差异区域与前i-1个目标图像对应的差异区域中同时出现的目标交集像素点所在的位置及其对应的差异值。
在步骤S244中,获取当前差异交集区域(前i个目标图像对应的差异区域的交集)的方法可以是对所述当前差异区域(第i个目标图像对应的差异区域)以及所述当前目标图像前的所有目标图像对应的(前i-1个目标图像对应的差异区域)求交集,确定同时在所述当前差异区域(第i个目标图像对应的差异区域)中和所述当前目标图像前的所有目标图像对应的差异区域(前i-1个目标图像对应的差异区域)中存在差异的目标交集像素点的位置;以及将相邻的所述目标交集像素点作为一个差异交集点集合,将所述差异交集点集合中的所述目标交集像素点的差异值进行特征融合作为所述差异交集点集合的差异值,确定所述当前差异交集区域,所述当前差异交集区域包括所述差异交集点集合及其对应的差异值。
为了防止噪点出现,在一些实施例中,步骤S244可以是将相邻的所述目标交集像素点作为一个差异点集合,并将所述差异交集点集合中的目标交集像素点所在的位置划分为一个区域。在一些实施例中,步骤S244还可以是以当前差异区域(第i个目标图像对应的差异区域)中的差异交集点集合和所述当前目标图像前的所有目标图像对应的差异区域(前i-1个目标图像对应的差异区域)中的差异交集点集合为单位求交集,所述交集可以是多个区域,每个区域中包含的目标交集像素点组成一个差异交集点的集合。所述差异交集点集合对应的差异值可以是所述差异交集点集合中的所有目标交集像素点的差异值进行特征融合的结果。所述特征融合可以是平均值计算,也可以是加权平均值计算,等等。目标交集像素点的差异值可以是目标交集像素点在当前差异区域(第i个目标图像对应的差异区域)中对应的差异值与其在所述当前目标图像前的所有目标图像对应的差异区域(前i-1个目标图像对应的差异区域)中对应的差异值的特征融合的结果。所述特征融合可以是平均值计算,也可以是加权平均值计算,等等。
图6示出了根据本说明书的实施例提供的一种当前差异交集区域的示意图。如图6所示,在图像010中,当前差异区域011为所述第一图像与第2个目标图像之间的差异区域(即第2个目标图像对应的差异区域)。所述当前目标图像前的所有目标图像对应的差异区域012为所述第一图像与第1个目标图像之间的差异区域。当前差异交集区域013为当前差异区域011与所述当前目标图像前的所有目标图像对应的差异区域012的交集。在当前差异区域011以及所述当前目标图像前的所有目标图像对应的差异区域012为由于关门振动引起的差异的情况下,当前差异区域011与所述当前目标图像前的所有目标图像对应的差异区域012之间的当前差异交集区域013应较小或没有交集。
如图4所示,步骤S244可以包括S244-2和S244-4中的一种:
S244-2:确定所述当前目标图像(第i个目标图像)不是所述多个目标图像中的最后一个(第M个目标图像),对与所述当前目标图像相邻的下一个目标图像(第i+1个目标图像)执行所述图像差分操作。
若当前目标图像(第i个目标图像)不是所述多个目标图像中的最后一个(第M个目标图像),则需继续对剩余的目标对象执行所述图像差分操作P200。
S244-4:确定所述当前目标图像(第i个目标图像)是所述多个目标图像中的最后一个(第M个目标图像,也是所述第三图像),基于所述当前差异交集区域(前M个目标图像对应的差异区域的交集),确定所述第一图像与所述第三图像之间是否存在所述目标差异。
步骤S244可以是判断当前目标图像(第i个目标图像)是否是所述多个目标图像中的最后一个。若当前目标图像(第i个目标图像)是所述多个目标图像中的最后一个(第M个目标图像,也是所述第三图像),则需基于所述当前差异交集区域(前M个目标图像对应的差异区域的交集)进行判断。若所述当前差异交集区域(前M个目标图像对应的差异区域的交集)的差异足够小或者没有差异,说明所述第一图像与所述多个目标图像之间的差异可能是由于关门振动引起的,因此,所述第一图像与所述第三图像之间不存在所述目标差异。因为当关门振动引起物品振动时,由于智能货柜001中的物品发生振动,所述多个目标图像中的每个目标图像都可能是不同的。因此,所述第一图像与所述多个目标图像中的各个目标图像的差异区域都可能是不同的。那么多个目标图像各自对应的差异区域的交集可能很小甚至可能没有交集。若所述当前差异交集区域(前M个目标图像对应的差异区域的交集)的差异足够大,说明所述第一图像与所述多个目标图像之间均存在差异,且各个目标图像对应的差异区域之间存在交集。也就是说,所述第一图像与所述第三图像之间的差异不是由关门振动引起的。此时需根据所述当前差异交集区域(前M个目标图像对应的差异区域的交集)在图像中所处的位置,确定所述差异是由柜门前的人影晃动引起的还是由所述目标差异引起的。
具体地,步骤S244-4可以包括S244-42和S244-44中的一个:
S244-42:确定所述当前差异交集区域(前M个目标图像对应的差异区域的交集)的差异小于预设的第二阈值,确定所述第一图像与所述第三图像之间存在不所述目标差异。
所述第二阈值可以包括第二数量阈值以及第二差异阈值。所述第二阈值可以预先存储在图像识别系统200中。所述二阈值可以依据经验获得,也可以依据标注数据通过机器学习的方法得到。所述确定所述当前差异交集区域(前M个目标图像对应的差异区域的交集)的差异小于预设的第二阈值可以是确定所述当前差异交集区域(前M个目标图像对应的差异区域的交集)中的所述差异交集点集合的数量小于所述第二数量阈值,并且所述当前差异交集区域(前M个目标图像对应的差异区域的交集)中的所述差异交集点集合的差异值均小于所述第二差异阈值。
在一些实施例中,所述差异交集点集合的数量可以是所述当前差异交集区域(前M个目标图像对应的差异区域的交集)中的所有差异交集点集合的数量。在一些实施例中,所述差异交集点集合的数量可以是所述当前差异交集区域(前M个目标图像对应的差异区域的交集)中的所有差异交集点集合中目标交集像素点的数量大于预设的第三数量阈值的差异交集点集合的数量。当其中一个差异交集点集合中的目标交集像素点的数量小于所述第三数量阈值时,所述差异交集点集合可以忽略,不算做一个差异交集点。所述第三数量阈值可以是任意的正整数,比如,1,2,3,4,甚至更大,5,6,7,8,等等。所述第三数量阈值可以依据经验获得,也可以依据标注数据通过机器学习的方法得到。
S244-44:确定所述当前差异交集区域(前M个目标图像对应的差异区域的交集)的差异大于所述第二阈值,将所述当前差异交集区域(前M个目标图像对应的差异区域的交集)中的所述差异交集点集合所在的位置与预设区域进行匹配,确定所述第一图像与所述第三图像之间是否存在所述目标差异。
所述当前差异交集区域(前M个目标图像对应的差异区域的交集)的差异大于所述第二阈值,可以是确定所述当前差异交集区域(前M个目标图像对应的差异区域的交集)中的所述差异交集点集合的数量大于所述第二数量阈值,也可以是,确定所述当前差异交集区域(前M个目标图像对应的差异区域的交集)中的所述差异交集点集合的差异值中的至少一个大于所述第二差异阈值。
在一些实施例中,所述差异交集点集合的数量可以是所述当前差异交集区域(前M个目标图像对应的差异区域的交集)中的所有差异交集点集合的数量。在一些实施例中,所述差异交集点集合的数量可以是所述当前差异交集区域(前M个目标图像对应的差异区域的交集)中的所有差异交集点集合中目标交集像素点的数量大于预设的第三数量阈值的差异交集点集合的数量。当其中一个差异交集点集合中的目标交集像素点的数量小于所述第三数量阈值时,所述差异交集点集合可以忽略,不算做一个差异交集点。所述第三数量阈值可以是任意的正整数,比如,1,2,3,4,甚至更大,5,6,7,8,等等。所述第三数量阈值可以依据经验获得,也可以依据标注数据通过机器学习的方法得到。
如图4所示,步骤S244-44可以包括步骤S244-442和步骤S244-444中的一个:
S244-442:确定所述差异交集点集合所在的位置完全位于所述预设区域内,确定所述第一图像与所述第三图像之间不存在所述目标差异;或者
S244-444:确定所述差异交集点集合所在的位置至少部分不位于所述预设区域内,确定所述第一图像与所述第三图像之间存在所述目标差异。
其中,所述预设区域包括所述智能货柜001的柜门在所述目标图像中所处的区域。当所述当前差异交集区域(前M个目标图像对应的差异区域的交集)的差异大于所述第二阈值时,说明所述第一图像与所述多个目标图像之间均存在差异,且各个目标图像对应的差异区域之间存在交集。也就是说,所述第一图像与所述多个目标图像之间存在相同的差异区域,因此,所述第一图像与所述第三图像之间的差异不是由关门振动引起的。所述第一图像与当前目标图像(第i个目标图像)之间的差异是不是所述目标差异还需要进一步确定所述当前差异交集区域(前M个目标图像对应的差异区域的交集)的差异区域位于哪个区域。若所述当前差异交集区域(前M个目标图像对应的差异区域的交集)的差异区域完全落入柜门前的区域,说明所述当前差异交集区域(前M个目标图像对应的差异区域的交集)的差异可能是由于柜门前的人影晃动引起的;若所述当前差异交集区域(前M个目标图像对应的差异区域的交集)的差异区域不完全落入柜门前的区域,说明所述当前差异交集区域(前M个目标图像对应的差异区域的交集)的差异不完全是由柜门前的人影晃动引起的,说明所述第一图像与所述第三图像之间存在由于用户拿取物品引起的目标差异。需要说明的是,在智能货柜001中,柜门前的区域是没有摆放物品的。因此,当所述当前差异交集区域(前M个目标图像对应的差异区域的交集)的差异区域落入柜门前时,所述差异是由于柜门前的人影晃动引起的,而不是由于所述目标差异引起的。
综上所述,本说明书提供的图像识别的方法P100和系统001,可以获取开门前的第一图像、关门前的至少一个第二图像以及关门后的第三图像。至少一个第二图像与第三图像按照时间顺序形成序列,序列中包括多个目标图像。所述方法和系统可以将开门前的第一图像与关门前的第二图像以及关门后的第三图像分别求差,获取第二图像和第三图像各自对应的差异区域,并对比不同图像对应的差异区域之间是否存在交集,若不存在交集或交集小于阈值,则认为当前差异是由于关门振动引起的;若存在交集且交集区域位于柜门区域,则认为当前差异是由于人影晃动引起的;若存在交集且交集区域不位于柜门区域,则认为第一图像与第三图像之间存在由于用户拿取物品引起的目标差异。所述方法和系统可以通过对比多个连续帧与第一图像之间的差异区域,排除由于关门振动和人影晃动等外界环境影响引起的开门前图像和关门后图像的差异,提高图像识别的准确率,精确识别出开门前的图像与关门后的图像是否存在由于拿取物品引起的差异,从而提高识别用户是否拿取物品的准确度,防止在用户没有拿取物品的情况下由于数据传输引起的等待,提高用户体验感。
本说明书另一方面提供一种非暂时性存储介质,存储有至少一组图像识别的可执行指令。当所述可执行指令被处理器执行时,所述可执行指令指导所述处理器实施本说明书所述的图像识别的方法P100的步骤。在一些可能的实施方式中,本说明书的各个方面还可以实现为一种程序产品的形式,其包括程序代码。当所述程序产品在计算设备300上运行时,所述程序代码用于使计算设备300执行本说明书描述的图像识别的步骤。用于实现上述方法的程序产品可以采用便携式紧凑盘只读存储器(CD-ROM)包括程序代码,并可以在计算设备300上运行。然而,本说明书的程序产品不限于此,在本说明书中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统(例如处理器320)使用或者与其结合使用。所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。所述计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读存储介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。可以以一种或多种程序设计语言的任意组合来编写用于执行本说明书操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在计算设备300上执行、部分地在计算设备300上执行、作为一个独立的软件包执行、部分在计算设备300上部分在远程计算设备上执行、或者完全在远程计算设备上执行。
上述对本说明书特定实施例进行了描述。其他实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者是可能有利的。
综上所述,在阅读本详细公开内容之后,本领域技术人员可以明白,前述详细公开内容可以仅以示例的方式呈现,并且可以不是限制性的。尽管这里没有明确说明,本领域技术人员可以理解本说明书需求囊括对实施例的各种合理改变,改进和修改。这些改变,改进和修改旨在由本说明书提出,并且在本说明书的示例性实施例的精神和范围内。
此外,本说明书中的某些术语已被用于描述本说明书的实施例。例如,“一个实施例”,“实施例”和/或“一些实施例”意味着结合该实施例描述的特定特征,结构或特性可以包括在本说明书的至少一个实施例中。因此,可以强调并且应当理解,在本说明书的各个部分中对“实施例”或“一个实施例”或“替代实施例”的两个或更多个引用不一定都指代相同的实施例。此外,特定特征,结构或特性可以在本说明书的一个或多个实施例中适当地组合。
应当理解,在本说明书的实施例的前述描述中,为了帮助理解一个特征,出于简化本说明书的目的,本说明书将各种特征组合在单个实施例、附图或其描述中。然而,这并不是说这些特征的组合是必须的,本领域技术人员在阅读本说明书的时候完全有可能将其中一部分设备标注出来作为单独的实施例来理解。也就是说,本说明书中的实施例也可以理解为多个次级实施例的整合。而每个次级实施例的内容在于少于单个前述公开实施例的所有特征的时候也是成立的。
本文引用的每个专利,专利申请,专利申请的出版物和其他材料,例如文章,书籍,说明书,出版物,文件,物品等,可以通过引用结合于此。用于所有目的的全部内容,除了与其相关的任何起诉文件历史,可能与本文件不一致或相冲突的任何相同的,或者任何可能对权利要求的最宽范围具有限制性影响的任何相同的起诉文件历史。现在或以后与本文件相关联。举例来说,如果在与任何所包含的材料相关联的术语的描述、定义和/或使用与本文档相关的术语、描述、定义和/或之间存在任何不一致或冲突时,使用本文件中的术语为准。
最后,应理解,本文公开的申请的实施方案是对本说明书的实施方案的原理的说明。其他修改后的实施例也在本说明书的范围内。因此,本说明书披露的实施例仅仅作为示例而非限制。本领域技术人员可以根据本说明书中的实施例采取替代配置来实现本说明书中的申请。因此,本说明书的实施例不限于申请中被精确地描述过的实施例。

Claims (13)

1.一种图像识别方法,用于对智能货柜进行图像识别,包括:
从所述智能货柜的视觉传感器中获取第一图像,所述第一图像包括所述视觉传感器采集的所述智能货柜的开门信号前的一个图像帧;
从所述视觉传感器中获取至少一个第二图像以及第三图像,所述至少一个第二图像包括所述视觉传感器采集的所述智能货柜的关门信号前的至少一个连续的图像帧,所述第三图像包括所述视觉传感器采集的所述关门信号后的一个图像帧,所述至少一个第二图像与所述第三图像形成连续的图像帧;以及
基于所述第一图像与所述至少一个第二图像的差异,识别所述第一图像与所述第三图像之间是否存在目标差异,所述目标差异包括所述智能货柜中的物品变化引起的差异。
2.如权利要求1所述的图像识别方法,其中,所述至少一个第二图像与所述第三图像基于时间顺序排列形成目标序列,所述目标序列包括多个目标图像,所述多个目标图像包括所述至少一个第二图像和所述第三图像,所述基于所述第一图像与所述至少一个第二图像的差异,识别所述第一图像与所述第三图像之间是否存在目标差异,包括:
基于所述目标序列,依次对所述目标图像执行图像差分操作,直至确定所述第一图像与所述第三图像之间是否存在所述目标差异,所述图像差分操作包括:
将所述第一图像与当前目标图像求差,确定所述当前目标图像对应的当前差异区域;以及
基于所述当前差异区域确定所述第一图像与所述第三图像之间是否存在所述目标差异。
3.如权利要求2所述的图像识别方法,其中,所述将所述第一图像与当前目标图像求差,确定所述当前目标图像对应的当前差异区域,包括:
基于预设图像处理方法获取所述第一图像的多个第一像素点以及所述当前目标图像的多个第二像素点,所述多个第一像素点与所述多个第二像素点一一对应;
对所述多个第一像素点与所述多个第二像素点逐一求差,确定所述当前目标图像对应的目标像素点的位置以及差异值,所述目标像素点包括所述多个第一像素点与所述多个第二像素点中存在差异的像素点;以及
将相邻的所述目标像素点作为一个差异点集合,将所述差异点集合中的所述目标像素点的差异值进行特征融合作为所述差异点集合的差异值,确定所述当前差异区域,所述当前差异区域包括所述差异点集合及其对应的差异值。
4.如权利要求3所述的图像识别方法,其中,所述基于所述当前差异区域确定所述第一图像与所述第三图像之间是否存在所述目标差异,包括:
确定所述当前差异区域的差异小于预设的第一阈值,确定所述第一图像与所述第三图像之间不存在所述目标差异;或者
确定所述当前差异区域的差异大于所述第一阈值,对所述当前差异区域与所述当前目标图像前的所有目标图像对应的差异区域求交集,获取当前差异交集区域,基于所述当前差异交集区域以及所述当前目标图像在所述目标序列中的位置,确定所述第一图像与所述第三图像之间是否存在所述目标差异。
5.如权利要求4所述的图像识别方法,其中,所述确定所述当前差异区域的差异小于预设的第一阈值,包括:
确定所述当前差异区域中的所述差异点集合的数量小于预设的第一数量阈值,并且所述当前差异区域中的所述差异点集合的差异值均小于预设的第一差异阈值,所述第一阈值包括所述第一数量阈值以及所述第一差异阈值;以及
所述确定所述当前差异区域的差异大于所述第一阈值,包括以下情况中的至少一个:
确定所述当前差异区域中的所述差异点集合的数量大于所述第一数量阈值;以及
确定所述当前差异区域中的所述差异点集合的差异值中的至少一个大于所述第一差异阈值。
6.如权利要求4所述的图像识别方法,其中,所述对所述当前差异区域与所述当前目标图像前的所有目标图像对应的差异区域求交集,获取当前差异交集区域,包括:
对所述当前差异区域以及所述当前目标图像前的所有目标图像对应的差异区域求交集,确定同时在所述当前差异区域中和当前目标图像前的所有目标图像对应差异区域中存在差异的目标交集像素点的位置;以及
将相邻的所述目标交集像素点作为一个差异交集点集合,将所述差异交集点集合中的所述目标交集像素点的差异值进行特征融合作为所述差异交集点集合的差异值,确定所述当前差异交集区域,所述当前差异交集区域包括所述差异交集点集合及其对应的差异值。
7.如权利要求6所述的图像识别方法,其中,所述基于所述当前差异交集区域以及所述当前目标图像在所述目标序列中的位置,确定所述第一图像与所述第三图像之间是否存在所述目标差异,包括:
确定所述当前目标图像不是所述多个目标图像中的最后一个,对与所述当前目标图像相邻的下一个目标图像执行所述图像差分操作;或者
确定所述当前目标图像是所述多个目标图像中的最后一个,基于所述当前差异交集区域,确定所述第一图像与所述第三图像之间是否存在所述目标差异。
8.如权利要求7所述的图像识别方法,其中,所述基于所述当前差异交集区域,确定所述第一图像与所述第三图像之间是否存在所述目标差异,包括:
确定所述当前差异交集区域的差异小于预设的第二阈值,确定所述第一图像与所述第三图像之间存在不所述目标差异;或者
确定所述当前差异交集区域的差异大于所述第二阈值,将所述当前差异交集区域中的所述差异交集点集合所在的位置与预设区域进行匹配,确定所述第一图像与所述第三图像之间是否存在所述目标差异。
9.如权利要求8所述的图像识别方法,其中,所述确定所述当前差异交集区域的差异小于预设的第二阈值,包括:
确定所述当前差异交集区域中的所述差异交集点集合的数量小于预设的第二数量阈值,并且所述当前差异交集区域中的所述差异交集点集合的差异值均小于预设的第二差异阈值,所述第二阈值包括所述第二数量阈值以及所述第二差异阈值;以及
所述确定所述当前差异交集区域的差异大于所述第二阈值,包括以下情况中的至少一个:
确定所述当前差异交集区域中的所述差异交集点集合的数量大于所述第二数量阈值;以及
确定所述当前差异交集区域中的所述差异交集点集合的差异值中的至少一个大于所述第二差异阈值。
10.如权利要求8所述的图像识别方法,其中,所述将所述当前差异交集区域中的所述差异交集点集合所在的位置与预设区域进行匹配,确定所述第一图像与所述第三图像之间是否存在所述目标差异,包括:
确定所述差异交集点集合所在的位置完全位于所述预设区域内,确定所述第一图像与所述第三图像之间不存在所述目标差异;或者
确定所述差异交集点集合所在的位置至少部分不位于所述预设区域内,确定所述第一图像与所述第三图像之间存在所述目标差异。
11.如权利要求10所述的图像识别方法,其中,所述预设区域包括所述智能货柜的柜门在所述目标图像中所处的区域。
12.如权利要求1所述的图像识别方法,其中,还包括:
确定所述第一图像与所述第三图像之间存在所述目标差异,将所述第一图像和所述第三图像发送至所述智能货柜的服务器。
13.一种图像识别系统,包括:
至少一个存储介质,所述至少一个存储介质存储有至少一个指令集用于对智能货柜进行图像识别;以及
至少一个处理器,同所述至少一个存储介质通信连接,
其中,当所述图像识别系统运行时,所述至少一个处理器读取所述至少一个指令集并实施权利要求1-12中任一项所述的图像识别方法。
CN202110496865.1A 2021-05-07 2021-05-07 图像识别方法和系统 Active CN113128464B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110496865.1A CN113128464B (zh) 2021-05-07 2021-05-07 图像识别方法和系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110496865.1A CN113128464B (zh) 2021-05-07 2021-05-07 图像识别方法和系统

Publications (2)

Publication Number Publication Date
CN113128464A true CN113128464A (zh) 2021-07-16
CN113128464B CN113128464B (zh) 2022-07-19

Family

ID=76781310

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110496865.1A Active CN113128464B (zh) 2021-05-07 2021-05-07 图像识别方法和系统

Country Status (1)

Country Link
CN (1) CN113128464B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107134053A (zh) * 2017-04-19 2017-09-05 石道松 智能售货门店
CN108985359A (zh) * 2018-06-29 2018-12-11 深圳和而泰数据资源与云技术有限公司 一种商品识别方法、无人售货机及计算机可读存储介质
CN111126264A (zh) * 2019-12-24 2020-05-08 北京每日优鲜电子商务有限公司 图像处理方法、装置、设备及存储介质
CN111191556A (zh) * 2019-12-25 2020-05-22 杭州宇泛智能科技有限公司 人脸识别方法、装置及电子设备
CN111340009A (zh) * 2020-05-15 2020-06-26 支付宝(杭州)信息技术有限公司 识别方法及装置
US10791271B1 (en) * 2019-07-17 2020-09-29 Alibaba Group Holding Limited Obtaining stable frames
CN112084880A (zh) * 2020-08-14 2020-12-15 江铃汽车股份有限公司 一种图像处理方法、装置、存储介质及设备
CN112613456A (zh) * 2020-12-29 2021-04-06 四川中科朗星光电科技有限公司 一种基于多帧差分图像累积的小目标检测方法

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107134053A (zh) * 2017-04-19 2017-09-05 石道松 智能售货门店
CN108985359A (zh) * 2018-06-29 2018-12-11 深圳和而泰数据资源与云技术有限公司 一种商品识别方法、无人售货机及计算机可读存储介质
US10791271B1 (en) * 2019-07-17 2020-09-29 Alibaba Group Holding Limited Obtaining stable frames
CN111126264A (zh) * 2019-12-24 2020-05-08 北京每日优鲜电子商务有限公司 图像处理方法、装置、设备及存储介质
CN111191556A (zh) * 2019-12-25 2020-05-22 杭州宇泛智能科技有限公司 人脸识别方法、装置及电子设备
CN111340009A (zh) * 2020-05-15 2020-06-26 支付宝(杭州)信息技术有限公司 识别方法及装置
CN112084880A (zh) * 2020-08-14 2020-12-15 江铃汽车股份有限公司 一种图像处理方法、装置、存储介质及设备
CN112613456A (zh) * 2020-12-29 2021-04-06 四川中科朗星光电科技有限公司 一种基于多帧差分图像累积的小目标检测方法

Also Published As

Publication number Publication date
CN113128464B (zh) 2022-07-19

Similar Documents

Publication Publication Date Title
US11151427B2 (en) Method and apparatus for checkout based on image identification technique of convolutional neural network
CN109325972B (zh) 激光雷达稀疏深度图的处理方法、装置、设备及介质
CN108596128B (zh) 对象识别方法、装置及存储介质
US10706505B2 (en) Method and system for generating a range image using sparse depth data
US10984266B2 (en) Vehicle lamp detection methods and apparatuses, methods and apparatuses for implementing intelligent driving, media and devices
CN113128463B (zh) 图像识别方法和系统
CN103048333B (zh) 外观检测设备及方法
WO2020180620A1 (en) Identifying parking location using single camera reverse projection
CN102369549B (zh) 用于估计物体位置的信息创建设备、用于估计物体位置的信息创建方法
US10373316B2 (en) Images background subtraction for dynamic lighting scenarios
CN111310826B (zh) 样本集的标注异常检测方法、装置及电子设备
CN110059666A (zh) 一种注意力检测方法及装置
US11776673B2 (en) System and method for augmented reality detection of loose pharmacy items
CN110199316A (zh) 相机和相机的图像处理方法
US11861910B2 (en) Method and system for acquiring item placing state
CN110334768B (zh) 一种冰柜陈列检测方法、系统及电子设备
CN113111932B (zh) 智能货柜的物品核对方法及系统
CN113128464B (zh) 图像识别方法和系统
CN112348894B (zh) 废钢货车位置及状态识别方法、系统、设备及介质
CN113538784B (zh) 智能货柜以及物品识别方法
CN105989348A (zh) 人员使用手持装置的检测方法以及系统
CN113916899A (zh) 基于视觉识别的大输液软袋产品的检测方法、系统及装置
CN114708503A (zh) 冰箱瓶座内物品信息识别方法、冰箱和计算机存储介质
CN109671227B (zh) 智能货柜消费行为识别方法、装置、存储介质和电子设备
EP3316186B1 (en) Controlling display of data to a person via a display apparatus

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