OpenCV
Open Source Computer Vision
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
Video Stabilization

Topics

 Global Motion Estimation
 
 Fast Marching Method
 

Detailed Description

The video stabilization module contains a set of functions and classes that can be used to solve the problem of video stabilization. There are a few methods implemented, most of them are described in the papers [187] and [112] . However, there are some extensions and deviations from the original paper methods.

References

  1. "Full-Frame Video Stabilization with Motion Inpainting" Yasuyuki Matsushita, Eyal Ofek, Weina Ge, Xiaoou Tang, Senior Member, and Heung-Yeung Shum
  2. "Auto-Directed Video Stabilization with Robust L1 Optimal Camera Paths" Matthias Grundmann, Vivek Kwatra, Irfan Essa

Classes

class  cv::videostab::ColorAverageInpainter
 
class  cv::videostab::ColorInpainter
 
class  cv::videostab::ConsistentMosaicInpainter
 
class  cv::videostab::DeblurerBase
 
class  cv::videostab::IDenseOptFlowEstimator
 
class  cv::videostab::IFrameSource
 
class  cv::videostab::ILog
 
class  cv::videostab::InpainterBase
 
class  cv::videostab::InpaintingPipeline
 
class  cv::videostab::IOutlierRejector
 
class  cv::videostab::ISparseOptFlowEstimator
 
class  cv::videostab::LogToStdout
 
class  cv::videostab::MaskFrameSource
 
class  cv::videostab::MoreAccurateMotionWobbleSuppressor
 
class  cv::videostab::MoreAccurateMotionWobbleSuppressorBase
 
class  cv::videostab::MotionInpainter
 
class  cv::videostab::NullDeblurer
 
class  cv::videostab::NullFrameSource
 
class  cv::videostab::NullInpainter
 
class  cv::videostab::NullLog
 
class  cv::videostab::NullOutlierRejector
 
class  cv::videostab::NullWobbleSuppressor
 
class  cv::videostab::OnePassStabilizer
 
class  cv::videostab::PyrLkOptFlowEstimatorBase
 
class  cv::videostab::SparsePyrLkOptFlowEstimator
 
class  cv::videostab::StabilizerBase
 
class  cv::videostab::TranslationBasedLocalOutlierRejector
 
class  cv::videostab::TwoPassStabilizer
 
class  cv::videostab::VideoFileSource
 
class  cv::videostab::WeightingDeblurer
 
class  cv::videostab::WobbleSuppressorBase
 

Functions

 cv::videostab::ColorInpainter::ColorInpainter (int method=INPAINT_TELEA, double radius=2.)
 
template<typename T >
const T & cv::videostab::at (int idx, const std::vector< T > &items)
 
template<typename T >
T & cv::videostab::at (int idx, std::vector< T > &items)
 
float cv::videostab::calcBlurriness (const Mat &frame)
 
void cv::videostab::calcFlowMask (const Mat &flowX, const Mat &flowY, const Mat &errors, float maxError, const Mat &mask0, const Mat &mask1, Mat &flowMask)
 
void cv::videostab::completeFrameAccordingToFlow (const Mat &flowMask, const Mat &flowX, const Mat &flowY, const Mat &frame1, const Mat &mask1, float distThresh, Mat &frame0, Mat &mask0)
 

Function Documentation

◆ ColorInpainter()

cv::videostab::ColorInpainter::ColorInpainter ( int method = INPAINT_TELEA,
double radius = 2. )
inline

◆ at() [1/2]

template<typename T >
const T & cv::videostab::at ( int idx,
const std::vector< T > & items )
inline

#include <opencv2/videostab/ring_buffer.hpp>

Here is the call graph for this function:

◆ at() [2/2]

template<typename T >
T & cv::videostab::at ( int idx,
std::vector< T > & items )
inline

#include <opencv2/videostab/ring_buffer.hpp>

Here is the call graph for this function:

◆ calcBlurriness()

float cv::videostab::calcBlurriness ( const Mat & frame)

◆ calcFlowMask()

void cv::videostab::calcFlowMask ( const Mat & flowX,
const Mat & flowY,
const Mat & errors,
float maxError,
const Mat & mask0,
const Mat & mask1,
Mat & flowMask )

◆ completeFrameAccordingToFlow()

void cv::videostab::completeFrameAccordingToFlow ( const Mat & flowMask,
const Mat & flowX,
const Mat & flowY,
const Mat & frame1,
const Mat & mask1,
float distThresh,
Mat & frame0,
Mat & mask0 )