Machine Vision

cancel
Showing results for 
Search instead for 
Did you mean: 

Saving the realtime images received from an IR camera(50FPS).

Hi I have an application developed in labview6.0 in which an IR camera is sending images(50FPS). I have to save these images into harddisk. But when I try this the system slows down and it effects the performance of the app also. It will be helpfull if somebody could suggest a way to store the images either on the system (NI PXI with 128 mb ram) in which my app is running or remotely on some other system.
0 Kudos
Message 1 of 5
(3,264 Views)
How big are your images? There are a couple of possible bottlenecks in the system that could be causing the slow down. First off, make sure you're not acquiring faster than 100MB/s, which is the maximum PCI bus data rate for IMAQ. This would mean, in your case, that each image contains two megabytes of data. After that, the most plausible bottleneck is the hard drive. Most common hard drives can only store data around 10 MB/s!

If you're only storing images for a short amount of time (a few seconds), then you can allocate a few hundred buffers in LabVIEW and acquire them into a sequence. After the acquisition is complete, you can stream the images to the hard drive.

So, you have some options. If nothing else, Graftek Imaging (www.graftek.com) sells softwar
e that optomizes streaming images to disk.

Kyle V
0 Kudos
Message 2 of 5
(3,264 Views)
I suspect the IR camera is low enough resolution that this solution may work.

Somewhere on the NI website is an example that converts images to a JPEG string instead of saving them to a file. The original example is intended for compressing images for transfer over TCP/IP, but the compression vi is easily extracted. You can collect these strings and save them to a single file. This is much faster than saving to individual image files. You can even set the image quality to 100% for practically lossless compression.

Unfortunately, this solution doesn't work well for large images at a high frame rate, because the compression isn't fast enough.

Bruce
Bruce Ammons
Ammons Engineering
0 Kudos
Message 3 of 5
(3,264 Views)
Hi Kyle Thanks for answering. Image size is around 20 kb per image. My camera speed is 50fps. And there is some processing on the images (Some calculations are done based on image). I can store the images either before calculations or after calculations. Noramally I have to store images for about 5 minutes(continuous)at times it can go upto 10-15mins.
0 Kudos
Message 4 of 5
(3,264 Views)
It sounds like compressing them to JPEG strings and storing them in a single file would work well. Compressing at 100% should keep all the detail you need. This is only 1 MB per second, which isn't a big deal.

Bruce
Bruce Ammons
Ammons Engineering
0 Kudos
Message 5 of 5
(3,264 Views)