KR102335755B1 - Method for object tracking using extended control of search window and object tracking system thereof - Google Patents

Method for object tracking using extended control of search window and object tracking system thereof Download PDF

Info

Publication number
KR102335755B1
KR102335755B1 KR1020190156214A KR20190156214A KR102335755B1 KR 102335755 B1 KR102335755 B1 KR 102335755B1 KR 1020190156214 A KR1020190156214 A KR 1020190156214A KR 20190156214 A KR20190156214 A KR 20190156214A KR 102335755 B1 KR102335755 B1 KR 102335755B1
Authority
KR
South Korea
Prior art keywords
search window
object tracking
lower body
target object
feature point
Prior art date
Application number
KR1020190156214A
Other languages
Korean (ko)
Other versions
KR20210067016A (en
Inventor
주영훈
Original Assignee
군산대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 군산대학교 산학협력단 filed Critical 군산대학교 산학협력단
Priority to KR1020190156214A priority Critical patent/KR102335755B1/en
Publication of KR20210067016A publication Critical patent/KR20210067016A/en
Application granted granted Critical
Publication of KR102335755B1 publication Critical patent/KR102335755B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/223Analysis of motion using block-matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/40Image enhancement or restoration using histogram techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/246Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20021Dividing image into blocks, subimages or windows

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Analysis (AREA)

Abstract

본 발명은 탐색 윈도우의 확장 제어를 통한 객체 추적 기술에 관한 것으로, 객체 추적 시스템이 객체를 추적하는 방법은, 영상을 입력받아 추적하고자 하는 목표 객체에 대해 탐색 윈도우를 설정하고, 탐색 윈도우 내부에 설정된 목표 객체를 상체 및 하체로 분할하고 각각 코너 특징점을 추출하고, 상체 및 하체로부터 각각 추출된 컬러 히스토그램의 픽셀과 코너 특징점을 비교하여 목표 객체의 최종 특징점을 결정하고, 상체 및 하체에 대해 각각 객체의 크기 변화에 따라 탐색 윈도우의 크기를 조절하면서 색상의 밀도 중심을 추적하며, 추적 중인 목표 객체의 최종 특징점을 이용하여 거짓 정보에 해당하는 아웃라이어(outlier)를 배제한 인라이어(inlier)를 중심으로 타원 모델을 피팅함으로써 탐색 윈도우의 확장을 제어한다.The present invention relates to an object tracking technology through extended control of a search window, and a method for an object tracking system to track an object receives an image, sets a search window for a target object to be tracked, and sets a search window set inside the search window. Divide the target object into upper and lower body, extract corner feature points, respectively, compare the pixel and corner feature points of the color histogram extracted from the upper and lower body to determine the final feature point of the target object, The center of color density is traced while adjusting the size of the search window according to the size change, and the ellipse is centered on the inlier that excludes the outlier corresponding to false information using the final feature point of the target object being tracked. Control the expansion of the search window by fitting the model.

Description

탐색 윈도우의 확장 제어를 통한 객체 추적 방법 및 그 방법에 따른 객체 추적 시스템{Method for object tracking using extended control of search window and object tracking system thereof}An object tracking method through extended control of a search window and an object tracking system according to the method

본 발명은 영상 내에서 이동하는 객체를 추적하는 기술에 관한 것으로, 특히 동영상 내에 다수의 객체와 배경이 혼재되어 움직이고 있는 상황에서 객체들 간의 겹침이 발생하더라도 목표 객체를 지속적으로 추적하는 방법, 그 방법을 컴퓨터에 실행하기 위한 컴퓨터 프로그램, 및 그 방법에 따른 객체 추적 시스템에 관한 것이다.The present invention relates to a technology for tracking a moving object in an image, and in particular, a method and method for continuously tracking a target object even when overlapping objects occur in a situation in which a plurality of objects and a background are mixed in a moving image to a computer program for executing on a computer, and an object tracking system according to the method.

디지털 영상의 보편화 되어감에 따라 동영상 분석에 대한 관심이 증가하고 있으며, 동영상 내에서 움직이는 특정 객체에 대한 추적 연구의 필요성이 함께 증대되고 있다. 이러한 동영상 분석은 방송용 카메라를 통한 운동 경기에서 특정 선수의 행동 분석을 위한 지속적인 추적이나 CCTV(Closed Circuit Television)를 통한 범죄자와 같은 특정 객체 추적이나 보안 등 다양한 분야에서 사용될 수 있다. 종래에 특정 객체의 추적 및 분석은 DVR(Digital Video Recorder)을 이용하여 운동 경기가 끝난 이후, 또는 범죄가 일어난 후 기록된 영상을 통해 이루어졌다. 기록된 영상을 통하여 운동 선수와 범죄자와 같은 특정 객체를 지속적으로 사람이 추적할 경우 시간이 지날수록 감시 효율이 저하된다는 보고가 있다. 이와 같은 문제를 해결하기 위해 운동 선수와 범죄자 같은 특정 객체를 카메라 또는 CCTV가 스스로 추적하고, 목표 객체가 다른 객체와 다름을 스스로 판별하여 지속적인 추적을 수행할 수 있는 지능형 카메라 및 CCTV 개발이 필요하다.As digital images become more common, interest in video analysis is increasing, and the need for tracking research on specific moving objects in video is also increasing. Such video analysis can be used in various fields such as continuous tracking for analyzing the behavior of a specific player in an athletic game through a broadcast camera, or tracking a specific object such as a criminal through CCTV (Closed Circuit Television) or security. Conventionally, tracking and analysis of a specific object has been done using a DVR (Digital Video Recorder) through an image recorded after an athletic event or after a crime has occurred. There is a report that if a person continuously tracks specific objects such as athletes and criminals through recorded images, the monitoring efficiency decreases as time goes by. In order to solve this problem, it is necessary to develop an intelligent camera and CCTV that can track specific objects such as athletes and criminals by the camera or CCTV, and determine that the target object is different from other objects and perform continuous tracking.

일반적으로 지능형 카메라 및 지능형 CCTV는 앞서 언급한 바와 같이 스스로 특정 객체를 추적하기 위해 이동 객체를 검출하고 인식하는 과정이 필요하고, 이러한 과정을 통해 추적하고자 하는 특정 객체를 다른 객체와 분류하여 특정 객체를 지속적으로 추적할 수 있다. 이동 객체를 검출하기 위해서는 차영상 기법을 많이 사용한다. 차영상 기법은 입력 영상에서 배경과 전경을 분리하여 이동 객체를 검출하는 방법이다. 많이 사용되는 차영상 기법 중 하나는 GMM(Gaussian Mixture Models)이다. GMM은 배경의 변화를 학습하여 적응시키는 방법으로 빛과 같은 주변 잡음 변화에 강인하다. 하지만 운동 경기와 동적 카메라 환경에서는 배경이 지속적으로 변하여 학습을 제대로 할 수 없어 사용하기 적합하지 않다.In general, as mentioned above, intelligent cameras and intelligent CCTVs require a process of detecting and recognizing a moving object to track a specific object by themselves. It can be continuously tracked. In order to detect a moving object, a difference image technique is often used. The difference image technique is a method of detecting a moving object by separating the background and foreground from an input image. One of the widely used differential imaging techniques is Gaussian Mixture Models (GMM). GMM is a method that learns and adapts to changes in the background, and is robust against changes in ambient noise such as light. However, it is not suitable for use in sports games and dynamic camera environments because the background continuously changes and learning cannot be performed properly.

J. H. Lee, S. W. Cho, J. M. Kim, and S. T. Chung, "Layered object detection using adaptive Gaussian mixture model in the complex and dynamic environment.," Journal of Korean Institute of Intelligent Systems, Vol. 18, No. 3, pp. 387-391, 2008.J. H. Lee, S. W. Cho, J. M. Kim, and S. T. Chung, "Layered object detection using adaptive Gaussian mixture model in the complex and dynamic environment.," Journal of Korean Institute of Intelligent Systems, Vol. 18, No. 3, pp. 387-391, 2008. J. H. Park, G. S. Lee, N. D. Toan, W. H. Cho, and S. Y. Park, "Moving object detection using clausius entropy and adaptive Gaussian mixture model.," The Institute of Electronics Engineers of Korea- Computer and Information, Vol. 47, No. 1, pp. 22-29, 2010.J. H. Park, G. S. Lee, N. D. Toan, W. H. Cho, and S. Y. Park, "Moving object detection using clausius entropy and adaptive Gaussian mixture model.," The Institute of Electronics Engineers of Korea- Computer and Information, Vol. 47, No. 1, pp. 22-29, 2010.

본 발명이 해결하고자 하는 기술적 과제는, 영상 내에서 이동 객체를 추적하는 종래의 기술이 배경과 다수의 객체가 혼재되어 있는 환경에서 정확한 학습이 어려운 한계를 극복하고, 동적 카메라 영상에서 과도한 연산량으로 인해 실시간 추적이 지연되거나 시스템에 부하로 작용하는 약점을 해소하며, 목표 객체와 색상이 유사한 배경 내지 또 다른 객체가 목표 객체에 근접하는 경우 객체 추적이 정확하게 동작하지 못하고 객체 이외의 영역으로 탐색 윈도우가 확장되는 문제를 해결하고자 한다.The technical problem to be solved by the present invention is to overcome the limitation that the conventional technique of tracking a moving object in an image is difficult to learn accurately in an environment in which a background and a large number of objects are mixed, and due to an excessive amount of computation in a dynamic camera image Resolves the weakness of real-time tracking delay or load on the system. When a background or another object with a similar color to the target object approaches the target object, the object tracking does not work correctly and the search window expands to areas other than the object. We want to solve the problem that

상기 기술적 과제를 해결하기 위하여, 본 발명의 일 실시예에 따른 객체 추적 방법은, (a) 객체 추적 시스템이 적어도 하나 이상의 객체와 배경을 포함하는 영상을 입력받아 추적하고자 하는 목표 객체에 대해 탐색 윈도우(search window)를 설정하는 단계; (b) 상기 객체 추적 시스템이 상기 탐색 윈도우 내부에 설정된 상기 목표 객체를 상체 및 하체로 분할하고 각각 코너(corner) 특징점을 추출하는 단계; (c) 상기 객체 추적 시스템이 상기 상체 및 상기 하체로부터 각각 추출된 컬러 히스토그램(color histogram)의 픽셀(pixel)과 상기 코너 특징점을 비교하여 상기 목표 객체의 최종 특징점을 결정하는 단계; (d) 상기 객체 추적 시스템이 상기 상체 및 상기 하체에 대해 각각 객체의 크기 변화에 따라 적응적으로 탐색 윈도우의 크기를 조절하면서 색상의 밀도 중심을 추적하는 단계; 및 (e) 상기 객체 추적 시스템이 추적 중인 목표 객체의 최종 특징점을 이용하여 거짓 정보에 해당하는 아웃라이어(outlier)를 배제한 인라이어(inlier)를 중심으로 타원 모델을 피팅(fitting)함으로써 상기 탐색 윈도우의 확장을 제어하는 단계;를 포함한다.In order to solve the above technical problem, in an object tracking method according to an embodiment of the present invention, (a) an object tracking system receives an image including at least one object and a background and searches for a target object to be tracked through a search window setting a (search window); (b) dividing, by the object tracking system, the target object set in the search window into an upper body and a lower body and extracting corner feature points; (c) determining, by the object tracking system, a final feature point of the target object by comparing the corner feature points with pixels of a color histogram extracted from the upper body and the lower body, respectively; (d) tracking, by the object tracking system, the center of color density while adaptively adjusting the size of a search window according to a change in the size of the object with respect to the upper body and the lower body; and (e) the search window by fitting an ellipse model around an inlier excluding outliers corresponding to false information using the final feature point of the target object being tracked by the object tracking system. Including; controlling the expansion of.

일 실시예에 따른 객체 추적 방법에서, 코너 특징점을 추출하는 상기 (b) 단계는, (b1) 상기 목표 객체의 인체 비율 모델을 이용하여 상기 탐색 윈도우 내부에 설정된 상기 목표 객체를 상체 및 하체로 분할하는 단계; 및 (b2) 분할된 상기 상체 및 상기 하체 각각의 영역에 대해 코너 검출 윈도우의 이동에 따른 영상 변화량(sum of squared difference, SSD)이 지역적으로 극대가 되는 지점을 찾기 위해 코너 응답 함수(corner response function, CRF)를 이용하여 코너 특징점을 추출하는 단계;를 포함할 수 있다. In the object tracking method according to an embodiment, the step (b) of extracting corner feature points includes: (b1) dividing the target object set in the search window into an upper body and a lower body using the human body proportion model of the target object to do; and (b2) a corner response function to find a point where the sum of squared difference (SSD) according to the movement of the corner detection window for each of the divided regions of the upper body and the lower body is locally maximized. , CRF) to extract the corner feature points; may include.

또한, 코너 특징점을 추출하는 상기 (b2) 단계는, 2차원 영상의 픽셀에서 각각의 축 방향의 편미분 값과 코너 검출 윈도우 함수의 곱을 이용해 행렬식을 산출하고, 산출된 상기 행렬식으로부터 행렬의 대각합의 차이를 이용하는 코너 응답 함수를 모든 픽셀에 대해 산출하며, 산출된 상기 코너 응답 함수의 값이 미리 설정된 임계치 이상인 것을 코너 특징점으로 선택할 수 있다.In addition, in the step (b2) of extracting the corner feature points, a determinant is calculated using a product of a partial differential value in each axial direction and a corner detection window function in a pixel of a two-dimensional image, and the difference between the diagonal sum of the matrix from the calculated determinant A corner response function using ? is calculated for all pixels, and a value of the calculated corner response function equal to or greater than a preset threshold may be selected as a corner feature point.

