Detection, tracking, recognition의 차이

영상처리 2014. 5. 8. 13:13

댓글로 문의해 주신 내용인데, 답글을 달다가 게시글로 올려도 괜찮겠다 싶어서 따로 글로도 올립니다.


비전, 영상처리에서 나오는 용어로 detection(검출), tracking(추적), recognition(인식)이 있습니다.


가끔 이들 용어들이 혼동스러울 수가 있는데 그 차이는 다음과 같습니다.


먼저 detection과 recognition의 차이를 살펴보면 영상에서 대상을 찾는 것은 detection, 찾은 대상이 무엇인지 식별하는 것은 recognition입니다. 예를 들어, 얼굴인식의 경우 먼저 영상에서 얼굴을 찾은(detection) 후 찾아진 얼굴이 DB에 등록된 얼굴인지를 식별(recognition)하는 과정을 거칩니다. 즉, recognition은 일종의 identification 개념입니다.


다음으로 detection과 tracking의 차이를 살펴보면 detection은 하나의 영상에서 대상을 찾는 것이고 tracking은 비디오 영상에서 특정 대상의 위치 변화를 추적하는 것입니다 (즉, tracking은 일종의 matching 또는 data association 문제임). 비디오는 일련의 영상 프레임으로 구성되고 인접한 영상 프레임들 사이에서는 시공간적 유사성(영상내 대상의 위치, 크기, 형태 등이 유사)이 존재하기 때문에 tracking에서는 특정 대상을 추적하기 위해 이러한 history 정보를 활용합니다. 하지만 detection에서는 아무런 부가정보 없이 현재의 입력 영상만으로 대상을 찾을 수 있어야 하기 때문에 객체모델(object model) 및 검출 알고리즘이 영상에서의 다양한 변화(크기, 형태, 시점 등)를 커버할 수 있어야 합니다. 그래서 보통 detection에는 tracking보다 좀더 강력한 알고리즘이 요구됩니다.


사실 detection(또는 recognition)만 완벽하게 된다면 tracking 문제는 자연스럽게 풀리는 문제입니다. detection, tracking은 어떤 알고리즘 부류를 지칭하는 것이 아니라 우리가 풀어야 될 문제를 지칭하는 용어임을 유의해야 합니다. tracking 문제를 풀기 위해 detection 알고리즘이 사용될 수도 있고 detection 문제를 풀기 위해 tracking 알고리즘 기법들이 활용될 수도 있습니다.


by 다크 프로그래머