Computer >> 컴퓨터 >  >> 프로그래밍 >> Java

Java OpenCV에서 사각형을 그리는 방법 – Imgproc.rectangle() 활용 가이드

Java용 OpenCV 라이브러리의 org.opencv.imgproc 패키지에는 Imgproc 클래스가 포함되어 있습니다. 이미지 위에 사각형을 그리려면 이 클래스의 rectangle() 메서드를 호출하면 됩니다.

이 메서드는 다음과 같은 매개변수를 받습니다.

  • 사각형을 그릴 대상 이미지를 나타내는 Mat 객체

  • 그리고자 하는 사각형의 두 꼭짓점(좌상단, 우하단)을 나타내는 두 개의 Point 객체

  • 사각형의 색상(BGR 형식)을 나타내는 Scalar 객체

  • 사각형 테두리의 두께를 나타내는 정수 값 (기본값: 1)

예제 코드

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[]) {
      // OpenCV 핵심 네이티브 라이브러리 로드
      System.loadLibrary( Core.NATIVE_LIBRARY_NAME );

      // 소스 이미지를 Mat 객체로 읽어오기
      Mat src = Imgcodecs.imread("D:\\images\\blank.jpg");

      // 사각형 그리기
      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);

      // 결과 이미지 저장 및 화면에 표시
      Imgcodecs.imwrite("rectangle_output.jpg", src);
      HighGui.imshow("Drawing a rectangle", src);
      HighGui.waitKey();
   }
}

코드 설명

  • System.loadLibrary(): OpenCV의 네이티브 라이브러리를 로드하여 Java에서 OpenCV 기능을 사용할 수 있도록 준비합니다.
  • Imgcodecs.imread(): 지정된 경로의 이미지 파일을 읽어 Mat 객체에 저장합니다.
  • Point(100, 100)Point(500, 300): 사각형의 좌상단과 우하단 꼭짓점 좌표를 정의합니다.
  • Scalar(64, 64, 64): BGR 순서로 회색 계열의 색상을 지정합니다.
  • Imgproc.rectangle(): 정의한 좌표, 색상, 두께를 바탕으로 이미지에 사각형을 그립니다.

실행 결과

위 프로그램을 실행하면 다음과 같은 창이 나타나며, 지정한 위치에 사각형이 그려진 이미지를 확인할 수 있습니다.

Java OpenCV에서 사각형을 그리는 방법 – Imgproc.rectangle() 활용 가이드