转载请注明出处:http://blog.csdn.net/lxk7280
顏色與深度 | 1.2 ~ 3.6 公尺 |
骨架追蹤 | 1.2 ~ 3.6 公尺 |
視野角度 | 水平 57 度、垂直 43 度 |
import processing.opengl.*; import SimpleOpenNI.*; import kinectOrbit.*;
第二步:定义对象myOrbit和kinect
KinectOrbit myOrbit; SimpleOpenNI kinect;
第三步:初始化对象。启动深度摄像头
void setup(){ size(800,600,OPENGL); myOrbit = new KinectOrbit(this,0); kinect = new SimpleOpenNI(this); kinect.enableDepth(); }
第四步:在3D渲染下,绘点云和视锥(即在屏幕上可见的3D区域。kinect视锥意思为kinect在空间中能够看到的区域。)
void draw(){ kinect.update(); background(0); myOrbit.pushOrbit(this); drawPointCloud(); kinect.drawCamFrustum(); myOrbit.popOrbit(this); }
第五步:完毕绘点云函数
void drawPointCloud(){ int[] depthMap = kinect.depthMap(); int steps = 3; int index; PVector realWorldPoint; stroke(255); for(int y=0;y < kinect.depthHeight();y += steps){ for(int x=0;x < kinect.depthWidth();x += steps){ stroke(kinect.depthImage().get(x,y)); index = x + y * kinect.depthWidth(); if(depthMap[index] > 0){ realWorldPoint = kinect.depthMapRealWorld()[index]; point(realWorldPoint.x,realWorldPoint.y,realWorldPoint.z); } } } }
版权声明:本文博客原创文章。博客,未经同意,不得转载。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Kienct与Arduino学习笔记(2) 深度图像与现实世界的深度图的坐标 - Python技术站