Computer >> Máy Tính >  >> Lập trình >> Java

Cách khai báo đối tượng Mat OpenCV bằng Java?


Trong OpenCV lớp Mat đại diện cho một đối tượng ma trận được sử dụng để lưu trữ hình ảnh. Bạn cũng có thể khai báo một đối tượng Mat theo cách thủ công -

  • Tải thư viện gốc OpenCV - Trong khi viết mã Java bằng thư viện OpenCV, bước đầu tiên bạn cần làm là tải thư viện gốc của OpenCV bằng cách sử dụng loadLibrary ().

  • Khởi tạo lớp Mat - Khởi tạo lớp Mat bằng cách sử dụng bất kỳ hàm nào được đề cập trong chương này trước đó.

  • Điền vào ma trận bằng các phương pháp - Bạn có thể truy xuất các hàng / cột cụ thể của ma trận bằng cách chuyển các giá trị chỉ mục cho phương thức row () / col ().

  • bạn có thể đặt các giá trị thành những giá trị này bằng cách sử dụng bất kỳ biến thể nào của setTo () các phương pháp.

Ví dụ

import org.opencv.core.Core;
import org.opencv.core.Mat;
import org.opencv.core.CvType;
import org.opencv.core.Scalar;
public class CreatingMat {
   public static void main(String[] args) {
      //Loading the core library
      System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
      //Creating a matrix
      Mat matrix = new Mat(5, 5, CvType.CV_8UC1, new Scalar(0));
      //Adding values
      Mat row0 = matrix.row(0);
      row0.setTo(new Scalar(1));
      Mat col3 = matrix.col(3);
      col3.setTo(new Scalar(3));
      //Printing the matrix
      System.out.println("Matrix data:\n" + matrix.dump());
   }
}

Đầu ra

Matrix data:
[
   1, 1, 1, 3, 1;
   0, 0, 0, 3, 0;
   0, 0, 0, 3, 0;
   0, 0, 0, 3, 0;
   0, 0, 0, 3, 0
]