OpenCV_01

Report
OpenCV :: Open source Computer Vision Library
Protocol Laboratory
the department of Nano electronics engineer-ing
공과대학 정보통신공학부
Engineering college. Department of Information & Communication
프로토콜 연구실
1. 세미나 진행 순서
• OpenCV 소개
• OpenCV 환경 구축
• 실제 적용 방법 소개(Hand tracking)
공주대학교
Kongju national university
공과대학 정보통신공학부
Engineering college. Department of Information & Communication
프로토콜 연구실
2. OpenCV 소개
• OpenCV는 인텔에서 제작된 영상처리 소스입니다.
• 사용이 편리하며 Open Source 기반이기 때문에 기본 소스가 공개 되
어있습니다.
• C/C++로 제작되어 많은 이미지와 동영상을 처리 할 수 있는 알고리
즘이 제공됩니다.
• http://www.intel.com/technology/computing/opencv/index.htm
공주대학교
Kongju national university
공과대학 정보통신공학부
Engineering college. Department of Information & Communication
프로토콜 연구실
2. OpenCV 환경구축
• 다운 : http://www.sourceforge.net/projects/opencvlibrary
• 별도의 설정이 필요 없이 간단히 설치가 됩니다.
• 2009년 6월 기준으로 v1.1이 제공되고 있습니다.
공주대학교
Kongju national university
공과대학 정보통신공학부
Engineering college. Department of Information & Communication
프로토콜 연구실
Click!
Window 버전 다운
공주대학교
Kongju national university
공과대학 정보통신공학부
Engineering college. Department of Information & Communication
프로토콜 연구실
기본 샘플 제공
<지원가능한 개발툴>
VS 6.0
VS 2005
VS 2008
<설치목록>
Lib 파일 설치
소스코드 설치
헤더파일 설치
공주대학교
Kongju national university
공과대학 정보통신공학부
Engineering college. Department of Information & Communication
프로토콜 연구실
2. OpenCV 환경구축
• OpenCV v1.1 : cvcam.lib 통합되어 사라짐
• VS 6.0, VS2005 환경 구축의 경우는 OpenCV KOREA 포럼에서 확
인하기 바랍니다.
• C:\Program Files\OpenCV -> 기본설치폴더 경로
공주대학교
Kongju national university
공과대학 정보통신공학부
Engineering college. Department of Information & Communication
프로토콜 연구실
2. OpenCV 환경구축
• 메뉴 탭
도구 > 옵션 선택
• Manu tab
tool > option
공주대학교
Kongju national university
공과대학 정보통신공학부
Engineering college. Department of Information & Communication
프로토콜 연구실
프로젝트 및 솔루션 >
VC++ 디렉터리 선택
포함파일(Include file)
라이브러리 파일(Library file)
두가지 선택
추가되면 다음과 같이 폴더가
추가된다.
공주대학교
Kongju national university
공과대학 정보통신공학부
Engineering college. Department of Information & Communication
프로토콜 연구실
2. OpenCV 환경구축
• OpenCV :: Add Include file directory path
C:\PROGRAM FILES\OPENCV\CXCORE\INCLUDE
C:\PROGRAM FILES\OPENCV\CV\INCLUDE
C:\PROGRAM FILES\OPENCV\OTHERLIBS\HIGHGUI
• OpenCV :: Add Library file directory path
C:\PROGRAM FILES\OPENCV\LIB
공주대학교
Kongju national university
공과대학 정보통신공학부
Engineering college. Department of Information & Communication
프로토콜 연구실
2. OpenCV 환경구축
• 메뉴 탭
프로젝트 > 프로젝트 속성
• Manu tab
Project > Property
공주대학교
Kongju national university
공과대학 정보통신공학부
프로토콜 연구실
Engineering college. Department of Information & Communication
설정은 꼭 모
든 구성으로
변경할 것!
Cxcore.lib
highgui.lib
cv.Lib
입력하여 추가
구성속성 : 입력 선택
링커는 컴파일을 위해
만드는 LIB파일 링크
공주대학교
Kongju national university
공과대학 정보통신공학부
Engineering college. Department of Information & Communication
프로토콜 연구실
2. OpenCV 환경구축
• OpenCV :: Add Header files
#include <cv.h>
#include <cxcore.h>
#include <highgui.h>
• OpenCV :: DLL file Paste in workspace folder
C:\PROGRAM FILES\OPENCV\BIN
cv110.dll, cxcore110.dll, highgui110.dll
공주대학교
Kongju national university
공과대학 정보통신공학부
Engineering college. Department of Information & Communication
프로토콜 연구실
3. OpenCV 사용예
• OpenCV를 사용하면 이미지 입출력은 물론 동영상까지도 쉽게 제어
가 가능합니다.
• VC++에서 기초적으로 이미지나 비디오를 입출력하는 방법이 까다
롭고 설정할 것이 많으며 기본 소스를 짜는 것 또한 쉽지 않습니다.
공주대학교
Kongju national university
공과대학 정보통신공학부
프로토콜 연구실
Engineering college. Department of Information & Communication
#include <cv.h>
#include <highgui.h>
void main()
{
IplImage* image = 0;
// image 선언
image = cvLoadImage(“abc.jpg", 1); // abc.jpg 파일을 읽어 들임
cvNamedWindow( “Viewer", 1);
// 윈도우 생성
cvShowImage( “Viewer ", image ); // 이미지를 보여줌
cvWaitKey(0);
// 키 입력을 기다림
}
cvDestroyWindow( “Viewer " );
// 윈도우 종료
공주대학교
Kongju national university
공과대학 정보통신공학부
Engineering college. Department of Information & Communication
프로토콜 연구실
#include <cv.h>
#include <highgui.h>
void main()
{
IplImage* image = 0; // 이미지 구조체 생성
CvCapture* capture = cvCaptureFromCAM(0); // 0번째 캠 읽기
cvNamedWindow( “Camera", 0 ); // 윈도우 생성
cvResizeWindow( “Camera", 320, 240 ); // 윈도우 사이즈 설정
while(1) {
cvGrabFrame( capture ); // 카메라로 부터 입력받음
image = cvRetrieveFrame( capture ); // 이미지 변수에 저장
공주대학교
cvShowImage( “Camera", image );
Kongju national university
공과대학 정보통신공학부
}
}
Engineering college. Department of Information & Communication
프로토콜 연구실
if( cvWaitKey(10) >= 0 ) // 엔터키 입력시 종료
break;
cvReleaseCapture( &capture ); // 메모리 반환
cvDestroyWindow( “Camera" ); // 윈도우 제거
공주대학교
Kongju national university
공과대학 정보통신공학부
Engineering college. Department of Information & Communication
프로토콜 연구실
Thank you~!
공주대학교
Kongju national university

similar documents