OpenCV -  사진 출력하기
컴퓨터비전

OpenCV - 사진 출력하기

반응형

개인적인 취미로 OpenCV를 공부하면서 기록을 남겨보기로했다. 어쩌면 이 글이 OpenCV를 시작하는 사람들에게 도움이 될지도 모른다.

OpenCV는 Visual studio 2017로 빌드한다.

 

먼저 간단한 이미지를 불러와 출력하는 예제를 실행해보았다.

 

[소스코드]

1
2
3
4
5
6
7
8
9
10
11
#include <opencv\highgui.h>
 
int main() { 
    IplImage *image = cvLoadImage("apple.png"); 
    cvNamedWindow("사과",1); 
    cvShowImage("사과",image); 
    cvWaitKey(0); cvReleaseImage(&image); 
    cvDestroyWindow("사과"); 
    
    return 0
}
cs

 

사용된 이미지 파일은 아래와 같다.

 

 

[결과]

 

[소스 설명]

 

cvNamedWindow() : 영상을 출력할 윈도우를 하나 만듬
cvNamedWindow("사과", 1); 밑줄 부분이 0이면 윈도우 창에 크기에 따라 사진이 변형됨, 1이면 고정

cvShowImage()함수는 생성된 영상을 해당 제목을 갖은 윈도우에 영상을 출력

cvWaitKey()함수는 프로그램의 동작을 잠시 멈추고 사용자로부터 키 입력을 기다림, 양의 정수일 경우 밀리초(millisecond) 단위로 지정한 시간동안 대기 (0이나 음수는 무제한)

cvDestroyAllWindows();사용도 가능

 

 

다시 말해 아래와 같이 소스코드를 작성하면 화면이 2개가 출력된다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
#include <opencv\highgui.h>
 
int main() { 
    IplImage *image1 = cvLoadImage("apple.png"); 
    IplImage *image2 = cvLoadImage("apple.png");
    cvNamedWindow("사과1",1);
    cvNamedWindow("사과2"1);
    cvShowImage("사과1",image1);
    cvShowImage("사과2", image2);
    cvWaitKey(0); 
    cvReleaseImage(&image1); 
    cvReleaseImage(&image2);
    cvDestroyWindow("사과1"); 
    cvDestroyWindow("사과2");
    
    return 0
}
cs

 


 

반응형
    # 테스트용