解释Java OpenCV库中的Mat类

在OpenCV中,图像存储在“使用材质”对象中。它只是一个n维数组,用于存储灰度或彩色图像,体素体积,矢量场,点云,张量,直方图等图像数据。

如果您尝试使用OpenCV库读取图像,它将被读取到Mat对象。

Mat matrix = Imgcodecs.imread(filePath);

您可以使用以下构造函数之一手动实例化此类-

  • Mat() -一个无参数的构造函数,用于创建一个空矩阵并将其传递给其他OpenCV方法。

  • Mat(int rows,int cols,int type) -此构造函数接受三个整数类型的参数,这些参数表示2D数组中的行数和列数以及该数组的类型(用于存储数据)。

  • Mat(int rows,int cols,int type,Scalar s) -包括前一个参数,此构造方法还接受Scalar类的对象作为参数。

  • Mat(Size size,int type) -此构造函数接受两个参数,一个对象代表矩阵的大小,一个整数代表用于存储数据的数组的类型。

  • Mat(Size size,int type,Scalar s) -包括前一个参数,此构造方法还接受Scalar类的对象作为参数。

以下是该类的主要方法-

  • Mat col(int x) -此方法接受表示列索引的整数参数,并检索并返回该列。

  • Mat row(int y) -此方法接受表示行索引的整数参数,然后检索并返回该行。

  • int-cols()此方法返回矩阵中的列数。

  • int-rows()此方法返回矩阵中的行数。

  • Mat setTo(Mat value) -此方法接受Mat类型的对象,并将数组元素设置为指定值。

  • Mat setTo(Scalar s) -此方法接受Scalar类型的对象,并将数组元素设置为指定值。