2014. 4. 23. 17:04

시작하기 전에 필요한 OpenCV 라이브러리를 추가하자 

지금 현재 필요한 라이브러리는 다음과 같다


opencv_imgproc248d.lib

winmm.lib

opencv_core248d.lib

opencv_highgui248d.lib


우선 이전 글에서 보았지만 실행하면 자식창(Child Window)가 기본적으로 보여진다


1. 그래서 불필요한 자식창을 처음에 보여주는 것을 방지해보자

자식창을 초기 화면에 안 보이게 하려면 App::InitInstance( )에 다음과 같은 코드를 입력하자






위와 같은 코드를 입력하고 창을 출력하면 다음과 같은 결과가 나온다



2. Doc 헤더파일에 OpenCV 헤더파일을 포함시키고 코드는 다음과 같다



3. 입력하여 저장하는 변수와 처리하는 함수를 Doc 클래스에 추가한다



4. Doc 클래스의 OnOpenDocument( )를 재정의하고 다음과 같은 코드를추가한다

아래의 코드를 이용하여 OpenCV 행렬에 입력한 이미지를 저장한다



5.  OpenCV 행렬과 Windows DC 를 이용하여 

     화면에 그리는 함수를 다음과 같이 구현한다




6. OnDraw( ) 함수에 다음과 같이 구현한다



7. 화면의 깜빡거림을 방지하기 위해 WM_ERASEBKGND 메시지를 재정의 하고 

    다음과 같이 구현한다



위의 코드를 다 구현한 상태로 실현한다

위의 Bmp 파일이나 Jpg 파일을 읽어들인 후의 결과는 다음과 같이 확인할 수 있다









2014. 1. 22. 19:38

예전에 파일로 만들어 놓은 게 있었는데 어디있는지 모르겠고

지금은 버전도 2.4 이상 버전으로 바뀌어서

다시 어차피 새로 만들어야 한다 잘 따라 오자

 

1. OpenCV 라이브러리 경로를 설정한다

- 알아서 하자 : Include, Lib, dll 등등

 

2. 현재는 Visual Studio 2010으로 하자

File -> New -> Project-> Visual C++ -> MFC Application 을

선택한 후 제목을 입력한다

 

 

 



 

3. Multiple Document를 선택한다 Tabbed documents는 Visual Studio에

새로 추가된 항목이다 체크를 안 하면 이전처럼 분리된 윈도우가 된다

그래서 우리는 에전 스타일로 하기 위해 체크 표시를 해제한다


Project Style은 MFC Standard 를 선택한다 뭐 자유 자재로

사용할 수 있다면 다른 것을 선택해도 상관 없다

Visual Stype and Colors 는 Window 7 를 설정했다

Resource language는 Korea를 해도 상관 없다

Use Unicode libraries는 가능한 유니코드를 사용하기 때문에 놔두는데

OpenCV가 유니코드를 지원 안 한다는 이야기가 있어서 나중에 다시 고려해야 한다

 

4. 다음을 누르면 다음과 같은 화면이 나온다

 

 

 

ActiveX Controls는 취소한다

최근 파일 리스트 갯수를 15개로 하면 편할 것이다

 

5. View는  ScrollView로 선택하고 Finish를 누른다

클래스나 파일 이름은 MyImgProc으로 한다

 

 

 

그리고 나서 Ctrl + F5를 눌러서 실행하면 다음과 같은 화면이 나올 것이다