owang / videosnapping

Personal reimplementation of VideoSnapping: interactive synchronization of multiple videos
Other
9 stars 4 forks source link

Improving performance #1

Open eried opened 3 years ago

eried commented 3 years ago

Thanks for the code! I had the idea to synchronize 30 or so dashcam videos I have with different weather. What approach would you recommend for improving the performance besides your recommendations?

It has been running for 10 hours :D in my surface pro and it is on the second frame: image

So I was thinking on making the videos extremely small to use them as "media cache" and outputting just the frame numbers.

owang commented 3 years ago

Try to lower the fps, depending on the amount of motion in your videos you can likely get away with processing the videos at a much lower fps (e.g., something like 5). The second main thing that you should do is parallelize the sift feature matching, this should give a mostly linear speed improvement. Also, if your videos are very high res, you can resize them before processing. Finally, you can set the maximum number of SIFT features to find (nfeatures=500) or so.

owang commented 3 years ago

You might also want to try: https://github.com/cgtuebingen/LearningToSynchronizeVideos, which was designed specifically for the use case you describe.