Merge remote-tracking branch 'upstream/3.4' into merge-3.4

pull/1731/head
Alexander Alekhin 7 years ago
commit 5d3928e4f5
  1. 4
      modules/aruco/src/apriltag_quad_thresh.cpp
  2. 4
      modules/ovis/src/meshes.cpp
  3. 13
      modules/ximgproc/doc/ximgproc.bib
  4. 4
      modules/ximgproc/include/opencv2/ximgproc/ridgefilter.hpp

@ -935,8 +935,8 @@ int fit_quad(const Ptr<DetectorParameters> &_params, const Mat im, zarray_t *clu
double x = lines[i1][0] - L1*A01;
double y = lines[i1][1] - L1*A11;
CV_Assert(fabs(x - quad->p[i][0]) < 0.001,
fabs(y - quad->p[i][1]) < 0.001);
CV_Assert(fabs(x - quad->p[i][0]) < 0.001);
CV_Assert(fabs(y - quad->p[i][1]) < 0.001);
}
#endif // NDEBUG

@ -38,10 +38,10 @@ void createPointCloudMesh(const String& name, InputArray vertices, InputArray co
{
int color_type = colors.type();
CV_Assert(_app);
CV_CheckTypeEQ(vertices.type(), CV_32FC3, "")
CV_CheckTypeEQ(vertices.type(), CV_32FC3, "vertices type must be Vec3f");
CV_Assert(vertices.isContinuous());
if (!colors.empty())
CV_CheckType(color_type, color_type == CV_8UC3 || color_type == CV_8UC4);
CV_CheckType(color_type, color_type == CV_8UC3 || color_type == CV_8UC4, "unsupported type");
// material
MaterialPtr mat = MaterialManager::getSingleton().create(name, RESOURCEGROUP_NAME);

@ -298,3 +298,16 @@
volume = {1},
booktitle = {VISAPP 2008 - 3rd International Conference on Computer Vision Theory and Applications, Proceedings}
}
@misc{Segleafvein,
title = {Best Way of Segmenting Veins in Leaves.},
author = {Niki Estner},
url = {https://dsp.stackexchange.com/a/1735}
}
@misc{M_RF,
title = {Ridge Filter Mathematica},
author = {Wolfram Mathematica},
url = {http://reference.wolfram.com/language/ref/RidgeFilter.html}
}

@ -5,6 +5,7 @@
/*
Ridge Detection Filter.
OpenCV port by : Kushal Vyas (@kushalvyas), Venkatesh Vijaykumar(@venkateshvijaykumar)
Adapted from Niki Estner's explaination of RidgeFilter.
*/
#ifndef __OPENCV_XIMGPROC_RIDGEFILTER_HPP__
@ -20,7 +21,8 @@ namespace cv { namespace ximgproc {
/** @brief Applies Ridge Detection Filter to an input image.
Implements Ridge detection similar to the one in [Mathematica](http://reference.wolfram.com/language/ref/RidgeFilter.html)
using the eigen values from the Hessian Matrix of the input image using Sobel Derivatives.
Additional refinement can be done using Skeletonization and Binarization.
Additional refinement can be done using Skeletonization and Binarization. Adapted from @cite segleafvein and @cite M_RF
*/
class CV_EXPORTS_W RidgeDetectionFilter : public Algorithm
{

Loading…
Cancel
Save