코드를 느껴바라

컴퓨터 비전 : 3차원 비전 본문

CS/컴퓨터 비전(Computer Vision)

컴퓨터 비전 : 3차원 비전

feelTheCode 2025. 6. 21. 00:35

1. 개요

3차원 비전은 2차원 영상으로부터 깊이 정보를 추출해 3차원 공간을 인식하는 기술이다.
사람처럼 거리, 구조, 물체의 위치 등을 파악할 수 있으며, 자율주행, 로봇, 증강현실 등 다양한 응용이 가능하다.


2. 본질 영상과 본질 제거

본질 영상

  • 외관 영상(명암, 컬러)은 조명과 그림자의 영향을 받음
  • 본질 영상은 반사율, 깊이, 법선 벡터, 조명 요소 등을 포함한 실제 물체의 물리적인 속성만을 표현
  • 사람은 무의식적으로 본질을 구분하지만, 컴퓨터 비전에서는 매우 어려운 문제

본질 제거

  • 조명이나 그림자의 영향을 줄이기 위해 영상 처리 및 필터링 기법이 사용됨
  • 예: Finlayson의 그림자 제거 기법은 동일한 반사율을 가진 픽셀들을 선형 투영하여 그림자 효과를 제거함

3. 깊이 영상 획득 방법

수동 방식

  • 스테레오 비전: 두 영상 간 시차 계산으로 깊이 추정
  • 삼각측량을 통해 거리 계산

능동 방식

  • 구조광 (Structured Light): 패턴을 투사하고 왜곡 분석으로 거리 측정
  • 비행시간 (Time-of-Flight): 빛을 발사하고 반사되어 돌아오기까지 걸리는 시간 측정

4. Kinect와 3차원 인식

Kinect 센서

  • Microsoft에서 개발한 RGB-D 센서
  • 컬러 영상 + 깊이 영상을 동시에 제공
  • 구조광을 기반으로 깊이를 측정

Kinect 응용

  • 손, 몸, 얼굴 추적
  • 실내 3D 지도 제작
  • 제스처 인식 인터페이스 제공

5. 사람 자세 추정

Shotton의 알고리즘 (Kinect SDK)

  • 깊이 영상 기반으로 31개 신체 부위를 분류
  • 임의 숲(Random Forest) 분류기를 활용해 픽셀 단위로 분류 수행
  • 민시프트(Mean Shift) 군집화로 골격을 구성하고 연결점 추출
  • 자세 정보는 제스처 인식 및 행동 분석에 활용 가능

6. 대응점 정합과 깊이 추정

  • 좌우 영상 간의 동일한 물체 점 찾기 (Correspondence)
  • 정합 알고리즘:
    • SAD (절대차), SSD (제곱차), NCC (정규화 상관)
  • 정합 오류는 반복 무늬, 텍스처 없음, 가림현상 등에서 발생

7. 정규화 에피폴라 기하

  • 좌우 영상의 점 대응은 에피폴라 선 위에 존재
  • 정합 탐색을 1차원으로 줄여 계산량 감소
  • 정확한 깊이 추정을 위한 기하적 정렬 필수

8. SfM (Structure from Motion)

  • 움직이는 카메라 시퀀스를 기반으로 3D 구조와 카메라 위치를 동시에 복원
  • SLAM 기술과 연계되며, 로봇 비전에서 활용됨

9. 깊이 오차와 정합 전략

  • 시차 오차는 깊이 추정에 큰 영향을 미침
  • 가까운 물체일수록 오차가 더 크게 증폭됨
  • 좌-우 일관성 검사, 정규화 정합, 다중 정합 비교 등을 통해 정합 오류 완화

10. 요약 정리

항목 내용
본질 영상 조명 영향 없는 물리적 속성 표현
본질 제거 그림자/조명 영향 제거 필터
Kinect RGB+Depth 제공 센서, 구조광 기반
자세 추정 임의 숲 분류기 + 군집화로 골격 추정
정합 대응점 매칭 (SAD, NCC 등)
정규화 에피폴라 기하 기반 정렬
SfM 카메라 시퀀스 기반 3D 구조 복원
정합 오류 대응 일관성 검증, 전처리 필터 등

참고: 컴퓨터비전 (저자: 오일석)

반응형