I'm new at using ImageMagick's C++ API, and per the mailing list desciptions, I'm posting here because this question seems to arcane for normal users (but maybe my arcane threshold is too low).

I've created a new image using the C++ api and then use getPixels(), set the image data, then syncPixels() and last display(). The iamge starts out as black and when I display it, it is still black. If I insert a image.write("foo.png") before the display(), the file is correct, but the display() is still solid black.

I'm attaching the complete program which is my first baby steps in trying to write something that does image alignment using the phase-correlation method. For practice images, I used a 174x174 black image with a white dot in the middle and another one with the dot shifted 10 pixels right and down. The code works, finding the shift at (10,10), but this intermediate image, which was supposed to be just for diagnostics in seeing the effect of applying a Hamming window shows up black.

The critical part that is confusing me is in the image2fft routine here:

   ColorGray gray(0.0);
   Image copy(image.size(), gray);
   copy.type(GrayscaleType);
   copy.depth(image.depth());
   copy.modifyImage();
   PixelPacket *npixels = copy.getPixels(0, 0, width, height);

   for (int i = 0; i < width*height; i++) {
       gray.shade(abs(in[i]));
       *(npixels+i) = gray;
   }
   copy.syncPixels();
   copy.write("/tmp/junk.png");
   // WTF!?  Why does this not display the image it just wrote?
   copy.display();

The array in is declared as complex<double> *in and allocated dynamically based on the input image size. The array is set based on the grayscale values of the input image.

What magic[k] am I missing?

roland

--
                       PGP Key ID: 66 BC 3B CD
Roland B. Roberts, PhD                             RL Enterprises
[EMAIL PROTECTED]                            6818 Madeline Court
[EMAIL PROTECTED]                           Brooklyn, NY 11220



_______________________________________________
Magick-developers mailing list
Magick-developers@imagemagick.org
http://studio.imagemagick.org/mailman/listinfo/magick-developers

Reply via email to