DOI QR코드

DOI QR Code

Tracking Method for Moving Object Using Depth Picture

깊이 화면을 이용한 움직임 객체의 추적 방법

  • Kwon, Soon-Kak (Dept. of Computer Software Engineering, Dongeui University) ;
  • Kim, Heung-Jun (Dept. of Computer Software Engineering, Dongeui University)
  • Received : 2016.01.15
  • Accepted : 2016.02.19
  • Published : 2016.04.30

Abstract

The conventional methods using color signal for tracking the movement of the object require a lot of calculation and the performance is not accurate. In this paper, we propose a method to effectively track the moving objects using the depth information from a depth camera. First, it separates the background and the objects based on the depth difference in the depth of the screen. When an object is moved, the depth value of the object becomes blurred because of the phenomenon of Motion Blur. In order to solve the Motion Blur, we observe the changes in the characteristics of the object (the area of the object, the border length, the roundness, the actual size) by its velocity. The proposed algorithm was implemented in the simulation that was applied directly to the tracking of a golf ball. We can see that the estimated value of the proposed method is accurate enough to be very close to the actual measurement.

Keywords

1. 서 론

색상 카메라를 이용하여 촬영된 영상에서 객체를 식별하고 움직임을 추적하는 방법에 대한 연구가 진행되어 왔다. 색차신호를 이용하여 움직임을 추적하는 방법으로 옵티컬로우(Optical flow)[1]와 블록 매칭 알고리즘(Block matching algorithm)[2] 등이 널리 쓰여 왔으며 최근에는 컴퓨터의 연산속도가 급격히 증가함에 따라 파티클 필터에 의한 이동 객체 추정 방법이 연구되고 있다[3]. 또한 관심객체에 대한 신경망 최적화 구조를 이용한 방법도 연구되었다[4]. 그러나 색차신호 만으로 움직임을 추적하기 위해서는 많은 계산량이 필요하고 움직임 추적 결과 또한 정확하지 않다[5,6].

깊이카메라를 이용하면 거리정보를 이용하여 배경과 객체를 분리하여 적은 계산량으로 정확히 객체의 움직임을 추적할 수 있다. 이동객체의 거리에 따라 색차신호와 거리정보를 함께 사용하는 등의 연구 또한 진행되었다[7,8].

본 논문에서는 깊이카메라를 통해 배경영상의 깊이 값을 축적하고, 이 후 물체가 카메라 시야 안으로 들어오면 배경과의 깊이 값을 비교하여 객체를 식별한다. 이때 식별된 객체 중에서 관심을 가지는 객체만 선별하기 위해 관심객체의 형태적 특징을 이용한다. 깊이카메라 영상에서 정지해 있는 객체의 경우 상이 선명하게 촬영되지만 움직이는 객체의 경우 물체의 가장자리가 번져 보이는 모션블러(Motion Blur) 현상이 일어난다[9]. 따라서 이동상태의 객체는 이동 속도에 따라서 정지상태의 객체와 다른 형태적 특징을 가진다. 본 논문에서는 이동하는 객체가 촬영될 때 발생하는 모션블러 현상과, 이에 따른 형태적 특징 변화를 관찰하여 객체의 속도에 따라 다른 추적 알고리즘을 적용하여 움직임 추적의 정확도를 높일 수 있는 방법을 제안한다.

본 논문의 구성은 다음과 같다. 2장에서는 깊이화면을 이용한 움직임 객체 추적 방법을 설명하고, 3장에서 속도에 따른 형태적 특징 변화를 고려한 추적방법을 설명한다. 4장에서는 움직임 객체의 추적결과와 실제 측정결과를 비교하여 정확도를 평가하고 5장에서 결론을 맺는다.

 

2. 깊이화면을 이용한 움직임 객체 추적 방법

본 논문에서는 깊이화면을 이용한 움직임 객체를 추적하기 위해 다음과 같은 단계를 적용한다.

2.1 배경영상과 객체를 분리

본 논문에서는 깊이카메라를 통해 얻게 되는 깊이정보로 움직임 객체를 추적한다. 움직임 객체를 추적하기 위해서는 배경과 객체를 구분할 수 있어야 한다. 이를 위해서 객체를 식별하기 이전에, 미리 배경영상을 깊이카메라로 촬영하여 깊이정보를 축적한다. 이후 카메라 시야각 범위 내에 객체가 들어오면 축적된 배경의 깊이 값과 비교하여 차이가 나므로 객체로 인식하게 된다. 이때 밝기변화 등과 같은 이유로 깊이정보에 잡음이 생겨 배경영상이 객체로 잘못 인식되는 경우가 있다. Fig. 1은 배경과 객체를 구분한 이진화 영상에서 잡음이 객체로 인식된 예이다.

Fig. 1.Misrecognition of objects by noise.

이를 방지하기 위해 실험환경에 따라 적절한 배경-객체의 최소 깊이 차에 대한 임계값과 객체로 인식되기 위한 최소의 화소 수를 설정할 필요가 있다. 배경과의 깊이 차가 임계값보다 작거나 최소 화소 수 조건을 충족하지 못하는 객체를 제거하면 Fig. 2와 같이 배경영상과 객체가 깔끔히 구분된 영상을 얻을 수 있다.

Fig. 2.Separation of background and objects.

2.2 관심객체의 형태적 특징 획득

본 논문에서는 여러 객체들 중 하나의 객체를 관심객체(원 형태)로 선정하고 추적하기 위해서 객체의 면적, 경계선 길이, 원형도, 실제크기 4가지 형태적 특징을 이용한다. 이를 이용하여 임의의 물체에 대해 형태적 특징을 획득하고 객체를 추적할 수 있다.

이때 객체의 면적(A)은 한 객체가 가지는 화소의 수, 경계선 길이(l)는 객체를 둘러싼 경계의 길이를 말한다. 원형도(e)는 객체의 모양이 얼마나 원에 가까운가를 나타내는 척도로써 이상적인 원의 경우 1의 값이 나오며 계산식은 다음과 같다.

실제크기(r)는 깊이정보로부터 좌표계변환[10]을 통해 얻은 실제 객체의 가로, 세로 크기 값을 말한다.

이러한 특징을 획득하기 위한 방법으로, 먼저 카메라 시야각 내에 관심객체를 배치한다. 관심객체를 최초로 인식하고 형태적 특징을 축적하기 시작하는 시점은 카메라 영상 내에 객체가 배치되고 사람의 손이 영상에서 사라진 이후이다. 이를 위해 관심객체를 배치하는 과정에서 객체는 사람의 손과 이어져 있으므로 객체의 면적이 매우 크다는 점을 이용한다. 이 단계에서는 인식하는 객체의 최대크기를 제한하는 방법을 적용하고 있다.

다음으로 관심객체의 형태적 특징을 축적한다. 총 20 프레임에 걸쳐 축적한 후 움직임 추적에 쓰일 하나의 형태적 특징 값을 선별한다. 이때 평균값, 최빈값, 중간값 등을 이용할 수 있으며 본 논문에서는 중간 값을 이용하고 있다. Fig. 3은 관심객체의 형태적 특징을 획득하는 과정을 흐름도로 나타낸다.

Fig. 3.Flowchart for obtaining the morphological characteristics of the objects of interest.

2.3 객체의 움직임을 추적

관심객체의 형태적 특징을 획득한 이후부터는 매 프레임마다 다음과 같은 과정을 거치게 된다.

2.3.1 관심객체 선별

해당 프레임 내의 객체 중에서 가장 관심객체의 형태적 특징(Am, lm, em, rm)에 가까운 객체를 선별하는 과정으로, 관심객체의 형태적 특징들을 각각 프레임 내의 모든 객체들과 비교하여 가장 근소한 형태적 특징 값을 가지는 객체에 대해 가중치를 부여하고 있다.

예를 들어 한 프레임 내에 포함되는 전체 객체중의 특정 객체의 순서를 n이라 하면, 그 객체(On)의 형태적 특징 중 면적(An)이 관심객체의 면적(Am)과 가장 근소한 차이를 가지는 경우, 객체(On)에 대해 가중치 1을 부여한다. 이와 같이 나머지 모든 형태적 특징에 대해서도 가중치를 부여하고 가장 높은 가중치를 갖는 객체를 관심객체로 선별한다. 선별된 객체의 가중치가 4인 경우가 가장 이상적이다. Fig. 4는 관심객체 선별 과정을 흐름도로 나타낸다.

Fig. 4.Flowchart for a process of object selection.

2.3.2 관심객체 조건 검사

선별된 객체가 관심객체로 인정되는 최소한의 조건을 만족하는지 검사하는 과정으로 선별된 객체(On)의 형태적 특징(An, ln, en, rn)이 오차범위 이내에 포함되는지 검사한다. 이를 흐름도로 나타내면 Fig. 5와 같다.

Fig. 5.Flowchart of criterion for objects of interest.

Fig. 5에서 오차범위 값(Ae, le, ee, re)을 작게 설정할수록 관심객체를 정확히 찾을 수 있지만(추적정확도), 전체 프레임 중에서 관심객체 조건 검사를 만족하는 프레임의 빈도(추적성공률)는 줄어든다. 반대로 오차범위 값을 크게 설정하면 추적정확도는 떨어지지만 추적성공률은 높아진다. 이를 잘 조절하여 높은 추적정확도를 가지면서 추적성공률을 유지하여 움직임 궤적을 많이 저장하는 것이 중요이다. 이를 위한 구체적인 방법은 다음의 3장에서 설명한다.

