KR20220157402A - 이미지 리스케일링 - Google Patents

이미지 리스케일링 Download PDF

Info

Publication number
KR20220157402A
KR20220157402A KR1020227033277A KR20227033277A KR20220157402A KR 20220157402 A KR20220157402 A KR 20220157402A KR 1020227033277 A KR1020227033277 A KR 1020227033277A KR 20227033277 A KR20227033277 A KR 20227033277A KR 20220157402 A KR20220157402 A KR 20220157402A
Authority
KR
South Korea
Prior art keywords
resolution
image
group
neural network
training images
Prior art date
Application number
KR1020227033277A
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 마이크로소프트 테크놀로지 라이센싱, 엘엘씨
Publication of KR20220157402A publication Critical patent/KR20220157402A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4046Scaling of whole images or parts thereof, e.g. expanding or contracting using neural networks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4007Scaling of whole images or parts thereof, e.g. expanding or contracting based on interpolation, e.g. bilinear interpolation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4023Scaling of whole images or parts thereof, e.g. expanding or contracting based on decimating pixels or lines of pixels; based on inserting pixels or lines of pixels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4053Scaling of whole images or parts thereof, e.g. expanding or contracting based on super-resolution, i.e. the output image resolution being higher than the sensor resolution
    • G06T3/4076Scaling of whole images or parts thereof, e.g. expanding or contracting based on super-resolution, i.e. the output image resolution being higher than the sensor resolution using the original low-resolution images to iteratively correct the high-resolution images
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformations in the plane of the image
    • G06T3/40Scaling of whole images or parts thereof, e.g. expanding or contracting
    • G06T3/4084Scaling of whole images or parts thereof, e.g. expanding or contracting in the transform domain, e.g. fast Fourier transform [FFT] domain scaling
    • 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/20048Transform domain processing
    • G06T2207/20064Wavelet transform [DWT]
    • 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/20081Training; Learning
    • 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)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Image Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Editing Of Facsimile Originals (AREA)

Abstract

본 명세서에 설명된 청구 대상의 구현예에 따르면, 이미지 리스케일링을 위한 솔루션이 제안된다. 이 솔루션에 따르면, 제 1 해상도의 입력 이미지가 획득된다. 입력 이미지에 기초해서 트레이닝된 가역 신경 네트워크(invertible neural network)를 사용해서 제 2 해상도의 출력 이미지 및 사전 결정된 분포에 따른 고주파 정보가 생성되며, 제 1 해상도는 상기 제 2 해상도를 초과한다. 또한, 제 2 해상도의 추가 입력 이미지가 획득된다. 가역 신경 네트워크의 역 네트워크를 사용하여 추가 입력 이미지 및 사전 결정된 분포에 따른 고주파 정보에 기초하여 제 1 해상도의 추가 출력 이미지가 생성된다. 이 솔루션에서는, 원본 이미지를, 동일한 시멘틱을 갖는 시각적으로 우수한(visually-pleasing) 저해상도 이미지로 다운스케일링하고, 저해상도 이미지로부터 고품질의 고해상도 이미지를 복원할 수 있다.

Description

이미지 리스케일링
이미지 리스케일링은, 디지털 이미지 처리의 가장 일반적인 동작 중 하나가 되었다. 한편으로, 인터넷 상에서 고해상도(HR) 이미지/비디오의 양이 폭발적으로 증가함에 따라, 이러한 대용량 데이터를 저장, 전송 및 공유하는 데 이미지 다운스케일링(downscaling)은 매우 필수적인데, 이는 다운스케일링된 대응물(counterpart)이 동일한 시멘틱(semantic) 정보를 유지하면서도 저장 공간을 크게 절감하고 대역폭을 효율적으로 활용할 수 있기 때문이다. 반면에, 이들 다운스케일링 시나리오의 대부분은 필연적으로, 역 작업(inverse task) 즉, 다운스케일링된 이미지를 원본 크기로 하는 업스케일링을 강하게 요구한다.
기존의 이미지 다운스케일링(즉, 고해상도 이미지를 저해상도 이미지로 다운스케일링) 방식은 일반적으로 고해상도 이미지에서의 고주파 정보의 손실을 초래한다. 기존의 이미지 업스케일링(즉, 저해상도 이미지를 고해상도 이미지로 업스케일링) 방식에서는, 고주파 정보가 손실되기 때문에, 저해상도 이미지로부터 고품질의 고해상도 이미지를 복원하지 못하는 경우가 많다.
본 명세서에서 설명되는 청구 대상의 구현예에 따르면, 이미지 리스케일링을 위한 솔루션이 제안된다. 이 솔루션에 따르면, 제 1 해상도의 입력 이미지가 획득된다. 입력 이미지에 기초해서 트레이닝된 가역 신경 네트워크(invertible neural network)를 이용해서, 제 2 해상도의 출력 이미지와 사전 결정된 분포에 따른 고주파 정보가 생성되며, 여기서 제 1 해상도는 제 2 해상도를 초과하고, 입력 이미지와 출력 이미지는 동일한 시멘틱을 갖는다. 나아가, 제 2 해상도의 추가 입력 이미지가 획득된다. 추가 입력 이미지 및 사전 결정된 분포에 따른 고주파 정보에 기초해서, 가역 신경 네트워크의 역 네트워크를 이용해서, 제 1 해상도의 추가 출력 이미지가 생성되고, 여기서 추가 입력 이미지와 추가 출력 이미지는 동일한 시멘틱을 갖는다. 이 솔루션에서는, 원본 이미지를, 동일한 시멘틱을 갖는 시각적으로 우수한(visually-pleasing) 저해상도 이미지로 다운스케일링하고, 저해상도 이미지로부터 고품질의 고해상도 이미지를 복원할 수 있다.
이 과제의 해결 수단 단락은 이하의 상세한 설명에서 더 설명되는 개념들 중 일부를 선택해서 간략한 형태로 소개하기 위해서 제공되는 것이다. 이 과제의 해결 수단은 청구 대상의 핵심적인 특성 또는 필수적인 특성을 나타내는 것이 아니며, 청구 대상의 범위를 한정하는 데 사용되는 것도 아니다.
도 1a는 본 명세서에 개시된 청구 대상의 복수의 구현예를 구현할 수 있는 컴퓨팅 디바이스의 개략 블록도를 나타낸다.
도 1b는 본 명세서에 설명된 청구 대상의 구현예에 따른 이미지 리스케일링 모듈의 작동 원리의 개략도를 예시한다.
도 2a는 본 명세서에 설명된 청구 대상의 구현예에 따른 가역 신경 네트워크의 개략 블록도를 도시한다.
도 2b는 본 명세서에 설명된 청구 대상의 구현예에 따른 예시적인 가역 신경 네트워크 유닛의 개략도를 도시한다.
도 3a는 본 명세서에 설명된 청구 대상의 구현예에 따른 가역 신경 네트워크의 역 네트워크의 개략 블록도를 도시한다.
도 3b는 본 명세서에 설명된 청구 대상의 구현예에 따른 예시적인 가역 신경 네트워크 유닛의 개략도를 도시한다.
도 4는 본 명세서에 설명된 청구 대상의 구현예에 따른 이미지 리스케일링의 예시적인 방법의 흐름도를 도시한다.
도 5는 본 명세서에 설명된 청구 대상의 구현예에 따른 이미지 리스케일링의 예시적인 방법의 흐름도를 도시한다.
도 6은 본 명세서에 설명된 청구 대상의 구현예가 구현될 수 있는 예시적인 시스템의 블록도를 도시한다.
도면 전체에서, 동일한 혹은 유사한 참조 번호는, 동일한 또는 유사한 요소를 가리킨다.
이하, 본 명세서에 설명된 청구 대상을 여러가지 예시적인 구현예를 참조해서 설명한다. 이들 구현예는 청구 대상의 범주에 대한 어떠한 한정을 제안하는 것이 아니며, 당업자가 본 명세서에서 설명된 청구 대상을 더 잘 이해하고, 이에 따라 구현할 수 있게 하기 위한 목적으로만, 설명된다는 것을 이해해야 한다.
본 명세서에서 사용되는 용어 "포함한다" 및 그의 파생어는, "포함하지만 이것으로 한정되는 것은 아닌"을 의미하는 개방 용어(open term)로 해석되어야 한다. "에 기초한"이라는 용어는 "적어도 부분적으로 기초한"으로 이해되어야 한다. "하나의 구현예" 및 "일 구현예"이라는 용어는 "적어도 하나의 구현예"로 이해되어야 한다. "다른 구현예"이라는 용어는 "적어도 하나의 다른 구현예"로 이해되어야 한다. "제 1", "제 2" 등의 용어는 상이한 대상을 가리킬 수도 있고 혹은 동일한 대상을 가리킬 수 있다. 이하에서는 명시적 및 암시적 다른 정의가 포함될 수 있다.
본 명세서에서 사용되는 "신경 네트워크"는 입력을 핸들링하고 대응하는 출력을 제공할 수 있으며, 이는 일반적으로 입력 계층, 출력 계층, 및 입력 계층과 출력 계층 사이의 하나 이상의 은닉 계층을 포함한다. 신경 네트워크의 각각의 계층은 앞의 계층의 출력이 다음 계층의 입력으로 제공되는 방식으로 순차적으로 접속되고, 여기서 입력 레이어는 신경 네트워크 모델의 입력을 수신하고, 출력 레이어의 출력은 신경 네트워크 모델의 최종 출력으로서 동작한다. 신경 네트워크 모델의 각각의 계층은 하나 이상의 노드(처리 노드 또는 뉴런이라고도 함)를 포함하고, 각각의 노드는 이전 계층으로부터의 입력을 처리한다. 본문에서 "신경 네트워크", "모델", "네트워크" 및 "신경 네트워크 모델"이라는 용어는 같은 의미로 사용될 수 있다.
상술한 바와 같이, 이미지 리스케일링은 디지털 이미지 처리를 위한 가장 일반적인 동작 중 하나이다. 그러나, 기존의 이미지 다운스케일링(즉, 고해상도 이미지를 저해상도 이미지로 다운스케일링) 방식에서는 일반적으로 고해상도 이미지에서 고주파 정보의 손실을 초래한다. 고주파 정보가 손실되면, 이미지 업스케일링 과정(즉, 저해상도 이미지를 고해상도 이미지로 업스케일링)이 상당히 어렵게 되는데, 이는 동일한 저해상도(LR) 이미지가 복수의 고해상도(HR) 이미지에 대응(이미지 업스케일링 과정에서 불량 자세(ill-posedness)라고도 함)할 수 있다는 것을 의미하기 때문이다. 따라서, 기존의 방식은 일반적으로 LR 이미지로부터 고품질의 HR 이미지를 복원하지 못할 수 있다.
종래의 방식은 일반적으로 LR 이미지를 초해상도(SR) 방식으로 업스케일링한다. 기존의 SR 방법은 주로 예제 기반 전략(example-based strategies)이나 딥 러닝 모델을 통해서 사전 정보를 학습하는 것에 중점을 둔다. 분명히, 타깃 LR 이미지가 대응하는 HR 이미지를 다운스케일링해서 획득되는 경우, 이미지를 업스케일링하는 과정에서 이미지 다운스케일링 방법을 고려하면, HR 이미지 복원의 품질을 향상시키는 데 도움이 될 것이다.
종래의 이미지 다운스케일링 방법은, 입력 HR 이미지를 타깃 해상도로 서브샘플링하기 위한 저역 통과 필터로서, 주파수 기반 커널(예를 들어, 이중 선형 보간법 및 바이큐빅 보간법)을 사용한다. 그러나, 고주파 정보가 억제되기 때문에, 위의 방법은 종종 이미지가 지나치게 평활해지는 결과를 낳는다. 최근에는 디테일을 보존하고 있는(several detail-preserving) 다운스케일링 방법이나 혹은 구조적으로 유사한 다운스케일링 방법이 여러가지 제안되고 있다. 그러나, 이러한 지각-지향적인(perceptual-oriented) 다운스케일링 방법은, 이미지 다운스케일링과 그 역 작업(즉, 이미지 업스케일링) 사이의 잠재적인 상호 강화를 전혀 고려하고 있지 않다.
이미지 다운스케일링과 그 역 작업(즉, 이미지 업스케일링) 사이의 잠재적인 상호 강화의 영감을 받아서, 일부 기존 방식에서는 이미지 다운스케일링과 이미지 업스케일링을 통합된 작업으로 모델링하는 시도를 한다. 예를 들어, 일부 방식은 자동 인코더 프레임워크에 기초한 이미지 다운스케일링 모델을 제공하는데, 여기서 인코더와 디코더는 각각 이미지 다운스케일링 및 SR 모델의 역할을 하고, 이미지 다운스케일링 및 업스케일링 과정이 통합된 작업으로서 함께 트레이닝되게 된다. 일부 방식에서는, 컨볼루션 신경 네트워크를 사용해서 다운스케일링된 저해상도 이미지를 추정하고, 학습된 혹은 지정된 SR 모델을 HR 이미지 복원에 활용한다. 일부 방식에서는 컨텐츠 적응형 샘플러(content-adaptive-sampler) 기반 이미지 다운스케일링 방법을 더 제안하는데, 이는 기존 SR 모델과 함께 트레이닝될 수 있다. 위의 방식들은 다운스케일링된 LR 이미지로부터 복원된 HR 이미지의 품질을 어느 정도 향상시킬 수는 있지만, 이미지 업스케일링 과정에서의 불량 자세(ill-posed) 문제는 근본적으로 해결하지 못해서, LR 이미지로부터 고품질의 HR 이미지를 복원하지는 못한다.
본 명세서에 설명된 청구 대상의 구현에 따르면, 이미지 리스케일링을 위한 솔루션이 제공된다. 이 솔루션에서는 제 1 해상도의 입력 이미지를 가역 신경 네트워크를 사용해서 제 2 해상도의 출력 이미지로 리스케일링한다. 또한, 신경 네트워크의 역 네트워크는 제 2 해상도의 입력 이미지를 제 1 해상도의 출력 이미지로 리스케일링할 수 있다. 구체적으로, 이미지 다운스케일링 동안, 가역 신경 네트워크는 HR 이미지를 LR 이미지 및 사전 결정된 분포에 따른 고주파 노이즈로 변환할 수 있다. 이미지 업스케일링 동안, 가역 신경 네트워크의 역 네트워크는 LR 이미지 및 사전 결정된 분포에 따른 랜덤 노이즈를 HR 이미지로 변환할 수 있다. 가역 신경 네트워크가 이미지 다운스케일링 및 업스케일링 과정을 모델링하는 데 사용되기 때문에, 이 솔루션은 원본 이미지를 시각적으로 우수한 저해상도 이미지로 다운스케일링하고, 이미지 업스케일링 과정의 불량 자세를 크게 완화할 수 있으며, 이로써 저해상도 이미지로부터 고화질의 고해상도 이미지를 복원할 수 있다.
이 솔루션의 다양한 예시적인 구현예를 도면을 참조하면서 아래에서 더 상세하게 설명한다.
도 1a는 본 명세서에 설명된 청구 대상의 복수의 구현예를 수행할 수 있는 컴퓨팅 디바이스(100)의 블록도를 나타낸다. 도 1에 도시된 컴퓨팅 디바이스(100)는 단지 예시일 뿐으로, 본 명세서에 설명된 청구 대상에 의해 설명된 구현의 기능 및 범주를 전혀 한정하는 것은 아니라는 것을 이해해야 한다. 도 1에 따르면, 컴퓨팅 디바이스(100)는 범용 컴퓨팅 디바이스 형태의 컴퓨팅 디바이스(100)를 포함한다. 컴퓨팅 디바이스(100)의 구성요소는 하나 이상의 프로세서 또는 처리 유닛(110), 메모리(120), 저장 디바이스(130), 하나 이상의 통신 유닛(140), 하나 이상의 입력 디바이스(150) 및 하나 이상의 출력 디바이스(160)를 포함할 수 있지만, 이것으로 한정되는 것은 아니다.
일부 구현예들에서, 컴퓨팅 디바이스(100)는, 컴퓨팅 파워를 가진 다양한 사용자 단말 또는 서비스 단말로서 구현될 수 있다. 서비스 단말은 다양한 서비스 제공자에 의해 제공되는 서버, 대규모 컴퓨팅 디바이스 등일 수 있다. 사용자 단말은, 예를 들어, 모바일 단말, 고정 단말 또는 휴대 전화, 사이트, 유닛, 디바이스를 포함하는 임의의 타입의 휴대형 단말, 멀티미디어 컴퓨터, 멀티미디어 태블릿, 인터넷 노드, 커뮤니케이터, 데스크톱 컴퓨터, 랩톱 컴퓨터, 노트북 컴퓨터, 넷북 컴퓨터, 태블릿 컴퓨터, 개인 통신 시스템(PCS) 디바이스, 개인용 내비게이션 디바이스, 개인 휴대 정보 단말기(PDA), 오디오/비디오 플레이어, 디지털 카메라/비디오, 포지셔닝 디바이스, 텔레비전 수신기, 라디오 방송 수신기, 전자 책 디바이스, 게임 디바이스 또는 이들 디바이스의 액세서리 및 주변 디바이스로 구성된 기타 조합 또는 이들의 기타 조합이다. 컴퓨팅 디바이스(100)는 임의의 타입의 사용자-특정 인터페이스(예를 들어, "웨어러블" 회로 등)를 지원할 수 있다고도 생각할 수 있다.
프로세싱 유닛(110)은 물리적 프로세서일 수 있고 또는 가상 프로세서일 수도 있으며, 메모리(120)에 저장된 프로그램에 기초해서 다양한 프로세싱을 실행할 수 있다. 멀티-프로세서 시스템에서, 복수의 처리 유닛은 컴퓨터-실행 가능 명령어를 병렬로 실행해서 컴퓨팅 디바이스(100)의 병렬 처리 능력을 강화한다. 처리 디바이스(110)는 또한 중앙 처리 장치(CPU), 마이크로프로세서, 컨트롤러 및 마이크로컨트롤러로서 알려질 수 있다.
컴퓨팅 디바이스(100)는 복수의 컴퓨터 저장 매체를 포함한다. 이러한 매체는 컴퓨팅 디바이스(100)에 의해 액세스 가능한 임의의 달성 가능한 매체일 수 있으며, 휘발성 매체 및 비휘발성 매체, 착탈식 및 비착탈식 매체를 포함하지만 이것으로 한정되는 것은 아니다. 메모리(120)는 휘발성 메모리(예를 들어, 레지스터, 캐시, 랜덤 액세스 메모리(RAM)), 비휘발성 메모리(예를 들어, ROM(Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), 플래시) 또는 이들의 조합일 수 있다.
저장 디바이스(130)는 착탈식 매체일 수 있고 또는 비착탈식 매체일 수도 있으며, 머신-판독 가능 매체(예를 들어, 메모리, 플래시 드라이브, 자기 디스크)이거나 또는 정보 및/또는 데이터의 저장에 사용될 수 있으며, 컴퓨팅 디바이스(100) 내에서 액세스될 수 있는 임의의 다른 매체를 포함할 수 있다. 컴퓨팅 디바이스(100)는 추가적인 착탈식/비착탈식, 휘발성/비휘발성 저장 매체를 더 포함할 수 있다. 도 1에 도시되지는 않았지만, 착탈식이며 비휘발성인 디스크로부터 판독 또는 기록하기 위한 디스크 드라이브, 및 착탈식이며 비휘발성 광 디스크로부터 판독 또는 기록하기 위한 광 디스크 드라이브가 제공될 수 있다. 이 경우, 각각의 드라이브는 하나 이상의 데이터 매체 인터페이스를 통해 버스(미도시)에 접속될 수 있다.
통신 유닛(140)은 통신 매체를 통해 다른 컴퓨팅 장치와 통신을 구현한다. 나아가, 컴퓨팅 디바이스(100)의 구성요소의 기능은 단일 컴퓨팅 클러스터에 의해 실현될 수도 있고 또는 복수의 컴퓨팅 머신에 의해 실현될 수도 있으며, 이들 컴퓨팅 머신은 통신 접속을 통해 통신할 수 있다.  따라서, 컴퓨팅 디바이스(100)는 하나 이상의 다른 서버, 개인용 컴퓨터(PC) 또는 추가의 일반 네트워크 노드로의 로직 접속을 사용해서 네트워크 환경에서 작동될 수 있다.
입력 디바이스(150)는 마우스, 키보드, 트랙볼, 음성 입력 디바이스 등과 같은 하나 이상의 다양한 입력 디바이스일 수 있다. 출력 디바이스(160)는 하나 이상의 출력 디바이스, 예를 들어 디스플레이, 스피커 및 프린터 등일 수 있다. 컴퓨팅 디바이스(100)는 또한 필요에 따라 통신 유닛(140)을 통해 하나 이상의 외부 디바이스(미도시)와 통신할 수 있으며, 여기서 외부 디바이스, 예를 들어, 저장 디바이스, 디스플레이 디바이스 등은 사용자가 컴퓨팅 디바이스(100)와 상호작용할 수 있게 하는 하나 이상의 디바이스, 또는 컴퓨팅 디바이스(100)로 하여금 하나 이상의 다른 컴퓨팅 디바이스와 통신할 수 있게 하는 임의의 디바이스(네트워크 카드, 모뎀 카드 등과 같은)와 통신한다. 이러한 통신은 입/출력(I/O) 인터페이스(미도시)를 통해 실행될 수 있다.
일부 구현예에서, 개별 디바이스에 통합되는 것과 별개로, 컴퓨팅 디바이스(100)의 각각의 컴포넌트들의 일부 또는 전부는 또한 클라우드 컴퓨팅 아키텍처의 형태로 설정될 수 있다. 클라우드 컴퓨팅 아키텍처에서, 이들 구성요소는 원격으로 배열될 수 있고 본 개시 내용에 의해 설명된 기능을 구현하기 위해 협력할 수 있다.  일부 구현예에서, 클라우드 컴퓨팅은 단말 사용자에게 이러한 서비스를 제공하는 시스템 또는 하드웨어의 물리적 위치 또는 구성을 알리지 않고도, 계산, 소프트웨어, 데이터 액세스 및 저장 서비스를 제공한다. 다양한 구현예에서, 클라우드 컴퓨팅은 적절한 프로토콜을 사용하여 광역 네트워크(인터넷과 같은)를 통해 서비스를 제공한다. 예를 들어, 클라우드 컴퓨팅 제공자는 웹 브라우저 또는 기타 컴퓨팅 구성요소를 통해 액세스할 수 있는 응용 프로그램을 광역 네트워크를 통해 제공한다. 클라우드 컴퓨팅 아키텍처의 소프트웨어 또는 구성요소 및 대응하는 데이터는 원격 위치에 있는 서버에 저장될 수 있다. 클라우드 컴퓨팅 환경의 컴퓨팅 리소스는 원격 데이터 센터에서 병합될 수도 있고 분산될 수도 있다. 클라우드 컴퓨팅 인프라스트럭쳐는 사용자에 대해 단일 액세스 포인트처럼 보이도록 서비스를 공유 데이터센터를 통해 제공할 수 있다. 따라서, 본 명세서에 기술된 구성요소 및 기능은 원격 위치에 있는 서비스 제공자로부터 클라우드 컴퓨팅 아키텍처를 사용하여 제공될 수 있다. 다른 방안으로, 구성요소 및 기능은 또한 기존 서버로부터 제공될 수고 있고, 클라이언트 디바이스에 직접 또는 다른 방식으로 탑재될 수도 있다.
컴퓨팅 디바이스(100)는 본 명세서에 설명된 청구 대상의 다양한 구현예들에 따라서 이미지 리스케일링을 구현예하는데 사용될 수 있다. 메모리(120)는 하나 이상의 프로그램 명령어를 갖는 이미지 리스케일링 모듈(122)을 포함할 수 있다. 모듈은 본 명세서에 설명된 다양한 구현예의 기능을 구현예하기 위해 프로세싱 유닛(110)에 의해 액세스되고 동작될 수 있다.
이미지 리스케일링 동안, 컴퓨팅 디바이스(100)는 입력 디바이스(150)를 통해 입력 이미지(170)를 수신할 수 있다. 일부 구현예에서, 예를 들어, 입력 이미지(170)는 제 1 해상도의 이미지일 수 있다. 입력 이미지(170)는 메모리(120)의 이미지 리스케일링 모듈(122)에 입력될 수 있다. 이미지 리스케일링 모듈(122)은, 입력 이미지(170)에 기초해서, 트레이닝된 가역 신경 네트워크를 사용하여, 제 2 해상도의 출력 이미지(180) 및 사전 결정된 분포에 따르는 고주파 정보를 생성할 수 있으며, 여기서, 제 1 해상도는 제 2 해상도를 초과하고, 입력 이미지(170)와 출력 이미지(180)는 동일한 시멘틱을 갖는다. 다른 구현예에서, 예를 들어, 입력 이미지(170)는 제 2 해상도의 이미지일 수 있다. 입력 이미지(170)는 메모리(120)의 이미지 리스케일링 모듈(122)에 입력될 수 있다. 이미지 리스케일링 모듈(122)은 입력 이미지(170) 및 사전 결정된 분포에 따른 고주파 정보에 기초해서, 가역 신경 네트워크의 역 네트워크를 사용해서 제 1 해상도의 출력 이미지(180)를 생성할 수 있으며, 여기서 제 1 해상도는 제 2 해상도를 초과하고, 입력 이미지(170)와 출력 이미지(180)는 동일한 시멘틱을 갖는다. 출력 이미지(180)는 출력 디바이스(160)를 통해 출력될 수 있다.
일부 구현예에서, 이미지 리스케일링 모듈(122)은 트레이닝된 가역 신경 네트워크를 사용하여 이미지 다운스케일링(즉, HR 이미지를 LR 이미지로 변환)을 수행할 수 있고, 이미지 리스케일링 모듈(122)은 가역 신경 네트워크의 역 네트워크를 사용하여 역 이미지 업스케일링(즉, LR 이미지를 HR 이미지로 복원)을 수행할 수 있다. 도 1b는 본 명세서에 설명된 청구 대상의 구현예에 따른 이미지 리스케일링 모듈(122)의 작동 원리의 개략도를 예시한다. 도시된 바와 같이, 이미지 리스케일링 모듈(122)은 고해상도의 입력 이미지(170)에 기초해서 가역 신경 네트워크(191)('fθ'로 표시됨)를 사용하여, 저해상도의 출력 이미지(180) 및 사전 결정된 분포에 따른 고주파 정보(185)를 생성할 수 있다. 예를 들어, 고주파 정보(185)는 입력 이미지(170)의 시멘틱과 무관한 고주파 노이즈로 구현될 수 있다. 이미지 리스케일링 모듈(122)은 저해상도의 입력 이미지(170) 및 사전 결정된 분포에 따른 고주파 정보(175)에 기초해서 가역 신경 네트워크(191)의 역 네트워크(192)('fθ -1'로 표시됨)를 사용하여 고해상도의 출력 이미지(180)을 생성한다. 본 명세서에서 "사전 결정된 분포"는 가우시안 분포, 균일 분포 등을 포함할 수 있으나, 이것으로 한정되는 것은 아니며, 이는 가역 신경 네트워크의 트레이닝 과정에서 사전 정의될 수 있다.
가역 신경 네트워크(INN; Invertible Neural Network)는 생성 모델(generative model)에서 널리 사용되는 네트워크 구조로, 매핑 관계 m=fθ 및 그 역 매핑 관계 m=fθ -1를 명시할 수 있다. INN은 일반적으로 적어도 하나의 가역 블록을 포함할 수 있다.
l번째 블록의 경우, 입력 hl은 채널 축(channel axis)에 따라서 h1 l 및 h2 l로 분할되고, 다음과 같은 아핀(affine transformation)이 수행되고,
Figure pct00001
또한, 대응하는 입력은
Figure pct00002
이다. 출력이 주여지면, 그 역 변환은 다음과 같이 계산될 수 있고,
Figure pct00003
여기서, φ, p 및 η은 임의의 함수일 수 있고,
Figure pct00004
는 컨볼루션 연산을 나타낸다.
INN이 이미지 리스케일링 작업에 적용되면, INN은 고해상도의 입력 이미지 x에 기초해서, 다운스케일링된 저해상도 이미지 y 및 사전 결정된 분포에 따른 고주파 정보 z를 출력할 수 있으며, 여기서 고주파 정보 z는 예를 들어 이미지의 시멘틱과 무관한 고주파 노이즈로 구현될 수 있다. 이러한 방식으로, INN의 역 네트워크는 저해상도 이미지 y와 노이즈 z에 기초해서 고품질의 고해상도 이미지 x를 복원할 수 있다. 환언하면, 이미지 리스케일링 과정을 역으로 하기 위해서 이미지 다운스케일링 과정에서 손실된 고주파 정보 z를 유지해야 하는 것이 일반적이다. 또한, 전체 이미지 리스케일링 과정은 매핑 관계
Figure pct00005
Figure pct00006
로 나타낼 수 있다.
그러나, 이미지 업스케일링 동안, 일반적으로 임의의 LR 이미지를 업스케일링해야 한다. 따라서, 입력 LR 이미지에 대응하는 고주파 정보 z가 없는 경우가 많다. 본 발명자는, 이미지 다운스케일링 과정에서 손실되는 정보가 나이퀴스트-섀넌 표본화 정리(Nyquist-Shannon sampling theory)에 따른 고주파 디테일과 동일하다는 것을 알았다. 동일한 LR 이미지에 대응하는 HR 이미지의 그룹이 서로 다른 고주파 디테일을 포함하고 있다고 가정하면, 이들 디테일은 일반적으로 어느 정도의 가변성과 임의성을 나타낼 수 있다. 따라서, z는 확률 변수로 나타낼 수 있으며, 그 분포는, INN가 z를 나타내는 방식(즉, fθ가 z를 출력하는 방식)에 따라 결정된다. 구체적으로, INN은 사전 결정된 분포 p(z)를 만족하도록 트레이닝될 수 있다. 이러한 방식으로 이미지 다운스케일링 과정에서 가역 신경 네트워크에 의해 출력되는 고주파 노이즈 z를 저장할 필요가 없다. 나아가, 이미지 업스케일링 과정 동안, 저해상도 이미지 및 사전 결정된 분포를 갖는 어느 하나의 샘플에 기초해서, 고해상도 이미지가 복원될 수 있다.
도 2a는 본 명세서에 설명된 청구 대상의 구현예에 따른 가역 신경 네트워크(191)의 개략 블록도를 예시한다. 도 2a에 도시된 가역 신경 네트워크(191)의 구조는 단지 예시일 뿐, 본 명세서에서 설명된 청구 대상의 범주에 대해 어떠한 제한도 하지 않는다는 것을 이해해야 한다. 본 명세서에 설명된 청구 대상의 구현예는, 다른 구조를 갖는 가역 신경 네트워크에도 적합할 수 있다.
도 2a에 도시된 바와 같이, 가역 신경 네트워크(191)는 하나 이상의 다운샘플링 모듈(210)을 직렬로 접속해서 형성될 수 있다. 단순화를 위해, 도 2a에는 하나의 다운샘플링 모듈(210)만이 도시되어 있다. 가역 신경 네트워크(191)가 지원하는 이미지 다운스케일링의 비율은, 각각의 다운샘플링 모듈(210)이 지원하는 이미지 다운스케일링 비율 및 가역 신경 네트워크(191)에 포함된 다운샘플링 모듈(210)의 수에 의해 결정될 수 있다. 예를 들어, 다운샘플링 모듈(210)이 이미지를 2배로 줄이는 것을 지원하고 가역 신경 네트워크(191)가 2개의 다운샘플링 모듈(210)을 포함하는 것으로 가정하면, 가역 신경 네트워크(191)는 이미지를 4배로 줄이는 것을 지원한다.
도 2a에 도시된 바와 같이, 예를 들어, 다운샘플링 모듈(210)은 변환 모듈(230) 및 하나 이상의 INN 유닛(220-1, 220-2 ... 220-M)(전체적으로 'INN 유닛들(220)'이라고도 하고, 혹은 개별적으로 'INN 유닛(220)'이라고도 하며, 여기서 M>1)을 포함할 수 있다.
변환 모듈(230)은 고해상도의 입력 이미지(170)를, 입력 이미지(170)의 시멘틱을 보이는 저주파 성분(242) 및 이 시멘틱과 관련된 고주파 성분(241)으로 분해할 수 있다. 일부 구현예에서, 변환 모듈(230)은 웨이블릿 변환(wavelet transformation) 모듈, 예를 들어 Haar 변환 모듈로 구현될 수 있다. 예를 들어, 변환 모듈(230)이 Haar 변환 모듈로 구현되는 경우, 다운샘플링 모듈(210)은 이미지를 2배 다운스케일링하는 것을 지원할 수 있다. 구체적으로 Haar 변환 모듈은 길이 H, 너비 W 및 채널 수 C를 가진 입력 이미지 또는 특성 맵의 그룹을 출력 텐서
Figure pct00007
로 변환할 수 있다. 출력 텐서의 제 1 C 슬라이스는 대략적으로 이중 선형 보간(bilinear interpolation) 다운샘플링과 동일한 저역 통과 표현일 수 있다. C 슬라이스의 나머지 세 그룹은 각각 수직 방향, 수평 방향 및 대각선 방향의 잔여 성분을 포함한다. 이들 잔여 성분은 원본 HR 이미지의 고주파 정보에 기초한다. 다른 방안으로, 변환 모듈(230)은 1x1 가역 컨볼루션 블록으로서 구현될 수도 있고, 혹은 입력 이미지(170)를 저주파 성분과 고주파 성분으로 분해할 수 있는 현재 알려져 있거나 또는 향후에 개발될 임의의 변환 모듈로서 구현될 수도 있다. 다운샘플링 모듈(210)이 지원하는 이미지 다운스케일링 비율이 변경되는 경우, 변환 모듈(230)의 구현예는 달라질 수 있다는 것을 이해해야 한다. 이러한 방식으로, 저주파 정보(242) 및 고주파 정보(241)는 이어지는 INN 유닛(220-1)으로 공급될 수 있다.
상술한 바와 같이, 신경 네트워크(191)의 네트워크 구조가 가역(invertible)될 수 있도록, 각 INN 유닛(220)의 구조는 가역이어야 한다. INN 유닛(220)은 입력된 저주파 성분과 고주파 성분으로부터 대응하는 특성들을 추출하고, 이미지 시멘틱과 관련된 고주파 성분을, 사전 결정된 분포에 따르며 이미지 시멘틱과는 무관한 고주파 정보로 변환하는 데 사용된다.
도 2b는 본 명세서에 설명된 청구 대상의 구현예에 따른 예시적인 INN 유닛(220)의 개략도를 나타낸다. 여기서, INN 유닛(220)에 입력되는 저주파 성분 및 고주파 성분은 각각 h1 l 및 h2 l로 표현된다고 가정한다. 도 2b에 도시된 바와 같이, 위의 식 (1)에 표시된 아핀 변환은 저주파 성분 h1 l에 적용될 수 있고, 위의 식 (2)에 표시된 아핀 변환은 고주파 성분 h2 l에 적용될 수 있다. 도 2b에 나타난 변환 함수 φ, p 및 η은 임의의 함수일 수 있다. 도 2b의 INN 유닛(220)은 단지 예시일 뿐, 본 명세서에서 설명된 청구 대상의 범주에 대해 어떠한 제한도 하지 않는다는 것을 이해해야 한다. 본 명세서에 설명된 청구 대상의 구현예는 다른 구조를 가진 다른 INN 유닛에도 적용될 수 있다. INN 유닛의 예는 가역 컨볼루션 블록, 가역 잔차 네트워크 유닛, 가역 생성 네트워크 유닛, 딥 가역 네트워크 유닛 등을 포함할 수 있지만, 이것으로 한정되는 것은 아니다.
도 3a는 도 2a의 가역 신경 네트워크(191)의 역 네트워크(192)의 개략 블록도를 도시한다. 도 3a에 도시된 바와 같이, 네트워크(192)는 하나 이상의 업샘플링 모듈(310)들을 직렬로 접속함으로써 형성될 수 있다. 간략하게 하기 위해서, 도 3a에는 하나의 업샘플링 모듈(310)만이 도시되어 있다. 역 네트워크(192)가 지원하는 이미지 업스케일링 비율은 각각의 업샘플링 모듈(310)이 지원하는 이미지 업스케일링 비율 및 역 네트워크(192)에 포함된 업샘플링 모듈(310)의 수에 의해 결정될 수 있다. 예를 들어, 각각의 업샘플링 모듈(310)이 이미지를 2배로 확대하는 것을 지원하고 역 네트워크(192)가 2개의 업샘플링 모듈(310)을 포함하는 것으로 가정하면, 역 네트워크(192)는 이미지를 4배로 확대하는 것을 지원한다.
도 3a에 도시된 바와 같이, 예를 들어, 업샘플링 모듈(310)은 변환 모듈(330) 및 하나 이상의 INN 유닛(320-1, 320-2 ... 320-M)(전체적으로 'INN 유닛들(320)'이라고도 하고, 혹은 개별적으로 'INN 유닛(320)'이라고도 하며, 여기서 M>1)을 포함할 수 있다. 예를 들어, 도 2b의 INN 유닛(320)의 구조와 INN 유닛(220)의 구조는 도 3b에 도시된 바와 같이 서로 가역이다. INN 유닛(320-M)의 경우, INN 유닛(320-M)에 입력되는 저해상도의 입력 이미지(170)는
Figure pct00008
로서 표현되고, 사전 결정된 분포에 따른 고주파 정보(175)는
Figure pct00009
로서 표현된다고 가정한다. 도 3b에 도시된 바와 같이, 위의 식 (3)에 표시된 아핀 변환은
Figure pct00010
에 적용될 수 있고, 위의 식 (4)에 표시된 아핀 변환은
Figure pct00011
에 적용될 수 있다. 도 3b에 나타난 변환 함수
Figure pct00012
, p 및 η은 임의의 함수일 수 있다. 도 3b의 INN 유닛(320)은 단지 예시일 뿐, 본 명세서에서 설명된 청구 대상의 범주에 대해 어떠한 제한도 하지 않는다는 것을 이해해야 한다. 본 명세서에 설명된 청구 대상의 구현예는 다른 구조를 가진 다른 INN 유닛에도 적용될 수 있다. INN 유닛의 예는 가역 컨볼루션 블록, 가역 잔차 네트워크 유닛, 가역 생성 네트워크 유닛, 딥 가역 네트워크 유닛 등을 포함할 수 있지만, 이것으로 한정되는 것은 아니다.
도 3a에 도시된 바와 같이, 하나 이상의 INN 유닛(320)은 저해상도의 입력 이미지(170) 및 사전 결정된 분포에 따른 고주파 정보(175)를, 결합되는 고주파 성분(341) 및 저주파 성분(342)으로 변환할 수 있다. 도 2a에 도시된 변환 모듈(230)과는 반대로, 변환 모듈(330)은 고주파 성분(341) 및 저주파 성분(342)을 고해상도의 출력 이미지(180)로 결합할 수 있다. 일부 구현예에서, 변환 모듈(230)이 웨이블릿 변환 모듈로 구현되는 경우, 변환 모듈(330)은 역 웨이블릿 변환 모듈로서 구현될 수 있다. 예를 들어, 변환 모듈(230)이 Haar 변환 모듈로 구현되는 경우, 변환 모듈(330)은 역 Haar 변환 모듈로 구현될 수 있다. 다른 방안으로, 변환 모듈(330)은 1x1 가역 컨볼루션 블록으로 구현될 수도 있고, 고주파 성분과 저주파 성분을 하나의 이미지로 결합할 수 있는, 현재 알려져 있거나 혹은 향후 개발될 임의의 변환 모듈로 구현될 수도 있다.
이하 가역 신경 네트워크의 트레이닝 과정을 더 상세하게 설명한다. 설명에서는 간략하게 하기 위해서, 트레이닝 대상 신경 네트워크 및 그 역 네트워크를 총칭해서 "모델"이라고 한다. 위의 설명에 따르면, 모델을 트레이닝하는 목적은 고해상도 이미지 x, 저해상도 이미지 y 및 사전 결정된 분포 p(z) 사이의 매핑 관계 fθ를 결정하는 것이라는 것을 알 수 있다.
트레이닝하는 목적을 달성하기 위해, 일부 구현예에서, 고해상도 이미지의 그룹
Figure pct00013
('트레이닝 이미지의 제 1 그룹'이라고도 하며, 여기서 N은 이미지의 수를 나타냄) 및 대응하는 시멘틱을 가진 저해상도 이미지의 그룹('트레이닝 이미지의 제 2 그룹'이라고도 함)은 모델을 트레이닝하기 위한 트레이닝 데이터로서 획득될 수 있다. 일부 구현예에서, 고해상도 트레이닝 이미지의 제 1 그룹에 기초해서 저해상도의 트레이닝 이미지의 제 2 그룹이 생성될 수 있다. 예를 들어, 보간 방법을 사용하여 또는 현재 알려져 있거나 향후 개발될 적절한 방법을 사용하여 고해상도 트레이닝 이미지로부터 대응하는 시멘틱을 가진 저해상도 트레이닝 이미지가 생성될 수 있다. 본 명세서에 설명된 청구 대상의 범주는 이것으로 한정되는 것은 아니다. 일부 구현예들에서, 트레이닝 이미지의 제 1 그룹 및 트레이닝 이미지의 제 2 그룹에 기초해서 모델을 트레이닝하기 위한 목적 함수가 생성될 수 있다. 이후, 이 목적 함수를 최소화하여 모델의 파라미터가 결정될 수 있다.
일부 구현예에서, 모델을 트레이닝하기 위한 목적 함수는 저해상도 트레이닝 이미지와 고해상도 트레이닝 이미지에 기초한 모델에 의해 생성된 저해상도 이미지 사이의 차이에 기초해서 결정될 수 있다. 예를 들어, 트레이닝 이미지의 제 1 그룹에서 고해상도 트레이닝 이미지 χ(n)와 관련해서, 고해상도 트레이닝 이미지 χ(n)에 기초해서 모델에 의해 생성된 저해상도 이미지는
Figure pct00014
로 표시되고, 트레이닝 이미지의 제 2 그룹에서 고해상도 트레이닝 이미지 χ(n)에 대응하는 저해상도 트레이닝 이미지는
Figure pct00015
로 표시되며, 가역 신경 네트워크를 트레이닝하기 위한 목적 함수('제 1 목적 함수' 또는 'LR 안내 손실 함수(guidance loss function)'라고도 함)는 모델에 의해 생성된 저해상도 트레이닝 이미지는
Figure pct00016
와 저해상도 이미지
Figure pct00017
사이의 차이에 따라 생성된다. 예를 들어, 제 1 목적 함수는 다음과 같이 나타낼 수 있다.
Figure pct00018
여기서
Figure pct00019
는, L1 손실 함수 또는 L2 손실 함수와 같이, 차이 메트릭 함수(difference metric function)를 나타낸다.
이에 더해서 혹은 이와 달리, 일부 구현예에서, 모델을 트레이닝하기 위한 목적 함수는, 고해상도 트레이닝 이미지와 저해상도 이미지에 기초해서 모델에 의해 복원된 고해상도 이미지 사이의 차이에 기초해서 결정될 수 있다. 예를 들어, 트레이닝 이미지의 제 1 그룹에서 고해상도 트레이닝 이미지 χ(n)와 관련해서, 고해상도 트레이닝 이미지 χ(n)에 기초해서 모델에 의해 생성된 저해상도 이미지는
Figure pct00020
로 표시되고, 저해상도 이미지
Figure pct00021
에 기초해서 모델에 의해 복원된 고해상도 이미지는
Figure pct00022
로 표시되며, 여기서 z는 사전 결정된 분포 p(z)에 따르고(즉,
Figure pct00023
), 가역 신경 네트워크를 트레이닝하기 위한 목적 함수('제 2 목적 함수' 또는 'HR 복원 손실 함수'라고도 함)는 고해상도 트레이닝 이미지 χ(n)와 복원된 고해상도 이미지
Figure pct00024
사이의 차이에 따라 생성될 수 있다. 예를 들어, 제 2 목적 함수는 다음과 같이 표현될 수 있다.
Figure pct00025
여기서
Figure pct00026
는 원본 고해상도 이미지와 복원된 이미지 사이의 차이이고,
Figure pct00027
는 z가 사전 결정된 분포 p(z)를 따를 때의
Figure pct00028
의 수학적 기대치(mathematical expectation)이다.
이에 더해서 혹은 이와 달리, 모델 트레이닝의 다른 목적은 모델이 고해상도 트레이닝 이미지의 데이터 분포를 포착하도록 권장하는(encourage) 것이다. 여기서, 트레이닝 데이터의 제 1 그룹의 데이터 분포
Figure pct00029
는 q(χ)로 표현되는 것으로 가정한다. 예를 들어, 트레이닝 이미지의 제 1 그룹에서 고해상도 트레이닝 이미지 χ(n)와 관련해서, 모델에 의해 복원되는 고해상도 이미지는
Figure pct00030
로 표시되고,
Figure pct00031
는 고해상도 트레이닝 이미지 χ(n)로부터 모델에 의해 다운스케일링된 저해상도 이미지를 나타내고,
Figure pct00032
는 사전 결정된 분포 p(z)에 따른 랜덤 변수를 나타낸다. 다운스케일링된 저해상도 이미지의 그룹
Figure pct00033
은 트레이닝 데이터의 제 1 그룹
Figure pct00034
을 트래버스해서 획득될 수 있다.
Figure pct00035
의 데이터 분포는
Figure pct00036
로 표시될 수 있고, 이는 변환된 랜덤 변수
Figure pct00037
의 데이터 분포를 나타내고, 여기서 원본 랜덤 변수 x는 데이터 분포 q(χ)에 따르며, 즉
Figure pct00038
이다. 유사하게, 모델에 의해 복원된 고해상도 이미지는
Figure pct00039
로 표현될 수 있고, 그 데이터 분포는
Figure pct00040
로 표현될 수 있는데,
Figure pct00041
이기 때문이다. 일부 구현예에서, 가역 신경 네트워크를 트레이닝하기 위한 목적 함수('제 3 목적 함수' 또는 '분포 매칭 손실 함수'라고도 함)는 q(χ)와 모델-복원된 데이터 분포
Figure pct00042
사이의 차이에 따라서 생성될 상기 있다. 예를 들어, 제 3 목적 함수는 다음과 같이 표현될 수 있다.
Figure pct00043
여기서 Lp는 두 데이터 분포 사이의 차이이다.
일부 경우에, 두 분포가 모두 고차원이고 미지의(unknown) 밀도 함수를 갖고 있기 때문에, 식 (6)에 표시된 제 3 목적 함수를 직접 최소화하는 것은 어려울 수 있다. 일부 구현예에서는, JS 디버전스(divergence)를 사용해서 두 데이터 분포 사이의 차이를 나타낼 수 있다. 즉, 제 3 목적 함수는 다음과 같이 표현될 수도 있다.
Figure pct00044
일부 구현예에서, 모델을 트레이닝하기 위한 총 목적 함수는 제 1 목적 함수, 제 2 목적 함수 및 제 3 목적 함수를 결합함으로써 생성될 수 있다. 예를 들어 총 목적 함수는 다음과 같이 나타낼 수 있다.
Figure pct00045
여기서, λ1, λ2 및 λ3는 각각의 손실 항들의 균형을 맞추기 위한 계수이다.
일부 구현예에서, 모델 트레이닝의 안정성을 개선하기 위해서, 식 (8)에 나타낸 총 목적 함수로 모델을 트레이닝하기 전에 사전 트레이닝 단계가 수행될 수 있다. 사전 트레이닝 단계에서는, 약하지만 더 안정적인 분포 매칭 손실 함수(distribution matching loss function)가 사용될 수 있다. 예를 들어, 분포 매칭 손실 함수는, 모델 트레이닝의 안정성을 향상시키기 위해서 교차 엔트로피 손실 함수에 기초해서, 만들어질 수 있다. 예를 들어, 교차 엔트로피(CE) 손실 함수에 기초해서 만들어진 분포 매칭 손실 함수("제 4 목적 함수"라고도 함)는 다음과 같이 나타낼 수 있다.
Figure pct00046
여기서 CE는 교차 엔트로피 손실 함수를 나타낸다. 따라서, 사전 트레이닝 단계에서 사용되는 총 목적 함수는 다음과 같이 나타낼 수 있다.
Figure pct00047
여기서, λ1, λ2 및 λ3는 각각의 손실 항들의 균형을 맞추기 위한 계수이다.
일부 구현예에서, 사전 트레이닝 단계 이후에, 식 (8)에 나타낸 총 목적 함수에 기초해서 모델에 대해 제 2 라운드의 트레이닝이 다시 수행될 수도 있다. 다른 방안으로, 일부 구현예에서, 사전 트레이닝 단계 이후에, 하기 식 (11)에 나타낸 바와 같이 총 목적 함수에 기초해서 모델에 대해 제 2 트레이닝 라운드가 수행될 수도 있다.
Figure pct00048
여기서, 지각(perception) 손실 함수 LPercp는 원본 고해상도 이미지와 복원된 고해상도 이미지의 자신의 시멘틱 특성에서의 차이를 나타내기 위해서 제공된다. 예를 들어, 원본 고해상도 이미지와 복원된 고해상도 이미지의 시멘틱 특성은 당업계에 공지된 벤치마크(benchmark) 모델에 의해 추출될 수 있으며, 여기서, λ1, λ2, λ3 및 λ4는 각각의 손실 항들의 균형을 맞추기 위한 계수이다.
도 4는 본 명세서에 설명된 청구 대상의 일부 구현예들에 따른 이미지 리스케일링 방법(400)의 흐름도를 예시한다. 방법(400)은 컴퓨팅 디바이스(100)에 의해, 예를 들어, 컴퓨팅 디바이스(100)의 메모리(120) 내의 이미지 리스케일링 모듈(122)에서 구현될 수 있다. 블록(410)에서, 컴퓨팅 디바이스(100)는 제 1 해상도의 입력 이미지를 획득한다. 블록(420)에서, 컴퓨팅 디바이스(100)는 입력 이미지에 기초해서 트레이닝된 가역 신경 네트워크를 사용하여, 제 2 해상도의 출력 이미지 및 사전 결정된 분포에 따른 고주파 정보를 생성하며, 여기서 제 1 해상도는 제 2 해상도를 초과하고, 입력 이미지와 출력 이미지는 동일한 시멘틱을 갖는다.
일부 구현예에서, 가역 신경 네트워크는 변환 모듈 및 적어도 하나의 가역 네트워크 유닛을 포함하고, 출력 이미지 및 고주파 정보를 생성하는 것은, 변환 모듈을 사용하여, 입력 이미지를 입력 이미지의 시멘틱을 나타내는 저주파 성분 및 시멘틱과 관련된 고주파 성분으로 분해하는 것과, 적어도 하나의 가역 네트워크 유닛을 사용하여, 저주파 성분 및 고주파 성분에 기초해서 시멘틱과 무관한 고주파 정보 및 출력 이미지를 생성하는 것을 포함한다.
일부 구현예에서, 변환 모듈은, 웨이블릿 변환(wavelet transformation) 모듈 및 가역 컨볼루션(invertible convolution) 블록을 포함한다.
일부 구현예에서, 방법(400)은, 가역 신경 네트워크를 트레이닝하는 것을 더 포함하고, 가역 신경 네트워크는, 제 1 해상도의 제 1 이미지에 기초해서, 제 2 해상도의 제 2 이미지 및 사전 결정된 분포에 따른 제 1 고주파 정보를 생성하도록 트레이닝되고, 가역 신경 네트워크의 역 네트워크는 제 2 해상도의 제 3 이미지 및 사전 결정된 분포에 따른 제 2 고주파 정보에 기초해서 제 1 해상도의 제 4 이미지를 생성하도록 트레이닝된다.
일부 구현예에서, 가역 신경 네트워크를 트레이닝하는 것은, 제 1 해상도의 트레이닝 이미지의 제 1 그룹을 획득하는 것과, 트레이닝 이미지의 제 1 그룹의 시멘틱에 각각 대응하는, 제 2 해상도의 트레이닝 이미지의 제 2 그룹을 획득하는 것과, 트레이닝 이미지의 제 1 그룹 및 트레이닝 이미지의 제 2 그룹에 기초해서 가역 신경 네트워크를 트레이닝하는 것을 포함한다.
일부 구현예에서, 트레이닝 이미지의 제 2 그룹을 획득하는 것은, 트레이닝 이미지의 제 1 그룹에 기초해서 보간(interpolation) 방법을 사용하여 트레이닝 이미지의 제 2 그룹을 생성하는 것을 포함한다.
일부 구현예에서, 가역 신경 네트워크를 트레이닝시키는 것은, 트레이닝 이미지의 제 1 그룹 및 트레이닝 이미지의 제 2 그룹에 기초해서 복수의 목적 함수를 결정하는 것과, 복수의 목적 함수 중 적어도 일부를 결합해서, 가역 신경 네트워크를 트레이닝하기 위한 총 목적 함수(total objective function)를 결정하는 것과, 총 목적 함수를 최소화해서 가역 신경 네트워크의 네트워크 파라미터를 결정하는 것을 포함한다.
일부 구현예에서, 복수의 목적 함수를 결정하는 것은, 트레이닝 이미지의 제 1 그룹에 기초해서 가역 신경 네트워크를 사용하여, 제 2 해상도의 트레이닝 이미지의 제 3 그룹 및 랜덤 변수의 그룹을 생성하는 것과, 트레이닝 이미지의 제 2 그룹과 트레이닝 이미지의 제 3 그룹 사이의 차이에 기초해서, 제 1 목적 함수를 결정하는 것을 포함한다.
일부 구현예에서, 복수의 목적 함수를 결정하는 것은, 트레이닝 이미지의 제 1 그룹에 기초해서 가역 신경 네트워크를 사용하여, 제 2 해상도의 트레이닝 이미지의 제 3 그룹 및 랜덤 변수 그룹을 생성하는 것과, 역 네트워크를 사용하여, 트레이닝 이미지의 제 3 그룹 및 사전 결정된 분포에 따른 고주파 정보에 기초해서, 제 1 해상도의 트레이닝 이미지의 제 4 그룹을 생성하는 것과, 트레이닝 이미지의 제 1 그룹과 트레이닝 이미지의 제 4 그룹 사이의 차이에 기초해서, 제 2 목적 함수를 결정하는 것을 포함한다.
일부 구현예에서, 복수의 목적 함수를 결정하는 것은, 트레이닝 이미지의 제 1 그룹의 제 1 데이터 분포를 결정하는 것과, 트레이닝 이미지의 제 4 그룹의 제 2 데이터 분포를 결정하는 것과, 제 1 데이터 분포와 제 2 데이터 분포의 차이에 기초해서, 제 3 목적 함수를 결정하는 것을 포함한다.
일부 구현예에서, 복수의 목적 함수를 결정하는 것은, 랜덤 변수 그룹의 제 3 데이터 분포를 결정하는 것과, 제 3 데이터 분포와 사전 결정된 분포 사이의 차이에 기초해서, 제 4 목적 함수를 결정하는 것을 포함한다.
도 5는 본 명세서에 설명된 청구 대상의 일부 구현예에 따른 이미지 리스케일링 방법(500)의 흐름도를 나타낸다. 방법(500)은, 컴퓨팅 디바이스(100)에 의해, 예를 들어, 컴퓨팅 디바이스(100)의 메모리(120)의 이미지 리스케일링 모듈(122)에서 구현될 수 있다. 블록(510)에서, 컴퓨팅 디바이스(100)는 제 2 해상도의 입력 이미지를 획득한다. 블록(520)에서, 컴퓨팅 디바이스(100)는 트레이닝된 가역 신경 네트워크를 사용해서 사전 결정된 분포에 따른 고주파 정보 및 입력 이미지에 기초한 제 1 해상도의 출력 이미지를 생성하고, 여기서 제 1 해상도는 제 2 해상도를 초과하고, 입력 이미지와 출력 이미지는 동일한 시멘틱을 갖는다.
일부 구현예에서, 가역 신경 네트워크는 변환 모듈 및 적어도 하나의 가역 네트워크 유닛을 포함하고, 출력 이미지를 생성하는 것은, 적어도 하나의 가역 네트워크 유닛을 사용하여, 입력 이미지 및 고주파 정보에 기초하여, 결합될 저주파 성분 및 고주파 성분을 생성하는 것 - 저주파 성분은 입력 이미지의 시멘틱을 나타내고 고주파 성분은 시멘틱과 관련됨 - 과, 변환 모듈을 사용하여, 저주파 성분 및 고주파 성분을 출력 이미지로 결합하는 것을 포함한다.
일부 구현예에서, 변환 모듈은 웨이블릿 변환 모듈과 가역 컨볼루션 블록 중 임의의 하나를 포함한다.
위의 관점에서, 본 명세서에 설명된 청구 대상의 구현예는 이미지 리스케일링을 위한 솔루션을 제안한다. 이미지 다운스케일링 동안 가역 신경 네트워크는 HR 이미지를 LR 이미지로 변환하고 사전 결정된 분포에 따른 고주파 노이즈로 변환할 수 있다. 이미지 업스케일링 동안, 가역 신경 네트워크의 역 네트워크는 LR 이미지와 사전 결정된 분포에 따른 랜덤 노이즈를 HR 이미지로 변환할 수 있다. 이미지 업스케일링 동안, 가역 신경 네트워크의 역 네트워크는 LR 이미지 및 사전 결정된 분포에 따른 랜덤 노이즈를 HR 이미지로 변환할 수 있다. 가역 신경 네트워크가 이미지 다운스케일링 및 업스케일링 과정을 모델링하는 데 사용되기 때문에, 이 솔루션은 원본 이미지를 시각적으로 우수한 저해상도 이미지로 다운스케일링하고, 저해상도 이미지로부터 고화질의 고해상도 이미지를 복원할 수 있으며, 이로써 이미지 업스케일링 과정의 불량 자세를 크게 완화할 수 있다. 게다가, 다양한 실험 데이터에서, 종래의 이미지 리스케일링 방식에 비해서 본 명세서에 설명된 청구 대상의 구현예가 더 높은 피크 신호 대 잡음비(PSNR) 및/또는 SSIM(Structure Similarity)과 같은 더 우수한 이미지 복원 성능 지표를 달성할 수 있다는 것을, 보여주었다.
본 명세서에 설명된 청구 대상의 구현예는 이미지 및/또는 비디오 처리 분야에 널리 적용될 수 있다. 예를 들어, 온라인 비디오 스트리밍은 비디오 사이트, 라이브 스트리밍 사이트, 비디오 스트리밍 모바일 애플리케이션 등과 같이 우리 삶에서 중요한 역할을 한다. 풍부한 지각 디테일(perceptual detail)을 가진 고해상도 비디오와 같은 고품질 온라인 비디오 스트리밍이 바람직하다. 그러나, 고해상도 비디오는 일반적으로 전송에 많은 네트워크 대역폭을 필요로 한다. 따라서 네트워크 대역폭을 절약하기 위해서, 고해상도 비디오는 일반적으로 사용자 클라이언트로 전송되기 전에 처리 및 압축된다. 따라서, 사용자 클라이언트에는 저품질의 저해상도 비디오가 표시된다. 이러한 문제는 본 명세서에 설명된 청구 대상의 구현예에 따른 이미지 리스케일링 솔루션을 적용함으로써 해결될 수 있다.
도 6은 본 명세서에 설명된 청구 대상의 구현예가 구현될 수 있는 예시적인 시스템(600)의 블록도를 도시한다. 도시된 바와 같이, 시스템(600)은 비디오 스트림 서비스 제공자(610), 서버(620) 및 클라이언트 디바이스(630)를 포함할 수 있다. 예를 들어, 비디오 스트림 서비스 제공자(610)는 클라이언트 디바이스(630)가 요구하는 비디오 데이터를 서버(620)에 제공할 수 있으며, 서버(620)는 비디오 데이터를 네트워크를 통해서 비디오 스트림 서비스 제공자(610)로부터 클라이언트 디바이스(630)로 전송할 수 있다.
도 6에 도시된 바와 같이, 일부 구현예에서, 비디오 스트림 서비스 제공자(610)는, "고해상도 이미지 시퀀스(601)"라고도 하는, 고해상도 비디오 스트림(601)을 서버(620)에 제공할 수 있다. 서버(620)는 상술한 가역 신경 네트워크(191)을 사용하여, 고해상도 이미지 시퀀스(601)를 저해상도 이미지 시퀀스로 변환할 수 있다. 일부 구현예에서, 서버(620)는 저해상도 이미지 시퀀스를 저해상도 비디오 스트림(602)으로서 클라이언트 디바이스(630)에 직접 송신할 수 있다. 이 경우, 클라이언트 디바이스(630)는 저해상도 이미지 시퀀스를 수신할 수 있다. 이에 더해서 혹은 이와 달리, 일부 구현예들에서, 서버(620)는 저해상도 이미지 시퀀스에 대해 비디오 인코딩을 수행해서 인코딩된 저해상도 비디오 스트림(602)을 생성하고, 인코딩된 저해상도 비디오 스트림(602)을 네트워크를 통해 클라이언트 디바이스(630)에 송신할 수 있다. 이 경우, 클라이언트 디바이스(630)는 수신된 인코딩된 저해상도 비디오 스트림(602)을 디코딩해서, 디코딩된 저해상도 이미지 시퀀스를 도출할 수 있다. 이후, 클라이언트 디바이스(630)는 도출된 저해상도 이미지 시퀀스를 가역 신경 네트워크(191)의 역 네트워크(192)를 사용해서, 고해상도 비디오 스트림(603)으로 복원할 수 있다. 이러한 방식으로 클라이언트는 네트워크 대역폭을 저장하면서, 고품질 비디오 스트림을 획득할 수 있다.
이미지 및/또는 비디오 처리 분야에 더해서, 본 명세서에 설명된 청구 대상의 구현예는 이미지 및/또는 비디오 저장 분야에도 적용될 수 있다. 예를 들어, 고해상도 이미지 및/또는 비디오를 저장 디바이스에 저장하기 전에, 전술한 가역 신경 네트워크(191)을 사용해서, 고해상도 이미지 및/또는 비디오를 저해상도 이미지 및/또는 비디오와 사전 결정된 분포에 따른 대응하는 고주파 정보로 변환할 수 있다. 이후, 도출된 저해상도 이미지 및/또는 비디오는 저장 디바이스에 저장되고 대응하는 고주파 정보는 폐기될 수 있다. 저장 디바이스에 저장된 이미지 및/또는 비디오에 액세스하기 위해서는 먼저 저장 디바이스로부터 저해상도 이미지 및/또는 비디오가 획득될 수 있다. 이후, 획득한 저해상도 이미지 및/또는 비디오 및 사전 결정된 분포에 따른 랜덤 노이즈에 기초해서, 상술한 가역 신경 네트워크(191)의 역 네트워크(192)를 사용해서, 고해상도 이미지 및/또는 이미지를 복원할 수 있다. 이러한 방식으로, 이미지 및/또는 비디오의 품질을 손실시키는 일 없이 이미지 및/또는 비디오를 저장하기 위한 저장 공간을 절약할 수 있다.
본 명세서에 설명된 청구 대상의 일부 예시적인 구현예가 아래에 나열된다.
일 측면에서, 본 명세서에 기술된 청구 대상은 컴퓨터-구현 방법을 제공한다. 이 방법은: 제 1 해상도의 입력 이미지를 획득하는 단계와, 입력 이미지에 기초해서 트레이닝된 가역 신경 네트워크를 사용해서 제 2 해상도의 출력 이미지 및 사전 결정된 분포에 따른 고주파 정보를 생성하는 단계를 포함하고, 제 1 해상도는 제 2 해상도를 초과하고, 입력 이미지와 출력 이미지는 동일한 시멘틱을 갖는다.
일부 구현예에서, 이 방법은, 고주파 정보를 저장하지 않고 출력 이미지를 저장하는 단계를 더 포함한다.
일부 구현예에서, 이 방법은, 출력 이미지를 인코딩하는 단계와, 인코딩된 출력 이미지를 제공하는 단계를 더 포함한다.
일부 구현예에서, 가역 신경 네트워크는 변환 모듈 및 적어도 하나의 가역 네트워크 유닛을 포함하고, 출력 이미지 및 고주파 정보를 생성하는 단계는, 변환 모듈을 사용하여, 입력 이미지를 입력 이미지의 시멘틱을 나타내는 저주파 성분 및 시멘틱과 관련된 고주파 성분으로 분해하는 단계와, 적어도 하나의 가역 네트워크 유닛을 사용하여, 저주파 성분 및 고주파 성분에 기초해서 시멘틱과 무관한 고주파 정보 및 상기 출력 이미지를 생성하는 단계를 포함한다.
일부 구현예에서, 변환 모듈은, 웨이블릿 변환 모듈 및 가역 컨볼루션 블록 중 어느 하나를 포함한다.
일부 구현예에서, 이 방법은, 가역 신경 네트워크를 트레이닝하는 단계를 더 포함하고, 가역 신경 네트워크는 제 1 해상도의 제 1 이미지에 기초해서, 제 2 해상도의 제 2 이미지 및 사전 결정된 분포에 따른 제 1 고주파 정보를 생성하도록 트레이닝되고, 가역 신경 네트워크의 역 네트워크는 제 2 해상도의 제 3 이미지 및 사전 결정된 분포에 따른 제 2 고주파 정보에 기초해서 제 1 해상도의 제 4 이미지를 생성하도록 트레이닝된다.
일부 구현예에서, 가역 신경 네트워크를 트레이닝하는 단계는, 제 1 해상도의 트레이닝 이미지의 제 1 그룹을 획득하는 단계와, 트레이닝 이미지의 제 1 그룹의 시멘틱에 각각 대응하는, 제 2 해상도의 트레이닝 이미지의 제 2 그룹을 획득하는 단계와, 트레이닝 이미지의 제 1 그룹 및 트레이닝 이미지의 제 2 그룹에 기초해서 가역 신경 네트워크를 트레이닝하는 단계를 포함한다.
일부 구현예에서, 트레이닝 이미지의 제 2 그룹을 획득하는 단계는, 트레이닝 이미지의 제 1 그룹에 기초해서 보간(interpolation) 방법을 사용하여 트레이닝 이미지의 제 2 그룹을 생성하는 단계를 포함한다.
일부 구현예에서, 가역 신경 네트워크를 트레이닝시키는 단계는, 트레이닝 이미지의 제 1 그룹 및 트레이닝 이미지의 제 2 그룹에 기초해서 복수의 목적 함수를 결정하는 단계와, 복수의 목적 함수 중 적어도 일부를 결합해서, 가역 신경 네트워크를 트레이닝하기 위한 총 목적 함수(total objective function)를 결정하는 단계와, 총 목적 함수를 최소화해서 가역 신경 네트워크의 네트워크 파라미터를 결정하는 단계를 포함한다.
일부 구현예에서, 복수의 목적 함수를 결정하는 단계는, 트레이닝 이미지의 제 1 그룹에 기초해서 가역 신경 네트워크를 사용하여, 제 2 해상도의 트레이닝 이미지의 제 3 그룹 및 랜덤 변수의 그룹을 생성하는 단계와, 트레이닝 이미지의 제 2 그룹과 트레이닝 이미지의 제 3 그룹 사이의 차이에 기초해서, 제 1 목적 함수를 결정하는 단계를 포함한다.
일부 구현예에서, 복수의 목적 함수를 결정하는 단계는, 트레이닝 이미지의 제 1 그룹에 기초해서 가역 신경 네트워크를 사용하여, 제 2 해상도의 트레이닝 이미지의 제 3 그룹 및 랜덤 변수 그룹을 생성하는 단계와, 역 네트워크를 사용하여, 트레이닝 이미지의 제 3 그룹 및 사전 결정된 분포에 따른 고주파 정보에 기초해서, 제 1 해상도의 트레이닝 이미지의 제 4 그룹을 생성하는 단계와, 트레이닝 이미지의 제 1 그룹과 트레이닝 이미지의 제 4 그룹 사이의 차이에 기초해서, 제 2 목적 함수를 결정하는 단계를 포함한다.
일부 구현예에서, 복수의 목적 함수를 결정하는 단계는, 트레이닝 이미지의 제 1 그룹의 제 1 데이터 분포를 결정하는 단계와, 트레이닝 이미지의 제 4 그룹의 제 2 데이터 분포를 결정하는 단계와, 제 1 데이터 분포와 제 2 데이터 분포의 차이에 기초해서, 제 3 목적 함수를 결정하는 단계를 포함한다.
일부 구현예에서, 복수의 목적 함수를 결정하는 단계는, 랜덤 변수 그룹의 제 3 데이터 분포를 결정하는 단계와, 제 3 데이터 분포와 사전 결정된 분포의 차이에 기초해서, 제 4 목적 함수를 결정하는 단계를 포함한다.
제 2 측면에서, 본 명세서에 설명된 청구 대상은 컴퓨터-구현 방법을 제공한다. 이 방법은, 제 2 해상도의 입력 이미지를 획득하는 단계와, 입력 이미지 및 사전 결정된 분포에 따른 고주파 정보에 기초해서, 트레이닝된 가역 신경 네트워크를 사용하여, 제 1 해상도의 출력 이미지를 생성하는 단계를 포함하고, 제 1 해상도는 제 2 해상도를 초과하고, 입력 이미지와 출력 이미지는 동일한 시멘틱을 갖는다.
일부 구현예에서, 입력 이미지를 획득하는 단계는 인코딩된 입력 이미지를 획득하는 단계와, 인코딩된 입력 이미지를 디코딩하는 단계를 포함한다.
일부 구현예에서, 가역 신경 네트워크는 변환 모듈 및 적어도 하나의 가역 네트워크 유닛을 포함하고, 출력 이미지를 생성하는 단계는, 적어도 하나의 가역 네트워크 유닛을 사용하여, 입력 이미지 및 고주파 정보에 기초하여, 결합될 저주파 성분 및 고주파 성분을 생성하는 단계 - 저주파 성분은 입력 이미지의 시멘틱을 나타내고 고주파 성분은 시멘틱과 관련됨 - 와, 변환 모듈을 사용하여, 저주파 성분 및 고주파 성분을 출력 이미지로 결합하는 단계를 포함한다.
일부 구현예에서, 변환 모듈은 웨이블릿 변환 모듈과 가역 컨볼루션 블록 중 임의의 하나를 포함한다.
제 3 측면에서, 본 명세서에 기술된 청구 대상은 전자 디바이스를 제공한다. 전자 디바이스는 처리 유닛과, 처리 유닛에 연결되며 명령어가 저장된 메모리를 포함하고, 명령어는 처리 유닛에 의해 실행될 때, 전자 디바이스로 하여금 동작을 수행하게 하고, 동작은, 제 1 해상도의 입력 이미지를 획득하는 것과, 입력 이미지에 기초하여 트레이닝된 가역 신경 네트워크를 사용해서 제 2 해상도의 출력 이미지 및 사전 결정된 분포에 따른 고주파 정보를 생성하는 것을 포함하고, 제 1 해상도는 제 2 해상도를 초과하고, 입력 이미지와 출력 이미지는 동일한 시멘틱을 갖는다.
일부 구현예에서, 동작은, 고주파 정보를 저장하지 않고 출력 이미지를 저장하는 것을 더 포함한다.
일부 구현예에서, 동작은, 출력 이미지를 인코딩하는 것과, 인코딩된 출력 이미지를 제공하는 것을 더 포함한다.
일부 구현예에서, 가역 신경 네트워크는 변환 모듈 및 적어도 하나의 가역 네트워크 유닛을 포함하고, 출력 이미지 및 고주파 정보를 생성하는 것은, 변환 모듈을 사용하여, 입력 이미지를 입력 이미지의 시멘틱을 나타내는 저주파 성분 및 시멘틱과 관련된 고주파 성분으로 분해하는 것과, 적어도 하나의 가역 네트워크 유닛을 사용하여, 저주파 성분 및 고주파 성분에 기초해서 시멘틱과 무관한 고주파 정보 및 출력 이미지를 생성하는 것을 포함한다.
일부 구현예에서, 변환 모듈은, 웨이블릿 변환 모듈 및 가역 컨볼루션 블록 중 어느 하나를 포함한다.
일부 구현예에서, 이 동작은, 가역 신경 네트워크를 트레이닝하는 것을 더 포함하고, 가역 신경 네트워크는 제 1 해상도의 제 1 이미지에 기초해서, 제 2 해상도의 제 2 이미지 및 사전 결정된 분포에 따른 제 1 고주파 정보를 생성하도록 트레이닝되고, 가역 신경 네트워크의 역 네트워크는 제 2 해상도의 제 3 이미지 및 사전 결정된 분포에 따른 제 2 고주파 정보에 기초해서 제 1 해상도의 제 4 이미지를 생성하도록 트레이닝된다.
일부 구현예에서, 가역 신경 네트워크를 트레이닝하는 것은, 제 1 해상도의 트레이닝 이미지의 제 1 그룹을 획득하는 것과, 트레이닝 이미지의 제 1 그룹의 시멘틱에 각각 대응하는, 제 2 해상도의 트레이닝 이미지의 제 2 그룹을 획득하는 것과, 트레이닝 이미지의 제 1 그룹 및 트레이닝 이미지의 제 2 그룹에 기초해서 가역 신경 네트워크를 트레이닝하는 것을 포함한다.
일부 구현예에서, 트레이닝 이미지의 제 2 그룹을 획득하는 것은, 트레이닝 이미지의 제 1 그룹에 기초해서 보간 방법을 사용하여 트레이닝 이미지의 제 2 그룹을 생성하는 것을 포함한다.
일부 구현예에서, 가역 신경 네트워크를 트레이닝시키는 것은, 트레이닝 이미지의 제 1 그룹 및 트레이닝 이미지의 제 2 그룹에 기초해서 복수의 목적 함수를 결정하는 것과, 복수의 목적 함수 중 적어도 일부를 결합해서, 가역 신경 네트워크를 트레이닝하기 위한 총 목적 함수를 결정하는 것과, 총 목적 함수를 최소화해서 가역 신경 네트워크의 네트워크 파라미터를 결정하는 것을 포함한다.
일부 구현예에서, 복수의 목적 함수를 결정하는 것은, 트레이닝 이미지의 제 1 그룹에 기초해서 가역 신경 네트워크를 사용하여, 제 2 해상도의 트레이닝 이미지의 제 3 그룹 및 랜덤 변수의 그룹을 생성하는 것과, 트레이닝 이미지의 제 2 그룹과 트레이닝 이미지의 제 3 그룹 사이의 차이에 기초해서, 제 1 목적 함수를 결정하는 것을 포함한다.
일부 구현예에서, 복수의 목적 함수를 결정하는 것은, 트레이닝 이미지의 제 1 그룹에 기초해서 가역 신경 네트워크를 사용하여, 제 2 해상도의 트레이닝 이미지의 제 3 그룹 및 랜덤 변수 그룹을 생성하는 것과, 역 네트워크를 사용하여, 트레이닝 이미지의 제 3 그룹 및 사전 결정된 분포에 따른 고주파 정보에 기초해서, 제 1 해상도의 트레이닝 이미지의 제 4 그룹을 생성하는 것과, 트레이닝 이미지의 제 1 그룹과 트레이닝 이미지의 제 4 그룹 사이의 차이에 기초해서, 제 2 목적 함수를 결정하는 것을 포함한다.
일부 구현예에서, 복수의 목적 함수를 결정하는 것은, 트레이닝 이미지의 제 1 그룹의 제 1 데이터 분포를 결정하는 것과, 트레이닝 이미지의 제 4 그룹의 제 2 데이터 분포를 결정하는 것과, 제 1 데이터 분포와 제 2 데이터 분포의 차이에 기초해서, 제 3 목적 함수를 결정하는 것을 포함한다.
일부 구현예에서, 복수의 목적 함수를 결정하는 것은, 랜덤 변수 그룹의 제 3 데이터 분포를 결정하는 것과, 제 3 데이터 분포와 사전 결정된 분포의 차이에 기초해서, 제 4 목적 함수를 결정하는 것을 포함한다.
제 4 측면에서, 본 명세서에 설명된 청구 대상은 전자 디바이스를 제공한다. 전자 디바이스는 처리 유닛과, 처리 유닛에 연결되며 명령어가 저장된 메모리를 포함하고, 명령어는 처리 유닛에 의해 실행될 때, 전자 디바이스로 하여금 동작을 수행하게 하고, 동작은, 제 2 해상도의 입력 이미지를 획득하는 것과, 입력 이미지 및 사전 결정된 분포에 따른 고주파 정보에 기초해서, 트레이닝된 가역 신경 네트워크를 사용하여, 제 1 해상도의 출력 이미지를 생성하는 것을 포함하고, 제 1 해상도는 제 2 해상도를 초과하고, 입력 이미지와 출력 이미지는 동일한 시멘틱을 갖는다.
일부 구현예에서, 입력 이미지를 획득하는 것은 인코딩된 입력 이미지를 획득하는 것과, 인코딩된 입력 이미지를 디코딩하는 것을 포함한다.
일부 구현예에서, 가역 신경 네트워크는 변환 모듈 및 적어도 하나의 가역 네트워크 유닛을 포함하고, 출력 이미지를 생성하는 것은, 적어도 하나의 가역 네트워크 유닛을 사용하여, 입력 이미지 및 고주파 정보에 기초하여, 결합될 저주파 성분 및 고주파 성분을 생성하는 것 - 저주파 성분은 입력 이미지의 시멘틱을 나타내고 고주파 성분은 시멘틱과 관련됨 - 과, 변환 모듈을 사용하여, 저주파 성분 및 고주파 성분을 출력 이미지로 결합하는 것을 포함한다.
일부 구현예에서, 변환 모듈은 웨이블릿 변환 모듈과 가역 컨볼루션 블록 중 임의의 하나를 포함한다.
제 5 측면에서, 본 명세서에서 설명된 청구 대상은 비일시적 컴퓨터 저장 매체에 유형적으로 저장되고 머신-실행 가능 명령을 포함하는 컴퓨터 프로그램 제품을 제공하며, 머신-실행 가능 명령은 디바이스에 의해 실행될 때 디바이스로 하여금 제 1 측면 또는 제 2 측면에 따른 방법을 수행하게 한다.
추가 측면에서, 본 명세서에서 설명된 청구 대상은 머신-실행 가능 명령이 저장된 컴퓨터 판독 가능 매체를 제공하고, 머신-실행 가능 명령은 디바이스에 의해 실행될 때 디바이스로 하여금 제 1 측면 또는 제 2 측면에 따른 방법을 수행하게 한다.
본 명세서에서 설명된 기능은 하나 이상의 하드웨어 논리 구성요소에 의해 적어도 부분적으로 수행될 수 있다. 예를 들어, 한정없이, 사용될 수 있는 예시적인 타입의 하드웨어 로직 컴포넌트는 필드-프로그래머블 게이트 어레이(FPGA), 어플리케이션-특정 집적 회로(ASIC), 어플리케이션-특정 표준 제품(ASSP), 시스템-온-칩 시스템(SOC), 컴플렉스 프로그래머블 로직 디바이스(CPLD) 등을 포함하지만, 이것으로 한정되는 것은 아니다.
본 명세서에 개시된 본원의 방법을 수행하기 위한 프로그램 코드는 하나 이상의 프로그래밍 언어의 임의의 조합으로 기록될 수 있다. 이러한 프로그램 코드는 범용 컴퓨터, 특수 목적 컴퓨터 또는 다른 프로그램 가능한 데이터 프로세싱 장치의 프로세서 또는 제어기에 제공되어, 프로세서 또는 제어기에 의해 실행될 때, 프로그램 코드는 흐름도 및/또는 블록 다이어그램에서의 특정된 기능/동작이 구현되게 한다. 프로그램 코드는 완전히 머신에서, 부분적으로 머신에서 단독 소프트웨어 패키지로서, 부분적으로는 머신에서, 부분적으로는 원격 머신에서, 또는 완전히 원격 머신 또는 서버에서 실행될 수 있다.
본 개시의 설명에서, 머신 판독 가능 매체는 명령어 실행 시스템, 장치, 또는 디바이스에 의해 또는 이들과 결합해서 사용하기 위한 프로그램을 포함 또는 저장할 수 있는 임의의 유형 매체가 될 수 있다. 머신 판독 가능 매체는 머신 판독 가능 신호 매체 또는 머신 판독 가능 저장 매체가 될 수 있다. 머신 판독 가능 매체는 전자기기, 자기, 광학, 전자기, 자외선, 또는 반도체 시스템, 장치, 또는 디바이스, 또는 이들의 임의의 적합한 조합을 포함할 수 있지만 이것으로 한정되는 것은 아니다. 머신 판독 가능 저장 매체의 더 특정한 실시예는, 하나 이상의 배선들 구비한 전기 접속, 휴대형 컴퓨터 디스켓, 하드 디스크, RAM(random access memory), ROM(read-only memory), EPROM(erasable programmable read-only memory) 또는 플래시 메모리, 광섬유, 휴대용 CD-ROM(compact disc read-only memory), 광학 저장 디바이스, 자기 저장 디바이스, 또는 이들의 임의의 적합한 조합을 포함할 수 있다.
또한, 동작들이 특정한 순서로 도시되어 있지만, 이 동작은 원하는 결과를 달성하기 위해, 도시된 특정 순서, 또는 순차적 순서로 수행되어야 한다거나 혹은 모든 도시된 동작이 수행되어야 하는 것은 아니라는 것을 이해할 것이다. 환경에 따라서는, 멀티태스킹 및 병렬 프로세싱이 유리할 수도 있다. 마찬가지로, 위의 설명에 몇가지 특유한 구현 세부사항이 포함되어 있지만, 이들은 본 명세서에 개시된 청구 대상에 대한 한정으로 해석되어서는 안된다. 개별 실시형태의 콘텍스트에서 설명된 소정의 피처들은, 단일 실시형태에서의 조합으로 구현될 수도 있다. 오히려, 단일 실시형태의 콘텍스트에 개시된 다양한 피처들은 각각의 다수의 실시형태들 또는 임의의 적합한 하부 조합으로 구현될 수도 있다.
구조적 피쳐(feature) 또는 방법론적 동작에 대하여 특정한 랭귀지로 청구 대상을 설명했지만, 특허 청구 범위에 규정된 청구 대상은 특정한 피쳐 또는 동작으로 한정되는 것은 아니라는 것을 이해할 것이다. 이 특정한 피쳐 및 동작은 특허청구범위를 구현하는 예시적 형태로서 개시된다.

Claims (15)

  1. 컴퓨터-구현 방법으로서,
    제 1 해상도의 입력 이미지를 획득하는 단계와,
    상기 입력 이미지에 기초하고 트레이닝된 가역 신경 네트워크(invertible neural network)을 사용해서 제 2 해상도의 출력 이미지 및 사전 결정된 분포에 따른 고주파 정보를 생성하는 단계
    를 포함하고,
    상기 제 1 해상도는 상기 제 2 해상도를 초과하고,
    상기 입력 이미지와 상기 출력 이미지는 동일한 시멘틱(semantics)을 갖는,
    컴퓨터-구현 방법.
  2. 제 1 항에 있어서,
    상기 가역 신경 네트워크는 변환 모듈 및 적어도 하나의 가역 네트워크 유닛(invertible network unit)을 포함하고,
    상기 출력 이미지 및 상기 고주파 정보를 생성하는 단계는,
    상기 변환 모듈을 사용하여, 상기 입력 이미지를 상기 입력 이미지의 시멘틱을 나타내는 저주파 성분 및 상기 시멘틱과 관련된 고주파 성분으로 분해하는 단계와,
    상기 적어도 하나의 가역 네트워크 유닛을 사용하여, 상기 저주파 성분 및 상기 고주파 성분에 기초해서 상기 시멘틱과 무관한 상기 고주파 정보 및 상기 출력 이미지를 생성하는 단계
    를 포함하는,
    컴퓨터-구현 방법.
  3. 제 2 항에 있어서,
    상기 변환 모듈은, 웨이블릿 변환(wavelet transformation) 모듈과 가역 컨볼루션(invertible convolution) 블록 중 임의의 하나를 포함하는,
    컴퓨터-구현 방법.
  4. 제 1 항에 있어서,
    상기 가역 신경 네트워크를 트레이닝하는 단계를 더 포함하고,
    상기 가역 신경 네트워크는, 상기 제 1 해상도의 제 1 이미지에 기초해서, 제 2 해상도의 제 2 이미지 및 상기 사전 결정된 분포에 따른 제 1 고주파 정보를 생성하도록 트레이닝되고,
    상기 가역 신경 네트워크의 역 네트워크는 상기 제 2 해상도의 제 3 이미지 및 상기 사전 결정된 분포에 따른 제 2 고주파 정보에 기초해서 상기 제 1 해상도의 제 4 이미지를 생성하도록 트레이닝되는,
    컴퓨터-구현 방법.
  5. 제 4 항에 있어서,
    상기 가역 신경 네트워크를 트레이닝하는 단계는,
    상기 제 1 해상도의 트레이닝 이미지의 제 1 그룹을 획득하는 단계와,
    상기 트레이닝 이미지의 제 1 그룹의 시멘틱에 각각 대응하는, 상기 제 2 해상도의 트레이닝 이미지의 제 2 그룹을 획득하는 단계와,
    상기 트레이닝 이미지의 제 1 그룹 및 상기 트레이닝 이미지의 제 2 그룹에 기초해서 상기 가역 신경 네트워크를 트레이닝하는 단계
    를 포함하는,
    컴퓨터-구현 방법.
  6. 제 5 항에 있어서,
    상기 트레이닝 이미지의 제 2 그룹을 획득하는 단계는,
    상기 트레이닝 이미지의 제 1 그룹에 기초해서 보간(interpolation) 방법을 사용하여 상기 트레이닝 이미지의 제 2 그룹을 생성하는 단계
    를 포함하는,
    컴퓨터-구현 방법.
  7. 제 5 항에 있어서,
    상기 가역 신경 네트워크를 트레이닝시키는 단계는,
    상기 트레이닝 이미지의 제 1 그룹 및 상기 트레이닝 이미지의 제 2 그룹에 기초해서 복수의 목적 함수를 결정하는 단계와,
    상기 복수의 목적 함수 중 적어도 일부를 결합해서, 상기 가역 신경 네트워크를 트레이닝하기 위한 총 목적 함수(total objective function)를 결정하는 단계와,
    상기 총 목적 함수를 최소화해서 상기 가역 신경 네트워크의 네트워크 파라미터를 결정하는 단계
    를 포함하는,
    컴퓨터-구현 방법.
  8. 제 7 항에 있어서,
    상기 복수의 목적 함수를 결정하는 단계는,
    상기 트레이닝 이미지의 제 1 그룹에 기초해서 상기 가역 신경 네트워크를 사용하여, 상기 제 2 해상도의 트레이닝 이미지의 제 3 그룹 및 랜덤 변수의 그룹을 생성하는 단계와,
    상기 트레이닝 이미지의 제 2 그룹과 상기 트레이닝 이미지의 제 3 그룹 사이의 차이에 기초해서, 제 1 목적 함수를 결정하는 단계
    를 포함하는,
    컴퓨터-구현 방법.
  9. 제 7 항에 있어서,
    상기 복수의 목적 함수를 결정하는 단계는,
    상기 트레이닝 이미지의 제 1 그룹에 기초해서 상기 가역 신경 네트워크를 사용하여, 상기 제 2 해상도의 트레이닝 이미지의 제 3 그룹 및 랜덤 변수 그룹을 생성하는 단계와,
    상기 역 네트워크를 사용하여, 상기 트레이닝 이미지의 제 3 그룹 및 상기 사전 결정된 분포에 따른 고주파 정보에 기초해서, 상기 제 1 해상도의 트레이닝 이미지의 제 4 그룹을 생성하는 단계와,
    상기 트레이닝 이미지의 제 1 그룹과 상기 트레이닝 이미지의 제 4 그룹 사이의 차이에 기초해서, 제 2 목적 함수를 결정하는 단계
    를 포함하는,
    컴퓨터-구현 방법.
  10. 제 9 항에 있어서,
    상기 복수의 목적 함수를 결정하는 단계는,
    상기 트레이닝 이미지의 제 1 그룹의 제 1 데이터 분포를 결정하는 단계와,
    상기 트레이닝 이미지의 제 4 그룹의 제 2 데이터 분포를 결정하는 단계와,
    상기 제 1 데이터 분포와 상기 제 2 데이터 분포의 차이에 기초해서, 제 3 목적 함수를 결정하는 단계
    를 포함하는,
    컴퓨터-구현 방법.
  11. 제 9 항에 있어서,
    상기 복수의 목적 함수를 결정하는 단계는,
    상기 랜덤 변수 그룹의 제 3 데이터 분포를 결정하는 단계와,
    상기 제 3 데이터 분포와 상기 사전 결정된 분포 사이의 차이에 기초해서, 제 4 목적 함수를 결정하는 단계
    를 포함하는,
    컴퓨터-구현 방법.
  12. 컴퓨터-구현 방법으로서,
    제 2 해상도의 입력 이미지를 획득하는 단계와,
    상기 입력 이미지 및 사전 결정된 분포에 따른 고주파 정보에 기초해서, 트레이닝된 가역 신경 네트워크를 사용하여, 제 1 해상도의 출력 이미지를 생성하는 단계
    를 포함하고,
    상기 제 1 해상도는 상기 제 2 해상도를 초과하고,
    상기 입력 이미지와 상기 출력 이미지는 동일한 시멘틱을 갖는,
    컴퓨터-구현 방법.
  13. 제 12 항에 있어서,
    상기 가역 신경 네트워크는 변환 모듈 및 적어도 하나의 가역 네트워크 유닛을 포함하고,
    상기 출력 이미지를 생성하는 단계는,
    상기 적어도 하나의 가역 네트워크 유닛을 사용하여, 상기 입력 이미지 및 상기 고주파 정보에 기초하여, 결합될 저주파 성분 및 고주파 성분을 생성하는 단계 - 상기 저주파 성분은 상기 입력 이미지의 시멘틱을 나타내고 상기 고주파 성분은 상기 시멘틱과 관련됨 - 와,
    상기 변환 모듈을 사용하여, 상기 저주파 성분 및 상기 고주파 성분을 출력 이미지로 결합하는 단계
    를 포함하는,
    컴퓨터-구현 방법.
  14. 제 13 항에 있어서,
    상기 변환 모듈은 웨이블릿 변환 모듈과 가역 컨볼루션 블록 중 임의의 하나를 포함하는,
    컴퓨터-구현 방법.
  15. 처리 유닛과, 상기 처리 유닛에 연결되며 명령어가 저장된 메모리를 포함하는 전자 디바이스로서,
    상기 명령어는 상기 처리 유닛에 의해 실행될 때, 상기 전자 디바이스로 하여금 동작을 수행하게 하고,
    상기 동작은,
    제 1 해상도의 입력 이미지를 획득하는 것과,
    상기 입력 이미지에 기초하여 트레이닝된 가역 신경 네트워크를 사용해서 제 2 해상도의 출력 이미지 및 사전 결정된 분포에 따른 고주파 정보를 생성하는 것
    을 포함하고,
    상기 제 1 해상도는 상기 제 2 해상도를 초과하고,
    상기 입력 이미지와 상기 출력 이미지는 동일한 시멘틱을 갖는,
    전자 디바이스.
KR1020227033277A 2020-03-20 2021-02-21 이미지 리스케일링 KR20220157402A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN202010203650.1 2020-03-20
CN202010203650.1A CN113496465A (zh) 2020-03-20 2020-03-20 图像缩放
PCT/US2021/018950 WO2021188254A1 (en) 2020-03-20 2021-02-21 Image rescaling

Publications (1)

Publication Number Publication Date
KR20220157402A true KR20220157402A (ko) 2022-11-29

Family

ID=74873807

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020227033277A KR20220157402A (ko) 2020-03-20 2021-02-21 이미지 리스케일링

Country Status (6)

Country Link
US (1) US20230093734A1 (ko)
EP (1) EP4121936A1 (ko)
JP (1) JP2023517486A (ko)
KR (1) KR20220157402A (ko)
CN (1) CN113496465A (ko)
WO (1) WO2021188254A1 (ko)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP4144087A1 (en) 2020-04-29 2023-03-08 Deep Render Ltd Image compression and decoding, video compression and decoding: methods and systems
CN113920013B (zh) * 2021-10-14 2023-06-16 中国科学院深圳先进技术研究院 一种基于超分辨率的小图像多目标检测方法
CN114742738A (zh) * 2022-04-11 2022-07-12 北京字节跳动网络技术有限公司 图像处理方法、装置、存储介质及电子设备

Also Published As

Publication number Publication date
CN113496465A (zh) 2021-10-12
EP4121936A1 (en) 2023-01-25
US20230093734A1 (en) 2023-03-23
JP2023517486A (ja) 2023-04-26
WO2021188254A1 (en) 2021-09-23

Similar Documents

Publication Publication Date Title
US20230206396A1 (en) Image super-resolution reconstructing
KR20220157402A (ko) 이미지 리스케일링
Zeng et al. Coupled deep autoencoder for single image super-resolution
CN109886871B (zh) 基于通道注意力机制和多层特征融合的图像超分辨率方法
CN113014927B (zh) 图像压缩方法和图像压缩装置
Liu et al. Data-driven soft decoding of compressed images in dual transform-pixel domain
US11375198B2 (en) Processing signal data using an upsampling adjuster
CN107231566A (zh) 一种视频转码方法、装置和系统
Zhang et al. Collaborative representation cascade for single-image super-resolution
US20220286696A1 (en) Image compression method and apparatus
Zhu et al. Generative adversarial image super‐resolution through deep dense skip connections
Zhang et al. Kernel attention network for single image super-resolution
WO2017112086A1 (en) Multi-stage image super-resolution with reference merging using personalized dictionaries
CN117237197A (zh) 基于交叉注意力机制与Swin-Transformer的图像超分辨率方法及装置
Xiao et al. Invertible rescaling network and its extensions
Rasti et al. A new low‐complexity patch‐based image super‐resolution
JP2023537823A (ja) ビデオ処理方法、装置、機器、デコーダ、システム及び記憶媒体
Mikaeli et al. Single-image super-resolution via patch-based and group-based local smoothness modeling
Xing et al. Scale-arbitrary invertible image downscaling
Zhong et al. Faithful extreme rescaling via generative prior reciprocated invertible representations
Bai et al. Survey of learning based single image super-resolution reconstruction technology
Zhou et al. Single‐frame image super‐resolution inspired by perceptual criteria
CN115294222A (zh) 图像编码方法及图像处理方法、终端及介质
Xie et al. Bidirectionally aligned sparse representation for single image super-resolution
Zhang et al. Dual-layer image compression via adaptive downsampling and spatially varying upconversion