KR20240021158A - 이미지 코덱 - Google Patents

이미지 코덱 Download PDF

Info

Publication number
KR20240021158A
KR20240021158A KR1020237040623A KR20237040623A KR20240021158A KR 20240021158 A KR20240021158 A KR 20240021158A KR 1020237040623 A KR1020237040623 A KR 1020237040623A KR 20237040623 A KR20237040623 A KR 20237040623A KR 20240021158 A KR20240021158 A KR 20240021158A
Authority
KR
South Korea
Prior art keywords
coded representation
group
degree
image
bitstream
Prior art date
Application number
KR1020237040623A
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 KR20240021158A publication Critical patent/KR20240021158A/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/196Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding being specially adapted for the computation of encoding parameters, e.g. by averaging previously computed encoding parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/192Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/20Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
    • H04N19/21Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding with binary alpha-plane coding for video objects, e.g. context-based arithmetic encoding [CAE]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Diaphragms For Electromechanical Transducers (AREA)
  • Medicines Containing Antibodies Or Antigens For Use As Internal Diagnostic Agents (AREA)

Abstract

여기에 설명된 주제의 구현에 따르면, 이미지 코덱(image codec)에 대한 솔루션이 제공된다. 인코딩 솔루션에서, 목적 이미지의 코딩된 표현이 획득되고, 디코더와 연관된 목적 함수가 코딩된 표현에 기초하여 결정된다. 또한, 일 그룹의 파라미터에 대한 일 그룹의 조정이 상기 그룹의 파라미터를 이용한 상기 목적 함수에 대한 일 그룹의 변화 정도와 임계 정도 간의 비교에 기초하여 결정되고, 조정된 코딩된 표현을 획득하기 위해 코딩된 표현에서의 상기 그룹의 파라미터가 상기 그룹의 조정에 기초하여 조정된다. 또한, 조정된 코딩된 표현에 기초하여 목적 이미지의 목적 비트스트림이 획득된다. 따라서, 보다 효율적인 이미지 인코딩이 실현될 수 있다.

Description

이미지 코덱
이미지 압축(image compression)은 신호 프로세싱 및 컴퓨터 비전 분야에서 중요하고 기본적인 주제이다. 대중적인 고품질 멀티미디어 콘텐트의 적용으로, 사람들은 이미지 압축 효율을 높여 전송 대역폭이나 저장 오버헤드를 줄이고 싶어한다.
최근 기계학습(machine learning) 기반 이미지 압축 방법에 대한 관심이 높아지고 있으며, 전통적인 압축 방법에 가까운 압축 성능을 달성하고 있다. 그러나 전통적인 코덱 솔루션과 달리, 다양한 이미지들에 효율적인 코덱을 찾기 위한 기계학습 기반 이미지 압축에 대한 보편적인 최적화 방법이 부족하다.
본 명세서에 설명된 주제의 구현에 따르면, 이미지 코덱(image codec)에 대한 솔루션이 제공된다. 인코딩(encoding) 솔루션에서, 목적 이미지(objective image)의 코딩된 표현이 획득되고, 디코더(decoder)와 연관된 목적 함수(objective function)가 코딩된 표현에 기초하여 결정된다. 또한, 일 그룹의 파라미터들에 대한 일 그룹의 조정(adjustment)들이 상기 그룹의 파라미터들을 이용한 목적 함수에 대한 일 그룹의 변화 정도(change degree)들과 임계 정도(threshold degree) 간의 비교에 기초하여 결정되고, 코딩된 표현에서의 상기 그룹의 파라미터들이 조정된 코딩된 표현을 얻기 위해 상기 그룹의 조정들에 기초하여 조정된다. 또한, 조정된 코딩된 표현에 기초하여 목적 이미지의 목적 비트스트림(objective bitstream)이 획득된다. 따라서, 보다 효율적인 이미지 인코딩이 실현될 수 있다.
이 개요는 하기의 상세한 설명에서 더 설명되는 개념들에 대한 선택을 단순화된 형태로 소개하기 위해 제공된다. 이 개요는 청구된 주제의 핵심 특징이나 필수적인 특징을 식별하기 위한 것이 아니며, 청구된 주제의 범위를 제한하는 데 사용하고자 하는 것도 아니다.
도 1은 본 명세서에 설명된 주제의 복수의 구현들을 구현할 수 있는 컴퓨팅 환경의 블록도를 예시한다.
도 2는 본 명세서에 설명된 주제의 일부 구현에 따른 이미지 인코딩 프로세스의 흐름도를 예시한다.
도 3은 본 명세서에 설명된 주제의 일부 구현에 따른 이미지 인코딩의 개략도를 예시한다.
도 4는 본 명세서에 설명된 주제의 일부 구현에 따른 엔트로피 모델(entropy model)의 개략도를 예시한다.
도 5는 본 명세서에 설명된 주제의 일부 구현에 따른 인코딩 솔루션의 성능과 다른 솔루션들 간의 비교에 대한 개략도를 예시한다.
도 6은 본 명세서에 설명된 주제의 일부 구현에 따른 이미지 디코딩 프로세스의 흐름도를 예시한다.
도 7은 본 명세서에 설명된 주제의 구현을 구현할 수 있는 예시적인 디바이스의 개략적인 블록도를 예시한다.
도면 전체에 걸쳐 동일 또는 유사한 참조부호는 동일 또는 유사한 요소를 지칭한다.
본 명세서에 설명된 주제가 이제 여러 예시적인 구현을 참조하여 논의될 것이다. 이들 구현은 본 주제의 범위에 대한 임의의 제한을 제안하기보다는 이 분야의 기술자가 본 명세서에 설명된 주제를 더 잘 이해하고 구현하도록 하기 위한 목적으로만 논의된다는 것이 이해되어야 한다.
본 명세서에 사용된 용어 "포함하다" 및 그 변형은 "포함하지만 이에 제한되지는 않는다"를 의미하는 개방형 용어로 읽어야 한다. 용어 “~에 기초하여”는 “적어도 부분적으로 ~에 기초하여”로 읽어야 한다. 용어 "하나의 구현" 및 "구현"은 "적어도 하나의 구현"으로 읽어야 한다. 용어 "또 하나의(another) 구현"은 "적어도 하나의 다른(other) 구현"으로 읽어야 한다. 용어 "제1", "제2" 등은 상이하거나 동일한 대상들을 지칭할 수 있다. 명시적 및 암시적인, 다른 정의들이 하기에 포함될 수 있다.
본 명세서에서 사용되는 용어 "신경망(neural network)"은 입력을 처리하여 대응하는 출력을 제공할 수 있으며 보통 입력 레이어(input layer), 출력 레이어(output layer) 및 입력 레이어와 출력 레이어 사이의 하나 이상의 히든 레이어(hidden layer)를 포함한다. 딥러닝(deep learning) 애플리케이션에 사용되는 신경망은 보통 망의 깊이를 확장하기 위해 복수의 히든 레이어를 포함한다. 신경망 모델의 개별 레이어들은 순차적으로 연결되어 이전 레이어의 출력이 다음 레이어에 대한 입력으로 제공되고, 여기서 입력 레이어는 신경망의 입력을 수신하고 한편 출력 레이어의 출력은 신경망의 최종 출력 역할을 한다. 신경망의 각각의 레이어는 하나 이상의 노드(node)(프로세싱 노드(processing node) 또는 뉴런(neuron)이라고도 함)를포함하며 각각의 노드는 이전 레이어로부터의 입력을 프로세싱한다. 본문에서 용어 "신경망", "모델", "망" 및 "신경망 모델"은 교체가능하게 사용될 수 있다.
위에 논의된 바와 같이, 고품질의 멀티미디어 콘텐트가 사람들의 생활 전반에 광범위하게 적용됨에 따라 사람들은 이미지 코덱의 효율을 높여 네트워크 전송 및 저장 비용을 절감하고 싶어 한다.
인공지능 기술의 발전으로, 기계학습 기반 이미지 코덱 기술에 대한 관심이 높아지고 있다. 사람들은 인코더와 디코더를 트레이닝(training)함으로써 이미지 코딩과 디코딩을 실현할 수 있다. 현재 많은 연구에서는 효율적인 이미지 압축을 달성하기 위해 망 아키텍처를 설계하는 방법에 중점을 두고 있다. 그러나 그러한 최적화에 의한 인코더들은 보통 다양한 이미지들에 대해 효율적인 압축을 수행하기 어렵고 이는 모델의 성능과 보편성에 큰 영향을 미친다.
본 명세서에 설명된 주제의 구현에 따르면, 이미지 코덱을 위한 솔루션이 제공된다. 코덱 솔루션에서, 목적 이미지의 코딩된 표현이 획득되며, 이 코딩된 표현은 목적 이미지에 대응하는 일 그룹의 파라미터들에 대한 값들을 포함할 수 있다. 예를 들어, 그러한 코딩된 표현은 목적 이미지를 프로세싱하는 트레이닝된 기계학습 기반 인코더에 의해 획득될 수 있다.
또한, 코딩된 표현에 대응하는 비트스트림을 디코딩하는 데 사용되는 디코더와 연관된 목적 함수가 코딩된 표현에 기초하여 결정될 수 있다. 예를 들어, 그러한 디코더는 기계학습 기반 코덱에서의 디코딩부(decoding part)일 수 있다.
목적 함수는 또한 코딩된 표현을 조정하는 데 사용된다. 구체적으로, 상기 그룹의 파라미터들에 대한 일 그룹의 조정들은 상기 그룹의 파라미터들을 이용한(with) 목적 함수에 대한 일 그룹의 변동 정도(variation degree)들과 임계 정도 간의 비교에 기초하여 결정될 수 있다. 그러한 변동 정도들은 파라미터 그래디언트(parameter gradient)라고도 한다. 다양한 파라미터 그래디언트들을 임계 그래디언트와 비교함으로써, 본 명세서에 설명된 주제의 구현은 적응형 파라미터 조정을 실현할 수 있다.
또한, 조정된 코딩된 표현을 획득하고 추가로 목적 이미지의 목적 비트스트림을 획득하기 위해, 상기 그룹의 파라미터들이 상기 그룹의 조정들에 기초하여 조정된다.
이로써, 본 명세서에 설명된 주제의 구현은 코딩된 표현의 직접적인 최적화를 달성하고, 추가로 다양한 이미지들에 대한 적응형 최적화를 달성하기 위해 목적 함수를 이용할 수 있다. 또한, 임계 그래디언트에 기초하여 각각의 파라미터의 조정을 결정함으로써, 본 명세서에 설명된 주제의 구현은 코딩된 표현에 대해 수행될 양자화 연산(quantization operation)의 특성을 추가로 고려할 수 있으며, 이에 의해 압축 효율을 증가시킬 수 있다. 본 명세서에 설명된 주제의 기본 원리 및 여러 예시적인 구현이 하기에 도면을 참조하여 설명될 것이다.
예시적인 환경
도 1은 본 명세서에 설명된 주제에 대한 복수의 구현들이 구현될 수 있는 환경(100)의 블록도를 도시한다. 도 1에 도시된 환경(100)은 단지 예시일 뿐이며 여기에 설명된 주제의 구현 범위와 기능성에 대한 어떠한 제한도 구성해서는 안 된다는 것을 이해해야 한다.
도 1에 도시된 바와 같이, 인코더(110)는 목적 이미지(105)를 획득하고 이를 대응하는 비트스트림(115)으로 변환할 수 있다. 일부 구현에서, 목적 이미지(105)는 현실 세계의 이미지를 캡처하기 위한 임의의 타입의 이미지 캡처 디바이스에 의해 캡처된 이미지이거나 이를 포함할 수 있다. 또는 목적 이미지(105)는 임의의 타입의 이미지 생성 디바이스에 의해 생성된 이미지일 수 있다.
이미지 코딩 분야에서 용어 "픽처(picture)", "프레임(frame)" 및 "이미지(image)"는 동의어로 사용될 수 있다는 것을 이해해야 한다. 이미지 코딩(또는 보통 코딩이라고 함)은 두 부분, 즉 이미지 인코딩과 이미지 디코딩을 포함한다. 이미지 인코딩은 소스(source) 측에서 수행되며, 보통 비디오 이미지를 표현하기 위한 데이터 양을 줄이기 위해(보다 효율적인 저장 및/또는 전송) 원시(raw) 비디오 이미지를 프로세싱하는 것(예를 들어, 압축하는 것)을 포함한다. 이미지 디코딩은 목적지(destination) 측에서 수행되며, 보통 이미지를 재구성(rebuild)하기 위해 인코더에 대한 리버스 프로세싱(reverse processing)을 포함한다. 인코딩부와 디코딩부는 집합적으로 코덱(codec)으로 지칭된다.
도 1에 도시된 바와 같이, 디코딩 디바이스(120)는 비트스트림(115)을 수신하고 디코딩에 의해 디코딩된 이미지(125)를 획득할 수 있다. 일부 구현에서, 인코딩 디바이스(110)와 디코딩 디바이스(120)는 상이한 디바이스들일 수 있고, 비트스트림(115)은 예를 들어 통신 전송을 통해 인코딩 디바이스(110)로부터 디코딩 디바이스(120)로 전송될 수 있다. 그러한 비트스트림(115)은 메시지와 같은 적절한 포맷으로 캡슐화될 수 있고/있거나, 통신 링크 또는 통신 네트워크를 통해 전송되도록 임의의 타입의 전송 코딩 또는 프로세싱을 사용할 수 있다.
도 1은 인코딩 디바이스(110)와 디코딩 디바이스(120)를 독립적인 디바이스들로 도시하지만, 디바이스 실시예들은 또한 인코딩 디바이스(110)와 디코딩 디바이스(120) 또는 해당 기능들을 동시에 포함할 수도 있다. 이러한 실시예에서, 인코딩 디바이스(110) 또는 해당 기능, 및 디코딩 디바이스(120) 또는 해당 기능은 동일한 하드웨어 및/또는 소프트웨어, 또는 상이한 하드웨어 및/또는 소프트웨어, 또는 이들의 임의의 조합에 의해 구현될 수 있다.
이미지 인코딩 및 이미지 디코딩에 대한 프로세스들이 하기에서 상세히 설명될 것이다.
인코딩 프로세스
도 2는 본 명세서에 설명된 주제의 일부 구현에 따른 이미지 인코딩 프로세스(200)의 흐름도를 도시한다. 프로세스(200)는 예를 들어 도 1의 인코딩 디바이스(110)에 의해 구현될 수 있다.
도 2에 도시된 바와 같이, 202에서, 인코딩 디바이스(110)는 목적 이미지(105)의 코딩된 표현을 획득하며, 코딩된 표현은 목적 이미지(105)에 대응하는 일 그룹의 파라미터들에 대한 값들을 포함한다.
일부 구현에서, 코딩된 표현은 적절한 인코딩 기술에 의해 획득된 초기 코딩된 표현일 수 있다. 예를 들어, 코딩된 표현은 임의의 적절하게 트레이닝된 기계학습 기반 인코더를 사용하여 획득된 잠재 표현(latent representation)일 수 있다. 다른 예로서, 코딩된 표현은 또한 다른 방식으로 생성될 수도 있으며, 예를 들어 그러한 코딩된 표현은 또한 일 그룹의 무작위 표현(random representation)들일 수도 있다.
도 3은 본 명세서에 설명된 주제의 일부 구현에 따른 이미지 인코딩의 개략도(300)를 도시한다. 도시된 바와 같이, 목적 이미지(105)(x로 표시됨)는 기계학습 기반 인코더(302)에 제공될 수 있으며, 이는 목적 이미지(105)를 제1 코딩된 표현 y로 변환할 수 있다.
예로서, 제1 코딩된 표현 y는 다음과 같이 표시될 수 있다:
(1)
여기서 ga(·)는 인코더(302)의 분석 변환을 나타내고, φg는 인코더(302)의 파라미터를 표시한다.
일부 구현에서, 제1 코딩된 표현 y는 목적 이미지(105)에서 상이한 영역들에 대응하는 데이터를 포함할 수 있다. 예를 들어, 목적 이미지(105)는 대응하는 그룹의 파라미터들에 대한 값들을 획득하기 위해 인코더(302)에 입력될 수 있다. 예를 들어, 목적 이미지(105)는 1024*768 픽셀 크기일 수 있고, 인코더(302)는 목적 이미지(105)에 기초하여 64*48*128 파라미터들의 값들을 생성할 수 있으며, 여기서 128은 데이터의 차원(dimensions)을 나타낸다. 이와 같이, 128-차원 데이터들의 각각의 그룹은 목적 이미지(105)에서 16*16 픽셀 크기의 이미지 블록에 대응할 수 있다. 위의 파라미터들의 수는 단지 예시일 뿐, 본 명세서에 설명된 주제를 제한하고자 하는 것이 아님을 이해해야 한다.
도 3에 도시된 바와 같이, 일부 구현에서, 제1 코딩된 표현 y는 하이퍼 인코더(hyper encoder)(314)에 추가로 제공될 수 있고, 그런 다음 제2 코딩된 표현 z가 획득될 수 있다. 제2 코딩된 표현 z는 제1 코딩된 표현 y의 분포 특성을 나타내기 위해 사용될 수 있다. 그러한 분포 특성은 제1 코딩된 표현 y의 상이한 요소들 사이의 공간적 의존성을 나타내는 데 사용될 수 있다.
예로서, 제2 코딩된 표현 z는 다음과 같이 표시될 수 있다:
(2)
여기서 ha(·)는 하이퍼 인코더(314)의 변환을 표시하고, φh 는 하이퍼 인코더(314)의 파라미터를 표시한다.
하기에 설명될 하이퍼 인코더(314) 및 하이퍼 디코더(326)의 구체적인 구현에 대해서는, "Variational Image Compression with a Scale Hyperprior"(Johannes Balle, D. Minnen, S. Singh, S. J. Hwang, N. Johnston, "Variational Image Compression with a Scale Hyperprior", Inti. Conf. on Learning Representations(ICLR), pp. 1-23, 2018)을 참조하고, 상세한 내용은 본 명세서에서 제공되지 않는다.
204에서, 인코딩 디바이스(110)는 코딩된 표현에 기초하여 코딩된 표현에 대응하는 비트스트림을 디코딩하는 데 사용되는 디코더와 연관된 목적 함수를 결정한다. 일부 구현에서, 디코더는 인코더에 대응하는 디코딩 프로세스를 실현하기 위해 위에서 논의된 기계학습 기반 인코더에 상응할 수 있다.
도 3을 예로 든다. 인코딩 프로세스에서, 제1 코딩된 표현 y는 양자화 유닛(304)에 제공되어 양자화를 수행하고 양자화 결과 yq를 획득하고, 산술 인코더(306)를 통해 비트스트림(308)으로 인코딩된다. 이에 따라, 디코딩 프로세스에서는, 비트스트림(308)이 산술 디코더(310)를 통해 로 디코딩되고, 역 양자화 유닛(de-quantization unit)(312)을 통해 로 변환될 수 있다. 디코더(330)는 역 양자화 결과 에 기초하여 디코딩된 이미지(332)( 로 표시됨)를 획득함으로써, 디코딩을 실현한다.
일부 구현에서, 코딩된 표현이 제2 코딩된 표현 z를 더 포함하는 경우, 인코딩 프로세스에서는 유사하게 제2 코딩된 표현 z가 양자화 유닛(316) 및 산술 인코더(318)를 통해 비트스트림(320)으로 변환될 수 있다. 이에 따라, 디코딩 프로세스에서, 비트스트림(320)은 산술 디코더(322) 및 역 양자화 프로세스(324)를 통해 역 양자화 결과 를 획득하고, 그런 다음 하이퍼 디코더(326)에 의해 프로세싱된 후 엔트로피 모델(entropy model)(328)에 입력되어, 산술 인코더(306) 및 산술 디코더(310)에 대한 엔트로피 파라미터들을 결정하는 데 사용될 수 있다. 일부 예에서, 그러한 엔트로피 파라미터들은 평균값(mean value)을 나타내기 위한 파라미터 및 분산(variance)을 나타내기 위한 파라미터를 포함할 수 있다.
일부 구현에서, 디코더와 연관된 목적 함수(손실 함수(loss function)라고도 지칭됨)는 코딩된 표현에 기초하여 생성된 비트스트림의 예상 크기, 및 비트스트림에 기초하여 생성된 디코딩된 이미지와 목적 이미지 사이의 차분(difference) 중 적어도 하나에 기초하여 결정될 수 있다. 구체적으로, 도 3의 예에서, 디코더와 연관된 목적 함수는 다음과 같이 결정될 수 있다:
(3)
여기서 는 제1 코딩된 표현 y에 대응하는 인코딩 레이트(encoding rate) - 즉 비트스트림(308)의 크기와 연관됨 - 를 나타내는 데 사용되고; 는 제2 코딩된 표현 z의 인코딩 레이트 - 즉, 비트스트림(320)의 크기와 연관됨 - 를 나타내는 데 사용되고; 는 목적 이미지(305)와 비트스트림(308)과 비트스트림(320)을 통해 생성된 디코딩된 이미지(332) 사이의 차분을 표시한다. 는 각각 y와 z 인코딩에 필요한 비트 수들의 추정치(estimation)들을 표시하고; 는 가중치 계수(weight coefficient)를 나타낸다.
목적 함수 (3)은 이미지 왜곡이 감소되는 인코딩 압축률(compression ratio)을 향상시키기 위한 것임을 이해해야 한다. 또한, 값을 조정함으로써 이미지 왜곡을 감소시키는 것과 인코딩 압축률을 향상시키는 것 사이에서 균형을 맞출 수 있다.
계속 도 2를 참조하면, 206에서, 인코딩 디바이스(110)는 상기 그룹의 파라미터들을 이용한 목적 함수에 대한 일 그룹의 변동 정도들과 임계 정도 간의 비교에 기초하여 상기 그룹의 파라미터들에 대한 일 그룹의 조정들을 결정한다.
일부 구현에서, 인코딩 디바이스(110)는 그래디언트 역전파(gradient back propagation)에 의해 상기 그룹의 파라미터들에서 각각의 파라미터에 관련된 목적 함수의 그래디언트 값, 즉 각각의 파라미터를 이용한 목적 함수의 변동 정도를 계산할 수 있다.
순방향 패스(forward pass)에서, 양자화 유닛(304)에 의해 수행된 양자화는 식 (4)에 나타낸 라운딩(rounding)을 통해 구현된다:
(4)
여기서는 라운딩 연산을 표시한다. 그래디언트 역전파를 구현하기 위해, 그래디언트 역방향 패스(backward pass)에서, 식 (4)는 식 (5)에 나타낸 바와 같은 그래디언트를 계산하기 위한 항등식(identity)으로 대체된다.
(5)
제1 코딩된 표현 y를 예로 든다. 그래디언트 역전파에 기초하여, 제1 코딩된 표현 y에서 각각의 파라미터에 관련된 목적 함수의 그래디언트가 획득될 수 있다.
양자화 프로세스는 식 (4)에 기술된 바와 같은 라운딩을 사용하기 때문에, 한편으로는, 작은 스텝 크기를 사용하여 특정 파라미터를 조정하면 인코딩 결과에는 영향을 미치지 않을 수 있다. 예를 들어, 특정 파라미터의 값을 1.11에서 1.12로 조정하면, 값은 라운딩된 후에 항상 1이 되므로 0.01의 조정은 아무런 변화도 초래하지 않을 것이다.
반면, 약간의 조정이 인코딩 결과에 큰 영향을 미칠 수도 있다. 예를 들어, 특정 파라미터의 값을 1.11에서 1.12로 조정하면, 조정 전에는 1로 양자화되고 조정 후에는 2로 양자화될 것이다. 이로 인해 인코딩 효율이 저하될 수 있다.
균일한 스텝 크기가 위의 문제들을 초래하는 것을 방지하기 위해, 일부 구현에서, 인코딩 디바이스(110)는 각각의 파라미터의 그래디언트를 임계 그래디언트와 추가로 비교하고, 비교 결과에 기초하여서만 반복 동안 각각의 파라미터에 대한 조정을 결정할 수 있다.
일부 구현에서, 상기 그룹의 파라미터들에서 제1 파라미터의 그래디언트가 임계 그래디언트보다 작거나 같으면, 즉, 제1 파라미터를 이용한 목적 함수의 제1 변동 정도가 임계 정도보다 작으면, 인코딩 디바이스(110)는 현재 반복에서 제1 파라미터의 조정을 0으로 결정할 수 있다.
이러한 방식으로, 더 작은 그래디언트를 갖는 파라미터의 경우, 약간의 조정으로 인한 인코딩 효율의 감소를 방지하기 위해, 인코딩 디바이스(110)는 반복에서 파라미터의 값을 조정하지 않을 수 있다.
일부 구현에서, 상기 그룹의 파라미터들에서 제2 파라미터의 그래디언트가 임계 그래디언트보다 크면, 즉, 제2 파라미터를 이용한 목적 함수의 제2 변동 정도가 임계 정도보다 크거나 같으면, 인코딩 디바이스(110)는 조정이 제2 변동 정도에 정비례(directly proportional)하도록 하기 위해, 제2 변동 정도에 기초하여 제2 파라미터에 대한 조정을 결정할 수 있다.
이러한 방식으로, 더 큰 그래디언트를 갖는 파라미터의 경우, 인코딩 디바이스(110)는 반복에서 그래디언트의 크기에 따라 파라미터 조정의 스텝 크기를 적응적으로 결정함으로써 반복 수렴 프로세스를 가속화할 수 있다.
일부 구현에서, 인코딩 디바이스(110)는 상기 그룹의 변동 정도들에서 가장 큰 변동 정도를 결정하고, 조정이 가장 큰 변동 정도에 대한 제2 변동 정도의 비율에 정비례하도록 하기 위해, 가장 큰 변동 정도에 대한 제2 변동 정도의 비율에 기초하여 조정을 결정할 수 있다.
예로서, 인코딩 디바이스(110)는 상기 그룹의 파라미터들의 그래디언트들 중에서 최대 그래디언트를 결정하고, 각각의 반복에서 최대 그래디언트에 상응하는 파라미터의 조정을 미리 정해진 스텝 크기로 설정할 수 있다. 이후, 인코딩 디바이스(110)는 최대 그래디언트에 대한 다른 파라미터의 그래디언트의 비율과 미리 정해진 스텝 크기의 곱을 결정하고, 그 곱의 결과를 다른 파라미터가 조정될 스텝 크기로 결정할 수 있다.
일부 구현에서, 비교를 위한 임계 그래디언트는 상기 그룹의 파라미터들과 연관된 상기 그룹의 그래디언트들에서의 최대 그래디언트와 미리 정해진 계수의 곱에 기초하여 결정될 수 있다. 대안적으로, 임계 그래디언트는 미리 정해진 그래디언트일 수도 있다.
위에서 논의된 변동 정도의 크기는 변동 정도의 절대값의 크기, 즉 부호가 고려되지 않은, 그래디언트의 절대값의 크기를 나타내고자 한다는 것이 이해되어야 한다.
제1 코딩된 표현 y를 예로 든다. 이는 반복에서 식 (6)으로 공식화될 수 있다:
(6)
여기서, 의 그래디언트, t는 반복 인덱스, 는 미리 정해진 조정 스텝, 는 임계 그래디언트를 결정하기 위한 미리 정해진 계수, 의 그래디언트의 절대값들 중에서 최대값을 표시한다.
식(6)에 기초하여, 최대 그래디언트의 절대값에 대한 그래디언트의 절대값의 비율이 보다 큰 파라미터에 대해, 그것의 조정 스텝은 상기 비율과 미리 정해진 스텝 의 곱이고; 최대 그래디언트의 절대값에 대한 그래디언트의 절대값의 비율이 보다 작거나 같은 파라미터에 대해서는, 현재 반복에서 조정되지 않으며, 즉, 조정은 0과 같다.
208에서, 인코딩 디바이스(110)는 조정된 코딩된 표현을 획득하기 위해 상기 그룹의 조정들에 기초하여 상기 그룹의 파라미터들을 조정한다. 도 3을 예로 든다. 인코딩 디바이스(110)는 조정된 제1 코딩된 표현을 획득하기 위해, 위에서 논의된 식 (6)에 따라 제1 코딩된 표현 y를 조정한다.
일부 구현들에서, 제2 코딩된 표현 z에 대하여, 인코딩 디바이스(110)는 새로운 제2 코딩된 표현을 재생성하기 위해 조정된 제1 코딩된 표현을 프로세싱하기 위해 하이퍼 인코더를 사용할 수 있다.
일부 추가 구현에서, 제2 코딩된 표현 z는 제1 코딩된 표현 y와 공동으로(jointly) 추가로 최적화될 수 있다. 즉, 인코딩 디바이스(110)는 최적화될 파라미터들로서 제1 코딩된 표현 y와 제2 코딩된 표현 z를 취하고 목적 함수 (3)에 기초하여 이들을 공동으로 최적화할 수 있다.
공동 최적화 동안, 인코딩 디바이스(110)는 새로운 제2 코딩된 표현을 재생성하기 위해 하이퍼 인코더를 사용하기 보다는, 단계(206)를 참조하여 논의된 프로세스에 따라, 제2 코딩된 표현 z에서의 파라미터가 각각의 반복에서 조정되는 스텝을 결정할 수 있다.
다른 구현에서, 제2 코딩된 표현 z에 대응하는 비트스트림(320)이 더 적은 비트를 갖는다 것을 고려하여, 제2 코딩된 표현 z는 조정되지 않을 수도 있다.
일부 구현에서, 인코딩 디바이스(110)는 수렴 조건(convergence condition)이 충족될 때까지, 위에서 논의된 프로세스에 따라 제1 코딩된 표현 y 및/또는 제2 코딩된 표현 z를 반복적으로 조정할 수 있다. 그러한 수렴 조건은 미리 정해진 횟수의 반복 후에 목적 함수의 변화 값이 미리 정해진 임계값보다 작은 것일 수 있다.
계속 도 2를 참조하면, 블록(210)에서, 인코딩 디바이스(110)는 조정된 코딩된 표현에 기초하여 목적 이미지의 목적 비트스트림을 획득한다.
일부 구현에서, 코딩된 표현의 최적화가 완료된 후, 인코딩 디바이스(110)는 양자화 유닛 및 산술 인코더를 사용하여 목적 이미지의 목적 비트스트림을 획득할 수 있다.
도 3을 예로 든다. 인코딩 디바이스(110)는 조정된 제1 코딩된 표현 y를 비트스트림으로 변환하기 위해 양자화 유닛(304) 및 산술 인코더(306)를 사용할 수 있고; 또한, 인코딩 디바이스(110)는 조정된 제2 코딩된 표현 z를 비트스트림으로 변환하기 위해 양자화 유닛(316) 및 산술 인코더(318)를 추가로 사용할 수 있다.
위에 논의된 바와 같이, 엔트로피 모델(328)은 산술 인코더(306)의 인코딩 프로세스와 산술 디코더(310)의 디코딩 프로세스를 안내하기 위해, 평균값(μ)과 관련된 엔트로피 인코딩 파라미터와 분산(σ)과 관련된 엔트로피 인코딩 파라미터를 결정해야 한다.
일부 전통적인 솔루션에서, 엔트로피 모델(328)은 평균값과 분산을 결정하기 위해 맥락적 파라미터(contextual parameter)들을 사용해야 하며, 이는 모델 복잡성을 악화시키고 인코딩 측면에서 병렬성(parallelism)을 손상시킨다.
도 4는 본 명세서에 설명된 주제의 일부 구현에 따른 엔트로피 모델의 개략도(400)를 도시한다. 도시된 바와 같이, 엔트로피 모델(328)은 분산 추정기(420) 및 평균 추정기(430)를 포함한다. 전통적인 엔트로피 모델과 달리, 평균 추정기(430)는 평균값(μ)을 결정할 때 맥락 모델(context model)(410)의 출력 결과에 의존하지 않는다.
구체적으로, 도 4에 도시된 엔트로피 모델의 계산 프로세스는 다음과 같이 표시될 수 있다:
(7)
여기서 ha(·)와 hs(·)는 각각 하이퍼 인코더(314)와 하이퍼 인코더(326)의 처리 프로세스를 각각 표시하고, φh와 θh는 하이퍼 인코더(314)와 하이퍼 인코더(326)의 모델 파라미터를 각각 표시하고; f(·)는 맥락 모델(410)의 처리 프로세스를 표시하고, i1 내지 in은 현재 비트스트림을 생성해야 하는 주어진 위치와 연관된 일 그룹의 연관된 위치들의 인덱스들을 표시하고; eμ(·) 및 eσ(·)는 평균 추정기(430) 및 분산 추정기(420)의 처리 프로세스를 표시하고, θeμ 및 θeσ는 평균 추정기(430)와 분산 추정기(420)의 모델 파라미터를 각각 표시한다. i1 내지 in에 의해 표시된 상기 그룹의 연관된 위치들은 디코딩 순서에 기초하여 현재 위치 이전의 다른 위치들을 나타낸다는 것이 이해되어야 한다.
에서 볼 수 있듯이, 평균 추정기(430)는 평균값을 계산하면서 더 이상 맥락 모델(410)의 결과에 의존하지 않는다. 이러한 방식으로, 본 명세서에 설명된 주제의 구현은 상이한 위치들에서 인코딩 프로세스의 병렬성에 대한 지원을 제공한다.
일부 구현에서는 코덱 프로세스를 최적화하기 위해 부가 정보(side information)가 목적 비트스트림에 추가로 인코딩될 수 있다. 도 3에 도시된 바와 같이, 부가 정보 선택 유닛(336)이 인코딩될 비트스트림(338)에서의 부가 정보를 결정하기 위해 사용될 수 있다.
일부 구현에서, 부가 정보는 코딩된 표현을 양자화하기 위한 양자화 파라미터를 나타내기 위한 제1 부가 정보를 포함할 수 있다. 도 3에 도시된 바와 같이, 부가정보 선택 유닛은 양자화 스텝 q를 결정하고 이를 양자화 유닛(304) 및 역 양자화 유닛(312)에 제공하여 그에 따라 양자화 및 역 양자화를 수행할 수 있다.
보통 기계학습 기반 코덱 모델에서는 양자화 스텝이 항상 1로 고정되어 있고, 이는 압축률에 영향을 미친다. 양자화 스텝 q를 비트스트림에 포함시킴으로써, 양자화 유닛(304)에 의해 수행되는 양자화 스텝은 다음과 같이 표시될 수 있다:
(8)
이러한 방식으로, 압축률을 더욱 높일 수 있다.
이에 따라, 그래디언트 역전파 동안, 대응하는 그래디언트 계산 프로세스 (5)는 다음과 같이 업데이트될 수 있다:
(9)
일부 구현에서, 인코딩 디바이스(110)는 양자화 스텝 q의 후보 세트를 검색함으로써 목적 이미지(105)에 적절한 최적의 양자화 스텝을 결정할 수 있다. 대안적으로, 양자화 스텝은 인코더의 구성 파라미터로서 수동으로 구성될 수 있다.
일부 구현에서, 부가 정보는 사후 프로세싱이 목적 비트스트림으로부터 생성된 디코딩된 이미지에 수행될 것임을 나타내는 사후 프로세싱 파라미터 m을 나타내기 위한 제2 부가 정보를 더 포함할 수 있다. 도 3에 도시된 바와 같이, 부가 정보 선택 유닛은 사후 프로세싱 파라미터 m을 추가로 결정하고, 이를 해당 사후 프로세싱을 수행하기 위한 사후 프로세싱 유닛(334)에 제공할 수 있다. 사후 프로세싱 유닛(334)의 프로세싱은 다음과 같이 표시될 수 있다:
(10)
여기서 는 사후 프로세싱 유닛(334)에 의해 수행되는 프로세스를 표시한다.
양자화 스텝 q에 대한 결정 프로세스와 마찬가지로, 인코딩 디바이스(110)는 사후 프로세싱 파라미터의 후보 세트에 의해 목적 이미지(105)에 적절한 사후 프로세싱 파라미터 m을 결정할 수 있다. 대안적으로, 기계학습 기반 코덱 솔루션에서는 인코딩 측에서 인코딩과 디코딩 작업이 동시에 수행될 수 있다는 점을 고려하여, 인코딩 디바이스(110)는 입력 이미지(105)와 디코딩된 이미지(332) 간의 차분에 따라 사후 프로세싱 파라미터 m을 계산할 수도 있다.
예로서, 사후 프로세싱 파라미터 m은 디코딩된 이미지(332)의 노이즈 레벨을 나타낼 수 있고, 사후 프로세싱 유닛(334)에 의해 수행되는 사후 프로세싱은 디노이징(denoising) 프로세스일 수 있다. 노이즈 레벨이 높을 때, 사후 프로세싱 유닛(334)은 예를 들어 더 높은 강도로 디노이징 프로세스를 수행할 수 있고; 반대로, 노이즈 레벨이 더 낮을 때, 사후 프로세싱 유닛(334)은 더 낮은 강도로 디노이징 프로세스를 수행할 수 있다. 다른 적절한 사후 프로세싱 파라미터들도 부가 정보로서 인코딩될 수 있다는 점을 이해해야 한다.
이러한 방식으로, 본 명세서에 설명된 주제의 구현은 비트스트림에 부가 정보를 추가로 인코딩할 수 있으며, 이에 의해 디코딩 측에서 해당 최적화를 수행하고, 코덱 효율을 향상시키며, 디코딩된 이미지의 품질을 최적화하는 데 도움이 될 수 있다.
도 5는 본 명세서에 설명된 주제의 일부 구현에 따른 인코딩 솔루션의 성능과 다른 솔루션들 간의 비교에 대한 개략도(500)를 추가로 도시한다. 도 5에 도시된 바와 같이, 개략도(500)의 가로축은 bpp(bits per pixel)를 나타내고, 세로축은 PSNR(Peak Signal to Noise Ratio)을 나타낸다. 도 5에서 볼 수 있듯이, 본 명세서에 설명된 주제의 솔루션은 VVC 솔루션 및 "Learned image compression with discretized Gaussian mixture likelihoods and attention modules" 기사에서 제안된 솔루션보다 압축률 측면에서 명백히 더 나은 결과를 낸다.
디코딩 프로세스
도 6은 본 명세서에 설명된 주제의 일부 구현에 따른 이미지 디코딩 프로세스(600)의 흐름도를 도시한다. 프로세스(600)는 예를 들어 도 1의 디코딩 디바이스(120)에 의해 구현될 수 있다.
도 6에 도시된 바와 같이, 블록(602)에서, 디코딩 디바이스(120)는 목적 이미지에 대응하는 목적 비트스트림을 수신한다. 목적 비트스트림에 대한 구체적인 생성 프로세스는 이미 상세히 설명하였으므로 여기서는 상세히 설명되지 않는다. 블록(604)에서, 디코딩 디바이스(120)는 목적 비트스트림으로부터 이미지를 디코딩한다.
일부 구현에서, 디코딩 디바이스(120)는 목적 비트스트림으로부터 부가 정보를 추가로 디코딩한다. 일부 구현에서, 부가 정보는 코딩된 표현을 양자화하기 위한 양자화 파라미터를 나타내는 위에서 논의된 제1 부가 정보를 포함한다.
일부 구현에서, 양자화 파라미터가 목적 비트스트림으로부터 디코딩된 후, 디코딩 디바이스(120)는 해당 역 양자화 연산을 수행하기 위해 양자화 파라미터를 역 양자화 유닛에 전송할 수 있다.
일부 구현에서, 부가 정보는 목적 비트스트림으로부터 생성된 디코딩된 이미지에 대한 사후 프로세싱을 수행하기 위한 사후 프로세싱 파라미터를 나타내는 위에서 논의된 제2 부가 정보를 포함한다.
일부 구현에서, 사후 프로세싱 파라미터가 목적 비트스트림으로부터 디코딩된 후, 디코딩 디바이스(120)는 사후 프로세싱 파라미터를 사후 프로세싱 유닛에 전송하여 디코딩의 결과로 얻어진 이미지에 대한 사후 프로세싱 작업을 수행할 수 있다.
예시적인 디바이스
도 7은 본 명세서에 설명된 주제의 구현을 구현할 수 있는 예시적인 디바이스(700)의 개략적인 블록도를 예시한다. 디바이스(700)는 도 1의 인코딩 디바이스(110) 및/또는 디코딩 디바이스(120)를 구현하는 데 사용될 수 있다. 도 7에 도시된 디바이스(700)는 단지 예시일 뿐이며 본 명세서에 설명된 주제에 의해 설명된 구현들의 기능 및 범위에 대한 어떠한 제한도 구성하지 않는다는 점을 이해해야 한다. 도 7에 도시된 바와 같이, 디바이스(700)의 구성요소는 하나 이상의 프로세서 또는 프로세싱 유닛(710), 메모리(720), 저장 디바이스(730), 하나 이상의 통신 유닛(740), 하나 이상의 입력 디바이스(750), 및 하나 이상의 출력 디바이스(760)를 포함할 수 있지만 이에 제한되지는 않는다.
일부 구현에서, 디바이스(700)는 다양한 사용자 단말 또는 서비스 단말로서 구현될 수 있다. 서비스 단말은 다양한 서비스 제공자에 의해 제공되는 서버, 대규모 컴퓨팅 디바이스 등일 수 있다. 사용자 단말은 예를 들어, 휴대전화, 사이트, 유닛, 디바이스, 멀티미디어 컴퓨터, 멀티미디어 태블릿, 인터넷 노드, 커뮤니케이터, 데스크탑 컴퓨터, 랩탑 컴퓨터, 노트북 컴퓨터, 넷북 컴퓨터, 태블릿 컴퓨터, PCS(Personal Communication System) 디바이스, 개인 내비게이션 디바이스, PDA(Personal Digital Assistant), 오디오/비디오 플레이어, 디지털 카메라/비디오, 포지셔닝 디바이스, 텔레비전 수신기, 라디오 방송 수신기, 전자책 디바이스, 게이밍 디바이스 또는 이러한 디바이스들의 액세서리와 주변장치로 구성된 이들의 임의의 다른 조합, 또는 이들의 임의의 다른 조합을 포함하는, 임의의 타입의 이동 단말, 고정 단말 또는 휴대 단말이다. 또한, 디바이스(700)가 임의의 타입의 사용자 특정 인터페이스(예를 들어 "웨어러블(wearable)" 회로 등)를 지원할 수 있다는 것이 예측될 수 있다.
프로세싱 유닛(710)은 물리적 또는 가상의 프로세서일 수 있으며, 메모리(720)에 저장된 프로그램을 기반으로 다양한 프로세싱을 실행할 수 있다. 멀티-프로세서(multi-processor) 시스템에서, 복수의 프로세싱 유닛들은 디바이스(700)의 병렬 프로세싱 능력을 향상시키기 위해 컴퓨터 실행가능 명령을 병렬로 실행한다. 프로세싱 유닛(710)은 중앙 프로세싱 유닛(CPU), 마이크로프로세서, 컨트롤러 및 마이크로 컨트롤러로도 알려져 있을 수 있다.
디바이스(700)는 보통 복수의 컴퓨터 저장 매체들을 포함한다. 그러한 매체는 휘발성 및 비휘발성 매체, 착탈식(removable) 및 비-착탈식 매체를 포함하는(그러나 이에 제한되지 않음), 디바이스(700)에 의해 액세스할 수 있는 임의의 달성가능한 매체일 수 있다. 메모리(720)는 휘발성 메모리(예를 들어, 레지스터(register), 캐시(cache), RAM(Random Access Memory)), 비휘발성 메모리(예를 들어, ROM(Read-Only Memory), EEPROM(Electrically Erasable Programmable Read-Only Memory), 플래시(flash)) 또는 이들의 임의의 조합일 수 있다. 메모리(720)는 하나 이상의 인코딩/디코딩 모듈(725)을 포함할 수 있으며, 이 프로그램 모듈들은 본 명세서에 설명된 다양한 인코딩 기능/디코딩 기능을 수행하도록 구성된다. 인코딩/디코딩 모듈(725)은 해당 기능을 실현하기 위해 프로세싱 유닛(710)에 의해 액세스되고 작동될 수 있다. 저장 디바이스(730)는 착탈식 또는 비-착탈식 매체일 수 있으며, 기계 판독가능 매체(예를 들어, 메모리, 플래시 드라이브, 자기 디스크) 또는 임의의 다른 매체를 포함할 수 있으며, 이들은 정보 및/또는 데이터를 저장하는 데 사용될 수 있고 디바이스(700) 내에서 액세스될 수 있다.
디바이스(700)의 구성요소들의 기능은 단일 컴퓨팅 클러스터 또는 복수의 컴퓨팅 기계들에 의해 실현될 수 있고, 이들 컴퓨팅 기계들은 통신 연결을 통해 통신할 수 있다. 따라서, 디바이스(700)는 하나 이상의 다른 서버, 개인용 컴퓨터(PC) 또는 추가적인 일반 네트워크 노드에 대한 논리적 연결을 사용하여 네트워크화된 환경에서 동작할 수 있다. 디바이스(700)는 필요에 따라 하나 이상의 외부 디바이스(도시되지 않음)와 통신 유닛(740)을 통해 통신할 수도 있으며, 여기서 외부 디바이스, 예를 들어 데이터베이스(770), 저장 디바이스, 서버, 디스플레이 디바이스 등은, 사용자들이 디바이스(700)와 상호작용할 수 있게 하는 하나 이상의 디바이스, 또는 디바이스(700)가 하나 이상의 다른 컴퓨팅 디바이스와 통신할 수 있게 하는 임의의 디바이스(예를 들어,네트워크 카드, 모뎀 등)와 통신한다. 그러한 통신은 입력/출력(I/O) 인터페이스(도시되지 않음)를 통해 실행될 수 있다.
입력 디바이스(750)는 마우스, 키보드, 트랙볼, 음성 입력 디바이스 등과 같은 하나 이상의 다양한 입력 디바이스일 수 있다. 출력 디바이스(760)는 하나 이상의 출력 디바이스, 예를 들어 디스플레이, 확성기(loudspeaker), 프린터 등일 수 있다.
예시적인 구현
본 명세서에 설명된 주제의 일부 예시적인 구현이 하기에 나열된다.
제1 양태에서, 본 명세서에 설명된 주제는 이미지 인코딩을 위한 방법을 제공한다. 방법은 목적 이미지의 코딩된 표현을 획득하는 단계 - 상기 코딩된 표현은 상기 목적 이미지에 대응하는 일 그룹의 파라미터들의 값들을 포함함 -; 상기 코딩된 표현에 기초하여 디코더와 연관된 목적 함수를 결정하는 단계 - 상기 디코더는 상기 코딩된 표현에 대응하는 비트스트림을 디코딩하는 데 사용됨 -; 상기 그룹의 파라미터들을 이용한 상기 목적 함수에 대한 일 그룹의 변화 정도들과 임계 정도 간의 비교에 기초하여 상기 그룹의 파라미터들에 대한 일 그룹의 조정들을 결정하는 단계; 조정된 코딩된 표현을 획득하기 위해 상기 그룹의 조정들에 기초하여 상기 그룹의 파라미터들을 조정하는 단계; 및 상기 조정된 코딩된 표현에 기초하여 상기 목적 이미지의 목적 비트스트림을 획득하는 단계를 포함한다.
일부 구현에서, 상기 파라미터에 대한 조정을 결정하는 단계는, 제1 파라미터를 이용한 상기 목적 함수의 제1 변화 정도가 상기 임계 정도보다 작거나 같다고 결정하는 것에 응답하여, 상기 제1 파라미터의 조정을 0으로 결정하는 단계를 포함한다.
일부 구현에서, 상기 파라미터에 대한 조정을 결정하는 단계는, 제2 파라미터를 이용한 상기 목적 함수의 제2 변화 정도가 상기 임계 정도보다 크다고 결정하는 것에 응답하여, 상기 조정이 상기 제2 변화 정도에 비례하게 하도록 상기 제2 변화 정도에 기초하여 상기 제2 파라미터의 조정을 결정하는 단계를 포함한다.
일부 구현에서, 상기 제2 변화 정도에 기초하여 상기 조정을 결정하는 단계는, 상기 그룹의 변화 정도들에서 최대 변화 정도를 결정하는 단계; 및 상기 조정이 상기 최대 변화 정도에 대한 상기 제2 변화 정도의 비율에 비례하게 하도록, 상기 조정을 상기 비율에 기초하여 결정하는 단계를 포함한다.
일부 구현에서, 상기 임계 정도는 상기 그룹의 변화 정도들에서 최대 변화 정도와 미리 정해진 계수의 곱에 기초하여 결정된다.
일부 구현에서, 상기 코딩된 표현은 제1 코딩된 표현을 포함하고, 상기 제1 코딩된 표현은 인코더를 사용하여 상기 목적 이미지를 프로세싱함으로써 생성된다.
일부 구현에서, 상기 코딩된 표현은 제2 코딩된 표현을 더 포함하고, 상기 제2 코딩된 표현은 상기 제1 코딩된 표현의 분포 특성을 나타내기 위해 상기 제1 코딩된 표현에 기초하여 생성된다.
일부 구현에서, 상기 코딩된 표현은 상기 목적 이미지에서의 다수의 위치들에 대응하는 다수의 부분 코딩된 표현들을 포함하고, 상기 비트스트림을 생성하는 것은, 상기 다수의 위치들 중에서 주어진 위치에 대해, 상기 제2 코딩된 표현에 기초하여 평균값을 나타내기 위한 제1 엔트로피 인코딩 파라미터를 결정하는 단계 - 상기 제1 엔트로피 인코딩 파라미터는 맥락적 파라미터와 관련이 없으며, 상기 맥락적 파라미터는 상기 다수의 위치들 중에서 주어진 위치와 연관된 일 그룹의 연관된 위치들에 대한 코딩된 표현을 나타내기 위해 사용됨 -; 및 적어도 상기 제1 엔트로피 인코딩 파라미터에 기초하여 상기 목적 비트스트림에 상기 주어진 위치에 대응하는 부분 비트스트림을 생성하는 단계를 포함한다.
일부 구현에서, 적어도 상기 제1 엔트로피 인코딩 파라미터에 기초하여 상기 목적 비트스트림에 상기 주어진 위치에 대응하는 상기 부분 비트스트림을 생성하는 단계는, 상기 제2 코딩된 표현 및 상기 맥락적 파라미터에 기초하여 분산을 나타내기 위한 제2 엔트로피 인코딩 파라미터를 결정하는 단계; 및 상기 제1 엔트로피 인코딩 파라미터 및 상기 제2 엔트로피 인코딩 파라미터에 기초하여 상기 목적 비트스트림에 상기 주어진 위치에 대응하는 상기 부분 비트스트림을 생성하는 단계를 포함한다.
일부 구현에서, 상기 목적 비트스트림은, 상기 코딩된 표현을 양자화하기 위한 양자화 파라미터를 나타내는 제1 부가 정보, 및 상기 목적 비트스트림으로부터 생성된 디코딩된 이미지에 대한 사후 프로세싱을 수행하기 위한 사후 프로세싱 파라미터를 나타내는 제2 부가 정보 중 적어도 하나로 인코딩된다.
일부 구현에서, 상기 그룹의 조정들에 기초하여 상기 그룹의 파라미터들을 조정하는 단계는, 상기 목적 함수와 연관된 수렴 조건이 충족될 때까지 상기 코딩된 표현을 반복적으로 조정하는 단계를 포함한다.
제2 양태에서, 본 명세서에 설명된 주제는 이미지 디코딩을 위한 방법을 제공한다. 방법은 목적 이미지에 대응하는 목적 비트스트림을 수신하는 단계; 및 상기 목적 비트스트림으로부터 이미지를 디코딩하는 단계를 포함하고, 상기 목적 비트스트림은, 다음의 프로세스: 상기 목적 이미지의 코딩된 표현을 획득하는 단계 - 상기 코딩된 표현은 상기 목적 이미지에 대응하는 일 그룹의 파라미터들의 값들을 포함함 -; 상기 코딩된 표현에 기초하여 디코더와 연관된 목적 함수를 결정하는 단계 - 상기 디코더는 상기 코딩된 표현에 대응하는 비트스트림을 디코딩하는 데 사용됨 -; 상기 그룹의 파라미터들을 이용한 상기 목적 함수에 대한 일 그룹의 변화 정도들과 임계 정도 간의 비교에 기초하여 상기 그룹의 파라미터들에 대한 일 그룹의 조정들을 결정하는 단계; 조정된 코딩된 표현을 획득하기 위해 상기 그룹의 조정들에 기초하여 상기 그룹의 파라미터들을 조정하는 단계; 및 상기 조정된 코딩된 표현에 기초하여 상기 목적 이미지의 목적 비트스트림을 획득하는 단계에 기초하여 생성된다.
일부 구현에서, 상기 파라미터에 대한 조정을 결정하는 단계는, 제1 파라미터를 이용한 상기 목적 함수의 제1 변화 정도가 상기 임계 정도보다 작거나 같다고 결정하는 것에 응답하여, 상기 제1 파라미터의 조정을 0으로 결정하는 단계를 포함한다.
일부 구현에서, 상기 파라미터에 대한 조정을 결정하는 단계는, 제2 파라미터를 이용한 상기 목적 함수의 제2 변화 정도가 상기 임계 정도보다 크다고 결정하는 것에 응답하여, 상기 조정이 상기 제2 변화 정도에 비례하게 하도록 상기 제2 변화 정도에 기초하여 상기 제2 파라미터의 조정을 결정하는 단계를 포함한다.
일부 구현에서, 상기 제2 변화 정도에 기초하여 상기 조정을 결정하는 단계는, 상기 그룹의 변화 정도들에서 최대 변화 정도를 결정하는 단계; 및 상기 조정이 상기 최대 변화 정도에 대한 상기 제2 변화 정도의 비율에 비례하게 하도록, 상기 조정을 상기 비율에 기초하여 결정하는 단계를 포함한다.
일부 구현에서, 상기 임계 정도는 상기 그룹의 변화 정도들에서 최대 변화 정도와 미리 정해진 계수의 곱에 기초하여 결정된다.
일부 구현에서, 상기 코딩된 표현은 제1 코딩된 표현을 포함하고, 상기 제1 코딩된 표현은 인코더를 사용하여 상기 목적 이미지를 프로세싱함으로써 생성된다.
일부 구현에서, 상기 코딩된 표현은 제2 코딩된 표현을 더 포함하고, 상기 제2 코딩된 표현은 상기 제1 코딩된 표현의 분포 특성을 나타내기 위해 상기 제1 코딩된 표현에 기초하여 생성된다.
일부 구현에서, 상기 코딩된 표현은 상기 목적 이미지에서의 다수의 위치들에 대응하는 다수의 부분 코딩된 표현들을 포함하고, 상기 비트스트림을 생성하는 것은, 상기 다수의 위치들 중에서 주어진 위치에 대해, 상기 제2 코딩된 표현에 기초하여 평균값을 나타내기 위한 제1 엔트로피 인코딩 파라미터를 결정하는 단계 - 상기 제1 엔트로피 인코딩 파라미터는 맥락적 파라미터와 관련이 없으며, 상기 맥락적 파라미터는 상기 다수의 위치들 중에서 주어진 위치와 연관된 일 그룹의 연관된 위치들에 대한 코딩된 표현을 나타내기 위해 사용됨 -; 및 적어도 상기 제1 엔트로피 인코딩 파라미터에 기초하여 상기 목적 비트스트림에 상기 주어진 위치에 대응하는 부분 비트스트림을 생성하는 단계를 포함한다.
일부 구현에서, 적어도 상기 제1 엔트로피 인코딩 파라미터에 기초하여 상기 목적 비트스트림에 상기 주어진 위치에 대응하는 상기 부분 비트스트림을 생성하는 단계는, 상기 제2 코딩된 표현 및 상기 맥락적 파라미터에 기초하여 분산을 나타내기 위한 제2 엔트로피 인코딩 파라미터를 결정하는 단계; 및 상기 제1 엔트로피 인코딩 파라미터 및 상기 제2 엔트로피 인코딩 파라미터에 기초하여 상기 목적 비트스트림에 상기 주어진 위치에 대응하는 상기 부분 비트스트림을 생성하는 단계를 포함한다.
일부 구현에서, 상기 목적 비트스트림은, 상기 코딩된 표현을 양자화하기 위한 양자화 파라미터를 나타내는 제1 부가 정보, 및 상기 목적 비트스트림으로부터 생성된 디코딩된 이미지에 대한 사후 프로세싱을 수행하기 위한 사후 프로세싱 파라미터를 나타내는 제2 부가 정보 중 적어도 하나로 인코딩된다.
일부 구현에서, 상기 그룹의 조정들에 기초하여 상기 그룹의 파라미터들을 조정하는 단계는, 상기 목적 함수와 연관된 수렴 조건이 충족될 때까지 상기 코딩된 표현을 반복적으로 조정하는 단계를 포함한다.
제3 양태에서, 본 명세서에 설명된 주제는 디바이스를 제공한다. 디바이스는 프로세싱 유닛; 및 상기 프로세싱 유닛에 결합되고, 상기 프로세싱 유닛에 의해 실행될 때 상기 디바이스로 하여금, 목적 이미지의 코딩된 표현을 획득하는 단계 - 상기 코딩된 표현은 상기 목적 이미지에 대응하는 일 그룹의 파라미터들의 값들을 포함함 -; 상기 코딩된 표현에 기초하여 디코더와 연관된 목적 함수를 결정하는 단계 - 상기 디코더는 상기 코딩된 표현에 대응하는 비트스트림을 디코딩하는 데 사용됨 -; 상기 그룹의 파라미터들을 이용한 상기 목적 함수에 대한 일 그룹의 변화 정도들과 임계 정도 간의 비교에 기초하여 상기 그룹의 파라미터들에 대한 일 그룹의 조정들을 결정하는 단계; 조정된 코딩된 표현을 획득하기 위해 상기 그룹의 조정들에 기초하여 상기 그룹의 파라미터들을 조정하는 단계; 및 상기 조정된 코딩된 표현에 기초하여 상기 목적 이미지의 목적 비트스트림을 획득하는 단계를 포함하는 동작들을 수행하게 하는 명령이 저장된 메모리를 포함한다.
일부 구현에서, 상기 파라미터에 대한 조정을 결정하는 단계는, 제1 파라미터를 이용한 상기 목적 함수의 제1 변화 정도가 상기 임계 정도보다 작거나 같다고 결정하는 것에 응답하여, 상기 제1 파라미터의 조정을 0으로 결정하는 단계를 포함한다.
일부 구현에서, 상기 파라미터에 대한 조정을 결정하는 단계는, 제2 파라미터를 이용한 상기 목적 함수의 제2 변화 정도가 상기 임계 정도보다 크다고 결정하는 것에 응답하여, 상기 조정이 상기 제2 변화 정도에 비례하게 하도록 상기 제2 변화 정도에 기초하여 상기 제2 파라미터의 조정을 결정하는 단계를 포함한다.
일부 구현에서, 상기 제2 변화 정도에 기초하여 상기 조정을 결정하는 단계는, 상기 그룹의 변화 정도들에서 최대 변화 정도를 결정하는 단계; 및 상기 조정이 상기 최대 변화 정도에 대한 상기 제2 변화 정도의 비율에 비례하게 하도록, 상기 조정을 상기 비율에 기초하여 결정하는 단계를 포함한다.
일부 구현에서, 상기 임계 정도는 상기 그룹의 변화 정도들에서 최대 변화 정도와 미리 정해진 계수의 곱에 기초하여 결정된다.
일부 구현에서, 상기 코딩된 표현은 제1 코딩된 표현을 포함하고, 상기 제1 코딩된 표현은 인코더를 사용하여 상기 목적 이미지를 프로세싱함으로써 생성된다.
일부 구현에서, 상기 코딩된 표현은 제2 코딩된 표현을 더 포함하고, 상기 제2 코딩된 표현은 상기 제1 코딩된 표현의 분포 특성을 나타내기 위해 상기 제1 코딩된 표현에 기초하여 생성된다.
일부 구현에서, 상기 코딩된 표현은 상기 목적 이미지에서의 다수의 위치들에 대응하는 다수의 부분 코딩된 표현들을 포함하고, 상기 비트스트림을 생성하는 것은, 상기 다수의 위치들 중에서 주어진 위치에 대해, 상기 제2 코딩된 표현에 기초하여 평균값을 나타내기 위한 제1 엔트로피 인코딩 파라미터를 결정하는 단계 - 상기 제1 엔트로피 인코딩 파라미터는 맥락적 파라미터와 관련이 없으며, 상기 맥락적 파라미터는 상기 다수의 위치들 중에서 주어진 위치와 연관된 일 그룹의 연관된 위치들에 대한 코딩된 표현을 나타내기 위해 사용됨 -; 및 적어도 상기 제1 엔트로피 인코딩 파라미터에 기초하여 상기 목적 비트스트림에 상기 주어진 위치에 대응하는 부분 비트스트림을 생성하는 단계를 포함한다.
일부 구현에서, 적어도 상기 제1 엔트로피 인코딩 파라미터에 기초하여 상기 목적 비트스트림에 상기 주어진 위치에 대응하는 상기 부분 비트스트림을 생성하는 단계는, 상기 제2 코딩된 표현 및 상기 맥락적 파라미터에 기초하여 분산을 나타내기 위한 제2 엔트로피 인코딩 파라미터를 결정하는 단계; 및 상기 제1 엔트로피 인코딩 파라미터 및 상기 제2 엔트로피 인코딩 파라미터에 기초하여 상기 목적 비트스트림에 상기 주어진 위치에 대응하는 상기 부분 비트스트림을 생성하는 단계를 포함한다.
일부 구현에서, 상기 목적 비트스트림은, 상기 코딩된 표현을 양자화하기 위한 양자화 파라미터를 나타내는 제1 부가 정보, 및 상기 목적 비트스트림으로부터 생성된 디코딩된 이미지에 대한 사후 프로세싱을 수행하기 위한 사후 프로세싱 파라미터를 나타내는 제2 부가 정보 중 적어도 하나로 인코딩된다.
일부 구현에서, 상기 그룹의 조정들에 기초하여 상기 그룹의 파라미터들을 조정하는 단계는, 상기 목적 함수와 연관된 수렴 조건이 충족될 때까지 상기 코딩된 표현을 반복적으로 조정하는 단계를 포함한다.
제4 양태에서, 본 명세서에 설명된 주제는 디바이스를 제공한다. 디바이스는 프로세싱 유닛; 및 상기 프로세싱 유닛에 결합되고, 상기 프로세싱 유닛에 의해 실행될 때 상기 디바이스로 하여금, 목적 이미지에 대응하는 목적 비트스트림을 수신하는 단계; 및 상기 목적 비트스트림으로부터 이미지를 디코딩하는 단계를 포함하는 동작들을 수행하게 하는 명령이 저장된 메모리를 포함하고, 상기 목적 비트스트림은, 다음의 프로세스: 상기 목적 이미지의 코딩된 표현을 획득하는 단계 - 상기 코딩된 표현은 상기 목적 이미지에 대응하는 일 그룹의 파라미터들의 값들을 포함함 -; 상기 코딩된 표현에 기초하여 디코더와 연관된 목적 함수를 결정하는 단계 - 상기 디코더는 상기 코딩된 표현에 대응하는 비트스트림을 디코딩하는 데 사용됨 -; 상기 그룹의 파라미터들을 이용한 상기 목적 함수에 대한 일 그룹의 변화 정도들과 임계 정도 간의 비교에 기초하여 상기 그룹의 파라미터들에 대한 일 그룹의 조정들을 결정하는 단계; 조정된 코딩된 표현을 획득하기 위해 상기 그룹의 조정들에 기초하여 상기 그룹의 파라미터들을 조정하는 단계; 및 상기 조정된 코딩된 표현에 기초하여 상기 목적 이미지의 목적 비트스트림을 획득하는 단계에 기초하여 생성된다.
일부 구현에서, 상기 파라미터에 대한 조정을 결정하는 단계는, 제1 파라미터를 이용한 상기 목적 함수의 제1 변화 정도가 상기 임계 정도보다 작거나 같다고 결정하는 것에 응답하여, 상기 제1 파라미터의 조정을 0으로 결정하는 단계를 포함한다.
일부 구현에서, 상기 파라미터에 대한 조정을 결정하는 단계는, 제2 파라미터를 이용한 상기 목적 함수의 제2 변화 정도가 상기 임계 정도보다 크다고 결정하는 것에 응답하여, 상기 조정이 상기 제2 변화 정도에 비례하게 하도록 상기 제2 변화 정도에 기초하여 상기 제2 파라미터의 조정을 결정하는 단계를 포함한다.
일부 구현에서, 상기 제2 변화 정도에 기초하여 상기 조정을 결정하는 단계는, 상기 그룹의 변화 정도들에서 최대 변화 정도를 결정하는 단계; 및 상기 조정이 상기 최대 변화 정도에 대한 상기 제2 변화 정도의 비율에 비례하게 하도록, 상기 조정을 상기 비율에 기초하여 결정하는 단계를 포함한다.
일부 구현에서, 상기 임계 정도는 상기 그룹의 변화 정도들에서 최대 변화 정도와 미리 정해진 계수의 곱에 기초하여 결정된다.
일부 구현에서, 상기 코딩된 표현은 제1 코딩된 표현을 포함하고, 상기 제1 코딩된 표현은 인코더를 사용하여 상기 목적 이미지를 프로세싱함으로써 생성된다.
일부 구현에서, 상기 코딩된 표현은 제2 코딩된 표현을 더 포함하고, 상기 제2 코딩된 표현은 상기 제1 코딩된 표현의 분포 특성을 나타내기 위해 상기 제1 코딩된 표현에 기초하여 생성된다.
일부 구현에서, 상기 코딩된 표현은 상기 목적 이미지에서의 다수의 위치들에 대응하는 다수의 부분 코딩된 표현들을 포함하고, 상기 비트스트림을 생성하는 것은, 상기 다수의 위치들 중에서 주어진 위치에 대해, 상기 제2 코딩된 표현에 기초하여 평균값을 나타내기 위한 제1 엔트로피 인코딩 파라미터를 결정하는 단계 - 상기 제1 엔트로피 인코딩 파라미터는 맥락적 파라미터와 관련이 없으며, 상기 맥락적 파라미터는 상기 다수의 위치들 중에서 주어진 위치와 연관된 일 그룹의 연관된 위치들에 대한 코딩된 표현을 나타내기 위해 사용됨 -; 및 적어도 상기 제1 엔트로피 인코딩 파라미터에 기초하여 상기 목적 비트스트림에 상기 주어진 위치에 대응하는 부분 비트스트림을 생성하는 단계를 포함한다.
일부 구현에서, 적어도 상기 제1 엔트로피 인코딩 파라미터에 기초하여 상기 목적 비트스트림에 상기 주어진 위치에 대응하는 상기 부분 비트스트림을 생성하는 단계는, 상기 제2 코딩된 표현 및 상기 맥락적 파라미터에 기초하여 분산을 나타내기 위한 제2 엔트로피 인코딩 파라미터를 결정하는 단계; 및 상기 제1 엔트로피 인코딩 파라미터 및 상기 제2 엔트로피 인코딩 파라미터에 기초하여 상기 목적 비트스트림에 상기 주어진 위치에 대응하는 상기 부분 비트스트림을 생성하는 단계를 포함한다.
일부 구현에서, 상기 목적 비트스트림은, 상기 코딩된 표현을 양자화하기 위한 양자화 파라미터를 나타내는 제1 부가 정보, 및 상기 목적 비트스트림으로부터 생성된 디코딩된 이미지에 대한 사후 프로세싱을 수행하기 위한 사후 프로세싱 파라미터를 나타내는 제2 부가 정보 중 적어도 하나로 인코딩된다.
일부 구현에서, 상기 그룹의 조정들에 기초하여 상기 그룹의 파라미터들을 조정하는 단계는, 상기 목적 함수와 연관된 수렴 조건이 충족될 때까지 상기 코딩된 표현을 반복적으로 조정하는 단계를 포함한다.
제5 양태에서, 본 명세서에 설명된 주제는 비일시적 컴퓨터 저장 매체에 유형적으로 저장되고, 디바이스에 의해 실행될 때 상기 디바이스로 하여금, 목적 이미지의 코딩된 표현을 획득하는 단계 - 상기 코딩된 표현은 상기 목적 이미지에 대응하는 일 그룹의 파라미터들의 값들을 포함함 -; 상기 코딩된 표현에 기초하여 디코더와 연관된 목적 함수를 결정하는 단계 - 상기 디코더는 상기 코딩된 표현에 대응하는 비트스트림을 디코딩하는 데 사용됨 -; 상기 그룹의 파라미터들을 이용한 상기 목적 함수에 대한 일 그룹의 변화 정도들과 임계 정도 간의 비교에 기초하여 상기 그룹의 파라미터들에 대한 일 그룹의 조정들을 결정하는 단계; 조정된 코딩된 표현을 획득하기 위해 상기 그룹의 조정들에 기초하여 상기 그룹의 파라미터들을 조정하는 단계; 및 상기 조정된 코딩된 표현에 기초하여 상기 목적 이미지의 목적 비트스트림을 획득하는 단계를 포함하는 동작들을 수행하게 하는 기계 실행가능 명령을 포함하는 컴퓨터 프로그램 제품을 제공한다.
일부 구현에서, 상기 파라미터에 대한 조정을 결정하는 단계는, 제1 파라미터를 이용한 상기 목적 함수의 제1 변화 정도가 상기 임계 정도보다 작거나 같다고 결정하는 것에 응답하여, 상기 제1 파라미터의 조정을 0으로 결정하는 단계를 포함한다.
일부 구현에서, 상기 파라미터에 대한 조정을 결정하는 단계는, 제2 파라미터를 이용한 상기 목적 함수의 제2 변화 정도가 상기 임계 정도보다 크다고 결정하는 것에 응답하여, 상기 조정이 상기 제2 변화 정도에 비례하게 하도록 상기 제2 변화 정도에 기초하여 상기 제2 파라미터의 조정을 결정하는 단계를 포함한다.
일부 구현에서, 상기 제2 변화 정도에 기초하여 상기 조정을 결정하는 단계는, 상기 그룹의 변화 정도들에서 최대 변화 정도를 결정하는 단계; 및 상기 조정이 상기 최대 변화 정도에 대한 상기 제2 변화 정도의 비율에 비례하게 하도록, 상기 조정을 상기 비율에 기초하여 결정하는 단계를 포함한다.
일부 구현에서, 상기 임계 정도는 상기 그룹의 변화 정도들에서 최대 변화 정도와 미리 정해진 계수의 곱에 기초하여 결정된다.
일부 구현에서, 상기 코딩된 표현은 제1 코딩된 표현을 포함하고, 상기 제1 코딩된 표현은 인코더를 사용하여 상기 목적 이미지를 프로세싱함으로써 생성된다.
일부 구현에서, 상기 코딩된 표현은 제2 코딩된 표현을 더 포함하고, 상기 제2 코딩된 표현은 상기 제1 코딩된 표현의 분포 특성을 나타내기 위해 상기 제1 코딩된 표현에 기초하여 생성된다.
일부 구현에서, 상기 코딩된 표현은 상기 목적 이미지에서의 다수의 위치들에 대응하는 다수의 부분 코딩된 표현들을 포함하고, 상기 비트스트림을 생성하는 것은, 상기 다수의 위치들 중에서 주어진 위치에 대해, 상기 제2 코딩된 표현에 기초하여 평균값을 나타내기 위한 제1 엔트로피 인코딩 파라미터를 결정하는 단계 - 상기 제1 엔트로피 인코딩 파라미터는 맥락적 파라미터와 관련이 없으며, 상기 맥락적 파라미터는 상기 다수의 위치들 중에서 주어진 위치와 연관된 일 그룹의 연관된 위치들에 대한 코딩된 표현을 나타내기 위해 사용됨 -; 및 적어도 상기 제1 엔트로피 인코딩 파라미터에 기초하여 상기 목적 비트스트림에 상기 주어진 위치에 대응하는 부분 비트스트림을 생성하는 단계를 포함한다.
일부 구현에서, 적어도 상기 제1 엔트로피 인코딩 파라미터에 기초하여 상기 목적 비트스트림에 상기 주어진 위치에 대응하는 상기 부분 비트스트림을 생성하는 단계는, 상기 제2 코딩된 표현 및 상기 맥락적 파라미터에 기초하여 분산을 나타내기 위한 제2 엔트로피 인코딩 파라미터를 결정하는 단계; 및 상기 제1 엔트로피 인코딩 파라미터 및 상기 제2 엔트로피 인코딩 파라미터에 기초하여 상기 목적 비트스트림에 상기 주어진 위치에 대응하는 상기 부분 비트스트림을 생성하는 단계를 포함한다.
일부 구현에서, 상기 목적 비트스트림은, 상기 코딩된 표현을 양자화하기 위한 양자화 파라미터를 나타내는 제1 부가 정보, 및 상기 목적 비트스트림으로부터 생성된 디코딩된 이미지에 대한 사후 프로세싱을 수행하기 위한 사후 프로세싱 파라미터를 나타내는 제2 부가 정보 중 적어도 하나로 인코딩된다.
일부 구현에서, 상기 그룹의 조정들에 기초하여 상기 그룹의 파라미터들을 조정하는 단계는, 상기 목적 함수와 연관된 수렴 조건이 충족될 때까지 상기 코딩된 표현을 반복적으로 조정하는 단계를 포함한다.
제6 양태에서, 본 명세서에 설명된 주제는 디바이스에 의해 실행될 때 상기 디바이스로 하여금, 목적 이미지에 대응하는 목적 비트스트림을 수신하는 단계; 및 상기 목적 비트스트림으로부터 이미지를 디코딩하는 단계를 포함하는 동작들을 수행하게 하는 기계 실행가능 명령을 포함하는 컴퓨터 프로그램 제품을 제공하고, 상기 목적 비트스트림은, 다음의 프로세스: 상기 목적 이미지의 코딩된 표현을 획득하는 단계 - 상기 코딩된 표현은 상기 목적 이미지에 대응하는 일 그룹의 파라미터들의 값들을 포함함 -; 상기 코딩된 표현에 기초하여 디코더와 연관된 목적 함수를 결정하는 단계 - 상기 디코더는 상기 코딩된 표현에 대응하는 비트스트림을 디코딩하는 데 사용됨 -; 상기 그룹의 파라미터들을 이용한 상기 목적 함수에 대한 일 그룹의 변화 정도들과 임계 정도 간의 비교에 기초하여 상기 그룹의 파라미터들에 대한 일 그룹의 조정들을 결정하는 단계; 조정된 코딩된 표현을 획득하기 위해 상기 그룹의 조정들에 기초하여 상기 그룹의 파라미터들을 조정하는 단계; 및 상기 조정된 코딩된 표현에 기초하여 상기 목적 이미지의 목적 비트스트림을 획득하는 단계에 기초하여 생성된다.
일부 구현에서, 상기 파라미터에 대한 조정을 결정하는 단계는, 제1 파라미터를 이용한 상기 목적 함수의 제1 변화 정도가 상기 임계 정도보다 작거나 같다고 결정하는 것에 응답하여, 상기 제1 파라미터의 조정을 0으로 결정하는 단계를 포함한다.
일부 구현에서, 상기 파라미터에 대한 조정을 결정하는 단계는, 제2 파라미터를 이용한 상기 목적 함수의 제2 변화 정도가 상기 임계 정도보다 크다고 결정하는 것에 응답하여, 상기 조정이 상기 제2 변화 정도에 비례하게 하도록 상기 제2 변화 정도에 기초하여 상기 제2 파라미터의 조정을 결정하는 단계를 포함한다.
일부 구현에서, 상기 제2 변화 정도에 기초하여 상기 조정을 결정하는 단계는, 상기 그룹의 변화 정도들에서 최대 변화 정도를 결정하는 단계; 및 상기 조정이 상기 최대 변화 정도에 대한 상기 제2 변화 정도의 비율에 비례하게 하도록, 상기 조정을 상기 비율에 기초하여 결정하는 단계를 포함한다.
일부 구현에서, 상기 임계 정도는 상기 그룹의 변화 정도들에서 최대 변화 정도와 미리 정해진 계수의 곱에 기초하여 결정된다.
일부 구현에서, 상기 코딩된 표현은 제1 코딩된 표현을 포함하고, 상기 제1 코딩된 표현은 인코더를 사용하여 상기 목적 이미지를 프로세싱함으로써 생성된다.
일부 구현에서, 상기 코딩된 표현은 제2 코딩된 표현을 더 포함하고, 상기 제2 코딩된 표현은 상기 제1 코딩된 표현의 분포 특성을 나타내기 위해 상기 제1 코딩된 표현에 기초하여 생성된다.
일부 구현에서, 상기 코딩된 표현은 상기 목적 이미지에서의 다수의 위치들에 대응하는 다수의 부분 코딩된 표현들을 포함하고, 상기 비트스트림을 생성하는 것은, 상기 다수의 위치들 중에서 주어진 위치에 대해, 상기 제2 코딩된 표현에 기초하여 평균값을 나타내기 위한 제1 엔트로피 인코딩 파라미터를 결정하는 단계 - 상기 제1 엔트로피 인코딩 파라미터는 맥락적 파라미터와 관련이 없으며, 상기 맥락적 파라미터는 상기 다수의 위치들 중에서 주어진 위치와 연관된 일 그룹의 연관된 위치들에 대한 코딩된 표현을 나타내기 위해 사용됨 -; 및 적어도 상기 제1 엔트로피 인코딩 파라미터에 기초하여 상기 목적 비트스트림에 상기 주어진 위치에 대응하는 부분 비트스트림을 생성하는 단계를 포함한다.
일부 구현에서, 적어도 상기 제1 엔트로피 인코딩 파라미터에 기초하여 상기 목적 비트스트림에 상기 주어진 위치에 대응하는 상기 부분 비트스트림을 생성하는 단계는, 상기 제2 코딩된 표현 및 상기 맥락적 파라미터에 기초하여 분산을 나타내기 위한 제2 엔트로피 인코딩 파라미터를 결정하는 단계; 및 상기 제1 엔트로피 인코딩 파라미터 및 상기 제2 엔트로피 인코딩 파라미터에 기초하여 상기 목적 비트스트림에 상기 주어진 위치에 대응하는 상기 부분 비트스트림을 생성하는 단계를 포함한다.
일부 구현에서, 상기 목적 비트스트림은, 상기 코딩된 표현을 양자화하기 위한 양자화 파라미터를 나타내는 제1 부가 정보, 및 상기 목적 비트스트림으로부터 생성된 디코딩된 이미지에 대한 사후 프로세싱을 수행하기 위한 사후 프로세싱 파라미터를 나타내는 제2 부가 정보 중 적어도 하나로 인코딩된다.
일부 구현에서, 상기 그룹의 조정들에 기초하여 상기 그룹의 파라미터들을 조정하는 단계는, 상기 목적 함수와 연관된 수렴 조건이 충족될 때까지 상기 코딩된 표현을 반복적으로 조정하는 단계를 포함한다.
본 명세서에 설명된 기능성은 하나 이상의 하드웨어 논리 구성요소에 의해 적어도 부분적으로 수행될 수 있다. 예를 들어, 그리고 제한 없이, 사용될 수 있는 예시적인 타입의 하드웨어 논리 구성요소에는 FPGA(Field-Programmable Gate Array), ASIC(Application-Specific Integrated Circuit), ASSP(Application-Specific Standard Product), SOC(System-on-a-chip system), CPLD(Programmable Logic Device) 등이 포함된다.
본 명세서에 설명된 주제의 방법들을 수행하기 위한 프로그램 코드는 하나 이상의 프로그래밍 언어의 임의의 조합으로 작성될 수 있다. 이러한 프로그램 코드는 범용 컴퓨터, 특수 목적 컴퓨터, 또는 다른 프로그램가능 데이터 프로세싱 장치의 프로세서 또는 컨트롤러에 제공되어, 프로그램 코드가 프로세서 또는 컨트롤러에 의해 실행될 때 흐름도 및/또는 블록도에 명시된 기능들/동작들이 구현되게 할 수 있다. 프로그램 코드는 기계에서 전적으로, 기계에서 부분적으로, 독립형 소프트웨어 패키지로서, 기계에서 부분적으로 그리고 원격 기계에서 부분적으로 또는 원격 기계나 서버에서 전적으로 실행될 수 있다.
본 명세서에 설명된 주제의 맥락에서, 기계 판독가능 매체는 명령 실행 시스템, 장치, 또는 디바이스에 의해 또는 이와 관련하여 사용하기 위한 프로그램을 포함하거나 저장할 수 있는 임의의 유형 매체(tangible medium)일 수 있다. 기계 판독가능 매체는 기계 판독가능 신호 매체 또는 기계 판독가능 저장 매체일 수 있다. 기계 판독가능 매체는 전자, 자기, 광학, 전자기, 적외선, 반도체 시스템, 장치, 또는 디바이스, 또는 전술한 것들의 임의의 적절한 조합을 포함할 수 있지만 이에 제한되지는 않는다. 기계 판독가능 저장 매체의 보다 구체적인 예로는 하나 이상의 와이어(wire)를 갖는 전기 연결, 휴대용 컴퓨터 디스켓, 하드 디스크, RAM(Random Access Memory), ROM(Read-Only Memory), 소거가능 프로그램가능 읽기전용 메모리(EPROM 또는 플래시 메모리), 광섬유, 휴대용 CD-ROM(compact disc read-only memory), 광학 저장 디바이스, 자기 저장 디바이스, 또는 전술한 것들의 임의의 적절한 조합이 포함될 수 있다.
또한, 동작들이 특정 순서로 서술되어 있지만, 동작들은 제시된 상기 특정 순서 또는 순차적인 순서로 실행되어야 하거나, 예상된 결과를 달성하기 위해 제시된 모든 동작들이 실행되어야 한다는 것을 이해해야 한다. 특정 상황에서는, 멀티태스킹(multitasking)과 병렬 프로세싱이 유리할 수 있다. 마찬가지로, 여러 특정 구현 세부사항들이 위의 논의에 포함되어 있지만, 이들은 본 명세서에 설명된 주제의 범위를 제한하는 것으로 해석되어서는 안 된다. 별도의 구현들의 맥락에서 설명된 특정 특징들은 단일 구현에서 조합하여 구현될 수도 있다. 반대로, 단일 구현의 맥락에서 설명된 다양한 특징들이 다수의 구현들에서 개별적으로 또는 임의의 적절한 하위조합으로 구현될 수도 있다.
주제가 구조적 특징들 및/또는 방법론적 행위들에 특정한 언어로 설명되었지만, 첨부된 청구범위에 명시된 주제는 위에 설명된 특정 특징들이나 행위들에 반드시 제한되는 것은 아니라는 것이 이해되어야 한다. 오히려, 위에 설명된 특정 특징들 및 행위들은 청구범위를 구현하는 예시적인 형태로서 개시된다.

Claims (14)

  1. 이미지 인코딩을 위한 방법에 있어서,
    목적 이미지(objective image)의 코딩된 표현을 획득하는 단계 - 상기 코딩된 표현은 상기 목적 이미지에 대응하는 일 그룹의 파라미터의 값을 포함함 - ;
    상기 코딩된 표현에 기초하여 디코더와 연관된 목적 함수(objective function)를 결정하는 단계 - 상기 디코더는 상기 코딩된 표현에 대응하는 비트스트림을 디코딩하는 데 사용됨 - ;
    상기 그룹의 파라미터를 이용한 상기 목적 함수의 일 그룹의 변화 정도(change degree)와 임계 정도(threshold degree) 간의 비교에 기초하여, 상기 그룹의 파라미터의 일 그룹의 조정(adjustment)을 결정하는 단계;
    조정된 코딩된 표현을 획득하기 위해 상기 그룹의 조정에 기초하여 상기 그룹의 파라미터를 조정하는 단계; 및
    상기 조정된 코딩된 표현에 기초하여 상기 목적 이미지의 목적 비트스트림을 획득하는 단계
    를 포함하는, 이미지 인코딩을 위한 방법.
  2. 제 1 항에 있어서,
    상기 파라미터의 조정을 결정하는 단계는:
    제1 파라미터를 이용한 상기 목적 함수의 제1 변화 정도가 상기 임계 정도보다 작거나 같다고 결정하는 것에 응답하여, 상기 제1 파라미터의 조정을 0으로 결정하는 단계를 포함하는 것인, 이미지 인코딩을 위한 방법.
  3. 제 1 항에 있어서,
    상기 파라미터의 조정을 결정하는 단계는:
    제2 파라미터를 이용한 상기 목적 함수의 제2 변화 정도가 상기 임계 정도보다 크다고 결정하는 것에 응답하여, 상기 조정이 상기 제2 변화 정도에 비례하도록 상기 제2 변화 정도에 기초하여 상기 제2 파라미터의 조정을 결정하는 단계를 포함하는 것인, 이미지 인코딩을 위한 방법.
  4. 제 3 항에 있어서,
    상기 제2 변화 정도에 기초하여 상기 조정을 결정하는 단계는:
    상기 그룹의 변화 정도에서 최대 변화 정도(maximum change degree)를 결정하는 단계; 및
    상기 조정이 상기 최대 변화 정도에 대한 상기 제2 변화 정도의 비율에 비례하도록, 상기 비율에 기초하여 상기 조정을 결정하는 단계
    를 포함하는 것인, 이미지 인코딩을 위한 방법.
  5. 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,
    상기 임계 정도는, 상기 그룹의 변화 정도에서의 최대 변화 정도와 미리 정해진 계수(coefficient)의 곱에 기초하여 결정되는 것인, 이미지 인코딩을 위한 방법.
  6. 제 1 항에 있어서,
    상기 코딩된 표현은 제1 코딩된 표현을 포함하고, 상기 제1 코딩된 표현은 인코더를 사용하여 상기 목적 이미지를 프로세싱함으로써 생성되는 것인, 이미지 인코딩을 위한 방법.
  7. 제 6 항에 있어서,
    상기 코딩된 표현은 제2 코딩된 표현을 더 포함하고, 상기 제2 코딩된 표현은 상기 제1 코딩된 표현의 분포 특성(distribution characteristic)을 나타내도록 상기 제1 코딩된 표현에 기초하여 생성되는 것인, 이미지 인코딩을 위한 방법.
  8. 제 7 항에 있어서,
    상기 코딩된 표현은 상기 목적 이미지에서의 다수의 위치들에 대응하는 다수의 부분 코딩된 표현들을 포함하고, 상기 비트스트림을 생성하는 것은:
    상기 다수의 위치들 중에서 주어진 위치에 대해,
    상기 제2 코딩된 표현에 기초하여 평균값을 나타내기 위한 제1 엔트로피 인코딩 파라미터를 결정하는 단계 - 상기 제1 엔트로피 인코딩 파라미터는 맥락적 파라미터(contextual parameter)와 관련이 없으며, 상기 맥락적 파라미터는 상기 다수의 위치들 중에서 주어진 위치와 연관된 일 그룹의 연관된 위치에 대한 코딩된 표현을 나타내기 위해 사용됨 - ; 및
    적어도 상기 제1 엔트로피 인코딩 파라미터에 기초하여 상기 목적 비트스트림에 상기 주어진 위치에 대응하는 부분 비트스트림을 생성하는 단계
    를 포함하는 것인, 이미지 인코딩을 위한 방법.
  9. 제 8 항에 있어서,
    적어도 상기 제1 엔트로피 인코딩 파라미터에 기초하여 상기 목적 비트스트림에 상기 주어진 위치에 대응하는 상기 부분 비트스트림을 생성하는 단계는:
    상기 제2 코딩된 표현 및 상기 맥락적 파라미터에 기초하여 분산(variance)을 나타내기 위한 제2 엔트로피 인코딩 파라미터를 결정하는 단계; 및
    상기 제1 엔트로피 인코딩 파라미터 및 상기 제2 엔트로피 인코딩 파라미터에 기초하여 상기 목적 비트스트림에 상기 주어진 위치에 대응하는 상기 부분 비트스트림을 생성하는 단계
    를 포함하는 것인, 이미지 인코딩을 위한 방법.
  10. 제 1 항에 있어서,
    상기 목적 비트스트림은:
    상기 코딩된 표현을 양자화하기 위한 양자화 파라미터를 나타내는 제1 부가 정보, 및
    상기 목적 비트스트림으로부터 생성된 디코딩된 이미지에 대한 사후 프로세싱(post-processing)을 수행하기 위한 사후 프로세싱 파라미터를 나타내는 제2 부가 정보
    중 적어도 하나로 인코딩되는 것인, 이미지 인코딩을 위한 방법.
  11. 제 1 항에 있어서,
    상기 그룹의 조정에 기초하여 상기 그룹의 파라미터를 조정하는 단계는:
    상기 목적 함수와 연관된 수렴 조건(convergence condition)이 충족될 때까지 상기 코딩된 표현을 반복적으로 조정하는 단계를 포함하는 것인, 이미지 인코딩을 위한 방법.
  12. 이미지 디코딩을 위한 방법에 있어서,
    목적 이미지에 대응하는 목적 비트스트림을 수신하는 단계; 및
    상기 목적 비트스트림으로부터 이미지를 디코딩하는 단계
    를 포함하고,
    상기 목적 비트스트림은:
    상기 목적 이미지의 코딩된 표현을 획득하는 단계 - 상기 코딩된 표현은 상기 목적 이미지에 대응하는 일 그룹의 파라미터의 값을 포함함 - ;
    상기 코딩된 표현에 기초하여 디코더와 연관된 목적 함수를 결정하는 단계 - 상기 디코더는 상기 코딩된 표현에 대응하는 비트스트림을 디코딩하는 데 사용됨 - ;
    상기 그룹의 파라미터를 이용한 상기 목적 함수의 일 그룹의 변화 정도와 임계 정도 간의 비교에 기초하여 상기 그룹의 파라미터의 일 그룹의 조정을 결정하는 단계;
    조정된 코딩된 표현을 획득하기 위해 상기 그룹의 조정에 기초하여 상기 그룹의 파라미터를 조정하는 단계; 및
    상기 조정된 코딩된 표현에 기초하여 상기 목적 이미지의 목적 비트스트림을 획득하는 단계
    에 기초하여 생성되는 것인, 이미지 디코딩을 위한 방법.
  13. 디바이스에 있어서,
    프로세싱 유닛; 및
    상기 프로세싱 유닛에 결합되고, 상기 프로세싱 유닛에 의해 실행될 때 상기 디바이스로 하여금 제 1 항 내지 제 12 항 중 어느 한 항의 방법을 수행하게 하는 명령어가 저장된 메모리
    를 포함하는, 디바이스.
  14. 컴퓨터 프로그램 제품에 있어서,
    컴퓨터 저장 매체에 유형적으로 저장되고, 디바이스에 의해 실행될 때 상기 디바이스로 하여금 제 1 항 내지 제 12 항 중 어느 한 항의 방법을 수행하게 하는 기계 실행가능 명령어를 포함하는, 컴퓨터 프로그램 제품.
KR1020237040623A 2021-06-11 2022-05-11 이미지 코덱 KR20240021158A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN202110655980.9 2021-06-11
CN202110655980.9A CN115474045A (zh) 2021-06-11 2021-06-11 图像编解码
PCT/US2022/028653 WO2022260812A1 (en) 2021-06-11 2022-05-11 Image codec

Publications (1)

Publication Number Publication Date
KR20240021158A true KR20240021158A (ko) 2024-02-16

Family

ID=81927557

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020237040623A KR20240021158A (ko) 2021-06-11 2022-05-11 이미지 코덱

Country Status (9)

Country Link
EP (1) EP4352961A1 (ko)
JP (1) JP2024523004A (ko)
KR (1) KR20240021158A (ko)
CN (1) CN115474045A (ko)
AU (1) AU2022290496A1 (ko)
BR (1) BR112023025853A2 (ko)
CA (1) CA3220279A1 (ko)
IL (1) IL308885A (ko)
WO (1) WO2022260812A1 (ko)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111353592B (zh) * 2018-12-24 2022-12-02 上海寒武纪信息科技有限公司 数据处理方法、计算机系统及存储介质
CN112866697B (zh) * 2020-12-31 2022-04-05 杭州海康威视数字技术股份有限公司 视频图像编解码方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
BR112023025853A2 (pt) 2024-02-27
JP2024523004A (ja) 2024-06-25
CN115474045A (zh) 2022-12-13
EP4352961A1 (en) 2024-04-17
WO2022260812A1 (en) 2022-12-15
AU2022290496A1 (en) 2023-11-16
CA3220279A1 (en) 2022-12-15
IL308885A (en) 2024-01-01

Similar Documents

Publication Publication Date Title
Hu et al. Learning end-to-end lossy image compression: A benchmark
US11670010B2 (en) Data compression using conditional entropy models
JP7345650B2 (ja) 代替エンドツーエンドビデオコーディング
US11062210B2 (en) Method and apparatus for training a neural network used for denoising
US20210326710A1 (en) Neural network model compression
WO2019226429A1 (en) Data compression by local entropy encoding
JP7405989B2 (ja) マシン向け映像符号化における方法及び装置
WO2020062074A1 (en) Reconstructing distorted images using convolutional neural network
CN114900692A (zh) 视频流帧率调整方法及其装置、设备、介质、产品
KR20230028250A (ko) 강화 학습 기반 속도 제어
WO2021164323A1 (zh) 编码模式选择方法、装置、电子设备及计算机可读介质
WO2018120420A1 (zh) 一种基于模板匹配的预测方法及装置
KR20240021158A (ko) 이미지 코덱
WO2023169501A1 (en) Method, apparatus, and medium for visual data processing
WO2022253088A1 (zh) 编解码方法、装置、设备、存储介质、计算机程序及产品
WO2023169303A1 (zh) 编解码方法、装置、设备、存储介质及计算机程序产品
US20230379507A1 (en) Actively-learned context modeling for image compression
US20230237613A1 (en) Method for generating metadata, image processing method, electronic device, and program product
WO2023050433A1 (zh) 视频编解码方法、编码器、解码器及存储介质
CN117955502A (zh) 用于数据压缩和解压缩的方法、装置、设备和可读介质
WO2024129087A1 (en) Methods and systems for image compression with machine learning
KR20240004777A (ko) 압축 도메인에서의 컴퓨터 비전 작업 모델들의 온라인 훈련
WO2023278068A1 (en) Context-based image coding
CN117461055A (zh) 神经图像压缩中具有多模型选择的基于在线训练的编码器调谐
CN117242776A (zh) 压缩域中的多速率计算机视觉任务神经网络