jpeg 画像のデータをunsigned char*
含むバッファーがあります。c++ と opencv を使用してその画像を表示したいと思います。私が行った場合:
Mat img(Size(640, 480), CV_8UC3, data);
namedWindow("image", 1);
imShow("image", img);
ノイズの多いピクセルの混乱が発生します。
データがjpeg(ヘッダあり)だからだと思います。これが機能するため:
Mat imgbuf(Size(640, 480), CV_8UC3, data);
Mat img = imdecode(imgbuf, CV_LOAD_IMAGE_COLOR);
しかし、GTK 2 に基づく highgui.h の imdecode 関数をそのまま使用することはできず、私のプロジェクトでは GTK 3 を使用しています。
では、バッファ データを表示するにはどうすればよいでしょうか。それが問題である場合、opencv で imdecode 以外の jpeg 画像をデコードする方法はありますか。Qtでopencvを再構築する必要はありません...
他の提案はありますか?
(Linux を使用)