Machine Vision

cancel
Showing results for 
Search instead for 
Did you mean: 

Why is get image ignoring the area of interest?

Hi,

I am trying to control my IEEE 1394 camera with the low level VIs. (I can't use the high level VIs for different reasons)
My problem is that the get VI is ignoring the area of interest values which I write directly into the registers of the camera.

I am always getting a full sized image.

Only if I start the acquisition with the desired AOI I get the correct result.

But how can I get it working with low level VIs?

(I have verified that I write into the right registers and that the values are stored in these registers ;-))

Does anyone know what get is doing and how I can get only the area of interest with low level VIs?

Thanks,
Bernie
0 Kudos
Message 1 of 4
(3,316 Views)
Hi Berni,

there are two LabVIEW VIs that allow you to read and write to registers on the 1394 camera: IMAQ1394 Read Registers.vi and IMAQ1394 Write Registers.vi. These VIs are located on the Functions palette in NI Measurements » Vision » IMAQ IEEE - 1394 » IMAQ IEEE-1394 Low-Level.

Kai Kratt
NI
0 Kudos
Message 2 of 4
(3,304 Views)
Hi Kai,

thanks for your answer, but it does not really address my problem.
I am already using these VIs for reading and writing the registers of the camera.

What I do at the moment is
- I initialise and configure the acquisition without a region of interest
- get an image to verify that everything is working
- write to the rigisters to stop the current image acquisition in continous mode.
- write the values for the new region of interest to the registers
- write the register for starting image acquisition in continous mode.
- use the get Image VI for getting another image, but this gives me always a full sized image no matter what I am setting the region of interest to.

I am wondering why I am getting full sized images because I can see that the region of interest is stored correctly in the cameras registers.

The reason why I am using low level VIs is that I want to change the area of interest during grab as fast as possible.

When I do it using higher level VIs it needs between 150 and 200 ms.
When I do it in C it takes between 9 and 40 ms.

So I am trying to get a result with LabView as it is possible with using C or is LabView not suited for this kind of task?
0 Kudos
Message 3 of 4
(3,299 Views)
Hi Bernie,

it seems to me that it is an camera specific problem. Perhaps you have to aske the camera manufacturer to get more information.

An idea could be to stop the acquisition after writing to the registers.

This register level programming is currently not supported by NI but perhaps has anybody else made experience with this topic...?

Kai Kratt
National Instruments
0 Kudos
Message 4 of 4
(3,272 Views)