책장/Computer Vision

[비전1] Introduction

TERAJOO 2021. 4. 19. 15:50

컴퓨터 비젼 공학은 '미군'에서 군사목적으로 도입되었다가 현재는 많은 곳에서 사용되고 있다.

사람 얼굴인식, AR, 3D 모델링, OCR, Digital puppetry, Recognition, Self-driving cars등등 여러 곳에서 사용하고 있다.

 

이러한 비젼 공학의 제일 기본은 image pixel 로 부터 의미있는 데이터를 추출해내는 과정이다.

즉, 중간에 어떤 과정을 거치던 적절한 알고리즘을 통하여 pixel→output 을 해내는게 비젼 공학의 목표라고 할 수 있다.

 

그러면 이 이미지로부터 뽑아낼 수 있는 가장 기본적인 정보가 무엇일까?

  1. Semantic Information : 이미지에 대한 환경적 정보를 뽑아낼 수 있다.
  1. Geometric Information : 이미지의 거리, depth 등에 대한 기하 정보를 뽑아낼 수 있다.

 

여튼 이러한 로직을 통해 많은 회사들이 존재하고 있다고 해서, 비전 공학이 쉽다고 보면 안된다.

특히, 100% 의 정확도를 가진 output 을 뽑아내는 것은 매우매우 힘들다. 왜냐? 이미지를 다루는 데에 있어서 default로 생기는 몇가지 문제들이 있기 때문이다.

 

  1. Viewpoint variation : 첫 번째로 viewpoint variation 문제이다.
    같은 물체임에도 보이는 각도에 따라서 다른 pixel 값을 가지게 된다. 이를 해결하기 위해서는 pixel 데이터 뿐 아니라 각도 데이터까지 포함하여 계산을 해야 하는데 요즘은 big-data 학습을 통해 이 문제를 어느 정도 해결할 수 있다고 한다.
  1. illumination : 두 번째 문제로 illumination 문제가 있다. 이미지가 명암으로부터 받는 영향을 뜻한다.
    밝고 어두운 정도에 따라 같은 이미지인데도 pixel 값이 달라져서 output 이 이상해질 수 있다.
  1. scale : 세 번째 문제로 scale 문제가 있다.
    이미지의 scale 을 맞추는 거에 대한 어려움이 있을 수 있다.
  1. deformation : 네 번째 문제로 모양이 다른 경우에 이미지를 다루는 데에 문제가 생길 수 있다.
    그림의 말 발굽을 보면 그때그때 모양이 다르기 때문에 같은 물체인지 확인하기 힘들 수 있다.
  2.  
  1. object intra-class variation : 같은 물체인데 디자인에 따라 다르게 생겨 확인하기 힘들 수 있는 문제이다. 다음 그림을 보면 바로 어떤 문제인지 알아챌 수 있다.
  1. Occlusion, clutter : 6번째 문제이다. 특이하게 생긴 이미지의 경우 인식에 문제가 생길 수 있다. 마치 머신러닝의 outlier 라고 생각하면 편할 듯하다.
  1. Motion : 7번째 문제이다. 물체가 움직이는 동안에 이미지 pixel 데이터를 다루기가 힘들다. 다음 그림을 보면 어떤 경우인지 바로 확인 가능하다.
  1. Ambiguity : 인식의 모호함에 대한 문제가 있을 수 있다.
    호박의 경우 원근감으로 매우 커보이는 문제가 생길 수 있고, 오른쪽의 나비의 경우 착시효과떄문에 나비처럼 보이는 데 실제로는 단지 땅바닥의 그림이라는 문제가 있을 수 있다.
  2. 또한 blur 처리 된 경우 역시 인식이 애매할 수 있는데 이 경우에는 일전에 말한 이미지의 환경 정보, semantic information 을 동원하여 어떤 물체인지, 같은 물체인지 확인할 수도 있다.
  1. Semantic context : 인식에 있어 상황 맥락이 필요한 경우가 있다. 바로 위에서 해결책으로 잠깐 언급한 방식이다.

즉 이러한 문제들 때문에 비전 공학은 하는 사람마다 다른 방법으로 연구를 한다. 따라서 사용하는 키워드, 정석 문제 풀이 같은 것들이 타 공학에 비해 애매하기 때문에 말만 잘한다면 어떤 방법을 사용해도 상관없는 학문이다. 즉, 자신이 보기에 어? 이거 답에 도움이 될거같은데? 하는 단서들을 다 끌어와 정확도만 좋다면 장땡인 듯하다.

 

참고할 수 있는 단서들

  • Depth cues
    • Linear perspective : range information, depth information
    • Parallax : 왼눈, 오른 눈 에서 보는 것과 같이 미세하게 다를 수 있다.
  • Shape cues
    • Texture gradient
    • Shading
  • Grouping cues
    • Similarity : 색상, 텍스쳐, 등등 유사도
    • Common fate

 

 


간단 정리

  • 컴퓨터 비젼에는 수많은 어플리케이션들이 있다.
  • 비젼 문제를 풀기 위해서는 고려해야할 많은 문제점과 단서들이 있다.