KR102564174B1 - 딥러닝 기반의 비디오 스트림 처리 방법 및 그 시스템 - Google Patents

딥러닝 기반의 비디오 스트림 처리 방법 및 그 시스템 Download PDF

Info

Publication number
KR102564174B1
KR102564174B1 KR1020210082966A KR20210082966A KR102564174B1 KR 102564174 B1 KR102564174 B1 KR 102564174B1 KR 1020210082966 A KR1020210082966 A KR 1020210082966A KR 20210082966 A KR20210082966 A KR 20210082966A KR 102564174 B1 KR102564174 B1 KR 102564174B1
Authority
KR
South Korea
Prior art keywords
video
shot
text
frame
deep learning
Prior art date
Application number
KR1020210082966A
Other languages
English (en)
Other versions
KR20230000632A (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 KR1020210082966A priority Critical patent/KR102564174B1/ko
Priority to PCT/KR2021/008062 priority patent/WO2022270659A1/ko
Publication of KR20230000632A publication Critical patent/KR20230000632A/ko
Application granted granted Critical
Publication of KR102564174B1 publication Critical patent/KR102564174B1/ko

Links

Classifications

    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • 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
    • 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/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • 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/47End-user applications
    • H04N21/488Data services, e.g. news ticker
    • H04N21/4888Data services, e.g. news ticker for displaying teletext characters
    • 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
    • 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/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Biophysics (AREA)
  • Evolutionary Computation (AREA)
  • Biomedical Technology (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Computer Interaction (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

딥러닝 기반의 영상 캡셔닝을 통한 비디오 스트림 처리 방법 및 그 시스템이 개시된다. 본 발명의 일 측면에 따르면, 딥러닝 기반의 영상 캡셔닝을 통한 비디오 스트림 처리 방법은 시스템이 비디오를 복수의 샷으로 분할하는 단계, 상기 시스템이 상기 분할된 샷들 각각에 포함된 복수의 프레임들 중에서 적어도 하나의 선택 프레임을 결정하는 단계, 상기 시스템이 결정한 선택 프레임에 상응하는 영상 캡셔닝을 통해 상기 분할된 샷들 각각에 대해 적어도 하나의 샷 텍스트를 생성하는 단계, 및 상기 시스템이 생성한 상기 분할된 샷들 각각의 상기 적어도 하나의 샷 텍스트에 기초하여 상기 비디오를 편집하는 단계를 포함한다.

Description

딥러닝 기반의 비디오 스트림 처리 방법 및 그 시스템 {System and method for image searching using image captioning based on deep learning}
본 발명은 딥러닝 기반의 비디오 스트림 처리 방법 및 그 시스템에 관한 것이다. 보다 상세하게는 비디오에 포함된 적어도 하나의 프레임에 대해 영상 캡션닝(image captioning)을 수행하고, 영상 캡셔닝 수행결과 생성되는 텍스트에 기반하여 비디오를 효과적으로 처리(예컨대, 편집, 검색 등)할 수 있는 시스템 및 방법에 관한 것이다.
비디오(동영상)의 활용도가 매우 높아지고, 1인 미디어, 미디어 커머스, SNS 등에 따라 비디오 컨텐츠를 제작하고자 하는 시도가 다수 이루어지고 있다.
하지만 비디오 컨텐츠를 완성하기 위해서는 촬영한 비디오에 대한 편집이 필요한데, 이러한 편집에 상대적으로 많은 시간, 노하우, 및 비용이 소요된다.
통상 종래의 비디오 편집을 위해서는 불필요한 프레임(frame) 또는 컷(cut)들을 삭제하거나 필요한 컷들만을 골라내야 하고, 이러한 경우 하나하나의 프레임들을 지켜보면서 편집을 수행하는 과정이 필요했다.
이러한 편집을 비디오에 포함된 프레임에 상응하는 텍스트 기반으로 효과적으로 수행할 수 있는 기술적 사상이 필요할 수 있다. 그리고 이를 이용하여 특정 비디오 내에서도 유저들이 원하는 영상만을 검색하여 제공할 수 있는 기술적 사상이 필요할 수 있다.
공개특허공보 10-2011-0062567 (비디오 스크랩을 이용한 비디오 콘텐츠 요약 방법 및 장치)
본 발명이 해결하고자 하는 과제는 비디오에 포함된 적어도 하나의 프레임들 각각의 시각적 정보에 상응하는 텍스트에 기반하여 사용자가 원하는 영상 부분만을 검색하거나 또는 편집할 수 있는 방법 및 시스템을 제공하는 것이다.
또한 영상 캡셔닝을 통해 비디오 내에서 유저들이 원하는 영상을 용이하게 검색할 수 있으므로, 영상의 공유 및 판매를 위한 플랫폼에 활용할 수 있는 방법 및 시스템을 제공하는 것이다.
본 발명의 일 측면에 따르면, 딥러닝 기반의 영상 캡셔닝을 통한 비디오 스트림 처리 방법은 시스템이 비디오를 복수의 샷으로 분할하는 단계, 상기 시스템이 상기 분할된 샷들 각각에 포함된 복수의 프레임들 중에서 적어도 하나의 선택 프레임을 결정하는 단계, 상기 시스템이 결정한 선택 프레임에 상응하는 영상 캡셔닝을 통해 상기 분할된 샷들 각각에 대해 적어도 하나의 샷 텍스트를 생성하는 단계, 상기 시스템이 생성한 상기 분할된 샷들 각각의 상기 적어도 하나의 샷 텍스트에 기초하여 상기 비디오를 편집하는 단계를 포함한다.
상기 분할된 샷들 각각에 포함된 복수의 프레임들 중에서 적어도 하나의 선택 프레임을 결정하는 단계는, 상기 분할된 샷들에 포함되며 연속된 복수의 프레임들인 동영상을 상기 적어도 하나의 선택 프레임으로 결정하는 단계를 포함하며, 상기 결정한 선택 프레임에 상응하는 영상 캡셔닝을 통해 상기 샷 텍스트를 생성하는 단계는 상기 동영상에 대한 동영상 캡션닝을 통해 상기 샷 텍스트를 생성하는 단계를 포함할 수 있다.
상기 딥러닝 기반의 비디오 스트림 처리 방법은, 상기 시스템이 검색조건 텍스트를 입력받으면, 상기 검색조건 텍스트에 상응하는 매칭 샷 텍스트를 선택하고, 선택된 매칭 샷 텍스트에 상응하는 매칭영상을 추출하는 단계를 더 포함하며, 상기 매칭영상에 기초하여 상기 비디오를 편집하는 것을 특징으로 할 수 있다.
상기 비디오를 편집하는 단계는, 상기 시스템이 상기 매칭영상을 상기 편집 대상 비디오에서 삭제한 제1편집 비디오를 생성하는 단계 또는 상기 시스템이 상기 매칭영상을 제외한 나머지 프레임들을 삭제한 제2편집 비디오를 생성하는 단계를 포함할 수 있다.
상기 분할된 샷들 각각에 포함된 복수의 프레임들 중에서 적어도 하나의 선택 프레임을 결정하는 단계는, 상기 분할된 샷들 중에서 미리 정해진 오브젝트가 포함된 프레임을 상기 선택 프레임으로 결정하는 단계를 포함할 수 있다.
상기 분할된 샷들 중에서 미리 정해진 오브젝트가 포함된 프레임을 상기 선택 프레임으로 결정하는 단계는, 상기 분할된 샷의 중앙에 상응하는 중앙 프레임에 상기 오브젝트가 포함된 경우에는 상기 중앙 프레임을 상기 선택 프레임에 포함시키고, 상기 중앙 프레임에 상기 오브젝트가 포함되지 않은 경우에는 상기 중앙 프레임으로부터 인접한 프레임의 순서대로 상기 오브젝트가 포함된 프레임을 탐색하여 먼저 탐색된 프레임을 상기 선택 프레임에 포함시키는 단계를 포함할 수 있다.
상기 방법은 컴퓨터 판독 가능한 기록매체에 저장된 컴퓨터 프로그램에 의해 구현될 수 있다.
다른 일 측면에 따른 딥러닝 기반의 비디오 스트림 처리 방법을 위한 시스템은 프로세서 및 상기 프로세서에 의하여 실행되는 컴퓨터 프로그램을 저장하는 메모리를 포함하며, 상기 프로세서는 상기 프로그램을 구동하여, 비디오를 복수의 샷으로 분할하고, 상기 분할된 샷들 각각에 포함된 복수의 프레임들 중에서 적어도 하나의 선택 프레임을 결정하며, 결정한 선택 프레임에 상응하는 영상 캡셔닝을 통해 상기 분할된 샷들 각각에 대해 적어도 하나의 샷 텍스트를 생성하고, 생성한 상기 분할된 샷들 각각의 상기 적어도 하나의 샷 텍스트에 기초하여 상기 비디오를 편집한다.
본 발명의 일 실시예에 따르면, 비디오 내의 분할된 영상들 각각의 시각적 정보를 나타내는 텍스트를 생성하고, 생성한 텍스트를 이용하여 비디오의 검색 또는 편집이 가능해지므로 매우 효율적인 영상처리(영상의 검색 또는 편집 등)를 수행할 수 있는 효과가 있다.
본 발명의 상세한 설명에서 인용되는 도면을 보다 충분히 이해하기 위하여 각 도면의 간단한 설명이 제공된다.
도 1은 본 발명의 일 실시예에 따른 딥러닝 기반의 비디오 스트림 처리 방법의 개요를 설명하기 위한 도면이다.
도 2는 본 발명의 일 실시예에 따른 딥러닝 기반의 비디오 스트림 처리 방법을 수행하기 위한 시스템의 개략적인 구성을 나타내는 도면이다.
도 3은 본 발명의 일 실시예에 따른 딥러닝 기반의 비디오 스트림 처리 방법의 개념을 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시 예에 따른 선택 프레임을 결정하는 개념을 설명하기 위한 도면이다.
도 5 및 도 6은 본 발명의 일 실시 예에 따른 영상처리를 설명하기 위한 도면이다.
본 발명은 다양한 변환을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변환, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 본 발명을 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.
제1, 제2 등의 용어는 다양한 구성요소들을 설명하는데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다.
본 명세서에 있어서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
또한, 본 명세서에 있어서는 어느 하나의 구성요소가 다른 구성요소로 데이터를 '전송'하는 경우에는 상기 구성요소는 상기 다른 구성요소로 직접 상기 데이터를 전송할 수도 있고, 적어도 하나의 또 다른 구성요소를 통하여 상기 데이터를 상기 다른 구성요소로 전송할 수도 있는 것을 의미한다. 반대로 어느 하나의 구성요소가 다른 구성요소로 데이터를 '직접 전송'하는 경우에는 상기 구성요소에서 다른 구성요소를 통하지 않고 상기 다른 구성요소로 상기 데이터가 전송되는 것을 의미한다.
도 1은 본 발명의 일 실시예에 따른 딥러닝 기반의 영상 캡셔닝을 통한 비디오 스트림 처리 방법의 개요를 설명하기 위한 도면이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 딥러닝 기반의 영상 캡셔닝을 통한 비디오 스트림 처리 방법을 위해서는 소정의 시스템(100)이 구비될 수 있다.
상기 시스템(100)은 비디오(예컨대, 편집을 수행할 편집대상 비디오)를 입력받을 수 있다.
그러면 본 발명의 기술적 사상에 따라 상기 시스템(100)은 비디오와 관련된 텍스트를 생성할 수 있다.
상기 텍스트는 상기 비디오의 시각적 정보를 설명하거나 표현할 수 있는 텍스트일 수 있다.
이러한 텍스트는 상기 비디오를 구성하는 모든 프레임 즉, 정지영상별로 정지영상에 표현된 시각적 정보를 나타내는 텍스트를 생성하는 딥러닝 모델을 통해 생성될 수도 있다.
하지만 실시 예에 따라서는 상기 비디오의 모든 프레임별로 시각적 정보를 나타내는 텍스트를 생성하는 것이 비효율적일 수 있다. 왜냐하면 상당수의 연속된 프레임에서는 시각적 정보의 차이는 거의 없을 수 있기 때문이다.
따라서 본 발명의 기술적 사상에 의하면, 상기 시스템(100)은 비디오를 소정의 기준으로 분할하고, 분할된 영상들 각각 즉, 샷(shot)들 각각에 대해 상기 샷들의 시각적 정보를 나타내는 하나 또는 복수의 텍스트를 생성할 수 있다. 이러한 텍스트를 본 명세서에서는 샷 텍스트로 정의하기로 한다.
상기 시스템(100)은 샷들 별로 하나 또는 복수의 샷 텍스트를 생성할 수 있다.
그리고 시스템(100)은 생성된 샷 텍스트에 기반하여, 사용자가 원하는 장면(적어도 하나의 프레임) 및/또는 원하는 샷을 용이하게 선택할 수 있는 기능 및/또는 UI를 제공할 수 있다.
또한 각 샷들 별로 생성된 샷 텍스트를 모두 결합하면, 상기 비디오를 설명하는 비디오 텍스트가 생성될 수 있다.
샷들 각각에 대해 샷 텍스트가 생성되면, 사용자가 원하는 장면/샷이 용이하게 선택될 수 있다. 그리고 사용자는 매우 효율적으로 비디오에서 원하는 장면/샷을 검색하거나 원하는 검색결과를 이용해 비디오에 대한 편집을 수행할 수 있다.
상기 시스템(100)은 샷들 별로 하나 또는 복수의 샷 텍스트를 생성하기 위해, 영상 캡셔닝을 수행할 수 있다. 상기 영상 캡셔닝은 정지영상의 캡셔닝 및/또는 동영상 캡셔닝을 포함할 수 있다.
상기 시스템(100)은 샷들 별로 하나 또는 복수의 프레임(정지영상)을 선택할 수 있다.
그리고 선택된 프레임별 각각별로 정지영상의 시각정보를 텍스트로 생성 즉, 캡셔닝(captioning)할 수 있다.
정지영상에서 시각적 정보를 텍스트로 생성하기 위한 기술적 사상은 공지된 바 있다. 이러한 정지영상 캡셔닝을 위해서는 적어도 하나의 딥러닝 모델을 이용할 수 있다. 예컨대, 정지영상으로부터 적어도 하나의 오브젝트를 디텍팅하기 위한 제1딥러닝 모델(예컨대, InceptionV3), 상기 제1딥러닝 모델에서 추출된 피쳐들을 이용하여 텍스트를 생성하기 위한 제2딥러닝 모델(예컨대, RNN, LSTM 등)이 이용되어 정지영상별로 캡셔닝이 수행되고, 그 결과 정지영상 즉, 프레임별로 상기 프레임을 설명할 수 있는 텍스트가 생성될 수 있다.
상기 시스템(100)은 샷들 각각별로 하나 또는 복수의 프레임을 선택 프레임으로 결정하고, 선택 프레임 각각별로 캡셔닝을 수행하여 해당 샷을 설명하는 텍스트 즉 샷 텍스트를 생성할 수 있다. 복수의 프레임을 선택한 경우에는 어느 하나의 샷을 설명하기 위해 복수의 텍스트가 생성될 수 있음을 의미할 수 있다.
한편, 본 발명의 기술적 사상에 의하면, 상기 시스템(100)은 샷을 설명하기 위해 상기 샷에 포함된 하나 또는 복수의 프레임 즉, 정지영상을 설명하기 위한 텍스트를 이용할 수도 있지만, 필요에 따라서는 정지영상 만으로는 해당 샷을 충분히 설명하기 어려운 경우도 존재한다.
예컨대, 특정 샷에서 어느 하나의 프레임이 선택되고 상기 프레임의 시각정 정보가 캡셔닝 모델을 통해 텍스트로 설명되는 경우와, 상기 특정 샷에서 상기 선택된 프레임을 포함하는 상대적으로 짧은 동영상 즉, 연속된 복수개의 프레임들에 기반하여 텍스트를 생성하는 것은 그 결과가 매우 상이할 수 있다.
예컨대, 어느 하나의 정지영상에서는 '사람이 단순히 입을 벌리고 있다'라는 텍스트가 생성될 수도 있지만, 상기 정지영상을 포함하는 일정 기간의 동영상을 보고 상기 동영상을 설명하는 경우에는 '사람이 하품을 하고 있다'라고 설명될 수 있다.
즉, 정지영상의 시각적 정보를 캡셔닝 하는 것에 비해, 상기 정지영상을 포함하는 동영상을 캡셔닝 하는 경우에 보다 유의미한 정보 즉, 해당 샷을 더 정확하게 설명할 수 있는 텍스트를 생성하는 것이 가능할 수 있다.
따라서 본 발명의 기술적 사상에 따른 상기 시스템(100)은 샷별로 상기 샷을 설명하기 위한 텍스틀 생성할 때, 상기 샷에 포함되는 동영상 자체를 캡셔닝하여 텍스트를 생성할 수도 있다.
이처럼 상대적으로 짧은 동영상을 설명하기 위한 텍스트를 생성 즉, 캡셔닝하기 위한 기술적 사상 역시 공지된 바 있다. 예컨대, Facebook AI Research 가 공개한 SlowFast 딥러닝 모델은 상대적으로 짧은 동영상을 설명할 수 있는 텍스트를 생성할 수 있다. 본 발명의 기술적 사상에 의하면 이러한 SlowFast 모델 이외에도 동영상을 설명하는 텍스틀 설명하기 위한 다양한 딥러닝 모델이 설계되고 학습되어 활용될 수 있음을 본 발명의 기술분야의 평균적 전문가는 용이하게 추론할 수 있을 것이다.
한편 상기 비디오를 복수의 샷들로 분할하는 태스크 역시 공지된 바 있다. 일반적으로 샷 경계 검출(shot boundary detection)은 시각적 정보가 유의미한 정도로 전환/변환되는 지점을 검출하기 위한 소정의 엔진을 구현하고 이를 통해 샷 경계 검출이 이루어질 수 있다.
이러한 샷 경계 검출은 통상적으로는 카메라의 테이크 또는 카메라의 속성(방향 전환, 줌인/아웃 등)이 유의미할 정도로 변환되는 지점을 검출하도록 구현되는 것이 일반적인데, 본 발명의 기술적 사상에 따르면 카메라의 속성이 전환되지 않더라도 시각적 정보가 유의미하게 변환되는 지점 즉, 샷 경계를 디텍팅할 수 있도록 학습된 딥러닝 모델이 이용되어 샷 분할이 수행될 수도 있다.
예컨대, 다수의 학습 데이터 즉, 비디오에서 시각적 정보가 크게 변환되는 것으로 판단되는 지점이 라벨링된 데이터가 구비되고, 이러한 다수의 학습 데이터를 학습한 딥러닝 모델을 이용하여 시각적 정보가 크게 변환되는 지점을 검출할 수 있는 CNN(Convolution Neural Network)가 구현될 수 있다. 이러한 딥러닝 모델을 구현할 때 어떤 지점을 샷 경계로 검출할지는 학습데이터의 라벨링을 어떤 지점에 하는지에 따라서 달라질 수 있음을 본 발명의 기술분야의 평균적 전문가는 용이하게 추론할 수 있을 것이다.
샷 분할을 위한 구성(예컨대, 딥러닝 모델)이 어떻게 구현되느냐에 따라 상기 비디오가 분할된 샷들 각각의 길이는 달라질 수 있으며, 각각의 샷들별로 선택 프레임의 개수가 달리 결정될 수도 있다. 예컨대, 상대적으로 긴 샷에 대해서는 해당 샷을 설명하기 위한 프레임이 복수개 선택될 수 있고, 상대적으로 짧은 샷에 대해서는 해당 샷을 설명하기 위한 프레임이 하나만 선택될 수도 있다.
또한 후술할 바와 같이 어떤 오브젝트를 중심으로 비디오를 설명하거나, 편집하는지에 따라 샷 분할이 달라질 필요가 있다. 이를 위해 오브젝트별로 샷 분할을 위한 딥러닝 모델이 복수 개 구비될 수도 있다.
또한 샷별로 샷 텍스트가 복수 개 생성될 수 있고, 이때 복수 개의 샷 텍스트는 서로 다른 정지영상들 각각의 캡셔닝 텍스트일 수도 있지만, 구현 예에 따라서는 복수 개의 샷 텍스트들 중 일부는 정지영상의 캡셔닝 텍스트이고 나머지 일부는 동영상 캡셔닝 텍스트일 수도 있다.
물론 실시 예에 따라서는 샷 텍스트는 정지영상의 캡셔닝 텍스트만이거나 또는 동영상의 캡셔닝 텍스트만일 수도 있다.
어떠한 경우든 상기 시스템(100)은 비디오를 분할하고, 분할된 각각의 분할 비디오를 잘 설명할 수 있는 텍스트를 생성할 수 있다.
그러면 사용자는 비디오에서 사용자가 원하는 일부 구간만을 텍스트를 통해 검색하고, 필요에 따라 검색결과를 활용하여 비디오에 대한 편집을 수행할 수도 있다.
예컨대, 상기 시스템(100)이 "사람이 2명"이란 검색조건을 입력받으면 상기 시스템(100)은 샷 텍스트들 중 "사람이 2명"이란 텍스트를 그대로 포함하고 있거나 시멘틱 서치를 통해 사람이 2명이라는 의미를 가지는 샷 텍스트 즉, 매칭 샷 텍스트를 검색할 수 있다. 물론 이러한 검색조건은 반드시 하나가 아니라 논리 연산을 통해 수행될 수도 있다.
예컨대, "사람이 2명" and "산"이란 선택조건이 입력되면 사람이 2명 있고 산이 존재하는 샷 텍스트가이 매칭 샷 텍스트로 선택될 수 있다.
이러한 검색을 위해서는 NLP(Natural Language Processing)를 위해 학습된 언어모델을 통해 키워드 서치가 아닌 시멘틱 서치(sematic search)가 활용될 수 있다.
그러면 상기 시스템(100)은 매칭 샷 텍스트에 상응하는 매칭영상을 추출할 수 있다. 상기 매칭영상은 상기 매칭 샷 텍스트에 상응하는 샷일 수도 있고, 매칭 샷 텍스트에 상응하는 정지영상(프레임) 또는 동영상일 수도 있다.
예컨대, 전술한 예에서는, 사람이 2명 존재하는 매칭 샷, 상기 매칭 샷에 포함되고 캡셔닝된 특정 프레임 이미지, 또는 상기 매칭 샷에 포함되고 캡셔닝된 동영상이 매칭영상으로 추출될 수 있다.
그러면 사용자의 요청에 따라 선택된 매칭영상을 삭제하여 상기 비디오를 편집하거나 또는 매칭영상만을 남기는 등의 편집 커맨드를 소정의 방식(텍스트 커맨드 또는 소정의 UI 등)을 통해 입력받을 수 있다.
다양한 방식으로 샷 텍스트를 이용해 사용자가 원하는 매칭영상의 선택이 매우 효과적으로 텍스트 기반으로 선택될 수 있고, 이를 이용한 비디오 편집이 효과적으로 수행될 수 있다.
예컨대, 개와 고양이가 촬영된 비디오에서 개만 존재하는 매칭영상들만 남기고 싶은 경우, 선택조건으로 "개"를 입력한 후 특정된 매칭영상만을 남기고 나머지 프레임들을 삭제하는 편집 커맨드가 입력되면 편집 대상 이미지에서 개가 등장하는 프레임들로만 구성된 편집된 비디오가 획득될 수 있다.
다양한 방식의 편집 커맨드(선택, 삭제, 또는 순서의 조정 등)이 가능할 수 있다.
이러한 과정을 통해 사용자는 비디오의 시각적 정보가 표현된 텍스트를 이용한 영상처리를 매우 효율적으로 수행할 수 있다.
또한 비디오의 편집을 위해 반드시 사용자로부터 검색조건이 입력되어야 하는 것은 아닐 수 있다. 예컨대, 상기 시스템(100)은 미리 편집을 위한 가이드라인이 결정되어 있을 수도 있고, 그러면 검색조건의 입력 없이도 상기 가이드라인에 기초하여 상기 시스템(100)이 자동으로 비디오를 편집할 수도 있다.
예컨대, 상기 가이드라인은 특정 오브젝트(예컨대, 사람, 특정 동물, 자동차 등의 특정 물체)의 존재 유무에 따라 자동으로 해당 샷을 삭제하거나 유지하는 것일 수도 있고, 특정 오브젝트의 특정 상태(예컨대, 사람이 일어나 있는 샷, 뛰고 있는 샷)에 따라 해당 샷을 삭제하거나 유지하는 것일 수도 있다. 또는 특정 오브젝트가 특정행위를 하는 샷(예컨대, 사람의 특정행위, 미리 정해진 행위이외의 행위 등)을 삭제하거나 유지하는 것이 상기 가이드라인으로 정해져 있을 수도 있다. 다양한 실시 예의 가이드라인이 미리 설정되어 있을 수 있고, 그러면 상기 시스템(100)은 상기 가이드라인에 기초하여 자동으로 비디오를 편집할 수도 있다.
한편, 샷들 각각을 설명하기 위한 샷 텍스트를 생성하는 경우, 상기 시스템(100)은 해당 샷을 대표적으로 설명할 수 있는 샷 텍스트를 생성하는 것이 바람직하다.
그리고 샷 분할이 시각적 정보가 유의미하게 전환되는 지점을 검출하여 수행되는 경우라면, 시각적 정보의 전환이 이루어질 때마다 샷이 분할될 수 있고, 이러한 경우 각각의 샷을 대표하기 위한 설명은 샷의 중앙지점(예컨대, 프레임수를 기준으로 중간 또는 중간에 가장 근접한 프레임)에 해당하는 프레임을 기준으로 수행되는 것이 바람직할 수 있다.
이처럼 단순히 해당 샷을 설명하기 위한 선택 프레임이 프레임의 위치를 기준으로 결정될 수도 있지만, 실시 예에 따라서는 해당 프레임에 미리 정해진 오브젝트가 포함되어 있는지를 기준으로 결정될 필요가 있다.
예컨대, 사람의 행위, 또는 수를 기준으로 영상처리(검색 및/또는 편집)을 하고자 하는 경우에는, 샷별로 사람이 포함된 프레임이 선택 프레임으로 선택되어 해당 프레임을 설명하는 텍스트가 생성되는 것이 바람직할 수 있다. 그래야만 사용자가 원하는 오브젝트 기준으로 텍스트 기반의 영상 검색 및/또는 편집이 효율적으로 이루어질 수 있다.
따라서 상기 시스템(100)은 상기 분할된 샷들 중에서 미리 정해진 오브젝트가 포함된 프레임을 제한적으로 선택 프레임으로 결정할 수 있고, 결정된 선택 프레임에 대해 캡셔닝을 수행하여 상기 샷을 설명하는 샷 텍스트로 생성할 수 있다.
이처럼 미리 정해진 오브젝트가 포함된 프레임을 선택프레임으로 결정하기 위해서는 정지영상에서 상기 오브젝트가 포함되어 있는지를 판단할 수 있어야 하며, 이를 위해 오브젝트 디텍션을 위한 딥러닝 모델이 상기 시스템(100)에 구비될 수 있음은 물론이다. 오브젝트 디텍션을 위한 딥러닝 모델은 널리 공지되어 있다. 통상 CNN 모델이 활용되며, R-CNN, Yolo, InceptionV3, Resnet 계열의 딥러닝 모델이 활용될 수 있음을 본 발명의 기술분야의 평균적 전문가는 용이하게 추론할 수 있을 것이다.
한편, 미리 정해진 오브젝트의 포함여부뿐만 아니라 프레임의 위치도 해당 샷을 대표하는 설명을 생성하는데 중요할 수 있다. 따라서 이러한 두 가지 팩터를 모두 고려하여 선택 프레임이 결정될 필요가 있을 수 있다.
이를 위해 상기 시스템(100)은 각각의 샷의 중앙에 상응하는 중앙 프레임(예컨대, 프레임 위치에 기반한 정중간 프레임 또는 정중간 프레임이 없는 경우 가장 인접한 프레임)에 상기 오브젝트가 포함된 경우에는 상기 중앙 프레임을 상기 선택 프레임에 포함시킬 수 있다. 즉 상기 중앙 프레임은 적어도 상기 샷을 설명하기 위한 프레임에 포함되며 추가로 몇몇 프레임이 더 선택 프레임으로 선택될 수도 있다.
만약, 상기 중앙 프레임에 상기 오브젝트가 포함되지 않은 경우에는 상기 시스템(100)은 상기 중앙 프레임으로부터 인접한 프레임의 순서대로 상기 오브젝트가 포함된 프레임을 탐색하여 먼저 탐색된 프레임을 상기 선택 프레임에 포함시킬 수 있다.
이를 통해 프레임의 위치 및 관심있는 오브젝트의 포함여부를 모두 만족시키면서 해당 샷을 대표적으로 설명할 수 있는 샷 텍스트가 생성될 수 있다.
또한 해당 샷 텍스트를 생성하기 위해 동영상 캡셔닝이 수행되는 경우에는, 동영상 캡셔닝 역시 사용자가 원하는 오브젝트를 기준으로 상기 오브젝트의 행위(움직임, 상태변화 등)가 캡셔닝 되는 것이 바람직할 수 있다.
예컨대, 사용자가 특정 오브젝트(예컨대, 사람, 동물 등)를 기준으로 동영상을 검색하거나 편집하기 원한다면, 정지영상 캡셔닝 뿐만 아니라 동영상 캡셔닝 결과 생성되는 텍스트 역시 상기 특정 오브젝트의 행위가 포함되는 것이 바람직할 수 있다.
이를 위해 상기 시스템(100)은 오브젝트가 포함되도록 결정된 상기 선택 프레임을 포함하면서 미리 결정된 개수(미리 결정된 길이를 포함함)의 연속된 복수의 프레임들인 동영상에 대해 동영상 캡셔닝을 수행하여 그 결과로 상기 샷 텍스트를 생성할 수 있다. 선택 프레임이 동영상의 중간에 위치하도록 복수의 프레임들이 선택될 수도 있고, 실시 예에 따라서는 선택 프레임이 동영상의 앞 또는 뒤의 소정의 위치에 위치하도록 복수의 프레임들이 선택될 수도 있다.
결국 본 발명의 기술적 사상에 의하면, 상기 시스템(100)은 비디오의 시각적 정보를 잘 나타내는 텍스트를 생성하고, 이러한 텍스트는 분할된 샷 별로 생성될 수 있으며, 상기 텍스틀 이용해 사용자가 원하는 비디오의 일부분인 매칭영상이 추출될 수 있고, 이를 이용해 편집 등의 다양한 영상처리가 이루어질 수 있다.
한편, 비디오를 잘 설명할 수 있는 텍스트는 어떤 오브젝트를 중점적으로 취급하느냐에 따라 달라질 수 있다. 예컨대, 특정 비디오에서 사람, 개, 자동차 등이 등장할 수 있고, 사람 중심으로 상기 특정 비디오를 설명하는 텍스트를 생성하는 것과 개 또는 자동차를 중심으로 상기 특정 비디오를 설명하는 텍스트를 생성하는 것은 전혀 다른 결과를 가져올 수 있다.
따라서 단순히 비디오에 상응하는 텍스트의 생성뿐만 아니라, 비디오의 편집이나 활용 등에 있어서 어떠한 오브젝트를 중심으로 비디오에 상응하는 텍스트를 생성하느냐는 중요한 이슈일 수 있다.
따라서 상기 시스템(100)은 미리 해당 비디오에서 중심적으로 취급할 텍스트를 생성할 오브젝트를 결정하고, 결정된 오브젝트에 기초하여 샷 분할, 샷 텍스트의 생성을 수행할 수 있다.
예컨대, 샷 분할 역시 어떤 오브젝트를 중심으로 하느냐에 따라 그 분할 결과가 달라질 수 있다. 예컨대, 사람을 중심으로 비디오를 설명하고자 하는 경우에는 사람의 상태, 행동 등의 변화에 따라 샷이 분할되는 것이 바람직할 수 있다. 이런 경우에 개나 자동차의 상태, 행동 등의 변화는 샷 분할에서 중요하지 않을 수 있다. 하지만 개나 자동차를 중심으로 비디오를 설명할 필요가 있는 경우에는 개나 자동차의 상태, 행동 등의 변화에 따라 샷이 분할되는 것이 더 바람직할 수 있다.
결국 어떤 오브젝트를 중심으로 해당 비디오에 상응하는 텍스트를 생성할지에 따라 샷 분할, 분할된 샷들 각각의 샷 텍스트가 달라질 수 있다.
이를 위해 상기 시스템(100)은 미리 정해진 복수의 오브젝트 각각에 상응하는 샷 분할 엔진(딥 러닝 모델), 캡셔닝 엔진(딥 러닝 모델) 등을 구비할 수 있고, 중심으로 취급할 오브젝트 즉, 중심 오브젝트의 결정에 따라 해당하는 샷 분할 엔진, 캡셔닝 엔진을 이용하여 본 발명의 기술적 사상을 구현할 수 있다.
이러한 기술적 사상을 구현하기 위한 상기 시스템(100)의 구성은 도 2와 같을 수 있다.
도 2는 본 발명의 일 실시예에 따른 딥러닝 기반의 영상 캡셔닝을 통한 비디오 스트림 처리 방법을 수행하기 위한 시스템의 개략적인 구성을 나타내는 도면이다.
도 2를 참조하면, 본 발명의 기술적 사상에 따른 딥러닝 기반의 영상 캡셔닝을 통한 비디오 스트림 처리 방법을 구현하기 위해서는 본 발명의 기술적 사상에 따른 시스템(100)이 구비된다.
상기 시스템(100)은 본 발명의 기술적 사상을 구현하기 위한 프로그램이 저장되는 메모리(120), 및 상기 메모리(120)에 저장된 프로그램을 실행하기 위한 프로세서(110)가 구비될 수 있다.
본 명세서에서 상기 시스템(100)이 수행하는 기능 및/또는 동작은 상기 프로세서(110)에 의해 상기 메모리(120)에 저장된 프로그램이 구동되어 수행될 수 있음을 본 발명의 기술분야의 평균적 전문가는 용이하게 추론할 수 있을 것이다.
상기 프로세서(110)는 상기 시스템(100)의 구현 예에 따라, CPU, 모바일 프로세서 등 다양한 명칭으로 명명될 수 있음을 본 발명의 기술분야의 평균적 전문가는 용이하게 추론할 수 있을 것이다. 또한, 상기 시스템(100)은 복수의 물리적 장치들이 유기적으로 결합되어 구현될 수도 있으며, 이러한 경우 상기 프로세서(110)는 물리적 장치별로 적어도 한 개 구비되어 본 발명의 시스템(100)을 구현할 수 있음을 본 발명의 기술분야의 평균적 전문가는 용이하게 추론할 수 있을 것이다.
상기 메모리(120)는 상기 프로그램이 저장되며, 상기 프로그램을 구동시키기 위해 상기 프로세서가 접근할 수 있는 어떠한 형태의 저장장치로 구현되어도 무방하다. 또한 하드웨어적 구현 예에 따라 상기 메모리(120)는 어느 하나의 저장장치가 아니라 복수의 저장장치로 구현될 수도 있다. 또한 상기 메모리(120)는 주기억장치 뿐만 아니라, 임시기억장치를 포함할 수도 있다. 또한 휘발성 메모리 또는 비휘발성 메모리로 구현될 수도 있으며, 상기 프로그램이 저장되고 상기 프로세서에 의해 구동될 수 있도록 구현되는 모든 형태의 정보저장 수단을 포함하는 의미로 정의될 수 있다.
상기 시스템(100)은 실시 예에 따라 사용자의 단말기가 접속할 수 있는 웹 에 연결된 웹 서버로 구현될 수도 있고 사용자의 단말기에 설치되거나 다양한 방식으로 구현될 수도 있으며, 본 명세서에서 정의되는 기능을 수행할 수 있는 어떠한 형태의 데이터 프로세싱 장치도 포함하는 의미로 정의될 수 있다.
또한 상기 시스템(100)의 실시 예에 따라 다양한 주변장치들(주변장치 1(130) 내지 주변장치 N(130-1))이 더 구비될 수 있다. 예컨대, 키보드, 모니터, 그래픽 카드, 통신장치 등이 주변장치로써 상기 시스템(100)에 더 포함될 수 있음을 본 발명의 기술분야의 평균적 전문가는 용이하게 추론할 수 있을 것이다.
도 3은 본 발명의 일 실시예에 따른 딥러닝 기반의 영상 캡셔닝을 통한 비디오 스트림 처리 방법의 개념을 설명하기 위한 도면이다.
도 3을 참조하면, 상기 시스템(100)은 비디오 스트림 즉, 비디오(10)를 입력받을 수 있다.
그러면 상기 시스템(100)은 상기 비디오(10)를 복수의 샷들(S1, S2, S3, ... , Sn-1, Sn)로 구분할 수 있다.
이러한 샷 구분을 위해 샷 경계 검출을 위한 딥러닝 모델이 구비될 수 있음은 전술한 바와 같다. 또한 중심 오브젝트가 무엇으로 결정되는지에 따라 샷 경계 검출의 결과는 달라질 수 있다. 따라서 사용자 또는 시스템이 복수의 오브젝트들 중 미리 중심 오브젝트를 결정할 수도 있다.
각 오브젝트별로 별개의 샷 경계 검출을 위한 딥러닝 모델이 구축되어 있을 수 있음은 물론이다. 또한 오브젝트별 샷 경계 검출을 위한 딥러닝 모델은 다수의 비디오에서 해당 오브젝트를 중심으로 상태 또는 행동의 변화가 이루어지는 지점이 라벨링된 학습 데이터를 이용해 학습될 수 있다.
그러면 상기 시스템(100)은 각각의 샷들(S1, S2, S3, ... , Sn-1, Sn)별로 해당 샷을 대표적으로 잘 설명할 수 있는 샷 텍스트들(st1, st2, st3, stn-1, stn)을 생성할 수 있다.
각각의 샷 텍스트들 역시 중심으로 취급할 오브젝트를 기준으로 샷 텍스트들(st1, st2, st3, stn-1, stn)을 생성할 수 있음은 물론이다. 이를 위해 정지영상 캡셔닝 또는 동영상 캡셔닝을 위한 딥러닝 모델 역시 각각의 복수의 오브젝트별로 별도로 학습된 것이 미리 구비될 수도 있다. 그리고 중심 오브젝트가 결정되면 해당 중심 오브젝트에 상응하는 딥 러닝 모델을 이용하여 샷 텍스트가 생성될 수 있다.
그러면 상기 시스템(100)은 검색조건을 텍스트로 입력받고, 입력받은 검색조건에 상응하는 매칭 샷 텍스트를 검출할 수 있다. 예컨대, 매칭 샷 텍스트는 st2, st3, stn일 수 있고, 그러면 상기 시스템(100)은 매칭영상으로써 매칭 샷 텍스트(st2, st3, stn)에 상응하는 매칭 샷(S2, S3, Sn) 또는 상기 매칭 샷(S2, S3, Sn)에 포함되는 선택 프레임(정지영상) 또는 선택 프레임들(동영상)을 매칭영상으로 추출할 수 있다.
도 4는 본 발명의 일 실시 예에 따른 선택 프레임을 결정하는 개념을 설명하기 위한 도면이다.
도 4를 참조하면, 소정의 샷(예컨대, Si)에 대해 상기 샷(예컨대, Si)을 설명하기 위한 샷 텍스트를 생성하기 위해서는 선택 프레임이 결정되어야 할 수 있다.
이를 위해 상기 시스템(100)은 상기 샷(예컨대, Si)에서 단순히 중앙 프레임(예컨대, f4)를 선택 프레임으로 결정할 수도 있다.
하지만 실시 예에 따라서, 상기 시스템(100)은 상기 중앙 프레임(예컨대, f4)에 미리 정해진 오브젝트가 디텍팅되는지 여부에 따라 상기 중앙 프레임(예컨대, f4)을 선택 프레임으로 결정할 수도 있고, 그렇지 않을 수도 있다. 상기 미리 정해진 오브젝트는 전술한 바와 같이 중심 오브젝트일 수 있다. 예컨대, 샷 분할부터 중심 오브젝트를 기준으로 수행된 후, 중심 오브젝트가 포함된 프레임이 선택 프레임으로 결정될 수도 있다.
예컨대, 상기 시스템(100)은 상기 중앙 프레임(예컨대, f4)에 미리 정해진 오브젝트(예컨대, 중심 오브젝트)가 포함된 경우(오브젝트가 디텍팅되는 경우)에는 상기 중앙 프레임(예컨대, f4)을 선택 프레임으로 결정할 수 있다. 만약 상기 중앙 프레임(예컨대, f4)에 상기 오브젝트가 포함되지 않은 경우, 상기 시스템(100)은 상기 중앙 프레임(예컨대, f4)의 최인접 프레임(예컨대, f3, f5 등, f3과 f5 간의 순서는 미리 결정되어 있을 수 있음)부터 순차적으로 상기 오브젝트가 포함되어 있는지를 판단하고 가장 먼저 오브젝트가 포함된 것으로 결정된 프레임을 선택 프레임에 포함시킬 수 있다.
이를 통해 사용자가 원하는 오브젝트 즉, 중심 오브젝트를 기준으로 샷을 설명하면서도 그 위치도 대표적인 중앙에 근접한 위치를 갖는 프레임이 선택 프레임으로 결정될 수 있다.
한편 샷 텍스트가 동영상을 기준으로 캡셔닝되는 경우에도, 단순히 중앙 프레임(예컨대, f4)부터 선후로 미리 결정된 개수(또는 시간)만큼의 연속된 프레임들이 동영상으로 선택되고, 이러한 동영상이 캡셔닝되어 샷 텍스트가 생성될 수도 있다.
하지만 전술한 바와 같이 상기 오브젝트를 포함하는 선택 프레임이 결정되면, 결정된 상기 선택 프레임을 포함하는 복수의 프레임들이 캡셔닝될 동영상으로 특정되고 상기 특정된 동영상이 캡셔닝되어 상기 샷을 설명하는 샷 텍스트가 생성될 수도 있다.
또한 각각의 샷들에 대한 샷 텍스트가 생성되면, 이러한 샷 텍스트들에 기초하여 상기 비디오 전체에 상응하는 텍스트 즉, 비디오 설명 텍스트가 생성될 수도 있다. 비디오 설명 텍스트는 샷 텍스트들을 단순 결합한 것일 수도 있지만, 샷 텍스트들이 의미적으로 중복된 것이 빈번할 수도 있으므로 샷 텍스트들의 집합을 요약하여 생성될 수도 있다. 이러한 요약은 추출적 요약(extractice summarization)이 이용될 수도 있고, 추상적 요약(abstractive summarization)이 이용될 수도 있다.
도 5 및 도 6은 본 발명의 일 실시 예에 따른 영상처리를 설명하기 위한 도면이다.
이처럼 샷 텍스트가 결정되고 매칭영상이 결정되면, 상기 시스템(100)은 상기 매칭영상(도 5 및 도 6에서는 매칭 샷이 매칭영상인 경우를 설명함)을 기반으로 비디오(10)가 용이하게 편집될 수 있다. 각각의 샷 텍스트는 중심 오브젝트가 결정된 경우에는 중심 오브젝트의 상태, 행동 등을 설명하는 텍스트일 수 있다.
예컨대, 사용자가 매칭영상(예컨대, S2, S3, Sn)을 삭제하는 편집을 원하여 이러한 커맨드가 입력되면, 도 5에 도시된 바와 같이 상기 시스템(100)은 상기 매칭영상(예컨대, S2, S3, Sn)이 상기 비디오(10)에서 삭제된 영상을 편집 비디오로 생성할 수 있다.
예컨대, 사용자가 매칭영상(예컨대, S2, S3, Sn)만을 남기고, 이에 기반하여 편집 비디오를 생성하고자 하는 경우, 도 6에 도시된 바와 같이 상기 시스템(100)은 상기 매칭영상(예컨대, S2, S3, Sn)만을 남긴 편집 비디오를 생성할 수 있다.
물론 사용자는 이러한 편집 비디오에 대해 추가적으로 영상을 삽입하거나 순서를 변경하는 등의 편집행위를 더 수행할 수도 있다.
결국 본 발명의 기술적 사상에 의하면, 비디오에 대해 상기 비디오의 시각적 정보를 잘 설명할 수 있는 텍스트를 생성하고 이를 이용해 영상처리를 매우 효과적으로 수행할 수 있는 효과가 있다.
또한 본 발명의 기술적 사상은 비디오의 편집뿐만 아니라, 샷 텍스트에 기반한 비디오 설명 텍스트의 생성, 또는 이를 이용해 비디오의 검색 등 다양한 영역에 활용될 수 있음을 본 발명의 기술분야의 평균적 전문가는 용이하게 추론할 수 있을 것이다.
한편, 본 발명의 실시예에 따른 방법은 컴퓨터가 읽을 수 있는 프로그램 명령 형태로 구현되어 컴퓨터로 읽을 수 있는 기록 매체에 저장될 수 있으며, 본 발명의 실시예에 따른 제어 프로그램 및 대상 프로그램도 컴퓨터로 판독 가능한 기록 매체에 저장될 수 있다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다.
기록 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 소프트웨어 분야 당업자에게 공지되어 사용 가능한 것일 수도 있다.
컴퓨터로 읽을 수 있는 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media) 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다.
프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 전자적으로 정보를 처리하는 장치, 예를 들어, 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
상술한 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시 예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성요소들도 결합된 형태로 실시될 수 있다.
본 발명의 범위는 상기 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타나며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.

Claims (8)

  1. 시스템이 비디오를 복수의 샷으로 분할하는 단계;
    상기 시스템이 상기 분할된 샷들 각각에 포함된 복수의 프레임들 중에서 적어도 하나의 선택 프레임을 결정하는 단계;
    상기 시스템이 결정한 선택 프레임에 상응하는 영상 캡셔닝을 통해 상기 분할된 샷들 각각에 대해 적어도 하나의 샷 텍스트를 생성하는 단계;
    상기 시스템이 생성한 상기 분할된 샷들 각각의 상기 적어도 하나의 샷 텍스트에 기초하여 상기 비디오를 편집하는 단계를 포함하며,
    상기 시스템이 상기 분할된 샷들 각각에 포함된 복수의 프레임들 중에서 적어도 하나의 선택 프레임을 결정하는 단계는,
    상기 분할된 샷들 각각의 길이에 기초하여 선택 프레임의 개수를 하나 또는 복수개로 가변적으로 선택하는 단계를 포함하고,
    상기 시스템이 결정한 선택 프레임에 상응하는 영상 캡셔닝을 통해 상기 분할된 샷들 각각에 대해 적어도 하나의 샷 텍스트를 생성하는 단계는,
    가변적으로 선택된 선택 프레임 각각별로 샷 텍스트를 생성하는 단계를 포함하는 딥러닝 기반의 비디오 스트림 처리 방법.
  2. 제1항에 있어서, 상기 분할된 샷들 각각에 포함된 복수의 프레임들 중에서 적어도 하나의 선택 프레임을 결정하는 단계는,
    상기 분할된 샷들에 포함되며 연속된 복수의 프레임들인 동영상을 상기 적어도 하나의 선택 프레임으로 결정하는 단계를 포함하며,
    상기 결정한 선택 프레임에 상응하는 영상 캡셔닝을 통해 상기 샷 텍스트를 생성하는 단계는,
    상기 동영상에 대한 동영상 캡션닝을 통해 상기 샷 텍스트를 생성하는 단계를 포함하는 딥러닝 기반의 비디오 스트림 처리 방법.
  3. 제1항에 있어서, 상기 딥러닝 기반의 비디오 스트림 처리 방법은,
    상기 시스템이 검색조건 텍스트를 입력받으면, 상기 검색조건 텍스트에 상응하는 매칭 샷 텍스트를 선택하고, 선택된 매칭 샷 텍스트에 상응하는 매칭영상을 추출하는 단계를 더 포함하며,
    상기 매칭영상에 기초하여 상기 비디오를 편집하는 것을 특징으로 하는 딥러닝 기반의 비디오 스트림 처리 방법.
  4. 제3항에 있어서, 상기 비디오를 편집하는 단계는,
    상기 시스템이 상기 매칭영상을 상기 편집 대상 비디오에서 삭제한 제1편집 비디오를 생성하는 단계; 또는
    상기 시스템이 상기 매칭영상을 제외한 나머지 프레임들을 삭제한 제2편집 비디오를 생성하는 단계를 포함하는 딥러닝 기반의 비디오 스트림 처리 방법.
  5. 제1항에 있어서, 상기 분할된 샷들 각각에 포함된 복수의 프레임들 중에서 적어도 하나의 선택 프레임을 결정하는 단계는,
    상기 분할된 샷들 중에서 미리 정해진 오브젝트가 포함된 프레임을 상기 선택 프레임으로 결정하는 단계를 포함하는 딥러닝 기반의 비디오 스트림 처리 방법.
  6. 제5항에 있어서, 상기 분할된 샷들 중에서 미리 정해진 오브젝트가 포함된 프레임을 상기 선택 프레임으로 결정하는 단계는,
    상기 분할된 샷의 중앙에 상응하는 중앙 프레임에 상기 오브젝트가 포함된 경우에는 상기 중앙 프레임을 상기 선택 프레임에 포함시키고, 상기 중앙 프레임에 상기 오브젝트가 포함되지 않은 경우에는 상기 중앙 프레임으로부터 인접한 프레임의 순서대로 상기 오브젝트가 포함된 프레임을 탐색하여 먼저 탐색된 프레임을 상기 선택 프레임에 포함시키는 단계를 포함하는 딥러닝 기반의 비디오 스트림 처리 방법.
  7. 데이터 처리장치에 설치되며 제1항 내지 제6항 중 어느 한 항에 기재된 방법을 수행하기 위하여 컴퓨터 판독 가능한 기록매체에 저장된 컴퓨터 프로그램.
  8. 딥러닝 기반의 비디오 스트림 처리 방법을 위한 시스템으로서,
    프로세서; 및
    상기 프로세서에 의하여 실행되는 컴퓨터 프로그램을 저장하는 메모리를 포함하며,
    상기 프로세서는 상기 프로그램을 구동하여,
    비디오를 복수의 샷으로 분할하고, 상기 분할된 샷들 각각에 포함된 복수의 프레임들 중에서 적어도 하나의 선택 프레임을 결정하며, 결정한 선택 프레임에 상응하는 영상 캡셔닝을 통해 상기 분할된 샷들 각각에 대해 적어도 하나의 샷 텍스트를 생성하고, 생성한 상기 분할된 샷들 각각의 상기 적어도 하나의 샷 텍스트에 기초하여 상기 비디오를 편집하되,
    상기 프로세서는 상기 프로그램을 구동하여,
    상기 분할된 샷들 각각의 길이에 기초하여 선택 프레임의 개수를 하나 또는 복수개로 가변적으로 선택하고, 가변적으로 선택된 선택 프레임 각각별로 샷 텍스트를 생성하는 시스템.
KR1020210082966A 2021-06-25 2021-06-25 딥러닝 기반의 비디오 스트림 처리 방법 및 그 시스템 KR102564174B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020210082966A KR102564174B1 (ko) 2021-06-25 2021-06-25 딥러닝 기반의 비디오 스트림 처리 방법 및 그 시스템
PCT/KR2021/008062 WO2022270659A1 (ko) 2021-06-25 2021-06-28 딥러닝 기반의 비디오 스트림 처리 방법 및 그 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210082966A KR102564174B1 (ko) 2021-06-25 2021-06-25 딥러닝 기반의 비디오 스트림 처리 방법 및 그 시스템

Publications (2)

Publication Number Publication Date
KR20230000632A KR20230000632A (ko) 2023-01-03
KR102564174B1 true KR102564174B1 (ko) 2023-08-09

Family

ID=84545517

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210082966A KR102564174B1 (ko) 2021-06-25 2021-06-25 딥러닝 기반의 비디오 스트림 처리 방법 및 그 시스템

Country Status (2)

Country Link
KR (1) KR102564174B1 (ko)
WO (1) WO2022270659A1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102350457B1 (ko) * 2020-03-18 2022-01-13 주식회사 딥하이 딥러닝 기반의 영상 캡셔닝을 통한 비디오 스트림 처리 방법 및 그 시스템

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101082073B1 (ko) 2009-12-03 2011-11-10 한국방송공사 비디오 스크랩을 이용한 비디오 콘텐츠 요약 방법 및 장치
KR102080315B1 (ko) * 2018-06-01 2020-02-24 네이버 주식회사 동영상 서비스 제공 방법 및 이를 이용하는 서비스 서버
KR20200001246A (ko) * 2018-06-26 2020-01-06 경기대학교 산학협력단 심층 신경망을 이용한 캡션 생성 시스템
KR102199446B1 (ko) * 2018-08-24 2021-01-06 에스케이텔레콤 주식회사 영상 컨텐츠 검색을 지원하는 영상 서비스 장치 및 영상 컨텐츠 검색 지원 방법
WO2019156543A2 (ko) * 2019-04-30 2019-08-15 엘지전자 주식회사 동영상의 대표 이미지를 결정하는 방법 및 그 방법을 처리하는 전자 장치
KR20210064587A (ko) * 2019-11-26 2021-06-03 주식회사 엔씨소프트 동영상 구간 고속 분할 장치 및 고속 분할 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102350457B1 (ko) * 2020-03-18 2022-01-13 주식회사 딥하이 딥러닝 기반의 영상 캡셔닝을 통한 비디오 스트림 처리 방법 및 그 시스템

Also Published As

Publication number Publication date
KR20230000632A (ko) 2023-01-03
WO2022270659A1 (ko) 2022-12-29

Similar Documents

Publication Publication Date Title
AU2017225018B2 (en) A system for creating virtual reality experiences from pdf
Wang et al. Write-a-video: computational video montage from themed text.
CN113709561B (zh) 视频剪辑方法、装置、设备及存储介质
US10698917B2 (en) Managing electronic slide decks
KR102350457B1 (ko) 딥러닝 기반의 영상 캡셔닝을 통한 비디오 스트림 처리 방법 및 그 시스템
US11372873B2 (en) Managing electronic slide decks
US10656814B2 (en) Managing electronic documents
US20220269713A1 (en) Automatic generation of presentation slides from documents
KR20160078703A (ko) 문장 시각화 방법 및 장치
CN114372172A (zh) 生成视频封面图像的方法、装置、计算机设备及存储介质
KR20220135901A (ko) 맞춤형 교육 콘텐츠 제공 장치, 방법 및 프로그램
KR20230000633A (ko) 딥러닝 기반의 중심 오브젝트 기반 비디오 스트림 처리 방법 및 그 시스템
KR101640317B1 (ko) 오디오 및 비디오 데이터를 포함하는 영상의 저장 및 검색 장치와 저장 및 검색 방법
Tran et al. V-first: A flexible interactive retrieval system for video at vbs 2022
KR102564174B1 (ko) 딥러닝 기반의 비디오 스트림 처리 방법 및 그 시스템
KR20210115401A (ko) 딥러닝 기반의 지능형 장면 분할 방법 및 그 시스템
KR20210117086A (ko) 딥러닝 기반의 vtt를 이용한 비디오 편집 방법 및 그 시스템
KR20220131409A (ko) 딥러닝 기반의 영상 캡셔닝을 통한 비디오 스트림 처리 방법 및 그 시스템
US10845945B2 (en) Managing electronic documents
JPH08314966A (ja) 文書検索装置のインデックス作成方法及び文書検索装置
CN115379301A (zh) 视频处理方法以及相关设备
US11907284B2 (en) Method and a system for processing an image and for generating a contextually coherent video based on images processed thereby
KR20210115402A (ko) 비디오 스트림 내의 커맨드 인식을 통한 비디오 편집 방법 및 그 시스템
KR20210115371A (ko) 딥러닝 기반의 이미지 캡셔닝을 이용한 비디오 편집 방법 및 그 시스템
KR101902784B1 (ko) 태그데이터를 이용한 음성데이터 관리방법 및 그 장치

Legal Events

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