KR20200015095A - 영상 처리 장치 및 그 동작방법 - Google Patents

영상 처리 장치 및 그 동작방법 Download PDF

Info

Publication number
KR20200015095A
KR20200015095A KR1020180090432A KR20180090432A KR20200015095A KR 20200015095 A KR20200015095 A KR 20200015095A KR 1020180090432 A KR1020180090432 A KR 1020180090432A KR 20180090432 A KR20180090432 A KR 20180090432A KR 20200015095 A KR20200015095 A KR 20200015095A
Authority
KR
South Korea
Prior art keywords
image
classifier
neural network
deep neural
value
Prior art date
Application number
KR1020180090432A
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 KR1020180090432A priority Critical patent/KR20200015095A/ko
Priority to US17/264,656 priority patent/US11961203B2/en
Priority to EP19844841.7A priority patent/EP3809335A4/en
Priority to CN201980051536.7A priority patent/CN112534443A/zh
Priority to PCT/KR2019/009400 priority patent/WO2020027519A1/ko
Publication of KR20200015095A publication Critical patent/KR20200015095A/ko

Links

Images

Classifications

    • G06N3/0454
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques
    • G06F18/241Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches
    • G06F18/2413Classification techniques relating to the classification model, e.g. parametric or non-parametric approaches based on distances to training or reference patterns
    • G06K9/6267
    • 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
    • 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/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/764Arrangements for image or video recognition or understanding using pattern recognition or machine learning using classification, e.g. of video objects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/82Arrangements for image or video recognition or understanding using pattern recognition or machine learning using neural networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N9/00Details of colour television systems
    • H04N9/64Circuits for processing colour signals
    • H04N9/67Circuits for processing colour signals for matrixing
    • 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
    • G06N3/084Backpropagation, e.g. using gradient descent

Landscapes

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

Abstract

영상 처리 장치에 관한 것으로, 하나 이상의 인스트럭션들을 저장하는 메모리 및 메모리에 저장된 하나 이상의 인스트럭션들을 실행하는 프로세서를 포함하고, 프로세서는, 제1 영상 및 영상 처리의 목적을 나타내는 분류자(classifier)를 획득하고, 딥 뉴럴 네트워크(DNN: Deep neural network)를 이용하여, 제1 영상을 상기 분류자가 나타내는 목적에 따라 처리하며, 딥 뉴럴 네트워크는 입력 영상들을 서로 다른 목적에 따라 처리하는 네트워크인, 영상 처리 장치가 개시된다.

Description

영상 처리 장치 및 그 동작방법{Image processing apparatus and operating method for the same}
다양한 실시예들은 딥 뉴럴 네트워크를 이용하여, 영상을 처리하는 영상 처리 장치 및 그 동작방법에 관한 것으로서, 더욱 상세하게는 단일 네트워크를 이용하여, 입력되는 영상들을 서로 다른 목적에 따라 처리하는 영상 처리 장치 및 그 동작방법에 관한 것이다.
컴퓨터 기술의 발달과 함께 데이터 트래픽이 지수함수 형태로 증가하면서 인공지능은 미래 혁신을 주도하는 중요한 트랜드로 자리잡았다. 인공지능은 사람의 사고방식을 모방하는 방식이기 때문에 사실상 전 산업에 무한하게 응용이 가능하다. 인공지능의 대표적인 기술로는 패턴 인식, 기계 학습, 전문가 시스템, 뉴럴 네트워크, 자연어 처리 등이 있다.
뉴럴 네트워크는 인간의 생물학적 신경 세포의 특성을 수학적 표현에 의해 모델링한 것으로, 인간이 가지고 있는 학습이라는 능력을 모방한 알고리즘을 이용한다. 이 알고리즘을 통하여, 뉴럴 네트워크는 입력 데이터와 출력 데이터 사이의 사상(mapping)을 생성할 수 있고, 이러한 사상을 생성하는 능력은 뉴럴 네트워크의 학습 능력이라고 표현될 수 있다. 또한, 뉴럴 네트워크는 학습된 결과에 기초하여, 학습에 이용되지 않았던 입력 데이터에 대하여, 올바른 출력 데이터를 생성할 수 있는 일반화 능력을 가진다.
다양한 실시예들은, 단일 딥 뉴럴 네트워크를 이용하여, 입력되는 영상들을 다양한 목적에 따라 처리할 수 있는 영상 처리 장치 및 그 동작방법을 제공할 수 있다.
일 실시예에 따른 영상 처리 장치는, 하나 이상의 인스트럭션들을 저장하는 메모리, 및 상기 메모리에 저장된 상기 하나 이상의 인스트럭션들을 실행하는 프로세서를 포함하고, 상기 프로세서는, 제1 영상 및 영상 처리의 목적을 나타내는 분류자(classifier)를 획득하고, 딥 뉴럴 네트워크(DNN: Deep neural network)를 이용하여, 상기 제1 영상을 상기 분류자가 나타내는 목적에 따라 처리하며, 상기 딥 뉴럴 네트워크는 입력 영상들을 서로 다른 목적에 따라 처리하는 네트워크일 수 있다.
일 실시예에 따른 딥 뉴럴 네트워크는 N개의 컨볼루션 레이어들을 포함하고, 상기 프로세서는, 상기 제1 영상에 기초하여, 입력 영상을 생성하고, 상기 N개의 컨볼루션 레이어들에서, 상기 입력 영상 및 상기 분류자에 하나 이상의 커널들을 적용하여, 컨볼루션 연산을 수행함으로써, 특징 정보를 추출하고, 추출된 상기 특징 정보에 기초하여, 제2 영상을 생성할 수 있다.
일 실시예에 따른 프로세서는, 상기 제1 영상에 포함되는 R, G, B 채널들을 YUV 방식의 Y, U, V 채널들로 변환하고, 상기 Y, U, V 채널들 중 Y 채널에 대한 영상을 상기 입력 영상으로 결정할 수 있다.
일 실시예에 따른 프로세서는, 상기 Y 채널에 대한 영상이 상기 딥 뉴럴 네트워크에서 처리되어 출력되는 영상, 상기 Y, U, V 채널들 중 U 채널 및 V 채널에 대한 영상들에 기초하여, 상기 제2 영상을 생성할 수 있다.
일 실시예에 따른 분류자에 포함되는 픽셀들은 제1 값 및 상기 제1 값보다 큰 제2 값 중 적어도 하나를 가지며, 상기 제1 값은 제1 목적을 나타내고, 상기 제2 값은 제2 목적을 나타낼 수 있다.
일 실시예에 따른 프로세서는, 상기 분류자에 포함되는 모든 픽셀들이 상기 제1 값을 가지는 경우, 상기 제1 영상을, 상기 제1 목적에 따라 처리하고, 상기 분류자에 포함되는 모든 픽셀들이 상기 제2 값을 가지는 경우, 상기 제1 영상을 상기 제2 목적에 따라 처리할 수 있다.
일 실시예에 따른 분류자에 포함되는 제1 영역의 픽셀들은 상기 제1 값을 가지고, 상기 분류자에 포함되는 제2 영역의 픽셀들은 상기 제2 값을 가지는 경우, 상기 제1 영상 중 상기 제1 영역에 대응하는 제3 영역은 상기 제1 목적에 따라 처리하고, 상기 제1 영상 중 상기 제2 영역에 대응하는 제4 영역은 상기 제2 목적에 따라 처리할 수 있다.
일 실시예에 따른 프로세서는, 상기 분류자에 포함되는 픽셀들의 값, 상기 제1 값 및 상기 제2 값에 기초하여, 결정된 상기 제1 목적에 따른 영상 처리의 레벨 및 상기 제2 목적에 따른 영상 처리의 레벨에 따라, 상기 제1 영상을 처리할 수 있다.
일 실시예에 따른 프로세서는, 상기 제1 영상의 특성에 기초하여, 상기 분류자를 생성할 수 있다.
일 실시예에 따른 프로세서는, 상기 제1 영상에 포함된 텍스트 및 엣지를 나타내는 맵 영상을 생성하고, 상기 맵 영상에 기초하여, 상기 분류자에 포함되는 픽셀들의 값들을 결정할 수 있다.
일 실시예에 따른 딥 뉴럴 네트워크는, 제1 영상 데이터, 제1 값을 픽셀 값으로 가지는 제1 분류자, 및 상기 제1 영상 데이터가 제1 목적으로 처리된 제1 레이블 데이터를 포함하는 제1 학습 데이터 세트 및 제2 영상 데이터, 제2 값을 픽셀 값으로 가지는 제2 분류자, 및 상기 제2 영상 데이터가 제2 목적으로 처리된 제2 레이블 데이터를 포함하는 제2 학습 데이터 세트에 의해 학습된 네트워크일 수 있다.
일 실시예에 따른 프로세서는, 상기 딥 뉴럴 네트워크에, 상기 제1 영상 데이터 및 상기 제1 분류자가 입력되었을 때, 출력되는 영상 데이터와 상기 제1 레이블 데이터의 차이가 작아지도록 상기 딥 뉴럴 네트워크에 포함된 하나 이상의 커널들의 가중치 값들을 조정하고, 상기 딥 뉴럴 네트워크에, 상기 제2 영상 데이터 및 상기 제2 분류자가 입력되었을 때, 출력되는 영상 데이터와 상기 제2 레이블 데이터의 차이가 작아지도록 상기 딥 뉴럴 네트워크에 포함된 상기 하나 이상의 커널들의 가중치 값들을 조정할 수 있다.
일 실시예에 따른 영상 처리 장치의 동작방법은, 제1 영상 및 영상 처리의 목적을 나타내는 분류자(classifier)를 획득하는 단계 및 딥 뉴럴 네트워크(DNN: Deep neural network)를 이용하여, 상기 제1 영상을 상기 분류자가 나타내는 목적에 따라 처리하는 단계를 포함하고, 상기 딥 뉴럴 네트워크는 복수의 영상들을 서로 다른 목적에 따라 처리하는 네트워크일 수 있다.
일 실시예에 따른 컴퓨터 프로그램 제품은, 제1 영상 및 영상 처리의 목적을 나타내는 분류자(classifier)를 획득하는 단계 및 복수의 영상들을 서로 다른 목적에 따라 처리하는 딥 뉴럴 네트워크(DNN: Deep neural network)를 이용하여, 상기 제1 영상을 상기 분류자가 나타내는 목적에 따라 처리하는 단계를 수행하도록 하는 프로그램이 저장된 하나 이상의 컴퓨터로 읽을 수 있는 기록매체를 포함할 수 있다.
일 실시예에 따른 영상 처리 장치는, 단일 딥 뉴럴 네트워크를 이용하여, 다양한 목적에 따라 영상을 처리할 수 있다.
일 실시예에 따른 영상 처리 장치는, 다양한 목적에 따른 영상 처리의 레벨을 조절할 수 있다.
도 1은 서로 다른 학습 데이터 세트를 이용하여, 학습시킨 제1 딥 뉴럴 네트워크, 제2 딥 뉴럴 네트워크 및 제3 딥 뉴럴 네트워크를 나타내는 도면이다.
도 2는 일 실시예에 따른 영상 처리 장치가 입력 영상들을 서로 다른 목적에 따라 처리하는 과정을 나타내는 도면이다.
도 3은 일 실시예에 따른 영상 처리 장치의 동작방법을 나타내는 흐름도이다.
도 4는 일 실시예에 따른 영상 처리 장치가 영상을 처리하는 방법을 설명하기 위해 참조되는 도면이다.
도 5는, 일 실시예에 따른 영상 처리 장치가 입력 영상 및 분류자를 생성하는 방법을 설명하기 위해 참조되는 도면이다.
도 6은 도 4의 제1 컨볼루션 레이어(440)에서 컨볼루션 연산이 처리되는 과정을 설명하기 위해 참조되는 도면이다.
도 7은 일 실시예에 따른 도 4의 제1 컨볼루션 레이어(440)에 대한 입력 데이터와 출력 데이터를 나타내는 도면이다.
도 8은 도 1의 제3 딥 뉴럴 네트워크의 제1 컨볼루션 레이어에 대한 입력 데이터와 출력 데이터를 나타내는 도면이다.
도 9는 일 실시예에 따른 딥 뉴럴 네트워크에 대한 입력 데이터와 출력 데이터를 나타낸다.
도 10은 일 실시예에 따른 딥 뉴럴 네트워크에 대한 입력 데이터와 출력 데이터를 나타낸다.
도 11은 일 실시예에 따른 분류자를 생성하는 방법을 설명하기 위해 참조되는 도면이다.
도 12는 일 실시예에 따른 제1 영상들에 기초하여, 생성되는 식별 영상들을 나타내는 도면이다.
도 13은 일 실시예에 따른 딥 뉴럴 네트워크를 학습시키는 방법을 설명하기 위해 참조되는 도면이다.
도 14는 일 실시예에 따른 복수의 목적에 따른 영상 처리를 수행하는 딥 뉴럴 네트워크를 설명하기 위해 참조되는 도면이다.
도 15는 일 실시예에 따른 딥 뉴럴 네트워크를 학습시키기 위한 학습 데이터 세트를 생성하는 방법을 설명하기 위해 참조되는 도면이다.
도 16은 일 실시예에 따른 영상 처리 장치의 구성을 나타내는 블록도이다.
도 17은 일 실시예에 따른 프로세서(130)의 블록도이다.
도 18은 일 실시예에 따른 영상 처리부(1500)의 블록도이다.
본 명세서에서 사용되는 용어에 대해 간략히 설명하고, 본 발명에 대해 구체적으로 설명하기로 한다.
본 발명에서 사용되는 용어는 본 발명에서의 기능을 고려하면서 가능한 현재 널리 사용되는 일반적인 용어들을 선택하였으나, 이는 당 분야에 종사하는 기술자의 의도 또는 판례, 새로운 기술의 출현 등에 따라 달라질 수 있다. 또한, 특정한 경우는 출원인이 임의로 선정한 용어도 있으며, 이 경우 해당되는 발명의 설명 부분에서 상세히 그 의미를 기재할 것이다. 따라서 본 발명에서 사용되는 용어는 단순한 용어의 명칭이 아닌, 그 용어가 가지는 의미와 본 발명의 전반에 걸친 내용을 토대로 정의되어야 한다.
명세서 전체에서 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있음을 의미한다. 또한, 명세서에 기재된 "...부", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어와 소프트웨어의 결합으로 구현될 수 있다.
아래에서는 첨부한 도면을 참고하여 실시예들에 대하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다.
도 1은 서로 다른 학습 데이터 세트를 이용하여, 학습시킨 제1 딥 뉴럴 네트워크, 제2 딥 뉴럴 네트워크 및 제3 딥 뉴럴 네트워크를 나타내는 도면이다.
도 1을 참조하면, 제1 딥 뉴럴 네트워크(DNN1)는, 제1 학습 데이터 세트(11)에 의해 학습된 딥 뉴럴 네트워크일 수 있다. 이때, 제1 학습 데이터 세트(11)는, 영상의 디테일 향상(예를 들어, 제1 목적)을 위한 학습 데이터 세트일 수 있다. 예를 들어, 제1 학습 데이터 세트(11)는 제1 영상 데이터들(D1) 및 제1 레이블 데이터들(L1)을 포함할 수 있다. 제1 레이블 데이터들(L1)은 제1 영상 데이터들(D1)에 대응하는 고해상도 영상 데이터들로서, 제1 영상 데이터들(D1)을 고해상도 영상으로 변환시킬 때, 텍스쳐 표현을 향상시킨 영상 데이터들일 수 있다.
제2 딥 뉴럴 네트워크(DNN2)는 제2 학습 데이터 세트(21)에 의해 학습된 딥 뉴럴 네트워크일 수 있다. 이때, 제2 학습 데이터 세트(21)는, 영상에 포함된 텍스트 또는 엣지 향상(제2 목적)을 위한 학습 데이터 세트일 수 있다. 예를 들어, 제2 학습 데이터 세트(21)는 제2 영상 데이터들(D2) 및 제2 레이블 데이터들(L2)을 포함할 수 있다. 제2 레이블 데이터들(L2)은 제2 영상 데이터들(D2)에 대응하는 고해상도 영상 데이터들로서, 제2 영상 데이터들(D2)을 고해상도 영상으로 변환시킬 때, 텍스트나 엣지 주변에서 나타나는 계단 현상(jagging) 등을 감소(텍스트나 엣지 표현 향상)시킨 영상 데이터들일 수 있다.
또한, 제3 딥 뉴럴 네트워크(DNN3)는 제1 학습 데이터 세트(11) 및 제2 학습 데이터 세트(21)에 의해 학습된 네트워크일 수 있다.
도 1에 도시된 바와 같이, 제1 딥 뉴럴 네트워크(DNN1)에 제1 영상(10)이 입력되는 경우, 제1 딥 뉴럴 네트워크(DNN1)는 제1 출력 영상(15)을 출력할 수 있으며, 제1 출력 영상(15)은, 제1 영상(10)의 텍스쳐 표현을 향상시킨 고해상도 영상일 수 있다. 또한, 제2 딥 뉴럴 네트워크(DNN2)에 제2 영상(20)이 입력되는 경우, 제2 딥 뉴럴 네트워크(DNN2)는 제2 출력 영상(25)을 출력할 수 있으며, 제2 출력 영상(25)은 제2 영상(20)의 텍스트나 엣지 표현을 향상시킨 고해상도 영상일 수 있다.
한편, 제3 딥 뉴럴 네트워크(DNN3)에 제1 영상(10)이 입력되는 경우, 제3 딥 뉴럴 네트워크(DNN3)는 제3 출력 영상(35)을 출력할 수 있으며, 이때, 제3 출력 영상(35)의 디테일 향상(텍스쳐 표현의 향상)의 정도는 제1 출력 영상(15)에 비해 적다. 또한, 제3 딥 뉴럴 네트워크(DNN3)에 제2 영상(20)이 입력되는 경우, 제3 딥 뉴럴 네트워크(DNN3)는 제4 출력 영상(45)을 출력할 수 있으며, 이때, 제4 출력 영상(45)의 텍스트나 엣지 표현 향상의 정도는 제2 출력 영상(25)에 비해 적다.
제1 목적(디테일 향상)을 학습시키기 위한 제1 학습 데이터 세트(11)와 제2 목적(텍스트나 엣지 향상)을 학습시키기 위한 제2 학습 데이터 세트(21)를 함께 학습시킨 제3 딥 뉴럴 네트워크(DNN3)는, 제1 학습 데이터 세트(11)에 의해 학습된 제1 딥 뉴럴 네트워크(DNN1)의 성능 및 제2 학습 데이터 세트(21)에 의해 학습된 제2 딥 뉴럴 네트워크(DNN2)의 성능을 가지지 못한다.
도 2는 일 실시예에 따른 영상 처리 장치가 입력 영상들을 서로 다른 목적에 따라 처리하는 과정을 나타내는 도면이다.
일 실시예에 따른 영상 처리 장치(100)는 딥 뉴럴 네트워크(DNN, 150)를 이용하여, 입력 영상들을 처리할 수 있다. 일 실시예에 따른 딥 뉴럴 네트워크(DNN, 150)는 제1 목적(예를 들어, 디테일 향상)을 학습시키기 위한 제1 학습 데이터 세트(210) 및 제2 목적(예를 들어, 텍스트나 엣지 향상)을 학습시키기 위한 제2 학습 데이터 세트(220)에 의해 학습될 수 있다. 이때, 제1 학습 데이터 세트(210)는, 제1 영상 데이터들(D1), 제1 목적을 나타내는 제1 분류자(C1), 및 제1 레이블 데이터들(L1)을 포함할 수 있다. 제1 영상 데이터들(D1) 및 제1 레이블 데이터들(L1)은 도 1에서 설명한 제1 영상 데이터들(D1) 및 제1 레이블 데이터들(L1)과 동일하다. 딥 뉴럴 네트워크(150)는 제1 영상 데이터들(D1) 및 제1 분류자(C1)가 입력되면, 제1 레이블 데이터들(L1)이 출력되도록 학습될 수 있다. 또한, 제2 학습 데이터 세트는, 제2 영상 데이터들(D2), 제2 목적을 나타내는 제2 분류자(C2) 및 제2 레이블 데이터들(L2)을 포함할 수 있다. 제2 영상 데이터들(D2) 및 제2 레이블 데이터들(L2)은 도 1에서 설명한 제2 영상 데이터들(D2) 및 제2 레이블 데이터들(L2)과 동일하다. 딥 뉴럴 네트워크는, 제2 영상 데이터들(D2) 및 제2 분류자(C2)가 입력되면, 제2 레이블 데이터들(L2)이 출력되도록 학습될 수 있다.
일 실시예에 따른 영상 처리 장치(100)는, 제1 영상(10) 및 제1 목적(디테일 향상)을 나타내는 제1 분류자(C1)를 딥 뉴럴 네트워크(150)로 입력하고, 딥 뉴럴 네트워크(150)는 제1 영상(10)을 제1 분류자(C1)가 나타내는 제1 목적(예를 들어, 디테일 향상)에 따라 처리함으로써, 제1 출력 영상(230)을 출력할 수 있다. 이때, 도 2의 제1 출력 영상(230)에서의 디테일 향상 정도는 도 1에서 설명한, 제1 딥 뉴럴 네트워크(DNN1)의 제1 출력 영상(15)과 동일 유사할 수 있다.
또한, 영상 처리 장치(100)는 제2 영상(20) 및 제2 목적(예를 들어, 텍스트나 엣지 향상)을 나타내는 제2 분류자(C2)를 딥 뉴럴 네트워크(150)로 입력하고, 딥 뉴럴 네트워크(150)는 제2 영상(20)을 제2 분류자(C2)가 나타내는 제2 목적(예를 들어, 텍스트나 엣지 향상)에 따라 처리함으로써, 제2 출력 영상(240)을 출력할 수 있다. 이때, 도 2의 제2 출력 영상(240)에서의 디테일 향상 정도는 도 1에서 설명한, 제2 딥 뉴럴 네트워크(DNN2)의 제2 출력 영상(25)과 동일 유사할 수 있다.
일 실시예에 따른 영상 처리 장치(100)는 영상 데이터, 영상 데이터의 처리 목적을 나타내는 분류자 및 영상 데이터에 대응하는 레이블 데이터에 의해 학습된 단일 딥 뉴럴 네트워크를 이용하여, 복수의 영상들을 서로 다른 목적에 따라 처리할 수 있다.
도 3은 일 실시예에 따른 영상 처리 장치의 동작방법을 나타내는 흐름도이다.
도 3을 참조하면, 일 실시예에 따른 영상 처리 장치(100)는 제1 영상 및 영상 처리의 목적을 나타내는 분류자를 획득할 수 있다(S310).
영상 처리 장치(100)는 제1 영상에 기초하여, 딥 뉴럴 네트워크로 입력시킬 입력 영상 및 분류자를 생성할 수 있다. 예를 들어, 영상 처리 장치(100)는 제1 영상에 포함되는 R, G, B 채널들을 색 공간 변환을 통해, Y, U, V 채널들로 변환하고, Y, U, V 채널들 중 Y 채널에 대한 영상을 입력 영상으로 결정할 수 있다. 영상 처리 장치(100)는 제1 영상을 제1 목적에 따라 영상 처리하고자 하는 경우, 분류자의 픽셀 값을 제1 목적에 대응하는 제1 값으로 결정하고, 제1 영상을 제2 목적에 따라 영상 처리하고자 하는 경우, 분류자의 픽셀 값을 제2 목적에 대응하는 제2 값으로 결정할 수 있다. 또한, 영상 처리 장치(100)는 제1 영상에서 엣지 및 텍스트를 추출하고, 추출된 엣지 및 텍스트에 기초하여, 분류자를 생성할 수 있다.
일 실시예에 따른 영상 처리 장치(100)는, 딥 뉴럴 네트워크를 이용하여, 제1 영상을 분류자가 나타내는 목적에 따라 처리할 수 있다(S320).
딥 뉴럴 네트워크는 N개의 컨볼루션 레이어들을 포함할 수 있으며, 영상 처리 장치(100)는 N개의 컨볼루션 레이어들 각각에서, 입력 영상 및 식별 영상에 하나 이상의 커널들을 적용하여, 컨볼루션 연산을 수행함으로써, 특징 정보(특징 맵)를 추출하고, 추출된 특징 정보에 기초하여, 제1 영상을 분류자가 나타내는 목적에 따라 처리할 수 있다.
영상 처리 장치(100)는 분류자에 포함되는 픽셀들의 값, 제1 목적에 대응하는 제1 값 및 제2 목적에 대응하는 제2 값에 기초하여, 제1 목적에 따른 영상 처리의 레벨 및 제2 목적에 따른 영상 처리의 레벨을 결정하고, 결정된 레벨에 따라, 제1 영상을 처리할 수 있다.
한편, 영상 처리 장치(100)는 서로 다른 목적을 가지는 복수의 학습 데이터 세트들을 이용하여, 딥 뉴럴 네트워크를 학습시킬 수 있다. 예를 들어, 영상 처리 장치(100)는 제1 영상 데이터들, 제1 분류자, 및 제1 영상 데이터들이 제1 목적으로 처리된 제1 레이블 데이터들을 포함하는 제1 학습 데이터 세트 및 제2 영상 데이터들, 제2 분류자 및 제2 영상 데이터들이 제2 목적으로 처리된 제2 레이블 데이터들을 포함하는 제2 학습 데이터 세트를 이용하여, 딥 뉴럴 네트워크를 학습시킬 수 있다.
영상 처리 장치(100)는 딥 뉴럴 네트워크에 제1 영상 데이터들 및 제1 분류자가 입력되었을 때, 출력되는 영상 데이터들과 제1 레이블 데이터들의 차이가 작아지도록 딥 뉴럴 네트워크에 포함된 하나 이상의 커널들의 가중치를 조절할 수 있다. 또한, 영상 처리 장치(100)는 딥 뉴럴 네트워크에 제2 영상 데이터들 및 제2 분류자가 입력되었을 때, 출력되는 영상 데이터들과 제2 레이블 데이터들의 차이가 작아지도록 딥 뉴럴 네트워크에 포함된 하나 이상의 커널들의 가중치를 조절할 수 있다.
도 4는 일 실시예에 따른 영상 처리 장치가 영상을 처리하는 방법을 설명하기 위해 참조되는 도면이다.
도 4를 참조하면, 일 실시예에 따른 영상 처리 장치(100)는 제1 영상(410)을 수신할 수 있다. 영상 처리 장치(100)는 제1 영상(410)을 딥 뉴럴 네트워크(150)에 입력하거나, 제1 영상(410)에 기초하여, 딥 뉴럴 네트워크(150)에 입력할 입력 영상(420)을 생성할 수 있다. 또한, 일 실시예에 따른 영상 처리 장치(100)는 제1 영상에 대한 영상 처리의 목적을 나타내는 분류자(430)를 생성할 수 있다. 입력 영상(420) 및 분류자(430)를 생성하는 방법에 대해서는, 도 5를 참조하여, 자세히 설명하기로 한다.
도 5는, 일 실시예에 따른 영상 처리 장치가 입력 영상 및 분류자를 생성하는 방법을 설명하기 위해 참조되는 도면이다.
도 5를 참조하면, 제1 영상(410)은 R, G, B 채널들(RGB 3ch)을 포함하는 영상일 수 있다. 일 실시예에 따른 영상 처리 장치(100)는 제1 영상(410)에 포함되는 R, G, B 채널들(RGB 3ch)을 딥 뉴럴 네트워크에 입력할 입력 영상으로 결정할 수 있다.
또는, 영상 처리 장치(100)는 제1 영상(410)에 포함되는 R, G, B 채널들(RGB 3ch)을 색 공간 변환을 통해, Y, U, V 채널들(YUV 3ch)로 변환할 수 있다. 이때, Y채널(420)은 휘도 신호를 나타내는 채널이고, U 채널은 휘도 신호와 청색 성분의 차를 나타내는 채널이며, V 채널은 휘도 신호와 적색 성분의 차를 나타내는 채널이다. 영상 처리 장치(100)는 변환된 Y, U, V 채널들(YUV 3ch) 중 Y 채널(420)에 대한 영상을 딥 뉴럴 네트워크에 입력시킬 입력 영상으로 결정할 수 있다. 다만, 이에 한정되지 않는다.
한편, 일 실시예에 따른 영상 처리 장치(100)는 영상 처리의 목적을 나타내는 분류자(430)를 생성할 수 있다. 이때, 분류자(430)는 하나의 픽셀 값을 가지거나, 영역 별로 다른 픽셀 값을 가질 수 있다. 또한, 분류자(430)의 픽셀 값들은 사용자 입력에 기초하여, 결정되거나, 처리하고자 하는 영상(예를 들어, 제1 영상)에 기초하여, 결정될 수 있다.
예를 들어, 제1 영상 전체를 제1 목적에 따라 영상 처리하고자 하는 경우, 영상 처리 장치(100)는 분류자(430)의 전체 픽셀들이, 제1 목적에 대응하는 제1 값을 가지도록 분류자를 생성할 수 있다. 또는, 제1 영상 전체를 제2 목적에 따라 영상 처리하고자 하는 경우, 영상 처리 장치(100)는 분류자의 전체 픽셀들이, 제2 목적에 대응하는 제2 값을 가지도록 분류자를 생성할 수 있다.
또는, 영상 처리 장치(100)는 제1 영상(410)에 기초하여, 분류자(430)를 생성할 수 있다. 예를 들어, 영상 처리 장치(100)는 제1 영상(410)에 대한 영상 분석을 통해, 제1 영상(410)이 제1 목적에 따라 처리되어야 하는지, 제2 목적에 따라 처리되어야 하는지를 결정할 수 있다. 제1 영상(410)에 텍스쳐가 주로 포함되어 있는 경우, 영상 처리 장치(100)는 제1 영상(410)이 제1 목적에 따라 처리되어야 하는 것으로 결정할 수 있으며, 제1 영상(410)에 텍스트나 엣지가 주로 포함되어 있는 경우, 영상 처리 장치(100)는 제1 영상이 제2 목적에 따라 처리되어야 하는 것으로 결정할 수 있다. 또한, 영상 처리 장치(100)는 제1 영상에 포함되는 영역 별로 해당 영역이 제1 목적에 따라 처리되어야 하는지, 제2 목적에 따라 처리되어야 하는지를 결정할 수 있다. 이에 따라, 영상 처리 장치(100)는 제1 영상(410) 또는 제1 영상(410)의 일부 영역(제1 영역)이 제1 목적에 따라 처리되어야 하는 경우, 분류자(430) 전체 또는 분류자의 일부 영역(제1 영역에 대응하는 영역)에 포함되는 픽셀들이 제1 값을 가지도록 분류자(430)를 생성할 수 있다. 또는, 영상 처리 장치(100)는 제1 영상 또는 제1 영상의 일부 영역(제2 영역)이 제2 목적에 따라 처리되어야 하는 경우, 분류자(430) 전체 또는 분류자의 일부 영역(제2 영역에 대응하는 영역)에 포함되는 픽셀들이 제2 값을 가지도록 분류자(430)를 생성할 수 있다. 이에 대해서는, 도 11 및 도 12를 참조하여, 자세히 설명하기로 한다.
영상 처리 장치(100)는 생성된 분류자(430)를 딥 뉴럴 네트워크(150)로 입력시킬 입력 채널로 추가시킬 수 있다. 이에 따라, 입력 영상(420) 및 분류자(430)가 딥 뉴럴 네트워크(150)로 입력될 수 있다.
다시 도 4를 참조하면, 영상 처리 장치(100)는 딥 뉴럴 네트워크를 이용하여, 입력 영상(420)을 분류자(430)가 나타내는 목적에 따라 처리하고, 처리된 영상을 출력할 수 있다.
예를 들어, 딥 뉴럴 네트워크(150)는, N개의 컨볼루션 레이어들(2개 이상의 컨볼루션 레이어들)을 포함할 수 있다. 딥 뉴럴 네트워크(150)는 입력 데이터(예를 들어, 입력 영상(420) 및 분류자(430))가 입력되고, N개의 컨볼루션 레이어들을 통과하여, 출력 데이터가 출력되는 구조를 가진다. 또한, 딥 뉴럴 네트워크에서는, 특징 맵(특징 정보)에 하나 이상의 커널들을 적용하여 컨볼루션하는 연산 이외에 다른 프로세싱 연산들이 수행될 수 있으며, 이러한 프로세싱 연산들은 컨볼루션 레이어들 사이에서 수행될 수 있다. 예를 들어, 활성화 함수(activation function), 풀링(pooling) 등의 연산들이 수행될 수 있다.
일 실시예에 따른 영상 처리 장치(100)는 딥 뉴럴 네트워크(150)를 이용하여, 입력 영상으로부터 테두리, 선, 색 등과 같은 “특징들(features)”을 추출할 수 있다. 딥 뉴럴 네트워크(150)에 포함되는 N개의 컨볼루션 레이어들 각각에서는 데이터를 수신하고, 수신된 데이터를 처리하여, 출력 데이터를 생성할 수 있다. 예를 들어, 영상 처리 장치는 제1 컨볼루션 레이어(440)에 입력된 영상(예를 들어, 입력 영상 및 분류자)에 하나 이상의 커널들 또는 필터들을 적용하여 컨볼루션 연산을 수행하고, 컨볼루션 연산을 수행한 결과 제1 특징 맵(제1 특징 정보)이 추출된다. 이에 대해서는 도 6 및 도 7을 참조하여, 자세히 설명하기로 한다.
또한, 영상 표시 장치(100)는 추출된 제1 특징 맵의 값들을 특징이 “있다 또는 없다”의 비선형적인 값으로 바꿔주기 위해 활성화 함수를 적용할 수 있다. 이때, ReLu 함수가 사용될 수 있으나, 이에 한정되지 않는다. 또한, 영상 처리 장치(100)는 추출된 특징 맵의 사이즈를 줄이기 위해 서브 샘플링(풀링)할 수 있으며, 이때, max pooling, average pooling, L2-norm pooling 등을 사용할 수 있으나, 이에 한정되지 않는다.
한편, 도 4를 참조하면, 딥 뉴럴 네트워크는 M개의 레지듀얼 블록들(residual blocks)을 포함할 수 있다. 레지듀얼 블록(450)은 하나 이상의 컨볼루션 레이어들을 포함할 수 있으며, 영상 처리 장치(100)는 레지듀얼 블록(450)에 포함된 컨볼루션 레이어들을 건너뛰는 데이터(460, 예를 들어, ReLu 함수가 적용된 제1 특징 맵)와 레지듀얼 블록에 포함된 컨볼루션 레이어들을 통과한 데이터(예를 들어, 제3 컨볼루션 레이어로부터 추출되어, ReLu 함수가 적용된 제3 특징 맵)를 요소 별로 합하는 연산(elementwise sum, 470)을 수행할 수 있다.
또한, 딥 뉴럴 네트워크는 디 컨볼루션 레이어(Deconvoultion layer, 480)를 포함할 수도 있다. 이때, 디 컨볼루션 레이어(480)로부터 추출되는 특징 정보의 사이즈는, 디 컨볼루션 레이어(480)에 입력되는 특징 정보의 사이즈보다 클 수 있다.
또한, 영상 처리 장치(100)는 딥 뉴럴 네트워크에 입력되는 데이터를 업 스케일링할 수 있다. 이때, 영상 처리 장치(100)는 딥 뉴럴 네트워크에 입력되는 데이터에 바이 리니어 보간 방법, 바이 큐빅 보간 방법, 컨볼루션 보간 방법 중 적어도 하나를 적용하여, 입력 데이터를 업 스케일링할 수 있다. 영상 처리 장치(100)는 업스케일링된 영상 데이터를 디 컨볼루션 레이어(480)로부터 추출되는 특징 정보와 요소별로 합하는 연산(elementwise sum)을 수행하여, 출력 데이터를 생성할 수 있다. 다만, 이에 한정되지 않는다.
또한, 영상 처리 장치(100)는 Y, U, V 채널들(YUV 3ch) 중 U 채널 및 V채널에 대한 영상을 업 스케일링할 수 있다. 이때, 영상 처리 장치(100)는 U 채널 및 V채널에 대한 영상들에 바이 리니어 보간 방법, 바이 큐빅 보간 방법, 컨볼루션 보간 방법 중 적어도 하나를 적용하여, 업 스케일링할 수 있다. 업 스케일링된 영상 데이터들을 출력 데이터와 함께, 결합(concatenation)하여, 제2 영상(490)을 생성할 수 있다. 이때, 제2 영상(490)은 제1 영상(410)이 분류자(430)가 나타내는 목적에 따라 처리된 영상일 수 있다.
도 6은 도 4의 제1 컨볼루션 레이어(440)에서 컨볼루션 연산이 처리되는 과정을 설명하기 위해 참조되는 도면이다.
도 6을 참조하면, 제1 컨볼루션 레이어(440)의 입력 데이터(Input)는 8*8의 크기를 가지며, 채널의 개수는 2(예를 들어, 입력 영상(610) 및 분류자(620))인 것으로 가정한다. 또한, 입력 데이터(600)에 적용되는 커널의 크기는 3*3*2(가로*세로*깊이)이며, 커널의 개수는 n인 것으로 가정한다. 이때, 커널의 깊이는 입력 데이터의 채널의 개수와 동일한 값을 가진다. 하나의 커널은 3*3 크기를 가지는 2개의 서브 커널들을 포함하는 것으로 볼 수 있으며, 2개의 서브 커널들은 입력 데이터의 2개의 채널들(입력 영상 및 분류자) 각각에 대응될 수 있다.
도 6을 참조하면, 입력 데이터(600)의 좌측 상단으로부터 우측 하단까지 제1 커널(Kernal 1)에 포함되는 서브 커널들(631, 632)을 적용하여, 입력 데이터의 특징을 추출하는 과정이 도시되어 있다. 예를 들어, 입력 데이터(600)의 좌측 상단 3*3*2 영역(611, 621)에 포함되는 픽셀들에 제1 커널(Kernel 1)을 적용하여 컨볼루션 연산을 수행할 수 있다. 즉, 좌측 상단 3*3*2 영역(611. 621)에 포함되는 픽셀 값들과 제1 커널(Kernel 1)에 포함되는 가중치 값들을 곱하여 합산함으로써, 좌측 상단 3*3*2 영역에 매핑되는 하나의 픽셀값(641)을 생성할 수 있다.
또한, 입력 데이터(600)의 좌측 상단 3*3*2 영역(611, 621)에서 우측으로 한 픽셀 이동시킨 3*3*2 영역(612, 622)에 포함되는 픽셀 값들과 제1 커널(Kernel 1)에 포함되는 가중치 값들을 곱하여 합산함으로써, 3*3*2 영역(612, 622)에 매핑되는 하나의 픽셀값(642)을 생성할 수 있다.
동일한 방식으로, 입력 데이터(600) 내에서 컨볼루션 연산의 대상을 좌측에서 우측으로, 상단에서 하단으로 한 픽셀씩 스캔하면서, 제1 커널(Kernel 1)에 포함되는 가중치 값들을 곱하여 합산함으로써, 픽셀값들이 생성된다. 이에 따라, 6*6의 특징 맵(640, 출력 데이터)이 출력될 수 있다. 이때, 컨볼루션 연산의 대상이 되는 데이터는 한 픽셀씩 이동하면서 스캔될 수도 있으나, 2개 픽셀 또는 그 이상의 픽셀 개수만큼 이동하면서 스캔될 수도 있다. 스캔 과정에서 입력 데이터가 이동하는 픽셀의 개수를 스트라이드(stride)라고 하며, 스트라이드의 크기에 따라 출력되는 특징 맵의 크기가 결정될 수 있다.
도 6을 참조하면, 입력 데이터(610)는 8*8의 크기를 가지나, 출력 데이터(640)는 6*6의 크기를 가지며, 입력 데이터의 크기보다 작아진다. 컨볼루션 뉴럴 네트워크는 여러 개의 컨볼루션 레이어들을 포함하며, 여러 개의 컨볼루션 레이어들을 통과하면서, 데이터의 크기가 계속해서 작아지게 된다. 이때, 특징이 충분하게 추출되기 전에 데이터의 크기가 작아지면, 입력 데이터의 특징이 유실될 수 있으며, 이를 방지하기 위하여 패딩(padding)이 수행될 수 있다. 패딩은 출력 데이터가 작아지는 것을 방지하기 위하여, 입력 데이터의 가장자리에 특정 값(예를 들어, ‘0’)을 주어, 입력 데이터의 사이즈를 증가시키는 것을 의미한다. 다만, 이에 한정되지 않는다.
한편, 도 6에서는 제1 커널(Kernel 1)에 대한 컨볼루션 연산 결과만 도시하였지만, n개의 커널에 대해서, 컨볼루션 연산을 수행하는 경우, n개의 특징 맵이 출력될 수 있다. 즉, 커널의 개수(n)에 따라, 출력 데이터의 채널의 개수가 결정되며, 이에 따라, 다음 레이어에서의 입력 데이터의 채널의 개수도 결정될 수 있다.
도 7은 일 실시예에 따른 도 4의 제1 컨볼루션 레이어(440)에 대한 입력 데이터와 출력 데이터를 나타내는 도면이다.
도 7을 참조하면, 영상 표시 장치(100)는 제1 입력 데이터(Input 1)를 제1 컨볼루션 레이어(440)에 입력할 수 있다. 이때, 제1 입력 데이터(Input 1)는 제1 입력 영상(I1) 및 제1 분류자(C1)를 포함하는 2개의 채널로 구성될 수 있다. 이때, 제1 입력 영상(I1)은 주로 텍스쳐를 포함하는 영상으로, 고해상도 영상으로 변환 시 텍스쳐 표현을 향상시키도록 처리되어야 하는 영상일 수 있다. 또한, 제1 분류자(C1)의 픽셀 값은 제1 목적(예를 들어, 영상의 디테일 향상)을 나타내는 제1 값일 수 있다. 제1 컨볼루션 레이어에서는, 제1 입력 영상(I1)과 제1 분류자(C1)가 입력되면, 도 6에서 설명한 바와 같이, 제1 입력 영상(I1)과 제1 분류자(C1)에 n개의 커널들을 적용하여, 컨볼루션 연산을 수행할 수 있다. 컨볼루션 연산을 수행한 결과, 도 7에 도시된 바와 같이 n개의 제1 특징 맵들(710)이 추출될 수 있다.
또한, 영상 표시 장치(100)는 제2 입력 데이터(Input 2)를 제1 컨볼루션 레이어에 입력할 수 있다. 이때, 제2 입력 데이터는 제2 입력 영상(I2) 및 제2 분류자(C2)를 포함하는 2개의 채널로 구성될 수 있다. 이때, 제2 입력 영상(I2)은 주로 텍스트나 엣지를 포함하는 영상으로, 고해상도 영상으로 변환 시, 텍스트나 엣지 표현을 향상시키도록 처리되어야 하는 영상일 수 있다. 또한, 제2 분류자(C2)의 픽셀 값은 제2 목적(예를 들어, 텍스트나 엣지 향상)을 나타내는 제2 값일 수 있다.
제1 컨볼루션 레이어에서는, 제2 입력 영상(I2)과 제2 분류자(C2)가 입력되면, 도 6에서 설명한 바와 같이, 제2 입력 영상(I2)과 제2 분류자(C2)에 n개의 커널들을 적용하여, 컨볼루션 연산을 수행할 수 있다. 컨볼루션 연산을 수행한 결과, 도 7에 도시된 바와 같이 n개의 제2 특징 맵들(720)이 추출될 수 있다.
도 7의 제1 특징 맵들(710)과 제2 특징 맵들(720)을 비교해 보면, 제1 특징 맵들(710)에는 제2 특징 맵들(720)에 비해 텍스쳐 특징들이 더 잘 나타나고, 제2 특징 맵들(720)에는 제1 특징 맵들(710)에 비해 텍스트나 엣지의 특징들이 더 잘 나타남을 알 수 있다.
한편, 도 8은 도 1의 제3 딥 뉴럴 네트워크의 제1 컨볼루션 레이어에 대한 입력 데이터와 출력 데이터를 나타내는 도면이다.
도 8을 참조하면, 도 1에서 설명한 제3 딥 뉴럴 네트워크(DNN3)에 포함되는 제1 컨볼루션 레이어에 제1 입력 영상(I1)이 입력되는 경우, 제3 특징 맵들(810)이 추출될 수 있다. 또한, 제3 딥 뉴럴 네트워크(DNN3)에 포함되는 제1 컨볼루션 레이어에 제2 입력 영상(I2)이 입력되는 경우, 제4 특징 맵들(820)이 추출될 수 있다.
한편, 도 7의 제1 특징 맵들(710)과 도 8의 제3 특징 맵들(810)을 비교해보면, 제3 특징 맵들(810)보다 제1 특징 맵들(710)에서, 제1 입력 영상(I1)에 포함되는 텍스쳐 특징들이 더 잘 나타남을 알 수 있다. 또한, 도 7의 제2 특징 맵들(720)과 도 8의 제4 특징 맵들(820)을 비교해보면, 제4 특징 맵들(820)보다 제2 특징 맵들(720)에서, 텍스트나 엣지의 특징들이 더 잘 나타남을 알 수 있다.
이에 따라, 일 실시예에 따른 딥 뉴럴 네트워크(150)는 입력 영상을 분류자가 나타내는 목적에 따라 영상 처리를 수행함을 알 수 있다.
도 9는 일 실시예에 따른 딥 뉴럴 네트워크에 대한 입력 데이터와 출력 데이터를 나타낸다.
도 9를 참조하면, 제1 영상(910) 및 제1 분류자(931)가 딥 뉴럴 네트워크(150)에 입력되는 경우, 제3 영상(930)이 출력되고, 제2 영상(920) 및 제1 분류자(931)가 딥 뉴럴 네트워크(150)에 입력되는 경우, 제4 영상(940)이 출력된다. 이때, 제1 분류자(931)의 픽셀 값들은 디테일 향상(텍스쳐 표현 향상)을 나타내는 제1 값을 가질 수 있다. 처리하고자 하는 영상과 제1 분류자가 딥 뉴럴 네트워크(150)에 함께 입력되면, 제1 분류자에 의해, 영상 처리의 목적이 디테일 향상으로 결정될 수 있다.
제1 영상(910)은 주로 텍스쳐를 포함하는 영상으로, 출력된 제3 영상(930)은 제1 영상(910)의 디테일을 향상시킨 고해상도 영상일 수 있다. 그러나, 제2 영상(920)은 주로 텍스트나 엣지를 포함하는 영상으로, 출력된 제4 영상(940)에서 텍스트나 엣지 향상의 효과는 나타나지 않을 수 있다.
한편, 제1 영상(910) 및 제2 분류자(932)가 딥 뉴럴 네트워크(150)에 입력되는 경우, 제5 영상(950)이 출력되고, 제2 영상(920) 및 제2 분류자(932)가 딥 뉴럴 네트워크(150)에 입력되는 경우, 제6 영상(960)이 출력된다. 이때, 제2 분류자(932)의 픽셀 값들은 텍스트나 엣지 향상을 나타내는 제2 값을 가질 수 있다. 처리하고자 하는 영상과 제2 분류자(932)가 딥 뉴럴 네트워크(150)에 함께 입력되면, 제2 분류자(932)에 의해, 영상 처리의 목적이 텍스트나 엣지 향상으로 결정될 수 있다.
제2 영상(920)은 주로 텍스트나 엣지를 포함하는 영상으로, 출력된 제6 영상(960)은 제2 영상(920)에 포함되는 텍스트나 엣지를 향상시킨 고해상도 영상일 수 있다. 그러나, 제1 영상(910)은 주로 텍스쳐를 포함하는 영상으로, 출력된 제5 영상(950)에서 텍스쳐 향상의 효과는 나타나지 않을 수 있다.
도 10은 일 실시예에 따른 딥 뉴럴 네트워크에 대한 입력 데이터와 출력 데이터를 나타낸다.
도 10을 참조하면, 제1 영상(910) 및 제3 분류자(933)가 딥 뉴럴 네트워크(150)에 입력되는 경우, 제7 영상(970)이 출력될 수 있다. 제3 분류자(933)의 픽셀 값들은 제3 값을 가질 수 있다. 이때, 제3 값은 디테일 향상을 나타내는 제1 값이 텍스트나 엣지 향상을 나타내는 제2 값보다 작은 경우, 제1 값보다 작은 값일 수 있다. 또는 제1 값이 제2 값보다 큰 경우, 제1 값보다 큰 값일 수 있다. 출력되는 제7 영상(970)은 도 9에서 설명한 제3 영상(930)에서 나타나는 디테일 향상 효과보다 더 큰 디테일 향상 효과를 가질 수 있다.
또한, 제2 영상(920) 및 제4 분류자(934)가 딥 뉴럴 네트워크(150)에 입력되는 경우, 제8 영상(980)이 출력될 수 있다. 제4 분류자(934)의 픽셀 값들은 제4 값을 가질 수 있다. 이때, 제4 값은, 제2 값이 1 값보다 큰 경우, 제2 값보다 큰 값일 수 있다. 또는, 제2 값이 제1 값보다 작은 경우, 제2 값보다 작은 값일 수 있다. 이때, 출력되는 제8 영상(980)은 도 9에서 설명한 제6 영상(960)에서 나타나는 텍스트나 엣지의 향상 효과보다 더 큰 텍스트나 엣지의 향상 효과를 가질 수 있다.
도 11은 일 실시예에 따른 분류자를 생성하는 방법을 설명하기 위해 참조되는 도면이다.
도 11을 참조하면, 일 실시예에 따른 영상 처리 장치(100)는 처리하고자 하는 제1 영상(1010)에 기초하여, 분류자(1030)를 생성할 수 있다.
예를 들어, 영상 처리 장치(100)는 제1 영상(1010)의 엣지 및 텍스트를 추출하여, 제1 영상(1010)의 엣지 및 텍스트를 나타내는 맵 영상(1020)을 생성할 수 있다. 영상 처리 장치(100)는 공지된 다양한 엣지 추출 필터 또는 텍스트 추출 필터를 이용하여, 제1 영상(1010)의 엣지 및 텍스트를 추출할 수 있다.
이때, 엣지 및 텍스트를 나타내는 맵 영상(1020)에서, 엣지 및 텍스트 영역의 픽셀 값은 제2 값을 가지도록 설정될 수 있으며, 나머지 영역의 픽셀 값은 제1 값을 가지도록 설정될 수 있다. 다만, 이에 한정되지 않는다.
영상 처리 장치(100)는 엣지 및 텍스트를 나타내는 맵 영상(1020)에 스무딩(smoothing) 처리를 수행하여, 분류자(1030)를 생성할 수 있다. 이때, 스무딩 처리는, 엣지 및 텍스트 주변에서 픽셀 값이 완만하게 변하도록 픽셀 값을 조절하는 영상 처리일 수 있다.
도 11을 참조하면, 분류자(1030) 중, 제1 영상(1010)의 텍스쳐로 표현된 제1 영역(A1)에 대응하는 영역은 주로 제1 값을 가지는 픽셀들을 포함하며, 제1 영상(1010)의 텍스트로 표현된 제2 영역(A2)에 대응하는 영역은 주로 제2 값을 가지는 픽셀들을 포함할 수 있다.
또한, 영상 처리 장치(100)는 제1 영상(1010)과 생성된 분류자(1030)를 딥 뉴럴 네트워크(150)에 입력하여, 제1 영상이 고해상도 영상으로 변환된 출력 영상(1040)을 생성할 수 있다. 이때, 출력 영상(1040) 중, 제1 영상(1010)의 텍스쳐로 표현된 제1 영역(A1)에 대응하는 영역(1041)에서는 디테일이 향상(텍스쳐 표현 향상)된 효과가 나타나며, 제1 영상(1010)의 텍스트로 표현된 제2 영역(A2)에 대응하는 영역(1042)에서는 텍스트가 향상된 효과가 나타날 수 있다.
도 12는 일 실시예에 따른 제1 영상들에 기초하여, 생성되는 식별 영상들을 나타내는 도면이다.
도 12를 참조하면, 영상 표시 장치(100)는 처리하고자 하는 영상들을 수신할 수 있다. 수신된 영상들은 주로 텍스쳐 표현으로 이루어진 영상과 주로 텍스트나 엣지 표현으로 이루어진 영상으로 분류될 수 있다. 예를 들어, 도 12의 제1 내지 제3 영상들(1210, 1220, 1230)은 주로 텍스쳐 표현을 포함하는 영상들일 수 있으며, 제4 내지 제6 영상들(1240, 1250, 1260)은 주로 텍스트나 엣지 표현을 포함하는 영상들일 수 있다.
영상 표시 장치(100)는 수신한 영상이 주로 텍스쳐 표현을 포함하는 영상인 경우, 분류자의 픽셀 값을 제1 값으로 결정하고, 제1 값을 전체 픽셀 값으로 하는 제1 분류자(C1)를 생성할 수 있다. 이때, 영상 표시 장치(100)에 포함된 딥 뉴럴 네트워크(150)는 텍스쳐 표현 향상을 위한 학습 데이터를 학습시킬 때, 학습 데이터와 함께 제1 분류자(C1)를 입력하여, 학습된 네트워크일 수 있다.
또는, 영상 표시 장치(100)는 수신한 영상이 주로 텍스트나 엣지 표현을 포함하는 영상인 경우, 분류자의 픽셀 값을 제2 값으로 결정하고, 제2 값을 전체 픽셀 값으로 하는 제2 분류자(C2)를 생성할 수 있다. 이때, 영상 표시 장치(100)에 포함된 딥 뉴럴 네트워크(150)는 텍스트나 엣지 표현 향상을 위한 학습 데이터를 학습시킬 때, 학습 데이터와 함께 제2 분류자(C2)를 입력하여, 학습된 네트워크일 수 있다.
도 13은 일 실시예에 따른 딥 뉴럴 네트워크를 학습시키는 방법을 설명하기 위해 참조되는 도면이다.
도 13을 참조하면, 일 실시예에 따른 딥 뉴럴 네트워크(150)는, 서로 다른 목적을 가지는 복수의 학습 데이터 세트들에 의해 학습될 수 있다. 예를 들어, 학습 데이터 세트들은, 제1 목적에 따른 영상 처리를 학습시키기 위한 제1 학습 데이터 세트(D1, L1)와 제2 목적에 따른 영상 처리를 학습시키기 위한 제2 학습 데이터 세트(D2, L2)를 포함할 수 있다. 이때, 제1 목적에 따른 영상 처리는, 입력 영상을 고해상도 영상으로 변환 시, 디테일이 향상(텍스쳐 표현 향상)되도록 입력 영상을 처리하는 것일 수 있다. 또한, 제2 목적에 따른 영상 처리는, 입력 영상을 고해상도 영상으로 변환 시, 텍스트나 엣지의 표현이 향상되도록 입력 영상을 처리하는 것일 수 있다. 도 13에서는 2 개의 목적에 따라 학습되는 예를 도시하고 있지만, 이에 한정되지 않는다.
제1 학습 데이터 세트는, 제1 영상 데이터들(D1) 및 제1 레이블 데이터 들(L1)을 포함할 수 있다. 제1 레이블 데이터들(L1)은 제1 영상 데이터들(D1)을 고해상도 영상으로 변환시킨 영상 데이터들로서, 제1 영상 데이터들(D1)을 고해상도 영상으로 변환시킬 때, 텍스쳐 표현을 향상시킨 영상 데이터들일 수 있다.
또한, 제2 학습 데이터 세트는, 제2 영상 데이터들(D2) 및 제2 레이블 데이터들(L2)을 포함할 수 있다. 제2 레이블 데이터들(L2)은 제2 영상 데이터들(D2)을 고해상도 영상으로 변환시킨 영상 데이터들로서, 제2 영상 데이터들(D2)을 고해상도 영상으로 변환시킬 때, 텍스트나 엣지 주변에서 나타나는 계단 현상(jagging) 등을 감소(텍스트나 엣지 표현 향상)시킨 영상 데이터들일 수 있다.
일 실시예에 따른 영상 표시 장치(100)는 딥 뉴럴 네트워크(150)에 제1 영상 데이터들(D1)과 함께 제1 분류자(C1)를 입력할 수 있으며, 제2 영상 데이터들(D2)과 함께 제2 분류자(C2)를 입력할 수 있다. 이때, 제1 분류자(C1)의 픽셀 값 및 제2 분류자(C2)의 픽셀 값은 사용자에 의해 설정될 수 있으며, 제1 분류자(C1) 및 제2 분류자(C2)는 단일 픽셀 값을 가질 수 있다. 또한, 제1 분류자(C1)의 픽셀 값과 제2 분류자(C2)의 픽셀 값은 서로 다른 값을 가진다.
영상 표시 장치(100)는 제1 영상 데이터들(D1) 및 제1 분류자(C1)가 입력되었을 때, 제1 영상 데이터들(D1) 각각에 대응하는 제1 레이블 데이터들(L1)이 출력되도록 딥 뉴럴 네트워크(150)를 학습시킬 수 있다. 예를 들어, 영상 표시 장치(100)는 딥 뉴럴 네트워크(150)에 제1 영상 데이터들(D1) 및 제1 분류자(C1)가 입력되었을 때, 출력되는 영상 데이터들과 제1 레이블 데이터들(L1)의 차이가 작아지도록 딥 뉴럴 네트워크(150)에 포함된 하나 이상의 커널들의 가중치를 조절할 수 있다.
또한, 영상 표시 장치(100)는 제2 영상 데이터들(D2) 및 제2 분류자(C2)가 입력되었을 때, 제2 영상 데이터들(D2) 각각에 대응하는 제2 레이블 데이터들(L2)이 출력되도록 딥 뉴럴 네트워크(150)를 학습시킬 수 있다. 예를 들어, 영상 표시 장치(100)는 딥 뉴럴 네트워크(150)에 제2 영상 데이터들(D2) 및 제2 분류자(C2)가 입력되었을 때, 출력되는 영상 데이터들과 제2 레이블 데이터들(L2)의 차이가 작아지도록 딥 뉴럴 네트워크(150)에 포함된 하나 이상의 커널들의 가중치를 조절할 수 있다.
도 14는 일 실시예에 따른 복수의 목적에 따른 영상 처리를 수행하는 딥 뉴럴 네트워크를 설명하기 위해 참조되는 도면이다.
도 14를 참조하면, 일 실시예에 따른 딥 뉴럴 네트워크(150)는 학습 데이터 세트에 의해 학습될 수 있다. 학습 데이터 세트(1420)는 제1 내지 제n 영상 데이터들과 n개의 영상 데이터들 각각에 대응하는 제1 내지 제n 레이블 데이터들을 포함할 수 있다. 예를 들어, n개의 레이블 데이터들은, n개의 영상 데이터들 각각을 고해상도 영상으로 변환한 영상 데이터로써, n개의 영상 데이터들 각각을 제1 목적(예를 들어, 디테일 향상(텍스쳐 표현의 향상)), 제2 목적(예를 들어, 노이즈 감소) 및 제3 목적(예를 들어, 코딩 아티팩트 감소) 중 적어도 하나에 따라 처리된 영상 데이터들일 수 있다. 다만, 이에 한정되지 않는다.
딥 뉴럴 네트워크(150)는 영상 데이터와 함께 제1 분류자(C1), 제2 분류자(C2) 및 제3 분류자(4개의 채널들)을 입력 받을 수 있다. 이때, 제1 분류자(C1)는 디테일 향상의 정도를 나타내는 영상이며, 제2 분류자(C2)는 노이즈 감소의 정도를 나타내는 영상이며, 제3 분류자(C3)는 코딩 아티팩트 감소의 정도를 나타내는 영상일 수 있다.
예를 들어, 제1 영상 데이터(1410)와 함께 딥 뉴럴 네트워크(150)로 입력되는 제1 분류자(C1), 제2 분류자(C2) 및 제3 분류자(C3)의 픽셀 값은 제1 영상 데이터 및 제1 레이블 데이터에 기초하여 결정될 수 있다. 제1 영상 데이터와 제1 영상 데이터를 고해상도 영상으로 변환한 제1 레이블 데이터를 비교하여, 제1 레이블 데이터에서 나타나는 디테일 향상의 정도에 따라 제1 분류자(C1)의 픽셀 값이 결정되고, 노이즈 감소의 정도에 따라 제2 분류자(C2)의 픽셀 값이 결정되며, 코딩 아티팩트 감소의 정도에 따라 제3 분류자(C3)의 픽셀 값이 결정될 수 있다. 제1 분류자(C1)의 픽셀 값은 디테일 향상의 정도가 클수록 작아질 수 있다.
예를 들어, 제1 영상 데이터와 제1 레이블 데이터를 비교했을 때, 제1 레이블 데이터에서 나타나는 디테일 향상의 정도가, 제2 영상 데이터와 제2 레이블 데이터를 비교했을 때, 제2 레이블 데이터에서 나타나는 디테일 향상의 정도보다 큰 경우, 제1 영상 데이터와 함께 입력되는 제1 분류자(C1)의 픽셀 값이, 제2 영상 데이터와 함께 입력되는 제1 분류자(C1)의 픽셀 값보다 작을 수 있다.
또는, 제2 분류자(C2)의 픽셀 값은 노이즈 감소의 정도가 클수록 작아질 수 있으며, 제3 분류자(C3)의 픽셀 값은 코딩 아티팩트 감소의 정도가 클수록 작아질 수 있다. 다만, 이에 한정하는 것은 아니며, 다양한 방법으로 식별 영상들의 픽셀 값이 결정될 수 있다.
또한, n개의 영상 데이터들 각각과 입력되는 제1 내지 제3 분류자들(C1, C2, C3)은, n개의 레이블 데이터들에서 나타나는, 디테일 향상의 정도, 노이즈 감소의 정도 및 코딩 아티팩트 감소의 정도에 따라 다르게 결정될 수 있다.
또한, 영상 표시 장치(100)는 제1 영상 데이터(1410), 제1 분류자(C1), 제2 분류자(C2) 및 제3 분류자(C3)들이 입력되었을 때, 제1 레이블 데이터가 출력되도록 딥 뉴럴 네트워크(150)를 학습시킬 수 있다. 예를 들어, 영상 표시 장치(100)는 딥 뉴럴 네트워크(150)에 제1 분류자(C1), 제2 분류자(C2) 및 제3 분류자(C3)들이 입력되었을 때, 출력되는 영상 데이터(1430)와 제1 레이블 데이터의 차이가 작아지도록 딥 뉴럴 네트워크(150)에 포함된 하나 이상의 커널들의 가중치를 조절할 수 있다.
상기와 같은 방식으로 학습된 딥 뉴럴 네트워크(150)를 이용하여, 입력 영상을 처리하는 경우, 제1 내지 제3 분류자들(C1, C2, C3)의 픽셀 값들을 조정함으로써, 입력 영상의 영상 처리 목적 및 목적에 따른 영상 처리의 레벨을 결정할 수 있다. 예를 들어, 입력 영상의 디테일 향상은 많이, 노이즈 감소 및 코딩 아티팩트 감소는 적게 시키고자 하는 경우, 제1 분류자(C1)의 픽셀 값은 작은 값으로, 제2 분류자(C2) 및 제3 분류자(C3)의 픽셀 값은 큰 값으로 설정할 수 있다. 다만, 이에 한정되지 않는다.
도 15는 일 실시예에 따른 딥 뉴럴 네트워크를 학습시키기 위한 학습 데이터 세트를 생성하는 방법을 설명하기 위해 참조되는 도면이다.
도 15를 참조하면, 학습 데이터 세트는 복수의 영상 데이터들(1510, 1520, 1530)와 하나의 레이블 데이터(1540)를 포함할 수 있다. 이때, 복수의 영상 데이터들(1510, 1520, 1530)은 레이블 데이터를 이용하여 생성할 수 있다. 예를 들어, 영상 표시 장치(100)는 레이블 데이터(1540)를 제1 강도로 블러시킨 제1 영상 데이터(1510), 레이블 데이터(1540)를 제1 강도보다 큰 제2 강도로 블러시킨 제2 영상 데이터(1520), 레이블 데이터(1540)를 제2 강도보다 큰 제3 강도로 블러시킨 제3 영상 데이터(1530)를 생성할 수 있다.
영상 표시 장치(100)는 제1 내지 제3 영상 데이터들(1510, 1520, 1530) 각각과 디테일 향상의 정도를 나타내는 분류자를 함께 딥 뉴럴 네트워크(150)에 입력할 수 있다. 이때, 제1 영상 데이터(1510)와 함께 입력되는 제1 분류자(C1)의 픽셀 값은 제1 값으로 설정될 수 있다. 또한, 제2 영상 데이터(1520)와 함께 입력되는 제2 분류자(C2)의 픽셀 값은 제2 값으로 설정될 수 있으며, 제2 값은 제1 값보다 작을 수 있다. 또한, 제3 영상 데이터(1530)와 함께 입력되는 제3 분류자(C3)의 픽셀 값은 제3 값으로 설정될 수 있으며, 제3 값은 제2 값보다 작을 수 있다. 다만, 이에 한정되지 않는다.
영상 표시 장치(100)는 입력된 제1 영상 데이터(1510), 제2 영상 데이터(1520) 및 제3 영상 데이터(1530)들 각각에 대응하여 출력되는 출력 데이터들과 레이블 데이터(1540)와의 차이가 작아지도록 딥 뉴럴 네트워크(150)를 학습시킬 수 있다.
도 15에서는, 디테일 향상에 대한 학습 데이터 세트를 생성하는 방법에 대해서만 설명하였지만, 동일한 방식을 이용하여, 노이즈 감소나 코딩 아티팩트 감소에 대한 학습 데이터 세트도 생성될 수 있다.
도 16은 일 실시예에 따른 영상 처리 장치의 구성을 나타내는 블록도이다.
도 16을 참조하면, 일 실시예에 따른 영상 처리 장치(100)는 프로세서(120) 및 메모리(130)를 포함할 수 있다.
일 실시예에 따른 프로세서(120)는 영상 처리 장치(100)를 전반적으로 제어할 수 있다. 일 실시예에 따른 프로세서(120)는 메모리(130)에 저장되는 하나 이상의 프로그램들을 실행할 수 있다.
일 실시예에 따른 메모리(130)는 영상 처리 장치(100)를 구동하고 제어하기 위한 다양한 데이터, 프로그램 또는 어플리케이션을 저장할 수 있다. 메모리(130)에 저장되는 프로그램은 하나 이상의 인스트럭션들을 포함할 수 있다. 메모리(130)에 저장된 프로그램(하나 이상의 인스트럭션들) 또는 어플리케이션은 프로세서(120)에 의해 실행될 수 있다.
일 실시예에 따른 프로세서(120)는 제1 영상 및 영상 처리의 목적을 나타내는 분류자를 획득하고, 딥 뉴럴 네트워크를 이용하여, 제1 영상을 분류자가 나타내는 목적에 따라 처리할 수 있다. 이때, 딥 뉴럴 네트워크는 도 2 내지 도 15에서 도시하고 설명한 딥 뉴럴 네트워크일 수 있다.
또한, 프로세서(120)는 제1 영상에 기초하여, 딥 뉴럴 네트워크로 입력시킬 입력 영상 및 분류자를 생성할 수 있다. 예를 들어, 프로세서(120)는 제1 영상에 포함되는 R, G, B 채널들을 색 공간 변환을 통해, Y, U, V 채널들로 변환하고, Y, U, V 채널들 중 Y 채널에 대한 영상을 입력 영상으로 결정할 수 있다. 프로세서(120)는 제1 영상을 제1 목적에 따라 영상 처리하고자 하는 경우, 분류자의 픽셀 값을 제1 목적에 대응하는 제1 값으로 결정하고, 제1 영상을 제2 목적에 따라 영상 처리하고자 하는 경우, 분류자의 픽셀 값을 제2 목적에 대응하는 제2 값으로 결정할 수 있다. 또한, 프로세서(120)는 제1 영상에서 엣지 및 텍스트를 추출하고, 추출된 엣지 및 텍스트에 기초하여, 분류자를 생성할 수 있다.
딥 뉴럴 네트워크는 N개의 컨볼루션 레이어들을 포함할 수 있으며, 프로세서(120)는 N개의 컨볼루션 레이어들 각각에서, 입력 영상 및 식별 영상에 하나 이상의 커널들을 적용하여, 컨볼루션 연산을 수행함으로써, 특징 정보(특징 맵)를 추출하고, 추출된 특징 정보에 기초하여, 제1 영상을 분류자가 나타내는 목적에 따라 처리할 수 있다.
프로세서(130)는 분류자에 포함되는 픽셀들의 값, 제1 목적에 대응하는 제1 값 및 제2 목적에 대응하는 제2 값에 기초하여, 제1 목적에 따른 영상 처리의 레벨 및 제2 목적에 따른 영상 처리의 레벨을 결정하고, 결정된 레벨에 따라, 제1 영상을 처리할 수 있다.
프로세서(130)는 서로 다른 목적을 가지는 복수의 학습 데이터 세트들을 이용하여, 딥 뉴럴 네트워크를 학습시킬 수 있다. 예를 들어, 프로세서(130)는 제1 영상 데이터들, 제1 분류자, 및 제1 영상 데이터들이 제1 목적으로 처리된 제1 레이블 데이터들을 포함하는 제1 학습 데이터 세트 및 제2 영상 데이터들, 제2 분류자 및 제2 영상 데이터들이 제2 목적으로 처리된 제2 레이블 데이터들을 포함하는 제2 학습 데이터 세트를 이용하여, 딥 뉴럴 네트워크를 학습시킬 수 있다.
예를 들어, 프로세서(130)는 딥 뉴럴 네트워크에 제1 영상 데이터들 및 제1 분류자가 입력되었을 때, 출력되는 영상 데이터들과 제1 레이블 데이터들의 차이가 작아지도록 딥 뉴럴 네트워크에 포함된 하나 이상의 커널들의 가중치를 조절할 수 있다. 또한, 프로세서(130)는 딥 뉴럴 네트워크에 제2 영상 데이터들 및 제2 분류자가 입력되었을 때, 출력되는 영상 데이터들과 제2 레이블 데이터들의 차이가 작아지도록 딥 뉴럴 네트워크에 포함된 하나 이상의 커널들의 가중치를 조절할 수 있다.
도 17은 일 실시예에 따른 프로세서(130)의 블록도이다.
도 17을 참조하면, 일 실시예에 따른 프로세서(130)는 네트워크 학습부(1400) 및 영상 처리부(1500)를 포함할 수 있다.
네트워크 학습부(1400)는 일 실시예에 따른 딥 뉴럴 네트워크를 학습시키기 위한 학습 데이터를 획득할 수 있다. 네트워크 학습부(1400)는 서로 다른 목적을 가지는 복수의 학습 데이터 세트들을 획득할 수 있다. 예를 들어, 학습 데이터 세트들은, 제1 목적에 따른 영상 처리를 학습시키기 위한 제1 학습 데이터 세트와 제2 목적에 따른 영상 처리를 학습시키기 위한 제2 학습 데이터 세트를 포함할 수 있다. 이때, 제1 목적에 따른 영상 처리는, 입력 영상을 고해상도 영상으로 변환 시, 디테일이 향상(텍스쳐 표현 향상)되도록 입력 영상을 처리하는 것일 수 있다. 또한, 제2 목적에 따른 영상 처리는, 입력 영상을 고해상도 영상으로 변환 시, 텍스트나 엣지의 표현이 향상되도록 입력 영상을 처리하는 것일 수 있다. 다만, 이에 한정되지 않는다.
또한, 네트워크 학습부(1400)는 딥 뉴럴 네트워크를 학습시키기 위한 학습 데이터를 생성할 수 있다. 예를 들어, 도 15에서 설명한 방법으로, 학습 데이터 세트를 생성할 수 있다.
네트워크 학습부(1400)는 서로 다른 목적을 가지는 복수의 학습 데이터 세트들에 기초하여, 입력 영상을 어떻게 처리할지에 대한 기준을 학습할 수 있다. 또한, 네트워크 학습부(1400)는 입력 영상의 처리를 위하여 어떤 학습 데이터 세트를 이용해야 하는 지에 대한 기준을 학습할 수도 있다. 예를 들어, 네트워크 학습부(1400)는 복수의 학습 데이터 세트들을 이용하여, 도 13 및 도 14에서 설명한 방법으로 딥 뉴럴 네트워크를 학습시킬 수 있다.
네트워크 학습부(1400)는 학습된 네트워크(예를 들어, 딥 뉴럴 네트워크)를 영상 처리 장치의 메모리에 저장할 수 있다. 또는, 영상 처리 장치와 유선 또는 무선 네트워크로 연결되는 서버의 메모리에 저장할 수도 있다.
학습된 네트워크가 저장되는 메모리는, 예를 들면, 영상 처리 장치(100)의 적어도 하나의 다른 구성 요소에 관계된 명령 또는 데이터를 함께 저장할 수도 있다. 또한, 메모리는 소프트웨어 및/또는 프로그램을 저장할 수도 있다. 프로그램은, 예를 들면, 커널, 미들웨어, 어플리케이션 프로그래밍 인터페이스(API) 및/또는 어플리케이션 프로그램(또는 "어플리케이션") 등을 포함할 수 있다.
한편, 네트워크 학습부(1400)는 영상 처리부(1500)에 의해 생성된 고해상도 영상에 기초하여, 딥 뉴럴 네트워크를 학습시킬 수 있다. 예를 들어, 오류 역전파법(error back-propagation) 또는 경사 하강법(gradient descent)을 포함하는 학습 알고리즘 등을 이용하여 딥 뉴럴 네트워크를 학습시킬 수 있다.
영상 처리부(1500)는 제1 영상 및 영상 처리의 목적을 나타내는 분류자에 기초하여, 제1 영상을 처리할 수 있다. 예를 들어, 영상 처리부(1500)는 학습된 딥 뉴럴 네트워크를 이용하여, 분류자가 나타내는 목적에 따라 제1 영상을 처리할 수 있다.
네트워크 학습부(1400), 및 영상 처리부(1500) 중 적어도 하나는, 하드웨어 칩 형태로 제작되어 영상 처리 장치에 탑재될 수 있다. 예를 들어, 네트워크 학습부(1400), 및 영상 처리부(1500) 중 적어도 하나는 인공 지능(AI;artificial intelligence)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 기존의 범용 프로세서(예: CPU 또는 application processor) 또는 그래픽 전용 프로세서(예: GPU)의 일부로 제작되어 전술한 각종 영상 처리 장치에 탑재될 수 도 있다.
이 경우, 네트워크 학습부(1400), 및 영상 처리부(1500)는 하나의 영상 처리 장치에 탑재될 수도 있으며, 또는 별개의 영상 처리 장치들에 각각 탑재될 수도 있다. 예를 들어, 네트워크 학습부(1400), 및 영상 처리부(1500) 중 일부는 영상 처리 장치(100)에 포함되고, 나머지 일부는 서버에 포함될 수 있다.
또한, 네트워크 학습부(1400), 및 영상 처리부(1500) 중 적어도 하나는 소프트웨어 모듈로 구현될 수 있다. 네트워크 학습부(1400), 및 영상 처리부(1500) 중 적어도 하나가 소프트웨어 모듈(또는, 인스터력션(instruction) 포함하는 프로그램 모듈)로 구현되는 경우, 소프트웨어 모듈은 컴퓨터로 읽을 수 있는 판독 가능한 비일시적 판독 가능 기록매체(non-transitory computer readable media)에 저장될 수 있다. 또한, 이 경우, 적어도 하나의 소프트웨어 모듈은 OS(Operating System)에 의해 제공되거나, 소정의 애플리케이션에 의해 제공될 수 있다. 또는, 적어도 하나의 소프트웨어 모듈 중 일부는 OS(Operating System)에 의해 제공되고, 나머지 일부는 소정의 애플리케이션에 의해 제공될 수 있다.
도 18은 일 실시예에 따른 영상 처리부(1500)의 블록도이다.
도 18을 참조하면, 영상 처리부(1500)는 입력 영상 생성부(1510), 분류자 생성부(1520), 딥 뉴럴 네트워크부(1530), 출력 영상 생성부(1540) 및 네트워크 업데이트부(1550)를 포함할 수 있다.
입력 영상 생성부(1510)는, 영상 처리하고자 하는 제1 영상을 수신하고, 제1 영상에 기초하여, 딥 뉴럴 네트워크로 입력될 입력 영상을 생성할 수 있다. 예를 들어, 입력 영상 생성부(1510)는 제1 영상에 포함되는 R, G, B 채널들을 색 공간 변환을 통해, Y, U, V 채널들로 변환하고, Y, U, V 채널들 중 Y 채널에 대한 영상을 입력 영상으로 결정할 수 있다. 또는, 입력 영상 생성부(1510)는 제1 영상에 포함되는 R, G, B 채널들을 입력 영상으로 결정할 수 있다.
분류자 생성부(1520)는, 제1 영상을 제1 목적에 따라 영상 처리하고자 하는 경우, 제1 목적에 대응하는 제1 값을 픽셀 값으로 가지는 제1 분류자를 생성하고, 제1 영상을 제2 목적에 따라 영상 처리하고자 하는 경우, 제2 목적에 대응하는 제2 값을 픽셀 값으로 가지는 제2 분류자를 생성할 수 있다. 분류자 생성부(1520)는 단일 픽셀 값을 가지는 분류자를 생성할 수 있으나, 영역 별로 다른 픽셀 값을 가지는 분류자를 생성할 수도 있다.
분류자 생성부(1520)는 제1 영상에서 엣지 및 텍스트를 추출하고, 추출된 엣지 및 텍스트에 기초하여, 분류자를 생성할 수 있다. 예를 들어, 분류자 생성부(1520)는 제1 영상의 엣지 및 텍스트를 추출하여, 제1 영상의 엣지 및 텍스트를 나타내는 맵 영상을 생성할 수 있다. 이때, 분류자 생성부(1520)는 공지된 다양한 엣지 추출 필터 또는 텍스트 추출 필터를 이용하여, 제1 영상의 엣지 및 텍스트를 추출할 수 있다. 또한, 분류자 생성부(1520)는 엣지 및 텍스트를 나타내는 맵 영상에 스무딩 처리를 수행하여, 분류자를 생성할 수 있다.
일 실시 예에 따른 딥 뉴럴 네트워크(DNN)부(1530)는, 네트워크 학습부(1400)에서 학습된 딥 뉴럴 네트워크를 이용하여, 제1 영상에 대한 영상 처리를 수행할 수 있다. 예를 들어, 입력 영상 생성부(1510)에서 생성된 입력 영상 및 분류자 생성부(1520)에서 생성된 분류자가 딥 뉴럴 네트워크의 입력 데이터로 입력될 수 있다. 일 실시예에 따른 딥 뉴럴 네트워크는 입력 영상 및 분류자에 하나 이상의 커널들을 적용하여, 컨볼루션 연산을 수행함으로써 특징 정보를 추출할 수 있다. 딥 뉴럴 네트워크(DNN)부(1530)는, 추출된 특징 정보에 기초하여, 제1 영상을 분류자가 나타내는 목적에 따라 처리할 수 있다.
출력 영상 생성부(1540)는 딥 뉴럴 네트워크에서 출력된 데이터에 기초하여, 최종 영상(제2 영상)을 생성할 수 있다. 예를 들어, 출력 영상 생성부(1540)는 제1 영상의 U채널 및 V 채널에 대한 영상들을 업 스케일링할 수 있으며, 업 스케일링된 영상들과, 딥 뉴럴 네트워크에서 처리되고 출력된 영상(제1 영상의 Y채널에 대한 영상)을 결합(concatenation)하여, 최종 영상을 생성할 수 있다. 이때, 최종 영상은 제1 영상이 분류자가 나타내는 목적에 따라 처리된 영상일 수 있다.
네트워크 업데이트부(1550)는 DNN부(1530)에서 제공되는 출력 영상 또는 출력 영상 생성부(1540)에서 제공되는 최종 영상에 대한 평가에 기초하여, 딥 뉴럴 네트워크가 업데이트되도록 할 수 있다. 예를 들어, 네트워크 업데이트부(1550)는 DNN부(1530) 또는 출력 영상 생성부(1540)에 의해 제공되는 영상 데이터를 네트워크 학습부(1400)에 제공함으로써, 네트워크 학습부(1400)가 딥 뉴럴 네트워크를 업데이트하도록 할 수 있다.
한편, 입력 영상 생성부(1510), 분류자 생성부(1520), DNN부(1530), 출력 영상 생성부(1540), 및 네트워크 업데이트부(1550) 중 적어도 하나는, 하드웨어 칩 형태로 제작되어 영상 처리 장치에 탑재될 수 있다. 예를 들어, 입력 영상 생성부(1510), 분류자 생성부(1520), DNN부(1530), 출력 영상 생성부(1540), 및 네트워크 업데이트부(1550) 중 적어도 하나는 인공 지능(AI;artificial intelligence)을 위한 전용 하드웨어 칩 형태로 제작될 수도 있고, 또는 기존의 범용 프로세서(예: CPU 또는 application processor) 또는 그래픽 전용 프로세서(예: GPU)의 일부로 제작되어 전술한 각종 영상 처리 장치에 탑재될 수 도 있다.
이 경우, 입력 영상 생성부(1510), 분류자 생성부(1520), DNN부(1530), 출력 영상 생성부(1540), 및 네트워크 업데이트부(1550)는 하나의 영상 처리 장치에 탑재될 수도 있으며, 또는 별개의 영상 처리 장치들에 각각 탑재될 수도 있다. 예를 들어, 입력 영상 생성부(1510), 분류자 생성부(1520), DNN부(1530), 출력 영상 생성부(1540), 및 네트워크 업데이트부(1550) 중 일부는 영상 처리 장치에 포함되고, 나머지 일부는 서버에 포함될 수 있다.
또한, 입력 영상 생성부(1510), 분류자 생성부(1520), DNN부(1530), 출력 영상 생성부(1540), 및 네트워크 업데이트부(1550) 중 적어도 하나는 소프트웨어 모듈로 구현될 수 있다. 입력 영상 생성부(1510), 분류자 생성부(1520), DNN부(1530), 출력 영상 생성부(1540), 및 네트워크 업데이트부(1550) 중 적어도 하나가 소프트웨어 모듈(또는, 인스터력션(instruction) 포함하는 프로그램 모듈)로 구현되는 경우, 소프트웨어 모듈은 컴퓨터로 읽을 수 있는 판독 가능한 비일시적 판독 가능 기록매체(non-transitory computer readable media)에 저장될 수 있다. 또한, 이 경우, 적어도 하나의 소프트웨어 모듈은 OS(Operating System)에 의해 제공되거나, 소정의 애플리케이션에 의해 제공될 수 있다. 또는, 적어도 하나의 소프트웨어 모듈 중 일부는 OS(Operating System)에 의해 제공되고, 나머지 일부는 소정의 애플리케이션에 의해 제공될 수 있다.
한편, 도 16 내지 도 18에 도시된 영상 처리 장치(100), 프로세서(120), 및 영상 처리부(1500)의 블록도들은 일 실시예를 위한 블록도들이다. 블록도들의 각 구성요소는 실제 구현되는 영상 처리 장치(100)의 사양에 따라 통합, 추가, 또는 생략될 수 있다. 즉, 필요에 따라 2 이상의 구성요소가 하나의 구성요소로 합쳐지거나, 혹은 하나의 구성요소가 2 이상의 구성요소로 세분되어 구성될 수 있다. 또한, 각 블록에서 수행하는 기능은 실시예들을 설명하기 위한 것이며, 그 구체적인 동작이나 장치는 본 발명의 권리범위를 제한하지 아니한다.
일 실시예에 따른 영상 처리 장치의 동작방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 상기 매체에 기록되는 프로그램 명령은 본 발명을 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다.
또한, 개시된 실시예들에 따른 고해상도 동영상을 생성하는 영상 처리 장치 및 영상 처리 장치의 동작방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다.
컴퓨터 프로그램 제품은 S/W 프로그램, S/W 프로그램이 저장된 컴퓨터로 읽을 수 있는 저장 매체를 포함할 수 있다. 예를 들어, 컴퓨터 프로그램 제품은 전자 장치의 제조사 또는 전자 마켓(예, 구글 플레이 스토어, 앱 스토어)을 통해 전자적으로 배포되는 S/W 프로그램 형태의 상품(예, 다운로더블 앱)을 포함할 수 있다. 전자적 배포를 위하여, S/W 프로그램의 적어도 일부는 저장 매체에 저장되거나, 임시적으로 생성될 수 있다. 이 경우, 저장 매체는 제조사의 서버, 전자 마켓의 서버, 또는 SW 프로그램을 임시적으로 저장하는 중계 서버의 저장매체가 될 수 있다.
컴퓨터 프로그램 제품은, 서버 및 클라이언트 장치로 구성되는 시스템에서, 서버의 저장매체 또는 클라이언트 장치의 저장매체를 포함할 수 있다. 또는, 서버 또는 클라이언트 장치와 통신 연결되는 제3 장치(예, 스마트폰)가 존재하는 경우, 컴퓨터 프로그램 제품은 제3 장치의 저장매체를 포함할 수 있다. 또는, 컴퓨터 프로그램 제품은 서버로부터 클라이언트 장치 또는 제3 장치로 전송되거나, 제3 장치로부터 클라이언트 장치로 전송되는 S/W 프로그램 자체를 포함할 수 있다.
이 경우, 서버, 클라이언트 장치 및 제3 장치 중 하나가 컴퓨터 프로그램 제품을 실행하여 개시된 실시예들에 따른 방법을 수행할 수 있다. 또는, 서버, 클라이언트 장치 및 제3 장치 중 둘 이상이 컴퓨터 프로그램 제품을 실행하여 개시된 실시예들에 따른 방법을 분산하여 실시할 수 있다.
예를 들면, 서버(예로, 클라우드 서버 또는 인공 지능 서버 등)가 서버에 저장된 컴퓨터 프로그램 제품을 실행하여, 서버와 통신 연결된 클라이언트 장치가 개시된 실시예들에 따른 방법을 수행하도록 제어할 수 있다.
이상에서 실시예들에 대하여 상세하게 설명하였지만 본 발명의 권리범위는 이에 한정되는 것은 아니고 다음의 청구범위에서 정의하고 있는 본 발명의 기본 개념을 이용한 당업자의 여러 변형 및 개량 형태 또한 본 발명의 권리범위에 속한다.

