openCV : Open Source Computer Vision의 약자로 영상 처리에 사용할 수 있는 오픈 소스 라이브러리. 컴퓨터가 사람의 눈처럼 인식할 수 있게 처리해주는 역할을 한다.
컴퓨터 비전(computer vision)
- 컴퓨터를 이용하여 정지 영상 또는 동영상으로부터 의미 있는 정보를 추출하는 방법을 연구하는 학문.
- 사람이 눈으로 사물을 보고 인지하는 작업을 컴퓨터가 수행하게끔 만드는 학문.
이처럼 컴퓨터 비전은 여러 분야에 사용되고 있다.
컴퓨터 비전 응용 분야
영상의 화질 개선
- 카메라로 찍은 사진을 더욱 선명하게 만들거나 색상을 원하는 형태로 변경
- RAW 영상의 변환, 사진앱의 필터, 잡음 제거, HDR, SUPER RESOLUTION 등
내용 기반 영상 검색 ( CONTENT-BASED IMAGE)
- 영상에 존재하는 사람, 사물, 색상 정보 등을 인식하여 유사한 영상을 자동으로 찾아주는 시스템, 비주얼 검색
얼굴 검출 및 인식
의료 영상 처림
광학 문자 인식
- 영상에 있는 텍스트를 인식
- 번역, 자동차 번호판 인식 등
머신 비전 (machine vision)
- 공장 자동화: 제품의 불량 검사, 위치 확인, 측정 등
- 높은 정확도와 빠른 처리 시간 요구
인공지능 서비스
- 입력 영상을 객체와 배경으로 분할 -> 객체와 배경 인식 -> 상황 인식 -> 로봇과 자동차의 행동 지시
- computer vision + sensor fusion + deep learning
영상 데이터의 구조
영상이란 픽셀이 바둑판 모양의 격자에 나열되어 있는 형태(2차원 행렬)
영상 데이터의 종류
그레이스케일 영상
- 흑백 사진처럼 색상 정보가 없이 오직 밝기 정보만으로 구성된 영상
- 밝기 정보를 256단계로 표현
트루컬러 영상
- 컬러 사진처럼 색상 정보를 가지고 있어서 다양한 색상을 표현할 수 있는 영상
- 빨강, 초록, 파랑색 성분을 각각 256 단계로 표현
그레이스케일 영상의 특징
밝기 성분을 0~255 범위의 정수로 표현
0 : 완전히 어두운 상태
255 : 완전히 밝은 상태
프로그래밍 언어에서 표현 방법: 1Byte 사용
트루컬러 영상의 특징
주요 영상 파일 형식 특징