case 5:
q.rgbGreen = imageData / 4;
q.rgbRed = q.rgbGreen*4;
q.rgbBlue = q.rgbGreen*4;
break;
case 6:
q.rgbRed = imageData / 2;
q.rgbGreen = imageData / 2;
q.rgbBlue = q.rgbGreen*2;
break;
case 7:
q.rgbRed = 255 - ( imageData / 2 );
q.rgbGreen = 255 - ( imageData / 2 );
q.rgbBlue = 255 - ( imageData / 2 );
}
ptr[3*j] = q.rgbBlue;
ptr[3*j+1] = q.rgbGreen;
ptr[3*j+2] = q.rgbRed;
}
}
}
else
{
cout << "捕捉深度图像出现错误" << endl;
}
pTexture->UnlockRect(0);
NuiImageStreamReleaseFrame(depthStreamHandle, depthFrame);
}
void getSkeletonImage(HANDLE &skeletonEvent, Mat &skeletonImage, Mat &colorImage, Mat &depthImage)
{
NUI_SKELETON_FRAME skeletonFrame = {0};
bool bFoundSkeleton = false;
if(NuiSkeletonGetNextFrame( 0, &skeletonFrame ) == S_OK )
{
for( int i = 0 ; i < NUI_SKELETON_COUNT ; i++ )
{
if( skeletonFrame.SkeletonData[i].eTrackingState == NUI_SKELETON_TRACKED )
{
bFoundSkeleton =