26
FAST CAMPUS PROGRAMMING CAMP OpenCV 함께하는 컴퓨터 비전 프로그래밍 캠프 강의 개요 커리큘럼 소개 | 강사: 황선규 박사

강의소개 - OpenCV와 함께하는 컴퓨터 비전 프로그래밍 캠프 2기

Embed Size (px)

Citation preview

Page 1: 강의소개 - OpenCV와 함께하는 컴퓨터 비전 프로그래밍 캠프 2기

FAST CAMPUS PROGRAMMING CAMP

OpenCV 와 함께하는 컴퓨터 비전 프로그래밍 캠프 강의 개요 및 커리큘럼 소개 | 강사: 황선규 박사

Page 2: 강의소개 - OpenCV와 함께하는 컴퓨터 비전 프로그래밍 캠프 2기

FAST CAMPUS PROGRAMMING CAMP

강의소개

Page 3: 강의소개 - OpenCV와 함께하는 컴퓨터 비전 프로그래밍 캠프 2기

FAST CAMPUS PROGRAMMING CAMP

이 강의는 컴퓨터 비전 입문자를 대상으로,

을 8주간 익혀봅니다.

컴퓨터 비전의 핵심 기초

C++ 기반 이미지 프로세싱 알고리즘 구현

OpenCV 활용방법

Page 4: 강의소개 - OpenCV와 함께하는 컴퓨터 비전 프로그래밍 캠프 2기

FAST CAMPUS PROGRAMMING CAMP

컴퓨터 비전의 핵심 기초

C++ 기반 이미지 프로세싱 알고리즘 구현

OpenCV 활용방법

• 픽셀 값 변환 (반전, 밝기 변환, 명암비 변환)

• 히스토그램 분석

• 공간적 필터링(Smoothing, Sharpening, etc)

• 영상의 기하학적 변환(Zoom, Rotate, etc)

Page 5: 강의소개 - OpenCV와 함께하는 컴퓨터 비전 프로그래밍 캠프 2기

FAST CAMPUS PROGRAMMING CAMP

컴퓨터 비전의 핵심 기초

C++ 기반 이미지 프로세싱 알고리즘 구현

OpenCV 활용방법

• 엣지 검출, 선 검출, 코너 검출

• 컬러 영상 처리, 진화 기법, 모폴로지

• 레이블링, 외곽선 추적, 영상 분할

Page 6: 강의소개 - OpenCV와 함께하는 컴퓨터 비전 프로그래밍 캠프 2기

FAST CAMPUS PROGRAMMING CAMP

컴퓨터 비전의 핵심 기초

C++ 기반 이미지 프로세싱 알고리즘 구현

OpenCV 활용방법

•실시간 마커 기반 AR 프로그래밍

• SIFT, SURF 특징점 매칭

• Haar Cascade 객체 학습과 검출 방법

•동영상에서 움직이는 객체 검출과 추적

Page 7: 강의소개 - OpenCV와 함께하는 컴퓨터 비전 프로그래밍 캠프 2기

이 강의를 통해, 컴퓨터 수강생들은

자율주행 자동차, 인물 얼굴 인식 시스템, 자동차 번호 자동 인식 기기 등

기계가 마치 인간의 시각과 같은 기능을 수행할 수 있는 비밀을 파헤치게 됩니다.

(사진 자료: Google Self-Driving Car Project, 차량 번호 인식기)

FAST CAMPUS PROGRAMMING CAMP

Page 8: 강의소개 - OpenCV와 함께하는 컴퓨터 비전 프로그래밍 캠프 2기

약력:

~ 2006년: 한양대학교 박사 학위 수료

~ 2007년: 뉴질랜드 캔터베리 대학교 HIT Lab NZ PostDoc

~ 2009년: 한양대학교 연구 교수

~ 2016년: LG전자 전략 스마트폰 카메라 기능 및 Framework 개발

저서

- 영상 처리 프로그래밍 by Visual C++ (한빛미디어, 2007년)

- OpenCV 제대로 배우기 (한빛미디어, 2009년, 번역서)

- Visual C++ 영상 처리 프로그래밍 (길벗, 2015)

황선규 강사님

FAST CAMPUS PROGRAMMING CAMP

Page 9: 강의소개 - OpenCV와 함께하는 컴퓨터 비전 프로그래밍 캠프 2기

FAST CAMPUS PROGRAMMING CAMP

커리큘럼 *2기 기준 커리큘럼이며, 매 기수마다 커리큘럼이 수정 및 보완됩니다.

*슬라이드에 활용된 이미지는 모두 강의에서 실제로 다룰 내용의 예시입니다.

Page 10: 강의소개 - OpenCV와 함께하는 컴퓨터 비전 프로그래밍 캠프 2기

FAST CAMPUS PROGRAMMING CAMP

영상 표현 방법

OpenCV 개발 환경 구축

영상 불러오기, 화면 출력, 픽셀 값 제어

• 컴퓨터 비전과 OpenCV

• OpenCV 설치와 개발 환경 설정

• OpenCV 프로그래밍 기초: 영상 불러오기,

화면 출력. 픽셀 값 접근 방법

• OpenCV 프로젝트 템플릿 만들기

1주차

“컴퓨터 비전과 OpenCV의 만남”

참고: Visual C++ 2015 Community Edition 사용

Page 11: 강의소개 - OpenCV와 함께하는 컴퓨터 비전 프로그래밍 캠프 2기

FAST CAMPUS PROGRAMMING CAMP

• 영상의 밝기, 명암비 조절

• 히스토그램 분석: Stretching, Equalization

• 공간적 필터링: Smoothing, Sharpening

• 잡음 제거 필터링: Median, Bilateral filtering

잡음 제거 필터링

히스토그램 분석과 균등화

Smoothing & Sharpening

2주차

“영상 처리 기초 알고리즘”

Page 12: 강의소개 - OpenCV와 함께하는 컴퓨터 비전 프로그래밍 캠프 2기

FAST CAMPUS PROGRAMMING CAMP

영상의 기하학적 변환

엣지 검출,직선 검출, 선분 검출

원 검출 코너 검출

3주차

“다양한 특징 추출 방법(1)”

• 영상의 기하학적 변환: 크기, 회전, 보간법

• 엣지 검출: Sobel, Canny

• 직선 & 원 검출: Hough 변환

• 코너 검출: Harris, FAST, GFTT

Page 13: 강의소개 - OpenCV와 함께하는 컴퓨터 비전 프로그래밍 캠프 2기

FAST CAMPUS PROGRAMMING CAMP

이진화 기법

컬러 영상 처리

히스토그램 역투영 & 살색 영역 검출

4주차

“다양한 특징 추출 방법(2)”

• 이진화 기법

• 색 공간 이해: RGB, HSV, YCrCb

• 컬러 영상 처리 기법

• 텍스쳐 분석

Page 14: 강의소개 - OpenCV와 함께하는 컴퓨터 비전 프로그래밍 캠프 2기

FAST CAMPUS PROGRAMMING CAMP

다각형 근사화를 이용한 다각형 검출

레이블링

손 모양 인식

5주차

“레이블링과 영상 분할”

• 레이블링

• 외곽선 추적

• 다각형 근사화

• 모폴로지

Page 15: 강의소개 - OpenCV와 함께하는 컴퓨터 비전 프로그래밍 캠프 2기

FAST CAMPUS PROGRAMMING CAMP

템플릿 매칭을 이용한 눈 위치 검출

마커 기반 증강현실 (OpenCV, OpenGL)

SIFT 특징점 검출

6주차

“객체 검출과 이해(1)”

• 템플릿 매칭

• OpenCV_contrib 모듈 사용하기

• SIFT 특징점 검출 방법

Page 16: 강의소개 - OpenCV와 함께하는 컴퓨터 비전 프로그래밍 캠프 2기

FAST CAMPUS PROGRAMMING CAMP

얼굴 & 눈 검출

특징점 매칭과 호모그래피

줄자 검출

자동차 번호판 학습 및 검출

7주차

• 다양한 특징점 매칭 방법: SIFT, SURF, ORB, AKAZE

• 호모그래피 계산 (RANSAC 알고리즘)

• Haar Cascade 분류기를 이용한 얼굴 검출

• Haar Cascade 분류기 학습 방법

“객체 검출과 이해(2)”

Page 17: 강의소개 - OpenCV와 함께하는 컴퓨터 비전 프로그래밍 캠프 2기

FAST CAMPUS PROGRAMMING CAMP

확률 모델을 이용한 움직이는 객체 검출

CamShift 알고리즘을 이용한 객체 추적

옵티컬 플로우를 이용한 포인트 추적

8주차

“동영상 처리: 객체 검출과 추적”

• 차영상에 의한 움직이는 객체 검출

• MoG(Mixture of Guassian)기법을 통한

움직이는 객체 검출

• Mean-Shift & CamShift 알고리즘을 활용한 객체 추적

• 옵티컬 플로우

Page 18: 강의소개 - OpenCV와 함께하는 컴퓨터 비전 프로그래밍 캠프 2기

FAST CAMPUS PROGRAMMING CAMP

진행방식

Page 19: 강의소개 - OpenCV와 함께하는 컴퓨터 비전 프로그래밍 캠프 2기

FAST CAMPUS PROGRAMMING CAMP

C++ 실습에는 C++ 프로그래밍을 사용합니다.

따라서 C++ 기초 문법은 익숙한 상태로 수강하셔야 합니다

Page 20: 강의소개 - OpenCV와 함께하는 컴퓨터 비전 프로그래밍 캠프 2기

FAST CAMPUS PROGRAMMING CAMP

알고리즘 직접 구현 우선 C++ 프로그래밍을 활용하여

이미지 프로세싱 기초 알고리즘을 바닥부터 직접 구현해보고,

Page 21: 강의소개 - OpenCV와 함께하는 컴퓨터 비전 프로그래밍 캠프 2기

FAST CAMPUS PROGRAMMING CAMP

OpenCV 활용 동일한 기능을 수행하는 OpenCV 함수를 사용해보며

직접 구현 시와 라이브러리 사용시의 차이점을 체득하게 됩니다.

Page 22: 강의소개 - OpenCV와 함께하는 컴퓨터 비전 프로그래밍 캠프 2기

FAST CAMPUS PROGRAMMING CAMP

프로젝트 AR 프로그램 개발(객체 검출 후 3D 그래픽을 입히는 실습)

얼굴, 자동차 번호판 같은 객체 검출을 위한 프로젝트도 진행됩니다.

프로젝트 진행 시에는 OpenCV 라이브러리를 활용하게 됩니다.

Page 23: 강의소개 - OpenCV와 함께하는 컴퓨터 비전 프로그래밍 캠프 2기

FAST CAMPUS PROGRAMMING CAMP

지금까지 도서, 외국 온라인 강의 등으로만

만날 수 있었던 컴퓨터 비전.

이제 패스트캠퍼스에서 정규 강의로 만나보세요!

Page 24: 강의소개 - OpenCV와 함께하는 컴퓨터 비전 프로그래밍 캠프 2기

FAST CAMPUS PROGRAMMING CAMP

클릭해서 강의 정보 보기

기간, 일정, 장소 등 세부 내용 확인 가능

Page 25: 강의소개 - OpenCV와 함께하는 컴퓨터 비전 프로그래밍 캠프 2기

FAST CAMPUS PROGRAMMING CAMP

문의: 02-501-4362

김슬기 매니저