devRenio

1장. 영상처리 개요

영상미디어처리(황승연) 5주차 강의내용

1. 영상처리 개요

  • 화소
    • 영상(이미지)의 구성요소
    • 이미지를 구성하는 가장 작은 단위 (픽셀)
  • 영상
    • 밝기와 색상이 다른 일정한 수의 화소들로 구성
  • 영상처리
    • 입력된 영상을 어떤 목적을 위해 처리하는 기술
    • 어떤 목적을 위해 수학적 연산을 이용해 화소들에 대해 변화를 주는 것
    • 아날로그 영상 처리 / 디지털 영상 처리
  • 해상도
    • 가로 * 세로의 화소 개수
    • FHD (1920*1080) 1080p
    • 가로 1920개 * 세로 1080개 화소 = 2,073,600 화소
    • 약 200만 화소

  • 영상의 RGB 채널 분리와 픽셀 값 표현 예시
    • 컬러 이미지는 Red, Green, Blue 3개의 채널로 구성
    • 각 채널은 그레이스케일 영상으로 표현
    • 값은 0~255 범위의 픽셀 밝기(화소 값) 를 나타냄

  • 저수준 영상처리
    • 영상처리의 결과가 영상인 경우
  • 고수준 영상처리
    • 영상 처리의 결과가 영상이 아니라, 영상의 특성을 나타내는 경우

영상처리, 컴퓨터 비전, 컴퓨터 그래픽스

  • 영상 처리
    • 입력 영상을 처리하여 출력으로 처리된 영상 획득
  • 컴퓨터 비전
    • 입력은 영상, 출력은 어떤 정보
    • 얼굴인식, 지문 인식, 번호판 인식 등
  • 컴퓨터 그래픽스
    • 입력이 어떤 서술이고, 출력이 영상
    • “우산을 쓰고 걸어가는 사람 이미지 만들어줘.”

  • 영상처리의 시작
    • 1920년대 초반 런던과 뉴욕 간에 해저 케이블을 통한 신문사들이 사진 전송
    • 아날로그 이미지를 디지털 신호로 바꿔서 케이블로 보내자
    • 대서양간 이미지 전송: 1주일 이상 → 3시간
  • 아날로그인 이미지를 디지털화 하는 방법
    • 광원 → Scene element → 카메라 → 내부 영상 공간 → 출력 디지털 영상

  • 아날로그인 이미지를 디지털화 하는 방법
    • 영상: 위치 값과 밝기 값을 가진 일정한 수의 화소들의 모임
    • 𝑓 𝑥, 𝑦 = 𝑖 𝑥, 𝑦 × 𝑟(𝑥, 𝑦)
    • 𝑓 100, 50 = 128
    • x = 100, y = 50 위치에 밝기 값이 128인 화소
    • 카메라로 들어온 아날로그 신호를 디지털 신호로 변환 → 샘플링과 양자화

  • 샘플링 (Sampling)
    • 무한한 연속된 값을 일정한 해상도에 따라 유한개의 화소수만큼 입력 값을 취하는 과정
  • 양자화 (Quantization)
    • 제한된 비트수로 화소값을 나타내려 밝기 값을 정수화 시키는 과정

  • M×N 크기 디지털 영상
    • 샘플링 수에 따라 M, N 결정 → 해상도 결정
    • 샘플링 수가 많을 수록 세밀한 영상 표현 가능
  • 양자화 수준에 따라 픽셀 값 레벨(표현 범위) 결정
    • k 비트 양자화 → 𝟐^𝒌개 레벨
    • 1 비트 양자화 → 2레벨 → 흑백(0, 1)
    • 2 비트 양자화 → 4레벨 → 0~3
    • 8비트 양자화 → 256레벨 → 0~255
  • 8비트 양자화된 FHD 영상을 저장하기 위해 필요한 공간
    • 그레이스케일 이미지
        • 𝑀 × 𝑁 × 𝑘 𝑏𝑖𝑡
        • 1920 × 1080 × 8 𝑏𝑖𝑡 = 16,588,800 𝑏𝑖𝑡 = 2.07 𝑀𝐵
    • 컬러 이미지
        • 𝑀 × 𝑁 × 𝑘 × 3 𝑏𝑖𝑡
        • 1920 × 1080 × 24 𝑏𝑖𝑡 = 49,766,400 𝑏𝑖𝑡 = 5.96 𝑀𝐵

2. 영상처리 응용 분야

  • 의료 분야(방사선, 초음파)
  • 방송 통신 분야
  • 공장 자동화 분야
  • 출판 및 사진 분야
  • 애니메이션 및 게임 분야
  • 기상 및 지질 탐사 분야
  • 감시 분야
  • 우주 항공 분야
  • 해양 분야
  • 로봇 시각 분야
  • 전자현미경 및 입자 물리 분야
  • 애니메이션 및 게임 분야
  • 자율 내비게이션 분야

3. OpenCV 소개

OpenCV - Open Source Computer Vision Library

  • 영상 처리와 컴퓨터 비전 관련 오픈 소스 라이브러리
  • 2,500개가 넘는 알고리즘으로 구성
    • 영상 처리, 컴퓨터 비전, 기계 학습과 관련된 알고리즘
    • 얼굴 검출과 인식, 객체 인식, 객체 3D 모델 추출, 스테레오 카메라에서 3D 좌표 생성
    • 고해상도 영상 생성을 위한 이미지 스티칭, 영상 검색, 적목 현상 제거, 안구 운동 추적
    • 4만 7천 이상의 사용자 그룹과 1,800만 번 이상의 다운로드 횟수
  • 대기업 – 구글, 야후, 마이크로소프트, 인텔, IBM, 소니, 혼다, 도요다
  • 신생기업 - Applied Minds, Videosurf 및 Zeitera
  • C, C++, 파이썬(Python), Java, 매트랩 인터페이스 제공
  • 윈도우즈, 리눅스, 안드로이드, 맥 OS 등 다양한 운영체제 지원