일 실시예에 따른 객체 추적 방법에서, 최종 특징점을 결정하는 상기 (c) 단계는, (c1) 상기 상체 및 상기 하체로부터 각각 컬러 히스토그램을 지속적으로 추출하는 단계; 및 (c2) 추출된 컬러 히스토그램의 픽셀과 상기 코너 특징점을 비교하여 공통된 좌표만을 남기고 상기 목표 객체 주변에 위치한 배경에서 선택된 코너 특징점을 제거함으로써 최종 특징점으로 결정하는 단계;를 포함할 수 있다.In the object tracking method according to an embodiment, the step (c) of determining the final feature point includes: (c1) continuously extracting a color histogram from the upper body and the lower body; and (c2) determining the final feature point by comparing the extracted color histogram pixel with the corner feature point, leaving only common coordinates, and removing the selected corner feature point from the background located around the target object.

일 실시예에 따른 객체 추적 방법에서, 탐색 윈도우의 확장을 제어하는 상기 (e) 단계는, (e1) 상기 상체 및 상기 하체 각각에 대해 색상의 밀도 중심을 추적하던 중, 상기 목표 객체와 유사한 색상의 배경 또는 다른 객체와의 겹침(overlap)으로 인해 상기 탐색 윈도우가 확장되는지 여부를 지속적으로 검출하는 단계: (e2) 상기 목표 객체의 최종 특징점을 거짓 정보에 해당하는 아웃라이어와 데이터의 분포가 일관된 인라이어로 구분하는 단계; 및 (e3) 상기 탐색 윈도우가 확장되려 할 경우, 구분된 상기 인라이어에 기반하여 타원 모델을 피팅하여 상기 탐색 윈도우의 확장을 제어하는 단계;를 포함할 수 있다.In the object tracking method according to an embodiment, the step (e) of controlling the expansion of the search window includes: (e1) a color similar to the target object while tracking the density center of the color for each of the upper body and the lower body Continuously detecting whether the search window is extended due to overlap with the background or other objects of the Separating with inliers; and (e3) controlling the expansion of the search window by fitting an ellipse model based on the divided inlier when the search window is to be expanded.

일 실시예에 따른 객체 추적 방법에서, 탐색 윈도우의 확장을 제어하는 상기 (e) 단계는, (e4) 상기 목표 객체의 최종 특징점을 후보 인라이어로 설정하고 후보 인라이어 중 미리 설정된 개수의 샘플을 이용하여 타원 모델을 생성하는 단계; (e5) 상기 최종 특징점 및 생성된 상기 타원 모델을 고려하여 미리 설정된 종료 조건 또는 반복 횟수에 도달하였는지 여부를 검사하는 단계; 및 (e6) 종료 조건 또는 반복 횟수에 도달하지 못한 경우 상기 (e4) 단계 및 상기 (e5) 단계를 반복하여 수행하고, 종료 조건 또는 반복 횟수에 도달한 경우 생성된 상기 타원 모델에 기초하여 상기 탐색 윈도우의 확장을 제어하는 단계;를 포함할 수 있다. 또한, 탐색 윈도우의 확장을 제어하는 상기 (e6) 단계는, 생성된 상기 타원 모델들 중에서 기존의 탐색 윈도우와 동일 또는 유사한 각도를 갖는 타원 모델을 새로운 탐색 윈도우로 설정할 수 있다.In the object tracking method according to an embodiment, the step (e) of controlling the expansion of the search window includes (e4) setting the final feature point of the target object as a candidate inlier and selecting a preset number of samples from among the candidate inliers. generating an elliptic model by using; (e5) examining whether a preset termination condition or number of repetitions is reached in consideration of the final feature point and the generated elliptic model; and (e6) repeating steps (e4) and (e5) when the end condition or the number of iterations is not reached, and when the end condition or the number of iterations is reached, the search is performed based on the generated ellipse model It may include; controlling the extension of the window. Also, in the step (e6) of controlling the expansion of the search window, an elliptic model having the same or similar angle to the existing search window among the generated elliptic models may be set as a new search window.

한편, 이하에서는 상기 기재된 객체 추적 방법을 컴퓨터에서 실행시키기 위하여 매체에 저장된 컴퓨터 프로그램을 제공한다.On the other hand, below, a computer program stored in a medium for executing the above-described object tracking method in a computer is provided.

상기 기술적 과제를 해결하기 위하여, 본 발명의 일 실시예에 따른 객체 추적 시스템은, 적어도 하나 이상의 객체와 배경을 포함하는 영상을 입력받는 입력부; 입력된 영상 내의 목표 객체를 추적하는 객체 추적 프로그램을 저장하는 메모리; 및 상기 객체 추적 프로그램을 구동하는 프로세서;를 포함하고, 상기 메모리에 저장된 객체 추적 프로그램은, 입력된 영상으로부터 추적하고자 하는 목표 객체에 대해 탐색 윈도우(search window)를 설정하고, 상기 탐색 윈도우 내부에 설정된 상기 목표 객체를 상체 및 하체로 분할하고 각각 코너(corner) 특징점을 추출하고, 상기 상체 및 상기 하체로부터 각각 추출된 컬러 히스토그램(color histogram)의 픽셀(pixel)과 상기 코너 특징점을 비교하여 상기 목표 객체의 최종 특징점을 결정하고, 상기 상체 및 상기 하체에 대해 각각 객체의 크기 변화에 따라 적응적으로 탐색 윈도우의 크기를 조절하면서 색상의 밀도 중심을 추적하며, 추적 중인 목표 객체의 최종 특징점을 이용하여 거짓 정보에 해당하는 아웃라이어(outlier)를 배제한 인라이어(inlier)를 중심으로 타원 모델을 피팅(fitting)함으로써 상기 탐색 윈도우의 확장을 제어하는 명령어를 포함한다.In order to solve the above technical problem, an object tracking system according to an embodiment of the present invention includes: an input unit for receiving an image including at least one object and a background; a memory for storing an object tracking program for tracking a target object in an input image; and a processor for driving the object tracking program, wherein the object tracking program stored in the memory sets a search window for a target object to be tracked from an input image, and sets the search window inside the search window. The target object is divided into an upper body and a lower body, corner feature points are extracted, respectively, and pixels of a color histogram extracted from the upper body and the lower body are compared with the corner feature points to compare the target object determines the final feature point of , and tracks the density center of color while adaptively adjusting the size of the search window according to the change in the size of the object for the upper body and the lower body, and using the final feature point of the target object being tracked and a command for controlling the expansion of the search window by fitting an elliptic model around an inlier excluding outliers corresponding to information.

일 실시예에 따른 객체 추적 시스템에서, 상기 메모리에 저장된 객체 추적 프로그램은, 상기 목표 객체의 인체 비율 모델을 이용하여 상기 탐색 윈도우 내부에 설정된 상기 목표 객체를 상체 및 하체로 분할하고, 분할된 상기 상체 및 상기 하체 각각의 영역에 대해 코너 검출 윈도우의 이동에 따른 영상 변화량(sum of squared difference, SSD)이 지역적으로 극대가 되는 지점을 찾기 위해 코너 응답 함수(corner response function, CRF)를 이용하여 코너 특징점을 추출할 수 있다.In the object tracking system according to an embodiment, the object tracking program stored in the memory divides the target object set in the search window into an upper body and a lower body using a human body proportion model of the target object, and divides the divided upper body and a corner feature point using a corner response function (CRF) to find a point where the sum of squared difference (SSD) according to the movement of the corner detection window for each region of the lower body is locally maximized. can be extracted.

또한, 일 실시예에 따른 객체 추적 시스템에서, 상기 메모리에 저장된 객체 추적 프로그램은, 2차원 영상의 픽셀에서 각각의 축 방향의 편미분 값과 코너 검출 윈도우 함수의 곱을 이용해 행렬식을 산출하고, 산출된 상기 행렬식으로부터 행렬의 대각합의 차이를 이용하는 코너 응답 함수를 모든 픽셀에 대해 산출하며, 산출된 상기 코너 응답 함수의 값이 미리 설정된 임계치 이상인 것을 코너 특징점으로 선택할 수 있다.In addition, in the object tracking system according to an embodiment, the object tracking program stored in the memory calculates a determinant by using a product of a partial differential value in each axial direction and a corner detection window function in a pixel of a two-dimensional image, and the calculated A corner response function using the difference of the diagonal sum of the matrix from the determinant is calculated for all pixels, and a value of the calculated corner response function equal to or greater than a preset threshold may be selected as a corner feature point.

일 실시예에 따른 객체 추적 시스템에서, 상기 메모리에 저장된 객체 추적 프로그램은, 상기 상체 및 상기 하체로부터 각각 컬러 히스토그램을 지속적으로 추출하고, 추출된 컬러 히스토그램의 픽셀과 상기 코너 특징점을 비교하여 공통된 좌표만을 남기고 상기 목표 객체 주변에 위치한 배경에서 선택된 코너 특징점을 제거함으로써 최종 특징점으로 결정할 수 있다.In the object tracking system according to an embodiment, the object tracking program stored in the memory continuously extracts color histograms from the upper body and the lower body, respectively, and compares the pixels of the extracted color histogram with the corner feature points to obtain only common coordinates The final feature point may be determined by removing the selected corner feature point from the background located around the target object.

일 실시예에 따른 객체 추적 시스템에서, 상기 메모리에 저장된 객체 추적 프로그램은, 상기 상체 및 상기 하체 각각에 대해 색상의 밀도 중심을 추적하던 중, 상기 목표 객체와 유사한 색상의 배경 또는 다른 객체와의 겹침(overlap)으로 인해 상기 탐색 윈도우가 확장되는지 여부를 지속적으로 검출하고, 상기 목표 객체의 최종 특징점을 거짓 정보에 해당하는 아웃라이어와 데이터의 분포가 일관된 인라이어로 구분하며, 상기 탐색 윈도우가 확장되려 할 경우, 구분된 상기 인라이어에 기반하여 타원 모델을 피팅하여 상기 탐색 윈도우의 확장을 제어할 수 있다.In the object tracking system according to an embodiment, the object tracking program stored in the memory overlaps with a background or other object of a color similar to the target object while tracking the center of color density for each of the upper body and the lower body It is continuously detected whether the search window is expanded due to overlap, and the final feature point of the target object is divided into an outlier corresponding to false information and an inlier having a consistent data distribution, and the search window is to be expanded. In this case, the extension of the search window may be controlled by fitting an elliptic model based on the divided inlier.

일 실시예에 따른 객체 추적 시스템에서, 상기 메모리에 저장된 객체 추적 프로그램은, 상기 목표 객체의 최종 특징점을 후보 인라이어로 설정하고 후보 인라이어 중 미리 설정된 개수의 샘플을 이용하여 타원 모델을 생성하고, 상기 최종 특징점 및 생성된 상기 타원 모델을 고려하여 미리 설정된 종료 조건 또는 반복 횟수에 도달하였는지 여부를 검사하며, 종료 조건 또는 반복 횟수에 도달하지 못한 경우 상기 타원 모델 생성 과정 및 상기 검사 과정을 반복하여 수행하고, 종료 조건 또는 반복 횟수에 도달한 경우 생성된 상기 타원 모델에 기초하여 상기 탐색 윈도우의 확장을 제어할 수 있다.In the object tracking system according to an embodiment, the object tracking program stored in the memory sets the final feature point of the target object as a candidate inlier and generates an ellipse model using a preset number of samples among the candidate inliers, In consideration of the final feature point and the generated elliptic model, it is checked whether a preset end condition or number of iterations is reached, and if the end condition or number of iterations is not reached, the elliptic model creation process and the inspection process are repeated and performed and, when the end condition or the number of iterations is reached, the expansion of the search window may be controlled based on the generated ellipse model.

또한, 일 실시예에 따른 객체 추적 시스템에서, 상기 메모리에 저장된 객체 추적 프로그램은, 생성된 상기 타원 모델들 중에서 기존의 탐색 윈도우와 동일 또는 유사한 각도를 갖는 타원 모델을 새로운 탐색 윈도우로 설정함으로써, 상기 탐색 윈도우의 확장을 제어할 수 있다.In addition, in the object tracking system according to an embodiment, the object tracking program stored in the memory sets, as a new search window, an ellipse model having the same or similar angle to an existing search window among the generated elliptic models, You can control the expansion of the navigation window.

본 발명의 실시예들은, 입력 영상으로부터 특징점을 추출함에 있어서 탐색 윈도우 내부에서 상체와 하체를 분리하고 컬러 히스토그램을 이용하여 탐색 윈도우 내의 주된 색상을 목표 객체로 판단함으로써 배경의 불필요한 코너 특징점을 효과적으로 배제할 수 있고, 최종 특징점의 추적시 인라이어를 중심으로 타원 피팅을 수행함으로써 탐색 윈도우의 확장을 제어함으로써 동적 영상에서의 목표 객체를 빠르고 지속적으로 추적할 수 있다.In the embodiments of the present invention, when extracting feature points from an input image, unnecessary corner feature points of the background are effectively excluded by separating the upper body and lower body within the search window and determining the main color in the search window as the target object using a color histogram. It is possible to quickly and continuously track the target object in the dynamic image by controlling the expansion of the search window by performing elliptic fitting based on the inlier when tracking the final feature point.

