Video Stabilization Using Optical Flow Based on the Affine Transform:
This was work performed in January and February of 2006. The goal was to implement a real-time video stabilization routine into a low-power and low-speed DSP. This would be useful for many applications such as in image processing on a moving object (vehicle, robot, aircraft, etc) as well as for consumer use in making nice stable videos, which is difficult with handheld camera.
The project has a full implementation working in MATLAB, and much of the C code written for the DSP, some of it already optimized. However I am graduating too early to complete the DSP implementation, it is my hope that a future undergraduate researcher can take this project the last mile.
Below is a link to a video showing the results: There are a few frames of error which I have a good idea of how to fix, but not the time to do it. Basically I wish to add a smoothing constraint where if there is too much motion between frames, it was probably a miscalculated motion, and not the user moving the camera extremely quickly for exactly one frame.
(Download the video by clicking on this link, you may need to right-click and use "Save As" (28.5 MB))
(Or download the smaller version (7 MB))
During July of 2006 I worked on a C++ implementation of this algorithm, with a target frame rate of 5 FPS. I have completed that implementation, but unforunately I cannot make the project or its source publicly available at this time.