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 への変換方法がわかりません。
誰でもこれを行うことができましたか?