도 1은 본 발명의 일 실시예에 따른 탐색 윈도우의 확장 제어를 통한 객체 추적 방법을 도시한 흐름도이다.
도 2는 목표 객체에 탐색 윈도우를 설정한 영상을 예시한 도면이다.
도 3은 상체 및 하체 분할을 위한 인체 비율 모델을 설명하기 위한 도면이다.
도 4는 코너 특징점으로부터 최종 특징점을 판별하는 과정을 설명하기 위한 예시도이다.
도 5는 객체의 겹침에 따라 나타나는 탐색 윈도우의 확장을 설명하기 위한 도면이다.
도 6은 본 발명의 일 실시예에 따른 도 1의 객체 추적 방법에서 탐색 윈도우의 확장을 제어하는 과정을 보다 구체적으로 도시한 흐름도이다.
도 7은 타원 모델을 이용하여 후보 인라이어로부터 새로운 탐색 윈도우를 설정하는 과정을 설명하기 위한 도면이다.
도 8은 본 발명의 실시예들이 제안하는 객체 추적 방법에 따른 시스템 구현예를 도시한 흐름도이다.
도 9는 본 발명의 일 실시예에 따른 탐색 윈도우의 확장 제어를 통한 객체 추적 시스템을 도시한 블록도이다.
도 10은 본 발명의 실시예들이 제안하는 객체 추적 시스템에서 탐색 윈도우의 확장을 제어하는 과정을 실험적으로 예시한 도면이다.
도 11은 탐색 윈도우의 확장 제어에 따른 효과에 관한 비교 실험 결과이다.
1 is a flowchart illustrating an object tracking method through extended control of a search window according to an embodiment of the present invention.
2 is a diagram illustrating an image in which a search window is set on a target object.
3 is a view for explaining a human body proportion model for dividing an upper body and a lower body.
4 is an exemplary diagram for explaining a process of determining a final feature point from a corner feature point.
5 is a diagram for explaining the expansion of a search window that appears according to overlapping objects.
6 is a flowchart illustrating in more detail a process of controlling the expansion of a search window in the object tracking method of FIG. 1 according to an embodiment of the present invention.
7 is a diagram for explaining a process of setting a new search window from a candidate inlier using an ellipse model.
8 is a flowchart illustrating a system implementation example according to the object tracking method proposed by the embodiments of the present invention.
9 is a block diagram illustrating an object tracking system through extended control of a search window according to an embodiment of the present invention.
10 is a diagram experimentally illustrating a process of controlling the expansion of a search window in the object tracking system proposed by the embodiments of the present invention.
11 is a result of a comparative experiment with respect to the effect of the extended control of the search window.

본 발명의 실시예들을 설명하기에 앞서, 이동 객체를 추적하기 위해 활용되는 기술들에서 발생하는 문제점들을 개괄적으로 살펴보고, 이들 문제점을 해결하기 위해 본 발명의 실시예들이 채택하고 있는 기술적 수단을 순차적으로 소개하도록 한다.Prior to describing the embodiments of the present invention, problems occurring in techniques used to track a moving object are overviewed, and technical means adopted by embodiments of the present invention to solve these problems are sequentially described. to be introduced as

앞서, 동적 카메라 영상에서 GMM과 연산량이 많은 SIFT 알고리즘은 사용에 적절하지 않음을 지적하였다. 따라서, 이러한 약점을 보완할 수 있는 단서를 CAM-shift 알고리즘을 참고하여 살펴보기로 한다.Previously, it was pointed out that GMM and SIFT algorithm, which requires a lot of computation, are not suitable for use in dynamic camera images. Therefore, we will look at clues that can compensate for these weaknesses by referring to the CAM-shift algorithm.

CAM-shift(Continuously Adaptive Mean-shift) 알고리즘은 Mean-shift 알고리즘과 같이 색상의 밀도 중심을 추적하는 알고리즘이다. Mean-shift의 단점인 탐색 윈도우의 스케일(Scale) 불변으로 인해 객체의 크기가 축소되거나 확장하게 되면 추적 대상의 색상이 차지하는 비율이 달라져 추적하고자 하는 대상이 아닌 배경이나 다른 이동 객체를 추적하는 문제점을 개선하기 위해 CAM-shift 알고리즘이 개발되었다. CAM-shift 알고리즘은 추적하는 객체의 크기 변화에 따라 탐색 윈도우의 크기를 조절하여 지속적으로 추적할 수 있게 개선된 알고리즘이다.The CAM-shift (Continuously Adaptive Mean-shift) algorithm, like the Mean-shift algorithm, tracks the center of color density. If the size of the object is reduced or expanded due to the invariance of the scale of the navigation window, which is a disadvantage of Mean-shift, the ratio of the color of the tracking target changes, so the problem of tracking a background or other moving object other than the target to be tracked is eliminated. To improve, the CAM-shift algorithm was developed. The CAM-shift algorithm is an improved algorithm that enables continuous tracking by adjusting the size of the search window according to the change in the size of the object being tracked.

영상에서 추적하고자 하는 객체를 탐색 윈도우로 지정하고 탐색 윈도우 내에서 x,y의 픽셀 위치 확률 값을 I(x,y)라 하면 초기 모멘트(zeroth moment)는 다음의 수학식 1을 통해 구할 수 있다.If an object to be tracked in the image is designated as a search window and the pixel position probability value of x,y within the search window is I(x,y), the initial moment (zeroth moment) can be obtained through Equation 1 below. .

Figure 112019123244099-pat00001
Figure 112019123244099-pat00001

수학식 1의 M00는 초기 모멘트이다. 그 다음 x,y의 첫 번째 모멘트는 수학식 2로 찾을 수 있다. M 00 in Equation 1 is the initial moment. Then, the first moment of x,y can be found by Equation (2).

Figure 112019123244099-pat00002
Figure 112019123244099-pat00002

탐색 윈도우의 중심 xc,yc의 위치는 수학식 3을 통하여 구할 수 있다.The position of the center x c , y c of the search window can be obtained through Equation (3).

Figure 112019123244099-pat00003
Figure 112019123244099-pat00003

Mean-shift의 출력 결과는 CAM-shift의 입력 결과로 사용이 된다. 다음 수학식 4를 이용하여 두 번째 모멘트를 구할 수 있다.The output result of Mean-shift is used as the input result of CAM-shift. The second moment can be obtained using Equation 4 below.

Figure 112019123244099-pat00004
Figure 112019123244099-pat00004

탐색 윈도우의 너비(l)와 길이(h)를 구하기 위해서 너비와 길이 식의 구성 요소를 첫 번째 모멘트, 탐색 윈도우 중심 xc,yc 값과 두 번째 모멘트를 이용하여 수학식 5, 6, 7을 통해 구할 수 있다.In order to obtain the width (l) and length (h) of the search window, the components of the width and length expressions are calculated using the first moment, the center of the search window x c ,y c values, and the second moment in Equations 5, 6, 7 can be obtained through

Figure 112019123244099-pat00005
Figure 112019123244099-pat00005

Figure 112019123244099-pat00006
Figure 112019123244099-pat00006

Figure 112019123244099-pat00007
Figure 112019123244099-pat00007

수학식 5, 6, 7을 이용하여 탐색 윈도우의 너비와 길이를 구하는 식은 수학식 8, 9와 같다.Equations for calculating the width and length of the search window using Equations 5, 6, and 7 are the same as Equations 8 and 9.

Figure 112019123244099-pat00008
Figure 112019123244099-pat00008

Figure 112019123244099-pat00009
Figure 112019123244099-pat00009

수학식 8에서 l은 너비이고 수학식 9의 h는 길이를 나타낸다. 따라서, 수학식 8, 9를 이용하여 탐색 윈도우의 너비와 길이를 구할 수 있다.In Equation 8, l represents a width, and h in Equation 9 represents a length. Therefore, the width and length of the search window can be obtained using Equations 8 and 9.

그러나, 이러한 종래의 CAM-shift의 문제점은 색상 밀도 중심을 추적하는 것으로 인해 유사한 색상의 배경이나 다른 이동 객체와 겹침이 발생 시 또는 탐색 윈도우 지정 시 다중 색상이 탐색 윈도우 내부에 있을 경우 탐색 윈도우가 확장하여 추적하고자 하는 객체를 정확히 추적할 수 없는 문제점이 발견되었다.However, the problem of this conventional CAM-shift is that the search window is expanded when multiple colors are inside the search window when overlapping with a background or other moving object of a similar color occurs due to tracking the color density center or when specifying the search window. Therefore, a problem was found that the object to be tracked could not be accurately tracked.

따라서, 이하에서 기술되는 본 발명의 실시예들은 이러한 문제점 인식에서 안출된 것으로, 이동하는 목표 객체를 추적하는 탐색 윈도우의 확장 제어를 통해 강인한 객체 추적을 달성할 수 있는 탐색 윈도우 설정 기술을 제안하고자 한다. 특히, 객체 또는 배경과의 겹침이 발생하는 경우 탐색 윈도우가 확장되는 것을 적절히 제어할 수 있는 기술적 수단을 제공하고자 한다.Accordingly, the embodiments of the present invention described below are devised in recognition of such a problem, and it is intended to propose a technology for setting a search window that can achieve robust object tracking through extended control of a search window for tracking a moving target object. . In particular, it is intended to provide a technical means for appropriately controlling the expansion of the search window when overlapping with an object or background occurs.

이하에서는 도면을 참조하여 본 발명의 실시예들을 구체적으로 설명하도록 한다. 다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 덧붙여, 명세서 전체에서, 어떤 구성 요소를 '포함'한다는 것은, 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라, 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings. However, detailed descriptions of well-known functions or configurations that may obscure the gist of the present invention in the following description and accompanying drawings will be omitted. In addition, throughout the specification, 'including' a certain component does not exclude other components unless otherwise stated, but means that other components may be further included.

본 발명에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 설시된 특징, 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부분품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the present invention are only used to describe specific embodiments, and are not intended to limit the present invention. The singular expression includes the plural expression unless the context clearly dictates otherwise. In the present application, terms such as "comprise" or "have" are intended to designate that the described feature, number, step, operation, component, part, or a combination thereof exists, but one or more other features or numbers , it is to be understood that it does not preclude the possibility of the existence or addition of steps, operations, components, parts, or combinations thereof.

특별히 다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미이다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥상 가지는 의미와 일치하는 의미인 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless specifically defined otherwise, all terms used herein, including technical and scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which this invention belongs. Terms such as those defined in commonly used dictionaries should be interpreted as meanings consistent with the context of the related art, and unless explicitly defined in the present application, they are not to be interpreted in an ideal or excessively formal meaning. .

도 1은 본 발명의 일 실시예에 따른 탐색 윈도우의 확장 제어를 통한 객체 추적 방법을 도시한 흐름도이다. 구현의 관점에서, 이하에서 기술되는 일련의 과정은 이들 연산을 수행하는 명령어를 포함하는 객체 추적 프로그램으로 구현될 수 있으며, 메모리에 적재(load)되어 적어도 하나의 프로세서를 포함하는 객체 추적 시스템에서 구동될 수 있다.1 is a flowchart illustrating an object tracking method through extended control of a search window according to an embodiment of the present invention. In terms of implementation, a series of processes described below may be implemented as an object tracking program including instructions for performing these operations, loaded into a memory and driven in an object tracking system including at least one processor can be

S110 단계에서, 객체 추적 시스템은 적어도 하나 이상의 객체와 배경을 포함하는 영상을 입력받아 추적하고자 하는 목표 객체에 대해 탐색 윈도우(search window)를 설정한다. 이를 위해, 입력된 RGB(Red-Green-Blue) 영상에서 추적하고자 하는 특정 객체를 탐색 윈도우로 사용자가 직접 지정하여 추적하고자 하는 객체를 선택할 수도 있고, 특정 객체에서 나타나는 기하학적 특징 내지 색상에 관한 특징을 활용하여 대상 객체를 지정할 수도 있을 것이다. 만약 목표 객체가 사람인 경우 머리를 제외하고 탐색 윈도우를 설정하는 것이 바람직하다.In step S110, the object tracking system receives an image including at least one or more objects and a background and sets a search window for a target object to be tracked. To this end, the user can select the object to be tracked by directly designating a specific object to be tracked from the input RGB (Red-Green-Blue) image as a search window, and geometrical or color characteristics appearing in the specific object can be checked. It may be used to designate the target object. If the target object is a human, it is preferable to set the search window except for the head.

CAM-shift의 문제점인 추적하고자 하는 객체의 색상이 다중 색상일 경우 지속적으로 추적에 어려움이 있고, 유사한 색상의 배경 및 다른 이동 객체와 겹침 발생으로 인한 탐색 윈도우 확장을 제어하기 위해 CAM-shift를 입력 영상에 바로 적용하지 않고 전처리 단계를 거친다. 우선 입력 영상에서 추적하고자 하는 객체를 지정하기 위해 추적하고자 하는 객체를 지정한다.If the color of the object to be tracked is multi-colored, which is a problem with CAM-shift, it is difficult to continuously track, and CAM-shift is input to control the expansion of the search window due to overlapping with backgrounds of similar colors and other moving objects. It goes through a pre-processing step instead of directly applying it to the image. First, in order to designate an object to be tracked in an input image, an object to be tracked is designated.

목표 객체에 탐색 윈도우를 설정한 영상을 예시한 도 2를 참조하면, (A)는 입력 영상 원본이고, (B)는 탐색 윈도우가 지정된 결과를 나타낸다. 도 2의 (B)에서는 인체를 보다 세분화하여 각각 다른 객체로 인식할 수 있는데. 이에 관하여는 다음의 S120 단계를 통해 설명하도록 한다.Referring to FIG. 2 illustrating an image in which a search window is set in a target object, (A) is an input image original, and (B) is a result in which the search window is specified. In (B) of FIG. 2, the human body can be further subdivided and recognized as different objects. This will be described through the following step S120.

S120 단계에서, 상기 객체 추적 시스템은 상기 탐색 윈도우 내부에 설정된 상기 목표 객체를 상체 및 하체로 분할하고 각각 코너(corner) 특징점을 추출한다. 탐색 윈도우의 지정 후, 추적하고자 하는 객체의 상체와 하체의 색상이 다를 경우를 위해 인체 비율 모델을 사용하여 탐색 윈도우 내부를 상체와 하체로 분할할 수 있다. 즉, 다중 색상을 추적하기 위해 선택된 탐색 윈도우 내부에서 인체 비율 모델을 통하여 상체와 하체 부분을 나누고 상체와 하체 각각 코너 특징점을 추출할 수 있다.In step S120, the object tracking system divides the target object set in the search window into an upper body and a lower body, and extracts corner feature points, respectively. After the search window is designated, the inside of the search window may be divided into upper and lower body by using the human body ratio model in case the color of the upper body and lower body of the object to be tracked is different. That is, in the search window selected to track multiple colors, upper and lower body parts are divided through the human body proportion model, and corner feature points of the upper and lower body can be extracted.

도 3은 상체 및 하체 분할을 위한 인체 비율 모델을 설명하기 위한 도면으로, 사람의 신장을 H라고 하였을 때 머리의 길이를 기준으로 7~8등분으로 나눌 수 있다. 본 발명의 실시예들에서는 인체를 7등분이라고 가정하고 상체와 하체를 나누었다. 상체를 전체 신장의 2/7으로 할당할 수 있고 하체는 4/7로 할당할 수 있다. 상체와 하체를 분할하는 식은 앞서 기술하였던 수학식 8의 l을 이용하여 구할 수 있으며, 상체와 하체를 나누는 식은 수학식 10과 같다. 3 is a diagram for explaining a human body proportion model for dividing the upper body and lower body, and when a person's height is H, it can be divided into 7 to 8 equal parts based on the length of the head. In the embodiments of the present invention, it is assumed that the human body is divided into seven equal parts, and the upper body and lower body are divided. The upper body can be assigned 2/7 of the total height and the lower body can be assigned 4/7. The equation for dividing the upper body and the lower body can be obtained using l of Equation 8 described above, and the equation for dividing the upper body and lower body is the same as Equation 10.

Figure 112019123244099-pat00010
Figure 112019123244099-pat00010

수학식 10의 Upper는 상체를 의미하고, Lower는 하체를 의미한다. 탐색 윈도우는 머리 부분을 포함하지 않으므로 탐색 윈도우의 길이인 l을 전체를 6등분으로 나누고 인체 비율 모델을 이용하여 상체 부분을 구할 수 있다. 하체는 탐색 윈도우의 전체 길이 l에서 상체 부분인 Upper 값을 빼주어 하체 부분만 구한다.In Equation 10, Upper means the upper body, and Lower means the lower body. Since the search window does not include the head, the entire length l of the search window is divided into 6 equal parts, and the upper body can be obtained using the human body proportion model. For the lower body, only the lower body is obtained by subtracting the Upper value, which is the upper body, from the total length l of the search window.

요약하건대, 목표 객체의 인체 비율 모델을 이용하여 탐색 윈도우 내부에 설정된 목표 객체를 상체 및 하체로 분할하되, 머리를 제외하고 설정된 탐색 윈도우의 전체 높이에 대해 미리 설정된 인체 비율 모델의 분할 비율에 따라 상체에 대응하는 탐색 윈도우의 높이를 결정하고, 상기 탐색 윈도우의 전체 높이로부터 상기 상체에 대응하는 탐색 윈도우의 높이를 감산함으로써 하체에 대응하는 탐색 윈도우의 높이를 결정하며, 결정된 상기 상체 및 상기 하체의 높이에 따라 상체 및 하체를 분할할 수 있다.In summary, the target object set inside the search window is divided into the upper body and lower body using the human body proportion model of the target object, but the upper body according to the division ratio of the preset human body proportion model for the entire height of the set search window excluding the head The height of the search window corresponding to The upper body and lower body can be divided accordingly.

이제, 분할된 상기 상체 및 상기 하체 각각의 영역에 대해 코너 검출 윈도우의 이동에 따른 영상 변화량(sum of squared difference, SSD)이 지역적으로 극대가 되는 지점을 찾기 위해 코너 응답 함수(corner response function, CRF)를 이용하여 코너 특징점을 추출한다.Now, in order to find a point where the sum of squared difference (SSD) according to the movement of the corner detection window for each of the divided regions of the upper body and the lower body is locally maximized, a corner response function (CRF) ) to extract corner feature points.

상체와 하체를 나눈 탐색 윈도우 내부에서 배경과 추적 객체를 분리하기 위해 추적 객체만의 특징점이 필요하다. 이 특징점은 탐색 윈도우 확장 제어에 사용된다. 특징점 추출은, 예를 들어, 해리스 코너(Harris Corner) 알고리즘을 활용할 수 있다. 우선 상체와 하체 각각 해리스 코너 특징점을 추출한다. 해리스 코너 특징점을 추출하는 식은 수학식 11, 12와 같다.In order to separate the background and the tracking object in the navigation window that divides the upper and lower body, the characteristic point of the tracking object is needed. This feature point is used to control the extension of the search window. Feature point extraction may utilize, for example, a Harris Corner algorithm. First, Harris Corner feature points are extracted from the upper body and lower body respectively. Equations for extracting the Harris Corner feature point are the same as in Equations 11 and 12.

Figure 112019123244099-pat00011
Figure 112019123244099-pat00011

수학식 11에서 Ix,Iy는 이미지 픽셀 (x,y)에서 x방향, y방향의 편미분 값이고, ω(x,y)는 윈도우 함수이며 직사각형 커널 및 가우시안 커널이 사용된다. 행렬식 M의 고유값(Eigen Value)를 λ12라 하면 코너 검출식은 수학식 12와 같다.In Equation 11, I x ,I y is a partial differential value in the x-direction and y-direction in the image pixel (x,y), ω(x,y) is a window function, and a rectangular kernel and a Gaussian kernel are used. If the Eigen Value of the determinant M is λ 1 , λ 2 , the corner detection equation is the same as Equation 12.

Figure 112019123244099-pat00012
Figure 112019123244099-pat00012

여기서, det(M) = λ1λ2를 의미하고, trace(M) = λ1 + λ2이다. R의 수식의 결과 값은 R > 0: corner, R < 0: edge,

Figure 112019123244099-pat00013
값이 매우 작은 값이면 평면을 의미한다. 본 발명의 실시예에서는 R > 0 값인 코너를 추출하였다.Here, det(M) = λ 1 λ 2 , and trace(M) = λ 1 + λ 2 . The resulting value of the formula in R is R > 0: corner, R < 0: edge,
Figure 112019123244099-pat00013
A very small value means flat. In an embodiment of the present invention, a corner with a value of R > 0 was extracted.

요약하건대, 2차원 영상의 픽셀에서 각각의 축 방향의 편미분 값과 코너 검출 윈도우 함수의 곱을 이용해 행렬식을 산출하고, 산출된 상기 행렬식으로부터 행렬의 대각합의 차이를 이용하는 코너 응답 함수를 모든 픽셀에 대해 산출하며, 산출된 상기 코너 응답 함수의 값이 미리 설정된 임계치 이상인 것을 코너 특징점으로 선택할 수 있다.In summary, a determinant is calculated using the product of a corner detection window function and a partial differential value in each axial direction in a pixel of a 2D image, and a corner response function using the difference of the diagonal sum of the matrix from the calculated determinant is calculated for all pixels and a value of the calculated corner response function greater than or equal to a preset threshold may be selected as a corner feature point.

그러나, 코너 특징점을 추출하면 추적하고자 하는 객체의 특징점뿐만 아니라 추적 객체 주변 배경의 코너점도 같이 추출되어 특징점으로서의 신뢰성이 떨어진다. 본 발명의 실시예들에서는 다음의 S130 단계를 통해 이를 보완하는 기술적 수단을 마련하였다.However, when a corner feature point is extracted, not only the feature point of the object to be tracked but also the corner point of the background around the tracking object are extracted, so that the reliability as a feature point is lowered. In the embodiments of the present invention, technical means to supplement this are provided through the following step S130.

S130 단계에서, 상기 객체 추적 시스템은 상기 상체 및 상기 하체로부터 각각 추출된 컬러 히스토그램(color histogram)의 픽셀(pixel)과 상기 코너 특징점을 비교하여 상기 목표 객체의 최종 특징점을 결정한다. 즉, 지속적으로 상체와 하체 각각의 컬러 히스토그램을 추출하여 코너점과 컬러 히스토그램의 픽셀을 비교하여 추적하고자 하는 추적 객체의 상체와 하체의 최종 특징점을 결정하도록 하였다.In step S130, the object tracking system determines the final feature point of the target object by comparing the corner feature points with pixels of color histograms extracted from the upper body and the lower body, respectively. That is, the color histograms of the upper and lower bodies were continuously extracted, and the corner points and pixels of the color histogram were compared to determine the final feature points of the upper and lower body of the tracking object to be tracked.

도 4는 코너 특징점으로부터 최종 특징점을 판별하는 과정을 설명하기 위한 예시도로서, 코너 특징점과 컬러 히스토그램의 픽셀 비교를 통한 추적 객체의 최종 특징점 판별을 나타내었다.4 is an exemplary view for explaining the process of determining the final feature point from the corner feature point, and shows the final feature point determination of the tracking object through pixel comparison of the corner feature point and the color histogram.

도 4의 (A)는 상체 탐색 윈도우 내부에서 코너점을 추출한 결과를 나타내고, 도 4의 (B)는 하체 탐색 윈도우 내부에서 코너점을 추출한 결과를 나타낸다. 이제, 도 4의 (C) 및 (D)는 상체와 하체에서 추출한 컬러 히스토그램과 코너 특징점의 픽셀을 비교하여 최종으로 얻은 특징점의 결과를 파란색과 초록색으로 표시한 결과를 나타낸다. 이와 같이, 앞서 상체 및 하체의 객체 영역을 넘어서 배경에 위치하는 부적절한 코너점이 제거되었음을 확인할 수 있다.Figure 4 (A) shows the result of extracting the corner point inside the upper body search window, and Figure 4 (B) shows the result of extracting the corner point inside the lower body search window. Now, (C) and (D) of Figs. 4 show the results of color histograms extracted from the upper body and the lower body and the result of the feature points finally obtained by comparing the pixels of the corner feature points in blue and green. As described above, it can be confirmed that inappropriate corner points located in the background beyond the object regions of the upper and lower body have been removed.

요약하건대, 상체 및 하체로부터 각각 컬러 히스토그램을 지속적으로 추출하고, 추출된 컬러 히스토그램의 픽셀과 코너 특징점을 비교하여 공통된 좌표만을 남기고 목표 객체 주변에 위치한 배경에서 선택된 코너 특징점을 제거함으로써 최종 특징점으로 결정할 수 있다.In summary, by continuously extracting each color histogram from the upper and lower body, comparing the pixels and corner feature points of the extracted color histogram, leaving only common coordinates and removing the selected corner feature points from the background located around the target object, it can be determined as the final feature point. have.

다시 도 1로 돌아와서, S140 단계에서, 상기 객체 추적 시스템은 상기 상체 및 상기 하체에 대해 각각 객체의 크기 변화에 따라 적응적으로 탐색 윈도우의 크기를 조절하면서 색상의 밀도 중심을 추적한다. 구현의 관점에서 상체와 하체 각각에 대해, 예를 들어, CAM-shift 알고리즘을 이용하여 색상 밀도 중심을 찾아 추적할 수 있다.Returning to FIG. 1 , in step S140 , the object tracking system tracks the center of color density while adaptively adjusting the size of the search window according to the change in the size of the object with respect to the upper body and the lower body, respectively. From an implementation point of view, for each of the upper and lower body, for example, a CAM-shift algorithm can be used to find and track the color density centroid.

다만, 앞서 지적한 바와 같이 CAM-shift 알고리즘에서는 색상의 밀도 중심을 추적하는 특성상 추적하고자 하는 객체와 유사한 색상의 배경 및 다른 이동 객체가 근접하는 경우 이로 인해 탐색 윈도우가 의도치 않게 확장되어 추적하고자 하는 객체를 정확하게 추적하기 어려워지는 문제점이 발견되었다. 이러한 문제를 방지하고자 탐색 윈도우에 대한 확장 제어가 필요하다.However, as pointed out earlier, in the CAM-shift algorithm, due to the nature of tracking the center of color density, if the background and other moving objects of a similar color to the object to be tracked are close to each other, the search window is unintentionally extended and the object to be tracked. A problem was found that made it difficult to track accurately. To prevent this problem, extended control of the search window is required.

우선, 본 발명의 실시예들이 제안하는 객체 추적 방법에서는 객체의 상체와 하체의 탐색 윈도우가 서로 겹침이 발생하는 경우 탐색 윈도우 확장이라고 판단하였다.First, in the object tracking method proposed by the embodiments of the present invention, when the search windows of the upper body and the lower body of the object overlap each other, it is determined that the search window is extended.

도 5는 객체의 겹침에 따라 나타나는 탐색 윈도우의 확장을 설명하기 위한 도면이다. 도 5의 (A)는 유사한 색상의 객체가 추적 객체와 겹쳐지기 전이기 때문에 상체와 하체의 탐색 윈도우가 확장되지 않아 상체 및 하체의 탐색 윈도우끼리 서로 겹침이 나타나지 않았으므로 탐색 윈도우 확장이 발생하지 않았다고 판단하였다. 이에 반해, 도 5의 (B)는 유사한 색상의 객체 간의 겹침이 발생하여 상체의 탐색 윈도우가 확장되어 하체 탐색 윈도우와 서로 겹침이 나타났으므로 탐색 윈도우 확장이라고 판단하였다.5 is a diagram for explaining the expansion of a search window that appears according to overlapping objects. 5(A) shows that the search window expansion did not occur because the search windows of the upper and lower body did not overlap each other because the search window of the upper and lower body did not expand because the object of a similar color was overlapped with the tracking object. judged. In contrast, in (B) of FIG. 5 , the search window of the upper body was expanded due to overlap between objects of similar color, and overlapped with the search window of the lower body, so it was determined that the search window was extended.

따라서, 본 발명의 실시예들에서는 다음의 S150 단계를 통해 이러한 탐색 윈도우 확장을 제어하는 또 다른 기술적 수단을 제안하였다.Accordingly, in the embodiments of the present invention, another technical means for controlling the search window extension through the following step S150 is proposed.

S150 단계에서, 상기 객체 추적 시스템은 추적 중인 목표 객체의 최종 특징점을 이용하여 거짓 정보에 해당하는 아웃라이어(outlier)를 배제한 인라이어(inlier)를 중심으로 타원 모델을 피팅(fitting)함으로써 상기 탐색 윈도우의 확장을 제어한다. 다른 유사한 색상의 배경 및 이동 객체와 겹침이 발생했을 경우 탐색 윈도우의 확장을 제어하기 위해, 예를 들어, 모델 예측 알고리즘을 응용하여 추적 객체에 대한 최종 특징점을 입력 데이터로 사용하여 새로운 탐색 윈도우를 생성함으로써 탐색 윈도우의 확장을 지속적으로 제어하고 추적 객체만을 지속적으로 추적하게 구현할 수 있다.In step S150, the object tracking system uses the final feature point of the target object being tracked to fit an elliptic model around an inlier excluding outliers corresponding to false information, thereby making the search window control the expansion of To control the expansion of the search window when it overlaps with other similar colored backgrounds and moving objects, for example, a model prediction algorithm is applied to create a new search window using the final feature points for the tracking object as input data. By doing so, it can be implemented to continuously control the expansion of the search window and continuously track only the tracking object.

