商品识别方法、智能货柜及智能货柜系统
技术领域
本发明实施例涉及目标检测技术领域,具体涉及一种商品识别方法、智能货柜及智能货柜系统。
背景技术
在目前的智能货柜中,每一层货架层的顶部设置有摄像头,通过摄像头拍摄货架层上的商品以进行商品识别。但是,目前的商品识别方法不能识别出实际商品和商品图片,当存在某些人将商品图片放在镜头下来模拟实际商品以替换货架层上的真实商品的情况时,智能货柜无法对商品进行准确结算而造成损失。
发明内容
本发明实施例一个目的旨在提供一种商品识别方法、智能货柜及智能货柜系统,能够有效识别出实际商品和商品图片,从而减少损失。
根据本发明实施例的第一方面,提供了一种商品识别方法,应用于智能货柜,所述智能货柜包括图像获取装置,所述图像获取装置设于所述智能货柜的货架层;所述方法包括:当确认商品挑选完成后,通过所述图像获取装置获取所述货架层上的结算商品图像;根据商品真实性检测模型,判断所述结算商品图像是否真实,其中所述结算商品图像是否真实为所述结算商品图像是否为所述货架层上的商品的实物图像;若确定所述结算商品图像真实,则进行商品识别;若确定所述结算商品图像不真实,则不进行商品识别。
在一种可选的方式中,在所述通过所述图像获取装置获取所述货架层上的结算商品图像之前,所述方法还包括:在商品购买之前,通过所述图像获取装置获取所述货架层上的原有商品图像;则,所述根据商品真实性检测模型,判断所述结算商品图像是否真实,具体包括:根据所述原有商品图像和所述结算商品图像,确定包含所述原有商品图像中商品和所述结算商品图像中商品的商品区域;根据所述商品区域,提取所述原有商品图像中的第一背景图像,并提取所述结算商品图像中的第二背景图像;将所述第一背景图像和所述第二背景图像输入所述商品真实性检测模型,获取所述商品真实性检测模型的输出结果;根据所述商品真实性检测模型的输出结果,判断所述结算商品图像是否真实。
在一种可选的方式中,所述根据所述原有商品图像和所述结算商品图像,确定包含所述原有商品图像中商品和所述结算商品图像中商品的商品区域,具体包括:根据商品框检测模型,确定所述原有商品图像的第一商品框区域,并确定所述结算商品图像的第二商品框区域;将所述第一商品框区域与所述第二商品框区域相加,确定为所述商品区域。
在一种可选的方式中,所述根据所述商品区域,提取所述原有商品图像中的第一背景图像,并提取所述结算商品图像中的第二背景图像,具体包括:在所述原有商品图像中去除所述商品区域,以获取所述第一背景图像;在所述结算商品图像中去除所述商品区域,以获取所述第二背景图像。
在一种可选的方式中,所述方法还包括:获取训练图像集合;根据所述训练图像集合,训练预设卷积神经网络;将训练后的所述预设卷积神经网络确定为所述商品真实性检测模型。
在一种可选的方式中,所述训练图像集合包括若干图像组,每一所述图像组包括真实原有商品图像、真实结算商品图像和虚假结算商品图像;所述根据所述训练图像集合,训练预设卷积神经网络,具体包括:将所述真实原有商品图像和所述真实结算商品图像输入所述预设卷积神经网络,获取所述预设卷积神经网络的第一输出值;若所述第一输出值大于预设阈值,则调整所述预设卷积神经网络直至所述第一输出值小于或者等于所述预设阈值;将所述真实原有商品图像和所述虚假结算商品图像输入所述预设卷积神经网络,获取所述预设卷积神经网络的第二输出值;若所述第二输出值小于或者等于所述预设阈值,则调整所述预设卷积神经网络直至所述第二输出值大于所述预设阈值。
在一种可选的方式中,所述图像获取装置为鱼眼相机。
根据本发明实施例的第二方面,提供了一种智能货柜,包括处理器、存储器和图像获取装置;所述图像获取装置设于所述智能货柜的货架层,所述图像获取装置用于获取商品图像;所述存储器用于存放至少一可执行指令,当所述智能货柜运行时,所述处理器执行所述可执行指令,使所述处理器执行根据如上所述的商品识别方法的步骤。
根据本发明实施例的第三方面,提供了一种智能货柜系统,包括智能货柜和云端服务器;所述智能货柜包括图像获取装置,所述图像获取装置设于所述智能货柜的货架层,所述图像获取装置用于获取商品图像;所述云端服务器包括处理器和存储器,所述存储器用于存放至少一可执行指令,当所述云端服务器运行时,所述处理器执行所述可执行指令,使所述处理器执行根据如上所述的商品识别方法的步骤。
根据本发明实施例的第四方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行根据如上所述的商品识别方法的步骤。
本发明实施例通过当确认商品挑选完成后,通过图像获取装置获取货架层上的结算商品图像,根据商品真实性检测模型,判断结算商品图像是否真实,其中结算商品图像是否真实为结算商品图像是否为货架层上的商品的实物图像,若确定结算商品图像真实,则进行商品识别,若确定结算商品图像不真实,则不进行商品识别,能够在进行商品识别之前,先判断商品图像的真实性,有效识别出实际商品和商品图片,避免用商品图片模拟实际商品造成的结算错误,从而能够减少损失。
上述说明仅是本发明实施例技术方案的概述,为了能够更清楚了解本发明实施例的技术手段,而可依照说明书的内容予以实施,并且为了让本发明实施例的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。
附图说明
通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
图1示出了本发明实施例提供的一种智能货柜的结构示意图;
图2示出了本发明其中一实施例提供的一种商品识别方法的流程示意图;
图3示出了本发明另一实施例提供的一种商品识别方法的流程示意图;
图4a示出了图像获取装置获取到的原有商品图像和结算商品图像的示意图;
图4b示出了第一背景图像和第二背景图像的示意图;
图4c示出了原有商品图像和结算商品图像的处理流程的示意图;
图5示出了本发明又一实施例提供的一种商品识别方法的流程示意图
图6示出了本发明实施例提供的一种智能货柜的结构示意图;
图7示出了本发明实施例提供的一种智能货柜系统的结构示意图;
图8示出了图7的云端处理器的结构示意图。
具体实施方式
下面将参照附图更详细地描述本发明的示例性实施例。虽然附图中显示了本发明的示例性实施例,然而应当理解,可以以各种形式实现本发明而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本发明,并且能够将本发明的范围完整的传达给本领域的技术人员。
在目前的智能货柜中,每一层货架层的顶部设置有摄像头,通过摄像头拍摄货架层上的商品以进行商品识别。但是,目前的商品识别方法不能识别出实际商品和商品图片,当某些人将商品图片放在镜头下来模拟实际商品以替换货架层上的实际商品时,智能货柜无法识别出商品图片,以对商品进行准确结算而造成损失。另外,货柜中的商品识别的方式与人脸识别方式并不相同,商品是相对静止的物体,无法像人脸识别一样检测人的眨眼、摇头等。
基于此,本发明实施例提供一种商品识别方法、智能货柜及智能货柜系统,能够有效识别出实际商品和商品图片,从而减少损失。
需要说明的是,本发明实施例中的商品识别方法应用于智能货柜。如图1所示,该智能货柜100设有若干货架层101,智能货柜100还包括图像获取装置102,图像获取装置102设于智能货柜100的货架层101。每一货架层101上均设有图像获取装置102。图像获取装置102用于获取商品图像。如图1所示,图像获取装置102可以设置在货架层101的顶部的中间位置,以使得图像获取装置102能够拍摄到整个货架层101。
其中,图像获取装置102可以为普通相机或者鱼眼相机。需要说明的是,鱼眼相机是指带有鱼眼镜头的相机,鱼眼镜头是一种焦距为16mm或更短并且视角接近或等于180度的镜头。普通相机可以包括标准相机,还可以包括除鱼眼相机以外的其他广角相机。其中,标准相机是指带有标准镜头的相机,标准镜头是指焦距在40mm至55mm的镜头,其所表现的景物的透视与目视比较接近。与普通相机相比,鱼眼相机能够拍摄更大范围的商品。本实施例以图像获取装置102为鱼眼相机为例举例说明。
具体地,下面结合附图,对本发明实施例作进一步阐述。
其中,应当理解的是,本发明提供的下述实施例之间,只要不冲突,均可相互结合以形成新的实施方式。
图2示出了本发明其中一实施例提供的一种商品识别方法的流程示意图。如图2所示,该商品识别方法包括:
步骤210、当确认商品挑选完成后,通过图像获取装置获取货架层上的结算商品图像。
其中,确认商品挑选完成可以为接收到智能货柜的关门信息或者预设定时信息。例如,当顾客挑选商品后,顾客将智能货柜的柜门关闭,则接收到智能货柜的关门信息,则确认商品挑选完成。
其中,结算商品图像是指在确认商品挑选完成后获取到的商品图像。由于已经确认商品挑选完成,此时得到商品图像就是货架层上剩余的商品的图像,将货架层上剩余的商品的图像与货架层上原有的商品的图像作对比以进行商品识别,则能够得知顾客从货架层上取走的商品,从而对顾客进行结算。
步骤220、根据商品真实性检测模型,判断结算商品图像是否真实,其中结算商品图像是否真实为结算商品图像是否为货架层上的商品的实物图像。
其中,商品真实性检测模型用于判断结算商品图像是否真实。商品真实性检测模型可以通过预先训练得到。在进行商品识别之前,根据商品真实性检测模型,判断结算商品图像是否真实,具体可以为:将结算商品图像输入商品真实性检测模型,获取商品真实性检测模型的输出结果,则可以根据输出结果判断结算商品图像是否真实。
其中,实物图像是指实际商品物体的图像。结算商品图像真实是指结算商品图像是货架层上的商品的实物图像,即在确认商品挑选完成后,图像获取装置拍摄实际商品得到的图像,而非拍摄商品照片得到的图像。结算商品图像不真实是指结算商品图像不是货架层上的商品的实物图像,即在确认商品挑选完成后,图像获取装置拍摄商品照片得到的图像,而非拍摄实际商品得到的图像。
步骤230、若确定结算商品图像真实,则进行商品识别。
当确定结算商品图像真实时,则可认为顾客没有用商品照片模拟实际商品,则可以进行商品识别的操作。
步骤240、若确定结算商品图像不真实,则不进行商品识别。
当确定结算商品图像不真实时,则可认为顾客用商品照片模拟实际商品,则不进行商品识别的操作,可以进行报警提醒等操作。
本发明实施例通过当确认商品挑选完成后,通过图像获取装置获取货架层上的结算商品图像,根据商品真实性检测模型,判断结算商品图像是否真实,其中结算商品图像是否真实为结算商品图像是否为货架层上的商品的实物图像,若确定结算商品图像真实,则进行商品识别,若确定结算商品图像不真实,则不进行商品识别,能够在进行商品识别之前,先判断商品图像的真实性,有效识别出实际商品和商品图片,避免用商品图片模拟实际商品造成的结算错误,从而能够减少损失。
图3示出了本发明另一实施例提供的一种商品识别方法的流程示意图。如图3所示,该商品识别方法包括:
步骤301、在商品购买之前,通过图像获取装置获取货架层上的原有商品图像。
在通过图像获取装置获取货架层上的结算商品图像之前,在商品购买之前,可以通过图像获取装置获取货架层上的原有商品图像。其中,在商品购买之前,可以为当前顾客将智能货柜的柜门打开之前,还可以为上一顾客结算完成之后。
其中,原有商品图像是指在商品购买之前获取到的商品图像。在商品购买之前,即顾客还没有将智能货柜的柜门打开,此时得到的商品图像是货架层上原有的商品的图像,并可认为原有商品图像中的商品都是实际存在于货架层上的商品,即原有商品图像是货架层上的商品的实物图像。
步骤310、当确认商品挑选完成后,通过图像获取装置获取货架层上的结算商品图像。
步骤310的实施方式与上述实施例中的步骤210的实施方式相同,此处不再赘述。
步骤321、根据原有商品图像和结算商品图像,确定包含原有商品图像中商品和结算商品图像中商品的商品区域。
其中,商品区域是指原有商品图像中的商品在图像中的区域和结算商品图像中的商品在图像中的区域的并集。则,步骤321具体可以包括:
步骤3211、根据商品框检测模型,确定原有商品图像的第一商品框区域,并确定结算商品图像的第二商品框区域;
步骤3212、将第一商品框区域与第二商品框区域相加,确定为商品区域。
其中,商品框检测模型用于检测图像中的商品,并将商品框选出来。商品框检测模型可以通过大量的图像训练得到。例如,如图4a所示,图4a为图像获取装置获取到的图像(原有商品图像或结算商品图像),将该图像输入商品框检测模型,则商品框检测模型输出包含有商品框的商品图像。
其中,第一商品框区域是指对原有商品图像中的所有商品进行框选得到的商品框的集合;第二商品框区域是指对结算商品图像中的所有商品进行框选得到的商品框的集合。则在步骤3211中,将原有商品图像img1输入商品框检测模型,获取商品框检测模型输出的包含第一商品框区域的原有商品图像,从而确定原有商品图像的第一商品框区域bbox1,其中,bbox1={loc_11(x11,y11,w11,h11),loc_12(x12,y12,w12,h12),……loc_1i(x1i,y1i,w1i,h1i)},i为正整数;将结算商品图像img2输入商品框检测模型,获取商品框检测模型输出的包含第二商品框区域的原有商品图像,从而确定结算商品图像的第二商品框区域bbox2,其中,bbox2={loc_21(x21,y21,w21,h21),loc_22(x22,y22,w22,h22),……loc_2j(x2j,y2j,w2j,h2j)},j为正整数。
在步骤3212中,将第一商品框区域与第二商品框区域相加,是指对第一商品框区域bbox1和第二商品框区域bbox2取并集,即bbox1∪bbox2=bbox_all。则共同商品区域为bbox_all。
步骤322、根据商品区域,提取原有商品图像中的第一背景图像,并提取结算商品图像中的第二背景图像。
其中,步骤322具体可以为:在原有商品图像img1中去除商品区域bbox_all,以获取第一背景图像bg_area1;在结算商品图像img2中去除商品区域bbox_all,以获取第二背景图像bg_area2。例如,如图4b所示,图4b为去除商品区域bbox_all的第一背景图像bg_area1或第二背景图像bg_area2。
步骤323、将第一背景图像和第二背景图像输入商品真实性检测模型,获取商品真实性检测模型的输出结果。
其中,商品真实性检测模型可以通过背景图像的训练得到。如果直接将商品图像输入商品真实性检测模型,商品的变化会影响商品真实性检测模型的检测结果。例如,顾客在柜门打开时,将一瓶饮料拿起又放回原处,该饮料放置的角度可能与原来的角度不同,而使得结算商品图像与原有商品图像具有差别,因此,直接将原有商品图像和结算商品图像输入商品真实性检测模型,得到的检测结果可能是不准确的。
但是,原有商品图像和结算商品图像的背景基本不变(只对开门前和关门后的商品进行检测,智能货柜内的环境受外部环境光照变化的影响较小),因此在本实施例中,提取原有商品图像中的第一背景图像以及结算商品图像中的第二背景图像,将第一背景图像和第二背景图像输入商品真实性检测模型,获取商品真实性检测模型的输出结果,此时得到的输出结果较准确。
步骤324、根据商品真实性检测模型的输出结果,判断结算商品图像是否真实。
其中,商品真实性检测模型的输出结果可以为一个数值,则根据商品真实性检测模型的输出结果,判断结算商品图像是否真实,具体可以为:比较商品真实性检测模型的输出的数值与预设阈值,若该数值大于预设阈值,则确定结算商品图像不真实,若该数值小于或者等于预设阈值,则确定结算商品图像真实。例如,如图4c所示,将原有商品图像img1输入商品框检测模型得到第一商品框区域bbox1,将结算商品图像ing2输入商品框检测模型得到第二商品框区域bbox2;对第一商品框区域bbox1和第二商品框区域bbox2取并集,得到商品区域bbox_all;在原有商品图像img1中去除商品区域bbox_all,得到第一背景图像bg_area1,在结算商品图像img2中去除商品区域bbox_all,得到第二背景图像bg_area2;将第一背景图像bg_area1输入商品真实性检测模型,得到第一背景图像的特征值feature1,将第二背景图像bg_area2输入商品真实性检测模型,得到第二背景图像的特征值feature2,则商品真实性检测模型输出feature1与feature2的差值;将feature1与feature2的差值与预设阈值H比较,若feature1与feature2的差值大于预设阈值H,则确定结算商品图像不真实,若feature1与feature2的差值小于或者等于预设阈值H,则确定结算商品图像真实。
需要说明的是,预设阈值可以根据实际使用情况或者模型的训练情况进行设置,例如,若智能货柜内的环境变化越小,则预设阈值的取值越小,反之,若智能货柜内的环境变化越大,则预设阈值的取值越大。
步骤330、若确定结算商品图像真实,则进行商品识别。
其中,进行商品识别,具体可以为:通过商品识别模型识别原有商品图像中的原有商品类别和原有商品数量,并通过商品识别模型识别结算商品图像中的剩余商品类别和剩余商品数量,比较原有商品类别、原有商品数量、剩余商品类别和剩余商品数量,确定原有商品相比剩余商品所缺少的商品,则确定为结算商品。其中,商品识别模型为预先设置的用于识别商品类别和商品数量的模型。在获取到结算商品后,可以根据结算商品类别及其对应的单价,计算顾客的应付金额,从而对顾客进行结算。
步骤340、若确定结算商品图像不真实,则不进行商品识别。
本发明实施例通过剩余商品类别和剩余商品数量,当确认商品挑选完成后,通过图像获取装置获取货架层上的结算商品图像,根据原有商品图像和结算商品图像,确定包含原有商品图像中商品和结算商品图像中商品的商品区域,根据商品框检测模型,确定原有商品图像的第一商品框区域,并确定结算商品图像的第二商品框区域,将第一商品框区域与第二商品框区域相加,确定为商品区域,根据商品区域,提取原有商品图像中的第一背景图像,并提取结算商品图像中的第二背景图像,将第一背景图像和第二背景图像输入商品真实性检测模型,获取商品真实性检测模型的输出结果,根据商品真实性检测模型的输出结果,判断结算商品图像是否真实,若确定结算商品图像真实,则进行商品识别,若确定结算商品图像不真实,则不进行商品识别,能够在进行商品识别之前,通过商品图像的背景判断商品图像的真实性,准确地识别出实际商品和商品图片,避免用商品图片模拟实际商品造成的结算错误,从而能够减少损失。
图5示出了本发明又一实施例提供的一种商品识别方法的流程示意图。如图5所示,与上述实施例的不同之处在于,该商品识别方法还包括:
步骤351、获取训练图像集合;
步骤352、根据训练图像集合,训练预设卷积神经网络;
步骤353、将训练后的预设卷积神经网络确定为商品真实性检测模型。
其中,训练图像集合是指用于进行模型训练的图像的集合。训练图像集合可以包括若干图像组,每一图像组包括真实原有商品图像、真实结算商品图像和虚假结算商品图像。其中,真实原有商品图像是指在货架层放置真实商品时智能货柜柜门打开前拍摄的图像;真实结算商品图像是指在货架层放置真实商品时智能货柜柜门关闭后拍摄的图像;虚假结算商品图像是指在货架层放置商品图片时智能货柜柜门关闭后拍摄的图像。
则,步骤352具体可以包括:
步骤3521、根据训练图像集合,训练预设卷积神经网络,具体包括:
步骤3522、将真实原有商品图像和真实结算商品图像输入预设卷积神经网络,获取预设卷积神经网络的第一输出值;
步骤3523、若第一输出值大于预设阈值,则调整预设卷积神经网络直至第一输出值小于或者等于预设阈值;
步骤3524、将真实原有商品图像和虚假结算商品图像输入预设卷积神经网络,获取预设卷积神经网络的第二输出值;
步骤3525、若第二输出值小于或者等于预设阈值,则调整预设卷积神经网络直至第二输出值大于预设阈值。
其中,预设卷积神经网络可以为深度学习特征提取算法,例如ALEXNET,GOOGLENET,RESNET等等。预设卷积神经网络用于提取图像特征。
其中,第一输出值可以为真实原有商品图像的特征值与真实结算商品图像的特征值的差。则在步骤3522中,预设卷积神经网络分别提取真实原有商品图像的特征值以及真实结算商品图像的特征值,并将其作差,得到第一输出值。
在步骤3523中,比较第一输出值和预设阈值,若第一输出值大于预设阈值,则调整预设卷积神经网络的参数直至第一输出值小于或者等于预设阈值;若第一输出值小于或者等于预设阈值,则不调整预设卷积神经网络。当然,在一些其他实施例中,当第一输出值大于预设阈值,还可以调整预设卷积神经网络的参数或者预设阈值,直至第一输出值小于或者等于预设阈值。
其中,第二输出值可以为真实原有商品图像的特征值与虚假结算商品图像的特征值的差。则在步骤3524中,预设卷积神经网络分别提取真实原有商品图像的特征值以及虚假结算商品图像的特征值,并将其作差,得到第二输出值。
在步骤3525中,比较第二输出值和预设阈值,若第二输出值小于或者等于预设阈值,则调整预设卷积神经网络的参数直至第二输出值大于预设阈值;若第二输出值大于预设阈值,则不调整预设卷积神经网络。当然,在一些其他实施例中,当第二输出值小于或者等于预设阈值,还可以调整预设卷积神经网络的参数或者预设阈值,直至第二输出值大于预设阈值。
循环步骤3521至步骤3525,直至第一输出值小于或者等于预设阈值且第二输出值大于预设阈值为止,则完成预设卷积神经网络的训练。
本发明实施例通过获取训练图像集合,根据训练图像集合,训练预设卷积神经网络,训练后的预设卷积神经网络确定为商品真实性检测模型,能够获得准确的检测模型,从而能够在进行商品识别之前,准确地判断商品图像的真实性,有效识别出实际商品和商品图片,避免用商品图片模拟实际商品造成的结算错误,从而能够减少损失。
图6示出了本发明实施例提供的一种智能货柜的结构示意图。其中,智能货柜100的结构可以如图1所示,本发明具体实施例并不对智能货柜的具体实现做限定。
其中,智能货柜100还包括处理器和存储器,所述存储器用于存放至少一可执行指令,当智能货柜运行时,处理器执行可执行指令,使处理器执行根据上述任意方法实施例中的商品识别方法的步骤。
可选地,如图6所示,该智能货柜100可以包括:处理器(processor)103、通信接口(Communications Interface)104、存储器(memory)106、以及通信总线108。处理器103、通信接口104、存储器106、以及通信总线108可以集成在智能货柜100的柜体内。
其中:处理器103、通信接口104、以及存储器106通过通信总线108完成相互间的通信。通信接口104,用于与其它设备比如图像获取装置102或其它服务器等的网元通信。处理器102,用于执行程序110,具体可以执行上述任意方法实施例中的商品识别方法。
具体地,程序110可以包括程序代码,该程序代码包括计算机操作指令。
处理器103可能是中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。智能货柜包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
存储器106,用于存放程序110。存储器106可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
需要说明的是,本发明实施例提供的智能货柜系统是能够执行上述商品识别方法的系统,则上述基于商品识别方法的所有实施例均适用于该系统,且均能达到相同或相似的有益效果。
本发明实施例通过当确认商品挑选完成后,通过图像获取装置获取货架层上的结算商品图像,根据商品真实性检测模型,判断结算商品图像是否真实,其中结算商品图像是否真实为结算商品图像是否为货架层上的商品的实物图像,若确定结算商品图像真实,则进行商品识别,若确定结算商品图像不真实,则不进行商品识别,能够在进行商品识别之前,先判断商品图像的真实性,有效识别出实际商品和商品图片,避免用商品图片模拟实际商品造成的结算错误,从而能够减少损失。
图7示出了本发明实施例提供的一种智能货柜系统的结构示意图。如图7所示,该系统400包括:智能货柜100和云端服务器500。智能货柜100和云端服务器500可以为无线连接,智能货柜100和云端服务器500能够进行通信。
其中,智能货柜100的结构可以如图1所示,本发明具体实施例并不对智能货柜的具体实现做限定。
其中,云端服务器500包括处理器和存储器,所述存储器用于存放至少一可执行指令,当智能货柜运行时,处理器执行可执行指令,使处理器执行根据上述任意方法实施例中的商品识别方法的步骤。
可选地,如图8所示,该云端服务器500可以包括:处理器(processor)502、通信接口(Communications Interface)504、存储器(memory)506、以及通信总线508。
其中:处理器502、通信接口504、以及存储器506通过通信总线508完成相互间的通信。通信接口504,用于与其它设备比如智能货柜100或其它服务器等的网元通信。处理器502,用于执行程序510,具体可以执行上述任意方法实施例中的商品识别方法。
具体地,程序510可以包括程序代码,该程序代码包括计算机操作指令。
处理器502可能是中央处理器CPU,或者是特定集成电路ASIC(ApplicationSpecific Integrated Circuit),或者是被配置成实施本发明实施例的一个或多个集成电路。智能货柜包括的一个或多个处理器,可以是同一类型的处理器,如一个或多个CPU;也可以是不同类型的处理器,如一个或多个CPU以及一个或多个ASIC。
存储器506,用于存放程序510。存储器506可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
需要说明的是,本发明实施例提供的智能货柜系统是能够执行上述商品识别方法的系统,则上述基于商品识别方法的所有实施例均适用于该系统,且均能达到相同或相似的有益效果。
本发明实施例通过当确认商品挑选完成后,通过图像获取装置获取货架层上的结算商品图像,根据商品真实性检测模型,判断结算商品图像是否真实,其中结算商品图像是否真实为结算商品图像是否为货架层上的商品的实物图像,若确定结算商品图像真实,则进行商品识别,若确定结算商品图像不真实,则不进行商品识别,能够在进行商品识别之前,先判断商品图像的真实性,有效识别出实际商品和商品图片,避免用商品图片模拟实际商品造成的结算错误,从而能够减少损失。
本发明实施例提供了一种计算机可读存储介质,所述存储介质中存储有至少一可执行指令,所述可执行指令使处理器执行上述任意方法实施例中的商品识别方法。
本发明实施例提供了一种计算机程序产品,所述计算机程序产品包括存储在计算机存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,使所述计算机执行上述任意方法实施例中的商品识别方法。
在此提供的算法或显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明实施例也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本发明并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明实施例的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。上述实施例中的步骤,除有特殊说明外,不应理解为对执行顺序的限定。