I have fluorescence recording from population of neurons sample video on youtube. The problem is that camera had vibrations making each frame shifts a little in x-y direction. Additionally recording has noise but that will improve.

I am looking for a open-source solution to correct such a shift. The open-source nature is mandatory so that I can extend it to my requirements later. I am comfortable with python, c/c++, java and Haskell. So a solution in any of these languages would be OK but preference is for python.

In case the application is closed-source but free of cost, the I/O format should not be propriety.

I/O formats

  • Any format which ffmpeg/opencv can read on linux platform (ubuntu/openSUSE) e.g. tiff, avi, mp4, mkv
  • Output - In addition to common video/image formats, I am also ok with hdf5, npy, and python pickle format.

Potential candidates

  • 1
    Would you mind showing a small sample of your files, to make sure what data you have? Thanks!
    – Nicolas Raoul
    Commented Oct 11, 2016 at 5:11
  • Also what input & output formats are you looking at - is the input a singe video file or multiple still images & should the output be a single video or multiple position corrected images. Commented Oct 11, 2016 at 5:14
  • Added a sample video and some more information.
    – Dilawar
    Commented Oct 11, 2016 at 9:53

1 Answer 1


Thanks to code posted here, I managed to cook-up my own application. It is written in c++ and uses opencv and libtiff. The performance is very good. See the results here.

The application is hosted on github https://github.com/dilawar/video_stabilizer.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.