在前面的内容中已经写到如何读取.pgm和.ppm文件,来获取Kinect得到的深度数据和彩色数据,深度数据
保存在mat[ ]中,彩色信息存在matppm[ ]中,如下是编程中将三维模型以点的形式画出的程序语句,在
Opengl程序中画出的。
下面两句程序,有深度图uv坐标和世界坐标的变换,像素点RGB的匹配,如有不懂,请查相关资料
希望能给大家有所帮助,如果分析中有不恰当的地方,望批评指正
for(int i=0;i<480;i++)
{for(int j=0;j<640;j++)
{
if(mat[i*640+j]!=0)
{
glColor3ub(int (matppm[(i*640+j)*3]),int (matppm[(i*640+j)*3+1]),int (matppm[(i*640+j)*3+2]));
glVertex3f(double(0.0017*j*mat[i*640+j]+ (-0.4106f)*mat[i*640+j]),-double(0.0017*i*mat[i*640