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

Làm thế nào để vẽ một hình chữ nhật trong OpenCV bằng Java?

Gói org.opencv.imgproc của thư viện Java OpenCV chứa một lớp có tên Imgproc. Để vẽ hình chữ nhật, bạn cần gọi hình chữ nhật () phương thức của lớp này. Phương thức này chấp nhận các tham số sau -

  • Một đối tượng Mat đại diện cho hình ảnh mà hình chữ nhật sẽ được vẽ trên đó.

  • Hai đối tượng Point đại diện cho các đỉnh của hình chữ nhật sẽ được vẽ sẵn.

  • Đối tượng Vô hướng đại diện cho màu của hình chữ nhật (BGR).

  • Một số nguyên đại diện cho độ dày của hình chữ nhật (mặc định:1).

Ví dụ

import org.opencv.core.Core;
import org.opencv.core.Mat;
import org.opencv.core.Point;
import org.opencv.core.Scalar;
import org.opencv.highgui.HighGui;
import org.opencv.imgcodecs.Imgcodecs;
import org.opencv.imgproc.Imgproc;
public class DrawingRectangle {
   public static void main(String args[]) {
      // Loading the OpenCV core library
      System.loadLibrary( Core.NATIVE_LIBRARY_NAME );
      //Loading the OpenCV core library
      System.loadLibrary( Core.NATIVE_LIBRARY_NAME );
      //Reading the source image in to a Mat object
      Mat src = Imgcodecs.imread("D:\\images\\blank.jpg");
      //Drawing a Rectangle
      Point point1 = new Point(100, 100);
      Point point2 = new Point(500, 300);
      Scalar color = new Scalar(64, 64, 64);
      int thickness = 10;
      Imgproc.rectangle (src, point1, point2, color, thickness);
      //Saving and displaying the image
      Imgcodecs.imwrite("arrowed_line.jpg", src);
      HighGui.imshow("Drawing a rectangle", src);
      HighGui.waitKey();
   }
}

Đầu ra

Khi thực thi, chương trình trên tạo ra cửa sổ sau -

Làm thế nào để vẽ một hình chữ nhật trong OpenCV bằng Java?