KR20220138558A - 머신 러닝 기반의 영상 자동 편집 방법 및 시스템 - Google Patents
머신 러닝 기반의 영상 자동 편집 방법 및 시스템 Download PDFInfo
- Publication number
- KR20220138558A KR20220138558A KR1020210044347A KR20210044347A KR20220138558A KR 20220138558 A KR20220138558 A KR 20220138558A KR 1020210044347 A KR1020210044347 A KR 1020210044347A KR 20210044347 A KR20210044347 A KR 20210044347A KR 20220138558 A KR20220138558 A KR 20220138558A
- Authority
- KR
- South Korea
- Prior art keywords
- frame
- highlight
- input image
- machine learning
- image
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/02—Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/02—Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
- G11B27/031—Electronic editing of digitised analogue information signals, e.g. audio or video signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/80—Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
- H04N21/85—Assembly of content; Generation of multimedia applications
- H04N21/854—Content authoring
- H04N21/8549—Creating video summaries, e.g. movie trailer
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
- G06F18/2148—Generating training patterns; Bootstrap methods, e.g. bagging or boosting characterised by the process organisation or structure, e.g. boosting cascade
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/62—Extraction of image or video features relating to a temporal dimension, e.g. time-based feature extraction; Pattern tracking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/46—Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/40—Scenes; Scene-specific elements in video content
- G06V20/46—Extracting features or characteristics from the video content, e.g. video fingerprints, representative shots or key frames
- G06V20/47—Detecting features for summarising video content
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/10—Indexing; Addressing; Timing or synchronising; Measuring tape travel
- G11B27/19—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier
- G11B27/28—Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/472—End-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
- H04N21/47205—End-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 for manipulating displayed content, e.g. interacting with MPEG-4 objects, editing locally
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Software Systems (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Human Computer Interaction (AREA)
- Computer Security & Cryptography (AREA)
- Medical Informatics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Evolutionary Biology (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Television Signal Processing For Recording (AREA)
Abstract
머신 러닝 기반의 영상 자동 편집 방법 및 시스템이 개시된다. 일 실시예에 따르면, 머신 러닝 기반의 영상 자동 편집 시스템은 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는 입력 영상을 획득하는 영상 획득부; 머신 러닝을 통해 미리 학습된 하이라이트 추출 모델을 이용하여 상기 입력 영상으로부터 적어도 하나의 하이라이트 프레임을 추출하는 하이라이트 프레임 추출부; 및 상기 추출된 적어도 하나의 하이라이트 프레임으로 하이라이트 영상을 생성하는 하이라이트 영상 생성부를 포함할 수 있다.
Description
아래의 설명은 영상 자동 편집 시스템 및 그 방법에 관한 것으로, 머신 러닝(Machine learning)을 이용하는 영상 자동 편집 기술에 대한 것이다.
영상 콘텐츠는, 그 길이에 따라 롱폼(Long-form) 영상 콘텐츠 또는 숏폼(Short-form) 영상 콘텐츠로 구분된다. 롱폼 영상 콘텐츠는 경우에 따라 편집 없이 촬영 영상의 모든 프레임들이 포함되도록 긴 길이(예컨대, 15분 이상)로 생성되기도 하는 반면, 숏품 영상 콘텐츠는 촬영 영상의 프레임들로부터 일부 프레임들만이 포함되도록 짧은 길이(예컨대 1분 내지 15분)로 편집되어 생성될 수 있다.
최근 1인 방송 시장의 폭발적 성장으로 인해 시청자들을 늘리기 위한 숏폼 영상 콘텐츠에 대한 수요가 확대되고 있다. 따라서, 숏폼 영상 콘텐츠를 편집하여 생성하는 기술이 제안될 필요가 있다.
일 실시예들은 1인 크리에이터가 숏폼 영상 콘텐츠를 생성하는 번거로움을 방지하고 숏폼 영상 콘텐츠의 질을 향상시키고자, 머신 러닝을 통해 미리 학습된 하이라이트 추출 모델을 이용하여 숏폼 영상 콘텐츠인 하이라이트 영상을 자동으로 생성하는 영상 자동 편집 시스템 및 방법을 제안한다.
다만, 본 발명이 해결하고자 하는 기술적 과제들은 상기 과제로 한정되는 것은 아니며, 본 발명의 기술적 사상 및 영역으로부터 벗어나지 않는 범위에서 다양하게 확장될 수 있다.
일 실시예에 따르면, 머신 러닝 기반의 영상 자동 편집 시스템은, 적어도 하나의 프로세서를 포함하고, 상기 적어도 하나의 프로세서는, 입력 영상을 획득하는 영상 획득부; 머신 러닝을 통해 미리 학습된 하이라이트 추출 모델을 이용하여 상기 입력 영상으로부터 적어도 하나의 하이라이트 프레임을 추출하는 하이라이트 프레임 추출부; 및 상기 추출된 적어도 하나의 하이라이트 프레임으로 하이라이트 영상을 생성하는 하이라이트 영상 생성부를 포함한다.
일측에 따르면, 상기 하이라이트 프레임 추출부는, 상기 하이라이트 추출 모델을 이용하여 상기 입력 영상에 포함되는 프레임들 각각에 대한 스코어를 계산하고, 상기 입력 영상에 포함되는 프레임들 각각에 대한 스코어에 기초하여 상기 적어도 하나의 하이라이트 프레임을 추출하는 것을 특징으로 할 수 있다.
다른 일측에 따르면, 상기 하이라이트 프레임 추출부는, 상기 입력 영상에 포함되는 프레임들 각각의 프레임 정보-상기 프레임 정보는 상기 입력 영상에 포함되는 프레임들 각각에서의 인물의 표정, 움직임, 위치, 상기 인물의 발화 내용, 발화 크기, 발화 속도, 객체의 종류 및 변화, 사운드의 종류 및 크기 또는 상기 입력 영상을 시청한 시청자들의 반응을 포함함-에 기초하여, 상기 입력 영상에 포함되는 프레임들 각각에 대한 스코어를 계산하는 것을 특징으로 할 수 있다.
또 다른 일측에 따르면, 상기 입력 영상에 포함되는 프레임들 각각에 대한 스코어는, 상기 입력 영상에 포함되는 프레임들 각각의 프레임 정보가 상기 입력 영상에서 반복되는 빈도를 나타내는 것을 특징으로 할 수 있다.
또 다른 일측에 따르면, 상기 입력 영상에 포함되는 프레임들 각각에 대한 스코어는, 상기 입력 영상에 포함되는 프레임들 각각의 프레임 정보가 나머지 프레임들 각각의 프레임 정보 또는 상기 입력 영상의 평균 프레임 정보와 상이한 정도를 나타내는 것을 특징으로 할 수 있다.
또 다른 일측에 따르면, 상기 입력 영상에 포함되는 프레임들 각각에 대한 스코어는, 상기 입력 영상에 포함되는 프레임들 각각의 프레임 정보가 중요한 정도를 나타내는 것을 특징으로 할 수 있다.
또 다른 일측에 따르면, 상기 하이라이트 프레임 추출부는, 상기 입력 영상에 포함되는 프레임들 각각의 프레임 정보가 기 설정된 기준 프레임 정보에 매칭되는 정도에 따라 상기 입력 영상에 포함되는 프레임들 각각의 프레임 정보가 중요한 정도를 판단하는 것을 특징으로 할 수 있다.
또 다른 일측에 따르면, 상기 하이라이트 영상 생성부는, 상기 추출된 적어도 하나의 하이라이트 프레임을 기준으로 기 설정된 범위의 전후 프레임들이 함께 추출되는 것에 응답하여, 상기 추출된 적어도 하나의 하이라이트 프레임 및 상기 전후 프레임들을 결합하여 상기 하이라이트 영상을 생성하는 것을 특징으로 할 수 있다.
또 다른 일측에 따르면, 상기 하이라이트 프레임 추출부는, 상기 입력 영상에 포함되는 프레임들 각각에 대한 스코어를 계산하는 계산 방식들에 대한 사용자의 입력에 따라 선택된 계산 방식을 이용하여, 상기 입력 영상에 포함되는 프레임들 각각에 대한 스코어를 계산하는 것을 특징으로 할 수 있다.
또 다른 일측에 따르면, 상기 하이라이트 추출 모델은, 상기 입력 영상을 포함하는 학습 영상들에 등장하는 인물의 표정, 움직임, 위치, 발화 내용, 발화 크기, 발화 속도, 객체의 종류 및 변화, 사운드의 종류 및 크기 또는 상기 학습 영상들을 시청한 시청자들의 반응을 기반으로 상기 머신 러닝을 통해 미리 학습되는 것을 특징으로 할 수 있다.
일 실시예에 따르면, 컴퓨터에 의해 수행되는 머신 러닝 기반의 영상 자동 편집 방법은, 입력 영상을 획득하는 단계; 머신 러닝을 통해 미리 학습된 하이라이트 추출 모델을 이용하여 상기 입력 영상으로부터 적어도 하나의 하이라이트 프레임을 추출하는 단계; 및 상기 추출된 적어도 하나의 하이라이트 프레임으로 하이라이트 영상을 생성하는 단계를 포함한다.
일측에 따르면, 상기 추출하는 단계는, 상기 하이라이트 추출 모델을 이용하여 상기 입력 영상에 포함되는 프레임들 각각에 대한 스코어를 계산하는 단계; 및 상기 입력 영상에 포함되는 프레임들 각각에 대한 스코어에 기초하여 상기 적어도 하나의 하이라이트 프레임을 추출하는 단계를 포함하는 것을 특징으로 할 수 있다.
다른 일측에 따르면, 상기 계산하는 단계는, 상기 입력 영상에 포함되는 프레임들 각각의 프레임 정보-상기 프레임 정보는 상기 입력 영상에 포함되는 프레임들 각각에서의 인물의 표정, 움직임, 위치, 상기 인물의 발화 내용, 발화 크기, 발화 속도, 객체의 종류 및 변화, 사운드의 종류 및 크기 또는 상기 입력 영상을 시청한 시청자들의 반응을 포함함-에 기초하여, 상기 입력 영상에 포함되는 프레임들 각각에 대한 스코어를 계산하는 것을 특징으로 할 수 있다.
일 실시예에 따르면, 머신 러닝 기반의 영상 자동 편집 방법을 실행시키기 위해 컴퓨터로 판독 가능한 매체에 기록된 컴퓨터 프로그램에 있어서, 상기 머신 러닝 기반의 영상 자동 편집 방법은, 입력 영상을 획득하는 단계; 머신 러닝을 통해 미리 학습된 하이라이트 추출 모델을 이용하여 상기 입력 영상으로부터 적어도 하나의 하이라이트 프레임을 추출하는 단계; 및 상기 추출된 적어도 하나의 하이라이트 프레임으로 하이라이트 영상을 생성하는 단계를 포함한다.
일 실시예들은 머신 러닝을 통해 미리 학습된 하이라이트 추출 모델을 이용하여 숏폼 영상 콘텐츠인 하이라이트 영상을 자동으로 생성하는 영상 자동 편집 시스템 및 방법을 제안함으로써, 1인 크리에이터가 숏폼 영상 콘텐츠를 생성하는 번거로움을 방지하고 숏폼 영상 콘텐츠의 질을 향상시키는 기술을 제안할 수 있다.
다만, 본 발명의 효과는 상기 효과들로 한정되는 것이 아니며, 본 발명의 기술적 사상 및 영역으로부터 벗어나지 않는 범위에서 다양하게 확장될 수 있다.
도 1은 일 실시예에 따른 네트워크 환경을 나타낸 도면이다.
도 2는 일 실시예에 따른 사용자 단말 및 서버의 내부 구성을 설명하기 위한 블록도이다.
도 3은 일 실시예에 따른 서버의 프로세서가 포함할 수 있는 구성요소를 나타낸 블록도이다.
도 4는 일 실시예에 따른 머신 러닝 기반의 영상 자동 편집 방법을 나타낸 플로우 차트이다.
도 5는 도 4에 도시된 머신 러닝 기반의 영상 자동 편집 방법에서 적어도 하나의 하이라이트 프레임이 추출되는 예를 나타낸 도면이다.
도 6은 도 4에 도시된 머신 러닝 기반의 영상 자동 편집 방법에서 입력 영상에 포함되는 프레임들 각각의 프레임 정보를 인식하는 예를 나타낸 도면이다.
도 7은 도 4에 도시된 머신 러닝 기반의 영상 자동 편집 방법에서 적어도 하나의 하이라이트 프레임이 추출되는데 사용되는 테이블의 예를 나타낸 도면이다.
도 8 내지 10은 도 4에 도시된 머신 러닝 기반의 영상 자동 편집 방법에서 프레임에 대한 스코어를 계산하는 계산 방식들을 설명하기 위해, 입력 영상에 포함되는 프레임들을 나타낸 도면이다.
도 2는 일 실시예에 따른 사용자 단말 및 서버의 내부 구성을 설명하기 위한 블록도이다.
도 3은 일 실시예에 따른 서버의 프로세서가 포함할 수 있는 구성요소를 나타낸 블록도이다.
도 4는 일 실시예에 따른 머신 러닝 기반의 영상 자동 편집 방법을 나타낸 플로우 차트이다.
도 5는 도 4에 도시된 머신 러닝 기반의 영상 자동 편집 방법에서 적어도 하나의 하이라이트 프레임이 추출되는 예를 나타낸 도면이다.
도 6은 도 4에 도시된 머신 러닝 기반의 영상 자동 편집 방법에서 입력 영상에 포함되는 프레임들 각각의 프레임 정보를 인식하는 예를 나타낸 도면이다.
도 7은 도 4에 도시된 머신 러닝 기반의 영상 자동 편집 방법에서 적어도 하나의 하이라이트 프레임이 추출되는데 사용되는 테이블의 예를 나타낸 도면이다.
도 8 내지 10은 도 4에 도시된 머신 러닝 기반의 영상 자동 편집 방법에서 프레임에 대한 스코어를 계산하는 계산 방식들을 설명하기 위해, 입력 영상에 포함되는 프레임들을 나타낸 도면이다.
이하, 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나, 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 것이며, 단지 실시예들은 본 발명의 개시가 완전하도록 하며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다.
또한, 본 명세서에서 사용된 용어(terminology)는 실시예들을 설명하기 위한 것이며, 본 발명을 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또한, 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
이하, 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예들을 보다 상세하게 설명하고자 한다. 도면 상의 동일한 구성요소에 대해서는 동일한 참조 부호를 사용하고 동일한 구성요소에 대해서 중복된 설명은 생략한다.
도 1은 일 실시예에 따른 네트워크 환경의 예를 도시한 도면이다. 도 1의 네트워크 환경은 복수의 전자 기기들(110, 120, 130, 140, 150), 서버(160) 및 네트워크(170)를 포함하는 예를 나타내고 있다. 이러한 도 1은 발명의 설명을 위한 일례로 전자 기기의 수나 서버의 수가 도 1과 같이 한정되는 것은 아니다.
복수의 전자 기기들(110, 120, 130, 140, 150)은 컴퓨터 장치로 구현되어 복수의 전자 기기들(110, 120, 130, 140, 150) 각각의 사용자에게 영상 자동 편집 서비스를 제공할 수 있는 단말일 수 있다. 복수의 전자 기기들(110, 120, 130, 140, 150)의 예를 들면, 스마트폰(smart phone), 휴대폰, 태블릿 PC, 내비게이션, 컴퓨터, 노트북, 디지털방송용 단말, PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), 사용자 착용 장치(웨어러블 디바이스) 등이 있다. 일례로 제1 전자 기기(110)는 무선 또는 유선 통신 방식을 이용하여 네트워크(170)를 통해 다른 전자 기기들(120, 130, 140, 150) 및/또는 서버(160)와 통신할 수 있다.
통신 방식은 제한되지 않으며, 네트워크(170)가 포함할 수 있는 통신망(일례로, 이동통신망, 유선 인터넷, 무선 인터넷, 방송망)을 활용하는 통신 방식뿐만 아니라 기기들간의 근거리 무선 통신 역시 포함될 수 있다. 예를 들어, 네트워크(170)는, PAN(personal area network), LAN(local area network), CAN(campus area network), MAN(metropolitan area network), WAN(wide area network), BBN(broadband network), 인터넷 등의 네트워크 중 하나 이상의 임의의 네트워크를 포함할 수 있다. 또한, 네트워크(170)는 버스 네트워크, 스타 네트워크, 링 네트워크, 메쉬 네트워크, 스타-버스 네트워크, 트리 또는 계층적(hierarchical) 네트워크 등을 포함하는 네트워크 토폴로지 중 임의의 하나 이상을 포함할 수 있으나, 이에 제한되지 않는다.
서버(160)는 복수의 전자 기기들(110, 120, 130, 140, 150)과 네트워크(170)를 통해 통신하여 명령, 코드, 파일, 콘텐츠, 서비스 등을 제공하는 컴퓨터 장치 또는 복수의 컴퓨터 장치들로 구현될 수 있다.
일례로, 서버(160)는 네트워크(170)를 통해 접속한 제1 전자 기기(110)로 어플리케이션의 설치를 위한 파일을 제공할 수 있다. 이 경우 제1 전자 기기(110)는 서버(160)로부터 제공된 파일을 이용하여 어플리케이션을 설치할 수 있다. 또한, 제1 전자 기기(110)가 포함하는 운영체제(Operating System, OS)나 적어도 하나의 프로그램(일례로 브라우저나 상기 설치된 어플리케이션)의 제어에 따라 서버(160)에 접속하여 서버(160)가 제공하는 서비스나 콘텐츠를 제공받을 수 있다. 예를 들어, 제1 전자 기기(110)가 어플리케이션의 제어에 따라 네트워크(170)를 통해 서비스 요청 메시지를 서버(160)로 전송하면, 서버(160)는 서비스 요청 메시지에 대응하는 코드를 제1 전자 기기(110)로 전송할 수 있고, 제1 전자 기기(110)는 어플리케이션의 제어에 따라 코드에 따른 화면을 구성하여 표시함으로써 사용자에게 콘텐츠를 제공할 수 있다.
도 2는 일 실시예에 있어서 전자 기기 및 서버의 내부 구성을 설명하기 위한 블록도이다. 도 2에서는 영상 자동 편집 서비스를 제공받는 사용자가 소지한 단말인 하나의 전자 기기에 대한 예로서 제1 전자 기기(110), 그리고 사용자의 단말과 통신하여 영상 자동 편집 서비스를 제공하는 주체인 하나의 서버에 대한 예로서 서버(160)의 내부 구성을 설명한다. 이에, 이하 제1 전자 기기(110)는 사용자의 단말을 의미하며, 서버(160)는 사용자의 단말과 통신하는 서버를 의미한다.
제1 전자 기기(110)와 서버(160)는 메모리(211, 221), 프로세서(212, 222), 통신 모듈(213, 223) 그리고 입출력 인터페이스(214, 224)를 포함할 수 있다. 메모리(211, 221)는 컴퓨터에서 판독 가능한 기록 매체로서, RAM(random access memory), ROM(read only memory) 및 디스크 드라이브와 같은 비소멸성 대용량 기록장치(permanent mass storage device)를 포함할 수 있다. 또한, 메모리(211, 221)에는 운영체제나 적어도 하나의 프로그램 코드(일례로 제1 전자 기기(110)에 설치되어 구동되는 어플리케이션 등을 위한 코드)가 저장될 수 있다. 이러한 소프트웨어 구성요소들은 메모리(211, 221)와는 별도의 컴퓨터에서 판독 가능한 기록 매체로부터 로딩될 수 있다. 별도의 컴퓨터에서 판독 가능한 기록 매체는 플로피 드라이브, 디스크, 테이프, DVD/CD-ROM 드라이브, 메모리 카드 등의 컴퓨터에서 판독 가능한 기록 매체를 포함할 수 있다. 다른 실시예에서 소프트웨어 구성요소들은 컴퓨터에서 판독 가능한 기록 매체가 아닌 통신 모듈(213, 223)을 통해 메모리(211, 221)에 로딩될 수도 있다. 예를 들어, 적어도 하나의 프로그램은 개발자들 또는 어플리케이션의 설치 파일을 배포하는 파일 배포 시스템이 네트워크(170)를 통해 제공하는 파일들에 의해 설치되는 프로그램(일례로 상술한 어플리케이션)에 기반하여 메모리(211, 221)에 로딩될 수 있다.
프로세서(212, 222)는 기본적인 산술, 로직 및 입출력 연산을 수행함으로써, 컴퓨터 프로그램의 명령을 처리하도록 구성될 수 있다. 명령은 메모리(211, 221) 또는 통신 모듈(213, 223)에 의해 프로세서(212, 222)로 제공될 수 있다. 예를 들어 프로세서(212, 222)는 메모리(211, 221)와 같은 기록 장치에 저장된 프로그램 코드에 따라 수신되는 명령을 실행하도록 구성될 수 있다.
통신 모듈(213, 223)은 네트워크(170)를 통해 제1 전자 기기(110)와 서버(160)가 서로 통신하기 위한 기능을 제공할 수 있으며, 다른 전자 기기(일례로 제2 전자 기기(120), 제3 전자 기기(130), 제4 전자 기기(140), 제5 전자기기(150) 등) 또는 다른 서버와 통신하기 위한 기능을 제공할 수 있다. 일례로, 제1 전자 기기(110)의 프로세서(212)가 메모리(211)와 같은 기록 장치에 저장된 프로그램 코드에 따라 생성한 요청(영상 자동 편집 서비스 요청)이 통신 모듈(213)의 제어에 따라 네트워크(170)를 통해 서버(160)로 전달될 수 있다. 역으로, 서버(160)의 프로세서(222)의 제어에 따라 제공되는 제어 신호나 명령, 콘텐츠, 파일 등이 통신 모듈(223)과 네트워크(170)를 거쳐 제1 전자 기기(110)의 통신 모듈(213)을 통해 제1 전자 기기(110)로 수신될 수 있다. 예를 들어 통신 모듈(213)을 통해 수신된 서버(160)의 제어 신호나 명령 등은 프로세서(212)나 메모리(211)로 전달될 수 있고, 콘텐츠나 파일 등은 제1 전자 기기(110)가 더 포함할 수 있는 저장 매체로 저장될 수 있다.
입출력 인터페이스(214)는 입출력 장치(215)와의 인터페이스를 위한 수단일 수 있다. 예를 들어, 입력 장치는 키보드 또는 마우스 등의 장치를, 그리고 출력 장치는 어플리케이션의 통신 세션을 표시하기 위한 디스플레이와 같은 장치를 포함할 수 있다. 다른 예로 입출력 인터페이스(214)는 터치스크린과 같이 입력과 출력을 위한 기능이 하나로 통합된 장치와의 인터페이스를 위한 수단일 수도 있다. 보다 구체적인 예로, 제1 전자 기기(110)의 프로세서(212)는 메모리(211)에 로딩된 컴퓨터 프로그램의 명령을 처리함에 있어서 서버(160)나 제2 전자 기기(120)가 제공하는 데이터를 이용하여 구성되는 서비스 화면이나 콘텐츠가 입출력 인터페이스(214)를 통해 디스플레이에 표시될 수 있다. 입출력 인터페이스(224) 또한 마찬가지로 서버(160)의 프로세서(222)가 메모리(221)에 로딩된 컴퓨터 프로그램의 명령을 처리함에 있어 서버(160)가 제공하는 데이터를 이용하여 구성되는 정보를 출력할 수 있다.
또한, 다른 실시예들에서 제1 전자 기기(110) 및 서버(160)는 도 2의 구성요소들보다 더 많은 구성요소들을 포함할 수도 있다. 그러나, 대부분의 종래기술적 구성요소들을 명확하게 도시할 필요성은 없다. 예를 들어, 제1 전자 기기(110)는 상술한 입출력 장치(215) 중 적어도 일부를 포함하도록 구현되거나 또는 트랜시버(transceiver), GPS(Global Positioning System) 모듈, 카메라, 각종 센서, 데이터베이스 등과 같은 다른 구성요소들을 더 포함할 수도 있다.
이하에서는 영상 자동 편집 방법 및 시스템의 구체적인 실시예를 설명하기로 한다.
도 3은 일 실시예에 따른 서버의 프로세서가 포함할 수 있는 구성요소를 나타낸 블록도이고, 도 4는 일 실시예에 따른 머신 러닝 기반의 영상 자동 편집 방법을 나타낸 플로우 차트이며, 도 5는 도 4에 도시된 머신 러닝 기반의 영상 자동 편집 방법에서 적어도 하나의 하이라이트 프레임이 추출되는 예를 나타낸 도면이고, 도 6은 도 4에 도시된 머신 러닝 기반의 영상 자동 편집 방법에서 입력 영상에 포함되는 프레임들 각각의 프레임 정보를 인식하는 예를 나타낸 도면이며, 도 7은 도 4에 도시된 머신 러닝 기반의 영상 자동 편집 방법에서 적어도 하나의 하이라이트 프레임이 추출되는데 사용되는 테이블의 예를 나타낸 도면이고, 도 8 내지 10은 도 4에 도시된 머신 러닝 기반의 영상 자동 편집 방법에서 프레임에 대한 스코어를 계산하는 계산 방식들을 설명하기 위해, 입력 영상에 포함되는 프레임들을 나타낸 도면이다.
일 실시예에 따른 서버(160)에는 컴퓨터로 구현되는 영상 자동 편집 시스템이 구성될 수 있다. 서버(160)는 클라이언트(client)인 복수의 전자 기기들(110, 120, 130, 140, 150)을 대상으로 영상 자동 편집 서비스를 제공하는 주체로서, 복수의 전자 기기들(110, 120, 130, 140, 150) 상에 설치된 전용 어플리케이션이나 서버(160)와 관련된 웹/모바일 사이트 접속을 통한 서비스 요청에 대응되는 영상 자동 편집 서비스를 제공할 수 있다. 보다 상세하게, 서버(160)는 도 4에 도시된 단계들(S410 내지 S430)을 수행함으로써 영상 자동 편집 서비스를 사용자의 단말(제1 전자 기기(110))에 제공할 수 있다.
서버(160)가 도 4에 따른 영상 자동 편집 방법을 수행할 수 있도록, 서버(160)의 프로세서(222)는 구성요소로서 도 3에 도시된 바와 같이, 영상 획득부(310), 하이라이트 프레임 추출부(320) 및 하이라이트 영상 생성부(330)를 포함할 수 있다. 실시예에 따라 프로세서(222)의 구성요소들은 선택적으로 프로세서(222)에 포함되거나 제외될 수도 있다. 또한, 실시예에 따라 프로세서(222)의 구성요소들은 프로세서(222)의 기능의 표현을 위해 분리 또는 병합될 수도 있다. 예컨대, 프로세서(222)의 구성요소들 중 적어도 일부는 사용자의 단말인 제1 전자 기기(110)에 포함되는 프로세서(212)에 구현될 수 있다.
이러한 프로세서(222) 및 프로세서(222)의 구성요소들은 도 4의 영상 자동 편집 방법이 포함하는 단계들(S410 내지 S430)을 수행하도록 서버(160)를 제어할 수 있다. 예를 들어, 프로세서(222) 및 프로세서(222)의 구성요소들은 메모리(221)가 포함하는 운영체제의 코드와 적어도 하나의 프로그램의 코드에 따른 명령(instruction)을 실행하도록 구현될 수 있다.
여기서, 프로세서(222)의 구성요소들은 서버(160)에 저장된 프로그램 코드가 제공하는 명령에 따라 프로세서(222)에 의해 수행되는 프로세서(222)의 서로 다른 기능들(different functions)의 표현들일 수 있다. 예를 들어, 입력 영상을 획득하는 프로세서(222)의 기능적 표현으로서 영상 획득부(310)가 이용될 수 있다.
프로세서(222)는 단계(S410) 이전에, 서버(160)의 제어와 관련된 명령이 로딩된 메모리(221)로부터 필요한 명령을 읽어드릴 수 있다(도면 상 별도의 단계로 도시되지 않음). 이 경우, 상기 읽어드린 명령은 프로세서(222)가 이후 설명될 단계들(S410 내지 S430)을 실행하도록 제어하기 위한 명령을 포함할 수 있다.
단계(S410)에서 영상 획득부(310)는, 입력 영상을 획득할 수 있다. 이하, 입력 영상은 하이라이트 영상을 생성하고자 하는 원본 촬영 영상을 의미할 수 있으나, 이에 제한되거나 한정되지 않고 숏폼 영상인 하이라이트 영상을 생성하고자 하는 사전에 긴 길이로 편집된 롱폼 영상일 수도 있다. 또한 이하 하이라이트 영상은 1분 내지 15분의 짧은 길이의 숏폼 영상인 것으로 설명되나, 이에 제한되거나 한정되지 않고 원본 촬영 영상으로부터 생성될 수 있는 15분 이상의 긴 길이의 롱폼 영상일 수도 있다. 이처럼 하이라이트 영상이 숏폼 영상으로 생성되는지 또는 롱폼 영상으로 생성되는지는, 입력 영상으로부터 추출되는 적어도 하나의 하이라이트 프레임이 개수 및 길이에 따라 결정될 수 있다. 즉, 입력 영상으로부터 어도 하나의 하이라이트 프레임이 추출되는 조건이 조절됨에 따라 적응적으로 숏폼 영상이 생성되거나 롱폼 영상이 생성될 수 있다.
이어서, 단계(S420)에서 하이라이트 프레임 추출부(320)는, 머신 러닝을 통해 미리 학습된 하이라이트 추출 모델을 이용하여 입력 영상으로부터 적어도 하나의 하이라이트 프레임을 추출할 수 있다. 보다 상세하게, 하이라이트 프레임 추출부(320)는 도 5에 도시된 바와 같이 하이라이트 추출 모델(510)을 이용하여 입력 영상(520)에 포함되는 프레임들 각각에 대한 스코어를 계산한 뒤, 입력 영상(520)에 포함되는 프레임들 각각에 대한 스코어에 기초하여 적어도 하나의 하이라이트 프레임(530)을 추출할 수 있다.
이 때, 하이라이트 프레임 추출부(320)는 입력 영상에 포함되는 프레임들 각각의 프레임 정보에 기초하여, 입력 영상에 포함되는 프레임들 각각에 대한 스코어를 계산할 수 있다. 이하, 입력 영상에 포함되는 프레임들 각각의 프레임 정보는 입력 영상에 포함되는 프레임들 각각에서의 인물의 표정, 움직임, 위치, 상기 인물의 발화 내용, 발화 크기, 발화 속도, 객체의 종류 및 변화, 사운드의 종류 및 크기 또는 입력 영상을 시청한 시청자들의 반응을 포함할 수 있다.
이를 위해, 하이라이트 프레임 추출부(320)는 단계(S420) 이전에 입력 영상에 포함되는 프레임들 각각의 프레임 정보를 인식할 수 있다. 예를 들어, 하이라이트 프레임 추출부(320)는 입력 영상에 포함되는 프레임들 각각에서 프레임에 등장하는 인물, 인물의 발화, 프레임에 등장하는 객체, 사운드, 해당 프레임을 시청할 때의 시청자들의 반응(이하, 시청자들의 반응은 시청자들의 댓글 또는 채팅 등을 의미함)을 인식할 수 있다. 더 구체적인 예를 들면, 하이라이트 프레임 추출부(320)는 도 6에 도시된 바와 같이 입력 영상에 포함되는 제1 프레임(610) 내에서 제1 프레임(610)에 등장하는 인물(611)의 위치, 표정, 움직임과 함께, 제1 프레임(610)을 시청할 때의 시청자들의 채팅(612)을 인식할 수 있다.
이처럼 프레임들 각각의 프레임 정보를 인식하는 과정에서는, 머신 러닝을 통해 미리 학습된 프레임 정보 인식 모델이 이용될 수 있다. 일례로, 프레임 정보 인식 모델은 빅 데이터, 딥 러닝 및 머신 러닝을 이용하는 인식 알고리즘을 의미하는 것으로, 기존의 딥 러닝 기법 등에서 이용되는 공지된 기술이므로 이에 대한 상세한 설명은 생략하기로 한다.
입력 영상에 포함되는 프레임들 각각에 대한 스코어를 계산하고 계산된 스코어들에 기초하여 적어도 하나의 하이라이트 프레임을 추출하는 것과 관련하여, 도 7을 참조하면, 하이라이트 프레임 추출부(320)는 입력 영상에 포함되는 프레임들(710, 720, 730) 각각에 대한 스코어를 계산한 뒤, 기 설정된 값 이상의 스코어를 갖는 프레임들(710)을 하이라이트 프레임들(710)로 추출할 수 있다. 그러나 이에 제한되거나 한정되지 않고, 하이라이트 프레임 추출부(320)는 도면과 달리 기 설정된 값 이하의 스코어를 갖는 프레임들을 하이라이트 프레임들로 추출할 수 있다.
이와 같이 기 설정된 값 이상의 스코어를 갖는 프레임들을 하이라이트 프레임들로 추출하는 것 또는 기 설정된 값 이하의 스코어를 갖는 프레임들을 하이라이트 프레임들로 추출하는 것은, 스코어가 어떤 정보를 나타내는지에 따라 달라질 수 있다.
예를 들어, 입력 영상에 포함되는 프레임들 각각에 대한 스코어는, 입력 영상에 포함되는 프레임들 각각의 프레임 정보가 입력 영상에서 반복되는 빈도를 나타낼 수 있다. 즉, 하이라이트 프레임 추출부(320)는 입력 영상에 포함되는 프레임들 각각에 대한 스코어를 계산하는 계산 방식으로, 프레임들 각각의 프레임 정보가 반복되는 빈도를 산출하는 계산 방식을 이용할 수 있다. 더 구체적인 예를 들면, 도 8에 도시된 바와 같이 입력 영상에 포함되는 프레임들(810, 820, 830, 840, 850) 중 제1 프레임(810), 제2 프레임(820) 및 제3 프레임(830)에서 인물이 앉아 있고 제4 프레임(840) 및 제5 프레임(850)에서 인물이 자리에서 일어나 있다면, 제1 프레임(810), 제2 프레임(820), 및 제3 프레임(830) 각각의 프레임 정보(인물이 앉아 있음이 인식된 정보)가 입력 영상에서 반복되는 빈도가 제4 프레임(840) 및 제5 프레임(850) 각각의 프레임 정보(인물이 자리에서 일어나 있음이 인식된 정보)가 입력 영상에서 반복되는 빈도보다 높게 된다. 이에, 하이라이트 프레임 추출부(320)는 제1 프레임(810), 제2 프레임(820) 및 제3 프레임(830) 각각에 대한 스코어를 '3'으로 계산하며 제4 프레임(840) 및 제5 프레임(850) 각각에 대한 스코어를 '2'로 계산할 수 있다. 스코어가 낮은 프레임들(제4 프레임(840) 및 제5 프레임(850))이 입력 영상에서 드물게 나오는 장면이므로, 하이라이트 프레임 추출부(320)는 입력 영상에서 드물게 나오는 프레임들(제4 프레임(840) 및 제5 프레임(850))을 하이라이트 프레임들로 추출하기 위하여, 스코어가 낮은 프레임들(제4 프레임(840) 및 제5 프레임(850))을 하이라이트 프레임들로 추출할 수 있다.
다른 예를 들면, 입력 영상에 포함되는 프레임들 각각에 대한 스코어는, 입력 영상에 포함되는 프레임들 각각의 프레임 정보가 나머지 프레임들 각각의 프레임 정보 또는 입력 영상의 평균 프레임 정보와 상이한 정도를 나타낼 수 있다. 따라서, 하이라이트 프레임 추출부(320)는 입력 영상에 포함되는 프레임들 각각에 대한 스코어를 계산하는 계산 방식으로, 프레임들 각각의 프레임 정보가 나머지 프레임들 각각의 프레임 정보 또는 입력 영상의 평균 프레임 정보와 상이한 정도를 산출하는 계산 방식을 이용할 수 있다. 더 구체적인 예를 들면, 도 9에 도시된 바와 같이 입력 영상에 포함되는 프레임들(910, 920, 930, 940, 950) 중 제1 프레임(910) 및 제2 프레임(920)에서 인물이 발화하는 음성의 크기가 '13'이고 제3 프레임(930), 제4 프레임(940) 및 제5 프레임(950)에서 인물이 발화하는 음성의 크기가 '26'이며 입력 영상에서 인물이 발화하는 음성의 평균 크기가 '15'라면, 제1 프레임(910) 및 제2 프레임(920) 각각의 프레임 정보(인물의 발화 크기에 대한 정보)인 '13'보다 제3프레임(930), 제4 프레임(940) 및 제5 프레임(950) 각각의 프레임 정보(인물의 발화 크기에 대한 정보)인 '26'이 입력 영상에서의 평균 프레임 정보(인물의 발화 크기에 대한 정보)인 '15'의 값으로부터 더 크게 차이가 나게 된다. 이에, 하이라이트 프레임 추출부(320)는 제1 프레임(910) 및 제2 프레임(920) 각각에 대한 스코어를 제1 프레임(910) 및 제2 프레임(920) 각각의 프레임 정보와 입력 영상에서의 평균 프레임 정보와의 차이 값인 '-2'로 계산할 수 있으며, 제3 프레임(930), 제4 프레임(940) 및 제5 프레임(950) 각각에 대한 스코어를 제3 프레임(930), 제4 프레임(940) 및 제5 프레임(950) 각각의 프레임 정보와 입력 영상에서의 평균 프레임 정보와의 차이 값인 '11'로 계산할 수 있다. 스코어가 높은 프레임들(제3 프레임(930), 제4 프레임(940) 및 제5 프레임(950))이 입력 영상에서의 평소 장면(평균 장면)과 많이 상이한 장면이므로, 하이라이트 프레임 추출부(320)는 입력 영상에서의 평소 장면(평균 장면)과 많이 상이한 프레임들(제3 프레임(930), 제4 프레임(940) 및 제5 프레임(950))을 하이라이트 프레임들로 추출하기 위하여, 스코어가 높은 프레임들(제3 프레임(930), 제4 프레임(940) 및 제5 프레임(950))을 하이라이트 프레임들로 추출할 수 있다.
또 다른 예를 들면, 입력 영상에 포함되는 프레임들 각각에 대한 스코어는, 입력 영상에 포함되는 프레임들 각각의 프레임 정보가 중요한 정도를 나타낼 수 있다. 즉, 하이라이트 프레임 추출부(320)는 입력 영상에 포함되는 프레임들 각각에 대한 스코어를 계산하는 계산 방식으로, 입력 영상에 포함되는 프레임들 각각의 프레임 정보가 중요한 정도를 산출하는 계산 방식을 이용할 수 있다. 이를 위해, 하이라이트 프레임 추출부(320)는 입력 영상에 포함되는 프레임들 각각의 프레임 정보가 기 설정된 기준 프레임 정보에 매칭되는 정도에 따라 입력 영상에 포함되는 프레임들 각각의 프레임 정보가 중요한 정도를 판단할 수 있다. 더 구체적인 예를 들면, 도 10에 도시된 바와 같이 기준 프레임 정보가 프레임에 객체로서 음식이 등장하는 경우의 객체 정보를 나타내고 입력 영상에 포함되는 프레임들(1010, 1020, 1030, 1040, 1050) 중 제1 프레임(1010) 및 제2 프레임(1020)에서만 인물과 음식이 등장하며 나머지 프레임들(1030, 1040, 1050)에서는 인물만이 등장한다면, 제1 프레임(1010) 및 제2 프레임(1020) 각각의 프레임 정보(프레임에 등장하는 객체 정보)가 기 설정된 기준 프레임 정보(프레임에 객체로서 음식이 등장하는 경우의 객체 정보)와 매칭되고 나머지 프레임들(1030, 1040, 1050) 각각의 프레임 정보(프레임에 등장하는 객체 정보)는 기 설정된 기준 프레임 정보(프레임에 객체로서 음식이 등장하는 경우의 객체 정보)와 매칭되지 않게 된다. 따라서, 하이라이트 프레임 추출부(320)는 제1 프레임(1010) 및 제2 프레임(1020) 각각에 대한 스코어를 '10'으로 계산할 수 있으며, 나머지 프레임들(1030, 1040, 1050) 각각에 대한 스코어를 '0'으로 계산할 수 있다. 스코어가 높은 프레임들(제1 프레임(1010), 제2 프레임(1020))이 중요하다고 설정된 기준 장면과 매칭되는 장면이므로, 하이라이트 프레임 추출부(320)는 중요하다고 설정된 기준 장면과 매칭되는 프레임들(제1 프레임(1010) 및 제2 프레임(1020))을 하이라이트 프레임들로 추출하기 위하여, 스코어가 높은 프레임들(제1 프레임(1010) 및 제2 프레임(1020))을 하이라이트 프레임들로 추출할 수 있다. 이상, 하이라이트 프레임 추출부(320)는 입력 영상에 포함되는 프레임들 각각의 프레임 정보가 기 설정된 기준 프레임 정보에 매칭되는지 또는 아예 매칭되지 않는지를 판단되는 것으로 설명되었으나, 이에 제한되거나 한정되지 않고 기준 프레임 정보에 매칭되는 정도를 판단하여 입력 영상에 포함되는 프레임들 각각의 스코어를 계산할 수 있다.
이상 설명된 스코어의 계산 방식들은 하이라이트 프레임 추출부(320)에 의해 적응적으로 사용될 수 있다. 예를 들어, 하이라이트 프레임 추출부(320)는 입력 영상에 포함되는 프레임들 각각에 대한 스코어를 계산하기 이전에 사용자로부터 계산 방식에 대한 사용자의 입력을 수신하고, 사용자의 입력에 따라 선택된 계산 방식을 입력 영상에 포함되는 프레임들 각각에 대한 스코어를 계산하는 과정에서 이용할 수 있다. 다른 예를 들면, 하이라이트 프레임 추출부(320)는 입력 영상을 분석하여 카테고리를 분류한 뒤, 카테고리별로 미리 설정된 계산 방식을 적용하여 입력 영상에 포함되는 프레임들 각각에 대한 스코어를 계산할 수 있다.
이와 같은 하이라이트 프레임 추출부(320)의 하이라이트 프레임 추출 과정은, 머신 러닝을 통해 미리 학습된 하이라이트 추출 모델을 이용하여 수행될 수 있다. 일례로, 하이라이트 프레임 추출 모델은 빅 데이터, 딥 러닝 및 머신 러닝을 이용하여 프레임들 각각의 스코어를 계산하는 계산 알고리즘을 의미하는 것으로, 입력 영상을 포함하는 학습 영상들에 등장하는 인물의 표정, 움직임, 위치, 발화 내용, 발화 크기, 발화 속도, 객체의 종류 및 변화, 사운드의 종류 및 크기 또는 학습 영상들을 시청한 시청자들의 반응을 기반으로 미리 학습될 수 있다.
그 후, 단계(S430)에서 하이라이트 영상 생성부(330)는, 추출된 적어도 하나의 하이라이트 프레임으로 하이라이트 영상을 생성할 수 있다. 보다 상세하게, 하이라이트 영상 생성부(330)는 추출된 하이라이트 프레임들을 결합함으로써 하이라이트 영상을 생성할 수 있다.
이처럼 입력 영상에 포함되는 프레임들 각각에 대한 스코어만이 이용되어 적어도 하나의 하이라이트 프레임이 추출된다면, 하이라이트 프레임들 사이의 장면 전환 또는 영상의 흐름이 부자연스러울 수 있다. 이에, 하이라이트 프레임 추출부(320)가 추출된 적어도 하나의 하이라이트 프레임을 기준으로 기 설정된 범위의 전후 프레임들 추가적으로 추출함으로써, 하이라이트 영상 생성부(330)는 추출된 적어도 하나의 하이라이트 프레임 및 전후 프레임들을 결합하여 하이라이트 영상을 생성할 수 있다.
이상에서 설명된 시스템 또는 장치는 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있다. 예를 들어, 실시예들에서 설명된 시스템, 장치 및 구성요소는, 예를 들어, 프로세서, 컨트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPA(field programmable array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 컨트롤러를 포함할 수 있다. 또한, 병렬 프로세서(parallel processor)와 같은, 다른 처리 구성(processing configuration)도 가능하다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
실시예들에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
이상과 같이 실시예들이 비록 한정된 실시예와 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기의 기재로부터 다양한 수정 및 변형이 가능하다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.
그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 특허청구범위의 범위에 속한다.
Claims (14)
- 머신 러닝 기반의 영상 자동 편집 시스템에 있어서,
적어도 하나의 프로세서
를 포함하고,
상기 적어도 하나의 프로세서는,
입력 영상을 획득하는 영상 획득부;
머신 러닝을 통해 미리 학습된 하이라이트 추출 모델을 이용하여 상기 입력 영상으로부터 적어도 하나의 하이라이트 프레임을 추출하는 하이라이트 프레임 추출부; 및
상기 추출된 적어도 하나의 하이라이트 프레임으로 하이라이트 영상을 생성하는 하이라이트 영상 생성부
를 포함하는 머신 러닝 기반의 영상 자동 편집 시스템. - 제1항에 있어서,
상기 하이라이트 프레임 추출부는,
상기 하이라이트 추출 모델을 이용하여 상기 입력 영상에 포함되는 프레임들 각각에 대한 스코어를 계산하고, 상기 입력 영상에 포함되는 프레임들 각각에 대한 스코어에 기초하여 상기 적어도 하나의 하이라이트 프레임을 추출하는 것을 특징으로 하는 머신 러닝 기반의 영상 자동 편집 시스템. - 제2항에 있어서,
상기 하이라이트 프레임 추출부는,
상기 입력 영상에 포함되는 프레임들 각각의 프레임 정보-상기 프레임 정보는 상기 입력 영상에 포함되는 프레임들 각각에서의 인물의 표정, 움직임, 위치, 상기 인물의 발화 내용, 발화 크기, 발화 속도, 객체의 종류 및 변화, 사운드의 종류 및 크기 또는 상기 입력 영상을 시청한 시청자들의 반응을 포함함-에 기초하여, 상기 입력 영상에 포함되는 프레임들 각각에 대한 스코어를 계산하는 것을 특징으로 하는 머신 러닝 기반의 영상 자동 편집 시스템. - 제3항에 있어서,
상기 입력 영상에 포함되는 프레임들 각각에 대한 스코어는,
상기 입력 영상에 포함되는 프레임들 각각의 프레임 정보가 상기 입력 영상에서 반복되는 빈도를 나타내는 것을 특징으로 하는 머신 러닝 기반의 영상 자동 편집 시스템. - 제3항에 있어서,
상기 입력 영상에 포함되는 프레임들 각각에 대한 스코어는,
상기 입력 영상에 포함되는 프레임들 각각의 프레임 정보가 나머지 프레임들 각각의 프레임 정보 또는 상기 입력 영상의 평균 프레임 정보와 상이한 정도를 나타내는 것을 특징으로 하는 머신 러닝 기반의 영상 자동 편집 시스템. - 제3항에 있어서,
상기 입력 영상에 포함되는 프레임들 각각에 대한 스코어는,
상기 입력 영상에 포함되는 프레임들 각각의 프레임 정보가 중요한 정도를 나타내는 것을 특징으로 하는 머신 러닝 기반의 영상 자동 편집 시스템. - 제6항에 있어서,
상기 하이라이트 프레임 추출부는,
상기 입력 영상에 포함되는 프레임들 각각의 프레임 정보가 기 설정된 기준 프레임 정보에 매칭되는 정도에 따라 상기 입력 영상에 포함되는 프레임들 각각의 프레임 정보가 중요한 정도를 판단하는 것을 특징으로 하는 머신 러닝 기반의 영상 자동 편집 시스템. - 제1항에 있어서,
상기 하이라이트 영상 생성부는,
상기 추출된 적어도 하나의 하이라이트 프레임을 기준으로 기 설정된 범위의 전후 프레임들이 함께 추출되는 것에 응답하여, 상기 추출된 적어도 하나의 하이라이트 프레임 및 상기 전후 프레임들을 결합하여 상기 하이라이트 영상을 생성하는 것을 특징으로 하는 머신 러닝 기반의 영상 자동 편집 시스템. - 제3항에 있어서,
상기 하이라이트 프레임 추출부는,
상기 입력 영상에 포함되는 프레임들 각각에 대한 스코어를 계산하는 계산 방식들에 대한 사용자의 입력에 따라 선택된 계산 방식을 이용하여, 상기 입력 영상에 포함되는 프레임들 각각에 대한 스코어를 계산하는 것을 특징으로 하는 머신 러닝 기반의 영상 자동 편집 시스템. - 제1항에 있어서,
상기 하이라이트 추출 모델은,
상기 입력 영상을 포함하는 학습 영상들에 등장하는 인물의 표정, 움직임, 위치, 발화 내용, 발화 크기, 발화 속도, 객체의 종류 및 변화, 사운드의 종류 및 크기 또는 상기 학습 영상들을 시청한 시청자들의 반응을 기반으로 상기 머신 러닝을 통해 미리 학습되는 것을 특징으로 하는 머신 러닝 기반의 영상 자동 편집 시스템. - 컴퓨터에 의해 수행되는 머신 러닝 기반의 영상 자동 편집 방법에 있어서,
입력 영상을 획득하는 단계;
머신 러닝을 통해 미리 학습된 하이라이트 추출 모델을 이용하여 상기 입력 영상으로부터 적어도 하나의 하이라이트 프레임을 추출하는 단계; 및
상기 추출된 적어도 하나의 하이라이트 프레임으로 하이라이트 영상을 생성하는 단계
를 포함하는 머신 러닝 기반의 영상 자동 편집 방법. - 제11항에 있어서,
상기 추출하는 단계는,
상기 하이라이트 추출 모델을 이용하여 상기 입력 영상에 포함되는 프레임들 각각에 대한 스코어를 계산하는 단계; 및
상기 입력 영상에 포함되는 프레임들 각각에 대한 스코어에 기초하여 상기 적어도 하나의 하이라이트 프레임을 추출하는 단계
를 포함하는 것을 특징으로 하는 머신 러닝 기반의 영상 자동 편집 방법. - 제12항에 있어서,
상기 계산하는 단계는,
상기 입력 영상에 포함되는 프레임들 각각의 프레임 정보-상기 프레임 정보는 상기 입력 영상에 포함되는 프레임들 각각에서의 인물의 표정, 움직임, 위치, 상기 인물의 발화 내용, 발화 크기, 발화 속도, 객체의 종류 및 변화, 사운드의 종류 및 크기 또는 상기 입력 영상을 시청한 시청자들의 반응을 포함함-에 기초하여, 상기 입력 영상에 포함되는 프레임들 각각에 대한 스코어를 계산하는 것을 특징으로 하는 머신 러닝 기반의 영상 자동 편집 방법. - 머신 러닝 기반의 영상 자동 편집 방법을 실행시키기 위해 컴퓨터로 판독 가능한 매체에 기록된 컴퓨터 프로그램에 있어서,
상기 머신 러닝 기반의 영상 자동 편집 방법은,
입력 영상을 획득하는 단계;
머신 러닝을 통해 미리 학습된 하이라이트 추출 모델을 이용하여 상기 입력 영상으로부터 적어도 하나의 하이라이트 프레임을 추출하는 단계; 및
상기 추출된 적어도 하나의 하이라이트 프레임으로 하이라이트 영상을 생성하는 단계
를 포함하는 매체에 기록된 컴퓨터 프로그램.
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210044347A KR102550305B1 (ko) | 2021-04-06 | 2021-04-06 | 머신 러닝 기반의 영상 자동 편집 방법 및 시스템 |
US17/495,749 US11615814B2 (en) | 2021-04-06 | 2021-10-06 | Video automatic editing method and system based on machine learning |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020210044347A KR102550305B1 (ko) | 2021-04-06 | 2021-04-06 | 머신 러닝 기반의 영상 자동 편집 방법 및 시스템 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220138558A true KR20220138558A (ko) | 2022-10-13 |
KR102550305B1 KR102550305B1 (ko) | 2023-07-03 |
Family
ID=83448269
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210044347A KR102550305B1 (ko) | 2021-04-06 | 2021-04-06 | 머신 러닝 기반의 영상 자동 편집 방법 및 시스템 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11615814B2 (ko) |
KR (1) | KR102550305B1 (ko) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102620737B1 (ko) * | 2023-09-19 | 2024-01-05 | 박준언 | 기업 마케팅 콘텐츠를 제작하기 위한 장치 및 방법 |
KR102632867B1 (ko) * | 2023-02-02 | 2024-02-05 | 주식회사 씨디에스아시아 | 유튜브 콘텐츠 제작시스템 |
KR102653416B1 (ko) * | 2022-12-02 | 2024-04-02 | 권오석 | 쿡티비 플랫폼 서비스 제공 시스템 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20240098458A (ko) * | 2022-12-21 | 2024-06-28 | 씨제이올리브네트웍스 주식회사 | 인공지능 기반 동영상 콘텐츠 내 섬네일 및 하이라이트 검출 방법 및 시스템 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20170038040A (ko) * | 2014-07-29 | 2017-04-05 | 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 | 비디오에서의 컴퓨터화된 현저한 인물 인식 |
KR20200095437A (ko) * | 2020-07-27 | 2020-08-10 | 주식회사 엔씨소프트 | 스포츠 경기의 하이라이트 추출 방법 및 장치 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140328570A1 (en) * | 2013-01-09 | 2014-11-06 | Sri International | Identifying, describing, and sharing salient events in images and videos |
US8995823B2 (en) * | 2012-07-17 | 2015-03-31 | HighlightCam, Inc. | Method and system for content relevance score determination |
GB2587627B (en) * | 2019-10-01 | 2023-05-03 | Sony Interactive Entertainment Inc | Apparatus and method for generating a recording |
-
2021
- 2021-04-06 KR KR1020210044347A patent/KR102550305B1/ko active IP Right Grant
- 2021-10-06 US US17/495,749 patent/US11615814B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20170038040A (ko) * | 2014-07-29 | 2017-04-05 | 마이크로소프트 테크놀로지 라이센싱, 엘엘씨 | 비디오에서의 컴퓨터화된 현저한 인물 인식 |
KR20200095437A (ko) * | 2020-07-27 | 2020-08-10 | 주식회사 엔씨소프트 | 스포츠 경기의 하이라이트 추출 방법 및 장치 |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102653416B1 (ko) * | 2022-12-02 | 2024-04-02 | 권오석 | 쿡티비 플랫폼 서비스 제공 시스템 |
KR102632867B1 (ko) * | 2023-02-02 | 2024-02-05 | 주식회사 씨디에스아시아 | 유튜브 콘텐츠 제작시스템 |
KR102620737B1 (ko) * | 2023-09-19 | 2024-01-05 | 박준언 | 기업 마케팅 콘텐츠를 제작하기 위한 장치 및 방법 |
Also Published As
Publication number | Publication date |
---|---|
US11615814B2 (en) | 2023-03-28 |
KR102550305B1 (ko) | 2023-07-03 |
US20220319549A1 (en) | 2022-10-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102550305B1 (ko) | 머신 러닝 기반의 영상 자동 편집 방법 및 시스템 | |
EP3791392B1 (en) | Joint neural network for speaker recognition | |
US10497382B2 (en) | Associating faces with voices for speaker diarization within videos | |
US9436875B2 (en) | Method and apparatus for semantic extraction and video remix creation | |
CN110675433A (zh) | 视频处理方法、装置、电子设备及存储介质 | |
US11272137B1 (en) | Editing text in video captions | |
EP3523718B1 (en) | Creating a cinematic storytelling experience using network-addressable devices | |
KR20120099814A (ko) | 증강현실 컨텐츠 서비스 시스템과 장치 및 그 방법 | |
CN113709545A (zh) | 视频的处理方法、装置、计算机设备和存储介质 | |
WO2023103597A1 (zh) | 多媒体内容的分享方法、装置、设备、介质及程序产品 | |
US20240038271A1 (en) | System and method for generating video in target language | |
US12047624B2 (en) | Systems and methods for generating new content segments based on object name identification | |
CN108399653A (zh) | 增强现实方法、终端设备及计算机可读存储介质 | |
JP2024503957A (ja) | 動画の編集方法、装置、電子機器、媒体 | |
KR20200022225A (ko) | 만화 데이터 생성 장치, 방법 및 프로그램 | |
CN108334806B (zh) | 图像处理方法、装置和电子设备 | |
US20230237268A1 (en) | One-click filmmaking | |
CN113840152B (zh) | 直播关键点处理方法和装置 | |
EP3596628B1 (en) | Methods, systems and media for transforming fingerprints to detect unauthorized media content items | |
CN114968164A (zh) | 语音处理方法、系统、装置和终端设备 | |
CN114512130A (zh) | 评论显示方法、装置、电子设备及存储介质 | |
CN118921497A (zh) | 显示设备、服务器及直播互动方法 | |
WO2022103500A1 (en) | Inserting digital content in a video | |
CN118338090A (zh) | 多媒体资源生成方法及设备 | |
CN119232969A (zh) | 一种内容聚合方法、装置、电子设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |