opencv/modules/gpu/doc/matrix_reductions.rst

181 lines
5.2 KiB
ReStructuredText
Raw Normal View History

Matrix Reductions
=================
.. highlight:: cpp
.. index:: gpu::meanStdDev
cv::gpu::meanStdDev
-------------------
.. c:function:: void meanStdDev(const GpuMat\& mtx, Scalar\& mean, Scalar\& stddev)
2011-02-26 19:05:10 +08:00
Computes mean value and standard deviation of matrix elements.
2011-02-26 19:05:10 +08:00
:param mtx: Source matrix. ``CV_8UC1`` matrices are supported for now.
2011-02-26 19:05:10 +08:00
:param mean: Mean value.
2011-02-26 19:05:10 +08:00
:param stddev: Standard deviation value.
2011-02-26 19:05:10 +08:00
See also:
:func:`meanStdDev` .
.. index:: gpu::norm
cv::gpu::norm
-------------
.. c:function:: double norm(const GpuMat\& src, int normType=NORM_L2)
2011-02-26 19:05:10 +08:00
Returns norm of matrix (or of two matrices difference).
2011-02-26 19:05:10 +08:00
:param src: Source matrix. Any matrices except 64F are supported.
2011-02-26 19:05:10 +08:00
:param normType: Norm type. ``NORM_L1`` , ``NORM_L2`` and ``NORM_INF`` are supported for now.
.. c:function:: double norm(const GpuMat\& src, int normType, GpuMat\& buf)
2011-02-26 19:05:10 +08:00
* **src** Source matrix. Any matrices except 64F are supported.
2011-02-26 19:05:10 +08:00
* **normType** Norm type. ``NORM_L1`` , ``NORM_L2`` and ``NORM_INF`` are supported for now.
2011-02-26 19:05:10 +08:00
* **buf** Optional buffer to avoid extra memory allocations. It's resized automatically.
.. c:function:: double norm(const GpuMat\& src1, const GpuMat\& src2,
int normType=NORM_L2)
2011-02-26 19:05:10 +08:00
* **src1** First source matrix. ``CV_8UC1`` matrices are supported for now.
2011-02-26 19:05:10 +08:00
* **src2** Second source matrix. Must have the same size and type as ``src1``
.
2011-02-26 19:05:10 +08:00
* **normType** Norm type. ``NORM_L1`` , ``NORM_L2`` and ``NORM_INF`` are supported for now.
2011-02-26 19:05:10 +08:00
See also:
:func:`norm` .
.. index:: gpu::sum
cv::gpu::sum
------------
.. c:function:: Scalar sum(const GpuMat\& src)
.. c:function:: Scalar sum(const GpuMat\& src, GpuMat\& buf)
2011-02-26 19:05:10 +08:00
Returns sum of matrix elements.
2011-02-26 19:05:10 +08:00
:param src: Source image of any depth except ``CV_64F`` .
2011-02-26 19:05:10 +08:00
:param buf: Optional buffer to avoid extra memory allocations. It's resized automatically.
2011-02-26 19:05:10 +08:00
See also:
:func:`sum` .
.. index:: gpu::absSum
cv::gpu::absSum
---------------
.. c:function:: Scalar absSum(const GpuMat\& src)
.. c:function:: Scalar absSum(const GpuMat\& src, GpuMat\& buf)
2011-02-26 19:05:10 +08:00
Returns sum of matrix elements absolute values.
2011-02-26 19:05:10 +08:00
:param src: Source image of any depth except ``CV_64F`` .
2011-02-26 19:05:10 +08:00
:param buf: Optional buffer to avoid extra memory allocations. It's resized automatically.
.. index:: gpu::sqrSum
cv::gpu::sqrSum
---------------
.. c:function:: Scalar sqrSum(const GpuMat\& src)
.. c:function:: Scalar sqrSum(const GpuMat\& src, GpuMat\& buf)
2011-02-26 19:05:10 +08:00
Returns squared sum of matrix elements.
2011-02-26 19:05:10 +08:00
:param src: Source image of any depth except ``CV_64F`` .
2011-02-26 19:05:10 +08:00
:param buf: Optional buffer to avoid extra memory allocations. It's resized automatically.
.. index:: gpu::minMax
cv::gpu::minMax
---------------
.. c:function:: void minMax(const GpuMat\& src, double* minVal,
double* maxVal=0, const GpuMat\& mask=GpuMat())
.. c:function:: void minMax(const GpuMat\& src, double* minVal, double* maxVal,
const GpuMat\& mask, GpuMat\& buf)
2011-02-26 19:05:10 +08:00
Finds global minimum and maximum matrix elements and returns their values.
2011-02-26 19:05:10 +08:00
:param src: Single-channel source image.
2011-02-26 19:05:10 +08:00
:param minVal: Pointer to returned minimum value. ``NULL`` if not required.
2011-02-26 19:05:10 +08:00
:param maxVal: Pointer to returned maximum value. ``NULL`` if not required.
2011-02-26 19:05:10 +08:00
:param mask: Optional mask to select a sub-matrix.
2011-02-26 19:05:10 +08:00
:param buf: Optional buffer to avoid extra memory allocations. It's resized automatically.
2011-02-26 19:05:10 +08:00
Function doesn't work with ``CV_64F`` images on GPU with compute capability
:math:`<` 1.3.
See also:
:func:`minMaxLoc` .
.. index:: gpu::minMaxLoc
cv::gpu::minMaxLoc
------------------
.. c:function:: void minMaxLoc(const GpuMat\& src, double\* minVal, double* maxVal=0,
Point* minLoc=0, Point* maxLoc=0,
const GpuMat\& mask=GpuMat())
.. c:function:: void minMaxLoc(const GpuMat\& src, double* minVal, double* maxVal,
Point* minLoc, Point* maxLoc, const GpuMat\& mask,
GpuMat\& valbuf, GpuMat\& locbuf)
2011-02-26 19:05:10 +08:00
Finds global minimum and maximum matrix elements and returns their values with locations.
2011-02-26 19:05:10 +08:00
:param src: Single-channel source image.
2011-02-26 19:05:10 +08:00
:param minVal: Pointer to returned minimum value. ``NULL`` if not required.
2011-02-26 19:05:10 +08:00
:param maxVal: Pointer to returned maximum value. ``NULL`` if not required.
2011-02-26 19:05:10 +08:00
:param minValLoc: Pointer to returned minimum location. ``NULL`` if not required.
2011-02-26 19:05:10 +08:00
:param maxValLoc: Pointer to returned maximum location. ``NULL`` if not required.
2011-02-26 19:05:10 +08:00
:param mask: Optional mask to select a sub-matrix.
2011-02-26 19:05:10 +08:00
:param valbuf: Optional values buffer to avoid extra memory allocations. It's resized automatically.
2011-02-26 19:05:10 +08:00
:param locbuf: Optional locations buffer to avoid extra memory allocations. It's resized automatically.
Function doesn't work with ``CV_64F`` images on GPU with compute capability
:math:`<` 1.3.
See also:
:func:`minMaxLoc` .
2011-02-26 19:05:10 +08:00
.. index:: gpu::countNonZero
cv::gpu::countNonZero
---------------------
.. c:function:: int countNonZero(const GpuMat\& src)
.. c:function:: int countNonZero(const GpuMat\& src, GpuMat\& buf)
2011-02-26 19:05:10 +08:00
Counts non-zero matrix elements.
2011-02-26 19:05:10 +08:00
:param src: Single-channel source image.
2011-02-26 19:05:10 +08:00
:param buf: Optional buffer to avoid extra memory allocations. It's resized automatically.
2011-02-26 19:05:10 +08:00
Function doesn't work with ``CV_64F`` images on GPU with compute capability
:math:`<` 1.3.
See also:
:func:`countNonZero` .