설치 방법 및 셋팅은 이전 포스트 참고.

이제 설치도 끝났고, 셋팅도 끝났으면 openCV를 이용하여 영상을 입력 받으면 된다...

#include <cv.h>
#include <highgui.h>

void main()
{
         IplImage* image = 0; //openCV에서 사용되는 자료형이다.
 
         CvCapture* capture = cvCaptureFromCAM(0); //현재 인식된 웹캠을 찾고,
         cvNamedWindow( "OpenCvCamtest", 0 ); // 화면을 그려줄 윈도우를 생성한다.

         cvResizeWindow( "OpenCvCamtest", 640, 480 ); // 사이즈를 조절한다.(lpIImage를 할당하면서도 조절가능)

         while(1) {
         cvGrabFrame( capture );
         image = cvRetrieveFrame( capture ); // 현재 인식된 장면을 받아오고image에 넣는다.

         cvShowImage( "OpenCvCamtest", image ); // image에 있는 장면을 윈도우에 그린다.

         if( cvWaitKey(10) >= 0 ) // 이게 가장 중요한데 이 WaitKey 함수가 없으면 아무 것도 안그린다.
                break;
         }

         cvReleaseCapture( &capture ); // 할당받았던 웹캠을 해제하고,
         cvDestroyWindow( "OpenCvCamtest" ); // 윈도우를 종료한다.
}

이게 기본적인 소스이다..

위의 소스를 입력하면 바로,


위와 같은 화면이 나온다...

일단 아무 처리도 하지 않은 상태의 캡쳐된 화면이 나온다...

소스는 대충 주석이 달린 의미대로 생각하면 되고,

위에 중요하다고 적은 cvWaitKey()에 대해서 알아보면,

파라미터로 들어가는 숫자는 밀리세컨드 시간으로 10 이면 0.01초를 말한다.

이 시간동안 키 입력 값이 없으면 진행된다는 의미로 보면된다..

그 시간 내에 키가 입력되면 true가 되면서 break 문을 만나 프로그램이 종료된다...

이제 openCV 걸음마 수준인데.. 점점 한가지씩 영상처리 기법들을 알아가며, 최종적으로는..

크로마키 배경 없이 배경 제거를 하는 정도를 목표로 꾸준히 공부해 가야겠다...

Posted by 바람처럼..
|