Machine Vision

Showing results for 
Search instead for 
Did you mean: 

What's the fastest way to change the acquisition ROI in IMAQdx

I'm trying to change the Offsets and the image width and height from LabVIEW as fast as possible. With the code shown it takes about 200ms. Is there a faster way?


Without the unconfigure and configure I get error -1074360304 0xBFF69010


I'm running RT 8.6 

Message Edited by InfiniteNothing on 03-04-2010 12:08 PM
CLED (2016)
0 Kudos
Message 1 of 16

Changing the image width/height you are limited to having to reconfigure. The time needed for this will vary based on the system and camera, but 200ms sounds around the usual ballpark.


Starting in the next version of IMAQdx, you will be able to change the OffsetX/OffsetY for GigE Vision cameras on-the-fly if the camera supports it. For FireWire I believe we will not support this generically for compatibility reasons but you might be able to write to the registers directly and do that.



Message 2 of 16
In MAX you can change the offsets, width, height on the fly. Is there a tiny 200ms reconnect I don't notice?
CLED (2016)
0 Kudos
Message 3 of 16

InfiniteNothing wrote:
In MAX you can change the offsets, width, height on the fly. Is there a tiny 200ms reconnect I don't notice?
Yes. Those panels will cause a reconfiguration if necessary.



0 Kudos
Message 4 of 16
0 Kudos
Message 5 of 16
any update?
0 Kudos
Message 6 of 16
BlueCheese answered my question. What I'm doing (see the attached png of the original post) is as good as it gets for now. The discussion you link to didn't seem to be relevant. They were just setting an ROI where I was trying to change the ROI while the camera was running.
CLED (2016)
0 Kudos
Message 7 of 16

Just spotted this quirk myself when using a Dalsa Spyder gigE camera. Found I could change the exposure OK but obtained an error when trying to change the height. Had to unconfigure and close session before starting again. Works OK but with a small delay. 



Simon (aka Light worker)

0 Kudos
Message 8 of 16

This is required because changes to the AOI size will change the image buffer size and this requires allocation of a new buffers of the correct size. This cannot be done in the middle of an acquisition that is currently using those buffers.



0 Kudos
Message 9 of 16

It's a pity because unconfiguring the camera and closing a camera session and takes a short, but not insignificant, amount of time. What I was trying to do was use a small number of lines (~100) in a loop to detect some movement in the object before capturing a much larger image (~8000 lines). But the time needed to reconfigure the camera was such that most of the sample had travelled past the camera before I could start capturing again. In essence I was trying to use the camera to trigger itself, given that the leading edge of my object could be ignored. Might there be another way around this?





0 Kudos
Message 10 of 16