Intro
지난 포스트에서는 Handcrafted 방식의 마지막으로 Epicflow를 다루었다. Epicflow를 다루며 별다른 설명 없이 색다른 방식의 Flow Map을 소개했다. 여태까지 Flow Map(Vector Map)은 말 그대로 Vector(화살표)로 표현했다. 하지만 벡터를 이용하면 Dense 하게 Optical Flow를 구한다 하더라도 Sparse 하게 Flow Map을 그릴 수밖에 없다.
반대로 아래 그림과 같이 색으로 벡터를 표현하게 된다면 모든 픽셀에 대한 벡터를 표현할 수 있게 된다. Optical Flow에서는 우리가 흔히 접할 수 있는 RGB가 아닌 HSV Color map을 활용한다.
HSV Vector map
Intro에서 언급했듯이 Vector Map은 시인성이 좋지 않으며 Dense하게 표현이 불가능하다. 따라서 Optical Flow Map은 HSV Map을 활용해 표현하곤 한다. 우선 HSV Map이 무엇인지 살펴보자. 흔히 우리가 일반적으로 사용하는 RGB Color Map과의 차이점은 아래와 같다.
Red(R), Green(G), Blue(B)의 조합으로 모든 색을 표현하는 RGB와 달리 HSV는 Hue(H), Saturation(S), Value(V)의 조합으로 색을 표현한다. 각각은 색상, 채도, 그리고 명도 정보이다. 그럼 HSV Map을 어떻게 하면 Flow Map에 활용할 수 있을까? HSV Map의 각각의 성분은 다음과 같은 역할을 한다.
- H(Hue) : 색상 정보, 모션 벡터의 방향
- S(Saturation) : 채도 정보, 모션 벡터의 크기(색이 진하면 크고, 연해질수록 작다.)
- V(Value) : 명도 정보로 Flow Map에서는 사용하지 않는다.
아래는 Vector Map을 Hsv Map에 대응시킨 Concept Image이다.
Next
다음 포스트에서는 본격적으로 Deep Learning을 활용한 Optical Flow 기법인 FlowNet을 다룰 예정이다.