KR102399974B1 - Method of tracking multiple objects and apparatus for the same - Google Patents

Method of tracking multiple objects and apparatus for the same Download PDF

Info

Publication number
KR102399974B1
KR102399974B1 KR1020150070569A KR20150070569A KR102399974B1 KR 102399974 B1 KR102399974 B1 KR 102399974B1 KR 1020150070569 A KR1020150070569 A KR 1020150070569A KR 20150070569 A KR20150070569 A KR 20150070569A KR 102399974 B1 KR102399974 B1 KR 102399974B1
Authority
KR
South Korea
Prior art keywords
tracker
objects
target object
tracking
learning
Prior art date
Application number
KR1020150070569A
Other languages
Korean (ko)
Other versions
KR20160136689A (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 KR1020150070569A priority Critical patent/KR102399974B1/en
Publication of KR20160136689A publication Critical patent/KR20160136689A/en
Priority to KR1020220059605A priority patent/KR102552968B1/en
Application granted granted Critical
Publication of KR102399974B1 publication Critical patent/KR102399974B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/255Detecting or recognising potential candidate objects based on visual cues, e.g. shapes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/87Arrangements for image or video recognition or understanding using pattern recognition or machine learning using selection of the recognition techniques, e.g. of a classifier in a multiple classifier system
    • G06K9/6262
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • G06V10/62Extraction of image or video features relating to a temporal dimension, e.g. time-based feature extraction; Pattern tracking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/77Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
    • G06V10/80Fusion, i.e. combining data from various sources at the sensor level, preprocessing level, feature extraction level or classification level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/52Surveillance or monitoring of activities, e.g. for recognising suspicious objects
    • G06V20/53Recognition of crowd images, e.g. recognition of crowd congestion

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Multimedia (AREA)
  • Software Systems (AREA)
  • Evolutionary Computation (AREA)
  • Computing Systems (AREA)
  • Medical Informatics (AREA)
  • Artificial Intelligence (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Data Mining & Analysis (AREA)
  • Image Analysis (AREA)

Abstract

본 발명의 일 실시예는, 객체 검출부가 복수의 객체들을 검출하는 단계; 추적기 생성부가 상기 객체들 중 어느 하나인 대상 객체를 추적하기 위한 추적기를 생성하는 단계; 추적기 학습부가 상기 추적기에 대해, 상기 대상 객체를 포지티브(positive) 샘플로 설정하고, 상기 객체들 중 상기 대상 객체와 상이한 어느 하나 이상의 객체를 네거티브(negative) 샘플로 설정하고, 상기 샘플들을 이용하여 상기 추적기를 학습시키는 단계; 및 객체 추적부가 상기 추적기를 이용하여 상기 대상 객체를 추적하는 단계;를 포함하는 것을 특징으로 하는, 다중 객체 추적 방법을 개시한다.An embodiment of the present invention, the object detection step for detecting a plurality of objects; generating, by a tracker generating unit, a tracker for tracking a target object that is any one of the objects; The tracker learning unit sets the target object as a positive sample for the tracker, sets any one or more objects different from the target object among the objects as a negative sample, and uses the samples to set the target object as a negative sample. training the tracker; and tracking the target object by an object tracking unit using the tracker. Discloses a multi-object tracking method comprising: a.

Figure R1020150070569
Figure R1020150070569

Description

다중 객체 추적 방법 및 이를 위한 장치 {METHOD OF TRACKING MULTIPLE OBJECTS AND APPARATUS FOR THE SAME}Multi-object tracking method and device for same

본 발명의 실시예들은 다중 객체 추적 방법 및 이를 위한 장치에 관한 것으로, 더 상세하게는 포지티브(positive) 샘플 및 네거티브(negative) 샘플을 이용하여 추적기를 학습시켜 다중 객체를 추적하는 다중 객체 추적 방법 및 이를 위한 장치에 관한 것이다.Embodiments of the present invention relate to a multi-object tracking method and an apparatus therefor, and more particularly, a multi-object tracking method for tracking multiple objects by learning a tracker using a positive sample and a negative sample, and It relates to a device for this.

사람 및 물체를 추적하는 기술은 컴퓨터 비전 분야의 대표적인 어플리케이션으로써, 요즘 대두되고 있는 카메라를 이용한 감시 시스템에 필요한 핵심적인 기술이다.The technology to track people and objects is a representative application in the field of computer vision, and is a core technology required for a surveillance system using a camera that is emerging these days.

최근 들어, 감시 시스템의 수요가 증가하는 상황에서 사용자가 눈으로 직접 영상을 하나하나 확인하는 경우, 많은 시간과 노력이 요구된다. 이러한 감시 시스템에 자동으로 타겟을 추적하는 추적기를 활용하면 위와 같은 수고를 덜 수 있다.In recent years, when a user directly checks images one by one in a situation where the demand for a monitoring system increases, much time and effort are required. By using a tracker that automatically tracks the target in such a surveillance system, the above effort can be saved.

한국공개특허 제10-2010-0026123호Korean Patent Publication No. 10-2010-0026123

본 발명의 실시예들은 특정 추적기가 추적하는 객체를 포지티브(positive) 샘플로 설정하고, 나머지 추적기들이 추적하는 객체들을 네거티브(negative) 샘플들로 설정하는 방식으로 전체 추적기들을 학습시킴으로써, 이미지 내 전체 객체들이 서로 겹치는 복잡한 상황에서도 보다 객체들 각각을 안정적으로 분별하여 추적할 수 있는 다중 객체 추적 방법 및 이를 위한 장치를 제공한다.Embodiments of the present invention set the object tracked by a specific tracker as a positive sample, and train all trackers in a manner that sets the objects tracked by the other trackers as negative samples. Provided are a multi-object tracking method and apparatus for stably discriminating and tracking each object even in a complex situation where they overlap each other.

본 발명의 일 실시예는, 객체 검출부가 복수의 객체들을 검출하는 단계; 추적기 생성부가 상기 객체들 중 어느 하나인 대상 객체를 추적하기 위한 추적기를 생성하는 단계; 추적기 학습부가 상기 추적기에 대해, 상기 대상 객체를 포지티브(positive) 샘플로 설정하고, 상기 객체들 중 상기 대상 객체와 상이한 어느 하나 이상의 객체를 네거티브(negative) 샘플로 설정하고, 상기 샘플들을 이용하여 상기 추적기를 학습시키는 단계; 및 객체 추적부가 상기 추적기를 이용하여 상기 대상 객체를 추적하는 단계;를 포함하는 것을 특징으로 하는, 다중 객체 추적 방법을 개시한다.An embodiment of the present invention, the object detection step for detecting a plurality of objects; generating, by a tracker generating unit, a tracker for tracking a target object that is any one of the objects; The tracker learning unit sets the target object as a positive sample for the tracker, sets any one or more objects different from the target object among the objects as a negative sample, and uses the samples to set the target object as a negative sample. training the tracker; and tracking the target object by an object tracking unit using the tracker. Discloses a multi-object tracking method comprising: a.

상기 추적기를 생성하는 단계는 상기 추적기 생성부가 상기 객체들 중 상기 대상 객체와 상이한 어느 하나인 추가 대상 객체를 추적하기 위한 추가 추적기를 더 생성하고, 상기 추적기를 학습시키는 단계는 상기 추적기 학습부가 상기 추적기에 대해, 상기 추가 대상 객체를 네거티브 샘플로 설정하고, 상기 추가 추적기에 대해, 상기 추가 대상 객체를 포지티브 샘플로 설정하고, 상기 대상 객체를 네거티브 샘플로 설정하여 상기 추적기 및 추가 추적기를 상호 학습시킬 수 있다.In the step of generating the tracker, the tracker generating unit further generates an additional tracker for tracking an additional target object that is different from the target object among the objects, and the step of learning the tracker includes the tracker learning unit in the tracker For, set the additional target object as a negative sample, for the additional tracker, set the additional target object as a positive sample, and set the target object as a negative sample, so that the tracker and the additional tracker can mutually learn there is.

상기 추적기를 학습시키는 단계는 상기 추적기 학습부가 상기 추적기에 포함된 분류기들 각각 또는 상기 분류기들 중 어느 둘 이상의 조합들 각각의 로그 가능도(log likelihood) 값을 산출하여 상기 분류기들 각각의 가중치를 결정함으로써 상기 추적기를 학습시킬 수 있다.In the training of the tracker, the tracker learning unit determines a weight of each of the classifiers by calculating a log likelihood value of each of the classifiers included in the tracker or each of any two or more combinations of the classifiers. By doing so, the tracker can be trained.

본 발명의 다른 일 실시예는, 복수의 객체들을 검출하는 객체 검출부; 상기 객체들 중 어느 하나인 대상 객체를 추적하기 위한 추적기를 생성하는 추적기 생성부; 상기 추적기에 대해, 상기 대상 객체를 포지티브(positive) 샘플로 설정하고, 상기 객체들 중 상기 대상 객체와 상이한 어느 하나 이상의 객체를 네거티브(negative) 샘플로 설정하고, 상기 샘플들을 이용하여 상기 추적기를 학습시키는 추적기 학습부; 및 상기 추적기를 이용하여 상기 대상 객체를 추적하는 객체 추적부;를 포함하는 것을 특징으로 하는, 다중 객체 추적 장치를 개시한다.Another embodiment of the present invention, an object detection unit for detecting a plurality of objects; a tracker generating unit that generates a tracker for tracking a target object that is any one of the objects; For the tracker, set the target object as a positive sample, set any one or more objects different from the target object among the objects as a negative sample, and learn the tracker using the samples Letting Tracker Learning Department; and an object tracking unit that tracks the target object using the tracker.

전술한 것 외의 다른 측면, 특징, 이점이 이하의 도면, 특허청구범위 및 발명의 상세한 설명으로부터 명확해질 것이다.Other aspects, features and advantages other than those described above will become apparent from the following drawings, claims, and detailed description of the invention.

본 발명의 실시예들에 따른 다중 객체 추적 방법 및 이를 위한 장치에 의해, 특정 추적기가 추적하는 객체를 포지티브(positive) 샘플로 설정하고, 나머지 추적기들이 추적하는 객체들을 네거티브(negative) 샘플들로 설정하는 방식으로 전체 추적기들을 학습시킴으로써, 이미지 내 전체 객체들이 서로 겹치는 복잡한 상황에서도 보다 객체들 각각을 안정적으로 분별하여 추적할 수 있다.By the multi-object tracking method and apparatus therefor according to embodiments of the present invention, an object tracked by a specific tracker is set as a positive sample, and objects tracked by the other trackers are set as negative samples By learning all the trackers in this way, even in a complex situation where all objects in the image overlap each other, it is possible to discriminate and track each object more stably.

도 1은 본 발명의 일 실시예에 따른 다중 객체 추적 장치의 구성을 나타낸 도면이다.
도 2는 본 발명의 일 실시예에 따른 다중 객체 추적 방법을 나타낸 동작 흐름도이다.
도 3은 본 발명의 일 실시예에 따른 추적기의 설정 및 학습 방법을 나타낸 도면이다.
도 4는 본 발명의 일 실시예에 따른 객체들 간의 겹침 비율을 산출하는 방법을 나타낸 도면이다.
도 5는 본 발명의 일 실시예에 따른 추적기의 동작 과정을 나타낸 도면이다.
1 is a diagram showing the configuration of a multi-object tracking apparatus according to an embodiment of the present invention.
2 is a flowchart illustrating a multi-object tracking method according to an embodiment of the present invention.
3 is a diagram illustrating a method for setting and learning a tracker according to an embodiment of the present invention.
4 is a diagram illustrating a method of calculating an overlap ratio between objects according to an embodiment of the present invention.
5 is a diagram illustrating an operation process of a tracker according to an embodiment of the present invention.

본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시 예를 가질 수 있는 바, 특정 실시 예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다. Since the present invention can apply various transformations and can have various embodiments, specific embodiments are illustrated in the drawings and described in detail in the detailed description. However, this is not intended to limit the present invention to specific embodiments, and should be understood to include all modifications, equivalents, and substitutes included in the spirit and scope of the present invention. In describing the present invention, if it is determined that a detailed description of a related known technology may obscure the gist of the present invention, the detailed description thereof will be omitted.

이하의 실시예에서, 제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 구성요소들은 용어들에 의해 한정되어서는 안 된다. 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. In the following embodiments, terms such as first, second, etc. may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from another.

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

본 발명의 실시예들은 기능적인 블록 구성들 및 다양한 처리 단계들로 나타내어질 수 있다. 이러한 기능 블록들은 특정 기능들을 실행하는 다양한 개수의 하드웨어 또는/및 소프트웨어 구성들로 구현될 수 있다. 예를 들어, 본 발명의 실시예들은 하나 이상의 마이크로프로세서들의 제어 또는 다른 제어 장치들에 의해서 다양한 기능들을 실행할 수 있는, 메모리, 프로세싱, 로직(logic), 룩업 테이블(look-up table) 등과 같은 직접 회로 구성들을 채용할 수 있다. 본 발명의 실시예의 구성 요소들이 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있는 것과 유사하게, 본 발명의 실시예는 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다. 또한, 본 발명의 실시예들은 전자적인 환경 설정, 신호 처리, 및/또는 데이터 처리 등을 위하여 종래 기술을 채용할 수 있다. 매커니즘, 요소, 수단, 구성과 같은 용어는 넓게 사용될 수 있으며, 기계적이고 물리적인 구성들로서 한정되는 것은 아니다. 상기 용어는 프로세서 등과 연계하여 소프트웨어의 일련의 처리들(routines)의 의미를 포함할 수 있다.Embodiments of the present invention may be represented by functional block configurations and various processing steps. These functional blocks may be implemented in any number of hardware and/or software configurations that perform specific functions. For example, embodiments of the present invention may be implemented directly, such as memory, processing, logic, look-up table, etc., capable of executing various functions by control of one or more microprocessors or other control devices. Circuit configurations may be employed. Similar to how components of an embodiment of the invention may be implemented as software programming or software elements, embodiments of the invention may include various algorithms implemented in combinations of data structures, processes, routines, or other programming constructs. , C, C++, Java, assembler, etc. may be implemented in a programming or scripting language. Functional aspects may be implemented in an algorithm running on one or more processors. In addition, embodiments of the present invention may employ conventional techniques for electronic environment setting, signal processing, and/or data processing, and the like. Terms such as mechanism, element, means, and configuration may be used broadly and are not limited to mechanical and physical configurations. The term may include the meaning of a series of routines of software in connection with a processor or the like.

또한, 본 명세서 및 도면에 있어서, 실질적으로 동일한 구성을 갖는 구성 요소에 대해서는, 동일한 부호를 사용함으로써 중복 설명을 생략한다.
In addition, in this specification and drawing, about the component which has substantially the same structure, duplicate description is abbreviate|omitted by using the same code|symbol.

도 1은 본 발명의 일 실시예에 따른 다중 객체 추적 장치의 구성을 나타낸 도면이다.1 is a diagram showing the configuration of a multi-object tracking apparatus according to an embodiment of the present invention.

도 1을 참조하면, 본 발명의 일 실시예에 따른 다중 객체 추적 장치는 객체 검출부(110), 추적기 생성부(120), 추적기 학습부(130) 및 객체 추적부(140)를 포함한다.Referring to FIG. 1 , a multi-object tracking apparatus according to an embodiment of the present invention includes an object detector 110 , a tracker generator 120 , a tracker learner 130 , and an object tracker 140 .

객체 검출부(110)는 이미지에서 복수의 객체들을 검출한다.The object detection unit 110 detects a plurality of objects in the image.

예컨대, 객체 검출부(110)는 카메라가 한 방향을 주시한 상태에서 획득한 현재 영상과 기준 영상 간의 차이 영상으로 객체의 국부 움직임을 검출할 수 있다. 기준 영상은 객체 감지를 위한 움직임 감지 기능이 활성화되는 순간 촬영되어 결정된다. 현재 영상은 기준 영상이 결정된 후 촬영된 영상이다. 기준 영상과 현재 영상은 카메라의 화각에 의해 결정된다.For example, the object detection unit 110 may detect the local motion of the object as a difference image between the current image and the reference image obtained while the camera gazes in one direction. The reference image is captured and determined at the moment the motion detection function for object detection is activated. The current image is an image taken after the reference image is determined. The reference image and the current image are determined by the angle of view of the camera.

객체 검출부(110)는 동일한 방향에서 생성된 기준 영상과 현재 영상의 단순 비교에 의해 객체를 검출할 수 있다. 본 발명의 객체 검출부(110)가 객체의 국부 움직임을 검출하는 방법은 전술된 영상 차이를 이용하는 방법에 제한되지 않으며, 공지의 다양한 방법이 적용될 수 있음은 물론이다.The object detector 110 may detect an object by simple comparison of a reference image and a current image generated in the same direction. The method of detecting the local motion of the object by the object detection unit 110 of the present invention is not limited to the method using the above-described image difference, and of course, various known methods may be applied.

선택적 실시예에서, 객체 검출부(110)는 객체 검출 결과의 집합인 메타데이터를 생성할 수 있다. 메타데이터는 영상 내에서 검출된 객체의 개수 및 각 객체의 좌표를 포함할 수 있다. 객체의 좌표는 객체 블럭의 좌측 상단 좌표 및 우측 하단 좌표를 포함할 수 있다.In an optional embodiment, the object detection unit 110 may generate metadata that is a set of object detection results. The metadata may include the number of objects detected in the image and coordinates of each object. The coordinates of the object may include upper-left coordinates and lower-right coordinates of the object block.

선택적 실시예에서, 객체 검출부(110)는 적분 채널 특징(Integral Channel Feature; ICF)을 이용하여 객체들을 검출할 수 있다. 적분 채널 특징은, 색상 관련, 방향 관련 적분 연산이 수행된 복수의 이미지로 구성될 수 있으며, 적분 채널 특징을 이용함으로써, 4번의 덧셈 또는 뺄셈 연산만으로 원하는 영역에 대한 특징 값의 합을 구할 수 있다.In an optional embodiment, the object detector 110 may detect objects using an integral channel feature (ICF). The integral channel feature may consist of a plurality of images on which color-related and direction-related integral operations have been performed, and by using the integral channel feature, the sum of feature values for a desired region can be obtained with only four addition or subtraction operations. .

추적기 생성부(120)는 객체 검출부(110)에서 검출된 객체들을 추적하기 위한 추적기를 생성한다. 추적기 생성부(120)는 객체들 중 어느 하나를 대상 객체로 하여 추적하기 위한 추적기를 생성할 수 있다.The tracker generator 120 generates a tracker for tracking objects detected by the object detector 110 . The tracker generator 120 may generate a tracker for tracking any one of the objects as a target object.

추적기는 복수의 분류기들의 결합으로 이루어질 수 있다. 분류기는 입력 이미지에 대해 테스트를 수행하고 결과 값으로서 해당 입력 이미지가 포지티브일 확률 또는 네거티브일 확률을 결과 값으로 제공한다. 특정 이미지가 포지티브인 경우, 해당 이미지는 대상 객체에 상응함을 의미하며, 특정 이미지가 네거티브인 경우, 해당 이미지는 대상 객체에 상응하지 아니함을 의미할 수 있다.A tracker may consist of a combination of a plurality of classifiers. The classifier performs a test on the input image and provides a probability that the input image is positive or negative as a result value as a result value. When the specific image is positive, it may mean that the corresponding image corresponds to the target object, and when the specific image is negative, it may mean that the corresponding image does not correspond to the target object.

분류기는 복수의 이진 테스트들을 포함할 수 있다. 예컨대, 분류기는 복수의 이진 테스트들을 임의로 선택하여 포함하는 랜더마이즈드 펀(randomized fern)일 수 있다.The classifier may include a plurality of binary tests. For example, the classifier may be a randomized fern including arbitrarily selected binary tests.

이진 테스트는 결과 값이 두 가지 값 중 하나로 정해지는 테스트이다. 이진 테스트는 임의의 두 사각형 영역 내 값들의 합들을 비교하고, 특정 영역의 합이 더 큰지 여부를 판단하는 테스트일 수 있다. 예컨대, 이진 테스트는 Haar-like와 같은 이진 테스트일 수 있다.A binary test is a test in which the result value is determined as one of two values. The binary test may be a test that compares the sums of values in two arbitrary rectangular regions and determines whether the sum of the specific regions is greater. For example, the binary test may be a binary test such as Haar-like.

복수의 이진 테스트들은 계층적 구조로 연결되어 수행될 수 있다. 이진 테스트들은 이진 트리(tree) 형태의 계층적 구조로 연결될 수 있다. 예컨대, 제1 이진 테스트가 루트 노드(root node)이고, 제2 및 제3 이진 테스트가 제1 이진 테스트의 자식 노드인 경우, 제1 이진 테스트를 수행하여 결과 값이 제1 결과 값인 경우 제2 이진 테스트를 수행하고, 제2 결과 값인 경우 제3 이진 테스트를 수행하도록 연결될 수 있다. 이진 테스트들 각각에는 결과 값에 자식 노드 또는 분류기의 결과 값이 매핑되어 있을 수 있다.A plurality of binary tests may be performed by being connected in a hierarchical structure. Binary tests may be connected in a hierarchical structure in the form of a binary tree. For example, if the first binary test is a root node and the second and third binary tests are child nodes of the first binary test, the first binary test is performed and the second binary test is performed if the result value is the first result value. It may be connected to perform a binary test, and to perform a third binary test in case of a second result value. In each of the binary tests, a result value of a child node or a classifier may be mapped to a result value.

선택적 실시예로, 추적기 생성부(120)는 객체들 중 대상 객체와 상이한 어느 하나를 추가 대상 객체로 하여 추적하기 위한 추가 추적기를 생성할 수 있다. 나아가, 추적기 생성부(120)는 객체들 각각을 추적하는 복수의 추적기들을 생성할 수 있다. 예컨대, 객체 검출부(110)에 의해 3개의 객체들이 검출된 경우, 각각의 객체를 추적하기 위한 3개의 추적기들이 생성될 수 있다.In an optional embodiment, the tracker generating unit 120 may generate an additional tracker for tracking by using any one different from the target object among the objects as the additional target object. Furthermore, the tracker generating unit 120 may generate a plurality of trackers that track each of the objects. For example, when three objects are detected by the object detector 110 , three trackers for tracking each object may be generated.

추적기 학습부(130)는 추적기 생성부(120)에서 생성된 추적기를 포지티브(positive) 샘플 및 네거티브(negative) 샘플을 이용하여 학습시킨다. 포지티브 샘플은 추적기가 추적하는 대상 영역에서 획득한 정보이며, 네거티브 샘플은 대상 영역을 제외한 영역에서 획득한 정보일 수 있다. 예컨대, 추적기 학습부(130)는 밀 부스팅(Multiple-Instance Learning boosting; MIL boosting) 방식을 이용하여 추적기를 학습시킬 수 있다.The tracker learner 130 learns the tracker generated by the tracker generator 120 using a positive sample and a negative sample. The positive sample may be information obtained in a target area tracked by the tracker, and the negative sample may be information obtained in an area other than the target area. For example, the tracker learning unit 130 may learn the tracker using a multiple-Instance Learning boosting (MIL boosting) method.

추적기 학습부(130)는 추적기에 대해, 대상 객체를 포지티브 샘플로 설정하고, 객체들 중 대상 객체와 상이한 어느 하나 이상의 객체를 네거티브 샘플로 설정하고, 해당 샘플들을 이용하여 추적기를 학습시킬 수 있다.With respect to the tracker, the tracker learning unit 130 may set a target object as a positive sample, set any one or more objects different from the target object among objects as a negative sample, and train the tracker using the samples.

선택적 실시예에서, 추적기 생성부(120)에 의해 추가 추적기가 생성된 경우, 추적기에 대해서는 대상 객체를 포지티브 샘플로 설정하고, 추가 대상 객체를 네거티브 샘플로 설정하고, 추가 추적기에 대해서는, 추가 대상 객체를 포지티브 샘플로 설정하고, 대상 객체를 네거티브 샘플로 설정하여 학습시킴으로써, 추적기 및 추가 추적기를 상호 학습시킬 수 있다. 나아가, 3개 이상의 추적기들이 생성된 경우에 있어서도, 추적기 학습부(130)는 각각의 추적기에 대해 자신의 대상 객체를 포지티브 샘플로 설정하고, 다른 추적기의 대상 객체를 네거티브 샘플로 설정함으로써, 해당 추적기들을 상호 학습시킬 수 있다.In an optional embodiment, when the additional tracker is generated by the tracker generating unit 120 , the target object is set as a positive sample for the tracker, the additional target object is set as a negative sample, and for the additional tracker, the additional target object is set. The tracker and the additional tracker can be mutually learned by setting , as a positive sample, and learning by setting the target object as a negative sample. Furthermore, even when three or more trackers are generated, the tracker learning unit 130 sets its own target object as a positive sample for each tracker and sets the target object of another tracker as a negative sample, so that the corresponding tracker can learn from each other.

추적기 학습부(130)는 추적기에 포함된 분류기들 각각에 가중치를 결정함으로써 추적기를 학습시킬 수 있다. 추적기는 입력 이미지가 포지티브일 최종 확률을 제공하며, 최종 확률은 해당 추적기에 포함된 분류기들에 의한 포지티브 확률들 각각에 가중치를 곱한 값들의 합 또는 평균 값일 수 있다. 예컨대, 가중치가 0 내지 '1/(추적기의 수)' 범위 내 값인 경우, 최종 확률은 포지티브 확률들 각각에 가중치를 곱한 값들의 합이 되고, 가중치가 0 내지 1 범위 내 값인 경우, 최종 확률은 포지티브 확률들 각각에 가중치를 곱한 값들의 평균 값일 수 있다.The tracker learning unit 130 may train the tracker by determining a weight for each of the classifiers included in the tracker. The tracker provides a final probability that the input image is positive, and the final probability may be a sum or average value of values obtained by multiplying each of the positive probabilities by classifiers included in the tracker by a weight. For example, if the weight is a value in the range of 0 to '1/(number of trackers)', the final probability is the sum of values obtained by multiplying each of the positive probabilities by the weight, and if the weight is in the range of 0 to 1, the final probability is It may be an average value of values obtained by multiplying each of the positive probabilities by a weight.

추적기 학습부(130)는 분류기들 각각에 대해 로그 가능도(log likelihood) 값을 산출하고, 로그 가능도 값을 이용하여 가중치를 결정할 수 있다.The tracker learner 130 may calculate a log likelihood value for each classifier and determine a weight using the log likelihood value.

예컨대, 분류기들 각각의 가중치는 로그 가능도 값에 따라 0 또는 1로 결정될 수 있다. 즉, 가중치가 0인 경우, 해당 분류기의 결과 값은 추적기에 반영되지 아니하며, 가중치가 1인 경우, 해당 분류기의 결과 값은 추적기에 반영되는 것을 의미한다.For example, the weight of each of the classifiers may be determined to be 0 or 1 according to a log likelihood value. That is, when the weight is 0, the result value of the corresponding classifier is not reflected in the tracker. When the weight is 1, it means that the result value of the corresponding classifier is reflected in the tracker.

보다 구체적으로, 분류기들 각각의 가중치를 결정하는 방법을 이하에서 설명한다.More specifically, a method of determining the weight of each of the classifiers will be described below.

먼저, 분류기들 각각에 대해 로그 가능도 값을 산출하고, 로그 가능도 값이 가장 큰 분류기의 가중치를 1로 결정한다.First, a log likelihood value is calculated for each of the classifiers, and the weight of the classifier having the largest log likelihood value is determined as 1.

다음으로, 가중치가 1로 결정된 하나의 분류기와 나머지 분류기들 각각을 이용하여 조합들을 생성한 뒤, 조합들 각각에 대해 로그 가능도 값을 산출하고, 로그 가능도 값이 가장 큰 조합에 사용된 나머지 분류기의 가중치를 1로 결정한다.Next, after generating combinations using one classifier whose weight is determined to be 1 and each of the remaining classifiers, a log likelihood value is calculated for each of the combinations, and the remainder used in the combination with the largest log likelihood value The weight of the classifier is determined to be 1.

다음으로, 가중치가 1로 결정된 두 분류기들과 나머지 분류기들 각각을 이용하여 조합들을 생성한 뒤, 조합들 각각에 대해 로그 가능도 값을 산출하고, 로그 가능도 값이 가장 큰 조합에 사용된 나머지 분류기의 가중치를 1로 결정한다. 이와 같은 과정을 한번 반복할 때마다 가중치가 1로 결정될 분류기를 하나씩 늘려나갈 수 있다. 즉, 이와 같은 과정을 반복함으로써, 기설정된 수만큼의 분류기의 가중치를 1로 결정하고, 나머지 분류기들의 가중치는 0으로 결정할 수 있다.Next, after generating combinations using the two classifiers whose weight is determined to be 1 and each of the remaining classifiers, a log likelihood value is calculated for each of the combinations, and the remainder used in the combination with the largest log likelihood value The weight of the classifier is determined to be 1. Whenever this process is repeated once, the classifier whose weight is determined to be 1 can be increased by one. That is, by repeating this process, the weight of a preset number of classifiers may be determined to be 1, and the weights of the remaining classifiers may be determined to be 0.

선택적 실시예에서, 추적기 학습부(130)는 포지티브 백(bag) 및 네거티브 백을 이용하여 추적기를 학습시킬 수 있다. 포티지브 백은 적어도 하나의 포지티브 샘플을 포함하는 샘플 그룹이며, 네거티브 백은 네거티브 샘플만을 포함하는 샘플 그룹이다.In an optional embodiment, the tracker learning unit 130 may train the tracker using a positive bag and a negative bag. A positive bag is a sample group including at least one positive sample, and a negative bag is a sample group including only a negative sample.

객체 추적부(140)는 추적기 학습부(130)에서 학습된 추적기를 이용하여 객체를 추적한다. 추적기 학습부(130)의 학습 결과에 따라, 특정 추적기는 특정 객체가 나머지 객체들과 겹치게 되더라도 해당 객체를 보다 안정적으로 분별하여 추적할 수 있다.The object tracking unit 140 tracks the object using the tracker learned by the tracker learning unit 130 . According to the learning result of the tracker learning unit 130 , the specific tracker may more stably discriminate and track the specific object even if the specific object overlaps the other objects.

선택적 실시예에서, 객체 추적부(140)는 객체들 간 겹침이 발생하는 경우, 객체들에 상응하는 영역들에 대해, 합집합 영역의 넓이 및 교집합 영역의 넓이의 비율을 산출함으로써, 겹침 비율을 산출할 수 있다.In an optional embodiment, when overlapping between objects occurs, the object tracking unit 140 calculates the overlap ratio by calculating the ratio of the area of the union area and the area of the intersection area for the areas corresponding to the objects. can do.

즉, 본 발명의 일 실시예에 따른 다중 객체 추적 장치는 특정 추적기에 대해, 해당 추적기가 추적하는 객체를 포지티브(positive) 샘플로 설정하고, 나머지 객체들을 네거티브(negative) 샘플들로 설정하는 방식으로 전체 추적기를 상호 학습시킴으로써, 이미지 내 전체 객체들이 서로 겹치는 복잡한 상황에서도 보다 객체들 각각을 안정적으로 분별하여 추적할 수 있다.
That is, the multi-object tracking apparatus according to an embodiment of the present invention sets the object tracked by the corresponding tracker as positive samples for a specific tracker, and sets the remaining objects as negative samples. By mutually learning the entire tracker, even in a complex situation where all objects in the image overlap each other, each of the objects can be discriminated and tracked more reliably.

도 2는 본 발명의 일 실시예에 따른 다중 객체 추적 방법을 나타낸 동작 흐름도이다.2 is a flowchart illustrating a multi-object tracking method according to an embodiment of the present invention.

도 2를 참조하면, 본 발명의 일 실시예에 따른 다중 객체 추적 방법은 객체 검출부가 복수의 객체들을 검출하는 단계(S210), 추적기 생성부가 대상 객체를 추적하기 위한 추적기를 생성하는 단계(S220), 추적기 학습부가 샘플들을 이용하여 추적기를 학습시키는 단계(S230), 및 객체 추적부가 대상 객체를 추적하는 단계(S240)를 포함한다.Referring to FIG. 2 , the multi-object tracking method according to an embodiment of the present invention includes a step of detecting a plurality of objects by an object detection unit (S210), and a step of generating a tracker for tracking a target object by a tracker generation unit (S220) , the tracker learning unit learning the tracker using the samples (S230), and the object tracking unit tracking the target object (S240).

먼저, 객체 검출부가 이미지에서 복수의 객체들을 검출한다(S210). 단계(S210)에서 객체 검출부는 적분 채널 특징을 이용하여 객체들을 검출할 수 있다.First, the object detector detects a plurality of objects in the image (S210). In operation S210 , the object detector may detect objects using an integral channel feature.

다음으로, 추적기 생성부가 단계(S210)에서 검출된 객체들을 추적하기 위한 추적기를 생성한다(S220). 단계(S220)에서 추적기 생성부는 복수의 객체들 각각을 추적하기 위한 복수의 추적기들을 생성할 수 있다.Next, the tracker generating unit generates a tracker for tracking the objects detected in step S210 (S220). In step S220, the tracker generating unit may generate a plurality of trackers for tracking each of the plurality of objects.

다음으로, 추적기 학습부가 단계(S220)에서 생성된 추적기를 포지티브 샘플 및 네거티브 샘플을 이용하여 학습시킨다(S230). 단계(S230)에서 추적기 학습부는 특정 추적기에 대해, 해당 추적기가 추적하기 위한 대상인 대상 객체를 포지티브 샘플로 설정하고, 대상 객체와 상이한 적어도 하나의 객체를 네거티브 샘플로 설정하여 해당 추적기를 학습시킬 수 있다. 단계(S220)에서 복수의 추적기들이 생성된 경우, 추적기 학습부는 각각의 추적기에 대해 자신의 대상 객체를 포지티브 샘플로 설정하고, 다른 추적기의 대상 객체를 네거티브 샘플로 설정함으로써, 해당 추적기들을 상호 학습시킬 수 있다.Next, the tracker learning unit learns the tracker generated in step S220 using the positive sample and the negative sample (S230). In step S230, the tracker learning unit sets a target object, which is a target for tracking by the corresponding tracker, as a positive sample for a specific tracker, and sets at least one object different from the target object as a negative sample to learn the tracker. . When a plurality of trackers are generated in step S220, the tracker learning unit sets its own target object as a positive sample for each tracker and sets the target object of another tracker as a negative sample, thereby mutually learning the trackers. can

마지막으로, 객체 검출부가 단계(S230)에서 학습된 추적기를 이용하여 객체를 추적한다(S240). 단계(S240)에서 객체들 간 겹침이 발생하는 경우, 객체 검출부는 객체들에 상응하는 영역들에 대해, 합집합 영역의 넓이 및 교집합 영역의 넓이의 비율을 산출함으로써, 겹침 비율을 산출할 수 있다.Finally, the object detection unit tracks the object using the tracker learned in step S230 (S240). When overlapping between objects occurs in step S240, the object detection unit calculates the overlap ratio by calculating the ratio of the area of the union area and the area of the intersection area with respect to the areas corresponding to the objects.

이와 같이, 본 발명의 일 실시예에 따른 다중 객체 추적 방법은 특정 추적기에 대해, 해당 추적기가 추적하는 객체를 포지티브(positive) 샘플로 설정하고, 나머지 객체들을 네거티브(negative) 샘플들로 설정하는 방식으로 전체 추적기를 상호 학습시킴으로써, 이미지 내 전체 객체들이 서로 겹치는 복잡한 상황에서도 보다 객체들 각각을 안정적으로 분별하여 추적할 수 있다.
As such, in the multi-object tracking method according to an embodiment of the present invention, for a specific tracker, an object tracked by the corresponding tracker is set as positive samples, and the remaining objects are set as negative samples. By mutually learning the entire tracker with , it is possible to discriminate and track each object more stably even in a complex situation where all objects in the image overlap each other.

도 3은 본 발명의 일 실시예에 따른 추적기의 설정 및 학습 방법을 나타낸 도면이다.3 is a diagram illustrating a method for setting and learning a tracker according to an embodiment of the present invention.

도 3을 참조하면, 본 발명의 일 실시예에 따른 추적기의 설정 방법은 객체들(311, 312, 313) 각각에 대해 추적기들(331, 332, 333)이 설정되는 과정을 통해 설명될 수 있다.Referring to FIG. 3 , a method for setting a tracker according to an embodiment of the present invention may be described through a process in which trackers 331 , 332 , and 333 are set for each of the objects 311 , 312 , and 313 . .

예컨대, 도 3(a)와 같이, 객체 검출부가 이미지(310)에서 사람들(301, 302, 303)을 인식하고, 도 3(b)와 같이, 사람들(301, 302, 303)을 포함하는 영역을 객체들(311, 312, 313)로서 획득할 수 있다. 도 3은 사람들을 인식하여 객체를 획득하는 예를 도시하였으나, 본 발명의 인식 대상은 제한되지 아니하며, 공지의 인식 알고리즘에 따른 다양한 인식 대상에 대해 객체를 획득할 수 있음은 물론이다.For example, as shown in FIG. 3A , the object detector recognizes people 301 , 302 , and 303 in the image 310 , and as shown in FIG. 3B , an area including the people 301 , 302 , 303 may be obtained as objects 311 , 312 , and 313 . 3 illustrates an example of recognizing people to obtain an object, the recognition target of the present invention is not limited, and it is of course possible to obtain an object for various recognition targets according to a known recognition algorithm.

다음으로 도 3(c)와 같이, 추적기 생성부가 전체 객체들(320) 중 추적 대상이 되는 객체에 대해 추적기를 생성할 수 있다. 도 3은 전체 객체들(320) 전부(311, 312, 313)에 대해 추적기들(331, 332, 333)을 생성한 경우를 도시하였으나, 전체 객체들(320) 중 일부(예컨대, 311, 312)에 대해서만 추적기들(예컨대, 331, 332)을 생성할 수도 있다. 이 경우, 추적기(331)는 객체(311)를, 추적기(332)는 객체(312)를, 추적기(333)는 객체(313)를 각각 대상 객체로서 추적하기 위한 것일 수 있다.Next, as shown in FIG. 3C , the tracker generating unit may generate a tracker for an object to be tracked among all objects 320 . 3 illustrates a case in which trackers 331 , 332 , 333 are generated for all 311 , 312 , 313 of all objects 320 , but some of all objects 320 (eg, 311 , 312 ) ) may create trackers (eg, 331 , 332 ) only for . In this case, the tracker 331 may track the object 311 , the tracker 332 may track the object 312 , and the tracker 333 may track the object 313 as a target object.

이와 같이, 본 발명의 일 실시예에 따른 추적기는 이미지에서 인식된 객체들 각각을 추적하기 위해 설정될 수 있다.In this way, the tracker according to an embodiment of the present invention may be set to track each of the recognized objects in the image.

도 3을 참조하면, 본 발명의 일 실시예에 따른 추적기의 학습 방법은 추적기들(331, 332, 333) 각각에 대해 포지티브 샘플(341a, 342a, 343a) 및 네거티브 샘플(341b, 342b, 343b)이 설정되는 과정을 통해 설명될 수 있다.Referring to FIG. 3 , in the tracker learning method according to an embodiment of the present invention, positive samples 341a , 342a , 343a and negative samples 341b , 342b , 343b for each of the trackers 331 , 332 , 333 ) This can be explained through the setting process.

예컨대, 추적기 학습부는 추적기(331)에 대해, 대상 객체(311)를 포지티브 샘플(341a)로 설정하고, 다른 추적기(332, 333)의 대상 객체(312, 313)를 네거티브 샘플(341b)로 설정할 수 있다. 또한, 추적기 학습부는 추적기(332)에 대해, 대상 객체(312)를 포지티브 샘플(342a)로 설정하고, 다른 추적기(331, 333)의 대상 객체(311, 313)를 네거티브 샘플(342b)로 설정할 수 있다. 또한, 추적기 학습부는 추적기(333)에 대해, 대상 객체(313)를 포지티브 샘플(343a)로 설정하고, 다른 추적기(331, 332)의 대상 객체(311, 312)를 네거티브 샘플(343b)로 설정할 수 있다.For example, the tracker learning unit sets the target object 311 to the positive sample 341a for the tracker 331 and sets the target objects 312 and 313 of the other trackers 332 and 333 to the negative sample 341b. can In addition, the tracker learning unit sets the target object 312 as a positive sample 342a for the tracker 332 and sets the target objects 311 and 313 of the other trackers 331 and 333 as a negative sample 342b. can In addition, the tracker learning unit sets the target object 313 to the positive sample 343a for the tracker 333, and sets the target objects 311 and 312 of the other trackers 331 and 332 to the negative sample 343b. can

