:param cameraMatrix1: The input/output first camera matrix: :math:`\vecthreethree{f_x^{(j)}}{0}{c_x^{(j)}}{0}{f_y^{(j)}}{c_y^{(j)}}{0}{0}{1}` , :math:`j = 0,\, 1` . If any of ``CV_CALIB_USE_INTRINSIC_GUESS`` , ``CV_CALIB_FIX_ASPECT_RATIO`` , ``CV_CALIB_FIX_INTRINSIC`` or ``CV_CALIB_FIX_FOCAL_LENGTH`` are specified, some or all of the matrices' components must be initialized; see the flags description
:param distCoeffs: The input/output vector of distortion coefficients :math:`(k_1, k_2, p_1, p_2[, k_3[, k_4, k_5, k_6]])` of 4, 5 or 8 elements.
:param distCoeffs1: The input/output vector of distortion coefficients :math:`(k_1, k_2, p_1, p_2[, k_3[, k_4, k_5, k_6]])` of 4, 5 or 8 elements.
:param cameraMatrix2: The input/output second camera matrix, as cameraMatrix1.
...
...
@@ -2282,25 +2282,20 @@ StereoRectify
Computes rectification transforms for each head of a calibrated stereo camera.
:param cameraMatrix1, cameraMatrix2: The camera matrices :math:`\vecthreethree{f_x^{(j)}}{0}{c_x^{(j)}}{0}{f_y^{(j)}}{c_y^{(j)}}{0}{0}{1}` .
:param cameraMatrix1: The first camera matrix.
:param cameraMatrix2: The second camera matrix.
:param distCoeffs: The input vectors of distortion coefficients :math:`(k_1, k_2, p_1, p_2[, k_3[, k_4, k_5, k_6]])` of 4, 5 or 8 elements each. If the vectors are NULL/empty, the zero distortion coefficients are assumed.
:param distCoeffs1: The first camera distortion parameters.
:param distCoeffs2: The second camera distortion parameters.
:param imageSize: Size of the image used for stereo calibration.
:param imageSize: Size of the image used for stereo calibration.
:param R: The rotation matrix between the 1st and the 2nd cameras' coordinate systems.
:param T: The translation vector between the cameras' coordinate systems.
:param T: The translation vector between the cameras' coordinate systems.
:param R1, R2: The output :math:`3 \times 3` rectification transforms (rotation matrices) for the first and the second cameras, respectively.
corresponding labels are returned by the function. Basically, the
user can use only the core of the function, set the number of
attempts to 1, initialize labels each time using a custom algorithm
( ``flags=CV_KMEAN_USE_INITIAL_LABELS`` ) and, based on the output compactness
( ``flags=CV_KMEANS_USE_INITIAL_LABELS`` ) and, based on the output compactness
or any other criteria, choose the best clustering.
...
...
@@ -199,7 +199,7 @@ SeqPartition
:param labels: Ouput parameter. Double pointer to the sequence of 0-based labels of input sequence elements
:param is_equal: The relation function that should return non-zero if the two particular sequence elements are from the same class, and zero otherwise. The partitioning algorithm uses transitive closure of the relation function as an equivalency critria
:param is_equal: The relation function that should return non-zero if the two particular sequence elements are from the same class, and zero otherwise. The partitioning algorithm uses transitive closure of the relation function as an equivalency criteria
:param userdata: Pointer that is transparently passed to the ``is_equal`` function
:param mask: Mask specifying permissible matches between an input query and train matrices of descriptors.
:param masks: Set of masks. Each ``masks[i]`` specifies permissible matches between input query descriptors and stored train descriptors from the i-th image ``trainDescCollection[i]``.
:param masks: Set of masks. Each ``masks[i]`` specifies permissible matches between the input query descriptors and stored train descriptors from the i-th image ``trainDescCollection[i]``.
In the first variant of this method, the train descriptors are passed as an input argument. In the second variant of the method, train descriptors collection that was set by ``DescriptorMatcher::add`` is used. Optional mask (or masks) can be passed to specify which query and training descriptors can be matched. Namely, ``queryDescriptors[i]`` can be matched with ``trainDescriptors[j]`` only if ``mask.at<uchar>(i,j)`` is non-zero.
...
...
@@ -186,7 +186,13 @@ DescriptorMatcher::knnMatch
Finds the k best matches for each descriptor from a query set.
:param queryDescriptors, trainDescriptors, mask, masks: See :ref:`DescriptorMatcher::match` .
:param queryDescriptors: Query set of descriptors.
:param trainDescriptors: Train set of descriptors. This set is not added to the train descriptors collection stored in the class object.
:param mask: Mask specifying permissible matches between an input query and train matrices of descriptors.
:param masks: Set of masks. Each ``masks[i]`` specifies permissible matches between the input query descriptors and stored train descriptors from the i-th image ``trainDescCollection[i]``.
:param matches: Matches. Each ``matches[i]`` is k or less matches for the same query descriptor.
For each query descriptor, finds the training descriptors not farther than the specified distance.
:param queryDescriptors, trainDescriptors, mask, masks: See :cpp:func:`DescriptorMatcher::match`.??look at the output - the 1st paarm is omitted
:param queryDescriptors: Query set of descriptors.
:param matches, compactResult: See :cpp:func:`DescriptorMatcher::knnMatch`.??look at the output - the 1st paarm is omitted
:param trainDescriptors: Train set of descriptors. This set is not added to the train descriptors collection stored in the class object.
:param mask: Mask specifying permissible matches between an input query and train matrices of descriptors.
:param masks: Set of masks. Each ``masks[i]`` specifies permissible matches between the input query descriptors and stored train descriptors from the i-th image ``trainDescCollection[i]``.
:param matches: The found matches.
:param compactResult: Parameter that is used when the mask (or masks) is not empty. If ``compactResult`` is false, the ``matches`` vector has the same size as ``queryDescriptors`` rows. If ``compactResult`` is true, the ``matches`` vector does not contain matches for fully masked-out query descriptors.
:param maxDistance: Threshold for the distance between matched descriptors.
...
...
@@ -222,9 +236,7 @@ DescriptorMatcher::clone
Clones the matcher.
:param emptyTrainData: If ``emptyTrainData`` is false, the method creates a deep copy of the object, that is, copies
both parameters and train data. If ``emptyTrainData`` is true, the method creates an object copy with the current parameters
but with empty train data.
:param emptyTrainData: If ``emptyTrainData`` is false, the method creates a deep copy of the object, that is, copies both parameters and train data. If ``emptyTrainData`` is true, the method creates an object copy with the current parameters but with empty train data.
.. index:: DescriptorMatcher::create
...
...
@@ -235,17 +247,17 @@ DescriptorMatcher::create
Creates a descriptor matcher of a given type with the default parameters (using default constructor).
:param descriptorMatcherType: Descriptor matcher type. Now the following matcher types are supported:
*
``BruteForce`` (it uses ``L2`` )
``BruteForce`` (it uses ``L2`` )
*
``BruteForce-L1``
``BruteForce-L1``
*
``BruteForce-Hamming``
``BruteForce-Hamming``
*
``BruteForce-HammingLUT``
``BruteForce-HammingLUT``
*
``FlannBased``
``FlannBased``
.. index:: BruteForceMatcher
...
...
@@ -310,7 +322,7 @@ For efficiency, ``BruteForceMatcher`` is used as a template parameterized with t
:param on_change: Pointer to the function to be called every time the button changes its state. This function should be prototyped as ``void Foo(int state,*void);`` . *state* is the current state of the button. It could be -1 for a push button, 0 or 1 for a check/radio box button.
:param userdata: Pointer passed to the callback function. *(Optional)*
:param userdata: Pointer passed to the callback function.
The ``button_type`` parameter can be any of the following:
* (Optional -- Will be a push button by default.)??
:param button_type: The optional type of the button.
* **CV_PUSH_BUTTON** Push button
* **CV_PUSH_BUTTON** Push button
* **CV_CHECKBOX** Checkbox button
* **CV_CHECKBOX** Checkbox button
* **CV_RADIOBOX** Radiobox button. The radiobox on the same buttonbar (same line) are exclusive, that is only one can be selected at a time.
* **CV_RADIOBOX** Radiobox button. The radiobox on the same buttonbar (same line) are exclusive, that is only one can be selected at a time.
* **initial_button_state** Default state of the button. Use for checkbox and radiobox. Its value could be 0 or 1. *(Optional)*
:param initial_button_state: Default state of the button. Use for checkbox and radiobox. Its value could be 0 or 1. *(Optional)*
The function ``createButton`` attaches a button to the control panel. Each button is added to a buttonbar to the right of the last button.
A new buttonbar is created if nothing was attached to the control panel before, or if the last element attached to the control panel was a trackbar.