Claims (25)

  1. 영상 처리 장치에 있어서,
    하나 이상의 인스트럭션들을 저장하는 메모리; 및
    상기 메모리에 저장된 상기 하나 이상의 인스트럭션들을 실행하는 프로세서를 포함하고,
    상기 프로세서는, 제1 영상 및 영상 처리의 목적을 나타내는 분류자(classifier)를 획득하고, 딥 뉴럴 네트워크(DNN: Deep neural network)를 이용하여, 상기 제1 영상을 상기 분류자가 나타내는 목적에 따라 처리하며,
    상기 딥 뉴럴 네트워크는 입력 영상들을 서로 다른 목적에 따라 처리하는 네트워크인, 영상 처리 장치.
  2. 제1항에 있어서,
    상기 딥 뉴럴 네트워크는 N개의 컨볼루션 레이어들을 포함하고,
    상기 프로세서는,
    상기 제1 영상에 기초하여, 입력 영상을 생성하고,
    상기 N개의 컨볼루션 레이어들에서, 상기 입력 영상 및 상기 분류자에 하나 이상의 커널들을 적용하여, 컨볼루션 연산을 수행함으로써, 특징 정보를 추출하고, 추출된 상기 특징 정보에 기초하여, 제2 영상을 생성하는 영상 처리 장치.
  3. 제2항에 있어서,
    상기 프로세서는,
    상기 제1 영상에 포함되는 R, G, B 채널들을 YUV 방식의 Y, U, V 채널들로 변환하고, 상기 Y, U, V 채널들 중 Y 채널에 대한 영상을 상기 입력 영상으로 결정하는, 영상 처리 장치.
  4. 제3항에 있어서,
    상기 프로세서는,
    상기 Y 채널에 대한 영상이 상기 딥 뉴럴 네트워크에서 처리되어 출력되는 영상, 상기 Y, U, V 채널들 중 U 채널 및 V 채널에 대한 영상들에 기초하여, 상기 제2 영상을 생성하는 영상 처리 장치.
  5. 제1항에 있어서,
    상기 분류자에 포함되는 픽셀들은 제1 값 및 상기 제1 값보다 큰 제2 값 중 적어도 하나를 가지며, 상기 제1 값은 제1 목적을 나타내고, 상기 제2 값은 제2 목적을 나타내는, 영상 처리 장치.
  6. 제5항에 있어서,
    상기 프로세서는,
    상기 분류자에 포함되는 모든 픽셀들이 상기 제1 값을 가지는 경우, 상기 제1 영상을, 상기 제1 목적에 따라 처리하고,
    상기 분류자에 포함되는 모든 픽셀들이 상기 제2 값을 가지는 경우, 상기 제1 영상을 상기 제2 목적에 따라 처리하는, 영상 처리 장치.
  7. 제5항에 있어서,
    상기 분류자에 포함되는 제1 영역의 픽셀들은 상기 제1 값을 가지고, 상기 분류자에 포함되는 제2 영역의 픽셀들은 상기 제2 값을 가지는 경우, 상기 제1 영상 중 상기 제1 영역에 대응하는 제3 영역은 상기 제1 목적에 따라 처리하고, 상기 제1 영상 중 상기 제2 영역에 대응하는 제4 영역은 상기 제2 목적에 따라 처리하는, 영상 처리 장치.
  8. 제5항에 있어서,
    상기 프로세서는,
    상기 분류자에 포함되는 픽셀들의 값, 상기 제1 값 및 상기 제2 값에 기초하여, 결정된 상기 제1 목적에 따른 영상 처리의 레벨 및 상기 제2 목적에 따른 영상 처리의 레벨에 따라, 상기 제1 영상을 처리하는, 영상 처리 장치.
  9. 제1항에 있어서,
    상기 프로세서는,
    상기 제1 영상의 특성에 기초하여, 상기 분류자를 생성하는, 영상 처리 장치.
  10. 제9항에 있어서,
    상기 프로세서는,
    상기 제1 영상에 포함된 텍스트 및 엣지를 나타내는 맵 영상을 생성하고, 상기 맵 영상에 기초하여, 상기 분류자에 포함되는 픽셀들의 값들을 결정하는, 영상 처리 장치.
  11. 제1항에 있어서,
    상기 딥 뉴럴 네트워크는,
    제1 영상 데이터, 제1 값을 픽셀 값으로 가지는 제1 분류자, 및 상기 제1 영상 데이터가 제1 목적으로 처리된 제1 레이블 데이터를 포함하는 제1 학습 데이터 세트 및 제2 영상 데이터, 제2 값을 픽셀 값으로 가지는 제2 분류자, 및 상기 제2 영상 데이터가 제2 목적으로 처리된 제2 레이블 데이터를 포함하는 제2 학습 데이터 세트에 의해 학습된 네트워크인, 영상 처리 장치.
  12. 제11항에 있어서,
    상기 프로세서는,
    상기 딥 뉴럴 네트워크에, 상기 제1 영상 데이터 및 상기 제1 분류자가 입력되었을 때, 출력되는 영상 데이터와 상기 제1 레이블 데이터의 차이가 작아지도록 상기 딥 뉴럴 네트워크에 포함된 하나 이상의 커널들의 가중치 값들을 조정하고,
    상기 딥 뉴럴 네트워크에, 상기 제2 영상 데이터 및 상기 제2 분류자가 입력되었을 때, 출력되는 영상 데이터와 상기 제2 레이블 데이터의 차이가 작아지도록 상기 딥 뉴럴 네트워크에 포함된 상기 하나 이상의 커널들의 가중치 값들을 조정하는, 영상 처리 장치.
  13. 영상 처리 장치의 동작방법에 있어서,
    제1 영상 및 영상 처리의 목적을 나타내는 분류자(classifier)를 획득하는 단계; 및
    딥 뉴럴 네트워크(DNN: Deep neural network)를 이용하여, 상기 제1 영상을 상기 분류자가 나타내는 목적에 따라 처리하는 단계를 포함하고,
    상기 딥 뉴럴 네트워크는 복수의 영상들을 서로 다른 목적에 따라 처리하는 네트워크인, 영상 처리 장치의 동작방법.
  14. 제13항에 있어서,
    상기 제1 영상 및 분류자를 획득하는 단계는,
    상기 제1 영상에 기초하여, 입력 영상을 생성하는 단계를 포함하고,
    상기 딥 뉴럴 네트워크는 N개의 컨볼루션 레이어들을 포함하고,
    상기 딥 뉴럴 네트워크를 이용하여, 상기 제1 영상을 상기 분류자가 나타내는 목적에 따라 처리하는 단계는,
    상기 N개의 컨볼루션 레이어들에서, 상기 입력 영상 및 상기 분류자에 하나 이상의 커널들을 적용하여, 컨볼루션 연산을 수행함으로써, 특징 정보를 추출하는 단계; 및
    추출된 상기 특징 정보에 기초하여, 제2 영상을 생성하는 단계를 포함하는 영상 처리 장치의 동작방법.
  15. 제14항에 있어서,
    상기 제1 영상에 기초하여, 입력 영상을 생성하는 단계는,
    상기 제1 영상에 포함되는 R, G, B 채널들을 YUV 방식의 Y, U, V 채널들로 변환하는 단계; 및
    상기 Y, U, V 채널들 중 Y 채널에 대한 영상을 상기 입력 영상으로 결정하는 단계를 포함하는 영상 처리 장치의 동작방법.
  16. 제15항에 있어서,
    상기 제2 영상을 생성하는 단계는,
    상기 Y 채널에 대한 영상이 상기 딥 뉴럴 네트워크에서 처리되어 출력되는 영상, 및 상기 Y, U, V 채널들 중 U 채널 및 V 채널에 대한 영상들에 기초하여, 상기 제2 영상을 생성하는 단계를 포함하는 영상 처리 장치의 동작방법.
  17. 제13항에 있어서,
    상기 분류자에 포함되는 픽셀들은 제1 값 및 상기 제1 값보다 큰 제2 값 중 적어도 하나를 가지며, 상기 제1 값은 제1 목적을 나타내고, 상기 제2 값은 제2 목적을 나타내는, 영상 처리 장치의 동작방법.
  18. 제17항에 있어서,
    상기 딥 뉴럴 네트워크(DNN: Deep neural network)를 이용하여, 상기 제1 영상을 상기 분류자가 나타내는 목적에 따라 처리하는 단계는,
    상기 분류자에 포함되는 모든 픽셀들이 상기 제1 값을 가지는 경우, 상기 제1 영상을, 상기 제1 목적에 따라 처리하는 단계; 및
    상기 분류자에 포함되는 모든 픽셀들이 상기 제2 값을 가지는 경우, 상기 제1 영상을 상기 제2 목적에 따라 처리하는 단계를 포함하는 영상 처리 장치의 동작방법.
  19. 제17항에 있어서,
    상기 딥 뉴럴 네트워크(DNN: Deep neural network)를 이용하여, 상기 제1 영상을 상기 분류자가 나타내는 목적에 따라 처리하는 단계는,
    상기 분류자에 포함되는 제1 영역의 픽셀들은 상기 제1 값을 가지고, 상기 분류자에 포함되는 제2 영역의 픽셀들은 상기 제2 값을 가지는 경우, 상기 제1 영상 중 상기 제1 영역에 대응하는 제3 영역은 상기 제1 목적에 따라 처리하고, 상기 제1 영상 중 상기 제2 영역에 대응하는 제4 영역은 상기 제2 목적에 따라 처리하는 단계를 포함하는 영상 처리 장치의 동작방법.
  20. 제17항에 있어서,
    상기 딥 뉴럴 네트워크(DNN: Deep neural network)를 이용하여, 상기 제1 영상을 상기 분류자가 나타내는 목적에 따라 처리하는 단계는,
    상기 분류자에 포함되는 픽셀들의 값, 상기 제1 값 및 상기 제2 값에 기초하여, 결정된 상기 제1 목적에 따른 영상 처리의 레벨 및 상기 제2 목적에 따른 영상 처리의 레벨에 따라, 상기 제1 영상을 처리하는 단계를 포함하는 영상 처리 장치의 동작방법.
  21. 제13항에 있어서,
    상기 제1 영상 및 분류자를 획득하는 단계는,
    상기 제1 영상의 특성에 기초하여, 상기 분류자를 생성하는 단계를 포함하는 영상 처리 장치의 동작방법.
  22. 제21항에 있어서,
    상기 제1 영상의 특성에 기초하여, 상기 분류자를 생성하는 단계는,
    상기 제1 영상에 포함된 텍스트 및 엣지를 나타내는 맵 영상을 생성하는 단계; 및
    상기 맵 영상에 기초하여, 상기 분류자에 포함되는 픽셀들의 값들을 결정하는 단계를 포함하는 영상 처리 장치의 동작방법.
  23. 제13항에 있어서,
    상기 동작방법은,
    제1 영상 데이터, 제1 값을 픽셀 값으로 가지는 제1 분류자, 및 상기 제1 영상 데이터가 제1 목적으로 처리된 제1 레이블 데이터를 포함하는 제1 학습 데이터 세트 및 제2 영상 데이터, 제2 값을 픽셀 값으로 가지는 제2 분류자, 및 상기 제2 영상 데이터가 제2 목적으로 처리된 제2 레이블 데이터를 포함하는 제2 학습 데이터 세트를 이용하여, 상기 딥 뉴럴 네트워크를 학습시키는 단계를 더 포함하는 영상 처리 장치의 동작방법.
  24. 제23항에 있어서,
    상기 딥 뉴럴 네트워크를 학습시키는 단계는,
    상기 딥 뉴럴 네트워크에, 상기 제1 영상 데이터 및 상기 제1 분류자가 입력되었을 때, 출력되는 영상 데이터와 상기 제1 레이블 데이터의 차이가 작아지도록 상기 딥 뉴럴 네트워크에 포함된 하나 이상의 커널들의 가중치 값들을 조정하는 단계; 및
    상기 딥 뉴럴 네트워크에, 상기 제2 영상 데이터 및 상기 제2 분류자가 입력되었을 때, 출력되는 영상 데이터와 상기 제2 레이블 데이터의 차이가 작아지도록 상기 딥 뉴럴 네트워크에 포함된 상기 하나 이상의 커널들의 가중치 값들을 조정하는 단계를 포함하는 영상 처리 장치의 동작방법.
  25. 제1 영상 및 영상 처리의 목적을 나타내는 분류자(classifier)를 획득하는 단계; 및
    복수의 영상들을 서로 다른 목적에 따라 처리하는 딥 뉴럴 네트워크(DNN: Deep neural network)를 이용하여, 상기 제1 영상을 상기 분류자가 나타내는 목적에 따라 처리하는 단계를 수행하도록 하는 프로그램이 저장된 하나 이상의 컴퓨터로 읽을 수 있는 기록매체를 포함하는 컴퓨터 프로그램 제품.
KR1020180090432A 2018-08-02 2018-08-02 영상 처리 장치 및 그 동작방법 KR20200015095A (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020180090432A KR20200015095A (ko) 2018-08-02 2018-08-02 영상 처리 장치 및 그 동작방법
US17/264,656 US11961203B2 (en) 2018-08-02 2019-07-29 Image processing device and operation method therefor
EP19844841.7A EP3809335A4 (en) 2018-08-02 2019-07-29 IMAGE PROCESSING DEVICE AND OPERATING PROCEDURES FOR IT
CN201980051536.7A CN112534443A (zh) 2018-08-02 2019-07-29 图像处理设备及其操作方法
PCT/KR2019/009400 WO2020027519A1 (ko) 2018-08-02 2019-07-29 영상 처리 장치 및 그 동작방법

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180090432A KR20200015095A (ko) 2018-08-02 2018-08-02 영상 처리 장치 및 그 동작방법

Publications (1)

Publication Number Publication Date
KR20200015095A true KR20200015095A (ko) 2020-02-12

Family

ID=69230837

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180090432A KR20200015095A (ko) 2018-08-02 2018-08-02 영상 처리 장치 및 그 동작방법

Country Status (5)

Country Link
US (1) US11961203B2 (ko)
EP (1) EP3809335A4 (ko)
KR (1) KR20200015095A (ko)
CN (1) CN112534443A (ko)
WO (1) WO2020027519A1 (ko)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102315427B1 (ko) * 2020-05-14 2021-10-20 아주대학교산학협력단 딥러닝 학습을 위한 데이터 처리 방법 및 그 장치
WO2021230624A1 (ko) * 2020-05-15 2021-11-18 삼성전자 주식회사 영상 처리 장치 및 그 동작방법
US11418737B2 (en) 2020-09-17 2022-08-16 Samsung Electronics Co., Ltd. Image signal processor and electronic device and electronic system including the same
WO2023219277A1 (ko) * 2022-05-09 2023-11-16 삼성전자 주식회사 영상 처리 장치 및 그 동작 방법

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11880770B2 (en) * 2018-08-31 2024-01-23 Intel Corporation 3D object recognition using 3D convolutional neural network with depth based multi-scale filters
CN110188765B (zh) * 2019-06-05 2021-04-06 京东方科技集团股份有限公司 图像语义分割模型生成方法、装置、设备及存储介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06231245A (ja) * 1993-02-02 1994-08-19 Sony Corp 画像処理フィルタの構成方法
KR101864000B1 (ko) * 2013-09-17 2018-07-05 아셀산 엘렉트로닉 사나이 베 티카렛 아노님 시르케티 다목적 이미지 프로세싱 코어
KR20160096460A (ko) * 2015-02-05 2016-08-16 삼성전자주식회사 복수의 분류기를 포함하는 딥 러닝 기반 인식 시스템 및 그 제어 방법
US20170132528A1 (en) * 2015-11-06 2017-05-11 Microsoft Technology Licensing, Llc Joint model training
US11024009B2 (en) 2016-09-15 2021-06-01 Twitter, Inc. Super resolution using a generative adversarial network
KR102359391B1 (ko) * 2016-11-08 2022-02-04 삼성전자주식회사 디바이스가 이미지를 보정하는 방법 및 그 디바이스
WO2018088794A2 (ko) 2016-11-08 2018-05-17 삼성전자 주식회사 디바이스가 이미지를 보정하는 방법 및 그 디바이스
CA3046035A1 (en) * 2016-12-05 2018-06-14 Avigilon Coporation System and method for cnn layer sharing

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102315427B1 (ko) * 2020-05-14 2021-10-20 아주대학교산학협력단 딥러닝 학습을 위한 데이터 처리 방법 및 그 장치
WO2021230624A1 (ko) * 2020-05-15 2021-11-18 삼성전자 주식회사 영상 처리 장치 및 그 동작방법
US11418737B2 (en) 2020-09-17 2022-08-16 Samsung Electronics Co., Ltd. Image signal processor and electronic device and electronic system including the same
WO2023219277A1 (ko) * 2022-05-09 2023-11-16 삼성전자 주식회사 영상 처리 장치 및 그 동작 방법

Also Published As

Publication number Publication date
WO2020027519A1 (ko) 2020-02-06
US20210334578A1 (en) 2021-10-28
CN112534443A (zh) 2021-03-19
EP3809335A1 (en) 2021-04-21
US11961203B2 (en) 2024-04-16
EP3809335A4 (en) 2021-08-25

Similar Documents

Publication Publication Date Title
US11961203B2 (en) Image processing device and operation method therefor
US11620774B2 (en) Generative adversarial network (GAN)-based system for generating color image from edge image
JP6441980B2 (ja) 教師画像を生成する方法、コンピュータおよびプログラム
Marques Practical image and video processing using MATLAB
US9697583B2 (en) Image processing apparatus, image processing method, and computer-readable recording medium
KR102616700B1 (ko) 영상 처리 장치 및 그 영상 처리 방법
CN101536078A (zh) 改进图像蒙板
KR102570562B1 (ko) 영상 처리 장치 및 그 동작방법
KR20200067631A (ko) 영상 처리 장치 및 그 동작방법
US20230040256A1 (en) Image coloring method and apparatus based on artificial intelligence, electronic device, and computer readable storage medium
US20210407153A1 (en) High-resolution controllable face aging with spatially-aware conditional gans
KR102430743B1 (ko) 데이터 증강 기반 사물 분석 모델 학습 장치 및 방법
KR20200131663A (ko) 영상 처리 장치 및 그 동작방법
KR20200030988A (ko) 영상 처리 장치 및 그 동작방법
KR101887929B1 (ko) 이미지 처리 장치, 이미지 처리 방법, 컴퓨터 판독가능 기록매체 및 화상형성장치
KR102246110B1 (ko) 영상 처리 장치 및 그 영상 처리 방법
US11995795B2 (en) Image processing device and method for operating same
JP2021196451A (ja) 画像変換装置、画像変換方法及び画像変換用コンピュータプログラム
US20230342884A1 (en) Diverse Image Inpainting Using Contrastive Learning
US11200708B1 (en) Real-time color vector preview generation
WO2020166596A1 (ja) 画像処理システム及びプログラム
JP7362924B2 (ja) データ増強基盤空間分析モデル学習装置及び方法
WO2021235223A1 (ja) 画像処理装置、画像処理方法、学習装置、生成方法、およびプログラム
US11790564B2 (en) Encoders for improved image dithering
CN111814818B (zh) 显示设备及其图像处理方法