diff --git a/modules/flann/doc/flann_clustering.rst b/modules/flann/doc/flann_clustering.rst index 951c0efd51..8dd2fa0adc 100644 --- a/modules/flann/doc/flann_clustering.rst +++ b/modules/flann/doc/flann_clustering.rst @@ -7,9 +7,9 @@ flann::hierarchicalClustering -------------------------------------------- Clusters features using hierarchical k-means algorithm. -.. ocv:function:: int flann::hierarchicalClustering(const Mat& features, Mat& centers, const ::cvflann::KMeansIndexParams& params, Distance d = Distance()) +.. ocv:function:: template int flann::hierarchicalClustering(const Mat& features, Mat& centers, const cvflann::KMeansIndexParams& params, Distance d = Distance()) - :param features: The points to be clustered. The matrix must have elements of type Distance::ElementType. + :param features: The points to be clustered. The matrix must have elements of type ``Distance::ElementType``. :param centers: The centers of the clusters obtained. The matrix must have type Distance::ResultType. The number of rows in this matrix represents the number of clusters desired, however, because of the way the cut in the hierarchical tree is chosen, the number of clusters computed will be the highest number of the form ``(branching-1)*k+1`` that's lower than the number of clusters desired, where ``branching`` is the tree's branching factor (see description of the KMeansIndexParams). diff --git a/modules/gpu/doc/image_processing.rst b/modules/gpu/doc/image_processing.rst index d09ef7d8ee..c29a8a6520 100644 --- a/modules/gpu/doc/image_processing.rst +++ b/modules/gpu/doc/image_processing.rst @@ -499,7 +499,7 @@ gpu::buildWarpAffineMaps ------------------------ Builds transformation maps for affine transformation. -.. ocv:function:: void buildWarpAffineMaps(const Mat& M, bool inverse, Size dsize, GpuMat& xmap, GpuMat& ymap, Stream& stream = Stream::Null()); +.. ocv:function:: void buildWarpAffineMaps(const Mat& M, bool inverse, Size dsize, GpuMat& xmap, GpuMat& ymap, Stream& stream = Stream::Null()) :param M: *2x3* transformation matrix. @@ -543,7 +543,7 @@ gpu::buildWarpPerspectiveMaps ----------------------------- Builds transformation maps for perspective transformation. -.. ocv:function:: void buildWarpAffineMaps(const Mat& M, bool inverse, Size dsize, GpuMat& xmap, GpuMat& ymap, Stream& stream = Stream::Null()); +.. ocv:function:: void buildWarpAffineMaps(const Mat& M, bool inverse, Size dsize, GpuMat& xmap, GpuMat& ymap, Stream& stream = Stream::Null()) :param M: *3x3* transformation matrix. diff --git a/modules/gpu/doc/introduction.rst b/modules/gpu/doc/introduction.rst index 029fee87dc..e7a3c31c9a 100644 --- a/modules/gpu/doc/introduction.rst +++ b/modules/gpu/doc/introduction.rst @@ -43,7 +43,7 @@ Utilizing Multiple GPUs ----------------------- In the current version, each of the OpenCV GPU algorithms can use only a single GPU. So, to utilize multiple GPUs, you have to manually distribute the work between GPUs. -Switching active devie can be done using :ocv:func:`gpu::setDevice()' function. For more details please read Cuda C Programing Guid. +Switching active devie can be done using :ocv:func:`gpu::setDevice()` function. For more details please read Cuda C Programing Guid. While developing algorithms for multiple GPUs, note a data passing overhead. For primitive functions and small images, it can be significant, which may eliminate all the advantages of having multiple GPUs. But for high-level algorithms, consider using multi-GPU acceleration. For example, the Stereo Block Matching algorithm has been successfully parallelized using the following algorithm: diff --git a/modules/imgproc/doc/feature_detection.rst b/modules/imgproc/doc/feature_detection.rst index c0ca798046..817a52fca6 100644 --- a/modules/imgproc/doc/feature_detection.rst +++ b/modules/imgproc/doc/feature_detection.rst @@ -279,9 +279,6 @@ The function can be used to initialize a point-based tracker of an object. :ocv:func:`cornerHarris`, :ocv:func:`calcOpticalFlowPyrLK`, :ocv:func:`estimateRigidTransform`, - :ocv:class:`PlanarObjectDetector`, - :ocv:class:`OneWayDescriptor` - HoughCircles diff --git a/modules/imgproc/doc/histograms.rst b/modules/imgproc/doc/histograms.rst index e8e91b572e..4ea6fa3f9d 100644 --- a/modules/imgproc/doc/histograms.rst +++ b/modules/imgproc/doc/histograms.rst @@ -405,8 +405,8 @@ Creates a histogram. The function creates a histogram of the specified size and returns a pointer to the created histogram. If the array ``ranges`` is 0, the histogram bin ranges must be specified later via the function :ocv:cfunc:`SetHistBinRanges`. Though :ocv:cfunc:`CalcHist` and :ocv:cfunc:`CalcBackProject` may process 8-bit images without setting bin ranges, they assume they are equally spaced in 0 to 255 bins. -GetHistValue_?D ---------------- +GetHistValue\_?D +---------------- Returns a pointer to the histogram bin. .. ocv:cfunction:: float cvGetHistValue_1D(CvHistogram hist, int idx0) diff --git a/modules/nonfree/test/test_features2d.cpp b/modules/nonfree/test/test_features2d.cpp index a932b9ba9a..24aa5d9983 100644 --- a/modules/nonfree/test/test_features2d.cpp +++ b/modules/nonfree/test/test_features2d.cpp @@ -1067,14 +1067,14 @@ TEST(Features2d_BruteForceDescriptorMatcher_knnMatch, regression) //cout << "\nBest " << k << " matches to " << descT.rows << " train desc-s." << endl; ASSERT_EQ(descQ.rows, matches.size()); - for(int i = 0; i= matches[i].size()); - for(int j = 0; j(matches[i].size())); + for(size_t j = 0; j " << matches[i][j].trainIdx << endl; - ASSERT_EQ(matches[i][j].queryIdx, i); + ASSERT_EQ(matches[i][j].queryIdx, static_cast(i)); } } }