그러나, 모델 예측 알고리즘은 정확성이 중요한데 반해, 본 발명의 실시예들을 통해 측정된 원본 데이터(최종 특징점) 중에는 노이즈(Noise) 즉 거짓 정보(Outlier)가 포함되어 있다. 이러한 거짓 정보는 모델을 정확히 예측하는 것을 방해한다. 이러한 거짓 정보를 제거하기 위해 인라이어와 아웃라이어의 분류에 강한 알고리즘, 예를 들어, RANSAC(RANdom SAmple Consensus)을 사용할 수 있다. 일반적인 모델 예측 알고리즘은 많은 데이터를 사용하여 모델 예측율을 높인다. 하지만 RANSAC 알고리즘은 초기 데이터를 최소로 이용하고 일관된 데이터의 집합을 확장시켜 나아가면서 주어진 원본 데이터에서 반복적으로 일부를 임의로 선택하는 과정을 반복하여 최적의 모델을 예측하는 프로시져(Procedure) 형태를 가지는 알고리즘이다.However, while accuracy is important in the model prediction algorithm, noise, that is, outliers, is included in the original data (final feature points) measured through the embodiments of the present invention. This false information prevents the model from predicting accurately. In order to remove such false information, an algorithm strong in the classification of inliers and outliers, for example, RANdom SAmple Consensus (RANSAC) may be used. A typical model prediction algorithm uses a lot of data to increase the model prediction rate. However, the RANSAC algorithm is an algorithm that predicts the optimal model by repeating the process of randomly selecting a part from the given original data while using the minimum initial data and expanding the set of consistent data. .

추적 객체의 상체와 하체 탐색 윈도우에서 각각 구한 최종 특징점을 RANSAC의 데이터로 사용한다. 인라이어와 아웃라이어를 분류하고 지속적으로 인라이어를 중심으로 타원 피팅(Ellipse Fitting)을 하여 새로운 탐색 윈도우를 생성한다. 이를 통해, 객체들 간 또는 객체와 배경 간에 겹침이 발생하는 상황에서 탐색 윈도우의 확장을 제어하여 추적하고자 하는 객체를 지속적으로 추적할 수 있게 한다.The final feature points obtained from the upper and lower body search windows of the tracking object are used as RANSAC data. A new search window is created by classifying inliers and outliers and continuously performing ellipse fitting around the inliers. Through this, it is possible to continuously track an object to be tracked by controlling the expansion of the search window in a situation where an overlap occurs between objects or between an object and a background.

탐색 윈도우를 RANSAC 알고리즘을 통해 제어하기 위해 우선 타원을 모델링 하여야 한다. 타원 모델링은 수학식 13을 통해 이루어질 수 있다.In order to control the search window through the RANSAC algorithm, an ellipse must first be modeled. Ellipse modeling may be performed through Equation (13).

Figure 112019123244099-pat00014
Figure 112019123244099-pat00014

수학식 13은 타원을 모델링하기 위한 타원 방정식으로서, n개의 데이터 (x1,y1), (x2,y2), ..., (xn,yn)를 대입하여 만들어지는 식을 행렬로 표시하면 수학식 14와 같다. n개의 데이터는 최종으로 추출한 객체의 특징점을 사용하였다. Equation 13 is an elliptic equation for modeling an ellipse, and is an expression created by substituting n data (x 1 ,y 1 ), (x 2 ,y 2 ), ..., (x n ,y n ). When expressed as a matrix, it is shown in Equation 14. For n data, the feature points of the finally extracted object were used.

Figure 112019123244099-pat00015
Figure 112019123244099-pat00015

수학식 14는 n개의 데이터 (x1,y1), (x2,y2), ..., (xn,yn)를 대입하여 만들어지는 식을 행렬로 표시한 것이다. 본 발명의 실시예들에서는 데이터의 개수를 최소 6개로 지정하였으나 이에 제한되지 않음은 당연하다. 상기 수학식 14는 Ax = 0과 같이 표현되고, x = 0가 아닌 다른 해는 SVD(singular value decomposition)로 분해하여 구할 수 있다. SVD는 행렬을 대각행렬 D와 두 개의 직교행렬 U, V로 다음 수학식 15으로 같이 분해한다.Equation 14 is a matrix expressing an expression created by substituting n pieces of data (x 1 ,y 1 ), (x 2 ,y 2 ), ..., (x n ,y n ). In the embodiments of the present invention, although the minimum number of data is designated as 6, it is of course not limited thereto. Equation 14 is expressed as Ax = 0, and solutions other than x = 0 can be obtained by decomposing the SVD (singular value decomposition). SVD decomposes a matrix into a diagonal matrix D and two orthogonal matrices U and V as shown in Equation 15 below.

Figure 112019123244099-pat00016
Figure 112019123244099-pat00016

수학식 15에서 해는 V의 마지막 컬럼(Column) 벡터가 된다. 그리고 n개의 데이터를 임의로 선택하여 인라이어와 최적의 모델을 찾기 위한 식은 수학식 16과 같다.In Equation 15, the solution becomes the last column vector of V. And the formula for finding the inlier and the optimal model by randomly selecting n pieces of data is the same as Equation 16.

Figure 112019123244099-pat00017
Figure 112019123244099-pat00017

수학식 16에서 p는 n번의 샘플링(sampling) 중 적어도 한번은 인라이어만 추출할 확률이고, 본 발명의 실시예들에서는 p를 90%로 설정하였다. m은 한 번에 뽑는 샘플 수, α는 입력 데이터 중 인라이어의 비율이다. n번의 횟수가 높을수록 확률은 높아지지만 무한정으로 n의 횟수를 늘릴 수는 없다. 최적의 n의 횟수를 구하는 식은 수학식 17과 같다.In Equation 16, p is the probability of extracting only the inlier at least once among n sampling times, and in the embodiments of the present invention, p is set to 90%. m is the number of samples to be drawn at one time, and α is the ratio of inliers in the input data. The higher the number of n times, the higher the probability, but the number of times n cannot be increased indefinitely. The expression for obtaining the optimal number of n is as shown in Equation 17.

Figure 112019123244099-pat00018
Figure 112019123244099-pat00018

상기 수식들과 같은 방법으로 구한 타원 모델링과 인라이어를 기준으로 탐색 윈도우 설정하여 지속적으로 CAM-shift의 새로운 탐색 윈도우를 적용시킴으로써 겹침 발생 시 탐색 윈도우가 확장되지 않고 확장을 제어하여 목표 객체만을 지속적으로 추적하게 할 수 있다.By continuously applying the new search window of CAM-shift by setting the search window based on the elliptic modeling and inliers obtained in the same way as the above equations, the search window does not expand when an overlap occurs, but by controlling the expansion to continuously only the target object can be tracked

요약하건대, 상체 및 하체 각각에 대해 색상의 밀도 중심을 추적하던 중, 목표 객체와 유사한 색상의 배경 또는 다른 객체와의 겹침(overlap)으로 인해 탐색 윈도우가 확장되는지 여부를 지속적으로 검출하고, 상기 목표 객체의 최종 특징점을 거짓 정보에 해당하는 아웃라이어와 데이터의 분포가 일관된 인라이어로 구분하며, 상기 탐색 윈도우가 확장되려 할 경우 구분된 상기 인라이어에 기반하여 타원 모델을 피팅하여 탐색 윈도우의 확장을 제어할 수 있다.In summary, while tracing the color density center for each of the upper and lower body, it is continuously detected whether the search window is expanded due to a background of a color similar to the target object or overlap with another object, and the target The final feature point of the object is divided into an outlier corresponding to false information and an inlier with a consistent data distribution. can be controlled

도 6은 본 발명의 일 실시예에 따른 도 1의 객체 추적 방법에서 탐색 윈도우의 확장을 제어하는 과정(S150 단계)을 보다 구체적으로 도시한 흐름도로서, 구현의 관점에서 시계열적인 연산 과정을 제시하였다.6 is a flowchart illustrating in more detail a process (step S150) of controlling the expansion of a search window in the object tracking method of FIG. 1 according to an embodiment of the present invention, and a time-series operation process is presented in terms of implementation. .

S151 단계에서는, 목표 객체의 최종 특징점을 후보 인라이어로 설정하고 후보 인라이어 중 미리 설정된 개수의 샘플을 이용하여 타원 모델을 생성한다. 이를 위해 추적 객체의 주된 색상 히스토그램과 해리스 코너의 특징점을 비교하여 공통된 좌표를 최종 특징점으로 판단하고 RANSAC 타원 피팅(Ellipse Fitting)의 데이터로 사용할 수 있다. 최종 특징점을 후보 인라이어로 지정하고 최종 인라이어를 추출하기 위해 후보 인라이어를 앞서 제시한 수학식 13을 이용하여 타원을 모델링한다.In step S151, the final feature point of the target object is set as a candidate inlier, and an ellipse model is generated using a preset number of samples among the candidate inliers. To this end, by comparing the main color histogram of the tracking object with the feature point of the Harris corner, the common coordinates can be judged as the final feature point and used as data for RANSAC Ellipse Fitting. In order to designate the final feature point as a candidate inlier and extract the final inlier, the candidate inlier is modeled as an ellipse using Equation 13 previously presented.

그런 다음, S152 단계에서는, 최종 특징점 및 생성된 상기 타원 모델을 고려하여 미리 설정된 종료 조건 또는 반복 횟수에 도달하였는지 여부를 검사한다. 만약, 종료 조건 또는 반복 횟수에 도달하지 못한 경우 S151 단계로 되돌아가 타원 모델 생성과 S152 단계의 검사를 반복하여 수행한다. 이때, 샘플링 시 인라이어만 추출할 확률, 한번에 선택하는 샘플의 개수, 및 인라이어의 비율을 고려하여 반복 횟수를 결정할 수 있다.Then, in step S152, it is checked whether a preset termination condition or the number of repetitions is reached in consideration of the final feature point and the generated elliptic model. If the end condition or the number of iterations is not reached, the process returns to step S151 and repeats the generation of the ellipse model and the inspection of step S152. In this case, the number of repetitions may be determined in consideration of the probability of extracting only the inlier during sampling, the number of samples to be selected at one time, and the ratio of the inlier.

반면, 종료 조건 또는 반복 횟수에 도달한 경우 S153 단계로 진행하여 생성된 상기 타원 모델에 기초하여 상기 탐색 윈도우의 확장을 제어하게 된다. 이 과정에서는, 앞서 생성된 상기 타원 모델들 중에서 기존의 탐색 윈도우와 동일 또는 유사한 각도를 갖는 타원 모델을 새로운 탐색 윈도우로 설정함으로써 부적절한 탐색 윈도우의 확장을 억제할 수 있다. 즉, 후보 인라이어를 기반으로 모델링한 타원과 기존의 탐색 윈도우의 각도와 같은(또는 임계 범위 내에서 유사한) 후보 인라이어를 최종 인라이어로 추출하고, 추출된 최종 인라이어를 기반으로 타원 피팅하여 새로운 탐색 윈도우를 설정한다. On the other hand, when the end condition or the number of iterations is reached, the process proceeds to step S153 to control the expansion of the search window based on the generated ellipse model. In this process, inappropriate expansion of the search window can be suppressed by setting an elliptic model having the same or similar angle to the existing search window among the previously generated elliptic models as a new search window. That is, a candidate inlier that is the same (or similar within a critical range) of an ellipse modeled based on the candidate inlier and the angle of the existing search window is extracted as the final inlier, and ellipse fitting is performed based on the extracted final inlier. Set up a new navigation window.

도 7은 타원 모델을 이용하여 후보 인라이어로부터 새로운 탐색 윈도우를 설정하는 과정을 설명하기 위한 도면이다. 도 7의 (A)는 기존 CAM-shift의 탐색 윈도우의 각도를 보라색 호로 나타내었다. 도 7의 (B)는 새로운 탐색 윈도우를 설정하기 위해 최종 특징점을 인라이어 후보로 지정한 것을 초록색 점으로 나타내고, 도 7의 (C)는 후보 인라이어들 중 사전에 모델링한 타원과 기존 CAM-shift의 탐색 윈도우의 각도를 비교하여 같은 각도를 갖는 타원을 최종 인라이어로 추출한다. 도 7의 (C)에는 최종 인라이어를 분홍색 점으로 표시하였으며, 새로운 탐색 윈도우를 생성한 결과를 노란색으로 나타내었다.7 is a diagram for explaining a process of setting a new search window from a candidate inlier using an ellipse model. 7A shows the angle of the search window of the conventional CAM-shift with a purple arc. 7(B) shows the designation of the final feature point as an inlier candidate to set up a new search window as a green dot, and FIG. 7(C) shows an ellipse modeled in advance among the candidate inliers and the existing CAM-shift By comparing the angles of the search window of , the ellipse with the same angle is extracted as the final inlier. In (C) of FIG. 7 , the final inlier is indicated by a pink dot, and the result of creating a new search window is indicated in yellow.

도 8은 본 발명의 실시예들이 제안하는 객체 추적 방법에 따른 시스템 구현예를 도시한 흐름도이다.8 is a flowchart illustrating a system implementation example according to the object tracking method proposed by the embodiments of the present invention.

우선, 이미지를 입력받고, 810 블럭을 통해 추적 객체에 탐색 윈도우를 지정한 후, 탐색 윈도우에 대해 인체 모델 비율을 통한 상/하체 분리를 수행한다. 이렇게 분리된 상체 및 하체는 820A 및 820B 블럭을 통해 각각 유사한 방식으로 추적 작업을 수행하게 된다.First, an image is received, a search window is designated for the tracking object through block 810, and upper/lower body separation is performed through the human body model ratio for the search window. The separated upper body and lower body are tracked in a similar manner through the 820A and 820B blocks, respectively.

