WO2024253382A1 - 노이즈 골격 시퀀스 기반 행동 인식을 위한 장치 및 방법 - Google Patents

노이즈 골격 시퀀스 기반 행동 인식을 위한 장치 및 방법 Download PDF

Info

Publication number
WO2024253382A1
WO2024253382A1 PCT/KR2024/007350 KR2024007350W WO2024253382A1 WO 2024253382 A1 WO2024253382 A1 WO 2024253382A1 KR 2024007350 W KR2024007350 W KR 2024007350W WO 2024253382 A1 WO2024253382 A1 WO 2024253382A1
Authority
WO
WIPO (PCT)
Prior art keywords
skeleton
sequence
action
training
skeleton sequence
Prior art date
Legal status (The legal status 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 status listed.)
Ceased
Application number
PCT/KR2024/007350
Other languages
English (en)
French (fr)
Inventor
마춘페이
윤영철
이병원
장진성
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
SK Telecom Co Ltd
Original Assignee
SK Telecom Co Ltd
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 SK Telecom Co Ltd filed Critical SK Telecom Co Ltd
Publication of WO2024253382A1 publication Critical patent/WO2024253382A1/ko
Priority to US19/347,824 priority Critical patent/US20260030928A1/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/20Image preprocessing
    • G06V10/34Smoothing or thinning of the pattern; Morphological operations; Skeletonisation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/778Active pattern-learning, e.g. online learning of image or video features
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/103Static body considered as a whole, e.g. static pedestrian or occupant recognition
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/23Recognition of whole body movements, e.g. for sport training
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20036Morphological image processing
    • G06T2207/20044Skeletonization; Medial axis transform