이와 같이, 본 발명의 일 실시예에 따른 추적기는 추적기들 각각에 대해 자신의 대상 객체를 포지티브 샘플로 설정하고, 다른 추적기의 대상 객체를 네거티브 샘플로 설정함으로써, 상호 학습될 수 있다.
In this way, the tracker according to an embodiment of the present invention can be mutually learned by setting its own target object as a positive sample for each of the trackers and setting the target object of another tracker as a negative sample.

도 4는 본 발명의 일 실시예에 따른 객체들 간의 겹침 비율을 산출하는 방법을 나타낸 도면이다.4 is a diagram illustrating a method of calculating an overlap ratio between objects according to an embodiment of the present invention.

도 4(a)를 참조하면, 객체들(311, 312, 313) 중 두 객체들(311, 312) 간 겹침이 발생하였음을 알 수 있다.Referring to FIG. 4A , it can be seen that the overlapping between the two objects 311 and 312 of the objects 311 , 312 and 313 has occurred.

도 4(b)와 같이, 객체 검출부는 객체들(311, 312)에 상응하는 영역(A, B)들에 대해, 합집합 영역(A∪B)의 넓이 및 교집합 영역(A∩B)의 넓이의 비율을 산출함으로써, 겹침 비율을 산출할 수 있다.
As shown in FIG. 4(b) , the object detection unit has the area of the union area A∪B and the area of the intersection area A∩B with respect to the areas A and B corresponding to the objects 311 and 312 . By calculating the ratio of , the overlap ratio can be calculated.