이제, 분리된 상체 및 하체로부터 코너 특징점을 추출하고, 컬러 히스토그램을 이용하여 추출된 특징점이 일치하는지 여부를 판단함으로써 최종 특징점을 결정한다. 이렇게 결정된 최종 특징점에 대해 색상의 밀도 중심을 추적하는 알고리즘(예를 들어 CAM-shift)(825A, 825B)을 각각 수행한다. 만약, 탐색 윈도우가 확장되려 한다면, 최종 특징점들에 대하여 탐색 윈도우의 확장을 억제하는 제어 알고리즘(예를 들어, RANSAC)(830)을 수행할 수 있다. 상기된 일련의 과정을 통해 상대적으로 적은 연산량을 통해 다수의 객체 및 배경이 혼재되어 있는 상황에서도 빠르고 정확하게 목표 객체를 추적할 수 있으며, 색상의 유사성으로 인해 불필요하게 탐색 윈도우가 확장되는 문제를 방지할 수 있다.Now, by extracting corner feature points from the separated upper and lower body, and determining whether the extracted feature points match using a color histogram, the final feature point is determined. An algorithm (eg, CAM-shift) 825A and 825B for tracking the color density center is performed for the final feature point determined in this way. If the search window is to be extended, a control algorithm (eg, RANSAC) 830 that suppresses the extension of the search window with respect to the final feature points may be performed. Through the above series of processes, it is possible to track the target object quickly and accurately even in a situation where a large number of objects and backgrounds are mixed through a relatively small amount of computation, and it is possible to prevent the problem of unnecessary expansion of the search window due to the similarity of colors. can

도 9는 본 발명의 일 실시예에 따른 탐색 윈도우의 확장 제어를 통한 객체 추적 시스템(10)을 도시한 블록도로서, 도 1의 각 단계에서 수행되는 구성을 하드웨어의 관점에서 재구성한 것이다. 따라서, 여기서는 설명의 중복을 피하고자 그 개요만을 약술하도록 한다.9 is a block diagram illustrating an object tracking system 10 through extended control of a search window according to an embodiment of the present invention, wherein the configuration performed in each step of FIG. 1 is reconstructed from a hardware point of view. Therefore, in order to avoid duplication of description, only an outline thereof is briefly summarized herein.

입력부(11)는 카메라(20) 등의 영상 취득 수단을 통해 획득된 적어도 하나 이상의 객체와 배경을 포함하는 영상을 입력받는다. 메모리(13)는 입력된 영상 내의 목표 객체를 추적하는 객체 추적 프로그램을 저장하고, 프로세서(15)는 상기 객체 추적 프로그램을 구동하는 구성이다.The input unit 11 receives an image including at least one object and a background acquired through an image acquisition means such as the camera 20 . The memory 13 stores an object tracking program for tracking a target object in an input image, and the processor 15 drives the object tracking program.

여기서, 상기 메모리(13)에 저장된 객체 추적 프로그램은, 입력된 영상으로부터 추적하고자 하는 목표 객체에 대해 탐색 윈도우(search window)를 설정하고, 상기 탐색 윈도우 내부에 설정된 상기 목표 객체를 상체 및 하체로 분할하고 각각 코너(corner) 특징점을 추출하고, 상기 상체 및 상기 하체로부터 각각 추출된 컬러 히스토그램(color histogram)의 픽셀(pixel)과 상기 코너 특징점을 비교하여 상기 목표 객체의 최종 특징점을 결정하고, 상기 상체 및 상기 하체에 대해 각각 객체의 크기 변화에 따라 적응적으로 탐색 윈도우의 크기를 조절하면서 색상의 밀도 중심을 추적하며, 추적 중인 목표 객체의 최종 특징점을 이용하여 거짓 정보에 해당하는 아웃라이어(outlier)를 배제한 인라이어(inlier)를 중심으로 타원 모델을 피팅(fitting)함으로써 상기 탐색 윈도우의 확장을 제어하는 명령어를 포함한다.Here, the object tracking program stored in the memory 13 sets a search window for a target object to be tracked from an input image, and divides the target object set in the search window into an upper body and a lower body and extracting corner feature points, comparing the corner feature points with pixels of color histograms extracted from the upper body and the lower body, respectively, to determine the final feature point of the target object, and the upper body and tracking the center of color density while adaptively adjusting the size of the search window according to the size change of the object for the lower body, and using the final feature point of the target object being tracked as an outlier corresponding to false information. and a command for controlling the expansion of the search window by fitting an elliptic model around an inlier excluding .

메모리(13)에 저장된 객체 추적 프로그램은, 상기 목표 객체의 인체 비율 모델을 이용하여 상기 탐색 윈도우 내부에 설정된 상기 목표 객체를 상체 및 하체로 분할하고, 분할된 상기 상체 및 상기 하체 각각의 영역에 대해 코너 검출 윈도우의 이동에 따른 영상 변화량(sum of squared difference, SSD)이 지역적으로 극대가 되는 지점을 찾기 위해 코너 응답 함수(corner response function, CRF)를 이용하여 코너 특징점을 추출할 수 있다.The object tracking program stored in the memory 13 divides the target object set in the search window into an upper body and a lower body using the human body proportion model of the target object, and for each divided area of the upper body and the lower body Corner feature points may be extracted using a corner response function (CRF) to find a point where the sum of squared difference (SSD) according to the movement of the corner detection window is locally maximized.

메모리(13)에 저장된 객체 추적 프로그램은, 머리를 제외하고 설정된 탐색 윈도우의 전체 높이에 대해 미리 설정된 인체 비율 모델의 분할 비율에 따라 상체에 대응하는 탐색 윈도우의 높이를 결정하고, 상기 탐색 윈도우의 전체 높이로부터 상기 상체에 대응하는 탐색 윈도우의 높이를 감산함으로써 하체에 대응하는 탐색 윈도우의 높이를 결정하며, 결정된 상기 상체 및 상기 하체의 높이에 따라 상체 및 하체를 분할할 수 있다.The object tracking program stored in the memory 13 determines the height of the search window corresponding to the upper body according to the division ratio of the human body proportion model preset with respect to the total height of the set search window except for the head, and determines the height of the search window. The height of the search window corresponding to the lower body may be determined by subtracting the height of the search window corresponding to the upper body from the height, and the upper body and the lower body may be divided according to the determined heights of the upper body and the lower body.

메모리(13)에 저장된 객체 추적 프로그램은, 2차원 영상의 픽셀에서 각각의 축 방향의 편미분 값과 코너 검출 윈도우 함수의 곱을 이용해 행렬식을 산출하고, 산출된 상기 행렬식으로부터 행렬의 대각합의 차이를 이용하는 코너 응답 함수를 모든 픽셀에 대해 산출하며, 산출된 상기 코너 응답 함수의 값이 미리 설정된 임계치 이상인 것을 코너 특징점으로 선택할 수 있다.The object tracking program stored in the memory 13 calculates a determinant by using the product of a corner detection window function and a partial differential value in each axial direction in a pixel of a two-dimensional image, and uses the difference between the diagonal sum of the matrix from the calculated determinant. A response function may be calculated for all pixels, and a corner feature point having a calculated value of the corner response function equal to or greater than a preset threshold may be selected.

또한, 메모리(13)에 저장된 객체 추적 프로그램은, 상기 상체 및 상기 하체로부터 각각 컬러 히스토그램을 지속적으로 추출하고, 추출된 컬러 히스토그램의 픽셀과 상기 코너 특징점을 비교하여 공통된 좌표만을 남기고 상기 목표 객체 주변에 위치한 배경에서 선택된 코너 특징점을 제거함으로써 최종 특징점으로 결정할 수 있다.In addition, the object tracking program stored in the memory 13 continuously extracts color histograms from the upper body and the lower body, respectively, and compares the pixels of the extracted color histogram with the corner feature points, leaving only common coordinates and surrounding the target object. By removing the selected corner feature point from the background, it can be determined as the final feature point.

또한, 메모리(13)에 저장된 객체 추적 프로그램은, 상기 상체 및 상기 하체 각각에 대해 색상의 밀도 중심을 추적하던 중, 상기 목표 객체와 유사한 색상의 배경 또는 다른 객체와의 겹침(overlap)으로 인해 상기 탐색 윈도우가 확장되는지 여부를 지속적으로 검출하고, 상기 목표 객체의 최종 특징점을 거짓 정보에 해당하는 아웃라이어와 데이터의 분포가 일관된 인라이어로 구분하며, 상기 탐색 윈도우가 확장되려 할 경우, 구분된 상기 인라이어에 기반하여 타원 모델을 피팅하여 상기 탐색 윈도우의 확장을 제어할 수 있다.In addition, the object tracking program stored in the memory 13, while tracking the center of color density for each of the upper body and the lower body, due to the background or overlap with another object of a color similar to the target object, the It is continuously detected whether the search window is extended, and the final feature point of the target object is divided into an outlier corresponding to false information and an inlier in which data distribution is consistent. The expansion of the search window may be controlled by fitting an elliptic model based on the inlier.

보다 구체적으로, 메모리(13)에 저장된 객체 추적 프로그램은, 상기 목표 객체의 최종 특징점을 후보 인라이어로 설정하고 후보 인라이어 중 미리 설정된 개수의 샘플을 이용하여 타원 모델을 생성하고, 상기 최종 특징점 및 생성된 상기 타원 모델을 고려하여 미리 설정된 종료 조건 또는 반복 횟수에 도달하였는지 여부를 검사하며, 종료 조건 또는 반복 횟수에 도달하지 못한 경우 상기 타원 모델 생성 과정 및 상기 검사 과정을 반복하여 수행하고, 종료 조건 또는 반복 횟수에 도달한 경우 생성된 상기 타원 모델에 기초하여 상기 탐색 윈도우의 확장을 제어할 수 있다. 특히, 메모리(13)에 저장된 객체 추적 프로그램은, 생성된 상기 타원 모델들 중에서 기존의 탐색 윈도우와 동일 또는 유사한 각도를 갖는 타원 모델을 새로운 탐색 윈도우로 설정함으로써, 상기 탐색 윈도우의 확장을 제어할 수 있다. 나아가, 메모리(13)에 저장된 객체 추적 프로그램은, 샘플링 시 인라이어만 추출할 확률, 한번에 선택하는 샘플의 개수, 및 인라이어의 비율을 고려하여 반복 횟수를 결정하는 것이 바람직하다.More specifically, the object tracking program stored in the memory 13 sets the final feature point of the target object as a candidate inlier and generates an ellipse model using a preset number of samples among the candidate inliers, and the final feature point and In consideration of the generated ellipse model, it is checked whether a preset end condition or number of iterations is reached, and if the end condition or number of iterations is not reached, the ellipse model creation process and the inspection process are repeatedly performed, and the end condition Alternatively, when the number of iterations is reached, the expansion of the search window may be controlled based on the generated elliptic model. In particular, the object tracking program stored in the memory 13 may control the expansion of the search window by setting an elliptic model having the same or similar angle to the existing search window among the generated ellipse models as a new search window. have. Furthermore, it is preferable that the object tracking program stored in the memory 13 determines the number of repetitions in consideration of the probability of extracting only inliers during sampling, the number of samples to be selected at one time, and the ratio of inliers.

이하에서는, 본 발명의 실시예들이 제안하는 객체 추적 알고리즘을 구현한 프로토타입(prototype)을 활용하여 비교 실험을 수행하고 그 결과를 간략히 소개하도록 한다.Hereinafter, comparison experiments are performed using a prototype implementing the object tracking algorithm proposed by the embodiments of the present invention, and the results are briefly introduced.

도 10은 본 발명의 실시예들이 제안하는 객체 추적 시스템에서 탐색 윈도우의 확장을 제어하는 과정을 실험적으로 예시한 도면이다. 도 10의 (A)는 객체를 인체 비율 모델로 분리한 상체와 하체의 탐색 윈도우에 각각 CAM-shift를 수행한 결과이다. 녹색은 상체를 나타내고, 붉은색은 하체를 나타낸다. 도 10의 (B)는 색상의 밀도 중심을 추적하는 종래의 알고리즘(예를 들어, CAM-shift)만을 이용한 결과 하체 부분의 탐색 윈도우가 유사한 색상의 배경과 겹침이 발생하여 추적 객체가 아닌 다른 객체를 찾는 문제점을 나타내는 예시도이다. 도 10의 (C)는 본 발명의 실시예들이 제안하는 객체 추적 방법에 따라 유사한 색상의 배경과 겹침이 발생하였음에도 불구하고 탐색 윈도우의 확장을 적절하게 제어한 결과를 나타내는 예시도이다.10 is a diagram experimentally illustrating a process of controlling the expansion of a search window in the object tracking system proposed by the embodiments of the present invention. 10(A) is a result of performing CAM-shift on the search windows of the upper body and lower body, respectively, in which the object is separated into the human body proportion model. Green represents the upper body, and red represents the lower body. As a result of using only the conventional algorithm (eg, CAM-shift) for tracking the density center of the color, (B) of FIG. 10 shows that the search window of the lower body overlaps with the background of a similar color, so an object other than the tracking object It is an example diagram showing the problem of finding . 10C is an exemplary diagram illustrating the result of appropriately controlling the expansion of the search window despite overlapping with a background of a similar color according to the object tracking method proposed by the embodiments of the present invention.

도 11은 탐색 윈도우의 확장 제어에 따른 효과에 관한 비교 실험 결과로서, 종래의 통상적인 CAM-shift 알고리즘과 본 발명의 실시예들이 제안하는 탐색 윈도우의 확장 제어 알고리즘에 따른 탐색 윈도우의 크기 변화를 비교하여 나타내었다. 두 그래프의 x축은 프레임을 나타내고, y축은 탐색 윈도우의 크기를 나타낸다.11 is a comparison experimental result regarding the effect of the extended control of the search window, and compares the size change of the search window according to the conventional CAM-shift algorithm and the search window extension control algorithm proposed by the embodiments of the present invention. was indicated. In both graphs, the x-axis represents the frame, and the y-axis represents the size of the search window.

도 11의 (A)를 참조하면, CAM-shift 알고리즘만을 사용한 경우 유사한 색상과 겹침이 발생하는 경우 탐색 윈도우의 길이인 H와 폭인 W가 지속적으로 확장되는 것을 볼 수 있다. 이에 반해, 본 발명의 실시예들에 따른 실험 결과인 도 11의 (B)를 참조하면, H와 W가 확장되지 않고 적절히 제어되는 것을 볼 수 있다.Referring to (A) of FIG. 11 , it can be seen that the length H and the width W of the search window are continuously extended when similar colors and overlaps occur when only the CAM-shift algorithm is used. In contrast, referring to FIG. 11B , which is an experimental result according to embodiments of the present invention, it can be seen that H and W are appropriately controlled without being expanded.

Figure 112019123244099-pat00019
Figure 112019123244099-pat00019

표 1은 초기 탐색 윈도우의 크기의 H와 W의 크기를 20% 오차율까지를 탐색 윈도우 확장 제어라 판단하여 확장 제어율을 나타낸 것이다. (A)는 통상적인 CAM-shift을 나타내고, (B)는 본 발명의 실시예들이 제안하는 확장 제어 방법을 나타낸 것이다. 유사한 색상의 배경과 다른 이동 객체에 겹침이 발생하였을 때 (A)의 경우보다 (B)의 경우에 탐색 윈도우 확장의 제어율이 상대적으로 높으며, 결과적으로 더 좋은 성능을 보이고 있음을 확인할 수 있다.Table 1 shows the extended control rate by determining that the size of H and W of the initial search window is up to an error rate of 20% as the search window extension control. (A) shows a typical CAM-shift, (B) shows the extended control method proposed by the embodiments of the present invention. When the background of a similar color and another moving object overlap, the control rate of the search window expansion is relatively higher in (B) than in (A), and as a result, it can be seen that the performance is better.

상기된 본 발명의 실시예들에 따르면, 입력 영상으로부터 특징점을 추출함에 있어서 탐색 윈도우 내부에서 상체와 하체를 분리하고 컬러 히스토그램을 이용하여 탐색 윈도우 내의 주된 색상을 목표 객체로 판단함으로써 배경의 불필요한 코너 특징점을 효과적으로 배제할 수 있고, 최종 특징점의 추적시 인라이어를 중심으로 타원 피팅을 수행함으로써 탐색 윈도우의 확장을 제어함으로써 동적 영상에서의 목표 객체를 빠르고 지속적으로 추적할 수 있다.According to the above-described embodiments of the present invention, when extracting feature points from an input image, an unnecessary corner feature point of the background is separated by separating the upper body and lower body in the search window and determining the main color in the search window as the target object using a color histogram. can be effectively excluded, and the target object in the dynamic image can be quickly and continuously tracked by controlling the expansion of the search window by performing ellipse fitting centered on the inlier when tracking the final feature point.

한편, 본 발명은 실시예들은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다.Meanwhile, embodiments of the present invention can be implemented as computer-readable codes on a computer-readable recording medium. The computer-readable recording medium includes all types of recording devices in which data readable by a computer system is stored.

컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등을 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술 분야의 프로그래머들에 의하여 용이하게 추론될 수 있다.Examples of the computer-readable recording medium include ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical data storage device, and the like. In addition, the computer-readable recording medium is distributed in a computer system connected to a network, so that the computer-readable code can be stored and executed in a distributed manner. And functional programs, codes, and code segments for implementing the present invention can be easily inferred by programmers in the technical field to which the present invention pertains.

이상에서 본 발명에 대하여 그 다양한 실시예들을 중심으로 살펴보았다. 본 발명에 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.In the above, the present invention has been looked at focusing on various embodiments thereof. Those of ordinary skill in the art to which the present invention pertains will understand that the present invention can be implemented in modified forms without departing from the essential characteristics of the present invention. Therefore, the disclosed embodiments are to be considered in an illustrative rather than a restrictive sense. The scope of the present invention is indicated in the claims rather than the foregoing description, and all differences within the scope equivalent thereto should be construed as being included in the present invention.

10: 객체 추적 시스템
11: 입력부
13: 메모리
15: 프로세서
20: 카메라
10: Object tracking system
11: input
13: memory
15: processor
20: camera

Claims (20)

(a) 객체 추적 시스템이 적어도 하나 이상의 객체와 배경을 포함하는 영상을 입력받아 추적하고자 하는 목표 객체에 대해 탐색 윈도우(search window)를 설정하는 단계;
(b) 상기 객체 추적 시스템이 상기 탐색 윈도우 내부에 설정된 상기 목표 객체를 상체 및 하체로 분할하고 각각 코너(corner) 특징점을 추출하는 단계;
(c) 상기 객체 추적 시스템이 상기 상체 및 상기 하체로부터 각각 추출된 컬러 히스토그램(color histogram)의 픽셀(pixel)과 상기 코너 특징점을 비교하여 상기 목표 객체의 최종 특징점을 결정하는 단계;
(d) 상기 객체 추적 시스템이 상기 상체 및 상기 하체에 대해 각각 객체의 크기 변화에 따라 적응적으로 탐색 윈도우의 크기를 조절하면서 색상의 밀도 중심을 추적하는 단계; 및
(e) 상기 객체 추적 시스템이 추적 중인 목표 객체의 최종 특징점을 이용하여 거짓 정보에 해당하는 아웃라이어(outlier)를 배제한 인라이어(inlier)를 중심으로 타원 모델을 피팅(fitting)함으로써 상기 탐색 윈도우의 확장을 제어하는 단계;를 포함하고,
상기 (e) 단계는,
(e1) 상기 상체 및 상기 하체 각각에 대해 색상의 밀도 중심을 추적하던 중, 상기 목표 객체와 유사한 색상의 배경 또는 다른 객체와의 겹침(overlap)으로 인해 상기 탐색 윈도우가 확장되는지 여부를 지속적으로 검출하는 단계:
(e2) 상기 목표 객체의 최종 특징점을 거짓 정보에 해당하는 아웃라이어와 데이터의 분포가 일관된 인라이어로 구분하는 단계; 및
(e3) 상기 탐색 윈도우가 확장되려 할 경우, 구분된 상기 인라이어에 기반하여 타원 모델을 피팅하여 상기 탐색 윈도우의 확장을 제어하는 단계;를 포함하는, 객체 추적 방법.
(a) an object tracking system receiving an image including at least one object and a background and setting a search window for a target object to be tracked;
(b) dividing, by the object tracking system, the target object set in the search window into an upper body and a lower body and extracting corner feature points;
(c) determining, by the object tracking system, a final feature point of the target object by comparing the corner feature points with pixels of a color histogram extracted from the upper body and the lower body, respectively;
(d) tracking, by the object tracking system, the center of color density while adaptively adjusting the size of a search window according to a change in the size of the object with respect to the upper body and the lower body; and
(e) of the search window by fitting an ellipse model around an inlier excluding outliers corresponding to false information using the final feature point of the target object being tracked by the object tracking system Including; controlling the expansion;
Step (e) is,
(e1) While tracking the color density center for each of the upper body and the lower body, it is continuously detected whether the search window is expanded due to a background color similar to the target object or overlap with another object Steps to do:
(e2) dividing the final feature point of the target object into an outlier corresponding to false information and an inlier having a consistent data distribution; and
(e3) when the search window is to be expanded, controlling the expansion of the search window by fitting an ellipse model based on the divided inlier.
제 1 항에 있어서,
상기 (b) 단계는,
(b1) 상기 목표 객체의 인체 비율 모델을 이용하여 상기 탐색 윈도우 내부에 설정된 상기 목표 객체를 상체 및 하체로 분할하는 단계; 및
(b2) 분할된 상기 상체 및 상기 하체 각각의 영역에 대해 코너 검출 윈도우의 이동에 따른 영상 변화량(sum of squared difference, SSD)이 지역적으로 극대가 되는 지점을 찾기 위해 코너 응답 함수(corner response function, CRF)를 이용하여 코너 특징점을 추출하는 단계;를 포함하는, 객체 추적 방법.
The method of claim 1,
The step (b) is,
(b1) dividing the target object set in the search window into an upper body and a lower body using the body proportion model of the target object; and
(b2) a corner response function to find a point where the sum of squared difference (SSD) according to the movement of the corner detection window for each of the divided regions of the upper body and the lower body is locally maximized; CRF) using the step of extracting corner feature points; including; object tracking method.
제 2 항에 있어서,
상기 (b1) 단계는,
머리를 제외하고 설정된 탐색 윈도우의 전체 높이에 대해 미리 설정된 인체 비율 모델의 분할 비율에 따라 상체에 대응하는 탐색 윈도우의 높이를 결정하고, 상기 탐색 윈도우의 전체 높이로부터 상기 상체에 대응하는 탐색 윈도우의 높이를 감산함으로써 하체에 대응하는 탐색 윈도우의 높이를 결정하며, 결정된 상기 상체 및 상기 하체의 높이에 따라 상체 및 하체를 분할하는, 객체 추적 방법.
3. The method of claim 2,
The step (b1) is,
The height of the search window corresponding to the upper body is determined according to the division ratio of the human body proportion model preset with respect to the total height of the set search window except for the head, and the height of the search window corresponding to the upper body is determined from the total height of the search window. The height of the search window corresponding to the lower body is determined by subtracting , and the upper body and the lower body are divided according to the determined heights of the upper body and the lower body.
제 2 항에 있어서,
상기 (b2) 단계는,
2차원 영상의 픽셀에서 각각의 축 방향의 편미분 값과 코너 검출 윈도우 함수의 곱을 이용해 행렬식을 산출하고, 산출된 상기 행렬식으로부터 행렬의 대각합의 차이를 이용하는 코너 응답 함수를 모든 픽셀에 대해 산출하며, 산출된 상기 코너 응답 함수의 값이 미리 설정된 임계치 이상인 것을 코너 특징점으로 선택하는, 객체 추적 방법.
3. The method of claim 2,
The step (b2) is,
A determinant is calculated using the product of a corner detection window function and a partial differential value in each axial direction in a pixel of a two-dimensional image, and a corner response function using the difference of the diagonal sum of the matrix from the calculated determinant is calculated for all pixels, and calculated An object tracking method for selecting a corner feature point in which the value of the corner response function is greater than or equal to a preset threshold.
제 1 항에 있어서,
상기 (c) 단계는,
(c1) 상기 상체 및 상기 하체로부터 각각 컬러 히스토그램을 지속적으로 추출하는 단계; 및
(c2) 추출된 컬러 히스토그램의 픽셀과 상기 코너 특징점을 비교하여 공통된 좌표만을 남기고 상기 목표 객체 주변에 위치한 배경에서 선택된 코너 특징점을 제거함으로써 최종 특징점으로 결정하는 단계;를 포함하는, 객체 추적 방법.
The method of claim 1,
Step (c) is,
(c1) continuously extracting color histograms from the upper body and the lower body; and
(c2) determining the final feature point by comparing the extracted color histogram pixel with the corner feature point, leaving only common coordinates, and removing the selected corner feature point from the background located around the target object.
삭제delete 제 1 항에 있어서,
상기 (e) 단계는,
(e4) 상기 목표 객체의 최종 특징점을 후보 인라이어로 설정하고 후보 인라이어 중 미리 설정된 개수의 샘플을 이용하여 타원 모델을 생성하는 단계;
(e5) 상기 최종 특징점 및 생성된 상기 타원 모델을 고려하여 미리 설정된 종료 조건 또는 반복 횟수에 도달하였는지 여부를 검사하는 단계; 및
(e6) 종료 조건 또는 반복 횟수에 도달하지 못한 경우 상기 (e4) 단계 및 상기 (e5) 단계를 반복하여 수행하고, 종료 조건 또는 반복 횟수에 도달한 경우 생성된 상기 타원 모델에 기초하여 상기 탐색 윈도우의 확장을 제어하는 단계;를 포함하는, 객체 추적 방법.
The method of claim 1,
Step (e) is,
(e4) setting the final feature point of the target object as a candidate inlier and generating an elliptic model using a preset number of samples among the candidate inliers;
(e5) examining whether a preset termination condition or number of repetitions is reached in consideration of the final feature point and the generated elliptic model; and
(e6) If the end condition or the number of iterations is not reached, the steps (e4) and (e5) are repeatedly performed, and when the end condition or the number of iterations is reached, the search window is based on the generated ellipse model Controlling the extension of; Containing, object tracking method.
제 7 항에 있어서,
상기 (e6) 단계는,
생성된 상기 타원 모델들 중에서 기존의 탐색 윈도우와 동일 또는 유사한 각도를 갖는 타원 모델을 새로운 탐색 윈도우로 설정하는, 객체 추적 방법.
8. The method of claim 7,
The step (e6) is,
An object tracking method for setting an elliptic model having the same or similar angle as an existing search window among the generated elliptic models as a new search window.
제 7 항에 있어서,
상기 (e) 단계는,
샘플링 시 인라이어만 추출할 확률, 한번에 선택하는 샘플의 개수, 및 인라이어의 비율을 고려하여 반복 횟수를 결정하는, 객체 추적 방법.
8. The method of claim 7,
Step (e) is,
An object tracking method that determines the number of iterations in consideration of the probability of extracting only inliers during sampling, the number of samples selected at one time, and the ratio of inliers.
제 1 항에 있어서,
상기 (d) 단계는 CAM-shift(Continuously Adaptive Mean-shift) 알고리즘을 이용하여 상기 상체 및 상기 하체에 대한 색상의 밀도 중심을 추적하고,
상기 (e) 단계는 RANSAC(RANdom SAmple Consensus) 알고리즘을 이용하여 상기 최종 특징점으로부터 인라이어를 구분함으로써 상기 탐색 윈도우의 확장을 제어하는, 객체 추적 방법.
The method of claim 1,
The step (d) tracks the density center of the color for the upper body and the lower body using a CAM-shift (Continuously Adaptive Mean-shift) algorithm,
In the step (e), the extension of the search window is controlled by classifying an inlier from the final feature point using a RANdom SAmple Consensus (RANSAC) algorithm.
제 1 항 내지 제 5 항, 제 7 항 내지 제 10 항 중에 어느 한 항의 방법을 컴퓨터에서 실행시키기 위하여 매체에 저장된 컴퓨터 프로그램.A computer program stored in a medium for executing the method of any one of claims 1 to 5 and 7 to 10 in a computer. 적어도 하나 이상의 객체와 배경을 포함하는 영상을 입력받는 입력부;
입력된 영상 내의 목표 객체를 추적하는 객체 추적 프로그램을 저장하는 메모리; 및
상기 객체 추적 프로그램을 구동하는 프로세서;를 포함하고,
상기 메모리에 저장된 객체 추적 프로그램은,
입력된 영상으로부터 추적하고자 하는 목표 객체에 대해 탐색 윈도우(search window)를 설정하고, 상기 탐색 윈도우 내부에 설정된 상기 목표 객체를 상체 및 하체로 분할하고 각각 코너(corner) 특징점을 추출하고, 상기 상체 및 상기 하체로부터 각각 추출된 컬러 히스토그램(color histogram)의 픽셀(pixel)과 상기 코너 특징점을 비교하여 상기 목표 객체의 최종 특징점을 결정하고, 상기 상체 및 상기 하체에 대해 각각 객체의 크기 변화에 따라 적응적으로 탐색 윈도우의 크기를 조절하면서 색상의 밀도 중심을 추적하며, 추적 중인 목표 객체의 최종 특징점을 이용하여 거짓 정보에 해당하는 아웃라이어(outlier)를 배제한 인라이어(inlier)를 중심으로 타원 모델을 피팅(fitting)함으로써 상기 탐색 윈도우의 확장을 제어하는 명령어를 포함하고,
상기 메모리에 저장된 객체 추적 프로그램은,
상기 상체 및 상기 하체 각각에 대해 색상의 밀도 중심을 추적하던 중, 상기 목표 객체와 유사한 색상의 배경 또는 다른 객체와의 겹침(overlap)으로 인해 상기 탐색 윈도우가 확장되는지 여부를 지속적으로 검출하고,
상기 목표 객체의 최종 특징점을 거짓 정보에 해당하는 아웃라이어와 데이터의 분포가 일관된 인라이어로 구분하며,
상기 탐색 윈도우가 확장되려 할 경우, 구분된 상기 인라이어에 기반하여 타원 모델을 피팅하여 상기 탐색 윈도우의 확장을 제어하는, 객체 추적 시스템.
an input unit for receiving an image including at least one object and a background;
a memory for storing an object tracking program for tracking a target object in an input image; and
Including; a processor for driving the object tracking program;
The object tracking program stored in the memory,
A search window is set for the target object to be tracked from the input image, the target object set in the search window is divided into upper and lower body parts, and corner feature points are extracted, respectively, the upper body and the lower body The final feature point of the target object is determined by comparing pixels of a color histogram extracted from the lower body with the corner feature points, and adaptively according to the size change of the object with respect to the upper body and the lower body, respectively Adjusts the size of the search window with , and tracks the center of color density, and uses the final feature point of the target object being tracked to fit an elliptical model centered on the inlier excluding outliers corresponding to false information. (fitting) comprising a command to control the expansion of the search window,
The object tracking program stored in the memory,
While tracking the color density center for each of the upper body and the lower body, it is continuously detected whether the search window is expanded due to an overlap with a background or another object of a color similar to the target object,
The final feature point of the target object is divided into an outlier corresponding to false information and an inlier having a consistent data distribution,
When the search window is to be expanded, the object tracking system controls the expansion of the search window by fitting an elliptic model based on the divided inlier.
제 12 항에 있어서,
상기 메모리에 저장된 객체 추적 프로그램은,
상기 목표 객체의 인체 비율 모델을 이용하여 상기 탐색 윈도우 내부에 설정된 상기 목표 객체를 상체 및 하체로 분할하고,
분할된 상기 상체 및 상기 하체 각각의 영역에 대해 코너 검출 윈도우의 이동에 따른 영상 변화량(sum of squared difference, SSD)이 지역적으로 극대가 되는 지점을 찾기 위해 코너 응답 함수(corner response function, CRF)를 이용하여 코너 특징점을 추출하는, 객체 추적 시스템.
13. The method of claim 12,
The object tracking program stored in the memory,
dividing the target object set in the search window into an upper body and a lower body using the human body proportion model of the target object;
A corner response function (CRF) is used to find a point at which the sum of squared difference (SSD) according to the movement of the corner detection window for each of the divided regions of the upper body and the lower body is locally maximized. An object tracking system that extracts corner feature points using
제 13 항에 있어서,
상기 메모리에 저장된 객체 추적 프로그램은,
머리를 제외하고 설정된 탐색 윈도우의 전체 높이에 대해 미리 설정된 인체 비율 모델의 분할 비율에 따라 상체에 대응하는 탐색 윈도우의 높이를 결정하고, 상기 탐색 윈도우의 전체 높이로부터 상기 상체에 대응하는 탐색 윈도우의 높이를 감산함으로써 하체에 대응하는 탐색 윈도우의 높이를 결정하며, 결정된 상기 상체 및 상기 하체의 높이에 따라 상체 및 하체를 분할하는, 객체 추적 시스템.
14. The method of claim 13,
The object tracking program stored in the memory,
The height of the search window corresponding to the upper body is determined according to the division ratio of the human body proportion model preset with respect to the total height of the set search window except for the head, and the height of the search window corresponding to the upper body is determined from the total height of the search window. The height of the search window corresponding to the lower body is determined by subtracting , and the upper body and the lower body are divided according to the determined heights of the upper body and the lower body.
제 13 항에 있어서,
상기 메모리에 저장된 객체 추적 프로그램은,
2차원 영상의 픽셀에서 각각의 축 방향의 편미분 값과 코너 검출 윈도우 함수의 곱을 이용해 행렬식을 산출하고, 산출된 상기 행렬식으로부터 행렬의 대각합의 차이를 이용하는 코너 응답 함수를 모든 픽셀에 대해 산출하며, 산출된 상기 코너 응답 함수의 값이 미리 설정된 임계치 이상인 것을 코너 특징점으로 선택하는, 객체 추적 시스템.
14. The method of claim 13,
The object tracking program stored in the memory,
A determinant is calculated using the product of a corner detection window function and a partial differential value in each axial direction in a pixel of a two-dimensional image, and a corner response function using the difference of the diagonal sum of the matrix from the calculated determinant is calculated for all pixels, and calculated An object tracking system that selects a value of the corner response function that is greater than or equal to a preset threshold as a corner feature point.
제 12 항에 있어서,
상기 메모리에 저장된 객체 추적 프로그램은,
상기 상체 및 상기 하체로부터 각각 컬러 히스토그램을 지속적으로 추출하고,
추출된 컬러 히스토그램의 픽셀과 상기 코너 특징점을 비교하여 공통된 좌표만을 남기고 상기 목표 객체 주변에 위치한 배경에서 선택된 코너 특징점을 제거함으로써 최종 특징점으로 결정하는, 객체 추적 시스템.
13. The method of claim 12,
The object tracking program stored in the memory,
Continuously extracting color histograms from the upper body and the lower body,
An object tracking system that compares the extracted color histogram pixels with the corner feature points, leaves only common coordinates, and determines the final feature point by removing the selected corner feature point from the background located around the target object.
삭제delete 제 12 항에 있어서,
상기 메모리에 저장된 객체 추적 프로그램은,
상기 목표 객체의 최종 특징점을 후보 인라이어로 설정하고 후보 인라이어 중 미리 설정된 개수의 샘플을 이용하여 타원 모델을 생성하고,
상기 최종 특징점 및 생성된 상기 타원 모델을 고려하여 미리 설정된 종료 조건 또는 반복 횟수에 도달하였는지 여부를 검사하며,
종료 조건 또는 반복 횟수에 도달하지 못한 경우 상기 타원 모델 생성 과정 및 상기 검사 과정을 반복하여 수행하고, 종료 조건 또는 반복 횟수에 도달한 경우 생성된 상기 타원 모델에 기초하여 상기 탐색 윈도우의 확장을 제어하는, 객체 추적 시스템.
13. The method of claim 12,
The object tracking program stored in the memory,
setting the final feature point of the target object as a candidate inlier and generating an ellipse model using a preset number of samples among the candidate inliers;
In consideration of the final feature point and the generated ellipse model, it is checked whether a preset termination condition or number of repetitions has been reached,
When the end condition or the number of iterations is not reached, the elliptic model creation process and the inspection process are repeatedly performed, and when the end condition or the number of iterations is reached, the expansion of the search window is controlled based on the generated elliptic model , an object tracking system.
제 18 항에 있어서,
상기 메모리에 저장된 객체 추적 프로그램은,
생성된 상기 타원 모델들 중에서 기존의 탐색 윈도우와 동일 또는 유사한 각도를 갖는 타원 모델을 새로운 탐색 윈도우로 설정함으로써, 상기 탐색 윈도우의 확장을 제어하는, 객체 추적 시스템.
19. The method of claim 18,
The object tracking program stored in the memory,
An object tracking system for controlling the expansion of the search window by setting an elliptic model having the same or similar angle to an existing search window among the generated elliptic models as a new search window.
제 18 항에 있어서,
상기 메모리에 저장된 객체 추적 프로그램은,
샘플링 시 인라이어만 추출할 확률, 한번에 선택하는 샘플의 개수, 및 인라이어의 비율을 고려하여 반복 횟수를 결정하는, 객체 추적 시스템.
19. The method of claim 18,
The object tracking program stored in the memory,
An object tracking system that determines the number of iterations in consideration of the probability of extracting only inliers during sampling, the number of samples selected at one time, and the ratio of inliers.
KR1020190156214A 2019-11-29 2019-11-29 Method for object tracking using extended control of search window and object tracking system thereof KR102335755B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190156214A KR102335755B1 (en) 2019-11-29 2019-11-29 Method for object tracking using extended control of search window and object tracking system thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190156214A KR102335755B1 (en) 2019-11-29 2019-11-29 Method for object tracking using extended control of search window and object tracking system thereof

Publications (2)

Publication Number Publication Date
KR20210067016A KR20210067016A (en) 2021-06-08
KR102335755B1 true KR102335755B1 (en) 2021-12-06

Family

ID=76399141

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190156214A KR102335755B1 (en) 2019-11-29 2019-11-29 Method for object tracking using extended control of search window and object tracking system thereof

Country Status (1)

Country Link
KR (1) KR102335755B1 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113674312A (en) * 2021-06-30 2021-11-19 浙江大华技术股份有限公司 Target tracking close-up method and device
KR102425057B1 (en) * 2021-09-28 2022-07-27 차가은 System for online shopping using neural networks

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101508310B1 (en) * 2014-04-10 2015-04-07 군산대학교산학협력단 Apparatus and method for tracking multiple moving objects in video surveillance system
KR101681104B1 (en) 2015-07-09 2016-11-30 한국외국어대학교 연구산학협력단 A multiple object tracking method with partial occlusion handling using salient feature points
KR101885839B1 (en) * 2017-03-14 2018-08-06 중앙대학교 산학협력단 System and Method for Key point Selecting for Object Tracking

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101749099B1 (en) * 2012-04-25 2017-07-04 한국전자통신연구원 Method and apparatus for tracking object in image data, and storage medium storing the same

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101508310B1 (en) * 2014-04-10 2015-04-07 군산대학교산학협력단 Apparatus and method for tracking multiple moving objects in video surveillance system
KR101681104B1 (en) 2015-07-09 2016-11-30 한국외국어대학교 연구산학협력단 A multiple object tracking method with partial occlusion handling using salient feature points
KR101885839B1 (en) * 2017-03-14 2018-08-06 중앙대학교 산학협력단 System and Method for Key point Selecting for Object Tracking

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
M. Hedayati 등, Combination of Mean Shift of Colour Signature and Optical Flow for Tracking During Foreground and Background Occlusion, PSIVT2015.(2016.02.04.)*

Also Published As

Publication number Publication date
KR20210067016A (en) 2021-06-08

Similar Documents

Publication Publication Date Title
US10872262B2 (en) Information processing apparatus and information processing method for detecting position of object
Wu et al. Real-time human detection using contour cues
US9898686B2 (en) Object re-identification using self-dissimilarity
Hernández-Vela et al. Graph cuts optimization for multi-limb human segmentation in depth maps
US7489803B2 (en) Object detection
Barbu Pedestrian detection and tracking using temporal differencing and HOG features
US7421149B2 (en) Object detection
US7522772B2 (en) Object detection
Ramirez-Quintana et al. Self-adaptive SOM-CNN neural system for dynamic object detection in normal and complex scenarios
JP2004192637A (en) Face detection
US20050129277A1 (en) Object detection
KR102335755B1 (en) Method for object tracking using extended control of search window and object tracking system thereof
US20050128306A1 (en) Object detection
Amjad et al. Multiple face detection algorithm using colour skin modelling
Tang et al. Multiple-kernel adaptive segmentation and tracking (MAST) for robust object tracking
Nandhini et al. SIFT algorithm-based Object detection and tracking in the video image
Delibasoglu UAV images dataset for moving object detection from moving cameras
US10832044B2 (en) Image recognition device and image recognition program
Barbu Novel approach for moving human detection and tracking in static camera video sequences
Bosch Deep learning for robust motion segmentation with non-static cameras
Kim et al. View invariant action recognition using generalized 4D features
US7477759B2 (en) Adaptive artificial vision method and system
Zhang et al. Camouflage modeling for moving object detection
Liang et al. Real-time background subtraction under varying lighting conditions
Ramirez-Paredes et al. A fuzzy inference approach to template-based visual tracking

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant