Ⅰ. 서 론
비디오 영상 분석에 대한 관심의 증대와 더불어 영상 내의 특정 물체에 대한 추적 연구가 활발해지고 있다. 실세계 영상의 배경 색상, 조명 강도, 시각 변형과 더불어 카메라와 이동 물체의 거리 그리고 카메라 지터 효과로 인해 영상 내의 회색 반전과 영상 내 물체의 크기와 모양의 무작위적인 변형은 목표물의 검출 및 추적을 어렵게 한다. 기존의 CAMshift 알고리즘[1,2]은 추적을 위한 특징으로 색상 정보를 사용하므로 영상의 조명이나 밝기에 민감하여 배경과 유사한 색상을 가진 물체의 추적에 어려움이 있었으며 여러 번의 반복을 통한 윈도우 내의 모든 요소에 대한 연산으로 빠르게 이동하는 물체에 대한 지속적인 추적이 불가능하였다. Salmond[3]는 파티클 필터로 이동 물체를 검출했으나 많은 계산 작업을 필요로 하였고 실시간 목표물 추적을 위한 실용성이 부족하였다. 최근에는 웨이블릿 변환이 색상과 공간정보를 사용하여 주파수 대역별로 프레임을 분할하여 배경 노이즈를 제거하고 목표물을 강조하여 단일 프레임 영상에 기반한 이동 물체 검출에 성능을 보이고 있다[4].
영상 내의 이동 물체는 크기와 모양 등이 변형되고 빠르게 움직이므로 복잡한 배경에서 물체를 검출하고 인식하기 위한 특징 선택이 중요하며, 이를 기반으로 정확하고 지속적인 추적을 위한 강인한 알고리즘이 요구된다. 본 논문에서는 칼만 필터와 결합한 공분산 행렬을 이용한 이동 물체 추적 방법을 제안한다. 먼저 추적을 원하는 물체에 대해 초기 윈도우를 지정해 주어야 하는 문제를 피하기 위해 프레임 간 차이를 이용하여 움직이는 영역을 검출한다. 이 영역을 칼만 필터의 탐색 윈도우로 사용하고, 탐색 윈도우 내의 목표물을 찾기 위한 특징으로 공분산 행렬을 사용한다. 특징들의 상관관계뿐만 아니라 공간적인 속성과 통계적인 속성을 사용하므로 효과적으로 배경색의 간섭을 극복할 수 있으며 복잡한 배경에서 신뢰할만한 추정을 보장한다.
Ⅱ. 고속 이동 물체 추적방법
현재 프레임에서 이전 프레임에서 검출된 목표물과 동일한 물체를 발견하는 것은 ‘물체 추적’으로 비전(vision)을 다루는 문제에 필수적인 요소이다. 이동 물체에 대한 특정 모델의 가정 아래 일정한 제약 조건 없이 임의적으로 변형되고 빠르게 움직이는 물체를 정확하고 강인하게 추적하는 데 있어 가장 중요한 일은 추적을 지속할 수 있는 목표물의 특징을 추출하는 것이다. 대부분의 방법들이 이동 물체의 색상 분포에 의존하거나 구조적인 모델에 의존하여 추적하나 공분산 행렬은 목표물의 통계적인 속성과 공간적인 속성을 동시에 유지하면서 추적할 수 있고, 지속적인 추적을 위한 목표물의 유사성 척도의 기준이 될 수 있으므로 추적의 특징으로 강인하다.
2.1. 공분산 행렬
비디오 영상의 각 프레임에서 목표물의 특징 영상은 식 (1)과 같다.
I는 프레임에서 관찰된 영상으로 회색영상, 컬러 영상 또는 적외선 영상 등이 될 수 있다. F는 I로부터 추출된 w×h×d 차원의 특징 영상이다. Փ는 색상, 기울기, 에지 방향, 필터 응답 등에 대응되는 함수이다. 주어진 특징 영상 내의 탐색 윈도우 R ⊂ F에 대해 특징들 의 집합 {fk}k=1,...,n이 R영역의 d차원 특징 벡터가 되도록 한다. 특징 벡터 fk는 픽셀 좌표 값으로부터 공간적 속성을 얻고, 색상, 기울기 등의 특징 값들의 통계적 속성을 갖고 있다[5].
식 (2)의 픽셀 좌표들은 방사 대칭 관계로 식 (3)과 같이 대체될 수 있다.
여기서
는 윈도우 중심 좌표 (xo, yo)로부터의 상대 좌표이다. 특징 점으로 구성된 d×d 공분산 행렬 CR로 M × N 이동 물체 영역 R을 표현하면 식 (4)와 같다.
여기서 μR은 영역 R에 있는 픽셀에 대응되는 특징들의 평균 벡터이다. 공분산 행렬은 대칭 행렬로 대각요소들은 각 특징의 분산을 나타내며, 비대각 요소들은 각 상관관계를 보여준다. 목표물 영역을 특정하기 위해 공분산 행렬의 사용은 특징들의 정규화 과정 없이 또는 혼합 가중치의 적용 없이 다양한 특징들을 융합할 수 있는 장점이 있다. 한 영역에서 추출된 공분산 행렬은 서로 다른 위치와 시야에 있는 영역을 매칭할 수 있으며, 공분산 계산 동안 영역 내 노이즈도 평균 필터 효과를 갖게 되므로 제거될 수 있다. 다양한 조도 하에서 색상 값의 동일한 이동이나 유사한 색상을 갖는 배경 영역 내로 목표물의 이동은 연속적인 추적을 불가능하게 한다. 그러나 공분산 행렬은 평균변화에 불변이므로 조도의 조건과 유사 배경의 조건에서 이동 물체 추적 시장점을 갖는다.
현재 프레임에서 목표물과 동일한 영역을 구하기 위해 목표물의 공분산 행렬과 후보 영역의 공분산 행렬 사이의 거리 계산이 요구된다. 그러나 공분산 행렬공간은 양의 정부호 행렬(positive definite matrix)로 음의 스칼라 곱에 닫혀 있지 않다. 따라서 두 행렬의 산술적인 뺄셈과 그 역이 성립되지 않으며 일치되는 영역의 거리를 측정하지 못한다. 따라서 공분산 행렬 사이의 유사성을 계산하기 위해 Förstner[6]에 의해 제안된 거리 측정을 적용하면 식 (5)와 같다.
여기서 λk(Ci,Cj)는 Ci, Cj의 고유값이며 xk는 고유 벡터로 식 (6)에서 계산된다.
두 행렬 간의 측정 거리 ρ는 행렬의 공리, 대칭성, 삼각 부등식 등을 양의 정부호 대칭 행렬에 대해 만족한다. 현재 프레임에서 목표물과 가장 짧은 거리를 가진 영역을 탐색하기 위해 전체 영역을 탐색하지 않고 칼만 필터에 의해 예측된 영역 내에서 탐색을 한다. 최대 매칭 영역은 현재 프레임에서 이동 물체의 위치로 결정된다.
2.2. 칼만 필터
칼만 필터는 선형 동적 시스템에서 상태 추정을 위한 최소 분산 상태 추정 알고리즘이다[7,8]. 영상 내의 이동 물체를 추적하기 위한 칼만 필터는 이전 프레임의 추적 결과에 따라 현재 프레임에서 가장 가능성 있는 물체 위치를 예측하고, 예측된 위치의 인접 영역에서 목표물을 탐색하며, 만일 탐색 영역에 목표물이 존재한다면 그 다음 프레임에서 목표물의 위치를 예측하도록 연속 추적한다. 칼만 필터를 사용하여 이동 물체의 위치와 속도를 정확히 예측할 수 있으며, 이동 물체의 파라미터들을 추정할 수 있다.
칼만 필터의 상태 방정식은 식 (7) 이며 측정 방정식은 (8)과 같다. 여기서 k는 비디오 프레임 시퀀스이며, F는 상태 천이 행렬로 한 단계에서의 상태 벡터와 다음 단계의 상태 벡터를 연결하는 변환 계수이며 H는 측정 행렬로 변환 계수이다. 그리고 ωk는 상태 벡터에 해당하는 가우시안 분포 p(ω) □ N(0, Q)의 예측오차 잡음이며, vk는 측정 벡터에 해당하는 가우시안 분포 p(v) □ N(0, R)의 측정 잡음이다. 그리고 Q와 R은 ωk와 vk에 대한 공분산 행렬이다. 는시스템의 상태벡터, yk=[x y]t는 시스템의 측정벡터이다. 칼만 필터의 핵심은 예측(prediction)과 정확성을 위한 갱신(update)에 있다.
식 (9), (10)은 이전 데이터를 근거로 예측하는 방정식으로 식 (9)의 는 프레임 k-1에 주어진 상태 xk의 선험 추정치이며, 는 프레임 k의 상태 xk의 사후추정치이다. 식 (10)은 예측 에러를 반영하기 위해 동적잡음을 예측하는 식이다.
칼만 예측 과정 후에 새로운 측정값을 반영하여 칼만갱신 과정을 거치게 되는데, 식 (11)는 동적 잡음과 측정 잡음을 이용하여 칼만 게인 Kk를 구하는 과정이다. 식 (12)은 식 (8)의 측정 잡음이 포함된 측정 벡터 yk와 식 (12)에서 구한 칼만 게인 그리고 예측 상태를 연산한 후 이후 상태를 구하는 식이다. 식 (13)은 예측 과정 식(8)에서 계산된 추정 오차 공분산 행렬을 갱신하는 식으로, 식 (8)의 는 사전 추정 오차 의 공분산이며 식(13)의 는 사후 추정 오차 의 공분산이다. 칼만 필터는 이동 물체를 추적하는 비디오 각각의 프레임마다 재귀적으로 예측 및 갱신 과정을 거치면 서 최적의 상태를 추정하도록 동작한다.
상태 천이 행렬 F, 측정 행렬 H, 동적 잡음 공분산 행렬 Q 그리고 측정 잡음 공분산 행렬 R은 다음과 같다.
2.3. 공분산 행렬과 칼만 필터의 결합 알고리즘
공분산 행렬을 이용한 추적은 이동하는 물체들의 공간적·통계적 속성들을 포함하며, 색상과 열적외선 등과 같은 목표물의 특징들을 혼합하여 추적할 수 있다는 장점이 있다. Meanshift를 이용한 방법이나 파티클 필터링 방법과 달리 지역 최적해에 빠지지 않고 전역 최적해를 찾을 수 있으며, 탐색 윈도우 크기에 대한 제약없이 이동 물체 영역들을 비교할 수 있다. 잡음과 조명 변화에 덜 민감하며 잡음의 경우 공분산 연산 동안 필터링 되는 효과가 있다. 그러므로 이동 물체의 추적을 위한 특징으로서 공분산 행렬은 강인한 추적 특징이 될 수 있다. 그러나 이동 물체가 빠르게 방향을 전환하여 움직이는 경우, 공분산 행렬만을 사용한 탐색 방법은 탐색 범위 밖으로 목표물이 벗어나므로 후보 영역들이 이동 물체를 찾지 못하므로 전체 영역을 다시 탐색하면서 연산해야 하므로 탐색 시간 복잡도가 증가한다. 공분산 행렬과 같이 이전 프레임의 이동 물체 위치를 기반으로 한 추적 방법들은 빠르게 움직이는 물체의 경우, 현재 프레임에서 목표물의 영역을 찾기 위한 연산 동안다음 프레임에서 목표물이 더 멀리 이동하게 되므로 실시간 추적을 지향하나 추적에 실패하고 만다.
본 논문에서는 이를 해결하기 위해 상태와 측정의 재귀적인 적용으로 최적의 미래 영역을 예측하는 칼만 필터를 이용하여 최적의 탐색 영역을 찾아내고 영역 내에 서 공분산 행렬을 통해 이동 물체의 위치를 찾는 방법을 적용한다. 그림 1은 공분산 행렬과 칼판 필터를 결합하여 추적하는 알고리즘의 순서도이다.
그림 1.제안하는 방법의 이동 물체 추적 순서도 Fig. 1 Tracking Flowchart of Moving Object by the Proposed Method
칼만 필터는 초기 추적할 물체에 대한 탐색 윈도우를 지정해 주기 위해 영상 프레임으로부터 움직임이 존재하는 영역을 계산하여 그 중심점을 초기 칼만 탐색 윈도우의 중심 좌표로 정하고 칼만 갱신 단계를 거쳐 다음 상태 예측에 사용한다. 이후 칼만 예측 단계의 결과로 이동 물체의 움직임 영역을 중심으로 탐색 윈도우를 설정하고 칼만 중심 좌표를 구한 후 갱신과 예측을 계속해 나간다. 공분산 행렬은 추적할 이동 물체에 대한 공분산을 계산한 후, 이동 물체의 움직임을 추적하기 위해 후보 영역의 공분산을 계산하여 수렴하는지 거리계산을 한 후 수렴하면 계속 추적을 지속하나 수렴하지 않는 경우 칼만 탐색 윈도우 내에서 이동 물체의 영역을 다시 찾게 된다.
Ⅲ. 실험 분석 및 결과
본 논문에서 제안한 방법의 실험을 위하여 Windows7, Intel Pentium G2120 @ 3.10GHz 프로세서 그리고 소니 디지털 캠코더로 촬영한 320×240 크기의 초당 25프레임의 비디오 영상과 스마트폰(Galaxy Note II)으로 촬영한 크기의 영상을 사용하였으며, MatLab R2012b 프로그램으로 구현하였다.
그림 2는 칼만 필터에 의해 예측된 탐색 윈도우 영역을 보여준다. 영역 내의 파란색 선은 초기 이동 물체의 움직임이 있는 영역을 찾기 위해 계산한 영역으로 그중심점을 칼만 필터의 예측을 위한 중심좌표로 대입시킨 후 칼만 필터 알고리즘을 적용하여 예측하였으며, 예측된 탐색 윈도우 영역은 흰색 선으로 표시하였다. 이동 물체의 영역을 알지 못하는 상태에서 칼만 필터에의해 이동하는 물체가 포함된 영역을 정확히 예측하여 찾을 수 있었으며, 고속으로 목표물이 이동하고 있는 frame 139~142에서도 이동 영역을 놓치지 않고 추적함을 알 수 있었다.
그림 2.칼만 필터로 예측한 탐색 윈도우 영역 Fig. 2 Searching Window Area predicted by Kalman Filter
그림 3은 공분산 행렬만을 사용하여 이동 물체를 추적한 실험 결과이며, 총 184 프레임의 회색 영상으로 변환 후 실험하였다. 숫자가 적힌 큐브의 공분산 행렬과 후보 영역의 공분산 행렬을 비교 연산하면서 추적을 지속하다가 이동의 속도가 빨라지는 frame 139~142 프레임에서 영역을 찾지 못하고 추적을 놓치는 경우가 발생하였다.
그림 3.공분산 행렬을 이용한 이동 물체 추적 Fig. 3 Moving Object Tracking using Covariance Matrix
공분산 행렬은 다른 추적 알고리즘과 달리 지역 최적해 빠지지 않고 전역 최적해를 찾기 때문에 일치되는 영역을 발견할 때까지 탐색을 계속해 나가므로 frame 160에서 볼 수 있듯이 전 영역을 후보 영역으로 탐색하면서 이동 물체를 찾는다. 그러므로 공분산 행렬을 이용한 추적에 있어 중요한 성능 지표로 검출률과 평균 탐색률을 들 수 있으며, 목표물을 탐색해야 할 전체 영역의 수와 실제 탐색을 시도한 횟수로 일치되는 영역을 찾기까지의 공분산 행렬의 비교 연산 횟수에 비례한다.
그림 4는 제안하는 방법인 칼만 필터와 공분산 행렬을 결합하여 고속의 이동 물체 추적을 실험한 결과이다. 흰색 선은 칼만 필터를 적용한 탐색 윈도우 영역이며, 큐브의 붉은 색 사각형은 공분산 행렬로 추적한 이동물체 영역이다. 흰색 영역 안의 흰색 점은 칼만 중심좌표를 표시한 것이다. 물체의 이동 속도가 빨라지는 frame 139~142에서 전 영역에 걸친 연산을 하지 않고 칼만 탐색 윈도우에서 이동 물체를 추적함으로써 추적의 성능을 향상시킬 수 있다. 실험의 성능 평가를 위해 영상 프레임 내의 이동 물체의 위치가 정확하게 추정된 검출율은 식 (14)와 같다.
그림 4.칼만 필터와 공분산 결합에 의한 고속 이동 물체 추적 Fig. 4 Fast Moving RedCube Tracking by the Combination of Kalman Filter and Covariance Matrix
평균 탐색률은 탐색의 대상이 되는 전체 영역의 수와 물체의 추정 영역을 찾기 위해 시도한 횟수의 비율로 몇 번의 시도 만에 영역을 찾았는지를 나타낸다.
그림 5는 칼만 필터 알고리즘을 적용한 예측 영역의 중심좌표 이동경로이다. 그림 5(a)는 frame1 ~100의 칼만 중심좌표로 이동 물체의 경로 및 방향과 일치함을 보여주고 있으며 칼만 필터가 물체의 이동 경로를 정확히 예측하고 있음을 나타낸다. 프레임 간 물체의 빠른 이동 속도는 중심좌표를 연결한 선의 길이로 알 수 있으며, 그림 5(b)는 frame 135~150의 칼만 중심좌표 이동 경로로 물체 움직임이 고속임을 보여준다.
그림 5.칼만 탐색 윈도우 내 중심좌표 이동 경로 (a) frame 1~100 칼만 중심 좌표 이동 경로 (b) frame 135~150 칼만 중심좌표 이동 경로 Fig. 5 Centroid Moving Path in Kalman Searching Window (a) Centroid moving path from frame 1 to frame 100 (b) Centroid moving path from frame 135 to frame 150
그림 6은 frame 54~ frame 75에서 빠르게 움직이는 이동 물체(YellowBall)의 추적을 보여주고 있다. 그림 5의 이동 물체(RedCube) 보다 이동 속도가 빠르지 않으나 제안하는 방법에 의한 이동 물체 추적이 효과적임을 보여 주고 있다.
그림 6.제안하는 방법에 의한 이동 물체 추적 Fig. 6 Moving YellowBall Tracking by Proposed Method
표 1은 고속 이동 물체(RedCube)의 공분산 행렬만을 적용하였을 때와 제안한 방법을 적용하였을 때의 이동 물체 추적에 대한 성능 평가 결과이다. 평균 탐색률은 고속의 이동 물체를 24×24의 영역으로 움직이면서 추적했을 때 결과이다. 제안한 방법을 사용하여 추적을 놓친 경우는 일정한 속도로 움직이던 물체가 갑자기 다른 방향으로 빠른 속도로 움직일 때, 그리고 고속으로 움직이기 시작한 프레임에서 이동 물체를 찾기 위한 연산량의 증가로 이동 물체 영역을 찾기 위한 시간 지연으로 발생하였다.
표 1.고속 이동 물체 추적 성능 평가 Table. 1 Moving Object Tracking Performance Evaluation
Ⅳ. 결 론
본 논문에서는 공분산 행렬과 칼만 필터 추적 알고리즘을 결합하여 빠르고 정확한 이동 물체 추적 방법을 제안하였다. 공분산 행렬은 이동 물체를 식별하고 색상이나 조명 그리고 형태 등의 변화에도 강인한 특징을 나타내며, 칼만 필터 알고리즘은 현재 물체의 정보로 이동 물체의 위치 및 상태를 예측할 수 있다는 장점이 있었다. 공분산 행렬과 칼만 필터 알고리즘의 적용은 빠르게 이동하는 물체에 대해 이동 영역을 정확히 예측하였으며 효과적인 추적이 될 수 있음을 보여 주었다. 향후 고속으로 이동하는 사람과 물체의 특성을 고려한 추적 방법에 적용하고 이동 속도 측정 및 이동 방향 예측에 따른 칼만 필터의 적용과 이동 물체의 크기에 가변적인 공분산 행렬의 적용에 대한 연구가 이뤄져야 할것이다.
References
- K. XU, Y. Y. HE, and W. Y. WANG, "Object tracking algorithm with adaptive color space based on CamShift," Journal of Computer Application, vol. 3:038, pp. 756-760, 2009.
- Y. B. Li, X. L. Shen, and S. S. Bei, "Real-time Tracking Method for Moving Target Based on an Improved Camshift Algorithm," in Proceeding of the International conference on Mechatronic Science, Electric Engineering and Computer, pp. 978-981, 2011.
- D. J. Salmond and H. A. Birch, "A particle filter for track-before-detect," in Proceeding of the American Control Conference, vol. 5, pp. 3755-3760, 2001.
- M. Sharma, A. Kulkarni, and S. Puntambekar, "Wavelet Based Adaptive Tracking Control for Uncertain Nonlinear Systems with Input Constraints," in Proceeding of Advances in Recent Technologies in Communication and Computing, pp. 694 - 698, 2009.
- F. Porikli, O. Tuzel, and P. Meer, "Covariance Tracking using Model Update Based on Means on Riemannian Manifolds," in Proceeding of IEEE conference on Computer Vision and Pattern Recognition, vol. 1, pp. 728-735, 2006.
- W. Forstner and B. Moonen, "A metric for covariance matrices," in Geodesy-The Challenge of the 3rd Millennium, Springer Berlin Heidelberg, pp. 299-309, 2003.
- S. L. Huang and J. X. Hong, "Moving Object Tracking System Based on Camshift and Kalman Filter," in Proceeding of International Conference on Consumer Electronics, Communications and Networks, pp. 1423-1426, 2011.
- X. G. WANG and X. J. LI, "The Study of Moving Target Tracking Based on Kalman-CamShift in the Video," in Proceeding of International Conference on Consumer Electronics, Communications and Networks, pp. 1423 -1426, 2011.
Cited by
- A Fruit Fly-Optimized Kalman Filter Algorithm for Pushing Distance Estimation of a Hydraulic Powered Roof Support through Tuning Covariance vol.6, pp.10, 2016, https://doi.org/10.3390/app6100299
- 수상 안전을 위한 Finger Printing 기반 무선 위치추적 기술 vol.22, pp.7, 2018, https://doi.org/10.6109/jkiice.2018.22.7.1001
- 실내 환경에서 White LED 마커 기반 무인 운반차의 직진경로 예측 기술 연구 vol.17, pp.5, 2015, https://doi.org/10.12815/kits.2018.17.5.48
- Optimization design of pushing distance estimation of hydraulic support using the Kalman filter with the covariance improvement vol.11, pp.5, 2019, https://doi.org/10.1177/1687814019850720
- 국내 환경에 적합한 Kalman-filter 기반 사용자 운동거리 측정 알고리즘 설계 및 구현 vol.23, pp.12, 2015, https://doi.org/10.6109/jkiice.2019.23.12.1624