# cv::Matx< _Tp, m, n > Class Template Reference

`#include <core.hpp>`

List of all members.

## Public Types

enum | { depth = DataDepth<_Tp>::value, rows = m, cols = n, channels = rows*cols, type = CV_MAKETYPE(depth, channels) }
typedef Matx< _Tp, MIN(m, n), 1 > | diag_type
typedef Matx< _Tp, m, n > | mat_type
typedef _Tp | value_type

## Public Member Functions

Matx< _Tp, m, 1 > | col (int i) const
| extract the matrix column
double | ddot (const Matx< _Tp, m, n > &v) const
| dot product computed in double-precision arithmetics
Matx< _Tp, MIN(m, n), 1 > | diag () const
| extract the matrix diagonal
_Tp | dot (const Matx< _Tp, m, n > &v) const
| dot product computed with the default precision
template<int m1, int n1>
Matx< _Tp, m1, n1 > | get_minor (int i, int j) const
| extract part of the matrix
Matx< _Tp, n, m > | inv (int method=DECOMP_LU) const
| invert matrix the matrix
| Matx (const Matx< _Tp, m, n > &a, const Matx< _Tp, m, n > &b, Matx_MulOp)
| Matx (_Tp v0, _Tp v1, _Tp v2)
| 1x3 or 3x1 matrix
| Matx (_Tp v0, _Tp v1, _Tp v2, _Tp v3, _Tp v4, _Tp v5, _Tp v6)
| 1x7 or 7x1 matrix
| Matx (const Matx< _Tp, m, n > &a, const Matx< _Tp, m, n > &b, Matx_AddOp)
template<typename _T2 >
| Matx (const Matx< _Tp, m, n > &a, _T2 alpha, Matx_ScaleOp)
| Matx (_Tp v0)
| 1x1 matrix
template<int l>
| Matx (const Matx< _Tp, m, l > &a, const Matx< _Tp, l, n > &b, Matx_MatMulOp)
| Matx (_Tp v0, _Tp v1, _Tp v2, _Tp v3, _Tp v4, _Tp v5, _Tp v6, _Tp v7)
| 1x8, 2x4, 4x2 or 8x1 matrix
| Matx (_Tp v0, _Tp v1, _Tp v2, _Tp v3, _Tp v4, _Tp v5, _Tp v6, _Tp v7, _Tp v8, _Tp v9, _Tp v10, _Tp v11)
| 1x12, 2x6, 3x4, 4x3, 6x2 or 12x1 matrix
| Matx (_Tp v0, _Tp v1, _Tp v2, _Tp v3)
| 1x4, 2x2 or 4x1 matrix
| Matx (_Tp v0, _Tp v1, _Tp v2, _Tp v3, _Tp v4, _Tp v5, _Tp v6, _Tp v7, _Tp v8)
| 1x9, 3x3 or 9x1 matrix
| Matx (const Matx< _Tp, n, m > &a, Matx_TOp)
| Matx (_Tp v0, _Tp v1, _Tp v2, _Tp v3, _Tp v4, _Tp v5, _Tp v6, _Tp v7, _Tp v8, _Tp v9)
| 1x10, 2x5 or 5x2 or 10x1 matrix
| Matx (const Matx< _Tp, m, n > &a, const Matx< _Tp, m, n > &b, Matx_SubOp)
| Matx ()
| default constructor
| Matx (_Tp v0, _Tp v1, _Tp v2, _Tp v3, _Tp v4)
| 1x5 or 5x1 matrix
| Matx (_Tp v0, _Tp v1, _Tp v2, _Tp v3, _Tp v4, _Tp v5, _Tp v6, _Tp v7, _Tp v8, _Tp v9, _Tp v10, _Tp v11, _Tp v12, _Tp v13, _Tp v14, _Tp v15)
| 1x16, 4x4 or 16x1 matrix
| Matx (_Tp v0, _Tp v1, _Tp v2, _Tp v3, _Tp v4, _Tp v5)
| 1x6, 2x3, 3x2 or 6x1 matrix
| Matx (_Tp v0, _Tp v1)
| 1x2 or 2x1 matrix
| Matx (const _Tp *vals)
| initialize from a plain array
Matx< _Tp, m, n > | mul (const Matx< _Tp, m, n > &a) const
| multiply two matrices element-wise
template<typename T2 >
| operator Matx< T2, m, n > () const
| convertion to another data type
const _Tp & | operator() (int i) const
| 1D element access
_Tp & | operator() (int i, int j)
_Tp & | operator() (int i)
const _Tp & | operator() (int i, int j) const
| element access
template<int m1, int n1>
Matx< _Tp, m1, n1 > | reshape () const
| change the matrix shape
Matx< _Tp, 1, n > | row (int i) const
| extract the matrix row
Matx< _Tp, n, 1 > | solve (const Matx< _Tp, m, 1 > &rhs, int method) const
template<int l>
Matx< _Tp, n, l > | solve (const Matx< _Tp, m, l > &rhs, int flags=DECOMP_LU) const
| solve linear system
Matx< _Tp, n, m > | t () const
| transpose the matrix

