Machine Vision

cancel
Showing results for 
Search instead for 
Did you mean: 

How do I make 1D array and pointer to place acquired image?

Solved!
Go to solution

After doing some searching it seems that I could be victim to the whole U16 acquire/display issue that I have noticed mentioned in heated discussion in other forums.  The camera that I am using is 12 bit monochrome and outputs to a U16 array.  I am using labview 2009 with the VDM eval. 

 

It was mentioned previously that this could be an alignment issue.  I have also heard nothing good about dealing with U16 image data.  I tried the U16 to I16 conversion of the 2D array made with Image to Array but that didn't yield any image at all in the intensity graph.  You can see the Intensity Graph as well as Image Display in the attatched capture.  Any recommendations on getting the image to display correctly?

0 Kudos
Message 21 of 24
(1,074 Views)

You can create either I16 or U16 images to pass to your DLL, depending on what datatype it is expecting and what format you wish to process in. If your camera DLL is only putting data in the least-significant bits then there is no difference between a U16 and I16 and you could use them interchangably.

 

Eric

0 Kudos
Message 22 of 24
(1,068 Views)

Unfortunately changing from a U16 to I16 in IMAQ create and the type coming from Image to Array didn't change the way the Intensity Graph nor Image Dispaly looked.  Perhaps I should look at the pixel values and see what I am really dealing with?  That would be a huge array though and I think the IMAQ still won't let me see the alignment values. 

 

Is the Image array and 2D array from ImagetoArray the raw data that was read from the camera?  It doesn't get changed until the Intensity Graph or Image Display go to display it, correct?  Thanks!

0 Kudos
Message 23 of 24
(1,066 Views)

If you change the border size of 'IMAQ Create VI' to 0, the problem will be solved.

0 Kudos
Message 24 of 24
(521 Views)