객체의 움직임을 알기 위해서는 이전 프레임과 현재 프레임의 객체 중심점을 비교하여 알 수 있다. 정지상태의 객체는 이전 프레임과 비교하여 10mm 이하의 오차가 발생하기 때문에 그 이상의 변화가 있을 경우 객체가 움직임을 시작하였다고 판단한다. 객체가 움직임을 시작하면 객체가 카메라 시야각을 벗어나거나 일정시간 이상 움직임이지 않는 순간까지의 경로를 축적한다. 정확한 거리를 측정하기 위해서 깊이정보를 이용해 카메라 좌표계로 변환[10]하는 과정을 거치면 mm 단위의 거리 값을 구할 수 있다. 구해진 거리 값과 촬영에 사용된 카메라의 초당 프레임속도를 이용하여 객체의 이동거리, 궤적, 방향, 속도, 가속도 등을 얻을 수 있다.

 

3. 속도에 따른 형태적 특징 변화를 고려한 추적 방법

움직이는 객체의 경우 정지상태의 객체보다 이동방향으로 상이 번져 보이는 모션블러(Motion Blur) 현상이 나타난다[3]. Fig. 6은 모션블러 현상의 예시이다.

Fig. 6.Example of motion blur.

따라서 객체가 이동 시에는 형태적 특징 또한 달라지기 때문에 관심객체를 올바르게 찾지 못할 확률이 높아진다. 이를 극복하기 위하여 관심객체가 움직이기 전에는 관심객체 조건 검사의 오차범위를 작게 설정하고, 움직임을 식별한 이후에는 오차범위를 늘리는 2-Level 방법을 적용하였다. 그러나 움직이는 속도에 따라 모션블러 현상의 정도가 다르기 때문에 위 방법을 통해서는 다양한 속도의 움직임 객체를 추적하기에는 어려움이 있다.

Fig. 7은 객체의 이동속도가 객체의 너비에 미치는 영향을 측정한 결과이다. 실험에는 4.27cm 의 원형객체를 사용하였다. 실험환경의 카메라 시야 범위와 초당 프레임 수의 한계로 인해 6m/s 까지 측정하였다.

Fig. 7.Relationship between the moving speed and the width of an object.

Fig. 7의 결과를 토대로 객체의 속도가 3m/s 이상인 경우부터 속도증가에 따라 관심객체 조건 검사의 오차범위에 가중치를 주도록 하였다. 이 방법은 앞서 설명한 2-Level 방법과 달리 다양한 속도에서도 정확한 움직임을 추적할 수 있다.

 

4. 모의 실험 결과

본 논문에서 제안하는 움직임 객체의 추적 방법을 실험하기 위해 Fig. 8과 같이 카메라 시야각내에 골프 매트와 골프공을 배치하고 퍼팅 궤적을 추적하였다. 깊이 카메라는 Xtion Pro를 사용하였다.

Fig. 8.Simulation environment.

첫 번째 실험으로, 속도에 따른 추적성공률을 측정하였다. Table 1은 각 속도에 따른 추적성공률을 나타낸다. 속도에 따른 객체의 형태적 변화를 고려한 추적 방법을 적용하여 객체의 속도가 빠른 경우에도 높은 추적성공률을 보인다.

Table 1.Success probability according to tracking speed

두 번째 실험으로, 제안하는 방법을 통해 예측된 거리, 각도를 실제 데이터와 비교하였다. 각도의 예측은 실험자의 두 발끝을 이은 선을 기준선으로 하고, 관심객체의 최초 위치에서부터 객체의 이동이 멈추거나 카메라 시야각을 벗어난 위치를 이은 선과 기준선이 교차되는 각도를 계산하여 실제 각도기로 측정한 값과 비교하였다.

실험에서 객체는 직선으로 이동하므로 객체가 움직이기 전 위치에서부터 추적을 종료한 위치까지의 직선거리를 측정하였다. 실험결과 움직임 추적을 통해 예측된 거리와 실제 줄자로 측정한 거리는 10mm 내외의 근소한 오차를 보이며, 예측된 각도 또한 실제 각도에 가깝게 측정됨을 확인하였다.

Fig. 9는 구현된 프로그램을 통해 기록된 움직임 객체의 추적 결과를 나타낸다.

Fig. 9.Implementation of proposed method for tracking a moving object.

