no image
OpenCV 히스토그램 그리기 in C++
영상처리에서 히스토그램은 필수적이다. 히스토그램은 영상의 중요한 정보를 담은 자료이며, 영상의 명암값 프로필을 보여주기 위해 사용되는 도구이다. 히스토그램은 영상의 명암도 분포 상태를 나타내는 좋은 지표이다. 히스토그램은 0부터 255까지 명암값을 가로축 인덱스로 하고, 영상을 구성하고 있는 각 화소의 명암값에 해당하는 개수를 빈도수로 간주하여 세로축에 표시하는 것이다. 다음은 C++ 로 구현된 히스토그램의 예제 코드이다. #include #include #include #include #include using namespace cv; class Histogram1D{ private: int histSize[1]; // 히스토그램 빈도수 float hranges[2]; // 히스토그램 최소/최대 화소값..
2016.01.05
no image
64bit 환경에서 Opencv 3.0 설치 시 에러
64bit 환경에서 OpenCV 3.0 설치 후 run 할 때 에러 해결 법 1. 컴퓨터 사양이 64bit라고 하더라도 링크 빌드 설정은 컴파일러 버전에 따라 x86으로 해준다.(저는 컴파일러가 32비트 기준이였어요) 컴퓨터 사양이 32비트인지 64비트인지에 따라 다르게 설정해야 할 것 같지만 전혀 아니다.자신의 컴파일러에 따라 x86이나 x64로 설정해주어야한다.근데 보통은 x86을 사용한다. 위 사진은 잘못된 설정의 예시이다. x64로 설정하라는 설치법 보고 실행해보니계속 에러가 떠서 개고생했다. 2. 응용프로그램 0xb000007b 시작할 수 없다는 오류C:\opencv\build\x86\vc12\bin에서 모든 dll 파일을C:\Windows\SysWOW64 으로 복사해준다. 3. 컴퓨터에 ope..
2016.01.01
no image
lnk2019 외부 기호 참조 위치 함수 에서 확인 하지 못했습니다
위와 같이 이러한 에러가 날 때 Error1error LNK2019: unresolved external symbol _cvCreateImage referenced in function _mainError2error LNK2019: unresolved external symbol _cvReleaseImage referenced in function _mainError3error LNK2019: unresolved external symbol _cvGetSize referenced in function _mainError8error LNK2019: unresolved external symbol _cvRetrieveFrame referenced in function _mainError9error LNK20..
2016.01.01
no image
윤곽(contour) 추출과 에지(edge) 추출
소스코드 #include #include #define Width780 #define Height1024 struct stMap{ unsigned char r; unsigned char g; unsigned char b; } Map[Height][Width]; void Img2Aray(IplImage* img) { for (int i = 0; iheight; i++){ for (int j = 0; jwidth; j++){ Map[i][j].r = img->imageData[i*img->widthStep + j*img->nChannels + 2]; Map[i][j].g = img->imageData[i*img->widthStep + j*img->nChannels + 1]; Map[i][j].b = img-..
2015.12.29
no image
Threshold함수를 이용한 간단한 영상 이진화
소스코드 #include #include void main(){ int i, threshold = 128; IplImage* image = 0; IplImage* output = 0; IplImage* gray = 0; CvCapture* capture = cvCaptureFromCAM(0); cvNamedWindow("original", 0); cvNamedWindow("Thresh_binary",0); cvCreateTrackbar("T", "seohee-camera", &threshold, 255, NULL); while (1){ cvGrabFrame(capture); image = cvRetrieveFrame(capture); cvShowImage("original", image); if (!ou..
2015.12.29
no image
OpenCV 자료구조
2.1 CvPoint, CvScalar, CvSize, CvRect CvPoint 영상을 행렬형태의 2차원 화소들의 집합으로 생각할 수 있는데 OpenCV는 각 화소 또는 2차원 점의 좌표를 표현하기 위해 CvPoint, CvPoint2D32f, CvPoint2D64f 등의 구조체를 사용한다. (각 int형 2D 화소 위치, float형 2D 화소 위치, double형 2D 화소 위치를 뜻함) CvScalar 화소의 밝기 값 또는 컬러 값 표현을 위해 존재하는 함수이다. 이 함수는 4개의 인수(val0, val1, val2, val3)를 가지며, val0은 반드시 가져야하고, 나머지는 지정하지 않을 경우 0으로 간주된다. ScalarAll 함수는 하나의 인수 val0123을 입력받아 배열 val에 동일한..
2015.12.29
no image
Visual Studio 2013에 OpenCV 3.0 설치하기
설치환경 윈도우 32비트 visual studio 2013 opencv 3.0 1. OpenCV 라이브러리 다운 먼저 아래 링크로 들어가서 opencv 라이브러리를 다운받습니다. http://opencv.org/ 저는 아래 화면과 같이 C:\ 에 opencv를 다운받았습니다. opencv 폴더에 들어가면 build, sources 폴더 두개가 생깁니다. 2. 환경변수 설정 환경변수 설정 중요합니다. 저는 32비트, visual studio 2013을 사용중입니다. 내컴퓨터 - 속성 - 고급시스템 설정 - 환경변수 로 들어가 준 뒤, 아래 칸인 시스템변수에서 Path를 편집해줍니다. 저는 C:\에 opencv 가 존재하므로 경로를 위와 같이 적어주었습니다. 여기서 주의해야할 점은 이미 적혀있는 경로를 건들..
2015.12.28