OpenCV 설치


홈페이지 주소 : http://SourceForge.net/projects/opencvlibrary


OpenCV Wiki


http://opencvlibrary.SourceForge.net


Linux = opencv~~~.tar.gz


Window =  OpenCV_~.exe


OverView 


OpenCV (Open Source Computer Vision Library)  & Computer vision 


Reference Site

- source forge(http://sourceforge.net/projects/opencvlibrary)


Patch Once or twice of year Site


http://sourceforge.net/cvs/?group_id=22870


http://SourceForge.net/projects/opencvlibrary


Download Site


http://opensource.org  ( Computer Vision Library)





Background knowledge


1. algebra


2. basic matrix operation


3. Gaussian distribution


4. Bayes' law


5. least-squares optimization


6. C language


7. C++ language


8. marchine learning



OpenCV be borned Intel



Rainer Lienhart


Jean-Yves Bouguet


Radek Grzeszczuk

Ara Nefian


// 대강 훑고 넘어가기 


1. IPP (Intel Integrated Performance Primitives) 라이브러리


OpenCV 는 최적화된 C언어로 되어있으며 멀티코어 프로세서의 장점을 활용할수 있다. 


추후 인텔(Intel) 아키텍처(architecture)에서 최적화하기 위해서는 다양한 알고리즘에 대한 저수준 최적화 루틴을 갖고있는


인텔 통합 성능 프리미티브 (IPP) 라이브러리를 구입하여 설치 할 수도 있다. IPP가 서치되어있다면 OpenCV 는 자동으로 IPP 라이브러리에서 적절한 함수를 찾아서 사용 한다. 



OpenCV 에서는 500개가 넘는 함수들로 구성되어있으며


불량검사,의료 영상, 보안, 사용자 인터페이스,카메라 보정, 스테레오 비전, 로봇 등 다양한 분야에서 사용할 수 있다.


컴퓨터 비전은 기계 학습과 함꼐 사용되는 경ㅇ가 많기 때문에 OpenCV 는 보편적 용도의 기계학습 라이브러리


(MLL : Machine Learning Library)를 포함하고 있다.



OpenCV는 많은 곳에서 사용 되어진다.


. 카메라 보정(camera calibration)


. 영상 이어붙이기(image stitching) 등등



OpenCV 는 오픈소스로 완전히 공개 되어있기 때문에 상업적인 프로그램을 만들 때 사용하여도 무방하다.



OpenCV 관련된 대규모 커뮤니티


http://groups.yahoo.com/group/OpenCV


네이버 OpenCV Korea


http://cafe.naver.com/opencv









'개발일지(Platform & Library) > OpenCv(2.x)' 카테고리의 다른 글

2. OpenCV  (0) 2016.09.22
기본 샘플  (0) 2016.08.08
opencv-3.1.0 - Visual Studio 2013 세팅하기  (0) 2016.08.08
OpenCV 버전별 사용하는 객체 상호 변환  (0) 2016.06.28

#include <opencv2/core/core.hpp>  

#include <opencv2/highgui/highgui.hpp>  

#include <iostream>  



using namespace cv;

using namespace std;


int main(int argc, char** argv)

{


Mat image;

image = imread(이미지파일, IMREAD_COLOR);   // Read the file  


if (!image.data)                              // Check for invalid input  

{

cout << "Could not open or find the image" << std::endl;

return -1;

}


namedWindow("Display window", WINDOW_AUTOSIZE);// Create a window for display.  

imshow("Display window", image);                   // Show our image inside it.  


waitKey(0);                                          // Wait for a keystroke in the window  

return 0;

}

잡다한 업무 때문인지 OpenCV 를 하겠다고 한게 2.x버전이였는데 3.x버전이 되어버려서 3.1.0버전으로 세팅하게 되었다.


일단 우선 3줄 요약 식으로 해야 할일이 있다.


1. OpenCV 다운로드 하여 설치 


2. 환경변수 설정 


3. Visual Studio 설정 


3가지만 하게 되면 원하는 헤더 들을 include 하여서 사용하면 된다.


1. OpenCV 를 다운로드 한다. 


https://sourceforge.net/projects/opencvlibrary/  지금은 현 사이트에서 다운로드 받았다.


해당 아이콘이 보일텐데 해당 아이콘을 더블클릭하여 열어 준다.




OpenCV 라이브러리 들을 풀어서 놓을 곳을 지정하는데 되도록이면 C:\ 혹은 D:\이 편한거 같다. 세팅은 매번 하는게 기억도 안사라지고 도움도 되기 때문에 C:\에다가 한다.





설치가 완료되게 되면 C:\ 드라이브안에 opencv라는 폴더가 생김을 확인할수가 있다. 여기까지가 진행되면 1의 Opencv설치는 끝이 난다. 



2. 환경변수를 설정한다.

이제 설치를 완료 했기 때문에 환경 변수를 설정해주어서 해당 라이브러리 등을 사용할수가 있게 되는데 꼭 해 주어야 하는 부분이다.


우선 내컴퓨터 오른쪽 -> 속성 에 들어가면 고급 시스템 설정이라는 화면이 보인다. 누르도록 한다.


해당 창이 나오게 되면 환경변수라는 버튼이 보일것이다. 살포시 누른다.



시스템 변수 에 보면 Path  라는 것이 잇는데 편집 (I)... 을 누르게 되면 시스템 변수 편집 창이 나타나게 된다. 이 창의 변수 값의 맨 마지막에 ; 을 추가 해준후에


opencv에 위치였던  C:\opencv\build\x64\vc12\bin; 을 추가해준다.


여기까지 진행되면 2번도 완료 !


3. Visual Studio 설정한다.


이제 기본적인 베이스를 다 완료 됐다고 할수 있다. 여기에서 이제 IDE를 설정해주고 컴파일을 하기 위한 라이브러리들을 가져온다.



우선 include 파일에 대 한 경로를 지정해 주어야 하는데 프로젝트 속성 에 들어간후에


C/C++ 일반 -> 추가 포함 디렉터리 에 include 파일의 위치인 C:\opencv\build\include; 을 입력 해준다. 


링커 -> 일반 -> 추가 라이브러리 디렉터리 C:\opencv\build\x64\vc12\lib 를 입력한다.





이번엔 링커 -> 입력  추가 공속성 탭을 누르면 화살표 버튼이 나오는데 해당 버튼에서 추가 종속성에


opencv_wordl310.lib 를 입력한다. 


현재 Debug모드에서 했기 때문에 Release모드에서 바꾸고 똑같이 해주어야 한다. 








'개발일지(Platform & Library) > OpenCv(2.x)' 카테고리의 다른 글

2. OpenCV  (0) 2016.09.22
1. OpenCV OverView  (0) 2016.09.22
기본 샘플  (0) 2016.08.08
OpenCV 버전별 사용하는 객체 상호 변환  (0) 2016.06.28

 

//OpenCV 이미지 변환

//Mat & CvMat & IplImage, CvArr convert function

IplImage to->

 

IplImage* -> cv::Mat

1. Mat Mat_img(IplImage_img);

2. Mat Mat_img = cvarrToMat(IplImage_img);


 

IplImage* -> CvMat

cvGetMat( IplImage_img, &CvMat_img);

 

 

 

cv::Mat to->

 

cv::Mat -> IplImage*

IplImage *IplImage_img = new IplImage(Mat_img);

 

cv::Mat -> CvMat

CvMat CvMat_img = Mat_img; // convert directly

 

 

 

CvMat to->

 

CvMat -> IplImage*

IplImage *IplImage_img = cvGetImage(CvMat_img);

 

CvMat -> cv::Mat

Mat Mat_img(CvMat_img);

 



// 출처 



http://tommyhsm.tistory.com/113

'개발일지(Platform & Library) > OpenCv(2.x)' 카테고리의 다른 글

2. OpenCV  (0) 2016.09.22
1. OpenCV OverView  (0) 2016.09.22
기본 샘플  (0) 2016.08.08
opencv-3.1.0 - Visual Studio 2013 세팅하기  (0) 2016.08.08

+ Recent posts