Package org.opencv.core

## Class Mat

- java.lang.Object
- - org.opencv.core.Mat

- Direct Known Subclasses:
    `MatOfByte`, `MatOfDMatch`, `MatOfDouble`, `MatOfFloat`, `MatOfFloat4`, `MatOfFloat6`, `MatOfInt`, `MatOfInt4`, `MatOfKeyPoint`, `MatOfPoint`, `MatOfPoint2f`, `MatOfPoint3`, `MatOfPoint3f`, `MatOfRect`, `MatOfRect2d`, `MatOfRotatedRect`

      public class Mat
      extends java.lang.Object

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class | Description
    --- | --- | ---
    `static interface` | `Mat.Atable<T>` |
    `static class` | `Mat.Tuple2<T>` |
    `static class` | `Mat.Tuple3<T>` |
    `static class` | `Mat.Tuple4<T>` |

  - ### Field Summary

    Fields
    Modifier and Type | Field | Description
    --- | --- | ---
    `long` | `nativeObj` |

  - ### Constructor Summary

    Constructors
    Constructor | Description
    --- | ---
    `Mat()` |
    `Mat​(int[] sizes, int type)` |
    `Mat​(int[] sizes, int type, Scalar s)` |
    `Mat​(int rows, int cols, int type)` |
    `Mat​(int rows, int cols, int type, java.nio.ByteBuffer data)` |
    `Mat​(int rows, int cols, int type, java.nio.ByteBuffer data, long step)` |
    `Mat​(int rows, int cols, int type, Scalar s)` |
    `Mat​(long addr)` |
    `Mat​(Mat m, Range rowRange)` |
    `Mat​(Mat m, Range[] ranges)` |
    `Mat​(Mat m, Range rowRange, Range colRange)` |
    `Mat​(Mat m, Rect roi)` |
    `Mat​(Size size, int type)` |
    `Mat​(Size size, int type, Scalar s)` |

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method | Description
    --- | --- | ---
    `Mat` | `adjustROI​(int dtop, int dbottom, int dleft, int dright)` |
    `void` | `assignTo​(Mat m)` |
    `void` | `assignTo​(Mat m, int type)` |
    `<T> Mat.Atable<T>` | `at​(java.lang.Class<T> clazz, int[] idx)` |
    `<T> Mat.Atable<T>` | `at​(java.lang.Class<T> clazz, int row, int col)` |
    `int` | `channels()` |
    `int` | `checkVector​(int elemChannels)` |
    `int` | `checkVector​(int elemChannels, int depth)` |
    `int` | `checkVector​(int elemChannels, int depth, boolean requireContinuous)` |
    `Mat` | `clone()` |
    `Mat` | `col​(int x)` |
    `Mat` | `colRange​(int startcol, int endcol)` |
    `Mat` | `colRange​(Range r)` |
    `int` | `cols()` |
    `void` | `convertTo​(Mat m, int rtype)` |
    `void` | `convertTo​(Mat m, int rtype, double alpha)` |
    `void` | `convertTo​(Mat m, int rtype, double alpha, double beta)` |
    `void` | `copySize​(Mat m)` |
    `void` | `copyTo​(Mat m)` |
    `void` | `copyTo​(Mat m, Mat mask)` |
    `void` | `create​(int[] sizes, int type)` |
    `void` | `create​(int rows, int cols, int type)` |
    `void` | `create​(Size size, int type)` |
    `Mat` | `cross​(Mat m)` |
    `long` | `dataAddr()` |
    `int` | `depth()` |
    `Mat` | `diag()` |
    `Mat` | `diag​(int d)` |
    `static Mat` | `diag​(Mat d)` |
    `int` | `dims()` |
    `double` | `dot​(Mat m)` |
    `java.lang.String` | `dump()` |
    `long` | `elemSize()` |
    `long` | `elemSize1()` |
    `boolean` | `empty()` |
    `static Mat` | `eye​(int rows, int cols, int type)` |
    `static Mat` | `eye​(Size size, int type)` |
    `protected void` | `finalize()` |
    `double[]` | `get​(int[] idx)` |
    `int` | `get​(int[] idx, byte[] data)` |
    `int` | `get​(int[] idx, double[] data)` |
    `int` | `get​(int[] idx, float[] data)` |
    `int` | `get​(int[] idx, int[] data)` |
    `int` | `get​(int[] idx, short[] data)` |
    `double[]` | `get​(int row, int col)` |
    `int` | `get​(int row, int col, byte[] data)` |
    `int` | `get​(int row, int col, double[] data)` |
    `int` | `get​(int row, int col, float[] data)` |
    `int` | `get​(int row, int col, int[] data)` |
    `int` | `get​(int row, int col, short[] data)` |
    `long` | `getNativeObjAddr()` |
    `int` | `height()` |
    `Mat` | `inv()` |
    `Mat` | `inv​(int method)` |
    `boolean` | `isContinuous()` |
    `boolean` | `isSubmatrix()` |
    `void` | `locateROI​(Size wholeSize, Point ofs)` |
    `Mat` | `matMul​(Mat m)` | Matrix multiplication
    `Mat` | `mul​(Mat m)` | Element-wise multiplication
    `Mat` | `mul​(Mat m, double scale)` | Element-wise multiplication with scale factor
    `static Mat` | `ones​(int[] sizes, int type)` |
    `static Mat` | `ones​(int rows, int cols, int type)` |
    `static Mat` | `ones​(Size size, int type)` |
    `void` | `push_back​(Mat m)` |
    `int` | `put​(int[] idx, byte[] data)` |
    `int` | `put​(int[] idx, byte[] data, int offset, int length)` |
    `int` | `put​(int[] idx, double... data)` |
    `int` | `put​(int[] idx, float[] data)` |
    `int` | `put​(int[] idx, int[] data)` |
    `int` | `put​(int[] idx, short[] data)` |
    `int` | `put​(int row, int col, byte[] data)` |
    `int` | `put​(int row, int col, byte[] data, int offset, int length)` |
    `int` | `put​(int row, int col, double... data)` |
    `int` | `put​(int row, int col, float[] data)` |
    `int` | `put​(int row, int col, int[] data)` |
    `int` | `put​(int row, int col, short[] data)` |
    `void` | `release()` |
    `Mat` | `reshape​(int cn)` |
    `Mat` | `reshape​(int cn, int rows)` |
    `Mat` | `reshape​(int cn, int[] newshape)` |
    `Mat` | `row​(int y)` |
    `Mat` | `rowRange​(int startrow, int endrow)` |
    `Mat` | `rowRange​(Range r)` |
    `int` | `rows()` |
    `Mat` | `setTo​(Mat value)` |
    `Mat` | `setTo​(Mat value, Mat mask)` |
    `Mat` | `setTo​(Scalar s)` |
    `Mat` | `setTo​(Scalar value, Mat mask)` |
    `Size` | `size()` |
    `int` | `size​(int i)` |
    `long` | `step1()` |
    `long` | `step1​(int i)` |
    `Mat` | `submat​(int rowStart, int rowEnd, int colStart, int colEnd)` |
    `Mat` | `submat​(Range[] ranges)` |
    `Mat` | `submat​(Range rowRange, Range colRange)` |
    `Mat` | `submat​(Rect roi)` |
    `Mat` | `t()` |
    `java.lang.String` | `toString()` |
    `long` | `total()` |
    `int` | `type()` |
    `int` | `width()` |
    `static Mat` | `zeros​(int[] sizes, int type)` |
    `static Mat` | `zeros​(int rows, int cols, int type)` |
    `static Mat` | `zeros​(Size size, int type)` |

    - ### Methods inherited from class java.lang.Object

      `equals, getClass, hashCode, notify, notifyAll, wait, wait, wait`

