KR102647615B1 - 유사도를 기초로 선택된 레퍼런스 프레임을 이용하여 그레이 스케일 비디오를 컬러링하는 비디오 컬러링 방법 및 이를 수행하는 비디오 컬러링 시스템 - Google Patents

유사도를 기초로 선택된 레퍼런스 프레임을 이용하여 그레이 스케일 비디오를 컬러링하는 비디오 컬러링 방법 및 이를 수행하는 비디오 컬러링 시스템 Download PDF

Info

Publication number
KR102647615B1
KR102647615B1 KR1020230124338A KR20230124338A KR102647615B1 KR 102647615 B1 KR102647615 B1 KR 102647615B1 KR 1020230124338 A KR1020230124338 A KR 1020230124338A KR 20230124338 A KR20230124338 A KR 20230124338A KR 102647615 B1 KR102647615 B1 KR 102647615B1
Authority
KR
South Korea
Prior art keywords
similarity
gray scale
video
frames
coloring
Prior art date
Application number
KR1020230124338A
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 KR1020230124338A priority Critical patent/KR102647615B1/ko
Application granted granted Critical
Publication of KR102647615B1 publication Critical patent/KR102647615B1/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/43Conversion of monochrome picture signals to colour picture signals for colour picture display
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/001Texturing; Colouring; Generation of texture or colour
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20084Artificial neural networks [ANN]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Molecular Biology (AREA)
  • Artificial Intelligence (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Health & Medical Sciences (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Multimedia (AREA)
  • Image Analysis (AREA)

Abstract

본 개시의 기술적 사상에 따르면 유사도를 기초로 선택된 레퍼런스 프레임을 이용하여 그레이 스케일 비디오를 컬러링하는 비디오 컬러링 방법 및 이를 수행하는 비디오 컬러링 시스템이 개시된다. 일 실시예에 따른 적어도 하나의 프로세서에 의해 수행되는 그레이 스케일 비디오에 대한 비디오 컬러링 방법은, 상기 그레이 스케일 비디오를 구성하는 복수의 그레이 스케일 프레임들 간의 유사도에 대한 정보를 포함하는 복수의 유사도 맵들을 생성하는 단계, 상기 복수의 유사도 맵들을 이용해서 상기 복수의 그레이 스케일 프레임들 중 유사도가 높은 복수의 레퍼런스 프레임들을 결정하는 단계, 상기 복수의 레퍼런스 프레임들 각각에 대한 복수의 컬러 레퍼런스 프레임들을 획득하는 단계 및 상기 복수의 컬러 레퍼런스 프레임들을 기초로 상기 복수의 그레이 스케일 프레임들에 대한 컬러링을 수행하는 단계를 포함할 수 있다.

Description

유사도를 기초로 선택된 레퍼런스 프레임을 이용하여 그레이 스케일 비디오를 컬러링하는 비디오 컬러링 방법 및 이를 수행하는 비디오 컬러링 시스템{A VIDEO COLORING METHOD COLORING GRAY SCALE VIDEO BY USING REFERENCE FRAME SELECTED BASED ON SIMILARITY AND A VIDEO COLORING SYSTEM PERFORMING THE SAME}
본 발명은 비디오 컬러링 방법에 관한 것으로, 더욱 상세하게는 딥러닝 알고리즘을 활용하여 레퍼런스 프레임을 기반으로 그레이 스케일 비디오를 컬러링 하는 비디오 컬러링 방법 및 이를 수행하는 비디오 컬러링 시스템에 관한 것이다.
최근 과거에 흑백(또는 그레이 스케일)으로 촬영된 비디오를 복원하는 방법에 대한 연구가 계속되고 있다. 과거에 촬영되어 노이즈가 존재하고 당시의 촬영기기에 의한 노후 흔적이 남아 있는 흑백 영상을 고유의 저품질 특징이 남아 있는 컬러 영상으로 전환하는 것은 과거 영상의 사실적 복원, 영화 제작 시 과거 시대의 사실적 구현을 위한 영상 재현 등 멀티미디어 활용에서 매우 중요한 분야 중 하나이다.
이전에는 흑백 영상을 프레임 단위로 사람이 직접 채색하여 컬러 영상으로 복원하였으나, 인공지능 기술의 발달로 인해 흑백 영상을 자동으로 컬러 영상으로 변환하는 기술이 개발되었다. 그 가운데 흑백 영상을 구성하는 프레임 중 레퍼런스 프레임을 선택하고, 선택한 레퍼런스 프레임을 딥러닝 알고리즘의 소스로 입력함으로써 컬러링을 수행하는 레퍼런스 프레임 기반 컬러링 기술이 개발되었다.
하지만, 이전에는 흑백 영상의 시간적으로 정가운데 위치하는 미들 프레임을 활용하여 다른 프레임에 대한 컬러링을 수행하였고, 이러한 미들 프레임 기반 컬러링 기술은 새로 등장하는 객체나 이전에 존재하였으나 미들 프레임에는 존재하지 않는 객체에 대한 색상을 확인하지 못하는 바 정확도가 높은 복원이 불가능하였고, 이에 따라서 정확도가 높으면서도 빠르게 컬러링을 수행할 수 있는 레퍼런스 프레임 기반 컬러링 기술에 대한 필요성이 증대되었다.
본 발명의 목적은, 유사도를 기반으로 복수의 레퍼런스 프레임들을 선택하고, 선택한 레퍼런스 프레임들을 기반으로 그레이 스케일 프레임에 대한 컬러링을 수행하는 비디오 컬러링 방법 및 이를 수행하는 비디오 컬러링 시스템을 제공하는 것이다.
본 개시의 기술적 사상에 따른 적어도 하나의 프로세서에 의해 수행되는 그레이 스케일 비디오에 대한 비디오 컬러링 방법은, 상기 그레이 스케일 비디오를 구성하는 복수의 그레이 스케일 프레임들 간의 유사도에 대한 정보를 포함하는 복수의 유사도 맵들을 생성하는 단계, 상기 복수의 유사도 맵들을 이용해서 상기 복수의 그레이 스케일 프레임들 중 유사도가 높은 복수의 레퍼런스 프레임들을 결정하는 단계, 상기 복수의 레퍼런스 프레임들 각각에 대한 복수의 컬러 레퍼런스 프레임들을 획득하는 단계 및 상기 복수의 컬러 레퍼런스 프레임들을 기초로 상기 복수의 그레이 스케일 프레임들에 대한 컬러링을 수행하는 단계를 포함할 수 있다.
일 실시예에서, 상기 복수의 유사도 맵들은 상기 제1 그레이 스케일 프레임과 나머지 그레이 스케일 프레임들 사이의 픽셀 값의 유사도 정보를 포함하는 제1 유사도 맵 및 상기 제2 그레이 스케일 프레임과 나머지 그레이 스케일 프레임들 사이의 픽셀 값의 유사도 정보를 포함하는 제2 유사도 맵을 포함할 수 있다.
일 실시예에서, 상기 복수의 레퍼런스 프레임들을 결정하는 단계는, 상기 복수의 유사도 맵들 중 적어도 두 개의 유사도 맵들을 조합한 결과를 활용하여 최대의 유사도를 갖는 유사도 맵 그룹을 결정하는 단계 및 상기 유사도 맵 그룹에 대응되는 그레이 스케일 프레임들을 상기 복수의 레퍼런스 프레임들로 결정하는 단계를 포함할 수 있다.
일 실시예에서, 상기 최대의 유사도를 갖는 유사도 맵들 조합을 결정하는 단계는, 상기 복수의 유사도 맵들에 포함되는 적어도 두 개의 유사도 맵들에 대해서 픽셀 별로 픽셀 유사도 값의 최대 값을 결정하는 단계, 결정된 최대 값의 픽셀 유사도 값으로 구성된 조합 유사도 맵을 결정하는 단계 및 상기 조합 유사도 맵의 픽셀 유사도 값의 합을 기초로 상기 최대의 유사도를 갖는 최대 유사도 맵 그룹을 결정하는 단계를 포함할 수 있다.
일 실시예에서, 상기 컬러링을 수행하는 단계는, 픽셀 별로 최대 유사도 맵 그룹 중 더 높은 픽셀 유사도 값을 갖는 유사도 맵을 결정하는 단계, 결정된 상기 유사도 맵에 대응되는 레퍼런스 프레임을 기초로 상기 복수의 그레이 스케일 프레임들에 대한 컬러링을 수행하는 단계를 포함할 수 있다.
일 실시예에서, 상기 픽셀 값을 획득하는 단계는, 딥러닝 알고리즘을 활용하여 상기 복수의 그레이 스케일 프레임들에 포함된 객체를 구분하는 단계, 상기 복수의 레퍼런스 프레임들 중 컬러링 대상이 되는 타겟 그레이 스케일 프레임에 포함된 객체와 동일한 객체를 포함하는 레퍼런스 프레임을 결정하는 단계 및 상기 결정된 레퍼런스 프레임을 기초로 상기 타겟 그레이 스케일 프레임에 대한 컬러링을 수행하는 단계를 포함할 수 있다.
본 발명의 기술적 사상에 따르면, 유사도를 기반으로 복수의 레퍼런스 프레임들을 선택하고, 이를 활용하여 그레이 스케일 프레임을 채색함으로써 그레이 스케일 프레임을 채색하기 위한 최적의 레퍼런스 프레임을 선택할 수 있고, 결과적으로 그레이 스케일 비디오(또는 흑백 영상)을 실제와 유사한 색채를 갖는 컬러 영상으로 복원할 수 있다.
도 1은 본 개시의 예시적 실시예에 따른 비디오 컬러링 시스템의 블록도이다.
도 2는 본 개시의 예시적 실시예에 따른 뉴럴 네트워크의 연산 처리를 설명하기 위한 도면이다.
도 3은 본 개시의 예시적인 실시예들에 따른 비디오 컬러링 시스템의 블록도이다.
도 4는 본 개시의 예시적 실시예에 따른 비디오 컬러링 방법을 나타내는 순서도이다.
도 5는 본 개시의 예시적 실시예에 따른 비디오 컬러링 방법을 나타내는 순서도이다.
도 6은 본 개시의 예시적 실시예에 따른 비디오 컬러링 방법을 나타내는 도면이다.
도 7은 본 개시의 예시적 실시예에 따른 비디오 컬러링 방법을 나타내는 도면이다.
도 8은 본 개시의 예시적 실시예에 따른 비디오 컬러링 방법을 나타내는 순서도이다.
도 9는 본 개시의 예시적 실시예에 따른 비디오 컬러링 방법을 나타내는 도면이다.
도 10은 본 개시의 예시적 실시예에 따른 비디오 컬러링 방법을 나타내는 순서도이다.
도 11은 본 개시의 예시적 실시예에 따른 비디오 컬러링 시스템을 나타내는 블록도이다.
이하, 첨부된 도면을 참조하여 본 개시의 바람직한 실시예들을 상세히 설명한다. 본 개시의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 개시의 기술적 사상은 이하의 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 이하의 실시예들은 본 개시의 기술적 사상을 완전하도록 하고, 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 본 개시의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 개시의 기술적 사상은 청구항의 범주에 의해 정의될 뿐이다.
각 도면의 구성요소들에 참조부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한 한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 개시를 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 개시의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 개시가 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다. 본 명세서에서 사용된 용어는 실시예들을 설명하기 위한 것이며 본 개시를 제한하고자 하는 것은 아니다. 본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함한다.
또한, 본 개시의 구성 요소를 설명하는 데 있어서, 제1, 제2, A, B, (a), (b) 등의 용어를 사용할 수 있다. 이러한 용어는 그 구성 요소를 다른 구성 요소와 구별하기 위한 것일 뿐, 그 용어에 의해 해당 구성 요소의 본질이나 차례 또는 순서 등이 한정되지 않는다. 어떤 구성 요소가 다른 구성요소에 "연결", "결합" 또는 "접속"된다고 기재된 경우, 그 구성 요소는 그 다른 구성요소에 직접적으로 연결되거나 또는 접속될 수 있지만, 각 구성 요소 사이에 또 다른 구성 요소가 "연결", "결합" 또는 "접속"될 수도 있다고 이해되어야 할 것이다.
본 개시에서 사용되는 "포함한다 (comprises)" 및/또는 "포함하는 (comprising)"은 언급된 구성 요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성 요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.
어느 하나의 실시예에 포함된 구성요소와, 공통적인 기능을 포함하는 구성 요소는, 다른 실시예에서 동일한 명칭을 사용하여 설명될 수 있다. 반대되는 기재가 없는 이상, 어느 하나의 실시예에 기재된 설명은 다른 실시예에도 적용될 수 있으며, 중복되는 범위 또는 당해 기술 분야에 속한 통상의 기술자가 자명하게 이해할 수 있는 범위 내에서 구체적인 설명은 생략될 수 있다.
이하, 본 발명의 바람직한 실시예 및 첨부한 도면을 참조하여 본 발명에 대해 상세히 설명한다.
도 1은 본 개시의 예시적 실시예에 따른 비디오 컬러링 시스템의 블록도이다.
도 1을 참조하면, 비디오 컬러링 시스템(10)는 프로세서(100), RAM(200), 및 스토리지(300)를 포함할 수 있다. 도시되지 않았지만, 비디오 컬러링 시스템(10)은 유무선 통신망을 통해 외부와 연결될 수 있고, 일 예시에서, 비디오 컬러링 시스템(10)는 서버를 통해 클라우드와 연결될 수 있다.
비디오 컬러링 시스템(10)는 입력 데이터를 분석하여 유효한 정보를 추출하고, 추출된 정보를 기초로 출력 데이터를 생성할 수 있다. 상기 입력 데이터는, 그레이 스케일로 구성되는 그레이 스케일 비디오일 수 있고, 상기 출력 데이터는 컬러로 구성되는 컬러 비디오일 수 있다.
비디오 컬러링 시스템(10)는 PC(personal computer), IoT(Internet of Things) 장치, 또는 휴대용 전자 기기로 구현될 수 있다. 휴대용 전자 기기는, 랩탑(laptop) 컴퓨터, 이동 전화기, 스마트폰, 태블릿 PC, PDA(personal digital assistant), EDA(enterprise digital assistant), 디지털 스틸 카메라, 디지털 비디오 카메라, 오디오 장치, PMP(portable multimedia player), PND(personal navigation device), MP3 플레이어, 휴대용 게임 콘솔(handheld game console), e-북(e-book), 웨어러블(wearable) 기기 등과 같은 다양한 장치에 구비될 수 있다.
다양한 실시예들에 따라, 프로세서(100)는 학습 이미지에 기반하여 뉴럴 네트워크를 학습시키고, 학습된 뉴럴 네트워크를 이용하여 그레이 스케일 프레임에 대한 유사도를 계산하는 등, 비디오 컬러링 시스템(10)를 제어할 수 있다.
다양한 실시예들에 따라, 프로세서(100)는 CPU(110), 및 NPU(120)를 포함할 수 있고, 도시되지 않았지만 GPU를 포함할 수 있다. CPU(110)는 비디오 컬러링 시스템(10)의 전반적인 동작을 제어할 수 있다. CPU(110)는 하나의 프로세서 코어(Single Core)를 포함하거나, 복수의 프로세서 코어들(Multi-Core)을 포함할 수 있다. CPU(110)는 스토리지(300)에 저장된 프로그램들 및/또는 데이터를 처리 또는 실행할 수 있다. 예를 들어, CPU(110)는 스토리지(300)에 저장된 프로그램들 및/또는 모듈들을 실행함으로써, NPU(120)의 기능을 제어할 수 있다.
다양한 실시예들에 따라, NPU(120)는 뉴럴 네트워크를 생성하거나, 뉴럴 네트워크를 훈련(train) 또는 학습(learn)하거나, 훈련 데이터를 기초로 연산을 수행하고, 수행 결과를 기초로 정보 신호(information signal)를 생성하거나, 뉴럴 네트워크를 재훈련(retrain)할 수 있다.
다양한 실시예들에 따라, 뉴럴 네트워크의 모델들은 GoogleNet, AlexNet, VGG Network 등과 같은 CNN(Convolution Neural Network), R-CNN(Region with Convolution Neural Network), RPN(Region Proposal Network), RNN(Recurrent Neural Network), S-DNN(Stacking-based deep Neural Network), S-SDNN(State-Space Dynamic Neural Network), Deconvolution Network, DBN(Deep Belief Network), RBM(Restricted Boltzman Machine), Fully Convolutional Network, LSTM(Long Short-Term Memory) Network, Classification Network 등 다양한 종류의 모델들을 포함할 수 있으며, 전술한 모델들로 제한되는 것은 아니다.
다양한 실시예들에 따라, NPU(120)는 뉴럴 네트워크의 모델들에 대응되는 프로그램들을 저장하기 위한 별도의 메모리를 포함할 수도 있다. NPU(120)는 뉴럴 네트워크를 구동하기 위하여 요구되는 많은 연산을 처리하기 위한 별도의 IP(intellectual property) 블록들을 더 포함할 수도 있다. 예를 들어, 별도의 IP 블록들은 GPU(graphical processing unit) 또는 특정 연산을 빠르게 수행하기 위한 가속기(accelerator)를 더 포함할 수도 있다.
다양한 실시예들에 따라, RAM(200)은 프로그램들, 데이터, 또는 명령들(instructions)을 일시적으로 저장할 수 있다. 예를 들어, RAM(200)은 스토리지(300)에 저장된 프로그램들 및/또는 데이터를, CPU(110)의 제어 또는 부팅 코드에 따라 일시적으로 로드(load)할 수 있다. 예컨대, RAM(200)은 DRAM(Dynamic RAM), SRAM(Static RAM), SDRAM(Synchronous DRAM)을 포함할 수 있다.
스토리지(300)는 데이터를 저장하기 위한 저장 장소로서, OS(Operating System), 각종 프로그램들, 및 각종 데이터를 저장할 수 있다. 예를 들어, 스토리지(300)는 비휘발성 메모리에 상응할 수 있다. 예를 들어, 스토리지(300)는 ROM(Read Only Memory), 플래시 메모리, PRAM(Phase-change RAM), MRAM(Magnetic RAM), RRAM(Resistive RAM), FRAM(Ferroelectric RAM) 등을 포함할 수 있다. 일 실시예에 따라, 스토리지(300)는 HDD(Hard Disk Drive), SSD(Solid State Drive) 등으로 구현될 수 있다.
도 2는 본 개시의 예시적 실시예에 따른 뉴럴 네트워크의 연산 처리를 설명하기 위한 도면이다.
도 1의 프로세서(100)는 뉴럴 네트워크(NN)를 활용하여 본 명세서에서 설명하는 비디오 컬러링 방법을 수행할 수 있다. 도 2를 참조하면, 뉴럴 네트워크(NN)는 복수의 레이어들(L1 내지 Ln)을 포함할 수 있다. 복수의 레이어들(L1 내지 Ln) 각각은 선형 레이어 또는 비선형 레이어일 수 있으며, 실시예에 따라, 적어도 하나의 선형 레이어 및 적어도 하나의 비선형 레이어가 결합되어 하나의 레이어로 지칭될 수도 있다. 예를 들어, 선형 레이어는 컨볼루션 레이어(convolution), 풀리 커넥티드(fully connected) 레이어를 포함할 수 있으며, 비선형 레이어는 샘플링(sampling) 레이어, 풀링(pooling) 레이어, 활성(activation) 레이어를 포함할 수 있다.
일 실시예에 따라, 제1 레이어(L1)는 컨볼루션 레이어이고, 제2 레이어(L2)는 샘플링 레이어일 수 있다. 뉴럴 네트워크는 활성(activation) 레이어를 더 포함할 수 있으며, 다른 종류의 연산을 수행하는 적어도 하나의 레이어를 더 포함할 수 있다.
복수의 레이어들 각각은 입력되는 이미지 데이터 또는 이전 레이어에서 생성된 입력 피처맵(input feature map)을 수신하고, 입력 피처맵을 연산하여 출력 피처맵을 생성할 수 있다. 이때, 피처맵은 입력 데이터의 다양한 특징이 표현된 데이터를 의미할 수 있다.
피처맵들(FM1, FM2, FM3)은 예컨대 2차원 매트릭스 또는 3차원 매트릭스 형태를 가질 수 있다. 피처맵들(FM1, FM2, FM3)은 너비(Width)(또는 칼럼이라고 함), 높이(Height)(또는 로우라고 함) 및 깊이(Depth)를 가지며, 이는 좌표 상의 x축, y축 및 z축에 각각 대응할 수 있다. 이때, 깊이(Depth)는 채널(Channel)의 개수로 지칭될 수 있다.
제1 레이어(L1)는 제1 피처맵(FM1)을 웨이트맵(WM)과 컨볼루션하여 제2 피처맵(FM2)을 생성할 수 있다. 웨이트맵(WM)은 제1 피처맵(FM1)을 필터링할 수 있으며, 필터 또는 커널로 지칭될 수 있다. 예컨대, 웨이트맵(WM)의 깊이, 즉 채널 개수는 제1 피처맵(FM1)의 깊이, 즉 채널 개수와 동일하며, 웨이트맵(WM)과 제1 피처맵(FM1)의 동일한 채널끼리 컨볼루션될 수 있다. 웨이트맵(WM)은 제1 피처맵(FM1)을 슬라이딩 윈도우로 하여 횡단하는 방식으로 쉬프트된다. 쉬프트되는 양은 "스트라이드(stride) 길이" 또는 "스트라이드"로 지칭될 수 있다. 각 쉬프트 동안, 웨이트맵(WM)에 포함되는 웨이트들 각각이 제1 피처맵(FM1)과 중첩된 영역에서의 모든 피처 값과 곱해지고 더해질 수 있다. 제1 피처맵(FM1)과 웨이트맵(WM)이 컨볼루션 됨에 따라, 제2 피처맵(FM2)의 하나의 채널이 생성될 수 있다.
도 2에는 하나의 웨이트맵(WM)이 표시되었으나, 실질적으로는 복수개의 웨이트맵이 제1 피처맵(FM1)과 컨볼루션 되어, 제2 피처맵(FM2)의 복수개의 채널이 생성될 수 있다. 다시 말해, 제2 피처맵(FM2)의 채널의 수는 웨이트맵의 개수에 대응할 수 있다.
제2 레이어(L2)는 제2 피처맵(FM2)의 공간적 크기(spatial size)를 변경함으로써, 제3 피처맵(FM3)을 생성할 수 있다. 일 예로, 제2 레이어(L2)는 샘플링 레이어일 수 있다. 제2 레이어(L2)는 업-샘플링 또는 다운-샘플링을 수행할 수 있으며, 제2 레이어(L2)는 제2 피처맵(FM2)에 포함된 데이터들 중 일부를 선별할 수 있다. 예컨대, 2 차원의 윈도우(WD)가 윈도우(WD)의 사이즈(예컨대, 4 * 4 행렬) 단위로 제2 피처맵(FM2) 상에서 쉬프트되고, 윈도우(WD)와 중첩되는 영역에서 특정 위치(예컨대, 1행 1열)의 값을 선택할 수 있다. 제2 레이어(L2)는 선택된 데이터를 제3 피처맵(FM3)의 데이터로서 출력할 수 있다. 다른 예로, 제2 레이어(L2)는 풀링 레이어일 수 있다. 이 경우, 제2 레이어(L2)는 제2 피처맵(FM2)에서 윈도우(WD)와 중첩되는 영역의 피처 값들의 최대 값(cross-channel pooling) 또는 피처 값들의 평균 값(average pooling)을 선택할 수 있다. 제2 레이어(L2)는 선택된 데이터를 제3 피처맵(FM3)의 데이터로서 출력할 수 있다.
이에 따라, 제2 피처맵(FM2)으로부터 공간적 사이즈가 변경된 제3 피처맵(FM3)이 생성될 수 있다. 제3 피처맵(FM3)의 채널과 제2 피처맵(FM2)의 채널 개수는 동일할 수 있다. 한편, 본 개시의 예시적인 실시예에 따르면, 풀링 레이어보다 샘플링 레이어의 연산 속도가 빠를 수 있고, 샘플링 레이어는 출력 이미지의 퀄리티(예컨대, PSNR(Peak Signal to Noise Ratio) 측면에서)를 개선할 수 있다. 예컨대, 풀링 레이어에 의한 연산은, 최대 값 또는 평균 값을 산출하여야 하므로 샘플링 레이어에 의한 연산보다 연산 시간이 더 오래 걸릴 수 있다.
실시예에 따라, 제2 레이어(L2)는 샘플링 레이어 또는 풀링 레이어에 한정되지 않는다. 즉, 제2 레이어(L2)는 제1 레이어(L1)와 유사한 컨볼루션 레이어가 될 수 있다. 제2 레이어(L2)는 제2 피처맵(FM2)을 웨이트맵과 컨볼루션하여 제3 피처맵(FM3)을 생성할 수 있다. 이 경우, 제2 레이어(L2)에서 컨볼루션 연산을 수행한 웨이트맵은 제1 레이어(L1)에서 컨볼루션 연산을 수행한 웨이트맵(WM)과 다를 수 있다.
제1 레이어(L1) 및 제2 레이어(L2)를 포함한 복수의 레이어들을 거쳐 제N 레이어에서 제N 피처맵을 생성할 수 있다. 제N 피처맵은 출력 데이터가 출력되는 뉴럴 네트워크(NN)의 백 엔드(back end)에 위치한 복원 레이어(reconstruction layer)에 입력될 수 있다. 복원 레이어는 제N 피처맵을 기반으로 출력 이미지를 생성할 수 있다. 또한, 복원 레이어는 제N 피처맵 뿐만 아니라, 제1 피처맵(FM1) 및 제2 피처맵(FM2) 등 복수의 피처맵들을 수신하고, 복수의 피처맵들에 기초하여 출력 이미지를 생성할 수 있다.
제3 레이어(L3)는 제3 피처맵(FM3)의 피처들을 조합하여 피처 벡터(FV) 또는 컨텍스트 벡터를 생성할 수 있다. 예컨대, 입력 데이터는 이미지 또는 동영상 프레임의 데이터일 수 있다. 이 경우, 제3 레이어(L3)는 제2 레이어(L2)로부터 제공되는 제3 피처맵(FM3)을 기초로 피처 벡터(FV) 또는 컨텍스트 벡터를 추출할 수 있다.
도 3은 본 개시의 예시적인 실시예들에 따른 비디오 컬러링 시스템의 블록도이다. 상세하게는, 도 3은 비디오 컬러링 시스템(10)을 기능 단위 모듈로 구분된 블록도를 나타낸다.
도 3을 참조하면, 비디오 컬러링 시스템(10)은 유사도 맵 생성부(210), 레퍼런스 프레임 결정부(220) 및 컬러링 부(230)를 포함할 수 있다. 유사도 맵 생성부(210), 레퍼런스 프레임 결정부(220) 및 컬러링 부(230)은 도 1의 CPU(110) 또는 NPU(120)의 적어도 일부 구성일 수 있으며, 유사도 맵 생성부(210), 레퍼런스 프레임 결정부(220) 및 컬러링 부(230)의 각종 동작은 도 1의 CPU(110) 또는 NPU(120)가 RAM(200) 또는 스토리지(300)에 저장된 적어도 하나의 명령어를 포함하는 컴퓨터 프로그램을 활용하여 수행하는 동작일 수 있다. 또한, 유사도 맵 생성부(210), 레퍼런스 프레임 결정부(220) 및 컬러링 부(230)는 명령어/프로그램 모듈 별로 구분된 구성일 수 있고, 하나의 하드웨어 장치(예를 들면, CPU(110), NPU(120))에 의해 수행될 수 있다.
비디오 컬러링 시스템(10)은 뉴럴 네트워크(NN) 중 피드포워드 신경망(feedforward neural network), 순환 신경망(recurrent neural network)에 기반할 수 있으며, 예를 들어, LSTM(long short-term memory) 또는 GRU(gated recurrent unit)을 포함할 수 있다.
유사도 맵 생성부(210)는 그레이 스케일 프레임들(GF)을 수신하고, 그레이 스케일 프레임들(GF) 간의 유사도를 계산함으로써 복수의 유사도 맵들(SM)을 생성할 수 있다. 본 명세서에서 그레이 스케일 프레임(GF)은 그레이 스케일 비디오(흑백 영상)을 구성하는 프레임으로서 각 화소의 값이 빛의 양을 나타내는 값만으로 구성됨에 따라서 회색조로 구성되는 프레임을 의미할 수 있다. 또한, 본 명세서에서 유사도 맵은 그레이 스케일 프레임들 간의 형태/객체의 공간적 유사도를 나타내는 벡터를 의미할 수 있다. 일 실시예에서, 유사도 맵 생성부(210)는 미리 학습된 딥러닝 모델을 활용하여 그레이 스케일 프레임들(GF)의 공간 단위 유사도(Spatial Similarity)를 계산함으로써 그레이 스케일 프레임들(GF) 중 어느 두개 간의 공간적 유사도 정보를 포함하는 복수의 유사도 맵들(SM)을 생성할 수 있고, 일 예시에서, 미리 학습된 딥러닝 모델로서 DeepExemplar를 활용할 수 있다.
레퍼런스 프레임 결정부(220)는 복수의 유사도 맵들(SM)을 기초로 복수의 그레이 스케일 프레임들(GF)로부터 레퍼런스 프레임(RF_G)을 결정할 수 있다. 일 실시예에서, 레퍼런스 프레임 결정부(220)는 최대의 유사도 값을 갖는 그레이 스케일 프레임(GF)을 레퍼런스 프레임(RF_G)으로 결정할 수 있다. 본 개시의 일 실시예에 따르면, 비디오 컬러링 시스템(10)은 단순히 미들 프레임이나 지정된 순서의 프레임이 아닌 공간적 유사도에 대한 유사도 맵(SM)을 기초로 레퍼런스 프레임을 결정할 수 있고, 결과적으로 복수의 그레이 스케일 프레임들(GF)과 가장 유사도가 높은 레퍼런스 프레임을 결정함으로써 복수의 그레이 스케일 프레임들(GF)을 가장 대표할 수 있는 레퍼런스 프레임을 결정할 수 있고, 레퍼런스 프레임 기반 컬러링 기법에 의한 채색의 정확도가 높아질 수 있다.
또 다른 실시예에서, 레퍼런스 프레임 결정부(220)는 그 조합이 최대의 유사도 값을 갖는 복수의 그레이 스케일 프레임들(GF)을 복수의 레퍼런스 프레임들(RF_G)로 결정할 수 있다. 본 개시의 일 실시예에 따르면, 비디오 컬러링 시스템(10)은 단 하나의 레퍼런스 프레임 만을 이용하는 것이 아니라, 조합에 기한 유사도가 최대가 되는 복수의 레퍼런스 프레임들(RF_G)을 선택하고, 선택된 복수의 레퍼런스 프레임들(RF_G)을 활용하여 레퍼런스 기반 컬러링을 수행함으로써 하나의 레퍼런스에 비해 더 다양한 객체 또는 형태의 색상을 커버할 수 있고, 결과적으로 컬러링의 정확도가 높아질 수 있다.
레퍼런스 프레임 결정부(220)는 그레이 스케일의 레퍼런스 프레임(RF_G)을 전송하고, 대응되는 컬러 레퍼런스 프레임(RF_C)을 획득할 수 있다. 일 실시예에서, 레퍼런스 프레임 결정부(220)는 그레이 스케일의 레퍼런스 프레임(RF_G)에 대해서 사용자 또는 사람에 의해 직접 채색된 컬러 레퍼런스 프레임(RF_C)을 획득할 수 있고, 또 다른 실시예에서, 레퍼런스 프레임 결정부(220)는 그레이 스케일의 레퍼런스 프레임(RF_G)에 대해서 딥러닝 알고리즘을 활용한 다른 컬러링 기법(예를 들면, 자동 컬러링 기법(automatic colrization), 유저 가이드 기반 컬러링 기법(User-guided colorization))을 활용하여 컬러 레퍼런스 프레임(RF_C)을 획득할 수 있다.
컬러링 부(230)는 그레이 스케일 프레임들(GF)에 대해서 컬러 레퍼런스 프레임(RF_C)을 활용하여 컬러링을 수행함으로써 컬러 프레임들(CF)을 생성할 수 있다. 일 예시에서, 컬러링 부(230)는 딥러닝 알고리즘을 활용하여 레퍼런스 기반 컬러링을 수행할 수 있다. 일 실시예에서, 컬러링 부(230)는 복수의 컬러 레퍼런스 프레임들 중 픽셀 단위 유사도가 높은 레퍼런스 프레임을 활용하여 채색을 수행할 수 있다. 본 개시의 일 실시예에 따르면, 비디오 컬러링 시스템(10)은 픽셀 단위로 유사도가 높은 레퍼런스 프레임을 선택하여 채색을 수행함으로써 복수의 레퍼런스 프레임들 중 어느 프레임을 기반으로 채색을 수행할 지 효율적으로 선택할 수 있고, 결과적으로 채색의 정확도가 높아질 수 있다.
도 4는 본 개시의 예시적 실시예에 따른 비디오 컬러링 방법을 나타내는 순서도이다.
도 4를 참조하면, 비디오 컬러링 시스템(10)은 복수의 그레이 스케일 프레임들(GF)에 대한 복수의 유사도 맵들(SM)을 생성할 수 있다(S10). 비디오 컬러링 시스템(10)은 복수의 유사도 맵들(SM)을 활용하여 복수의 그레이 스케일 프레임들(GF) 중 유사도가 가장 높은 복수의 레퍼런스 프레임들(RF_G)을 결정할 수 있다(S20). 비디오 컬러링 시스템(10)은 복수의 레퍼런스 프레임들(RF_G) 각각에 대한 복수의 컬러 레퍼런스 프레임들(RF_C)을 획득할 수 있다(S30). 비디오 컬러링 시스템(10)은 복수의 컬러 레퍼런스 프레임들(RF_C)을 기초로 복수의 그레이 스케일 프레임들(GF)에 대한 컬러링을 수행할 수 있다(S40).
도 5는 본 개시의 예시적 실시예에 따른 비디오 컬러링 방법을 나타내는 순서도이다. 상세하게는, 도 5는 도 4의 복수의 레퍼런스 프레임들(RF_G)을 결정하는 단계(S20)를 상세하게 나타낸다.
도 5를 참조하면, 비디오 컬러링 시스템(10)은 복수의 유사도 맵들(SM) 중 적어도 두 개의 유사도 맵들에 대해 픽셀 별로 픽셀 유사도 값의 최대 값을 결정할 수 있다(S210). 본 명세서에서 픽셀 유사도 값은 유사도 맵(SM)에서 특정 픽셀에 대한 그레이 스케일 프레임들 간의 유사도에 대응하는 데이터를 나타낼 수 있다.
비디오 컬러링 시스템(10)은 결정된 최대 값의 유사도 값으로 구성된 조합 유사도 맵(CSM)을 결정할 수 있다(S220). 본 명세서에서 조합 유사도 맵(CSM)은 복수의 유사도 맵들(SM)의 최대 픽셀 유사도 값만을 추출하여 조합한 벡터를 의미할 수 있다.
비디오 컬러링 시스템(10)은 조합 유사도 맵의 픽셀 유사도 값의 합을 기초로 최대 유사도를 갖는 최대 유사도 맵 그룹을 결정할 수 있다(S230). 본 명세서에서 최대 유사도 맵 그룹은 조합시 최대의 유사도를 갖는 복수의 유사도 맵들을 의미할 수 있다.
비디오 컬러링 시스템(10)은 최대 유사도 맵 그룹에 대응하는 그레이 스케일 프레임들(GF)을 복수의 레퍼런스 프레임들(RF_G)로 결정할 수 있다(S240).
본 개시의 일 실시예에 따르면, 비디오 컬러링 시스템(10)은 조합시 최대의 유사도를 갖는 복수의 그레이 스케일 프레임들(GF)을 레퍼런스 프레임(RF_G)으로 결정함으로써 그레이 스케일 프레임들(GF)의 대부분에 포함되는 객체/구성을 대표할 수 있는 레퍼런스 프레임(RF_G)을 결정할 수 있고, 결과적으로 그레이 스케일 비디오의 모든 프레임에 대해서 블라인드 영역이 없이 채색될 수 있다.
도 6은 본 개시의 예시적 실시예에 따른 비디오 컬러링 방법을 나타내는 도면이다. 상세하게는 도 6은 도 4의 복수의 레퍼런스 프레임들(RF_G)을 결정하는 단계(S20)의 일 예시를 나타낸다.
도 6을 참조하면, 비디오 컬러링 시스템(10)은 복수의 그레이 스케일 프레임들(GF1~GF6)에 대한 유사도 맵들(SM1~SM6)을 생성할 수 있다. 일 예시에서, 제1 유사도 맵(SM1)은 제1 그레이 스케일 프레임(GF1)과 나머지 그레이 스케일 프레임들 간의 유사도 정보를 포함할 수 있고, 제2 유사도 맵(SM2)은 제2 그레이 스케일 프레임(GF2)과 나머지 그레이 스케일 프레임들 간의 유사도 정보를 포함할 수 있고, 제3 유사도 맵(SM3)은 제3 그레이 스케일 프레임(GF3)과 나머지 그레이 스케일 프레임들 간의 유사도 정보를 포함할 수 있다. 유사하게, 제4 유사도 맵(SM4) 내지 제6 유사도 맵(SM6) 역시 각각 제3 그레이 스케일 프레임(GF3) 내지 제6 그레이 스케일 프레임(GF6)과 나머지 그레이 스케일 프레임들 간의 유사도 정보를 포함할 수 있다.
비디오 컬러링 시스템(10)은 유사도 맵들(SM1~SM6)사이의 최대 유사도 탐색(MSS)을 수행할 수 있다. 최대 유사도 탐색(MSS)에 대해서는 도 7에서 상세하게 후술한다.
비디오 컬러링 시스템(10)은 최대 유사도 탐색(MSS)에 의해 조합시 최대의 유사도 값을 갖는 최대 유사도 맵 그룹(SMG_Max)을 결정할 수 있다. 도 6의 예시에서는 제2 유사도 맵(SM2)과 제3 유사도 맵(SM3)이 최대 유사도 맵 그룹(SMG_Max)으로서 결정될 수 있다.
비디오 컬러링 시스템(10)은 제2 유사도 맵(SM2)에 대응하는 제2 그레이 스케일 프레임(GF2)을 제1 레퍼런스 프레임(RF_G1)으로 결정하고, 제3 유사도 맵(SM3)에 대응하는 제3 그레이 스케일 프레임(GF3)을 제2 레퍼런스 프레임(RF_G2)으로 결정할 수 있다.
본 개시의 일 실시예에 따르면, 비디오 컬러링 시스템(10)은 유사도 맵의 조합을 기초로 최대 유사도 값을 갖는 최대 유사도 맵 그룹(SMG_Max)을 결정할 수 있고, 최대 유사도 맵 그룹(SMG_Max)에 대응하는 그레이 스케일 프레임을 레퍼런스 프레임으로 결정함으로써 조합하는 경우 유사도가 최대가 되는 복수의 레퍼런스 프레임들을 통해 컬러링을 수행할 수 있다.
도 6에서는 두 개의 레퍼런스 프레임을 결정하는 예시가 도시되어 있으나, 이는 일 예시일 뿐이고, 세 개 이상의 레퍼런스 프레임을 결정하는 실시예에도 본 개시의 기술적 사상이 적용될 수 있음은 당연하다.
도 7은 본 개시의 예시적 실시예에 따른 비디오 컬러링 방법을 나타내는 도면이다. 상세하게는 도 7은 도 6의 최대 유사도 탐색(MSS)에 대한 일 예시를 나타낸다.
도 7을 참고하면, 비디오 컬러링 시스템(10)은 제1 유사도 맵(SM1), 제2 유사도 맵(SM2) 및 제3 유사도 맵(SM3)을 생성할 수 있다. 도 7에서는 제1 유사도 맵(SM1), 제2 유사도 맵(SM2) 및 제3 유사도 맵(SM3)이 3X3의 숫자 행렬로 표시되어 있으나, 이는 설명의 편의를 위함이고, 유사도 맵은 픽셀의 유사도를 나타낼 수 있는 더 다양한 형태 및 데이터를 포함할 수 있다.
제1 유사도 맵(SM1), 제2 유사도 맵(SM2) 및 제3 유사도 맵(SM3)는 각각 픽셀 별로 픽셀 유사도 값들을 포함할 수 있다. 일 예시에서, 제1 유사도 맵(SM1)의 경우 제1 픽셀에 대해서는 픽셀 유사도 값으로서 '0'을 저장하고, 제2 픽셀에 대해서는 픽셀 유사도 값으로서 '0.6'을 저장하고, 제3 픽셀에 대해서는 픽셀 유사도 값으로서 '1'을 저장할 수 있다. 또한, 제2 유사도 맵(SM2)의 경우 제1 픽셀에 대해서는 픽셀 유사도 값으로서 '0'을 저장하고, 제2 픽셀에 대해서는 픽셀 유사도 값으로서 '0.8'를 저장하고, 제3 픽셀에 대해서는 픽셀 유사도 값으로서 '1'을 저장할 수 있고, 제3 유사도 맵(SM3)의 경우 제1 픽셀에 대해서는 픽셀 유사도 값으로서 '1'를 저장하고, 제2 픽셀에 대해서는 픽셀 유사도 값으로서 '0.3'를 저장하고, 제3 픽셀에 대해서는 픽셀 유사도 값으로서 '0'을 저장할 수 있다.
본 개시의 일 실시예에 따르면, 비디오 컬러링 시스템(10)은 픽셀 유사도 값들의 최대 값을 조합함으로서 조합 유사도 맵들(CSM1~CSM3)을 생성하고, 조합 유사도 맵들(CSM1~CSM3)의 픽셀 유사도 값들을 기초로 최대 유사도 맵 그룹(SMG_Max)을 결정할 수 있다.
도 7의 예시에서, 비디오 컬러링 시스템(10)은 제1 유사도 맵(SM1)과 제2 유사도 맵(SM2)을 조합함으로써 제1 조합 유사도 맵(CSM1)을 생성하고, 제2 유사도 맵(SM2)과 제3 유사도 맵(SM3)을 조합함으로써 제2 조합 유사도 맵(CSM2)을 생성하고, 제1 유사도 맵(SM1)과 제3 유사도 맵(SM3)을 조합함으로써 제3 조합 유사도 맵(CSM3)을 생성할 수 있다. 또한, 비디오 컬러링 시스템(10)은 각 조합 유사도 맵(CSM1~CSM3)의 픽셀 유사도 값을 더한 값이 최대가 되는 제2 조합 유사도 맵(CSM2)에 포함되는 제2 유사도 맵(SM2) 및 제3 유사도 맵(SM3)을 최대 유사도 맵 그룹(SMG_Max)으로 결정할 수 있다.
각각의 픽셀 유사도 값들은 대응되는 그레이 스케일 프레임들에 대한 픽셀 단위 유사도를 나타내므로, 픽셀 유사도 값이 높다는 의미는 해당 픽셀에 대해서 커버할 수 있는 그레이 스케일 프레임들이 많다는 의미일 수 있다. 일 예시에서, 제1 픽셀의 경우, 제3 유사도 맵에 대응하는 그레이 스케일 프레임이 레퍼런스 프레임으로 더 적합하며, 제2 픽셀의 경우, 제2 유사도 맵에 대응하는 그레이 스케일 프레임이 레퍼런스 프레임으로 더 적합할 수 있다.
따라서, 전체 픽셀 유사도 값이 높은 제1 유사도 맵(SM1)과 제2 유사도 맵(SM2)을 레퍼런스로 하더라도 유사한 영역(예를 들면, '0'값을 갖는 제1 픽셀과 제9 픽셀)에 블라인드 영역이 발생하고, 결과적으로 해당 영역에는 채색의 정확도가 떨어질 수 있다.
본 개시의 일 실시예에 따르면, 유사도 맵들에 포함되는 픽셀 유사도 값들을 최대값 위주로 조합하고, 조합 유사도 맵의 픽셀 유사도 값들을 기초로 레퍼런스 프레임을 결정함으로써 블라인드 영역이 최소화될 수 있고, 결과적으로 컬러링의 정확도가 높아질 수 있다.
도 8은 본 개시의 예시적 실시예에 따른 비디오 컬러링 방법을 나타내는 순서도이다. 상세하게는, 도 8는 도 4의 복수의 그레이 스케일 프레임들에 대한 컬러링을 수행하는 단계(S40)를 상세하게 나타낸다.
비디오 컬러링 시스템(10)은 픽셀 별로 최대 유사도 맵 그룹 중 더 높은 유사도 값을 갖는 유사도 맵을 결정할 수 있다(S410). 비디오 컬러링 시스템(10)은 더 높은 유사도 값을 갖는 것으로 결정된 유사도 맵에 대응하는 레퍼런스 프레임을 기초로 해당 픽셀에 대한 컬러링을 수행할 수 있다(S420).
본 개시의 일 실시예에 따르면, 비디오 컬러링 시스템(10)은 복수의 레퍼런스 프레임들에 대해서 더 높은 유사도 값을 갖는 레퍼런스 프레임을 기초로 컬러링을 수행함으로써 픽셀 단위로 더 높은 정확도의 컬러링이 수행될 수 있다.
도 9는 본 개시의 예시적 실시예에 따른 비디오 컬러링 방법을 나타내는 도면이다. 상세하게는 도 9는 도 4의 복수의 그레이 스케일 프레임들에 대한 컬러링을 수행하는 단계(S40)에 대한 일 예시를 나타낸다.
도 9를 참고하면, 비디오 컬러링 시스템(10)은 최대 유사도 맵 그룹(SMG_Max)로서 제2 유사도 맵(SM2) 및 제3 유사도 맵(SM3)을 획득할 수 있다. 또한, 비디오 컬러링 시스템(10)은 최대 유사도 맵 그룹(SMG_Max)에 포함된 제2 유사도 맵(SM2) 및 제3 유사도 맵(SM3)의 픽셀 유사도 값을 비교함으로써 픽셀 단위로 더 높은 픽셀 유사도 값을 결정할 수 있다.
도 9의 예시에서, 제1 픽셀은 제3 유사도 맵(SM3)이 '1'로서 더 높은 유사도 값을 가지고 있으므로, 비디오 컬러링 시스템(10)은 제1 픽셀에 대해서는 제3 유사도 맵(SM3)을 선택할 수 있다. 반면, 제2 픽셀은 제2 유사도 맵(SM2)이 '0.8'로서 더 높은 유사도 값을 가지고 있으므로, 비디오 컬러링 시스템(10)은 제2 픽셀에 대해서는 제2 유사도 맵(SM2)을 선택할 수 있다.
비디오 컬러링 시스템(10)은 선택된 유사도 맵에 대응되는 컬러 레퍼런스 프레임을 기초로 컬러링을 수행할 수 있다. 일 예시에서, 타겟 그레이 프레임(TF)의 제1 픽셀(Px2)에 대해서는 제3 유사도 맵(SM3)에 대응되는 컬러 레퍼런스 프레임(GF3)을 기초로 채색이 수행될 수 있고, 타겟 그레이 프레임(TF)의 제2 픽셀(Px2)에 대해서는 제2 유사도 맵(SM2)에 대응되는 컬러 레퍼런스 프레임(GF2)을 기초로 채색이 수행될 수 있다.
도 10은 본 개시의 예시적 실시예에 따른 비디오 컬러링 방법을 나타내는 순서도이다. 상세하게는, 도 10는 도 8의 해당 픽셀에 대한 컬러링 수행 단계(S420)의 또 다른 실시예를 나타낸다.
도 10을 참조하면, 비디오 컬러링 시스템(10)은 복수의 그레이 스케일 프레임들에 포함된 객체를 구분할 수 있다(S421). 일 실시예에서, 비디오 컬러링 시스템(10)은 미리 학습된 딥러닝 모델을 활용하여 복수의 그레이 스케일 프레임들(GF)에 포함된 배경과 객체를 구분하고, 객체의 유사성을 기초로 그룹핑 및 레이블링을 함으로써 객체를 구분할 수 있다.
비디오 컬러링 시스템(10)은 복수의 레퍼런스 프레임들 중 컬러링 대상이 되는 타겟 그레이 스케일 프레임(TF)에 포함된 객체와 동일한 객체를 포함하는 레퍼런스 프레임(RF_C)을 결정할 수 있다(S422). 또한, 비디오 컬러링 시스템(10)은 결정된 레퍼런스 프레임(RF_C)을 기초로 타겟 그레이 스케일 프레임(TF)에 대한 컬러링을 수행할 수 있다(S423).
본 개시의 일 실시예에 따르면, 비디오 컬러링 시스템(10)은 객체를 기초로 레퍼런스 프레임을 결정할 수 있고, 결과적으로 객체 단위의 채색이 가능함에 따라서 정확한 컬러링이 수행될 수 있다.
도 11은 본 개시의 예시적 실시예에 따른 비디오 컬러링 시스템을 나타내는 블록도이다.
도 9를 참조하면, 비디오 컬러링 시스템(1000)은 프로세서(1100), 메모리 장치(1200), 스토리지 장치(1300), 파워 서플라이(1400) 및 입출력 장치(1500)를 포함할 수 있다. 한편, 도 11에는 도시되지 않았지만, 비디오 컬러링 시스템(1000)은 비디오 카드, 사운드 카드, 메모리 카드, USB 장치 등과 통신하거나, 또는 다른 전자 기기들과 통신할 수 있는 포트(port)들을 더 포함할 수 있다.
이와 같이, 비디오 컬러링 시스템(1000)에 포함된 프로세서(1100), 메모리 장치(1200), 스토리지 장치(1300), 파워 서플라이(1400) 및 입출력 장치(1500)는, 본 발명의 기술적 사상에 의한 실시예들에 따른 비디오 컬러링 시스템의 동작을 수행할 수 있다. 구체적으로, 도 1 내지 도 10에서 상술한 비디오 컬러링 시스템(1000)의 동작은 메모리 장치(1200) 또는 스토리지 장치(1300)에 저장된 적어도 하나의 명령어를 포함하는 컴퓨터 프로그램에 기초하여, 프로세서(1100)가 수행하는 동작을 의미할 수 있다.
프로세서(1100)는 특정 계산들 또는 태스크(task)들을 수행할 수 있다. 실시예에 따라, 프로세서(1100)는 마이크로프로세서(micro-processor), CPU(Central Processing Unit), GPU(Graphic Processing Unit), NPU(Neural Processing Unit), 램(RAM), 롬(ROM), 시스템 버스 및 애플리케이션 프로세서 중 적어도 하나를 포함할 수 있다. 프로세서(1100)는 어드레스 버스(address bus), 제어 버스(control bus) 및 데이터 버스(data bus) 등과 같은 버스(1600)를 통하여 메모리 장치(1200), 스토리지 장치(1300) 및 입출력 장치(1500)와 통신을 수행할 수 있다. 실시예에 따라, 프로세서(1100)는 주변 구성요소 상호연결(Peripheral Component Interconnect; PCI) 버스와 같은 확장 버스에도 연결될 수 있다.
메모리 장치(1200)는 컴퓨팅 시스템(1000)의 동작에 필요한 데이터를 저장할 수 있다. 예를 들어, 메모리 장치(1200)는 디램(DRAM), 모바일 디램, 에스램(SRAM), 피램(PRAM), 에프램(FRAM), 알램(RRAM) 및/또는 엠램(MRAM)으로 구현될 수 있다. 스토리지 장치(1300)는 솔리드 스테이트 드라이브(solid state drive), 하드 디스크 드라이브(hard disk drive), 씨디롬(CD-ROM) 등을 포함할 수 있다. 메모리 장치(1200) 및 스토리지 장치(1300)는 도 1 내지 도 10에서 상술한 비디오 컬러링 방법에 관한 프로그램을 저장할 수 있다.
입출력 장치(1500)는 키보드, 키패드, 마우스 등과 같은 입력 수단 및 프린터, 디스플레이 등과 같은 출력 수단을 포함할 수 있다. 전원 장치(1400)는 컴퓨팅 시스템(1000)의 동작에 필요한 동작 전압을 공급할 수 있다.
이상에서와 같이 도면과 명세서에서 예시적인 실시예들이 개시되었다. 본 명세서에서 특정한 용어를 사용하여 실시예들을 설명되었으나, 이는 단지 본 개시의 기술적 사상을 설명하기 위한 목적에서 사용된 것이지 의미 한정이나 청구범위에 기재된 본 개시의 범위를 제한하기 위하여 사용된 것은 아니다. 그러므로 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 개시의 진정한 기술적 보호범위는 첨부된 청구범위의 기술적 사상에 의해 정해져야 할 것이다.

Claims (6)

  1. 적어도 하나의 프로세서에 의해 수행되는 그레이 스케일 비디오에 대한 비디오 컬러링 방법에 있어서,
    미리 학습된 딥러닝 모델을 활용하여 상기 그레이 스케일 비디오를 구성하는 복수의 그레이 스케일 프레임들 간의 공간 단위 유사도에 대한 정보를 포함하는 복수의 유사도 맵들을 생성하는 단계;
    상기 복수의 유사도 맵들을 이용해서 상기 유사도를 기준으로 상기 복수의 그레이 스케일 프레임들 중 복수의 레퍼런스 프레임들을 결정하는 단계;
    상기 복수의 레퍼런스 프레임들 각각에 대한 복수의 컬러 레퍼런스 프레임들을 획득하는 단계;및
    상기 복수의 컬러 레퍼런스 프레임들을 기초로 상기 복수의 그레이 스케일 프레임들에 대한 컬러링을 수행하는 단계;를 포함하고,
    상기 복수의 레퍼런스 프레임들을 결정하는 단계는,
    상기 복수의 유사도 맵들에 포함되는 적어도 두 개의 유사도 맵들에 대해서 픽셀 별로 픽셀 유사도 값의 최대 값을 결정하는 단계;
    결정된 최대 값의 픽셀 유사도 값으로 구성된 조합 유사도 맵을 결정하는 단계;
    상기 조합 유사도 맵의 픽셀 유사도 값의 합을 기초로 상기 최대의 유사도를 갖는 최대 유사도 맵 그룹을 결정하는 단계;및
    상기 최대 유사도 맵 그룹에 대응되는 그레이 스케일 프레임들을 상기 복수의 레퍼런스 프레임들로 결정하는 단계;를 포함하는 비디오 컬러링 방법.
  2. 제1항에 있어서,
    상기 복수의 유사도 맵들은 상기 복수의 그레이 스케일 프레임들 중 제1 그레이 스케일 프레임과 나머지 그레이 스케일 프레임들 사이의 픽셀 값의 유사도 정보를 포함하는 제1 유사도 맵 및 상기 복수의 그레이 스케일 프레임들 중 상기 제1 그레이 스케일 프레임이 아닌 제2 그레이 스케일 프레임과 나머지 그레이 스케일 프레임들 사이의 픽셀 값의 유사도 정보를 포함하는 제2 유사도 맵을 포함하는 비디오 컬러링 방법.
  3. 삭제
  4. 삭제
  5. 제1항에 있어서,
    상기 컬러링을 수행하는 단계는,
    픽셀 별로 최대 유사도 맵 그룹 중 더 높은 픽셀 유사도 값을 갖는 유사도 맵을 결정하는 단계;
    결정된 상기 유사도 맵에 대응되는 레퍼런스 프레임을 기초로 상기 복수의 그레이 스케일 프레임들에 대한 컬러링을 수행하는 단계;를 포함하는 비디오 컬러링 방법.
  6. 제5항에 있어서,
    상기 결정된 상기 유사도 맵에 대응되는 레퍼런스 프레임을 기초로 상기 복수의 그레이 스케일 프레임들에 대한 컬러링을 수행하는 단계는,
    딥러닝 알고리즘을 활용하여 상기 복수의 그레이 스케일 프레임들에 포함된 객체를 구분하는 단계;
    상기 복수의 레퍼런스 프레임들 중 컬러링 대상이 되는 타겟 그레이 스케일 프레임에 포함된 객체와 동일한 객체를 포함하는 레퍼런스 프레임을 결정하는 단계;및
    상기 결정된 레퍼런스 프레임을 기초로 상기 타겟 그레이 스케일 프레임에 대한 컬러링을 수행하는 단계;를 포함하는 비디오 컬러링 방법.
KR1020230124338A 2023-09-18 2023-09-18 유사도를 기초로 선택된 레퍼런스 프레임을 이용하여 그레이 스케일 비디오를 컬러링하는 비디오 컬러링 방법 및 이를 수행하는 비디오 컬러링 시스템 KR102647615B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020230124338A KR102647615B1 (ko) 2023-09-18 2023-09-18 유사도를 기초로 선택된 레퍼런스 프레임을 이용하여 그레이 스케일 비디오를 컬러링하는 비디오 컬러링 방법 및 이를 수행하는 비디오 컬러링 시스템

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020230124338A KR102647615B1 (ko) 2023-09-18 2023-09-18 유사도를 기초로 선택된 레퍼런스 프레임을 이용하여 그레이 스케일 비디오를 컬러링하는 비디오 컬러링 방법 및 이를 수행하는 비디오 컬러링 시스템

Publications (1)

Publication Number Publication Date
KR102647615B1 true KR102647615B1 (ko) 2024-03-14

Family

ID=90249005

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020230124338A KR102647615B1 (ko) 2023-09-18 2023-09-18 유사도를 기초로 선택된 레퍼런스 프레임을 이용하여 그레이 스케일 비디오를 컬러링하는 비디오 컬러링 방법 및 이를 수행하는 비디오 컬러링 시스템

Country Status (1)

Country Link
KR (1) KR102647615B1 (ko)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130101126A (ko) * 2010-12-09 2013-09-12 노키아 코포레이션 비디오 시퀀스로부터의 제한된 콘텍스트 기반 식별 키 프레임

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20130101126A (ko) * 2010-12-09 2013-09-12 노키아 코포레이션 비디오 시퀀스로부터의 제한된 콘텍스트 기반 식별 키 프레임

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Amit Mahajan et al., "An End-to-End Approach for Automatic and Consistent Colorization of Gray-Scale Videos Using Deep-Learning Techniques", Algorithms for Intelligent Systems book series (AIS), 539p-* *
Rei Endo et al., "A Practical Monochrome Video Colorization Framework for Broadcast Program Production", IEEE Transactions on Broadcasting, (2020.10.20.)* *

Similar Documents

Publication Publication Date Title
US11610115B2 (en) Learning to generate synthetic datasets for training neural networks
US11557085B2 (en) Neural network processing for multi-object 3D modeling
Jiang et al. Self-supervised relative depth learning for urban scene understanding
US20200074707A1 (en) Joint synthesis and placement of objects in scenes
GB2573849A (en) Utilizing a deep neural network-based model to identify visually similar digital images based on user-selected visual attributes
JP7059318B2 (ja) 地域的特徴を有する分類器学習のための学習データ生成方法およびそのシステム
JP7403638B2 (ja) 高速なスパースニューラルネットワーク
CN111656390B (zh) 用于机器学习的图像变换
CN111445581A (zh) 使用数据驱动先验的网格重建
EP3987443A1 (en) Recurrent multi-task convolutional neural network architecture
US20230394743A1 (en) Sub-pixel data simulation system
CN111739005B (zh) 图像检测方法、装置、电子设备及存储介质
US20210398331A1 (en) Method for coloring a target image, and device and computer program therefor
US10936938B2 (en) Method for visualizing neural network models
US20220335672A1 (en) Context-aware synthesis and placement of object instances
CN114118347A (zh) 用于神经网络量化的细粒度每向量缩放
US20230153965A1 (en) Image processing method and related device
Mishra et al. Semantic segmentation datasets for resource constrained training
KR102647615B1 (ko) 유사도를 기초로 선택된 레퍼런스 프레임을 이용하여 그레이 스케일 비디오를 컬러링하는 비디오 컬러링 방법 및 이를 수행하는 비디오 컬러링 시스템
US11335045B2 (en) Combining feature maps in an artificial intelligence semiconductor solution
KR20230092514A (ko) 렌더링 방법 및 장치
KR102504007B1 (ko) 분할 이미지를 통해 컨텍스트 벡터를 생성하는 컨텍스트 벡터 추출 모듈 및 이의 동작 방법
KR102485872B1 (ko) 컨텍스트 벡터를 활용하여 이미지 화질을 개선시키는 이미지 화질 개선 방법 및 이를 수행하는 이미지 화질 개선 모듈
US20230316590A1 (en) Generating digital paintings utilizing an intelligent painting pipeline for improved brushstroke sequences
US20230085156A1 (en) Entropy-based pre-filtering using neural networks for streaming applications

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant