Commit 8fc84b7a authored by Alexey Spizhevoy's avatar Alexey Spizhevoy

Updated FMM run() signature

parent 5e2bcacb
...@@ -60,7 +60,7 @@ public: ...@@ -60,7 +60,7 @@ public:
FastMarchingMethod() : inf_(1e6f) {} FastMarchingMethod() : inf_(1e6f) {}
template <typename Inpaint> template <typename Inpaint>
void run(const Mat &mask, Inpaint inpaint); Inpaint run(const Mat &mask, Inpaint inpaint);
Mat distanceMap() const { return dist_; } Mat distanceMap() const { return dist_; }
......
...@@ -51,7 +51,7 @@ namespace videostab ...@@ -51,7 +51,7 @@ namespace videostab
{ {
template <typename Inpaint> template <typename Inpaint>
void FastMarchingMethod::run(const cv::Mat &mask, Inpaint inpaint) Inpaint FastMarchingMethod::run(const cv::Mat &mask, Inpaint inpaint)
{ {
using namespace std; using namespace std;
using namespace cv; using namespace cv;
...@@ -156,6 +156,8 @@ void FastMarchingMethod::run(const cv::Mat &mask, Inpaint inpaint) ...@@ -156,6 +156,8 @@ void FastMarchingMethod::run(const cv::Mat &mask, Inpaint inpaint)
} }
} }
} }
return inpaint;
} }
} // namespace videostab } // namespace videostab
......
...@@ -97,7 +97,7 @@ static Mat estimateGlobMotionLeastSquaresTranslationAndScale( ...@@ -97,7 +97,7 @@ static Mat estimateGlobMotionLeastSquaresTranslationAndScale(
solve(A, b, sol, DECOMP_SVD); solve(A, b, sol, DECOMP_SVD);
if (rmse) if (rmse)
*rmse = norm(A*sol, b, NORM_L2) / sqrt(static_cast<float>(npoints)); *rmse = static_cast<float>(norm(A*sol, b, NORM_L2) / sqrt(static_cast<double>(npoints)));
Mat_<float> M = Mat::eye(3, 3, CV_32F); Mat_<float> M = Mat::eye(3, 3, CV_32F);
M(0,0) = M(1,1) = sol(0,0); M(0,0) = M(1,1) = sol(0,0);
...@@ -130,7 +130,7 @@ static Mat estimateGlobMotionLeastSquaresAffine( ...@@ -130,7 +130,7 @@ static Mat estimateGlobMotionLeastSquaresAffine(
solve(A, b, sol, DECOMP_SVD); solve(A, b, sol, DECOMP_SVD);
if (rmse) if (rmse)
*rmse = norm(A*sol, b, NORM_L2) / sqrt(static_cast<float>(npoints)); *rmse = static_cast<float>(norm(A*sol, b, NORM_L2) / sqrt(static_cast<double>(npoints)));
Mat_<float> M = Mat::eye(3, 3, CV_32F); Mat_<float> M = Mat::eye(3, 3, CV_32F);
for (int i = 0, k = 0; i < 2; ++i) for (int i = 0, k = 0; i < 2; ++i)
...@@ -157,8 +157,8 @@ Mat estimateGlobalMotionLeastSquares( ...@@ -157,8 +157,8 @@ Mat estimateGlobalMotionLeastSquares(
Mat estimateGlobalMotionRobust( Mat estimateGlobalMotionRobust(
const vector<Point2f> &points0, const vector<Point2f> &points1, int model, const RansacParams &params, const vector<Point2f> &points0, const vector<Point2f> &points1, int model,
float *rmse, int *ninliers) const RansacParams &params, float *rmse, int *ninliers)
{ {
CV_Assert(points0.size() == points1.size()); CV_Assert(points0.size() == points1.size());
...@@ -168,7 +168,8 @@ Mat estimateGlobalMotionRobust( ...@@ -168,7 +168,8 @@ Mat estimateGlobalMotionRobust(
estimateGlobMotionLeastSquaresAffine }; estimateGlobMotionLeastSquaresAffine };
const int npoints = static_cast<int>(points0.size()); const int npoints = static_cast<int>(points0.size());
const int niters = static_cast<int>(ceil(log(1 - params.prob) / log(1 - pow(1 - params.eps, params.size)))); const int niters = static_cast<int>(ceil(log(1 - params.prob) /
log(1 - pow(1 - params.eps, params.size))));
RNG rng(0); RNG rng(0);
vector<int> indices(params.size); vector<int> indices(params.size);
...@@ -248,7 +249,8 @@ Mat estimateGlobalMotionRobust( ...@@ -248,7 +249,8 @@ Mat estimateGlobalMotionRobust(
} }
PyrLkRobustMotionEstimator::PyrLkRobustMotionEstimator() : ransacParams_(RansacParams::affine2dMotionStd()) PyrLkRobustMotionEstimator::PyrLkRobustMotionEstimator()
: ransacParams_(RansacParams::affine2dMotionStd())
{ {
setDetector(new GoodFeaturesToTrackDetector()); setDetector(new GoodFeaturesToTrackDetector());
setOptFlowEstimator(new SparsePyrLkOptFlowEstimator()); setOptFlowEstimator(new SparsePyrLkOptFlowEstimator());
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment