Let me show an easy way I use to measure speed of robot’s movements. It is important to do the measurements with accuracy ~0.1sec to optimize delays between commands.
I use my camera, make video of the movements, and then convert the video file into set of pictures with the command like this:
ffmpeg -ss 00:00:04 -t 40 -i ../MVI_3219.MOV G_%04d.png
ffmpeg is a GNU licensed cross platform utility
-ss <position> – start position
-t <duration> – limit the duration of data read from the input file
-i <input_file> – the video file
G_%04d.png – is an example of C-printf template for the generated images. %04d is for substitution by frame number in format 0000, 0001, 0002, ….
The generated pictures are looked like this:
We can see that the transition lasts 7 frames.
With the displayed metadata, we can get the video frame rate:
Metadata: major_brand : qt minor_version : 537331968 compatible_brands: qt CAEP encoder : Lavf56.36.100 Stream #0:0(eng): Video: png, rgb24, 1920x1080, q=2-31, 200 kb/s, 23.98 fps, 23.98 tbn, 23.98 tbc (default)
It is 23.98 frames per second in this case (that is almost 24). So the transition lasts:
7f / 24fps = 0.29sec