KR102343407B1 - 음성 및 영상 정보를 활용한 의미있는 구간을 검출하기 위한 방법 및 이를 위한 장치 - Google Patents

음성 및 영상 정보를 활용한 의미있는 구간을 검출하기 위한 방법 및 이를 위한 장치 Download PDF

Info

Publication number
KR102343407B1
KR102343407B1 KR1020210074921A KR20210074921A KR102343407B1 KR 102343407 B1 KR102343407 B1 KR 102343407B1 KR 1020210074921 A KR1020210074921 A KR 1020210074921A KR 20210074921 A KR20210074921 A KR 20210074921A KR 102343407 B1 KR102343407 B1 KR 102343407B1
Authority
KR
South Korea
Prior art keywords
section
information
caption information
caption
similarity score
Prior art date
Application number
KR1020210074921A
Other languages
English (en)
Other versions
KR20210075924A (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 KR1020210074921A priority Critical patent/KR102343407B1/ko
Publication of KR20210075924A publication Critical patent/KR20210075924A/ko
Application granted granted Critical
Publication of KR102343407B1 publication Critical patent/KR102343407B1/ko

Links

Images

Classifications

    • G06K9/00744
    • G06K9/00765
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/46Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/40Scenes; Scene-specific elements in video content
    • G06V20/49Segmenting video sequences, i.e. computational techniques such as parsing or cutting the sequence, low-level clustering or determining units such as shots or scenes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4341Demultiplexing of audio and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44008Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

본 발명의 일 실시예에 따라 의미 구간을 추출하기 위한 시스템으로서, 분할된 동영상의 구간에서 의미 구간을 추출하기 위한 구간 결정 엔진을 포함하고, 상기 구간 결정 엔진은: 미리 결정된 수의 연속된 자막정보로 구성된 집합을 자막정보에 기반한 유사도 점수 계산을 통해 하나 이상의 임시 의미 구간으로 저장할 수 있다.

Description

음성 및 영상 정보를 활용한 의미있는 구간을 검출하기 위한 방법 및 이를 위한 장치{Apparatus or Method for Detecting Meaningful Intervals using voice and video information}
본 발명은 음성 및 영상 정보를 활용한 의미있는 구간을 검출하기 위한 방법, 이를 위한 장치 또는 시스템에 관한 것으로서, 보다 정확한 영상 구간을 검출하기 위한 것과 관련된다.
딥러닝의 발전으로 인공지능에 관련된 연구는 나날이 증가하고 있다. 그 중에서도 기계가 인간의 언어를 이해하고, 상황을 인지하고, 더 나아가 상황에 대한 설명이나 배경등을 설명하는 튜링 테스트(Turing Test) 분야는 로보틱스 공학에서 가장 중요한 연구 분야로 자리잡고 있다. 하지만, 튜링 테스트 분야의 연구는 사람의 얼굴이나 사물, 배경등을 인식하는 시각 분야와 음성, 소리 등을 인식하는 청각 분야, 실 세계에 관련된 내용을 연결하여 지식 베이스를 구축하는 세계지식분야 등 연구해야 할 항목들이 유기적으로 복잡하게 이루어져 있고 특히 이러한 연구들을 진행하기 위해서는 의미있는 구간(또는, 의미 구간)(이하, "씬(scene)" 또는 "씬 구간"이라고 표기)을 사람이 개입하여 이벤트의 발생에 따라서 구간을 나눠야 한다. 사람이 개입하여 이벤트의 발생에 따른 씬 구간을 나누는 것은 대체적으로 정확도가 높지만, 영상을 모두 보면서 수행하기 때문에 많은 시간이 소요되고, 개개인마다 동일 이벤트라고 판단하는 기준이 다르기 때문에 동일하게 오류가 발생하기도 한다. 이러한 오류는 다수의 동일한 정보를 구축하는 시각이나 청각 메타데이터와는 다르게 구축되는 개수가 적고, 시계열 데이터의 특성 상 1개의 오류가 발생하면 2~3개의 구간에 영향을 끼치기 때문에 전체적으로 오류율이 크게 올라간다.
따라서, 기 구축된 딥러닝 모델들을 기반으로 음성 정보를 활용하여 영상에서 동일 이벤트로 추정되는 씬 구간을 빠르게 추출하고, 추출된 구간 정보에 영상 정보를 활용하여 검수와 수정을 통하여 자동으로 최종 메타데이터 산출물로 만드는 방법을 제안하고자 한다.
본 발명에서 이루고자 하는 해결하고자 하는 과제들은 상기 해결하고자 하는 과제로 제한되지 않으며, 언급하지 않은 또 다른 과제들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 발명의 일 실시예에 따른 의미 구간을 추출하기 위한 시스템이 제안되며, 상기 시스템은 분할된 동영상의 구간에서 의미 구간을 추출하기 위한 구간 결정 엔진을 포함하고, 상기 구간 결정 엔진은, 기 설정된 수의 연속된 자막정보로 구성된 집합에서 유사도 점수 계산의 시작 자막정보를 설정하고; 상기 집합 내 미리 설정된 수의 순차적 자막정보로 구성된 부분집합에 대해, 상기 부분집합 내 첫번째 자막정보와 나머지 자막정보 각각 간의 유사도 점수를 순차적으로 계산하되, 상기 유사도 점수의 계산은 미리 설정된 점수 이하인 유사도 점수를 갖는 자막정보 쌍의 수가 미리 결정된 수가 될 때까지, 상기 부분집합의 첫번째 자막정보를 상기 시작 자막정보부터 그 다음 자막정보로 순차적으로 변경하면서 수행하고; 상기 유사도 점수를 계산한 마지막 자막정보 쌍 중 시간적으로 후행하는 자막정보를 상기 유사도 점수 계산의 종료 자막정보로 결정하고; 그리고 상기 시작 자막정보 및 상기 종료 자막정보로 정의되는 자막정보 구간의 시간의 길이가 미리 결정된 시간 길이 이상이면, 상기 자막정보 구간을 샷 구간에 매칭하여 상기 임시 의미 구간으로 저장할 수 있다.
본 발명의 또다른 실시예에 따른 컴퓨터 판독가능한 저장 매체에 저장된 컴퓨터 프로그램이 제안되며, 상기 컴퓨터 프로그램은 동영상에서 의미 구간을 추출하기 위한 프로세서에 의해 아래의 단계들을 실행하기 위한 코드들을 포함하며, 상기 단계들은: 메타데이터를 생성해야할 동영상을 등록하거나 분할하는 단계; 상기 등록 또는 분할된 동영상의 자막정보를 자동으로 생성하는 단계; 기 설정된 수의 연속된 자막정보로 구성된 집합에서 유사도 점수 계산의 시작 자막정보를 설정하는 단계; 상기 집합 내 미리 설정된 수의 순차적 자막정보로 구성된 부분집합에 대해, 상기 부분집합 내 첫번째 자막정보와 나머지 자막정보 각각 간의 유사도 점수를 순차적으로 계산하되, 상기 유사도 점수의 계산은 미리 설정된 점수 이하인 유사도 점수를 갖는 자막정보 쌍의 수가 미리 결정된 수가 될 때까지, 상기 부분집합의 첫번째 자막정보를 상기 시작 자막정보부터 그 다음 자막정보로 순차적으로 변경하면서 수행하는 단계; 상기 유사도 점수를 계산한 마지막 자막정보 쌍 중 시간적으로 후행하는 자막정보를 상기 유사도 점수 계산의 종료 자막정보로 결정하는 단계; 및 상기 시작 자막정보 및 상기 종료 자막정보로 정의되는 자막정보 구간의 시간의 길이가 미리 결정된 시간 길이 이상이면, 상기 자막정보 구간을 샷 구간에 매칭하여 상기 임시 의미 구간으로 저장하는 단계를 포함할 수 있다.
추가로 또는 대안으로, 상기 단계들은 상기 집합 중 상기 임시 의미 구간으로 저장되지 않은 나머지 자막정보가 있는 경우, 상기 나머지 자막정보에 대해 상기 유사도 점수 계산을 수행하여 다음 임시 의미 구간의 저장을 시도하는 단계를 포함할 수 있다.
추가로 또는 대안으로, 상기 단계들은: 상기 미리 설정된 점수 이하인 유사도 점수를 갖는 자막정보 쌍의 수가 상기 미리 결정된 수보다 작더라도, 더 이상 유사도 점수 계산을 할 자막정보가 없다면, 상기 유사도 점수 계산을 한 마지막 자막정보 쌍 중 시간적으로 후행하는 자막정보를 임시 의미 구간의 종료 자막정보로 결정하고, 상기 시작 자막정보 및 상기 종료 자막정보로 정의되는 자막정보 구간의 시간의 길이가 상기 미리 결정된 시간 길이 이상이면, 상기 자막정보 구간을 샷 구간에 매칭하여 상기 임시 의미 구간으로 저장하는 단계를 포함할 수 있다.
추가로 또는 대안으로, 상기 유사도 점수 계산을 위해 복수 개의 분석 방식이 사용될 수 있다.
추가로 또는 대안으로, 상기 시작 자막정보 및 상기 종료 자막정보로 정의되는 자막정보 구간의 시간의 길이가 상기 미리 결정된 시간 길이 미만이면, 상기 자막정보 구간은 임시 의미 구간으로 저장되지 않을 수 있다.
추가로 또는 대안으로, 상기 단계들은 상기 저장된 임시 의미 구간 각각에 대해, 해당 임시 의미 구간의 영상정보에 기반한 유사도 점수 계산을 통해 상기 임시 의미 구간을 최종 의미 구간으로 저장하거나, 상기 임시 의미 구간을 추가로 분할한 뒤 상기 최종 의미 구간으로 저장하는 단계를 포함할 수 있다.
추가로 또는 대안으로, 상기 단계들은 상기 유사도 점수 계산을 위해, 해당 임시 의미 구간의 시간적으로 가장 앞선 L개의 샷 구간을 기준 구간으로 설정하고, 상기 기준 구간과 나머지 샷 구간의 유사도를 판단하는 단계를 포함할 수 있다.
추가로 또는 대안으로, 상기 유사도 점수 계산은 상기 L개의 샷 구간 각각과 나머지 샷 구간 사이의, 인물 또는 객체 정보의 유사도 또는 인물 또는 객체의 위치 및 크기 정보의 유사도의 판단을 포함할 수 있다.
추가로 또는 대안으로, 상기 L개의 샷 구간 각각과 나머지 샷 구간 사이의 인물 또는 객체 정보의 유사도 점수가 모두 미리 설정된 기준 점수 미만이고, 상기 L개의 샷 구간 각각과 나머지 샷 구간 사이의 인물 또는 객체의 위치 및 크기 정보의 유사도 점수가 모두 미리 설정된 기준 점수 미만이면, 상기 저장된 임시 의미 구간은 두 개로 분할되고, 상기 저장된 임시 의미 구간이 분할되는 기점은 상기 나머지 샷 구간일 수 있다.
본 발명의 다른 실시예에 따라, 앞서 언급한 컴퓨터 프로그램을 저장하고 있는 컴퓨터 판독가능한 저장 매체가 제안된다.
상기 과제 해결방법들은 본 발명의 실시예들 중 일부에 불과하며, 본원 발명의 기술적 특징들이 반영된 다양한 실시예들이 당해 기술분야의 통상적인 지식을 가진 자에 의해 이하 상술할 본 발명의 상세한 설명을 기반으로 도출되고 이해될 수 있다.
본 발명에 따르면 의미있는 구간의 획득을 객관적인 조건에 따라 수행할 수 있고, 이를 위한 시간도 단축할 수 있는 장점이 있다.
본 발명에서 얻은 수 있는 효과는 이상에서 언급한 효과들로 제한되지 않으며, 언급하지 않은 또 다른 효과들은 아래의 기재로부터 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 명확하게 이해될 수 있을 것이다.
본 발명에 관한 이해를 돕기 위해 상세한 설명의 일부로 포함되는, 첨부 도면은 본 발명에 대한 실시 예를 제공하고, 상세한 설명과 함께 본 발명의 기술적 사상을 설명한다.
도 1은 영상 정보와 음성 정보를 활용한 의미있는 구간 검출 시스템의 구성도이다.
도 2는 동영상 분할 엔진의 구성을 도시한다.
도 3은 데이터 관리 엔진, 메타데이터 오토태깅 엔진의 구성을 도시한다.
도 4는 음성 정보들을 활용한 의미 구간 결정 방법의 순서도를 나타낸다.
도 5는 영상 정보들을 활용한 의미 구간 결정 방법의 순서도를 나타낸다.
이하, 본 발명의 실시예를 첨부한 도면을 참고하여 설명한다. 그러나 본 발명은 본 명세서에서 설명하는 실시예에 한정되지 않으며 여러 가지 다른 형태로 구현될 수 있다. 본 명세서에서 사용되는 용어는 실시예의 이해를 돕기 위한 것이며, 본 발명의 범위를 한정하고자 의도된 것이 아니다. 또한, 이하에서 사용되는 단수 형태들은 문구들이 이와 명백히 반대의 의미를 나타내지 않는 한 복수 형태들도 포함한다.
로보틱스 공학은 공장에서 물건을 자동으로 조립하는 로봇팔, 소프트 아이스크림을 자동으로 판매하는 로봇 등과 같이 아주 간단한 분야부터 정밀 의료를 지원하는 로봇, 공항에서 관광객을 안내하는 로봇 등과 같이 복잡한 판단이 필요한 분야에서도 널리 사용되고 있다. 이러한 로봇틱스 공학의 발전은 인공지능 기술이 비약적으로 향상되는 것이 주요했고, 더 깊숙히 들어가면 다양한 딥러닝 아키텍쳐의 개발에서 비롯되었다고 볼 수 있다. 하지만 아무리 성능이 뛰어난 딥러닝 아키텍쳐가 개발되었다고 하더라도 그에 버금가는 양질의 대량의 메타데이터가 필요하다. 비유하자면 좋은 그릇에 담을 수 있는 양질의 음식이라고 표현할 수 있는데, 여기에서 그릇은 딥러닝 아키텍쳐가 되고, 음식을 메타데이터라고 부를 수 있다. 특히 로보틱스 공학에서 가장 주목 받고 있는 연구 분야인 튜링 테스트 분야는 로봇으로 하여금 인간이 질문을 하면 그 말을 듣고, 연산하여 대답을 하고, 더 나아가 상황에 대한 설명이나 배경지식까지 대답을 할 수 있게 만드는 연구이다. 로보틱스에 활용되는 튜링 테스트의 연구는 굉장히 다양하고 복잡한 연구의 결과들이 조합되어 사용되는데 로봇이 사물이나 인물을 구별하기 위한 시각 엔진, 인간의 언어를 이해하고 내부적으로 연산된 결과를 인간의 언어로 출력하기 위한 음성 엔진과 자연어 처리 엔진, 입력된 시각이나 음성 자료를 기반으로 상황을 추측할 수 있도록 학습되는 상황 지식 엔진, 그리고 현실 세계와 입/출력데이터를 매핑할 수 있도록 구성된 세계 지식 엔진 등 목적에 따라 구성할 수 엔진들의 수는 헤아릴 수 없이 많고, 그에 따라 다양한 형태의 메타데이터가 필요하다.
본질적으로 로봇이 인간의 질문을 이해하고 그에 대한 답변을 하게 만드는 것의 기본은 당연하게도 인간의 언어를 학습하는 것이다. 이를 위해서는 하나의 이벤트를 기반으로 씬 구간 단위로 영상을 분리하는 것이 중요하게 여겨지고 있지만 씬 단위로 영상을 분할하는 작업은 모두 사람이 수동으로 영상을 보면서 작업을 수행해야 한다. 메타데이터를 구축하는데 있어서 사람이 개입하여 수동으로 구축한다는 것은 많은 시간과 비용이 들어간다는 의미이며, 이는 튜링 테스트 분야의 연구 속도를 저하하는 주요 원인 중 하나이다. 이에 이하에서는 음성을 활용하여 의미있는 구간을 나누는 방법, 영상 정보를 활용하여 음성을 활용한 구간의 신뢰도를 보강하여 최종적인 의미있는 구간을 검출하는 방법을 설명한다.
도 1은 영상 정보와 음성 정보를 활용한 의미있는 구간 검출 시스템의 구성도이다. 본 발명에 따른 의미있는 구간 검출 시스템(1)은 동영상 분할 엔진(10), 메타데이터 오토 태깅 엔진(20), 구간 결정 엔진(30), 및 이들과 상호작용하는 데이터 관리 엔진(40)으로 구성된다.
동영상 분할 엔진(10)은 동영상 등록 모듈(11)과 동영상 분할 모듈(12)로 구성된다. 동영상 등록 모듈(11)은 사용자에 의해 선택된 메타데이터 생성이 필요한 영상을 변환하여 등록하고, 등록된 영상을 동영상 DB(41)에 저장한다. 도 2를 참조하면, 동영상 분할 엔진의 기능 또는 동작이 상세하게 설명된다. 동영상 분할 모듈(12)은 동영상 DB(41)에 저장된 동영상을 프레임 단위로 분할할 수 있다.
동영상 분할 모듈(12)은 메타데이터 검수 서버에 저장된 영상의 장면이 변환되는 구간을 추출하고, 해당 구간 별로 10fps(frame per second) 로 이미지를 추출할 수 있다. 여기서, 영상의 장면이 변환되는 구간을 "샷"이라 지칭하도록 한다. 동영상 분할 모듈은 각 구간에 대한 구간 정보를 추출하여 저장할 수 있고, 상기 구간 정보는 해당 구간의 시작 시간, 종료 시간, 샷 인덱스를 포함할 수 있다. 추출된 구간 정보와 이미지는 영상 DB에 저장되고, 저장된 이미지는 메타데이터 오토태깅 엔진에서 사람의 얼굴과 객체를 인식할 때 사용될 수 있다.
메타데이터 오토태깅 엔진(20)은 얼굴인식 모듈(21), 객체인식 모듈(22), 음성인식 모듈(23)로 구성된다. 메타데이터 오토태깅 엔진은 씬 구간 검출을 위한 메타데이터를 자동으로 구축한다. 도 3은 메타데이터 오토태깅 엔진의 구성 및 상호관계를 도시한다.
동영상 분할 엔진에서 분할이 완료된 영상은 메타데이터 오토태깅 엔진에서 얼굴인식 모듈, 객체인식 모듈 및 음성인식 모듈을 실행시켜, 얼굴, 객체 및 음성을 인식한 결과를 음성 DB(42) 또는 영상 DB(43)에 저장시킬 수 있다.
얼굴인식 모듈과 객체인식 모듈은 동영상 분할 엔진을 통해 추출된 이미지를 기반으로 기 학습된 딥러닝 모델을 활용하여 각 이미지 내의 인물의 얼굴과 객체를 인식한다.
인식 모듈의 학습기는 양질의 데이터로 학습할수록 정확도가 높은 결과값을 출력한다.
얼굴인식 모듈, 객체인식 모듈 및 음성인식 모듈을 거친 메타데이터는 편집이 필요할 경우, 메타데이터 검수 엔진(미도시)에서 편집되어 다시 인식 모듈의 학습기의 데이터 셋으로 사용되어 정확도가 더 높은 새로운 모델을 생성할 수 있다.
얼굴인식 모듈은 이미지 내 얼굴의 눈, 코, 입 부분의 특징점을 추출하고, CNN(Convolutional Neural Network) 기반의 모델을 이용하여 벡터화하여 얼굴을 인식한다. 인식된 얼굴에 대해 해당 이미지 위의 해당 위치에 바운딩박스가 표시되고, 해당 위치의 좌표가 추출되고, 인식된 인물명과 신뢰도가 함께 표시될 수 있다. 즉, 상기 좌표, 인물명 및 신뢰도가 자동으로 생성된 비디오 메타데이터에 해당하며, 이는 영상 DB(43)에 저장될 수 있다. 신뢰도는 70%을 기준으로 신뢰도가 70%미만의 결과는 실패로 저장될 수 있다.
객체인식 모듈은 이미지의 특징을 추출한 특징 맵(Feature map)을 이용해 객체를 분류하는 CNN기반의 GBD-Net(gated bi-direction CNN)을 활용하여 이미지 내의 모든 객체의 위치 좌표와 해당하는 객체의 명을 인식한다. 인식된 객체의 위치 좌표와 객체명, 신뢰도가 영상 DB(43)에 저장된다. 얼굴인식 모듈과 마찬가지로 신뢰도 70%을 기준으로 70%미만의 결과는 실패로 저장된다.
음성인식 모듈은 영상 속 음성에 대해 발화 시작 시간, 종료 시간, 길이, 자막을 생성한다. 음성인식 과정은 영상의 음성에 대하여 전처리 단계로 잡음을 제거하고, 너무 크거나 작은 신호에 대하여 적절한 크기로 조절하고, 연속된 발화 중에서 음성 구간만을 검출 하고, 디코더를 통해, 언어 모델 스코어링을 통해 최적으로 선택하고 후처리로 도메인사전 구축 보정 알고리즘을 사용하여 음성을 텍스트로 변환하여 자막을 생성한다.
발화자 추출을 위하여 화자 인식 중 화자 식별 기술을 이용한다. 화자 식별 기술을 적용하기 위해서는 발화자의 음성을 미리 저장해두어야 한다. 입력된 영상에서 음성 신호에서 특징을 추출하고 모델링하는 GMM-UBM(Gaussian Mixture Model-Universal Background Model)기법 등을 이용하여 사전에 DB에 등록된 음성 중 가장 가까운 인물명을 발화자로 추출한다. 생성된 음성의 발화자와 발화 시작 및 종료 시간, 자막 데이터는 음성 DB(42)에 저장될 수 있으며, 이러한 정보 모두 비디오 메타데이터의 범주 내에 포함된다.
메타데이터 오토 태깅 엔진에 의해 생성된 메타데이터는 추후 구간 결정 엔진(30)에서 신뢰도 또는 유사도 등을 계산하여 최종 의미 구간을 검출하는데 활용될 수 있다.
데이터 관리 엔진(40)은 동영상 DB(관리 모듈)(41), 음성 DB(관리 모듈)(42), 및 영상 DB(관리 모듈)(43)로 구성된다. 데이터 관리 엔진에서는 동영상에 포함된 메타데이터, 동영상에서 추출된 10fps 단위의 이미지 메타데이터, 화면전환 기반으로 자동 추출된 샷 구간 정보, 각 이미지들이 오토태깅된 결과값, 음성 자막정보, 음성 구간 정보를 저장하고 각 모듈들의 요청과 요청에 대한 응답을 수행하는 중추적인 역할을 한다. 의미구간을 검출하기 전 모든 전처리 작업이 완료 후 구간 결정 엔진을 호출하게 된다.
앞서, "씬 또는 씬 구간"과 "샷 또는 샷 구간"이 정의되었고, 이 둘의 관계는 하나의 "씬 또는 씬 구간"에 여러 개의 "샷 또는 샷 구간"이 포함된다고 이해하면 될 것이다. 즉, 여러 개의 샷 또는 샷 구간이 하나의 씬 또는 씬 구간을 구성하게 된다. 또한, 앞서 언급했듯이 "씬 구간"은 "의미 구간"으로도 표현될 수 있는 용어이다.
구간 결정 엔진(30)은 구간 신뢰도 분석 모듈(31)과 자막 신뢰도 분석 모듈(32)로 구성된다. 구간 결정 엔진(30)은 각 엔진들에서 추출된 영상 정보들과 음성 정보들을 조합하여 신뢰도(또는 유사도)를 결정하고 의미있는 구간을 결정한다. 먼저 음성 정보들을 활용하여 의미 구간(씬 또는 씬 구간)을 결정하는 방법은 아래의 순서대로 진행된다. 음성 정보들을 활용한 의미 구간 결정은 구간 결정 엔진(30) 또는 자막 신뢰도 분석 모듈(32)에 의해 수행되며 다음과 같다.
한편, 앞서 설명한 대로, 구간 결정 엔진(30)은 데이터 관리 엔진(40)으로부터, 동영상 분할 엔진(10), 메타데이터 오토 태깅 엔진(20) 등에 의해 추출된 샷 또는 샷 구간, 그리고 그에 대한 메타데이터들을 사용하여 해당 방법 내지는 방식을 수행할 수 있다.
도 4는 음성 정보들을 활용한 의미 구간 결정 방법의 순서도를 나타낸다.
구간 결정 엔진(30) 또는 자막 신뢰도 분석 모듈(32)은 자막정보, 즉 데이터를 정제할 수 있다(S411). 자막정보는 영상에서 음성 정보만 분리한 후, STT(speech to text) 엔진을 통해 대사 부분이 텍스트 형태로서 변환되어 획득될 수 있다. 상기 데이터 정제는, 자막정보에서 영어와 숫자만 남도록 정규화를 진행한 후 형태소 분석을 통한 조사, 접속사, 전치사 등의 불용어는 삭제시켜 단어의 배열 형태로 변환하는 과정이다. 또한, 상기 데이터 정제는 3단어 이하만 남는, 문장으로 보기 어려운 짧은 자막들은 제외시킨 후, 단어를 원형으로 변환하는 어간 추출, 즉 스테밍(stemming)을 진행하여 자막정보, 발화자 정보, 발화 시간의 메타데이터를 사전(dictionary)화 시켜 리스트의 형태로 저장하는 것을 의미한다.
이에 따라, 미리 결정된 수의 연속된 자막정보로 구성된 집합이 구성되며, 상기 결과로서 정제된 데이터, 즉 자막정보는 영상의 시간 정보에 기반한 시간 순서대로 순번이 매겨진 채 관리될 수 있다.
그리고나서, 구간 결정 엔진(30) 또는 자막 신뢰도 분석 모듈(32)은 후술할 유사도 분석의 대상이 되는 시작 자막정보의 순번(n) 및 임시 씬 구간의 시작 자막정보의 순번(i)을 초기화할 수 있다(S412). 초기화 값은 각각 1이다.
대상 자막정보 중 시간적으로 가장 앞선 K개의 순차적인 자막정보가 선택되고, 이 선택된 K개의 자막 정보가 유사도 분석의 대상이 되는 자막 정보 구간이 설정될 수 있다(S413).
상기 K개의 자막 정보의 선택은, 자막 정보 간의 유사도 점수가 미리 정의된 점수 이하(또는 미만)인 것이 미리 설정된 개수(예컨대, c, c는 1이상의 정수)가 나올 때까지 반복될 수 있다. 즉, S413에서 K개의 자막 정보에 대한 유사도 분석의 결과, 유사도 점수가 미리 정의된 점수 이하인 자막 정보 쌍이 c개 미만이라면, 자막 정보 구간(K개의 자막 정보)을 다시 선택하되, 그 시작 자막 정보는 이전에 선택된 자막 정보 구간의 시작 자막 정보의 다음의 순번을 갖는 자막 정보가 될 것이다. 즉, 첫번째 선택된 자막 정보 구간의 자막 정보의 순번이 n 내지 n+K-1이라면, 그 다음 선택될 자막 정보 구간의 자막 정보의 순번은 n+1 내지 n+K가 될 것이다.
좀더 상세히 설명하면, 구간 결정 엔진(30) 또는 자막 신뢰도 분석 모듈(32)은, 첫번째 자막부터 총 K개의 자막 정보에 대해 유사도 점수를 계산할 수 있다(S414). 즉, K-1개의 자막 정보 쌍에 대한 유사도 점수가 계산될 수 있다. 아울러, 상기 K-1개의 자막 정보 쌍에 대해서, 순차적으로 유사도 점수의 계산이 이루어진다.
구간 결정 엔진(30) 또는 자막 신뢰도 분석 모듈(32)은 후술할 방식(이하, "자막 유사도 분석"이라 지칭함)을 수행하여 평균 유사도 점수를 계산하고, 이와 기준 값의 대소 관계에 따라 씬 또는 씬 구간의 구분을 수행할 수 있다.
좀더 상세하게 설명하면, 순차적인 K개의 자막 정보가 선택되고, 가장 앞선 자막 정보와 나머지 K-1개의 자막 정보가 각각 짝지어서 상기 자막 유사도 분석이 수행될 수 있다. 즉, 구간 결정 엔진(30) 또는 자막 신뢰도 분석 모듈(32)은 K-1개의 자막 정보 쌍에 대해 상기 자막 유사도 분석에 따른 평균 유사도 점수를 산출할 수 있다(S414). 예를 들어, 첫번째 자막 정보의 순번이 n이라고 하면, (n, n+1), (n, n+2), (n, n+3), ..., (n, n+K-1)으로 구성된 K-1개의 자막 정보 쌍에 대한 자막 유사도 분석이 수행된다.
상기 자막 유사도 분석에 대해서는 아래에서 상세하게 설명한다.
상기 자막 유사도 분석을 위해, 먼저 상기 K-1개의 자막 정보 쌍에 대해 TF-IDF(Term Frequency-Inverse Document Frequency) 분석을 이용하여 유사도가 비교될 수 있다. TF-IDF는 TF와 IDF의 곱으로 표현될 수 있으며, TF는 특정 문서에서의 특정 단어의 등장 빈도수를 의미하며, 본 발명에 적용하면, i번째 자막 정보에서 단어 k의 등장 빈도수를 의미한다. IDF는 말 그대로, DF의 역수이며, DF는 단어 k가 등장한 문서(즉, 자막 정보)의 수이다. IDF는 보통 로그 함수로서 표현하며 다음과 같다.
Figure 112021066674400-pat00001
위 수학식에서 n은 총 문서의 수, 즉 본 발명에 따르면 총 자막 정보의 수이며, 두 개의 자막 정보 상호 간을 비교하므로, 여기서 n=2가 될 수 있겠다. d는 문서, 즉 개별 자막 정보를, t는 단어를 지칭한다. df(t)는 앞서 설명한 DF이며, 단어 t가 등장한 자막 정보의 수를 지칭한다.
TF-IDF 값은 특정 단어에 대한 가중치로서 이해될 수 있으며, 항상 1보다 작다.
상기 TF-IDF는 각 자막정보 별로 벡터로서 표현할 수 있다. 예컨대, n=1인 자막 정보에서 3개의 단어가 출현하면, TF-IDF는 각 단어별로 획득되므로 3개의 값이 도출되고, 그에 따라 3차원의 벡터로 구성될 수 있다. 즉, 두 개의 자막정보를 비교했으므로, 2개의 동차원 또는 서로 다른 차원의 벡터 2개가 획득될 수 있다. 이 2개의 벡터를 코사인 유사도(cosine similarity)를 이용하여 값으로 표현할 수 있다.
Figure 112021066674400-pat00002
여기서, A, B는 각각 두 자막 정보를 지칭하며, Ai, Bi는 각 자막 정보의 TF-IDF 값에 해당한다. 이 값은 유사도 점수로 표현되기 위해, 백분율로 표현될 수 있으며, A로 지칭하도록 한다.
벡터 유사도 분석은 Word2Vec을 이용하여 미리 학습된 모델을 가지고 각각의 자막에서 출현하는 단어들이 얼마나 유사도를 가지는지를 계산하는 방법이다. Word2Vec를 사용하기 위해서는 임베딩 벡터라는 수치화된 단어들을 학습한 모델을 사용하게 되는데, 미리 전체 자막을 사용하여 학습된 결과를 기반으로 한다. 각각의 단어는 0 내지 1 사이의 가중치를 갖게 되며, 예컨대 1개의 자막 정보에서 6개의 단어가 출현하였고, 각각의 가중치가 0.043, 0.096, 0.034, 0.084, 0.012, 0.056을 갖는다면, 평균값인 0.054를 취하도록 한다. 단어의 가중치를 구하는 대상이 자막 정보 n과 자막 정보 n+1일 때, 비교 대상인 자막 정보 n+1의 값만을 계산하도록 한다. 이 결과값은 유사도 점수로 표현되기 위해, 백분율로 표현될 수 있으며, B로 지칭하도록 한다.
연관 분석은 S411에서와 같이 얻어진 주요 단어들간이 출현 빈도를 기반으로 PMI(Pointwise Mutual Information)를 측정하여 유사도를 비교한다. PMI는 두 변수간의 상호 의존성을 측정 한 것으로 아래와 같이 계산된다.
Figure 112021066674400-pat00003
여기서, p(x, y)는 X와 Y의 결합분포함수이고, p(x)와 p(y)는 각각 X와 Y의 주변분포함수이다. 본 발명에 따르면, X와 Y는 각각 i, j번째 자막 정보가 될 것이며, x, y는 각각 i, j번째 자막 정보에 포함된 단어가 될 것이다.
두 개의 자막 정보를 비교하므로, 각 자막 정보에 속한 각 단어를 비교하되, 같은 자막 정보에 속한 단어들은 서로 비교하지 않는다. 예를 들어, n번째 자막에 5개의 단어 배열(n(1), n(2), n(3), n(4), n(5))이 있고, n+1번째 자막에서 9개의 단어 배열(n+1(1), n+1(2), n+1(3), n+1(4), n+1(5), n+1(6), n+1(7), n+1(8), n+1(9))이 있다고 가정하면, n(1)과 n+1(1), n(1)과 n+1(2), …, n(1)과 n+1(9)까지 비교하고, n(2)와 n+1(1), n(2)와 n+1(2), … n(2)~n+1(9), ... 와 같이 순차적으로 비교하게 된다. 전체 단어들의 연관분석 결과가 나오면 모든 값의 평균을 산출하도록 한다. 위의 연관 분석에 따른 유사도 점수를 C라고 지창한다.
이와 같이, 위의 3가지 분석에 따른 유사도 점수를 이용하여 평균 유사도 점수를 계산하게 되고, (평균 유사도 점수) = A+(B+C)/2로 정의될 수 있다.
구간 결정 엔진(30) 또는 자막 신뢰도 분석 모듈(32)은, 상기 평균 유사도 점수가 미리 정의된 기준 점수(예컨대, 50%) 이하 또는 미만인지에 대해 판단할 수 있고, 그 결과에 따라 카운트 값을 변경하며, 상기 카운트 값이 미리 설정된 기준값(앞서 언급한 c, 예컨대, c=5)에 도달하였는지 여부를 확인할 수 있다(S415). 예컨대, 상기 평균 유사도 점수가 미리 정의된 기준 점수 이하 또는 미만이라면, 상기 카운트 값은 1만큼 증가될 수 있으며, 그렇지 않은 경우 상기 카운트 값은 변동되지 않는다. 이 카운트의 값은 초기값은 0이며, 임시 의미 구간(씬 구간)이 저장되면 초기화될 수 있다.
아울러, 상기 카운트 값의 확인은 각 자막정보 쌍의 유사도 계산 후에 이루어질 수 있다. 도시는 되진 않았지만, S414와 S415는 K-1개의 자막 정보 쌍 각각에 대해 개별적으로 그리고 순차적으로 수행된다. 즉, 예를 들어, 구간 결정 엔진(30) 또는 자막 신뢰도 분석 모듈(32)은, 자막정보 n과 자막정보 n+1의 유사도 분석 및 평균 유사도 점수를 산출하고(S414), 상기 산출된 평균 유사도 점수가 미리 정의된 점수(예컨대, 50%) 이하 또는 미만인지 판단하며, 상기 카운트 값도 확인하고(S415), 상기 카운트 값이 c에 도달하지 않았다면, 다시 자막정보 n+1과 자막정보 n+2에 대해 S414 내지 S415 과정을 반복할 수 있다.
상기 카운트 값이 미리 설정된 기준값에 도달하지 않았다면, 절차는 다시 두번째 순번의 자막 정보부터 K개의 자막 정보에 대해, 앞서 설명한 S413 내지 S415가 반복될 수 있다. 이러한 반복은 상기 카운트 값이 미리 설정된 기준값에 도달할 때까지 수행될 수 있으며, 유사도 분석의 대상이 되는 시작 자막 정보의 순번이 1만큼 증가된다(S417). 즉, n+1번 자막 정보부터 n+K번 자막 정보까지 총 K개의 자막에 대해 유사도 분석 수행이 수행될 것이다.
한편, 상기 카운트 값이 미리 설정된 기준값에 도달하지 않았더라도, S413, S414에서 유사도 분석의 대상이 된 K개의 자막 정보가 대상 자막 정보 중 마지막 자막 정보였다면(S416), 절차는 S418로 진행될 수 있다. 즉, 상기 K개의 자막 정보 중 맨 첫 자막 정보의 순번이 P를 넘는지 여부가 판단될 수 있다(전체 자막 정보 수는 P+K). 다시 말하면, 상기 K개의 자막 정보 중 맨 마지막 자막 정보(n+K-1번 자막 정보)가 마지막 자막 정보였다면, 절차는 S418로 진행된다.
상기 카운트 값이 미리 설정된 기준값에 도달하면, 구간 결정 엔진(30) 또는 자막 신뢰도 분석 모듈(32)은 마지막으로 수행한 유사도 점수 계산의 대상인 자막정보 쌍 중 시간적으로 후행하는 자막 정보를 상기 임시 씬 구간의 마지막 자막(n')으로 설정할 수 있다(S418).
그리고나서, 구간 결정 엔진(30) 또는 자막 신뢰도 분석 모듈(32)은, 임시 씬 구간의 시작 및 마지막 자막 정보를 통해, 이에 대응하는 시간의 길이가 미리 설정된 길이를 초과하는지 또는 이상인지 여부를 판단할 수 있다(S419).
구간 결정 엔진(30) 또는 자막 신뢰도 분석 모듈(32)은, 상기 시간의 길이가 미리 설정된 길이보다 같거나 크다면, 상기 임시 씬 구간에 대한 정보를 저장할 수 있다(S420). 상기 임시 씬 구간에 대한 정보를 저장할 때엔, 상기 시작 자막 정보 및 상기 마지막 자막 정보의 시간 정보를 기반으로 앞서 설명한 샷 구간과 매칭되어 저장될 수 있다. 보통은, 상기 자막 정보는 하나의 샷 구간에서 맨 처음 프레임 또는 그 보다는 이후의 프레임부터 존재하므로, 상기 임시 씬 구간은 앞서 미리 구분된 샷 구간의 시작 또는 종료 시점과 일치하지 않을 가능성이 높다. 상기 자막 유사도 분석의 최종 목표는 씬 구간과 그에 포함된 샷 구간을 정확하게 나누기 위함이므로 상기 임시 씬 구간을 개별 샷 구간으로 구성되게끔 설정할 필요가 있으며, 이에 따라 상기 임시 씬 구간을 샷 구간과 매칭할 필요가 있다. 예컨대, 상기 임시 씬 구간이 하나의 영상 내에서 00:03 내지 02:30의 범위에 해당하는 경우, 실제 샷 구간은 00:01 내지 02:55(샷 구간 2 내지 40)에 속할 수 있다. 따라서, 상기 매칭의 결과에 따라, 상기 임시 씬 구간은 샷 구간 2 내지 40으로 저장될 수 있다.
그리고나서, 구간 결정 엔진(30) 또는 자막 신뢰도 분석 모듈(32)은, 나머지 자막 정보에 대한 분석을 수행하기 위해, 상기 자막 유사도 분석의 순번을 n'+1(상기 마지막 자막 정보 이후의 자막 정보)로 갱신하고, 상기 임시 씬 구간에 대한 시작 자막 정보의 순번도 n'+1로 갱신할 수 있다(S421).
또는, 상기 시간의 길이가 미리 설정된 길이보다 짧다면, 구간 결정 엔진(30) 또는 자막 신뢰도 분석 모듈(32)은, 상기 임시 씬 구간에 대한 정보를 저장하지 않는다. 그리고나서, 구간 결정 엔진(30) 또는 자막 신뢰도 분석 모듈(32)은 나머지 자막 정보에 대한 분석을 수행하기 위해, 상기 자막 유사도 분석의 첫 자막 정보의 순번을 n'+1(상기 마지막 자막 정보 이후의 자막 정보)로 갱신하고, 상기 임시 씬 구간에 대한 시작 자막 정보의 순번도 n'+1로 갱신할 수 있다(S421).
그리고나서, 구간 결정 엔진(30) 또는 자막 신뢰도 분석 모듈(32)은, 갱신된 시작 자막 정보의 순번에 따라 K개의 자막 정보가 상기 자막 유사도 분석의 대상 자막 범위를 넘는지 여부를 확인할 수 있다(S422). 즉, 추가적으로 상기 자막 유사도 분석을 할 필요가 있는지 여부가 판단되며(n>Q인지를 확인, Q=P+K는 전체 자막 정보 수), 추가 분석이 필요하면 절차는 S413으로 진행하고; 그렇지 않다면 절차는 종료될 수 있다.
앞서 설명한 임시 씬 구간 결정 방식에 따르면, 상기 임시 씬 구간은 하나 이상의 개별 임시 씬 구간으로 나누어질 수 있다.
다음으로, 앞서 설명한 추출된 임시 씬 구간들을 영상 정보들을 활용하여 검수하여 최종 구간으로 결정하는 방법을 설명하도록 한다.
도 5는 영상 정보들을 활용한 의미 구간 결정 방법의 순서도를 나타낸다.
구간 결정 엔진(30) 또는 자막 신뢰도 분석 모듈(32)은 앞서 설명한 음성(자막) 정보들을 활용한 임시 저장한 의미 구간, 즉 임시 씬 구간들에 대한 데이터를 정제할 수 있다(S511). 즉, 구간 결정 엔진(30) 또는 자막 신뢰도 분석 모듈(32)은 상기 임시 씬 구간들의 모든 샷 구간에 대한 시간 정보, 메타데이터, 위치, 크기, 라벨, 신뢰도 등을 사전화한 리스트로 저장할 수 있다.
아울러, 상기 임시 씬 구간들은 시간 순서대로 순번이 매겨진 채 관리될 수 있다.
그리고나서, 후술할 영상 정보 유사도 분석의 대상이 되는 시작 씬 구간 정보의 순번(n)이 초기화될 수 있다(S512). 초기화 값은 1이다. 또한, 상기 임시 씬 구간들 각각의 샷 구간의 수가 설정될 수 있다.
구간 결정 엔진(30) 또는 자막 신뢰도 분석 모듈(32)은 해당 씬 구간의 최초 L개의 샷 구간이 선택되고, 이를 기준 샷 구간으로 설정될 수 있다(S513). 즉, 매 임시 씬 구간의 최초 L개의 샷 구간은 후술할 영상 정보 유사도 분석의 기준이 된다.
구간 결정 엔진(30) 또는 자막 신뢰도 분석 모듈(32)은 상기 기준 샷 구간과, 그 다음의 샷 구간을 서로 비교하면서, 음성 정보(자막 정보)를 활용한 임시 씬 구간의 모든 샷 구간을 검색하되, 인물 또는 객체 등의 종류가 미리 설정된 정도 이상 또는 초과하는 유사도를 갖고, 상기 인물 또는 객체의 크기와 위치가 미리 설정된 정도 이상 또는 초과하는 유사도를 갖는지 확인하여 씬 구간을 최종적으로 결정할 수 있다.
좀더 구체적으로, 영상 정보 유사도 분석은, i) 인물 또는 객체 정보(즉, 이름, 명칭 내지는 종류 등으로 식별될 수 있는 인물 또는 객체 등), ii) 인물 또는 객체 등의 위치 정보 및 크기 정보를 활용할 수 있다.
구간 결정 엔진(30) 또는 자막 신뢰도 분석 모듈(32)은 상기 기준 샷 정보와 다음 샷 구간의 유사도 분석 및 유사도 점수를 산출하며, 이에는 상기 인물 또는 객체 정보를 이용할 수 있다(S514).
이를 위해서, 상기 기준 샷 구간의 각각의 샷 구간의 객체 또는 인물 정보가 배열 형태로 저장되어 있을 수 있고, 상기 기준 샷 구간의 각 샷 구간의 객체 또는 인물 정보와 나머지 샷 구간에 대한 객체 또는 인물 정보의 비교가 수행될 수 있다. 즉, 상기 기준 샷 구간이 L개의 샷 구간으로 구성되어 있고, 각각의 순번을 n, n+1, ..., n+L-1로 지칭하면, 바로 그 다음의 나머지 샷 구간의 순번은 n+L이 되며, 이에 따라 상기 영상 정보 유사도 분석은 샷 구간 n과 n+L, n+1과 n+L, ..., n+L-1과 n+L이 서로 비교되는 것이다.
구간 결정 엔진(30) 또는 자막 신뢰도 분석 모듈(32)은 상기 유사도 점수가 미리 설정된 기준 점수 R1(예컨대, 70%)를 초과하거나 그 이상인 샷 구간이 있는지 여부를 판단할 수 있다(S515). 상기 유사도 점수가 미리 설정된 점수를 초과하거나 그 이상인 경우, 구간 결정 엔진(30) 또는 자막 신뢰도 분석 모듈(32)은 상기 기준 샷 구간의 각각의 샷 구간과 나머지 샷 구간에 대해 인물 또는 객체 등의 위치 정보 및 크기 정보를 기반으로 유사도 분석 및 유사도 점수를 산출할 수 있다(S516).
구간 결정 엔진(30) 또는 자막 신뢰도 분석 모듈(32)은 상기 유사도 점수가 미리 설정된 기준 점수 R2(예컨대, 70%)를 초과하거나 그 이상인 샷 구간이 있는지 여부를 판단할 수 있다(S517).
상기 유사도 점수가 미리 설정된 기준 점수를 초과하거나 그 이상인 샷 구간이 있으면, 상기 유사도 분석은 그 다음 샷 구간(M+1=L+2)에 대해서 수행될 수 있다. 이에 따라, M=M+1로 설정된다(S518). 만약 n번 임시 씬 구간에 대해 더 이상 유사도 분석을 할 샷 구간이 없으면(S519), 구간 결정 엔진(30) 또는 자막 신뢰도 분석 모듈(32)은 유사도 분석을 할 임시 씬 구간이 남아있는지를 확인할 수 있다(S520). 상기 유사도 분석을 할 임시 씬 구간이 남아 있으면, 구간 결정 엔진(30) 또는 자막 신뢰도 분석 모듈(32)은 그 다음 임시 씬 구간(n+1)에 대해 S513 내지 S519, 또는 S522 내지 S523의 절차를 반복할 수 있다.
S516과 S517에서, 상기 유사도 점수가 미리 설정된 기준 점수를 초과하거나 그 이상인 샷 구간이 하나도 없다면, 구간 결정 엔진(30) 또는 자막 신뢰도 분석 모듈(32)은 상기 다음 샷 구간을 기점으로 씬 구간을 분할할 수 있다(S522). 임시 씬 구간 분할에 따라, 임시 씬 구간의 수(T)는 1만큼 증가될 수 있다(S523).
그리고나서, 구간 결정 엔진(30) 또는 자막 신뢰도 분석 모듈(32)은 유사도 분석을 할 임시 씬 구간이 남아있는지를 확인할 수 있다(S520). 상기 유사도 분석을 할 임시 씬 구간이 남아 있으면, 구간 결정 엔진(30) 또는 자막 신뢰도 분석 모듈(32)은 그 다음 임시 씬 구간(n+1)에 대해 S513 내지 S519, 또는 S522 내지 S523의 절차를 반복할 수 있다.
더이상 유사도 분석을 수행할 임시 씬 구간 또는 샷 구간이 없으면, 구간 결정 엔진(30) 또는 자막 신뢰도 분석 모듈(32)은 임시 씬 구간으로 저장해놓은 정보를 최종적인 씬 구간으로 저장할 수 있다(S524).
이상의 명세서에서, "시스템" 또는 그에 속한 "엔진" 또는 "모듈" 등이 해당 방법 또는 절차 등을 수행하는 것으로 설명하였으나, "시스템", "엔진" 또는 "모듈"은 명칭일 뿐 권리범위가 그에 종속되는 것은 아니다. 즉, 시스템, 엔진, 모듈 외에도 장치 또는 그에 속한 구성으로서도 해당 방법 또는 절차가 수행될 수 있으며, 그 뿐만 아니라 비디오 메타데이터 검수 또는 편집, 의미 구간을 추출하기 위한 소프트웨어 또는 컴퓨터 또는 그밖의 기계, 장치 등으로 판독가능한 코드에 의해 상기 방법 또는 방식이 수행될 수 있다.
아울러, 본 발명의 또다른 양태(aspect)로서, 앞서 설명한 제안 또는 발명의 동작이 "컴퓨터"(시스템 온 칩(system on chip; SoC) 또는 (마이크로) 프로세서 등을 포함하는 포괄적인 개념)에 의해 구현, 실시 또는 실행될 수 있는 코드 또는 상기 코드를 저장 또는 포함한 컴퓨터-판독가능한 저장 매체 또는 컴퓨터 프로그램 제품(product) 등으로도 제공될 수 있고, 본 발명의 권리범위가 상기 코드 또는 상기 코드를 저장 또는 포함한 컴퓨터-판독가능한 저장 매체 또는 컴퓨터 프로그램 제품으로 확장가능하다.

Claims (11)

  1. 의미 구간을 추출하기 위한 시스템으로서,
    분할된 동영상의 구간에서 의미 구간을 추출하기 위한 구간 결정 엔진을 포함하고,
    상기 구간 결정 엔진은,
    기 설정된 수의 연속된 자막정보로 구성된 집합에서 유사도 점수 계산의 시작 자막정보를 설정하고;
    상기 집합 내 미리 설정된 수의 순차적 자막정보로 구성된 부분집합에 대해, 상기 부분집합 내 첫번째 자막정보와 나머지 자막정보 각각 간의 유사도 점수를 순차적으로 계산하되,
    상기 유사도 점수의 계산은 미리 설정된 점수 이하인 유사도 점수를 갖는 자막정보 쌍의 수가 미리 결정된 수가 될 때까지, 상기 부분집합의 첫번째 자막정보를 상기 시작 자막정보부터 그 다음 자막정보로 순차적으로 변경하면서 수행하고;
    상기 유사도 점수를 계산한 마지막 자막정보 쌍 중 시간적으로 후행하는 자막정보를 상기 유사도 점수 계산의 종료 자막정보로 결정하고; 그리고
    상기 시작 자막정보 및 상기 종료 자막정보로 정의되는 자막정보 구간의 시간의 길이가 미리 결정된 시간 길이 이상이면, 상기 자막정보 구간을 샷 구간에 매칭하여 임시 의미 구간으로 저장하는, 의미 구간 추출 시스템.
  2. 컴퓨터 판독가능한 저장 매체에 저장된 컴퓨터 프로그램으로서, 상기 컴퓨터 프로그램은 동영상에서 의미 구간을 추출하기 위한 프로세서에 의해 아래의 단계들을 실행하기 위한 코드들을 포함하며, 상기 단계들은:
    메타데이터를 생성해야할 동영상을 등록하거나 분할하는 단계;
    상기 등록 또는 분할된 동영상의 자막정보를 자동으로 생성하는 단계;
    기 설정된 수의 연속된 자막정보로 구성된 집합에서 유사도 점수 계산의 시작 자막정보를 설정하는 단계;
    상기 집합 내 미리 설정된 수의 순차적 자막정보로 구성된 부분집합에 대해, 상기 부분집합 내 첫번째 자막정보와 나머지 자막정보 각각 간의 유사도 점수를 순차적으로 계산하되,
    상기 유사도 점수의 계산은 미리 설정된 점수 이하인 유사도 점수를 갖는 자막정보 쌍의 수가 미리 결정된 수가 될 때까지, 상기 부분집합의 첫번째 자막정보를 상기 시작 자막정보부터 그 다음 자막정보로 순차적으로 변경하면서 수행하는 단계;
    상기 유사도 점수를 계산한 마지막 자막정보 쌍 중 시간적으로 후행하는 자막정보를 상기 유사도 점수 계산의 종료 자막정보로 결정하는 단계; 및
    상기 시작 자막정보 및 상기 종료 자막정보로 정의되는 자막정보 구간의 시간의 길이가 미리 결정된 시간 길이 이상이면, 상기 자막정보 구간을 샷 구간에 매칭하여 임시 의미 구간으로 저장하는 단계를 포함하는, 컴퓨터 판독가능한 저장 매체에 저장된 컴퓨터 프로그램.
  3. 제2항에 있어서, 상기 단계들은:
    상기 집합 중 상기 임시 의미 구간으로 저장되지 않은 나머지 자막정보가 있는 경우, 상기 나머지 자막정보에 대해 상기 유사도 점수 계산을 수행하여 다음 임시 의미 구간의 저장을 시도하는 단계를 포함하는, 컴퓨터 판독가능한 저장 매체에 저장된 컴퓨터 프로그램.
  4. 제2항 내지 제3항 중 어느 한 항에 있어서, 상기 단계들은:
    상기 미리 설정된 점수 이하인 유사도 점수를 갖는 자막정보 쌍의 수가 상기 미리 결정된 수보다 작더라도, 더 이상 유사도 점수 계산을 할 자막정보가 없다면,
    상기 유사도 점수 계산을 한 마지막 자막정보 쌍 중 시간적으로 후행하는 자막정보를 임시 의미 구간의 종료 자막정보로 결정하고,
    상기 시작 자막정보 및 상기 종료 자막정보로 정의되는 자막정보 구간의 시간의 길이가 상기 미리 결정된 시간 길이 이상이면, 상기 자막정보 구간을 샷 구간에 매칭하여 상기 임시 의미 구간으로 저장하는 단계를 포함하는, 컴퓨터 판독가능한 저장 매체에 저장된 컴퓨터 프로그램.
  5. 제2항 내지 제3항 중 어느 한 항에 있어서,
    상기 유사도 점수 계산을 위해 복수 개의 분석 방식이 사용되는, 컴퓨터 판독가능한 저장 매체에 저장된 컴퓨터 프로그램.
  6. 제2항에 있어서, 상기 시작 자막정보 및 상기 종료 자막정보로 정의되는 자막정보 구간의 시간의 길이가 상기 미리 결정된 시간 길이 미만이면, 상기 자막정보 구간은 임시 의미 구간으로 저장되지 않는, 컴퓨터 판독가능한 저장 매체에 저장된 컴퓨터 프로그램.
  7. 제2항 내지 제3항 중 어느 한 항에 있어서, 상기 단계들은:
    상기 저장된 임시 의미 구간 각각에 대해,
    해당 임시 의미 구간의 영상정보에 기반한 유사도 점수 계산을 통해 상기 임시 의미 구간을 최종 의미 구간으로 저장하거나, 상기 임시 의미 구간을 추가로 분할한 뒤 상기 최종 의미 구간으로 저장하는 단계를 포함하는, 컴퓨터 판독가능한 저장 매체에 저장된 컴퓨터 프로그램.
  8. 제7항에 있어서, 상기 단계들은:
    상기 유사도 점수 계산을 위해,
    해당 임시 의미 구간의 시간적으로 가장 앞선 L개의 샷 구간을 기준 구간으로 설정하고, 상기 기준 구간과 나머지 샷 구간의 유사도를 판단하는 단계를 포함하는, 컴퓨터 판독가능한 저장 매체에 저장된 컴퓨터 프로그램.
  9. 제8항에 있어서, 상기 유사도 점수 계산은,
    상기 L개의 샷 구간 각각과 나머지 샷 구간 사이의, 인물 또는 객체 정보의 유사도 또는 인물 또는 객체의 위치 및 크기 정보의 유사도의 판단을 포함하는, 컴퓨터 판독가능한 저장 매체에 저장된 컴퓨터 프로그램.
  10. 제8항에 있어서,
    상기 L개의 샷 구간 각각과 나머지 샷 구간 사이의 인물 또는 객체 정보의 유사도 점수가 모두 미리 설정된 기준 점수 미만이고, 상기 L개의 샷 구간 각각과 나머지 샷 구간 사이의 인물 또는 객체의 위치 및 크기 정보의 유사도 점수가 모두 미리 설정된 기준 점수 미만이면, 상기 저장된 임시 의미 구간은 두 개로 분할되고,
    상기 저장된 임시 의미 구간이 분할되는 기점은 상기 나머지 샷 구간인, 컴퓨터 판독가능한 저장 매체에 저장된 컴퓨터 프로그램.
  11. 제2항에 따른 컴퓨터 프로그램을 저장하고 있는 컴퓨터 판독가능한 저장 매체.
KR1020210074921A 2019-12-13 2021-06-09 음성 및 영상 정보를 활용한 의미있는 구간을 검출하기 위한 방법 및 이를 위한 장치 KR102343407B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210074921A KR102343407B1 (ko) 2019-12-13 2021-06-09 음성 및 영상 정보를 활용한 의미있는 구간을 검출하기 위한 방법 및 이를 위한 장치

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020190166956A KR102267403B1 (ko) 2019-12-13 2019-12-13 음성 및 영상 정보를 활용한 의미있는 구간을 검출하기 위한 방법 및 이를 위한 장치
KR1020210074921A KR102343407B1 (ko) 2019-12-13 2021-06-09 음성 및 영상 정보를 활용한 의미있는 구간을 검출하기 위한 방법 및 이를 위한 장치

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020190166956A Division KR102267403B1 (ko) 2019-12-13 2019-12-13 음성 및 영상 정보를 활용한 의미있는 구간을 검출하기 위한 방법 및 이를 위한 장치

Publications (2)

Publication Number Publication Date
KR20210075924A KR20210075924A (ko) 2021-06-23
KR102343407B1 true KR102343407B1 (ko) 2021-12-27

Family

ID=76330537

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020190166956A KR102267403B1 (ko) 2019-12-13 2019-12-13 음성 및 영상 정보를 활용한 의미있는 구간을 검출하기 위한 방법 및 이를 위한 장치
KR1020210074921A KR102343407B1 (ko) 2019-12-13 2021-06-09 음성 및 영상 정보를 활용한 의미있는 구간을 검출하기 위한 방법 및 이를 위한 장치

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020190166956A KR102267403B1 (ko) 2019-12-13 2019-12-13 음성 및 영상 정보를 활용한 의미있는 구간을 검출하기 위한 방법 및 이를 위한 장치

Country Status (2)

Country Link
KR (2) KR102267403B1 (ko)
WO (1) WO2021118072A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20230032317A (ko) 2021-08-30 2023-03-07 한국전자통신연구원 비디오 의미 구간 검출 방법 및 시스템
CN114697763B (zh) * 2022-04-07 2023-11-21 脸萌有限公司 一种视频处理方法、装置、电子设备及介质
KR20230146233A (ko) 2022-04-12 2023-10-19 한국전자통신연구원 자연어를 이용한 동영상 구간 검색 방법 및 장치

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013030259A (ja) 2011-07-29 2013-02-07 Toshiba Corp 映像処理装置及び映像処理方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110032610A (ko) * 2009-09-23 2011-03-30 삼성전자주식회사 장면 분할 장치 및 방법
JP5600498B2 (ja) * 2010-07-01 2014-10-01 Kddi株式会社 情報選択装置、サーバ装置、情報選択方法、及びプログラム
KR102573933B1 (ko) * 2016-10-04 2023-09-05 한국전자통신연구원 기계 학습 기반의 실감 미디어 저작 방법 및 장치
KR102027560B1 (ko) * 2017-03-15 2019-10-01 에스프레스토 주식회사 영상의 메타정보 설정 방법 및 장치
KR102085908B1 (ko) * 2018-05-10 2020-03-09 네이버 주식회사 컨텐츠 제공 서버, 컨텐츠 제공 단말 및 컨텐츠 제공 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013030259A (ja) 2011-07-29 2013-02-07 Toshiba Corp 映像処理装置及び映像処理方法

Also Published As

Publication number Publication date
KR102267403B1 (ko) 2021-06-22
KR20210075924A (ko) 2021-06-23
WO2021118072A1 (ko) 2021-06-17

Similar Documents

Publication Publication Date Title
KR102343407B1 (ko) 음성 및 영상 정보를 활용한 의미있는 구간을 검출하기 위한 방법 및 이를 위한 장치
Harwath et al. Deep multimodal semantic embeddings for speech and images
Nachmani et al. Fitting new speakers based on a short untranscribed sample
CN110147726B (zh) 业务质检方法和装置、存储介质及电子装置
CN105551485B (zh) 语音文件检索方法及***
CN113822192A (zh) 一种基于Transformer的多模态特征融合的在押人员情感识别方法、设备及介质
CN112487139A (zh) 基于文本的自动出题方法、装置及计算机设备
KR101988165B1 (ko) 청각 장애 학생들을 위한 전문 자료 텍스트 분석 기반 음성인식 기술 정확도 향상 방법 및 시스템
CN112765974B (zh) 一种业务辅助方法、电子设备及可读存储介质
CN111401105B (zh) 一种视频表情识别方法、装置及设备
US20230325611A1 (en) Video translation platform
Uehara et al. Visual question generation for class acquisition of unknown objects
CN111145903A (zh) 获取眩晕症问诊文本的方法、装置、电子设备及问诊***
CN114417097A (zh) 一种基于时间卷积与自注意力的情感预测方法及***
CN112447172B (zh) 一种语音识别文本的质量提升方法和装置
Koudounas et al. Italic: An italian intent classification dataset
CN111798871B (zh) 会话环节识别方法、装置及设备、存储介质
KR102192342B1 (ko) 멀티모달 다중 화자 대화 속 인물 식별 방법 및 장치
CN117010907A (zh) 一种基于语音和图像识别的多模态客户服务方法及***
Ren et al. Improved image description via embedded object structure graph and semantic feature matching
Farhan et al. American Sign Language: Detection and Automatic Text Generation
US20220270636A1 (en) Dialogue emotion correction method based on graph neural network
CN114239555A (zh) 一种关键词提取模型的训练方法及相关装置
CN108882033B (zh) 一种基于视频语音的人物识别方法、装置、设备和介质
CN112287690A (zh) 基于条件句子生成和跨模态重排的手语翻译方法

Legal Events

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