LabVIEW

cancel
Showing results for 
Search instead for 
Did you mean: 

IMAQ Sequence and Save to Folder

So I posted an earlier thread to get an idea about what type of VI I need for taking high speed images (~490 FPS) for about 15 seconds and dumping (saving) them in a folder in a format that I can use later for pixel intensity analysis in individual pixels over many frames. It seems the normal IMAQ sequencing program will acquire images as necessary for my application. I can determine the frame rate that I am getting by using a strobe light set to a certain speed and counting the frames between lights. Then, I can just set the amount of frames that gives me close to 15 seconds of imaging. However, I have been working on trying to pull in the component for saving the VI to a folder. I am new to labview and cannot seem to get it to work. I also was told I should be saving these images as 3D arrays (or stacks of 2D arrays maybe?). Basically, I will be looking at the pixel intensity and plotting it over the course of about 7500 frames. So, I will need the ability to work quickly with many frames or stacks of frames.

 

Does anyone know how I should approach this VI or have a similar VI ready-made? I have tried starting with the LLsequence.vi and adding a saving component, but failed. I have also tried to work with the sequence and save as avi program, but could not successfully convert that into a save to a folder program.

 

I appreciate any help I can get.

0 Kudos
Message 1 of 5
(3,731 Views)

Hi anfleisch,

 

I saw this post after I posted to your other forum.  Were you able to get this issue resolved with my previous post?  You should be able to save these images that you change to an array to binary files or whichever is your preference.

 

Here is a screen shot of a simple VI that I created that did what I think you are attempting to do.

 

ArraySaveFileDF.png

Kim W.

Applications Engineer
National Instruments
0 Kudos
Message 2 of 5
(3,723 Views)

Yep, I think I'm on the right track. Thanks Kim.

0 Kudos
Message 3 of 5
(3,719 Views)

Hi Kim,

 

This method can only go at a maximum of around 20 frames/sec even though my camera is taking images about 20 times as fast.

0 Kudos
Message 4 of 5
(3,712 Views)

Hi anfleish,

 

That is probably due to the fact that you are doing all of the acquisition and processing in the same while loop and that the Vision Acquisition Express VI is a very high level function.  I apologize that I did not take that into consideration previously.  I have attached a VI that uses more low level VIs. Try this one out.  One thing you can do to modify this VI is to move the convert to array and write to binary file into another loop.  When you use the low level VIs, you can do a lot more manipulation with the image.  I have included a set of buffers in this VI to try and speed up the acquisition.  I have also put an IMAQ WriteFile VI in a Diagram Disabled structure.  You could also try to use this instead of converting the image to an array. One thing you will have to configure is the write to file.  At the moment, it is just writing to one file instead of a set of files, but I am was not sure how you wanted to configure the write to file.  You can also use the Write to Measurement File Express VI if you would like to easily create a new file with a name that increments by 1 each time (file01, file02, etc).

 

One thing to note as you start to program more is that there is a great set of Examples in the Example Finder as I mentioned before.  I noted the Vision and Motion Example Finder folder, but there is also another folder in Hardware Input and Output>>IMAQdx that has a lot of high level and low level examples.  That is where I got started making the VI that I attached.

 

I hope this helps!

 

Kim W.

Applications Engineer
National Instruments
0 Kudos
Message 5 of 5
(3,704 Views)