体感技术在智能购物车中的应用浅析
体感技术在智能购物车中的应用浅析
信实101 薛子朦
kinnect ,摄像头起到了很大的作用,它负责捕捉人肢体的动作,然后工程师就可以设计程序教它如何去识别、记忆、分析处理这些动作。Kinect 摄像头可以捕捉到用户的手势动作,再把这些手势语言转换成控制环节。
在市场上常见的根据Kinect 体感控制的游戏中,Kinect 借助PrimeSense 软件和摄像头侦测、捕捉用户手势动作,然后再将捕捉到的影像与本身内部存有的人体模型相对照。每一个符合内部已存人体模型的物体就会被创造成相关的骨骼模型,系统再将该模型转换成虚拟角色,该角色通过识别该人体骨骼模型的关键部位进行动作触发。在虚拟骨骼模型的帮助下,系统可识别人体的25个关键部位。此基础上加入了识别人体站立/坐姿的新技术。
功能
1. 使用红外定位:Kinect 比一般的摄像头更为智能。首先,它能够发射红外线,从而对整个房间进行立体定位。摄像头则可以借助红外线来识别人体的运动。除此之外,配合着Xbox 360上的一些高端软件,便可以对人体的48个部位进行实时追踪。该设备最多可以同时对两个玩家进行实时追踪。
2. 多项额外功能:Kinect 内置麦克风,所以,用户可以直接与Xbox 360进行“对话”除此之外,它不仅能够通过红外线识别人体,还可以识别出完整的RGB 色彩,并借助面部识别技术自动为用户登录。
1)红外线发射器和红外线/VGA摄像头组 通过景深摄像头和RGB 摄像头的配合,Kinect 可以将实物的3D 影像投放到屏幕当中。可以同时拍摄彩色图像和红外图像,捕捉到用户的手势动作,根据微软给出的数据,再把这些手势语言转换成游戏控制。
光学部分包括两个主要部件:红外线发射器和红外线/VGA摄像头组。红外线发射器发出一道“激光”覆盖整个Kinect 的可视范围,摄像头组接收反射光线来识别玩家。红外摄像头识别图像的是一个“深度场”(Depth Field ),其中每一像素的颜色代表了那一点物体到摄像头的距离。比如离摄像头近的身体呈亮红色、绿色等,而离摄像头远的物体则呈暗灰色。
一种光编码(light coding)技术。不同于传统的ToF 或者结构光测量技术,light coding使用的是连续的照明(而非脉冲),也不需要特制的感光芯片,而只需要普通的CMOS 感光芯片,这让方案的成本大大降低。
Light coding,顾名思义就是用光源照明给需要测量的空间编上码,说到底还是结构光技术。但与传统的结构光方法不同的是,他的光源打出去的并不是一副周期性变化的二维的图像编码,而是一个具有三维纵深的“体编码”。这种光源叫做激光散斑(laser speckle),是当激光照射到粗糙物体或穿透毛玻璃后形成的随机衍射斑点。
这些散斑具有高度的随机性,而且会随着距离的不同变换图案。也就是说空间中任意两处的散斑图案都是不同的。只要在空间中打上这样的结构光,整个空间就都被做了标记,把一个物体放进这个空间,只要看看物体上面的散斑图案,就可以知道这个物体在什么位置了。当然,在这之前要把整个空间的散斑图案都记录下来,所以要先做一次光源的标定。标定的方法是这样的:每隔一段距离,取一个参考平面,把参考平面上的散斑图案记录下来。假设用户活动空间是距离电视机1米到4米的范围,每隔10cm 取一个参考平面,那么标定下来我们就已经保存了30幅散斑图像。需要进行测量的时候,拍摄一副待测场景的散斑图像,将这幅图像和我们保存下来的30幅参考图像依次做互相关运算,这样我们会得到30幅相关度图像,而空间中有物体存在的位置,在相关度图像上就会显示出峰值。把这些峰值一层层叠在一起,再经过一些插值,就会得到整个场景的三维形状了。
2.Kinect 在Labview 中应用的条件
需要安装下面几个软件:
以及红外摄像头等硬件设备
值得注意的是,Kinect 必须在微软操作系统的计算机上实现,这可能会增加购物车的成本
我们需要做基于Labview 平台具有手势捕捉、识别、控制功能的子模块,对用户手部动作识别,有几个基本功能:1. 判断用户的动作状态,是放入商品还是将商品移出购物车
2. 结合界面的操作记录,判断用户是否在将商品移出购物车后点击取消、是否在商品放入购物车前将商品扫描 3. 判断用户有无损坏购物车的行为