골프공 객체 추적을 위해 신경망의 최적화 구조를 이용하는 기존 연구[4]에서는 골프공과 다른 물체들의 영상으로부터 기계학습 과정을 필요로 하고 계산량 또한 복잡한 반면, 본 논문에서 제안하는 방법은 관심객체의 형태적 특징 획득 단계를 통해 획득된 형태적 특징만을 이용하므로 계산량이 적고 다양한 형태의 물체에 대해서도 추적이 가능하다.

Table 2.Result for the accuracy of motion estimation

 

5. 결 론

본 논문에서는 움직임 추적을 위해 깊이카메라를 이용하였다. 깊이카메라는 색상 카메라에 비해 움직임 추적 시 계산량이 적고 정확한 장점이 있다. 깊이화면 내의 여러 객체들 중 하나의 관심객체를 선별하기 위한 관심객체 선별 과정과, 선별된 객체가 관심객체의 조건에 부합하는지 검사하는 관심객체 조건검사 과정을 적용한 후 관심객체의 형태적 특징을 획득하였다.

빠르게 움직이는 객체의 경우에는 물체의 가장자리가 번져 보이는 모션블러 현상이 일어나기 때문에 움직임 추적의 정확도가 떨어진다. 이를 해결하기 위해 객체의 이동속도가 객체의 너비에 미치는 영향을 실험하고, 실험결과를 움직임 추적 알고리즘에 적용하였다. 실험을 통해 본 논문에서 제안하는 움직임 추적 방법의 정확도를 확인하였다. 향후 연구주제로는 실험환경의 마찰계수를 통해 가속도를 계산하여 카메라의 시야각을 벗어난 객체의 최종 도착지점을 예상하는 것이다.

References

  1. J.L. Barron, D.J. Fleet, and S.S. Beauchemin, “Systems and Experiment: Performance of Optical Flow Techniques,” International Journal of Computer Vision, Vol. 12, No. 1, pp. 43-77, 1994. https://doi.org/10.1007/BF01420984
  2. Y.Q. Shi and X.Xia, “A Thresholding Multiresolution Block Matching Algorithm”, IEEE Transactions on Circuits and Systems for Video Technology, Vol. 7, No. 2, pp. 437-440, 1997. https://doi.org/10.1109/76.564124
  3. H.B. Kim, K.E. Ko, J.S. Kang, and K.B. Sim, “Specified Object Tracking in an Environment of Multiple Moving Objects Using Particle Filter,” Journal of Korean Institute of Intelligent Systems, Vol. 21, No. 1, pp. 106-111, 2011. https://doi.org/10.5391/JKIIS.2011.21.1.106
  4. K.C. Kim, “Optimal Structures of a Neural Network Based on OpenCV for a Golf Ball Recognition,” Journal of Korea Institute of Electronic Communication Sciences, Vol. 10, No. 2, pp. 267-273, 2015. https://doi.org/10.13067/JKIECS.2015.10.2.267
  5. S.K. Kwon and S.W. Kim, “Motion Estimation Method by Using Depth Camera,” Journal of Korean Society of Broadcast Engineers, Vol. 17, No. 4, pp. 676-683, 2012.
  6. S.K. Kwon, Y.H. Park, and K.R. Kwon, “Zoom Motion Estimation Method by Using Depth Information,” Journal of Korea Multimedia Society, Vol. 16, No. 2, pp. 131-137, 2013. https://doi.org/10.9717/kmms.2013.16.2.131
  7. H.H. Min, S.H. Noh, and Y.T. Kim, “Moving Object Tracking System Using Location Information Based on Stereo Images,” Journal of Korean Institute of Intelligent Systems, Vol. 20, No. 2, pp. 239-240, 2010. https://doi.org/10.5391/JKIIS.2010.20.2.257
  8. K. Lai, L. Bo, X. Ren, and D. Fox, "Sparse Distance Learning for Object Recognition Combining RGB and Depth Information," Proceeding of IEEE International Conference on Robotics and Automation, pp. 4007-4013, 2011.
  9. K. Nam and Y. Shin, “A Design of Over-driving Controller to Reduce Motion Blur,” Journal of Institute of Electronics Engineers of Korea, Vol. 47, No. 4, pp. 1-6, 2010.
  10. S.K. Kwon and D.S. Lee, “Correction of Perspective Distortion Image Using Depth Information,” Journal of Korea Multimedia Society, Vol. 18, No. 2, pp. 106-112, 2015. https://doi.org/10.9717/kmms.2015.18.2.106

Cited by

  1. 야외 RGB+D 데이터베이스 구축을 위한 깊이 영상 신뢰도 측정 기법 vol.19, pp.9, 2016, https://doi.org/10.9717/kmms.2016.19.9.1647