无人零售已成为线上线下商家的共同抢占的市场高地,而最终的胜利者必将是看谁先完全具备了先进成熟、稳定可靠的技术体系,这里我们来关注一下无人零售的技术难点。
1、无人零售的核心问题
打造 无人零售商店最核心的是要解决“什么商品被谁怎么处理了”这个问题,需要处理的因素有5个:人、人的位置、商品、商品的位置、动作。
动作主要是通过商品与手或货架的状态来识别的,例如手进入或退出货架的手势、物品在手的状态识别拿取或放回商品。
商品识别主要是通过初始状态的选择,中间状态通过购物清单核对来缩小识别范围,降低难度,同时通过雇员保证初始状态不被破坏。
位置主要通过手机定位、传感器定位和图片定位,利用人体姿态识别可以很好的将动作定位到人。
对于超市而言,商品存在两种状态——卖掉或没卖掉;对货架而言,商品的状态是在或不在;对顾客而言,商品的状态是买或不买;对人的手而言,商品的状态是在手或不在手,进一步简化成拿起或放回。
它们的关系链如下表:
那么如何表示或测量这两种状态呢?用相机和传感器都可以表示该状态。
a、相机如何处理
在手进入货架拿取商品前和拿取商品后,对手拍摄 1 组图片,记为第一图片和第二图片,对货架拍摄 1 组图片,记为第三图片和第四图片。比较第一图片和第二图片的差异,此时需要利用到 CV 算法识别出肤色找到手,从而知道第一和第二图片手势的差异,识别握姿和舒展姿态,根据两个姿态在第一第二图片出现的顺序可以判断拿取还是放回。例如,第一图片是握姿,第二图片是舒展,即放回;第一图片是舒展,第二图片是握姿,即拿取。
随后利用肤色找到手后,再识别第一第二图片手边缘的色差识别商品是否在手,根据前后顺序可以判断拿取或放回。例如,第一图片手边缘色差较浅,表示没有商品,第二图片手边缘色差较深,表示有商品,即商品在手且是拿取过程。放回同理。
利用第三第四图片,对货架进行处理,同样可以判断拿取或放回。例如第四图片比第三图片多了一个或多个商品,那么就是放回;如果第四图片比第三图片少一个或多个商品就是拿取。
b、传感器如何处理
对重力传感器来说,商品被拿取,商品减少,重量减少;商品被放回,商品增加,重量增加。所以重量数值变化可以表示拿取或放回。
对于红外来说,在特定地方,商品被放回,红外会被遮挡,商品被拿取,红外不会被遮挡。可以通过红外遮挡状态表示拿取或放回。
2、如何有效识别商品
商品的识别应该是难度最大的关键点之一。
在初始状态,特定品类的商品被放在特定位置,由相机和传感器侦测。对相机和传感器而言,它们只需优先识别少数且特定的商品类及数量。这个相对而言是简单的。即使图片无法识别,也可以根据重量识别和筛查。在品类摆放的时候可以选择易区分的品类摆放一起,所有被拿取的商品记录在顾客的购物清单里。
困难在中间状态。由于顾客放回会破坏初始状态,导致识别难度急剧上升。因为顾客可能放回任意商品,所以商品的识别范围又扩大到无法解决的情况。
先讨论放回后的最终状态,一般分成 2 种:放回正确或错误。
对于放回正确,识别难度在初始状态的水平。
对于放回错误,存在 3 种情况:放回错误但可识别;放回错误无法识别;放回错误且识别错误。
放回错误但可识别的情况是因为商品本身易通过图像和重量识别,此种情况较少。大多数情况是放回错误且无法识别或识别错误。放回错误且无法识别的情况可以给用户发送消息,让用户确认。识别错误的情况只能提高算法精度,同时调整判断极限值,将部分识别错误的情况向无法识别装换,同时及时通知雇员来整理回到初始状态。
一般而言拿取商品后放回的情况较多,且不放回正确的位置情况也不少,其中放回错误且无法识别或识别错误又占大多数,放回错误但可识别是少数。总的来说无法识别和误判比例不容忽视,甚至导致整个系统无法工作。
刚才说到,由于顾客放回商品,导致识别范围扩大到所有商品,这是可以部分解决的。因为商品的每次放回都是基于顾客的前 N 次拿取,他放回的商品必须是之前拿取的商品,所以优先识别顾客的购物清单即可,在这种情况下,识别难度又回到初始状态相当的水平。
3、如何知道动作发起者的身份?
将商品记录到动作的发起者身上是一件较为复杂的工程。
识别人大体通过 2 种方式:身体特征或附带物,例如人脸和手机。人脸识别的精度在室内还在可接受范围,几乎可以当做唯一标识。手机也是一个人的唯一标识,通过判断是谁的手机从而判断顾客是谁。
4、如何匹配顾客 ID 与商品 ID?
要匹配顾客和商品的 ID,首先要确定人和商品的定位。
关于人的定位,可以用到追踪系统。手机的 GPS、wifi、蓝牙也可以提供较准确丰富的位置信息。
关于商品的定位,红外、重量感应、相机、商品和货架初始的问题都是已知的,可以推测出来。例如,通过隔板,将同类商品分在不同的网格种,每个网格对应不同的红外或重量感应器,可以知道被拿取或放回商品的位置。
通过人和商品的位置匹配,连接了“什么商品”“被谁”两个因素。
因为成本和技术问题,位置精度是一个很大的问题,再加上这个定位人和商品位置的方案本身的缺陷,顾客和商品的匹配误差较大。例如,顾客 A 站在商品 A 前,顾客 B 站在商品 B 前,顾客 A 伸手去拿商品 B,这种情况系统是无法准确判断的。当然可以由顾客确认,但是这仅仅是无力的补救措施。
之前有人提到过 Amazon Go 可能利用多角度的完整的人体姿态识别来定位匹配人—动作—商品的关系。这种方法的关键是摄像头需要很好的视野和足够的摄像头。从宣传视频来看, Amazon Go 的货架设计使得最低层和中间层是无法获取足够好的视野,可能的解决方式是依靠对面货架和天花板的摄像头。Amazon Go 的货架构造非常重要,只要再提供一份货架结构图或者实物图就可以进一步推测实施方案。货架结构包括是否每层都有设想头,承载商品的承重面的形状及尺寸,特殊开口和螺丝位置等。
5、总结
通过上述方法,难度没有凭空想象的难,但是工程量不小。即使动作和商品识别能达到 100%,因为定位方案和精度问题,导致整体的识别存在一定的误差,而使整个方案无法使用,或者只能部分依靠顾客协助实现。所以 Amazon Go 以及未来的其他无人零售店还只能在小部分范围内对特定人群使用,例如信用度较高的会员。