논문

하루에도 수만개의 글자를 읽고 있습니다. 하루에도 수백장의 종이를 들춰 읽습니다.
이것은 그 읽기에 대한 일기입니다.

Determining optical flow

[cite]10.1016/0004-3702(81)90024-2[/cite]

1. Introduction

Optical flow란 이미지에서의 밝기 패턴이 어떻게 이동하였는지를 나타내는 분포라고 할 수 있습니다. 따라서 지역적으로 물체들이 어떻게 보여지고 이들이 어떻게 이동하는지에 대한 중요한 정보를 얻을 수 있습니다. Optical flow가 끊겨 있으면 물체가 서로 다른 것임을 알 수 있는 등의 정도 함께 말입니다. Optical flow를 계산하는 연구는 보통 연속적인 이미지 프레임에 대하여 이루어져 있습니다.

2. Relationship to Object Motion

이미지에서의 물체 변화와 3차원에서의 물체 변화는 꼭 일치하는 것은 아닙니다. 예를 들어, 고정된 조명 아래에서 아무런 텍스쳐 패턴이 없는 구가 제자리에서 회전한다면 이미지 상에서는 전혀 변화가 없을 것입니다. 반대로 구는 가만히 있어도 조명이 이동한다면, 조명에 따라 이미지에 변화로 구가 회전하는 것처럼 보일 것입니다. 따라서 이 연구에서는 이러한 상황이 없이 실제 물체 변화와 이미지 상의 변화가 일치하는 경우로 간주하였습니다.

3. Restricted Problem Domain

또한 그림자 효과에 의한 밝기 변하를 피하기 위하여 표면이 평평한 상황을 가정하였고, 조명 또한 표면에 균일한 상황을 가정하였습니다. 따라서 이미지에서의 밝기는 물체의 반사도에만 관련이 있게 되었습니다. 또, 다른 물체에 의하여 가려지는 현상도 없는 것으로 간주하였습니다.

따라서 이미지 픽셀의 이동은 곧 실제 물체의 이동과 완전히 동일시 되고, 물체의 이동속도를 알면 이미지에서의 그 픽셀의 optical flow 또한 알 수 있게 디ㅗㅂ니다.

4. Constraints

시각 t에서 이미지 x, y위치에서의 밝기를 $ E(x, y, t) $라고 합시다. 이제 밝기 패턴이 이동하였다고 생각하여 본다면, 아래 식 조건이 성립하여야 합니다.

$$\frac{d E} {d t} = 0 \\
\frac{\partial E}{\partial x} \frac{d x}{dt} + \frac{\partial E}{\partial y} \frac{d y}{dt} + \frac{\partial E}{\partial t} = 0$$

이 때, $$$ \frac{d x}{dt} = u, \frac{d y}{dt} = v $$$ 가 곧 optical flow입니다.

이 식을, $$$ (E_x, E_y) \cdot (u, v) = -E_t $$$으로 나타낼 수 있어, 밝기가 이동한 방향은 $$$ -\frac{E_t}{\sqrt{E_x^2 + E_y^2}} $$$ 입니다.

하지만, 만약 위치는 이동하였더라도 밝기 변화가 없었다면 이를 계산할 수가 없기 때문에 추가적인 정보가 더 필요하게 됩니다.

5. The Smoothness Constraints

이미지에서의 모든 지점들이 별도로 움직이더라도, 보통 불투명한 물체들이 모양 변화 없이 이동할 경우 어느 한 지점의 이동은 주변의 이동과 비슷한 값을 가질 것입니다. 또한 한 위치와 인접 위치에서의 이동량은 급격하지 않고 부드럽게 변화할 것입니다. 급격하게 변하는 경우에는 다른 물체로 가려졌을 경우에 발생할 것입니다.

이러한 제한 조건은 다음 식으로 나타나는 이동에 대한 변화량이 최소가 되는 것을 구하는 것으로 나타낼 수 있습니다.

$$(\frac{\partial u}{\partial x})^2 + (\frac{\partial u}{\partial y})^2 \text{and} (\frac{\partial v}{\partial x})^2 + (\frac{\partial v}{\partial y})^2$$

이 smoothness를 나타내는 비슷한 것으로 위치 이동에 대하여 laplacian을 생각할 수 있습니다.

$$\nabla^2u = \frac{\partial^2 u}{\partial x^2} + \frac{\partial^2 u}{\partial y^2} \text{and} \nabla^2v = \frac{\partial^2 v}{\partial x^2} + \frac{\partial^2 v}{\partial y^2}$$

이 laplacian 또한 최소가 되어야 할 것입니다. 가장 단순한 경우, 이 값은 0이 될것입니다.

6. Quantization of Noise

이미지는 물리적인 영역을 일정한 간격으로 샘플하여 만들어집니다. 편의상 i행, j열, 시각 k의 밝기를 $ E_{i, j, k} $로 나타내며 이미지는 정사각형의 모양을 띈다고 가정합시다.

7. Estimating the partial Derivatives

식을 이용하기 위하여 밝기의 변화량 $ E_x, E_y, E_t $를 계산하여야 합니다. 여기서는 대상 픽셀과 그 인접한 픽셀인 8개의 픽셀들에 대하여, x, y, t 방향으로의 평균 변화량을 계산하여 사용하였습니다. 수식은 논문을 참고하시기 바랍니다.

8. Estimating the Laplacian of the Flow Velocities

Laplacian 또한 계산을 하여야 합니다. 편리한 방법으로 다음이 주로 사용됩니다.

$$\nabla^2 u \approx \kappa(\bar{u}_{i,j,k} - u_{i,j,k}) \text{and} \nabla^2 v \approx \kappa(\bar{v}_{i,j,k} - v_{i,j,k})$$

여기서 $$$ \bar{u}, \bar{v} $$$는 주변 영역으로부터 정의되는 지역 평균 값입니다. 논문에 수식을 보시면 됩니다.

파라미터 $$$ \kappa $$$는 3을 사용하였습니다.

9. Minimization

이제 남은 일은 위의 조건들은 만족하는 u와 v를 계산하는 것입니다.

기존의 이미지 밝기 변화량,

$$\beta_b = E_x u + E_y v + E_t$$

와 이동량 변화의 smoothness식

$$\beta_c = (\frac{\partial u}{\partial x})^2 + (\frac{\partial u}{\partial y})^2 \text{and} (\frac{\partial v}{\partial x})^2 + (\frac{\partial v}{\partial y})^2$$

을 최소화하면 되겠습니다.

실제로는 노이즈로 인하여 첫번째 식이 항상 0이 되기는 불가능하므로 이 둘의 균형을 적절하게 설정해줄 가중치 $ \alpha^2 $를 사용할 것입니다.

이제 식을 정리하면 다음과 같습니다.

$$\beta^2 = \int \int (\alpha^2 \beta_c^2 + \beta_b^2) \text{dx dy}$$

앞에서 살펴본 laplacian 수식을 이용하여 식을 정리하면 아래와 같아집니다.

$$(\alpha^2 + E_x^2 + E_y^2) u = +(\alpha^2 + E_y^2) \bar{u} - E_x E_y \bar{v} - E_x E_t$$

$$(\alpha^2 + E_x^2 + E_y^2) v = -E_x E_y \bar{u} + (\alpha^2 + E_x^2) \bar{v} - E_x E_t$$

10. Diffference of Flow at a Point from Local Average

식을 다르게 정리하면, 지역 평균 값에 대한 관점으로도 해석할 수 있습니다.

11. Constrained Minimization

만약 $ \alpha^2 $가 0으로 가도록 허용한다면, Lagrange multipliers 방법을 이용하여 constrained minimization problem으로 수식을 풀 수 있습니다.

12. Iterative Solution

이미지의 각 점에 대하여 2개의 수식 쌍이 나오므로, Gauss-Jordan 방법을 이용하여 풀기보다는 Gauss-Seidel 방법을 통하여 반본적인 방법으로 사용하는 것이 더 효율적입니다.

이미지의 주변에 대해서는 평균 등을 구할 때 제한이 있으므로 이런 영역에서는 인접 픽셀의 속도를 그대로 복사하는 것으로 해결하였습니다.

13. Filling In Uniform Regions

만약 밝기의 gradient가 0인 영역에서는, 이동량이 주변부의 평균 이동량에 평균으로 계산됩니다. 따라서 그러한 영역은 주변부로터 안쪽으로 이동량이 전파되도록 합니다. 영역의 외부로부터 안쪽을 일정 영역 동안 계속적으로 같은 값을 가질 경우 같은 값으로 채워놓도록 하였습니다. 하지만 값이 조금씩 달라질 경우에는, 외곽 영역의 조건에 따라 laplace 식에 따라 값을 할당하였습니다.

14. Tightness of Constraint

15. Choice of iterative Scheme

반복적인 계산에서 좋은 초기 값은 계산 시간을 단축시킬 수 있습니다. optical flow는 이전 프레임에서 변화가 적다고 생각할 수 있으므로 이전 프레임의 결과를 그대로 초기값으로 사용하여 계산을 효율적으로 할 수 있습니다.

16. Experiments

32 * 32 픽셀 크기의 이미지에 대하여 실험하였습니다.

가상으로 만들어진 이미지에 대하여 수행하여 정확한 값에 대하여 비교를 할 수 있도록 하였습니다. 실험은 위치 이동, 회전, Sink에 대하여 수행되었습니다.

17. Results

회전의 경우, 중심부로 갈 수록 오차가 심해지는 경향이 있습니다.

18. Summary

이미지 밝기 값 변화 뿐만 아니라, 추가적으로 이동량의 변화에 대한 제한조건을 이용하여 optical flow를 계산하였습니다.


Add a Comment Trackback