Support Website Contact Support Blog

Processing from a video

Hello!

What is the image capture time used by Pix4D with the matching strategy “use image capture time” ?

Is it a flag in the image exif, or the file creation time, or does Pix4D consider the images in their alphabetic order?

I am asking this question because I extract frames from a video using ffmpeg, and I am not sure how ffmpeg handles this and if the proper image sequence is still known to Pix4D.

My final goal is to start a project with few video frames (let’s say, 1 or 2 fps) and recursively add new frames around the frames that could not be calibrated. In this case the file creation time would not retain the right sequence because new frames would be inserted at a later iteration. Is this going to be an issue?

Thanks a lot for your help! 

Hi Nicolas,

Thanks for your interest in Pix4D software solutions.

While Pix4D certainly can work with extracted frames from video files, it is important to note that the resulting image quality will not be as good as capturing still images initially (a 4k video extract is at best only ~ 8.8 mega pixels).  The images extracted from a video are also lacking full EXIF information that the original camera would include in the header information and the proper camera model will need to be specified either.

Pix4D doesn’t require sequential file naming or geotags and can process images based solely on image content (thus using lower quality images results in lower quality results)

The Image Capture time is an option under the Processing options for Matching Image Pairs and when selected does cause Pix4D to account for the time an image was captured (relative to other images in the project, as a way to group images by time to improve matching), however I don’t believe this was “intended” to be used with video still extracts but more for image time stamps from EXIF data.  We encourage people to experiment with the software and your use case sounds interesting.  Please report back how your experiment goes. 

I can offer a support links to help with using Videos for processing…

How to use Videos for Processing 

Best wishes,

Aaron

 

Thanks Aaron for your detailed answer.

I know that videos are generally not recommended for photogrammetry, for the precise reasons that you mention. However in my case I don’t really have a choice, as my device delivers only a video.

I calibrated a camera model in ideal conditions and following Pix4D’s recommendations, and obtained good results.

I think that recording videos instead of images can be usefull in following case:

  • You can go close to your subject, so that a high GSD can be achieved even with a low image resolution

  • You cannot follow an ideal trajectory / the pilot does not know how to follow an ideal trajectory. In this case, having videos ensures that you can get a very high overlap, at least in the frontal direction (direction of flight), by simply extracting more frames.

The argument of the image size (4k is only 8.8 mega pixels) is interesting, but if you take 1 picture per second at 20 MP, you only take 20 MP/s. If you take a 4k video at 30 fps, you take 8.8*30 = 264 MP/s. Of course, this data has much more redundancy, and having more pictures (video frames) means more parameters to calibrate. I just want to point out that the calculation is not so simple.

I will keep you updated on this topic if I get interesting results!

Best,

Nicolas