8

Kinnect カメラからカラー RGB 画像をキャプチャする必要がありますが、これはより大きなプログラムの一部にすぎないため、OpenCV で表示したいと考えています。フラグを設定すれば OpenCV は OpenNI と互換性があることは知っていますが、一生懸命 CMake が OpenNI2 へのパスを見つけられなかったので、OpenNI で OpenCV をビルドすることはできませんでした。とにかく、OpenNI フレームを openCV フレームに手動で変換する方法を知っておくとよいと思うので、この方法に従うことにしました。

OpenNI でカラー フレームをキャプチャするために、次のことを試しました。

openni::Device device;  
openni::VideoStream  color;
openni::VideoFrameRef colorFrame;

rc = openni::OpenNI::initialize();
rc = device.open(openni::ANY_DEVICE);
rc = color.create(device, openni::SENSOR_COLOR);
rc = color.start();

color.readFrame(&colorFrame);
const openni::RGB888Pixel* imageBuffer = (const openni::RGB888Pixel*)colorFrame.getData();

しかし、今は cv::Mat への変換方法がわかりません。

誰でもこれを行うことができましたか?

4

2 に答える 2