목차
Chapter 01. OpenCV 기초 = 12
1.1. 영상처리와 컴퓨터비전 = 12
1.2. OpenCV 개요 = 13
1.3. 비주얼 스튜디오 2008에서 OpenCV 2.1 사용 = 19
(1) OpenCV 1.1 설치 = 16
(2) OpenCV 2.1의 C API를 사용한 기본 응용프로그램 = 21
1.4. 비주얼 스튜디오 2008에서 OpenCV 2.2 사용 = 25
(1) OpenCV 2.2 설치
(2) OpenCV 2.2의 C API를 사용한 기본 응용프로그램 = 30
1.5. 비주얼 스튜디오 2010에서 사용 = 32
(1) OpenCV 2.2 설치 = 32
(2) OpenCV 2.2의 C API를 사용한 기본 응용프로그램 = 33
Chapter 02. OpenCV C API 자료구조 = 38
2.1. CvPoint, CvScalar, CvSize, CvRect = 38
(1) CvPoint, CvPoint2D32f, CvPoint2D64f, CvScalar = 38
(2) cvPoint, cvPoint2D32f, cvPoint2D64f, cvScalar = 40
(3) CvSize, CvRect = 43
2.2. CvMat 행렬 자료구조 = 45
(1) CvMat = 45
(2) CvMat 행렬 생성 및 파괴 = 46
(3) 행렬(CvMat) 또는 영상(IplImage) 요소 접근(Get/Set) = 52
2.3. IplImage 영상 자료구조 = 63
(1) IplImage 자료형 = 63
(2) 파일에서 영상읽기 및 화면에 출력하기 = 65
(3) IplImage 영상 생성 및 파괴 = 67
Chapter 03. 간단한 그래픽 및 마우스 이벤트 = 74
3.1. 영상에 간단한 그래픽 그리기 = 74
(1) 라인, 사각형, 원, 타원 그리기 = 74
(2) 다각형 그리기 및 채우기 = 80
(3) 문자 출력 = 83
3.2. 키보드, 마우스, 트랙바 이벤트 처리 = 85
(1) 키보드 이벤트 처리 = 85
(2) 마우스 이벤트 처리 = 86
(3) 트랙바 처리 = 90
Chapter 04. OpenCV 기본 연산 함수 = 94
4.1. 관심영역 지정, 복사, 채우기 = 94
(1) 영상에서 관심영역(ROI)과 관심채널(COI) 지정 = 94
(2) 행렬 및 영상의 복사 및 채우기 = 96
(3) 영상을 행렬로 변환 또는 행렬을 영상으로 변환 = 100
(4) 행렬 및 영상의 형태 변환 및 채널 분리 및 합성 = 104
4.2. 행렬 및 영상의 산술, 논리 및 비교연산 = 108
(1) cvLUT, cvConvertScale, cvConvertScaleAbs = 108
(2) 행렬의 사칙연산 : cvAdd, cvSub, cvMul, cvDiv = 112
(3) 논리연산 : cvAnd, cvXor, cvNot = 117
(4) 비교 및 범위 연산 = 122
(5) cvMin, cvMax, cvAbsDiff = 125
4.3. 통계 및 선형대수 함수 = 129
(1) 간단한 통계 : 평균, 표준편차, 최대/최소 값 및 위치 = 129
(2) 선형대수관련 함수 = 136
(3) 간단한 수학 관련 함수 = 181
Chapter 05. 포인트 프로세싱 = 202
5.1. 포인트 처리에 의한 화소값의 변환 = 202
(1) 반전영상(negative image) = 202
(2) 임계값 영상 = 205
(3) 선형변환, 로그변환, 거듭제곱 = 209
5.2. 히스토그램 처리 = 216
(1) 히스토그램 생성 및 삭제 = 216
(2) 히스토그램 값 가져오기 = 218
(3) 히스토그램 계산 및 연산 = 219
(4) 히스토그램 평활화 = 223
(5) 히스토그램 비교 = 232
5.3. 적분영상 및 컬러변환 = 239
Chapter 06. 이웃을 고려한 공간영역 필터링 = 252
6.1. 최소값, 최대값, 평균 필터링 = 252
(1) 경계값 채우기(padding) = 252
(2) 최소값 필터링 = 255
(3) 최대값 필터링 = 255
(4) 평균 필터링 = 255
6.2. 2D 필터 연산 = 265
(1) 회선, 상관관계, cvFilter2D = 265
(2) 영상을 부드럽게 하는 스무딩 연산 = 268
(3) 미분(differentiatiion) 연산에 의한 샤프닝(sharpening) = 278
6.3. 모폴로지 연산 = 296
(1) 모폴로지 연산 = 296
Chapter 07. 주파수 영역 필터링 = 304
7.1. 푸리에 변환 = 304
(1) 이산 푸리에 변환(discrete Fourier transform) = 304
(2) 푸리에 변환의 특성 = 305
(3) OpenCV DFT 함수 = 308
7.2. 푸리에 변환에 의한 필터링 = 327
(1) 저주파통과 필터(lowpass filtering) = 327
(2) 고주파통과 필터(high pass filtering) = 334
(3) 회선 및 상관관계 계산 = 341
(4) 주파수영역에서의 미분 = 360
Chapter 08. 영상 분할 및 특징 검출 = 370
8.1. 메모리 관리 및 시퀀스 = 370
(1) CvMemStorage 생성, 파괴 및 할당 = 370
(2) 시퀀스 = 371
(3) CvSeq Writer/CvSeqReader = 377
8.2. 에지, 직선, 원, 코너점 검출 = 380
(1) 에지검출 = 380
(2) 허프변환(Hough transform)에 의한 직선(line) 및 원(circle) 검출 = 382
(3) 코너점 검출 = 390
(4) SURF에 의한 특징점 검출 = 404
8.3. 영역에서 윤곽선 검출 = 419
(1) 거리계산 및 인페인트 = 430
(2) 피라미드 기반 분할 = 435
8.4. 모멘트, K-Means 클러스터링 = 447
(1) 모멘트 = 447
(2) 클러스터링 및 분할 = 455
8.5. 샘플링, 보간, 및 기하학적 변환 = 464
(1) 샘플링 및 보간 = 464
(2) 기하학적 변환 = 475
Chapter 09. 윈도우즈 프로그래밍 및 비디오 입출력 = 508
9.1. 윈도우즈 프로그래밍 = 508
(1) 윈도우즈 API로 화면 출력 = 508
(2) MFC로 화면 출력 = 518
9.2. 비디오 입출력 = 545
Chapter 10. OpenCV 클래스 및 cvBlobsLib 레이블링 라이브러리 = 568
10.1. CvvImage, CvImage 및 CvMatrix = 568
(1) CvvImage = 569
(2) CvImage = 572
10.2. cvBlobsLib에 의한 레이블링 = 578
(1) 비주얼 스튜디어 2008에서 cvBlobsLib 라이브러리 빌드 = 578
10.3. OpenCV용 커스텀 위저드 = 585
(1) vcprojects 폴더 = 585
(2) openCVWizard 폴더 = 586