i am trying to convert an image from
Code: Select all
Image magicImage("image.jpg");
Code: Select all
IplImage* cvImage;
-Write the magick++ Image object into a BLOB.
-Create the IplImage
-set data pointer to the BLOB data.
-show IplImage to check if its correct
but i get only random noise pixels on the converted image
Code: Select all
//magick++ part
Image magicImage("testImage.jpg");
int WIDTH = magicImage.columns();
int HEIGHT = magicImage.rows();
//Blob part
Blob myBlob;
magicImage.write(&myBlob);
//openCV part
IplImage *cvImage = cvCreateImage(cvSize(WIDTH, HEIGHT), IPL_DEPTH_8U, 3);
memcpy(cvImage->imageData, (char*)myBlob.data(), myBlob.length() );
cvShowImage("thumbnail",cvImage);
cvWaitKey(20);
any clue where could be the problem?
thanks in advance
edit: info on magick++ Blob class is here: http://www.imagemagick.org/Magick++/Blob.html