LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

Andor Neo sCMOS and IMAQ

Solved!
Go to solution

Dear All,

I am actually working with a camera Andor Neo sCMOS and IMAQ to visualize the image. To get the pointer on the pixels of the buffer image, i am using IMAQ GetImagePixelPtr as indicated in the snapshot. And this pixel pointer and the imagesize (byte) is sent to the buffer queue of the camera. But due to the transfer interface of the camera each row of bytes must be divisible by 3, the total size of the byte transfer must also be divisible by 8. For exemple for the mode Mono12Packed which is 1.5 bytes/pixels the bytes/row is 3840 which is divisible by 3 so the imagesize is 3840*2160 row = 8294400 bytes. For the mode Mono16 which is 2 bytes/pixels the bytes/row is 5120 which is not divisible by 3 so the imagesize is (5120 + 1)*2160 row = 11061360 bytes.

However, the function IMAQ GetImagePixelPtr with width=2560 pixels, height=2160 pixels and an image I16 (which is corresponding to the mode Mono16 because i am using only this mode)is giving an imagesize of 11059200 bytes  (=5120*2160). There is the possibility to do it without GetImagePixelPtr and only convert the buffer array given by the camera to an Image but the method GetImagePixelPtr is more straightforward.

Do you have any idea how to solve my problem

 

Thanks by advance

 

0 Kudos
Message 1 of 3
(4,152 Views)
Solution
Accepted by topic author mnemo15

Hi mnemo15,

 

What is the value that the LineWidth indicator returns ?

What is the value that the Pixel Size indicator returns ?

 

As you can see in the help of LabVIEW, "LineWidth(Pixels) returns the total number of pixels in a horizontal line in the image. This is the sum of the xRes of the image, the borders of the image, and the left and right alignments of the image, as shown in the following figure. This number may not match the horizontal size of the image."

 

http://zone.ni.com/reference/en-XX/help/370281P-01/imaqvision/imaq_getimagepixelptr/

 

Regards,

0 Kudos
Message 2 of 3
(4,052 Views)

Hi Benoit,

I would like just to show you more precisely my problem. On the 2 attached files, I am creating an IMAQ image with a pixel pointer that I am assinging to the image and each time that I am taking an image with an Andor sCMOS camera, the buffer image is automatically trasfer to the IMAQ because they have the same pixel pointer. But because of the way Andor is calculating the pixel size as indicated in my first post, the IMAQ image (11059200 bytes) and the buffer image from ANDOR (11061360 bytes) have not the same pixel size. Do you have any idea how to fix the problem. Of course one possibility should be to assign one pixel pointer to the IMAQ image and the camera buffer and then to convert the camera buffer in order that it fits to the IMAQ image but I would like not to use this solution.

Any idea

Thanks for your answer

Download All
0 Kudos
Message 3 of 3
(4,025 Views)