API學習--NUI_IMAGE_FRAME

NUI_IMAGE_FRAME Structure(結構體)
結構體名字:NUI_IMAGE_FRAME
結構體描述:包含一個深度或者彩色圖像幀的信息
結構體原型:
typedef struct _NUI_IMAGE_FRAME
    {
    LARGE_INTEGER liTimeStamp;                      //最近幀的時間戳 表明時間已經過去 因爲最近一次調用NuiInitialize函數或INuiSensor:: NuiInitialize方法(毫秒數)
    DWORD dwFrameNumber;                          //最新幀的幀號,幀號是一個計數器。每次遞增一Kinect傳感器陣列的幀是由一個新的深度。顏色幀總是有相同的幀號碼作爲最新的深度幀。如果你檢索彩色圖像幀比深度圖像幀較慢,你會看到空白的彩色幀幀的數字序列
                                                                       // 然而,後面的幀,將永遠有一個更高的幀號比前面的幀。幀號每次調用NuiInitialize或插入傳感器陣列復位。這意味着,你可以看到幀號復位操作過程中,如果傳感器陣列被拔掉,插回,即使你的應用程序沒有顯式初始化                                                                        //傳感器
    NUI_IMAGE_TYPE eImageType;                   //當前幀的類型
    NUI_IMAGE_RESOLUTION eResolution;      //幀圖像的分辨率
    INuiFrameTexture *pFrameTexture;             //一個指針,指向一個對象,該對象包含的圖像幀的數據
    DWORD dwFrameFlags;                              //未使用
    NUI_IMAGE_VIEW_AREA ViewArea;            //未使用
    } 	NUI_IMAGE_FRAME;

備註:
 要訪問幀數據,調用INuiFrameTexture :: LockRect方法指向的對象由pFrameTexture成員,然後使用pBits的成員返回NUI_LOCKED_RECT結構。
 彩色圖像數據的格式依賴於彩色圖像的類型。如果的eImageType的成員是NUI_IMAGE_TYPE_COLOR或NUI_IMAGE_TYPE_COLOR_YUV,數據是32位每像素RGB。如果圖像類型NUI_IMAGE_TYPE_COLOR_RAW_YUV       的,數據是未加工的YUYV數據,無需轉換到RGB。
 如果您的應用程序包括在參數dwFlags中NuiInitialize的 NUI_INITIALIZE_FLAG_USES_DEPTH ,深度數據返回一個16位的值低12位(0-11位)包含的深度值以毫米爲單位。
 如果您的應用程序包括在參數dwFlags中NuiInitialize的 NUI_INITIALIZE_FLAG_USES_DEPTH_AND_PLAYER_INDEX ,深度數據返回一個16位的值,它包含以下信息:
低階位(第0-2位)包含骨架(播放器)的標識的。
高階位(3-15位)包含以毫米爲單位的深度值。深度數據值爲零,則表示沒有深入的數據是在那個位置,因爲所有的對象不是太靠近相機或遠離它。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章