OpenCV  4.1.2
Open Source Computer Vision
Modules | Classes | Functions
Video Stabilization

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 [OF06] and [G11] . However, there are some extensions and deviations from the original paper methods. More...

Modules

 Global Motion Estimation
 The video stabilization module contains a set of functions and classes for global motion estimation between point clouds or between images. In the last case features are extracted and matched internally. For the sake of convenience the motion estimation functions are wrapped into classes. Both the functions and the classes are available.
 

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)
 

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 [OF06] and [G11] . 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

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

◆ at() [2/2]

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

◆ 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 
)