## Static Public Member Functions

static Matx | all (_Tp alpha)
static Matx | diag (const diag_type &d)
static Matx | eye ()
static Matx | ones ()
static Matx | randn (_Tp a, _Tp b)
static Matx | randu (_Tp a, _Tp b)
static Matx | zeros ()

## Public Attributes

_Tp | val [m *n]

### template<typename _Tp, int m, int n>
class cv::Matx< _Tp, m, n >

## Member Typedef Documentation

template<typename _Tp, int m, int n>

typedef Matx<_Tp, MIN(m, n), 1> cv::Matx< _Tp, m, n >::diag_type

template<typename _Tp, int m, int n>

typedef Matx<_Tp, m, n> cv::Matx< _Tp, m, n >::mat_type

template<typename _Tp, int m, int n>

typedef _Tp cv::Matx< _Tp, m, n >::value_type

Reimplemented in cv::Vec< _Tp, cn >, cv::Vec< double, 4 >, and cv::Vec< _Tp, 4 >.

## Member Enumeration Documentation

template<typename _Tp, int m, int n>

anonymous enum

Enumerator:

  depth |
  rows |
  cols |
  channels |
  type |

## Constructor & Destructor Documentation

template<typename _Tp , int m, int n>

cv::Matx< _Tp, m, n >::Matx | ( | ) | `[inline]`

default constructor

template<typename _Tp, int m, int n>

cv::Matx< _Tp, m, n >::Matx | ( | _Tp | v0 ) | `[inline]`

1x1 matrix

template<typename _Tp, int m, int n>

cv::Matx< _Tp, m, n >::Matx | ( | _Tp | v0,
|  | _Tp | v1
| ) |  | `[inline]`

1x2 or 2x1 matrix

template<typename _Tp, int m, int n>

cv::Matx< _Tp, m, n >::Matx | ( | _Tp | v0,
|  | _Tp | v1,
|  | _Tp | v2
| ) |  | `[inline]`

1x3 or 3x1 matrix

template<typename _Tp, int m, int n>

cv::Matx< _Tp, m, n >::Matx | ( | _Tp | v0,
|  | _Tp | v1,
|  | _Tp | v2,
|  | _Tp | v3
| ) |  | `[inline]`

1x4, 2x2 or 4x1 matrix

template<typename _Tp, int m, int n>

cv::Matx< _Tp, m, n >::Matx | ( | _Tp | v0,
|  | _Tp | v1,
|  | _Tp | v2,
|  | _Tp | v3,
|  | _Tp | v4
| ) |  | `[inline]`

1x5 or 5x1 matrix

template<typename _Tp, int m, int n>

cv::Matx< _Tp, m, n >::Matx | ( | _Tp | v0,
|  | _Tp | v1,
|  | _Tp | v2,
|  | _Tp | v3,
|  | _Tp | v4,
|  | _Tp | v5
| ) |  | `[inline]`

1x6, 2x3, 3x2 or 6x1 matrix

template<typename _Tp, int m, int n>

cv::Matx< _Tp, m, n >::Matx | ( | _Tp | v0,
|  | _Tp | v1,
|  | _Tp | v2,
|  | _Tp | v3,
|  | _Tp | v4,
|  | _Tp | v5,
|  | _Tp | v6
| ) |  | `[inline]`

1x7 or 7x1 matrix

template<typename _Tp, int m, int n>

cv::Matx< _Tp, m, n >::Matx | ( | _Tp | v0,
|  | _Tp | v1,
|  | _Tp | v2,
|  | _Tp | v3,
|  | _Tp | v4,
|  | _Tp | v5,
|  | _Tp | v6,
|  | _Tp | v7
| ) |  | `[inline]`

1x8, 2x4, 4x2 or 8x1 matrix

template<typename _Tp, int m, int n>

cv::Matx< _Tp, m, n >::Matx | ( | _Tp | v0,
|  | _Tp | v1,
|  | _Tp | v2,
|  | _Tp | v3,
|  | _Tp | v4,
|  | _Tp | v5,
|  | _Tp | v6,
|  | _Tp | v7,
|  | _Tp | v8
| ) |  | `[inline]`

