This work presents an algorithm capable of modeling and correcting video artifacts
caused by movements of a rolling shutter video camera. An affine transformation is used to model full frame camera movements, and sinusoids model high frequency camera movements and vibrations in the x and y directions, as well as rotations. The model parameters that fit to the extracted feature points are robust to outliers using an m–estimator solution that is efficiently optimized by iteratively decreasing the m–estimator kernel width.
The distortion model was found to be capable of accurately modeling
distortions, especially those caused by high frequency camera vibrations. The
m-estimator solution was found to accurately discount outlier features, and combined
with the iteratively decreasing kernel width the global optimum solution is
reliably and efficiently found. Automated code optimization decreased model parameter
calculation time by 49x by factoring out common terms from matrix