KR20230063135A - 계층적 구조에 기반하는 시공간 액션 위치추정 장치 및 방법 - Google Patents

계층적 구조에 기반하는 시공간 액션 위치추정 장치 및 방법 Download PDF

Info

Publication number
KR20230063135A
KR20230063135A KR1020210148052A KR20210148052A KR20230063135A KR 20230063135 A KR20230063135 A KR 20230063135A KR 1020210148052 A KR1020210148052 A KR 1020210148052A KR 20210148052 A KR20210148052 A KR 20210148052A KR 20230063135 A KR20230063135 A KR 20230063135A
Authority
KR
South Korea
Prior art keywords
encoder
frame
temporal
decoder
output
Prior art date
Application number
KR1020210148052A
Other languages
English (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 KR1020210148052A priority Critical patent/KR20230063135A/ko
Publication of KR20230063135A publication Critical patent/KR20230063135A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/40Extraction of image or video features
    • 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
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/50Context or environment of the image
    • G06V20/56Context or environment of the image exterior to a vehicle by using sensors mounted on the vehicle

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Computational Linguistics (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Health & Medical Sciences (AREA)
  • Data Mining & Analysis (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Image Analysis (AREA)

Abstract

계층적 구조에 기반하는 시공간 액션 위치추정 장치에 관한 개시로서, 본 실시예는, 딥러닝 기반 계층적 구조(hierarchical architecture)를 기반으로, 비디오 프레임 시퀀스를 병렬적이고 계층적으로 처리하여 프레임별 공간적 정보, 및 프레임 시퀀스를 관통하는 시간적 맥락 정보를 추출한 후, 추출된 시공간적 정보에 근거하여 프레임 시퀀스 내의 이벤트 상황을 추정하는 시공간 액션 위치추정 장치 및 방법을 제공한다.

Description

계층적 구조에 기반하는 시공간 액션 위치추정 장치 및 방법{Method and Apparatus for Spatio-temporal Action Localization Based on Hierarchical Structure}
본 개시는 계층적 구조에 기반하는 시공간 액션 위치추정 장치에 관한 것이다.
이하에 기술되는 내용은 단순히 본 발명과 관련되는 배경 정보만을 제공할 뿐 종래기술을 구성하는 것이 아니다.
자율주행 중 주변 물체들의 위치와 종류의 파악에 딥러닝 기술이 활용되고 있다. 기존에 적용이 어려웠던, 연기, 작은 불씨 등에 의한 화재의 조기 탐지에도 딥러닝 기술이 최근 적용되고 있다. 또한, 생산 현장에서 발생하는 작업자 위험 감지에도 딥러닝 기술이 활용되고 있다. 이러한 자율주행, 화재 감지, 작업자 위험 판단 등과 같은 상황에서, 딥러닝 모델은 해당되는 모니터링 영상으로부터 현재 상황, 물체 위치 등과 같은 대상 이벤트를 파악할 수 있다.
일반적으로 딥러닝 모델은 하나의 영상 프레임 내의 정보만을 이용하여 대상 이벤트를 판단한다. 하지만, 전술한 바와 같은 이벤트는 연속된 프레임 시퀀스(sequence)에 걸쳐 존재하는 경우가 대부분이다. 이러한 특성을 갖는 이벤트에 대해, 단순히 하나의 프레임에 대한 공간적 정보만을 이용한다면, 프레임 시퀀스를 관통하는 시간적 맥락 관련된 정보의 손실 때문에 딥러닝 모델은 이벤트 상황을 오판할 수 있다. 즉, 특정 이벤트의 이상(abnormal) 또는 정상(normal) 여부를 파악하기 위해 딥러닝 모델은 시간적 맥락(context) 정보를 필요로 할 수 있다.
프레임별 공간적 정보 외에 프레임 시퀀스에 내포된 시간적 맥락 정보까지 이용하여 이벤트 상황을 추정하는 기술을 시공간 액션 위치추정(spatio-temporal action localization)이라 한다. 기존의 시공간 액션 위치추정 방법에서는, 프레임 시퀀스 내의 특정 프레임 전후의 문맥 정보를 이용하여 특정 프레임에 대한 이벤트 상황을 추정하므로, 시간지연이 발생할 수 있다는 문제를 갖는다.
따라서, 시공간 액션 위치추정을 수행하되, 시간지연을 감소시킬 수 있는 딥러닝 기술이 고려되어야 한다.
A. Vaswani et al., "Attention Is All You Need," arXiv: 1706.03762, 2017.
본 개시는, 딥러닝 기반 계층적 구조(hierarchical architecture)를 기반으로, 비디오 프레임 시퀀스를 병렬적이고 계층적으로 처리하여 프레임별 공간적 정보, 및 프레임 시퀀스를 관통하는 시간적 맥락 정보를 추출한 후, 추출된 시공간적 정보에 근거하여 프레임 시퀀스 내의 이벤트 상황을 추정하는 시공간 액션 위치추정 장치 및 방법을 제공하는 데 목적이 있다.
본 개시의 실시예에 따르면, 프레임 시퀀스를 획득하고, 추출 모델(extraction model)을 이용하여 상기 프레임 시퀀스에 포함된 프레임 각각으로부터 특징맵들(feature maps)을 생성하는 전처리부, 여기서, 상기 프레임 시퀀스는 N(여기서, N은 자연수) 개의 프레임을 포함함; 상기 프레임 각각의 특징맵들로부터 프레임별 인코더 입력을 생성한 후, 상기 프레임별 인코더 입력으로부터 프레임별 공간적 인코더 출력, 및 시간적 인코더 출력을 생성하는 계층 구조의 인코더; 및 상기 프레임별 공간적 인코더 출력 및 상기 시간적 인코더 출력으로부터 프레임별 디코더 출력을 생성하는 계층 구조의 디코더를 포함하는, 시공간 액션 위치추정(spatio-temporal action localization) 장치를 제공한다.
본 개시의 다른 실시예에 따르면, 상기 프레임별 디코더 출력으로부터 상기 프레임 시퀀스에 포함된 이벤트 상황을 나타내는 프레임별 위치추정 결과들을 생성하는 추정부를 더 포함하는, 시공간 액션 위치추정 장치를 제공한다.
본 개시의 다른 실시예에 따르면, 컴퓨팅 장치가 수행하는, 시공간 액션 위치추정(spatio-temporal action localization) 방법에 있어서, 프레임 시퀀스를 획득하는 단계; 딥러닝 기반 추출 모델(extraction model)을 이용하여 상기 프레임 시퀀스에 포함된 프레임 각각으로부터 특징맵들(feature maps)을 생성하는 단계, 여기서, 상기 프레임 시퀀스는 N(여기서, N은 자연수) 개의 프레임을 포함함; 상기 프레임 각각의 특징맵들로부터 프레임별 인코더 입력을 생성하는 단계; 상기 프레임별 인코더 입력으로부터 프레임별 공간적 인코더 출력, 및 시간적 인코더 출력을 생성하는 단계; 및 상기 프레임별 공간적 인코더 출력 및 상기 시간적 인코더 출력으로부터 프레임별 디코더 출력을 생성하는 단계를 포함하는, 시공간 액션 위치추정 방법을 제공한다.
본 개시의 다른 실시예에 따르면, 상기 프레임별 디코더 출력으로부터 상기 프레임 시퀀스에 포함된 이벤트 상황을 나타내는 프레임별 위치추정 결과들을 생성하는 단계를 더 포함하는, 시공간 액션 위치추정 방법을 제공한다.
본 개시의 다른 실시예에 따르면, 시공간 액션 위치추정 방법이 포함하는 각 단계를 실행시키기 위하여 컴퓨터로 읽을 수 있는 기록매체에 저장된 컴퓨터프로그램을 제공한다.
이상에서 설명한 바와 같이 본 실시예에 따르면, 딥러닝 기반 계층적 구조를 기반으로, 비디오 프레임 시퀀스로부터 프레임별 공간적 정보 및 시간적 맥락 정보를 추출하는 시공간 액션 위치추정 장치 및 방법을 제공함으로써, 프레임 시퀀스 내 시공간 액션을 추정하는 정확도를 향상시키는 것이 가능해지는 효과가 있다.
또한 본 실시예에 따르면, 딥러닝 기반 계층적 구조를 기반으로, 비디오 프레임 시퀀스를 병렬적이고 계층적으로 처리하여 프레임 시퀀스 내의 이벤트 상황을 추정하는 시공간 액션 위치추정 장치 및 방법을 제공함으로써, 프레임 시퀀스 내 시공간 액션을 실시간 추정하는 것이 가능해지는 효과가 있다.
도 1은 본 개시의 일 실시예에 따른 시공간 액션 위치추정 장치를 개념적으로 나타내는 블록도이다.
도 2는 본 개시의 일 실시예에 따른 전처리부)의 동작을 나타내는 예시도이다.
도 3은 본 개시의 일 실시예에 따른 인코더의 구조를 나타내는 블록도이다.
도 4는 본 개시의 일 실시예에 따른 디코더의 구조를 나타내는 블록도이다.
도 5는 본 개시의 일 실시예에 따른 추정부의 동작을 나타내는 예시도이다.
도 6은 본 개시의 일 실시예에 따른 시공간적 액션 위치추정 방법을 나타내는 순서도이다.
이하, 본 발명의 실시예들을 예시적인 도면을 참조하여 상세하게 설명한다. 각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 실시예들을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 실시예들의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
또한, 본 실시예들의 구성요소를 설명하는 데 있어서, 제 1, 제 2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성요소를 다른 구성요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 명세서 전체에서, 어떤 부분이 어떤 구성요소를 '포함', '구비'한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. 또한, 명세서에 기재된 '…부', '모듈' 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다.
첨부된 도면과 함께 이하에 개시될 상세한 설명은 본 발명의 예시적인 실시형태를 설명하고자 하는 것이며, 본 발명이 실시될 수 있는 유일한 실시형태를 나타내고자 하는 것이 아니다.
본 실시예는 계층적 구조에 기반하는 시공간 액션 위치추정(spatio-temporal action localization) 장치에 관한 내용을 개시한다. 보다 자세하게는, 딥러닝 기반 계층적 구조(hierarchical architecture)를 기반으로, 비디오 프레임 시퀀스를 병렬적이고 계층적으로(in parallel and hierarchically) 처리하여 프레임별 공간적 정보, 및 프레임 시퀀스를 관통하는 시간적 맥락 정보를 추출한 후, 추출된 시공간적 정보에 근거하여 프레임 시퀀스 내의 이벤트 상황을 추정하는 시공간 액션 위치추정 장치 및 방법을 제공한다.
이하, 프레임 시퀀스 또는 프레임 셋은 N(여기서, N은 자연수) 개의 프레임을 포함한다.
도 1은 본 개시의 일 실시예에 따른 시공간 액션 위치추정 장치를 개념적으로 나타내는 블록도이다.
본 실시예에 따른 시공간 액션 위치추정 장치(100, 이하 '위치추정 장치')는 딥러닝 기반 계층적 구조를 기반으로, 비디오 프레임 시퀀스를 병렬적이고 계층적으로 처리하여 프레임 시퀀스 내의 이벤트 상황을 추정한다. 위치추정 장치(100)는 전처리부(pre-processing unit, 102), 인코더(104), 디코더(106) 및 추정부(inferencing unit, 108)의 전부 또는 일부를 포함한다. 여기서, 인코더(104) 및 디코더(106)는 비디오 프레임 시퀀스를 병렬 처리하는 계층적 트랜스포머(hierarchical transformer)를 나타낸다.
한편, 본 실시예에 따른 위치추정 장치(100)에 포함되는 구성요소가 반드시 이에 한정되는 것은 아니다. 예컨대, 위치추정 장치(100)는, 딥러닝 기술에 기초하는 구성요소, 즉 트레이닝 가능 구성요소의 트레이닝을 위한 트레이닝부(미도시)를 추가로 구비하거나, 외부의 트레이닝부와 연동되는 형태로 구현될 수 있다.
도 2는 본 개시의 일 실시예에 따른 전처리부의 동작을 나타내는 예시도이다.
전처리부(102)는 프레임 시퀀스를 획득한 후, 프레임 시퀀스에 포함된 프레임 각각으로부터 프레임별 특징맵들(feature maps)을 추출한다. 각각의 프레임은 RGB, 또는 YUV와 같은 3 개의 색상 채널에 의해 표현되는 비디오 영상일 수 있다. 하나의 프레임에 대해 추출되는 특징맵의 개수는 M(여기서, M은 자연수)이다. 따라서, N 개의 프레임에 대해 모두 N×M 개의 특징맵이 추출될 수 있다.
전처리부(102)는, 특징맵들을 추출하기 위해, 딥러닝 기반의 추출 모델(extraction model, 202)을 포함한다. 추출 모델은 영상 처리에 적합한 것으로 알려진 CNN(Convolutional Neural Network)으로 구현되되, 콘볼루션 레이어(convolution layer)와 풀링(pooling) 레이어의 레이어 조합을 포함하는 CNN-인코더로 구현될 수 있다. 여기서, 콘볼루션 레이어는 콘볼루션 커널(kernel) 또는 콘볼루션 필터(filter)를 이용하여 입력 채널(예컨대, RGB 채널, 또는 YUV 채널)에 콘볼루션을 수행하고, 풀링 레이어는 콘볼루션 레이어의 출력을 다운샘플링(downsampling)한다. CNN-인코더는 적어도 하나의 레이어 조합을 포함할 수 있다. 결과적으로, 하나의 특징맵의 해상도는 입력 프레임의 해상도보다 작은 값일 수 있다. 하지만, M 개의 특징맵들은 대응되는 프레임의 특성을 함축적으로(implicitly) 표현할 수 있다.
이하, 도 3 및 도 4의 도시를 이용하여, 계층적 트랜스포머가 포함하는 인코더(104) 및 디코더(106)의 구조 및 동작을 기술한다.
계층적 트랜스포머는 딥러닝 모델인 트랜스포머(비특허문헌 1 참조)에 기초하여 구현될 수 있다. 트랜스포머는 시계열 입력 데이터 간 어텐션(attention)을 이용하여 시계열 출력을 추론하는 데 탁월한 성능을 보이는 딥러닝 모델로서, 자연어처리(Natural Language Processing: NLP) 분야에 널리 이용된다.
트랜스포머는 시퀀스를 시퀀스로 변환하는 딥러닝 모델이므로, 인코더(104)에 입력하기 위해, 위치추정 장치(100)는 프레임을 표현하는 각각의 특징맵을, 행렬 데이터로부터 벡터 데이터, 즉 시퀀스로 변형할 수 있다. 예컨대, 행렬 데이터가 RH×W(여기서, R은 실수의 집합, H는 특징맵의 세로의 차원, W는 특징맵의 가로의 차원을 나타냄)로 표현되는 경우, 벡터 데이터의 차원은 행렬 데이터의 가로 차원과 세로 차원의 합과 동일할 수 있다. 따라서, 프레임별 특징맵은 각각의 프레임을 M 개의 벡터 데이터로 표현할 수 있다.
도 3은 본 개시의 일 실시예에 따른 인코더의 구조를 나타내는 블록도이다.
인코더(104)는 프레임별 특징맵을 병렬적이고 계층적으로 처리하여 공간적 인코더 출력 및 시간적 인코더 출력을 생성한 후, 디코더(106)에게 제공한다. 인코더(104)는 제1 가산기(302), N 개의 공간적 인코더(304), N 개의 피드포워드망(Feedforward Network: FFN, 306), 제2 가산기(308) 및 시간적 인코더(310)의 전부 또는 일부를 포함한다. 여기서, 도 3에 예시된 바와 같이, N 개의 공간적 인코더(304)는 N 개의 프레임을 표현하는 특징맵을 병렬 처리하고, 공간적 인코더(304)와 시간적 인코더(310)는 인코더(104)의 계층 구조(hierarchical architecture)를 형성한다.
제1 가산기(302)는 프레임별 특징맵과 공간적 위치 인코딩(spatial position encoding)을 가산하여 프레임별 인코더 입력을 생성한다.
트랜스포머의 구조는 치환불변(permutation invariant) 속성을 가지므로, 입력 시퀀스를 구성하는 임베딩들 간의 순서 관계를 표현하기 위해 위치 인코딩을 이용하는 것으로 알려져 있다. 본 실시예에서 공간적 위치 인코딩은, 하나의 프레임을 표현하는 M 개의 벡터 데이터 간의 순서를 표현하기 위한 위치 임베딩(embedding)이다.
공간적 위치 인코딩의 차원은 벡터 데이터의 차원과 동일할 수 있다. 또한, 공간적 위치 인코딩의 개수는 프레임별 특징맵의 개수 M과 동일할 수 있다.
공간적 위치 인코딩은 기설정된 임베딩 값일 수 있다. 이러한 경우, 프레임 시퀀스에 포함되는 모든 프레임은 동일한 공간적 위치 인코딩을 이용할 수 있다. 본 개시의 따른 다른 실시예에 있어서, 공간적 위치 인코딩은 트레이닝될 수 있다.
N 개의 공간적 인코더(304)는 인코더(104)의 첫 번째 계층이다. 이하 하나의 공간적 인코더(304)의 동작을 기술한다.
공간적 인코더(304)는 프레임별 인코더 입력으로부터 프레임 내 이벤트 상황의 공간적 정보를 표현하는 공간적 인코더 출력을 생성한다. 공간적 인코더(304)는 트랜스포머 인코더의 기본 구조를 이용한다. 여기서, 트랜스포머 인코더는 복수의 인코더 레이어를 포함하되, 하나의 인코더 레이어는 셀프 어텐션(self-attention) 모듈 및 FFN을 포함한다. 트랜스포머에서 어텐션 모듈은 Q(Query), K(Key) 및 V(value)의 입력을 기반으로 출력을 생성하는데, 셀프 어텐션 모듈은 동일한 데이터를 Q/K/V 입력으로 이용한다.
셀프 어텐션 모듈의 출력은 FFN에 입력되고, FFN은 인코더 레이어의 출력을 생성한다. 따라서, 첫 번째 인코더 레이어는 제1 가산기(302)가 생성한 인코더 데이터를 셀프 어텐션 모듈의 Q/K/V 입력으로 이용하고, 이후의 나머지 인코더 레이어는 전단의 인코더 레이어 출력을 셀프 어텐션 모듈의 Q/K/V 입력으로 이용할 수 있다.
공간적 인코더(304)에 포함된 마지막 인코더 레이어 출력이 공간적 인코더 출력이다. N 개의 공간적 인코더(304)가 프레임별 인코더 입력을 병렬로 처리하여 공간적 인코더 출력을 생성할 수 있으므로, 공간적 인코더 출력의 개수는 N 개이다. 여기서, 하나의 공간적 인코더 출력은 프레임별 특징맵의 개수와 동일한 M 개의 임베딩을 포함할 수 있다.
또한, 공간적 인코더(304)는, 디코더(106) 내 어텐션 기능을 위해, 공간적 인코더 출력을 디코더(106)에게 제공할 수 있다.
한편, 인코더 입력으로부터 공간적 인코더 출력을 생성하는 기능을 학습할 수 있도록 공간적 인코더(304)는 사전에 트레이닝될 수 있다.
FFN(306)은, 공간적 인코더(304)에 의해 제공되는 공간적 인코더 출력으로부터 FFN 출력을 생성한다. FFN(306)은 전연결 레이어(fully-connected layer)로 구현되고, 공간적 인코더 출력보다 축소된 데이터량을 갖는 FFN 출력을 생성할 수 있다. 축소된 FFN 출력에 기초하여 N 개의 프레임에 대한 데이터를 결합 처리함으로써, 시간적 인코더(310)의 복잡도가 감소될 수 있다.
한편, 공간적 인코더 출력으로부터 FFN 출력을 생성하는 기능을 학습할 수 있도록 FFN(306)은 사전에 트레이닝될 수 있다.
제2 가산기(308)는 FFN 출력과 시간적 위치 인코딩(temporal position encoding)을 가산하여 시간적 인코더 입력을 생성한다. 본 실시예에서 시간적 위치 인코딩은, 프레임 시퀀스를 포함된 N 개의 프레임 간의 순서를 표현하기 위한 임베딩이다.
시간적 위치 인코딩 하나의 크기는 FFN 출력의 크기와 동일할 수 있다. 또한, 시간적 위치 인코딩의 개수는 프레임의 개수 N과 동일할 수 있다.
시간적 위치 인코딩은 기설정된 임베딩 값일 수 있다. 본 개시의 따른 다른 실시예에 있어서, 시간적 위치 인코딩은 트레이닝될 수 있다.
시간적 인코더(310)는 인코더(104)의 두 번째 계층이다. 시간적 인코더(310)는, 제2 가산기(308)가 생성한 N 개의 시간적 인코더 입력으로부터 프레임 시퀀스 내 이벤트 상황의 시간적 정보를 표현하는 시간적 인코더 출력을 생성한다. 시간적 인코더(310)는 각각의 시간적 인코더 입력에 포함된 정보를 결합하여, 프레임 시퀀스를 관통하는 시간적 맥락을 도출할 수 있다.
시간적 인코더(310)도 트랜스포머 인코더의 기본 구조를 이용한다. 따라서, 시간적 인코더(310) 내 셀프 어텐션 모듈의 출력은 FFN에 입력되고, FFN은 인코더 레이어의 출력을 생성한다. 첫 번째 인코더 레이어는 제2 가산기(308)가 생성한 시간적 인코더 입력을 셀프 어텐션 모듈의 Q/K/V 입력으로 이용하고, 이후의 나머지 인코더 레이어는 전단의 인코더 레이어 출력을 셀프 어텐션 모듈의 Q/K/V 입력으로 이용할 수 있다.
시간적 인코더(310)에 포함된 마지막 인코더 레이어 출력이 시간적 인코더 출력이다.
또한, 시간적 인코더(310)는, 디코더(106) 내 어텐션 기능을 위해, 시간적 인코더 출력을 디코더(106)에게 제공할 수 있다.
한편, 시간적 인코더 입력으로부터 시간적 인코더 출력을 생성하는 기능을 학습할 수 있도록 시간적 인코더(310)는 사전에 트레이닝될 수 있다.
도 4는 본 개시의 일 실시예에 따른 디코더의 구조를 나타내는 블록도이다.
디코더(106)는 공간적 인코더 출력 및 시간적 인코더 출력을 병렬적이고 계층적으로 처리하여 디코더 출력을 생성한 후, 추정부(108)에 제공한다. 디코더(106)는 시간적 디코더(402) 및 N 개의 공간적 디코더(404)를 포함할 수 있다. 여기서, 도 4에 예시된 바와 같이, 시간적 디코더(402)와 공간적 디코더(404)는 디코더(106)의 계층 구조를 형성하고, N 개의 공간적 디코더(404)는 N 개의 프레임을 병렬로 표현하는 N 개의 디코더 출력을 생성한다.
도 4의 예시에서, 객체 쿼리(object query)는 시간적 디코더(402)의 입력을 나타낸다. 트랜스포머는 트랜스포머 디코더의 출력과 위치 인코딩을 결합하여 트랜스포머 디코더의 입력을 생성한다. 이에 대해, 본 실시예에서는 디코더 출력의 피드백 경로를 배제하고, 위치 인코딩으로서 객체 쿼리를 이용한다.
객체 쿼리의 개수를 K(여기서, K는 자연수)로 나타내는데, 이는 위치추정 장치(100)가 분류 또는 검출해야 하는 객체 또는 이벤트의 개수와 동일할 수 있다. 또한, 하나의 객체 쿼리는 프레임별 특징맵의 개수와 동일한 M 개의 임베딩을 포함할 수 있다. 따라서 객체 쿼리는 이러한 이벤트들 간의 순서를 표현할 수 있다.
한편, 객체 쿼리는 기설정된 임베딩 값일 수 있다. 본 개시의 따른 다른 실시예에 있어서, 객체 쿼리는 트레이닝될 수 있다.
시간적 디코더(402)는 디코더(106)의 첫 번째 계층이다. 시간적 디코더(402)는 객체 쿼리 및 시간적 인코더 출력으로부터 시간적 디코더 출력을 생성한다. 시간적 디코더(402)는 객체 쿼리와 시간적 인코더 출력 간의 어텐션을 이용하여 프레임 시퀀스를 관통하는 시간적 맥락을 나타내는 디코딩 결과를 생성할 수 있다.
시간적 디코더(402)는 트랜스포머 디코더의 기본 구조를 이용한다. 여기서, 트랜스포머 디코더는 복수의 디코더 레이어를 포함하되, 하나의 디코더 레이어는 셀프 어텐션 모듈, 인코더-디코더 어텐션 모듈, 및 FFN을 포함한다. 셀프 어텐션 모듈은 동일한 데이터를 Q/K/V 입력으로 이용하지만, 인코더-디코더 어텐션 모듈은 상이한 데이터를 Q/K/V 입력으로 이용한다.
한편, 시간적 디코더(402)가 포함하는 디코더 레이어의 개수는 시간적 인코더(310)가 포함하는 인코더 레이어의 개수와 동일할 수 있다.
시간적 디코더(402) 내 셀프 어텐션 모듈의 출력은 시간적 인코더 출력과 함께 인코더-디코더 어텐션 모듈에 입력되고, 인코더-디코더 어텐션 모듈의 출력은 FFN에 입력되며, FFN은 디코더 레이어의 출력을 생성한다. 첫 번째 디코더 레이어는 객체 쿼리를 셀프 어텐션 모듈의 Q/K/V 입력으로 이용하고, 이후의 나머지 디코더 레이어는 전단의 디코더 레이어 출력을 셀프 어텐션 모듈의 Q/K/V 입력으로 이용할 수 있다.
또한, 첫 번째 디코더 레이어의 셀프 어텐션 모듈은 생략될 수 있다. 따라서, 객체 쿼리는 첫 번째 디코더 레이어 인코더-디코더 어텐션 모듈에 바로 입력될 수 있다.
인코더-디코더 어텐션 모듈은 셀프 어텐션 모듈의 출력을 Q 입력으로 이용하고, 시간적 인코더 출력을 K/V 입력으로 이용할 수 있다. 첫 번째 디코더 레이어에서 셀프 어텐션 모듈이 생략된 경우, 첫 번째 디코더 레이어의 인코더-디코더 어텐션 모듈은 객체 쿼리를 Q 입력으로 이용할 수 있다.
시간적 디코더(402)에 포함된 마지막 디코더 레이어 출력이 시간적 디코더 출력이다. 시간적 디코더 출력의 개수는 객체 쿼리의 개수 K와 동일할 수 있다. 또한, 하나의 시간적 디코더 출력은 M 개의 임베딩을 포함할 수 있다.
한편, 객체 쿼리와 시간적 인코더 출력으로부터 시간적 디코더 출력을 생성하는 기능을 학습할 수 있도록 시간적 디코더(402)는 사전에 트레이닝될 수 있다.
N 개의 공간적 디코더(404)는 디코더(106)의 두 번째 계층이다. 이하, 하나의 공간적 디코더(404)의 동작을 기술한다.
공간적 디코더(404)는 시간적 디코더 출력 및 공간적 인코더 출력으로부터 공간적 디코더 출력(이하, '디코더 출력')을 생성한다. 공간적 디코더(404)는 시간적 디코더 출력과 공간적 인코더 출력 간의 어텐션을 이용하여 프레임 내 이벤트 상황을 나타내는 디코딩 결과를 생성할 수 있다. 공간적 디코더(404)도 트랜스포머 디코더의 기본 구조를 이용한다.
한편, 공간적 디코더(404)가 포함하는 디코더 레이어의 개수는 공간적 인코더(304)가 포함하는 인코더 레이어의 개수와 동일할 수 있다.
공간적 디코더(404) 내 셀프 어텐션 모듈의 출력은 공간적 인코더 출력과 함께 인코더-디코더 어텐션 모듈에 입력되고, 인코더-디코더 어텐션 모듈의 출력은 FFN에 입력되며, FFN은 디코더 레이어의 출력을 생성한다. 첫 번째 디코더 레이어는 시간적 디코더 출력을 셀프 어텐션 모듈의 Q/K/V 입력으로 이용하고, 이후의 나머지 디코더 레이어는 전단의 디코더 레이어 출력을 셀프 어텐션 모듈의 Q/K/V 입력으로 이용할 수 있다.
또한, 첫 번째 디코더 레이어의 셀프 어텐션 모듈은 생략될 수 있다. 따라서, 시간적 디코더 출력은 첫 번째 디코더 레이어의 인코더-디코더 어텐션 모듈에 바로 입력될 수 있다.
인코더-디코더 어텐션 모듈은 셀프 어텐션 모듈의 출력을 Q 입력으로 이용하고, 공간적 인코더 출력을 K/V 입력으로 이용할 수 있다. 첫 번째 디코더 레이어에서 셀프 어텐션 모듈이 생략된 경우, 첫 번째 디코더 레이어의 디코더 어텐션 모듈은 시간적 디코더 출력을 Q 입력으로 이용할 수 있다.
공간적 디코더(404)에 포함된 마지막 디코더 레이어 출력이 디코더 출력이다. N 개의 공간적 디코더(404)가 시간적 디코더 출력 및 프레임별 공간적 인코더 출력을 처리하여 디코더 출력을 병렬로 생성할 수 있으므로, 디코더 출력의 개수는 N 개이다. 여기서, 하나의 디코더 출력은 객체 쿼리의 개수와 동일한 K 개의 임베딩을 포함할 수 있다.
한편, 시간적 디코더 출력 및 공간적 인코더 출력으로부터 디코더 출력을 생성하는 기능을 학습할 수 있도록 공간적 디코더(404)는 사전에 트레이닝될 수 있다.
도 5는 본 개시의 일 실시예에 따른 추정부의 동작을 나타내는 예시도이다.
추정부(108)는 학습된 피드포워드망을 이용하여 디코더 출력으로부터 위치추정 결과(localization result)를 생성한다. 학습 목적에 따라, 위치추정 결과는 프레임별 이벤트 상황을 나타낼 수 있다. 예컨대, 프레임 내 객체를 지정하는 경계상자(bounding box) 및 해당 경계상자의 분류 결과가 위치추정 결과일 수 있다.
추정부(108)는 N 개의 FFN(502)을 포함한다.
FFN(502)는 디코더 출력으로부터 위치추정 결과를 생성한다. FFN(502)은 전연결 레이어로 구현되어 위치추정 결과에 대응되는 출력을 생성할 수 있다. 이때, 위치추정 결과의 개수는 K로서, 객체 쿼리의 개수와 동일할 수 있다. 즉, FFN(502)은, 하나의 프레임에 대해, K 개의 이벤트 상황을 나타내는 결과값을 생성할 수 있다.
한편, 디코더 출력으로부터 위치추정 결과를 생성하는 기능을 학습할 수 있도록 FFN(502)은 사전에 트레이닝될 수 있다.
도 1 내지 도 5의 도시는 본 실시예에 따른 예시적인 구성이며, 추론 모델의 구조와 동작, 계층적 트랜스포머의 구조와 동작, 추정부의 구조와 동작, 및 시간적 위치 인코딩/공간적 위치 인코딩/객체 쿼리의 형태에 따라 다른 구성요소 또는 구성요소 간의 다른 연결을 포함하는 다양한 구현이 가능하다.
이하, 위치추정 장치(100) 중 트레이닝 가능 구성요소의 트레이닝에 대하여 기술한다.
위치추정 장치(100)가 시공간적 액션 위치추정을 학습할 수 있도록, 트레이닝부는 위치추정 장치(100) 내 트레이닝 가능 구성요소를 종단간으로(end-to-end) 사전에 트레이닝할 수 있다. 여기서, 트레이닝 가능 구성요소는 추론 모델(202), N 개의 공간적 인코더(304), N 개의 FFN(306), 시간적 인코더(310), 시간적 디코더(402), N 개의 공간적 디코더(404) 및 N 개의 FFN(502)의 전부 또는 일부를 포함할 수 있다. 본 개시에 따른 다른 실시예에 있어서, 트레이닝 가능 구성요소는 공간적 위치 인코딩, 시간적 위치 인코딩, 및 객체 쿼리의 전부 또는 일부를 추가적으로 포함할 수 있다.
예컨대, 트레이닝부는, 학습용 프레임 시퀀스로부터 위치추정 장치(100)가 생성하는 위치추정 결과와 대응되는 레이블 간의 차이에 기초하여 손실함수(loss function)를 정의할 수 있다. 여기서 레이블은 학습 목적에 따라 설정될 수 있다. 예컨대, 위치추정 장치(100)가 객체 검출을 목적으로 하는 경우, 레이블은 대상 객체를 포함하는 경계상자 및 대상 객체에 대한 분류 결과일 수 있다. 트레이닝부는 이러한 손실함수를 감소시키는 방향으로 위치추정 장치(100) 내 트레이닝 가능 구성요소의 파라미터를 업데이트함으로써, 트레이닝을 진행할 수 있다. 한편, 차이는 L1 메트릭(metric), L2 메트릭 등, 두 비교 대상 간의 차이를 표현할 수 있는 어느 것이든 이용될 수 있다.
본 실시예에 따른 위치추정 장치(100)가 탑재되는 디바이스(미도시)는 프로그램가능 컴퓨터일 수 있으며, 서버(미도시)와 연결이 가능한 적어도 한 개의 통신 인터페이스를 포함한다.
전술한 바와 같은, 위치추정 장치(100) 내 트레이닝 가능 구성요소에 대한 트레이닝은, 위치추정 장치(100)가 탑재되는 디바이스의 컴퓨팅 파워를 이용하여 위치추정 장치(100)가 탑재되는 디바이스에서 진행될 수 있다.
전술한 바와 같은, 위치추정 장치(100) 내 트레이닝 가능 구성요소에 대한 트레이닝은 서버에서 진행될 수 있다. 디바이스 상에 탑재된 위치추정 장치(100)의 트레이닝 가능 구성요소와 동일한 구조의 심층신경망 모델에 대하여 서버의 트레이닝부는 트레이닝을 수행할 수 있다. 디바이스와 연결되는 통신 인터페이스를 이용하여 서버는 트레이닝된 심층신경망 모델의 파라미터를 디바이스로 전달하고, 전달받은 파라미터를 이용하여 위치추정 장치(100)는 트레이닝 가능 구성요소의 파라미터를 설정할 수 있다. 또한 디바이스의 출하 시점 또는 위치추정 장치(100)가 디바이스에 탑재되는 시점에, 트레이닝 가능 구성요소의 파라미터가 설정될 수 있다.
도 6은 본 개시의 일 실시예에 따른 시공간적 액션 위치추정 방법을 나타내는 순서도이다.
위치추정 장치(100)는 프레임 시퀀스를 획득한다(S600).
위치추정 장치(100)는 딥러닝 기반 추출 모델을 이용하여 프레임 시퀀스에 포함된 프레임 각각으로부터 특징맵들을 생성한다(S602). 여기서, 프레임 시퀀스는 N 개의 프레임을 포함한다.
위치추정 장치(100)는 인코더(104)를 이용하여 프레임 각각의 특징맵들로부터 프레임별 인코더 입력을 생성한다(S604). 위치추정 장치(100)는 특징맵들 각각을 시퀀스로 표현한 후, 시퀀스에 공간적 위치 인코딩을 가산하여 인코더 입력을 생성할 수 있다. 이때, 공간적 위치 인코딩은 해당 프레임 내에서 특징맵들 간의 순서를 표현한다.
위치추정 장치(100)는 인코더(104)를 이용하여 프레임별 인코더 입력으로부터 프레임별 공간적 인코더 출력, 및 시간적 인코더 출력을 생성한다(S606).
이하, 인코더(104)가 수행하는 S606 단계를 자세히 기술한다(S620 내지 S626 단계).
위치추정 장치(100)는 딥러닝 기반 N 개의 공간적 인코더(304)를 이용하여 프레임별 인코더 입력으로부터 프레임별 공간적 인코더 출력을 병렬 생성한다(S620).
N 개의 공간적 인코더(304)는 인코더(104)의 첫 번째 계층이다. 공간적 인코더(304)는 셀프 어텐션 모듈을 포함하는 복수의 인코더 레이어를 포함한다. 공간적 인코더(304)는 마지막 인코더 레이어의 출력을 공간적 인코더 출력으로서 FFN(306)에게 제공한다. 또한, 공간적 인코더(304)는, 디코더(106) 내 어텐션 기능을 위해, 공간적 인코더 출력을 디코더(106)에게 제공할 수 있다.
위치추정 장치(100)는 딥러닝 기반 N 개의 FFN(306)을 이용하여 프레임별 공간적 인코더 출력으로부터 프레임별 FFN 출력을 생성한다(S622).
위치추정 장치(100)는 프레임별 FFN 출력으로부터 시간적 인코더 입력을 생성한다(S624). 위치추정 장치(100)는 FFN 출력에 시간적 위치 인코딩을 가산하여 시간적 인코더 입력을 생성할 수 있다. 이때, 시간적 위치 인코딩은 프레임 시퀀스에 포함된 프레임 간의 순서를 표현할 수 있다.
위치추정 장치(100)는 딥러닝 기반 시간적 인코더(310)를 이용하여 시간적 인코더 입력으로부터 시간적 인코더 출력을 생성한다(S626).
시간적 인코더(310)는 인코더(104)의 두 번째 계층이다. 시간적 인코더(310)는 셀프 어텐션 모듈을 포함하는 복수의 인코더 레이어를 포함한다. 시간적 인코더(310)는, 디코더(106) 내 어텐션 기능을 위해, 시간적 인코더 출력을 디코더(106)에게 제공할 수 있다.
다음, 위치추정 장치(100)는 디코더(106)를 이용하여 프레임별 공간적 인코더 출력, 및 시간적 인코더 출력으로부터 프레임별 디코더 출력을 생성한다(S608).
이하, 디코더(106)의 동작(S608)을 자세히 기술한다(S630 및 S632 단계).
위치추정 장치(100)는 딥러닝 기반 시간적 디코더(402)를 이용하여 시간적 인코더 출력 및 객체 쿼리로부터 시간적 디코더 출력을 생성한다(S630).
시간적 디코더(402)는 디코더(106)의 첫 번째 계층이다. 시간적 디코더(402)는 셀프 어텐션 모듈 및 인코더-디코더 어텐션 모듈을 포함하는 복수의 디코더 레이어를 포함한다. 시간적 디코더(402)는 마지막 디코더 레이어의 출력을 시간적 디코더 출력으로서 공간적 디코더(404)에게 제공할 수 있다.
위치추정 장치(100)는 딥러닝 기반 N 개의 공간적 디코더(404)를 이용하여 시간적 디코더 출력 및 공간적 인코더 출력으로부터 프레임별 디코더 출력을 병렬 생성한다(S632).
N 개의 공간적 디코더(404)는 디코더(106)의 두 번째 계층이다. 공간적 디코더(404)는 셀프 어텐션 모듈 및 인코더-디코더 어텐션 모듈을 포함하는 복수의 디코더 레이어를 포함한다. 공간적 디코더(404)는 마지막 디코더 레이어의 출력을 디코더 출력으로서 추정부(108)에게 제공할 수 있다.
다음, 위치추정 장치(100)는 추정부(108)를 이용하여 프레임별 디코더 출력으로부터 프레임 시퀀스에 포함된 이벤트 상황을 나타내는 프레임별 위치추정 결과들을 생성한다(S610).
한편, 객체 쿼리는 프레임별 위치추정 결과들 간의 순서를 표현하는 위치 인코딩이다. 객체 쿼리의 개수는 프레임별 위치추정 결과들의 개수와 동일할 수 있다.
본 실시예에 따른 각 순서도에서는 각각의 과정을 순차적으로 실행하는 것으로 기재하고 있으나, 반드시 이에 한정되는 것은 아니다. 다시 말해, 순서도에 기재된 과정을 변경하여 실행하거나 하나 이상의 과정을 병렬적으로 실행하는 것이 적용 가능할 것이므로, 순서도는 시계열적인 순서로 한정되는 것은 아니다.
본 명세서에 설명되는 시스템들 및 기법들의 다양한 구현예들은, 디지털 전자 회로, 집적 회로, FPGA(field programmable gate array), ASIC(application specific integrated circuit), 컴퓨터 하드웨어, 펌웨어, 소프트웨어, 및/또는 이들의 조합으로 실현될 수 있다. 이러한 다양한 구현예들은 프로그래밍가능 시스템 상에서 실행가능한 하나 이상의 컴퓨터 프로그램들로 구현되는 것을 포함할 수 있다. 프로그래밍가능 시스템은, 저장 시스템, 적어도 하나의 입력 디바이스, 그리고 적어도 하나의 출력 디바이스로부터 데이터 및 명령들을 수신하고 이들에게 데이터 및 명령들을 전송하도록 결합되는 적어도 하나의 프로그래밍가능 프로세서(이것은 특수 목적 프로세서일 수 있거나 혹은 범용 프로세서일 수 있음)를 포함한다. 컴퓨터 프로그램들(이것은 또한 프로그램들, 소프트웨어, 소프트웨어 애플리케이션들 혹은 코드로서 알려져 있음)은 프로그래밍가능 프로세서에 대한 명령어들을 포함하며 "컴퓨터가 읽을 수 있는 기록매체"에 저장된다.
컴퓨터가 읽을 수 있는 기록매체는, 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 이러한 컴퓨터가 읽을 수 있는 기록매체는 ROM, CD-ROM, 자기 테이프, 플로피디스크, 메모리 카드, 하드 디스크, 광자기 디스크, 스토리지 디바이스 등의 비휘발성(non-volatile) 또는 비일시적인(non-transitory) 매체일 수 있다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수도 있다.
이상의 설명은 본 실시예의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 실시예의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 실시예들은 본 실시예의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시예에 의하여 본 실시예의 기술 사상의 범위가 한정되는 것은 아니다. 본 실시예의 보호 범위는 아래의 청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 실시예의 권리범위에 포함되는 것으로 해석되어야 할 것이다.
100: 시공간 액션 위치추정 장치
102: 전처리부
104: 인코더
106: 디코더
108: 추정부

Claims (21)

  1. 프레임 시퀀스를 획득하고, 추출 모델(extraction model)을 이용하여 상기 프레임 시퀀스에 포함된 프레임 각각으로부터 특징맵들(feature maps)을 생성하는 전처리부, 여기서, 상기 프레임 시퀀스는 N(여기서, N은 자연수) 개의 프레임을 포함함;
    상기 프레임 각각의 특징맵들로부터 프레임별 인코더 입력을 생성한 후, 상기 프레임별 인코더 입력으로부터 프레임별 공간적 인코더 출력, 및 시간적 인코더 출력을 생성하는 계층 구조의 인코더; 및
    상기 프레임별 공간적 인코더 출력 및 상기 시간적 인코더 출력으로부터 프레임별 디코더 출력을 생성하는 계층 구조의 디코더
    를 포함하는, 시공간 액션 위치추정(spatio-temporal action localization) 장치.
  2. 제1항에 있어서,
    상기 인코더는,
    상기 프레임 각각의 특징맵들로부터 상기 프레임별 인코더 입력을 생성하는 제1 가산기;
    상기 프레임별 인코더 입력으로부터 프레임별 공간적 인코더 출력을 병렬 생성하는 N 개의 공간적 인코더;
    상기 프레임별 공간적 인코더 출력으로부터 프레임별 FFN(Feedforward Network) 출력을 생성하는 N 개의 FFN;
    상기 프레임별 FFN 출력으로부터 시간적 인코더 입력을 생성하는 제2 가산기; 및
    상기 시간적 인코더 입력으로부터 상기 시간적 인코더 출력을 생성하는 시간적 인코더
    를 포함하는, 시공간 액션 위치추정 장치.
  3. 제2항에 있어서,
    상기 제1 가산기는,
    상기 특징맵들 각각을 시퀀스로 표현한 후, 상기 시퀀스에 공간적 위치 인코딩(spatial position encoding)을 가산하여 상기 인코더 입력을 생성하되, 상기 공간적 위치 인코딩은 해당 프레임 내에서 상기 특징맵들 간의 순서를 표현하는, 시공간 액션 위치추정 장치.
  4. 제2항에 있어서,
    상기 공간적 인코더는,
    셀프 어텐션 모듈을 포함하는 복수의 인코더 레이어를 포함하되, 첫 번째 인코더 레이어는 상기 인코더 입력을 상기 셀프 어텐션 모듈의 입력으로 이용하고, 나머지 인코더 레이어는 전단의 인코더 레이어의 출력을 상기 셀프 어텐션 모듈의 입력으로 이용하는, 시공간 액션 위치추정 장치.
  5. 제4항에 있어서,
    상기 공간적 인코더는,
    마지막 인코더 레이어의 출력을 상기 공간적 인코더 출력으로서 상기 FFN 및 상기 디코더에게 제공하는, 시공간 액션 위치추정 장치.
  6. 제2항에 있어서,
    상기 제2 가산기는,
    상기 FFN 출력에 시간적 위치 인코딩(temporal position encoding)을 가산하여 상기 시간적 인코더 입력을 생성하되, 상기 시간적 위치 인코딩은 상기 프레임 시퀀스에 포함된 프레임 간의 순서를 표현하는, 시공간 액션 위치추정 장치.
  7. 제2항에 있어서,
    상기 시간적 인코더는,
    셀프 어텐션 모듈을 포함하는 복수의 인코더 레이어를 포함하되, 첫 번째 인코더 레이어는 상기 시간적 인코더 입력을 상기 셀프 어텐션 모듈의 입력으로 이용하고, 나머지 인코더 레이어는 전단의 인코더 레이어의 출력을 상기 셀프 어텐션 모듈의 입력으로 이용하는, 시공간 액션 위치추정 장치.
  8. 제7항에 있어서,
    상기 시간적 인코더는,
    마지막 인코더 레이어의 출력을 상기 시간적 인코더 출력으로서 상기 디코더에게 제공하는, 시공간 액션 위치추정 장치.
  9. 제1항에 있어서,
    상기 디코더는,
    상기 시간적 인코더 출력 및 객체 쿼리로부터 시간적 디코더 출력을 생성하는 시간적 디코더; 및
    상기 시간적 디코더 출력 및 상기 공간적 인코더 출력으로부터 상기 프레임별 디코더 출력을 병렬 생성하는 N 개의 공간적 디코더
    를 포함하는, 시공간 액션 위치추정 장치.
  10. 제9항에 있어서,
    상기 시간적 디코더는,
    셀프 어텐션 모듈 및 인코더-디코더 어텐션 모듈을 포함하는 복수의 디코더 레이어를 포함하되, 첫 번째 디코더 레이어는 상기 객체 쿼리를 상기 셀프 어텐션 모듈의 입력으로 이용하고, 나머지 디코더 레이어는 전단의 디코더 레이어의 출력을 상기 셀프 어텐션 모듈의 입력으로 이용하며, 상기 디코더 레이어 각각은 상기 셀프 어텐션 모듈의 출력, 및 상기 시간적 인코더 출력을 상기 인코더-디코더 어텐션 모듈의 입력으로 이용하는, 시공간 액션 위치추정 장치.
  11. 제10항에 있어서,
    상기 시간적 디코더는,
    마지막 디코더 레이어의 출력을 상기 시간적 디코더 출력으로서 상기 공간적 디코더에게 제공하는, 시공간 액션 위치추정 장치.
  12. 제9항에 있어서,
    상기 공간적 디코더는,
    셀프 어텐션 모듈 및 인코더-디코더 어텐션 모듈을 포함하는 복수의 디코더 레이어를 포함하되, 첫 번째 디코더 레이어는 상기 시간적 디코더 출력을 상기 셀프 어텐션 모듈의 입력으로 이용하고, 나머지 디코더 레이어는 전단의 디코더 레이어의 출력을 상기 셀프 어텐션 모듈의 입력으로 이용하며, 상기 디코더 레이어 각각은 상기 셀프 어텐션 모듈의 출력, 및 상기 공간적 인코더 출력을 상기 인코더-디코더 어텐션 모듈의 입력으로 이용하는, 시공간 액션 위치추정 장치.
  13. 제12항에 있어서,
    상기 공간적 디코더는,
    마지막 디코더 레이어의 출력을 상기 디코더 출력으로서 제공하는, 시공간 액션 위치추정 장치.
  14. 제9항에 있어서,
    상기 프레임별 디코더 출력으로부터 상기 프레임 시퀀스에 포함된 이벤트 상황을 나타내는 프레임별 위치추정 결과들을 생성하는 추정부를 더 포함하는, 시공간 액션 위치추정 장치.
  15. 제14항에 있어서,
    상기 객체 쿼리는,
    상기 프레임별 위치추정 결과들 간의 순서를 표현하는 위치 인코딩이고, 상기 객체 쿼리의 개수는 상기 프레임별 위치추정 결과들의 개수와 동일한, 시공간 액션 위치추정 장치.
  16. 제14항에 있어서,
    상기 추출 모델, 상기 인코더, 상기 디코더, 상기 추정부의 전부 또는 일부를 포함하는 트레이닝 가능 구성요소가 사전에 종단간으로 트레이닝되는, 시공간 액션 위치추정 장치.
  17. 컴퓨팅 장치가 수행하는, 시공간 액션 위치추정(spatio-temporal action localization) 방법에 있어서,
    프레임 시퀀스를 획득하는 단계;
    딥러닝 기반 추출 모델(extraction model)을 이용하여 상기 프레임 시퀀스에 포함된 프레임 각각으로부터 특징맵들(feature maps)을 생성하는 단계, 여기서, 상기 프레임 시퀀스는 N(여기서, N은 자연수) 개의 프레임을 포함함;
    상기 프레임 각각의 특징맵들로부터 프레임별 인코더 입력을 생성하는 단계;
    상기 프레임별 인코더 입력으로부터 프레임별 공간적 인코더 출력, 및 시간적 인코더 출력을 생성하는 단계; 및
    상기 프레임별 공간적 인코더 출력 및 상기 시간적 인코더 출력으로부터 프레임별 디코더 출력을 생성하는 단계
    를 포함하는, 시공간 액션 위치추정 방법.
  18. 제17항에 있어서,
    상기 시간적 인코더 출력을 생성하는 단계는,
    딥러닝 기반 N 개의 공간적 인코더를 이용하여 상기 프레임별 인코더 입력으로부터 프레임별 공간적 인코더 출력을 병렬 생성하는 단계;
    딥러닝 기반 N 개의 FFN을 이용하여 상기 프레임별 공간적 인코더 출력으로부터 프레임별 FFN(Feedforward Network) 출력을 생성하는 단계;
    상기 프레임별 FFN 출력으로부터 시간적 인코더 입력을 생성하는 단계; 및
    딥러닝 기반 시간적 인코더를 이용하여 상기 시간적 인코더 입력으로부터 상기 시간적 인코더 출력을 생성하는 단계
    를 포함하는, 시공간 액션 위치추정 방법.
  19. 제17항에 있어서,
    상기 프레임별 디코더 출력을 생성하는 단계는,
    딥러닝 기반 시간적 디코더를 이용하여 상기 시간적 인코더 출력 및 객체 쿼리로부터 시간적 디코더 출력을 생성하는 단계; 및
    딥러닝 기반 N 개의 공간적 디코더를 이용하여 상기 시간적 디코더 출력 및 상기 공간적 인코더 출력으로부터 상기 프레임별 디코더 출력을 병렬 생성하는 단계
    를 포함하는, 시공간 액션 위치추정 방법.
  20. 제17항에 있어서,
    상기 프레임별 디코더 출력으로부터 상기 프레임 시퀀스에 포함된 이벤트 상황을 나타내는 프레임별 위치추정 결과들을 생성하는 단계를 더 포함하는, 시공간 액션 위치추정 방법.
  21. 제17항 내지 제20항 중 어느 한 항에 따른 시공간 액션 위치추정 방법이 포함하는 각 단계를 실행시키기 위하여 컴퓨터로 읽을 수 있는 기록매체에 저장된 컴퓨터프로그램.
KR1020210148052A 2021-11-01 2021-11-01 계층적 구조에 기반하는 시공간 액션 위치추정 장치 및 방법 KR20230063135A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210148052A KR20230063135A (ko) 2021-11-01 2021-11-01 계층적 구조에 기반하는 시공간 액션 위치추정 장치 및 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210148052A KR20230063135A (ko) 2021-11-01 2021-11-01 계층적 구조에 기반하는 시공간 액션 위치추정 장치 및 방법

Publications (1)

Publication Number Publication Date
KR20230063135A true KR20230063135A (ko) 2023-05-09

Family

ID=86409100

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210148052A KR20230063135A (ko) 2021-11-01 2021-11-01 계층적 구조에 기반하는 시공간 액션 위치추정 장치 및 방법

Country Status (1)

Country Link
KR (1) KR20230063135A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116884067A (zh) * 2023-07-12 2023-10-13 成都信息工程大学 一种基于改进的隐式语义数据增强的微表情识别方法
CN118034070A (zh) * 2024-04-15 2024-05-14 青岛杰瑞工控技术有限公司 海洋监测设备参数结合机械结构的主被动校准补偿方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
A. Vaswani et al., "Attention Is All You Need," arXiv: 1706.03762, 2017.

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116884067A (zh) * 2023-07-12 2023-10-13 成都信息工程大学 一种基于改进的隐式语义数据增强的微表情识别方法
CN118034070A (zh) * 2024-04-15 2024-05-14 青岛杰瑞工控技术有限公司 海洋监测设备参数结合机械结构的主被动校准补偿方法

Similar Documents

Publication Publication Date Title
CN110443266B (zh) 对象预测方法及装置、电子设备和存储介质
KR20230063135A (ko) 계층적 구조에 기반하는 시공간 액션 위치추정 장치 및 방법
US20180285689A1 (en) Rgb-d scene labeling with multimodal recurrent neural networks
CN112464807A (zh) 视频动作识别方法、装置、电子设备和存储介质
Patil et al. An unified recurrent video object segmentation framework for various surveillance environments
Mandal et al. 3DFR: A swift 3D feature reductionist framework for scene independent change detection
US10783660B2 (en) Detecting object pose using autoencoders
Jeong et al. Horizon detection in maritime images using scene parsing network
Maslov et al. Online supervised attention-based recurrent depth estimation from monocular video
KR20210099450A (ko) 딥러닝을 이용한 원거리 소형 드론 탐지 방법
KR20220047141A (ko) 영상복원 방법 및 장치
Kanu-Asiegbu et al. Leveraging trajectory prediction for pedestrian video anomaly detection
Rahman et al. An adaptive background modeling based on modified running Gaussian average method
CN111179331B (zh) 深度估计方法、装置、电子设备及计算机可读存储介质
Wickramarachchi et al. CLUE-AD: A context-based method for labeling unobserved entities in autonomous driving data
Wozniak et al. Towards a robust sensor fusion step for 3d object detection on corrupted data
Xiong et al. Distortion map-guided feature rectification for efficient video semantic segmentation
CN116740607A (zh) 视频处理方法及装置、电子设备和存储介质
WO2022165132A1 (en) Keypoint based action localization
Yang et al. Knowledge Distillation for Feature Extraction in Underwater VSLAM
US11210775B1 (en) Gradient-embedded video anomaly detection
CN110753239B (zh) 视频预测方法、视频预测装置、电子设备和车辆
KR20210086487A (ko) 동영상내의 이상 물체 탐지 방법 및 그 장치
Kim et al. Self-supervised 3D Object Detection from Monocular Pseudo-LiDAR
KR20220107494A (ko) 근적외선 카메라를 사용한 딥 러닝 기반 드론 감지 시스템