1x9, 3x3 or 9x1 matrix

template<typename _Tp, int m, int n>

cv::Matx< _Tp, m, n >::Matx | ( | _Tp | v0,
|  | _Tp | v1,
|  | _Tp | v2,
|  | _Tp | v3,
|  | _Tp | v4,
|  | _Tp | v5,
|  | _Tp | v6,
|  | _Tp | v7,
|  | _Tp | v8,
|  | _Tp | v9
| ) |  | `[inline]`

1x10, 2x5 or 5x2 or 10x1 matrix

template<typename _Tp, int m, int n>

cv::Matx< _Tp, m, n >::Matx | ( | _Tp | v0,
|  | _Tp | v1,
|  | _Tp | v2,
|  | _Tp | v3,
|  | _Tp | v4,
|  | _Tp | v5,
|  | _Tp | v6,
|  | _Tp | v7,
|  | _Tp | v8,
|  | _Tp | v9,
|  | _Tp | v10,
|  | _Tp | v11
| ) |  | `[inline]`

1x12, 2x6, 3x4, 4x3, 6x2 or 12x1 matrix

template<typename _Tp, int m, int n>

cv::Matx< _Tp, m, n >::Matx | ( | _Tp | v0,
|  | _Tp | v1,
|  | _Tp | v2,
|  | _Tp | v3,
|  | _Tp | v4,
|  | _Tp | v5,
|  | _Tp | v6,
|  | _Tp | v7,
|  | _Tp | v8,
|  | _Tp | v9,
|  | _Tp | v10,
|  | _Tp | v11,
|  | _Tp | v12,
|  | _Tp | v13,
|  | _Tp | v14,
|  | _Tp | v15
| ) |  | `[inline]`

1x16, 4x4 or 16x1 matrix

template<typename _Tp, int m, int n>

cv::Matx< _Tp, m, n >::Matx | ( | const _Tp * | vals ) | `[inline, explicit]`

initialize from a plain array

template<typename _Tp, int m, int n>

cv::Matx< _Tp, m, n >::Matx | ( | const Matx< _Tp, m, n > & | a,
|  | const Matx< _Tp, m, n > & | b,
|  | Matx_AddOp |
| ) |  | `[inline]`

template<typename _Tp, int m, int n>

cv::Matx< _Tp, m, n >::Matx | ( | const Matx< _Tp, m, n > & | a,
|  | const Matx< _Tp, m, n > & | b,
|  | Matx_SubOp |
| ) |  | `[inline]`

template<typename _Tp, int m, int n>
template<typename _T2 >

cv::Matx< _Tp, m, n >::Matx | ( | const Matx< _Tp, m, n > & | a,
|  | _T2 | alpha,
|  | Matx_ScaleOp |
| ) |  | `[inline]`

template<typename _Tp, int m, int n>

cv::Matx< _Tp, m, n >::Matx | ( | const Matx< _Tp, m, n > & | a,
|  | const Matx< _Tp, m, n > & | b,
|  | Matx_MulOp |
| ) |  | `[inline]`

template<typename _Tp, int m, int n>
template<int l>

cv::Matx< _Tp, m, n >::Matx | ( | const Matx< _Tp, m, l > & | a,
|  | const Matx< _Tp, l, n > & | b,
|  | Matx_MatMulOp |
| ) |  | `[inline]`

template<typename _Tp, int m, int n>

cv::Matx< _Tp, m, n >::Matx | ( | const Matx< _Tp, n, m > & | a,
|  | Matx_TOp |
| ) |  | `[inline]`

## Member Function Documentation

template<typename _Tp, int m, int n>

Matx< _Tp, m, n > cv::Matx< _Tp, m, n >::all | ( | _Tp | alpha ) | `[inline, static]`

Reimplemented in cv::Vec< _Tp, cn >, cv::Scalar_< _Tp >, cv::Vec< double, 4 >, cv::Vec< _Tp, 4 >, and cv::Scalar_< double >.

template<typename _Tp , int m, int n>

Matx< _Tp, m, 1 > cv::Matx< _Tp, m, n >::col | ( | int | i ) | const`[inline]`

extract the matrix column

template<typename _Tp, int m, int n>

double cv::Matx< _Tp, m, n >::ddot | ( | const Matx< _Tp, m, n > & | v ) | const`[inline]`

dot product computed in double-precision arithmetics

template<typename _Tp, int m, int n>

static Matx cv::Matx< _Tp, m, n >::diag | ( | const diag_type & | d ) | `[static]`

template<typename _Tp , int m, int n>

Matx< _Tp, MIN(m, n), 1 > cv::Matx< _Tp, m, n >::diag | ( | ) | const`[inline]`

extract the matrix diagonal

template<typename _Tp, int m, int n>

_Tp cv::Matx< _Tp, m, n >::dot | ( | const Matx< _Tp, m, n > & | v ) | const`[inline]`

dot product computed with the default precision

template<typename _Tp , int m, int n>

Matx< _Tp, m, n > cv::Matx< _Tp, m, n >::eye | ( | ) | `[inline, static]`

template<typename _Tp , int m, int n>
template<int m1, int n1>

Matx< _Tp, m1, n1 > cv::Matx< _Tp, m, n >::get_minor | ( | int | i,
|  | int | j
| ) |  | const`[inline]`

extract part of the matrix

template<typename _Tp , int m, int n>

Matx< _Tp, n, m > cv::Matx< _Tp, m, n >::inv | ( | int | method = `DECOMP_LU` ) | const`[inline]`

invert matrix the matrix

template<typename _Tp, int m, int n>

Matx< _Tp, m, n > cv::Matx< _Tp, m, n >::mul | ( | const Matx< _Tp, m, n > & | a ) | const`[inline]`

multiply two matrices element-wise

template<typename _Tp , int m, int n>

Matx< _Tp, m, n > cv::Matx< _Tp, m, n >::ones | ( | ) | `[inline, static]`

template<typename _Tp , int m, int n>
template<typename T2 >

cv::Matx< _Tp, m, n >::operator Matx< T2, m, n > | ( | ) | const`[inline]`

convertion to another data type

template<typename _Tp , int m, int n>

const _Tp & cv::Matx< _Tp, m, n >::operator() | ( | int | i ) | const`[inline]`

1D element access

Reimplemented in cv::Vec< _Tp, cn >, cv::Vec< double, 4 >, and cv::Vec< _Tp, 4 >.

template<typename _Tp , int m, int n>

_Tp & cv::Matx< _Tp, m, n >::operator() | ( | int | i,
|  | int | j
| ) |  | `[inline]`

template<typename _Tp , int m, int n>

_Tp & cv::Matx< _Tp, m, n >::operator() | ( | int | i ) | `[inline]`

Reimplemented in cv::Vec< _Tp, cn >, cv::Vec< double, 4 >, and cv::Vec< _Tp, 4 >.

template<typename _Tp , int m, int n>

const _Tp & cv::Matx< _Tp, m, n >::operator() | ( | int | i,
|  | int | j
| ) |  | const`[inline]`

element access

template<typename _Tp, int m, int n>

Matx< _Tp, m, n > cv::Matx< _Tp, m, n >::randn | ( | _Tp | a,
|  | _Tp | b
| ) |  | `[inline, static]`

template<typename _Tp, int m, int n>

Matx< _Tp, m, n > cv::Matx< _Tp, m, n >::randu | ( | _Tp | a,
|  | _Tp | b
| ) |  | `[inline, static]`

template<typename _Tp , int m, int n>
template<int m1, int n1>

Matx< _Tp, m1, n1 > cv::Matx< _Tp, m, n >::reshape | ( | ) | const`[inline]`

change the matrix shape

template<typename _Tp , int m, int n>

Matx< _Tp, 1, n > cv::Matx< _Tp, m, n >::row | ( | int | i ) | const`[inline]`

extract the matrix row

template<typename _Tp, int m, int n>

Matx<_Tp, n, 1> cv::Matx< _Tp, m, n >::solve | ( | const Matx< _Tp, m, 1 > & | rhs,
|  | int | method
| ) |  | const

template<typename _Tp, int m, int n>
template<int l>

Matx< _Tp, n, l > cv::Matx< _Tp, m, n >::solve | ( | const Matx< _Tp, m, l > & | rhs,
|  | int | flags = `DECOMP_LU`
| ) |  | const`[inline]`

solve linear system

template<typename _Tp , int m, int n>

Matx< _Tp, n, m > cv::Matx< _Tp, m, n >::t | ( | ) | const`[inline]`

transpose the matrix

template<typename _Tp , int m, int n>

Matx< _Tp, m, n > cv::Matx< _Tp, m, n >::zeros | ( | ) | `[inline, static]`

## Member Data Documentation

template<typename _Tp, int m, int n>

_Tp cv::Matx< _Tp, m, n >::val[m *n]

The documentation for this class was generated from the following files:

- /usr/ports/pobj/OpenCV-2.2.0/OpenCV-2.2.0/modules/core/include/opencv2/core/core.hpp
- /usr/ports/pobj/OpenCV-2.2.0/OpenCV-2.2.0/modules/core/include/opencv2/core/operations.hpp

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines