logo

이미지 처리와 컴퓨터 비전

이미지와 동영상은 시각 데이터

  • 사람은 장면을 보면 사물, 위치, 상황을 자연스럽게 파악
  • 카메라는 장면을 이미지나 동영상으로 저장
  • 이미지는 컴퓨터가 처리할 수 있도록 수치 데이터로 변환
  • 컴퓨터 비전은 이러한 수치 데이터를 바탕으로 장면을 인식
현실 장면 → 카메라 → 이미지 또는 동영상 → 수치 데이터 → 알고리즘 → 결과
  • 이미지: 한 시점의 장면을 기록한 데이터
  • 동영상: 시간 순서대로 나열된 이미지인 프레임(frame)의 연속
  • 프레임률(frame rate): 1초 동안 재생되는 프레임 수
  • 디지털 이미지: 색과 밝기를 나타내는 값이 격자 형태로 배치된 데이터

컴퓨터 비전

컴퓨터 비전(computer vision): 이미지 데이터에서 과업에 필요한 정보를 추출하고 해석하는 인공지능 분야.

입력질문출력 예시
제품 사진무엇인가?제품 종류 또는 불량 여부
도로 영상무엇이 어디에 있는가?자동차·보행자의 종류와 위치
문서 사진어떤 글자가 있는가?인식된 텍스트
의료 영상어느 픽셀이 병변인가?병변 영역 마스크
사람 영상관절이 어디에 있는가?신체 주요 지점의 좌표

이미지 처리와 컴퓨터 비전

구분이미지 처리컴퓨터 비전
주요 목적이미지를 변환하거나 필요한 특징을 강조이미지에서 의미와 구조를 추출
대표 출력보정된 이미지, 이진 이미지, 마스크범주, 위치, 영역, 텍스트, 깊이, 자세
예시밝기 조정, 노이즈 제거, 크기 변경, 선명화불량 판정, 객체 탐지, 문자 인식, 자세 추정

컴퓨터 비전의 과업

이미지 분류

이미지 분류(image classification): 이미지 전체를 미리 정한 범주 중 하나로 분류

  • 핵심 질문: 사진에 찍힌 것은 무엇인가?
  • 출력: 범주별 확률과 최종 예측 범주
  • 예시: 고양이와 강아지 분류, 부품 종류 분류, 정상·불량 판정

개 사진과 ImageNet 분류 확률

객체 탐지

객체 탐지(object detection): 한 이미지에서 여러 객체의 종류와 위치를 함께 찾기

  • 핵심 질문: 무엇이 어디에 있는가?
  • 출력: 객체 범주, 신뢰도, 경계 상자(bounding box)
  • 예시:
    • 자율 주행: 보행자, 자동차, 신호등 탐지
    • 제조: 부품 위치 확인과 개수 계산
    • 스포츠: 선수와 공의 위치 파악
    • 안전 관리: 위험 구역의 사람이나 장비 탐지

도시 광장의 사람과 사물에 경계 상자를 표시한 객체 탐지 결과

광학 문자 인식

광학 문자 인식(Optical Character Recognition, OCR): 이미지에 포함된 문자를 컴퓨터가 처리 가능한 텍스트로 변환

  • 핵심 질문: 이미지에 어떤 문자가 있는가?
  • 출력: 추출된 텍스트와 텍스트의 위치
  • 예시:
    • 영수증·청구서 전산화
    • 신분증 인식
    • 차량 번호판 인식

문서 이미지에서 글자를 추출하는 광학 문자 인식 예시

이미지 분할

이미지 분할(image segmentation): 이미지의 각 픽셀을 객체나 영역에 대응시키는 과업임.

  • 핵심 질문: 이미지의 각 픽셀은 어떤 객체나 영역에 속하는가?
  • 출력: 픽셀별 영역 레이블
  • 예시:
    • 의미론적 분할: 같은 범주의 픽셀을 같은 영역으로 표시
    • 인스턴스 분할: 같은 범주의 객체도 개별 객체로 구분
    • 응용: 화상 회의 배경 제거, 의료 영상의 장기·병변 구분, 도로 영역 분석

경계 상자를 출력하는 객체 탐지보다 객체의 모양을 정밀하게 표현할 수 있음.

고양이와 배경을 픽셀 단위로 구분한 이미지 분할 결과

깊이 추정

깊이 추정(depth estimation): 카메라와 장면 사이의 거리 또는 장면의 앞뒤 구조를 예측

  • 핵심 질문: 이미지 속 객체나 장소가 얼마나 떨어져 있는가?
  • 출력: 픽셀별 깊이 지도 또는 객체까지의 거리
  • 예시:
    • 로봇 이동
    • 자율 주행
    • 물체 크기·부피 측정
    • 3차원 장면 복원

장면의 거리를 색으로 표현한 깊이 추정 결과

자세 추정

자세 추정(pose estimation): 사람이나 동물의 관절과 같은 주요 지점(keypoint)의 위치를 찾기

  • 핵심 질문: 사람이나 동물의 관절이 어디에 있는가?
  • 출력: 어깨, 팔꿈치, 손목, 무릎 등 주요 지점의 좌표
  • 응용:
    • 운동 자세 분석
    • 작업자 안전 관리
    • 동작 인식
    • 사람과 로봇의 상호작용

사람의 관절 위치를 연결한 자세 추정 결과

객체 추적

객체 추적(object tracking): 동영상의 여러 프레임에서 같은 객체를 이어서 찾기

  • 핵심 질문: 같은 객체가 동영상의 각 프레임에서 어떻게 위치하고 있는가?
  • 출력: 시간에 따른 객체의 위치와 이동 경로
  • 응용:
    • 교통량 분석
    • 스포츠 전술 분석
    • 매장 동선 분석
    • 보안 영상 분석

객체 탐지가 한 프레임의 위치를 찾는다면, 객체 추적은 여러 프레임에서 객체의 동일성을 유지함.

이미지 간 변환

이미지 간 변환(image-to-image translation): 입력 이미지의 구조나 내용을 바탕으로 원하는 속성의 이미지를 출력

  • 핵심 질문: 입력 이미지의 어떤 속성을 변환하면 어떻게 되는가?
  • 출력: 입력 이미지를 변환한 이미지
  • 예시:
    • 스타일 변환: 사진을 특정 화풍으로 변환
    • 인페인팅(inpainting): 이미지에서 원하지 않는 영역 제거 또는 복원
    • 컬러화: 흑백 이미지를 컬러 이미지로 변환
  • 초해상도(super-resolution): 저해상도 이미지를 고해상도로 변환

사진을 회화 스타일로 바꾼 이미지 간 변환 예시

이미지의 일부를 복원한 이미지 간 변환 예시

흑백 사진을 컬러로 변환한 이미지 간 변환 예시

이미지 생성

이미지 생성(image generation): 텍스트 프롬프트, 예시 이미지, 레이아웃 등의 조건을 바탕으로 새로운 이미지를 생성

  • 핵심 질문: 사용자가 원하는 이미지를 어떻게 생성할 것인가?
  • 출력: 사용자의 입력에 따라 생성한 이미지
  • 예시:
    • 예술 및 콘텐츠 제작
    • 제품 디자인 시안 생성
    • 가상 환경과 합성 데이터 생성
    • 기존 이미지의 확장과 변형

고전 컴퓨터 비전과 딥러닝 컴퓨터 비전

같은 문제도 특징과 규칙을 누가 설계하는지에 따라 접근 방식이 달라짐.

고전 컴퓨터 비전

  • 특징 설계 방식 : 사람이 색, 경계, 모양 등의 특징을 선택
  • 일반적인 흐름 : 전처리 → 특징 추출 → 규칙 적용
  • 장점 : 처리 과정이 비교적 명확하고 제한된 환경에서 효율적
  • 한계 : 조명, 크기, 회전, 배경 변화에 맞춘 규칙 설계 필요
  • 예시: 사과를 찾는 문제
빨간색 영역 선택 → 둥근 윤곽선 탐색 → 조건에 맞으면 사과로 판단

딥러닝 컴퓨터 비전

  • 특징 설계 방식 : 모델이 데이터에서 과업에 필요한 특징을 학습
  • 일반적인 흐름 : 데이터 준비 → 모델 학습 → 예측
  • 장점 : 복잡한 배경과 다양한 객체 변화에 대응하기 유리
  • 한계 : 충분한 데이터와 연산 자원이 필요하며 오류 원인 해석이 어려울 수 있음
  • 예시: 사과를 찾는 문제
사과가 표시된 여러 이미지를 학습 → 모델이 특징을 학습 → 새 이미지에서 사과 예측
Previous
이미지 처리