fixing compilation on Windows

pull/13383/head
Andrey Pavlenko 13 years ago
parent 4dff974e8c
commit f1cf411ffe
  1. 8
      modules/videostab/include/opencv2/videostab/deblurring.hpp
  2. 2
      modules/videostab/include/opencv2/videostab/fast_marching.hpp
  3. 6
      modules/videostab/include/opencv2/videostab/frame_source.hpp
  4. 18
      modules/videostab/include/opencv2/videostab/global_motion.hpp
  5. 16
      modules/videostab/include/opencv2/videostab/inpainting.hpp
  6. 8
      modules/videostab/include/opencv2/videostab/log.hpp
  7. 4
      modules/videostab/include/opencv2/videostab/motion_filtering.hpp
  8. 10
      modules/videostab/include/opencv2/videostab/optical_flow.hpp
  9. 2
      modules/videostab/include/opencv2/videostab/stabilizer.hpp

@ -51,9 +51,9 @@ namespace cv
namespace videostab namespace videostab
{ {
float calcBlurriness(const Mat &frame); CV_EXPORTS float calcBlurriness(const Mat &frame);
class IDeblurer class CV_EXPORTS IDeblurer
{ {
public: public:
IDeblurer() : radius_(0), frames_(0), motions_(0) {} IDeblurer() : radius_(0), frames_(0), motions_(0) {}
@ -81,13 +81,13 @@ protected:
const std::vector<float> *blurrinessRates_; const std::vector<float> *blurrinessRates_;
}; };
class NullDeblurer : public IDeblurer class CV_EXPORTS NullDeblurer : public IDeblurer
{ {
public: public:
virtual void deblur(int idx, Mat &frame) {} virtual void deblur(int idx, Mat &frame) {}
}; };
class WeightingDeblurer : public IDeblurer class CV_EXPORTS WeightingDeblurer : public IDeblurer
{ {
public: public:
WeightingDeblurer(); WeightingDeblurer();

@ -54,7 +54,7 @@ namespace videostab
{ {
// See http://iwi.eldoc.ub.rug.nl/FILES/root/2004/JGraphToolsTelea/2004JGraphToolsTelea.pdf // See http://iwi.eldoc.ub.rug.nl/FILES/root/2004/JGraphToolsTelea/2004JGraphToolsTelea.pdf
class FastMarchingMethod class CV_EXPORTS FastMarchingMethod
{ {
public: public:
FastMarchingMethod() : inf_(1e6f) {} FastMarchingMethod() : inf_(1e6f) {}

@ -53,7 +53,7 @@ namespace cv
namespace videostab namespace videostab
{ {
class IFrameSource class CV_EXPORTS IFrameSource
{ {
public: public:
virtual ~IFrameSource() {} virtual ~IFrameSource() {}
@ -61,14 +61,14 @@ public:
virtual Mat nextFrame() = 0; virtual Mat nextFrame() = 0;
}; };
class NullFrameSource : public IFrameSource class CV_EXPORTS NullFrameSource : public IFrameSource
{ {
public: public:
virtual void reset() {} virtual void reset() {}
virtual Mat nextFrame() { return Mat(); } virtual Mat nextFrame() { return Mat(); }
}; };
class VideoFileSource : public IFrameSource class CV_EXPORTS VideoFileSource : public IFrameSource
{ {
public: public:
VideoFileSource(const std::string &path, bool volatileFrame = false); VideoFileSource(const std::string &path, bool volatileFrame = false);

@ -60,11 +60,11 @@ enum MotionModel
AFFINE = 2 AFFINE = 2
}; };
Mat estimateGlobalMotionLeastSquares( CV_EXPORTS Mat estimateGlobalMotionLeastSquares(
const std::vector<Point2f> &points0, const std::vector<Point2f> &points1, const std::vector<Point2f> &points0, const std::vector<Point2f> &points1,
int model = AFFINE, float *rmse = 0); int model = AFFINE, float *rmse = 0);
struct RansacParams CV_EXPORTS struct RansacParams
{ {
int size; // subset size int size; // subset size
float thresh; // max error to classify as inlier float thresh; // max error to classify as inlier
@ -79,19 +79,19 @@ struct RansacParams
static RansacParams translationMotionStd() { return RansacParams(2, 0.5f, 0.5f, 0.99f); } static RansacParams translationMotionStd() { return RansacParams(2, 0.5f, 0.5f, 0.99f); }
}; };
Mat estimateGlobalMotionRobust( CV_EXPORTS Mat estimateGlobalMotionRobust(
const std::vector<Point2f> &points0, const std::vector<Point2f> &points1, const std::vector<Point2f> &points0, const std::vector<Point2f> &points1,
int model = AFFINE, const RansacParams &params = RansacParams::affine2dMotionStd(), int model = AFFINE, const RansacParams &params = RansacParams::affine2dMotionStd(),
float *rmse = 0, int *ninliers = 0); float *rmse = 0, int *ninliers = 0);
class IGlobalMotionEstimator class CV_EXPORTS IGlobalMotionEstimator
{ {
public: public:
virtual ~IGlobalMotionEstimator() {} virtual ~IGlobalMotionEstimator() {}
virtual Mat estimate(const Mat &frame0, const Mat &frame1) = 0; virtual Mat estimate(const Mat &frame0, const Mat &frame1) = 0;
}; };
class PyrLkRobustMotionEstimator : public IGlobalMotionEstimator class CV_EXPORTS PyrLkRobustMotionEstimator : public IGlobalMotionEstimator
{ {
public: public:
PyrLkRobustMotionEstimator(); PyrLkRobustMotionEstimator();
@ -129,14 +129,14 @@ private:
float minInlierRatio_; float minInlierRatio_;
}; };
Mat getMotion(int from, int to, const std::vector<Mat> &motions); CV_EXPORTS Mat getMotion(int from, int to, const std::vector<Mat> &motions);
Mat ensureInclusionConstraint(const Mat &M, Size size, float trimRatio); CV_EXPORTS Mat ensureInclusionConstraint(const Mat &M, Size size, float trimRatio);
float estimateOptimalTrimRatio(const Mat &M, Size size); CV_EXPORTS float estimateOptimalTrimRatio(const Mat &M, Size size);
// frame1 is non-transformed frame // frame1 is non-transformed frame
float alignementError(const Mat &M, const Mat &frame0, const Mat &mask0, const Mat &frame1); CV_EXPORTS float alignementError(const Mat &M, const Mat &frame0, const Mat &mask0, const Mat &frame1);
} // namespace videostab } // namespace videostab
} // namespace cv } // namespace cv

@ -53,7 +53,7 @@ namespace cv
namespace videostab namespace videostab
{ {
class IInpainter class CV_EXPORTS IInpainter
{ {
public: public:
IInpainter() IInpainter()
@ -87,13 +87,13 @@ protected:
const std::vector<Mat> *stabilizationMotions_; const std::vector<Mat> *stabilizationMotions_;
}; };
class NullInpainter : public IInpainter class CV_EXPORTS NullInpainter : public IInpainter
{ {
public: public:
virtual void inpaint(int idx, Mat &frame, Mat &mask) {} virtual void inpaint(int idx, Mat &frame, Mat &mask) {}
}; };
class InpaintingPipeline : public IInpainter class CV_EXPORTS InpaintingPipeline : public IInpainter
{ {
public: public:
void pushBack(Ptr<IInpainter> inpainter) { inpainters_.push_back(inpainter); } void pushBack(Ptr<IInpainter> inpainter) { inpainters_.push_back(inpainter); }
@ -111,7 +111,7 @@ private:
std::vector<Ptr<IInpainter> > inpainters_; std::vector<Ptr<IInpainter> > inpainters_;
}; };
class ConsistentMosaicInpainter : public IInpainter class CV_EXPORTS ConsistentMosaicInpainter : public IInpainter
{ {
public: public:
ConsistentMosaicInpainter(); ConsistentMosaicInpainter();
@ -125,7 +125,7 @@ private:
float stdevThresh_; float stdevThresh_;
}; };
class MotionInpainter : public IInpainter class CV_EXPORTS MotionInpainter : public IInpainter
{ {
public: public:
MotionInpainter(); MotionInpainter();
@ -154,7 +154,7 @@ private:
Mat_<uchar> flowMask_; Mat_<uchar> flowMask_;
}; };
class ColorAverageInpainter : public IInpainter class CV_EXPORTS ColorAverageInpainter : public IInpainter
{ {
public: public:
virtual void inpaint(int idx, Mat &frame, Mat &mask); virtual void inpaint(int idx, Mat &frame, Mat &mask);
@ -163,11 +163,11 @@ private:
FastMarchingMethod fmm_; FastMarchingMethod fmm_;
}; };
void calcFlowMask( CV_EXPORTS void calcFlowMask(
const Mat &flowX, const Mat &flowY, const Mat &errors, float maxError, const Mat &flowX, const Mat &flowY, const Mat &errors, float maxError,
const Mat &mask0, const Mat &mask1, Mat &flowMask); const Mat &mask0, const Mat &mask1, Mat &flowMask);
void completeFrameAccordingToFlow( CV_EXPORTS void completeFrameAccordingToFlow(
const Mat &flowMask, const Mat &flowX, const Mat &flowY, const Mat &frame1, const Mat &mask1, const Mat &flowMask, const Mat &flowX, const Mat &flowY, const Mat &frame1, const Mat &mask1,
Mat& frame0, Mat &mask0); Mat& frame0, Mat &mask0);

@ -43,25 +43,27 @@
#ifndef __OPENCV_VIDEOSTAB_LOG_HPP__ #ifndef __OPENCV_VIDEOSTAB_LOG_HPP__
#define __OPENCV_VIDEOSTAB_LOG_HPP__ #define __OPENCV_VIDEOSTAB_LOG_HPP__
#include "opencv2/core/core.hpp"
namespace cv namespace cv
{ {
namespace videostab namespace videostab
{ {
class ILog class CV_EXPORTS ILog
{ {
public: public:
virtual ~ILog() {} virtual ~ILog() {}
virtual void print(const char *format, ...) = 0; virtual void print(const char *format, ...) = 0;
}; };
class NullLog : public ILog class CV_EXPORTS NullLog : public ILog
{ {
public: public:
virtual void print(const char *format, ...) {} virtual void print(const char *format, ...) {}
}; };
class LogToStdout : public ILog class CV_EXPORTS LogToStdout : public ILog
{ {
public: public:
virtual void print(const char *format, ...); virtual void print(const char *format, ...);

@ -51,7 +51,7 @@ namespace cv
namespace videostab namespace videostab
{ {
class IMotionFilter class CV_EXPORTS IMotionFilter
{ {
public: public:
virtual ~IMotionFilter() {} virtual ~IMotionFilter() {}
@ -59,7 +59,7 @@ public:
virtual Mat apply(int index, std::vector<Mat> &Ms) const = 0; virtual Mat apply(int index, std::vector<Mat> &Ms) const = 0;
}; };
class GaussianMotionFilter : public IMotionFilter class CV_EXPORTS GaussianMotionFilter : public IMotionFilter
{ {
public: public:
GaussianMotionFilter(int radius, float stdev); GaussianMotionFilter(int radius, float stdev);

@ -55,7 +55,7 @@ namespace cv
namespace videostab namespace videostab
{ {
class ISparseOptFlowEstimator class CV_EXPORTS ISparseOptFlowEstimator
{ {
public: public:
virtual ~ISparseOptFlowEstimator() {} virtual ~ISparseOptFlowEstimator() {}
@ -64,7 +64,7 @@ public:
OutputArray status, OutputArray errors) = 0; OutputArray status, OutputArray errors) = 0;
}; };
class IDenseOptFlowEstimator class CV_EXPORTS IDenseOptFlowEstimator
{ {
public: public:
virtual ~IDenseOptFlowEstimator() {} virtual ~IDenseOptFlowEstimator() {}
@ -73,7 +73,7 @@ public:
OutputArray errors) = 0; OutputArray errors) = 0;
}; };
class PyrLkOptFlowEstimatorBase class CV_EXPORTS PyrLkOptFlowEstimatorBase
{ {
public: public:
PyrLkOptFlowEstimatorBase() { setWinSize(Size(21, 21)); setMaxLevel(3); } PyrLkOptFlowEstimatorBase() { setWinSize(Size(21, 21)); setMaxLevel(3); }
@ -89,7 +89,7 @@ protected:
int maxLevel_; int maxLevel_;
}; };
class SparsePyrLkOptFlowEstimator class CV_EXPORTS SparsePyrLkOptFlowEstimator
: public PyrLkOptFlowEstimatorBase, public ISparseOptFlowEstimator : public PyrLkOptFlowEstimatorBase, public ISparseOptFlowEstimator
{ {
public: public:
@ -99,7 +99,7 @@ public:
}; };
#if HAVE_OPENCV_GPU #if HAVE_OPENCV_GPU
class DensePyrLkOptFlowEstimatorGpu class CV_EXPORTS DensePyrLkOptFlowEstimatorGpu
: public PyrLkOptFlowEstimatorBase, public IDenseOptFlowEstimator : public PyrLkOptFlowEstimatorBase, public IDenseOptFlowEstimator
{ {
public: public:

@ -58,7 +58,7 @@ namespace cv
namespace videostab namespace videostab
{ {
class Stabilizer : public IFrameSource class CV_EXPORTS Stabilizer : public IFrameSource
{ {
public: public:
Stabilizer(); Stabilizer();

Loading…
Cancel
Save