Commit c1a8fb72 authored by Alexander Alekhin's avatar Alexander Alekhin

Merge pull request #16498 from etrulls:3.4.9-maxIters

parents 9f82b747 7e637c13
...@@ -1905,6 +1905,7 @@ point localization, image resolution, and the image noise. ...@@ -1905,6 +1905,7 @@ point localization, image resolution, and the image noise.
@param confidence Parameter used for the RANSAC and LMedS methods only. It specifies a desirable level @param confidence Parameter used for the RANSAC and LMedS methods only. It specifies a desirable level
of confidence (probability) that the estimated matrix is correct. of confidence (probability) that the estimated matrix is correct.
@param mask @param mask
@param maxIters The maximum number of robust method iterations.
The epipolar geometry is described by the following equation: The epipolar geometry is described by the following equation:
...@@ -1938,6 +1939,11 @@ stereoRectifyUncalibrated to compute the rectification transformation. : ...@@ -1938,6 +1939,11 @@ stereoRectifyUncalibrated to compute the rectification transformation. :
findFundamentalMat(points1, points2, FM_RANSAC, 3, 0.99); findFundamentalMat(points1, points2, FM_RANSAC, 3, 0.99);
@endcode @endcode
*/ */
CV_EXPORTS_W Mat findFundamentalMat( InputArray points1, InputArray points2,
int method, double ransacReprojThreshold, double confidence,
int maxIters, OutputArray mask = noArray() );
/** @overload */
CV_EXPORTS_W Mat findFundamentalMat( InputArray points1, InputArray points2, CV_EXPORTS_W Mat findFundamentalMat( InputArray points1, InputArray points2,
int method = FM_RANSAC, int method = FM_RANSAC,
double ransacReprojThreshold = 3., double confidence = 0.99, double ransacReprojThreshold = 3., double confidence = 0.99,
......
...@@ -809,7 +809,7 @@ public: ...@@ -809,7 +809,7 @@ public:
cv::Mat cv::findFundamentalMat( InputArray _points1, InputArray _points2, cv::Mat cv::findFundamentalMat( InputArray _points1, InputArray _points2,
int method, double ransacReprojThreshold, double confidence, int method, double ransacReprojThreshold, double confidence,
OutputArray _mask ) int maxIters, OutputArray _mask )
{ {
CV_INSTRUMENT_REGION(); CV_INSTRUMENT_REGION();
...@@ -861,7 +861,7 @@ cv::Mat cv::findFundamentalMat( InputArray _points1, InputArray _points2, ...@@ -861,7 +861,7 @@ cv::Mat cv::findFundamentalMat( InputArray _points1, InputArray _points2,
confidence = 0.99; confidence = 0.99;
if( (method & ~3) == FM_RANSAC && npoints >= 15 ) if( (method & ~3) == FM_RANSAC && npoints >= 15 )
result = createRANSACPointSetRegistrator(cb, 7, ransacReprojThreshold, confidence)->run(m1, m2, F, _mask); result = createRANSACPointSetRegistrator(cb, 7, ransacReprojThreshold, confidence, maxIters)->run(m1, m2, F, _mask);
else else
result = createLMeDSPointSetRegistrator(cb, 7, confidence)->run(m1, m2, F, _mask); result = createLMeDSPointSetRegistrator(cb, 7, confidence)->run(m1, m2, F, _mask);
} }
...@@ -872,11 +872,17 @@ cv::Mat cv::findFundamentalMat( InputArray _points1, InputArray _points2, ...@@ -872,11 +872,17 @@ cv::Mat cv::findFundamentalMat( InputArray _points1, InputArray _points2,
return F; return F;
} }
cv::Mat cv::findFundamentalMat( InputArray _points1, InputArray _points2, cv::Mat cv::findFundamentalMat( cv::InputArray points1, cv::InputArray points2,
OutputArray _mask, int method, int method, double ransacReprojThreshold, double confidence,
double ransacReprojThreshold , double confidence) cv::OutputArray mask )
{
return cv::findFundamentalMat(points1, points2, method, ransacReprojThreshold, confidence, 1000, mask);
}
cv::Mat cv::findFundamentalMat( cv::InputArray points1, cv::InputArray points2, cv::OutputArray mask,
int method, double ransacReprojThreshold, double confidence )
{ {
return cv::findFundamentalMat(_points1, _points2, method, ransacReprojThreshold, confidence, _mask); return cv::findFundamentalMat(points1, points2, method, ransacReprojThreshold, confidence, 1000, mask);
} }
......
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