具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请部分实施例进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。然而,本领域的普通技术人员可以理解,在本申请的各实施例中,为了使读者更好地理解本申请而提出了许多技术细节。但是,即使没有这些技术细节和基于以下各实施例的种种变化和修改,也可以实现本申请所要求保护的技术方案。
本申请的第一实施例涉及一种智能售货柜,该智能售货柜可以放置在人流量大的地方,如电影院、商场、火车站等。该智能售货柜10包括:设置有至少一个放置空间101的柜体102,设置在柜体102内相对的表面的测量光幕104,该测量光幕104贴近于柜体102内的物品取放口(在图1中未示出)所在位置,设置在每个放置空间102内的摄像头105,以及分别与测量光幕104和摄像头105通信连接的主控模块106,其中,测量光幕104产生的光覆盖物品取放口;具体的结构如图1所示。
具体的说,测量光幕104包括至少一对光发射器和光接收器,其中,每对光发射器和光接收器相互分离且位置相对。由于光沿直线传播,测量光幕104中的一对光发射器和光接收器所在位置平行相对,如图1中所示。当然,可以根据智能售货柜中物品取放口的大小确定测量光幕104中的光发射器和光接收器的对数。物品取放口面积大,则测量光幕104中包含测光接收器和光发射器的对数多,若物品取放口的面积小,则测量光幕104中的光发射器和光接收器的对数少。本实施例中光发射器可以是红外线发射器,光接收器可以是红外线接收器,但发射器和光接收器的类型并不限于本实施例中所列举类型。
一个具体的实现中,测量光幕104设置在柜体相对的两个侧面,和/或,测量光幕104设置在柜体的底部和柜体的顶部。
具体的说,由于柜体有一个表面设置有物品取放口,且测量光幕104产生的光覆盖物品取放口,因此,在柜体中能够设置测量光幕104的相对的表面有4个,即柜体的相对的两个侧面(如图2中的1021和1022),柜体的底部(如图2中的1023)和柜体的顶部(如图2中的1024)所示柜体的结构。需要说明的是,由于需要测量光幕产生的光覆盖物品取放口,可以将安装有光发射器的部分设置在柜体的一个侧面,将安装有光接收器的部分设置在柜体与光发射器相对的另一个侧面,如图2中所示柜体的结构示意图;也可以将安装有光发射器的部分设置在柜体的顶部(或底部),将安装有光接收器的部分设置在柜体的底部(或顶部)。可以理解的是,若有多个测量光幕104,那么可以在柜体的相对的两个侧面以及柜体的顶部和底部都安装测量光幕104。
一个具体的实现中,测量光幕104在主控模块106的控制下获取通过物品取放口的物品的尺寸信息;摄像头105在主控模块106的控制下拍摄放置空间内的物品;主控模块106将尺寸信息以及摄像头105拍摄获得的图像传输至物品识别装置。
具体的说,测量光幕104和摄像头105可以24小时处于开启状态,为了节省测量光幕104和摄像头105的功耗,还可以是主控模块106在接收到满足预设条件的信号后开启测量光幕104和/或摄像头105,如,将接近传感器安装在智能售货柜10上,该接近传感器与主控模块106连接,当接近传感器检测到当前有人接近该智能售货柜,向主控模块106发送信号,主控模块106接收该信号并开启测量光幕104和摄像头105。本实施例中采用主控模块106在满足预设条件后开启测量光幕104和摄像头105的方式,当然,测量光幕104和摄像头105的触发条件不限于本实施例中的方式。
主控模块106在接收到满足预设条件的信号时,开启测量光幕104。测量光幕104产生覆盖物品取放口的光幕,当有物品通过该光幕时,该光幕出现了遮挡,那么根据被遮挡的光发射器的位置、遮挡时间等信息,可以确定出通过该光幕的物品的尺寸信息,例如,一盒装牛奶通过测量光幕产生的光幕时,通过测量光幕104扫描该盒牛奶,获取该盒牛奶的形状信息,同时获得该牛奶盒的长、宽、高信息。本实施例中不对获取尺寸信息的过程进行赘述。
需要说明的是,测量光幕内设置有控制模块,测量光幕通过同步扫描的方式识别发生遮挡的光发射器和光接收器的位置,遮挡时间以及物品通过测量光幕产生的光幕时的速度,该测量光幕内的控制模块可以确定出该物品的外形、体积等信息,此处,物品的尺寸信息为物品外形、体积等信息。
可以理解的是,物品的尺寸信息还可以仅表示为发生遮挡的光发射器和光接收器的位置,遮挡时间以及物品通过测量光幕产生的光幕时的速度等信息,测量光幕不对此物品的尺寸信息进行处理,而是将该尺寸信息传输至物品识别装置,由物品识别装置将物品的尺寸信息转换为对应的外形、体积等信息。
测量光幕104将获取到的物品的尺寸信息传输至主控模块106,主控模块106将尺寸信息传输至物品识别装置。测量光幕104可以通过串口实现与主控模块106之间的通信连接。
此外,主控模块106在接收到满足预设条件的信号时,同时开启摄像头105,控制摄像头105拍摄该摄像头105所在放置空间内的物品。当然,主控模块106可以在获取到N张图像后,将N张图像传输至物品识别装置,N为大于0的整数。当然,主控模块106与物品识别装置之间可以是无线通信连接(如5G),也可以是有线通信连接,或者采用无线结合有线通信的方式。
下面将以一个具体的例子说明该智能售货柜的使用过程。
假设测量光幕的安装在智能售货柜内相对的两个侧面,其中,测量光幕中包含5对光发射器和光接收器。该5对光发射器和光接收器以竖直排列的方式均匀安装在柜体的两个侧面,且每对光发射器和光接收器位置相对。摄像头安装在柜体的顶部的中间位置,在靠近测量光幕的位置安装接近传感器,当检测到有人靠近该智能售货柜时,开启测量光幕和摄像头。若用户从智能售货柜拿出了1罐牛奶,牛奶经过测量光幕,光幕被遮挡,测量光幕同步扫描识别发生遮挡的光发射器和光接收器的位置,测量光幕将记录发生遮挡的光发射器和光接收器的位置以及遮挡的时间,同时获取物品通过该光幕的速度,测量光幕通过记录的数据,可获得该盒牛奶长方体形状,以及该盒牛奶的长宽高信息。在有人接近时开启摄像头,对该柜内进行拍摄,在检测到有人远离时,再次拍照并在拍照后关闭摄像头,将获取的物品的尺寸信息和摄像头拍摄图像均发送至物品识别装置。当然,若检测有人远离该智能售货柜时,关闭测量光幕和/或摄像头。物品识别装置通过物品的尺寸信息和获取到的图像确定用户从该智能售货柜内取出的物品种类及数量。
相对于现有技术而言,本申请部分实施例中在智能售货柜内增加测量光幕,由于测量光幕设置在贴近于物品取放口位置,因而可获取通过智能售货柜的物品取放口的物品的尺寸信息。通常不同种类的物品的尺寸信息不同,从而可以通过物品的尺寸信息识别物品的种类。由于增加了测量光幕,降低了智能售货柜对摄像头的依赖性,减少了因摄像头故障而影响对柜内物品的识别。此外,结合测量光幕和摄像头进行的两种识别方式,提高了从智能售货柜内取出或放入的物品识别的准确性。
本申请的第二实施例涉及一种智能售货柜,本实施例是在第一实施例的基础上做了进一步改进,具体改进之处为:本实施例中,智能售货柜还包括柜门,柜门107与柜体102铰接。该智能售货柜10的具体结构如图3所示。
一个具体的实现中,主控模块106在检测到柜门开启后,开启测量光幕104,并获取每一个通过物品取放口的物品的尺寸信息;在检测到柜门107关闭后,关闭测量光幕104,并控制摄像头105拍摄放置空间(图3中未示出)内的物品。
具体的说,通过设置柜门107确保智能售货柜内物品的安全。通过柜门的关闭触发测量光幕和/或摄像头的关闭,从而保证可以及时获取智能售货柜内物品的信息,如可以在柜门107处安装传感器,从而可以准确检测该柜门107是否开启。可以理解的是,可以将测量光幕104安装在贴近柜门107的两个侧面或者贴近柜门107的柜体的顶部和柜体102的底部。在柜门107关闭后,不会发生从柜内取出或放入物品的情况,因此,主控模块106关闭测量光幕104,同时控制摄像头105拍摄放置空间内的物品。物品识别装置根据摄像头105拍摄的图像和测量光幕104获取的物品的尺寸信息,确定从柜内取出或放入的物品种类和数量。
可以理解的是,主控模块106对柜门107的检测方法并不限制于本实施例中列举的方法,还可以采用其他方式进行检测,此处不再一一进行列举。
一个具体的实现中,测量光幕104包括单面发射测量光幕或多面发射测量光幕;其中,单面发射测量光幕中的所有光发射器均位于同一侧,对应的光接收器均设置在与光发射器位置相对的另一侧;多面发射测量光幕中至少一个光发射器和至少一个光接收器位于同一侧。
具体的说,单面发射测量光幕的所有发射器均位于同一侧,如图4a所示,图4a中,圆形表示光发射器,三角形表示光接收器,虚线为光发射器产生的光。多面发射测量光幕中的一侧可以安装两个发射器,三个光接收器,对应的另一侧,安装三个光发射器和两个光接收器,如图4b所示,圆形表示光发射器,三角形表示光接收器,虚线为光发射器产生的光。
光发射器和光接收器均设置在测量光幕的壳体内,且用于安装光发射器的壳体与安装光接收器的壳体相互分离。该测量光幕104的外形如图4a和图4b中所示的长方形。测量光幕104中的光轴间距由柜体内放置的物品的尺寸确定,光轴由光发射器发射的光形成。
测量光幕104产生的光轴间距通常有1mm、2mm、2.5mm、5mm、7.5mm和10mm,可以根据智能售货柜内放置物品的尺寸大小选择合适光轴间距的测量光幕进行安装,如,物品小,可以选用1mm光轴检测的测量光幕。
需要说明的是,测量光幕104产生的光可以覆盖柜门,本实施方式不限制测量光幕的数量,可以安装多个测量光幕。
与现有技术相比,本实施例提供的智能售货柜,由于设置有柜门,通过柜门可以有效的保护柜内物品的安全;主控光模块通过柜门的关闭控制测量光幕的开闭和摄像头对放置空间内物品的拍摄,减少了智能售货柜的功耗,同时,使得测量光幕和摄像头可以及时获取柜内物品的种类和数量,便于物品识别装置对该智能售货柜内物品的识别。
本申请的第三实施例涉及一种智能售货柜,本实施例是在第二实施例的基础上做了进一步改进,主要改进之处在于,放置空间由安装于柜体102内的层隔板108分隔形成,层隔板108中间高且高度逐渐向两端降低,层隔板108跨接于柜体102相对的两个侧面之间;摄像头105设置于放置空间的顶部,该智能售货柜的结构如图5所示(图5中未示出主控模块)。
具体的说,层隔板108跨接在柜体相对的两个侧面之间,该层隔板108的形状可以是三角形、梯形或者弧形。摄像头105可以安装在放置空间的顶部的中心位置,便于该摄像头105的视角范围覆盖整个放置空间。
一个具体的实现中,层隔板108朝向柜体102顶部的一面上设置有至少一个分隔条109,分隔条109用于固定放置于层隔板102上的物品。该层隔板的具体结构如图6所示(图6中未示出主控模块)。
具体的说,可以在层隔板108上设置多个分隔条109,如在层隔板108的中心位置设置一个分隔条109,其他分隔条109设置于中心位置的两侧。设置于中心位置两侧的每个分隔条109在层隔板108上以固定点(如图6中的实心黑点)为中心转动,直至拍摄交线与放置物的中线重合,其中,拍摄交线为摄像头105的视角范围所在面与由分隔条109固定的放置物的被拍摄面之间的交线。分隔条109的高度是根据放置空间内物品的高度确定,其中,位于中心位置的分隔条109的高度小于设置于中心位置两侧的每个分隔条109的高度。
本实施例提供的智能售货柜,由于每个层隔板的形状为中间高且高度逐渐向两端降低,使得放置在该层隔板上的放置物与水平面之间存在倾斜角,减少了相邻放置物之间的遮挡,增加了摄像头对物品拍摄的面积,增加拍摄图像中物品的有效像素,提高了对图像中放置物识别的准确性,同时,分隔条便于固定放置在层隔板上的物品。
本申请的第四实施例涉及一种智能售货柜,本实施例是在第三实施例的基础上做了进一步改进,具体改进之处为:本实施例中,智能售货柜还包括:覆盖放置空间顶部且镜面朝向放置空间底部的镜子,如图7所示,其中,黑色粗实线表示镜子。
具体的说,放置空间底部设置有摄像头105,摄像头105的镜头正对摄像头所在放置空间内的镜子110,摄像头105的视角范围覆盖摄像头105所在放置空间的镜子110的镜面;其中,主控模块106控制摄像头105对放置空间内的镜子110进行拍摄。
本实施例中提供的智能售货柜,通过在放置空间的顶部设置镜子,且摄像头拍摄镜子的镜面,从而增加了摄像头与放置空间内物品之间的距离,减小拍摄图像中物品发生畸变的可能性,提高对图像的识别能力。
本申请的第五实施例涉及一种物品识别的方法,该物品识别的方法,用于识别从智能售货柜中取出或放入的物品,具体流程如图8所示。
步骤801:接收测量光幕获取的通过物品取放口的物品的尺寸信息。
具体的说,智能售货柜与物品识别装置通信连接,如无线通信连接(4G/5G通信)的方式。智能售货柜的主控模块控制测量光幕获取通过物品取放口的物品的尺寸信息,并向该物品识别装置发送获取到的物品的尺寸信息。
一个具体的实现中,在接收测量光幕获取的通过物品取放口的物品的尺寸信息之前,预先存储物品的尺寸信息,以及存储物品在不同视角范围被拍摄的图像。
具体的说,存储的物品的尺寸信息为测量光幕通过测量物品获取,为了增加后续步骤中通过物品的尺寸信息确定物品的种类和数量的准确性,同时为了更加符合实际生活,存储不同人的手握住该物品通过测量光幕时得到的尺寸信息,或者存储不同手势握住该物品通过测量光幕时得到的尺寸信息。总之,应当尽可能的丰富物品在不同状态下通过测量光幕的尺寸信息,此处不再一一列举。
存储物品在不同视角范围被拍摄的图像,如盒装牛奶在俯拍时的图像,仰拍时的图像、侧拍时的图像等。
步骤802:根据尺寸信息,识别通过物品取放口的物品以及物品数量。
具体的说,对存储的物品的尺寸信息进行深度学习,如获取物品的尺寸信息(形状、体积等)的特征,建立物品的数据模型,将接收的物品的尺寸信息带入建立的数据模型中,即可识别出该物品的种类。识别出每个物品的种类后,统计每种物品的数量。当然,还可以直接将获取的物品的尺寸信息与预存的物品尺寸信息进行匹配,通过匹配的相似度确定物品的种类。本实施例不再一一列举通过物品尺寸识别物品的方法。
步骤803:接收摄像头拍摄放置空间内的物品获得的图像。
具体的说,该步骤与步骤801大致相同,此处不再赘述,当然,为了识别的准确性,可以获取多张摄像头拍摄放置空间内物品获得的图像。
步骤804:根据图像,识别放置空间内的物品及数量。
具体的说,可以采用深度学习的方式对图像进行识别,确定出图中物品的种类以及物品在图像中的位置。还可以采用比对的方式识别图中物品,该方法需要预先存储物品在不同视角范围内被拍摄的图像,将图像和预先存储的物品图像进行匹配,根据相似度确定图像中的物品种类。
当然,为了识别的准确度,还可以对图像进行抗干扰处理,消除图像中与智能售货柜内物品不相关的图像。
步骤805:根据通过物品取放口的物品及数量和放置空间内的物品及数量,确定从柜体内取出或放入的物品的种类和数量。
一个具体实现中,将识别的通过物品取放口的物品及数量作为第一识别结果;将当前识别的图像中的物品与上一次识别的图像中的物品进行比对,以及将当前识别的图像中物品数量与上一次识别的图像中的物品数量进行比对,确定当前采用图像识别方式获取的柜体内取出或放入的物品的种类和数量,并作为第二识别结果。
判断第一识别结果是否与第二识别结果相同,若相同,则以任一识别结果作为购物清单输出。
若不相同,则计算每一个识别结果对应的货币价值,以两种方式中货币价值高的识别结果作为购物清单输出。
具体的说,第一识别结果是识别测量光幕获取到的物品尺寸信息得到,第二识别结果是识别摄像头拍摄的图像得到。若第一识别结果和第二识别结果相同,表明当前无论第一识别结果还是第二识别结果均为准确的。若第一识别结果和第二识别结果不同,则表明两种识别结果中存在不准确的情况,为了减少智能售货柜拥有者的损失,此时,应当以识别结果对应货币价值高的识别结果为准。例如,第一识别结果为:从智能售货柜取出1盒牛奶,第二识别结果为:从智能售货柜内取出两盒牛奶,若牛奶的品种一样,单价一样,则以第二识别结果作为购物清单输出。
值得一提的是,在输出购物清单之前,检测当前用户是否对柜体内摆放异常的物品进行纠正处理,若是,则根据用户的纠正处理确定对应的处理清单,并将处理清单添加至购物清单。
具体的说,智能售货柜内物品呈倾斜,横放、遮挡的情况均认为是摆放异常。若用户获知该智能售货柜内的物品存在摆放异常的情况后,接受纠正摆放异常的处理请求,则在输出购物清单之前,通过对摄像头拍摄的图像的识别,确定用户是否对柜内摆放异常的物品进行纠正处理,若是,记录用户进行纠正处理后的物品种类及数量,并将该记录内容作为处理清单,加入购物清单中。
一个具体的实现中,在接收摄像头拍摄放置空间内的物品获得的图像之后且在检测当前用户是否对柜体内摆放异常的物品进行纠正处理之前,该物品识别的方法还包括:判断智能售货柜的柜体内是否存在摆放异常的物品。
具体的说,判断智能售货柜的柜体内是否存在摆放异常的物品的方法有三种:
方法一:根据图像,判断柜体内是否存在摆放异常的物品,若是,则向用户终端发送物品摆放异常的信息。
具体的说,物品识别装置可以预先存储物品各种摆放异常的图像,通过将摄像头放置空间内的物品获得的图像与预先存储的物品摆放异常的图像进行比对,根据比对后的相似度确定是否存在摆放异常的物品。
方法二:根据智能售货柜上一次交易记录,判断上一次交易中第一识别结果对应的货币价值是否小于第二识别结果对应的货币价值,若是,则向用户终端发送物品摆放异常的信息。
具体的说,若在上一次交易中存在第一识别结果对应的货币价值小于第二识别结果对应的货币价值,则表明存在出现遮挡的情况,即可判定当前有物品摆放异常。
方法三:将方法一与方法二进行任意组合,即可以先进行方法一,再进行方法二,或者先进行方法二,再进行方法一。
在出现物品摆放异常的情况时,通知用户对摆放异常的物品进行纠正处理,减少因遮挡造成的误识别的概率,提高了摄像头对柜内物品拍摄的质量。
本实施例中提供的物品识别的方法,通过测量光幕进行识别方式,结合图像识别的方式确定从智能售货柜内取出或放入的物品的种类和数量,降低了智能售货柜对摄像头依赖性,减少了因摄像头故障而导致的资源浪费;同时结合两种识别方式,提高了从智能售货柜内取出或放入的物品识别的准确性。
本申请的第六实施例涉及一种物品识别装置,该物品识别装置与智能售货柜通信连接,物品识别装置90包括:通信模块901、光幕识别模块902、图像识别模块903和确定模块904,该物品识别装置90的具体结构如图9所示。
具体的说,通信模块901用于接收测量光幕获取的通过物品取放口的物品的尺寸信息;光幕识别模块902用于根据尺寸信息,识别通过物品取放口的物品以及数量;通信模块901还用于接收摄像头拍摄放置空间内的物品获得的图像;图像识别模块903用于根据图像,识别放置空间内的物品及数量;确定模块904用于根据通过物品取放口的物品及数量和放置空间内的物品及数量,确定从柜体内取出或放入的物品的种类和数量。
本实施例是与上述物品识别的方法对应的虚拟装置实施例,上述方法实施例中技术细节在本实施例中依然适用,此处不再赘述。
需要说明的是,上述装置实施例仅仅是示意性的,并不对本申请的保护范围构成限定,在实际应用中,本领域的技术人员可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的,此处不做限制。
本申请的第七实施例涉及一种服务器20,其结构如图10所示。包括:至少一个处理器201;以及,与至少一个处理器201通信连接的存储器202。存储器202存储有可被至少一个处理器201执行的指令。指令被至少一个处理器201执行,以使至少一个处理器201能够执行上述的物品识别的方法。
存储器202和处理器201采用总线方式连接,总线可以包括任意数量的互联的总线和桥,总线将一个或多个处理器201和存储器902的各种电路链接在一起。总线还可以将诸如***设备、稳压器和功率管理电路等之类的各种其他电路链接在一起,这些都是本领域所公知的,因此,本文不再对其进行进一步描述。总线接口在总线和收发机之间提供接口。收发机可以是一个元件,也可以是多个元件,比如多个接收器和发送器,提供用于在传输介质上与各种其他装置通信的单元。经处理器201处理的数据通过天线在无线介质上进行传输,进一步,天线还接收数据并将数据传送给处理器201。
处理器201负责管理总线和通常的处理,还可以提供各种功能,包括定时,***接口,电压调节、电源管理以及其他控制功能。而存储器202可以被用于存储处理器在执行操作时所使用的数据。
需要说明的是,本实施例中的处理器能够执行上述的方法实施例中实施步骤,具体的执行功能并未详细说明,可参见方法实施例中的技术细节,此处不再赘述。
本申请的第八实施例涉及一种计算机可读存储介质,该可读存储介质为计算机可读存储介质,该计算机可读存储介质中存储有计算机指令,该计算机指令使计算机能够执行本申请第五实施例中涉及的物品识别的方法。
需要说明的是,本领域的技术人员能够理解,上述实施例中显示方法是通过程序来指令相关的硬件来完成的,该程序存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,Random-Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域的普通技术人员可以理解,上述各实施例是实现本申请的具体实施例,而在实际应用中,可以在形式上和细节上对其作各种改变,而不偏离本申请的精神和范围。