PrimeSense技能是微软(Microsoft)Kinect传感器体系的根底,该传感器体系被规划为与微软Xbox 360控制台游戏体系一同作业(图1)。它的作业原理十分简略,但履行进程适当杂乱。PS1080体系级芯片(SoC)则是一款完美支撑PrimeSense技能的产品。
这款芯片独登时办理音频和视频信息,这些信息都能够经过USB衔接进行拜访。USB仅为PrimeSense单元供给电源,Kinect还需求额定的电源供给它的伺服体系。
大多数规划工程师至少都十分了解Kinect与Xbox一同作业的办法。Kinect首要用来向游戏程序供给有关玩家的信息。玩家需求坐落电视机前方,而且面临Kinect,然后经过移动和手势与游戏发生交互。了解Kinect怎么取得这些信息是十分风趣的一件事。
在Kinect推出之前,像这类手势辨认是运用LIDAR(激光诱导差分吸收雷达)或激光雷达完结的。超声波传感器不能供给满足的精度。别的一种办法是运用图画剖析,但十分杂乱,运算要求很高。
PrimeSense运用天壤之别的办法。它是从传感器投射出红外点阵图画,然后运用带红外滤波器的传统CMOS图画传感器进行检测。图画会依据反射光线的物体发生改动。那些点的巨细和方位也会随物体与发射源的间隔改动而改动。
PS1080接纳来自图画传感器的成果,然后经过判别差异来发生深度现象。深度现象的分辨率是1024×758(VGA),但CMOS传感器具有高得多的分辨率。能够被硬件捕获的图画分辨率实际上是1600×1200,这是供给深度现象所有必要的,不然就没有满足的分辨率来检测投射出的红外点阵的方位和巨细。
PS1080芯片的首要作业是辨认红外点,将它们的状况信息转换成深度值。这不是一个简略的使命,也不是一般的微处理器能够处理得了的。走运的是,PS1080能够按30帧/秒的速率完结这一使命。在一个像素代表的区域内一般能找到好几个点。
最短间隔在1米以下(0.8米),最大深度约3.5米。这个规模正好合适坐落高清电视机前面的游戏玩家。可视区域是一个矩形锥体,水平笔直方向分别是58度和45度。
分辨率和检测质量取决于物体相对传感器的方位,但关于玩游戏以及机器人目标辨认与磕碰防止而言上述目标满足敷衍。在2米的间隔处,深度分辨率是10毫米,而水平与笔直分辨率可达3毫米。
视频传感器和深度CMOS传感器紧邻放置,以便利深度现象和五颜六色图画的兼并。PS1080经过履行一个注册进程来正确地对齐五颜六色图画(RGB)和深度(D)信息。RGBD信息便是需求传送给主机的内容。
关于需求避开某个物体的机器人来说只是深度信息就能够了。有时候在游戏中也满足用了,详细要看在做什么动作,有多少个玩家要被盯梢。而RGBD信息能够被进一步剖析,使体系辨认出物体以及它们之间的联系,比方手-臂-身体的联系。
主机完结更高层的目标和动作辨认。OpenNI(天然交互)安排供给了结构和使用编程接口(API),用于处理像Kinect这样的设备。OpenNI支撑包含视频和音频设备在内的许多设备(图3),还能经过更高端的中间件履行目标盯梢等功能。
Kinect在体系中集成了一对麦克风。PS1080能够处理4个外部数字音频源,并经过USB接口以同步办法供给可视视频、深度和音频信息。
微软公司认识到除了与Xbox一同作业外,Kinect应该还能发挥更大的用途。Kinect接口早就现已存在,现在微软针对这个接口发布了一套软件开发套件(SDK)。商用版或许现已投入运用,而PrimeSense也具有相应的软件开发套件。
PrimeSense技能具有很好的可扩展性,因而非游戏和或许的非机器人使用对它也有爱好。例如,准确挨近检测或许不要求可视的视频部分。PrimeSense技能无疑将改动咱们的生活办法。