도 5는 본 발명의 일 실시예에 따른 추적기의 동작 과정을 나타낸 도면이다.5 is a diagram illustrating an operation process of a tracker according to an embodiment of the present invention.

도 5를 참조하면, 본 발명의 일 실시예에 따른 추적기는 이미지(x)를 입력으로 하여, 이미지(x)가 포지티브일 확률 값(H(x))을 결과로 제공한다.Referring to FIG. 5 , the tracker according to an embodiment of the present invention provides an image (x) as an input and a probability value (H(x)) that the image (x) is positive as a result.

추적기는 복수의 분류기들(h1, hi, hr)을 포함하며, 분류기들(h1, hi, hr) 각각은 이미지(x)에 대해 복수의 이진 테스트를 수행하여 산출된 확률 값(예컨대, 이미지(x)가 포지티브일 확률 값(c0) 또는 네거티브일 확률 값(c1))을 제공한다. 추적기는 분류기들(h1, hi, hr)로부터 산출된 확률 값에 가중치(a1, ai, ar)을 곱하여 합한 값을 최종적으로 이미지(x)가 포지티브일 확률 값(H(x))을 제공한다.
The tracker includes a plurality of classifiers (h1, hi, hr), and each of the classifiers (h1, hi, hr) performs a plurality of binary tests on the image (x) to obtain a probability value (eg, the image ( It gives a probability value c0 that x) is positive or a probability value c1) that is negative. The tracker multiplies the probability values calculated from the classifiers (h1, hi, hr) by the weights (a1, ai, ar) and finally provides a probability value (H(x)) that the image (x) is positive. .

