KR20210039033A - 영상 데이터를 처리하는 방법 및 이를 실행시키기 위한 명령어들이 저장된 컴퓨터 판독 가능한 기록 매체 - Google Patents

영상 데이터를 처리하는 방법 및 이를 실행시키기 위한 명령어들이 저장된 컴퓨터 판독 가능한 기록 매체 Download PDF

Info

Publication number
KR20210039033A
KR20210039033A KR1020190121312A KR20190121312A KR20210039033A KR 20210039033 A KR20210039033 A KR 20210039033A KR 1020190121312 A KR1020190121312 A KR 1020190121312A KR 20190121312 A KR20190121312 A KR 20190121312A KR 20210039033 A KR20210039033 A KR 20210039033A
Authority
KR
South Korea
Prior art keywords
image data
frames
frame
person
identified
Prior art date
Application number
KR1020190121312A
Other languages
English (en)
Other versions
KR102264744B1 (ko
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 KR1020190121312A priority Critical patent/KR102264744B1/ko
Publication of KR20210039033A publication Critical patent/KR20210039033A/ko
Application granted granted Critical
Publication of KR102264744B1 publication Critical patent/KR102264744B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/11Region-based segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/50Information retrieval; Database structures therefor; File system structures therefor of still image data
    • G06F16/58Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/583Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • G06F16/5854Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content using shape and object relationship
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20112Image segmentation details
    • G06T2207/20132Image cropping
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30196Human being; Person
    • G06T2207/30201Face

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Library & Information Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

본 발명은 외부로부터 수신되는 영상 데이터를 처리하는 방법 및 이러한 방법을 실행시키기 위한 명령어들이 저장된 컴퓨터 판독 가능한 기록 매체에 관한 것이다. 더 구체적으로, 본 발명은 영상 데이터가 수신되었거나 수신 될 때에, 프레임들의 픽셀값을 기준으로 유사한 프레임들을 하나의 클립 유닛으로 정의하고, 나아가 각 프레임들로부터 임의의 오브젝트들을 식별해 냄으로써 각각의 프레임 내에, 또는 프레임들의 집합인 하나의 클립 유닛 내에 어떤 오브젝트가 포함되어 있는지 판단 가능하도록 영상 데이터를 처리하는 방법 및 기록 매체에 관한 것이다.

Description

영상 데이터를 처리하는 방법 및 이를 실행시키기 위한 명령어들이 저장된 컴퓨터 판독 가능한 기록 매체{Apparatus and Method for processing image data}
본 발명은 외부로부터 수신되는 영상 데이터를 처리하는 방법 및 이러한 방법을 실행시키기 위한 명령어들이 저장된 컴퓨터 판독 가능한 기록 매체에 관한 것이다. 더 구체적으로, 본 발명은 영상 데이터가 수신되었거나 수신 될 때에, 프레임들의 픽셀값을 기준으로 유사한 프레임들을 하나의 클립 유닛으로 정의하고, 나아가 각 프레임들로부터 임의의 오브젝트들을 식별해 냄으로써 각각의 프레임 내에, 또는 프레임들의 집합인 하나의 클립 유닛 내에 어떤 오브젝트가 포함되어 있는지 판단 가능하도록 영상 데이터를 처리하는 방법 및 기록 매체에 관한 것이다.
오늘 날 미디어의 발달, 네트워크의 발달 및 다양한 영상 매체를 재생시킬 수 있는 디바이스들의 발달은 매우 방대한 양의 영상 데이터들의 활용이 가능한 환경을 제공하고 있으며, 지금 현재도 매우 다양한 영상 데이터들이 TV, 영화 등은 물론 각종 SNS 및 유튜브 등을 통하여 제공되고 있다.
한편, 최근에는 영상 데이터를 다양한 방식으로 처리하고자 하는 방법론들이 제안되고 있으며, 특히 영상 데이터 내에 어떤 오브젝트가 존재하는지를 식별하고자 하는 수요가 크게 늘고 있기에 이를 위한 연구가 여러 방면으로 진행되고 있다.
그러나 아직까지도 영상 데이터 내에 포함된 오브젝트를 식별하는 기술은 완전하지 못한 상태이며, 특히 식별 결과에 있어 신뢰성이 떨어져 식별 결과물을 적극적으로 활용하고 있지 못한 실정이다.
본 발명은 이와 같은 수요를 충족시키기 위해 도출된 것으로, 이상에서 살핀 기술적 문제점을 해소시킬 수 있음은 물론, 본 기술분야에서 통상의 지식을 가진 자가 용이하게 발명할 수 없는 추가적인 기술요소들을 제공하기 위해 발명되었다.
대한민국 공개특허공보 제10-2017-0120095호(2017.10.30.)
본 발명은 영상 데이터를 보다 효과적으로 클리핑 할 수 있는 방법, 특히 각 프레임을 구성하는 픽셀들의 픽셀값을 기준으로 유사도가 높은 프레임들을 하나의 클립 유닛으로 구분할 수 있게 하는 것을 목적으로 한다.
또한 본 발명은 프레임 내에 포함되어 있는 오브젝트, 또는 영상 내 포함된 오브젝트를 정확하게 식별해 내고, 식별해 낸 오브젝트에 대한 메타데이터를 기록해 둠으로써 영상 데이터에 대한 현 시점에서의 편집 및 후속 편집이 쉽게 이루어질 수 있게 하는 것을 목적으로 한다.
특히 본 발명은 영상 내에서 인물, 사물, 행동, 소리 등을 식별해 낼 수 있게 함으로써 이 결과를 이용하여 다양한 응용 정보를 제공하거나 생성할 수 있게 하는 것을 목적으로 한다.
한편, 본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
위와 같은 문제점을 해결하기 위하여, 본 발명에 따른 영상 데이터 처리 방법은 (a) 상기 영상 데이터를 구성하는 복수의 프레임들 중 유사도가 높은 프레임들을 하나의 클립 유닛으로 정의하는 단계; (b) 상기 클립 유닛 내에 포함된 프레임들로부터 임의의 오브젝트를 식별하는 단계; 및 (c) 식별된 오브젝트들 중 특정 오브젝트가 상기 프레임들 중 기 설정된 개수 이상의 프레임들 내에서 식별된 경우, 상기 특정 오브젝트가 상기 클립 유닛 내에 존재하는 것으로 판단하는 단계;를 포함한다.
또한, 상기 영상 데이터를 처리하는 방법에 있어서 상기 (a)단계에서의 유사도는, 각 프레임들이 포함하는 픽셀값을 기준으로 연산되는 것을 특징으로 할 수 있다.
또한, 상기 영상 데이터를 처리하는 방법에 있어서 상기 (a)단계는, (a-1) 기 누적된 누적 프레임들의 픽셀 평균값을 산출하는 단계; (a-2) 차순위 프레임 - 상기 차순위 프레임은 상기 누적 프레임들 중 마지막 프레임의 다음 순위 프레임을 의미함 - 의 픽셀값과 상기 산출된 픽셀 평균값을 비교하는 단계; 및 (a-3) 비교 결과 상기 차순위 프레임의 픽셀값과 상기 픽셀 평균값의 차이가 임계치 이하인 경우, 상기 차순위 프레임을 누적 프레임에 추가한 뒤 상기 (a-1)단계로 궤환하고, 차이가 임계치를 초과한 경우 현재 누적된 누적 프레임들까지를 하나의 클립 유닛으로 정의하는 단계;를 포함할 수 있다. 또한 이 때, 상기 (b)단계는, 각 프레임에 대하여 식별된 오브젝트의 메타데이터를 저장하는 단계를 포함할 수 있다.
또한, 상기 영상 데이터를 처리하는 방법에 있어서 상기 오브젝트는 인물, 사물, 행동, 또는 소리일 수 있다.
특히, 상기 영상 데이터를 처리하는 방법에 있어서 상기 오브젝트는 인물이고, 상기 (b)단계는, (b-11) 프레임 내에서 적어도 하나의 얼굴 영역을 식별하는 단계; (b-12) 식별된 얼굴 영역을 정렬하고 각각의 얼굴 영역에 대응되는 임베딩을 생성하는 단계; (b-13) 각 얼굴 영역에 대응되는 임베딩의 벡터와 기 저장된 레퍼런스 임베딩의 벡터를 비교하여 가장 유사한 인물을 예측하는 단계; 를 포함할 수 있다.
또한, 상기 영상 데이터를 처리하는 방법에 있어서 상기 (b)단계는, (b-14) 상기 (b-11)단계 내지 (b-13)단계를 반복하여 복수의 프레임들로부터 예측된 인물에 대한 정보를 클러스터링 하는 단계; (b-15) 클러스터링 된 정보를 참조하여 상기 (b-13) 단계에서 예측된 각 프레임 별 인물이 올바르게 예측된 인물인지를 확인하는 단계;를 더 포함할 수 있다.
또한, 상기 영상 데이터를 처리하는 방법에 있어서 상기 (b)단계는, 각 프레임에 대하여 식별된 인물의 메타데이터를 저장하는 단계;를 더 포함할 수 있다.
또한, 상기 영상 데이터를 처리하는 방법에 있어서 상기 오브젝트는 사물일 때, 상기 (b)단계는, (b-21) 프레임 내에서 사물군을 식별하는 단계; (b-22) 식별된 사물군 내 사물들에 대한 특징을 추출하고, 각각의 사물들에 대응되는 임베딩을 생성하는 단계; (b-23) 각 사물에 대응되는 임베딩의 벡터와 기 저장된 레퍼런스 임베딩의 벡터를 비교하여 가장 유사한 사물을 예측하는 단계; 를 포함할 수 있다.
또한, 상기 (b)단계는, 각 프레임에 대하여 식별된 사물의 메타데이터를 저장하는 단계;를 더 포함할 수 있다.
또한, 상기 영상 데이터를 처리하는 방법에 있어서 상기 오브젝트는 행동일 때, 상기 (b)단계는, (b-31) 적어도 2 이상의 연속된 프레임들로부터 인물의 행동을 식별하는 단계; (b-32) 적어도 2 이상의 연속된 프레임들에 대하여 상기 식별된 행동에 대한 메타데이터를 저장하는 단계;를 포함할 수 있다.
또한, 상기 영상 데이터를 처리하는 방법에 있어서 상기 오브젝트는 소리일 때, 상기 (b)단계는, (b-41) 상기 영상 데이터에 포함된 소리신호를 임의 주기마다 샘플링 하는 단계; (b-42) 샘플링 한 각 소리신호에 대한 특징을 추출하는 단계; (b-43) 추출한 특징과 기 저장된 레퍼런스 간 유사도를 연산하고, 상기 유사도가 임계치 이상이면 상기 소리신호가 상기 기 저장된 레퍼런스와 대응되는 소리인 것으로 예측하는 단계; 를 포함할 수 있다.
또한, 상기 영상 데이터를 처리하는 방법에 있어서 기 정해진 시간 동안 특정 소리로 연속적으로 예측될 경우, 상기 시간에 대응되는 구간을 소리구간으로 인식하고, 당해 구간에 대하여 소리 메타데이터를 저장하는 단계;를 더 포함할 수 있다.
한편, 본 발명의 또 다른 실시예에 따른 컴퓨터 판독 가능한 기록 매체는, 영상 데이터를 처리하는 방법을 실행시키기 위한 명령어들을 저장하되, 이 때 상기 영상 데이터를 처리하는 방법은, (a) 상기 영상 데이터를 구성하는 복수의 프레임들 중 유사도가 높은 프레임들을 하나의 클립 유닛으로 정의하는 단계; (b) 상기 클립 유닛 내에 포함된 프레임들로부터 임의의 오브젝트를 식별하는 단계; 및 (c) 식별된 오브젝트들 중 특정 오브젝트가 상기 프레임들 중 기 설정된 개수 이상의 프레임들 내에서 식별된 경우, 상기 특정 오브젝트가 상기 클립 유닛 내에 존재하는 것으로 판단하는 단계;를 포함할 수 있다.
본 발명에 따르면 하나의 영상 데이터를 여러 개의 클립 유닛들, 즉 유사도가 높은 프레임들만의 집합으로 이루어진 클립 유닛들로 쉽게 나눌 수 있는 효과가 있다.
또한 본 발명에 따르면 프레임 내로부터 임의의 오브젝트(인물, 사물, 행동, 소리 등)들을 식별해 낼 수 있게 함으로써, 각 프레임 내에 또는 각 클립 유닛 내에 어떤 오브젝트들이 포함되어 있는지를 쉽게 파악할 수 있게 하는 효과가 있다.
또한 본 발명에 따르면 각 프레임 내에 어떤 오브젝트가 포함되어 있는지에 대한 메타데이터를 기록해 두게 되므로, 향후 후속적인 편집이나 위 영상 데이터로부터 파생되는 여타의 새로운 정보를 생성해 낼 때에 위 오브젝트 식별 결과의 활용이 쉽도록 하는 효과가 있다.
본 발명의 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해 될 수 있을 것이다.
도 1은 본 발명의 전체 개요를 간략히 도시한 것이다.
도 2는 하나의 영상 데이터로부터 클립 유닛을 분리해 내는 실시예를 도시한 것으로, 도 2의 (a)는 연속된 프레임들로 구성된 하나의 영상 데이터를, 그리고 도 2의 (b)는 위 영상 데이터를 여러 개의 클립 유닛들로 분리해 낸 결과를 도시한 것이다.
도 3은 클립 유닛을 생성하는 과정을 도시한 것이다.
도 4는 여러 개의 클립 유닛들이 생성된 결과물을 도시한 것이다.
도 5는 사전에 얼굴 인식을 위해 필요한 학습을 하는 과정을 도시한 것이다.
도 6은 복수 개의 얼굴 이미지들이 학습용 데이터로 인가되는 모습을 개념적으로 도시한 것이다.
도 7은 프레임 내 또는 클립 유닛 내 인물을 식별하는 과정을 도시한 것이다.
도 8은 사전에 사물 인식을 위해 필요한 학습을 하는 과정을 도시한 것이다.
도 9는 복수 개의 사물 이미지들이 학습용 데이터로 인가되는 모습을 개념적으로 도시한 것이다.
도 10은 프레임 내 또는 클립 유닛 내 사물을 식별하는 과정을 도시한 것이다.
도 11은 사전에 행동 인식을 위해 필요한 학습을 하는 과정을 도시한 것이다.
도 12는 연속된 프레임 내 행동을 식별하는 과정을 도시한 것이며, 도 13은 연속된 프레임들을 예시적으로 도시한 것이다.
도 14 및 도 15는 영상 데이터로부터 소리를 식별하는 과정을 도시한 것이다.
본 발명의 목적과 기술적 구성 및 그에 따른 작용 효과에 관한 자세한 사항은 본 발명의 명세서에 첨부된 도면에 의거한 이하의 상세한 설명에 의해 보다 명확하게 이해될 것이다. 첨부된 도면을 참조하여 본 발명에 따른 실시예를 상세하게 설명한다.
본 명세서에서 개시되는 실시예들은 본 발명의 범위를 한정하는 것으로 해석되거나 이용되지 않아야 할 것이다. 이 분야의 통상의 기술자에게 본 명세서의 실시예를 포함한 설명은 다양한 응용을 갖는다는 것이 당연하다. 따라서, 본 발명의 상세한 설명에 기재된 임의의 실시예들은 본 발명을 보다 잘 설명하기 위한 예시적인 것이며 본 발명의 범위가 실시예들로 한정되는 것을 의도하지 않는다.
도면에 표시되고 아래에 설명되는 기능 블록들은 가능한 구현의 예들일 뿐이다. 다른 구현들에서는 상세한 설명의 사상 및 범위를 벗어나지 않는 범위에서 다른 기능 블록들이 사용될 수 있다. 또한, 본 발명의 하나 이상의 기능 블록이 개별 블록들로 표시되지만, 본 발명의 기능 블록들 중 하나 이상은 동일 기능을 실행하는 다양한 하드웨어 및 소프트웨어 구성들의 조합일 수 있다.
또한, 어떤 구성요소들을 포함한다는 표현은 “개방형”의 표현으로서 해당 구성요소들이 존재하는 것을 단순히 지칭할 뿐이며, 추가적인 구성요소들을 배제하는 것으로 이해되어서는 안 된다.
나아가 어떤 구성요소가 다른 구성요소에 “연결되어” 있다거나 “접속되어” 있다고 언급될 때에는, 그 다른 구성요소에 직접적으로 연결 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 한다.
도 1은 본 발명의 전반적인 이해를 돕기 위한 개념도이다.
본 발명이 제안하고자 하는 발명은 가장 먼저 하나의 영상 데이터를 복수 개의 클립 유닛들로 구분하는 방법, 그리고 각 클립 유닛들에 포함된 오브젝트들(인물, 사물, 행동, 소리 등)을 식별해 내어 이를 메타데이터로 기록하는 방법이다.
도 1을 참조할 때, 하나의 영상 데이터는 복수 개의 클립 유닛들(클립 유닛 #1, #2, #3)로 나뉠 수 있는데, 이 때 클립 유닛이란 하나의 영상 데이터 중에서 유사도가 높은 또는 유사도가 임계치보다 더 높은 것으로 판별된 프레임들을 하나의 프레임 그룹으로 정의한 것을 의미한다. 후술하겠지만, 프레임의 유사도를 판별하는 방식에는 다양한 방법론들이 존재할 것이나, 본 상세한 설명에서는 각 프레임을 구성하는 픽셀들의 픽셀값을 참조하여 각 프레임들 간 유사도를 판별하게 될 것이다.
한편, 이렇게 하나의 영상 데이터를 여러 개의 클립 유닛들로 구분 및 분리해 낸 후, 각 클립 유닛들에 대해서는 각 클립 유닛 내에 어떤 오브젝트들이 포함되어 있는지를 식별하는 과정이 이어진다. 본 상세한 설명에서 언급되는 오브젝트란 인물, 사물, 행동, 소리 등을 의미하는 것으로, 예를 들어 클립 유닛 내에 어떤 인물이 등장하고 있는지, 클립 유닛 내에 어떤 사물(물건)에 대한 설명이 이루어지고 있는지, 클립 유닛 내에 인물이 어떤 행동을 하고 있는지, 또는 클립 유닛 내에 어떤 소리가 반복되고 있는지 등을 알고자 할 때에 각 인물, 사물, 행동, 소리를 본 발명에서 식별의 대상이 되는 오브젝트라 정의하기로 한다.
한편, 영상 데이터 내로부터 임의의 오브젝트 또는 복수 개의 오브젝트들이 식별된 후, 본 발명에서는 위 식별된 오브젝트(들)에 대한 메타데이터를 생성하는 것을 하나의 특징으로 한다. 메타데이터의 사전적 의미는 데이터에 관한 구조화된 데이터, 즉 어느 대상이 되는 데이터가 존재할 때에 이 데이터를 설명하기 위한 데이터라고 이해될 수 있으며, 쉽게는 속성정보라고 불리기도 한다. 구체적으로, 메타데이터란 대량의 정보 가운데에서 찾고 있는 정보를 효율적으로 찾아내서 이용하기 위해 일정한 규칙에 따라 부여되는 데이터이며, 보통 메타데이터는 데이터를 표현하기 위한 목적과 데이터를 빨리 찾기 위한 목적으로 사용하고 있다. 메타데이터의 생성 목적은 데이터를 빨리 찾기 위한 것으로, 컴퓨터에서 정보의 인덱스(Index) 구실을 한다. 본 발명에서의 메타데이터는 각 프레임 별로 어떤 오브젝트가 식별되었는지에 대한 정보를 포함하게 될 것이며, 예를 들어 프레임 식별번호 및 해당 프레임으로부터 식별된 오브젝트 식별자가 메타데이터에 포함될 수 있다. 이렇게 생성된 메타데이터는 향후 영상 데이터 내에 어떤 프레임에 어떤 오브젝트가 등장하였는지, 나아가서는 클립 유닛 내에 어떤 오브젝트가 주되게 등장하였는지 등과 같은 정보를 쉽게 알 수 있는 데에 활용될 수 있다.
이처럼 본 상세한 설명에서 언급될 영상 데이터 처리 방법에는 크게 하나의 영상 데이터로부터 복수의 클립 유닛들을 분리 또는 생성해 내는 방법, 각 클립 유닛 내 프레임들로부터 임의의 오브젝트를 식별해 내는 방법, 그리고 각 프레임 별로 앞서 식별된 오브젝트에 대한 메타 데이터를 생성하는 방법이 포함될 수 있다. 이하에서는 각 방법들에 대해 자세히 설명하기로 한다.
도 2와 도 3은 하나의 영상 데이터로부터 복수의 클립 유닛들을 분리 또는 생성하는 방법에 대한 도면으로, 도 2는 클립 유닛들의 분리에 대한 의미를 쉽게 이해하기 위한 예시이고, 도 3은 클립 유닛들을 분리 또는 생성하는 방법을 단계별로 나타낸 것이다. 참고로, 클립 유닛들을 분리 또는 생성한다는 것은 하나의 영상 데이터로부터 복수 개의 유사도가 높은 프레임들은 구별하여 하나의 클립 유닛으로 정의한다는 것으로 이해될 수 있으며, 이하에서는 이해를 돕기 위하여 클립 유닛들을 ‘분리’한다는 표현으로 통일하기로 한다.
먼저 도 2의 (a)는 하나의 영상 데이터 내 포함된 연속적인 프레임들을 순서대로 나열한 것이며, (b)는 이들 복수개의 프레임들 중 서로 유사도가 높은 프레임들을 총 다섯 개의 클립 유닛들로 분리해 낸 실시예를 도시한 것이다. 주지하는 바와 같이 영상 데이터란 여러 개의 연속된 프레임들을 포함하고 있으며, 이 때 시청자 입장에서 인지하게 되는 하나의 장면은 일반적으로 임의 개수의 프레임들, 더 구체적으로는 유사도가 높은 복수 개의 프레임들로 이루어진 것이다. 한편, 이러한 프레임들은 일반적으로 순서 또는 시간적 위치를 식별 가능하게 하는 프레임 식별자에 의해 구별되긴 하지만, 이러한 프레임 식별자만으로는 해당 프레임이 어떤 장면을 구성하는 프레임인지를 명확히 구별하기가 어려운 한계가 있다. 이에 본 발명에서 제안하고자 하는 것은 도 2의 (b)와 같이 임의 개수의 프레임들, 즉 하나의 장면을 이루는 프레임들을 하나의 클립 유닛으로 분리해 냄으로써 각각의 프레임들이 어떤 장면을 구성하는 프레임인지를 쉽게 식별할 수 있게 하는 것이다. 도 2의 (b)에는 하나의 영상 데이터가 총 5개의 클립 유닛으로 분리된 모습이 도시되어 있는데, 도면에서도 확인할 수 있는 바와 같이 각각의 클립 유닛들은 시청자 입장에서 하나의 장면으로 인식할 수 있는 것에 대응된다. 예를 들어, ①번 클립 유닛은 공연장 내 객석을 비추고 있는 장면으로 총 4개의 프레임들로 이루어진 것이며, ②번 클립 유닛은 공연 중인 가수의 인터뷰 장면을 딴 것으로 총 14개의 프레임들로 이루어진 것이고, ③ 번 내지 ⑤번 클립 유닛 역시 같은 방식으로 하나의 장면이 여러 개의 프레임들로 구성된 모습을 도시하고 있다.
한편, 이렇게 영상 데이터 내에서 복수 개의 클립 유닛들을 어떻게 분리해 낼 것인지, 특히 유사도가 높은 프레임들을 어떻게 구별해 낼 것인지에 대해서는 도 3을 참조하여 살펴보기로 한다.
도 3을 참조할 때, 영상 데이터 처리 방법은 가장 먼저 외부로부터 수신되는 영상 데이터의 프레임들을 추출하는 단계(S101)로부터 시작될 수 있다. 영상 데이터 처리 장치는 외부에서 촬영된 영상을 네트워크를 통해, 또는 메모리 카드 등의 저장 매체를 통해 수신 및 저장(이 때의 저장은 반드시 영구적으로 저장되는 것뿐 아니라, 데이터 처리를 위하여 짧은 시간 동안 임시적으로 저장되는 것까지 포함함) 할 수 있으며, 영상 데이터 처리 장치는 저장된 영상 데이터로부터 임의 개수의 프레임들을 추출해 낼 수 있다. 참고로, 본 S101단계는 영상 데이터를 처리하는 과정에서 가장 처음에만 수행되는 것이며, 본 단계는 후술하게 될 단계들의 원활한 진행을 위하여 영상의 최소 편집 단위, 최소 누적 프레임들, 또는 클립 유닛의 최소 길이를 확보하기 위한 단계임을 이해한다. 또한, 본 단계에서 추출되는 프레임들의 개수는 미리 설정된 것일 수 있으며, 또는 영상 데이터 편집을 수행하는 사용자가 직접 프레임 개수를 입력함으로써 정해질 수도 있다. 예를 들어, 사용자는 영상 데이터 처리 장치에서 제공하는 편집 인터페이스 상에서 최초 클립 유닛을 위한 프레임들을 직접 드래깅 또는 클릭 함으로써 선택할 수 있고, 이 프레임들이 첫 클립 유닛으로 정의되도록 함으로써 S101단계가 진행되도록 할 수 있다.
S101단계 이후에는 앞서 누적된 프레임들에 대한 픽셀 평균값을 산출하는 단계(S102)가 수행된다. 본 단계에서 ‘누적된 프레임들’이란, 최초에는 앞서 S101단계에서 추출된 프레임들을 의미하게 될 것이며, 단계가 반복된 이후부터는 후술하게 될 S107단계에서 추가적으로 산입되는 프레임을 합한 것이 누적 프레임으로 정의될 것이다. 한편, 누적된 프레임들에 대한 픽셀 평균값이란, 각각의 프레임이 포함하는 각 픽셀의 값들을 합친 후, 이에 대한 평균 값을 구한 것을 의미하는 것으로, 예를 들어 3개의 누적 프레임들 내 20X50 자리의 픽셀값이 (100, 100, 100), (102, 100, 102), (104, 100, 107)이라면, 해당 자리의 픽셀 평균값은 (102, 100, 103)이 될 것이다.
S102단계에서 누적된 프레임들의 픽셀 평균값이 산출된 후에는 차순위 프레임과의 픽셀값을 비교하는 단계(S103)가 진행된다. 즉, 본 단계는 누적된 프레임들과 차순위 프레임 간 픽셀값의 유사도가 얼마나 높은지를 보기 위한 단계로, 쉽게 말하자면 누적된 프레임들과 차순위 프레임이 시청자 입장에서 장면이 넘어가는 순간인지를 판별하는 단계로도 이해될 수 있다. 본 단계는 예를 들어 누적 프레임들의 20X50 위치에서의 픽셀 평균값이 (102, 100, 103)일 때에, 차순위 프레임, 즉 상기 누적 프레임들 중 가장 마지막 순위(n번째 프레임)의 프레임보다 하나 순위가 더 뒤에 있는 프레임(n+1번째 프레임)의 20X50 위치에서의 픽셀 평균값과 비교하는 단계로 이해될 수 있다.
비교 결과, 누적 프레임들의 픽셀 평균값과 차순위 프레임의 픽셀값 간 차이가 임계치와 같거나 이보다 큰 경우(S104), 영상 데이터 처리 장치는 위 차순위 프레임이 새로운 장면이 시작되는 순간의 프레임인 것으로 인식하고 앞서 누적된 프레임들까지만을, 즉 차순위 프레임을 제외한 앞선 누적 프레임들을 하나의 클립 유닛으로 정의(S105)한다. 또한, 하나의 클립 유닛이 정의된 이후에는, 상기 차순위 프레임을 첫 누적 프레임으로 삼아 앞선 S102단계부터 반복(S106)된다.
반대로, 누적 프레임들의 픽셀 평균값과 차순위 프레임의 픽셀값 간 차이가 임계치보다 작은 경우(S104), 영상 데이터 처리 장치는 위 차순위 프레임이 기존 누적 프레임들과 동일한 장면의 프레임인 것으로 인식하고 앞서 누적된 프레임들에 위 차순위 프레임을 산입(S107)시키고, 다시 S102단계로 궤환하여 같은 과정을 반복하게 된다.
한편, 상기 S103단계 및 S104단계에는 전술한 비교 과정에 더하여 가장 마지막 순위 프레임(n번째 프레임)과 차순위 프레임(n+1번째 프레임) 간 1:1 비교가 더 실행되고, 이 1:1비교 결과 픽셀값의 차이가 임의의 제2임계치(제2임계치는 앞서 투적 픽셀값과의 비교 단계에서 언급된 임계치와는 상이한 값을 가질 수 있음) 이상인지를 더 판단하는 과정을 추가적으로 포함할 수 있다. 다시 말해, 누적된 프레임의 가장 마지막 프레임과 그 차순위 프레임 간 1:1 픽셀값을 비교하여 그 값이 임계치 이상인지를 더 판단함으로써 누적된 프레임들과 그 차순위 프레임 사이에 확실한 경계가 있음을 다시 한번 확인할 수 있게 한 것이다. 즉, S103단계 및 S104단계에서는 누적 프레임들의 픽셀 평균값이 차순위 프레임의 픽셀값과 비교하여 임계치(제1임계치) 이상일 때(제1조건), 그리고 누적 프레임들 중 가장 마지막 순위 프레임(n번째 프레임)의 픽셀값이 차순위 프레임(n+1번째 프레임)과 비교하여 임계치(제2임계치) 이상일 때(제2조건)에 비로서 현재 누적된 프레임들을 클립 유닛으로 정의하는 S105단계로 진행하도록 구현될 수 있으며, 제1조건 또는 제2조건 중 어느 하나라도 만족하지 못한 경우 S107단계로 진행하여 차순위 프레임을 누적 프레임으로 산입한 채 S102단계부터 다시 과정을 반복하도록 구현될 수 있다.
이처럼 S101단계를 시작으로 S107단계에 이르기까지를 반복하는 경우, 하나의 영상 데이터 내 복수 개의 프레임들은 도 2에서 본 것과 같이 각각의 클립 유닛들로 분리될 수 있으며, 이렇게 분리된 클립 유닛들은 향후 파생 정보들을 만드는 데에, 또는 상기 클립 유닛들을 기반으로 한 새로운 서비스를 제공하는 데에 활용될 수 있다.
도 4는 하나의 영상 데이터로부터 복수 개의 클립 유닛들이 분리된 결과물의 예시를 나타낸 것이다. 도 4의 (a)는 하나의 영상 데이터(TARGET_VIDEO) 내 27개의 프레임이 존재(FRAME NUMBER)한다고 가정할 때에 위 27개의 프레임들이 각각 8개의 클립 유닛(CLIP UNIT NUMBER)으로 분리된 결과를 예시적으로 나타낸 것이다. 한편, 도 4의 (b)는 하나의 영상 데이터 내 복수 개의 클립 유닛들이 분리(CLIP UNIT NUMBER)되어 있을 때, 각 클립 유닛들이 시작되는 시각(START TIME) 및 지속 시간(LASTING TIME)을 메타데이터 형식으로 생성한 것이다. 특히, 도 4(b)와 같은 메타데이터는 영상 데이터 내에서 어느 장면이 언제 시작되고 언제 끝나는지를 파악할 수 있게 하는 것으로, 이를 기반으로 한 파생정보 또는 파생 서비스를 제공하는 데에 유용하게 활용될 수 있는 정보라 할 것이다.
이상 도 2 내지 도 4를 참조하여 하나의 영상 데이터로부터 복수 개의 클립 유닛들을 분리해 내는 과정에 대해 살펴보았다. 이하에서는 영상 데이터 내에 포함된 프레임들, 또는 각 클립 유닛 내 포함된 프레임들로부터 오브젝트를 식별하는 과정에 대해 살펴보기로 한다.
먼저 도 5 내지 도 7을 참조하여 프레임들로부터 인물을 식별하는 과정에 대해 살펴본다.
도 5는 본격적으로 각 프레임 별 인물을 인식하기 이전, 학습을 하는 단계를 나열한 것으로, 먼저 인식의 대상이 되는 인물들의 얼굴 이미지들을 수집하여 얼굴 데이터베이스를 생성하고(S201), 위 얼굴 데이터베이스에 저장되어 있는 얼굴 이미지들을 학습용 장치에 제공함으로써 학습용 장치로 하여금 각각의 인물 얼굴에 대한 학습을 수행하도록 하며(S202), 특히 학습 과정을 통해 각 얼굴 별 특징값을 추출하고 그에 따라 향후 얼굴 인식 시에 비교 기준이 될 레퍼런스(reference) 임베딩을 생성하도록 하는 단계(S203)를 포함할 수 있다. 참고로, 본 설명에서 언급되는 학습용 장치는, 영상 데이터 처리 장치와 동일한 것일 수 있으며, 반드시 동일한 것은 아니라 할지라도 위 단계들을 수행하기 위한 중앙처리유닛 및 메모리를 구비한 하나의 연산 장치로 이해될 수 있다. 도 6에는 다양한 인물들(인물A, B, C)의 다양한 얼굴들이 수집되어 얼굴 데이터베이스에 저장된 모습, 그리고 얼굴 데이터베이스에 저장되어 있는 얼굴 이미지들이 학습용 장치(200)에 학습용 데이터로서 제공되는 모습이 개념적으로 도시되어 있다. 각 인물들의 다양한 얼굴들은, 바람직하게는 네트워크를 통해 접속 가능한 웹 서비스를 통해 검색된 것일 수 있으며, 그 중에서도 특히 대상이 될 인물의 얼굴이 촬영된 것이거나 또는 사용자에 의해 얼굴 부분만 편집된 것일 수 있다.
한편, 상기 학습용 장치(200)에서의 학습은 콘볼루션 신경망을 이용한 것일 수 있다. 콘볼루션 신경망은 심층 신경망의 한 종류로, 2차원의 비주얼 이미지를 분석하는 데에 활용된다. 콘볼루션 신경망을 간단히 설명하면 인풋 이미지가 존재할 때 콘볼루션 신경망은 분별과정을 거쳐 아웃풋 레이블을 생성해 내는데, 예를 들어 콘볼루션 신경망이 트레이닝 과정을 거친 뒤 인풋 이미지가 입력되면 콘볼루션(Convolution) 단계, 풀링(Pooling) 단계, 플래트닝(Flattening) 단계, 풀 컨넥션(Full Connection) 단계를 거쳐 상기 인풋 이미지로부터 다수의 특징(Feature)을 추출하고, 이들 특징들로부터 해당 인풋 이미지를 분석할 수 있게 한 것이다. 본 상세한 설명에서의 얼굴 학습은 획득된 얼굴 이미지들을 위 콘볼루션 신경망을 이용해 피쳐 맵(feature map) 으로 변환하는 단계를 포함할 수 있으며, 이 때 피쳐 맵들로의 변환은 예들 들어, 먼저 416X416X3 픽셀 (RGB 이미지)의 이미지를 416X416X32의 피쳐 맵으로 변환하는 것을 의미할 수 있다. 이 때, 416 X 416은 공간 사이즈(spatial size)를 의미하며, 32는 피쳐 맵의 뎁스(depth)를 의미한다. 한편, 다중의 콘볼루션 연산이 이루어진 이후에는 예를 들어, 13X13X128의 차원을 가지는 피쳐 맵을 결과물로서 얻을 수 있는데, 이 때 픽셀의 값과 뎁스(depth)는 콘볼루션 변환 시 어떤 필터가 사용되는지에 따라 달라질 수 있으며, 이는 사용자에 의해 설정될 수 있다. 참고로, 위 콘볼루션 신경망 및 이를 이용한 피쳐 맵들로의 변환은 하나의 실시예를 설명한 것이며 위 설명 외에 다른 방식에 의한 학습 및 피쳐 맵으로의 변환도 가능함을 이해한다.
다른 한편, 상기 각 얼굴 별 특징값을 추출하고 레퍼런스 임베딩을 생성하는 단계에는, 앞서 변환된 피쳐 맵들을 이용하여 얼굴 영역을 정렬하는 과정 및 정렬된 얼굴 영역을 레퍼런스 임베딩으로 변환하는 과정을 포함할 수 있다. 얼굴 영역의 정렬은 얼굴 영역을 크기변환, 회전, 위치이동 시킴으로써 이루어질 수 있으며, 특히 얼굴 영역이 이미지 내에서 정면을 향하지 않고 있거나 기울어져 있는 경우 활용될 수 있다. 정렬된 얼굴 영역을 레퍼런스 임베딩으로 변환하는 과정은 얼굴 영역 내 포함되어 있는 특징들을 기 설정된 개수의 차원 벡터로 나타낸다는 것을 의미하는데, 이는 곧 얼굴 영역을 기 설정된 개수의 실수로 나타낸다는 것으로도 이해될 수 있다. 예를 들어, 피쳐 맵들로부터 얼굴 영역 내 특징들이 추출되고 정렬이 된 후, 상기 얼굴 영역은 128개 차원의 특징벡터, 즉 128개의 실수로 이루어진 임베딩 또는 임베딩 벡터(E∈R128; E는 128차원의 특징벡터를 의미함)로 변환될 수 있으며, 나아가 상기 128개의 실수는 행렬 형태로 배열될 수 있다.
다음으로, 도 7은 앞서 학습용 장치의 학습이 충분히 이루어져 있음을 전제로, 각 프레임 내에 존재하는 얼굴을 식별해 냄으로써 최종적으로는 어떤 인물이 상기 프레임 내에 존재하는지를 식별하는 단계들을 도시한 것이다.
본 발명에 따른 영상 데이터 처리 방법 중 특히 프레임 내로부터 인물을 식별하는 방법은 가장 먼저 프레임 내로부터 적어도 하나 이상의 얼굴 영역을 식별하는 단계(S211)로부터 시작된다. 어느 임의의 이미지로부터 인물의 얼굴이 존재하는 부분만 식별하는 기술에 대해서는 이미 공지된 기술들이 존재하므로 본 단계에 대해서는 자세한 설명을 생략하기로 한다. 본 단계에서는 반드시 어느 하나의 얼굴 영역만을 식별해 낼 수 있는 것은 아니며 하나의 프레임 내에 둘 이상의 인물들이 포함되어 있는 경우 복수의 인물들에 대한 얼굴 영역들도 식별해 낼 수 있다.
S211단계에서 적어도 하나 이상의 얼굴 영역이 식별된 후, 각각의 얼굴 영역에 대해서는 정렬 단계 및 개별 임베딩 생성 단계(S212)가 수행된다. 본 단계는 앞서 도 5에서 설명한 S203단계와 유사한 단계로, S203단계가 미리 수집되어 저장되어 있던 얼굴 이미지들을 대상으로 한 것이었다면, 본 S212단계에서는 현재 처리의 대상이 되고 있는 프레임 내로부터 추출된 얼굴 영역을 대상으로 한다는 점에서 차이가 있을 뿐, S203단계와 S212단계는 그 과정이 매우 유사함을 이해한다. 참고로, 본 단계에서는 '개별 임베딩'이라는 용어를 사용하였는데, 해당 용어는 각 프레임 내로부터 추출된 얼굴 영역에 개별적으로 대응되는 임베딩이라는 것을 강조하기 위한 것임을 이해한다.
한편, S212단계에서 개별 임베딩이 생성된 후에는, 이미 앞서 학습에 의해 생성되어 있는 레퍼런스 임베딩과 상기 개별 임베딩을 비교하고, 이 비교 과정을 통해 해당 프레임 내에 어떤 인물이 포함되어 있는지 가장 유사한 인물을 예측하는 단계(S213)가 수행된다. 본 단계는 레퍼런스 임베딩과 개별 임베딩의 벡터를 비교함으로써 이루어질 수 있다. 앞서에서는 하나의 얼굴 이미지가 기 설정되어 있는 개수의 차원 벡터로 표시될 수 있다는 점에 대해 설명하였는데, 본 단계는 이렇게 표시될 수 있는 레퍼런스 임베딩과 개별 임베딩 간의 벡터 비교가 이루어질 수 있는 것이다. 구체적으로, S213단계는 개별 임베딩의 벡터(특징벡터)를 앞서 기 생성되어 있는 여러 인물들의 레퍼런스 임베딩과 대조하여 상기 개별 임베딩이 어떤 인물의 레퍼런스 임베딩과 가장 유사한지 유사도를 연산하고, 그 연산결과에 따라 해당 얼굴 영역이 어떤 인물과 가장 가까운 것인지를 예측하는 단계로 이해될 수 있다. 한편, 상기 유사도는 아래와 같은 수식을 이용해 연산될 수 있다.
[수식1]
Figure pat00001
상기 수식1에서 DBi는 기 저장된 레퍼런스 임베딩의 특징벡터를 나타내고, E는 앞서 얻은 개별 임베딩의 특징벡터를 의미한다.
한편, 개별 프레임 내에 어떤 인물이 존재하는지 또는 클립 유닛 내에 어떤 인물들이 존재하는지를 식별하는 것은 앞서 설명한 S213단계를 모든 프레임들에 대하여 반복 수행하는 것만으로도 가능하다 할 것이다. 그러나, 학습 및 임베딩의 특징벡터들을 비교하는 것만으로는 오브젝트(인물) 식별력의 신뢰도가 낮을 수 있는데, 오브젝트(인물) 식별력을 높이기 위하여 본 발명에서는 추가적으로 후술하게 될 단계들을 더 수행할 수 있다.
즉, 본 발명에서는 S214단계 내지 S215단계를 수행함으로써 각 프레임 내에 어떤 인물들이 예측되었는지에 대한 클러스터링을 수행하게 되는데, 구체적으로 S214단계는 전체 프레임(바람직하게는 클립 유닛 내 포함된 프레임들 전체)에 대하여 위 S211단계 내지 S213단계를 반복하고, 각 프레임에 대하여 예측된 결과를 클러스터링하는 단계이고, S215단계는 이미 임베딩 특징벡터 기반으로 예측된 결과에 상기 클러스터링 기반의 보정을 더 함으로써 각 프레임 내에 포함된 오브젝트(인물)의 예측 신뢰율을 높이는 단계로 이해될 수 있다. S215단계에서의 클러스터링 기반 보정이란, 예를 들어 임베딩의 특징벡터를 비교하여 예측된 임의 프레임 내 인물이 A였었는데, 해당 프레임이 속해 있는 클립 유닛 내 대다수의 프레임에 대해서는 인물 B로 예측된 경우, 영상 데이터 처리 장치로서는 상기 임베딩의 특징벡터에 의해 예측된 인물A보다는 클러스터링에 의해 획득한 정보로부터 인물B가 예측 신뢰율이 더 높은 것으로 판단하여, 예측 결과를 A로부터 B로 보정하는 것을 의미한다. 더 구체적인 예로, 임베딩의 특징벡터를 비교하여 프레임#1, 프레임#2, 프레임#3, 프레임#4, 프레임#6, 프레임#7, 프레임#8 내 인물이 B로 예측되었고, 프레임#5 내 인물은 A로 예측되었는데, 프레임#1 내지 프레임#8까지가 비슷한 엠비딩 특징벡터를 가지는 것들로서 하나의 클러스터로 구성되고, 나머지 프레임#9부터는 또 다른 클러스터로 구성되었다고 가정할 때에, 상기 프레임#5 내 인물은 클러스터링 기반 보정에 의해 B라는 인물일 가능성이 더 높을 것으로 예측하여 프레임#5의 인물을 B로 보정하는 것을 의미한다.
한편, S214 및 S215단계 이후, 영상 데이터 처리 장치는 각 프레임 별로 어떤 오브젝트(인물)가 포함되어 있는지에 대한 인물 메타데이터를 생성 및 저장할 수 있으며(S216), 이러한 인물 메타데이터가 생성 및 저장된 이후에는 각 클립 유닛 내에 어떤 인물이 포함되어 있는지에 대한 최종 식별이 이루어지게 된다. (S217)
이상 도 5 내지 도 7을 참조하여 영상 데이터로부터 인물을 식별하는 방법에 대해 살펴보았다.
도 8 내지 도 10은 영상 데이터 내에 포함된 사물을 인식하는 방법을 설명하기 위한 도면이다.
먼저 도 8은 사전에 사물 인식을 위한 학습을 하는 과정을 도시한 것인데, 도 8을 참조할 때 사물 인식에서의 학습은 사물 인식 학습 및 사물 분류 학습으로 나뉘어 이루어질 수 있다. 도 8의 (a)는 사물 인식 학습 과정을 순서대로 도시한 것으로, 이에 따르면 특정 사물군 이미지를 로드(load)하는 단계(S301), 특정 사물의 위치 정보를 기록하는 단계(S302), 및 사물 인식 모델에 상기 기록된 정보를 학습데이터로 인가하는 단계(S303)가 포함될 수 있다. 쉽게 말해 도 8의 (a)에 도시된 방법은 기 수집된 복수 개의 이미지(사진)들로부터 어느 임의의 사물의 존재가 이미지 내에서 존재하는 것을 인식하고 이 사물이 존재하는 영역만을 추출해 내는 과정을 어떻게 수행할 것인지를 미리 학습시키는 방법에 관한 것이다. 참고로, 본 상세한 설명에서는 수집된 이미지들 내에 임의의 사물이 존재하는 '위치 정보'를 기록하고 이 위치 정보를 포함시켜 학습데이터로 인가하는 실시예에 대해 설명하였으나, 반드시 사물의 위치 정보가 아니라 하더라도 사물의 존재 여부를 인식해 낼 수 있는 한 다른 파라미터들이 더 존재할 수 있음을 이해해야 할 것이다. 도 9의 (a)에는 사물 인식 학습을 이해하기 위한 개념도가 도시되어 있다. 도 9의 (a)를 참조할 때 수집된 이미지들 내에는 사물(화장품)이 포함될 수 있으며, 각각의 이미지 내 사물의 위치 정보가 기록될 수 있고, 이렇게 기록된 각 사물 별 위치 정보는 학습용 장치 쪽으로 학습용 데이터로서 인가될 수 있다.
한편, 도 8의 (b)는 사물을 분류하기 위한 학습 과정을 도시한 것으로, 이에 따르면 특정 사물의 이미지를 로드하는 단계(S304), 사물 영역만 추출하는 단계(S305), 그리고 추출된 사물 영역을 사물 분류 모델에 학습 데이터로 인가하는 단계(S306)가 포함될 수 있다. 사물을 분류하기 위한 학습은, 하나의 사물에 대한 여러 장의 이미지(사진)들을 수집하고 해당 사진들이 어느 특정 사물임을 학습시킴으로써 향후 영상 데이터 처리 장치로 하여금 어떤 프레임 내에서 사물을 인식하였을 경우 해당 사물이 어떤 사물인지를 분류할 수 있게끔 하기 위한 과정으로 이해될 수 있다. 도 9의 (b)는 사물 분류를 위한 학습 과정을 개념적으로 도시한 것으로, 여러 종류의 사물들에 대한 이미지들을 사전에 수집하고, 각각의 이미지들이 어떤 사물에 대한 것임을 학습용 장치로 하여금 인식하게 함으로써 학습이 이루어짐을 알 수 있다.
참고로, 위 사물 분류 학습 과정에서는 앞서 인물에 대한 학습 과정에서 설명하였던 콘볼루션 신경망이 활용될 수 있으며, 또한 각각의 사물들에 대한 특징 추출 및 레퍼런스 임베딩 생성 과정이 포함될 수 있다. 그 과정은 앞서 설명한 것과 유사하므로 여기서는 자세한 설명을 생략하기로 한다.
도 10은 위 학습 결과를 토대로 현재 수신된 영상 데이터 내에 어떤 사물이 포함되어 있는지를 예측 또는 식별하는 방법을 도시한 것이다.
프레임 내 사물을 식별하는 방법은 가장 먼저 프레임 내 사물 군을 식별하는 단계(S311)로부터 시작된다. 본 단계는 각 프레임 내에 어떤 사물들이 존재하는 것으로 인식되었다면 해당 사물들이 존재하는 영역을 식별해 내는 단계로도 이해될 수 있으며, 프레임 내에 복수 개의 사물들이 존재한다면 이들 모두를 식별하게 된다.
S311단계 이후에는 각각의 식별된 사물들에 대한 특징 추출 및 개별 임베딩을 생성하는 단계(S312)가 수행된다. 본 단계는 앞서 인물을 식별하는 방법에서 설명하였던 S212단계와 유사한 것이며, 다만 본 단계에서의 개별 임베딩이란 '사물'에 대한 개별 임베딩임을 이해한다.
S312단계 이후에는 앞서 학습에 의해 생성 및 저장되어 있던 레퍼런스 임베딩과 상기 개별 임베딩을 비교하는 단계, 즉 레퍼런스 임베딩의 특징벡터와 개별 임베딩의 특징벡터를 비교하고, 이를 통하여 해당 프레임 내에서 인식된 사물이 어떤 사물인지를 예측 또는 식별하는 단계가 수행될 수 있다. (S313) 본 단계 역시 앞서 인물을 식별하는 방법 중 S213단계와 유사한 것이므로 여기서는 자세한 설명을 생략하기로 한다.
한편, 각 프레임 내 포함된 사물이 식별된 후에는 각 프레임 별로 사물에 대한 메타데이터(사물 메타데이터)가 저장(S314)되고, 이를 통하여 최종적으로는 클립 유닛 내에 포함된 사물이 어떤 것인지를 식별(S315)할 수 있게 된다.
이상 도 8 내지 도 10을 참조하여 영상 데이터 처리 방법 중 사물을 식별하는 방법에 대하여 살펴보았다.
도 11 및 도 12는 영상 데이터 처리 방법 중 특히 행동을 식별하는 것과 관련된 과정들을 도시한 것으로, 구체적으로 도 11은 행동 인식을 위해 사전에 학습을 하는 과정을, 도 12는 영상 데이터로부터 행동은 인식하는 과정을 도시한 것이다.
먼저 도 11을 참조할 때, 행동 인식을 위한 사전 학습 과정에는 특정 행동에 대한 영상 데이터를 로드하는 단계(S401), 특정 행동에 대한 시간 위치 정보를 기록하는 단계(S402), 그리고 연속된 프레임을 행동 인식 모델에 학습 데이터로 인가하는 단계(S403)를 포함할 수 있다. 행동이란 연속적인 동작들로부터 구분될 수 있는 것이기에 하나의 프레임만으로는 행동을 식별해 낼 수 없으며, 이에 영상 데이터로부터 행동을 식별해 내기 위해서는 반드시 복수 개의 프레임들을 대상으로 학습을 시키는 과정이 필요하며, 실제 식별 단계에서도 역시 복수 개의 프레임들을 비교함으로써 특정 행동이 식별될 수 있다. 특히, 본 실시예에서는 프레임 단위의 메타데이터가 아닌 복수 개의 프레임들을 포함하는 (클립) 유닛 단위의 메타데이터를 참조하게 됨을 이해한다. 한편, 본 상세한 설명에서는 사전에 행동 식별을 위한 학습을 시킴에 있어 특정 행동에 대한 시간 위치 정보를 기록해 두는 것을 하나의 예로 들어 설명하였으나, 특정 행동을 다른 행동과 구별할 수 있는 한 또 다른 정보가 기록될 수 있음을 이해한다.
한편, 도 12는 영상 데이터 처리 장치가 외부로부터 영상 데이터를 수신하였을 때, 해당 영상 데이터 내 복수의 프레임들로부터 행동을 식별해 내는 과정을 도시한 것이다. 도 12를 참조할 때, 식별 방법에는 복수 개의 프레임들, 바람직하게는 복수 개의 연속된 프레임들을 수신하는 단계(S411), 복수의 프레임들로부터 행동을 식별하는 단계(S412), 그리고 상기 식별된 행동에 대한 메타데이터(행동 메타데이터)를 저장하는 단계(S413)가 포함될 수 있다. 도 13은 두 인물이 포옹하는 장면을 연속된 프레임으로 나타낸 것으로, 앞서 설명한 행동 식별 방법에서는 도 13에서와 같이 연속된 프레임들을 기반으로 영상 데이터를 처리하는 과정이 수반되는 것이 바람직하다.
도 14 및 도 15는 본 발명에 따른 영상 데이터 처리 방법 중 특히 소리를 식별해 내는 과정을 도시한 것이다.
먼저 도 14는 소리를 식별해 내기에 앞서 사전에 소리 식별을 위한 학습을 수행하는 단계를 도시한 것으로, 여기에는 수집된 영상으로부터 특정 소리에 대한 시간 위치 정보를 기록하고 소리 데이터를 분리하는 단계(S501), 그리고 분리된 소리 데이터들을 학습용 장치에 학습용 데이터로서 인가하는 단계(S502) 및 학습에 따라 각각의 소리에 대한 레퍼런스 특징을 생성하는 단계(S503)를 포함할 수 있다.
다음으로 도 15는 영상으로부터 소리를 식별해 내는 과정을 도시한 것으로, 여기에는 외부로부터 수신된 영상 데이터 내에서 연속적인 소리 신호를 샘플링하는 단계(S511), 샘플링 한 각각의 소리 프레임으로부터 소리의 특징을 추출하는 단계(S512), 추출한 소리의 특징과 앞서 학습 과정에서 생성된 레퍼런스 특징들 간의 유사도를 측정함으로써 해당 소리 프레임 내에 포함된 소리가 어떤 것인지를 예측 또는 식별해 내는 단계(S513), 그리고 예측 또는 식별된 소리에 대한 메타데이터를 생성하는 단계(S514)를 포함할 수 있다. 이 때, 상기 S512단계에서는 소리의 특징을 추출할 때에 바람직하게는 MFCC(Mel Frequency Cepstral Coefficient)를 추출할 수 있으며, 이를 통해 각 소리의 특징을 추출해 낼 수 있다.
이상 본 발명에 따른 영상 데이터를 처리하는 방법, 그 중에서도 특히 영상 데이터로부터 복수 개의 클립 유닛들을 분리하는 방법, 각 프레임으로부터 임의의 오브젝트를 식별해 내는 방법에 대해 살펴보았다.
한편, 본 명세서에 첨부된 도면에 도시된 블록도와 순서도에 포함된 본 발명의 기술적 특징을 실행하는 구성들은 상기 구성들 사이의 논리적인 경계를 의미한다. 그러나 소프트웨어나 하드웨어의 실시 예에 따르면, 도시된 구성들과 그 기능들은 독립형 소프트웨어 모듈, 모놀리식 소프트웨어 구조, 코드, 서비스 및 이들을 조합한 형태로 실행되며, 저장된 프로그램 코드, 명령어 등을 실행할 수 있는 프로세서를 구비한 컴퓨터에서 실행 가능한 매체에 저장되어 그 기능들이 구현될 수 있으므로 이러한 모든 실시 예 역시 본 발명의 권리범위 내에 속하는 것으로 보아야 할 것이다.
따라서, 첨부된 도면과 그에 대한 기술은 본 발명의 기술적 특징을 설명하기는 하나, 이러한 기술적 특징을 구현하기 위한 소프트웨어의 특정 배열이 분명하게 언급되지 않는 한, 단순히 추론되어서는 안 된다. 즉, 이상에서 기술한 다양한 실시 예들이 존재할 수 있으며, 그러한 실시 예들이 본 발명과 동일한 기술적 특징을 보유하면서 일부 변형될 수 있으므로, 이 역시 본 발명의 권리범위 내에 속하는 것으로 보아야 할 것이다.
또한, 순서도의 경우 특정한 순서로 도면에서 동작들을 묘사하고 있지만, 이는 가장 바람직한 결과를 얻기 위하여 도시된 것으로서, 도시된 특정한 순서나 순차적인 순서대로 그러한 동작들을 반드시 실행되어야 한다거나 모든 도시된 동작들이 반드시 실행되어야 하는 것으로 이해되어서는 안 된다. 특정한 경우, 멀티 태스킹과 병렬 프로세싱이 유리할 수 있다. 아울러, 이상에서 기술한 실시형태의 다양한 시스템 컴포넌트의 분리는 그러한 분리를 모든 실시형태에서 요구하는 것으로 이해되어서는 안되며, 설명한 프로그램 컴포넌트와 시스템들은 일반적으로 단일의 소프트웨어 제품으로 함께 통합되거나 다중 소프트웨어 제품에 패키징될 수 있다는 점을 이해하여야 한다.
이와 같이, 본 명세서는 그 제시된 구체적인 용어에 의해 본 발명을 제한하려는 의도가 아니다. 따라서, 이상에서 기술한 실시 예를 참조하여 본 발명을 상세하게 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자라면 본 발명의 범위를 벗어나지 않으면서도 본 실시 예들에 대한 개조, 변경 및 변형을 가할 수 있다. 본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 등가개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 권리범위에 포함되는 것으로 해석되어야 한다.
영상 데이터 처리 장치 100
학습용 장치 200

Claims (14)

  1. 영상 데이터를 처리하는 방법에 있어서,
    (a) 상기 영상 데이터를 구성하는 복수의 프레임들 중 유사도가 높은 프레임들을 하나의 클립 유닛으로 정의하는 단계;
    (b) 상기 클립 유닛 내에 포함된 프레임들로부터 임의의 오브젝트를 식별하는 단계; 및
    (c) 식별된 오브젝트들 중 특정 오브젝트가 상기 프레임들 중 기 설정된 개수 이상의 프레임들 내에서 식별된 경우, 상기 특정 오브젝트가 상기 클립 유닛 내에 존재하는 것으로 판단하는 단계;
    를 포함하는,
    영상 데이터를 처리하는 방법.
  2. 제1항에 있어서,
    상기 (a)단계에서의 유사도는, 각 프레임들이 포함하는 픽셀값을 기준으로 연산되는 것을 특징으로 하는,
    영상 데이터를 처리하는 방법.
  3. 제2항에 있어서,
    상기 (a)단계는,
    (a-1) 기 누적된 누적 프레임들의 픽셀 평균값을 산출하는 단계;
    (a-2) 차순위 프레임 - 상기 차순위 프레임은 상기 누적 프레임들 중 마지막 프레임의 다음 순위 프레임을 의미함 - 의 픽셀값과 상기 산출된 픽셀 평균값을 비교하는 단계; 및
    (a-3) 비교 결과 상기 차순위 프레임의 픽셀값과 상기 픽셀 평균값의 차이가 임계치 이하인 경우, 상기 차순위 프레임을 누적 프레임에 추가한 뒤 상기 (a-1)단계로 궤환하고, 차이가 임계치를 초과한 경우 현재 누적된 누적 프레임들까지를 하나의 클립 유닛으로 정의하는 단계;
    를 포함하는,
    영상 데이터를 처리하는 방법.
  4. 제3항에 있어서,
    상기 (b)단계는,
    각 프레임에 대하여 식별된 오브젝트의 메타데이터를 저장하는 단계를 포함하는 것을 특징으로 하는,
    영상 데이터를 처리하는 방법.
  5. 제2항에 있어서,
    상기 오브젝트는 인물, 사물, 행동, 또는 소리인 것을 특징으로 하는,
    영상 데이터를 처리하는 방법.
  6. 제5항에 있어서,
    상기 오브젝트는 인물이고,
    상기 (b)단계는,
    (b-11) 프레임 내에서 적어도 하나의 얼굴 영역을 식별하는 단계;
    (b-12) 식별된 얼굴 영역을 정렬하고 각각의 얼굴 영역에 대응되는 임베딩을 생성하는 단계;
    (b-13) 각 얼굴 영역에 대응되는 임베딩의 벡터와 기 저장된 레퍼런스 임베딩의 벡터를 비교하여 가장 유사한 인물을 예측하는 단계;
    를 포함하는 것을 특징으로 하는,
    영상 데이터를 처리하는 방법.
  7. 제6항에 있어서,
    상기 (b)단계는,
    (b-14) 상기 (b-11)단계 내지 (b-13)단계를 반복하여 복수의 프레임들로부터 예측된 인물에 대한 정보를 클러스터링 하는 단계;
    (b-15) 클러스터링 된 정보를 참조하여 상기 (b-13) 단계에서 예측된 각 프레임 별 인물이 올바르게 예측된 인물인지를 확인하는 단계;
    를 더 포함하는 것을 특징으로 하는,
    영상 데이터를 처리하는 방법.
  8. 제6항에 있어서,
    상기 (b)단계는,
    각 프레임에 대하여 식별된 인물의 메타데이터를 저장하는 단계;를 더 포함하는 것을 특징으로 하는,
    영상 데이터를 처리하는 방법.
  9. 제5항에 있어서,
    상기 오브젝트는 사물이고,
    상기 (b)단계는,
    (b-21) 프레임 내에서 사물군을 식별하는 단계;
    (b-22) 식별된 사물군 내 사물들에 대한 특징을 추출하고, 각각의 사물들에 대응되는 임베딩을 생성하는 단계;
    (b-23) 각 사물에 대응되는 임베딩의 벡터와 기 저장된 레퍼런스 임베딩의 벡터를 비교하여 가장 유사한 사물을 예측하는 단계;
    를 포함하는 것을 특징으로 하는,
    영상 데이터를 처리하는 방법.
  10. 제9항에 있어서,
    상기 (b)단계는,
    각 프레임에 대하여 식별된 사물의 메타데이터를 저장하는 단계;를 더 포함하는 것을 특징으로 하는,
    영상 데이터를 처리하는 방법.
  11. 제5항에 있어서,
    상기 오브젝트는 행동이고,
    상기 (b)단계는,
    (b-31) 적어도 2 이상의 연속된 프레임들로부터 인물의 행동을 식별하는 단계;
    (b-32) 적어도 2 이상의 연속된 프레임들에 대하여 상기 식별된 행동에 대한 메타데이터를 저장하는 단계;를 포함하는 것을 특징으로 하는,
    영상 데이터를 처리하는 방법.
  12. 제5항에 있어서,
    상기 오브젝트는 소리이고,
    상기 (b)단계는,
    (b-41) 상기 영상 데이터에 포함된 소리신호를 임의 주기마다 샘플링 하는 단계;
    (b-42) 샘플링 한 각 소리신호에 대한 특징을 추출하는 단계;
    (b-43) 추출한 특징과 기 저장된 레퍼런스 간 유사도를 연산하고, 상기 유사도가 임계치 이상이면 상기 소리신호가 상기 기 저장된 레퍼런스와 대응되는 소리인 것으로 예측하는 단계;
    를 포함하는 것을 특징으로 하는,
    영상 데이터를 처리하는 방법.
  13. 제12항에 있어서,
    기 정해진 시간 동안 특정 소리로 연속적으로 예측될 경우, 상기 시간에 대응되는 구간을 소리구간으로 인식하고, 당해 구간에 대하여 소리 메타데이터를 저장하는 단계;를 더 포함하는 것을 특징으로 하는,
    영상 데이터를 처리하는 방법.
  14. 영상 데이터를 처리하는 방법을 실행시키기 위한 명령어들이 저장된 컴퓨터 판독 가능한 기록 매체에 있어서,
    상기 영상 데이터를 처리하는 방법은,
    (a) 상기 영상 데이터를 구성하는 복수의 프레임들 중 유사도가 높은 프레임들을 하나의 클립 유닛으로 정의하는 단계;
    (b) 상기 클립 유닛 내에 포함된 프레임들로부터 임의의 오브젝트를 식별하는 단계; 및
    (c) 식별된 오브젝트들 중 특정 오브젝트가 상기 프레임들 중 기 설정된 개수 이상의 프레임들 내에서 식별된 경우, 상기 특정 오브젝트가 상기 클립 유닛 내에 존재하는 것으로 판단하는 단계;
    를 포함하는 것을 특징으로 하는,
    컴퓨터 판독 가능한 기록 매체.
KR1020190121312A 2019-10-01 2019-10-01 영상 데이터를 처리하는 방법 및 이를 실행시키기 위한 명령어들이 저장된 컴퓨터 판독 가능한 기록 매체 KR102264744B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190121312A KR102264744B1 (ko) 2019-10-01 2019-10-01 영상 데이터를 처리하는 방법 및 이를 실행시키기 위한 명령어들이 저장된 컴퓨터 판독 가능한 기록 매체

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190121312A KR102264744B1 (ko) 2019-10-01 2019-10-01 영상 데이터를 처리하는 방법 및 이를 실행시키기 위한 명령어들이 저장된 컴퓨터 판독 가능한 기록 매체

Publications (2)

Publication Number Publication Date
KR20210039033A true KR20210039033A (ko) 2021-04-09
KR102264744B1 KR102264744B1 (ko) 2021-06-14

Family

ID=75444010

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190121312A KR102264744B1 (ko) 2019-10-01 2019-10-01 영상 데이터를 처리하는 방법 및 이를 실행시키기 위한 명령어들이 저장된 컴퓨터 판독 가능한 기록 매체

Country Status (1)

Country Link
KR (1) KR102264744B1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10112835A (ja) * 1996-10-04 1998-04-28 Matsushita Electric Ind Co Ltd 映像要約方法および映像表示方法
KR20070118635A (ko) * 2005-03-10 2007-12-17 코닌클리케 필립스 일렉트로닉스 엔.브이. 오디오 및/또는 비주얼 데이터의 서머라이제이션
KR20150022088A (ko) * 2013-08-22 2015-03-04 주식회사 엘지유플러스 컨텍스트 기반 브이오디 검색 시스템 및 이를 이용한 브이오디 검색 방법
KR20170120095A (ko) 2014-12-19 2017-10-30 탈레스 3-d 이미징에 의해 장면의 오브젝트들의 구별 및 식별을 위한 방법
KR101994592B1 (ko) * 2018-10-19 2019-06-28 인하대학교 산학협력단 비디오 콘텐츠의 메타데이터 자동 생성 방법 및 시스템

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10112835A (ja) * 1996-10-04 1998-04-28 Matsushita Electric Ind Co Ltd 映像要約方法および映像表示方法
KR20070118635A (ko) * 2005-03-10 2007-12-17 코닌클리케 필립스 일렉트로닉스 엔.브이. 오디오 및/또는 비주얼 데이터의 서머라이제이션
KR20150022088A (ko) * 2013-08-22 2015-03-04 주식회사 엘지유플러스 컨텍스트 기반 브이오디 검색 시스템 및 이를 이용한 브이오디 검색 방법
KR20170120095A (ko) 2014-12-19 2017-10-30 탈레스 3-d 이미징에 의해 장면의 오브젝트들의 구별 및 식별을 위한 방법
KR101994592B1 (ko) * 2018-10-19 2019-06-28 인하대학교 산학협력단 비디오 콘텐츠의 메타데이터 자동 생성 방법 및 시스템

Also Published As

Publication number Publication date
KR102264744B1 (ko) 2021-06-14

Similar Documents

Publication Publication Date Title
EP4006772A1 (en) Video processing method and apparatus, and electronic device and storage medium
CN111062871B (zh) 一种图像处理方法、装置、计算机设备及可读存储介质
US8316301B2 (en) Apparatus, medium, and method segmenting video sequences based on topic
JP4337064B2 (ja) 情報処理装置、情報処理方法、およびプログラム
US8467610B2 (en) Video summarization using sparse basis function combination
CN104508682B (zh) 使用群组稀疏性分析来识别关键帧
JP4545641B2 (ja) 類似画像検索方法,類似画像検索システム,類似画像検索プログラム及び記録媒体
US8467611B2 (en) Video key-frame extraction using bi-level sparsity
US20120002868A1 (en) Method for fast scene matching
US8391355B2 (en) Method and device for online dynamic semantic video compression and video indexing
CN112100438A (zh) 一种标签抽取方法、设备及计算机可读存储介质
CN111209897B (zh) 视频处理的方法、装置和存储介质
CN110619284B (zh) 一种视频场景划分方法、装置、设备及介质
JP2011505601A (ja) 映像処理方法および映像処理装置
JP2017168057A (ja) 画像分類装置、画像分類システム及び画像分類方法
CN114299321A (zh) 视频分类方法、装置、设备及可读存储介质
CN112699758A (zh) 基于动态手势识别的手语翻译方法、装置、计算机设备及存储介质
EP2122623A2 (en) Analysing video material
CN113825012B (zh) 视频数据处理方法和计算机设备
CN111488813A (zh) 视频的情感标注方法、装置、电子设备及存储介质
JP5644505B2 (ja) 照合加重情報抽出装置
KR102264744B1 (ko) 영상 데이터를 처리하는 방법 및 이를 실행시키기 위한 명령어들이 저장된 컴퓨터 판독 가능한 기록 매체
CN114329050A (zh) 视觉媒体数据去重处理方法、装置、设备和存储介质
WO2003105489A1 (en) Method and device for online dynamic semantic video compression and video indexing
Bailer et al. Detecting and clustering multiple takes of one scene

Legal Events

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