KR20240079263A - 영상 공모전 중개 및 인공지능 기반 영상 텍스트 제거 방법 - Google Patents

영상 공모전 중개 및 인공지능 기반 영상 텍스트 제거 방법 Download PDF

Info

Publication number
KR20240079263A
KR20240079263A KR1020220161445A KR20220161445A KR20240079263A KR 20240079263 A KR20240079263 A KR 20240079263A KR 1020220161445 A KR1020220161445 A KR 1020220161445A KR 20220161445 A KR20220161445 A KR 20220161445A KR 20240079263 A KR20240079263 A KR 20240079263A
Authority
KR
South Korea
Prior art keywords
video
frame
neural network
text
contest
Prior art date
Application number
KR1020220161445A
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 KR1020220161445A priority Critical patent/KR20240079263A/ko
Publication of KR20240079263A publication Critical patent/KR20240079263A/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0475Generative networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce
    • G06Q30/06Buying, selling or leasing transactions
    • G06Q30/08Auctions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/14Image acquisition
    • G06V30/146Aligning or centring of the image pick-up or image-field
    • G06V30/147Determination of region of interest

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Evolutionary Computation (AREA)
  • Artificial Intelligence (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Mathematical Physics (AREA)
  • Multimedia (AREA)
  • Economics (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Finance (AREA)
  • Strategic Management (AREA)
  • Marketing (AREA)
  • Signal Processing (AREA)
  • Development Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Computer Security & Cryptography (AREA)
  • Human Resources & Organizations (AREA)
  • Primary Health Care (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Image Analysis (AREA)

Abstract

영상 공모전 중개 및 인공지능 기반 영상 텍스트 제거 방법을 제공한다. 상기 영상 공모전 중개 및 인공지능 기반 영상 텍스트 제거 방법은 제1 영상 수요자 단말을 통해 제1 영상 수요자로부터 영상 공모전 정보를 획득하는 단계; 상기 영상 공모전 정보를 영상 제작자 단말에 노출시키는 단계; 상기 영상 제작자 단말을 통해 응모 영상 컨텐츠를 획득하는 단계; 상기 응모 영상 컨텐츠를 포함하는 복수의 응모 영상 컨텐츠들을 상기 제1 영상 수요자 단말을 통해 상기 제1 영상 수요자에게 전달하는 단계; 상기 제1 영상 수요자 단말을 통해 상기 복수의 응모 영상 컨텐츠들 중 상기 제1 영상 수요자가 선정한 수상 영상 컨텐츠에 대한 정보를 입력 받는 단계; 상기 복수의 응모 영상 컨텐츠들 중 상기 수상 영상 컨텐츠를 제외한 미선정 영상 컨텐츠를 획득하는 단계; 상기 미선정 영상 컨텐츠를 기초로, 미리 설정된 제1 주기마다 프레임을 추출하는 단계; 제1 인공 신경망 및 Open CV를 이용하여 상기 추출 프레임에 대하여 텍스트 요소가 포함된 텍스트 영역을 탐지하는 단계; 상기 텍스트 영역이 탐지된 경우 상기 추출 프레임에서 상기 텍스트 요소를 제거하는 단계; 제2 인공 신경망을 이용하여 제거퇸 텍스트 요소와 대응되는 영역을 채워 수정 프레임을 생성하는 단계; 및 상기 추출 프레임을 상기 수정 프레임으로 대체하는 단계를 포함하되, 상기 제1 인공 신경망은 합성곱 신경망(CNN; convolutional neural network)이고, 상기 제2 인공 신경망은 WGAN(Wasserstein GAN) 또는 WGAN-GP(WGAN-gredient penalty)이다.

Description

영상 공모전 중개 및 인공지능 기반 영상 텍스트 제거 방법 {METHODS FOR PROVIDING INTERMEDIATION FOR VIDEO PRODUCTING COMPETITION AND TEXT DETECTION BASED ON ARTIFICIAL INTELLIGENCE}
아래 실시예들은 영상 공모전 중개 및 인공지능 기반 영상 텍스트 제거 방법에 관한 것이다.
스톡 이미지, 영상, 비디오란 10~60초 내외의 이미지, 동영상 촬영 소스로서, 영상 제작이나 편집에 사용 가능한 영상 소스들을 의미한다. 영상을 제작할 때 모든 영상을 촬영할 수 없기 때문에, 영상 제작자는 타인이 촬영하여 업로드한 스톡 이미지, 영상, 비디오를 일정한 금액을 지불하여 구매하여 자신의 영상 제작에 합법적으로 사용 가능하다.
최근에는 유튜브, 넷플릭스, 페이스북 등 콘텐츠를 접할 수 있는 플랫폼이 커지면서, 개인 영상 컨텐츠 제작 등 콘텐츠 산업에 종사하는 사람이 증가하고 있으며, 고가의 카메라 혹은 DSLR(Digital Single Lens Reflex), 미러리스 카메라뿐만 아니라 스마트폰 카메라로도 고퀄리티의 영상을 찍을 수 있게 되어, 누구나 쉽게 스톡 이미지, 영상, 비디오의 제작이 가능하다.
매년 다양하게 개최되고 있는 각종 공모전들은 대중이 직접 참여하는 행사 성격으로 인해 주최사 입장에서는 새로운 아이디어를 획득함과 동시에 원하는 홍보를 대중의 참여를 통해 달성할 수 있다는 측면에서 매우 유용한 마케팅 툴로 적극 활용하고 있는 추세이다. 이에 따라, 다양한 주최사들이 공모전을 소개하고 광고하여 공모전을 주최하고 있다.
이에 따라, 주최사들이 공모전을 개최하는 데 있어 보다 효율적이고 체계적인 공모전을 운영할 수 있는 새로운 형태의 시스템의 필요성이 대두되고 있다. 아울러, 공모전 이후 미선정된 공모 작품(영상 컨텐츠)가 그대로 처분되어 활용되지 못하고 있다. 이에 따라, 미선정된 공모 작품의 활용성을 향상시키기 위해 미선정 콘텐츠를 인공 지능 기반으로 영상 처리하여 영상 콘텐츠 내에 포함된 스톡을 자동으로 추출하여 제공하는 기술이 요구된다.
실시예들은 영상 제작자와 제1 영상 수요자 사이의 영상 공모전을 중개하고, 상기 영상 제작자들의 공모 영상 컨텐츠 중 미선정 영상 컨텐츠를 활용하기 위하여 상기 미선정 영상 컨텐츠를 기초로 인공 지능 기반으로 텍스트를 제거하여 추출된 스톡 이미지를 제2 영상 수요자(스톡 수요자)에게 제공할 수 있는 영상 공모전 중개 및 인공지능 기반 영상 텍스트 제거 방법을 제공하는 데 있다.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 본 발명이 속한 기술분야의 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
상기 과제를 해결하기 위한 일 실시예에 따른 영상 공모전 중개 및 인공지능 기반 영상 텍스트 제거 방법은, 제1 영상 수요자 단말을 통해 제1 영상 수요자로부터 영상 공모전 정보를 획득하는 단계; 상기 영상 공모전 정보를 영상 제작자 단말에 노출시키는 단계; 상기 영상 제작자 단말을 통해 응모 영상 컨텐츠를 획득하는 단계; 상기 응모 영상 컨텐츠를 포함하는 복수의 응모 영상 컨텐츠들을 상기 제1 영상 수요자 단말을 통해 상기 제1 영상 수요자에게 전달하는 단계; 상기 제1 영상 수요자 단말을 통해 상기 복수의 응모 영상 컨텐츠들 중 상기 제1 영상 수요자가 선정한 수상 영상 컨텐츠에 대한 정보를 입력 받는 단계; 상기 복수의 응모 영상 컨텐츠들 중 상기 수상 영상 컨텐츠를 제외한 미선정 영상 컨텐츠를 획득하는 단계; 상기 미선정 영상 컨텐츠를 기초로, 미리 설정된 제1 주기마다 프레임을 추출하는 단계; 제1 인공 신경망 및 Open CV를 이용하여 상기 추출 프레임에 대하여 텍스트 요소가 포함된 텍스트 영역을 탐지하는 단계; 상기 텍스트 영역이 탐지된 경우 상기 추출 프레임에서 상기 텍스트 요소를 제거하는 단계; 제2 인공 신경망을 이용하여 제거퇸 텍스트 요소와 대응되는 영역을 채워 수정 프레임을 생성하는 단계; 및 상기 추출 프레임을 상기 수정 프레임으로 대체하여 제1 파일을 생성하는 단계를 포함하되, 상기 제1 인공 신경망은 합성곱 신경망(CNN; convolutional neural network)이고, 상기 제2 인공 신경망은 WGAN(Wasserstein GAN) 또는 WGAN-GP(WGAN-gredient penalty)이다.
몇몇 실시예에서, 상기 추출 프레임에 대하여 상기 텍스트 요소가 포함된 상기 텍스트 영역을 탐지하는 단계는, 상기 Open CV를 이용하여 상기 추출 프레임을 그레이 스케일 프레임으로 변환하는 단계; 상기 Open CV를 이용하여 상기 그레이 스케일 프레임에서 경계선을 검출하는 단계; 상기 Open CV를 이용하여 상기 경계선을 근사화하는 단계; 및 상기 경계선이 근사화된 그레이 스케일 프레임에서 상기 제1 인공 신경망을 이용하여 상기 텍스트 영역을 추출하는 단계를 포함할 수 있다.
몇몇 실시예에서, 상기 Open CV를 이용하여 상기 추출 프레임을 상기 그레이 스케일 프레임으로 변환하는 단계는, Open CV의 ‘grayscale()’함수를 이용하고, 상기 Open CV를 이용하여 상기 그레이 스케일 프레임에서 경계선을 검출하는 단계는, Open CV의 ‘findContour()’ 함수를 이용하며, 상기 Open CV를 이용하여 상기 경계선을 근사화하는 단계는, Open CV의 ‘approxPolyDP()’ 함수를 이용하는 것을 특징으로 할 수 있다.
몇몇 실시예에서, 상기 제1 파일을 생성하는 단계 이후, 상기 제1 파일을 기초로, 화면 전환 시점을 판단하여 프레임 단위의 이미지인 제2 파일을 생성하는 단계; 상기 제2 파일을 기초로, 디자인 요소를 추출하는 단계; 및 상기 제1 파일, 상기 제2 파일 및 상기 디자인 요소를 스톡으로 분류하고 상기 스톡을 제2 영상 수요자 단말로 제공하는 단계를 더 포함할 수 있다.
몇몇 실시예에서, 상기 제2 파일을 기초로, 디자인 요소를 추출하는 단계는, 상기 Open CV를 이용하여 제2 파일의 노이즈를 제거하는 단계, 상기 Open CV를 이용하여 상기 노이즈가 제거된 이미지에서 경계선을 검출하는 단계; 및 제3 인공 신경망을 이용하여 디자인 요소가 검출되었는지 여부를 확인하는 단계를 포함할 수 있다.
본 발명의 영상 제작자, 제1 영상 수요자(영상 컨텐츠 수요자), 제2 영상 수요자(스톡 이미지 수요자)에게 만족도 높은 영상 공모전 서비스를 제공하고, 영상 제작자로부터 제공된 복수의 응모 작품 중 선정되지 않은 미선정 응모 작품을 인공지능 기반으로 텍스트 제거하여 스톡 이미지로 자동 추출함으로써 미선정 응모 작품이 활용되지 않고 낭비되는 것을 방지할 수 있다.
더 나아가, 상기 스톡 이미지의 판매를 통해 수익화를 실현할 수 있는 이점이 있다.
본 개시의 기술적 사상에 따른 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해될 수 있을 것이다.
도 1은 일 실시예에 따른 영상 제공 시스템의 구성을 개략적으로 나타낸 도면이다.
도 2 일 실시예에 따른 영상 관리 시스템의 구성의 예시도이다.
도 3은 본 발명의 일 실시예에 따른 영상 제공 시스템의 제1 영상 수요자 단말, 제2 영상 수요자 단말, 영상 제작자 단말 및 영상 관리 시스템 사이의 신호 및 데이터 송수신 과정을 개략적으로 도시한 도면이다.
도 4는 일 실시예에 따른 영상 관리부에서 미선정된 영상 컨텐츠로부터 인공지능 기반 스톡 이미지를 자동으로 추출하는 과정을 설명하기 위한 순서도이다.
도 5는 일실시예에 따른 영상 콘텐츠의 텍스트 요소를 제거하여 스톡을 생성하는 과정을 설명하기 위한 순서도이다.
도 6은 일 실시예에 따른 Open CV 및 제1 인공 신경망을 이용하여 추출된 프레임에 대하여 텍스트 요소가 포함된 텍스트 영역을 탐지하는 과정을 설명하기 위한 순서도이다.
도 7은 일 실시예에 따른 화면 전환 시점을 판단하여 스톡을 생성하는 과정을 설명하기 위한 순서도이다.
도 8은 일실시예에 따른 디자인 요소를 추출하여 스톡을 생성하는 과정을 설명하기 위한 순서도이다.
도 9는 일실시예에 따른 구매자로부터 선택된 스톡과 유사한 스톡을 함께 제공하는 과정을 설명하기 위한 순서도이다.
도 10은 일실시예에 따른 영상 관리부 구성의 예시도이다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명한다. 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 게시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 게시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
또한, 본 명세서에서 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함될 수 있다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.
도 1은 일 실시예에 따른 영상 제공 시스템의 구성을 개략적으로 나타낸 도면이다.
도 1을 참조하면, 일실시예에 따른 영상 제공 시스템은 통신망을 통해 서로 통신 가능한 제1 영상 수요자 단말(100), 영상 제작자 단말(200), 영상 관리 시스템(300) 및 제2 영상 수요자 단말(400)을 포함할 수 있다.
먼저, 통신망은 유선 및 무선 등과 같이 그 통신 양태를 가리지 않고 구성될 수 있으며, 서버와 서버 간의 통신과 서버와 단말 간의 통신이 수행되도록 다양한 형태로 구현될 수 있다.
제1 영상 수요자(공모자, 공모전을 주최하거나 주최하고자 하는 의사가 있는 자)의 제1 영상 수요자 단말(100)은 영상 관리 시스템(300)은 통신망을 통하여 영상 제작자(응모자, 공모전에 응하여 응모작품을 출품하거나 출품하고자 하는 의사가 있는 자)의 영상 제작자 단말(200)과 서로 연결되고, 제2 영상 수요자(스톡 구매자)의 제2 영상 수요자 단말(400)은 통신망을 통하여 영상 관리 시스템(300)에 연결될 수 있다.
즉, 제1 영상 수요자(공모자)는 제1 영상 수요자 단말(100)을 통하여 공모전의 공모 사항을 영상 관리 시스템(300)에 올리게 되고, 영상 제작자(응모자)는 영상 제작자 단말(200)을 통하여 영상 관리 시스템(300)에 올라와 있는 공모전들을 검색하고 관리하며 영상을 제작하여 응모할 수 있다. 영상 관리 시스템(300)은 영상 제작자 단말(200)을 통하여 응모된 복수의 영상 컨텐츠(응모 영상)들 중 미선정 영상 컨텐츠를 영상 처리한 스톡을 제2 영상 수요자(400)를 통해 제2 영상 수요자에게 제공할 수 있다.
제1 영상 수요자 단말(100)은 영상제작 공모전을 통해 영상 컨텐츠를 제공받고자 하는 수요자(공모자)가 사용하는 단말로, 데스크탑 컴퓨터, 노트북, 태블릿, 스마트폰 등일 수 있다. 이에 제한되는 것은 아니나, 제1 영상 수요자 단말(100)은 데스크탑 컴퓨터, 노트북, 태블릿, 스마트폰 등일 수 있다.
제1 영상 수요자 단말(100)은 어플리케이션 프로그램 등의 실행에 따라 정보통신망을 통해 영상 관리 시스템(300)에 접속하여 공모전을 주최하는 등의 기능을 제공할 수 있다. 상기 기능을 구현하기 위해, 제1 영상 수요자 단말(100)은 영상 관리 시스템(300)과 통신을 수행하며, 공모전 관련 정보를 입력, 수신 및 표시하는 어플리케이션 프로그램이 기록된 장치로서 읽고 쓰기가 가능한 기록매체가 탑재될 수 있다.
영상 관리 시스템(300)은 제1 영상 수요자 단말(100)을 통해 개최된 영상 제작 공모전에 대한 정보를 영상 제작자 단말(200)로 제공하고, 영상 제작자 단말(200)을 통해 제공받은 공모 영상 컨텐츠 중 제1 영상 수요자로부터 선정되지 않은 영상 컨텐츠를 영상 처리 및 추출한 스톡을 제2 영상 수요자 단말(400)로 제공할 수 있다.
영상 관리 시스템(300)은 제1 영상 수요자 단말(100)로부터 입력된 공모전 정보 등을 저장 및 처리, 영상 제작자 단말(200) 및 제1 영상 수요자 단말(100)의 요청에 응답함에 따라 절차를 지연없이 처리하고, 미선정 영상 컨텐츠의 저장 및 영상 처리하기 위한 고성능의 프로세서 및 대용량의 저장공간을 가지는 서버 장치가 이용될 수 있다. 이에 제한되지 않고 영상 관리 시스템(300)은 상기 영상 관리 시스템(300)을 이용하여 서비스를 제공하는 자 내지 단체가 보유한 자체 서버일 수도 있고, 클라우드 서버일 수도 있고, 분산된 노드(node) 들의 p2p(peer-to-peer) 집합일 수도 있다.
영상 관리 시스템(300)은 통상의 컴퓨터가 가지는 연산 기능, 저장/참조 기능, 입출력 기능 및 제어 기능을 전부 또는 일부 수행하도록 구성될 수 있다. 영상 관리 시스템(300)은 추론 기능을 수행하는 적어도 하나 이상의 인공 신경망을 구비할 수 있다. 영상 관리 시스템(300)은 상술한 바와 같이, 제1 영상 수요자 단말(100), 영상 제작자 단말(200) 및 제2 영상 수요자 단말(400)과 유무선으로 통신하도록 구성될 수 있다.
영상 제작자 단말(200)은 영상 관리 시스템(300)을 이용하여 제1 영상 수요자가 주최한 공모전에 영상 컨텐츠를 제작하여 응모 작품으로 출품하려는 영상 제작자가 사용하는 단말로, 데스크탑 컴퓨터, 노트북, 태블릿, 스마트폰 등일 수 있다.
제2 영상 수요자 단말(400)은 스톡이 영상 관리 시스템(300)이 관리하는 판매 사이트에 업로드 된 경우, 판매 사이트를 통해 스톡을 구매하고자 하는 구매자(제2 영상 수요자)가 사용하는 단말로, 데스크탑 컴퓨터, 노트북, 태블릿, 스마트폰 등일 수 있다. 이에 제한되는 것은 아니나, 제2 영상 수요자 단말(400)은 스마트 폰일 수 있으며, 실시예에 따라 달리 채용될 수도 있다.
제1 영상 수요자 단말(100), 영상 제작자 단말(200) 및 제2 영상 수요자 단말(400)은 통상의 컴퓨터가 가지는 연산 기능, 저장/참조 기능, 입출력 기능 및 제어 기능을 전부 또는 일부 수행하도록 구성될 수 있다. 제1 영상 수요자 단말(100), 영상 제작자 단말(200) 및 제2 영상 수요자 단말(400)은 영상관리장치(200)와 유무선으로 통신하도록 구성될 수 있다.
제1 영상 수요자 단말(100), 영상 제작자 단말(200) 및 제2 영상 수요자 단말(400)은 영상 관리 시스템(300)을 이용하여 서비스를 제공하는 자 내지 단체가 운영하는 웹 사이트에 접속되거나, 영상 관리 시스템(300)을 이용하여 서비스를 제공하는 자 내지 단체가 개발·배포한 애플리케이션이 설치될 수 있다. 제1 영상 수요자 단말(100), 영상 제작자 단말(200) 및 제2 영상 수요자 단말(400)은 웹 사이트 또는 애플리케이션을 통해 영상 관리 시스템(300)과 연동될 수 있다.
도 2 일 실시예에 따른 영상 관리 시스템의 구성의 예시도이다.
도 2를 참조하면, 영상 관리 시스템(300)은 공모 중개 관리부(310) 및 영상 관리부(320)를 포함할 수 있다.
공모 중개 관리부(310)는 제1 영상 수요자 단말(100)과 영상 제작자 단말(200)과 각각 연결되어 상기 제1 영상 수요자 단말(100)과 영상 제작자 단말(200) 사이에서 영상 공모 중개를 관리하는 기능을 할 수 있다. 도면에는 도시하지 않았으나, 공모 중개 관리부(310)는 회원 관리부, 공모전 사이트 관리부, 응모 작품 관리부, 입출력부 등을 포함하여 제1 영상 수요자와 영상 제작자 사이의 영상 공모전을 중개하는 역할을 할 수 있다.
한편, 공모 중개 관리부(310)의 응모 작품 관리부는 응모자인 영상 제작자들이 올린 응모 작품을 관리하는 기능을 할 수 있다. 구체적으로, 응모 작품 관리부는 응모 작품의 접수 현황에 대한 정보를 공모자(영상 제작자)에게 제공하고, 응모 기간 도과 후 응모 작품을 한꺼번에 제1 영상 수요자에게 전송하며, 심사 결과를 영상 제작자에게 제공할 수 있다. 일 실시예에서, 공모 중개 관리부(310)의 응모 작품 관리부는 응모 기간 도과 후 영상 제작자로부터 제공받은 응모 작품(영상 컨텐츠) 중 미선정된 응모 작품을 영상 관리부(320)에 전송할 수 있다.
영상 관리부(320)는 공모 중개 관리부(310)로부터 미선정된 영상 컨텐츠들을 제공(획득)받고, 영상 관리부(320)는 공모 중개 관리부(310)로부터 제공받은 영상 컨텐츠를 저장 및 영상 처리하여 제2 영상 수요자 단말(400)에 제공할 수 있다.
구체적으로, 영상 관리부(320)는 상기 미선정된 영상 콘텐츠를 기초로, 텍스트 요소를 제거한 제1 파일을 생성하고, 제1 파일을 기초로 화면 전환 시점을 판단하여 프레임 단위의 이미지인 제2 파일을 생성하고, 제2 파일을 기초로 디자인 요소를 추출하여 제1 파일, 제2 파일, 디자인 요소를 스톡으로 분류하여, 스톡을 제2 영상 수요자 단말(400)로 제공할 수 있다.
또한, 영상 관리부(320)는 공모 중개 관리부(310)로부터 획득한 영상 콘텐츠를 통해 스톡을 추출하면, 추출된 스톡을 판매 사이트에 업로드할 수 있고, 해당 판매 사이트를 통해 스톡을 구매한 구매자의 구매 히스토리를 저장하여 구매자의 구매 히스토리를 기초로, 구매자가 구매할 가능성이 있는 스톡을 포함하는 리스트를 생성하여 제2 영상 수요자 단말(400)로 해당 리스트를 제공할 수 있다. 상기 구매자는 상술한 제2 영상 수요자일 수 있다. 이하, 본 명세서에서 '구매자'는 '제2 영상 수요자'로 지칭될 수도 있다.
본 발명에서, 인공지능(Artificial Intelligence, AI)은 인간의 학습능력, 추론능력, 지각능력 등을 모방하고, 이를 컴퓨터로 구현하는 기술을 의미하고, 기계 학습, 심볼릭 로직(Symbolic Logic) 등의 개념을 포함할 수 있다. 기계 학습(Machine Learning, ML)은 입력 데이터들의 특징을 스스로 분류 또는 학습하는 알고리즘 기술이다. 인공지능의 기술은 기계 학습의 알고리즘으로써 입력 데이터를 분석하고, 그 분석의 결과를 학습하며, 그 학습의 결과에 기초하여 판단이나 예측을 할 수 있다. 또한, 기계 학습의 알고리즘을 활용하여 인간 두뇌의 인지, 판단 등의 기능을 모사하는 기술들 역시 인공지능의 범주로 이해될 수 있다. 예를 들어, 언어적 이해, 시각적 이해, 추론/예측, 지식 표현, 동작 제어 등의 기 술 분야가 포함될 수 있다.
기계 학습은 데이터를 처리한 경험을 이용해 신경망 모델을 훈련시키는 처리를 의미할 수 있다. 기계 학습을 통해 컴퓨터 소프트웨어는 스스로 데이터 처리 능력을 향상시키는 것을 의미할 수 있다. 신경망 모델은 데이터 사이의 상관 관계를 모델링하여 구축된 것으로서, 그 상관 관계는 복수의 파라미터에 의해 표현될 수 있다. 신경망 모델은 주어진 데이터로부터 특징들을 추출하고 분석하여 데이터 간의 상관 관계를 도출하는 데, 이러한 과정을 반복하여 신경망 모델의 파라미터를 최적화해 나가는 것이 기계 학습이라고 할 수 있다. 예를 들어, 신경망 모델은 입출력 쌍으로 주어지는 데이터에 대하여, 입력과 출력 사이의 매핑(상관 관계)을 학습할 수 있다. 또는, 신경망 모델은 입력 데이터만 주어지는 경우에도 주 어진 데이터 사이의 규칙성을 도출하여 그 관계를 학습할 수도 있다.
인공지능 학습모델 또는 신경망 모델은 인간의 뇌 구조를 컴퓨터 상에서 구현하도록 설계될 수 있으며, 인간의 신경망의 뉴런(neuron)을 모의하며 가중치를 가지는 복수의 네트워크 노드들을 포함할 수 있다. 복수의 네트워크 노드 들은 뉴런이 시냅스(synapse)를 통하여 신호를 주고받는 뉴런의 시냅틱(synaptic) 활동을 모의하여, 서로 간의 연결 관계를 가질 수 있다. 인공지능 학습모델에서 복수의 네트워크 노드들은 서로 다른 깊이의 레이어에 위치하면서 컨볼루션 (convolution) 연결 관계에 따라 데이터를 주고받을 수 있다. 인공지능 학습모델 은, 예를 들어, 인공 신경망 모델(Artificial Neural Network), 컨볼루션 신경망 모델(Convolution Neural Network: CNN) 등일 수 있다. 일 실시예로서, 인공지능 학습모델은, 지도학습(Supervised Learning), 비지도 학습(Unsupervised Learning), 강화 학습(Reinforcement Learning) 등의 방식에 따라 기계 학습될 수 있다. 기계 학습을 수행하기 위한 기계 학습 알고리즘에는, 의사결정트리 (Decision Tree), 베이지안 망(Bayesian Network), 서포트 벡터 머신(Support Vector Machine), 인공 신경망(Artificial Neural Network), 에이다부스트(Ada- boost), 퍼셉트론(Perceptron), 유전자 프로그래밍(Genetic Programming), 군집화(Clustering) 등이 사용될 수 있다.
이중, CNN은 최소한의 전처리(preprocess)를 사용하도록 설계된 다계층 퍼셉트론(multilayer perceptrons)의 한 종류이다. CNN은 하나 또는 여러 개의 합성곱 계층과 그 위에 올려진 일반적인 인공 신경망 계층들로 이루어져 있으며, 가중치와 통합 계층(pooling layer)들을 추가로 활용한다. 이러한 구조 덕분에 CNN은 2차원 구조의 입력 데이터를 충분히 활용할 수 있다. 다른 딥러닝 구조들과 비교해서, CNN은 영상, 음성 분야 모두에서 좋은 성능을 보여준다. CNN 은 또한 표준 역전달을 통해 훈련될 수 있다. CNN은 다른 피드포워드 인공신경망 기법들보다 쉽게 훈련되는 편이고 적은 수의 매개변수를 사용한다는 이점이 있다.
컨볼루션 네트워크는 묶인 파라미터들을 가지는 노드들의 집합들을 포함하는 신경 네트워크들이다. 사용 가능한 트레이닝 데이터의 크기 증가와 연산 능력의 가용성이, 구분적 선형 단위 및 드롭아웃 트레이닝과 같은 알고리즘 발전과 결합되어, 많은 컴퓨터 비전 작업들이 크게 개선되었다. 오늘날 많은 작업에 사용할 수 있는 데이터 세트들과 같은 엄청난 양의 데이터 세트에서는 초과 맞춤 (outfitting)이 중요하지 않으며, 네트워크의 크기를 늘리면 테스트 정확도가 향상된다. 컴퓨팅 리소스들의 최적 사용은 제한 요소가 된다. 이를 위해, 심층 신경 네트워크들의 분산된, 확장 가능한 구현예가 사용될 수 있다.
도 3은 본 발명의 일 실시예에 따른 영상 제공 시스템의 제1 영상 수요자 단말, 제2 영상 수요자 단말, 영상 제작자 단말 및 영상 관리 시스템 사이의 신호 및 데이터 송수신 과정을 개략적으로 도시한 도면이다.
도 3을 참조하면, 일 실시예에 따른 영상 제공 시스템에서는, 영상 관리 시스템(300)을 통해 공모전 주최를 희망하는 제1 영상 수요자(즉, 공모자)에게 공모전 주최 권한을 부여할 수 있다.
공모전 주최 권한의 부여 이후, 공모자는 제1 영상 수요자 단말(100)을 통해 영상 콘텐츠 공모전을 주최할 수 있으며, 주최된 공모전은 영상 관리 시스템(300)을 통해 제1 영상 수요자 단말(100) 및 영상 제작자 단말(200)에서 확인 가능하도록 개제될 수 있다.
게재된 영상 콘텐츠 공모전에 응모하고자 하는 영상 제작자(즉, 응모자)는 영상 제작자 단말(200)을 통해 영상 제작 공모전에 응모할 수 있다. 한편, 도 3에서는 단일 공모전을 단일 공모자가 주최하고, 단일 응모자가 응모하는 것을 도시하는 것으로 설명하고 있으나, 공모전의 취지상 단일 공모전에 대하여는 복수의 응모자가 존재할 수 있음은 물론이다.
응모자는 공모전에 게재된 공모 기한 내에 영상 컨텐츠 제작을 완료하고, 완료된 영상 컨텐츠를 영상 관리 시스템(300)에 업로드함으로써 영상 제작 공모전에 응모할 수 있다. 응모자에 의해 업로드된 영상(즉, 응모작)은 영상 관리 시스템(300)을 거쳐 제1 영상 수요자 단말(200)을 통해 공모자에게 전달될 수 있다.
구체적으로, 복수의 응모자들에 의해 업로드 된 복수의 영상 컨텐츠(복수의 응모작)는 공모 중개 관리부(310)의 응모 작품 관리부에 가공 저장되며, 응모 기한 후에 응모작 가공본들을 공모자에게 한꺼번에 전달될 수 있다. 상기 공모 중개 관리부(310)에서 수행되는 가공은 응모 작품에 공모전 제작 영상임을 알리는 문구 및 공모전을 주최한 공모자를 식별할 수 있는 문구 등을 추가하는 가공일 수 있으며, 공모자가 응모작을 편법에 의해 탈취 및 사용할 가능성을 방지하기 위함일 수 있다.
이어, 공모자는 제1 영상 수요자 단말(100)을 통해 응모작 가공본들을 제공받을 수 있으며, 응모작 가공본들 중 수상작을 선정할 수 있다. 선정된 수상작에 대한 정보는 영상 관리 시스템(300)에 전달되며, 공모자는 제1 영상 수요자 단말(100)을 통해 상금을 영상 관리 시스템(300)에 지급할 수 있다.
공모자가 영상 관리 시스템(300)에 상금 지급이 완료된 경우, 상기 수상작 원본 영상을 공모자에게 전달하고, 상금은 수상자에게 지급할 수 있다.
이어, 공모 기한이 만료된 후, 영상 관리 시스템(300)은 응모 작품들 중 수상작을 제외한 영상 컨텐츠를 영상 처리를 통해 스톡을 추출하여 제2 영상 수요자(스톡 구매자)에게 상기 스톡 리스트를 제공할 수 있다. 제2 영상 수요자는 제2 영상 수요자 단말(400)을 통해 상기 스톡 리스트를 제공받고 구매하고자 하는 스톡을 구매할 수 있다.
구체적으로, 영상 관리 시스템(300)의 영상 관리부(320)는 공모 중개 관리부(310)로부터 미선정된 응모 작품(미선정된 영상 컨텐츠)을 전달받아, 상기 미선정 응모 작품을 인공 지능 기반으로 영상 처리하여 스톡을 추출할 수 있다.
이하, 영상 관리 시스템(300)의 영상 관리부(320)에서 상기 미선정된 영상 컨텐츠(미선정된 응모 작품)를 인공지능 기반으로 영상 처리하여 스톡 이미지를 추출하는 방법에 대하여 상세히 설명하기로 한다.
도 4는 일 실시예에 따른 영상 관리부에서 미선정된 영상 컨텐츠로부터 인공지능 기반 스톡 이미지를 자동으로 추출하는 과정을 설명하기 위한 순서도이다.
도 4를 참조하면, 영상 관리부(320)에서 미선정된 영상 컨텐츠로부터 인공지능 기반 스톡 이미지를 자동으로 추출하는 과정은 공모 중개 관리부(310)로부터 미선정된 영상 컨텐츠를 획득하는 단계(S100), 상기 획득된 영상 컨텐츠를 기초로 텍스트 요소를 제거한 제1 파일을 생성하는 단계(S200), 상기 제1 파일을 기초로 화면 전화 시점을 판단하여 프레임 단위의 이미지인 제2 파일을 생성하는 단계(S300), 상기 제2 파일을 기초로 디자인 요소를 추출하는 단계(S400) 및 제1 파일, 제2 파일 및 디자인 요소를 포함하는 스톡 리스트를 제2 영상 수요자 단말에 제공하는 단게(S500)를 포함할 수 있다.
먼저, 영상 관리 시스템(300)의 영상 관리부(320)는 공모 중개 관리부(310)로부터 공모전에서 미선정된 영상 콘텐츠를 획득할 수 있다. (S100 단계) 여기서, 영상 콘텐츠의 확장자는 AVI MP4 mkv WMV MOV FLV. 를 포함할 수 있다.
구체적으로, 영상 관리 시스템(300)의 공모 중개 관리부(310)는 영상 제작자 단말(200)로부터 AVI MP4 mkv WMV MOV FLV.중 하나의 확장자를 포함하는 영상 콘텐츠를 제공받고, 상기 예시적인 확장자를 포함하는 미선정된 영상 콘텐츠를 영상 관리부(320)에 제공할 수 있다.
이어, 영상 관리 시스템(300)의 영상 관리부(320)는 상기 영상 콘텐츠를 기초로 텍스트 요소를 제거한 제1 파일을 생성할 수 있다. (S200 단계)
구체적으로, 영상 관리부(320)는 공모 중개 관리부(310)로부터 전달받을 영상 콘텐츠에서 텍스트 영역을 탐지(Detection)하고, 텍스트 영역이 탐지된 경우 텍스트 영역 내의 텍스트 요소를 제거할 수 있다. 이어, 상기 텍스트 영역 내에서 제거된 텍스트 요소와 대응되는 영역을 인공 신경망을 통해 메꾸어 수정된 영상 콘텐츠를 제1 파일로 생성할 수 있다.
이와 관련한 구체적인 설명은 도 5 및 도 6을 참조하여 후술하기로 한다.
이어, 영상 관리부(320)는 상기 제1 파일을 기초로, 화면 전환 시점을 판단하여 프레임 단위의 이미지인 제2 파일을 생성할 수 있다. (S300 단계)
구체적으로, 영상 관리부(320)는 제1 파일에서 미리 설정된 주기마다 프레임을 추출하여 추출된 프레임을 기초로, A 프레임과 A 프레임 다음에 추출된 B 프레임을 획득할 수 있고, A 프레임과 B 프레임 간의 유사도를 분석하여, 유사도를 기초로 화면이 전환되었는지 여부를 판단할 수 있다. 영상 관리부(320)는 A 프레임과 B 프레임 간의 유사도를 기초로 화면이 전환되었다고 판단하면, A 프레임과 B 프레임을 유지하고, 화면이 전환되지 않았다고 판단하면, A 프레임을 유지하고, B 프레임은 삭제할 수 있다. 또한, 영상 관리부(320)는 A 프레임과 B 프레임 중 적어도 하나를 포함시켜 제2 파일을 생성할 수 있다. 상기 미리 설정된 주기는 하기의 수학식 1에 따라 결정될 수 있으며, 이에 따라 다양한 영상을 보다 효율적으로 씬체인지 여부를 검출할 수 있게 된다.
(여기서, 상기 T는 미리 설정된 주기[초], 상기 S는 상기 미선정 영상 컨텐츠의 영상 길이[초], 상기 P는 상기 미선정 영상 컨텐츠의 화소(pixel)수[ea], 상기 C는 상기 미선정 영상 컨텐츠의 색심도(Color depth)[bit], 상기 F는 상기 미선정 영상 컨텐츠의 프레임레이트[fps], 상기 a는 가중치상수를 나타낸다.)
이어, 영상 관리부(320)는 제2 파일을 기초로, 디자인 요소를 추출할 수 있다. (S400 단계)
구체적으로, 영상 관리부(320)는 제2 파일을 인공신경망에 적용하여 디자인 요소가 존재하는지 확인하고, 디자인 요소가 존재하는 것에 기반하여 디자인 요소의 경계를 이용하여 디자인 요소를 추출할 수 있다.
이와 관련한 구체적인 설명은 도 8을 참조하여 후술하기로 한다.
이어, 영상 관리부(320)는 제1 파일, 제2 파일 및 디자인 요소를 스톡으로 분류하고 상기 스톡 이미지를 제2 영상 수요자의 단말로 제공할 수 있다. (S500 단계)
즉, 영상 관리부(320)는 영상 콘텐츠를 통해 획득한 비디오 클립 형식의 제1 파일, 제1 파일을 통해 획득한 이미지 형식의 제2 파일, 제2 파일을 통해 획득한 객체 형식의 디자인 요소를 스톡으로 분류할 수 있다.
이어, 영상 관리부(320)는 상기 분류된 스톡 리스트를 제2 영상 수요자 단말(400)로 제공할 수 있다. 영상 관리부(320)가 제공하는 스톡은 상술한 텍스트 요소가 제거된 제1 파일, 제1 파일로부터 획득한 제2 파일, 제2 파일을 통해 획득한 객체 형식의 디자인 요소를 포함하는 스톡일 수 있다.
도 5는 일실시예에 따른 영상 콘텐츠의 텍스트 요소를 제거하여 스톡을 생성하는 과정을 설명하기 위한 순서도이다. 도 6은 일 실시예에 따른 Open CV 및 제1 인공 신경망을 이용하여 추출된 프레임에 대하여 텍스트 요소가 포함된 텍스트 영역을 탐지하는 과정을 설명하기 위한 순서도이다.
도 5 및 도 6을 참조하면, 영상 컨텐츠를 기초로 텍스트 요소를 제거한 제1 파일을 생성하는 단계(S200)는 영상 콘텐츠를 기초로, 제1 주기마다 프레임을 추출하는 단계(S210), Open CV 라이브러리 및 제1 인공 신경망을 이용하여 추출된 프레임에 대하여 텍스트 요소가 포함된 텍스트 영역을 탐지하는 단계(S220), 추출된 프레임에 포함된 텍스트 요소를 제거하는 단계(S230), 제2 인공 신경망을 이용하여 추출된 프레임을 참조하여 텍스트 요소가 제거된 영역을 채워 수정 프레임을 생성하는 단계(S240) 및 추출된 프레임을 상기 수정 프레임으로 대체하여 제1 파일을 생성하는 단계(S250)를 포함할 수 있다.
구체적으로, 먼저, 영상 관리부(320)는 영상 콘텐츠를 기초로 제1 주기마다 프레임을 추출할 수 있다. (S210 단계) 여기서, 제1 주기는 미리 설정된 주기로 실시예에 따라 달라질 수 있다.
이어, 영상 관리부(320)는 추출된 프레임에 대하여 텍스트 요소가 포함된 텍스트 영역을 탐지할 수 있다. (S220 단계) 일 실시예에서, 상기 S220 단계는 Open CV(Open source computer vision, 공개 소스 컴퓨터 비전) 라이브러리(이하, Open CV라 지칭함) 및 제1 인공 신경망을 이용하여 텍스트 영역을 탐지할 수 있다. (S220 단계)
일 실시예에서, 상기 텍스트 요소가 포함된 텍스트 영역을 탐지하는 단계(S220)는 Open CV를 이용하여 추출된 프레임을 그레이 스케일 프레임으로 변환하는 단계(S221), Open CV를 이용하여 상기 그레이 스케일 프레임에서 경계선을 검출하는 단계(S222), Open CV를 이용하여 상기 경계선을 근사화하는 단계(S223), 및 제1 인공 신경망을 이용하여 상기 경계선이 근사화된 그레이 스케일 프레임에서 텍스트 후보 영역을 추출하는 단계(S224)를 포함할 수 있다.
구체적으로, Open CV를 이용하여 추출된 프레임을 그레이 스케일 프레임으로 변환하는 단계(S221)는 OpenCV의 'grayscale()'함수를 이용하여 추출된 프레임을 그레이 스케일(Gray scale) 프레임으로 변환하고, CV를 이용하여 상기 그레이 스케일 프레임에서 경계선을 검출하는 단계(S222)는 OpenCV의 'findContour()' 함수를 이용하여 상기 그레이 스케일 프레임에서 경계선을 검출하며, Open CV를 이용하여 상기 경계선을 근사화하는 단계(S223)는 OpenCV의 'approxPolyDP()' 함수를 이용하여 상기 경계선을 근사화할 수 있다.
Open CV의 'grayscale()'함수를 이용하여 추출된 프레임을 그레이 스케일(Gray scale) 프레임으로 변환하는 단계(S221)는 추출된 프레임의 RGB 값을 그레이 스케일의 값으로 변경하는 단계일 수 있다.
OpenCV의 'approxPolyDP()' 함수를 이용하여 상기 경계선을 근사화하는 단계(S223)는 S322 단계에서 검출된 경계선을 근사화하여 상기 그레이 스케일 프레임에서 텍스트 요소가 포함되는 적어도 하나의 후보 영역을 추출할 수 있다.
이어, 그레이 스케일 프레임에서 경계선이 근사화된 프레임은 제1 인공 신경망으로 입력되어 상기 후보 영역에 텍스트가 포함되어 있는지 확인할 수 있다. (S224 단계) 이 때, 제1 인공 신경망은 합성곱 신경망(CNN; convolutional neural network)을 포함할 수 있다.
일 실시예에 따르면, 제1 인공 신경망은 합성곱 신경망으로 구현되어, 컨볼루션 신경망은 특징 추출 신경망과 분류 신경망으로 구성되어 있으며, 특징 추출 신경망은 입력 신호를 컨볼루션 계층과 풀링 계층을 차례로 쌓아 진행한다. 컨볼루션 계층은 컨볼루션 연산, 컨볼루션 필터 및 활성함수를 포함하고 있다. 컨볼루션 필터의 계산은 대상 입력의 행렬 크기에 따라 조절되나 일반적으 로 9X9 행렬을 사용한다. 활성 함수는 일반적으로 ReLU 함수, 시그모이드 함수, 및 tanh 함수 등을 사용하나 이에 한정하지 않는다. 풀링 계층은 입력의 행렬 크기를 줄이는 역할을 하는 계층으로, 특정 영역의 픽셀을 묶어 대표값을 추출하는 방식을 사용한다. 풀링 계층의 연산에는 일반적으로 평균값이나 최댓값을 많이 사용하나 이에 한정하지 않는다. 해당 연산은 정방 행렬을 사용하여 진행되는데, 일반적으로 9X9 행렬을 사용한다. 컨볼루션 계층과 풀링 계층은 해당 입력이 차이를 유지한 상태에서 충분히 작아질 때까지 번갈아 반복 진행된다.
일실시예에 따르면, 분류 신경망은 은닉층과 출력층을 가지고 있다. 인공지능 기반 스톡 이미지 자동 추출 방법을 위한 컨볼루션 신경망에서는 일반적으로 은닉층이 3개 이상 존재하며, 각 은닉층의 노드는 100개로 지정하나 경우에 따라 그 이상으로 정할 수 있다. 은닉층의 활성함수는 ReLU 함수, 시그모이드 함수 및 tanh 함수 등을 사용하나 이에 한정하지 않는다. 컨볼루션 신경망의 출력층 노드는 총 50개로 할 수 있다.
제1 인공 신경망은 제1 학습 장치에 의해 학습되며, 제1 학습 장치는 프레임에 포함된 텍스트 객체의 인식을 위하여 제1 인공 신경망을 학습시킬 수 있다. 일 실시예에 따르면, 제1 학습 장치는 영상관리장치(200)와 다른 별개의 주체일 수 있지만, 이에 제한되는 것은 아니다.
제1 인공 신경망은 트레이닝 샘플들이 입력되는 입력 레이어와 트레이닝 출력들을 출력하는 출력 레이어를 포함하고, 트레이닝 출력들과 레이블들 사이의 차이에 기초하여 학습될 수 있다. 여기서, 레이블들은 텍스트 객체에 대응하는 글꼴 정보에 기초하여 정의될 수 있다. 제1 인공 신경망은 복수의 노드들의 그룹으로 연결되어 있고, 연결된 노드들 사이의 가중치들과 노드들을 활성화시키는 활성화 함수에 의해 정의된다.
제1 학습 장치는 GD(Gradient Decent) 기법 또는 SGD(Stochastic Gradient Descent) 기법을 이용하여 제1 인공 신경망을 학습시킬 수 있다. 제1 학습 장치는 뉴럴 네트워크의 출력들 및 레이블들 의해 설계된 손실 함수(Loss Function)를 이용할 수 있다.
제1 학습 장치는 미리 정의된 손실 함수를 이용하여 트레이닝 에러를 계산할 수 있다. 손실 함수는 레이블, 출력 및 파라미터를 입력 변수로 미리 정의될 수 있고, 여기서 파라미터는 제1 인공 신경망 내 가중치들에 의해 설정될 수 있다. 예를 들어, 손실 함수는 MSE(Mean Square Error) 형태, 엔트로피 (entropy) 형태 등으로 설계될 수 있는데, 손실 함수가 설계되는 실시예에는 다양한 기법 또는 방식이 채용될 수 있다.
제1 학습 장치는 역전파(Backpropagation) 기법을 이용하여 트레이닝 에러에 영향을 주는 가중치들을 찾아낼 수 있다. 여기서, 가중치들은 제1 인공 신경망 내 노드들 사이의 관계들이다. 제1 학습 장치는 역전파 기법을 통해 찾아 낸 가중치들을 최적화시키기 위해 레이블들 및 출력들을 이용한 SGD 기법을 이용할 수 있다. 예를 들어, 학습 장치는 레이블들, 출력들 및 가중치들에 기초하여 정의된 손실 함수의 가중치들을 SGD 기법을 이용하여 갱신할 수 있다.
일 실시예에 따르면, 제1 학습 장치는 트레이닝 프레임들을 획득하고, 트레이닝 프레임들로부터 트레이닝 텍스트 객체들을 추출할 수 있다. 제1 학습 장치는 트레이닝 텍스트 객체들에 대해서 각각 미리 레이블링된 정보(제1 레이 블들)를 획득할 수 있는데, 트레이닝 텍스트 객체들에 미리 정의된 글꼴 정보 나타내는 제1 레이블들을 획득할 수 있다.
일 실시예에 따르면, 제1 학습 장치는 트레이닝 텍스트 객체들의 외관 특징들, 패턴 특징들 및 색상 특징들에 기초하여 제1 트레이닝 특징 벡터들을 생성할 수 있다. 특징을 추출하는 데는 다양한 방식이 채용될 수 있다.
일 실시예에 따르면, 제1 학습 장치는 제1 트레이닝 특징 벡터들을 제1 인공 신경망에 적용하여 트레이닝 출력들을 획득할 수 있다. 제1 학습 장치는 트레이닝 출력들과 제1 레이블들에 기초하여 제1 인공 신경망을 학습시킬 수 있다. 제1 학습 장치는 트레이닝 출력들에 대응하는 트레이닝 에러들을 계산하고, 그 트레이닝 에러들을 최소화하기 위해 제1 인공 신경망 내 노드들의 연결 관계를 최적 화하여 제1 인공 신경망을 학습시킬 수 있다. 영상 관리부(320)는 학습이 완료된 제1 인공 신경망을 이용하여 프레임에 포함된 텍스트 객체를 인식할 수 있다.
이어, 영상 관리부(320)는 추출된 프레임에 포함된 텍스트 요소를 제거할 수 있다. (S230 단계)
구체적으로, 영상 관리부(320)는 제1 인공 신경망 및 Open CV를 이용하여 추출된 프레임에 텍스트 요소가 포함되어 있는지 여부를 탐지하고, 추출된 프레임에 텍스트 요소가 포함되어 있다고 판단하면, 추출된 프레임 내에 검출된 텍스트 요소를 제거할 수 있다.
이어, 영상 관리부(320)는 제2 인공 신경망을 이용하여 추출된 프레임을 참조하여 텍스트 요소가 제거된 부분을 채워 수정 프레임을 생성할 수 있다. (S240 단계)
여기서, 제2 인공 신경망은 WGAN(Wasserstein Generative Adversarial Network) 또는 적대적 생성 신경망(GAN; generation adversarial network)을 포함할 수 있다.
몇몇 실시예에 따르면, 제2 인공 신경망은 GAN(Generative Adversarial Network, 적대적 생성 신경망)으로 구현되며, 적대적 생성 신경망은 이미지를 생성하는 생성자(Generator)와 생성자가 만든 이미지의 진위여부를 판별하는 판별자 (Discriminator)를 두고 비지도학습 방법인 적대적 학습법(adversarial training)을 진행하여 생성자가 만든 이미지가 판별자의 판별 정확도를 절반가량으로 낮춰 생성자가 실제 이미지와 구분이 어려운 이미지를 만들어내도록 하는 알고리즘이다.
GAN은 한 개의 인공 신경망을 학습시켜서 활용하는 기존의 방법과는 다르게 두 개의 인공 신경망을 활용한다. 하나는 이미지를 생성하는 생성 (Generative) 신경망, 다른 하나는 생성 신경망이 만든 이미지를 진짜인지, 가짜인 지 판별하는 판별(Discriminative) 신경망이다. 생성 신경망은 판별 신경망이 자신 이 만든 이미지를 진짜 이미지로 판별하도록 학습되어야 하고, 판별 신경망은 생성 신경망이 만든 이미지가 입력으로 들어오면 가짜라고 판별하고 실제 이미지가 입력으로 들어오면 진짜라고 판별하도록 학습되어야 한다. 따라서 이 두 개의 신경망은 서로 적대적인 관계에 있으므로 이를 학습시키는 방법을 이른바 adversarial training이라고 한다.
학습의 방향은 생성 신경망과 판별 신경망이 서로 반대가 된다. 생성 신경망은 자신이 만든 최종 결과가 판별 신경망이 진짜 이미지라고 판별하도록 학습 방향이 진행되고, 판별 신경망은 반대로 생성 신경망이 만든 결과가 가짜 이 미지라고 판별하도록 학습 방향이 진행되게 된다. 이러한 adversarial training이 충분히 진행되면 최종적으로는, 판별 신경망이 생성 신경망이 만든 이미지가 진짜 인지 가짜인지를 알아맞히게 되는 확률이 약 50%가 되고, 따라서 생성 신경망이 만든 이미지는 진짜와 거의 구분되지 않는 이미지가 된다.
다른 몇몇 실시예에 따르면, 제2 인공 신경망은 WGAN(Wasserstein GAN)으로 구현되며, 구체적으로 WGAN-GP(WGAN-gredient penalty)로 구현될 수 있다.
WGAN은 GAN에서의 BCE loss 문제(예컨대, mode collapse, vanishing gradient)를 개선하기 위해 새로운 loss인 Wasserstein loss를 사용하며 상기 새로운 loss를 사용하는 비평자(Critic)를 더 포함한 GAN의 변형 신경망일 수 있다. WGAN-GP는 WGAN의 향상된 알고리즘으로 k-Lipschitz constraints를 적용하기 위한 패널티항을 추가한 알고리즘일 수 있다. WGAN-GP의 손실 함수(LWGAN-GP)는 다음 수학식 2와 같고, 제2 인공 신경망은 하기의 손실 함수(LWGAN-GP)가 최소가 되도록 반복 학습을 할 수 있다.
여기서 E는 주어진 분포에서 기대되는 값이고,“~”기호는 이 분포에서 얻은 표본을 의미하며,  생성 된 데이터를 나타낸다. 그리고 Pg 생성된 데이터의 분포, x and Pr실제 데이터를 나타내며, λ 파라미터는 10으로 설정된다. 는 임의로 보간 된 값으로 0에서 1까지의 균일한 샘플링과 가중치 합계로 구현된다. 그리고 D는 판별 네트워크로, 실제 또는 가짜 값을 결정하는데 사용하는 로직 함수를 나타낸다.
한편, 수학식 2에서 첫번째와 두번째 항은 생성된 데이터와 실제 데이터 분포 사이의 Wasserstein 거리를 최소화하여 네트워크가 실제 데이터 분포 사이의 보다 현실적인 샘플을 생성하도록 한다. 마지막 항은 텐서플로(Tensorflow)에서 자동 차별화를 사용하여 구현되는 에 대한 로직함수의 기울기를 계산하여 1-Lipschitz 제약을 구현한다.
영상 관리부(320)는 텍스트 요소가 제거된 프레임을 제2 인공 신경망인 적대적 생성 신경망에 적용하여 텍스트 요소가 제거된 부분을 채워 수정 프레임을 생성할 수 있다.
이어, 영상 관리부(320)는 추출된 프레임을 수정 프레임으로 대체하여 제1 파일을 생성할 수 있다. (S250 단계)
구체적으로, 영상 관리부(200)는 영상 콘텐츠를 통해 프레임을 추출하고, Open CV 라이브러리 및 합성곱 신경망을 통해 텍스트 요소를 탐지 및 제거하고, 적대적 신경망을 통 해 텍스트 요소가 제거된 부분을 수정하고, 기존의 추출된 프레임을 상기 과정을 통해 수정된 프레임으로 대체하여 제1 파일을 생성할 수 있다.
즉, 영상 관리부(200)는 텍스트 요소가 제거된 제1 파일을 생성하여 스톡으로 생성할 수 있다.
도 7은 일 실시예에 따른 화면 전환 시점을 판단하여 스톡을 생성하는 과정을 설명하기 위한 순서도이다.
도 7을 참조하면, 제1 파일을 기초로 화면 전화 시점을 판단하여 프레임 단위의 이미지인 제2 파일을 생성하는 단계(S300)는 영상 관리부(320)는 제1 파일에서 제2 주기마다 프레임을 추출하는 단계(S310), 추출된 프레임에 포함된 A 프레임과 A 프레임 다음으로 추출된 B 프레임을 획득하는 단계(S320), A 프레임에 대응하는 제1 잠재 벡터 값을 획득할 수 있고, B 프레임에 대응하는 제2 잠재 벡터 값을 획득하는 단계(S330), 제1 잠재 벡터 값과 제2 잠재 벡터 값을 기초로, A 프레임과 B 프레임 간의 코사인 유사도를 분석하는 단계(S340)를 포함할 수 있다.
상기 제1 파일을 기초로 화면 전환 시점을 판단하여 프레임 단위의 이미지인 제2 파일을 생성하는 단계는 인공 신경망을 이용하여 수행될 수 있다. 상기 화면 전환 시점을 판단하는 단계에서 이용되는 인공 신경망은 합성곱 신경망(CNN; convolutional neural network)을 포함할 수 있다.
상기 화면 전환 시점을 판단하는 인공 신경망은 합성곱 신경망(CNN)이고, 상기 인공 신경망은 CSPNet(Cross Stage Partial Network) 기법을 이용하여 학습 장치에 의해 학습될 수 있다.
먼저, S310 단계에서, 영상 관리부(320)는 제1 파일에서 제2 주기마다 프레임을 추출할 수 있다. 여기서, 제2 주기는 미리 설정된 주기로 실시예에 따라 달라질 수 있다. 구체적으로, 영상 관리부(320)는 제1 파일에서 미리 설정된 제2 주기마다 스톡으로 사용하고자 하는 프레임을 추출할 수 있다. 예를 들어, 제2 주기를 설정하는 방법은 프레임이 많이 바뀌는 다채로운 프로그램일 경우, 프레임이 적게 바뀌는 단조로운 프로그램보다 주기를 짧게 하여 많은 프레임 샘플들을 추출할 수 있다.
이어, S320 단계에서, 영상 관리부(320)는 추출된 프레임에 포함된 A 프레임과 A 프레임 다음으로 추출된 B 프레임을 획득할 수 있다
예를 들어, 제1 파일을 통해 제2 주기마다 프레임을 추출하여 A 프레임, B 프레임, C 프레임, D 프레임, E 프레임, F 프레임, G 프레임이 추출된 경우, 영상관리장치(200)는 추출된 프레임에 포함된 A 프레임과 A 프레임 다음으로 추출된 B 프레임을 획득할 수 있다.
이어, S330 단계에서, 영상 관리부(320)는 A 프레임에 대응하는 제1 잠재 벡터 값을 획득할 수 있고, B 프레임에 대응하는 제2 잠재 벡터 값을 획득할 수 있다.
구체적으로, 영상 관리부(320)는 A 프레임과 B 프레임 간의 유사도를 확인하여 화면 전환이 있었는 지 판단하기 위해 A 프레임에 대응하는 제1 잠재 벡터 값과, B 프레임에 대응하는 제2 잠재 벡터 값을 획득할 수 있다.
S340 단계에서, 영상 관리부(320)는 제1 잠재 벡터 값과 제2 잠재 벡터 값을 기초로, A 프레임과 B 프레임 간의 코사인 유사도를 분석할 수 있다. 여기서, 코사인 유사도는 두 벡터 간의 코사인 각도를 이용하여 구할 수 있는 두 벡터의 유사도를 의미할 수 있다. 두 벡터의 방향이 완전히 동일한 경우에는 1의 값을 가지며, 90°의 각을 이루면 0, 180°로 반대의 방향을 가지면 -1의 값을 갖게 됩니다. 즉, 결국 코사인 유사도는 -1 이상 1 이하의 값을 가지며 값이 1에 가까울수록 유사도가 높다고 판단할 수 있다. 이를 직관적으로 이해하면 두 벡터가 가리키는 방향이 얼마나 유사한가를 의미할 수 있다.
구체적으로, 영상 관리부(320)는 A 프레임과 B 프레임 간의 유사도를 확인하여 화면 전환이 있었는지 판단하기 위해 A 프레임에 대응하는 제1 잠재 벡터 값과, B 프레임에 대응하는 제2 잠재 벡터 값을 획득할 수 있고, 획득한 제1 잠재 벡터 값과 제2 잠재 벡터 값을 기초로, A 프레임과 B 프레임 간의 코사인 유사도를 생성할 수 있다.
S350 단계에서, 영상 관리부(320)는 A 프레임과 B 프레임 간의 코사인 유사도가 기준 값보다 큰 지 여부를 판단할 수 있다. 여기서 기준 값은 미리 설정된 값으로 실시예에 따라 달라질 수 있다.
S350 단계에서 A 프레임과 B 프레임 간의 코사인 유사도가 기준 값보다 크다고 판단되면, S360 단계에서, 영상 관리부(320)는 A 프레임과 B 프레임 간의 화면 전환이 되지 않았다고 판단하고, 추출된 프레임 내에서 A 프레임을 유지하고 B 프레임을 제거할 수 있다.
S350 단계에서 A 프레임과 B 프레임 간의 코사인 유사도가 기준값 보다 크지 않다고 판단되면, S360 단계에서, 영상 관리부(320)는 A 프레임과 B 프레임 간의 화면 전환이 되었다고 판단하고, 추출된 프레임 내에서 A 프레임 및 B프레임을 모두 유지할 수 있다.
또한, 영상 관리부(320)는 이와 같이 추출된 프레임 내에서 제거된 프레임을 제외하고, 유지된 프레임을 포함시켜 제2 파일을 생성할 수 있다.
도 8은 일실시예에 따른 디자인 요소를 추출하여 스톡을 생성하는 과정을 설명하기 위한 순서도이다.
도 4 및 도 8을 참조하면, 영상 관리부(320)는 제2 파일을 기초로 디자인 요소가 존재하는 지 여부를 확인하고 추출할 수 있다. (S400 단계) 일 실시예에서, 제2 파일을 기초로 디자인 요소가 존재하는 지 여부를 확인하고 추출하는 단계(S400)는 Open CV 및 제3 인공 신경망을 이용하여 노이즈 제거 및 경계선 검출을 통해 디자인 요소를 추출할 수 있다. (S400)
구체적으로, 제2 파일을 기초로 디자인 요소를 추출하는 단계(S400)는 Open CV를 이용하여 제2 파일의 노이즈를 제거하는 단계(S410), Open CV를 이용하여 상기 노이즈가 제거된 이미지에서 경계선을 검출하는 단계(S420), 제3 인공 신경망을 이용하여 디자인 요소가 검출되었는지 여부를 확인하는 단계(S430), 및 디자인 요소가 검출된 경우 디자인의 요소를 추출하는 단계(440)를 포함할 수 있다.
구체적으로, 상기 제2 파일의 노이즈를 제거하는 단계(S410)는 OpenCV의 'FastNlMeansDenoisingcolored()' 함수를 이용하여 상기 제2 파일의 노이즈를 제거하고, 노이즈가 제거된 이미지에서 경계선을 검출하는 단계(S420)는 OpenCV의 'findContour()' 함수를 이용하여 상기 노이즈가 제거된 이미지에서 경계선을 검출할 수 있다.
이어, 경계선이 검출된 이미지는 제3 인공 신경망으로 입력되어 디자인 요소가 검출되는지 여부를 확인할 수 있다. (S430 단계)
제3 인공 신경망은 입력된 제2 파일에 따라 디자인 요소가 존재하는 지 추론하는 인공지능 모델로, 제2 파일에 기초하여 노이즈를 제거하고 경계선을 획득한 파일에 대하여 디자인 요소의 존재 여부에 대한 정보를 출력할 수 있다.
제3 인공 신경망은 경계선을 획득한 제2 파일 내에 디자인 요소가 검출되었는 지 여부를 파악하는 작업을 수행할 수 있다.
제3 인공 신경망은 상기 경계선에 기초하여 디자인 요소의 형태를 확인하고, 미리 정의된 디자인 요소와 유사한 지 여부를 확인하여 제2 파일 내에 디자인 요소가 검출되었는 지 여부를 파악할 수 있다. 디자인 요소의 비교를 위해 데이터베이스에 저장된 정보를 활용할 수 있다.
제3 인공 신경망은 디자인 요소를 검출하는 작업을 우선적으로 하며, 검출된 디자인 요소 후보의 형태 및 크기까지 파악할 수도 있다.
제3 인공 신경망은 히든 레이어와 출력 레이어를 가지고 있으며, 10층 이상의 히든 레이어로 구성되어, 총 200개 이상의 히든 레이어 노드를 포함하고, 히든 레이어 활성함수는 ReLU 함수, 시그모이드 함수 및 tanh 함수 등을 사용하나 이에 한정하지 않는다.
제3 인공 신경망은 총 10개의 출력층 노드를 포함할 수 있다.
제3 인공 신경망의 출력은 디자인 요소의 종류 및 존재 여부에 대한 출력값으로, 디자인 요소의 종류 별로 디자인 요소가 있는 지 없는 지를 지시할 수 있다.
일실시예에 따르면, 제3 인공 신경망은 사용자가 제3 인공 신경망에 따른 출력의 문제점 발견 시 사용자에 의해 입력된 수정 정답에 의해 생성되는 학습 신호를 전달받아 학습할 수 있다. 제3 인공 신경망에 따른 출력의 문제점은 디자인 요소가 있는 이미지에서 디자인 요소가 없는 것으로 출력값을 출력한 경우를 의미할 수 있다.
또한, 제3 인공 신경망은 제3 학습 장치에 의해 학습될 수 있는데, 제3 학습 장치는 장치(200)와 다른 별개의 주체일 수 있지만 이에 제한되는 것은 아니다.
일실시예에 따르면, 제3 인공 신경망은 트레이닝 샘플들이 입력되는 입력 레이어와 트레이닝 출력들을 출력하는 출력 레이어를 포함하고, 트레이닝 출력들과 레이블들 사이의 차이에 기초하여 학습될 수 있다. 여기서, 레이블들은 객체 이미지들에 대응하는 식별 정보에 기초하여 정의될 수 있다. 제3 인공 신경망은 복수의 노드들의 그룹으로 연결되어 있고, 연결된 노드들 사이의 가중치들과 노드들을 활성화시키는 활성화 함수에 의해 정의된다.
제3 학습 장치는 GD(Gradient Decent) 기법 또는 SGD(Stochastic Gradient Descent) 기법을 이용하여 제3 인공 신경망을 학습시킬 수 있다. 제3 학습 장치는 제3 인공 신경망의 출력들 및 레이블들 의해 설계된 손실 함수를 이용할 수 있다.
제3 학습 장치는 미리 정의된 손실 함수(loss function)을 이용하여 트레이닝 에러를 계산할 수 있다. 손실 함수는 레이블, 출력 및 파라미터를 입력변수로 미리 정의될 수 있고, 여기서 파라미터는 제3 인공 신경망 내 가중치들에 의해 설정될 수 있다. 예를 들어, 손실 함수는 MSE(Mean Square Error) 형태, 엔트로피(entropy) 형태 등으로 설계될 수 있는데, 손실 함수가 설계되는 실시예에는 다양한 기법 또는 방식이 채용될 수 있다.
제3 학습 장치는 역전파(backpropagation) 기법을 이용하여 트레이닝 에러에 영향을 주는 가중치들을 찾아낼 수 있다. 여기서, 가중치들은 제3 인공신경망 내 노드들 사이의 관계들이다. 제3 학습 장치는 역전파 기법을 통해 찾아낸 가중치들을 최적화시키기 위해 레이블들 및 출력들을 이용한 SGD 기법을 이용할 수 있다. 예를 들어, 학습 장치는 레이블들, 출력들 및 가중치들에 기초하여 정의된 손실 함수의 가중치들을 SGD 기법을 이용하여 갱신할 수 있다.
영상 관리부(320)는 학습이 완료된 제3 인공 신경망을 이용하여 노이즈가 제거되고 경계선이 추출된 이용하여 제2 파일에 디자인 요소가 포함되어 있는 지 여부와 디자인 요소의 종류를 추출할 수 있다. (S430, S440 단계)
도 9는 일실시예에 따른 구매자로부터 선택된 스톡과 유사한 스톡을 함께 제공하는 과정을 설명하기 위한 순서도이다.
도 9를 참조하면, 먼저, S701 단계에서, 영상 관리부(320)는 제2 영상 수요자 단말(400)을 통해 제1 스톡이 선택되면, 제1 스톡과 매칭된 제1 카테고리를 획득할 수 있다.
구체적으로, 영상 관리부(320)는 스톡 리스트를 제2 영상 수요자 단말(400)로 제공하고, 제2 영상 수요자 단말(400)을 통해 리스트에 포함된 제1 스톡을 구매하겠다는 선택을 획득하면, 제1 스톡과 매칭된 제1 카테고리를 획득할 수 있다.
이어, S702 단계에서, 영상 관리부(320)는 제1 카테고리를 기초로, 데이터베이스에 저장된 스톡 중 제1 카테고리를 포함하는 유사 스톡을 추출할 수 있다.
구체적으로, 영상 관리부(320)는 제2 영상 수요자 단말(400)을 통해 구매자가 구매하고자 하는 스톡을 확인할 수 있고, 구매자가 구매하고자 하는 스톡의 카테고리인 제1 카테고리를 확인하여, 데이터베이스에 저장된 스톡 중 제1 카테고리를 포함하는 스톡을 추출하여 유사 스톡으로 분류할 수 있다.
예를 들어, 제1 스톡에 매칭된 제1 카테고리가 동물일 경우, 영상 관리부(320)는 데이터베이스에 저장된 스톡 중 카테고리가 동물인 스톡을 추출하여 유사 스톡으로 분류할 수 있다.
이어, S703 단계에서, 영상 관리부(320)는 유사 스톡을 구매자의 제2 영상 수요자 단말(400)로 제공할 수 있다.
구체적으로, 영상 관리부(320)는 유사 스톡을 제2 영상 수요자 단말(400)로 제공하여 유사 스톡을 추천할 수 있다.
예를 들어, 제1 스톡에 매칭된 제1 카테고리가 동물이고, 데이터베이스에 포함된 스톡 중 카테고리가 동물인 스톡이 A 스톡, B 스톡, C 스톡일 경우, 영상 관리부(320)는 A 스톡, B 스톡, C 스톡을 제2 영상 수요자 단말(400)로 제공하여 추천할 수 있다.
도 10은 일실시예에 따른 영상 관리부 구성의 예시도이다.
도 10을 참조하면, 일실시예에 따른 영상 관리부(320)는 프로세서(321) 및 메모리(322)를 포함할 수 있다.
프로세서(321)는 도 4 내지 도 9를 참조하여 전술된 적어도 하나의 방법을 수행할 수 있다.
메모리(322)는 전술된 방법들과 관련된 정보를 저장하거나 후술되는 방법들이 구현된 프로그램을 저장할 수 있다. 아울러, 메모리(322)는 공모 중개 관리부(310)로부터 제공받은 미선정된 응모 작품을 저장하는 기능을 수행할 수도 있다. 메모리(322)는 휘발성 메모리 또는 비휘발성 메모리일 수 있다.
프로세서(321)는 프로그램을 실행하고, 영상 관리부(320)를 제어할 수 있다. 프로세서(321)에 의하여 실행되는 프로그램의 코드는 메모리(322)에 저장될 수 있다. 영상 관리부(320)는 입출력 장치(도면 미 표시)를 통하여 외부 장치(예를 들어, 퍼스널 컴퓨터 또는 네트워크)에 연결되고, 유무선 통신을 통해 데이터를 교환할 수 있다.
영상 관리부(320)는 인공신경망을 학습시키거나, 학습된 인공신경망을 이용하는데 사용될 수 있다. 메모리(322)는 학습 중인 또는 학습된 인공 신경망을 더 포함할 수 있다. 프로세서(321)는 메모리(322)에 저장된 인공신경망 알고리즘을 학습시키거나 실행시킬 수 있다. 인공신경망을 학습시키는 영상 관리부(320)와 학습된 인공신경망을 이용하는 영상 관리부(320)는 동일할 수도 있고 개별적일 수도 있다.
이상에서 설명된 실시예들은 하드웨어 구성요소, 소프트웨어 구성요소, 및/또는 하드웨어 구성요소 및 소프트웨어 구성요소의 조합으로 구현될 수 있 다. 예를 들어, 실시예들에서 설명된 장치, 방법 및 구성요소는, 예를 들어, 프로 세서, 콘트롤러, ALU(arithmetic logic unit), 디지털 신호 프로세서(digital signal processor), 마이크로컴퓨터, FPGA(field programmable gate array), PLU(programmable logic unit), 마이크로프로세서, 또는 명령(instruction)을 실행하고 응답할 수 있는 다른 어떠한 장치와 같이, 하나 이상의 범용 컴퓨터 또는 특수 목적 컴퓨터를 이용하여 구현될 수 있다. 처리 장치는 운영 체제(OS) 및 상기 운영 체제 상에서 수행되는 하나 이상의 소프트웨어 애플리케이션을 수행할 수 있다. 또한, 처리 장치는 소프트웨어의 실행에 응답하여, 데이터를 접근, 저장, 조작, 처리 및 생성할 수도 있다. 이해의 편의를 위하여, 처리 장치는 하나가 사용되는 것으로 설명된 경우도 있지만, 해당 기술분야에서 통상의 지식을 가진 자는, 처리 장치가 복수 개의 처리 요소(processing element) 및/또는 복수 유형의 처리 요소를 포함할 수 있음을 알 수 있다. 예를 들어, 처리 장치는 복수 개의 프로세서 또는 하나의 프로세서 및 하나의 콘트롤러를 포함할 수 있다. 또한, 병렬 프로세서와 같은 다른 처리 구성도 가능하다.
실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되 어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스 크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된 다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 상기된 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.
소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명 령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대 로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소, 물리적 장치, 가상 장치, 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호파에 영구적으로, 또는 일시적으로 구체화될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.
이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해 당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다. 그러므로, 다른 구현들, 다른 실시예들 및 청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.
100: 수요자 단말
200: 영상 제작자 단말
300: 영상 관리 시스템
400: 제2 영상 수요자 단말

Claims (5)

  1. 영상 공모전 중개 및 인공지능 기반 영상 텍스트 제거 방법에 있어서,
    제1 영상 수요자 단말을 통해 제1 영상 수요자로부터 영상 공모전 정보를 획득하는 단계;
    상기 영상 공모전 정보를 영상 제작자 단말에 노출시키는 단계;
    상기 영상 제작자 단말을 통해 응모 영상 컨텐츠를 획득하는 단계;
    상기 응모 영상 컨텐츠를 포함하는 복수의 응모 영상 컨텐츠들을 상기 제1 영상 수요자 단말을 통해 상기 제1 영상 수요자에게 전달하는 단계;
    상기 제1 영상 수요자 단말을 통해 상기 복수의 응모 영상 컨텐츠들 중 상기 제1 영상 수요자가 선정한 수상 영상 컨텐츠에 대한 정보를 입력 받는 단계;
    상기 복수의 응모 영상 컨텐츠들 중 상기 수상 영상 컨텐츠를 제외한 미선정 영상 컨텐츠를 획득하는 단계;
    상기 미선정 영상 컨텐츠를 기초로, 미리 설정된 제1 주기마다 프레임을 추출하는 단계;
    제1 인공 신경망 및 Open CV를 이용하여 상기 추출 프레임에 대하여 텍스트 요소가 포함된 텍스트 영역을 탐지하는 단계;
    상기 텍스트 영역이 탐지된 경우 상기 추출 프레임에서 상기 텍스트 요소를 제거하는 단계;
    제2 인공 신경망을 이용하여 제거퇸 텍스트 요소와 대응되는 영역을 채워 수정 프레임을 생성하는 단계; 및
    상기 추출 프레임을 상기 수정 프레임으로 대체하여 제1 파일을 생성하는 단계를 포함하되,
    상기 제1 인공 신경망은 합성곱 신경망(CNN; convolutional neural network)이고,
    상기 제2 인공 신경망은 WGAN(Wasserstein GAN) 또는 WGAN-GP(WGAN-gredient penalty)인,
    영상 공모전 중개 및 인공지능 기반 영상 텍스트 제거 방법.
  2. 제1 항에 있어서,
    상기 추출 프레임에 대하여 상기 텍스트 요소가 포함된 상기 텍스트 영역을 탐지하는 단계는,
    상기 Open CV를 이용하여 상기 추출 프레임을 그레이 스케일 프레임으로 변환하는 단계;
    상기 Open CV를 이용하여 상기 그레이 스케일 프레임에서 경계선을 검출하는 단계;
    상기 Open CV를 이용하여 상기 경계선을 근사화하는 단계; 및
    상기 경계선이 근사화된 그레이 스케일 프레임에서 상기 제1 인공 신경망을 이용하여 상기 텍스트 영역을 추출하는 단계를 포함하는, 영상 공모전 중개 및 인공지능 기반 영상 텍스트 제거 방법.
  3. 제2 항에 있어서,
    상기 Open CV를 이용하여 상기 추출 프레임을 상기 그레이 스케일 프레임으로 변환하는 단계는, Open CV의 ‘grayscale()’함수를 이용하고,
    상기 Open CV를 이용하여 상기 그레이 스케일 프레임에서 경계선을 검출하는 단계는, Open CV의 ‘findContour()’ 함수를 이용하며,
    상기 Open CV를 이용하여 상기 경계선을 근사화하는 단계는, Open CV의 ‘approxPolyDP()’ 함수를 이용하는 것을 특징으로 하는, 영상 공모전 중개 및 인공지능 기반 영상 텍스트 제거 방법.
  4. 제3 항에 있어서,
    상기 제1 파일을 생성하는 단계 이후,
    상기 제1 파일을 기초로, 화면 전환 시점을 판단하여 프레임 단위의 이미지인 제2 파일을 생성하는 단계;
    상기 제2 파일을 기초로, 디자인 요소를 추출하는 단계; 및
    상기 제1 파일, 상기 제2 파일 및 상기 디자인 요소를 스톡으로 분류하고 상기 스톡을 제2 영상 수요자 단말로 제공하는 단계를 더 포함하는, 영상 공모전 중개 및 인공지능 기반 영상 텍스트 제거 방법.
  5. 제4 항에 있어서,
    상기 제2 파일을 기초로, 디자인 요소를 추출하는 단계는,
    상기 Open CV를 이용하여 제2 파일의 노이즈를 제거하는 단계;
    상기 Open CV를 이용하여 상기 노이즈가 제거된 이미지에서 경계선을 검출하는 단계; 및
    제3 인공 신경망을 이용하여 디자인 요소가 검출되었는지 여부를 확인하는 단계를 포함하는, 영상 공모전 중개 및 인공지능 기반 영상 텍스트 제거 방법.
KR1020220161445A 2022-11-28 2022-11-28 영상 공모전 중개 및 인공지능 기반 영상 텍스트 제거 방법 KR20240079263A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020220161445A KR20240079263A (ko) 2022-11-28 2022-11-28 영상 공모전 중개 및 인공지능 기반 영상 텍스트 제거 방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020220161445A KR20240079263A (ko) 2022-11-28 2022-11-28 영상 공모전 중개 및 인공지능 기반 영상 텍스트 제거 방법

Publications (1)

Publication Number Publication Date
KR20240079263A true KR20240079263A (ko) 2024-06-05

Family

ID=91470601

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020220161445A KR20240079263A (ko) 2022-11-28 2022-11-28 영상 공모전 중개 및 인공지능 기반 영상 텍스트 제거 방법

Country Status (1)

Country Link
KR (1) KR20240079263A (ko)

Similar Documents

Publication Publication Date Title
Kaymak et al. A brief survey and an application of semantic image segmentation for autonomous driving
Zhang et al. Colorful image colorization
CN111191791A (zh) 机器学习模型的应用方法、训练方法、装置、设备及介质
Planche et al. Hands-On Computer Vision with TensorFlow 2: Leverage deep learning to create powerful image processing apps with TensorFlow 2.0 and Keras
KR102548732B1 (ko) 신경망 학습 방법 및 이를 적용한 장치
CN113366494A (zh) 用于少样本无监督图像到图像转换的方法
KR102447549B1 (ko) Nft 기반 아트워크와 연계된 쥬얼리 거래 서비스 제공 방법, 장치 및 시스템
Pham et al. Video-based human action recognition using deep learning: a review
KR102470154B1 (ko) 블록체인 기반 의료기기 거래 및 공유 플랫폼 서비스 제공 방법, 장치 및 시스템
Klaas Machine learning for finance: principles and practice for financial insiders
Mougeot et al. A deep learning approach for dog face verification and recognition
Das et al. A new hybrid architecture for human activity recognition from rgb-d videos
JP7225731B2 (ja) 多変数データシーケンスの画像化
Sikka Elements of Deep Learning for Computer Vision: Explore Deep Neural Network Architectures, PyTorch, Object Detection Algorithms, and Computer Vision Applications for Python Coders (English Edition)
Valarmathi et al. Hybrid deep learning algorithms for dog breed identification–a comparative analysis
KR102447426B1 (ko) 초개인화를 위한 퍼스널 컬러와 타임라인 기반 행동 데이터를 분석하여 라이프스타일 가이드 정보를 추천하는 방법, 장치 및 시스템
KR102426803B1 (ko) 인공지능 기반 제품의 해외 판매 페이지 자동 업로드 방법, 장치 및 시스템
Gaddam et al. On Sudoku problem using deep learning and image processing technique
Rungta et al. A deep learning based approach to measure confidence for virtual interviews
Carballal et al. Minimal neural network topology optimization for aesthetic classification
KR20240079263A (ko) 영상 공모전 중개 및 인공지능 기반 영상 텍스트 제거 방법
KR20240078843A (ko) 영상 공모전 중개 및 인공지능 기반 디자인 요소 자동 추출 방법
KR20240094106A (ko) 영상 공모전 중개 및 인공지능 기반 화면 전환 자동 추출 방법
CN116932862A (zh) 冷启动对象推荐方法、装置、计算机设备和存储介质
KR102476815B1 (ko) 인공지능 기반 스톡 이미지 자동 추출 방법, 장치 및 시스템