컨텐츠상세보기

C#과 파이썬을 활용한 OpenCV 4 프로그래밍
C#과 파이썬을 활용한 OpenCV 4 프로그래밍
  • 저자<윤대희> 저
  • 출판사위키북스
  • 출판일2021-09-28
  • 등록일2023-08-08
보유 1, 대출 0, 예약 0, 누적대출 5, 누적예약 0

책소개

『C#과 파이썬을 활용한 OpenCV 4 프로그래밍』은 컴퓨터 비전 기초 이론을 비롯해 OpenCV에서 가장 많이 활용되는 기능들을 설명하고 이미지 데이터에서 유의미한 정보를 찾는 방식을 다룬다. 또한 C#과 파이썬이라는 두 가지 프로그래밍 언어로 구성돼 있어 C#이나 파이썬 개발자분들이 손쉽게 OpenCV를 배울 수 있는 영상처리 입문서이다. 『C#과 파이썬을 활용한 OpenCV 4 프로그래밍』에서는 OpenCV를 폭넓게 활용할 수 있도록 머신러닝/딥러닝 모듈을 비롯해 Tesseract-OCR과 텐서플로(TensorFlow) 등을 활용해 영상 처리 프로젝트까지 진행하고, 다양한 응용 방법을 제시하고자 한다.

저자소개

서울과학기술대학교 기계시스템디자인공학을 전공했다. 컴퓨터 비전 강의를 진행했으며, 블로그(https://076923.github.io/)를 통해 프로그래밍 및 컴퓨터 비전 지식을 공유하고 있다. 현재는 3D 공간데이터 플랫폼 회사인 어반베이스의 머신러닝 팀에서 컴퓨터 비전을 담당하며, 2D 도면을 3D로 변환하는 프로젝트를 진행하고 있다. 컴퓨터 비전, 머신러닝, 딥러닝을 연구하고 활용하는 데 관심이 있다.

목차

[1부] OpenCV 이론

▣ 01장: 컴퓨터 비전의 이해
01. 컴퓨터 비전이란? 
___영상 처리의 필요성 
___영상 처리의 한계점 
___데이터 변형 
___이미지 데이터 
02. OpenCV란? 
___OpenCV의 역사 
03. 알고리즘 설계 
___문제 해결을 위한 선행 조건 
___하드웨어와 소프트웨어의 선택 
___시스템 설계 
___개발 규칙 
04. 디지털 이미지 프로세싱 
___전처리 알고리즘 
___노이즈 및 디노이즈 
___특징 및 유사성 검출 
05. 영상 처리 분야 
___영화 산업 
___의료 분야 
___이미지 번역 
___OpenCV의 활용 
06. C# OpenCvSharp 설치 
___NuGet 패키지 설치 
___네이티브 래퍼(Native Wrapper) 적용 
___확장 네임스페이스 
___OpenCvSharp 사용하기 
___참고사항 
07. Python OpenCV 설치 
___pip를 이용한 설치 
___IDE 
___OpenCV 사용하기 
___참고사항 

▣ 02장: OpenCV 시작하기
01. 이미지 크기 
___이미지 크기 속성 
___OpenCV에서 이미지의 크기를 표현하는 방법 
02. 정밀도 
___비트 표현 
___OpenCV 정밀도 표현법
03. 채널 
___색상 표현 
___OpenCV 채널 표현법 
04. 관심 영역 
05. 관심 채널 
06. 히스토그램 

▣ 03장: 데이터 타입과 연산
01. 기본 데이터 
___C# OpenCvSharp에서 사용되는 기본 데이터 타입 
___Python OpenCV에서 사용되는 기본 데이터 타입 
02. Mat 데이터 
___조밀 행렬(dense matrix) 
___Mat 클래스 - N차원 밀집 행렬 
___Mat 클래스 메모리 레이아웃 
___Mat 객체 생성 
___MatExpr 클래스 - 행렬 표현식 
___행렬의 개별 단위 요소에 접근하기 
___행렬의 블록 단위 요소에 접근하기 
___Mat 클래스 행렬 연산 
___그 밖의 행렬 메서드 
___희소 행렬 
___희소 행렬 생성 
___희소 행렬의 요소 할당 및 접근 
___Mat 클래스 - 관심 영역 
___Mat 클래스 - 관심 채널 
03. Numpy 데이터 
___Numpy 행렬 
___ndarray 클래스 - N차원 배열 
___배열의 개별 단위 요소에 접근하기 
___배열의 블록 단위 요소에 접근하기 
___배열 차원 변형 
___배열 병합 및 분리 
___그 밖의 배열 함수 
___배열 연산 
___matrix 클래스 
___ndarray 클래스 - 관심 영역 
___ndarray 클래스 - 관심 채널 

[02부] C# & 파이썬 함수

▣ 04장: 기초 예제
01. 이미지 입력 
02. 이미지 출력 
___마우스 콜백 
03. 동영상 출력 
___FPS(Frame Per Second) 
04. 카메라 출력 
05. 이미지 연결 
06. 도형 그리기 
___선형 타입 
___비트 시프트 
___직선 그리기 
___사각형 그리기 
___원 그리기 
___호 그리기 
___내부가 채워지지 않은 다각형 그리기 
___내부가 채워진 다각형 그리기 
___문자 그리기 
07. 트랙 바 
08. 결과 저장 
___이미지 저장 
___동영상 저장 

▣ 05장: 이미지 변형
01. 색상 공간 변환 
02. HSV 색상 공간 
03. 이진화 
___오츠 알고리즘 
___삼각형 알고리즘 
___적응형 이진화 알고리즘 
04. 이미지 연산 
___덧셈 함수 
___뺄셈 함수 
___곱셈 함수 
___나눗셈 함수 
___최댓값 함수 
___최솟값 함수 
___최소/최대 위치 반환 함수 
___절댓값 함수 
___절댓값 차이 함수 
___비교 함수 
___선형 방정식 시스템의 해 찾기 함수 
___AND 연산 함수 
___OR 연산 함수 
___XOR 연산 함수 
___NOT 연산 함수 
05. 흐림 효과 
___커널과 고정점 
___테두리 외삽법 
___단순 흐림 효과 
___박스 필터 흐림 효과 
___중간값 흐림 효과 
___가우시안 흐림 효과 
___양방향 필터 흐림 효과 

▣ 06장: 이미지 변환
01. 확대 & 축소 
___이미지 확대(Pyramid Up) 
___이미지 축소(Pyramid Down) 
02. 이미지 크기 조절 
03. 대칭 & 회전 
04. 기하학적 변환 
___아핀 변환 
___원근 변환 
05. 모폴로지 변환 
06. 모폴로지 연산 
___열림 연산 
___닫힘 연산 
___그레이디언트 연산 
___탑햇 연산 
___블랙햇 연산 
___히트미스 연산 

▣ 07장: 이미지 검출
01. 가장자리 검출 
___소벨 미분 
___샤르 필터 
___라플라시안 
___캐니 엣지 
02. 윤곽선 검출 
___계층 구조 
___윤곽선 검출 
___윤곽선 그리기 
03. 다각형 근사 
___윤곽선의 길이 계산 
___윤곽선의 면적 계산 
___윤곽선의 경계 사각형 
___윤곽선의 최소 면적 사각형 
___윤곽선의 최소 면적 원 
___윤곽선의 타원 피팅 
___윤곽선의 볼록 껍질 
___윤곽선의 볼록성 시험 
___윤곽선의 모멘트 
04. 코너 검출 
05. 직선 검출 
06. 원 검출 

▣ 08장: 머신러닝
___지도 학습 
___비지도 학습 
01. K-평균 군집화 알고리즘 
02. K-최근접 이웃 알고리즘 
___Fashion-MNIST 
___K-최근접 이웃 알고리즘 적용 
___실제 데이터 평가 
03. 서포트 벡터 머신 
___SVM 커널(Kernel) 
___SVM 유형 
___서포트 벡터 머신 적용 
___HOG(Histograms of Oriented Gradients) 
04. 심층 신경망 
___카페 
___다크넷 
___텐서플로 

[3부] 실전 예제

▣ 09장: C# - 명함 검출
01. 테서렉트 
02. 각도 계산 
03. 사각형 검출 
04. 이미지 변환 
05. 문자 인식 

▣ 10장: 파이썬 - 객체 검출
01. 텐서플로 
02. 객체 검출 
03. 정규 표현식 
04. 객체 추적 
05. 객체 인식 

▣ 부록A: 부록 _ 색상 코드표
___스칼라 구조체의 색상 코드표 

▣ 부록B: 정규 표현식
___메타 문자 목록 
___이스케이프 문자 목록 
___최소 매칭 목록 
___정규 표현식 함수 
___플래그 
___Match 객체의 메서드 
___Match 객체의 속성