- - ### Field Detail

    - #### nativeObj

          public final long nativeObj

  - ### Constructor Detail

    - #### Mat

          public Mat​(long addr)

    - #### Mat

          public Mat()

    - #### Mat

          public Mat​(int rows,
                     int cols,
                     int type)

    - #### Mat

          public Mat​(int rows,
                     int cols,
                     int type,
                     java.nio.ByteBuffer data)

    - #### Mat

          public Mat​(int rows,
                     int cols,
                     int type,
                     java.nio.ByteBuffer data,
                     long step)

    - #### Mat

          public Mat​(Size size,
                     int type)

    - #### Mat

          public Mat​(int[] sizes,
                     int type)

    - #### Mat

          public Mat​(int rows,
                     int cols,
                     int type,
                     Scalar s)

    - #### Mat

          public Mat​(Size size,
                     int type,
                     Scalar s)

    - #### Mat

          public Mat​(int[] sizes,
                     int type,
                     Scalar s)

    - #### Mat

          public Mat​(Mat m,
                     Range rowRange,
                     Range colRange)

    - #### Mat

          public Mat​(Mat m,
                     Range rowRange)

    - #### Mat

          public Mat​(Mat m,
                     Range[] ranges)

    - #### Mat

          public Mat​(Mat m,
                     Rect roi)

  - ### Method Detail

    - #### adjustROI

          public Mat adjustROI​(int dtop,
                               int dbottom,
                               int dleft,
                               int dright)

    - #### assignTo

          public void assignTo​(Mat m,
                               int type)

    - #### assignTo

          public void assignTo​(Mat m)

    - #### channels

          public int channels()

    - #### checkVector

          public int checkVector​(int elemChannels,
                                 int depth,
                                 boolean requireContinuous)

    - #### checkVector

          public int checkVector​(int elemChannels,
                                 int depth)

    - #### checkVector

          public int checkVector​(int elemChannels)

    - #### clone

          public Mat clone()

      Overrides:
        `clone` in class `java.lang.Object`

    - #### col

          public Mat col​(int x)

    - #### colRange

          public Mat colRange​(int startcol,
                              int endcol)

    - #### colRange

          public Mat colRange​(Range r)

    - #### dims

          public int dims()

    - #### cols

          public int cols()

    - #### convertTo

          public void convertTo​(Mat m,
                                int rtype,
                                double alpha,
                                double beta)

    - #### convertTo

          public void convertTo​(Mat m,
                                int rtype,
                                double alpha)

    - #### convertTo

          public void convertTo​(Mat m,
                                int rtype)

    - #### copyTo

          public void copyTo​(Mat m)

    - #### copyTo

          public void copyTo​(Mat m,
                             Mat mask)

    - #### create

          public void create​(int rows,
                             int cols,
                             int type)

    - #### create

          public void create​(Size size,
                             int type)

    - #### create

          public void create​(int[] sizes,
                             int type)

    - #### copySize

          public void copySize​(Mat m)

    - #### cross

          public Mat cross​(Mat m)

    - #### dataAddr

          public long dataAddr()

    - #### depth

          public int depth()

    - #### diag

          public Mat diag​(int d)

    - #### diag

          public Mat diag()

    - #### diag

          public static Mat diag​(Mat d)

    - #### dot

          public double dot​(Mat m)

    - #### elemSize

          public long elemSize()

    - #### elemSize1

          public long elemSize1()

    - #### empty

          public boolean empty()

    - #### eye

          public static Mat eye​(int rows,
                                int cols,
                                int type)

    - #### eye

          public static Mat eye​(Size size,
                                int type)

    - #### inv

          public Mat inv​(int method)

    - #### inv

          public Mat inv()

    - #### isContinuous

          public boolean isContinuous()

    - #### isSubmatrix

          public boolean isSubmatrix()

    - #### locateROI

          public void locateROI​(Size wholeSize,
                                Point ofs)

    - #### mul

          public Mat mul​(Mat m,
                         double scale)

      Element-wise multiplication with scale factor
      Parameters:
        `m` - operand with with which to perform element-wise multiplication
        `scale` - scale factor
      Returns:
        reference to a new Mat object

    - #### mul

          public Mat mul​(Mat m)

      Element-wise multiplication
      Parameters:
        `m` - operand with with which to perform element-wise multiplication
      Returns:
        reference to a new Mat object

    - #### matMul

          public Mat matMul​(Mat m)

      Matrix multiplication
      Parameters:
        `m` - operand with with which to perform matrix multiplication
      Returns:
        reference to a new Mat object
      See Also:
        `Core.gemm(Mat, Mat, double, Mat, double, Mat, int)`

    - #### ones

          public static Mat ones​(int rows,
                                 int cols,
                                 int type)

    - #### ones

          public static Mat ones​(Size size,
                                 int type)

    - #### ones

          public static Mat ones​(int[] sizes,
                                 int type)

    - #### push_back

          public void push_back​(Mat m)

    - #### release

          public void release()

    - #### reshape

          public Mat reshape​(int cn,
                             int rows)

    - #### reshape

          public Mat reshape​(int cn)

    - #### reshape

          public Mat reshape​(int cn,
                             int[] newshape)

    - #### row

          public Mat row​(int y)

    - #### rowRange

          public Mat rowRange​(int startrow,
                              int endrow)

    - #### rowRange

          public Mat rowRange​(Range r)

    - #### rows

          public int rows()

    - #### setTo

          public Mat setTo​(Scalar s)

    - #### setTo

          public Mat setTo​(Scalar value,
                           Mat mask)

    - #### setTo

          public Mat setTo​(Mat value,
                           Mat mask)

    - #### setTo

          public Mat setTo​(Mat value)

    - #### size

          public Size size()

    - #### size

          public int size​(int i)

    - #### step1

          public long step1​(int i)

    - #### step1

          public long step1()

    - #### submat

          public Mat submat​(int rowStart,
                            int rowEnd,
                            int colStart,
                            int colEnd)

    - #### submat

          public Mat submat​(Range rowRange,
                            Range colRange)

    - #### submat

          public Mat submat​(Range[] ranges)

    - #### submat

          public Mat submat​(Rect roi)

    - #### t

          public Mat t()

    - #### total

          public long total()

    - #### type

          public int type()

    - #### zeros

          public static Mat zeros​(int rows,
                                  int cols,
                                  int type)

    - #### zeros

          public static Mat zeros​(Size size,
                                  int type)

    - #### zeros

          public static Mat zeros​(int[] sizes,
                                  int type)

    - #### finalize

          protected void finalize()
                           throws java.lang.Throwable

      Overrides:
        `finalize` in class `java.lang.Object`
      Throws:
        `java.lang.Throwable`

    - #### toString

          public java.lang.String toString()

      Overrides:
        `toString` in class `java.lang.Object`

    - #### dump

          public java.lang.String dump()

    - #### put

          public int put​(int row,
                         int col,
                         double... data)

    - #### put

          public int put​(int[] idx,
                         double... data)

    - #### put

          public int put​(int row,
                         int col,
                         float[] data)

    - #### put

          public int put​(int[] idx,
                         float[] data)

    - #### put

          public int put​(int row,
                         int col,
                         int[] data)

    - #### put

          public int put​(int[] idx,
                         int[] data)

    - #### put

          public int put​(int row,
                         int col,
                         short[] data)

    - #### put

          public int put​(int[] idx,
                         short[] data)

    - #### put

          public int put​(int row,
                         int col,
                         byte[] data)

    - #### put

          public int put​(int[] idx,
                         byte[] data)

    - #### put

          public int put​(int row,
                         int col,
                         byte[] data,
                         int offset,
                         int length)

    - #### put

          public int put​(int[] idx,
                         byte[] data,
                         int offset,
                         int length)

    - #### get

          public int get​(int row,
                         int col,
                         byte[] data)

    - #### get

          public int get​(int[] idx,
                         byte[] data)

    - #### get

          public int get​(int row,
                         int col,
                         short[] data)

    - #### get

          public int get​(int[] idx,
                         short[] data)

    - #### get

          public int get​(int row,
                         int col,
                         int[] data)

    - #### get

          public int get​(int[] idx,
                         int[] data)

    - #### get

          public int get​(int row,
                         int col,
                         float[] data)

    - #### get

          public int get​(int[] idx,
                         float[] data)

    - #### get

          public int get​(int row,
                         int col,
                         double[] data)

    - #### get

          public int get​(int[] idx,
                         double[] data)

    - #### get

          public double[] get​(int row,
                              int col)

    - #### get

          public double[] get​(int[] idx)

    - #### height

          public int height()

    - #### width

          public int width()

    - #### at

          public <T> Mat.Atable<T> at​(java.lang.Class<T> clazz,
                                      int row,
                                      int col)

    - #### at

          public <T> Mat.Atable<T> at​(java.lang.Class<T> clazz,
                                      int[] idx)

    - #### getNativeObjAddr

          public long getNativeObjAddr()