OpenCV에서 제공하는 Imgproc 클래스의 cvtColor() 메서드는 이미지의 색상 공간을 한 형식에서 다른 형식으로 변환해 주는 핵심 기능입니다. 이 메서드는 다음과 같은 세 가지 매개변수를 받습니다.
src – 원본(소스) 이미지를 나타내는 Matrix 객체입니다.
dst – 변환된 결과가 저장될 대상 이미지를 나타내는 Matrix 객체입니다.
code – 대상 이미지에 적용할 색상 공간을 지정하는 정수 값입니다.
HSV 이미지를 BGR로 변환하려면 cvtColor() 메서드의 세 번째 매개변수로 Imgproc.COLOR_HSV2BGR 상수를 전달하기만 하면 됩니다. 변환이 완료되면 결과 이미지를 파일로 저장하여 확인할 수 있습니다.
예제 코드
public class HSV2RGB {
public static void main(String args[]) throws Exception {
System.loadLibrary( Core.NATIVE_LIBRARY_NAME );
Mat src = Imgcodecs.imread("D:\\images\\hsvimage2.jpg");
Mat dst = new Mat();
Imgproc.cvtColor(src, dst, Imgproc.COLOR_HSV2BGR);
Imgcodecs imageCodecs = new Imgcodecs();
imageCodecs.imwrite("D:\\images\\hsv2bgr.jpg", dst);
System.out.println("Image Saved");
}
}
코드 설명
System.loadLibrary() – OpenCV 네이티브 라이브러리를 로드하여 Java에서 OpenCV 기능을 사용할 수 있도록 준비합니다.
Imgcodecs.imread() – 지정한 경로의 HSV 이미지 파일을 읽어 Mat 객체에 저장합니다.
Imgproc.cvtColor() – COLOR_HSV2BGR 플래그를 사용해 HSV 이미지를 BGR 색상 공간으로 변환합니다.
imageCodecs.imwrite() – 변환된 BGR 이미지를 지정한 경로에 저장합니다.
입력 이미지

출력 이미지
