From 04:00 PM CDT – 08:00 PM CDT (09:00 PM UTC – 01:00 AM UTC) Tuesday, April 16, ni.com will undergo system upgrades that may result in temporary service interruption.

We appreciate your patience as we improve our online experience.

Machine Vision

cancel
Showing results for 
Search instead for 
Did you mean: 

How to determine the accuracy of the frame rate using a Basler sca640-70gm?

Solved!
Go to solution

To whom it may concern

 

I am guessing that the time between each frame varies from a nominal set frame rate.

 

How do I set that nominal frame rate?

  

How do I determine what the actual (frame by frame) frame rate or time between frames was in post pressing of the "video" image. 

 

Thank you,

 

Todd

0 Kudos
Message 1 of 13
(6,567 Views)

It is normally that frames coming with varies time (because OS is not real time).

 

For obtaining more or less true FPS rate I will suggest just count coming frames within one second.

 

Andrey.

0 Kudos
Message 2 of 13
(6,559 Views)

Unfortunately, I need to know the "exact" time between each frame and the possible error between each frame. I need the determine how fast the iris of the eye is moving at each instant in a video I am aquiring with LV8.6 NI-IMAQ sca6470-70gm frame grabber.  What are my options?  Thanks

0 Kudos
Message 3 of 13
(6,556 Views)

The camera will take images at very regular intervals with no significant variation.  The frame rate will be constant.  The latency comes in to play when the camera transmits the images to the PC over ethernet.  You may have an occasional delay on some frames.  The important thing to remember is that they were all taken at a constant frame rate.

 

As long as you are not trying to create a feedback loop, you are quite safe analyzing each image and using the same time interval for each image.

 

Bruce

Bruce Ammons
Ammons Engineering
0 Kudos
Message 4 of 13
(6,554 Views)

Some other options are to take advantage of the timestamps provided by IMAQdx. The camera you listed is GigE Vision, which means there is a timestamp counted the camera sends with each image. You can access this embedded in the Custom Data for the image you get out of the Grab VI. There are many posts discussing this that you may want to refer to. This allows you to get hardware-accurate timing even if the camera is not capturing images at a fixed rate (perhaps it is triggered or is using an auto-exposure).

 

As Bruce also pointed out, if you have the camera free-running it will generally generate images at a fixed rate. As long as you look at the buffer numbers coming out of Grab, you can calculate the exact amount of time between any two frames by using the buffer number and frame rate.

 

Eric 

0 Kudos
Message 5 of 13
(6,551 Views)
I timed each frame in LabVEW and calculated the instateneos frame rate.  The rate is nominally 70 fps but it varies +-30fps on a frame by frame basis.  Is that variation real?
0 Kudos
Message 6 of 13
(6,175 Views)

It is almost impossible to measure the frame rate accurately by measuring the time between consecutive frames.  The latency of sending the images over the ethernet means they won't arrive at the computer with the same exact spacing they were taken at.  Also, measuring the length of one short interval in LabVIEW is also very difficult.  Windows latencies and other issues could make your measurement be off by quite a bit.

 

The only way I can see to verify the frame rate is to use a digital input into a counter and wire the shutter signal directly from the camera into the digital input.  You could program the counter to measure between the rising edges of the shutter signal, and you would find out the frame rate is indeed very accurate and repeatable.

 

The only other way I know to accurately measure the frame rate in LabVIEW is to measure the time over a large number of frames (thousands) and divide the number of frames by the total time.  Any minor errors in measuring the timing of a single frame go away with the large number of frames.

 

Bruce

Bruce Ammons
Ammons Engineering
0 Kudos
Message 7 of 13
(6,168 Views)

I am only acquiring ~280 frames in my study.  It sounds like I need to pursue the external input or calculate that the variance can be ignored or averaged within my experiment.  I need to calculate what variance in fps I can live with.

 

Thanks,

 

Todd

0 Kudos
Message 8 of 13
(6,151 Views)

You still aren't getting it.  There is NO variance in the frame rate as it is being acquired.  The interval between each one of your images is EXACTLY the same, since it uses timing on the camera.

 

The only variance is when the image is being handled by the computer.  Sometimes it gets there a little quicker, sometimes a little slower, but that does not change the time that the images are acquired!

 

Bruce

Bruce Ammons
Ammons Engineering
0 Kudos
Message 9 of 13
(6,148 Views)

Hello,

 

It seems to me that every real world thing has a variance, even an atomic clock.  I am also always asked for a range on the variance.  Statistically, it seems one should be able to determine a range on that variance as well.

 

Could something like this following statement then be said, "The internal timing of the Basler GigE sCA640-70gm camera (accessed with the LabVIEW LowLevelGrab.vi) appears to be millions of times more accurant than most applications need, so the fps is modelled as an ideal timing source?"  If so, thanks for the vote of confidence!

 

Maybe Basler has a timing diagram?

 

Thank you,

 

Todd

 

0 Kudos
Message 10 of 13
(6,139 Views)