이상 설명된 본 발명에 따른 실시예는 컴퓨터 상에서 다양한 구성요소를 통하여 실행될 수 있는 컴퓨터 프로그램의 형태로 구현될 수 있으며, 이와 같은 컴퓨터 프로그램은 컴퓨터로 판독 가능한 매체에 기록될 수 있다. 이때, 매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체, CD-ROM 및 DVD와 같은 광기록 매체, 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical medium), 및 ROM, RAM, 플래시 메모리 등과 같은, 프로그램 명령어를 저장하고 실행하도록 특별히 구성된 하드웨어 장치를 포함할 수 있다. 나아가, 매체는 네트워크 상에서 전송 가능한 형태로 구현되는 무형의 매체를 포함할 수 있으며, 예를 들어 소프트웨어 또는 애플리케이션 형태로 구현되어 네트워크를 통해 전송 및 유통이 가능한 형태의 매체일 수도 있다. The embodiment according to the present invention described above may be implemented in the form of a computer program that can be executed through various components on a computer, and such a computer program may be recorded in a computer-readable medium. In this case, the medium includes a hard disk, a magnetic medium such as a floppy disk and a magnetic tape, an optical recording medium such as CD-ROM and DVD, a magneto-optical medium such as a floppy disk, and a ROM. , RAM, flash memory, and the like, and hardware devices specially configured to store and execute program instructions. Furthermore, the medium may include an intangible medium implemented in a form that can be transmitted on a network, for example, may be a type of medium that is implemented in the form of software or an application and can be transmitted and distributed through a network.

