Machine Vision

cancel
Showing results for 
Search instead for 
Did you mean: 

Vision write AVI performance issues harddisk related?

For work we use the Prosilica GigE and IEEE1394 color cameras. These camera's are both run in 100 fps mode. I have been developing video logging software to be able to overlay some tekst and other information using the Vision Development Module. The application has several parallel loops.
 
The loop which is responsible for the overlay and essentially logging the video as uncompressed AVI files is timed at 10 ms (100 Hz). Since it is synchronized with other loops the "wait until next multiple ms" block is used. All overlays and capturing are easily done by my pc at 100 fps, so at 100 Hz. No performance issues there.
 
I have attached a VI which basically generates a 640x480 black RGB image which is written to an AVI defined as a 100 fps AVI. This is a very simple VI and should, since the loop is not timed in anyway, use maximum resource and performance. The problem with this is that the loop needs 20 ms (50 fps) to write one frame to the defined AVI. This is not good enough. When the RGB is changed to monochrome 8 Bit images the loop executes in 5 ms. This seems logical since the amount of data is reduced by a factor of 4.
 
Computer configuration:
  • LabView 8.20 Full
  • Vision Acquisition Software 8.2.1
  • Vision Development Module 7.1
I have a few questions:
  1. The camera can be set to Bayer8 formats. Why does IMAQ VISION create an RGB  image after capturing it, even if the destination image is defined as U8? Does Vision have any Bayer8 support?
  2. Is the 20 ms and 5 ms time needed to write an AVI limited by harddrive performance? I have a serial ATA 150 MB/s second disk (no OS installed on it), so this should be enough to write 100 fps. The software that comes with the camera is able to log uncompressed AVI's at 100 fps.

Thanks in advance for anyone who knows the answers! Smiley Very Happy

0 Kudos
Message 1 of 3
(3,240 Views)
no attachements in the post...?? Trying to add it. The VI attachment does not work. I will link an image:
 
0 Kudos
Message 2 of 3
(3,234 Views)
The Bayer decoding is done in the driver as a result you will get a RGB image instead the plain image data. The following is a workaround to get the Bayer encoded data.
Set the color coding to Bayer and use the IMAQ1394 Get Image Data to get the raw image data. This will bypass the bayer decoding in the driver. Some cameras will append additional non-image data, so you will need to extract the first (width x height x Byte/pixel) bytes, reshape the array, and then use IMAQ Array to Image.
 
Thanks
Karsten
0 Kudos
Message 3 of 3
(3,172 Views)