亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

Kinect SDK C++ - 2. Kinect Depth Data

系統 2980 0
Today we will learn how to get depth data from a kinect and what the format of the data is


kinect code


kinect Initialization


To get the depth data from the kinect, simply change the argument to NuiImageStreaOpen().


The First argument is now NUI_IMAGE_TYPE_DEPATH,telling the Kinect that wo now want depath images


instead of RGB iamges.(For clarity we also changed the name of the handle to reflect this)


We also should enable the Near Mode.let the kinect to be more sensitive to closer objects(say from 50cm to


200cm),otherwise,from 80 to 400cm.


To done that,passing flag NUI_IMAGE_FLAG_ENABLE_NEAR_MODE as the third argument

      <span style="font-size:12px;"><span style="font-size:10px;">// NEW VARIABLE
HANDLE depthStream;

bool initKinect() {
    // Get a working kinect sensor
    int numSensors;
    if (NuiGetSensorCount(&numSensors) < 0 || numSensors < 1) return false;
    if (NuiCreateSensorByIndex(0, &sensor) < 0) return false;

    // Initialize sensor
    sensor->NuiInitialize(NUI_INITIALIZE_FLAG_USES_DEPTH | NUI_INITIALIZE_FLAG_USES_COLOR);

        // --------------- START CHANGED CODE -----------------
    sensor->NuiImageStreamOpen(
        NUI_IMAGE_TYPE_DEPTH,                     // Depth camera or rgb camera?
      

NUI_IMAGE_RESOLUTION_640x480, // Image resolution NUI_IMAGE_STREAM_FLAG_ENABLE_NEAR_MODE, // Image stream flags, e.g. near mode 2, // Number of frames to buffer NULL, // Event handle &depthStream); // --------------- END CHANGED CODE ----------------- return sensor; }</span></span>



For more information about the near mode,please prefer to offficial blog.




getting a depth frame from the kinect


the display of the dapth image from the kinect in grayscale.Each pixel will just be the pixel's distance


from the kinect(in millimeters)mod 256.


note the NuiDepthPixelToDepth fuction,calling this function returns the depth in millimeters at that pixel.


The depth data is 16 bits,so we use a USHORT to read it in.

      <span style="font-size:12px;"><span style="font-size:10px;">      const USHORT* curr = (const USHORT*) LockedRect.pBits;
        const USHORT* dataEnd = curr + (width*height);

        while (curr < dataEnd) {
            // Get depth in millimeters
            USHORT depth = NuiDepthPixelToDepth(*curr++);

            // Draw a grayscale image of the depth:
            // B,G,R are all set to depth%256, alpha set to 1.
            for (int i = 0; i < 3; ++i)
                *dest++ = (BYTE) depth%256;
            *dest++ = 0xff;
        }
</span></span>
    


that's all the Kinect code! The rest is just how to get it to display.

版權聲明:本文博客原創文章。博客,未經同意,不得轉載。

Kinect SDK C++ - 2. Kinect Depth Data


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 四虎永久精品免费观看 | 欧美精品久久久亚洲 | 日韩欧美中文在线 | 国产农村一一级特黄毛片 | 四虎影院最新地址 | 欧美亚洲另类久久综合 | 99色综合| 日韩亚洲人成在线综合 | 精品国产免费人成高清 | 国产一区二区三区毛片 | 日本久久中文字幕 | 亚洲一区二区三区高清视频 | 欧洲精品在线观看 | 国产乱码精品一区二区三区卡 | 久久综合九色综合97婷婷群聊 | 99综合在线| 欧美大香a蕉免费 | 亚洲乱码在线观看 | 精品国产一区二区三区四 | 一级特黄高清完整大片 | 96精彩视频在线观看 | 久久大综合 | 天天综合天天干 | 免费精品国产 | 久久高清影院 | 成人18免费网站 | 99久久国产视频 | 国产精品手机网站 | 尤物视频一区二区 | 欧美一级毛片图 | 91中文字幕在线观看 | 久久一本久综合久久爱 | 欧美久久精品一级c片片 | 国产911情侣拍拍在线播放 | 神马影院在线观看我不卡 | 国产乱码| 日韩高清成人 | 九九热这里只有精品6 | 国产精品亚洲欧美日韩久久 | 奇米影视四色狠狠888俺去啦 | 99精品欧美 |