한편, 상기 컴퓨터 프로그램은 본 발명을 위하여 특별히 설계되고 구성된 것이거나 컴퓨터 소프트웨어 분야의 당업자에게 공지되어 사용 가능한 것일 수 있다. 컴퓨터 프로그램의 예에는, 컴파일러에 의하여 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용하여 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드도 포함될 수 있다.Meanwhile, the computer program may be specially designed and configured for the present invention, or may be known and used by those skilled in the computer software field. Examples of the computer program may include not only machine code generated by a compiler, but also high-level language code that can be executed by a computer using an interpreter or the like.

본 발명에서 설명하는 특정 실행들은 일 실시 예들로서, 어떠한 방법으로도 본 발명의 범위를 한정하는 것은 아니다. 명세서의 간결함을 위하여, 종래 전자적인 구성들, 제어 시스템들, 소프트웨어, 상기 시스템들의 다른 기능적인 측면들의 기재는 생략될 수 있다. 또한, 도면에 도시된 구성 요소들 간의 선들의 연결 또는 연결 부재들은 기능적인 연결 및/또는 물리적 또는 회로적 연결들을 예시적으로 나타낸 것으로서, 실제 장치에서는 대체 가능하거나 추가의 다양한 기능적인 연결, 물리적인 연결, 또는 회로 연결들로서 나타내어질 수 있다. 또한, “필수적인”, “중요하게” 등과 같이 구체적인 언급이 없다면 본 발명의 적용을 위하여 반드시 필요한 구성 요소가 아닐 수 있다.The specific implementations described in the present invention are only examples, and do not limit the scope of the present invention in any way. For brevity of the specification, descriptions of conventional electronic components, control systems, software, and other functional aspects of the systems may be omitted. In addition, the connection or connection members of the lines between the components shown in the drawings illustratively represent functional connections and/or physical or circuit connections, and in an actual device, various functional connections, physical connections that are replaceable or additional may be referred to as connections, or circuit connections. In addition, unless there is a specific reference such as “essential” or “importantly”, it may not be a necessary component for the application of the present invention.

따라서, 본 발명의 사상은 상기 설명된 실시예에 국한되어 정해져서는 아니 되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 또는 이로부터 등가적으로 변경된 모든 범위는 본 발명의 사상의 범주에 속한다고 할 것이다.Therefore, the spirit of the present invention should not be limited to the above-described embodiments, and the scope of the spirit of the present invention is not limited to the scope of the scope of the present invention. will be said to belong to

110: 객체 검출부 120: 추적기 생성부
130: 추적기 학습부 140: 객체 추적부
110: object detection unit 120: tracker generation unit
130: tracker learning unit 140: object tracking unit

Claims (6)

객체 검출부가 복수의 객체들을 검출하는 단계;
추적기 생성부가 상기 객체들 중 어느 하나인 대상 객체를 추적하기 위한 추적기를 생성하는 단계;
추적기 학습부가 상기 추적기에 대해, 상기 대상 객체를 포지티브(positive) 샘플로 설정하고, 상기 객체들 중 상기 대상 객체와 상이한 어느 하나 이상의 객체를 네거티브(negative) 샘플로 설정하고, 상기 샘플들을 이용하여 상기 추적기를 학습시키는 단계; 및
객체 추적부가 상기 추적기를 이용하여 상기 대상 객체를 추적하는 단계;를 포함하고,
상기 추적기 생성 단계는, 상기 추적기 생성부에 의해 각각이 서로 다른 대상 객체를 추적하는 복수의 추적기들을 생성하고,
상기 추적기 학습 단계는, 상기 추적기 학습부에 의해, 상기 복수의 추적기들 각각이 상기 객체들 중 자신이 추적하는 대상 객체인 포지티브 샘플과 다른 추적기들이 추적하는 객체들인 네거티브 샘플들을 이용하여 학습되도록 상기 복수의 추적기들을 상호 학습시키는 것을 특징으로 하는, 다중 객체 추적 방법.
detecting, by an object detection unit, a plurality of objects;
generating, by a tracker generating unit, a tracker for tracking a target object that is any one of the objects;
The tracker learning unit sets the target object as a positive sample for the tracker, sets any one or more objects different from the target object among the objects as a negative sample, and uses the samples to set the target object as a negative sample. training the tracker; and
Including; tracking the target object by an object tracking unit using the tracker;
In the tracker generation step, a plurality of trackers for tracking different target objects are generated by the tracker generator,
In the tracker learning step, each of the plurality of trackers is learned by the tracker learning unit using positive samples that are target objects to be tracked among the objects and negative samples that are objects tracked by other trackers. Multi-object tracking method, characterized in that the trackers of the mutual learning.
삭제delete 제1 항에 있어서,
상기 추적기를 학습시키는 단계는
상기 추적기 학습부가 상기 추적기에 포함된 분류기들 각각 또는 상기 분류기들 중 어느 둘 이상의 조합들 각각의 로그 가능도(log likelihood) 값을 산출하여 상기 분류기들 각각의 가중치를 결정함으로써 상기 추적기를 학습시키는 것을 특징으로 하는, 다중 객체 추적 방법.
According to claim 1,
The step of learning the tracker is
Learning the tracker by the tracker learning unit calculating a log likelihood value of each of the classifiers included in the tracker or each of any two or more combinations of the classifiers and determining the weight of each of the classifiers Characterized, a multi-object tracking method.
복수의 객체들을 검출하는 객체 검출부;
상기 객체들 중 어느 하나인 대상 객체를 추적하기 위한 추적기를 생성하는 추적기 생성부;
상기 추적기에 대해, 상기 대상 객체를 포지티브(positive) 샘플로 설정하고, 상기 객체들 중 상기 대상 객체와 상이한 어느 하나 이상의 객체를 네거티브(negative) 샘플로 설정하고, 상기 샘플들을 이용하여 상기 추적기를 학습시키는 추적기 학습부; 및
상기 추적기를 이용하여 상기 대상 객체를 추적하는 객체 추적부;를 포함하고,
상기 추적기 생성부는 각각이 서로 다른 대상 객체를 추적하는 복수의 추적기들을 생성하고,
상기 추적기 학습부는, 상기 복수의 추적기들 각각이 상기 객체들 중 자신이 추적하는 대상 객체인 포지티브 샘플과 다른 추적기들이 추적하는 객체들인 네거티브 샘플들을 이용하여 학습되도록 상기 복수의 추적기들을 상호 학습시키는 것을 특징으로 하는, 다중 객체 추적 장치.
an object detection unit detecting a plurality of objects;
a tracker generating unit that generates a tracker for tracking a target object that is any one of the objects;
For the tracker, the target object is set as a positive sample, any one or more objects different from the target object among the objects are set as a negative sample, and the tracker is trained using the samples. Letting Tracker Learning Department; and
Including; an object tracking unit for tracking the target object using the tracker,
The tracker generating unit generates a plurality of trackers that each track different target objects,
The tracker learning unit mutually learns the plurality of trackers so that each of the plurality of trackers is learned by using a positive sample that is a target object to be tracked among the objects and negative samples that are objects tracked by other trackers. , which is a multi-object tracking device.
삭제delete 제4 항에 있어서,
상기 추적기 학습부는
상기 추적기에 포함된 분류기들 각각 또는 상기 분류기들 중 어느 둘 이상의 조합들 각각의 로그 가능도(log likelihood) 값을 산출하여 상기 분류기들 각각의 가중치를 결정함으로써 상기 추적기를 학습시키는 것을 특징으로 하는, 다중 객체 추적 장치.
5. The method of claim 4,
The tracker learning unit
Characterized in that the tracker is trained by calculating a log likelihood value of each of the classifiers included in the tracker or each of combinations of any two or more of the classifiers and determining the weight of each of the classifiers, Multi-object tracking device.
KR1020150070569A 2015-05-20 2015-05-20 Method of tracking multiple objects and apparatus for the same KR102399974B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020150070569A KR102399974B1 (en) 2015-05-20 2015-05-20 Method of tracking multiple objects and apparatus for the same
KR1020220059605A KR102552968B1 (en) 2015-05-20 2022-05-16 Method of tracking multiple objects and apparatus for the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020150070569A KR102399974B1 (en) 2015-05-20 2015-05-20 Method of tracking multiple objects and apparatus for the same

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020220059605A Division KR102552968B1 (en) 2015-05-20 2022-05-16 Method of tracking multiple objects and apparatus for the same

Publications (2)

Publication Number Publication Date
KR20160136689A KR20160136689A (en) 2016-11-30
KR102399974B1 true KR102399974B1 (en) 2022-05-19

Family

ID=57707262

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020150070569A KR102399974B1 (en) 2015-05-20 2015-05-20 Method of tracking multiple objects and apparatus for the same
KR1020220059605A KR102552968B1 (en) 2015-05-20 2022-05-16 Method of tracking multiple objects and apparatus for the same

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020220059605A KR102552968B1 (en) 2015-05-20 2022-05-16 Method of tracking multiple objects and apparatus for the same

Country Status (1)

Country Link
KR (2) KR102399974B1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101879735B1 (en) * 2017-03-15 2018-07-18 (주)넥셀 Method and apparatus for automatic generating training data and self-learning apparatus and method using the same
KR102465960B1 (en) * 2017-08-29 2022-11-11 인하대학교 산학협력단 Multi-Class Multi-Object Tracking Method using Changing Point Detection
KR102500853B1 (en) * 2020-12-14 2023-02-17 주식회사 에스원 Fight Situation Monitering Method Based on Lighted Deep Learning and System thereof
KR102517905B1 (en) 2022-10-04 2023-04-04 주식회사 비던스 Artificial intelligence-based ad exchange platform process processing method, device and system for improving traffic processing speed performance

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010539623A (en) * 2007-09-19 2010-12-16 パナソニック株式会社 System and method for identifying objects in an image using position information

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100745980B1 (en) * 2006-01-11 2007-08-06 삼성전자주식회사 Score fusion method and apparatus thereof for combining multiple classifiers
CN101221623B (en) * 2008-01-30 2011-11-23 北京中星微电子有限公司 Object type on-line training and recognizing method and system thereof
KR100979726B1 (en) 2008-08-29 2010-09-02 (주)제이티 Method of image vehicle detection using feature of moving object

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2010539623A (en) * 2007-09-19 2010-12-16 パナソニック株式会社 System and method for identifying objects in an image using position information

Also Published As

Publication number Publication date
KR20160136689A (en) 2016-11-30
KR20220075273A (en) 2022-06-08
KR102552968B1 (en) 2023-07-10

Similar Documents

Publication Publication Date Title
KR102552968B1 (en) Method of tracking multiple objects and apparatus for the same
CN103259962B (en) A kind of target tracking method and relevant apparatus
US9971942B2 (en) Object detection in crowded scenes using context-driven label propagation
CN106971401B (en) Multi-target tracking device and method
JP7327077B2 (en) Road obstacle detection device, road obstacle detection method, and road obstacle detection program
WO2016179808A1 (en) An apparatus and a method for face parts and face detection
CN112149491A (en) Method for determining a trust value of a detected object
US11062462B2 (en) Detection of visual tracker divergence
KR102325072B1 (en) Method for pose matching and device for executing the method
KR102138681B1 (en) Apparatus and method for detecting object based on heterogeneous sensor
WO2013128839A1 (en) Image recognition system, image recognition method and computer program
US20220383146A1 (en) Method and Device for Training a Machine Learning Algorithm
KR20200049277A (en) Method and Apparatus for Real-time Target Recognition Type Tracking
CN105760854A (en) Information processing method and electronic device
Aziz et al. Instance segmentation of fire safety equipment using mask R-CNN
KR20190110259A (en) Apparatus and method for object detecting using object tracking
Mattheij et al. Depth-based detection using Haarlike features
US20220261642A1 (en) Adversarial example detection system, method, and program
CN111444803A (en) Image processing method, image processing device, electronic equipment and storage medium
JP5643147B2 (en) Motion vector detection apparatus, motion vector detection method, and motion vector detection program
JP7539115B2 (en) Identification information assignment device, identification information assignment method, and program
US20230196752A1 (en) Information processing apparatus, information processing method, and non-transitory computer-readable storage medium
KR102637343B1 (en) Method and apparatus for tracking object
US11494928B2 (en) Method for predicting a three-dimensional (3D) representation, apparatus, system and computer program therefor
KR102176179B1 (en) Electronic device for performing feature vector assignment of a tracklet for object tracking in an image and operating method thereof

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant