KR102600960B1 - 영상 콘텐츠 공유 서비스를 제공하기 위한 방법, 컴퓨팅 장치 및 컴퓨터 프로그램 - Google Patents

영상 콘텐츠 공유 서비스를 제공하기 위한 방법, 컴퓨팅 장치 및 컴퓨터 프로그램 Download PDF

Info

Publication number
KR102600960B1
KR102600960B1 KR1020220134605A KR20220134605A KR102600960B1 KR 102600960 B1 KR102600960 B1 KR 102600960B1 KR 1020220134605 A KR1020220134605 A KR 1020220134605A KR 20220134605 A KR20220134605 A KR 20220134605A KR 102600960 B1 KR102600960 B1 KR 102600960B1
Authority
KR
South Korea
Prior art keywords
data
image data
video
information
emotion
Prior art date
Application number
KR1020220134605A
Other languages
English (en)
Inventor
정은준
Original Assignee
주식회사 뷰이
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 뷰이 filed Critical 주식회사 뷰이
Priority to KR1020220134605A priority Critical patent/KR102600960B1/ko
Priority to KR1020230152403A priority patent/KR20240054916A/ko
Application granted granted Critical
Publication of KR102600960B1 publication Critical patent/KR102600960B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/27Server based end-user applications
    • H04N21/274Storing end-user multimedia data in response to end-user request, e.g. network recorder
    • H04N21/2743Video hosting of uploaded data from client
    • 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
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/50Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
    • 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/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/466Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • H04N21/4662Learning process for intelligent management, e.g. learning user preferences for recommending movies characterized by learning algorithms
    • H04N21/4666Learning process for intelligent management, e.g. learning user preferences for recommending movies characterized by learning algorithms using neural networks, e.g. processing the feedback provided by the user
    • 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
    • H04N21/8545Content authoring for generating interactive applications
    • 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
    • H04N21/8549Creating video summaries, e.g. movie trailer

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Evolutionary Computation (AREA)
  • Physics & Mathematics (AREA)
  • Artificial Intelligence (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Linguistics (AREA)
  • Biophysics (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Health & Medical Sciences (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

전술한 바와 같은 과제를 실현하기 위한 본 발명의 다양한 실시예에 따른 영상 콘텐츠 공유 서비스 제공 방법이 개시된다. 상기 방법은, 컴퓨팅 장치에 포함된 하나 이상의 프로세서에서 수행되며, 영상 데이터를 획득하는 단계, 상기 영상 데이터가 미리 정해진 규칙에 부합하는지 여부를 판별하는 단계, 상기 영상 데이터가 상기 미리 정해진 규칙에 부합하는 경우, 상기 영상 데이터에 대응하는 축약 영상 데이터를 생성하는 단계 및 상기 축약 영상 데이터를 업로드하는 단계를 포함할 수 있다.

Description

영상 콘텐츠 공유 서비스를 제공하기 위한 방법, 컴퓨팅 장치 및 컴퓨터 프로그램{METHOD, COMPUTING DEVICE AND COMPUTER PROGRAM FOR PROVIDING VIDEO CONTENT SHARING SERVICE}
본 발명의 다양한 실시예는 콘텐츠 공유 서비스를 제공하는 시스템에 관한 것으로, 보다 구체적으로, 사용자가 영상 콘텐츠를 업로드 하고자 하는 경우, 블록체인 기반 합의 알고리즘을 통해 영상 콘텐츠의 적정성을 판별하고, 인공지능을 이용하여 영상을 자동으로 축약하여 스트리밍 서버에 개시하는 서비스 플랫폼에 관한 것이다.
오늘날, 정보통신 기술의 발달과 함께 인터넷이 대중화되면서 사용자들은 인터넷 환경을 통해 다른 사용자들에게 다양한 정보들을 공유할 수 있게 되었다. 이러한 환경에서 스마트폰의 등장으로 다양한 콘텐츠를 손쉽게 소비할 수 있는 환경이 마련됨에 따라 1인 미디어 기반의 플랫폼이 확산되어 가고 있다.
미디어 플랫폼의 성장에 따라, 인터넷을 통해 개인 방송을 송출하는 1인 크리에이터(또는, 스트리머) 또한 점차 증가하는 추세이다. 이러한 미디어 플랫폼의 성장과 1인 크리에이터의 증가로 인해, 비디오 콘텐츠의 양이 폭발적으로 증가하였다.
비디오 콘텐츠의 양의 폭발적인 증가와 함께, 해당 다량의 비디오 콘텐츠들을 노출시키기 위한 매체들 또한 증가되고 있으며, 이에 따라 시청자들은 자신이 선호하는 콘텐츠를 탐색 또는 선택하여 시청하려는 경향이 강해지고 있다. 또한, 짧은 시간에 원하는 영상을 선택하여 시청하기 위해서 전체 콘텐츠 중에서 원하는 장면을 하이라이트 표시하는 짧은 비디오 클립을 선호하는 경향 또한 증가하는 추세이다.
이에 따라, 1인 크리에이터는 시청자의 이목을 끌기 위해 원본 영상에서 흥미있는 부분(하이라이트 부분)만을 모아서 편집하여 요약함으로써 하이라이트 영상을 제작하여 제공한다. 하지만, 원본 콘텐츠로부터 하이라이트 영상을 제작하기 위해서는 해당 원본 콘텐츠를 모두 탐색하므로 많은 시간이 소요되며, 콘텐츠에 대한 전문적인 편집 기술을 가지고 있지 않은 크리에이터에게는 하이라이트 영상을 자체 제작하기 어려울 수 있다.
또한, 요약 영상은, 내용 전체를 요약하는 정보 제공 성격(informative)의 하이라이트와 시청자들이 흥미를 느끼는 하이라이트 등 두 개로 나뉠 수 있으나, 이러한 두가지 성격을 적절히 반영하여 좋은 품질의 요약 영상을 제작하는 데에는 어려움이 있다. 추가적으로, 하이라이트 영상 제작을 위해, 별도의 전문 편집자를 두는 경우, 인력 비용이 발생할 수 있다. 이와 더불어, 원본 콘텐츠에서 하이라이트 구간을 선별하는 기준은 편집자의 주관적인 기준이 적용되어 객관성이 결여될 우려가 있으며, 편집자의 역량에 따라 생성되는 하이라이트 영상의 품질이 달라질 수 있다.
다양한 형태의 미디어에 대한 욕구가 팽창하고 있는 시기에 맞춰, 변화되는 미디어 환경에 대응하여 크리에이터의 원본 영상 콘텐츠에서 전체 내용을 전반적으로 요약하거나, 또는 시청자들이 흥미를 가질 것으로 예상되는 부분을 요약하여 짧은 축약 영상 콘텐츠로 제공하는 기술에 대한 수요가 존재할 수 있다.
대한민국 등록특허 2010-0085720호
본 발명이 해결하고자 하는 과제는 전술한 배경기술에 대응하여 안출된 것으로, 영상 콘텐츠를 획득하는 경우, 블록체인 기반 합의 알고리즘을 통해 영상 콘텐츠의 적정성을 판별하고, 인공지능을 이용하여 영상 콘텐츠를 자동으로 축약하여 스트리밍 서버에 개시하는 서비스 플랫폼에 관한 것이다.
본 발명이 해결하고자 하는 과제들은 이상에서 언급된 과제로 제한되지 않으며, 언급되지 않은 또 다른 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상술한 과제를 해결하기 위한 본 발명의 다양한 실시예에 따른 영상 콘텐츠 공유 서비스 제공 방법이 개시된다. 상기 방법은, 컴퓨팅 장치에 포함된 하나 이상의 프로세서에서 수행되며, 영상 데이터를 획득하는 단계, 상기 영상 데이터가 미리 정해진 규칙에 부합하는지 여부를 판별하는 단계, 상기 영상 데이터가 상기 미리 정해진 규칙에 부합하는 경우, 상기 영상 데이터에 대응하는 축약 영상 데이터를 생성하는 단계 및 상기 축약 영상 데이터를 업로드하는 단계를 포함할 수 있다.
대안적인 실시예에서, 상기 방법은, 블록체인 네트워크에 포함된 복수의 노드들 간의 합의를 통해 상기 미리 정해진 규칙을 생성하는 단계, 상기 미리 정해진 규칙에 기반하여 상기 영상 데이터에 대응하는 위험도 점수를 산출하는 단계 및 상기 위험도 점수가 미리 정해진 임계 위험도 점수를 초과하는 경우, 상기 영상 데이터를 반려시키는 단계를 더 포함할 수 있다.
대안적인 실시예에서, 상기 축약 영상 데이터를 생성하는 단계는, 감정 예측 모델을 활용하여 상기 영상 데이터에 대응하는 감정 변화 예측 정보를 생성하는 단계 및 상기 감정 변화 예측 정보에 기초하여 상기 축약 영상 데이터를 생성하는 단계를 포함하며, 상기 감정 예측 모델은, 상기 영상 데이터에 포함된 복수의 영상 서브 데이터 각각에 대한 분석을 수행하여 각 영상 서브 데이터에 대응하는 복수의 감정 각각의 점수를 도출하도록 학습된 신경망 모델인 것을 특징으로 할 수 있다.
대안적인 실시예에서, 상기 축약 영상 데이터를 생성하는 단계는, 사용자 입력 정보를 획득하는 단계 및 상기 사용자 입력 정보 및 상기 감정 변화 예측 정보에 기초하여 상기 축약 영상 데이터를 생성하는 단계를 포함하며, 상기 사용자 입력 정보는, 프레임 선택 정보 및 감정 선택 정보를 포함할 수 있다.
대안적인 실시예에서, 상기 사용자 입력 정보 및 상기 감정 변화 예측 정보에 기초하여 상기 축약 영상 데이터를 생성하는 단계는, 상기 프레임 선택 정보에 기초하여 하나 이상의 제1영상 서브 데이터를 식별하는 단계, 상기 감정 선택 정보에 기초하여 상기 감정 변화 예측 정보에 가중치를 부여하는 단계, 상기 가중치가 부여된 감정 변화 예측 정보에 기초하여 하나 이상의 제2영상 서브 데이터를 식별하는 단계 및 상기 하나 이상의 제1영상 서브 데이터 및 상기 하나 이상의 제2영상 서브 데이터에 기초하여 상기 축약 영상 데이터를 생성하는 단계를 포함할 수 있다.
대안적인 실시예에서, 상기 축약 영상 데이터를 생성하는 단계는, 영상 분석 모델을 활용하여 상기 영상 데이터에 포함된 복수의 제1축약 영상 서브 데이터를 선별하는 단계, 반응 분석 모델을 활용하여 상기 영상 데이터에 포함된 복수의 제2축약 영상 서브 데이터를 선별하는 단계 및 상기 복수의 제1축약 영상 서브 데이터 및 상기 복수의 제2축약 영상 서브 데이터에 기초하여 상기 축약 영상 데이터를 생성하는 단계를 포함하며, 상기 복수의 제1축약 영상 서브 데이터는, 정보 제공에 관련한 영상 프레임들을 포함하며, 상기 복수의 제2축약 영상 서브 데이터는, 흥미 구간에 관련한 영상 프레임들을 포함할 수 있다.
대안적인 실시예에서, 상기 영상 분석 모델은, 상기 영상 데이터에 대한 영상 분석을 통해 주요 프레임을 식별하는 것을 특징으로 하며, 상기 반응 분석 모델은, 상기 영상 데이터에 대응하는 시청자 인터렉션 정보에 기초하여 각 프레임 별 시청자들의 흥미 지수를 도출하고, 흥미 지수가 일정 이상인 프레임들을 주요 프레임으로 식별하는 것을 특징으로 할 수 있다.
대안적인 실시예에서, 상기 축약 영상 데이터를 생성하는 단계는, 상기 영상 데이터의 카테고리 정보를 획득하는 단계 및 상기 카테고리 정보에 기초하여 상기 축약 영상 데이터에 포함되는 상기 복수의 제1축약 영상 서브 데이터 및 상기 복수의 제2축약 영상 서브 데이터 각각의 비율을 결정하는 단계를 포함할 수 있다.
대안적인 실시예에서, 상기 방법은, 상기 업로드된 축약 영상 데이터를 시청한 시청 사용자 단말들로부터 상기 업로드된 축약 영상 데이터에 관련한 부정 정보를 기 설정된 횟수 이상 수신하는 경우, 상기 축약 영상 데이터를 삭제하는 단계를 더 포함할 수 있다.
본 발명의 다른 실시예에서, 영상 콘텐츠 공유 서비스를 제공하는 컴퓨팅 장치가 개시된다. 상기 컴퓨팅 장치는 하나 이상의 인스트럭션을 저장하는 메모리 및 상기 메모리에 저장된 상기 하나 이상의 인스트럭션을 실행하는 프로세서를 포함하고, 상기 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써 전술한 영상 콘텐츠 공유 서비스 제공 방법을 수행할 수 있다.
본 발명의 또 다른 실시예에서, 영상 콘텐츠 공유 서비스를 제공하기 위한 컴퓨터 프로그램이 개시된다. 상기 컴퓨터 프로그램은, 하드웨어인 컴퓨터와 결합되어, 전술한 영상 콘텐츠 공유 서비스 제공 방법을 수행할 수 있도록 컴퓨터에서 독출가능한 기록매체에 저장될 수 있다.
본 발명의 기타 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.
본 발명의 다양한 실시예에 따르면, 영상 콘텐츠를 획득하는 경우, 인공지능을 이용하여 영상 콘텐츠를 자동으로 축약하여 스트리밍 서버에 개시하는 서비스 플랫폼을 제공할 수 있다.
또한, 블록체인 기반 합의 알고리즘을 통해 사용자가 업로드 하고자 하는 영상 콘텐츠가 유해한지 여부를 자동으로 필터링하여 적정한 콘텐츠만을 노출시킬 수 있다.
본 발명의 효과들은 이상에서 언급된 효과로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 본 발명의 일 실시예와 관련된 영상 콘텐츠 공유 서비스를 제공하기 위한 방법이 구현될 수 있는 개략적인 시스템을 도시한 예시도이다.
도 2는 본 발명의 일 실시예와 관련된 영상 콘텐츠 공유 서비스를 제공하는 컴퓨팅 장치의 블록 구성도를 도시한다.
도 3은 본 발명의 일 실시예와 관련된 영상 콘텐츠에 대응하는 축약 영상 콘텐츠를 제공하는 전반적인 과정을 예시적으로 나타낸 순서도이다.
도 4는 본 발명의 일 실시예와 관련된 감정 변화 예측 정보를 통해 영상 데이터에 대응하는 축약 영상 데이터를 생성하는 과정을 나타낸 예시도이다.
도 5는 본 발명의 일 실시예와 관련된 감정 변화 예측 정보 및 사용자 입력 정보에 기초하여 영상 데이터에 대응하는 축약 영상 데이터를 생성하는 과정을 나타낸 예시도이다.
도 6은 본 발명의 일 실시예와 관련된 사용자 입력 정보에 기초하여 감정 변화 예측 정보에 가중치를 부여함으로써 축약 영상 데이터가 생성됨을 설명하기 위한 예시도이다.
도 7은 본 발명의 다른 실시예와 관련된 영상 데이터 및 시청자 인터렉션 정보에 기초하여 축약 영상 데이터를 생성하는 과정을 예시적으로 나타낸 예시도이다.
도 8은 본 발명의 일 실시예와 관련된 영상 콘텐츠 공유 서비스 제공 방법의 예시적인 순서도를 도시한다.
도 9는 본 발명의 일 실시예와 관련된 하나 이상의 네트워크 함수를 나타낸 개략도이다.
다양한 실시예들이 이제 도면을 참조하여 설명된다. 본 명세서에서, 다양한 설명들이 본 발명의 이해를 제공하기 위해서 제시된다. 그러나, 이러한 실시예들은 이러한 구체적인 설명 없이도 실행될 수 있음이 명백하다.
본 명세서에서 사용되는 용어 "컴포넌트", "모듈", "시스템" 등은 컴퓨터-관련 엔티티, 하드웨어, 펌웨어, 소프트웨어, 소프트웨어 및 하드웨어의 조합, 또는 소프트웨어의 실행을 지칭한다. 예를 들어, 컴포넌트는 프로세서상에서 실행되는 처리과정(procedure), 프로세서, 객체, 실행 스레드, 프로그램, 및/또는 컴퓨터일 수 있지만, 이들로 제한되는 것은 아니다. 예를 들어, 컴퓨팅 장치에서 실행되는 애플리케이션 및 컴퓨팅 장치 모두 컴포넌트일 수 있다. 하나 이상의 컴포넌트는 프로세서 및/또는 실행 스레드 내에 상주할 수 있다. 일 컴포넌트는 하나의 컴퓨터 내에 로컬화 될 수 있다. 일 컴포넌트는 2개 이상의 컴퓨터들 사이에 분배될 수 있다. 또한, 이러한 컴포넌트들은 그 내부에 저장된 다양한 데이터 구조들을 갖는 다양한 컴퓨터 판독가능한 매체로부터 실행할 수 있다. 컴포넌트들은 예를 들어 하나 이상의 데이터 패킷들을 갖는 신호(예를 들면, 로컬 시스템, 분산 시스템에서 다른 컴포넌트와 상호작용하는 하나의 컴포넌트로부터의 데이터 및/또는 신호를 통해 다른 시스템과 인터넷과 같은 네트워크를 통해 전송되는 데이터)에 따라 로컬 및/또는 원격 처리들을 통해 통신할 수 있다.
더불어, 용어 "또는"은 배타적 "또는"이 아니라 내포적 "또는"을 의미하는 것으로 의도된다. 즉, 달리 특정되지 않거나 문맥상 명확하지 않은 경우에, "X는 A 또는 B를 이용한다"는 자연적인 내포적 치환 중 하나를 의미하는 것으로 의도된다. 즉, X가 A를 이용하거나; X가 B를 이용하거나; 또는 X가 A 및 B 모두를 이용하는 경우, "X는 A 또는 B를 이용한다"가 이들 경우들 어느 것으로도 적용될 수 있다. 또한, 본 명세서에 사용된 "및/또는"이라는 용어는 열거된 관련 아이템들 중 하나 이상의 아이템의 가능한 모든 조합을 지칭하고 포함하는 것으로 이해되어야 한다.
또한, "포함한다" 및/또는 "포함하는"이라는 용어는, 해당 특징 및/또는 구성요소가 존재함을 의미하는 것으로 이해되어야 한다. 다만, "포함한다" 및/또는 "포함하는"이라는 용어는, 하나 이상의 다른 특징, 구성요소 및/또는 이들의 그룹의 존재 또는 추가를 배제하지 않는 것으로 이해되어야 한다. 또한, 달리 특정되지 않거나 단수 형태를 지시하는 것으로 문맥상 명확하지 않은 경우에, 본 명세서와 청구범위에서 단수는 일반적으로 "하나 또는 그 이상"을 의미하는 것으로 해석되어야 한다.
당업자들은 추가적으로 여기서 개시된 실시예들과 관련되어 설명된 다양한 예시적 논리적 블록들, 구성들, 모듈들, 회로들, 수단들, 로직들, 및 알고리즘 단계들이 전자 하드웨어, 컴퓨터 소프트웨어, 또는 양쪽 모두의 조합들로 구현될 수 있음을 인식해야 한다. 하드웨어 및 소프트웨어의 상호교환성을 명백하게 예시하기 위해, 다양한 예시적 컴포넌트들, 블록들, 구성들, 수단들, 로직들, 모듈들, 회로들, 및 단계들은 그들의 기능성 측면에서 일반적으로 위에서 설명되었다. 그러한 기능성이 하드웨어로 또는 소프트웨어로서 구현되는지 여부는 전반적인 시스템에 부과된 특정 어플리케이션(application) 및 설계 제한들에 달려 있다. 숙련된 기술자들은 각각의 특정 어플리케이션들을 위해 다양한 방법들로 설명된 기능성을 구현할 수 있다. 다만, 그러한 구현의 결정들이 본 발명내용의 영역을 벗어나게 하는 것으로 해석되어서는 안된다.
제시된 실시예들에 대한 설명은 본 발명의 기술 분야에서 통상의 지식을 가진 자가 본 발명을 이용하거나 또는 실시할 수 있도록 제공된다. 이러한 실시예들에 대한 다양한 변형들은 본 발명의 기술 분야에서 통상의 지식을 가진 자에게 명백할 것이다. 여기에 정의된 일반적인 원리들은 본 발명의 범위를 벗어남이 없이 다른 실시예들에 적용될 수 있다. 그리하여, 본 발명은 여기에 제시된 실시예들로 한정되는 것이 아니다. 본 발명은 여기에 제시된 원리들 및 신규한 특징들과 일관되는 최광의의 범위에서 해석되어야 할 것이다.
본 명세서에서, 컴퓨터는 적어도 하나의 프로세서를 포함하는 모든 종류의 하드웨어 장치를 의미하는 것이고, 실시 예에 따라 해당 하드웨어 장치에서 동작하는 소프트웨어적 구성도 포괄하는 의미로서 이해될 수 있다. 예를 들어, 컴퓨터는 스마트폰, 태블릿 PC, 데스크톱, 노트북 및 각 장치에서 구동되는 사용자 클라이언트 및 애플리케이션을 모두 포함하는 의미로서 이해될 수 있으며, 또한 이에 제한되는 것은 아니다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세하게 설명한다.
본 명세서에서 설명되는 각 단계들은 컴퓨터에 의하여 수행되는 것으로 설명되나, 각 단계의 주체는 이에 제한되는 것은 아니며, 실시 예에 따라 각 단계들의 적어도 일부가 서로 다른 장치에서 수행될 수도 있다.
도 1은 본 발명의 일 실시예와 관련된 콘텐츠 공유 서비스를 제공하기 위한 방법이 구현될 수 있는 개략적인 시스템을 도시한 예시도이다.
도 1에 도시된 바와 같이, 콘텐츠 공유 서비스를 제공하기 위한 시스템은, 사용자 노드(100a, 100b 및 100c : 100), 컴퓨팅 장치(200), 블록체인 네트워크(300) 및 통신 네트워크(400)를 포함할 수 있다. 도 1에서 도시되는 컴포넌트들은 예시적인 것으로, 추가적인 컴포넌트들이 존재하거나 또는 도 1에서 도시되는 컴포넌트 중 일부는 생략될 수도 있다.
도 1에서의 사용자 노드(100)는 컴퓨팅 장치(200) 및 블록체인 네트워크(300) 중 적어도 하나에 엑세스하고자 하는 사용자와 관련될 수 있다. 사용자 노드(100)는 컴퓨팅 장치(200) 및 블록체인 네트워크(300) 중 적어도 하나로 쿼리(query) 또는 트랜잭션(transaction)을 발행할 수 있다. 일 실시예에서, 쿼리는 블록체인 네트워크(300) 상에서 검증하기 위한 규칙을 결정하기 위한 사용자 노드 정보를 조회하는데 사용될 수 있다. 또한, 트랜잭션은 블록체인 네트워크(300) 상에 기록된 데이터(예컨대, 규칙)에 대한 업데이트(수정/변경/삭제/추가)를 수행하는 데 사용될 수 있다.
사용자 노드(100)는 통신 네트워크(400)를 통하여 서로 간에 또는 다른 노드와의 통신을 수행하기 위한 메커니즘을 가지며, 콘텐츠 공유를 수행하기 위한 시스템에서의 임의의 형태의 단말을 의미할 수 있다. 예를 들어, 사용자 노드(100)는 PC, 랩탑 컴퓨터, 워크스테이션, 단말 및/또는 네트워크 접속성을 갖는 임의의 전자 디바이스를 포함할 수 있다. 또한, 사용자 노드(100)는 에이전트(Agent), API(Application Programming Interface) 및 플러그-인(Plug-in) 중 적어도 하나에 의해 구현되는 임의의 서버를 포함할 수도 있다. 또한, 사용자 노드(100)는 애플리케이션 소스 및/또는 클라이언트 애플리케이션을 포함할 수 있다. 사용자 노드(100)는 프로세서 및 저장부를 포함하여 임의의 데이터를 처리 및 저장할 수 있는 임의의 엔티티일 수 있다.
사용자 노드(100)는 프로그래밍 언어로 작성된 애플리케이션 소스를 송수신할 수 있다. 예를 들어, 사용자 노드(100)는 애플리케이션 소스를 컴파일링하여 클라이언트 애플리케이션을 생성할 수 있다. 예를 들어, 생성된 클라이언트 애플리케이션은 컴퓨팅 장치(200) 및 블록체인 네트워크(300) 중 적어도 하나로 전달된 후 실행될 수 있다.
사용자 노드(100)는 솔리디티(Solidity) 등과 같은 임의의 언어를 사용하여 블록체인 네트워크(300) 상에서 동작될 수 있는 스마트 컨트랙트를 생성할 수 있다. 또한, 사용자 노드(100)는 생성된 스마트 컨트랙트를 블록체인 네트워크(300)로 배포하기 위한 트랜잭션을 생성할 수 있다.
사용자 노드(100)는 컴퓨팅 장치(200)에 접속하여 업로드된 영상 콘텐츠 파일을 시청할 수 있으며, 업로드된 영상 콘텐츠가 적절한지 여부를 판별하기 위한 규칙을 생성하고, 이에 대해 합의할 수 있다. 또한, 사용자 노드(100)는 영상 콘텐츠의 적정성을 평가하기 위한 규칙을 생성하기 위하여 블록체인 네트워크(300)로 트랜잭션을 발행할 수 있다.
본 발명의 일 실시예에 따르면, 컴퓨팅 장치(200)는 사용자 노드(100)로 하여금 업로드된 영상 콘텐츠 및 축약된 영상 콘텐츠에 대한 시청을 허용할 수 있다. 컴퓨팅 장치(200)는 예를 들어, 마이크로프로세서, 메인프레임 컴퓨터, 디지털 프로세서, 휴대용 디바이스 및 디바이스 제어기 등과 같은 임의의 타입의 컴퓨터 시스템 또는 컴퓨터 디바이스를 포함할 수 있다.
컴퓨팅 장치(200)는 사용자 노드로부터 영상 데이터를 수신하는 경우, 수신된 영상 데이터에 대한 검증을 수행할 수 있다. 여기서 영상 데이터에 대한 검증은, 유해성을 판별하기 위한 검증을 의미할 수 있다. 컴퓨팅 장치(200)는 미리 정해진 합의 규칙에 기반하여 영상 데이터에 대한 검증을 수행할 수 있다. 실시예에서, 합의 규칙이란, 블록체인 네트워크(300)에 포함된 복수의 노드들 간의 거버넌스 투표를 통해 미리 정해진 규칙을 의미할 수 있다. 합의 규칙은 예를 들어, 영상의 시청 연령을 제한하거나, 비속어 또는 혐오 표현 등을 포함하는 영상을 제한하기 위한 규칙들을 포함할 수 있다. 특정 사용자가 영상 데이터를 업로드 하고자 하는 경우, 컴퓨팅 장치(200)는 복수의 노드들의 사전 합의를 통해 미리 정해진 규칙에 기반하여 영상 데이터의 유해성에 관련한 검증을 수행할 수 있다. 실시예에서, 컴퓨팅 장치(200)는 영상 데이터가 미리 정해진 규칙에 부합하는 경우, 해당 영상 데이터의 업로드를 허용할 수 있으며, 영상 데이터가 미리 정해진 규칙에 부합하지 않는 경우, 해당 영상 데이터의 업로드를 반려시킬 수 있다.
또한, 컴퓨팅 장치(200)는 영상 데이터에 대한 축약 영상 데이터를 생성할 수 있다. 컴퓨팅 장치(200)는 영상 데이터가 미리 정해진 규칙에 부합하는 것으로 판별한 경우, 인공지능을 활용하여 해당 영상 데이터에 대한 축약 영상 데이터를 생성할 수 있다.
축약 영상 데이터란, 전체 원본 영상에서 일부만을 편집하여 요약한 하이라이트 영상을 의미할 수 있다. 본 발명의 축약 영상 데이터는, 영상의 전체 내용을 전반적으로 요약하는 정보 제공(informative) 성격의 영상 데이터 및 시청자들이 흥미를 느끼는 구간을 통해 요약하는 흥미 제공(interesting) 성격의 영상 데이터를 포함할 수 있다. 일 실시예에 따르면, 영상 데이터를 시청하고자 하는 시청자들은 전체 영상 데이터가 아닌, 축약 영상 데이터를 통해 영상 데이터의 전반적인 내용을 파악하여, 해당 영상 데이터를 시청할지 여부를 결정할 수 있다. 즉, 비교적 짧은 시간으로 구성되는 축약 영상 데이터가, 원본 영상 데이터의 정보 제공 측면과 흥미 제공 측면을 적절히 반영하여 생성된 경우, 시청자들의 흥미를 유발할 수 있으며, 이에 따라, 많은 시청자들이 원본 영상 데이터를 시청하도록 유도할 수 있다.
전술한 바와 같이, 사용자가 특정 영상 데이터를 업로드하고자 하는 경우, 컴퓨팅 장치(200)는 영상 데이터에 대한 검증을 수행할 수 있으며, 검증이 수행된 영상 데이터에 대하여 인공지능을 활용하여 축약 영상 데이터를 생성할 수 있다. 이에 따라, 업로드에 관련한 사용자는 영상 데이터에 대한 유해성 검증이나, 요약본 생성을 위한 편집 과정을 거치지 않을 수 있어, 편의성이 향상될 수 있으며, 시청에 관련한 사용자는 유해한 영상 콘텐츠의 노출로부터 보호받을 수 있다. 컴퓨팅 장치(200)가 영상 데이터에 대한 검증을 수행하는 방법 및 인공지능을 활용하여 축약 영상 데이터를 생성하는 방법에 대한 구체적인 설명은 도 3 내지 도 9를 참조하여 후술하도록 한다.
도 1에서는 사용자 노드들 및 컴퓨팅 장치(200)를 블록체인 네트워크(300)와 분리시켜 표현하였지만, 구현 양태에 따라서 사용자 노드들 및/또는 컴퓨팅 장치(200)는 블록체인 네트워크(300)를 구성하는 노드가 될 수 있다.
본 발명의 일 실시예에 따르면, 블록체인 네트워크(300)는 블록체인 기술에 기반하여 동작하는 복수의 노드들을 의미할 수 있다. 여기서, 블록체인 기술은 블록이 체인형태로 연결된 저장 구조를 사용하여 관리 대상이 되는 데이터를 블록체인 네트워크(300)를 구성하는 복수의 노드들에 저장하는 분산 저장 기술이다.
블록체인 네트워크(300)는 사용자 노드(100) 및 컴퓨팅 장치 중 적어도 하나로부터 전달된 트랜잭션을 사전 결정된 합의 알고리즘에 기초하여 블록 형태로 저장할 수 있다. 블록 형태로 저장되는 데이터는 블록체인 네트워크(300)를 구성하는 복수의 노드들에 의해 공유될 수 있다.
도 1에서는 블록체인 네트워크(300)를 별도의 분리된 엔티티로서 표현하였지만, 본 발명의 실시예에 따라서 블록체인 네트워크(300)가 컴퓨팅 장치(200)에 포함된 형태(즉, 컴퓨팅 장치(200)의 제어 하에서 동작하는 블록체인 네트워크)로 구현될 수도 있다.
블록체인 네트워크(300)는, 구현 형태에 따라서, 임의의 노드들이 합의 동작을 수행할 수 있는 Public 블록체인 네트워크 또는 사전 결정된 노드만이 합의 동작을 수행할 수 있는 Private 블록체인 네트워크를 포함할 수 있다.
본 발명의 일 실시예에 따른 블록체인 네트워크(300)에서 수행되는 합의 알고리즘은: PoW(Proof of Work) 알고리즘, PoS(Proof of Stake) 알고리즘, DPoS(Delegated Proof of Stake) 알고리즘, PBFT(Practical Byzantine Fault Tolerance) 알고리즘, DBFT(Delegated Byzantine Fault Tolerance) 알고리즘, RBFT(Redundant Byzantine Fault Tolerance) 알고리즘, Sieve 알고리즘, Tendermint 알고리즘, Paxos 알고리즘, Raft 알고리즘, PoA(Proof of Authority) 알고리즘 및/또는 PoET(Proof of Elapsed Time) 알고리즘을 포함할 수 있다.
본 발명의 일 실시예에서, 블록체인 네트워크(300)에서의 노드들은 계층 구조에 따른 블록체인 코어 패키지에 의해 동작할 수 있다. 상기 계층 구조는: 블록체인 네트워크(300)에서 다뤄지는 데이터의 구조를 정의하고 데이터를 관리하는 데이터 계층, 블록의 유효성을 검증하고 블록을 생성하는 마이닝을 수행하고 마이닝 과정에서 채굴자에게 지급되는 수수료의 처리를 담당하는 합의 계층, 스마트 컨트랙트를 처리 및 실행시키는 실행 계층, P2P 네트워크 프로토콜, 해시 함수, 전자서명, 인코딩 및 공통 저장소를 구현 및 관리하는 공통 계층, 및 다양한 어플리케이션이 생성, 처리 및 관리되는 응용 계층을 포함할 수 있다.
본 발명의 일 실시예에 따라, 영상 콘텐츠 공유 서비스를 제공함에 있어서 블록체인 네트워크(300)를 사용함으로써, 공유에 대한 사용자의 편의성, 파일 공유의 투명성 및 공유되는 파일 자체의 무결성을 확보할 수 있을 뿐만 아니라, 복수의 사용자들 공공에 이익에 따른 탈중앙화된 파일 공유 시스템을 제공할 수 있다.
본 발명의 일 실시예에 따른 통신 네트워크(400)는 공중전화 교환망(PSTN:Public Switched Telephone Network), xDSL(x Digital Subscriber Line), RADSL(Rate Adaptive DSL), MDSL(Multi Rate DSL), VDSL(Very High Speed DSL), UADSL(Universal Asymmetric DSL), HDSL(High Bit Rate DSL) 및 근거리 통신망(LAN) 등과 같은 다양한 유선 통신 시스템들을 사용할 수 있다.
또한, 본 발명에서 제시되는 통신 네트워크(400)는 CDMA(Code Division Multi Access), TDMA(Time Division Multi Access), FDMA(Frequency Division Multi Access), OFDMA(Orthogonal Frequency Division Multi Access), SC-FDMA(Single Carrier-FDMA) 및 다른 시스템들과 같은 다양한 무선 통신 시스템들을 사용할 수 있다. 본 발명에서 설명된 기술들은 위에서 언급된 네트워크들뿐만 아니라, 임의의 형태의 다른 통신 네트워크들에서도 사용될 수 있다.
도 2는 본 발명의 일 실시예와 관련된 영상 콘텐츠 공유 서비스를 제공하는 컴퓨팅 장치의 블록 구성도를 도시한다.
도 2를 참조하면, 본 발명의 일 실시예에 따른 영상 콘텐츠 공유 서비스를 제공하는 컴퓨팅 장치(200)(이하, “컴퓨팅 장치(200)”)는 하나 이상의 프로세서(210), 프로세서(210)에 의하여 수행되는 컴퓨터 프로그램(251)을 로드(Load)하는 메모리(220), 버스(230), 통신 인터페이스(240) 및 컴퓨터 프로그램(251)을 저장하는 스토리지(250)를 포함할 수 있다. 여기서, 도 2에는 본 발명의 실시예와 관련 있는 구성요소들만 도시되어 있다. 따라서, 본 발명이 속한 기술분야의 통상의 기술자라면 도 2에 도시된 구성요소들 외에 다른 범용적인 구성 요소들이 더 포함될 수 있음을 알 수 있다.
프로세서(210)는 컴퓨팅 장치(200)의 각 구성의 전반적인 동작을 제어한다. 프로세서(210)는 CPU(Central Processing Unit), MPU(Micro Processor Unit), MCU(Micro Controller Unit), GPU(Graphic Processing Unit) 또는 본 발명의 기술 분야에 잘 알려진 임의의 형태의 프로세서를 포함하여 구성될 수 있다.
프로세서(210)는 메모리(220)에 저장된 컴퓨터 프로그램을 판독하여 본 발명의 일 실시예에 따른 영상 데이터에 대한 검증 및 영상 데이터에 대응하는 축약 영상 데이터를 생성하기 위한 데이터 처리를 수행할 수 있다.
프로세서(210)는 메모리(220)에 저장된 컴퓨터 프로그램을 판독하여 본 발명의 일 실시예에 따른 딥러닝을 위한 데이터 처리를 수행할 수 있다. 본 발명의 일 실시예에 따라 프로세서(210)는 신경망의 학습을 위한 연산을 수행할 수 있다. 프로세서(210)는 딥러닝(DL: deep learning)에서 학습을 위한 입력 데이터의 처리, 입력 데이터에서의 피처 추출, 오차 계산, 역전파(backpropagation)를 이용한 신경망의 가중치 업데이트 등의 신경망의 학습을 위한 계산을 수행할 수 있다.
또한, 프로세서(210)는 CPU, GPGPU(General Purpose computing on Graphic Processing Units), 및 TPU(Tensor Processing Unit) 중 적어도 하나가 네트워크 함수의 학습을 처리할 수 있다. 예를 들어, CPU 와 GPGPU가 함께 네트워크 함수의 학습, 네트워크 함수를 이용한 데이터 분류를 처리할 수 있다. 또한, 본 발명의 일 실시예에서 복수의 컴퓨팅 장치의 프로세서를 함께 사용하여 네트워크 함수의 학습, 네트워크 함수를 이용한 데이터 분류를 처리할 수 있다. 또한, 본 발명의 일 실시예에 따른 컴퓨팅 장치에서 수행되는 컴퓨터 프로그램은 CPU, GPGPU 또는 TPU 실행가능 프로그램일 수 있다.
본 명세서에서 네트워크 함수는 인공 신경망, 뉴런 네트워크와 상호 교환 가능하게 사용될 수 있다. 본 명세서에서 네트워크 함수는 하나 이상의 뉴럴 네트워크를 포함할 수도 있으며, 이 경우 네트워크 함수의 출력은 하나 이상의 뉴럴 네트워크의 출력의 앙상블(ensemble)일 수 있다.
본 발명의 일 실시예에 따르면, 프로세서(210)는 통상적으로 컴퓨팅 장치(200)의 전반적인 동작을 처리할 수 있다. 프로세서(210)는 위에서 살펴본 구성요소들을 통해 입력 또는 출력되는 신호, 데이터, 정보 등을 처리하거나 메모리(220)에 저장된 응용 프로그램을 구동함으로써, 사용자 또는 사용자 단말에게 적정한 정보 또는, 기능을 제공하거나 처리할 수 있다.
또한, 프로세서(210)는 본 발명의 실시예들에 따른 방법을 실행하기 위한 적어도 하나의 애플리케이션 또는 프로그램에 대한 연산을 수행할 수 있으며, 컴퓨팅 장치(200)는 하나 이상의 프로세서를 구비할 수 있다.
다양한 실시예에서, 프로세서(210)는 프로세서(210) 내부에서 처리되는 신호(또는, 데이터)를 일시적 및/또는 영구적으로 저장하는 램(RAM: Random Access Memory, 미도시) 및 롬(ROM: Read-Only Memory, 미도시)을 더 포함할 수 있다. 또한, 프로세서(210)는 그래픽 처리부, 램 및 롬 중 적어도 하나를 포함하는 시스템온칩(SoC: system on chip) 형태로 구현될 수 있다.
메모리(220)는 각종 데이터, 명령 및/또는 정보를 저장한다. 메모리(220)는 본 발명의 다양한 실시예에 따른 방법/동작을 실행하기 위하여 스토리지(250)로부터 컴퓨터 프로그램(251)을 로드할 수 있다. 메모리(220)에 컴퓨터 프로그램(251)이 로드되면, 프로세서(210)는 컴퓨터 프로그램(251)을 구성하는 하나 이상의 인스트럭션들을 실행함으로써 상기 방법/동작을 수행할 수 있다. 메모리(220)는 RAM과 같은 휘발성 메모리로 구현될 수 있을 것이나, 본 개시의 기술적 범위가 이에 한정되는 것은 아니다.
버스(230)는 컴퓨팅 장치(200)의 구성 요소 간 통신 기능을 제공한다. 버스(230)는 주소 버스(address Bus), 데이터 버스(Data Bus) 및 제어 버스(Control Bus) 등 다양한 형태의 버스로 구현될 수 있다.
통신 인터페이스(240)는 컴퓨팅 장치(200)의 유무선 인터넷 통신을 지원한다. 또한, 통신 인터페이스(240)는 인터넷 통신 외의 다양한 통신 방식을 지원할 수도 있다. 이를 위해, 통신 인터페이스(240)는 본 발명의 기술 분야에 잘 알려진 통신 모듈을 포함하여 구성될 수 있다. 몇몇 실시예에서, 통신 인터페이스(240)는 생략될 수도 있다.
스토리지(250)는 컴퓨터 프로그램(251)을 비 임시적으로 저장할 수 있다. 컴퓨팅 장치(200)를 통해 축약 영상 데이터를 생성하기 위한 프로세스를 수행하는 경우, 스토리지(250)는 축약 영상 데이터를 생성하기 위한 프로세스를 제공하기 위하여 필요한 각종 정보를 저장할 수 있다.
스토리지(250)는 ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리 등과 같은 비휘발성 메모리, 하드 디스크, 착탈형 디스크, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터로 읽을 수 있는 기록 매체를 포함하여 구성될 수 있다.
컴퓨터 프로그램(251)은 메모리(220)에 로드될 때 프로세서(210)로 하여금 본 발명의 다양한 실시예에 따른 방법/동작을 수행하도록 하는 하나 이상의 인스트럭션들을 포함할 수 있다. 즉, 프로세서(210)는 상기 하나 이상의 인스트럭션들을 실행함으로써, 본 발명의 다양한 실시예에 따른 상기 방법/동작을 수행할 수 있다.
일 실시예에서, 컴퓨터 프로그램(251)은 영상 데이터를 획득하는 단계, 영상 데이터가 미리 정해진 규칙에 부합하는지 여부를 판별하는 단계, 영상 데이터가 미리 정해진 규칙에 부합하는 경우, 영상 데이터에 대응하는 축약 영상 데이터를 생성하는 단계 및 축약 영상 데이터를 업로드하는 단계를 포함하는 영상 콘텐츠 공유 서비스를 제공하기 위한 방법을 수행하도록 하는 하나 이상의 인스트럭션을 포함할 수 있다.
본 발명의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체에 상주할 수도 있다.
본 발명의 구성 요소들은 하드웨어인 컴퓨터와 결합되어 실행되기 위해 프로그램(또는 애플리케이션)으로 구현되어 매체에 저장될 수 있다. 본 발명의 구성 요소들은 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있으며, 이와 유사하게, 실시 예는 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다.
도 3은 본 발명의 일 실시예와 관련된 단선도 생성하기 위한 방법을 예시적으로 나타낸 순서도를 도시한다. 도 3에 도시된 단계들은 필요에 의해 순서가 변경될 수 있으며, 적어도 하나 이상의 단계가 생략 또는 추가될 수 있다. 즉, 이하의 단계들은 본 발명의 일 실시예에 불과할 뿐, 본 발명의 권리 범위는 이에 제한되지 않는다.
본 발명의 일 실시예에 따르면, 컴퓨팅 장치(200)는 영상 데이터를 획득할 수 있다. 본 발명의 일 실시예에 따른 영상 데이터(10)의 획득은, 메모리(220)에 저장된 영상 데이터를 수신하거나 또는 로딩(loading)하는 것일 수 있다. 또한, 영상 데이터의 획득은, 유/무선 통신 수단에 기초하여 다른 저장 매체, 다른 컴퓨팅 장치, 동일한 컴퓨팅 장치 내의 별도 처리 모듈로부터 데이터를 수신하거나 또는 로딩하는 것일 수 있다.
일 실시예에서, 제1사용자(예컨대, 크리에이터)는 자신이 제작한 영상 데이터가 다른 사용자(예컨대, 시청자)에게 노출될 수 있도록, 영상 데이터를 스트리밍 서버에 업로드할 수 있다(S110). 컴퓨팅 장치(200)는 제1사용자의 사용자 단말로부터 제1사용자가 업로드하고자 하는 영상 데이터를 수신할 수 있다. 즉, 본 발명의 영상 데이터는, 영상 데이터를 업로드하고자 하는 사용자의 사용자 단말로부터 수신되는 것일 수 있다.
본 발명의 일 실시예에 따르면, 컴퓨팅 장치(200)는 미리 정해진 규칙을 통해 영상 데이터에 대한 필터링을 수행할 수 있다(S120). 구체적으로, 컴퓨팅 장치(200)는 영상 데이터가 미리 정해진 규칙에 부합하는지 여부를 판별하여 영상 데이터에 대한 검증을 수행할 수 있다.
영상 데이터에 대한 검증은, 성인물 감지, 비속어 및 혐오 표현 감지에 관련한 검증일 수 있다. 예컨대, 미리 정해진 규칙은, 영상의 수위, 허용 가능한 표현 및 욕설에 관련한 규칙을 포함할 수 있다. 예를 들어, 미리 정해진 규칙은, 영상 속에서 남성의 상의 노출을 허용한다는 규칙을 포함할 수 있다. 다른 예를 들어, 미리 정해진 규칙은, 미미한 욕설(예컨대, '나쁜놈', '바보' 등)이 포함된 영상은 스트리밍 가능하며, 인종차별적 단어(예컨대, Nigger, Negro 등)가 포함된 영상은 스트리밍이 불가능하다는 규칙을 포함할 수 있다.
일 실시예에 따르면, 미리 정해진 규칙은, 블록체인 네트워크(300)에 포함된 복수의 노드들 간의 합의를 통해 생성되는 것을 특징으로 할 수 있다. 블록체인 네트워크(300)에 포함된 복수의 노드들 간의 거버넌스 투표를 통해 규칙들이 결정될 수 있다. 탈중앙화된 블록체인 네트워크에 포함된 복수의 사용자들의 간 투표를 통해 스트리밍 규제에 관련한 규칙들이 사전 결정될 수 있다. 예를 들어, 사용자들간 합의에 따라 비속어로 표현될 수 있는 단어 또는 혐오의 표현이 될 수 있는 단어 등이 규칙으로써 결정될 수 있다. 즉, 임의의 사용자 또는 특정 시스템에서 생성한 규칙이 아닌, 대중들의 투표를 통한 합의를 기반으로 규칙들이 생성됨에 따라 탈중앙화된 영상 공유 서비스 제공을 가능하게 할 수 있다. 다시 말해, 다수의 사용자들이 합의를 통해 생성한 기준을 통해 영상 데이터의 스트리밍 여부가 결정될 수 있다.
일 실시예에서, 컴퓨팅 장치(200)는 미리 정해진 규칙에 기반하여 영상 데이터에 대응하는 위험도 점수를 산출할 수 있다. 컴퓨팅 장치(200)는 규칙에 의해 영상 데이터의 위험도를 점수화하여 출력할 수 있다. 예를 들어, 영상 데이터가 규칙에 위배되는 항목을 많이 포함할수록 컴퓨팅 장치(200)는 해당 영상 데이터에 대응하여 높은 위험도 점수를 출력할 수 있다. 이와 반대로, 영상 데이터에 미리 정해진 규칙에 위배되는 항목이 적을수록 컴퓨팅 장치(200)는 해당 영상 데이터에 대응하여 낮은 위험도 점수를 출력할 수 있다. 구체적인 예를 들어, 제1영상 데이터에 미리 정해진 규칙에 관련한 미허용 단어(예컨대, 욕설)가 복수 회 노출되는 경우, 제1영상 데이터에 대응하여 높은 위험도 점수가 출력될 수 있다.
구체적인 실시예에서, 성인물 감지는 비전(vision) 인식과 오디오(audio) 인식을 통해 판별될 수 있다. 예컨대, 영상 데이터가 성인물에 해당하는지 여부를 판별하는 딥러닝 모델을 구비될 수 있으며, 해당 딥러닝 모델을 통해 영상 데이터가 성인물에 해당하는지 여부가 판별될 수 있다. 이러한 딥러닝 모델은 CNN(Convolution Neural Network)을 이용하여 구현될 수 있으며, 학습 데이터 세트를 활용한 지도 학습을 통해 학습될 수 있다. 예를 들어, 딥러닝 모델은, 영상 데이터에 포함된 각 프레임에 관련한 이미지들을 입력으로 하여 해당 이미지에 대한 분석을 수행할 수 있다. 이미지 분석 수행 결과, 각 프레임에 미리 정해진 규칙에 관련한 객체(예컨대, 특정 신체 부위 노출)가 존재하는 경우, 딥러닝 모델은 해당 영상 데이터를 성인물에 관련한 영상 데이터로 판별할 수 있다.
또한 실시예에서, 딥러닝 모델은, 영상 데이터에 관련한 음성 데이터를 입력으로 하여 해당 음성 데이터에 대한 분석을 수행할 수 있다. 딥러닝 모델은, 음성 데이터에 대응하는 스펙트로그램을 획득하고, 해당 스펙트로그램을 분석하여 영상 데이터가 성인물에 관련하는지 여부를 판별할 수 있다. 딥러닝 모델은, 음성 데이터에 대한 고속 푸리에 변환(FFT, Fast Fourier Transform)을 통해 스펙트로그램을 생성할 수 있다. 고속 푸리에 변환은, 각 시간 구간마다 어떤 주파수들이 존재하는지 알 수 있도록 시간에 대한 함수 또는 신호를 주파수 성분으로 분해하는 것을 의미할 수 있다. 스펙트로그램은 소리나 파동을 시각화하여 파악하기 위한 것으로, 파형(waveform)과 스펙트럼(spectrum)의 특징이 조합된 것일 수 있다. 스펙트로그램은 시간 축과 주파수 축의 변화에 따라 진폭을 차이를 인쇄 농도 또는, 표시 색상의 차이로 나타낸 것일 수 있다. 스펙트로그램은 주파수 정보와 시계열 정보를 함께 나타낼 수 있는 데이터로써 음성 데이터 분석에 용이하게 활용될 수 있다. 스펙트로그램은 소리의 주파수 스펙트럼이 시간에 따라 어떻게 변환하는지 보여주는 정보를 포함하고 있으므로, 작은 음향에도 견고한 음향 분석 효율을 제공할 수 있다. 일 실시예에서, 딥러닝 모델은, 복수의 스펙트로그램을 학습 입력 데이터로 하고, 각 스펙트로그램에 대응하는 정답을 학습 출력 데이터로하여 학습 데이터 세트를 구축하고, 해당 학습 데이터 세트를 통한 지도학습을 통해 학습될 수 있다. 이에 따라, 학습된 딥러닝 모델은, 음성 데이터에 기초하여 스펙트로그램을 생성하고, 해당 스펙트로그램을 분석함으로써, 영상 데이터가 성인물에 관련한 영상 데이터인지 여부를 판별할 수 있다.
일 실시예에서, 미허용 단어 감지는 음성 인식을 통해 수행될 수 있다. 미허용 단어는, 인종혐오, 종교혐오, 젠더혐오 또는 욕설 등에 관련한 언어들을 포함할 수 있다. 이러한 혐오 단어들로 구축되는 학습 데이터를 통해 음성 인식을 수행하는 모델을 생성될 수 있으며, 학습 데이터는 사용자들의 합의에 의해 지속적으로 업데이트될 수 있다. 일 예로, 영상 데이터에 미허용 단어에 관련한 음성이 존재하는 경우, 해당 영상 데이터는 미리 정해진 규칙에 부합하지 않는 것으로 판단되어, 업로드가 반려될 수 있다.
일 실시예에 따르면, 컴퓨팅 장치(200)는 위험도 점수가 미리 정해진 임계 위험도 점수를 초과하는 경우, 영상 데이터의 업로드를 반려시킬 수 있다. 미리 정해진 임계 위험도 점수는, 영상 데이터의 위험도를 판별하기 위한 기준이 될 수 있다. 미리 정해진 임계 위험도 점수는, 블록체인 네트워크(300)에 포함된 복수의 노드들 간의 거버넌스 투표를 통해 결정될 수 있다. 즉, 영상 데이터에 대응하여 산출된 위험도 점수가 합의된 임계값을 초과하는 경우, 해당 영상 데이터의 업로드가 반려될 수 있다. 영상 데이터의 업로드가 반려되는 경우, 디폴트 영상으로 대체할 수 있다(S130). 실시예에 따르면, 규칙 필터링 과정에서 반려된 영상 데이터는 사용자에게 알림이 전송될 수 있으며, 실제 원본 영상이 아닌, 디폴트 영상으로 대체될 수 있다. 즉, 컴퓨팅 장치(200)는 대중들의 합의를 통해 결정된 규칙에 기반하여 영상의 유해성을 판별할 수 있으며, 유해하다고 판별된 영상 데이터는 업로드하지 않고 반려시킬 수 있다. 전술한 바와 같이, 특정 사용자가 영상 데이터를 업로드 하는 경우, 컴퓨팅 장치(200)는 규칙 필터링 과정을 필수적으로 거쳐, 해당 영상 데이터의 스트리밍 가능 여부를 판단할 수 있다.
본 발명의 일 실시예에 따르면, 컴퓨팅 장치(200)는 미리 정해진 규칙을 통해 영상 데이터에 대한 필터링을 통해 승인된 영상 데이터에 대한 영상 자동 축약을 수행할 수 있다. 실시예에서, 사용자는 제작한 영상 데이터를 컴퓨팅 장치(200)에 업로드할 수 있으며, 소유하고 있는 권리 시간(time block)만큼 스트리밍으로 영상을 노출시킬 수 있다. 예컨대, 사용자에게 할당되는 권리 시간은 비교적 짧은 시간을 가질 수 있으며, 이에 따라, 영상 데이터의 축약이 필수적일 수 있다. 컴퓨팅 장치(200)는 영상 데이터를 업로드하는 사용자 개개인이 소유하고 있는 권리 시간에 대응하여 축약 영상 데이터를 생성할 수 있다. 예를 들어, 사용자에게 할당된 권리 시간이 30초인 경우, 컴퓨팅 장치(200)는 영상 데이터(예컨대, 전체 15분에 대응하는 영상)에 대응하여 30초짜리 축약 영상 데이터를 생성할 수 있다.
축약 영상 데이터는, 전체 원본 영상에서 일부만을 편집하여 요약한 하이라이트 영상을 의미할 수 있다. 축약 영상 데이터는, 짧은 시간내에 보여지는 영상이므로 시청자들이 흥미를 느낄 수 있어야 한다. 일반적으로 영상 축약(또는 영상 요약)은 흥미보다는 정보의 집중을 한 요약에 초점이 맞추어져 있을 수 있다. 실시예에 따르면, 영상 콘텐츠 소비에 있어서 시청자는, 정보의 습득과 동시에 흥미를 느끼고자 할 수 있다. 이에 따라, 본 발명의 축약 영상 데이터는, 영상의 전체 내용을 전반적으로 요약하는 정보 제공(informative) 성격을 갖는 영상 데이터 및 시청자들이 흥미를 느끼는 구간을 통해 요약하는 흥미 제공(interesting) 성격을 갖는 영상 데이터를 포함할 수 있다. 일 실시예에 따르면, 영상 데이터를 시청하고자 하는 시청자들은 전체 영상 데이터가 아닌, 축약 영상 데이터를 통해 영상 데이터의 전반적인 내용을 파악하여, 해당 영상 데이터를 시청할지 여부를 결정할 수 있다. 즉, 비교적 짧은 시간으로 구성되는 축약 영상 데이터가, 원본 영상 데이터의 정보 제공(informative) 측면과 흥미 제공(interesting) 측면을 적절히 반영하여 생성된 경우, 많은 시청자들이 원본 영상 데이터를 시청하도록 유도할 수 있다.
컴퓨팅 장치(200)는 영상 데이터가 미리 정해진 규칙에 부합하는 경우, 영상 데이터에 대응하는 축약 영상 데이터를 생성할 수 있다. 구체적으로, 컴퓨팅 장치(200)는 위험도 점수가 미리 정해진 임계 위험도 점수를 이하인 경우, 영상 데이터에 대응하는 축약 영상 데이터를 생성할 수 있다.
일 실시예에서, 컴퓨팅 장치(200)는 감정 예측 모델(400a)을 활용하여 영상 데이터에 대응하는 감정 변화 예측 정보를 획득할 수 있다. 또한, 컴퓨팅 장치(200)는 감정 변화 예측 정보에 기초하여 축약 영상 데이터를 생성할 수 있다.
여기서, 감정 예측 모델(400a)은 영상 데이터에 포함된 복수의 영상 서브 데이터(즉, 복수의 프레임) 각각에 대한 분석을 수행하여 각 영상 서브 데이터에 대응하는 복수의 감정 각각의 점수를 도출하도록 학습된 신경망 모델일 수 있다. 감정 예측 모델(400a)은 복수의 영상 서브 데이터(즉, 영상 프레임들) 각각을 입력 받아 시간에 따른 시청자의 감정에 관련한 예측 정보 즉, 감정 변화 예측 정보를 생성할 수 있다. 감정 예측 모델(400a)은 머신러닝 기법을 이용하여 학습된 신경망 모델일 수 있다. 감정 예측 모델(400a)은 각 프레임 장면 별 사용자의 감정이 라벨링된 데이터를 학습 데이터로 하여 지도학습된 신경망 모델일 수 있다. 실시예에서, 감정 예측 모델(400a)은 공간적인 특성을 추출하는 CNN(Convolution Neural Network)과 시간적인 특성을 추출할 수 있는 RNN(Recurrent Neural Network), Attention mechanism, Transformer와 같은 네트워크 함수를 통해 구현될 수 있다. 추가적인 실시예에서, 감정 예측 모델(400a)은 생성적 적대 신경망 모델(GAN, Generative Adversarial Network)에 관련한 네트워크 함수를 통해 구현될 수도 있다.
보다 구체적으로, 도 4를 참조하면, 영상 데이터(10)는 복수의 영상 서브 데이터(즉, 복수의 프레임)(10-1, 10-2, ??, 10-n)을 포함하여 구성될 수 있다. 컴퓨팅 장치(200)는 영상 데이터(10)를 감정 예측 모델(400a)의 입력으로 처리하여 감정 변화 예측 정보(410)를 도출할 수 있다. 감정 변화 예측 정보(410)는, 도 4에 도시된 바와 같이, 영상 데이터의 시간의 흐름에 따라 변화하는 복수 개의 감정 각각에 대한 변화량에 관련한 것일 수 있다. 예를 들어, 감정 변화 예측 정보(410)는, 영상 데이터의 재생 시점 별로 행복(happiness), 슬픔(sadness), 분노(anger), 놀람(surprise), 공포(fear) 등 혐오(disgust) 6가지의 감정 변화를 예측한 정보일 수 있다. 전술한 감정 변화 예측 정보에 포함된 복수 개의 감정에 대한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다. 실시예에서, 감정 변화 예측 정보에 포함된 복수 개의 감정은, 웃긴(fun), 흥미있는(interested), 무서운(scared)에 관련한 감정들을 더 포함할 수 있다.
또한, 컴퓨팅 장치(200)는 축약 모델(510)을 활용하여 감정 변화 예측 정보(410)에 기반한 축약 영상 데이터(600)를 생성할 수 있다. 축약 모델(510)은 예측된 사용자의 감정 변화를 프레임 단위(즉, 복수의 영상 서브 데이터 단위)로 입력 받고, 복수의 프레임들 중 주요 프레임(또는 주요 영상 서브 데이터)을 식별하는 모델일 수 있다. 여기서, 주요 프레임은, 축약 영상 데이터 생성에 기반이 되는 프레임들을 의미하는 것일 수 있다.
구체적인 실시예에서, 축약 모델(510)은 복수 개의 감정 각각의 변화량에 기초하여 주요 프레임을 식별할 수 있다. 축약 모델(510)은 복수 개의 감정들 중 변화량이 큰 감정에 기초하여 주요 프레임을 식별할 수 있다. 변화량이 큰 감정은, 예를 들어, 감정의 수치가 상승 및 하강을 반복함에 따라 식별되는 변곡점의 개수에 관련할 수 있다. 특정 감정에 관련하여 변곡점이 많이 관측될수록, 해당 감정은 변화량이 큰 감정일 수 있다. 구체적인 예를 들어, 도 4를 참조하면, 축약 모델(510)은 변곡점이 가장 많이 나타나는 '행복'에 관련한 감정 변화에 기초하여 주요 프레임을 식별할 수 있다. 축약 모델(510)은 행복 감정 중 변곡점이 나타나는 시점 각각에 대응하는 프레임(또는 복수의 영상 서브 데이터)들 각각을 주요 프레임으로 식별할 수 있다. 또한 실시예에서, 변화량이 큰 감정은, 최소값 및 최대값의 차이가 가장 큰 감정을 의미할 수도 있다.
축약 모델(510)은 식별된 주요 프레임들 각각에 기반하여 축약 영상 데이터(600)를 생성할 수 있다. 축약 모델(510)은 제1변곡점에 관련한 시점에 대응하는 제1프레임의 전후에 관련한 제1관련 프레임들을 선별하여, 제1관련 프레임 및 제1프레임을 포함하는 짧은 형태의 제1요약 데이터(예컨대, 제1clip)을 생성하고, 제2변곡점에 관련한 시점에 대응하는 제2프레임의 전후에 관련한 제2관련 프레임들을 선별하여, 제2관련 프레임 및 제2프레임을 포함하는 짧은 형태의 제2요약 데이터(예컨대, 제2clip)을 생성할 수 있다. 축약 모델은 전술한 과정을 통해 각 변곡점에 관련한 각 요약 데이터(clip)를 생성할 수 있으며, 생성된 요약 데이터들을 연결하여 축약 영상 데이터를 생성할 수 있다. 즉, 축약 영상 데이터(600)는 유의미한 감정 변화가 나타날 것으로 예측되는 시점에 관련한 요약 데이터(clip)들을 포함하여 생성될 수 있다.
또한, 일 실시예에 따르면, 컴퓨팅 장치(200)는 사용자 입력 정보를 획득할 수 있다. 사용자 입력 정보는 사용자 단말을 통해 수신되는 것을 특징으로 할 수 있다. 사용자 입력 정보는, 축약 영상 데이터 생성 시, 사용자(즉, 업로드에 관련한 사용자 또는 영상 제작에 관련한 사용자)의 의견에 관련 정보로, 프레임 선택 정보 및 감정 선택 정보를 포함할 수 있다.
프레임 선택 정보는, 사용자가 필수적으로 포함되기를 원하는 프레임(또는 영상 서브 데이터) 또는 포함되기를 원하지 않는 프레임들에 관한 정보일 수 있다. 예컨대, 영상 데이터는 50개의 프레임(즉, 제1영상 서브 데이터 내지 제50영상 서브 데이터)들을 통해 구성될 수 있으며, 사용자는 50개의 프레임들 중 제4영상 서브 데이터 및 제26영상 서브 데이터를 포함되기 원하는 프레임으로 선택할 수 있으며, 제10영상 서브 데이터 내지 제15영상 서브 데이터, 그리고 제40영상 서브 데이터를 포함되지 원하지 않는 프레임으로 선택하여 프레임 선택 정보를 생성할 수 있다. 전술한 영상 데이터에 포함된 프레임의 수 및 프레임 선택 정보에 대한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다. 즉, 프레임 선택 정보는, 영상 데이터를 구성하는 복수 개의 프레임들 중 사용자가 필수적으로 포함되길 원하거나, 또는 원하지 않는 시점 각각에 관련한 프레임에 관한 정보들을 포함할 수 있다.
감정 선택 정보는, 사용자가 강조하고 싶은 감정에 대한 정보를 포함할 수 있다. 예를 들어, 사용자가 '공포'에 관련한 감정을 선택하여 감정 선택 정보를 생성하는 경우, '공포'에 관련한 감정 변화 예측 정보에 기반하여 축약 영상 데이터가 생성되며, 사용자가 '슬픔'에 관련한 감정을 선택하여 감정 선택 정보를 생성하는 경우, '슬픔'에 관련한 감정 변화 예측 정보에 기반하여 축약 영상 데이터가 생성될 수 있다. 즉, 감정 선택 정보는, 축약 영상 데이터를 생성함에 있어, 기반이 되는 감정으로, 사용자가 선택한 감정에 대한 정보를 포함할 수 있다. 일 실시예에 따르면, 사용자의 복수 개의 감정 중 둘 이상의 감정을 선택하여 감정 선택 정보를 생성할 수 있다. 예를 들어, 사용자는 행복 및 놀람 각각에 관련한 감정을 선택함에 따라, 행복 및 놀람에 관련한 감정 선택 정보를 생성할 수 있다. 전술한 감정 선택 정보에 포함된 감정에 대한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.
본 발명의 실시예에 따르면, 컴퓨팅 장치(200)는 사용자 입력 정보 및 감정 변화 예측 정보에 기초하여 축약 영상 데이터를 생성할 수 있다. 구체적으로, 도 5를 참조하면, 컴퓨팅 장치(200)는 영상 데이터(10)를 감정 예측 모델(400a)의 입력으로 처리하여 감정 변화 예측 정보(410)를 생성할 수 있다. 구체적으로, 컴퓨팅 장치(200)는 영상 데이터(10)를 구성하는 복수의 영상 서브 데이터 각각을 감정 예측 모델(400a)의 입력으로 처리하여, 영상 데이터의 각 시점 별 복수 개의 감정 각각에 관련한 감정 변화 예측 정보(410)를 생성할 수 있다.
또한, 컴퓨팅 장치(200)는 영상 데이터(10)에 대응하여 생성된 감정 변화 예측 정보(410)와 사용자 입력 정보(420)를 축약 모델(510)의 입력으로 처리할 수 있다. 실시예에 따르면, 축약 모델(510)은, 도 4의 예시처럼 감정 변화 예측 정보(410) 만을 입력으로 하여 축약 영상 데이터를 생성할 수도 있으며, 사용자 입력 정보(420) 및 감정 변화 예측 정보(410)를 입력으로 하여 축약 영상 데이터를 생성할 수도 있다. 축약 모델(510)에 사용자가 강조하고 싶은 특정 장면(또는 프레임) 또는 특정 감정에 관련한 사용자 입력 정보(420)가 함께 입력되는 경우, 축약 모델(510)은 사용자가 선택한 장면이나, 감정들을 기반으로 감정 변화 예측 정보(410)를 보정할 수 있으며, 보정된 감정 변화 예측 정보를 기반으로 축약 영상 데이터를 생성할 수 있다. 즉, 사용자는, 자신이 강조하고 싶은 감정을 입력하여 사용자 입력 정보를 생성함으로써, 특정 감정에 기반으로 하는 축약 영상 데이터가 생성되도록 할 수 있다. 실시예에 따르면, 동일한 영상 데이터를 기반으로 축약 영상 데이터를 생성할지라도, 사용자가 선택한 감정(즉, 감정 선택 정보)에 따라 생성되는 축약 영상 데이터가 상이할 수 있다. 예를 들어, 사용자가 '슬픔'에 관련한 감정을 선택하여 감정 선택 정보를 생성하여 축약 모델(510)의 입력으로 처리하는 경우, 전체 영상 데이터에서 슬픔 감정 변화에 따라 주요 프레임이 식별될 수 있으며, 사용자가 '행복'에 관련한 감정을 선택하여 감정 선택 정보를 생성하여 축약 모델(510)의 입력으로 처리하는 경우, 전체 영상 데이터에서 행복 감정 변화에 따라 주요 프레임이 식별되어 축약 영상 데이터가 생성되게 된다. 즉, 사용자가 강조하고 싶은 감정에 따라 서로 상이한 스타일의 축약 영상 데이터가 생성될 수 있다.
보다 자세히 설명하면, 컴퓨팅 장치(200)는 프레임 선택 정보에 기초하여 하나 이상의 제1영상 서브 데이터를 식별할 수 있다. 컴퓨팅 장치(200)는 프레임 선택 정보를 통해 포함되기를 원하는 프레임을 제1영상 서브 데이터로 식별하며, 포함되기를 원하지 않는 프레임을 제1영상 서브 데이터로 식별되지 않도록 할 수 있다. 즉, 하나 이상의 제1영상 서브 데이터는, 사용자의 선택에 의해 생성된 프레임 선택 정보에서, 사용자가 필수적으로 포함되기를 원하는 프레임들에 관련한 것일 수 있다. 예를 들어, 프레임 선택 정보는, 사용자가 인트로(intro)로써 제1프레임(또는 제1영상 서브 데이터)이 필수적으로 포함되기를 원한다는 정보를 포함할 수 있다. 이 경우, 컴퓨팅 장치(200)는 프레임 선택 정보를 통해 제1프레임이 축약 영상 데이터에 생성 과정에 필수적으로 포함되도록 할 수 있다. 전술한 프레임 선택 정보에 대한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.
또한, 컴퓨팅 장치(200)는 감정 선택 정보에 기초하여 감정 변화 예측 정보에 가중치를 부여할 수 있다. 구체적으로, 도 6을 참조하면, 감정 예측 모델(400a)을 통해 출력된 감정 변화 예측 정보(410)는, 영상 데이터의 재생 시점 별로 행복(happiness), 슬픔(sadness), 분노(anger), 놀람(surprise), 공포(fear) 등 혐오(disgust) 6가지의 감정 변화를 예측한 정보일 수 있다. 이 경우, 예를 들어, 사용자가 '행복'이라는 감정을 선택함에 따라 행복에 관련한 감정 선택 정보가 생성되며, 컴퓨팅 장치(200)는 이를 수신될 수 있다. 컴퓨팅 장치(200)는 감정 변화 예측 정보(410)와 행복에 관련한 감정 선택 정보에 기초하여, 감정 변화 예측 정보(410)에서 행복에 관련한 감정 변화 정보에 가중치를 부여할 수 있다.
이에 따라, 도 6에 도시된 바와 같이, 감정 변화 예측 정보(410)에 대응하여 가중치가 부여된 감정 변화 예측 정보(410)가 생성될 수 있다. 예컨대, 가중치가 부여되기 전에는 행복이라는 감정 보다 다른 감정(예컨대, 슬픔)이 축약 영상 데이터 생성에 고려되는 요소일 수 있으나, 사용자의 의도에 관련한 감정 선택 정보를 통해 감정 변화 예측 정보가 가중됨에 따라, 행복에 관련한 감정이 축약 영상 데이터 생성에 기반이 될 수 있다.
즉, 축약 모델은, 감정 선택 정보에 기초하여 특정 감정 곡선에 가중치(weight)를 더 주어 가중할 수 있다. 실시예에서, 축약 모델(510)은 가중치가 부여된 감정 변화 예측 정보(410)에 기초하여 하나 이상의 제2영상 서브 데이터를 식별할 수 있다. 하나 이상의 제2영상 서브 데이터는 감정 선택 정보에 기초하여 가중된 감정 변화 예측 정보(410) 중에서 변화량이 큰 감정에 기초하여 식별되는 프레임들을 의미할 수 있다. 구체적인 실시예에서, 축약 모델(510)은 감정 변화 예측 정보에 대한 가중치를 부여한 이후 각 시간 별 감정조합에 대해 소프트맥스(softmax, 활성화 함수)를 취하여 시간대 별로 감정을 정규화할 수 있다. 또한, 실시예에서 축약 모델(510)은 전체시간에 대하여, 각 시간대 별 감정 합산의 최대치를 식별하여 가장 두드러지는 감정을 선택할 수 있다. 또한, 축약 모델(510)은 선택된 감정을 영상의 대표 감정으로 선정하여 해당 감정이 가장 많이 관측되는 프레임들을 식별할 수 있다. 또한, 축약 모델(510)은 도 6에 도시된 바와 같이, 식별된 프레임들 각각의 전후 프레임들을 추가로 선별할 수 있다. 실시예에서, 축약 모델(510)은 n초의 프레임들간의 시각적 유사도(visual-similarity)를 분석할 수 있다. 축약 모델(510)은 시각적 유사도(visual-silmilarity)와 감정 유사도(감정-similarity)가 일정 임계값(threshold) 이상인 부분까지를 포함시켜 해당 부분을 요약 데이터(clip)화할 수 있다. 이에 따라, 각 프레임들에 대응하는 복수 개의 요약 데이터(clip)를 생성할 수 있으며, 이를 기반으로 축약 영상 데이터(600)를 생성할 수 있다.
따라서, 컴퓨팅 장치(200)는 하나 이상의 제1영상 서브 데이터 및 하나 이상의 제2영상 서브 데이터에 기초하여 축약 영상 데이터를 생성할 수 있다. 컴퓨팅 장치(200)는 사용자의 선택에 의해 생성된 프레임 선택 정보에서, 사용자가 필수적으로 포함되기를 원하는 프레임들(즉, 하나 이상의 제1영상 서브 데이터) 및 감정 선택 정보에 기초하여 가중된 감정 변화 예측 정보(410)에 기초하여 식별되는 프레임들(즉, 하나 이상의 제2영상 서브 데이터)을 기반으로 축약 영상 데이터를 생성할 수 있다. 다시 말해, 컴퓨팅 장치(200)는 사용자가 포함하고자 하는 특정 프레임을 입력(예컨대, 프레임 선택 정보)하거나, 또는 강조하고 싶은 특정 감정(예를 들어, 놀라움)을 입력(예컨대, 감정 선택 정보)하는 경우, 해당 입력(즉, 사용자 입력 정보)에 기반하여 축약 영상 데이터를 생성할 수 있다.
따라서, 컴퓨팅 장치(200)는 강조하고 싶은 장면에 대해서는 최종 축약 영상 데이터에 해당 영상을 포함시키며, 강조하고 싶은 감정에서는 해당 감정에 대하여 전체 차임 라인에 가중치를 부여함으로써 감정을 극대화시켜 최종 축약 영상 데이터를 생성할 수 있다.
본 발명의 일 실시예에 따르면, 영상 데이터에 대한 영상 분석 및 영상 데이터에 관련한 시청자 반응 분석에 기반하여 축약 영상 데이터를 생성할 수 있다.
구체적으로, 도 7을 참조하면, 컴퓨팅 장치(200)는 영상 분석 모델(520)을 활용하여 영상 데이터(10)에 포함된 복수의 제1축약 영상 서브 데이터(610)를 선별할 수 있다. 복수의 제1축약 영상 서브 데이터(610)는 정보 제공에 관련한 영상 프레임들을 포함할 수 있다. 예컨대, 복수의 제1축약 영상 서브 데이터(610)는 영상의 전체 내용을 전반적으로 요약하는 정보 제공(informative)의 성격을 갖는 프레임들을 의미할 수 있다.
실시예에서, 영상 분석 모델은, 영상 데이터에 대한 영상 분석을 통해 주요 프레임을 식별하는 것을 특징으로 할 수 있다. 영상 분석 모델은 CNN을 통해 구성될 수 있으며, 각 프레임이 나타내는 객체의 특징 정보(즉, 피처)를 추출하고, 추출된 특정 정보에 기반하여 주요 프레임을 선별하도록 지도학습 방식으로 학습될 수 있다. 또한 실시예에서, 영상 분석 모델은, 학습된 생성적 적대 신경망에서 생성자 모델을 통해 구성될 수 있다. 구체적으로, 컴퓨팅 장치(200)는 실제 사용자가 영상 데이터에서 주요 프레임을 선별하는 것과 같은 프레임 정보를 출력하도록 신경망 모델을 학습시킬 수 있다. 컴퓨팅 장치(200)는 생성자 모델 및 분류자 모델을 활용한 적대 학습을 통해 생성적 적대 신경망 모델을 생성할 수 있다.
실제 사용자(예컨대, 편집 전문가)는 학습용 영상 데이터에 대응하는 주요 프레임을 선별할 수 있다. 이 경우, 컴퓨팅 장치(200)는 영상 데이터와 사용자가 선별한 주요 프레임을 매칭하여 라벨링할 수 있다. 이러한 과정을 통해 복수의 학습용 영상 데이터와 학습용 주요 프레임 각각이 매칭되어 라벨링됨에 따라 복수의 학습 데이터가 구축될 수 있다. 학습용 영상 데이터와 그에 대응하는 주요 프레임에 관한 정보를 생성자 모델을 학습시키기 위한 것일 수 있다. 컴퓨팅 장치(200)는 복수의 학습용 영상 데이터 및 복수의 주요 프레임들에 대한 정보에 기초하여 생성자 모델을 생성할 수 있다. 실시예에 따르면, 생성자 모델은 학습 출력 데이터(즉, 실제 사용자가 선별한 주요 프레임)에 대한 정보와 유사한 주요 프레임 정보를 출력할 수 있다. 이 경우, 생성자 모델의 출력과 관련한 주요 프레임 정보는 실제(real) 데이터인 학습 출력 데이터와 유사한 가짜(fake) 데이터일 수 있다.
분류자 모델은 학습용 주요 프레임 정보 및 가짜 주요 프레임 정보를 입력으로 하여 진위 여부에 관한 정보를 출력하는 신경망 모델일 수 있다. 이 경우, 분류자 모델의 입력에 관련한 학습용 주요 프레임 정보는 실제 사용자가 선별한 프레임들에 관한 정보일 수 있으며, 가짜 주요 프레임 정보는, 생성자 모델을 통해 출력된 실제 주요 프레임 정보와 유사한 프레임 정보일 수 있다. 즉, 분류자 모델은 실제 주요 프레임 정보와 가짜 주요 프레임 정보 중 적어도 하나를 입력으로 하여, 입력에 관련한 데이터가 실제 데이터인지 또는 가짜 데이터인지 여부를 판별할 수 있다.
컴퓨팅 장치(200)는 생성자 모델과 분류자 모델을 포함하는 생성적 적대 신경망에 대한 학습을 수행할 수 있다. 구체적으로, 컴퓨팅 장치(200)는 생성자 모델과 분류자 모델의 적대 로스를 통한 학습을 수행할 수 있다. 적대 로스는, 생성자 모델과 분류자 모델 간의 적대적 학습에 관련한 로스일 수 있다.
구체적인 실시예에서, 분류자 모델은 진짜 주요 프레임 정보(예컨대, 학습용 주요 프레임 정보)를 입력으로 하는 경우, 1에 가까운 확률값을 출력하고, 가짜 주요 프레임 정보(예컨대, 생성자 모델을 통해 출력된 주요 프레임 정보)를 입력으로 하는 경우, 0에 가까운 확률값을 출력하도록 학습될 수 있다. 진짜 주요 프레임 정보를 입력했을 때의 출력값과 1의 차이, 그리고 가짜 주요 프레임 정보를 입력했을 때의 출력값과 0의 차이, 두 경우의 합이 분류자 모델의 로스(또는 손실 함수)일 수 있다. 생성자 모델의 목적은 분류자 모델을 속이는 것(즉, 진짜 주요 프레임 정보와 유사한 가짜 주요 프레임 정보를 생성)으로, 생성자 모델이 생성한 가짜 주요 프레임 정보를 분류자 모델에 입력했을 때 출력값이 1에 가깝게 나오도록 학습될 수 있다. 해당 출력값과 1의 오차가 생성자 모델의 로스일 수 있다. 즉, 컴퓨팅 장치(200)에 의해 각 모델은 로스가 최소화되는 방향으로 학습될 수 있다. 다시 말해, 컴퓨팅 장치(200)는 적대 로스가 최소화되는 방향으로 생성자 모델 및 분류자 모델의 파라미터를 업데이트함으로써 생성적 적대 신경망에 대한 학습을 수행할 수 있다. 컴퓨팅 장치(200)는 생성자 모델을 통해 최대한 정답에 가까운 가짜 주요 프레임 정보를 생성하도록 하고, 분류자 모델을 통해 가짜 주요 프레임 정보를 가짜로 판별된 확률이 높도록 각 모델의 파라미터를 업데이트함으로써, 생성자 적대 신경망에 대한 학습을 수행할 수 있다.
컴퓨팅 장치(200)는 생성자 모델과 분류자 모델 간의 적대 로스를 통해 생성자 모델과 분류자 모델의 파라미터를 업데이트함으로써, 생성적 적대 신경망 모델에 대한 학습을 수행할 수 있다. 즉, 적대 로스가 반영된 전체 로스를 통해 학습으로 인해, 생성자 모델은 영상 데이터에 기반하여 보다 정교한 주요 프레임 정보를 출력할 수 있다. 이에 따라, 학습된 생성자 모델을 통해 구성되는 영상 분석 모델은, 영상 데이터를 기반으로 주요 프레임 정보(예컨대, 복수의 제1축약 영상 서브 데이터)를 출력할 수 있다.
또한, 컴퓨팅 장치(200)는 반응 분석 모델(530)을 활용하여 영상 데이터(10)에 포함된 복수의 제2축약 영상 서브 데이터(620)를 선별할 수 있다. 복수의 제2축약 영상 서브 데이터(620)는 흥미 구간에 관련한 영상 프레임들을 포함할 수 있다. 예컨대, 복수의 제2축약 영상 서브 데이터(620)는, 시청자들이 흥미를 느끼는 구간을 통해 요약하는 흥미 제공(interesting) 측면의 성격을 갖는 프레임들을 의미할 수 있다.
실시예에서, 반응 분석 모델(530)은 영상 데이터에 관련한 시청자 반응을 분석하여 주요 프레임을 도출하는 신경망 모델일 수 있다. 구체적으로, 반응 분석 모델(530)은 영상 데이터에 대응하는 시청자 인터렉션 정보에 기초하여 각 프레임 별 시청자들의 흥미 지수를 도출하고, 흥미 지수가 일정 이상인 프레임들을 주요 프레임으로 식별하는 것을 특징으로 할 수 있다. 시청자 인터렉션 정보는, 영상 데이터의 실제 재생동안 해당 영상 데이터를 시청한 시청자들의 반응에 관한 정보로, 예를 들어, 영상 데이터의 각 구간 별 시청자들이 유입되거나 또는 빠져나가는 수치에 관한 정보 또는 시청자들의 채팅 및 반응 입력 등에 관한 정보를 포함할 수 있다. 구체적인 예를 들어, 시청자 인터렉션 정보는, 영상 데이터의 제1시점에서 관련한 시청자들의 수에 대한 정보를 포함할 수 있다. 다른 예를 들어, 시청자 인터렉션 정보는, 시청자들로부터 입력되는 채팅(즉, 자연어) 입력을 포함할 수 있다. 또 다른 예를 들어, 시청자 인터렉션 정보는, 시청자들로부터 입력되는 이모티콘 입력 또는 도네이션 입력 등을 포함할 수 있다. 전술한 시청자 인터렉션 정보에 대한 구체적인 설명은 예시일 뿐, 본 발명은 이에 제한되지 않는다.
구체적인 실시예에서, 반응 분석 모델(530)은 시청자들의 반응에 관련한 시청자 인터렉션 정보에 대한 정량 분석 및 의미 분석을 통해 영상 데이터로부터 주요 프레임을 선별할 수 있다. 시청자 인터렉션 정보에 대한 정량 분석은, 각 시점 별 시청자들의 반응을 정량적으로 분석한 것일 수 있다. 예를 들어, 반응 분석 모델(530)은, 시청자들의 채팅 입력이나, 도네이션 입력이 급증하는 구간을 주요 프레임으로 식별할 수 있다. 이와 반대로, 반응 분석 모델(530)은 실시간 시청자들의 수가 감소하거나 또는 시청자들의 채팅 입력이 감소하는 구간은 주요 프레임이 아닌 구간으로 식별할 수 있다. 시청자 인터렉션 정보에 대한 의미 분석은, 각 시점 별 시청자들의 채팅 입력의 의미를 분석한 것일 수 있다. 예를 들어, 반응 분석 모델(530)은, 실시간 영상 데이터 시청 중 시청자들이 입력한 채팅 내용을 자연어 처리 모듈을 활용하여 의미를 파악하고 이를 기반으로 주요 프레임을 식별할 수 있다. 구체적인 실시예에서, 영상 데이터의 제1시점에 관련하여 시청자들로부터 입력된 채팅(예컨대, '와우', 또는 '최고')이 긍정적인 의미에 관련한 채팅 입력임을 파악한 경우, 반응 분석 모델(530)은 해당 구간을 주요 프레임들(즉, 복수의 제2축약 영상 서브 데이터)로 식별할 수 있다.
다양한 실시예에서, 반응 분석 모델(530)은 영상 구간 별 사용자 감정 분석 데이터를 획득하는 감정 분석 신경망 모델을 더 포함할 수 있다. 반응 분석 모델(530)은 각 구간 별 사용자의 흥미 지수 및 사용자의 감정 분석 결과 모두를 고려하여 주요 프레임을 도출할 수 있다. 다시 말해, 정보 제공(informative)의 프레임들을 식별하는 신경망 모델과 영상 구간별 사용자 감정을 분석하는 감정 분석 신경망 모델 각각을 통해 각 구간 별 사용자의 흥미 지수 및 감정 분석 데이터 두가지를 활용하여 주요 프레임들을 도출할 수 있다.
또한, 컴퓨팅 장치(200)는 복수의 제1축약 영상 서브 데이터 및 복수의 제2축약 영상 서브 데이터에 기초하여 축약 영상 데이터를 생성할 수 있다. 즉, 컴퓨팅 장치(200)는 정보 제공(informative) 측면의 프레임(즉, 복수의 제1축약 영상 서브 데이터)과 흥미 제공(interesting) 측면의 프레임(즉, 복수의 제2축약 영상 서브 데이터) 모두를 고려하여 축약 영상 데이터(600)를 생성할 수 있다.
추가적인 실시예에 따르면, 컴퓨팅 장치(200)는 영상 데이터의 카테고리 정보를 획득할 수 있다. 여기서, 영상 데이터에 대응하는 카테고리 정보는 영상의 종류를 구분하기 위한 정보로, 예를 들어, 영상 데이터가, 게임 분야 방송, 소통 분야 방송, 먹는 방송, 교육 방송, 스포츠 방송, 정치 분야 방송 또는, 시사 분야 방송 중 적어도 하나에 관련한다는 정보를 포함할 수 있다. 전술한 카테고리 정보에 대한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다. 일 예로, 영상 데이터에 대응하는 카테고리 정보는, 영상 분석 모델을 활용한 영상 분석 결과 및 사용자 입력 중 적어도 하나를 통해 획득될 수 있다.
또한, 실시예에서 컴퓨팅 장치(200)는 카테고리 정보에 기초하여 축약 영상 데이터에 포함되는 제1축약 영상 서브 데이터 및 제2축약 영상 서브 데이터 각각의 비율을 결정할 수 있다. 즉, 컴퓨팅 장치(200)는 영상 데이터가 어떠한 콘텐츠에 관련하는지에 따라, 정보 제공 측면(informative)의 프레임을 많이 구성할지, 또는 흥미 위주(interesting)의 프레임을 많이 구성하여 축약 영상 데이터를 생성할지를 결정할 수 있다.
구체적인 예를 들어, 영상 데이터의 카테고리 정보를 통해, 해당 영상 데이터가 교육, 학습 등에 관련한 정보 제공을 목적으로 하는 콘텐츠임을 식별하는 경우, 컴퓨팅 장치(200)는 흥미 제공(interesting) 측면의 프레임 즉, 제2축약 영성 서브 데이터를 최소로하고, 정보 제공(informative) 측면의 프레임이 많이 선별되도록 하여 축약 영상 데이터를 생성할 수 있다.
다른 예를 들어, 영상 데이터의 카테고리 정보를 통해, 해당 영상 데이터가 게임 방송 또는 소통 방송 등 재미를 제공하기 위한 콘텐츠임을 식별하는 경우, 컴퓨팅 장치(200)는 정보 제공(informative) 측면의 프레임 보다는 흥미 위주(interesting)의 프레임(즉, 제2축약 영상 서브 데이터)이 많이 식별되도록 하여 축약 영상 데이터를 생성할 수 있다. 전술한 영상 데이터의 카테고리 정보 및 각 카테고리 정보에 대응하여 축약 영상 데이터를 생성하는 방법에 대한 구체적인 기재는 예시일 뿐, 본 발명은 이에 제한되지 않는다.
본 발명의 일 실시예에 따르면, 컴퓨팅 장치(200)는 생성된 축약 영상 데이터를 업로드할 수 있다(S150). 실시예에서, 컴퓨팅 장치(200)는 영상 데이터에 대응하여 생성된 축약 영상 데이터를 별도의 스트리밍 서버에 업로드할 수 있다.
컴퓨팅 장치(200)는 사용자(예컨대, 영상을 업로드하고자 하는 사용자)에게 할당된 권리 시간(타임블록)에 맞춰 축약 영상 데이터를 스트리밍할 수 있다(S160). 이에 따라, 다양한 사용자들이 스트리밍 서버에 접속하여 축약 영상 데이터를 스트리밍 할 수 있다.
따라서, 컴퓨팅 장치(200)는 영상 데이터의 정보 제공(informative)측면과 흥미 위주(interesting) 측면을 카테고리 별로 적절히 반영하여 비교적 짧은 시간으로 구성되는 축약 영상 데이터를 생성하여 스트리밍 가능하도록 제공함으로써, 많은 시청자들이 원본 영상 데이터를 시청하도록 유도할 수 있다. 이는, 업로드에 관련한 사용자에게 영상 편집 과정에 편의성을 제공하며, 시청자에게 관련한 사용자에게는 짧은 시간에 자신의 원하는 정보 또는 자신이 흥미를 느끼는 정보에 용이하게 접근하도록 할 수 있다.
본 발명의 일 실시예에 따르면, 컴퓨팅 장치(200)는 시청 사용자 단말이 업로드된 축약 영상 데이터의 시청 이후, 축약 영상 데이터에 대응하는 영상 데이터를 시청함을 감지하는 경우, 축약 영상 데이터에 대한 리워드를 제공할 수 있다. 예컨대, 특정 사용자가 축약 영상 데이터를 스트리밍 한 이후, 해당 축약 영상 데이터에 관련한 원본 영상 데이터를 시청하는 경우, 축약 영상 데이터가 사용자의 흥미를 끌도록 요약이 잘 된 것일 수 있다. 이에 따라, 컴퓨팅 장치(200)는 해당 축약 영상 데이터에 리워드를 제공할 수 있다. 실시예에서, 특정 축약 영상 데이터에 제공되는 리워드는, 특정 영상 데이터를 기반으로, 해당 축약 영상 데이터가 생성될 확률이 증가되도록 신경망에 긍정적인 피드백을 제공하는 것으로, 신경망의 가중치를 업데이트하는 것일 수 있다.
또한, 실시예에서, 컴퓨팅 장치(200)는 업로드된 축약 영상 데이터를 시청한 시청 사용자 단말들로부터 업로드된 축약 영상 데이터에 관련한 부정 정보를 기 설정된 횟수 이상 수신하는 경우, 축약 영상 데이터를 삭제할 수 있다. 예컨대, 시청자는 축약 영상 데이터의 시청 과정에서 별도의 버튼(예컨대, 신고)을 통해 해당 축약 영상 데이터에 관련한 부정 정보를 생성하여 전송할 수 있다. 컴퓨팅 장치(200)는 다양한 시청자들로부터 축약 영상 정보에 대응하는 부정 정보를 수신할 수 있으며, 수신한 부정 정보가 기 설정된 횟수를 초과하는 경우, 해당 축약 영상 데이터를 삭제할 수 있다. 이 경우, 컴퓨팅 장치(200)는 삭제된 축약 영상 데이터를 기본 디폴트 영상으로 대체할 수 있다.
즉, 컴퓨팅 장치(200)는 축약 영상 데이터에 시청에 관련하여 다수의 시청자들로부터 피드백을 수신하고, 이를 기반으로 업로드된 축약 영상 데이터에 대한 보완을 수행할 수 있다. 예컨대, 다수의 시청자들로부터 축약 영상 데이터의 생성이 적정한 것으로 판별되는 경우, 축약 영상 데이터에 생성에 관련하여 긍정적인 피드백 즉 리워드를 제공할 수 있으며, 다수의 시청자들로부터 축약 영상 데이터의 생성이 부적절한 것으로 판별되는 경우, 축약 영상 데이터를 제거하여 스트리밍 되지 않도록 할 수 있다.
도 8은 본 발명의 일 실시예와 관련된 영상 콘텐츠 공유 서비스 제공 방법의 예시적인 순서도를 도시한다.
본 발명의 일 실시예에 따르면, 영상 콘텐츠 공유 서비스 제공 방법은, 영상 데이터를 획득하는 단계(S210)를 포함할 수 있다.
본 발명의 일 실시예에 따르면, 영상 콘텐츠 공유 서비스 제공 방법은, 영상 데이터가 미리 정해진 규칙에 부합하는지 여부를 판별하는 단계(S220)를 포함할 수 있다.
본 발명의 일 실시예에 따르면, 영상 콘텐츠 공유 서비스 제공 방법은, 영상 데이터가 미리 정해진 규칙에 부합하는 경우, 영상 데이터에 대응하는 축약 영상 데이터를 생성하는 단계(S230)를 포함할 수 있다.
본 발명의 일 실시예에 따르면, 영상 콘텐츠 공유 서비스 제공 방법은, 축약 영상 데이터를 업로드하는 단계(S240)를 포함할 수 있다.
전술한 단계들은 필요에 의해 순서가 변경될 수 있으며, 적어도 하나 이상의 단계가 생략 또는 추가될 수 있다. 즉, 도 8에 도시된 단계들은 본 발명의 일 실시예에 불과할 뿐, 본 발명의 권리 범위는 이에 제한되지 않는다.
도 9는 본 발명의 일 실시예와 관련된 하나 이상의 네트워크 함수를 나타낸 개략도이다.
본 명세서에 걸쳐, 연산 모델, 신경망, 네트워크 함수, 뉴럴 네트워크(neural network)는 동일한 의미로 사용될 수 있다. 신경망은 일반적으로 “노드”라 지칭될 수 있는 상호 연결된 계산 단위들의 집합으로 구성될 수 있다. 이러한 “노드”들은 “뉴런(neuron)”들로 지칭될 수도 있다.
딥 뉴럴 네트워크(DNN: deep neural network, 심층신경망)는 입력 레이어와 출력 레이어 외에 복수의 히든 레이어를 포함하는 신경망을 의미할 수 있다. 딥 뉴럴 네트워크를 이용하면 데이터의 잠재적인 구조(latent structures)를 파악할 수 있다. 즉, 사진, 글, 비디오, 음성, 음악의 잠재적인 구조(예를 들어, 어떤 물체가 사진에 있는지, 글의 내용과 감정이 무엇인지, 음성의 내용과 감정이 무엇인지 등)를 파악할 수 있다. 딥 뉴럴 네트워크는 컨볼루션 뉴럴 네트워크(CNN: convolutional neural network), 리커런트 뉴럴 네트워크(RNN: recurrent neural network), 오토 인코더(auto encoder), GAN(Generative Adversarial Networks), 제한 볼츠만 머신(RBM: restricted boltzmann machine), 심층 신뢰 네트워크(DBN: deep belief network), Q 네트워크, U 네트워크, 샴 네트워크 등을 포함할 수 있다. 전술한 딥 뉴럴 네트워크의 기재는 예시일 뿐이며 본 발명은 이에 제한되지 않는다.
본 발명의 일 실시예에서 네트워크 함수는 오토 인코더를 포함할 수도 있다. 오토 인코더는 입력 데이터와 유사한 출력 데이터를 출력하기 위한 인공 신경망의 일종일 수 있다. 오토 인코더는 적어도 하나의 히든 레이어를 포함할 수 있으며, 홀수 개의 히든 레이어가 입출력 레이어 사이에 배치될 수 있다. 각각의 레이어의 노드의 수는 입력 레이어의 노드의 수에서 병목 레이어(인코딩)라는 중간 레이어로 축소되었다가, 병목 레이어에서 출력 레이어(입력 레이어와 대칭)로 축소와 대칭되어 확장될 수도 있다. 차원 감소 레이어와 차원 복원 레이어의 노드는 대칭일 수도 있고 아닐 수도 있다. 오토 인코더는 비선형 차원 감소를 수행할 수 있다. 입력 레이어 및 출력 레이어의 수는 입력 데이터의 전처리 이후에 남은 센서들의 수와 대응될 수 있다. 오토 인코더 구조에서 인코더에 포함된 히든 레이어의 노드의 수는 입력 레이어에서 멀어질수록 감소하는 구조를 가질 수 있다. 병목 레이어(인코더와 디코더 사이에 위치하는 가장 적은 노드를 가진 레이어)의 노드의 수는 너무 작은 경우 충분한 양의 정보가 전달되지 않을 수 있으므로, 특정 수 이상(예를 들어, 입력 레이어의 절반 이상 등)으로 유지될 수도 있다.
뉴럴 네트워크는 교사 학습(supervised learning), 비교사 학습(unsupervised learning), 및 반교사학습(semi supervised learning) 중 적어도 하나의 방식으로 학습될 수 있다. 뉴럴 네트워크의 학습은 출력의 오류를 최소화하기 위한 것이다. 뉴럴 네트워크의 학습에서 반복적으로 학습 데이터를 뉴럴 네트워크에 입력시키고 학습 데이터에 대한 뉴럴 네트워크의 출력과 타겟의 에러를 계산하고, 에러를 줄이기 위한 방향으로 뉴럴 네트워크의 에러를 뉴럴 네트워크의 출력 레이어에서부터 입력 레이어 방향으로 역전파(backpropagation)하여 뉴럴 네트워크의 각 노드의 가중치를 업데이트 하는 과정이다. 교사 학습의 경우 각각의 학습 데이터에 정답이 라벨링되어있는 학습 데이터를 사용하며(즉, 라벨링된 학습 데이터), 비교사 학습의 경우는 각각의 학습 데이터에 정답이 라벨링되어 있지 않을 수 있다. 즉, 예를 들어 데이터 분류에 관한 교사 학습의 경우의 학습 데이터는 학습 데이터 각각에 카테고리가 라벨링 된 데이터 일 수 있다. 라벨링된 학습 데이터가 뉴럴 네트워크에 입력되고, 뉴럴 네트워크의 출력(카테고리)과 학습 데이터의 라벨이 비교함으로써 오류(error)가 계산될 수 있다. 다른 예로, 데이터 분류에 관한 비교사 학습의 경우 입력인 학습 데이터가 뉴럴 네트워크 출력과 비교됨으로써 오류가 계산될 수 있다. 계산된 오류는 뉴럴 네트워크에서 역방향(즉, 출력 레이어에서 입력 레이어 방향)으로 역전파 되며, 역전파에 따라 뉴럴 네트워크의 각 레이어의 각 노드들의 연결 가중치가 업데이트 될 수 있다. 업데이트 되는 각 노드의 연결 가중치는 학습률(learning rate)에 따라 변화량이 결정될 수 있다. 입력 데이터에 대한 뉴럴 네트워크의 계산과 에러의 역전파는 학습 사이클(epoch)을 구성할 수 있다. 학습률은 뉴럴 네트워크의 학습 사이클의 반복 횟수에 따라 상이하게 적용될 수 있다. 예를 들어, 뉴럴 네트워크의 학습 초기에는 높은 학습률을 사용하여 뉴럴 네트워크가 빠르게 일정 수준의 성능을 확보하도록 하여 효율성을 높이고, 학습 후기에는 낮은 학습률을 사용하여 정확도를 높일 수 있다.
뉴럴 네트워크의 학습에서 일반적으로 학습 데이터는 실제 데이터(즉, 학습된 뉴럴 네트워크를 이용하여 처리하고자 하는 데이터)의 부분집합일 수 있으며, 따라서, 학습 데이터에 대한 오류는 감소하나 실제 데이터에 대해서는 오류가 증가하는 학습 사이클이 존재할 수 있다. 과적합(overfitting)은 이와 같이 학습 데이터에 과하게 학습하여 실제 데이터에 대한 오류가 증가하는 현상이다. 예를 들어, 노란색 고양이를 보여 고양이를 학습한 뉴럴 네트워크가 노란색 이외의 고양이를 보고는 고양이임을 인식하지 못하는 현상이 과적합의 일종일 수 있다. 과적합은 머신러닝 알고리즘의 오류를 증가시키는 원인으로 작용할 수 있다. 이러한 과적합을 막기 위하여 다양한 최적화 방법이 사용될 수 있다. 과적합을 막기 위해서는 학습 데이터를 증가시키거나, 레귤라이제이션(regularization), 학습의 과정에서 네트워크의 노드 일부를 생략하는 드롭아웃(dropout) 등의 방법이 적용될 수 있다.
본 발명의 실시예와 관련하여 설명된 방법 또는 알고리즘의 단계들은 하드웨어로 직접 구현되거나, 하드웨어에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이들의 결합에 의해 구현될 수 있다. 소프트웨어 모듈은 RAM(Random Access Memory), ROM(Read Only Memory), EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM), 플래시 메모리(Flash Memory), 하드 디스크, 착탈형 디스크, CD-ROM, 또는 본 발명이 속하는 기술 분야에서 잘 알려진 임의의 형태의 컴퓨터 판독가능 기록매체에 상주할 수도 있다.
본 발명의 구성 요소들은 하드웨어인 컴퓨터와 결합되어 실행되기 위해 프로그램(또는 애플리케이션)으로 구현되어 매체에 저장될 수 있다. 본 발명의 구성 요소들은 소프트웨어 프로그래밍 또는 소프트웨어 요소들로 실행될 수 있으며, 이와 유사하게, 실시 예는 데이터 구조, 프로세스들, 루틴들 또는 다른 프로그래밍 구성들의 조합으로 구현되는 다양한 알고리즘을 포함하여, C, C++, 자바(Java), 어셈블러(assembler) 등과 같은 프로그래밍 또는 스크립팅 언어로 구현될 수 있다. 기능적인 측면들은 하나 이상의 프로세서들에서 실행되는 알고리즘으로 구현될 수 있다.
본 발명의 기술 분야에서 통상의 지식을 가진 자는 여기에 개시된 실시예들과 관련하여 설명된 다양한 예시적인 논리 블록들, 모듈들, 프로세서들, 수단들, 회로들 및 알고리즘 단계들이 전자 하드웨어, (편의를 위해, 여기에서 "소프트웨어"로 지칭되는) 다양한 형태들의 프로그램 또는 설계 코드 또는 이들 모두의 결합에 의해 구현될 수 있다는 것을 이해할 것이다. 하드웨어 및 소프트웨어의 이러한 상호 호환성을 명확하게 설명하기 위해, 다양한 예시적인 컴포넌트들, 블록들, 모듈들, 회로들 및 단계들이 이들의 기능과 관련하여 위에서 일반적으로 설명되었다. 이러한 기능이 하드웨어 또는 소프트웨어로서 구현되는지 여부는 특정한 애플리케이션 및 전체 시스템에 대하여 부과되는 설계 제약들에 따라 좌우된다. 본 발명의 기술 분야에서 통상의 지식을 가진 자는 각각의 특정한 애플리케이션에 대하여 다양한 방식들로 설명된 기능을 구현할 수 있으나, 이러한 구현 결정들은 본 발명의 범위를 벗어나는 것으로 해석되어서는 안 될 것이다.
여기서 제시된 다양한 실시예들은 방법, 장치, 또는 표준 프로그래밍 및/또는 엔지니어링 기술을 사용한 제조 물품(article)으로 구현될 수 있다. 용어 "제조 물품"은 임의의 컴퓨터-판독가능 장치로부터 액세스 가능한 컴퓨터 프로그램, 캐리어, 또는 매체(media)를 포함한다. 예를 들어, 컴퓨터-판독가능 매체는 자기 저장 장치(예를 들면, 하드 디스크, 플로피 디스크, 자기 스트립, 등), 광학 디스크(예를 들면, CD, DVD, 등), 스마트 카드, 및 플래쉬 메모리 장치(예를 들면, EEPROM, 카드, 스틱, 키 드라이브, 등)를 포함하지만, 이들로 제한되는 것은 아니다. 또한, 여기서 제시되는 다양한 저장 매체는 정보를 저장하기 위한 하나 이상의 장치 및/또는 다른 기계-판독가능한 매체를 포함한다. 용어 "기계-판독가능 매체"는 명령(들) 및/또는 데이터를 저장, 보유, 및/또는 전달할 수 있는 무선 채널 및 다양한 다른 매체를 포함하지만, 이들로 제한되는 것은 아니다.
제시된 프로세스들에 있는 단계들의 특정한 순서 또는 계층 구조는 예시적인 접근들의 일례임을 이해하도록 한다. 설계 우선순위들에 기반하여, 본 발명의 범위 내에서 프로세스들에 있는 단계들의 특정한 순서 또는 계층 구조가 재배열될 수 있다는 것을 이해하도록 한다. 첨부된 방법 청구항들은 샘플 순서로 다양한 단계들의 엘리먼트들을 제공하지만 제시된 특정한 순서 또는 계층 구조에 한정되는 것을 의미하지는 않는다.
제시된 실시예들에 대한 설명은 임의의 본 발명의 기술 분야에서 통상의 지식을 가진 자가 본 발명을 이용하거나 또는 실시할 수 있도록 제공된다. 이러한 실시예들에 대한 다양한 변형들은 본 발명의 기술 분야에서 통상의 지식을 가진 자에게 명백할 것이며, 여기에 정의된 일반적인 원리들은 본 발명의 범위를 벗어남이 없이 다른 실시예들에 적용될 수 있다. 그리하여, 본 발명은 여기에 제시된 실시예들로 한정되는 것이 아니라, 여기에 제시된 원리들 및 신규한 특징들과 일관되는 최광의의 범위에서 해석되어야 할 것이다.

Claims (11)

  1. 컴퓨팅 장치에 포함된 하나 이상의 프로세서에서 수행되는 방법에 있어서,
    영상 데이터를 획득하는 단계;
    상기 영상 데이터가 미리 정해진 규칙에 부합하는지 여부를 판별하는 단계;
    상기 영상 데이터가 상기 미리 정해진 규칙에 부합하는 경우, 상기 영상 데이터에 대응하는 축약 영상 데이터를 생성하는 단계; 및
    상기 축약 영상 데이터를 업로드하는 단계;
    를 포함하며,
    상기 축약 영상 데이터를 생성하는 단계는,
    감정 예측 모델을 활용하여 상기 영상 데이터에 대응하는 감정 변화 예측 정보를 생성하는 단계; 및
    상기 감정 변화 예측 정보를 통해 각 감정의 변화량이 일정 이상인 구간을 식별하고, 식별된 구간을 기반으로 상기 축약 영상 데이터를 생성하는 단계; 를 포함하며,
    상기 감정 예측 모델은,
    상기 영상 데이터에 포함된 복수의 영상 서브 데이터 각각에 대한 분석을 수행하여 각 영상 서브 데이터에 대응하는 복수의 감정 각각의 점수를 도출하도록 학습된 신경망 모델인 것을 특징으로 하며,
    상기 방법은,
    블록체인 네트워크에 포함된 복수의 노드들 간의 합의를 통해 상기 미리 정해진 규칙을 생성하는 단계;
    상기 미리 정해진 규칙에 기반하여 상기 영상 데이터에 대응하는 위험도 점수를 산출하는 단계; 및
    상기 위험도 점수가 미리 정해진 임계 위험도 점수를 초과하는 경우, 상기 영상 데이터를 반려시키는 단계; 를 더 포함하는,
    영상 콘텐츠 공유 서비스를 제공하기 위한 방법.
  2. 삭제
  3. 삭제
  4. 제1항에 있어서,
    상기 축약 영상 데이터를 생성하는 단계는,
    사용자 입력 정보를 획득하는 단계; 및
    상기 사용자 입력 정보 및 상기 감정 변화 예측 정보에 기초하여 상기 축약 영상 데이터를 생성하는 단계;
    를 포함하며,
    상기 사용자 입력 정보는,
    프레임 선택 정보 및 감정 선택 정보를 포함하는,
    영상 콘텐츠 공유 서비스를 제공하기 위한 방법.
  5. 제4항에 있어서,
    상기 사용자 입력 정보 및 상기 감정 변화 예측 정보에 기초하여 상기 축약 영상 데이터를 생성하는 단계는,
    상기 프레임 선택 정보에 기초하여 하나 이상의 제1영상 서브 데이터를 식별하는 단계;
    상기 감정 선택 정보에 기초하여 상기 감정 변화 예측 정보에 가중치를 부여하는 단계;
    상기 가중치가 부여된 감정 변화 예측 정보에 기초하여 하나 이상의 제2영상 서브 데이터를 식별하는 단계; 및
    상기 하나 이상의 제1영상 서브 데이터 및 상기 하나 이상의 제2영상 서브 데이터에 기초하여 상기 축약 영상 데이터를 생성하는 단계;
    를 포함하는,
    영상 콘텐츠 공유 서비스를 제공하기 위한 방법.
  6. 제1항에 있어서,
    상기 축약 영상 데이터를 생성하는 단계는,
    영상 분석 모델을 활용하여 상기 영상 데이터에 포함된 복수의 제1축약 영상 서브 데이터를 선별하는 단계;
    반응 분석 모델을 활용하여 상기 영상 데이터에 포함된 복수의 제2축약 영상 서브 데이터를 선별하는 단계; 및
    상기 복수의 제1축약 영상 서브 데이터 및 상기 복수의 제2축약 영상 서브 데이터에 기초하여 상기 축약 영상 데이터를 생성하는 단계;
    를 포함하며,
    상기 복수의 제1축약 영상 서브 데이터는,
    정보 제공에 관련한 영상 프레임들을 포함하며,
    상기 복수의 제2축약 영상 서브 데이터는,
    흥미 구간에 관련한 영상 프레임들을 포함하는,
    영상 콘텐츠 공유 서비스를 제공하기 위한 방법.
  7. 제6항에 있어서,
    상기 영상 분석 모델은,
    상기 영상 데이터에 대한 영상 분석을 통해 주요 프레임을 식별하는 것을 특징으로 하며,
    상기 반응 분석 모델은,
    상기 영상 데이터에 대응하는 시청자 인터렉션 정보에 기초하여 각 프레임 별 시청자들의 흥미 지수를 도출하고, 흥미 지수가 일정 이상인 프레임들을 주요 프레임으로 식별하는 것을 특징으로 하는,
    영상 콘텐츠 공유 서비스를 제공하기 위한 방법.
  8. 제6항에 있어서,
    상기 축약 영상 데이터를 생성하는 단계는,
    상기 영상 데이터의 카테고리 정보를 획득하는 단계; 및
    상기 카테고리 정보에 기초하여 상기 축약 영상 데이터에 포함되는 상기 복수의 제1축약 영상 서브 데이터 및 상기 복수의 제2축약 영상 서브 데이터 각각의 비율을 결정하는 단계;
    를 포함하는,
    영상 콘텐츠 공유 서비스를 제공하기 위한 방법.
  9. 제1항에 있어서,
    상기 방법은,
    상기 업로드된 축약 영상 데이터를 시청한 시청 사용자 단말들로부터 상기 업로드된 축약 영상 데이터에 관련한 부정 정보를 기 설정된 횟수 이상 수신하는 경우, 상기 축약 영상 데이터를 삭제하는 단계;
    를 더 포함하는,
    영상 콘텐츠 공유 서비스를 제공하기 위한 방법.
  10. 하나 이상의 인스트럭션을 저장하는 메모리; 및
    상기 메모리에 저장된 상기 하나 이상의 인스트럭션을 실행하는 프로세서를 포함하고,
    상기 프로세서는 상기 하나 이상의 인스트럭션을 실행함으로써,
    제1항의 방법을 수행하는, 장치.
  11. 하드웨어인 컴퓨터와 결합되어, 제1항의 방법을 수행할 수 있도록 컴퓨터에서 독출가능한 기록매체에 저장된 컴퓨터프로그램.
KR1020220134605A 2022-10-19 2022-10-19 영상 콘텐츠 공유 서비스를 제공하기 위한 방법, 컴퓨팅 장치 및 컴퓨터 프로그램 KR102600960B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020220134605A KR102600960B1 (ko) 2022-10-19 2022-10-19 영상 콘텐츠 공유 서비스를 제공하기 위한 방법, 컴퓨팅 장치 및 컴퓨터 프로그램
KR1020230152403A KR20240054916A (ko) 2022-10-19 2023-11-07 영상 콘텐츠 공유 서비스를 제공하기 위한 방법, 컴퓨팅 장치 및 컴퓨터 프로그램

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220134605A KR102600960B1 (ko) 2022-10-19 2022-10-19 영상 콘텐츠 공유 서비스를 제공하기 위한 방법, 컴퓨팅 장치 및 컴퓨터 프로그램

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020230152403A Division KR20240054916A (ko) 2022-10-19 2023-11-07 영상 콘텐츠 공유 서비스를 제공하기 위한 방법, 컴퓨팅 장치 및 컴퓨터 프로그램

Publications (1)

Publication Number Publication Date
KR102600960B1 true KR102600960B1 (ko) 2023-11-10

Family

ID=88742175

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020220134605A KR102600960B1 (ko) 2022-10-19 2022-10-19 영상 콘텐츠 공유 서비스를 제공하기 위한 방법, 컴퓨팅 장치 및 컴퓨터 프로그램
KR1020230152403A KR20240054916A (ko) 2022-10-19 2023-11-07 영상 콘텐츠 공유 서비스를 제공하기 위한 방법, 컴퓨팅 장치 및 컴퓨터 프로그램

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020230152403A KR20240054916A (ko) 2022-10-19 2023-11-07 영상 콘텐츠 공유 서비스를 제공하기 위한 방법, 컴퓨팅 장치 및 컴퓨터 프로그램

Country Status (1)

Country Link
KR (2) KR102600960B1 (ko)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100085720A (ko) 2009-01-21 2010-07-29 삼성전자주식회사 하이라이트 영상 구성 방법 및 장치
KR20210097314A (ko) * 2020-01-30 2021-08-09 박경미 인공지능 기반 이미지 자동 생성 시스템
US20210286900A1 (en) * 2019-01-09 2021-09-16 Tencent Technology (Shenzhen) Company Limited Method for displaying blockchain data, blockchain browser, user node, and medium
KR102354592B1 (ko) * 2021-05-28 2022-01-24 주식회사 잘라컴퍼니 스트리밍 데이터 기반 영상 편집점 추천 방법, 서버 및 컴퓨터프로그램

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20100085720A (ko) 2009-01-21 2010-07-29 삼성전자주식회사 하이라이트 영상 구성 방법 및 장치
US20210286900A1 (en) * 2019-01-09 2021-09-16 Tencent Technology (Shenzhen) Company Limited Method for displaying blockchain data, blockchain browser, user node, and medium
KR20210097314A (ko) * 2020-01-30 2021-08-09 박경미 인공지능 기반 이미지 자동 생성 시스템
KR102354592B1 (ko) * 2021-05-28 2022-01-24 주식회사 잘라컴퍼니 스트리밍 데이터 기반 영상 편집점 추천 방법, 서버 및 컴퓨터프로그램

Also Published As

Publication number Publication date
KR20240054916A (ko) 2024-04-26

Similar Documents

Publication Publication Date Title
US20200320571A1 (en) Method for optimizing media and marketing content using cross-platform video intelligence
US11705096B2 (en) Autonomous generation of melody
US11375256B1 (en) Artificial intelligence system for modeling emotions elicited by videos
US20150243279A1 (en) Systems and methods for recommending responses
US11176484B1 (en) Artificial intelligence system for modeling emotions elicited by videos
KR102354592B1 (ko) 스트리밍 데이터 기반 영상 편집점 추천 방법, 서버 및 컴퓨터프로그램
CN116702737B (zh) 文案生成方法、装置、设备、存储介质及产品
CN111444357A (zh) 内容信息确定方法、装置、计算机设备及存储介质
US20230027035A1 (en) Automated narrative production system and script production method with real-time interactive characters
KR102354593B1 (ko) 사용자 데이터베이스 구축과 머신러닝을 통한 영상 편집 타입 구분 및 편집점 추천 알고리즘 고도화 방법, 서버 및 컴퓨터프로그램
Yordanova et al. Automatic detection of everyday social behaviours and environments from verbatim transcripts of daily conversations
US20220327402A1 (en) Automated Compositing of Content Compilations
KR102286638B1 (ko) 하이라이트 영상 자동 편집을 위한 컴퓨터 프로그램
US11244166B2 (en) Intelligent performance rating
KR102600960B1 (ko) 영상 콘텐츠 공유 서비스를 제공하기 위한 방법, 컴퓨팅 장치 및 컴퓨터 프로그램
US20200126042A1 (en) Integrated Framework for Managing Human Interactions
US11533518B2 (en) Audio customization in streaming environment
High et al. Cognitive Computing with IBM Watson: Build smart applications using artificial intelligence as a service
CN116980665A (zh) 一种视频处理方法、装置、计算机设备、介质及产品
Kaneria et al. Prediction of song popularity using machine learning concepts
KR102425239B1 (ko) 사용자 데이터 기반 딥러닝을 통한 추천 편집점 정교화 방법, 서버 및 컴퓨터프로그램
CN114996435A (zh) 基于人工智能的信息推荐方法、装置、设备及存储介质
Krol et al. Framing through Music: A Pilot Study.
KR102303626B1 (ko) 단일 이미지에 기반하여 비디오 데이터를 생성하기 위한 방법 및 컴퓨팅 장치
KR102623459B1 (ko) 사용자의 보컬 평가에 기반한 오디션 이벤트 서비스 제공 방법, 장치 및 시스템

Legal Events

Date Code Title Description
A107 Divisional application of patent
GRNT Written decision to grant