KR102525584B1 - 공간 계층 레이트 할당 - Google Patents

공간 계층 레이트 할당 Download PDF

Info

Publication number
KR102525584B1
KR102525584B1 KR1020217002315A KR20217002315A KR102525584B1 KR 102525584 B1 KR102525584 B1 KR 102525584B1 KR 1020217002315 A KR1020217002315 A KR 1020217002315A KR 20217002315 A KR20217002315 A KR 20217002315A KR 102525584 B1 KR102525584 B1 KR 102525584B1
Authority
KR
South Korea
Prior art keywords
spatial
input signal
video input
layer
rate factor
Prior art date
Application number
KR1020217002315A
Other languages
English (en)
Other versions
KR20210022117A (ko
Inventor
마이클 호로위츠
라스무스 브랜트
Original Assignee
구글 엘엘씨
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 구글 엘엘씨 filed Critical 구글 엘엘씨
Priority to KR1020237013501A priority Critical patent/KR20230058541A/ko
Publication of KR20210022117A publication Critical patent/KR20210022117A/ko
Application granted granted Critical
Publication of KR102525584B1 publication Critical patent/KR102525584B1/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/124Quantisation
    • H04N19/126Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
    • H04N19/33Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability in the spatial domain
    • 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/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/136Incoming video signal characteristics or properties
    • 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
    • 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/176Methods 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 block, e.g. a macroblock
    • 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/18Methods 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 a set of transform coefficients
    • 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/186Methods 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 a colour or a chrominance component
    • 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/187Methods 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 a scalable video layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • 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)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

방법(400)은 스케일링된 비디오 입력 신호(120)에 대응하는 변환 계수들(226)을 수신하는 단계를 포함하며, 스케일링된 비디오 입력 신호(120)는 기본 계층(L0)을 포함하는 복수의 공간 계층들(L)을 포함한다. 방법은 또한, 스케일링된 비디오 입력 신호로부터의 프레임들의 샘플(SF)에 기반하여 공간 레이트 인자(332)를 결정하는 단계를 포함한다. 공간 레이트 인자는 스케일링된 비디오 입력 신호로부터 형성된 인코딩된 비트 스트림(204)의 각각의 공간 계층에서의 비트 레이트 를 결정하기 위한 것이다. 공간 레이트 인자는, 기본 계층의 변환 계수 당 비트들과 변환 계수 당 비트들의 평균(RL) 사이의 차이에 의해 표현된다. 방법은 또한, 공간 레이트 인자 및 프레임들의 샘플에 기반하여 비트 레이트를 각각의 공간 계층에 할당함으로써, 복수의 공간 계층들에 대한 왜곡을 감소시키는 단계를 포함한다.

Description

공간 계층 레이트 할당
[0001] 본 개시내용은 스케일러블(scalable) 비디오 코딩의 맥락에서의 공간 계층 레이트 할당에 관한 것이다.
[0002] 비디오가 넓은 범위의 애플리케이션들에서 점차 일반화됨에 따라, 비디오 스트림들은 애플리케이션에 의존하여 여러 번 인코딩 및/또는 디코딩될 필요가 있을 수 있다. 예컨대, 상이한 애플리케이션들 및/또는 디바이스들은 대역폭 또는 리소스 제약들을 따를 필요가 있을 수 있다. 엄청나게 비싸지 않으면서 세팅들의 여러가지 조합들을 요구하는 이러한 요구들을 충족시키기 위해, 비디오를 여러가지 해상도들로 압축하는 고효율 코덱들이 개발되었다. 스케일러블 VP9 및 H.264와 같은 코덱들의 경우, 비디오 비트스트림들은, 사용자가 상이한 해상도들(즉, 각각의 공간 계층의 해상도)로 오리지널 비디오를 재구성하게 허용하는 다수의 공간 계층들을 포함할 수 있다. 스케일러블 능력을 가짐으로써, 비디오 콘텐츠는 제한된 추가적인 프로세싱을 이용하여 디바이스로부터 디바이스로 전달될 수 있다.
[0003] 본 개시내용의 일 양상은 비트 레이트를 할당하기 위한 방법을 제공한다. 방법은, 데이터 프로세싱 하드웨어에서, 스케일링된 비디오 입력 신호에 대응하는 비-양자화된 변환 계수들을 수신하는 단계를 포함하며, 스케일링된 비디오 입력 신호는 복수의 공간 계층들을 포함하고, 복수의 공간 계층들은 기본 계층을 포함한다. 방법은 또한, 데이터 프로세싱 하드웨어에 의해, 스케일링된 비디오 입력 신호로부터의 샘플러에 의해 식별된 프레임들의 샘플에 기반하여 공간 레이트 인자를 결정하는 단계를 포함한다. 각각의 공간 계층에 대해 샘플들의 수는 상기 변환 계수들의 수와 동일하고, 공간 레이트 인자는 스케일링된 비디오 입력 신호로부터 형성된 인코딩된 비트 스트림의 각각의 공간 계층에서의 비트 레이트를 결정하기 위한 것이다. 공간 레이트 인자는, 기본 계층의 변환 계수 당 비트들과 복수의 공간 계층들에 대한 변환 계수 당 비트들의 평균 사이의 차이에 의해 표현된다. 방법은 또한, 공간 레이트 인자 및 프레임들의 샘플에 기반하여 비트 레이트를 각각의 공간 계층에 할당함으로써, 인코딩된 비트 스트림의 복수의 공간 계층들에 대한 왜곡을 감소시키는 단계를 포함한다.
[0004] 본 개시내용의 구현들은 다음의 선택적인 특징들 중 하나 이상을 포함할 수 있다. 일부 구현들에서, 방법은 또한, 데이터 프로세싱 하드웨어에서, 스케일링된 비디오 입력 신호로부터 프레임들의 샘플러에 의해 반복적으로 식별된 제2 샘플을 수신하는 단계; 데이터 프로세싱 하드웨어에 의해, 스케일링된 비디오 입력 신호로부터의 프레임들의 샘플러에 의해 반복적으로 식별된 프레임들의 제2 샘플에 기반하여 공간 레이트 인자를 수정하는 단계; 및 데이터 프로세싱 하드웨어에 의해, 수정된 공간 레이트 인자 및 프레임들의 제2 샘플에 기반하여 각각의 공간 계층에 수정된 비트 레이트를 할당하는 단계를 포함한다. 부가적인 구현들에서, 방법은 또한, 데이터 프로세싱 하드웨어에서, 스케일링된 비디오 입력 신호로부터 프레임들의 샘플러에 의해 반복적으로 식별된 프레임들의 제2 샘플을 수신하는 단계; 데이터 프로세싱 하드웨어에 의해 프레임 단위 기반으로, 지수 이동 평균에 기반하여 공간 레이트 인자를 수정하는 단계 - 지수 이동 평균은 적어도, 프레임들의 샘플 및 프레임들의 제2 샘플에 대한 것임 -; 및 데이터 프로세싱 하드웨어에 의해, 수정된 공간 레이트 인자에 기반하여 각각의 공간 계층에 수정된 비트 레이트를 할당하는 단계를 포함한다.
[0005] 일부 예들에서, 스케일링된 비디오 입력 신호를 수신하는 단계는, 비디오 입력 신호를 수신하는 단계, 비디오 입력 신호를 복수의 공간 계층들로 스케일링하는 단계, 각각의 공간 계층을 서브-블록들로 분할하는 단계, 각각의 서브-블록을 변환 계수들로 변환하는 단계, 및 각각의 서브-블록에 대응하는 변환 계수들을 스칼라 양자화하는 단계를 포함한다. 스케일링된 비디오 입력 신호로부터의 샘플러에 의해 식별된 프레임들의 샘플에 기반하여 공간 레이트 인자를 결정하는 단계는, 비디오 입력 신호의 프레임들의 모든 변환 블록들에 걸친 평균에 기반하여 각각의 스칼라 양자화된 변환 계수의 분산 추정들을 결정하는 단계를 포함할 수 있다. 여기서, 각각의 서브-블록의 변환 계수들은 모든 서브-블록들에 걸쳐 동일하게 분포될 수 있다.
[0006] 일부 구현들에서, 방법은 또한, 데이터 프로세싱 하드웨어에 의해, 공간 레이트 인자가 공간 레이트 인자 임계치 내에 있다고 결정하는 단계를 포함한다. 이들 구현들에서, 공간 레이트 인자 임계치는 약 1.0보다 작고 약 0.5보다 크다. 공간 레이트 인자는 인코딩된 비트 스트림의 각각의 계층에 비트 레이트를 할당하도록 구성된 단일 파라미터를 포함할 수 있다. 일부 예들에서, 공간 레이트 인자는 분산들의 곱의 비율에 대응하는 가중된 합을 포함하며, 여기서 비율은 제1 공간 계층으로부터의 스칼라 양자화된 변환 계수들의 추정된 분산들에 기반한 분자 및 제2 공간 계층으로부터의 스칼라 양자화된 변환 계수들의 추정된 분산들에 기반한 분모를 포함한다.
[0007] 본 개시내용의 다른 양상은 비트 레이트를 할당하기 위한 시스템을 제공한다. 시스템은, 데이터 프로세싱 하드웨어 및 데이터 프로세싱 하드웨어와 통신하는 메모리 하드웨어를 포함한다. 메모리 하드웨어는, 데이터 프로세싱 하드웨어에 의해 실행될 때 데이터 프로세싱 하드웨어로 하여금 동작들을 수행하게 하는 명령들을 저장한다. 동작들은, 스케일링된 비디오 입력 신호에 대응하는 비-양자화된 변환 계수들을 수신하는 것을 포함하며, 스케일링된 비디오 입력 신호는 복수의 공간 계층들을 포함하고, 복수의 공간 계층들은 기본 계층을 포함한다. 동작들은 또한, 스케일링된 비디오 입력 신호로부터의 샘플러에 의해 식별된 프레임들의 샘플에 기반하여 공간 레이트 인자를 결정하는 것을 포함한다. 공간 레이트 인자는 스케일링된 비디오 입력 신호로부터 형성된 인코딩된 비트 스트림의 각각의 공간 계층에서의 비트 레이트를 결정하기 위한 것이다. 공간 레이트 인자는, 기본 계층의 변환 계수 당 비트들과 복수의 공간 계층들에 대한 변환 계수 당 비트들의 평균 사이의 차이에 의해 표현된다. 동작들은 또한, 공간 레이트 인자 및 프레임들의 샘플에 기반하여 비트 레이트를 각각의 공간 계층에 할당함으로써, 인코딩된 비트 스트림의 복수의 공간 계층들에 대한 왜곡을 감소시키는 것을 포함한다
[0008] 이러한 양상은 다음의 선택적인 특징들 중 하나 이상을 포함할 수 있다. 일부 구현들에서, 동작들은 또한, 스케일링된 비디오 입력 신호로부터 샘플러에 의해 반복적으로 식별된 프레임들의 제2 샘플을 수신하는 것; 스케일링된 비디오 입력 신호로부터의 샘플러에 의해 반복적으로 식별된 프레임들의 제2 샘플에 기반하여 공간 레이트 인자를 수정하는 것; 및 수정된 공간 레이트 인자 및 프레임들의 제2 샘플에 기반하여 각각의 공간 계층에 수정된 비트 레이트를 할당하는 것을 포함한다. 부가적인 구현들에서, 동작들은 또한, 스케일링된 비디오 입력 신호로부터 샘플러에 의해 반복적으로 식별된 프레임들의 제2 샘플을 수신하는 것; 프레임 단위 기반으로, 지수 이동 평균에 기반하여 공간 레이트 인자를 수정하는 것 - 지수 이동 평균은 적어도, 프레임들의 샘플 및 프레임들의 제2 샘플에 대한 것임 -; 및 데이터 프로세싱 하드웨어에 의해, 수정된 공간 레이트 인자에 기반하여 각각의 공간 계층에 수정된 비트 레이트를 할당하는 것을 포함한다.
[0009] 일부 예들에서, 스케일링된 비디오 입력 신호를 수신하는 것은, 비디오 입력 신호를 수신하는 것, 비디오 입력 신호를 복수의 공간 계층들로 스케일링하는 것, 각각의 공간 계층을 서브-블록들로 분할하는 것, 각각의 서브-블록을 변환 계수들로 변환하는 것, 및 각각의 서브-블록에 대응하는 변환 계수들을 스칼라 양자화하는 것을 포함한다. 스케일링된 비디오 입력 신호로부터의 샘플러에 의해 식별된 프레임들의 샘플에 기반하여 공간 레이트 인자를 결정하는 것은, 비디오 입력 신호의 프레임들의 모든 변환 블록들에 걸친 평균에 기반하여 각각의 스칼라 양자화된 변환 계수의 분산 추정들을 결정하는 것을 포함할 수 있다. 여기서, 각각의 서브-블록의 변환 계수들은 모든 서브-블록들에 걸쳐 동일하게 분포될 수 있다.
[0010] 일부 구현들에서, 동작들은 또한 공간 레이트 인자가 공간 레이트 인자 임계치 내에 있다고 결정하는 것을 포함한다. 이들 구현들에서, 공간 레이트 인자 임계치는 약 1.0보다 작고 약 0.5보다 크다. 공간 레이트 인자는 인코딩된 비트 스트림의 각각의 계층에 비트 레이트를 할당하도록 구성된 단일 파라미터를 포함할 수 있다. 일부 예들에서, 공간 레이트 인자는 분산들의 곱의 비율에 대응하는 가중된 합을 포함하며, 여기서 비율은 제1 공간 계층으로부터의 스칼라 양자화된 변환 계수들의 추정된 분산들에 기반한 분자 및 제2 공간 계층으로부터의 스칼라 양자화된 변환 계수들의 추정된 분산들에 기반한 분모를 포함한다.
[0011] 본 개시내용의 하나 이상의 구현들의 세부사항들은 첨부한 도면들 및 아래의 설명에서 기재된다. 다른 양상들, 특징들, 및 장점들은 설명 및 도면들, 그리고 청구항들로부터 명백할 것이다.
[0012] 도 1은 예시적인 레이트 할당 시스템의 개략도이다.
[0013] 도 2는 도 1의 레이트 할당 시스템 내의 예시적인 인코더의 개략도이다.
[0014] 도 3은 도 1의 레이트 할당 시스템 내의 예시적인 할당기의 개략도이다.
[0015] 도 4는 레이트 할당 시스템을 구현하기 위한 예시적인 방법의 흐름도이다.
[0016] 도 5는 본 명세서에 설명된 시스템들 및 방법들을 구현하는 데 사용될 수 있는 예시적인 컴퓨팅 디바이스의 개략도이다.
[0017] 다양한 도면들에서 유사한 참조 부호들은 유사한 엘리먼트들을 표시한다.
[0018] 도 1은 레이트 할당 시스템(100)의 일 예이다. 레이트 할당 시스템(100)은 일반적으로, 캡처된 비디오를 비디오 입력 신호(120)로서 네트워크(130)를 통해 원격 시스템(140)에 통신하는 비디오 소스 디바이스(110)를 포함한다. 원격 시스템(140)에서, 인코더(200) 및 할당기(300)는 비디오 입력 신호(120)를 인코딩된 비트 스트림(204)으로 변환한다. 인코딩된 비트 스트림(204)은 하나 초과의 공간 계층(L0-i)을 포함하며, 여기서 i는 공간 계층들(L0-i)의 수를 지정한다. 각각의 공간 계층(L)은 인코딩된 비트 스트림(204)의 스케일러블 형태이다. 스케일러블 비디오 비트 스트림은, 일부 타겟 디코더에 대한 유효 비트 스트림을 형성하는 서브-스트림(예컨대, 공간 계층(L))을 초래하는 방식으로 비트 스트림의 일부들이 제거될 수 있는 비디오 비트 스트림을 지칭한다. 더 구체적으로, 서브-스트림은, 오리지널 캡처된 비디오의 품질보다 낮은 재구성 품질로 오리지널 비디오 입력 신호(120)의 소스 콘텐츠(예컨대, 캡처된 비디오)를 표현한다. 예컨대, 제1 공간 계층(L1)은 1280×720의 720p HD(high definition) 해상도를 갖는 반면, 기본 계층(L0)은 VGA(video graphics adapter resolution)의 확장된 형태로서 640×360의 해상도로 스케일링된다. 스케일러비티(scalability)의 측면들에서, 일반적으로 비디오는 시간적으로(예컨대, 프레임 레이트에 의해), 공간적으로(예컨대, 공간 해상도에 의해), 그리고/또는 품질에 의해(예컨대, SNR(signal-to-noise-ratio)로 종종 지칭되는 충실도(fidelity)에 의해) 스케일러블할 수 있다.
[0019] 레이트 할당 시스템(100)은, 사용자(10, 10a)가 비디오 소스 디바이스(110)에서 비디오를 캡처하고 캡처된 비디오를 다른 사용자들(10, 10b 및 10c)에게 통신하는 예시적인 환경이다. 여기서, 사용자들(10b, 10c)이 캡처된 비디오를 비디오 수신 디바이스들(150, 150b 및 150c)을 통해 수신하기 전에, 인코더(200) 및 할당기(300)는 할당된 비트 스트림 레이트로, 캡처된 비디오를 인코딩된 비트 스트림(204)으로 변환한다. 각각의 비디오 수신 디바이스(150)는 상이한 비디오 해상도들을 수신 및/또는 프로세싱하도록 구성될 수 있다. 여기서, 더 큰 계층 넘버(i)를 갖는 공간 계층(L)은 더 큰 해상도를 갖는 계층(L)을 지칭하므로, i=0은 하나 초과의 공간 계층(L0-i)의 비트 스트림 내에서 가장 작은 스케일러블 해상도를 갖는 기본 계층(L0)을 지칭한다. 도 1을 참조하면, 인코딩된 비디오 비트 스트림(204)은 2개의 공간 계층들(L0, L1)을 포함한다. 이와 같이, 하나의 비디오 수신 디바이스(150)는 비디오 콘텐츠를 더 낮은 해상도 공간 계층(L0)으로서 수신할 수 있는 반면, 다른 비디오 수신 디바이스(150)는 비디오 콘텐츠를 더 높은 해상도 공간 계층(L1)으로서 수신할 수 있다. 예컨대, 도 1은, 랩톱으로서 제2 수신 디바이스(150b)를 갖는 사용자(10c)가 더 높은 해상도 공간 계층(L1)을 수신하는 동안, 사용자(10b)의 제1 비디오 수신 디바이스(150a)를 더 낮은 공간 해상도 계층(L0)을 수신하는 셀 폰으로서 묘사한다.
[0020] 상이한 비디오 수신 디바이스들(150a 및 150b)이 상이한 공간 계층들(L0-i)을 수신할 때, 각각의 공간 계층(L)의 비디오 품질은 수신된 공간 계층(L)의 비트 레이트(BR) 및/또는 할당 인자(AF)에 의존할 수 있다. 여기서, 비트 레이트(BR)는 초당 비트들에 대응하고, 할당 인자(AF)는 샘플 당 비트들(즉, 변환 계수)에 대응한다. 스케일러블 비트 스트림(예컨대, 인코딩된 비트 스트림(204))의 경우, 스케일러블 비트 스트림에 대한 총 비트 레이트(BRtot)는 종종 제약되어, 스케일러블 비트 스트림의 각각의 공간 계층(L)은 유사한 비트 레이트 제약들을 겪는다. 이들 제약들로 인해, 하나의 공간 계층(L)과 연관된 비트 레이트(BR)는 다른 공간 계층(L)의 품질을 손상시키거나 트레이드오프(tradeoff)할 수 있다. 더 구체적으로, 비디오 수신 디바이스(150)를 통하여 사용자(10)에 의해 수신된 공간 계층(L)에 대한 품질이 손상되면, 품질은 사용자 경험에 부정적인 영향을 생성할 수 있다. 예컨대, RTC(real-time communication) 애플리케이션들을 통한 통신의 형태로 비디오 콘텐츠를 전달하는 것이 더 일반화되고 있다. RTC 애플리케이션의 사용자(10)는 종종, 애플리케이션의 주관적인 품질에 기반하여 통신을 위한 애플리케이션을 선택할 수 있다. 따라서, 애플리케이션 사용자로서, 사용자(10)는 일반적으로, 애플리케이션 사용자(10)가 수신하는 공간 계층(L)에 대한 부적절한 비트 레이트 할당으로부터 기인할 수 있는 품질 문제들 없이 긍정적인 통신 경험을 갖기를 원한다. 긍정적인 사용자 경험을 보장하는 것을 돕기 위해, 할당기(300)는, 다수의 공간 계층들(L0-i) 사이의 각각의 공간 계층(L)에 대한 비트 레이트(BR)를 결정하기 위해 할당 인자(AF)를 적응적으로 통신하도록 구성된다. 다수의 공간 계층들(L0-i) 사이에 할당 인자들(AF)을 분석적으로 할당함으로써, 할당기(300)는 주어진 총 비트 레이트(BRtot)에 대해 모든 공간 계층들(L0-i)에 걸쳐 가장 높은 비디오 품질을 달성하게 돕는다.
[0021] 비디오 소스 디바이스(110)는, 캡처된 비디오 및/또는 비디오 입력 신호들(120)을 네트워크(130) 및/또는 원격 시스템(140)에 통신할 수 있는 임의의 컴퓨팅 디바이스들 또는 데이터 프로세싱 하드웨어일 수 있다. 일부 예들에서, 비디오 소스 디바이스(110)는 데이터 프로세싱 하드웨어(112), 메모리 하드웨어(114), 및 비디오 캡처 디바이스(116)를 포함한다. 일부 구현들에서, 비디오 캡처 디바이스(116)는 실제로, 캡처된 이미지들의 시퀀스를 비디오 콘텐츠로서 통신할 수 있는 이미지 캡처 디바이스이다. 예컨대, 일부 디지털 카메라들 및/또는 웹캠(webcam)들은 인지된 비디오 콘텐츠를 형성하기 위해 특정한 빈도로 이미지들을 캡처하도록 구성된다. 다른 예들에서, 비디오 소스 디바이스(110)는, 후속하여 디지털 포맷으로 변환될 수 있는 연속적인 아날로그 형태로 비디오를 캡처한다. 일부 구성들에서, 비디오 소스 디바이스(110)는, 캡처된 데이터(예컨대, 아날로그 또는 디지털)를 인코더(200)에 의해 추가로 프로세싱되는 포맷으로 초기에 인코딩 또는 압축하기 위한 인코더를 포함한다. 다른 예들에서, 비디오 소스 디바이스(110)는 비디오 소스 디바이스(110)에서 인코더(200)에 액세스하도록 구성된다. 예컨대, 인코더(200)는, 원격 시스템(140) 상에서 호스팅되지만 비디오 소스 디바이스(110)에 의해 네트워크 연결을 통하여 액세스가능한 웹 애플리케이션이다. 또 다른 예들에서, 인코더(200) 및/또는 할당기(300) 중 일부 또는 전부는 비디오 소스 디바이스(110) 상에서 호스팅된다. 예컨대, 인코더(200) 및 할당기(300)는 비디오 소스 디바이스(110) 상에서 호스팅되지만, 원격 시스템(140)은, 비디오 수신 디바이스(들)(150)의 디코딩 능력들, 및 비디오 수신 디바이스(들)(150)와 원격 시스템(140) 사이의 네트워크(130)의 연결 용량에 따라, 공간 계층들(L0-i)을 포함하는 비트 스트림을 비디오 수신 디바이스(들)(150)로 중계하는 후단(backend) 시스템으로서 기능한다. 부가적으로 또는 대안적으로, 비디오 소스 디바이스(110)는, 사용자(10a)가 비디오 캡처 디바이스(116)를 이용하여 네트워크(130)를 통한 다른 사용자(10b 및 10c)와의 통신에 관여할 수 있도록 구성된다.
[0022] 비디오 입력 신호(120)는 캡처된 비디오 콘텐츠에 대응하는 비디오 신호이다. 여기서, 비디오 소스 디바이스(110)는 비디오 콘텐츠를 캡처한다. 예컨대, 도 1은 비디오 소스 디바이스(110)가 웹캠(116)을 통해 비디오 콘텐츠를 캡처하는 것을 묘사한다. 일부 예들에서, 비디오 입력 신호(120)는 인코더(200)에 의해 디지털 포맷으로 프로세싱되는 아날로그 신호이다. 다른 예들에서, 비디오 입력 신호(120)는 인코더(200) 이전에 일부 레벨의 인코딩 또는 디지털 포맷팅을 경험하여, 인코더(200)는 재양자화 프로세스를 수행한다.
[0023] 비디오 소스 디바이스(110)와 매우 유사하게, 비디오 수신 디바이스(150)는, 네트워크(130) 및/또는 원격 시스템(140)을 통해, 통신된 캡처된 비디오를 수신할 수 있는 임의의 컴퓨팅 디바이스들 또는 데이터 프로세싱 하드웨어일 수 있다. 일부 예들에서, 비디오 수신 디바이스(150)는 비디오 소스 디바이스(110)가 될 수 있고 비디오 소스 디바이스(110)는 비디오 수신 디바이스(150)가 될 수 있도록, 비디오 소스 디바이스(110) 및 비디오 수신 디바이스(150)는 동일한 기능으로 구성된다. 어느 경우든, 비디오 수신 디바이스(150)는 적어도, 데이터 프로세싱 하드웨어(152) 및 메모리 하드웨어(154)를 포함한다. 부가적으로, 비디오 수신 디바이스(150)는 수신된 비디오 콘텐츠(예컨대, 인코딩된 비트 스트림(204)의 적어도 하나의 계층(L))를 디스플레이하도록 구성된 디스플레이(156)를 포함한다. 도 1에 도시된 바와 같이, 사용자(10b, 10c)는 인코딩된 비트 스트림(204)을 공간 계층(L)으로서 비트 레이트(BR)로 수신하고, 인코딩된 비트 스트림(204)을 디코딩하여 디스플레이(156) 상에 비디오로서 디스플레이한다. 일부 예들에서, 비디오 수신 디바이스(150)는 디코더를 포함하거나, 또는 비디오 수신 디바이스(150)가 인코딩된 비트 스트림(204)의 콘텐츠를 디스플레이하게 허용하기 위해 (예컨대, 네트워크(130)를 통해) 디코더에 액세스하도록 구성된다.
[0024] 일부 예들에서, 인코더(200) 및/또는 할당기(300)는, 비디오 소스 디바이스(110) 및/또는 비디오 수신 디바이스(150)를 통해 액세스되는 원격 시스템(140), 이를테면 클라우드 환경의 분산형 시스템에 의해 호스팅되는 애플리케이션이다. 일부 구현들에서, 인코더(200) 및/또는 할당기(300)는, 비디오 소스 디바이스(110) 및/또는 비디오 수신 디바이스(150)의 메모리 하드웨어(114, 154)로 다운로드된 애플리케이션이다. 인코더(200) 및/또는 할당기(300)에 대한 액세스 포인트와 관계없이, 인코더(200) 및/또는 할당기(300)는 리소스들(142)(예컨대, 데이터 프로세싱 하드웨어(144), 메모리 하드웨어(146), 또는 소프트웨어 리소스들(148))에 액세스하기 위해 원격 시스템(140)과 통신하도록 구성될 수 있다. 원격 시스템(140)의 리소스들(142)에 대한 액세스는 인코더(200) 및/또는 할당기(300)가 비디오 입력 신호(120)를 인코딩된 비트 스트림(204)으로 인코딩하고 그리고/또는 인코딩된 비트 스트림(204)의 하나 초과의 공간 계층(L0-i)의 각각의 공간 계층(L)에 비트 레이트(BR)를 할당하게 허용할 수 있다. 선택적으로, 사용자들(10, 10a 내지 10c) 사이에서 통신하는 데 사용되는 원격 시스템(140)의 소프트웨어 리소스(148)로서 RTC(real time communication) 애플리케이션은 인코더(200) 및/또는 할당기(300)를 내장형 기능으로서 포함한다.
[0025] 도 1을 더 상세히 참조하면, 3명의 사용자들(10, 10a 내지 10c)은 원격 시스템(140)에 의해 호스팅된 RTC 애플리케이션(예컨대, 클라우드에 의해 호스팅된 WebRTC 비디오 애플리케이션)을 통해 통신한다. 이러한 예에서, 제1 사용자(10a)는 제2 사용자(10b) 및 제3 사용자(10c)와 그룹 비디오 채팅한다. 제1 사용자(10a)가 말하는 비디오를 비디오 캡처 디바이스(116)가 캡처함에 따라, 비디오 입력 신호(120)를 통한 캡처된 비디오는 인코더(200) 및 할당기(300)에 의해 프로세싱되고, 네트워크(130)를 통해 통신된다. 여기서, 인코더(200) 및 할당기(300)는 하나 초과의 공간 계층(L0, L1)을 갖는 인코딩된 비트 스트림(204)을 생성하기 위해 RTC 애플리케이션과 함께 동작하며, 여기서 각각의 공간 계층(L)은 비디오 입력 신호(120)에 기반하여 할당 인자들(AF0, AF1)에 의해 결정되는 할당된 비트 레이트(BR0, BR1)를 갖는다. 각각의 비디오 수신 디바이스(150a, 150b)의 능력들로 인해, 제1 사용자(10a)가 채팅하는 비디오를 수신하는 각각의 사용자(10b, 10c)는 비디오 입력 신호(120)에 대응하는 오리지널 비디오의 상이한 스케일링된 버전을 수신한다. 예컨대, 제2 사용자(10b)는 기본 공간 계층(L0)을 수신하는 반면, 제3 사용자(10c)는 제1 공간 계층(L1)을 수신한다. 각각의 사용자(10b, 10c)는 RTC 애플리케이션과 통신하는 디스플레이(156a, 156b) 상에, 수신된 비디오 콘텐츠를 디스플레이하도록 진행한다. RTC 통신 애플리케이션이 도시되지만, 인코더(200) 및/또는 할당기(300)는 하나 초과의 공간 계층(L0-i)을 갖는 인코딩된 비트 스트림들(204)을 수반하는 다른 애플리케이션들에서 사용될 수 있다.
[0026] 도 2는 인코더(200)의 일 예이다. 인코더(200)는 입력(202)으로서의 비디오 입력 신호(120)를 출력(204)으로서의 인코딩된 비트 스트림으로 변환하도록 구성된다. 개별적으로 묘사되었지만, 인코더(200) 및 할당기(300)는 (예컨대, 도 1의 점선으로 도시된 바와 같이) 단일 디바이스로 통합되거나 또는 다수의 디바이스들(예컨대, 비디오 입력 디바이스(110), 비디오 수신 디바이스(150), 또는 원격 시스템(140))에 걸쳐 별개로 발생할 수 있다. 인코더(200)는 일반적으로, 스케일러(210), 변환기(220), 양자화기(230), 및 엔트로피 인코더(240)를 포함한다. 도시되지는 않았지만, 인코더(200)는 인코딩된 비트 스트림(204)을 생성하기 위한 부가적인 컴포넌트들, 이를테면 예측 컴포넌트(예컨대, 모션 추정 및 인트라(intra) 예측) 및/또는 인-루프(in-loop) 필터를 포함할 수 있다. 예측 컴포넌트는 변환을 위해 변환기(220)에 통신될 잔여를 생성할 수 있으며, 여기서 잔여는 오리지널 입력 프레임 빼기 (예컨대, 모션 보상되거나 인트라-프레임 예측된) 프레임의 예측의 차이에 기반한다.
[0027] 스케일러(210)는 비디오 입력 신호(120)를 복수의 공간 계층들(L0-i)로 스케일링하도록 구성된다. 일부 구현들에서, 스케일러(210)는, 공간 해상도를 감소시키기 위해 제거될 수 있는 비디오 입력 신호(120)의 부분들을 결정함으로써 비디오 입력 신호(120)를 스케일링한다. 부분 또는 부분들을 제거함으로써, 스케일러(210)는 비디오 입력 신호(120)의 버전들을 형성하여, 복수의 공간 계층들(예컨대, 서브스트림들)을 형성한다. 스케일러(210)는, 스케일러(210)가 기본 공간 계층(L0)을 형성할 때까지 이러한 프로세스를 반복할 수 있다. 일부 예들에서, 스케일러(210)는 세팅된 수의 공간 계층들(L0-i)을 형성하기 위해 비디오 입력 신호(120)를 스케일링한다. 다른 예들에서, 스케일러(210)는, 스케일러(210)가 서브스트림을 디코딩하기 위한 어떠한 디코더도 존재하지 않는다고 결정할 때까지 비디오 입력 신호(120)를 스케일링하도록 구성된다. 스케일러(210)가 비디오 입력 신호(120)의 스케일링된 버전에 대응하는 서브스트림을 디코딩하기 위한 어떠한 디코더도 존재하지 않는다고 결정할 때, 스케일러(210)는 이전 버전(예컨대, 공간 계층(L))을 기본 공간 계층(L0)으로서 식별한다. 스케일러들(210)의 일부 예들은 H.264 비디오 압축 표준의 확장 또는 VP9 코딩 포맷의 확장과 같은 SVC(scalable video coding) 확장들에 대응하는 코덱들을 포함한다.
[0028] 변환기(220)는 스케일러(210)로부터 비디오 입력 신호(120)에 대응하는 각각의 공간 계층(L)을 수신하도록 구성된다. 각각의 공간 계층(L)에 대해, 변환기(220)는 동작(222)에서, 각각의 공간 계층(L)을 서브-블록들로 분할한다. 각각의 서브-블록의 경우, 동작(224)에서, 변환기(220)는 (예컨대, DCT(discrete cosine transform)에 의해) 변환 계수들(226)을 생성하기 위해 각각의 서브-블록을 변환한다. 변환 계수들(226)을 생성함으로써, 변압기(220)는 인코더(200)에 의한 중복(redundant) 비디오 데이터의 제거를 보조하기 위해 중복 비디오 데이터와 비-중복 비디오 데이터를 상관시킬 수 있다. 일부 구현들에서, 변환 계수들은 또한, 할당기(300)가 공간 계층(L)에서 비-제로 분산을 이용하여 변환 블록 당 계수들의 수를 쉽게 결정하게 허용한다.
[0029] 양자화기(230)는 양자화 또는 재양자화 프로세스(232)(즉, 스칼라 양자화)를 수행하도록 구성된다. 양자화 프로세스는 일반적으로, (예컨대, 연속적인 아날로그 데이터 세트로부터의) 입력 파라미터들을 출력 값들의 더 작은 데이터 세트로 변환한다. 양자화 프로세스가 아날로그 신호를 디지털 신호로 변환할 수 있지만, 여기서, 양자화 프로세스(232)(때때로, 재양자화 프로세스로 또한 지칭됨)는 통상적으로 디지털 신호를 추가로 프로세싱한다. 비디오 입력 신호(120)의 형태에 의존하여, 어느 하나의 프로세스가 상호교환가능하게 사용될 수 있다. 양자화 또는 재양자화 프로세스를 사용함으로써, 데이터는 압축될 수 있지만, 더 작은 데이터 세트가 더 큰 또는 연속적인 데이터 세트의 감소이기 때문에, 데이터 손실의 일부 양상이 발생한다. 여기서, 양자화 프로세스(232)는 디지털 신호를 변환한다. 일부 예들에서, 양자화기(230)는, 변환기(220)로부터의 각각의 서브-블록의 비-양자화된 변환 계수들(226)을 양자화 인덱스들(234)로 스칼라 양자화함으로써, 인코딩된 비트 스트림(204)의 형성에 기여한다. 여기서, 비-양자화된 변환 계수들(226)을 스칼라 양자화하는 것은, 중복 비디오 데이터(예컨대, 인코딩 동안 제거될 수 있는 데이터)를 가치있는 비디오 데이터(예컨대, 제거되지 않아야 하는 데이터)와 대조하기 위해, 손실 인코딩이 각각의 비-양자화된 변환 계수(226)를 스케일링하게 허용할 수 있다.
[0030] 엔트로피 인코더(240)는 양자화 인덱스들(234)(즉, 양자화된 변환 계수들) 및 사이드(side) 정보를 비트들로 변환하도록 구성된다. 이러한 변환에 의해, 엔트로피 인코더(240)는 인코딩된 비트 스트림(204)을 형성한다. 일부 구현들에서, 엔트로피 인코더(240)는 양자화기(230)와 함께, 인코더(200)가 인코딩된 비트 스트림(204)을 형성할 수 있게 하며, 여기서 각각의 계층(L0-i)은 할당기(300)에 의해 결정된 할당 인자(AF0-i)에 기반한 비트 레이트(BR0-i)를 갖는다.
[0031] 도 3은 할당기(300)의 일 예이다. 할당기(300)는, 하나 초과의 공간 계층(L0-i)에 관련된 비-양자화된 변환 계수들(226)을 수신하고, 각각의 수신된 공간 계층(L0-i)에 대한 할당 인자(AF)를 결정하도록 구성된다. 일부 구현들에서, 할당기(300)는 스칼라 양자화를 위한 제곱-에러(square-error) 기반 높은 레이트 근사에 기반하여 각각의 할당 인자(AF)를 결정한다. 제곱-에러 높은 레이트 근사는 시스템이 다수(N개)의 스칼라 양자화기들에 대해 할당할 (높은-레이트 근사의 맥락에서) 최적의 비트 레이트를 결정하게 허용한다. 통상적으로, N개의 스칼라 양자화기들에 대해 할당할 최적의 비트 레이트는 레이트-왜곡 최적화 양자화에 의해 결정된다. 레이트-왜곡 최적화는, 비트 레이트 제약(예컨대, 총 비트 레이트(BRtot))의 대상이 되는 왜곡(즉, 비디오 품질의 손실)의 양을 최소화함으로써 비디오 압축 동안 비디오 품질을 개선시키는 것을 추구한다. 여기서, 할당기(300)는 인코딩된 비트 스트림(204)의 하나 초과의 공간 계층(L0-i) 각각에 비트 레이트를 할당하기 위한 최적의 할당 인자를 결정하기 위해 N개의 스칼라 양자화기들에 대한 최적의 비트 레이트를 결정하는 원리들을 적용한다.
[0032] 일반적으로 말하면, 스칼라 양자화에 대한 제곱-에러 높은-레이트 근사는 다음의 수학식에 의해 표현될 수 있으며:
Figure 112021008930210-pct00001
여기서,
Figure 112021008930210-pct00002
는 i번째 양자화기에 대한 입력 신호(예컨대, 변환 계수들)의 소스 분포에 의존하고,
Figure 112021008930210-pct00003
는 그 신호의 분산이며, ri는 입력 심볼 당 비트들의 단위의 i번째 양자화기에 대한 비트 레이트이다. 2개의 스칼라 양자화기들에 대한 최적의 레이트 할당을 위한 표현은 제곱-에러 높은-레이트 근사를 사용하여 아래에서 도출된다.
[0033] 2-양자화기 문제에 대한 평균 왜곡(D), 즉 D2
Figure 112021008930210-pct00004
와 동일하다. 유사하게, 2-양자화기 문제에 대한 평균 레이트(R2)는
Figure 112021008930210-pct00005
와 동일하다. 여기서, di는 i번째 양자화기로 인한 제곱-에러 왜곡이고, ri는 샘플 당 비트들의 단위로 i번째 양자화기에 할당된 비트 레이트이다. 그러나, 파라미터(di)는 레이트(ri)의 함수이므로, di(ri)와 같은 수학식이 적절할 것이며; 편의를 위해, di는 간단히 di로 대신 표현된다. d0 및 di에 대한 높은-레이트 근사를 D2에 대한 수학식에 대입하는 것은 다음을 산출한다:
Figure 112021008930210-pct00006
수학식 (2)를 이용하면, 2R2 - r0가 r1에 대해 대입되어 다음을 산출할 수 있다:
Figure 112021008930210-pct00007
r0에 관해 D2의 미분을 추가로 취함으로써, 수학식 (3)은 다음의 표현을 산출한다:
Figure 112021008930210-pct00008
위의 표현, 즉 수학식 (4)를 제로와 동일하게 세팅하고 r0을 해결하는 것은 다음과 같이 표현되는 제로 양자화기에 대한 최적의 레이트 r*에 대한 표현을 초래한다:
Figure 112021008930210-pct00009
[0034] 높은-레이트 왜곡에 대한 표현이 볼록(convex)하기 때문에, 미분을 제로로 세팅함으로써 발견되는 최소치는 전역(global)이다. 유사하게, 제1 양자화기에 대한 최적의 레이트 r*는 다음과 같이 표현될 수 있다:
Figure 112021008930210-pct00010
[0035] 최적의 양자화기 왜곡
Figure 112021008930210-pct00011
Figure 112021008930210-pct00012
을 발견하기 위해, 수학식들 (5) 및 (6)은 다음과 같이 최적의 레이트에 대해, 스칼라 양자화기 왜곡에 대한 개개의 높은-레이트 표현들에 대입된다:
Figure 112021008930210-pct00013
단순화된 형태의 수학식 (7)이 다음의 수학식을 산출한다:
Figure 112021008930210-pct00014
[0036] 이러한 동일한 2-양자화기 분석은, 제로 양자화기와 제1 양자화기를 단일 양자화 시스템(즉, 네스팅된(nested) 시스템)으로 결합함으로써 3개의 양자화기들로 확장될 수 있으며, 여기서 결합된 양자화기는 수학식들 (1) 내지 (8)에 따라 이미 해결된다. 2-양자화기 레이트 할당과 유사한 방법을 사용하여, 3-양자화기 시스템이 다음과 같이 도출된다.
[0037] 2-양자화기 시스템에 대한 평균 양자화기당 왜곡이
Figure 112021008930210-pct00015
로 표현되므로,
Figure 112021008930210-pct00016
를 평균 3-양자화기 왜곡에 대한 표현에 대입함으로써,
Figure 112021008930210-pct00017
이 다음의 수학식을 산출한다:
Figure 112021008930210-pct00018
[0038] 유사하게, 3-양자화기 시스템에 대한 평균 레이트는 다음과 같이 표현된다:
Figure 112021008930210-pct00019
[0039] 수학식 (8)에 나타낸 바와 같이 2-양자화기 분석으로부터의 최적의 왜곡에 대한 결과를 이용하여, 결과적으로, 3-양자화기 왜곡은 다음의 수학식에 의해 표현될 수 있다:
Figure 112021008930210-pct00020
따라서, 수학식 (11)이 단순화되고
Figure 112021008930210-pct00021
가 수학식 (11)에 대입될 때, 수학식 (11)은 다음의 표현으로 변환된다:
Figure 112021008930210-pct00022
[0040] 수학식 (12)를 이용하면, r2에 대한 미분은 제로로 세팅되고 r2에 대해 해결되어, 다음의 수학식을 산출할 수 있다:
Figure 112021008930210-pct00023
3개의 양자화기들의 경우, 수학식 (13)의 더 일반적인 표현은 다음과 같이 표현될 수 있다:
Figure 112021008930210-pct00024
[0041] 제1 및 제2 양자화기들에 기반하여, N개의 양자화기들에 대한 최적의 레이트 할당 r*에 대한 표현이 도출될 수 있다. i번째 양자화기에 대한 최적의 레이트에 대한 표현은 다음과 같다:
Figure 112021008930210-pct00025
최적의 레이트에 대한 표현을 왜곡에 대한 높은-레이트 표현에 대입하고 2-양자화기 표현들과 유사하게 단순화함으로써, N개의 양자화기들의 관점들에서 최적의 왜곡에 대한 결과적인 표현이 아래에서 나타난다.
Figure 112021008930210-pct00026
[0042] 수학식들 (1) 내지 (16)으로부터의 도출된 표현들에 기반하여, 할당기(300)는 복수의 공간 계층들(L0-i)의 각각의 계층(L)에 대한 최적의 할당 인자(AF)(즉, 최적의 비트 레이트(BR)에 기여함)를 결정하기 위해 최적의 왜곡에 대한 이들 표현들을 적용할 수 있다. 도출된 N개의 양자화기 표현들과 유사하게, 다수의 공간 계층 비트 레이트들은 2 및 3 계층 레이트 할당 시스템과 연관된 표현들로부터 추론될 수 있다. 일부 예들에서, 공간 계층들(L0-i)이 통상적으로 상이한 공간 치수들을 갖지만, 공간 계층들(L0-i)이 동일한 비디오 소스(예컨대, 비디오 소스 디바이스(110))로부터 비롯된다고 가정된다. 일부 구현들에서, 제1 공간 계층(L0) 및 제2 공간 계층(L1)을 인코딩하는 스칼라 양자화기들은, 이들 스칼라 양자화기들의 값들이 상이할 수 있더라도 구조가 동일한 것으로 가정된다. 게다가, 각각의 공간 계층(L)에 대해, 샘플들의 수(S)는 일반적으로, 변환 계수들(226)의 수와 동일하다(즉, 또한 양자화기들의 수와 동일함).
[0043] 2-공간 계층 레이트 할당 시스템의 경우, 2-공간 계층들에 대한 평균 왜곡(D2)은 다음과 같이, 제1 및 제2 공간 계층(L0, L1)(즉, 공간 계층들(0 및 1))에 대응하는 평균 왜곡들의 가중된 합(d0 및 d1)으로 표현될 수 있으며:
Figure 112021008930210-pct00027
여기서, si는 i번째 공간 계층(Li) 내의 샘플들의 수와 동일하고, S = s0+s1이다 유사하게, 2-공간 계층들에 대한 평균 비트 레이트는 다음과 같이 표현될 수 있으며:
Figure 112021008930210-pct00028
여기서, r0 및 r1은 각각, 제1 및 제2 공간 계층(L0, L1)의 평균 비트 레이트들이다. N-양자화기의 최적의 왜곡에 대한 표현(즉, 수학식 (16))을 D2에 대한 위의 수학식 (17)에 대입함으로써, D2는 다음과 같이 표현될 수 있으며:
Figure 112021008930210-pct00029
여기서
Figure 112021008930210-pct00030
는 i번째 공간 계층(Li)의 j번째 스칼라 양자화기에 대한 입력 신호의 분산이다. 수학식 (18)에서 r1을 해결하고 그 결과를 수학식 (19)에 대입하는 것은 다음을 산출한다:
Figure 112021008930210-pct00031
더욱이, r0에 대한 D2의 미분을 제로로 세팅하고 r0을 해결함으로써, r0는 다음의 수학식에 의해 표현될 수 있다:
Figure 112021008930210-pct00032
표기의 편의를 위하여 수학식 (21)을 단순화하기 위해,
Figure 112021008930210-pct00033
이다. Pi에 대한 이러한 표현을
Figure 112021008930210-pct00034
에 대한 수학식 (21)에 대입하는 것 및 결과적인 항들을 재배열하는 것은 N-양자화기 할당 표현과 유사하게 나타나는 다음의 표현을 형성한다:
Figure 112021008930210-pct00035
대안적으로, 수학식 (22)은 다음의 수학식을 달성하기 위해
Figure 112021008930210-pct00036
의 항들로 표현될 수 있다:
Figure 112021008930210-pct00037
수학식들 (17) 내지 (23)에 기반하여, 최적의 2-공간-계층 왜곡은 다음과 같이 표현될 수 있다:
Figure 112021008930210-pct00038
[0044] 유사한 접근법은 3개의 공간 계층들(L0-2)에 적용되는 최적의 할당 인자를 개발할 수 있다. 2개의 공간 계층들(L0, L1)과 매우 유사하게, si는 i번째 공간 계층(Li) 내의 샘플들의 수와 동일하여, S=s0+s1+s2가 된다. 3-공간 계층들(L0-2)에 대한 평균 레이트 및 왜곡(R3 및 D3)은 각각, 다음과 같이 공간 계층들(0, 1, 및 2)(예컨대, 3개의 공간 계층들(L0-2))의 평균 레이트들 및 왜곡들(r0, r1, 및 r2 그리고 d0, d1, 및 d2)의 가중된 합으로 표현될 수 있다:
Figure 112021008930210-pct00039
Figure 112021008930210-pct00040
[0045] 유사한 기법들이 2-양자화기 결과들로부터 3개의 양자화기들로 적용될 때, R3은 다음의 수학식을 사용하여, 평균 2-계층 레이트(R2)의 조합으로 표현될 수 있다:
Figure 112021008930210-pct00041
Figure 112021008930210-pct00042
[0046] 유사하게, 3개의 양자화기들의 경우, 왜곡은 다음과 같이 표현될 수 있다:
Figure 112021008930210-pct00043
Figure 112021008930210-pct00044
2-계층 최적의 왜곡(
Figure 112021008930210-pct00045
)에 대한 수학식 (24) 및 최적의 N-양자화기 왜곡(
Figure 112021008930210-pct00046
)에 대한 수학식 (8)을 이용하면, 수학식 (29)는 D3에 대해 해결되어, 다음의 표현을 산출할 수 있으며:
Figure 112021008930210-pct00047
여기서,
Figure 112021008930210-pct00048
이다. 수학식 (27)은 R2에 대해 해결되어, 다음의 표현을 산출할 수 있다:
Figure 112021008930210-pct00049
더욱이, 수학식 (32)을 D3에 대한 수학식 (31)에 대입함으로써 수학식들 (31) 및 (32)를 결합하는 것은 다음의 수학식을 형성한다:
Figure 112021008930210-pct00050
r2에 대한 표현은 r2에 대해 D3의 미분을 취하고 그 결과를 제로와 동일하게 세팅함으로써 형성될 수 있다. 이러한 표현은 다음의 수학식에 의해 표현될 수 있다:
Figure 112021008930210-pct00051
항들이 재배열될 때, 수학식 (34)는 다음과 같이 N-양자화기 할당 표현과 유사하게 보일 수 있다:
Figure 112021008930210-pct00052
이러한 수학식 (36)을 제1 계층(L0) 및 제2 계층(L1)에 적용하면, 각각의 계층에 대한 할당 인자는 다음과 같이 표현될 수 있다:
Figure 112021008930210-pct00053
Figure 112021008930210-pct00054
[0047] 2-공간 계층(L0-1) 및 3 공간 계층(L0-2)의 둘 모두의 도출들은, 할당기(300)에서 레이트 할당(예컨대, 각각의 공간 계층(L)에 할당된 비트 레이트(BR)를 결정하기 위한 할당 인자(AF))을 최적화하기 위해 다수의 공간 계층들로 확장될 수 있는 패턴을 예시한다. 여기서, 위의 결과들을 L개의 공간 계층들(L1-L)로 확장하는 것은 다음의 수학식에 의해 표현되는 보편적인 표현을 산출하며:
Figure 112021008930210-pct00055
여기서, RL은 L개의 공간 계층들(L0-i)에 걸친 샘플 당 비트들에 대응하는 평균 레이트이고; L개의 공간 계층들에 걸친 샘플들의 총 수(S)는
Figure 112021008930210-pct00056
이고; si는 i번째 공간 계층의 샘플들의 수이고;
Figure 112021008930210-pct00057
이고, 여기서 hj,i는 i번째 공간 계층의 j번째 양자화기에 의해 양자화되는 신호의 소스 분포에 의존하며;
Figure 112021008930210-pct00058
는 i번째 공간 계층의 j번째 변환 계수의 분산에 대응한다.
[0048] 일부 구현들에서, 수학식 (39)는 다양한 가정들로 인해 상이한 형태들을 갖는다. 2개의 상이한 형태들의 수학식 (39)가 아래에 표현된다.
Figure 112021008930210-pct00059
Figure 112021008930210-pct00060
예컨대, hj,i에 대한 값은 i번째 공간 계층(Li)의 j번째 양자화기에 의해 양자화되는 비디오 입력 신호(120)의 소스 분포에 의존한다. 유사한 소스 분포들을 갖는 예들에서, hj,i에 대한 값은 양자화기마다 변화되지 않으며, 따라서 수학식 (39) 내의 곱 항들의 비율로 인해 상쇄되지 않는다. 다시 말하면,
Figure 112021008930210-pct00061
이다. 결과적으로, 이러한 상쇄가 발생할 때, 항은
Figure 112021008930210-pct00062
이며, 이는, 분모에서 유사한 항들을 상쇄시키기 위해 h가 분자에 있는 비율로서 Pi가 항상 나타나기 때문에, 고려사항으로부터 이러한 파라미터를 효과적으로 제거한다. 실제로, 기본 공간 계층(L0)이 시간적 예측만을 사용하는 반면, 다른 공간 계층들이 시간적 및 공간적 예측 둘 모두를 사용할 수 있기 때문에, hj,0는 hj,1 및 hj,2와는 상이할 수 있다. 일부 구성들에서, 이러한 차이는 할당기(300)에 의해 결정된 할당 인자(AF)에 상당한 영향을 주지는 않는다.
[0049] 다른 구현들에서, 인코더(200)는 변환 계수들(226)을 초래하는 변환 블록들을 도입한다. 이것이 발생할 때, 변수 si'를 도입하는 변환 계수들(226)의 그룹화에 대한 변화가 발생할 수 있다. 변수 si'는 수학식 (39a)에 나타낸 바와 같이, i번째 공간 계층(Li)에서 비-제로 분산을 갖는 변환 블록 당 변환 계수들(226)의 평균 수에 대응한다. 대조적으로, 이러한 변수 si' 대 수학식 (39b)의 si는 i번째 공간 계층(Li) 내의 샘플들의 수(S)에 대응한다. 부가적으로, 수학식 (39a)에서, 항은
Figure 112021008930210-pct00063
이며, 여기서
Figure 112021008930210-pct00064
는 i번째 공간 계층(Li)의 변환 블록에서의 k번째 계수의 분산이다. 현실적으로 말하면, 수학식 (39a)는 분산들의 곱들의 비율들의 가중된 합의 표현(예컨대,
Figure 112021008930210-pct00065
)으로서 i번째 공간 계층(Li)에 대한 최적의 비트 레이트 할당을 표현한다.
[0050] 도 3을 참조하면, 일부 구현들에서, 할당기(300)는 샘플러(310), 추정기(320), 및 레이트 결정기(330)를 포함한다. 샘플러(310)는 할당기(300)의 입력(302)으로서, 복수의 공간 계층들(L0-i)에 대한 비-양자화된 변환 계수들(226)을 수신한다. 예컨대, 도 2는 점선에 의해 할당기(300)에 통신되는, 변환기(220)에 의해 생성된 변환 계수들(226)을 예시한다. 수신된 비-양자화된 변환 계수들(226)을 이용하여, 샘플러(310)는 비디오 입력 신호(120)의 프레임들을 샘플(SF)로서 식별한다. 샘플러(310)에 의해 식별된 샘플(SF)에 기반하여, 할당기(300)는 각각의 공간 계층(L)에 대한 할당 인자(AF)를 결정한다. 일부 구현들에서, 할당기(300)는 각각의 공간 계층(L)의 할당 인자(AF)를 동적으로 결정하도록 구성된다. 이들 구현들에서, 샘플러(310)는 프레임 샘플들(SF)의 세트들을 반복적으로 식별하도록 구성될 수 있어서, 할당기(300)는 샘플러(310)에 의해 식별된 샘플들(SF)의 각각의 세트로 할당 인자(AF)를 조절할 수 있다. 예컨대, 할당기(300)는, 비디오 입력 신호(120)의 프레임들의 제1 샘플(SF1)에 기반하여 각각의 공간 계층(L)에 대한 할당 인자(AF)를 결정하며, 이어서, 샘플러(310)에 의해 반복적으로 식별된 비디오 입력 신호(120)의 프레임들의 제2 샘플(SF2)에 기반하여 (예컨대, 필요하다면) 각각의 공간 계층(L)에 적용된 할당 인자(AF)(예컨대, 제1 샘플(SF1)에 대한 제1 할당 인자(AF1)로부터 제2 샘플(SF2)에 대한 제2 할당 인자(AF2)로 변화하는 것으로 도 3에 도시됨)를 조정 또는 수정하도록 진행한다. 이러한 프로세스는, 할당기(300)가 비디오 입력 신호(120)를 수신하는 지속기간 동안 반복적으로 계속될 수 있다. 이들 예들에서, 할당기(300)는 할당 인자(AF)를 수정하며, 이는 결국, 제1 샘플(SF1)과 제2 샘플(SF2) 사이의 변화들에 기반하여 공간 레이트 인자(332)를 (예컨대, 제1 공간 레이트 인자(3321)로부터 제2 공간 레이트 인자(3322)로) 변화시킨다. 부가적으로 또는 대안적으로, 할당기(300)는 지수 이동 평균을 사용하여 프레임 단위 기반으로 할당 인자(AF)를 수정할 수 있다. 지수 이동 평균은 일반적으로, 이전 프레임들로부터의 할당 인자들(AF)의 지수 이동 평균에 가중치를 곱하고 현재 프레임에 대해 결정된 할당 인자(AF)에도 가중치를 곱하여 이동 평균을 구하는 것에 의해 얻어진다. 다시 말하면, 여기서, 할당 인자(AF)에 대한 각각의 수정은 현재 및 이전 할당 인자(들)(AF)에 대한 가중된 평균을 사용하여 이루어진다.
[0051] 추정기(320)는 인코더(200)로부터의 각각의 변환 계수의 분산 추정들(322)을 결정하도록 구성된다. 일부 구성들에서, 추정기(320)는, 변환기(220)로부터의 각각의 블록의 변환 계수들(226)이 유사하게 분산된다고 가정한다. 이러한 가정에 기반하여, 변환 계수들(226)의 분산들은, 비디오 입력 신호(120)의 샘플 프레임들(SF) 내의 모든 변환 블록들에 걸쳐 평균함으로써 추정될 수 있다. 예컨대, 아래의 표현은 i번째 공간 계층(Li)의 k번째 변환 계수(226)를 랜덤 변수(Ek,i)로서 모델링하며:
Figure 112021008930210-pct00066
위 식에서,
Figure 112022095771412-pct00067
는 t번째 프레임 내의 i번째 공간 계층(Li)의 b번째 변환 블록에서의 k번째 변환 계수(226)이고, Bi는 i번째 공간 계층(Li) 내의 블록들의 수를 표현하며, SF는 분산을 추정하는 데 사용되는 샘플 프레임들의 수를 표현한다. 일부 예들에서,
Figure 112022095771412-pct00068
의 값은, 그러한 모든 블록들이 동일한 통계치들을 갖는 것으로 가정될 때, 변환 블록과는 독립적인, i번째 공간 계층(Li)의 k번째 변환 계수(226)의 분산의 추정이다. 그러나, 실제로, 변환 블록들의 통계치들은 프레임에 걸쳐 변할 수 있다. 이것은 특히, 프레임의 에지에 있는 블록들이 중심에서보다 더 적은 활동을 가질 수 있는 비디오 화상회의 콘텐츠에 대해 그러할 수 있다. 따라서, 이들 동일하지 않은 통계치들이 레이트 할당 결과의 정확도에 부정적인 영향을 주면, 프레임의 중심에 위치된 블록들에 기반하여 분산을 추정하는 것은 부정적인 영향을 완화시킬 수 있다. 일부 구성들에서, 변환 계수들의 분산들이 추정되는 서브-블록들은, 비디오 화상 내의 모든 서브-블록(예컨대, 비디오 화상의 가장-중심 부분에 위치된 서브-블록들 또는 비디오 화상이 이전 화상들에 비해 변경되었던 위치들의 서브-블록들)의 서브세트를 표현한다.
[0052] 레이트 결정기(330)는, 샘플러(310)에 의해 식별된 비디오 입력 신호(120)로부터의 프레임들의 샘플(SF)에 기반하여 공간 레이트 인자(332)를 결정하도록 구성된다. 일부 예들에서, 공간 레이트 인자(332)는 인코딩된 비트 스트림(204)의 각각의 공간 계층(L0-i)에서 비트 레이트(BR)를 결정하기 위한 인자를 정의한다. 공간 레이트 인자(332)는 공간 계층(Li-1)에 할당된 비트 레이트와 공간 계층(Li)에 할당된 비트 레이트 사이의 비율이다. 공간 계층들(L0 및 L1), 0.5와 동일한 공간 레이트 인자, 및 500 kbps와 동일한, 공간 계층(L1)에 할당된 비트 레이트를 갖는 2-공간 예에서, 공간 계층(L0)에 대해 할당된 비트 레이트는 250 kbps(즉, 0.5×500 kbps)와 동일하다. 이들 구현들에서, 공간 레이트 인자(332)의 값은 기본 계층(L0)의 할당 인자(AF)와 평균 레이트(RL) 사이의 차이(예컨대, 수학식 (39)의 표현 r* 0 - RL)와 동일하게 세팅된다. 여기서, 할당 인자(AF)는 (또한, r* 0로 지칭되는) 기본 계층(L0)에 대한 변환 계수 당 비트들에 대응하는 반면, 평균 레이트(RL)는 하나 초과의 공간 계층(L0-i)에 대한 변환 계수 당 비트들에 대응한다. 일부 구성들에서, 2개의 공간 계층들에 대한 실험 결과들은, 공간 레이트 인자(332)가 표현
Figure 112021008930210-pct00069
에 대응한다는 것을 표시했다. 단일 파라미터로서의 공간 레이트 인자(332)는 할당기(300)가 인코딩된 비트 스트림(204)의 각각의 계층(L)에 대한 비트 레이트들(BR)을 쉽게 튜닝 또는 수정하게 허용할 수 있다.
[0053] 2개의 공간 계층들에 관해 설명되었지만, 할당기(300)는 공간 레이트 인자(332) 및/또는 할당 인자(AF)를 임의의 수의 공간 계층들(L0-i)에 적용할 수 있다. 예컨대, 할당기(300)는 2개의 공간 계층들의 각각의 세트에 대해 할당 인자(AF) 및/또는 공간 레이트 인자(332)를 결정한다. 3개의 계층들(L0-2)로 예시하자면, 할당기(300)는 기본 계층(L0) 및 제1 계층(L1)에 대한 할당 인자(AF)를 결정하고, 이어서 제1 계층(L1) 및 제2 계층(L2)에 대한 할당 인자(AF)를 결정한다. 각각의 할당 인자(AF)는 공간 레이트 인자(332), 즉 기본 계층(L0) 및 제1 계층(L1)에 대한 하나의 공간 레이트 인자(332) 및 제1 계층(L1) 및 제2 계층(L2)에 대한 제2 공간 레이트 인자(332)를 결정하는 데 사용될 수 있다. 2개의 공간 계층들의 각각의 세트에 대한 공간 레이트 인자(332)를 이용하면, 할당기(300)는, 임의의 수의 공간 계층들(L0-i)에 대한 평균 공간 레이트 인자 및/또는 평균 할당 인자를 생성하기 위해 공간 레이트 인자들(332) 및/또는 할당 인자들(AF)을 평균할 수 있다(예컨대, 가중된 평균, 산술 평균, 기하 평균 등).
[0054] 일부 예들에서, 공간 레이트 인자(332)는, 할당기(300)가 공간 레이트 인자(332)에 기반하여 비트 레이트(BR)를 결정하는 것을 돕기 위해 공간 레이트 인자 임계치(334) 내에 있어야 한다(예컨대, 값들의 범위 내에 있어야 한다). 일부 구현들에서, 공간 레이트 인자 임계치(334)는 약 1.0보다 작고 약 0.5보다 크다. 다른 구현들에서, 공간 레이트 인자 임계치(334)는 더 좁은 범위의 값들(예컨대, 0.55 내지 0.95, 0.65 내지 0.85, 0.51 내지 0.99, 0.65 내지 1.0, 0.75 내지 1.0 등) 또는 더 넓은 범위의 값들(예컨대, 0.40 내지 1.20, 0.35 내지 0.95, 0.49 내지 1.05, 0.42 내지 1.17, 0.75 내지 1.38 등)에 대응한다. 일부 구성들에서, 공간 레이트 인자(332)가 공간 레이트 인자 임계치(334)에 대응하는 값들의 범위 밖에 있을 때, 할당기(300)는, 공간 레이트 인자 임계치(334)를 만족시키기 위해 공간 레이트 인자(332)를 조정한다. 예컨대, 공간 레이트 인자 임계치(334)가 0.45 내지 0.95의 범위에 있을 때, 이러한 범위 외부의 공간 레이트 인자(332)는 범위의 가장 가까운 최대치로 조정된다(예컨대, 0.3의 공간 레이트 인자(332)는 0.45의 공간 레이트 인자(332)로 조정되는 반면, 1.82의 공간 레이트 인자(332)는 0.95의 공간 레이트 인자(332)로 조정된다).
[0055] 결정된 공간 레이트 인자(332)에 기반하여, 할당기(300)는, 총 비트 레이트(BRtot)에 대한 제약의 대상이 되는 하나 초과의 공간 계층(L0-i)에 대한 왜곡을 감소시킴으로써 비디오 품질을 최적화시키도록 구성된다. 왜곡을 감소시키기 위해, 할당기(300)는, 프레임들의 샘플(SF)에 대해 컴퓨팅된 공간 레이트 인자(332)에 기반하여 각각의 공간 계층(L)에 대한 비트 레이트(BR)에 영향을 준다(예컨대, 인코더(200)가 그 비트 레이트를 결정하는 것을 보조한다). 예컨대, 인코딩된 비트 스트림(204)이 2개의 공간 계층들(L0, L1)을 포함할 때, 할당기(300)는 할당 인자(AF)를 결정하며, 이는 결국, 수학식
Figure 112021008930210-pct00070
에 대응하는 제1 비트 레이트(BR1) 및 수학식
Figure 112021008930210-pct00071
에 대응하는 제2 비트 레이트(BR0)를 생성하기 위해 공간 레이트 인자(332)를 결정하는 데 사용되고, 여기서 BRtot는 전체 비트스트림(즉, 모든 공간 계층들(L0, L1))을 인코딩하는 데 이용가능한 총 비트 레이트에 대응한다.
[0056] 도 4는 레이트 할당 시스템(100)을 구현하기 위한 방법(400)의 일 예이다. 동작(402)에서, 방법(400)은 데이터 프로세싱 하드웨어(510)에서, 비디오 입력 신호(120)에 대응하는 변환 계수들(226)(예컨대, 비-양자화된 변환 계수들)을 수신한다. 비디오 입력 신호(120)는 복수의 공간 계층들(L0-i)을 포함하며, 여기서 복수의 공간 계층들(L0-i)은 기본 계층(L0)을 포함한다. 동작(404)에서, 방법(400)은, 데이터 프로세싱 하드웨어(510)에 의해, 비디오 입력 신호(120)로부터의 프레임들의 샘플(SF)에 기반하여 공간 레이트 인자(332)를 결정한다. 공간 레이트 인자(332)는 인코딩된 비트 스트림(204)의 각각의 공간 계층(L)에서의 레이트 할당을 위한 인자를 정의하며, 기본 계층(L0)에 대한 변환 계수 당 비트들과 복수의 공간 계층들(L0-i)의 변환 계수 당 비트들의 평균(RL) 사이의 차이에 의해 표현된다. 동작들(406)에서, 방법(400)은, 데이터 프로세싱 하드웨어(510)에 의해, 공간 레이트 인자(332) 및 프레임들의 샘플(SF)에 기반하여 비트 레이트(BR)를 각각의 공간 계층(L)에 할당함으로써, 인코딩된 비트 스트림(204)의 복수의 공간 계층들(L0-i)에 대한 왜곡(d)을 감소시킨다.
[0057] 도 5는 본 명세서에 설명된 시스템들 및 방법들을 구현하는 데 사용될 수 있는 예시적인 컴퓨팅 디바이스(500), 예컨대 인코더(200) 및/또는 할당기(300)의 개략도이다. 컴퓨팅 디바이스(500)는, 랩톱들, 데스크톱들, 워크스테이션들, 개인 휴대 정보 단말들, 서버들, 블레이드(blade) 서버들, 메인프레임들, 및 다른 적절한 컴퓨터들과 같은 다양한 형태들의 디지털 컴퓨터들을 표현하도록 의도된다. 본 명세서에 도시된 컴포넌트들, 그들의 연결들 및 관계들, 및 그들의 기능들은 단지 예시적인 것으로만 의도되며, 본 명세서에 설명되고 그리고/또는 청구되는 본 발명들의 구현들을 제한하도록 의도되지 않는다.
[0058] 컴퓨팅 디바이스(500)는, 데이터 프로세싱 하드웨어(510), 메모리 하드웨어(520), 저장 디바이스(530), 메모리(520) 및 고속 확장 포트들(550)에 연결된 고속 인터페이스/제어기(540), 및 저속 버스(570) 및 저장 디바이스(530)에 연결된 저속 인터페이스/제어기(560)를 포함한다. 컴포넌트들(510, 520, 530, 540, 550, 및 560) 각각은, 다양한 버스들을 사용하여 상호연결되며, 공통 마더보드 상에 또는 다른 방식들로 적절하게 장착될 수 있다. 프로세서(510)는, 고속 인터페이스(540)에 커플링된 디스플레이(580)과 같은 외부 입력/출력 디바이스 상에서의 GUI(graphical user interfac)를 위한 그래픽 정보를 디스플레이하기 위해 메모리(520)에 또는 저장 디바이스(530) 상에 저장된 명령들을 포함하는 컴퓨팅 디바이스(500) 내에서의 실행을 위한 명령들을 프로세싱할 수 있다. 다른 구현들에서, 다수의 프로세서들 및/또는 다수의 버스들이 다수의 메모리들 및 다수의 타입들의 메모리와 함께 적절하게 사용될 수 있다. 또한, 다수의 컴퓨팅 디바이스들(500)이 연결될 수 있으며, 각각의 디바이스는 필요한 동작들의 부분들을 (예컨대, 서버 뱅크, 블레이드 서버들의 그룹, 또는 멀티-프로세서 시스템으로서) 제공한다.
[0059] 메모리(520)는 컴퓨팅 디바이스(500) 내에 정보를 비-일시적으로 저장한다. 메모리(520)는, 컴퓨터-판독가능 매체, 휘발성 메모리 유닛(들), 또는 비-휘발성 메모리 유닛(들)일 수 있다. 비-일시적인 메모리(520)는 컴퓨팅 디바이스(500)에 의한 사용을 위해 일시적으로 또는 영구적으로 프로그램들(예컨대, 명령들의 시퀀스들) 또는 데이터(예컨대, 프로그램 상태 정보)를 저장하는 데 사용되는 물리 디바이스들일 수 있다. 비-휘발성 메모리의 예들은, 플래시 메모리 및 판독-전용 메모리(ROM)/프로그래밍가능 판독-전용 메모리(PROM)/소거가능한 프로그래밍가능 판독-전용 메모리(EPROM)/전자적으로 소거가능한 프로그래밍가능 판독-전용 메모리(EEPROM)(예컨대, 통상적으로는 부트 프로그램들과 같은 펌웨어에 대해 사용됨)를 포함한다(그러나, 이에 제한되지 않음). 휘발성 메모리의 예들은 RAM(random access memory), DRAM(dynamic random access memory), SRAM(static random access memory), PCM(phase change memory) 뿐만 아니라 디스크들 또는 테이프들을 포함한다(그러나 이에 제한되지 않음).
[0060] 저장 디바이스(530)는, 컴퓨팅 디바이스(500)에 대한 대용량 저장을 제공할 수 있다. 일부 구현들에서, 저장 디바이스(530)는 컴퓨터-판독가능 매체이다. 다양한 상이한 구현들에서, 저장 디바이스(530)는, 저장 영역 네트워크 또는 다른 구성들 내의 디바이스들을 포함하여, 플로피 디스크 디바이스, 하드 디스크 디바이스, 광학 디스크 디바이스, 또는 테이프 디바이스, 플래시 메모리 또는 다른 유사한 솔리드 스테이트 메모리 디바이스, 또는 디바이스들의 어레이일 수 있다. 부가적인 구현들에서, 컴퓨터 프로그램 물건은 정보 캐리어에서 유형적으로 구현된다. 컴퓨터 프로그램 물건은, 실행될 때 위에서 설명된 방법들과 같은 하나 이상의 방법들을 수행하는 명령들을 포함한다. 정보 캐리어는, 메모리(520), 저장 디바이스(530), 또는 프로세서(510) 상의 메모리와 같은 컴퓨터- 또는 머신-판독가능 매체이다.
[0061] 고속 제어기(540)는, 컴퓨팅 디바이스(500)에 대한 대역폭-집약적인 동작들을 관리하는 반면, 저속 제어기(560)는 더 낮은 대역폭-집약적인 동작들을 관리한다. 직무들의 그러한 할당은 단지 예시적일 뿐이다. 일부 구현들에서, 고속 제어기(540)는, 메모리(520), (예컨대, 그래픽 프로세서 또는 가속기를 통해) 디스플레이(580), 그리고 다양한 확장 카드들(도시되지 않음)을 수용할 수 있는 고속 확장 포트들(550)에 커플링된다. 일부 구현들에서, 저속 제어기(560)는 저장 디바이스(530) 및 저속 확장 포트(590)에 커플링된다. 다양한 통신 포트들(예컨대, USB, 블루투스, 이더넷, 무선 이더넷)을 포함할 수 있는 저속 확장 포트(590)는, 예컨대, 네트워크 어댑터를 통해 하나 이상의 입력/출력 디바이스들, 이를테면 키보드, 포인팅 디바이스, 스캐너, 또는 네트워킹 디바이스, 이를테면 스위치 또는 라우터에 커플링될 수 있다.
[0062] 컴퓨팅 디바이스(500)는 도면에 도시된 바와 같이, 다수의 상이한 형태들로 구현될 수 있다. 예컨대, 그것은 표준 서버(500a) 또는 그러한 서버들(500a)의 그룹에서 다수의 횟수들로서, 랩톱 컴퓨터(500b)로서, 또는 래크(rack) 서버 시스템(500c)의 일부로서 구현될 수 있다.
[0063] 본 명세서에 설명된 시스템들 및 기법들의 다양한 구현들은, 디지털 전자 및/또는 광학 회로부, 집적 회로부, 특수하게 설계된 ASIC(application specific integrated circuit)들, 컴퓨터 하드웨어, 펌웨어, 소프트웨어, 및/또는 이들의 조합들로 실현될 수 있다. 이들 다양한 구현들은, 저장 시스템, 적어도 하나의 입력 디바이스, 및 적어도 하나의 출력 디바이스로부터 데이터 및 명령들을 수신하고 그들로 데이터 및 명령들을 송신하도록 커플링된 특수 목적 또는 범용 목적일 수 있는 적어도 하나의 프로그래밍가능 프로세서를 포함하는 프로그래밍가능 시스템 상에서 실행가능하고 그리고/또는 해석가능한 하나 이상의 컴퓨터 프로그램들에서의 구현을 포함할 수 있다.
[0064] 이들 컴퓨터 프로그램들(프로그램들, 소프트웨어, 소프트웨어 애플리케이션들 또는 코드로 또한 알려짐)은, 프로그래밍가능 프로세서에 대한 머신 명령들을 포함하며, 고레벨의 절차적인 및/또는 오브젝트-지향적인 프로그래밍 언어 및/또는 어셈블리/머신 언어로 구현될 수 있다. 본 명세서에서 사용된 바와 같이, 용어들 "머신-판독가능 매체" 및 "컴퓨터-판독가능 매체"는, 머신-판독가능 신호로서 머신 명령들을 수신하는 머신-판독가능 매체를 포함하여, 임의의 컴퓨터 프로그램 제품, 비-일시적인 컴퓨터-판독가능 매체, 머신 명령들 및/또는 데이터를 프로그래밍가능 프로세서에 제공하기 위해 사용되는 장치 및/또는 디바이스(예컨대, 자기 디스크들, 광학 디스크들, 메모리, 프로그래밍가능 로직 디바이스(PLD)들)를 지칭한다. 용어 "머신-판독가능 신호"는, 머신 명령들 및/또는 데이터를 프로그래밍가능 프로세서에 제공하기 위해 사용되는 임의의 신호를 지칭한다.
[0065] 본 명세서에 설명된 프로세스들 및 로직 흐름들은 입력 데이터에 대해 동작하고 출력을 생성함으로써 기능들을 수행하도록 하나 이상의 컴퓨터 프로그램들을 실행하는 하나 이상의 프로그래밍가능 프로세서들에 의해 수행될 수 있다. 프로세스들 및 로직 흐름들은 또한, 특수 목적 로직 회로부, 예컨대, FPGA(field programmable gate array) 또는 ASIC(application specific integrated circuit)에 의해 수행될 수 있다. 컴퓨터 프로그램의 실행에 적합한 프로세서들은, 범용 마이크로프로세서 및 특수 목적 마이크로프로세서 둘 모두, 및 임의의 종류의 디지털 컴퓨터의 임의의 하나 이상의 프로세서들을 예로서 포함한다. 일반적으로, 프로세서는 판독-전용 메모리 또는 랜덤 액세스 메모리 또는 그 둘 모두로부터 명령들 및 데이터를 수신할 것이다. 컴퓨터의 본질적인 엘리먼트들은 명령들을 수행하기 위한 프로세서, 및 명령들 및 데이터를 저장하기 위한 하나 이상의 메모리 디바이스들이다. 일반적으로, 컴퓨터는 또한, 데이터를 저장하기 위한 하나 이상의 대용량 저장 디바이스들, 예컨대 자기, 광자기 디스크들, 또는 광학 디스크들을 포함하거나, 또는 그들로부터 데이터를 수신하거나 그들로 데이터를 전달하도록, 또는 그 둘 모두를 위해 동작가능하게 커플링될 것이다. 그러나, 컴퓨터는 그러한 디바이스들을 가질 필요는 없다. 컴퓨터 프로그램 명령들 및 데이터를 저장하는 데 적합한 컴퓨터 판독가능 매체들은 반도체 메모리 디바이스들, 예컨대 EPROM, EEPROM, 및 플래시 메모리 디바이스들; 자기 디스크들, 예컨대 내부 하드 디스크들 또는 착탈형 디스크들; 광자기 디스크들; 및 CD ROM 및 DVD-ROM 디스크들을 예로서 포함하는 비-휘발성 메모리, 매체들 및 메모리 디바이스들의 모든 형태들을 포함한다. 프로세서 및 메모리는 특수 목적 로직 회로부에 의해 보완되거나 그에 통합될 수 있다.
[0066] 사용자와의 상호작용을 제공하기 위해, 본 개시내용의 하나 이상의 양상들은 사용자에게 정보를 디스플레이하기 위한 디스플레이 디바이스, 예컨대, CRT(cathode ray tube), LCD(liquid crystal display) 모니터, 또는 터치 스크린 및 선택적으로는, 사용자가 입력을 컴퓨터에 제공할 수 있게 하는 키보드 및 포인팅 디바이스, 예컨대, 마우스 또는 트랙볼을 갖는 컴퓨터 상에서 구현될 수 있다. 다른 종류들의 디바이스들은 또한, 사용자와의 상호작용을 제공하기 위해 사용될 수 있으며, 예컨대, 사용자에게 제공된 피드백은 임의의 형태의 감지 피드백, 예컨대, 시각적인 피드백, 가청적인 피드백, 또는 촉각적인 피드백일 수 있고; 사용자로부터의 입력은 음향, 스피치, 또는 촉각 입력을 포함하는 임의의 형태로 수신될 수 있다. 부가적으로, 컴퓨터는 사용자에 의해 사용되는 디바이스에 문서들을 전송하고 그 디바이스로부터 문서들을 수신함으로써; 예컨대, 웹 브라우저로부터 수신된 요청들에 대한 응답으로 사용자의 클라이언트 디바이스 상의 웹 브라우저에 웹 페이지들을 전송함으로써 사용자와 상호작용할 수 있다.
[0067] 다수의 구현들이 설명되었다. 그럼에도, 본 개시내용의 사상 및 범위를 벗어나지 않으면서 다양한 수정들이 행해질 수 있다는 것이 이해될 것이다. 따라서, 다른 구현들은 다음의 청구항들의 범위 내에 존재한다.

Claims (21)

  1. 방법(400)으로서,
    데이터 프로세싱 하드웨어(510)에서, 스케일링된 비디오 입력 신호(120)에 대응하는 비-양자화된 변환 계수들(226)을 수신하는 단계 - 상기 스케일링된 비디오 입력 신호(120)는 복수의 공간 계층들(L)을 포함하고, 상기 복수의 공간 계층들(L)은 기본 계층(L0)을 포함함 -;
    상기 데이터 프로세싱 하드웨어(510)에 의해, 상기 스케일링된 비디오 입력 신호(120)로부터 샘플러에 의해 식별된 프레임들의 샘플(SF)에 기반하여 공간 레이트 인자(332)를 결정하는 단계 - 각각의 공간 계층에 대해 샘플들의 수는 상기 변환 계수들의 수와 동일하고, 상기 공간 레이트 인자(332)는 상기 스케일링된 비디오 입력 신호(120)로부터 형성되는 인코딩된 비트 스트림(204)의 각각의 공간 계층(L)에서의 비트 레이트를 결정하기 위한 것이고, 상기 공간 레이트 인자(332)는 상기 기본 계층(L0)의 변환 계수(226) 당 비트들과 상기 복수의 공간 계층들(L)에 대한 변환 계수(226) 당 비트들의 평균(RL) 사이의 차이에 의해 표현됨 -; 및
    상기 데이터 프로세싱 하드웨어(510)에 의해, 상기 공간 레이트 인자(332) 및 상기 프레임들의 샘플(SF)에 기반하여 비트 레이트를 각각의 공간 계층(L)에 할당함으로써 상기 인코딩된 비트 스트림(204)의 상기 복수의 공간 계층들(L)에 대한 왜곡을 감소시키는 단계를 포함하고,
    상기 공간 레이트 인자(332)는 가중된 합을 포함하고, 상기 가중된 합은 분산들의 곱의 비율에 대응하며, 상기 비율은 제1 공간 계층(L)으로부터의 스칼라(210) 양자화된 변환 계수들(226)의 추정된 분산들에 기반한 분자 및 제2 공간 계층(L)으로부터의 스칼라(210) 양자화된 변환 계수들(226)의 추정된 분산들에 기반한 분모를 포함하는,
    방법(400).
  2. 제1항에 있어서,
    상기 데이터 프로세싱 하드웨어(510)에서, 상기 스케일링된 비디오 입력 신호(120)로부터 상기 샘플러에 의해 반복적으로 식별된 프레임들의 제2 샘플(SF)을 수신하는 단계;
    상기 데이터 프로세싱 하드웨어(510)에 의해, 상기 스케일링된 비디오 입력 신호(120)로부터의 상기 프레임들의 제2 샘플(SF)에 기반하여 상기 공간 레이트 인자(332)를 수정하는 단계; 및
    상기 데이터 프로세싱 하드웨어(510)에 의해, 상기 수정된 공간 레이트 인자(332) 및 상기 프레임들의 제2 샘플(SF)에 기반하여 각각의 공간 계층(L)에 수정된 비트 레이트를 할당하는 단계를 더 포함하는, 방법(400).
  3. 제1항 또는 제2항에 있어서,
    상기 데이터 프로세싱 하드웨어(510)에서, 상기 스케일링된 비디오 입력 신호(120)로부터 상기 샘플러에 의해 반복적으로 식별된 프레임들의 제2 샘플(SF)을 수신하는 단계;
    상기 데이터 프로세싱 하드웨어(510)에 의해 프레임 단위 기반으로, 지수 이동 평균에 기반하여 상기 공간 레이트 인자(332)를 수정하는 단계 - 상기 지수 이동 평균은 적어도, 상기 프레임들의 샘플(SF) 및 상기 프레임들의 제2 샘플(SF)에 대한 것임 -; 및
    상기 데이터 프로세싱 하드웨어(510)에 의해, 상기 수정된 공간 레이트 인자(332)에 기반하여 각각의 공간 계층(L)에 수정된 비트 레이트를 할당하는 단계를 더 포함하는, 방법(400).
  4. 제1항 또는 제2항에 있어서,
    상기 스케일링된 비디오 입력 신호(120)를 수신하는 단계는,
    비디오 입력 신호(120)를 수신하는 단계;
    상기 비디오 입력 신호(120)를 상기 복수의 공간 계층들(L)로 스케일링하는 단계;
    각각의 공간 계층(L)을 서브-블록들로 분할하는 단계;
    각각의 서브-블록을 변환 계수들(226)로 변환하는 단계; 및
    각각의 서브-블록에 대응하는 변환 계수들(226)을 스칼라 양자화하는 단계를 포함하는, 방법(400).
  5. 제4항에 있어서,
    상기 스케일링된 비디오 입력 신호(120)로부터의 상기 프레임들의 샘플(SF)에 기반하여 상기 공간 레이트 인자(332)를 결정하는 단계는, 상기 비디오 입력 신호(120)의 프레임들의 모든 변환 블록들에 걸친 평균에 기반하여 각각의 스칼라(210) 양자화된 변환 계수(226)의 분산 추정들(322)을 결정하는 단계를 포함하는, 방법(400).
  6. 제4항에 있어서,
    각각의 서브-블록의 변환 계수들(226)은 모든 서브-블록들에 걸쳐 동일하게 분포(distribute)되는, 방법(400).
  7. 제1항 또는 제2항에 있어서,
    상기 공간 레이트 인자(332)는 상기 인코딩된 비트 스트림(204)의 각각의 계층(L)에 상기 비트 레이트를 할당하도록 구성된 단일 파라미터를 포함하는, 방법(400).
  8. 제1항 또는 제2항에 있어서,
    상기 데이터 프로세싱 하드웨어(510)에 의해, 상기 공간 레이트 인자(332)가 공간 레이트 인자 임계치(334) 내에 있다고 결정하는 단계를 더 포함하는, 방법(400).
  9. 제8항에 있어서,
    상기 공간 레이트 인자 임계치(334)는 1.0보다 작고 0.5보다 큰, 방법(400).
  10. 삭제
  11. 시스템(100)으로서,
    데이터 프로세싱 하드웨어(510); 및
    상기 데이터 프로세싱 하드웨어(510)와 통신하는 메모리 하드웨어(520)를 포함하며,
    상기 메모리 하드웨어(520)는 상기 데이터 프로세싱 하드웨어(510) 상에서 실행될 때, 상기 데이터 프로세싱 하드웨어(510)로 하여금 동작들을 수행하게 하는 명령들을 저장하고,
    상기 동작들은,
    스케일링된 비디오 입력 신호(120)에 대응하는 비-양자화된 변환 계수들(226)을 수신하는 것 - 상기 스케일링된 비디오 입력 신호(120)는 복수의 공간 계층들(L)을 포함하고, 상기 복수의 공간 계층들(L)은 기본 계층(L0)을 포함함 -;
    상기 스케일링된 비디오 입력 신호(120)로부터의 샘플러에 의해 식별된 프레임들의 샘플(SF)에 기반하여 공간 레이트 인자(332)를 결정하는 것 - 각각의 공간 계층에 대해 샘플들의 수는 상기 변환 계수들의 수와 동일하고, 상기 공간 레이트 인자(332)는 상기 스케일링된 비디오 입력 신호(120)로부터 형성되는 인코딩된 비트 스트림(204)의 각각의 공간 계층(L)에서의 비트 레이트를 결정하기 위한 것이고, 상기 공간 레이트 인자(332)는 상기 기본 계층(L0)의 변환 계수(226) 당 비트들과 상기 복수의 공간 계층들(L)의 변환 계수(226) 당 비트들의 평균(RL) 사이의 차이에 의해 표현됨 -; 및
    상기 공간 레이트 인자(332) 및 상기 프레임들의 샘플(SF)에 기반하여 비트 레이트를 각각의 공간 계층(L)에 할당함으로써 상기 인코딩된 비트 스트림(204)의 상기 복수의 공간 계층들(L)에 대한 왜곡을 감소시키는 것을 포함하고,
    상기 공간 레이트 인자(332)는 가중된 합을 포함하고, 상기 가중된 합은 분산들의 곱의 비율에 대응하며, 상기 비율은 제1 공간 계층(L)으로부터의 스칼라(210) 양자화된 변환 계수들(226)의 추정된 분산들에 기반한 분자 및 제2 공간 계층(L)으로부터의 스칼라(210) 양자화된 변환 계수들(226)의 추정된 분산들에 기반한 분모를 포함하는,
    시스템(100).
  12. 제11항에 있어서,
    상기 동작들은,
    상기 스케일링된 비디오 입력 신호(120)로부터 상기 샘플러에 의해 반복적으로 식별된 프레임들의 제2 샘플(SF)을 수신하는 것;
    상기 스케일링된 비디오 입력 신호(120)로부터의 상기 프레임들의 제2 샘플(SF)에 기반하여 상기 공간 레이트 인자(332)를 수정하는 것; 및
    상기 수정된 공간 레이트 인자(332) 및 상기 프레임들의 제2 샘플(SF)에 기반하여 각각의 공간 계층(L)에 수정된 비트 레이트를 할당하는 것을 더 포함하는, 시스템(100).
  13. 제11항 또는 제12항에 있어서,
    상기 동작들은,
    상기 스케일링된 비디오 입력 신호(120)로부터 상기 샘플러에 의해 반복적으로 식별된 프레임들의 제2 샘플(SF)을 수신하는 것;
    지수 이동 평균에 기반하여 상기 공간 레이트 인자(332)를 수정하는 것 - 상기 지수 이동 평균은 적어도, 상기 프레임들의 샘플(SF) 및 상기 프레임들의 제2 샘플(SF)에 대한 것임 -; 및
    상기 수정된 공간 레이트 인자(332)에 기반하여 각각의 공간 계층(L)에 수정된 비트 레이트를 할당하는 것을 더 포함하는, 시스템(100).
  14. 제11항 또는 제12항에 있어서,
    상기 스케일링된 비디오 입력 신호(120)를 수신하는 것은,
    비디오 입력 신호(120)를 수신하는 것;
    상기 비디오 입력 신호(120)를 상기 복수의 공간 계층들(L)로 스케일링하는 것;
    각각의 공간 계층(L)을 서브-블록들로 분할하는 것;
    각각의 서브-블록을 변환 계수들(226)로 변환하는 것; 및
    각각의 서브-블록에 대응하는 변환 계수들(226)을 스칼라 양자화하는 것을 더 포함하는, 시스템(100).
  15. 제14항에 있어서,
    상기 스케일링된 비디오 입력 신호(120)로부터의 상기 프레임들의 샘플(SF)에 기반하여 상기 공간 레이트 인자(332)를 결정하는 것은, 상기 비디오 입력 신호(120)의 프레임들의 모든 변환 블록들에 걸친 평균에 기반하여 각각의 스칼라(210) 양자화된 변환 계수(226)의 분산 추정들(322)을 결정하는 것을 포함하는, 시스템(100).
  16. 제14항에 있어서,
    각각의 서브-블록의 변환 계수들(226)은 모든 서브-블록들에 걸쳐 동일하게 분포되는, 시스템(100).
  17. 제11항 또는 제12항에 있어서,
    상기 공간 레이트 인자(332)는 상기 인코딩된 비트 스트림(204)의 각각의 계층(L)에 상기 비트 레이트를 할당하도록 구성된 단일 파라미터를 포함하는, 시스템(100).
  18. 제11항 또는 제12항에 있어서,
    상기 동작들은, 상기 공간 레이트 인자(332)가 공간 레이트 인자 임계치(334) 내에 있다고 결정하는 것을 더 포함하는, 시스템(100).
  19. 제18항에 있어서,
    상기 공간 레이트 인자 임계치(334)는 1.0보다 작고 0.5보다 큰, 시스템(100).
  20. 삭제
  21. 삭제
KR1020217002315A 2018-07-26 2019-06-23 공간 계층 레이트 할당 KR102525584B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020237013501A KR20230058541A (ko) 2018-07-26 2019-06-23 공간 계층 레이트 할당

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862703623P 2018-07-26 2018-07-26
US62/703,623 2018-07-26
PCT/US2019/038626 WO2020023167A1 (en) 2018-07-26 2019-06-23 Spatial layer rate allocation

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020237013501A Division KR20230058541A (ko) 2018-07-26 2019-06-23 공간 계층 레이트 할당

Publications (2)

Publication Number Publication Date
KR20210022117A KR20210022117A (ko) 2021-03-02
KR102525584B1 true KR102525584B1 (ko) 2023-04-24

Family

ID=67185762

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020237013501A KR20230058541A (ko) 2018-07-26 2019-06-23 공간 계층 레이트 할당
KR1020217002315A KR102525584B1 (ko) 2018-07-26 2019-06-23 공간 계층 레이트 할당

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020237013501A KR20230058541A (ko) 2018-07-26 2019-06-23 공간 계층 레이트 할당

Country Status (6)

Country Link
US (2) US11032549B2 (ko)
EP (1) EP3827588A1 (ko)
JP (1) JP6978633B2 (ko)
KR (2) KR20230058541A (ko)
CN (2) CN116016935A (ko)
WO (1) WO2020023167A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20240172033A1 (en) * 2021-03-12 2024-05-23 Telefonaktiebolaget Lm Ericsson (Publ) Method and Apparatus for Rate Control

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6501797B1 (en) * 1999-07-06 2002-12-31 Koninklijke Phillips Electronics N.V. System and method for improved fine granular scalable video using base layer coding information
EP1833257A1 (en) 2006-03-06 2007-09-12 THOMSON Licensing Method and apparatus for bit rate control in scalable video signal encoding using a Rate-Distortion optimisation
US20080101410A1 (en) * 2006-10-25 2008-05-01 Microsoft Corporation Techniques for managing output bandwidth for a conferencing server
WO2011084918A1 (en) 2010-01-06 2011-07-14 Dolby Laboratories Licensing Corporation High performance rate control for multi-layered video coding applications
US20110310961A1 (en) * 2010-06-17 2011-12-22 Microsoft Corporation Video rate control based on transform-coefficients histogram
EP2479994B1 (en) * 2011-01-19 2017-03-15 BlackBerry Limited Method and device for improved multi-layer data compression
US9392274B2 (en) * 2012-03-22 2016-07-12 Qualcomm Incorporated Inter layer texture prediction for video coding
WO2014053519A1 (en) 2012-10-01 2014-04-10 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Scalable video coding using inter-layer prediction of spatial intra prediction parameters
US20140098880A1 (en) * 2012-10-05 2014-04-10 Qualcomm Incorporated Prediction mode information upsampling for scalable video coding
US9591316B2 (en) 2014-03-27 2017-03-07 Intel IP Corporation Scalable video encoding rate adaptation based on perceived quality

Also Published As

Publication number Publication date
KR20230058541A (ko) 2023-05-03
CN112514387A (zh) 2021-03-16
US20200036981A1 (en) 2020-01-30
KR20210022117A (ko) 2021-03-02
US20210281850A1 (en) 2021-09-09
JP2021524213A (ja) 2021-09-09
US20230239480A1 (en) 2023-07-27
US11032549B2 (en) 2021-06-08
US11632555B2 (en) 2023-04-18
CN112514387B (zh) 2023-02-03
JP6978633B2 (ja) 2021-12-08
CN116016935A (zh) 2023-04-25
EP3827588A1 (en) 2021-06-02
WO2020023167A1 (en) 2020-01-30

Similar Documents

Publication Publication Date Title
KR101744654B1 (ko) 모션 기반 동적 해상도 다중 비트 레이트 비디오 인코딩
KR101643790B1 (ko) 적응적 비디오 스트리밍용의 가변 비트 레이트 및 동적 해상도를 이용한 다중 비트 레이트 비디오 인코딩
KR101644208B1 (ko) 이전에 계산된 모션 정보를 이용하는 비디오 인코딩
US9071841B2 (en) Video transcoding with dynamically modifiable spatial resolution
EP2008463A2 (en) Method and apparatus for encoding/decoding fgs layers using weighting factor
KR20130135659A (ko) 다계층 비디오 코딩을 위한 레이트 제어 방법, 이를 이용한 비디오 인코딩 장치 및 비디오 신호 처리 시스템
US11805261B1 (en) Adaptive bit rate control for image compression
KR20130107861A (ko) 인터 레이어 인트라 예측 방법 및 장치
US10812832B2 (en) Efficient still image coding with video compression techniques
KR100843080B1 (ko) 비디오 트랜스코딩 방법 및 장치
US11818382B2 (en) Temporal prediction shifting for scalable video coding
KR102525584B1 (ko) 공간 계층 레이트 할당
EP3284255A1 (en) Encoding a plurality of signals with data rate target of a signal depending on complexity information
JP7125559B2 (ja) ビットレート削減のためのビデオストリーム適応フィルタリング
US12022090B2 (en) Spatial layer rate allocation
WO2023245460A1 (en) Neural network codec with hybrid entropy model and flexible quantization
MX2008012360A (es) Metodo de asignar prioridad para controlar la velocidad binaria de un flujo de bits, metodo para controlar la velocidad binaria de un flujo de bits, metodo de decodificacion de video y aparato que usa el mismo.

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant