2

小さなGtkmmアプリケーションで表示したい画像をIplImageとして持っています。それらをGtkが表示できるものに変換するにはどうすればよいですか?

4

2 に答える 2

3

OPのソリューションを回答として投稿する:

IplImage* image;
cvCvtColor(image, image, CV_BGR2RGB);
Glib::RefPtr<Gdk::Pixbuf> pixbuf = Gdk::Pixbuf::create_from_data(
        (guint8*)image->imageData,
        Gdk::COLORSPACE_RGB,
        false,
        image->depth,
        image->width,
        image->height,
        image->widthStep);

Gtk::Image gtk_img;
gtk_img.set(pixbuf);
于 2012-05-14T23:34:14.467 に答える
1

gdk_new_pixbuf_from_data()IplImageのフォーマットに対応する画像フォーマットパラメータを渡すことで、新しいpixbufを作成できます。IplImage画像データはimageDataフィールドを介してアクセスされます。

これがGtkフォーラムのサンプルコードです。

于 2009-08-05T01:36:56.340 に答える