HighGui org.opencv.highgui 클래스 패키지를 사용하면 창을 만들고 조작하고 표시할 수 있습니다. 이 클래스의 imshow() 메서드를 사용하여 창에 이미지를 표시할 수 있습니다. 이 메소드는 두 개의 매개변수를 받아들입니다-
-
창의 이름을 나타내는 문자열 변수입니다.
-
이미지의 내용을 나타내는 Mat 개체입니다.
waitKey()를 호출하는 것이 좋습니다. imshow() 이후의 메소드 .
예시
다음 예제는 이미지를 읽어서 회색조 이미지로 변환하고 그 안의 가장자리를 감지하고 HighGui를 사용하여 창에 세 개의 이미지(원본, 회색조 및 가장자리)를 모두 표시합니다.
import org.opencv.core.Core; import org.opencv.core.Mat; import org.opencv.highgui.HighGui; import org.opencv.imgcodecs.Imgcodecs; import org.opencv.imgproc.Imgproc; public class ImshowExample { public static void main(String args[]) { //Loading the OpenCV core library System.loadLibrary(Core.NATIVE_LIBRARY_NAME); //Reading the Image from the file Mat src = Imgcodecs.imread("D://images//window.jpg"); HighGui.imshow("Original Image", src); //Converting color to gray scale Mat gray = new Mat(src.rows(), src.cols(), src.type()); Imgproc.cvtColor(src, gray, Imgproc.COLOR_RGB2GRAY); HighGui.imshow("Gray Scale Image", gray); //Applying canny Mat dst = new Mat(src.rows(), src.cols(), src.type()); Imgproc.Canny(gray, dst, 100, 100*3); HighGui.imshow("Edges", dst); HighGui.waitKey(); } }
출력
실행시 위의 프로그램은 아래와 같이 3개의 창을 생성합니다 -
원본 이미지 -
회색조 이미지 -
가장자리가 강조 표시된 이미지 -