Definitions

  • the action recognition model has high recognition performance for input data that has a similar distribution to the training data. On the other hand, if the skeleton data has a different distribution from the training data at the inference stage, the action recognition performance of the action recognition model may deteriorate.
  • the training of the action recognition model uses the accurate skeleton data that is manually annotated, but the inference of the action recognition model uses the inaccurate skeleton data that the skeleton extraction model extracts from the image.
  • the training environment and the inference environment of the action recognition model are different.
  • the action recognition model trained on the manually annotated skeleton data may misclassify the action type for the skeleton data extracted by the skeleton extraction model.
  • the skeleton extraction model may incorrectly extract joints with a lot of movement among the joints.
  • joints with a large movement variation may not be detected or may be detected in an incorrect position.
  • the movement variation of the legs and arms is large.
  • the skeleton data extracted from images related to the running action by the skeleton extraction model the skeleton data of the leg part may contain a large error. Therefore, the action recognition model may incorrectly classify the action type based on the extraction result of the skeleton extraction model.
  • the action recognition model needs to be trained on skeletal data for various postures. This is costly and time-consuming because it requires the worker to annotate more data.
  • the main purpose of embodiments of the present invention is to provide a training method and apparatus for preventing the performance of an action recognition model from deteriorating for skeletal data having a different distribution from the training data even with a small number of ground truths.
  • a computer-implemented method for training an action recognition model including: preparing a first skeleton sequence extracted from a first training image sequence by a skeleton extraction model, and an action label of the first skeleton sequence, wherein the first skeleton sequence includes first noise caused by the skeleton extraction model; and training an action recognition model based on the first skeleton sequence and the action label of the first skeleton sequence.
  • Figure 1 is a configuration diagram of an action recognition system according to one embodiment of the present invention.
  • FIG. 2 is a diagram for explaining training of an action recognition model according to one embodiment of the present invention.
  • FIG. 3 is a diagram for explaining training of an action recognition model according to another embodiment of the present invention.
  • FIG. 4 is a diagram for explaining training of an action recognition model according to another embodiment of the present invention.
  • FIG. 5 is an exemplary diagram illustrating first skeleton data and second skeleton data according to one embodiment of the present invention.
  • Figure 6 is a flowchart of a training method for an action recognition model according to one embodiment of the present invention.
  • Figure 7 is a flowchart of an action recognition method according to one embodiment of the present invention.
  • symbols such as first, second, i), ii), a), b), etc. may be used. These symbols are only for distinguishing the components from other components, and the nature or order or sequence of the components is not limited by the symbols.
  • symbols When a part in the specification is said to "include” or “provide” a component, this does not mean that other components are excluded, but rather that other components can be further included, unless explicitly stated otherwise.
  • Each component of the device or method according to the present invention may be implemented as hardware or software, or as a combination of hardware and software.
  • the function of each component may be implemented as software, and a microprocessor may be implemented to execute the function of the software corresponding to each component.
  • Figure 1 is a configuration diagram of an action recognition system according to one embodiment of the present invention.
  • the action recognition system (100) is a system that recognizes the actions of objects in images.
  • the action recognition system (100) can identify and track people in an input image sequence, and recognize people's sitting actions, standing actions, running actions, falling actions, etc.
  • the action recognition system (100) can also recognize the actions of animals other than people.
  • the action recognition system (100) includes an object detection unit (110), a skeleton extraction unit (120), an object tracking unit (130), and an action recognition unit (140).
  • the action recognition system (100) includes at least one processor and a memory including at least one command, and can perform the functions of the object detection unit (110), the skeleton extraction unit (120), the object tracking unit (130), and the action recognition unit (140) through execution of the command by at least one processor.
  • the object detection unit (110), the skeleton extraction unit (120), the object tracking unit (130), and the action recognition unit (140) can be implemented by individual devices.
  • the object detection unit (110) detects objects in an image.
  • an object may mean a graphic object for a person.
  • the object detection unit (110) detects bounding boxes containing objects in each image of the input image sequence using an object detection model.
  • one bounding box may contain at least one object.
  • the object detection model is a deep learning model that is pre-trained to generate bounding boxes of objects and may have a convolutional neural network structure.
  • the object detection unit (110) may detect bounding boxes for each person. Thereafter, the object detection unit (110) may extract bounding box images corresponding to the area of the bounding box from the images.
  • the skeleton extraction unit (120) extracts skeleton data of objects in bounding box images using a skeleton extraction model.
  • the skeleton extraction unit (120) extracts skeleton data from each bounding box image and outputs a skeleton sequence representing sequential skeleton data.
  • the skeletal data of the object includes joints of the person and links between joints.
  • the skeletal data may include position coordinates and connection relationships of the head, shoulders, elbows, wrists, pelvis, knees, and ankles of the person.
  • the skeletal data may further include joint parts such as the eyes, nose, mouth, ears, neck, fingertips, torso, and toes.
  • a skeleton sequence is a set of skeleton data sequentially extracted from bounding box images.
  • a skeleton sequence consists of N frames, and each frame may include K joint points and connections between the joint points.
  • a skeleton sequence may include 10 joint points and connections between the joint points extracted from each of 10 bounding box images.
  • the skeleton extraction model is a deep learning model pre-trained to extract skeletal data of an object from a given image, and may have a convolutional neural network structure.
  • the skeleton extraction model may sequentially extract skeletal data for the given images.
  • the skeleton extraction model may extract skeletal data in parallel.
  • the skeleton extraction model can be adapted or fine-tuned based on the input image sequence.
  • the object tracking unit (130) tracks objects based on bounding box images and skeleton sequences and assigns IDs to the objects.
  • the object tracking unit (130) can identify bounding box images of the same object using a tracking algorithm.
  • the tracking algorithm is self-evident in the field of object tracking technology, a detailed description is omitted.
  • the action recognition unit (140) determines an action type for a skeletal sequence using an action recognition model, and determines an action type for each object based on the object ID and action type.
  • the action types may include actions such as a person sitting, standing, running, or falling down.
  • the action recognition unit (140) inputs a skeleton sequence into the action recognition model, obtains a probability distribution for action types output from the action recognition model, and determines an action type for the skeleton sequence based on the probability distribution for the action types. For example, the action recognition unit (140) can determine an action type with the highest probability.
  • the action recognition model is a deep learning model and can have various structures such as a graphic convolutional network (GCN), ST-GCN (Spatial Temporal GCN), AS-GCN (Actional Structural GCN), and CNN-LSTM (Convolution Neural Network-Long Short Term Memory).
  • GCN graphic convolutional network
  • ST-GCN Session Temporal GCN
  • AS-GCN Actional Structural GCN
  • CNN-LSTM Convolution Neural Network-Long Short Term Memory
  • the action recognition model is trained to input a skeleton sequence and output a probability distribution for various action types.
  • the action recognition model can be trained so that the difference between the action label corresponding to the skeleton sequence and the probability distribution output from the action recognition model is reduced.
  • one action type may indicate one class, and the probability distribution for the action types may indicate a confidence score.
  • the action recognition model is trained based on a skeleton sequence containing noise.
  • the skeleton sequence containing noise is similar to the input skeleton sequence representing the inference data of the action recognition model.
  • the noise includes at least one of a first noise caused by a skeleton extraction model, or a second noise generated based on movement statistics of joints for action types.
  • the action recognition model is trained based on at least one of a first skeleton sequence including a first noise or a second skeleton sequence including a second noise.
  • the action label of the first skeleton sequence and the action label of the second skeleton sequence can be generated by a worker.
  • the action recognition model can further be trained on skeleton sequences corresponding to manually annotated ground truth.
  • the action recognition model can process multiple skeleton sequences sequentially or in parallel.
  • the action recognition model can be trained by the action recognition system (100), but can be trained by a training device different from the action recognition system (100).
  • the action recognition model trains skeleton sequences that have a similar distribution to the input skeleton sequences that are the inference targets, the action recognition performance can be improved by the difference between the training data and the inference data.
  • the training device prepares a first image sequence.
  • the first image sequence contains a series of bounding box images of a person.
  • the training device extracts a first skeleton sequence from the first training image sequence using a skeleton extraction model (210).
  • the skeleton extraction model (210) extracts positions and connection relationships of joints of a person in the first training image sequence.
  • the skeleton extraction model (210) can process images in the first training image sequence sequentially or in parallel.
  • the first skeleton sequence extracted by the skeleton extraction model (210) may include the first noise caused by the skeleton extraction model (210).
  • the first skeleton sequence is inaccurate skeleton data including an error caused by the skeleton extraction model (210).
  • the first skeleton sequence may be similar to the input skeleton sequence extracted from the input image sequence by the skeleton extraction model (210) in the inference step of the action recognition model (220) compared to the ground truth.
  • the skeleton extraction model (210) may be composed of a predetermined number of parameters or more so as to cause a first noise of an appropriate size. If the capacity representing the number of parameters of the skeleton extraction model (210) is too small, the first noise may become large, so the skeleton extraction model (210) has an appropriate size.
  • the training device prepares an action label of the first skeleton sequence.
  • the action label of the first skeleton sequence indicates the action type indicated by the first skeleton sequence.
  • the action label of the first skeleton sequence may be a one-hot encoding vector.
  • the training device inputs the first skeleton sequence into the action recognition model (220) and obtains a probability distribution of action types for the first skeleton sequence.
  • the action recognition model (220) inputs the first skeleton sequence and outputs a probability distribution for action types such as sitting, jumping, and walking.
  • the training device compares the probability distribution output by the action recognition model (220) with the action label of the first skeleton sequence, and updates the parameters of the action recognition model (220) based on the comparison result. Specifically, the training device can calculate a first loss (Loss 1 ) according to the probability distribution output by the action recognition model (220) and the action label of the first skeleton sequence, and update the action recognition model (220) so that the first loss is reduced.
  • a first loss Loss 1
  • a classification loss function such as cross-entropy, multi-class log loss, binary cross-entropy, or categorical cross-entropy may be used. That is, the training device may calculate the first loss by applying the classification loss function to the probability distribution output by the action recognition model (220) and the action label of the first skeleton sequence.
  • the action recognition model (220) trains the first skeleton sequence extracted from the first training image sequence by the skeleton extraction model (210) and infers the action from the input skeleton sequence extracted from the input image sequence by the skeleton extraction model (210) in the inference step, the action recognition performance of the action recognition model (220) can be improved because the difference between the training data and the inference data is reduced.
  • FIG. 3 is a diagram for explaining training of an action recognition model according to another embodiment of the present invention.
  • the action recognition model (310) is trained based on a second skeleton sequence according to second noise generated based on movement statistics of joints for action types.
  • the second noise is noise generated based on the movement statistics of joints for action types.
  • the second noise is intended to make the reference skeleton sequence corresponding to the ground truth similar to the inference data of the action recognition model (310).
  • the degree of movement varies by joint for each action type. For example, in a person's running action, the arms and legs move more than the person's torso. Also, in a person's jumping action and sitting action, the legs move more.
  • the skeleton extraction model used for inference of the action recognition model (310) may have poor detection performance for joints with a lot of movement.
  • the leg joint positions extracted by the skeleton extraction model may be different from the actual leg joint positions and may have a larger error compared to joints in other parts.
  • the action recognition model (310) is trained on a reference skeleton sequence corresponding to ground truth, there is a high possibility that it will misclassify the action type for a skeleton sequence that includes different errors for each part of the human body.
  • the training device trains the action recognition model (310) based on the second skeletal sequence transformed according to the movement statistics of joints for the action types.
  • the training device prepares a second image sequence.
  • the second image sequence may be the same as or different from the first image sequence of Fig. 2.
  • a reference skeleton sequence for the second image sequence is generated by labeling.
  • the reference skeleton sequence includes joint points and links between joint points of the person in the second image sequence.
  • the reference skeleton sequence is a ground truth manually generated by a worker. Otherwise, the reference skeleton sequence can be generated by a labeling model.
  • the reference skeleton sequence accurately represents joint points and links between joint points of the person.
  • the training device pre-stores movement statistics of joints for action types.
  • the movement statistics of joints for action types include the amount of change in movement of each joint for each action type.
  • the training device generates second noise based on movement statistics of joints for action types.
  • the training device can set a range according to the degree of movement of a certain joint, and randomly generate the amount of movement and direction of movement of the joint as second noise within the set range.
  • the training device generates a second skeleton sequence by adding a second noise to the reference skeleton sequence.
  • the training device can generate the second skeleton sequence by moving each joint position of the reference skeleton sequence according to the second noise.
  • the training device inputs the second skeleton sequence into the action recognition model (310) and obtains a probability distribution of action types for the second skeleton sequence.
  • the training device compares the probability distribution output by the action recognition model (310) with the action label of the second skeleton sequence and updates the parameters of the action recognition model (310) based on the comparison result.
  • the training device can calculate a second loss (Loss 2 ) according to the probability distribution output by the action recognition model (310) and the action label of the second skeleton sequence, and update the action recognition model (310) so that the second loss is reduced.
  • a second loss Liss 2
  • One of the classification loss functions described above can be used as a loss function for calculating the second loss.
  • the action recognition model (310) trains the second skeleton sequence generated based on the movement statistics of joints for action types
  • the action recognition performance of the action recognition model (310) can be improved by reducing the difference between the training data and the inference data.
  • the cost of building training data for the action recognition model (310) can be reduced.
  • FIG. 4 is a diagram for explaining training of an action recognition model according to another embodiment of the present invention.
  • the action recognition model (410) can train both the first skeleton sequence extracted by the skeleton extraction model and the second skeleton sequence including the second noise generated based on the motion statistics for the action types.
  • first skeleton sequence and the second skeleton sequence are as described in FIGS. 2 and 3, respectively.
  • the training device calculates a first loss based on the first skeleton sequence and the action label of the first skeleton sequence, calculates a second loss based on the second skeleton sequence and the action label of the second skeleton sequence, and calculates a weighted sum of the first loss and the second loss as the overall loss of the action recognition model (410).
  • ⁇ 1 and ⁇ 2 representing the weighted ratios of the first loss and the second loss can be set heuristically.
  • the training device updates the parameters of the action recognition model (410) so that the overall loss is reduced.
  • FIG. 5 is an exemplary diagram illustrating first skeleton data and second skeleton data according to one embodiment of the present invention.
  • a training image (510) capturing a human walking motion is illustrated.
  • the input skeleton sequence extracted from the input image sequence by the skeleton extraction model (210) contains noise.
  • the skeleton sequence containing such noise is used as training data.
  • the training device inputs the training image (510) into the skeleton extraction model (210) to extract first skeleton data (520).
  • the first skeleton data (520) includes first noise caused by the skeleton extraction model (210).
  • the first skeleton data (520) has lower body joints misaligned according to the first noise.
  • the training device obtains reference skeleton data (530) manually annotated with training images (510), and adds second noise to the reference skeleton data (530) to generate second skeleton data (540).
  • second noise to the reference skeleton data (530) to generate second skeleton data (540).
  • the skeleton sequence input to the action recognition model is extracted by the skeleton extraction model (210), so there is a high probability that it will include errors such as the first skeleton data (520) and the second skeleton data (540).
  • the action recognition model trained on the reference skeleton data (530) shows low recognition performance for skeleton data similar to the first skeleton data (520) and the second skeleton data (540), whereas the action recognition model trained on the first skeleton data (520) and the second skeleton data (540) shows high recognition performance for skeleton data similar to the first skeleton data (520) and the second skeleton data (540).
  • Figure 6 is a flowchart of a training method for an action recognition model according to one embodiment of the present invention.
  • a training device for training an action recognition model prepares a first skeleton sequence extracted by a skeleton extraction model from a first training image sequence, and an action label of the first skeleton sequence (S610).
  • the first skeleton sequence contains the first noise caused by the skeleton extraction model.
  • the training device prepares a second skeleton sequence generated by adding second noise to the reference skeleton sequence of the second training image sequence and an action label of the second skeleton sequence (S620).
  • the second noise is generated based on the movement statistics of joints for the action types.
  • the training device trains an action recognition model further based on the first skeleton sequence, the action label of the first skeleton sequence, the second skeleton data, and the action label of the second skeleton data (S630).
  • the training device calculates the first loss by comparing the action type determined by the action recognition model from the first skeleton sequence with the action label of the first skeleton sequence.
  • the training device calculates the second loss by comparing the action type determined by the action recognition model from the second skeleton sequence with the action label of the second skeleton sequence.
  • the training device calculates the weighted sum of the first loss and the second loss as the total loss, and updates the action recognition model in a direction in which the total loss is reduced.
  • Figure 7 is a flowchart of an action recognition method according to one embodiment of the present invention.
  • the action recognition device refers to the action recognition unit (140) in Fig. 2.
  • the action recognition device obtains an input skeleton sequence extracted from an input image sequence (S710).
  • the input skeleton sequence is extracted by the skeleton extraction model, and the skeleton extraction model is used to generate training data for the action recognition model.
  • the action recognition device determines an action type for an input skeletal sequence using an action recognition model (S720).
  • the action recognition model outputs a probability distribution that the input skeleton sequence belongs to action types, and the action recognition device determines the action type to which the input skeleton sequence belongs with the highest probability as the action type of the input skeleton sequence.
  • the action recognition model is a model trained according to one of the training methods described in FIGS. 2 to 6.
  • Various implementations of the systems and techniques described herein can be implemented as digital electronic circuits, integrated circuits, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), computer hardware, firmware, software, and/or combinations thereof. These various implementations can include implementations of one or more computer programs executable on a programmable system.
  • the programmable system includes at least one programmable processor (which may be a special purpose processor or a general purpose processor) coupled to receive data and instructions from, and transmit data and instructions to, a storage system, at least one input device, and at least one output device.
  • Computer programs also known as programs, software, software applications, or code
  • a computer-readable recording medium includes any type of recording device that stores data that can be read by a computer system.
  • a computer-readable recording medium can be a non-volatile or non-transitory medium, such as a ROM, a CD-ROM, a magnetic tape, a floppy disk, a memory card, a hard disk, a magneto-optical disk, a storage device, and may further include a transitory medium, such as a data transmission medium.
  • the computer-readable recording medium can be distributed over a network-connected computer system, so that the computer-readable code can be stored and executed in a distributed manner.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Databases & Information Systems (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Human Computer Interaction (AREA)
  • Psychiatry (AREA)
  • Medical Informatics (AREA)
  • Social Psychology (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Image Analysis (AREA)

Abstract

본 발명의 일 측면에 의하면, 행동 인식 모델의 훈련을 위한 컴퓨터 구현 방법에 있어서, 골격 추출 모델이 제1 트레이닝 이미지 시퀀스로부터 추출한 제1 골격 시퀀스, 및 상기 제1 골격 시퀀스의 행동 레이블을 준비하는 단계 - 상기 제1 골격 시퀀스는 상기 골격 추출 모델에 의해 야기되는 제1 노이즈를 포함함 -; 및 상기 제1 골격 시퀀스 및 상기 제1 골격 시퀀스의 상기 행동 레이블을 기반으로 행동 인식 모델을 훈련하는 단계를 포함하는 방법 및 장치를 제공한다.

Description

노이즈 골격 시퀀스 기반 행동 인식을 위한 장치 및 방법
본 발명의 실시예들은 노이즈 골격 시퀀스 기반 행동 인식을 위한 장치 및 방법에 관한 것이다.
이하에 기술되는 내용은 단순히 본 실시예와 관련되는 배경 정보만을 제공할 뿐 종래기술을 구성하는 것이 아니다.
최근 IT 기술의 발달에 따라, 카메라에 의해 촬영되는 영상으로부터 객체들의 행동을 인식하는 기술의 연구가 활발히 이루어지고 있다. 행동 인식 기술은 사람들의 행동 패턴 분석, 이상행동 감지, 침입자 감지 등 다양한 분야에서 이용된다.
다양한 행동 인식 기술들 중 하나로서, 골격(skeleton)을 기반으로 객체의 행동을 인식하는 기술이 있다. 골격 기반 행동 인식 기술은 소정의 이미지 시퀀스 내 사람들의 골격을 기반으로 사람들의 자세 변화를 분석하고, 자세 변화로부터 사람들의 행동 유형들을 인식하는 기술이다.
특히, 골격 기반 행동 인식 기술은 딥러닝 기반 행동 인식 모델을 이용하여 사람의 행동을 인식할 수 있다. 여기서, 행동 인식 모델은 사람의 골격 데이터로부터 사람의 행동 유형을 출력하도록 훈련되는 모델이다. 이때, 행동 인식 모델의 훈련 데이터에 대한 레이블로서, 작업자가 직접 애노테이션(annotation)한 골격 데이터가 이용된다. 골격 데이터의 애노테이션 결과는 그라운드 트루스(Ground Truth, GT)로 지칭될 수 있다.
행동 인식 모델은 훈련 데이터와 유사한 분포를 갖는 입력 데이터에 대해 높은 인식 성능을 갖는다. 반면, 추론 단계에서 골격 데이터가 훈련 데이터와 다른 분포를 갖는 경우, 행동 인식 모델의 행동 인식 성능이 저하될 수 있다.
구체적으로, 행동 인식 모델의 훈련에는 수동으로 애노테이션된 정확한 골격 데이터가 이용되지만, 행도 인식 모델의 추론에는 골격 추출 모델이 이미지로부터 추출한 부정확한 골격 데이터가 이용된다. 즉, 행동 인식 모델의 훈련 환경과 추론 환경이 다르다. 수동으로 애노테이션된 골격 데이터를 훈련한 행동 인식 모델은 골격 추출 모델에 의해 추출된 골격 데이터에 대한 행동 유형을 잘못 분류할 수 있다.
특히, 골격 추출 모델은 관절들 중 움직임이 많은 관절들을 잘못 추출할 수 있다. 어느 행동 유형에 있어서, 움직임 변동이 큰 관절들은 검출되지 않거나 잘못된 위치로 검출될 수 있다. 예를 들면, 달리기 행동의 경우 다리와 팔의 움직임 변동이 크다. 골격 추출 모델이 달리기 행동에 관한 이미지들로부터 추출한 골격 데이터 중 다리 부위의 골격 데이터는 큰 오류를 포함할 수 있다. 따라서, 행동 인식 모델은 골격 추출 모델의 추출 결과에 대한 행동 유형을 잘못 분류할 수 있다.
이러한 문제점을 해결하기 위해서는, 행동 인식 모델이 다양한 자세에 따른 골격 데이터를 훈련해야 한다. 이는, 작업자가 더 많은 데이터를 애노테이션해야 하므로, 많은 비용과 시간이 소모된다.
따라서, 작업자의 애노테이션 외에 행동 인식 모델의 성능을 개선하기 위한 연구가 필요하다.
본 발명의 실시예들은, 적은 수의 그라운드 트루스로도 행동 인식 모델의 성능이 훈련 데이터와 다른 분포를 갖는 골격 데이터에 대해 저하되는 것을 방지하기 위한 훈련 방법 및 장치를 제공하는 데 주된 목적이 있다.
본 발명이 해결하고자 하는 과제들은 이상에서 언급한 과제들로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
본 발명의 일 측면에 의하면, 행동 인식 모델의 훈련을 위한 컴퓨터 구현 방법에 있어서, 골격 추출 모델이 제1 트레이닝 이미지 시퀀스로부터 추출한 제1 골격 시퀀스, 및 상기 제1 골격 시퀀스의 행동 레이블을 준비하는 단계 - 상기 제1 골격 시퀀스는 상기 골격 추출 모델에 의해 야기되는 제1 노이즈를 포함함 -; 및 상기 제1 골격 시퀀스 및 상기 제1 골격 시퀀스의 상기 행동 레이블을 기반으로 행동 인식 모델을 훈련하는 단계를 포함하는 방법을 제공한다.
본 실시예의 다른 측면에 의하면, 행동 인식 모델의 훈련을 위한 장치에 있어서, 명령어들을 저장하는 메모리; 및 적어도 하나의 프로세서를 포함하되, 상기 적어도 하나의 프로세서는 상기 명령어들을 실행함으로써, 골격 추출 모델이 제1 트레이닝 이미지 시퀀스로부터 추출한 제1 골격 시퀀스, 및 상기 제1 골격 시퀀스의 행동 레이블을 준비하고 - 상기 제1 골격 시퀀스는 상기 골격 추출 모델에 의해 야기되는 제1 노이즈를 포함함 -, 상기 제1 골격 시퀀스 및 상기 제1 골격 시퀀스의 상기 행동 레이블을 기반으로 행동 인식 모델을 훈련하는 장치를 제공한다.
본 실시예의 다른 측면에 의하면, 행동 인식을 위한 컴퓨터 구현 방법에 있어서, 입력 이미지 시퀀스로부터 추출된 입력 골격 시퀀스를 획득하는 단계; 및 행동 인식 모델을 이용하여 상기 입력 골격 시퀀스에 대한 행동 유형을 결정하는 단계를 포함하되, 상기 행동 인식 모델은 골격 추출 모델이 제1 트레이닝 이미지 시퀀스로부터 추출한 제1 골격 시퀀스, 및 상기 제1 골격 시퀀스의 행동 레이블을 준비하는 단계 - 상기 제1 골격 시퀀스는 상기 골격 추출 모델에 의해 야기되는 제1 노이즈를 포함함 -; 및 상기 제1 골격 시퀀스 및 상기 제1 골격 시퀀스의 상기 행동 레이블을 기반으로 행동 인식 모델을 훈련하는 단계를 포함하여 훈련된 것인 방법을 제공한다.
이상에서 설명한 바와 같이 본 발명의 일 실시예에 의하면, 적은 수의 그라운드 트루스로도 행동 인식 모델의 성능이 훈련 데이터와 다른 분포를 갖는 골격 데이터에 대해 저하되는 것을 방지할 수 있다.
본 개시의 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 일 실시예에 따른 행동 인식 시스템의 구성도이다.
도 2는 본 발명의 일 실시예에 따른 행동 인식 모델의 훈련을 설명하기 위한 도면이다.
도 3은 본 발명의 다른 실시예에 따른 행동 인식 모델의 훈련을 설명하기 위한 도면이다.
도 4는 본 발명의 다른 실시예에 따른 행동 인식 모델의 훈련을 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에 따른 제1 골격 데이터 및 제2 골격 데이터를 설명하기 위해 예시적으로 나타낸 도면이다.
도 6은 본 발명의 일 실시예에 따른 행동 인식 모델의 훈련 방법의 순서도이다.
도 7은 본 발명의 일 실시예에 따른 행동 인식 방법의 순서도이다.
이하, 본 개시의 일부 실시예들을 예시적인 도면을 이용해 상세하게 설명한다. 각 도면의 구성 요소들에 참조 부호를 부가함에 있어서, 동일한 구성 요소들에 대해서는 비록 다른 도면 상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 개시를 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 개시의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
본 개시에 따른 실시예의 구성요소를 설명하는 데 있어서, 제1, 제2, i), ii), a), b) 등의 부호를 사용할 수 있다. 이러한 부호는 그 구성요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 부호에 의해 해당 구성요소의 본질 또는 차례나 순서 등이 한정되지 않는다. 명세서에서 어떤 부분이 어떤 구성요소를 '포함' 또는 '구비'한다고 할 때, 이는 명시적으로 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.
본 발명에 따른 장치 또는 방법의 각 구성요소는 하드웨어 또는 소프트웨어로 구현되거나, 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다. 또한, 각 구성요소의 기능이 소프트웨어로 구현되고 마이크로프로세서가 각 구성요소에 대응하는 소프트웨어의 기능을 실행하도록 구현될 수도 있다.
도 1은 본 발명의 일 실시예에 따른 행동 인식 시스템의 구성도이다.
도 1을 참조하면, 행동 인식 시스템(100)은 이미지들 내 객체들의 행동을 인식하는 시스템이다. 일 예로서, 행동 인식 시스템(100)은 입력 이미지 시퀀스 내 사람들을 식별 및 추적하고, 사람들의 앉는 행동, 서 있는 행동, 뛰는 행동, 쓰러지는 행동 등을 인식할 수 있다. 다른 예로서, 행동 인식 시스템(100)은 사람을 제외한 동물들에 대한 행동을 인식할 수도 있다.
이를 위해, 행동 인식 시스템(100)은 객체 검출부(110), 골격 추출부(120), 객체 추적부(130) 및 행동 인식부(140)를 포함한다. 행동 인식 시스템(100)은 적어도 하나의 프로세서와 적어도 하나의 명령어를 포함하는 메모리를 포함하며, 적어도 하나의 프로세서에 의한 명령어 실행을 통해 객체 검출부(110), 골격 추출부(120), 객체 추적부(130) 및 행동 인식부(140)의 기능을 수행할 수 있다. 다른 실시예에서, 객체 검출부(110), 골격 추출부(120), 객체 추적부(130) 및 행동 인식부(140)가 개별 장치들에 의해 구현될 수 있다.
객체 검출부(110)는 이미지 내 객체들을 검출한다. 여기서, 객체는 사람에 대한 그래픽 객체를 의미할 수 있다.
구체적으로, 객체 검출부(110)는 객체 검출 모델을 이용하여 입력 이미지 시퀀스의 각 이미지 내 객체들을 포함하는 바운딩 박스들을 검출한다. 여기서, 하나의 바운딩 박스는 적어도 하나의 객체를 포함할 수 있다.
한편, 객체 검출 모델은 객체들의 바운딩 박스를 생성하도록 미리 훈련된 딥러닝 모델로서, 합성곱 신경망 구조를 가질 수 있다. 일 예로서, 이미지들 내에 여러 사람들이 있는 경우, 객체 검출부(110)는 사람들 각각에 대한 바운딩 박스를 검출할 수 있다. 이후, 객체 검출부(110)는 이미지들로부터 바운딩 박스의 영역에 대응되는 바운딩박스 이미지들을 추출할 수 있다.
골격 추출부(120)는 골격 추출 모델을 이용하여 바운딩박스 이미지들 내 객체의 골격 데이터를 추출한다. 골격 추출부(120)는 각 바운딩박스 이미지로부터 골격 데이터를 추출하고, 순차적 골격 데이터를 나타내는 골격 시퀀스를 출력한다.
여기서, 객체의 골격 데이터는 사람의 관절들 및 관절들 간 링크들을 포함한다. 예를 들면, 골격 데이터는 사람의 머리, 어깨, 팔꿈치, 손목, 골반, 무릎 및 발목의 위치 좌표 및 연결 관계를 포함할 수 있다. 나아가, 골격 데이터는 눈, 코, 입, 귀, 목, 손끝, 몸통, 발끝 등의 관절 부위들을 더 포함할 수 있다.
골격 시퀀스는 바운딩박스 이미지들로부터 순차적으로 추출된 골격 데이터의 집합이다. 골격 시퀀스는 N개의 프레임들로 구성되고, 각 프레임은 K개의 관절점들 및 관절점들 간 연결관계들을 포함할 수 있다. 일 예로서, 골격 시퀀스는 10개의 바운딩박스 이미지들 각각으로부터 추출된 10 개의 관절점들 및 관절점들 간 연결관계들을 포함할 수 있다.
골격 추출 모델은 주어진 이미지로부터 객체의 골격 데이터를 추출하도록 미리 훈련된 딥러닝 모델로서, 컨볼루션 신경망 구조를 가질 수 있다. 일 예에서, 골격 추출 모델은 주어진 이미지들에 대한 골격 데이터를 순차적으로 추출할 수 있다. 다른 예에서, 골격 추출 모델은 골격 데이터를 병렬적으로 추출할 수도 있다.
골격 추출 모델은 입력 이미지 시퀀스에 기초하여 적응 또는 정밀 튜닝(fine-tuning)될 수 있다.
객체 추적부(130)는 바운딩박스 이미지들 및 골격 시퀀스를 기반으로 객체를 추적하고, 객체에 ID를 할당한다.
객체 추적부(130)는 추적 알고리즘을 이용하여 동일한 객체에 관한 바운딩박스 이미지들을 식별할 수 있다. 여기서, 추적 알고리즘은 객체 추적 기술 분야에서 자명하므로, 자세한 설명은 생략한다.
행동 인식부(140)는 행동 인식 모델을 이용하여 골격 시퀀스에 대한 행동 유형을 결정하고, 객체 ID 및 행동 유형을 기반으로 객체별 행동 유형을 결정한다.
여기서, 행동 유형은 사람이 앉는 행동, 서 있는 행동, 뛰는 행동, 쓰러지는 행동 등을 포함할 수 있다.
행동 인식부(140)는 행동 인식 모델에 골격 시퀀스를 입력하고, 행동 인식 모델로부터 출력되는 행동 유형들에 대한 확률 분포를 획득하고, 행동 유형들에 대한 확률 분포를 기반으로 골격 시퀀스에 대한 행동 유형을 결정한다. 예를 들면, 행동 인식부(140)는 가장 높은 확률을 갖는 행동 유형을 결정할 수 있다.
행동 인식 모델은 딥러닝 모델로서, 그래프 합성곱 신경망(Graphic Convolutional Network, GCN), ST-GCN(Spatial Temporal GCN), AS-GCN(Actional Structural GCN), CNN-LSTM(Convolution Neural Network-Long Short Term Memory) 등 다양한 구조를 가질 수 있다.
행동 인식 모델은 골격 시퀀스를 입력 받고, 여러 행동 유형들에 대한 확률 분포를 출력하도록 훈련된다. 행동 인식 모델은 골격 시퀀스에 대응되는 행동 레이블과 행동 인식 모델로부터 출력되는 확률 분포 간 차이가 줄어들도록 훈련될 수 있다. 여기서, 하나의 행동 유형은 하나의 클래스를 가리키고, 행동 유형들에 대한 확률 분포는 신뢰도 점수(confidence score)를 가리킬 수 있다.
특히, 훈련 데이터와 추론 데이터 간 차이에 의한 행동 인식 성능 저하를 방지하기 위해, 행동 인식 모델은 노이즈를 포함하는 골격 시퀀스를 기반으로 훈련된다. 노이즈를 포함하는 골격 시퀀스는 행동 인식 모델의 추론 데이터를 나타내는 입력 골격 시퀀스와 유사하다.
구체적으로, 노이즈는 골격 추출 모델에 의해 야기되는 제1 노이즈, 또는 행동 유형들에 대한 관절들의 움직임 통계를 기반으로 생성된 제2 노이즈 중 적어도 하나를 포함한다.
행동 인식 모델은 제1 노이즈를 포함하는 제1 골격 시퀀스 또는 제2 노이즈를 포함하는 제2 골격 시퀀스 중 적어도 하나를 기반으로 훈련된다. 제1 골격 시퀀스의 행동 레이블 및 제2 골격 시퀀스의 행동 레이블은 작업자에 의해 생성될 수 있다. 나아가, 행동 인식 모델은 수동으로 애노테이션된 그라운드 트루스에 해당하는 골격 시퀀스를 더 훈련할 수도 있다.
한편, 행동 인식 모델은 여러 명의 골격 시퀀스들을 순차적으로 처리할 수도 있고, 병렬적으로 처리할 수도 있다. 행동 인식 모델은 행동 인식 시스템(100)에 의해 훈련될 수도 있으나, 행동 인식 시스템(100)과는 다른 훈련 장치에 의해 훈련될 수 있다.
이처럼, 행동 인식 모델은 추론 대상인 입력 골격 시퀀스와 유사한 분포를 갖는 골격 시퀀스를 훈련하므로, 훈련 데이터와 추론 데이터 간 차이에 의한 행동 인식 성능이 개선될 수 있다.
도 2는 본 발명의 일 실시예에 따른 행동 인식 모델의 훈련을 설명하기 위한 도면이다.
도 2를 참조하면, 행동 인식 모델(220)은 골격 추출 모델(210)에 의해 추출된 제1 골격 시퀀스를 기반으로 훈련된다.
행동 인식 모델(220)은 적어도 하나의 프로세서 및 적어도 하나의 메모리를 포함하는 훈련 장치에 의해 훈련될 수 있다. 적어도 하나의 프로세서는 적어도 하나의 메모리에 저장된 명령어들을 실행함으로써, 행동 인식 모델(220)의 훈련 방법을 수행할 수 있다.
먼저, 훈련 장치는 제1 이미지 시퀀스를 준비한다. 제1 이미지 시퀀스는 한 사람에 대한 일련의 바운딩 박스 이미지들을 포함한다.
훈련 장치는 골격 추출 모델(210)을 이용하여 제1 트레이닝 이미지 시퀀스로부터 제1 골격 시퀀스를 추출한다. 골격 추출 모델(210)은 제1 트레이닝 이미지 시퀀스 내 사람의 관절들의 위치들 및 연결 관계들을 추출한다. 골격 추출 모델(210)은 제1 트레이닝 이미지 시퀀스 내 이미지들을 순차적으로 또는 병렬적으로 처리할 수 있다.
이때, 골격 추출 모델(210)이 추출한 제1 골격 시퀀스는 골격 추출 모델(210)에 의해 야기되는 제1 노이즈를 포함할 수 있다. 제1 골격 시퀀스는 골격 추출 모델(210)에 의해 야기되는 오류를 포함하는 부정확한 골격 데이터이다. 다만, 제1 골격 시퀀스는 그라운드 트루스에 비해 행동 인식 모델(220)의 추론 단계에서 골격 추출 모델(210)이 입력 이미지 시퀀스로부터 추출한 입력 골격 시퀀스와 유사할 수 있다.
골격 추출 모델(210)은 적절한 크기의 제1 노이즈를 야기하도록, 소정의 개수 이상의 파라미터들로 구성될 수 있다. 골격 추출 모델(210)의 파라미터 수를 나타내는 용량(capacity)이 너무 적으면, 제1 노이즈가 커질 수 있으므로, 골격 추출 모델(210)을 적절한 크기를 갖는다.
나아가, 훈련 장치는 제1 골격 시퀀스의 행동 레이블을 준비한다. 제1 골격 시퀀스의 행동 레이블은 제1 골격 시퀀스가 나타내는 행동 유형을 나타낸다. 일 예로서, 제1 골격 시퀀스의 행동 레이블은 원-핫 인코딩 벡터일 수 있다.
훈련 장치는 제1 골격 시퀀스를 행동 인식 모델(220)에 입력하고, 제1 골격 시퀀스에 대한 행동 유형들의 확률 분포를 획득한다. 일 예로서, 행동 인식 모델(220)은 제1 골격 시퀀스를 입력 받고, 착석, 점프, 걷기 등의 행동 유형들에 대한 확률 분포를 출력한다.
훈련 장치는 행동 인식 모델(220)에 의해 출력되는 확률 분포를 제1 골격 시퀀스의 행동 레이블과 비교하고, 비교 결과에 기초하여 행동 인식 모델(220)의 파라미터들을 업데이트한다. 구체적으로, 훈련 장치는 행동 인식 모델(220)에 의해 출력되는 확률 분포 및 제1 골격 시퀀스의 행동 레이블에 따라 제1 손실(Loss1)을 계산하고, 제1 손실이 줄어들도록 행동 인식 모델(220)을 업데이트할 수 있다.
여기서, 제1 손실을 계산하기 위해, 크로스 엔트로피(cross-entropy), 다중 클래스 로그 손실(multi class log loss), 이진 크로스 엔트로피(Binary cross-entropy), 또는 카테고리컬 크로스 엔트로피(Categorical cross-entropy) 등 분류 손실함수가 이용될 수 있다. 즉, 훈련 장치는 행동 인식 모델(220)에 의해 출력되는 확률 분포 및 제1 골격 시퀀스의 행동 레이블에 분류 손실함수를 적용하여 제1 손실을 계산할 수 있다.
이처럼, 행동 인식 모델(220)이 골격 추출 모델(210)에 의해 제1 트레이닝 이미지 시퀀스로부터 추출된 제1 골격 시퀀스를 훈련하고, 추론 단계에서 골격 추출 모델(210)에 의해 입력 이미지 시퀀스로부터 추출되는 입력 골격 시퀀스로부터 행동을 추론하는 경우, 훈련 데이터와 추론 데이터 간 차이가 줄어들기 때문에 행동 인식 모델(220)의 행동 인식 성능이 개선될 수 있다.
도 3은 본 발명의 다른 실시예에 따른 행동 인식 모델의 훈련을 설명하기 위한 도면이다.
도 3을 참조하면, 행동 인식 모델(310)은 행동 유형들에 대한 관절들의 움직임 통계를 기반으로 생성된 제2 노이즈에 따른 제2 골격 시퀀스를 기반으로 훈련된다.
여기서, 제2 노이즈는 행동 유형들에 대한 관절들의 움직임 통계를 기반으로 생성되는 노이즈이다. 제2 노이즈는 그라운드 트루스에 해당하는 참조 골격 시퀀스를 행동 인식 모델(310)의 추론 데이터와 유사해지도록 하기 위한 것이다.
구체적으로, 어느 행동 유형에 대해 관절별로 움직임 정도가 다르다. 예를 들면, 사람의 달리기 행동에서, 사람의 몸통에 비해 팔과 다리가 많이 움직인다. 또한, 사람의 점프 행동 및 착석 행동에서는 다리가 많이 움직인다.
행동 인식 모델(310)의 추론에 이용되는 골격 추출 모델은 움직임이 많은 관절들에 대해서는 검출 성능이 악화될 수 있다. 예를 들면, 사람의 달리기 행동을 추론하기 위해, 골격 추출 모델에 의해 추출된 다리 관절 위치들은 실제 다리 관절 위치와는 다를 수 있으며, 다른 부위의 관절들에 비해 오차가 클 수 있다.
행동 인식 모델(310)이 그라운드 트루스에 해당하는 참조 골격 시퀀스를 훈련한 경우, 사람의 부위별로 다른 오차를 포함하는 골격 시퀀스에 대해 행동 유형을 잘못 분류할 가능성이 높다.
따라서, 훈련 장치는 행동 유형들에 대한 관절들의 움직임 통계에 따라 변형된 제2 골격 시퀀스를 기반으로 행동 인식 모델(310)을 훈련한다.
먼저, 훈련 장치는 제2 이미지 시퀀스를 준비한다. 제2 이미지 시퀀스는 도 2의 제1 이미지 시퀀스와 같을 수도 있고, 다를 수도 있다.
이후, 라벨링에 의해 제2 이미지 시퀀스에 대한 참조 골격 시퀀스가 생성된다. 참조 골격 시퀀스는 제2 이미지 시퀀스 내 사람의 관절점들 및 관절점들 간 링크들을 포함한다. 참조 골격 시퀀스는 작업자에 의해 수동으로 생성되는 그라운드 트루스이다. 그렇지 않으면, 참조 골격 시퀀스는 라벨링 모델에 의해 생성될 수 있다. 참조 골격 시퀀스는 사람의 관절점들 및 관절점들 간 링크들을 정확하게 나타낸 것이다.
훈련 장치는 행동 유형들에 대한 관절들의 움직임 통계를 미리 저장한다. 행동 유형들에 대한 관절들의 움직임 통계는 각 행동 유형에 대해 각 관절의 움직임 변화량을 포함한다.
훈련 장치는 행동 유형들에 대한 관절들의 움직임 통계를 기반으로 제2 노이즈를 생성한다. 일 예로서, 훈련 장치는 어느 관절의 움직임 정도에 따른 범위를 설정하고, 설정된 범위 내에서 임의로 해당 관절의 이동량 및 이동방향을 제2 노이즈로 생성할 수 있다.
훈련 장치는 참조 골격 시퀀스에 제2 노이즈를 부가하여 제2 골격 시퀀스를 생성한다. 훈련 장치는 참조 골격 시퀀스의 각 관절 위치들을 제2 노이즈에 따라 이동시킴으로써 제2 골격 시퀀스를 생성할 수 있다.
이후, 훈련 장치는 제2 골격 시퀀스를 행동 인식 모델(310)에 입력하고, 제2 골격 시퀀스에 대한 행동 유형들의 확률 분포를 획득한다. 훈련 장치는 행동 인식 모델(310)에 의해 출력되는 확률 분포를 제2 골격 시퀀스의 행동 레이블과 비교하고, 비교 결과에 기초하여 행동 인식 모델(310)의 파라미터들을 업데이트한다. 훈련 장치는 행동 인식 모델(310)에 의해 출력되는 확률 분포 및 제2 골격 시퀀스의 행동 레이블에 따라 제2 손실(Loss2)을 계산하고, 제2 손실이 줄어들도록 행동 인식 모델(310)을 업데이트할 수 있다. 제2 손실을 계산하기 위한 손실함수는 전술한 분류 손실함수들 중 하나가 이용될 수 있다.
이처럼, 행동 인식 모델(310)이 행동 유형들에 대한 관절들의 움직임 통계를 기반으로 생성된 제2 골격 시퀀스를 훈련하는 경우, 훈련 데이터와 추론 데이터 간 차이를 줄여 행동 인식 모델(310)의 행동 인식 성능을 개선할 수 있다.
나아가, 제2 골격 시퀀스는 참조 골격 시퀀스로부터 증강되는 것이므로, 행동 인식 모델(310)의 훈련 데이터를 구축하는 비용이 절감될 수 있다.
도 4는 본 발명의 다른 실시예에 따른 행동 인식 모델의 훈련을 설명하기 위한 도면이다.
도 4를 참조하면, 행동 인식 모델(410)은 골격 추출 모델에 의해 추출되는 제1 골격 시퀀스, 및 행동 유형들에 대한 움직임 통계를 기반으로 생성되는 제2 노이즈를 포함하는 제2 골격 시퀀스를 모두 훈련할 수 있다.
여기서, 제1 골격 시퀀스 및 제2 골격 시퀀스는 각각 도 2 및 도 3에서 설명된 바와 같다.
훈련 장치는 제1 골격 시퀀스 및 제1 골격 시퀀스의 행동 레이블을 기반으로 제1 손실을 계산하고, 제2 골격 시퀀스 및 제2 골격 시퀀스의 행동 레이블을 기반으로 제2 손실을 계산하고, 제1 손실과 제2 손실의 가중합을 행동 인식 모델(410)의 전체 손실로 계산한다. 제1 손실과 제2 손실의 가중 비율을 나타내는 τ1 및 τ2는 휴리스틱으로 설정될 수 있다.
훈련 장치는 전체 손실이 감소하도록 행동 인식 모델(410)의 파라미터들을 업데이트한다.
도 5는 본 발명의 일 실시예에 따른 제1 골격 데이터 및 제2 골격 데이터를 설명하기 위해 예시적으로 나타낸 도면이다.
도 5를 참조하면, 사람이 걷는 동작을 캡처한 트레이닝 이미지(510)가 도시되어 있다.
행동 인식 모델의 추론 단계에서, 골격 추출 모델(210)이 입력 이미지 시퀀스로부터 추출한 입력 골격 시퀀스는 노이즈를 포함한다. 특히, 움직임이 많은 관절에 대해 상대적으로 큰 오차를 포함할 가능성이 높다. 행동 인식 모델의 추론 성능을 개선하기 위해, 이러한 노이즈를 포함하는 골격 시퀀스를 훈련 데이터로 이용한다.
먼저, 훈련 장치는 트레이닝 이미지(510)를 골격 추출 모델(210)에 입력하여 제1 골격 데이터(520)를 추출한다. 여기서, 제1 골격 데이터(520)는 골격 추출 모델(210)에 의해 야기되는 제1 노이즈를 포함한다. 제1 골격 데이터(520)는 제1 노이즈에 따라 하체 관절들이 어긋나 있다.
훈련 장치는 트레이닝 이미지(510)를 수동으로 애노테이션한 참조 골격 데이터(530)를 획득하고, 참조 골격 데이터(530)에 제2 노이즈를 부가하여 제2 골격 데이터(540)를 생성한다. 통계적으로 걷기 동작에서 다리의 움직임이 많으므로, 참조 골격 데이터(530)의 상체 관절들에 비해 하체 관절들에 큰 노이즈가 부가된다. 이에 따라, 제2 골격 데이터(540)는 하체 관절들이 많이 벌어져 있다.
행동 인식 모델의 추론 단계에서, 행동 인식 모델에 입력되는 골격 시퀀스는 골격 추출 모델(210)에 의해 추출되는 것이므로, 제1 골격 데이터(520) 및 제2 골격 데이터(540)와 같은 오차들을 포함할 확률이 높다.
참조 골격 데이터(530)를 훈련한 행동 인식 모델은 제1 골격 데이터(520) 및 제2 골격 데이터(540)와 유사한 골격 데이터에 대해 낮은 인식 성능을 보이는 반면, 제1 골격 데이터(520) 및 제2 골격 데이터(540)를 훈련한 행동 인식 모델은 제1 골격 데이터(520) 및 제2 골격 데이터(540)와 유사한 골격 데이터에 대해 높은 인식 성능을 보인다.
도 6은 본 발명의 일 실시예에 따른 행동 인식 모델의 훈련 방법의 순서도이다.
도 6을 참조하면, 행동 인식 모델을 훈련하기 위한 훈련 장치는 골격 추출 모델이 제1 트레이닝 이미지 시퀀스로부터 추출한 제1 골격 시퀀스, 및 제1 골격 시퀀스의 행동 레이블을 준비한다(S610).
여기서, 제1 골격 시퀀스는 골격 추출 모델에 의해 야기되는 제1 노이즈를 포함한다.
또한, 훈련 장치는 제2 트레이닝 이미지 시퀀스의 참조 골격 시퀀스에 제2 노이즈를 부가하여 생성한 제2 골격 시퀀스 및 제2 골격 시퀀스의 행동 레이블을 준비한다(S620).
여기서, 제2 노이즈는 행동 유형들에 대한 관절들의 움직임 통계를 기반으로 생성된 것이다.
이후, 훈련 장치는 제1 골격 시퀀스, 제1 골격 시퀀스의 행동 레이블, 제2 골격 데이터 및 제2 골격 데이터의 행동 레이블에 더 기초하여 행동 인식 모델을 훈련한다(S630).
구체적으로, 훈련 장치는 행동 인식 모델이 제1 골격 시퀀스로부터 결정한 행동 유형과 제1 골격 시퀀스의 행동 레이블을 비교하여 제1 손실을 계산한다. 훈련 장치는 행동 인식 모델이 제2 골격 시퀀스로부터 결정한 행동 유형과 제2 골격 시퀀스의 행동 레이블을 비교하여 제2 손실을 계산한다. 훈련 장치는 제1 손실과 제2 손실의 가중합을 전체 손실로 계산하고, 전체 손실이 줄어드는 방향으로 행동 인식 모델을 업데이트한다.
도 7은 본 발명의 일 실시예에 따른 행동 인식 방법의 순서도이다.
이하에서, 행동 인식 장치는 도 2에서 행동 인식부(140)를 가리킨다.
도 7을 참조하면, 행동 인식 장치는 입력 이미지 시퀀스로부터 추출된 입력 골격 시퀀스를 획득한다(S710).
여기서, 입력 골격 시퀀스는 골격 추출 모델에 의해 추출된 것이며, 골격 추출 모델은 행동 인식 모델의 훈련 데이터를 생성하는 데 이용된 것이다.
행동 인식 장치는 행동 인식 모델을 이용하여 입력 골격 시퀀스에 대한 행동 유형을 결정한다(S720).
구체적으로, 행동 인식 모델은 입력 골격 시퀀스가 행동 유형들에 속할 확률 분포를 출력하고, 행동 인식 장치는 입력 골격 시퀀스가 속할 확률이 가장 높은 행동 유형을 입력 골격 시퀀스의 행동 유형으로 결정한다.
여기서, 행동 인식 모델은 도 2 내지 도 6에서 설명된 훈련 방법들 중 하나에 따라 훈련된 모델이다.
본 명세서에 설명되는 시스템들 및 기법들의 다양한 구현예들은, 디지털 전자 회로, 집적회로, FPGA(field programmable gate array), ASIC(application specific integrated circuit), 컴퓨터 하드웨어, 펌웨어, 소프트웨어, 및/또는 이들의 조합으로 실현될 수 있다. 이러한 다양한 구현예들은 프로그래밍가능 시스템 상에서 실행 가능한 하나 이상의 컴퓨터 프로그램들로 구현되는 것을 포함할 수 있다. 프로그래밍가능 시스템은, 저장 시스템, 적어도 하나의 입력 디바이스, 그리고 적어도 하나의 출력 디바이스로부터 데이터 및 명령들을 수신하고 이들에게 데이터 및 명령들을 전송하도록 결합되는 적어도 하나의 프로그래밍가능 프로세서(이것은 특수 목적 프로세서일 수 있거나 혹은 범용 프로세서일 수 있음)를 포함한다. 컴퓨터 프로그램들(이것은 또한 프로그램들, 소프트웨어, 소프트웨어 애플리케이션들 혹은 코드로서 알려져 있음)은 프로그래밍가능 프로세서에 대한 명령어들을 포함하며 "컴퓨터가 읽을 수 있는 기록매체"에 저장된다.
컴퓨터가 읽을 수 있는 기록매체는, 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 이러한 컴퓨터가 읽을 수 있는 기록매체는 ROM, CD-ROM, 자기 테이프, 플로피디스크, 메모리 카드, 하드 디스크, 광자기 디스크, 스토리지 디바이스 등의 비휘발성(non-volatile) 또는 비일시적인(non-transitory) 매체일 수 있으며, 또한 데이터 전송 매체(data transmission medium)와 같은 일시적인(transitory) 매체를 더 포함할 수도 있다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다.
본 명세서의 흐름도/타이밍도에서는 각 과정들을 순차적으로 실행하는 것으로 기재하고 있으나, 이는 본 개시의 일 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것이다. 다시 말해, 본 개시의 일 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 개시의 일 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 흐름도/타이밍도에 기재된 순서를 변경하여 실행하거나 각 과정들 중 하나 이상의 과정을 병렬적으로 실행하는 것으로 다양하게 수정 및 변형하여 적용 가능할 것이므로, 흐름도/타이밍도는 시계열적인 순서로 한정되는 것은 아니다.
이상의 설명은 본 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 실시예들은 본 실시예의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 실시예의 기술 사상의 범위가 한정되는 것은 아니다. 본 실시예의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 실시예의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
CROSS-REFERENCE TO RELATED APPLICATION
본 특허출원은, 본 명세서에 그 전체가 참고로서 포함되는, 2023년 06월 09일에 한국에 출원한 특허출원번호 제10-2023-0073992호에 대해 우선권을 주장한다.

Claims (8)

  1. 적어도 하나의 프로세서를 포함하는 훈련 장치에 의해 수행되는, 행동 인식 모델의 훈련을 위한 방법에 있어서,
    골격 추출 모델이 제1 트레이닝 이미지 시퀀스로부터 추출한 제1 골격 시퀀스, 및 상기 제1 골격 시퀀스의 행동 레이블을 준비하는 단계 - 상기 제1 골격 시퀀스는 상기 골격 추출 모델에 의해 야기되는 제1 노이즈를 포함함 -; 및
    상기 제1 골격 시퀀스 및 상기 제1 골격 시퀀스의 상기 행동 레이블을 기반으로 행동 인식 모델을 훈련하는 단계
    를 포함하는 방법.
  2. 제1항에 있어서,
    제2 트레이닝 이미지 시퀀스의 참조 골격 시퀀스에 제2 노이즈를 부가하여 생성한 제2 골격 시퀀스 및 상기 제2 골격 시퀀스의 행동 레이블을 준비하는 단계 - 상기 제2 노이즈는 행동 유형들에 대한 관절들의 움직임 통계를 기반으로 생성된 것임 -;
    를 더 포함하는 방법.
  3. 제2항에 있어서,
    상기 행동 인식 모델을 훈련하는 단계는,
    상기 제2 골격 시퀀스 및 상기 제2 골격 시퀀스의 행동 레이블에 더 기초하여 상기 행동 인식 모델을 훈련하는 단계
    를 포함하는 방법.
  4. 행동 인식 모델의 훈련을 위한 장치에 있어서,
    명령어들을 저장하는 메모리; 및
    적어도 하나의 프로세서를 포함하되,
    상기 적어도 하나의 프로세서는 상기 명령어들을 실행함으로써,
    골격 추출 모델이 제1 트레이닝 이미지 시퀀스로부터 추출한 제1 골격 시퀀스, 및 상기 제1 골격 시퀀스의 행동 레이블을 준비하고 - 상기 제1 골격 시퀀스는 상기 골격 추출 모델에 의해 야기되는 제1 노이즈를 포함함 -,
    상기 제1 골격 시퀀스 및 상기 제1 골격 시퀀스의 상기 행동 레이블을 기반으로 행동 인식 모델을 훈련하는 장치.
  5. 행동 인식을 위한 컴퓨터 구현 방법에 있어서,
    입력 이미지 시퀀스로부터 추출된 입력 골격 시퀀스를 획득하는 단계; 및
    행동 인식 모델을 이용하여 상기 입력 골격 시퀀스에 대한 행동 유형을 결정하는 단계
    를 포함하되,
    상기 행동 인식 모델은,
    골격 추출 모델이 제1 트레이닝 이미지 시퀀스로부터 추출한 제1 골격 시퀀스, 및 상기 제1 골격 시퀀스의 행동 레이블을 준비하는 단계 - 상기 제1 골격 시퀀스는 상기 골격 추출 모델에 의해 야기되는 제1 노이즈를 포함함 -; 및
    상기 제1 골격 시퀀스 및 상기 제1 골격 시퀀스의 상기 행동 레이블을 기반으로 행동 인식 모델을 훈련하는 단계
    를 포함하여 훈련된 것인 방법.
  6. 제5항에 있어서,
    상기 행동 인식 모델은,
    제2 트레이닝 이미지 시퀀스의 참조 골격 시퀀스에 제2 노이즈를 부가하여 생성한 제2 골격 시퀀스 및 상기 제2 골격 시퀀스의 행동 레이블을 준비하는 단계 - 상기 제2 노이즈는 행동 유형들에 대한 관절들의 움직임 통계를 기반으로 생성된 것임 -; 및
    상기 제2 골격 시퀀스 및 상기 제2 골격 시퀀스의 행동 레이블에 더 기초하여 상기 행동 인식 모델을 훈련하는 단계
    를 더 포함하여 훈련된 것인 방법.
  7. 제6항에 있어서,
    상기 입력 골격 시퀀스는,
    상기 골격 추출 모델에 의해 추출된 것인 방법.
  8. 명령어가 저장된, 컴퓨터로 읽을 수 있는 기록매체로서, 상기 명령어는 상기 컴퓨터에 의해 실행될 때 상기 컴퓨터로 하여금,
    골격 추출 모델이 제1 트레이닝 이미지 시퀀스로부터 추출한 제1 골격 시퀀스, 및 상기 제1 골격 시퀀스의 행동 레이블을 준비하는 단계 - 상기 제1 골격 시퀀스는 상기 골격 추출 모델에 의해 야기되는 제1 노이즈를 포함함 -; 및
    상기 제1 골격 시퀀스 및 상기 제1 골격 시퀀스의 상기 행동 레이블을 기반으로 행동 인식 모델을 훈련하는 단계
    를 실행하도록 하는, 컴퓨터로 읽을 수 있는 기록매체.
PCT/KR2024/007350 2023-06-09 2024-05-29 노이즈 골격 시퀀스 기반 행동 인식을 위한 장치 및 방법 Ceased WO2024253382A1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US19/347,824 US20260030928A1 (en) 2023-06-09 2025-10-02 Apparatus and method for behavior recognition based on noise skeleton sequence

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020230073992A KR20240174582A (ko) 2023-06-09 2023-06-09 노이즈 골격 시퀀스 기반 행동 인식을 위한 장치 및 방법
KR10-2023-0073992 2023-06-09

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US19/347,824 Continuation US20260030928A1 (en) 2023-06-09 2025-10-02 Apparatus and method for behavior recognition based on noise skeleton sequence

Publications (1)

Publication Number Publication Date
WO2024253382A1 true WO2024253382A1 (ko) 2024-12-12

Family

ID=93796135

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2024/007350 Ceased WO2024253382A1 (ko) 2023-06-09 2024-05-29 노이즈 골격 시퀀스 기반 행동 인식을 위한 장치 및 방법

Country Status (3)

Country Link
US (1) US20260030928A1 (ko)
KR (1) KR20240174582A (ko)
WO (1) WO2024253382A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN120808451A (zh) * 2025-09-16 2025-10-17 南开大学 基于单目视频的异常步态评估方法及系统、计算设备

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105373810A (zh) * 2015-11-12 2016-03-02 清华大学 一种用于建立动作识别模型的方法及系统
CN108875708A (zh) * 2018-07-18 2018-11-23 广东工业大学 基于视频的行为分析方法、装置、设备、系统及存储介质
KR20200022788A (ko) * 2018-08-23 2020-03-04 전자부품연구원 동작분석 장치 및 방법
KR20210031405A (ko) * 2019-09-11 2021-03-19 네이버 주식회사 암시적 포즈 표현을 이용한 행동 인식
KR20220066535A (ko) * 2020-11-16 2022-05-24 주식회사 플라스크 영상 내의 모션 인식 방법, 서버 및 시스템

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105373810A (zh) * 2015-11-12 2016-03-02 清华大学 一种用于建立动作识别模型的方法及系统
CN108875708A (zh) * 2018-07-18 2018-11-23 广东工业大学 基于视频的行为分析方法、装置、设备、系统及存储介质
KR20200022788A (ko) * 2018-08-23 2020-03-04 전자부품연구원 동작분석 장치 및 방법
KR20210031405A (ko) * 2019-09-11 2021-03-19 네이버 주식회사 암시적 포즈 표현을 이용한 행동 인식
KR20220066535A (ko) * 2020-11-16 2022-05-24 주식회사 플라스크 영상 내의 모션 인식 방법, 서버 및 시스템

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN120808451A (zh) * 2025-09-16 2025-10-17 南开大学 基于单目视频的异常步态评估方法及系统、计算设备

Also Published As

Publication number Publication date
US20260030928A1 (en) 2026-01-29
KR20240174582A (ko) 2024-12-17

Similar Documents

Publication Publication Date Title
CN109948459B (zh) 一种基于深度学习的足球动作评估方法与系统
WO2021261696A1 (en) Visual object instance segmentation using foreground-specialized model imitation
WO2013015528A1 (en) Apparatus, method, and medium detecting object pose
EP4182893A1 (en) Method and electronic device for generating ar content based on intent and interaction of multiple-objects
WO2022035190A1 (ko) 딥러닝을 이용한 얼굴 인식 기반 미아 찾기 서비스 제공 장치 및 방법
WO2021100919A1 (ko) 행동 시퀀스 기반으로 이상행동 여부를 판단하는 방법, 프로그램 및 시스템
WO2015126031A1 (ko) 사람 계수 방법 및 그를 위한 장치
WO2020080734A1 (ko) 얼굴 인식 방법 및 얼굴 인식 장치
CN115393963A (zh) 运动动作纠正方法、系统、存储介质、计算机设备及终端
WO2021107734A1 (ko) 골프에 관한 콘텐츠를 추천하기 위한 방법, 디바이스 및 비일시성의 컴퓨터 판독 가능한 기록 매체
WO2024101466A1 (ko) 속성 기반 실종자 추적 장치 및 방법
WO2020231188A1 (ko) 검증 뉴럴 네트워크를 이용한 분류 결과 검증 방법, 분류 결과 학습 방법 및 상기 방법을 수행하는 컴퓨팅 장치
US20260030928A1 (en) Apparatus and method for behavior recognition based on noise skeleton sequence
WO2019035544A1 (ko) 학습을 이용한 얼굴 인식 장치 및 방법
WO2025159280A1 (ko) 비디오 분석을 통해 사람의 행동을 검출하는 딥러닝 기반의 행동 검출 모델을 학습하는 방법 및 테스트하는 방법, 그리고, 이를 이용한 학습 장치 및 테스트 장치
WO2026049425A1 (ko) 단일 소실점 인식 기반의 카메라 칼리브레이션 방법
WO2023113105A1 (ko) Cgam을 이용한 스포츠 동영상 내 활동 인식 장치 및 그 방법
WO2023113421A1 (ko) 드론을 통한 딥러닝 기반의 실종자 검출 및 수색 경로 관리 방법 및 이를 수행하는 시스템
WO2021182670A1 (ko) 요소 간 관계 추출 기반 이종 얼굴 인식 장치 및 방법
CN117333799B (zh) 基于可变形锚框的中小学课堂行为检测方法及装置
WO2025135283A1 (ko) 영상 분석을 통해 이벤트 관련 메시지를 생성하는 방법 및 이를 지원하는 장치
CN111860100B (zh) 行人数量的确定方法、装置、电子设备及可读存储介质
WO2023282445A1 (ko) 감정 인식 장치 및 그 동작방법
WO2023158068A1 (ko) 객체검출률 향상을 위한 학습시스템 및 그 방법
WO2024043752A1 (en) Method and electronic device for motion-based image enhancement

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 24819534

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE