KR20210027778A - Apparatus and method for analyzing abnormal behavior through object detection and tracking - Google Patents

Apparatus and method for analyzing abnormal behavior through object detection and tracking Download PDF

Info

Publication number
KR20210027778A
KR20210027778A KR1020190108621A KR20190108621A KR20210027778A KR 20210027778 A KR20210027778 A KR 20210027778A KR 1020190108621 A KR1020190108621 A KR 1020190108621A KR 20190108621 A KR20190108621 A KR 20190108621A KR 20210027778 A KR20210027778 A KR 20210027778A
Authority
KR
South Korea
Prior art keywords
abnormal behavior
tracking
interest
behavior analysis
program instructions
Prior art date
Application number
KR1020190108621A
Other languages
Korean (ko)
Other versions
KR102263717B1 (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 KR1020190108621A priority Critical patent/KR102263717B1/en
Publication of KR20210027778A publication Critical patent/KR20210027778A/en
Application granted granted Critical
Publication of KR102263717B1 publication Critical patent/KR102263717B1/en

Links

Images

Classifications

    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B13/00Burglar, theft or intruder alarms
    • G08B13/18Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength
    • G08B13/189Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems
    • G08B13/194Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems using image scanning and comparing systems
    • G08B13/196Actuation by interference with heat, light, or radiation of shorter wavelength; Actuation by intruding sources of heat, light, or radiation of shorter wavelength using passive radiation detection systems using image scanning and comparing systems using television cameras
    • G08B13/19602Image analysis to detect motion of the intruder, e.g. by frame subtraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/40Image enhancement or restoration by the use of histogram techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/18Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast

Abstract

The present invention discloses a device and a method for analyzing abnormal behavior through object detection and tracking. According to the present invention, the device for analyzing abnormal behavior through object detection and tracking includes a processor and a memory connected to the processor. The memory detects an object existing in the input image in a preset frame unit based on a neural network, tracks the detected object using a kernerlize correlation filter (KCF) using weighted gray transform in units of each frame and Hue-Histogram comparison of objects existing in different frames, determines whether the tracked object has abnormal behavior based on whether it enters a preset region of interest or a pre-trained neural network, and stores program instructions executable by the processor, in the device for analyzing abnormal behavior.

Description

객체 검출 및 추적을 통한 이상행동 분석 장치 및 방법{Apparatus and method for analyzing abnormal behavior through object detection and tracking}Apparatus and method for analyzing abnormal behavior through object detection and tracking}

본 발명은 객체 검출 및 추적을 통한 이상행동 분석 장치 및 방법에 관한 것이다. The present invention relates to an apparatus and method for analyzing abnormal behavior through object detection and tracking.

최근, 범죄예방이나 사후증거 확보 등을 위해 CCTV를 곳곳에 설치하고, 영상을 분석하는 시스템이 일반적으로 제공되고 있다. Recently, in order to prevent crime or secure post-evidence, CCTVs are installed everywhere, and a system for analyzing images has been generally provided.

특히 범죄의 사전예방 및 모니터링을 위해 영상 내에서 객체를 검출하고 추적의 정확도를 유지하는 것이 중요하고, 또한, 이를 통해 객체가 금지된 구역에 침입하거나 배회하는지 여부, 폭행 또는 낙상 상황을 즉각적으로 분석하는 것이 중요하다. In particular, for the prevention and monitoring of crimes, it is important to detect objects in the video and maintain tracking accuracy.In addition, through this, it is important to immediately analyze whether the object invades or roams the prohibited area, assault or fall situation. It is important to do.

종래에 객체 검출 및 추적을 통한 이상행동 분석 기법이 다수 제안되고는 있으나, 일반적인 객체 추적기를 사용하는 경우 주변 가림 등에 의해 객체를 놓치는 경우가 다수 발생한다. Conventionally, a number of techniques for analyzing anomalous behavior through object detection and tracking have been proposed, but when a general object tracker is used, there are many cases of missing objects due to surrounding occlusion.

또한, 객체의 움직임에 따라 이상행동이 아님에도 이상행동으로 판단하는 오류가 자주 발생하는 문제점이 있다. In addition, there is a problem in that an error of determining an abnormal behavior occurs frequently even though it is not an abnormal behavior according to the movement of an object.

한국공개특허 10-2019-0074898Korean Patent Publication 10-2019-0074898

상기한 종래기술의 문제점을 해결하기 위해, 본 발명은 객체 추적이 정확히 이루어질 수 있는 객체 검출 및 추적을 통한 이상행동 분석 장치 및 방법을 제안하고자 한다. In order to solve the problems of the prior art, the present invention proposes an apparatus and method for analyzing abnormal behavior through object detection and tracking, in which object tracking can be accurately performed.

상기한 바와 같은 목적을 달성하기 위하여, 본 발명의 일 실시예에 따르면, 객체 검출 및 추적을 통한 이상행동 분석 장치로서, 프로세서; 및 상기 프로세서에 연결되는 메모리를 포함하되, 상기 메모리는, 신경망 기반으로 입력 영상에서 존재하는 객체를 미리 설정된 프레임 단위로 검출하고, 매 프레임 단위로 가중 그레이 변환을 이용한 KCF(Kernerlize Correlation Filter) 및 서로 다른 프레임에 존재하는 객체의 색상 히스토그램(Hue-Histogram) 비교를 이용하여 상기 검출된 객체를 추적하고, 미리 설정된 관심 영역으로의 진입 여부 또는 미리 학습된 신경망을 기반으로 상기 추적된 객체의 이상행동 여부를 판단하도록, 상기 프로세서에 의해 실행 가능한 프로그램 명령어들을 저장하는 이상행동 분석 장치가 제공된다. In order to achieve the above object, according to an embodiment of the present invention, an apparatus for analyzing abnormal behavior through object detection and tracking, comprising: a processor; And a memory connected to the processor, wherein the memory detects an object present in the input image based on a neural network in units of a preset frame, and uses a weighted gray transformation in each frame unit, and the memory includes a Kernerlize Correlation Filter (KCF) and each other. The detected object is tracked using color histogram comparison of objects existing in different frames, and whether the tracked object has abnormal behavior based on a pre-set region of interest or a pre-learned neural network In order to determine, an abnormal behavior analysis apparatus for storing program instructions executable by the processor is provided.

상기 프로그램 명령어들은, 상기 객체의 추적을 위해, 상기 입력된 영상의 RGB 채널 각각의 분포를 고려하여 상기 RGB 채널 각각에 서로 다른 가중치를 부여할 수 있다. The program instructions may give different weights to each of the RGB channels in consideration of distribution of each of the RGB channels of the input image for tracking the object.

상기 프로그램 명령어들은, 상기 검출된 객체의 x,y 좌표, 최초 검출 시각 및 추적을 통한 마지막 검출 시각을 관심 객체 리스트로 관리하고, 현재 프레임에서 검출된 객체가 상기 관심 객체 리스트에서 관리하는 객체와 동일한 객체인지 여부를 판단하여 상기 관심 객체 리스트를 업데이트할 수 있다. The program instructions manage the x and y coordinates of the detected object, the initial detection time, and the last detection time through tracking as an object of interest list, and the object detected in the current frame is the same as the object managed in the object of interest list. The object of interest list may be updated by determining whether it is an object.

상기 프로그램 명령어들은, 매 프레임 단위로 상기 추적되는 객체의 이미지를 크롭하고, 상기 크롭된 이미지의 묶음이 연속되고, 상기 크롭된 이미지가 미리 설정된 수량에 도달하는 경우, 상기 크롭된 이미지에 상응하는 객체의 이상행동 여부를 판단할 수 있다. The program instructions are the object corresponding to the cropped image when the image of the tracked object is cropped every frame, the bundle of the cropped images is continuous, and the cropped image reaches a preset quantity. It is possible to determine whether or not to behave abnormally.

상기 프로그램 명령어들은, 상기 미리 설정된 관심 영역과 상기 추적되는 객체의 이동 궤적의 기하학적 분석을 통해 상기 객체의 침입 또는 배회 상황 여부를 판단할 수 있다. The program instructions may determine whether the object is intrusive or roaming through geometric analysis of the preset region of interest and a movement trajectory of the tracked object.

상기 프로그램 명령어들은, 상기 미리 설정된 관심 영역에 대한 기준 라인과 상기 객체의 이동 방향이 상기 기준 라인에 대해 정“‡항 또는 역방향인지 여부를 이용하여 상기 객체의 침입 또는 배회 상황 여부를 판단할 수 있다. The program commands may determine whether the object is intrusive or roaming by using a reference line for the preset region of interest and whether the movement direction of the object is a positive “‡ term or a reverse direction with respect to the reference line. .

상기 프로그램 명령어들은, 상기 미리 학습된 신경망을 기반으로, 상기 객체의 낙상 또는 폭행 상황 여부를 판단할 수 있다. The program instructions may determine whether the object falls or is violated based on the pre-learned neural network.

본 발명의 다른 측면에 따르면, 프로세서 및 메모리를 포함하는 장치에서 객체 검출 및 추적을 통한 이상행동 분석 방법으로서, 신경망 기반으로 입력 영상에서 존재하는 객체를 미리 설정된 프레임 단위로 검출하는 단계; 매 프레임 단위로 가중 그레이 변환을 이용한 KCF(Kernerlize Correlation Filter) 및 서로 다른 프레임에 존재하는 객체의 색상 히스토그램(Hue-Histogram) 비교를 이용하여 상기 검출된 객체를 추적하는 단계; 및 미리 설정된 관심 영역으로의 진입 여부 또는 미리 학습된 신경망을 기반으로 상기 추적된 객체의 이상행동 여부를 판단하는 단계를 포함하는 이상행동 분석 방법이 제공된다. According to another aspect of the present invention, there is provided a method for analyzing anomalous behavior through object detection and tracking in a device including a processor and a memory, the method comprising: detecting an object existing in an input image based on a neural network in units of a preset frame; Tracking the detected object using a Kernerlize Correlation Filter (KCF) using a weighted gray transformation for each frame and a color histogram of objects existing in different frames; And determining whether the tracked object has an abnormal behavior based on whether to enter a predetermined region of interest or a previously learned neural network.

본 발명의 또 다른 측면에 따르면, 방법을 수행하는 기록매체에 저장되는 프로그램이 제공된다. According to another aspect of the present invention, a program stored on a recording medium for performing a method is provided.

본 발명에 따르면, 객체 검출 및 추적이 정확히 이루어질 수 있고, 이를 통해 추적된 객체의 이상행동 여부를 정확히 판별할 수 있다. According to the present invention, object detection and tracking can be accurately performed, and through this, it is possible to accurately determine whether or not the tracked object has abnormal behavior.

도 1은 본 발명의 일 실시예에 따른 객체 검출 및 추적을 통한 이상행동 분석 장치의 구성을 도시한 도면이다.
도 2는 본 발명의 일 실시예에 따른 이상행동 분석을 위한 프로그램 모듈 구성을 도시한 도면이다.
도 3은 객체의 이동을 추적하는 과정을 도시한 도면이다.
도 4는 객체 간의 겹침(Occlusion)으로 객체 추적이 실패하는 상황을 나타낸 것이다.
도 5는 KCF 기반의 객체 추적 과정을 설명하기 위한 도면이다.
도 6은 관심 객체와의 일치 정도를 분석하기 위한 cyclic shifts 방식을 나타낸 것이다.
도 7은 모든 cyclic shifts에 대하여 상관 값을 구하여 획득한 응답 맵(response map)을 나타낸 것이다.
도 8은 본 발명의 일 실시예에 따른 객체 추적 과정을 설명하기 위한 도면이다.
도 9는 기존 방식과 본 실시예에 따른 불필요한 배경 정보를 제거하는 과정을 설명하기 위한 도면이다.
도 10은 본 실시예에 따른 객체 정보를 관리하는 과정을 설명하기 위한 도면이다.
도 11은 객체 크롭 모듈의 동작 결과 생성된 이미지를 나타낸 것이다.
도 12는 본 실시예에 따른 객체 크롭 모듈의 동작 과정을 설명하기 위한 도면이다.
도 13은 본 실시예에 따른 벡터의 교차 판별 과정을 설명하기 위한 도면이다.
도 14는 기하학적 분석 기반의 객체 침입 판단 과정을 나타낸 것이다.
도 15는 ResNet의 residual learning block을 도시한 도면이다.
도 16은 본 실시예에 따른 residual block을 도시한 도면이다.
도 17은 이상행동 분석 네트워크를 학습하기 위해 생성한 training sample 영상들이다.
1 is a diagram showing the configuration of an apparatus for analyzing abnormal behavior through object detection and tracking according to an embodiment of the present invention.
2 is a diagram showing the configuration of a program module for analyzing abnormal behavior according to an embodiment of the present invention.
3 is a diagram illustrating a process of tracking movement of an object.
4 shows a situation in which object tracking fails due to occlusion between objects.
5 is a diagram for describing a KCF-based object tracking process.
6 shows a cyclic shifts method for analyzing a degree of agreement with an object of interest.
7 shows a response map obtained by obtaining a correlation value for all cyclic shifts.
8 is a diagram for describing an object tracking process according to an embodiment of the present invention.
9 is a diagram for explaining a process of removing unnecessary background information according to an existing method and the present embodiment.
10 is a diagram for describing a process of managing object information according to the present embodiment.
11 shows an image generated as a result of an operation of an object crop module.
12 is a diagram for explaining an operation process of the object crop module according to the present embodiment.
13 is a diagram for explaining a process of determining the intersection of vectors according to the present embodiment.
14 shows an object intrusion determination process based on geometric analysis.
15 is a diagram illustrating a residual learning block of ResNet.
16 is a diagram showing a residual block according to the present embodiment.
17 shows training sample images generated to learn an abnormal behavior analysis network.

본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세하게 설명하고자 한다.In the present invention, various modifications may be made and various embodiments may be provided, and specific embodiments will be illustrated in the drawings and described in detail.

그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. However, this is not intended to limit the present invention to a specific embodiment, it should be understood to include all changes, equivalents, and substitutes included in the spirit and scope of the present invention.

도 1은 본 발명의 일 실시예에 따른 객체 검출 및 추적을 통한 이상행동 분석 장치의 구성을 도시한 도면이다. 1 is a diagram showing the configuration of an apparatus for analyzing abnormal behavior through object detection and tracking according to an embodiment of the present invention.

도 1에 도시된 바와 같이, 본 실시예에 따른 이상행동 분석 장치는 프로세서(100) 및 메모리(102)를 포함할 수 있다. As shown in FIG. 1, the abnormal behavior analysis apparatus according to the present embodiment may include a processor 100 and a memory 102.

프로세서(100)는 컴퓨터 프로그램을 실행할 수 있는 CPU(central processing unit)나 그밖에 가상 머신 등을 포함할 수 있다. The processor 100 may include a central processing unit (CPU) capable of executing a computer program or a virtual machine.

메모리(102)는 고정식 하드 드라이브나 착탈식 저장 장치와 같은 불휘발성 저장 장치를 포함할 수 있다. 착탈식 저장 장치는 컴팩트 플래시 유닛, USB 메모리 스틱 등을 포함할 수 있다. 메모리(102)는 각종 랜덤 액세스 메모리와 같은 휘발성 메모리도 포함할 수 있다.The memory 102 may include a nonvolatile storage device such as a fixed hard drive or a removable storage device. The removable storage device may include a compact flash unit, a USB memory stick, or the like. Memory 102 may also include volatile memories such as various random access memories.

본 발명의 일 실시예에 따르면, 프로세서(100)는 메모리(102)에 저장된 프로그램 명령어들을 이용하여 미리 설정된 프레임 단위마다 객체를 검출하고, 검출된 객체를 추적하며, 추적 결과를 객체의 이상행동 여부를 판단한다. According to an embodiment of the present invention, the processor 100 detects an object for each preset frame unit by using program instructions stored in the memory 102, tracks the detected object, and determines whether the object has abnormal behavior. Judge

도 2는 본 발명의 일 실시예에 따른 이상행동 분석을 위한 프로그램 모듈 구성을 도시한 도면이다. 2 is a diagram showing the configuration of a program module for analyzing abnormal behavior according to an embodiment of the present invention.

도 2에 도시된 바와 같이, 본 실시예에 따른 프로그램 모듈은, 객체 검출 모듈(200), 객체 추적 모듈(202), 객체 관리 모듈(204), 객체 크롭 모듈(206) 및 이상행동 분석 모듈(208)을 포함할 수 있다. As shown in FIG. 2, the program module according to the present embodiment includes an object detection module 200, an object tracking module 202, an object management module 204, an object crop module 206, and an abnormal behavior analysis module ( 208).

본 실시예에서는, 실외 환경, 다양한 조명 조건에서의 객체 검출을 위해 CNN(Convolution Neural Network) 기반의 객체 검출 방법을 사용한다. 기존의 배경차분 방법으로는 배경의 변화의 발생, 카메라 흔들림, 조명 변화의 발생 등의 실제 실외 영상에서 객체를 검출하는데 어려움이 있다. 이에 CNN 기반의 객체 검출 알고리즘을 이용하여 객체 검출의 정확도를 개선한다. In this embodiment, an object detection method based on a Convolution Neural Network (CNN) is used for object detection in an outdoor environment and various lighting conditions. With the existing background difference method, it is difficult to detect an object in an actual outdoor image such as background change, camera shake, and lighting change. Therefore, the accuracy of object detection is improved by using a CNN-based object detection algorithm.

본 실시예의 객체 검출 모듈(200)에서 사용한 객체 검출 네트워크는 YOLOv3 네트워크를 기반으로 한다. Unified Detection을 통하여 객체를 검출하기 때문에 R-CNN과 같은 two-stage 방법들에 비해 빠른 처리 속도를 보인다. 입력 영상을 각각의 grid cell로 나누고 각 객체에 대한 점수를 계산한다. 점수는 아래 식에 의해 산출되며, 영상에 객체가 존재하지 않는다면 점수는 0으로 측정된다.The object detection network used in the object detection module 200 of this embodiment is based on the YOLOv3 network. Because the object is detected through Unified Detection, it shows faster processing speed compared to two-stage methods such as R-CNN. The input image is divided into each grid cell and the score for each object is calculated. The score is calculated by the equation below, and if there is no object in the image, the score is measured as 0.

Figure pat00001
Figure pat00001

각각의 grid cell은 C개의 각 학습시킨 클래스에 해당하는 확률을 갖는다. 각 클래스에 해당할 확률은 다음 식과 같이 표현된다.Each grid cell has a probability corresponding to each of the C trained classes. The probability corresponding to each class is expressed as the following equation.

Figure pat00002
Figure pat00002

최종적으로 각 객체의 중심 좌표 (x, y)와 가로, 세로의 길이에 대한 정보(width, height), 학습된 클래스에 부합할 확률을 포함하는 5개의 정보가 출력된다. 이후에 검출된 객체의 좌표를 객체 추적 모듈(202, Object Tracker)의 입력으로 설정하여 객체 추적을 수행한다.Finally, five pieces of information including the center coordinates (x, y) of each object, information about the horizontal and vertical lengths (width, height), and the probability of matching the learned class are displayed. Object tracking is performed by setting the coordinates of the object detected later as an input of the object tracking module 202 (Object Tracker).

본 실시예에 따르면, 객체 검출 및 추적은 n 프레임 단위(예를 들어, 6 프레임)마다 이루어질 수 있다. According to the present embodiment, object detection and tracking may be performed every n frame units (eg, 6 frames).

객체 추적 모듈(202)은 다음 시점까지 입력된 좌표를 기반으로 객체 추적을 수행하며, 객체 추적에 실패하는 경우, 객체 검출 모듈(200)가 다음 검출 시점에서 검출한 객체에 대해 다시 추적을 수행한다. The object tracking module 202 performs object tracking based on the coordinates input up to the next point in time, and if object tracking fails, the object detection module 200 performs tracking again on the object detected at the next detection point. .

입력 영상의 특정 시점에서 객체가 새로 검출되었는지 혹은 사라졌는지에 대한 업데이트가 필요하다. It is necessary to update whether an object is newly detected or disappeared at a specific point in the input image.

도 3a는 객체가 영상 밖으로 나가는 상황이고, 도 3b는 객체가 창문 안으로 진입하는 상황이다. 기존의 트래커만을 가지고 추적을 진행하면, 트래커는 가장 유사한 패치를 계속 추적하기 때문에 도 3a의 경우에는 영상 외곽 부분, 도 3b의 경우에는 창문 영역을 계속 추적하게 된다. 3A is a situation in which an object goes out of the image, and FIG. 3B is a situation in which an object enters into a window. If tracking is performed with only the existing tracker, since the tracker continues to track the most similar patch, in the case of FIG. 3A, the outer portion of the image and in the case of FIG. 3B, the window area is continuously tracked.

본 실시예에서는 예를 들어, 매 6프레임마다 객체 검출 모듈(200)이 객체를 검출하기 때문에, 해당 영역에서 객체가 검출되었는지의 유무에 따라 객체 추적 모듈(202)을 업데이트하여 객체의 추적 여부를 결정한다.In the present embodiment, for example, since the object detection module 200 detects an object every 6 frames, the object tracking module 202 is updated according to whether an object is detected in the corresponding area to determine whether or not the object is tracked. Decide.

도 4와 같이 객체 간의 겹침(Occlusion)으로 객체 추적이 실패하는 상황이 발생할 수 있다. 본 실시예에서는 예를 들어 매 6프레임마다 객체 검출 모듈(200)의 객체 검출이 수행되기 때문에 객체 좌표를 새로 업데이트하여 올바른 추적이 가능하게 한다. As shown in FIG. 4, a situation in which object tracking fails due to occlusion between objects may occur. In the present embodiment, for example, since the object detection module 200 detects an object every 6 frames, the object coordinates are newly updated to enable correct tracking.

도 4a는 객체가 철조망 안으로 침입할 때 철조망에 객체가 가려져 추적이 실패하는 영상이다. 이후, 객체가 철조망을 넘어서 다시 나타났을 때, 객체 검출 모듈(200)이 객체 정보를 업데이트하여 추적을 올바르게 진행할 수가 있다. 도 4b와 c는 객체 간의 겹침으로 추적이 실패하는 상황이다. 이후 객체 간의 겹침 상황에서 벗어났을 때, 객체 검출 모듈(200)이 새로 객체 정보를 업데이트하여 각 객체의 추적을 올바르게 진행할 수 있다.4A is an image in which tracking fails because the object is covered by the barbed wire when an object intrudes into the barbed wire. Thereafter, when the object crosses the barbed wire and reappears, the object detection module 200 updates the object information so that the tracking can be performed correctly. 4B and C show a situation in which tracking fails due to overlapping between objects. Thereafter, when the object is out of the overlapping situation, the object detection module 200 may newly update the object information so that each object can be correctly tracked.

영상 내에는 복수의 객체가 존재할 수 있으며, 본 발명은 이러한 경우에도 객체 검출 및 추적의 정확도를 유지할 수 있는 기법을 제시한다. A plurality of objects may exist in an image, and the present invention proposes a technique capable of maintaining the accuracy of object detection and tracking even in such a case.

객체 추적이란 영상 내에서 관심 객체의 영역을 최초 정보로서 취득한 후, 이어지는 일련의 프레임에서 해당 객체의 위치를 추적하는 것이다. Object tracking refers to acquiring an area of an object of interest in an image as initial information, and then tracking the position of the object in a series of subsequent frames.

본 실시예에 따르면, 객체 검출 네트워크와 객체 추적 알고리즘을 융합한다. 객체 검출 네트워크는 영상 내에서 관측 가능한 관심 객체를 검출하여 객체의 위치 및 크기를 획득하고, 객체 추적 알고리즘은 획득한 객체 정보를 입력 받아 연속된 프레임에서 객체를 지속적으로 추적한다. According to this embodiment, an object detection network and an object tracking algorithm are fused. The object detection network detects an object of interest that can be observed in an image to obtain the position and size of the object, and the object tracking algorithm receives the obtained object information and continuously tracks the object in successive frames.

객체 추적은, 이전 프레임에서의 객체의 위치를 중심으로 일정한 범위의 영역 내에서 이루어진다. 이는 인접한 프레임 간에 객체의 위치 변화가 일정량보다 적을 것이라는 가정 하에 수행하는 것이다. 따라서 실시간 스트리밍 환경에서 객체 추적의 연산 속도가 적절한 수준 이하일 경우 인접 프레임 간 객체의 위치 변화는 커지게 되므로(프레임 드랍 현상) 추적 성능이 현저히 저하될 수 있다. Object tracking is performed within a range of a certain range centering on the position of the object in the previous frame. This is performed under the assumption that the change in the position of the object between adjacent frames will be less than a certain amount. Therefore, in a real-time streaming environment, if the object tracking operation speed is less than an appropriate level, the position change of the object between adjacent frames increases (frame drop phenomenon), and tracking performance may be significantly degraded.

본 실시예에 따르면, KCF(Kernelized Correlation Filter) 기반의 객체 추적 기술을 이용하여 다중 객체를 추적한다.According to the present embodiment, multiple objects are tracked using an object tracking technology based on a Kernelized Correlation Filter (KCF).

도 5는 KCF 기반의 객체 추적 과정을 설명하기 위한 도면이다. 5 is a diagram for describing a KCF-based object tracking process.

도 5를 참조하면, 본 실시예에서는 입력 영상을 주파수 도메인으로 변환하여 처리한다. 이늘 다른 객체 추적 알고리즘에 비하여 월등히 적은 양의 연산만을 요구하므로 하드웨어 성능이 제한적인 환경에서도 원활한 추적이 가능하다.Referring to FIG. 5, in this embodiment, an input image is converted into a frequency domain and processed. Compared to other object tracking algorithms these days, it requires only a much smaller amount of operations, so smooth tracking is possible even in environments with limited hardware performance.

이전 프레임에서의 관심 객체의 위치를 중심으로 하여, 객체의 위치를 탐색하기 위한 일정 영역을 search window라 정의한다. With the position of the object of interest in the previous frame as the center, a certain area for searching the position of the object is defined as a search window.

KCF 기반 추적 알고리즘은 search window 내의 모든 좌표에 대해서 관심 객체와의 일치 정도를 분석하기 위하여, 도 6과 같은 cyclic shifts 방식을 이용한다. The KCF-based tracking algorithm uses the cyclic shifts method as shown in FIG. 6 in order to analyze the degree of agreement with the object of interest for all coordinates in the search window.

이는 행렬의 형태로써 획득한 데이터 x가 있을 때, 행렬과 연산하여 모든 가능한 shifts를 얻어내는 방식이다. 즉, search window의 image patch를 source로 이용하여, 수평 및 수직 방향으로 모든 가능한 shifts에 대한 영상을 생성하여, 관심 객체와의 일치 정도를 계산하게 된다. This is a method of obtaining all possible shifts by calculating with the matrix when there is data x obtained in the form of a matrix. That is, by using the image patch of the search window as a source, images for all possible shifts in the horizontal and vertical directions are generated, and the degree of agreement with the object of interest is calculated.

관심 객체와의 일치 정도는 상관(correlation) 값으로 정의되며, 모든 cyclic shifts에 대하여 상관 값을 구하여 응답 맵(response map)을 획득한다. The degree of correspondence with the object of interest is defined as a correlation value, and a response map is obtained by obtaining a correlation value for all cyclic shifts.

응답 맵은 도 7과 같이 3D 그래프로 표현되며, 그래프의 임의의 지점에서의 높이가 관심 객체와의 일치 정도를 의미하는데, 특정 지점에서 가장 높은 값(peak)을 가지며, peak 지점에서 가로 또는 세로 방향으로 이동할수록 일치도는 감소하는 것을 알 수 있다. KCF 기반의 추적 알고리즘은 peak 값의 좌표를 추적하는 원리로 작동하며, 매 프레임마다 예상되는 추적 좌표를 산출한다.The response map is expressed as a 3D graph as shown in FIG. 7, and the height at an arbitrary point of the graph means the degree of correspondence with the object of interest. It has the highest value (peak) at a specific point, and horizontal or vertical at the peak point. It can be seen that the degree of correspondence decreases as it moves in the direction. The KCF-based tracking algorithm operates on the principle of tracking the coordinates of the peak value, and calculates the expected tracking coordinates every frame.

본 발명은 객체 추적의 정확도를 높이기 위해, 이전 프레임의 좌표와 색상 히스토그램(hue histogram)을 비교하여 관심 객체를 식별하고 추적한다. In the present invention, in order to increase the accuracy of object tracking, an object of interest is identified and tracked by comparing the coordinates of a previous frame with a hue histogram.

도 8은 본 발명의 일 실시예에 따른 객체 추적 과정을 설명하기 위한 도면이다. 8 is a diagram for describing an object tracking process according to an embodiment of the present invention.

도 8을 참조하면, 이상행동 분석 장치는 입력 영상에서 딥러닝 기반으로 객체를 검출한다. 여기서 딥러닝은 YOLO v3일 수 있다. Referring to FIG. 8, the apparatus for analyzing abnormal behavior detects an object from an input image based on deep learning. Here, deep learning may be YOLO v3.

다음으로 검출된 객체 정보를 추적한다. Next, the detected object information is tracked.

객체 추적은 가중 그레이 변환(weighted gray transformation)을 이용한 KCF(Kernerlize Correlation Filter) 추적기를 통해 이루어질 수 있다. Object tracking may be performed through a Kernerlize Correlation Filter (KCF) tracker using weighted gray transformation.

여기서, KCF 추적기가 도 2의 객체 추적 모듈(202)로 정의될 수 있다. Here, the KCF tracker may be defined as the object tracking module 202 of FIG. 2.

KCF 추적기는 영상에서 분포가 가장 큰 RGB 기반 인덱스 값을 탐색한다. 해당 인덱스 값의 RGB 비율을 사용하여 객체에 적합한 채널 공간을 얻는다.The KCF tracker searches for the RGB-based index value with the largest distribution in the image. A channel space suitable for an object is obtained by using the RGB ratio of the corresponding index value.

획득된 채널 공간을 기반으로 그레이스케일 이미지는 다음과 같이 생성된다. Based on the acquired channel space, a grayscale image is generated as follows.

Figure pat00003
Figure pat00003

여기서,

Figure pat00004
는 RGB 색상 값의 비율을 나타내고,
Figure pat00005
는 출력 그레이스케일 이미지,
Figure pat00006
는 타겟 객체 패치이다. here,
Figure pat00004
Represents the ratio of RGB color values,
Figure pat00005
Is the output grayscale image,
Figure pat00006
Is the target object patch.

결과적으로, RGB 채널의 각각의 분포를 고려하여 각 요소에 가중치가 적용되어 서로 다른 색상을 갖는 다중 객체의 추적 성능을 개선한다. As a result, a weight is applied to each element in consideration of the distribution of each of the RGB channels to improve tracking performance of multiple objects having different colors.

본 실시예에 따르면, 객체의 지속적인 관리를 위해, ROI 색상 히스토그램(Hue-Histogram) 비교를 수행한다. According to the present embodiment, for continuous management of an object, a comparison of ROI color histograms is performed.

ROI를 얻기 위해 객체의 색상 히스토그램 간의 유사성을 비교한다. To obtain the ROI, we compare the similarity between the color histograms of the objects.

본 실시예에 따르면, 먼저 상관 계수 연산자를 사용하여 색상 채널의 히스토그램을 비교한다. 유사도는 다음과 같이 계산된다.According to the present embodiment, first, a histogram of color channels is compared using a correlation coefficient operator. The similarity is calculated as follows.

Figure pat00007
Figure pat00007

여기서 H1과 H2는 각각 서로 다른 프레임에서의 객체 간 히스토그램 값을 나타낸다. 불필요한 배경 정보를 제거하기 위해 도 9와 같이 d(H1,H2)를 최대화한다. Here, H 1 and H 2 represent histogram values between objects in different frames, respectively. In order to remove unnecessary background information, d(H 1, H 2 ) is maximized as shown in FIG. 9.

도 9a는 DeepLab V3 시맨틱 세그먼테이션을 이용한 배경 제거 결과를 나타낸다. 정확한 세분화 성능에도 불구하고 DeepLab V3는 높은 계산 비용과 가끔 오작동으로 인해 실시간 추적에 적합하지 않다. 9A shows the background removal result using DeepLab V3 semantic segmentation. Despite its accurate segmentation performance, DeepLab V3 is not suitable for real-time tracking due to its high computational cost and occasional malfunction.

도 9b는 본 실시예에 따른 경계 상자에 타원 ROI를 지정하여 간단하게 배경을 제거한 결과를 나타낸 것이다. 9B shows the result of simply removing the background by designating an ellipse ROI in the bounding box according to the present embodiment.

도 9b는 도 9a와 비교하여 배경이 완전히 제거되지 않는다.9B shows that the background is not completely removed compared to FIG. 9A.

본 실시예에 따른 방법은 평균 히스토그램 상관 관계는 성능은 다소 낮지만 처리 속도는 다음과 같이 DeepLab V3보다 훨씬 높다.In the method according to the present embodiment, the average histogram correlation is slightly lower in performance, but the processing speed is much higher than that of DeepLab V3 as follows.

Figure pat00008
Figure pat00008

여기서

Figure pat00009
는 히스토그램 상관 관계의 가중치를 결정하는 매개변수이며 실험적으로 선택된 0.8이 선택될 수 있다.
Figure pat00010
은 히스토그램 상관값이고
Figure pat00011
는 거리 정보이다. 비교 점수 Sc는 관심 객체를 식별하기 위한 척도로 사용된다.here
Figure pat00009
Is a parameter that determines the weight of the histogram correlation, and 0.8, which is experimentally selected, can be selected.
Figure pat00010
Is the histogram correlation value
Figure pat00011
Is the distance information. The comparison score S c is used as a measure to identify the object of interest.

보다 구체적으로, 최대 Sc가 미리 설정된 임계값보다 높으면, 동일한 객체 인 것으로 결정된다. 한편, 모든 Sc가 임계 값보다 낮 으면, 객체는 새로운 객체로 식별되고, 새로운 리스트에 저장된다. 상기한 과정을 통해 본 실시예에 따른 장치는 다양한 까다로운 상황에서 동일한 객체를 식별하고 추적할 수 있다.More specifically, if the maximum S c is higher than a preset threshold, it is determined to be the same object. On the other hand, if all S c is lower than the threshold value, the object is identified as a new object and stored in a new list. Through the above process, the device according to the present embodiment can identify and track the same object in various difficult situations.

상기한 바와 같이, 관심 객체는 객체 검출 모듈(200)에 의해 최초 검출되고, 객체 추적 모듈(202)에 의해 그 위치가 추적된다. As described above, the object of interest is initially detected by the object detection module 200 and its location is tracked by the object tracking module 202.

관심 객체의 이상행동을 분석하기 위해서는, 객체 검출 모듈(200)과 객체 추적 모듈(202)로부터 얻어진 정보를 체계적으로 관리할 필요가 있다. In order to analyze the abnormal behavior of the object of interest, it is necessary to systematically manage the information obtained from the object detection module 200 and the object tracking module 202.

이를 위해, 본 실시예에 따른 객체 관리 모듈(204)은 도 10과 같이 각 객체 정보를 구조화하여 관리한다. To this end, the object management module 204 according to the present embodiment structure and manages each object information as shown in FIG. 10.

여기서, x,y는 관심 객체의 최신 좌표를 의미한다. Here, x,y mean the latest coordinates of the object of interest.

first-seen time은 관심 객체가 객체 검출 모듈(200)에 의해 최초로 검출된 시각(최초 시각)을 의미하며, last-seen time은 객체 검출 모듈(200) 또는 객체 추적 모듈(202)에 의해 검출 또는 추적된 가장 마지막 시각(마지막 시각)을 의미한다. The first-seen time refers to the time (initial time) when the object of interest is first detected by the object detection module 200, and the last-seen time is detected by the object detection module 200 or the object tracking module 202 or It means the last time tracked (last time).

하나의 객체에 대한 정보는 x, y 좌표, 최초 시각 및 마지막 시각의 4개의 항목으로 구성되며, 객체 관리 모듈(204)은 이들을 리스트화하여 다수의 관심 객체를 관리한다. The information on one object is composed of four items of x and y coordinates, the first time and the last time, and the object management module 204 manages a plurality of objects of interest by listing them.

도 10을 참조하면, 객체 관리 모듈(204)은 객체 검출 모듈(200) 및 객체 추적 모듈(202)로부터 관심 객체의 좌표 정보를 입력 받는 경우, 입력된 객체가 현재 관심 객체 리스트에서 관리하고 있는 객체와 비교하여 동일 객체인지 여부를 판단한다. 동일 객체인지 여부는 좌표의 거리를 기준으로 판단할 수 있다. Referring to FIG. 10, when the object management module 204 receives coordinate information of an object of interest from the object detection module 200 and the object tracking module 202, the input object is an object currently managed in the object of interest list. Compared with, it is determined whether or not the object is the same. Whether the object is the same object may be determined based on the distance of the coordinates.

입력된 객체 정보가 관심 객체 리스트에 포함된 객체와 동일한 객체로 판단되면, 입력된 객체 정보로 대상 객체 정보를 갱신하고, 동일한 객체가 아닌 것으로 판단되면 새로운 객체 정보로 추가한다. If the input object information is determined to be the same object as the object included in the object of interest list, the object object information is updated with the input object information, and if it is determined that it is not the same object, it is added as new object information.

객체가 마지막으로 검출 또는 추적된 시각이 일정한 기간 동안 갱신되지 않으면, 해당 객체는 입력 영상에서 더 이상 관측되지 않는 것으로 간주하여 관심 객체 리스트에서 제거함으로써 유효한 객체만을 관리한다.If the last detected or tracked time of an object is not updated for a certain period of time, the object is considered to be no longer observed in the input image and is removed from the list of objects of interest to manage only valid objects.

이상행동 분석은 연속된 프레임 상에서 특정한 관심 객체의 클로즈업 이미지 여러 장을 획득하여 입력 데이터로 사용한다. 이를 위해서 객체 크롭 모듈(206)은 매 프레임마다 추적하고 있는 관심 객체의 이미지를 크롭(crop)하고, 동일 객체에 대한 크롭 이미지를 묶음으로 관리하여, 이상행동 분석 모듈(208)에 제공한다.Abnormal behavior analysis acquires several close-up images of a specific object of interest on a continuous frame and uses them as input data. To this end, the object crop module 206 crops the image of the object of interest being tracked every frame, manages the cropped images for the same object as a bundle, and provides it to the abnormal behavior analysis module 208.

도 11은 객체 크롭 모듈의 동작 결과 생성된 이미지를 나타낸 것이다. 11 shows an image generated as a result of an operation of an object crop module.

특정 시점에 영상 내에 다수의 관심 객체가 존재할 수 있기 때문에, 객체 크롭 모듈(206)은 동일 객체에 해당하는 크롭 이미지들을 묶음으로 관리할 수 있어야 한다. Since multiple objects of interest may exist in an image at a specific point in time, the object crop module 206 must be able to manage cropped images corresponding to the same object in a bundle.

도 11에서 (a) 내지 (h)가 제1 객체, (i) 내지 (p)가 제2 객체이며, 본 실시예에 따른 객체 크롭 모듈(206)은 관심 객체를 구분하여 관리한다. In FIG. 11, (a) to (h) are the first objects, and (i) to (p) are the second objects, and the object crop module 206 according to the present embodiment classifies and manages the objects of interest.

도 12는 본 실시예에 따른 객체 크롭 모듈의 동작 과정을 설명하기 위한 도면이다. 12 is a diagram for explaining an operation process of the object crop module according to the present embodiment.

도 12를 참조하면, 객체 크롭 모듈(206)은 관심 객체의 좌표 및 크기 정보(x,y,width,height)를 입력 받는다.Referring to FIG. 12, the object crop module 206 receives coordinates and size information (x, y, width, height) of an object of interest.

입력된 정보를 바탕으로 적절한 크롭 영역을 계산하여 관심 객체를 크롭한다. The object of interest is cropped by calculating an appropriate crop area based on the input information.

매 프레임마다 크롭된 관심 객체의 이미지는 객체 별로 구분되어 관리된다.The image of the object of interest, which is cropped every frame, is divided and managed for each object.

크롭 이미지가 미리 설정된 수량에 도달하는 경우, 즉, 크롭 이미지가 미리 설정된 개수의 프레임에 대해 연속적으로 존재하는 경우, 이미지 덤프(dump)를 위한 서브-스레드(sub-thread)는 미리 설정된 폴더에 해당 이미지들을 저장한다. When the cropped image reaches a preset quantity, that is, when the cropped image continuously exists for a preset number of frames, a sub-thread for image dump corresponds to a preset folder. Save the images.

저장된 이미지는 이상행동 분석 모듈(208)로 입력된다. The stored image is input to the abnormal behavior analysis module 208.

크롭 이미지를 저장하는 보조기억장치에 기록하는 것은 심각한 병목현상을 유발하여 전체적인 성능을 열화시킬 수 있기 때문에, 크롭 이미지 저장을 위한 서브-스레드를 운용하여, 메인-스레드가 적은 연산만으로 상기한 과정을 완료할 수 있도록 한다. Since recording the cropped image in the auxiliary memory device may cause a serious bottleneck and deteriorate the overall performance, a sub-thread for storing the cropped image is operated, so that the above process is performed with only a few operations in the main-thread. Make it possible to complete it.

크롭 이미지를 수집 및 관리하기 위하여 연속성이 충족되어야 한다. In order to collect and manage cropped images, continuity must be met.

관심 객체의 크롭 이미지를 수집하는 과정에서, 크롭 이미지의 묶음이 연속되지 않으면, 이상행동 분석 모듈(208)은 연속적이지 않은 프레임 정보를 입력 받게 되어 이상행동 분석의 성능 저하를 야기할 수 있다. In the process of collecting the cropped image of the object of interest, if the bundles of the cropped images are not continuous, the abnormal behavior analysis module 208 receives non-contiguous frame information, which may cause performance degradation of the abnormal behavior analysis.

따라서, 객체 크롭 모듈(208)은 주기적으로 연속성이 상실된 크롭 이미지 묶음을 이상행동 분석 모듈(208)로 전달하지 않고 폐기한다. Accordingly, the object cropping module 208 periodically discards the cropped image bundle whose continuity is lost without passing it to the abnormal behavior analysis module 208.

이상행위 분석 모듈(208)은 영상 내의 미리 정의된 영역과 추적되는 객체 궤적의 기하학적 분석을 통한 객체의 이상행동 여부를 판별한다. The abnormal behavior analysis module 208 determines whether an object has abnormal behavior through geometric analysis of a predefined area in the image and a tracked object trajectory.

이상행동은 침입, 배회, 폭행 등이 있을 수 있으며, 이하에서는 객체의 침입 상황을 판별하는 과정을 먼저 설명한다. The abnormal behavior may include intrusion, roaming, and assault. Hereinafter, a process of determining the intrusion situation of an object will be first described.

침입 상황을 판별하기 위해서 사전에 관심 영역(region of interest, ROI)를 정의하고, 객체의 이동 경로를 분석한 후 판단한다. In order to determine the intrusion situation, a region of interest (ROI) is defined in advance, and the movement path of the object is analyzed and then determined.

ROI 영역 설정은 영상 내에 기준 라인을 설정하고, 설정된 기준 라인에 대해 정방향과 역방향을 설정한다. 객체의 침입 여부는 기준 라인과 객체의 궤적을 벡터화하여 벡터의 교차 판별 방법을 사용하여 기준 라인을 넘었는지, 즉 관심 영역 내로 진입하였는지 여부를 판단하게 된다.In the ROI area setting, a reference line is set in an image, and forward and reverse directions are set for the set reference line. Whether the object is intruded is determined whether the reference line and the trajectory of the object are vectorized to determine whether the reference line has crossed the reference line, that is, has entered the ROI.

도 13은 본 실시예에 따른 벡터의 교차 판별 과정을 설명하기 위한 도면이다. 13 is a diagram for explaining a process of determining the intersection of vectors according to the present embodiment.

도 13에서 라인 1(Line 1)은 사전에 정의된 ROI(기준 라인)를 나타내고, 라인 2(Line 2)는 객체의 이동 궤적을 나타낸다. 두 라인의 매개변수를 이용하여 직선의 방정식으로 다음 식 6과 같이 표현된다.In FIG. 13, line 1 represents a predefined ROI (reference line), and line 2 represents a movement trajectory of an object. It is expressed as Equation 6 below as an equation of a straight line using the parameters of two lines.

Figure pat00012
Figure pat00012

라인 1은 K1과 K2로 이루어져 있고, 라인 2는 K3와 K4로 이루어져있으며, t와 s의 범위는 [0,1]이다. 두 개의 라인이 만나는 교점을 정리하면 수학식 6은 아래와 같이 나타낼 수 있다.Line 1 is composed of K 1 and K 2 , line 2 is composed of K 3 and K 4 , the range of t and s is [0,1]. If the intersection point where two lines meet is summarized, Equation 6 can be expressed as follows.

Figure pat00013
Figure pat00013

수학식 7을 다시 x,y로 분리하여 아래의 식으로 나타낼 수 있다. Equation 7 can be separated by x and y and expressed as the following equation.

Figure pat00014
Figure pat00014

이를 t와 s로 아래와 같이 정리할 수 있다. This can be summarized as t and s as follows.

Figure pat00015
Figure pat00015

즉, 위의 t와 s는 두 개의 라인에서 교점이 생길 때의 값을 나타내며, 교점은 다음과 같이 나타낼 수 있다. That is, t and s above represent values when an intersection occurs in two lines, and the intersection can be expressed as follows.

Figure pat00016
Figure pat00016

s와 t의 값이 [0,1]의 범위라면 두 라인은 교차한 것으로 판단한다. If the values of s and t are in the range of [0,1], it is determined that the two lines intersect.

두 라인이 교차했다고 판단되는 경우, 각 라인 벡터의 방향과 교점 Ki에서의 각도 θ를 이용하여 이동 객체의 방향이 정방향인지 역방향인지를 판단한다. When it is determined that the two lines intersect, it is determined whether the direction of the moving object is the forward direction or the reverse direction using the direction of each line vector and the angle θ at the intersection point K i.

라인 1의 K2을 0°기준으로 라인 2의 벡터와의 각도를 측정하며, 그 각도에 따른 이동 객체의 방향 판별은 다음과 같은 수식으로 정의한다. The angle with the vector of line 2 is measured based on K 2 of line 1 at 0°, and the direction of the moving object according to the angle is determined by the following equation.

Figure pat00017
Figure pat00017

도 14는 기하학적 분석 기반의 객체 침입 판단 과정을 나타낸 것이다. 14 shows an object intrusion determination process based on geometric analysis.

도 14b를 참조하면, 이상행동 분석 모듈(208)은 추적 객체가 미리 정의된 침입 영역 내부로 들어가면서 객체의 궤적과 침입 영역 라인이 교차하는지를 통해 객체가 침입한 것으로 판단한다. Referring to FIG. 14B, the abnormal behavior analysis module 208 determines that the object has invaded through whether the trajectory of the object and the line of the intrusion area intersect as the tracking object enters the predefined intrusion area.

이후 추적 객체가 건물 안으로 진입하여 객체 궤적 정보가 사라지므로 도 14c에서 객체 침입이 완료된 것으로 판단한다. Since the tracked object enters the building and object trajectory information disappears, it is determined that the object intrusion has been completed in FIG. 14C.

본 실시예에 따르면, 1명 또는 다수의 사람(객체)이 관심 영역 내부로 진입하는 것을 침입 상황인 것으로 판단하며, 1명 또는 다수의 사람이 관심 영역 근처에 미리 설정된 시간 이상 머물러 있는 경우 배회 상황인 것으로 판단한다. According to this embodiment, it is determined that it is an intrusion situation that one or more people (objects) enter the area of interest, and when one or more people stay near the area of interest for longer than a preset time, the roaming situation It is judged to be.

또한, 본 실시예에 따르면 신경망 기반으로 폭행 및 낙상 상황을 판단할 수도 있다. In addition, according to the present embodiment, it is also possible to determine an assault and fall situation based on a neural network.

본 실시예에 따른 이상행동 분석 모듈(208)은 ResNet(Residual Network) 기반의 3D CNN(Convolutional Neural Network)을 이용하여 객체의 폭행 및 낙상 상황을 분석한다. The abnormal behavior analysis module 208 according to the present embodiment analyzes an assault and fall situation of an object using a 3D Convolutional Neural Network (CNN) based on a ResNet (Residual Network).

도 15는 ResNet의 residual learning block을 도시한 도면이다. 15 is a diagram illustrating a residual learning block of ResNet.

도 15를 참조하면, 입력 x를 layer의 출력에 바로 연결시키는 skip connection을 사용하며, 네트워크의 출력

Figure pat00018
Figure pat00019
이 된다. ResNet은 loss function
Figure pat00020
가 0이 되는 방향으로 학습이 진행되고,
Figure pat00021
이기 때문에
Figure pat00022
를 학습한다는 것은 나머지(residual)를 학습한다고 볼 수 있다. 추가적인 연산 없이 입력 x를 skip connection하기 때문에 연산량은 기존과 동일하고, 네트워크의 깊이가 깊어져도 gradient vanishing 문제를 줄일 수 있기 때문에, 학습 성능이 높아진다. Referring to FIG. 15, a skip connection that directly connects the input x to the output of the layer is used, and the output of the network
Figure pat00018
Is
Figure pat00019
Becomes. ResNet is a loss function
Figure pat00020
Learning proceeds in the direction where is 0,
Figure pat00021
Because
Figure pat00022
Learning to can be seen as learning the remaining (residual). Since the input x is skipped without additional calculations, the amount of calculation is the same as before, and the gradient vanishing problem can be reduced even when the depth of the network is deepened, thus increasing the learning performance.

본 실시예에서 구성한 residual block은 도 16과 같다. The residual block constructed in this embodiment is shown in FIG. 16.

conv는 kernel size,

Figure pat00023
는 convolutional filter
Figure pat00024
의 feature map의 개수, F는 group convolution에서의 group의 수를 나타낸다.conv is the kernel size,
Figure pat00023
Is a convolutional filter
Figure pat00024
The number of feature maps, F denotes the number of groups in the group convolution.

3D CNN을 학습하기 위해, stochastic gradient descent with momentum을 사용하여 네트워크를 학습하였고, data augmentation을 수행하기 위해 training data 영상에서 training sample을 생성하였다. training sample을 생성하기 위해 training data 영상을 48 프레임의 크기의 클립 영상으로 크롭하였다.To learn 3D CNN, the network was trained using stochastic gradient descent with momentum, and a training sample was created from the training data image to perform data augmentation. To create a training sample, the training data image was cropped into a clip image of 48 frames.

도 17은 이상행동 분석 네트워크를 학습하기 위해 생성한 training sample 영상들이다. 17 shows training sample images generated to learn an abnormal behavior analysis network.

네트워크의 최종 결과는 3개의 클래스로 분류되며, 각각 일반 상황, 낙상 상황, 폭행 상황이다. 일반 상황에는 객체가 걸어다니는 상황, 멈춰있는 상황, 객체가 검출되지 않은 일반 배경 영상으로 구성하여 학습을 진행하였다. 낙상 상황에 대해서는 한 객체 또는 여러 객체가 넘어지는 순간을 크롭하여 학습을 진행하였다. 폭행 상황은 두 객체 또는 그 이상의 객체들이 서로 주먹질하는 상황, 발길질하는 상황, 밀치는 상황으로 구성하여 학습을 진행하였다. The final result of the network is classified into three classes, each of which is a general situation, a fall situation, and an assault situation. In the general situation, learning was conducted by consisting of a situation where an object is walking, a situation where the object is stopped, and a general background image where no object is detected. Regarding the fall situation, the learning was carried out by cropping the moment when one object or several objects fell. The assault situation consisted of two or more objects punching each other, kicking, and shoving.

3D CNN 학습을 위해 Kinetics data로 pre-train된 ResNet-34를 이용하였으며, [표 1]과 같이 생성한 training sample의 Train/Test 데이터셋으로 네트워크 학습을 진행하였다. For 3D CNN learning, ResNet-34 pre-trained with Kinetics data was used, and network training was performed with the Train/Test dataset of the training sample created as shown in [Table 1].

일반 상황General situation 낙상 상황Fall situation 폭행 상황Assault situation TrainTrain 709709 382382 687687 TestTest 3535 2626 200200

Batch size는 128로 설정하고 Epoch=200까지 학습을 진행하였으며, 학습 네트워크의 Training Accuracy와 Loss는 각각 0.9748, 0.0689로 측정되었고, Validation Accuracy와 Loss는 각각 0.9433, 0.1745로 측정되었다.The batch size was set to 128 and training was performed until Epoch=200. Training Accuracy and Loss of the learning network were measured as 0.9748 and 0.0689, respectively, and Validation Accuracy and Loss were measured as 0.9433 and 0.1745, respectively.

상기한 본 발명의 실시예는 예시의 목적을 위해 개시된 것이고, 본 발명에 대한 통상의 지식을 가지는 당업자라면 본 발명의 사상과 범위 안에서 다양한 수정, 변경, 부가가 가능할 것이며, 이러한 수정, 변경 및 부가는 하기의 특허청구범위에 속하는 것으로 보아야 할 것이다.The above-described embodiments of the present invention are disclosed for the purpose of illustration, and those skilled in the art who have ordinary knowledge of the present invention will be able to make various modifications, changes, and additions within the spirit and scope of the present invention. It should be seen as falling within the scope of the following claims.

Claims (9)

객체 검출 및 추적을 통한 이상행동 분석 장치로서,
프로세서; 및
상기 프로세서에 연결되는 메모리를 포함하되,
상기 메모리는,
신경망 기반으로 입력 영상에서 존재하는 객체를 미리 설정된 프레임 단위로 검출하고,
매 프레임 단위로 가중 그레이 변환을 이용한 KCF(Kernerlize Correlation Filter) 및 서로 다른 프레임에 존재하는 객체의 색상 히스토그램(Hue-Histogram) 비교를 이용하여 상기 검출된 객체를 추적하고,
미리 설정된 관심 영역으로의 진입 여부 또는 미리 학습된 신경망을 기반으로 상기 추적된 객체의 이상행동 여부를 판단하도록,
상기 프로세서에 의해 실행 가능한 프로그램 명령어들을 저장하는 이상행동 분석 장치.
As an abnormal behavior analysis device through object detection and tracking,
Processor; And
Including a memory connected to the processor,
The memory,
Detects an object existing in the input image in units of a preset frame based on a neural network,
The detected object is tracked by using a Kernerlize Correlation Filter (KCF) using a weighted gray transformation for each frame and a color histogram comparison of objects existing in different frames,
To determine whether or not to enter a preset region of interest or whether the tracked object has abnormal behavior based on a pre-learned neural network,
Abnormal behavior analysis device for storing program instructions executable by the processor.
제1항에 있어서,
상기 프로그램 명령어들은,
상기 객체의 추적을 위해, 상기 입력된 영상의 RGB 채널 각각의 분포를 고려하여 상기 RGB 채널 각각에 서로 다른 가중치를 부여하는 이상행동 분석 장치.
The method of claim 1,
The program instructions,
In order to track the object, an abnormal behavior analysis device that gives different weights to each of the RGB channels in consideration of the distribution of each of the RGB channels of the input image.
제1항에 있어서,
상기 프로그램 명령어들은,
상기 검출된 객체의 x,y 좌표, 최초 검출 시각 및 추적을 통한 마지막 검출 시각을 관심 객체 리스트로 관리하고,
현재 프레임에서 검출된 객체가 상기 관심 객체 리스트에서 관리하는 객체와 동일한 객체인지 여부를 판단하여 상기 관심 객체 리스트를 업데이트하는 이상행동 분석 장치.
The method of claim 1,
The program instructions,
Manage the x,y coordinates of the detected object, the first detection time, and the last detection time through tracking as an object of interest list,
An abnormal behavior analysis apparatus for updating the interest object list by determining whether the object detected in the current frame is the same object as the object managed in the interest object list.
제1항에 있어서,
상기 프로그램 명령어들은,
매 프레임 단위로 상기 추적되는 객체의 이미지를 크롭하고,
상기 크롭된 이미지의 묶음이 연속되고, 상기 크롭된 이미지가 미리 설정된 수량에 도달하는 경우, 상기 크롭된 이미지에 상응하는 객체의 이상행동 여부를 판단하는 이상행동 분석 장치.
The method of claim 1,
The program instructions,
Crop the image of the tracked object every frame unit,
An abnormal behavior analysis device that determines whether an object corresponding to the cropped image has abnormal behavior when the bundle of the cropped images is continuous and the cropped image reaches a preset quantity.
제1항에 있어서,
상기 프로그램 명령어들은,
상기 미리 설정된 관심 영역과 상기 추적되는 객체의 이동 궤적의 기하학적 분석을 통해 상기 객체의 침입 또는 배회 상황 여부를 판단하는 이상행동 분석 장치.
The method of claim 1,
The program instructions,
An abnormal behavior analysis device that determines whether the object is invading or roaming through geometric analysis of the preset region of interest and a movement trajectory of the tracked object.
제1항에 있어서,
상기 프로그램 명령어들은,
상기 미리 설정된 관심 영역에 대한 기준 라인과 상기 객체의 이동 방향이 상기 기준 라인에 대해 정“‡항 또는 역방향인지 여부를 이용하여 상기 객체의 침입 또는 배회 상황 여부를 판단하는 이상행동 분석 장치.
The method of claim 1,
The program instructions,
An abnormal behavior analysis device that determines whether the object is intrusive or roaming by using a reference line with respect to the preset region of interest and whether the movement direction of the object is a positive or reverse direction with respect to the reference line.
제1항에 있어서,
상기 프로그램 명령어들은,
상기 미리 학습된 신경망을 기반으로, 상기 객체의 낙상 또는 폭행 상황 여부를 판단하는 이상행동 분석 장치.
The method of claim 1,
The program instructions,
An abnormal behavior analysis device that determines whether the object falls or is violated based on the pre-learned neural network.
프로세서 및 메모리를 포함하는 장치에서 객체 검출 및 추적을 통한 이상행동 분석 방법으로서,
신경망 기반으로 입력 영상에서 존재하는 객체를 미리 설정된 프레임 단위로 검출하는 단계;
매 프레임 단위로 가중 그레이 변환을 이용한 KCF(Kernerlize Correlation Filter) 및 서로 다른 프레임에 존재하는 객체의 색상 히스토그램(Hue-Histogram) 비교를 이용하여 상기 검출된 객체를 추적하는 단계; 및
미리 설정된 관심 영역으로의 진입 여부 또는 미리 학습된 신경망을 기반으로 상기 추적된 객체의 이상행동 여부를 판단하는 단계를 포함하는 이상행동 분석 방법.
A method for analyzing abnormal behavior through object detection and tracking in a device including a processor and a memory,
Detecting an object existing in the input image in units of a preset frame based on a neural network;
Tracking the detected object using a Kernerlize Correlation Filter (KCF) using a weighted gray transformation for each frame and a hue-histogram comparison of objects existing in different frames; And
An abnormal behavior analysis method comprising the step of determining whether the tracked object has an abnormal behavior based on whether to enter a predetermined region of interest or a pre-learned neural network.
제8항에 따른 방법을 수행하는 기록매체에 저장되는 프로그램.
A program stored on a recording medium performing the method according to claim 8.
KR1020190108621A 2019-09-03 2019-09-03 Apparatus and method for analyzing abnormal behavior through object detection and tracking KR102263717B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190108621A KR102263717B1 (en) 2019-09-03 2019-09-03 Apparatus and method for analyzing abnormal behavior through object detection and tracking

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190108621A KR102263717B1 (en) 2019-09-03 2019-09-03 Apparatus and method for analyzing abnormal behavior through object detection and tracking

Publications (2)

Publication Number Publication Date
KR20210027778A true KR20210027778A (en) 2021-03-11
KR102263717B1 KR102263717B1 (en) 2021-06-10

Family

ID=75143208

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190108621A KR102263717B1 (en) 2019-09-03 2019-09-03 Apparatus and method for analyzing abnormal behavior through object detection and tracking

Country Status (1)

Country Link
KR (1) KR102263717B1 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113191294A (en) * 2021-05-11 2021-07-30 山东浪潮科学研究院有限公司 Machine vision-based large-sized floating object collision dam prevention and detection method
CN114187666A (en) * 2021-12-23 2022-03-15 中海油信息科技有限公司 Identification method and system for watching mobile phone while walking
WO2022216708A1 (en) * 2021-04-09 2022-10-13 Iris Technology Inc. Tracking objects across images
KR20230027543A (en) 2021-08-19 2023-02-28 뱀부스 주식회사 Method and system for classifying false detection cases
KR20230139851A (en) * 2022-03-23 2023-10-06 국방과학연구소 Apparatus and method of image processing to improve detection and recognition performance for samll objects
KR102643021B1 (en) * 2023-08-18 2024-03-04 이성락 Method and system for automatically notifying unauthorized intrusion to a user terminal based on neural networks
KR102642985B1 (en) * 2022-11-02 2024-03-04 황용희 Aquaculture safety and security management system

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150112713A (en) * 2014-06-05 2015-10-07 주식회사 성우음향정보통신 The predicting system for anti-crime through analyzing server of images
CN108198201A (en) * 2017-12-19 2018-06-22 深圳市深网视界科技有限公司 A kind of multi-object tracking method, terminal device and storage medium
KR20190074898A (en) 2017-12-20 2019-06-28 이노뎁 주식회사 syntax-based method of detecting loitering objects in compressed video

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150112713A (en) * 2014-06-05 2015-10-07 주식회사 성우음향정보통신 The predicting system for anti-crime through analyzing server of images
CN108198201A (en) * 2017-12-19 2018-06-22 深圳市深网视界科技有限公司 A kind of multi-object tracking method, terminal device and storage medium
KR20190074898A (en) 2017-12-20 2019-06-28 이노뎁 주식회사 syntax-based method of detecting loitering objects in compressed video

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022216708A1 (en) * 2021-04-09 2022-10-13 Iris Technology Inc. Tracking objects across images
CN113191294A (en) * 2021-05-11 2021-07-30 山东浪潮科学研究院有限公司 Machine vision-based large-sized floating object collision dam prevention and detection method
KR20230027543A (en) 2021-08-19 2023-02-28 뱀부스 주식회사 Method and system for classifying false detection cases
CN114187666A (en) * 2021-12-23 2022-03-15 中海油信息科技有限公司 Identification method and system for watching mobile phone while walking
KR20230139851A (en) * 2022-03-23 2023-10-06 국방과학연구소 Apparatus and method of image processing to improve detection and recognition performance for samll objects
KR102642985B1 (en) * 2022-11-02 2024-03-04 황용희 Aquaculture safety and security management system
KR102643021B1 (en) * 2023-08-18 2024-03-04 이성락 Method and system for automatically notifying unauthorized intrusion to a user terminal based on neural networks

Also Published As

Publication number Publication date
KR102263717B1 (en) 2021-06-10

Similar Documents

Publication Publication Date Title
KR102263717B1 (en) Apparatus and method for analyzing abnormal behavior through object detection and tracking
CN109035299B (en) Target tracking method and device, computer equipment and storage medium
JP6759411B2 (en) Object tracking method and equipment
Tsintotas et al. Assigning visual words to places for loop closure detection
US9361702B2 (en) Image detection method and device
CN112288770A (en) Video real-time multi-target detection and tracking method and device based on deep learning
US7982774B2 (en) Image processing apparatus and image processing method
CN110288627B (en) Online multi-target tracking method based on deep learning and data association
US9904868B2 (en) Visual attention detector and visual attention detection method
US10970823B2 (en) System and method for detecting motion anomalies in video
JP2018022475A (en) Method and apparatus for updating background model
CN111191535B (en) Pedestrian detection model construction method based on deep learning and pedestrian detection method
CN105469380A (en) Method and device for detecting shielding against object
CN114708300A (en) Anti-blocking self-adaptive target tracking method and system
KR20130091441A (en) Object tracking device and method for controlling thereof
CN108985131B (en) Target identification method and image processing equipment
CN112580565A (en) Lane line detection method, lane line detection device, computer device, and storage medium
CN109657577B (en) Animal detection method based on entropy and motion offset
CN116563341A (en) Visual positioning and mapping method for processing dynamic object in complex environment
CN108985216B (en) Pedestrian head detection method based on multivariate logistic regression feature fusion
CN110956649A (en) Method and device for tracking multi-target three-dimensional object
US11620812B2 (en) Online distillation using frame cache
CN115511920A (en) Detection tracking method and system based on deep sort and deep EMD
CN113888628A (en) Accurate positioning method and accurate positioning system after target tracking loss
JP7243372B2 (en) Object tracking device and object tracking method

Legal Events

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