KR101193790B1 - 비디오 코덱 양자화를 위한 방법 및 장치 - Google Patents

비디오 코덱 양자화를 위한 방법 및 장치 Download PDF

Info

Publication number
KR101193790B1
KR101193790B1 KR1020067026474A KR20067026474A KR101193790B1 KR 101193790 B1 KR101193790 B1 KR 101193790B1 KR 1020067026474 A KR1020067026474 A KR 1020067026474A KR 20067026474 A KR20067026474 A KR 20067026474A KR 101193790 B1 KR101193790 B1 KR 101193790B1
Authority
KR
South Korea
Prior art keywords
delete delete
quantization
distribution
level
coefficients
Prior art date
Application number
KR1020067026474A
Other languages
English (en)
Other versions
KR20070031938A (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 claimed from PCT/US2005/019647 external-priority patent/WO2006007279A2/en
Publication of KR20070031938A publication Critical patent/KR20070031938A/ko
Application granted granted Critical
Publication of KR101193790B1 publication Critical patent/KR101193790B1/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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

이미지 블록에 대한 비디오 신호 데이터를 인코딩 및 디코딩하는 인코더, 디코더, 및 대응하는 방법들이 제공된다. 인코더는 상기 이미지 블록에 대한 변환 계수들을 수신하고, 상기 변환 계수들의 계수 위치 및 계수 분포에 기초하여 데드존 양자화를 적응적으로 수행하는 양자화기(2335)를 포함한다.
이미지 블록, 인코딩, 디코딩, 데드존 양자화

Description

비디오 코덱 양자화를 위한 방법 및 장치{METHOD AND APPARATUS FOR VIDEO CODEC QUANTIZATION}
<관련 출원의 상호 참조>
이 출원은, 그 전체가 본 명세서에 참고 문헌으로 통합되는, 2004년 6월 18일에 출원된 미국 가출원번호 제60/581,019호의 우선권을 주장한다.
본 발명은 일반적으로 인코더 및 디코더에 관한 것으로, 더 구체적으로는, 비디오 인코더 및 디코더에서의 양자화를 위한 방법 및 장치에 관한 것이다.
현재 MPEG-2 및 JVT/H.264/MPEG AVC와 같은 대부분의 이미지 및 비디오 코딩 시스템 및 표준들은 압축을 수행하기 위한 양자화 및 엔트로피 코딩을 수반하는 변환 기반 기법들을 이용한다. 도 1을 참조하면, 전형적인 변환 기반 압축 시스템이 참조 번호 100으로 일반적으로 지시되어 있다. 변환 기반 압축 시스템(100)에의 입력은 변환기(110)의 입력과 신호 통신으로 접속되어 있다. 변환기(110)의 출력은 양자화기(120)의 입력과 신호 통신으로 접속되어 있다. 양자화기(120)의 출력은 인코더(130)의 입력과 신호 통신으로 접속되어 있다. 인코더(130)의 출력은 디코더(140)의 입력과 신호 통신으로 접속되어 있다. 디코더(140)의 출력은 역양자화기(150)의 입력과 신호 통신으로 접속되어 있다. 역양자화기(150)의 출력은 역 변환기(160)의 입력과 신호 통신으로 접속되어 있다. 역변환기(160)의 출력은 시스템(100)의 외부적으로 이용 가능한 출력이다. 중요한 아이디어는, 이산 코사인 변환(DCT)과 같은 그러한 변환들이 이미지 신호를 비상관시키고 이미지 블록의 에너지를 소수의 저역 통과 계수들로 압축시키는 것이고, 이것은 양자화 및 역양자화 후에도 여전히 그 신호를 어느 정도 정확하게 나타낸다. 그럼에도, 이 양자화/역양자화 프로세스는 최량의 가능한 주관적 및 객관적 품질을 갖기 위하여 신중히 설계될 필요가 있다. 수많은 과거의 연구는 주로 JPEG 및 MPEG형 인코더들에 이용되는 8×8 DCT에 관한 것으로, 양자화 프로세스의 설계에 집중하였고, 특히 이용될 최적의 양자화 스텝 사이즈, 계수 분포 및 데드조닝 메커니즘(dead-zoning mechanisms)에 관한 것이었다. 가장 중요한 관찰들 중 하나는, 계수 분포는, 대부분의 경우에, 양자화 프로세스의 보다 정확한 모델링 및 설계를 가능하게 하는 라플라시안 분포(Laplacian distribution)을 따른다는 것이었다. 이러한 가정은 레이트 왜곡(RD : Rate Distortion) 성능을 향상시키려는 시도에서 H.264를 포함하는 다수의 최신의 코덱 및 인코더의 설계 내에서 수반된다.
그러나 라플라시안 분포가 (H.264로 코딩된 일부 자료에 대한 것을 포함하는) 다수의 경우에 대해 유효하기는 하지만, H.264 표준에서의 새로운 보다 작은 (4×4) 변환의 도입, 및 고화질 TV, 방송, 비디오 회의 등을 포함하는 광범위한 응용을 위한 표준의 고려로 인하여, 그러한 분포가 반드시 유효하지는 않은 경우들이 있다. 특히, 하나의 그러한 응용은 필름 그레인 콘텐츠(Film Grain content)의 인코딩으로, 이 경우 분포는 가우시안(Gaussian) 또는 일반화 가우시안 분포를 이용 하여 어떤 계수들에 대해서는 보다 양호하게 근사(approximate)될 수 있다. 이것은 라플라시안 분포들을 보다 잘 맞추기 위해서 이용되는 기법들이 그러한 콘텐츠를 인코딩하는 데에는, 특히 조악한 주관적 및 객관적 성능으로 귀결되는 높은 비트레이트(작은 양자화 스텝 사이즈)에서는 적합하지 않을 수 있음을 시사한다. 과거 연구의 일부는 또한 분포가 상이할 수 있음(가우시안, 코시(Cauchy), 일반화 가우시안 등)을 시사하지만, 그것들은 일반적으로 양자화 프로세스의 설계에 대한 다소 복잡한 모델들을 제공한다.
DCT AC 계수들의 분포는 다수의 경우에 라플라시안 분포를 따른다는 것이 문서화되어 있다.
Figure 112006093014007-pct00001
이러한 관찰에 기초하여 이전의 연구는 소스의 실제 계수 분포에 적합할 수 있는 라플라시안 분포, 및 그 설계에 기초하여 가중된 양자화 행렬들 및 양자화 동안 이용될 데드존(dead-zone)을 추정하려고 시도하였다. 그러한 파라미터를 찾는 가장 간단한 방법은 표준 편차를 이용하는 것이다.
Figure 112006093014007-pct00002
이 추정은 AC 계수들의 각각에 대하여 개별적으로 행해지고, 또한 채도 AC 계수들에 대해서도 동일한 프로세스가 독립적으로 적용된다.
상기한 프로세스는, 예를 들면, 최적의 재구성 값들의 선택 또는 양자화 행렬들의 설계를 위해, 양자화 프로세스의 적응적 설계를 가능하게 한다. 그러한 프 로세스는, 예를 들면 최소 평균 제곱 오차로 귀결되는 양자화 팩터(Q)가 먼저 계산되는 경우에 수행될 수 있다.
Figure 112006093014007-pct00003
상기는 최량의 양자화 값을 결정하고, 그 후 실험적으로 지각 가중된 계수들의 테이블을 결정하기 위해 용이하게 평가될 수 있다는 것이 주장되었다. 기본 행렬의 결정은 그 후 각각의 MSE-최적 Q와 지각 가중치를 곱하고, 그 후 그들을 행렬 내로 모으고, 마지막으로 행렬을 주어진 비트레이트에 적합하게 스케일링하고 라운딩함으로써 수행된다.
그럼에도, 다른 연구는, 분포가 가우시안 또는 일반화 가우시안 분포에 더 가깝다는, 즉 다음의 분포 모델을 따른다는 주장으로, 라플라시안 분포의 주장을 반박하려고 시도하였다.
Figure 112006093014007-pct00004
여기서 Γ(ㆍ)는 감마 함수
Figure 112006093014007-pct00005
를 나타내고, ν 및 σ는 양의 실수이다. n 정수 값들에 대한 Γ(ㆍ)는
Figure 112006093014007-pct00007
이 되고 2분의 1의 정수 인수에 대해서는
Figure 112006093014007-pct00008
는 다음과 같은 다른 특수 형태를 갖는다.
Figure 112006093014007-pct00009
여기서 n!!은 더블 팩토리얼이다. 따라서 n=1, 3, 5,...에 대한 처음 몇 개의 값들은 다음과 같다.
Figure 112006093014007-pct00010
ν=1 및 ν=2의 경우, 상기 일반화 가우시안은 각각 라플라시안 또는 가우시안 PDF가 된다는 것이 바로 관찰된다. ν 및 σ 파라미터들을 제공하기 위하여 주어진 이미지 또는 시퀀스의 통계를 맞추기 위해 최대 우도(maximum likelihood) 방법이 이용되고, 상기 파라미터들은 그 후 최적의 양자화 값들을 결정하기 위해 라플라시안 경우에서와 유사한 방식으로 이용된다.
H.264 표준은 최근까지 양자화 프로세스 동안 그러한 특성들로부터 득을 보는 어떠한 메커니즘도 제공하지 않았다. 더 구체적으로, 그 표준은 인코더가 양자화 동안 라운딩을 어떻게 수행해야 하는지를 특정하지 않고, 디코더 재구성 레벨들이 균일 양자화를 이용하여 어떻게 계산되는지를 특정할 뿐이다. 한편, H.264 참조 소프트웨어는 DC 및 AC 양쪽 모두의 계수들이 라플라시안 분포를 만족시켰고 그에 기초하여 고정 라운딩(인트라 코딩의 경우 3/1 및 인터 코딩의 경우 1/6)이 이 용되었다는 가정을 하였다. 유감스럽게도, 그 계수들은 종종 라플라시안 분포가 아니고, 결국 다수의 H.264 인코더 구현 내에서, 특히 보다 높은 비트레이트 및 해상도에서 매우 조악한 주관적 및 객관적 성능으로 귀결된다. 이것은 부분적으로는 그 표준이 4×4 변환만을 고려하였고, 따라서 비상관 계수들이 덜 효율적이고, 또한 같은 스텝 양자화기들 및 다소 공격적인 데드조닝 프로세스(aggressive dead-zoning process)가 높은 비트레이트에서도 대부분의 AC 계수들을 내팽개치는 경향이 있기 때문이다. 이 때문에, 그 표준에 8×8 변환이 재도입되었고, 또한 양자화 행렬들도 채택되어 양자화 프로세스의 보다 미세한 튜닝을 허용하였다. 양자화 행렬 프로세스보다 낮은 복잡도를 갖는 재구성된 계수 값의 변형을 허용한 대안적인 방법도 제안되었다. 이러한 방법에 기초하여, 다음 수학식
Figure 112006093014007-pct00011
를 이용하여 W와 같은 계수의 양자화 및 역양자화를 수행하는 대신에(상기 수학식에서 Z는 최종 양자화 레벨이고, Δ는 양자화 스텝 사이즈이고, f는 양자화 프로세스를 위한 라운딩 항(rounding term)으로 기능한다(도 2의 A 및 B 참조)), 다음 수학식을 이용하여 양자화가 수행된다.
Figure 112006093014007-pct00012
상기 수학식에서 Θ는 최종 재구성 값의 오프세팅을 허용하는 추가적인 파라미터이다(도 3 참조). 이것은 계수가 0으로 설정되어 결국 주관적 및 객관적 성능이 저하될 수 있는 확률을 효과적으로 저감시킨다. 도 2의 A를 참조하면, 스텝 사이즈 Δ를 갖고 f=Δ/2인 균일 양자화기에 대한 입력 신호 W와 역양자화된 출력 신호 W' 간의 관계가 참조 번호 200으로 일반적으로 지시되어 있다. 도 2의 B를 참조하면, 스텝 사이즈 Δ를 갖고 f=Δ/4인 균일 양자화기에 대한 입력 신호 W와 역양자화된 출력 신호 W' 간의 관계가 참조 번호 250으로 일반적으로 지시되어 있다. 도 3을 참조하면, 양자화 프로세스 내의 Θ=Δ/4의 영향이 참조 번호 300으로 일반적으로 지시되어 있다.
<발명의 개요>
종래 기술의 이들 및 다른 결점들 및 불리한 점들은 비디오 인코더 및 디코더에서의 양자화를 위한 방법 및 장치에 관한 본 발명에 의해 다루어진다.
본 발명의 일 양상에 따르면, 이미지 블록에 대한 비디오 신호 데이터를 인코딩하는 인코더가 제공된다. 상기 인코더는 상기 이미지 블록에 대한 변환 계수들을 수신하고, 또한 상기 변환 계수들의 계수 위치 및 계수 분포에 기초하여 데드존 양자화를 적응적으로 수행하는 양자화기를 포함한다.
본 발명의 다른 양상에 따르면, 이미지 블록에 대한 비디오 신호 데이터를 인코딩하는 방법이 제공된다. 상기 방법은 상기 이미지 블록에 대한 변환 계수들을 수신하는 단계와, 상기 변환 계수들의 계수 위치 및 계수 분포에 기초하여 데드존 양자화를 적응적으로 수행하는 단계를 포함한다.
본 발명의 또 다른 양상에 따르면, 이미지 블록에 대한 비디오 신호 데이터를 디코딩하는 디코더가 제공된다. 상기 디코더는 상기 이미지 블록에 대한 변환 계수들을 수신하고, 또한 상기 변환 계수들의 계수 위치 및 계수 분포에 기초하여 데드존 양자화를 적응적으로 수행하는 양자화기를 포함한다.
본 발명의 또 다른 양상에 따르면, 이미지 블록에 대한 비디오 신호 데이터를 디코딩하는 방법이 제공된다. 상기 방법은 상기 이미지 블록에 대한 변환 계수들을 수신하는 단계와, 상기 변환 계수들의 계수 위치 및 계수 분포에 기초하여 데드존 양자화를 적응적으로 수행하는 단계를 포함한다.
본 발명의 이들 및 다른 양태들, 특징들 및 이점들은 첨부 도면들과 관련하여 설명되는 예시적인 실시예들에 대한 이하의 상세한 설명으로부터 명백해질 것이다.
본 발명은 이하의 예시적인 도면들에 따라서 더 잘 이해될 수 있다.
도 1은 종래 기술에 따른 전형적인 변환 기반 압축 시스템에 대한 블록도를 도시한다.
도 2의 A 및 B는 스텝 사이즈 Δ를 갖고 각각 f=Δ/2 및 f=Δ/4인 균일 양자화기에 대한 입력 신호 W와 역양자화된 출력 신호 W' 간의 관계의 그래프를 도시한다.
도 3은 양자화 프로세스 내의 Θ=Δ/4의 영향의 그래프를 도시한다.
도 4는 높은 텍스처 SD 시퀀스에 대한 인트라 코딩된 블록들에 대한 변환 계수들의 분포에 대한 그래프를 도시한다.
도 5는 레벨 1(QP 30) 주위의 분포에 대한 그래프를 도시한다.
도 6은 도 5의 분포에 대한 레벨 1(QP 30) 주위의 오차 기여에 대한 그래프 를 도시한다.
도 7은 레벨 1(QP 24) 주위의 분포에 대한 그래프를 도시한다.
도 8은 도 7의 분포에 대한 레벨 1(QP 24) 주위의 오차 기여에 대한 그래프를 도시한다.
도 9는 높은 텍스처 SD 시퀀스에 대한 인터 코딩된 블록들에 대한 변환 계수들의 분포에 대한 그래프를 도시한다.
도 10은 인터 레벨 1(QP 24) 주위의 분포에 대한 그래프를 도시한다.
도 11은 도 10의 분포에 대한 레벨 1(QP 24) 주위의 오차 기여에 대한 그래프를 도시한다.
도 12는 낮은 텍스처 QCIF 해상도 시퀀스 내의 인트라 코딩된 블록들에 대한 변화나 계수들의 분포에 대한 그래프를 도시한다.
도 13은 인트라 레벨 1(QP 24) 주위의 분포에 대한 그래프를 도시한다.
도 14는 도 13의 분포에 대한 레벨 1(QP 24) 주위의 오차 기여에 대한 그래프를 도시한다.
도 15는 낮은 텍스처 QCIF 해상도 시퀀스 내의 인터 코딩된 블록들에 대한 변화나 계수들의 분포에 대한 그래프를 도시한다.
도 16a는 인터 레벨 1(QP 24) 주위의 분포에 대한 그래프를 도시한다.
도 16b는 도 16a의 분포에 대한 레벨 1(QP 24) 주위의 오차 기여에 대한 그래프를 도시한다.
도 17은 직각 사다리꼴을 이용한 f의 계산에 대한 도면을 도시한다.
도 18은 중앙값 선택(면적 균등화)을 통한 도 12의 낮은 텍스처 Θ의 선택에 대한 그래프를 도시한다.
도 19는 직각 사다리꼴을 이용한 Θ의 계산에 대한 도면을 도시한다.
도 20은 픽처 레벨에서의 변환 통계에 기초한 양자화를 위한 방법에 대한 흐름도를 도시한다.
도 21은 픽처 레벨에서의 변환 통계에 기초한 양자화를 위한 방법에 대한 흐름도를 도시한다.
도 22는 최적화된 양자화를 위해 변환 계수를 고려하는 인코더에 대한 블록도를 도시한다.
도 23은 최적화된 양자화를 위해 세타 파라미터 및 변환 계수를 고려하는 인코더에 대한 블록도를 도시한다.
도 24는 디코더에 대한 블록도를 도시한다.
본 발명은 비디오 인코더 및 디코더에서의 양자화를 위한 방법 및 장치에 관한 것이다.
변환 기반 이미지 및 비디오 코딩에서, AC 계수들이 그들의 분포에서 0 주위에서 예리한 집중을 갖는 경향이 있다는 것을 고려하여, 양호한 레이트-왜곡 성능을 성취하려는 시도에서 데드존 양자화가 이용된다. 데드존 양자화 방법의 설계는 통상적으로 계수들이 라플라시안 또는 가우시안 (정상) 분포를 따른다는 가정으로 수행된다. 유감스럽게도, 대부분의 경우에, (각각의 대응하는 양자화 간격에 관 한) 부분 분포는 고려되지 않고, 이는 결국 성능 저하로 귀결될 수 있다. 또한, 설계는 주로 객체 측정에 기초하는데, 이 또한 결국 비주얼 아티펙트 및 실질적으로 저하된 주관적 품질의 원인이 될 수 있다. 본 발명의 원리들에 따르면, 이미지 특징들, 양자화 스텝 사이즈, 및 재구성 레벨에 따라서 데드존 파라미터들을 적응적으로 선택함으로써, 주관적 품질의 향상을 가능케 할 수 있고, 또한 많은 경우에 객관적 품질의 향상도 가능케 할 수 있는 몇몇 방법들이 제공된다. 이 방법들 중 일부는 인코더 내에서의 고려만을 필요로 하지만, 다른 전략들도 디코더 설계에 영향을 미칠 수 있고, 인코딩된 비트스트림 내에 추가적인 정보가 존재할 것을 요구한다.
본 설명은 본 발명의 원리들을 예시한다. 따라서 숙련된 당업자라면, 본 명세서에 명시적으로 기술되거나 도시되지 않더라도, 본 발명의 원리들을 구현하고 그 사상 및 범위 내에 포함되는 다양한 배열 구성들을 고안할 수 있을 것이다.
본 명세서에서 상술된 모든 예들 및 조건부 언어는 본 발명의 원리들 및 발명자에 의해 기술 진전에 기여되는 개념들을 이해하는 것을 돕기 위한 교시적 목적으로 의도된 것이고, 그러한 구체적으로 상술된 예들 및 조건들에 제한되지 않는 것으로 해석되어야 할 것이다.
또한, 본 명세서에서 본 발명의 원리들, 양상들, 및 실시예들은 물론 그 구체적인 예들을 상술하는 모든 진술들은 본 발명의 구조적 및 기능적 균등물들을 모두 포함하는 것으로 의도된다. 또한, 그러한 균등물들은 현재 알려진 균등물들은 물론 장차 개발되는 균등물들, 즉 구조에 관계없이 동일한 기능을 수행하는 임의의 개발되는 엘리먼트들을 모두 포함하는 것으로 의도된다.
따라서, 예를 들면, 숙련된 당업자라면 본 명세서에서 제시된 블록도들이 본 발명의 원리들을 구현하는 예시적인 회로의 개념적 도시들을 나타낸다는 것을 알 것이다. 유사하게, 임의의 플로차트, 흐름도, 상태 천이도, 의사코드 등은 컴퓨터 판독 가능한 매체 내에 실질적으로 표현될 수 있고 따라서 컴퓨터 또는 프로세서(그러한 컴퓨터 또는 프로세서가 명시적으로 도시되어 있든 아니든)에 의해 실행될 수 있는 다양한 프로세스들을 나타낸다는 것을 알 것이다.
도면들에 도시된 다양한 엘리먼트들의 기능들은 전용 하드웨어의 이용은 물론 적당한 소프트웨어와 관련하여 소프트웨어를 실행할 수 있는 하드웨어의 이용을 통하여 제공될 수 있다. 프로세서에 의해 제공될 때, 기능들은 단일 전용 프로세서에 의해, 단일 공유 프로세서에 의해, 또는 그 중 일부가 공유될 수 있는 복수의 개별 프로세서들에 의해 제공될 수 있다. 또한, "프로세서" 또는 "컨트롤러"라는 용어의 명시적인 사용은 소프트웨어를 실행할 수 있는 하드웨어만을 배타적으로 언급하는 것으로 해석되어서는 안 되고, 암시적으로 디지털 프로세서("DSP") 하드웨어, 소프트웨어를 저장하기 위한 판독 전용 메모리("ROM"), 랜덤 액세스 메모리("RAM"), 및 비휘발성 기억 장치를 포함할 수도 있지만, 이들에 제한되는 것은 아니다.
종래의 및/또는 주문형의 다른 하드웨어도 포함될 수 있다. 유사하게, 도면들에 도시된 임의의 스위치들은 개념적인 것일 뿐이다. 그들의 기능은 프로그램 로직의 동작을 통하여, 전용 로직을 통하여, 프로그램 제어 및 전용 로직의 상호작 용을 통하여, 또는 심지어 수동적으로 수행될 수 있고, 특정 기법은 전후 관계로부터 더 구체적으로 이해되는 바와 같이 수행자에 의해 선택 가능하다.
본 명세서의 청구항들에서, 지정된 기능을 수행하기 위한 수단으로서 표현된 임의의 엘리먼트는, 예를 들면, a) 그 기능을 수행하는 회로 엘리먼트들의 조합 또는 b) 임의의 형태의 소프트웨어를 포함하는, 따라서, 그 기능을 수행하는 소프트웨어를 실행하기 위한 적당한 회로와 조합된, 펌웨어, 마이크로코드 등을 포함하는 그 기능을 수행하는 임의의 방법을 망라하는 것으로 의도된다. 그러한 청구항들에 의해 정의된 발명은 다양한 열거된 수단들에 의해 제공된 기능성들이 청구항들이 필요로 하는 방식으로 함께 조합되고 결합된다는 사실에 있다. 따라서 이들 기능성들을 제공할 수 있는 임의의 수단들은 본 명세서에서 도시된 것들과 균등한 것으로 간주된다.
본 발명의 원리들에 따라서, 변환 기반 이미지 또는 비디오 인코더 내에서 이용될 수 있는, 데드존, 각 레벨에 대한 양자화 영역들, 및 양자화 가중 행렬들과 같은 양자화 파라미터들의 자동 계산을 위한 장치 및 방법의 다양한 실시예들이 기술되어 있다. 또한 디코더에 전송될 수 있고 양자화 프로세스 내에서 추가적인 유연성을 제공하고 주관적 및/또는 객관적 품질을 향상시킬 수 있는 새로운 세트의 양자화 오프세팅 행렬들이 개시되어 있다.
이 주제에 대한 대부분의 연구에서, 변환 기반 코덱들에서의 AC 계수 분포는 라플라시안인 경향이 있다고 주장되고 있다. 이러한 가정은 또한 양자화 프로세스의 설계에 특히 영향을 미치는 경향이 있는 H.264 코덱 내에서도 수반된다. 특히, 계수 W에 대한 H.264 참조 소프트웨어 내의 데드조닝 프로세스는 다음과 같이 고정 라운딩 팩터 f를 고려하여 수행된다.
Figure 112006093014007-pct00013
여기서, Z는 매핑된 양자화 레벨이고, Δ는 양자화 스텝 사이즈이다. f를 감소시킴으로써, 재구성 값 0 주위의 데드존은 본질적으로 증가되고, 모든 다른 레벨들에 대해서도 양자화 영역은 f에 따라서 동등하게 시프트된다. 이 프로세스는 도 2의 A 및 도 2의 B에서 더 잘 알 수 있다. 그러한 라플라시안 분포를 근사하려는 시도에서 f는 인트라 슬라이스들에 대해서는 Δ/3으로, 인터 슬라이스들에 대해서는 Δ/6으로 선택되었다. 도 2의 A 및 2의 B를 참조하면, 스텝 사이즈 Δ를 갖고 각각 f=Δ/2 및 f=Δ/4인 균일 양자화기에 대한 입력 신호 W와 역양자화된(재구성된) 출력 신호 W' 간의 관계들이 각각 참조 번호들 200 및 250으로 일반적으로 지시되어 있다.
그럼에도, 이 주장이 항상 올바른 것은 아니고 콘텐츠와 계수에 매우 의존적이라는 것이 관찰될 수 있다(예컨대, 도 4 내지 16b 참조). 도 4에는, 높은 텍스처 SD 시퀀스에 대한 인트라 변환 (4×4) 계수 분포가 참조 번호 400으로 일반적으로 지시되어 있다. 도 5에는, 이 시퀀스에 대한 레벨 1(QP30) 주위의 인트라 계수 분포가 참조 번호 500으로 일반적으로 지시되어 있다. 도 6은 레벨 1 주위의 상기 계수 분포에 대한 오차 기여를 도시하는 것으로, 참조 번호 600에 의해 일반적으로 지시되어 있다. 그러나 도 7은 이 시퀀스에 대한 보다 작은 양자화기를 이용한 레 벨 1(QP24) 주위의 인트라 계수 분포를 예시하는 것으로, 이 인트라 계수 분포는 참조 번호 700에 의해 일반적으로 지시되어 있다. 도 6과 유사하게, 도 8은 레벨 1 주위의 상기 계수 분포에 대한 오차 기여를 도시하는 것으로, 참조 번호 800에 의해 일반적으로 지시되어 있다. 도 9에는, 이 높은 텍스처 SD 시퀀스에 대한 인터 변환 (4×4) 계수 분포가 참조 번호 900에 의해 일반적으로 지시되어 있다. 이 분포에 대하여, 도 10은 인터 레벨 1(QP24) 주위의 분포를 도시하는 것으로, 참조 번호 1000에 의해 일반적으로 지시되어 있다. 도 11을 참조하면, 레벨 1 주위의 상기 계수 분포에 대한 오차 기여가 참조 번호 1100에 의해 일반적으로 지시되어 있다. 이와 비교하여, 도 12를 참조하면, 낮은 텍스처 QCIF 시퀀스에 대한 인트라 변환 (4×4) 계수 분포가 참조 번호 1200에 의해 일반적으로 지시되어 있다. 도 13에는, 이 시퀀스에 대한 레벨 1(QP 24) 주위의 인트라 계수 분포가 참조 번호 1300에 의해 일반적으로 지시되어 있다. 도 14는 레벨 1 주위의 상기 계수 분포에 대한 오차 기여를 도시한 것으로, 참조 번호 1400에 의해 일반적으로 지시되어 있다. 도 15에는, 이 낮은 텍스처 QCIF 시퀀스에 대한 인터 변환 (4×4) 계수 분포가 참조 번호 1500에 의해 일반적으로 지시되어 있다. 이 분포에 대하여, 도 16a는 레벨 1(QP 24) 주위의 분포를 도시하는 것으로, 참조 번호 1600에 의해 일반적으로 지시되어 있다. 도 16b를 참조하면, 레벨 1 주위의 상기 계수 분포에 대한 오차 기여가 참조 번호 1650에 의해 일반적으로 지시되어 있다. 이들 도면들에서는, 각 변환 계수에 대한 적당한 스케일링도 고려되었다는 것에 유의하자. 도 12 내지 16b에 도시된 QCIF 시퀀스와 같은 낮은 해상도 및 상세 콘텐츠에 대해서는, 그 계수들의 분포가 라플라시안에 더 가까울 수 있지만, 계수에 따라 상당한 차이가 있다. 라플라시안 분포를 가정하면, 보다 높은 차수의 계수들은 보다 낮은 차수의 계수들보다 더 빨리 감쇠하는(보다 작은 감쇠율 λ 또는 보다 큰 분산) 경향이 있다. 이것은 바로 주파수 전역에서 유사한 모델을 취하는 대신에, 계수들이 그들의 차수에 따라서 다르게 취급될 필요가 있다는 것을 시사한다. 이것은 고해상도 콘텐츠의 경우 특히 노이즈(예컨대, 필름 그레인 노이즈)를 포함할 수도 있고, 또한 계수 분포에 상당히 영향을 미칠 수 있는 필름 또는 고도로 텍스처된 콘텐츠의 경우 한층 더 명백해진다(도 4 내지 11). 그러한 노이즈는 샘플들 사이에서 낮은 분산 내지 중간 분산으로서 스스로를 표현하는 경향이 있고, 그 자체가 가우시안에 더 가까운 분포에 영향을 미친다. 명백히, H.264 기준 소프트웨어에 의해 사용되는 고정 라운딩 파라미터 f를 사용함으로써, 그러한 것이 빈도에 따라서 변경된다 하더라도, 이러한 종류의 분포는 적당하게 설명되지 않아, 결국 비균등 양자화 프로세스로 귀결된다. 특히 (매우 높은 비트레이트 내지 중간 비트레이트에 대응하는) 낮은 양자화 파라미터 내지 중간 양자화 파라미터의 경우 양자화 레벨 내와 근처의(특히 레벨 1 주위의) 부분 분포는 어떤 경우에는 균일하거나 또는 균일에 가깝게 될 수 있다는 것이 실제로 관찰된다(도 5, 7, 10, 13). 이러한 상황에서, f의 선택은 다소 결정적일 수 있는데, 그 이유는 부적당하게 큰 데드존은 필요 이상의 계수들이 0으로 양자화되는 결과로 귀결될 수 있고, 이는 저하된 객관적 품질, 더 중요하게는 주관적 품질의 원인이 될 수 있다.
이 문제는 그 베이스라인(Baseline), 메인(Main), 및 확장(Extended) 프로파 일들이 정수 4×4 변환의 이용만을 허용하는 것을 고려하는 H.264의 경우 더 결정적인 경향이 있다. 4×4 변환은, 블록킹 및 링잉 현상(blocking and ringing artifacts)의 저감, 비트 정밀 구현 등과 같은 몇몇 매우 좋은 특성을 갖는 경향이 있지만, 그럼에도 그것은 8×8 변환보다 더 낮은 비상관 특성을 가지면서도, 양자화 결정에 더 민감하다. 특히, 26의 양자화 값(QP)을 이용하여 다음의 블록의 양자화를 수행하는 것이 요망된다고 가정할 때(f는 Δ/2와 같은 것으로 간주된다),
Figure 112006093014007-pct00014
양자화 프로세스는 다음과 같을 것이다.
Figure 112006093014007-pct00015
최초의 블록이 높은 수직 및 낮은 수평 활동에 의해 기술된다 하더라도 그리고 QP가 매우 높지 않다 하더라도, 재구성된 블록 내의 모든 수평 활동은 소실된다는 것이 바로 관찰된다. 이 특정 블록에 대한 평균 제곱 오차(MSE)가 비교적 낮다(7.625) 하더라도, 이 프로세스의 주관적 영향은 이 블록의 지각 특성이 심하게 변경된 것을 고려할 때 다소 심할 수 있다. 보다 구체적으로, 재구성 후의 블록은 원래의 것에 비하여 다소 구조화되어 보는 사람에게 더 눈에 띄고 불쾌하게 된다.
상기한 바는 양자화 프로세스, 및 특히 레벨 1 대신에 레벨 0으로의 계수의 할당의 즉각적인 결과이다. 만일 모든 계수들이 수평으로든 수직으로든 0으로 설 정되면 그 결과는 상기한 바와 같을 것이다. 그럼에도, 그러한 것은 영향을 받은 디멘전(dimension) 내의 몇몇 계수(적어도 하나)를 선택적으로 0 대신에 1로 강제함으로써 방지될 수 있다. 첫째로, 그러한 프로세스가 필요한지 여부가 판정될 필요가 있다. 특히, 그러한 특징은 열 방향 또는 행 방향 분산(즉, 블록 내의 모든 행 또는 열에 대한 분산들의 합계)이 비교적 작을 경우 발생하기 쉽다. 그러한 값들은 다음과 같이 계산될 수 있다.
Figure 112006093014007-pct00016
여기서 xi ,j는 행 i 및 열 j에 있는 화소 값에 대응한다. T1 < column_sVar < T2 또는 T3 < row_sVar < T4 가 만족된다면, 양자화 프로세스는 그러한 특징들을 고려하도록 변경될 수 있다. 또한, 전체 매크로블록 또는 블록의 분산은 다음과 같이 고려될 수 있다.
Figure 112006093014007-pct00017
여기서 Bv 및 Bh는 각각 블록 높이 및 폭이다. 보다 구체적으로, blockVar가 상이한 값 영역들에 대응하면 상이한 프로세싱이 적용될 수 있고, 또는 그에 따라서 T1, T2, T3, 및 T4의 값들이 적응될 수 있다(예컨대, blockVar에 의존하는 표 검색을 이용하여). 실제로 권장되기로는 전체 이미지에 대한 AC 계수들에 대한 분포 통계만 을 수집하는 대신에, 상이한 특징들을 갖는 영역들에 대한 분포가 추가로 수집될 수 있고 이는 양자화 프로세스의 보다 정확하고 세련된 적응을 가능케 한다.
4×4 변환 내의 수평 및/또는 수직 분산을 (필요에 따라) 인위적으로 도입하는 다소 간단한 방법은 위치 (1,0) 및/또는 (0,1)에서의 AC 계수들이 레벨 1로 설정되는 확률을 실시하거나 증가시키는 것이다. 이것은 그 계수들이 원래의 f 값을 이용하여 0으로 확인된 경우에만 그 계수들에 대하여 f의 값을 증가시킴으로써 행해질 수 있다. 예를 들면, 상기 특징들이 만족되면(수직 또는 수평 분산), 그리고 가능하다면 (1,0) 계수를 유지하는 것이 요망된다고 가정하면, 다음의 프로세스가 수행될 수 있다.
계수 W1 ,0의 예비 레벨
Figure 112006093014007-pct00018
을 다음과 같이 계산한다.
Figure 112006093014007-pct00019
여기서 f1은 예비 라운딩 파라미터이다.
Figure 112006093014007-pct00020
이고 상기 조건들이 만족되면, 최종 레벨 Z1 ,0은 다음과 같이 계산된다.
Figure 112006093014007-pct00021
여기서 f2(f2>f1)는 레벨 1에서 매핑되는 이 계수의 우선 순위를 증가시키는 방법으로 선택된다.
이 실시예는, 어떤 경우에는 주관적 품질을 향상시킬 수는 있지만, 다른 경 우에는 주관적 품질을 손상시킬 수 있고, 또한 객관적 품질에 대한 영향을 전혀 고려하지 않는다. 다른 접근법은 먼저 모든 계수들에 대하여 예비 양자화를 수행하는 것이다. 이것은 기본적으로 다음과 같이 변환 행렬 W 및 예비 양자화 행렬
Figure 112006093014007-pct00022
로 귀결될 것이다.
Figure 112006093014007-pct00023
j>0인 모든 열에 대하여
Figure 112006093014007-pct00024
가 0이거나, 및/또는 i>0에 대하여 모든
Figure 112006093014007-pct00025
가 0이면, 이들
Figure 112006093014007-pct00026
중에서 공급된 비용의 면에서 레벨 1로 설정되기에 가장 좋은 계수가 구해진다. 이것은 최소화 문제로, 최소 함수 J(레이트 왜곡 최적화 기법과 유사)는 다음과 같이 구해질 필요가 있다.
Figure 112006093014007-pct00027
Figure 112006093014007-pct00028
는 다음과 같은 상이한 왜곡 메트릭을 이용하여 설정될 수 있다.
Figure 112006093014007-pct00029
Figure 112006093014007-pct00030
는 하나의 계수를 변경하기 위한 실제 비트레이트 비용을 나타낼 수 있고, 또는 스캐닝 순서의 면에서 최종의 0이 아닌 계수로부터의 거리와 같을 수도 있고 다음과 같이 행렬 형태로 기술될 수 있다.
Figure 112006093014007-pct00031
수평 및 수직 계수들 양쪽 모두가 변경될 필요가 있는 경우(즉, DC를 제외한 모든 계수들이 0으로 양자화된 경우)에는, 다른 디멘전은 0이면서 수평 또는 수직 중 어느 한쪽의 계수들(즉, 0,j 또는 i,0)을 변경하는 것으로부터의 결합 비용이 고려될 필요가 있고, 다른 한편으로는, i 및 j 양쪽 모두가 0보다 큰 위치 (i,j)에 있는 단일 계수를 변경하는 것은 양쪽 디멘전에 직접 영향을 미칠 것이고 단일 비용이 이용될 수 있다.
4×4보다 더 큰 변환(즉, 8×8)에 대하여 유사한 접근법이 수반될 수 있다. 예를 들면 8×8 변환에서는 단일 수평 또는 수직 계수만이 아니라 그들 둘을 유지하는 것이 바람직한데, 그렇게 하는 것이 최초 텍스처의 보다 사실적인 재구성/표현을 가능케 할 수 있기 때문이다. 그러한 경우, 2개(또는 그 이상의) 계수들의 선택이 다시 공동으로 수행될 필요가 있고(모든 가능한 조합들을 검사함으로써), 또는 간소화를 위하여 먼저 각 계수를 개별적으로 최적화하는 것이 시도될 수도 있고, 각 단계에서는 비용 프로세스 내에서 이전의 계수 변경이 고려된다. 필요하다면 4×4에 대하여 유사한 방법으로 더 많은 계수들이 유지될 수도 있다. 보다 구체적으로 그 프로세스는 다음과 같이 수행될 수 있다.
변환 행렬 W 및 예비 양자화 행렬
Figure 112006093014007-pct00032
는 다시 다음과 같이 계산된다.
Figure 112006093014007-pct00033
Figure 112006093014007-pct00034
에 기초하여, 단일 계수를 레벨 0에서 레벨 1로 변경하기 위한 비용 행렬이 계산 된다.
Figure 112006093014007-pct00035
그 후 최소의 RD 기반 비용을 갖는 계수
Figure 112006093014007-pct00036
가 변경된다. 이것은 새로운 행렬
Figure 112006093014007-pct00037
로 귀결될 것이다.
Figure 112006093014007-pct00038
변경되어야 할 제2 계수는 다시
Figure 112006093014007-pct00039
와 같은 기준을 이용하여 선택되고 여기서
Figure 112006093014007-pct00040
는 새로운 레벨 행렬
Figure 112006093014007-pct00041
에 기초하여 계산된다. 이 프로세스는 유지될 필요가 있는 추가적인 계수들의 수에 따라서 필요한 대로 반복될 수 있다.
상기 방법들을 이용하여 어떤 경우에는 주관적 품질이 얼마간 향상될 수 있지만, 그럼에도 계수 분포에 기초하여 f2를 보다 잘 선택함으로써 그리고 생성된 왜곡을 최소화시킴으로써 주관적 및 객관적 양쪽 모두의 품질을 향상시킬 수 있는 대안적인 방법이 이용될 수 있다. 종전대로, 계수 W1 ,0의 예비 레벨
Figure 112006093014007-pct00042
이 다시 다음과 같이 계산된다.
Figure 112006093014007-pct00043
여기서 f1은 예비 라운딩 파라미터이다.
Figure 112006093014007-pct00044
이고 상기 조건들이 만족되면, 최종 레벨 Z1 ,0은 다음과 같이 계산된다.
Figure 112006093014007-pct00045
여기서 f2(f2>f1)는 레벨 1에서 매핑되는 이 계수의 우선 순위를 증가시키는 방법으로 선택된다. 이제 f2는 계수들의 분포를 검사하여 계산될 수 있다. 그러한 분포는 현재의 데이터의 사전 분석을 수행함으로써, 또는 현재의 분포가 동일한 유형의 (현재의 또는 이전의 픽처들에서의) 이전에 코딩된 블록들의 분포와 유사한 특성들을 가질 것임을 가정함으로써 수집될 수 있다. 예비 레벨이
Figure 112006093014007-pct00046
라고 가정하여, 이 레벨 주위의 분포 면적이 계산될 수 있다. 이것은 분포의 정확한 통계를 고려함으로써, 또는 모델 기반 방법들을 이용함으로써(예컨대, 라플라시안 또는 가우시안 모델들의 이용) 행해질 수 있다. 주어진 분포 영역에 대한 최적의 양자화 점을 판정하기 위한 통상의 방법은 대략 분포의 중앙점(즉, 분포를 2개의 동등한 크기의 면적들 AZ +?AZ -로 분리하는 점)으로서 선택될 수 있다. 부분 분포가 거의 부분 선형임을 가정함으로써, 이 중앙점은 근사라는 것에 유의해야 할 것이다. 보다 정확한 전략은 로이드-맥스(Lloyd Max) 방법을 이용하고 오차를 최소화하는 점을 찾는 것이다. 부분 선형 분포를 만듦으로써, f2를 계산하기 위해, 도 17에서 볼 수 있 는, 직각 사다리꼴(즉, 2개의 직각을 갖는 사다리꼴)로부터의 특성들이 이용될 수 있다.
Figure 112006093014007-pct00047
도 17을 참조하면, 직각 사다리꼴을 이용한 f의 계산이 참조 번호 1700에 의해 일반적으로 지시되어 있다.
또한, 다음을 갖는다.
Figure 112006093014007-pct00048
f 및 제곱근 내의 값은 양쪽 모두 양의 값일 필요가 있다는 것에 유의하자.
비록 약간 더 복잡하기는 하지만, 심슨(Simpson) 또는 3/8 방법과 같은 다른 산술적 적분 방법들이 사다리꼴 방법 대신에 이용될 수 있다. 그러나 정확도는 떨 어지지만, 보다 간단한 전략은 먼저 x- = x+ = Δ를 설정함으로써
Figure 112006093014007-pct00049
로부터 각각 면적들 AZ + 및 AZ -를 먼저 계산하는 것이다. 그 후 비록 최적은 아니지만 충분히 양호한 해인
Figure 112006093014007-pct00050
가 선택된다. x-=2×f2이고 x+=2×(1-f2)라는 것에 유의하자. 이 방법은 또한 계수들을 주관적으로 최적화하는 앞서 기술된 방법과 조합될 수 있고, 그 경우 그 프로세스에서의
Figure 112006093014007-pct00051
는 새로운 f2 값에 기초하여 계산된다.
그럼에도 상기 방법은 각 양자화된 값에 의해 초래된 왜곡을 신중하게 고려하지 않는다. 면적 계산은 초래된 왜곡의 대략 동등한 가정에 의해 행해진다. 그 대신에 보다 적당한 방법은 그러한 계산 내의 실제 왜곡을 고려하는 것일 것이다. 즉, 면적 AZ + 및 AZ -는 다음과 같이 더 잘 계산될 수 있다.
Figure 112006093014007-pct00052
여기서
Figure 112006093014007-pct00053
는 재구성된 값
Figure 112006093014007-pct00054
와 x 간의 왜곡 메트릭, 예컨대, 제곱차, 즉
Figure 112006093014007-pct00055
, 또는 절대값 차, 즉
Figure 112006093014007-pct00056
일 수 있다. frequency (x)는 그 값이 x와 같은 계수들의 수에 대응한다. 이번에도 목표는 AZ +?AZ-를 만드는 것이다. 그러한 특성을 성취하는 간단한 방법은 먼저
Figure 112006093014007-pct00057
를 이용하여 AZ - 및 AZ +를 계산하고, f를 천천히 저감시켜 그러한 조건 또는 형식 AZ +≥AZ-의 조건이 만족되는 제1 위치를 구하는 것일 것이다. 이 프로세스를 수행하는 간단한 알고리즘은 다음과 같을 수 있다.
단계 1:
Figure 112006093014007-pct00058
를 설정한다.
Figure 112006093014007-pct00059
Figure 112006093014007-pct00060
를 계산한다.
단계 2:
Figure 112006093014007-pct00061
이면 프로세스를 종료한다.
단계 3:
Figure 112006093014007-pct00062
을 설정한다. f==0이면, f=1을 설정하고 프로세스를 종료한다.
단계 4:
Figure 112006093014007-pct00063
Figure 112006093014007-pct00064
을 설정한다. 단계 2로 간다.
상기 방법들은 성능(객관적 또는 주관적, 또는 양쪽 모두)을 향상시킬 수 있지만, 보다 높은 레벨을 인위적으로 도입하는 방법이 반드시 바람직하지는 않을 수도 있는데, 그것이 또한 최초 신호와 정확하게 일치하지 않을 것이기 때문이다. 이 때문에, 종래 기술은 어떤 간격으로(즉, 슬라이스마다) 비트스트림 내에서 전송될 수 있고 기본적으로 모든 계수들의 재구성 값들의 이행(시프트)을 도입하는 Θ 파라미터를 도입하였다(도 3 참조). 도 3을 참조하면, 양자화 프로세스 내의 Θ= Δ/4의 영향이 참조 번호 300에 의해 일반적으로 지시되어 있다. 도 3과 관련하여 f=Δ/4인 것으로 추정된다. 이것은 어떤 계수들이 선택적으로 0 레벨에서 레벨 1로 조정되는 본 발명과 유사하다. 그러나 그것은 본 발명과는 다른데, 종래 기술에서는 디코더가 그러한 조정을 인지하고 계수들을 더 정확하게 재구성할 수 있도록 코덱 표준에 대한 변경이 요구되지만, 본 발명에서는 그것이 불필요하기 때문이다. 종래 기술에서 제안된 방법은 (DC 계수를 포함하는) AC 계수들이 다소 상이한 분포들을 갖는 경향이 있다는 것을 고려하지 않는다. 그 대신에 보다 나은 접근법은 비트스트림 내에서 전송되는 행렬 Θ를 설계하는 것일 것이고, 그것은 각각의 상이한 계수에 대해 보다 나은 세련을 가능케 할 것이다. 이러한 접근법은 H.264 및 다른 코덱들 내의 양자화 행렬들에 대한 종래 기술의 고려와 매우 유사하다. H.264 FRExt 사양에서는 현재 12개의 상이한 양자화 가중 행렬들이 허용되고, 이것은 기본적으로 변환 사이즈 (4×4 대 8×8), 컬러 컴포넌트(Y, U, 및 V), 및 예측 유형(인트라 대 인터)에 따라서 나누어지는데, 이들은 다소 상이한 분포 특징들을 포함할 수 있는 기본 성분들이기 때문이다. 유사하게, 스케일링 대신에, 재구성 레벨들을 시프트하는 12개의 상이한 양자화 오프세팅 행렬들이 정의될 수 있다. 매크로블록 적응적 프레임-필드 코딩(Macroblock Adaptive Frame-Field coding)에 대해서만 이용 가능할 필요가 있고, 필드 및 프레임 매크로블록들을 구별할 추가적인 행렬들을 부가하는 것이 바람직할 수 있다. 그럼에도, 모든 재구성 값들이 시프트될 수 있기는 하지만, 가장 중요한 것은 레벨 1에 관련된 것임이 관찰된다. 이것은 재구성될 레벨이 레벨 1이면 Θ 파라미터만을 고려하는 것이 RD 성능의 면 에서 더 나을 것이라는 것을 시사한다. 특히 종래 기술에서는 재구성된 값 W'ij가 다음과 같이 계산될 수 있는 것으로 언급되었다.
Figure 112006093014007-pct00065
여기서 Vij 파라미터들은 역변환 프로세스에서 생기고 양자화기 값 QP에 관한 것이다. 우리의 경우, W'ij는 이제 Θ는 다음과 같이 계수 위치에 의존한다는 것도 고려하여 계산될 수 있다.
Figure 112006093014007-pct00066
다른 대안적인 방법은 다음과 같이 레벨에 따라서 Θ를 변경하는 것일 것이다.
Figure 112006093014007-pct00067
예를 들면,
Figure 112006093014007-pct00068
이 이용될 수 있다.
Θ를 계산하기 위하여, f2의 계산에서와 유사한 접근법이 이용될 수 있다. 여기에서의 아이디어는 분포의 면에서 중앙값에 대응하는 양자화 간격 Δ 내의 위치를 찾는 것이고, 또는 결국 기본적으로 Δ를 2개의 동등한 면적 영역들로 나누는 것이 된다(도 18 참조). 도 18을 참조하면, 중앙값 선택(면적 균등화)을 통한 Θ 의 선택에 대한 그래프가 참조 번호 1800에 의해 일반적으로 지시되어 있다. 이것 은 수작업으로(즉, 전체 면적을 계산하고, 그 후 그 면적을 반으로 나누는 점을 찾는), 모델 분포의 고려를 통하여 그리고 적분 계산을 수행함으로써, 또는 간단한 산술적 방법의 고려를 통하여 행해질 수 있다. 특히, 도 18로부터도 다시 우리의 부분 분포가 도 19로부터 알 수 있는 바와 같이 다시 직각 사다리꼴과 유사하다는 것이 관찰된다. 도 19를 참조하면, 직각 사다리꼴을 이용한 Θ의 계산에 대한 도면이 참조 번호 1900에 의해 일반적으로 지시되어 있다. 전체 면적은 다음과 같이 계산될 수 있다.
Figure 112006093014007-pct00069
그 면적이 2개의 동등한 면적 A/2, 즉
Figure 112006093014007-pct00070
로 나누어질 때 점 x=Δ/2+Θ가 구해질 것이다.
그럼에도 h3은, 유사한 삼각형 특성 때문에, 다음과 같을 것이다.
Figure 112006093014007-pct00071
따라서 상기 등식에서 h3을 치환하면 결과는 다음과 같이 될 것이다.
Figure 112006093014007-pct00072
음의 부호는 의미가 거의 없으므로, 다음과 같이 된다.
Figure 112006093014007-pct00073
A도 치환하면, 다음이 얻어진다.
Figure 112006093014007-pct00074
Θ는 또한 f의 계산에서 행해진 것과 유사하게 실제 왜곡 및 계수 빈도를 고려함으로써 계산될 수 있다. 여기서는, f를 변경하는 대신에, 첫 번째 재구성된 값은 변경될 필요가 없다. 즉, 취지는
Figure 112006093014007-pct00075
이 되는 재구성 값
Figure 112006093014007-pct00076
를 구하는 것이다. 다시 이것은 f에서와 유사한 전략을 이용하여 다음과 같이 행해질 수 있다.
단계 1:
Figure 112006093014007-pct00077
를 설정한다.
단계 2:
Figure 112006093014007-pct00078
Figure 112006093014007-pct00079
를 계산한다.
단계 3: AZ +≥AZ -이면 프로세스를 종료한다.
단계 4:
Figure 112006093014007-pct00080
을 설정한다.
Figure 112006093014007-pct00081
이면 프로세스를 종료한다.
단계 5: 단계 2로 간다.
Θ 값들의 계산 및 성능을 더 향상시키기 위하여, 0으로 설정된 계수들의 수가 고려될 수도 있다. 특히, 0으로 강제되는 어떤 AC 계수, 즉 위치 (i,j)에 있는 AC 계수의 백분율을 제한하는 것이 바람직할 수 있다. 백분율은 매크로블록들의 세트, 슬라이스, 픽처, GOP, 또는 심지어 시퀀스 레벨에서 계산될 수 있다. 그러 한 결정은 인코더에서 미리 정의된 백분율 값을 제공함으로써 암시적으로 행해지거나, 또는 값이 0으로 설정되면 분산 또는 왜곡과 같은 시퀀스의 어떤 통계를 고려함으로써 자동으로 행해질 수 있다. 분포가 현재의 분포 모델을 이용하여 이 백분율이 상당히 초과되는 것을 시사하면, 품질을 향상시키기 위하여 Θ의 값을 더 증가시키는 것이 최선일 것이다. 이 특성을 고려하는 간단한 방법은 0 레벨에 대하여 이 관계를 만족시키는 계수 값을 구하고, 그에 따라서 상기 Θ 계산에서 이용되는 Δ 값을 증가시키는 것이다. 예를 들면, 0이 위치 y(y<Δ/2)에서 백분율 X%를 만족시킨다고 가정하면,
Figure 112006093014007-pct00082
와 같은 새로운 △'가 이용되고 다음과 같이 Θ를 계산한다.
Figure 112006093014007-pct00083
Θ는 또한 필요하다면 a≤Θ<b와 같이 제한될 수 있다(예를 들면 a는 0으로 설정될 수 있고 b=Δ/2이다). 직각 사다리꼴 면적 계산은 또한 f2를 계산하는 데 필요한 AZ- 및 AZ + 면적들의 근사를 수행하는 데 이용될 수도 있어, 이들 면적 내의 분포의 전체 적분을 수행할 필요가 없다. 일반적으로, 사다리꼴 근사는 이들 면적을 계산하기 위해 임의의 간격으로 이용될 수 있다.
마지막으로 분포는 또한 양자화 가중 행렬들의 계산을 위해 이용될 수 있다. 지각 분석에 기초하여 가중 계수들이 이미 알려져 있다고 가정하여, 가중 계수들은 또한 모든 계수들에 대한 분포를 균등화하려고 시도함으로써 스케일링될 수 있다. 이것은 (a) 각 계수의 최대 값 및 주어진 값에 대해 비교된(예컨대, DC에 대해 비교된) 그것의 비율 계산; (b) 0에서 시작하여 분포의 특정 백분율(예컨대, 95%) 내의 각 계수에 대한 최대 이용 가능한 값; 및 (c) 0에서 시작하여 분포의 특정 별개의 백분율 Pi ,j 내의 각 계수에 대한 최대 이용 가능한 값을 고려하여 수행될 수 있다.
모든 계수들의 분포가 고려될 수 있지만, 통상적으로 주관적 품질 면에서 어느 영역들이 더 중요하게 고려되는지를 판정하고(통상적으로 낮은 분산 특징들을 갖는 영역들), 그러한 계산을 위하여 이들 영역만을 이용하는 것이 더 좋다. 그럼에도, 그러한 것도 남아 있는 영역들에 대한 성능을 손상시킬 수 있고, 따라서 대안은 이들 계산을 전체 이미지에 대하여 및 각 영역에 대하여 개별적으로 수행하고, 그 후 이들 결과들을 결합하여(즉, 각 영역의 중요성, 즉 주관적 영향, 발생 수 등에 기초한 가중 평균 방법들을 이용하여), 최종 가중 행렬들을 계산하는 것일 것이다.
도 20을 참조하면, 픽처 레벨에서의 변환 통계에 기초한 양자화를 위한 방법이 참조 번호 2000에 의해 일반적으로 지시되어 있다. 이 방법(2000)은 이미지 데이터의 인코딩에 관하여 실시된다.
시작 블록(2005)은 기능 블록(2010)에 제어를 넘겨준다. 기능 블록(2010)은 분포 어레이들을 초기화하고, 루프 한계 블록(2015)에 제어를 넘겨준다. 루프 한계 블록(2015)은 픽처 코딩 루프를 시작하고, 기능 블록(2020)에 제어를 넘겨준다. 기능 블록(2020)은 인코딩에 대비하여 픽처 레벨 양자화 파라미터들을 결정하고, 픽처 결정들을 수행하는 등등을 행하고, 루프 한계 블록(2025)에 제어를 넘겨준다. 루프 한계 블록(2025)은 매크로블록 코딩 루프를 시작하고, 기능 블록(2030)에 제어를 넘겨준다. 기능 블록(2030)은 처리되고 있는 현재의 매크로블록의 양자화 파라미터를 판정/선택하고, 루프 한계 블록(2035)에 제어를 넘겨준다. 루프 한계 블록(2035)은 예측 모드 루프를 시작하고, 기능 블록(2040)에 제어를 넘겨준다. 기능 블록(2040)은 현재의 매크로 블록에 관하여 인트라 또는 인터 예측을 수행하고, 루프 한계 블록(2045)에 제어를 넘겨준다. 루프 한계 블록(2045)은 (처리되고 있는 현재의 매크로블록 내의) 모든 4×4 블록들에 대한 변환 루프를 시작하고, 기능 블록(2050)에 제어를 넘겨준다. 기능 블록(2050)은 처리되고 있는 현재의 4×4 블록의 변환을 수행하고, 기능 블록(2055)에 제어를 넘겨준다. 기능 블록(2055)은 1/2의 오프셋을 이용하여 현재의 4×4 블록을 양자화하여 모든 변환 계수마다의 레벨i,j을 획득하고, 기능 블록(2060)에 제어를 넘겨준다. 기능 블록(2060)은 분포 어레이들을 체크하여 레벨i,j 양자화 파라미터 및 i,j에 기초하여 최적의 오프셋 fi ,j를 판정하고, 기능 블록(2065)에 제어를 넘겨준다. 기능 블록(2065)은 fi ,j를 새로운 오프셋으로 이용하여 위치 i,j에 있는 계수를 재양자화하고, 루프 한계 블록(2070)에 제어를 넘겨준다. 루프 한계 블록(2070)은 변환 루프를 종료하고 루프 한계 블록(2075)에 제어를 넘겨준다. 루프 한계 블록(2075)은 예측 모드 루프를 종료하고 기능 블록(2080)에 제어를 넘겨준다. 기능 블록(2080)은 분포 어레이들 을 업데이트하고, 루프 한계 블록(2085)에 제어를 넘겨준다. 루프 한계 블록(2085)은 MB 코딩 루프를 종료하고 루프 한계 블록(2090)에 제어를 넘겨준다. 루프 한계 블록(2090)은 픽처 코딩 루프를 종료하고 종료 블록(2095)에 제어를 넘겨준다.
도 21을 참조하면, 영역 고려에 기초한 양자화를 위한 방법이 참조 번호 2100에 의해 일반적으로 지시되어 있다. 이 방법(2100)은 이미지 데이터의 인코딩에 관하여 실시된다.
시작 블록(2105)은 기능 블록(2110)에 제어를 넘겨준다. 기능 블록(2110)은 분포 어레이들을 초기화하고, 루프 한계 블록(2115)에 제어를 넘겨준다. 루프 한계 블록(2115)은 픽처 코딩 루프를 시작하고, 기능 블록(2120)에 제어를 넘겨준다. 기능 블록(2120)은 인코딩에 대비하여 픽처 레벨 양자화 파라미터들을 결정하고, 픽처 결정들을 수행하는 등등을 행하고, 기능 블록(2122)에 제어를 넘겨준다. 기능 블록(2122)은 콘텐츠에 기초하여 장면(scene)을 분석하고(예컨대, 영역 분할 방식을 이용하여), 루프 한계 블록(2125)에 제어를 넘겨준다. 루프 한계 블록(2125)은 매크로블록 코딩 루프를 시작하고, 기능 블록(2130)에 제어를 넘겨준다. 기능 블록(2130)은 처리되고 있는 현재의 매크로블록의 양자화 파라미터를 판정/선택하고, 루프 한계 블록(2135)에 제어를 넘겨준다. 루프 한계 블록(2135)은 예측 모드 루프를 시작하고, 기능 블록(2140)에 제어를 넘겨준다. 기능 블록(2140)은 현재의 매크로 블록에 관하여 인트라 또는 인터 예측을 수행하고, 루프 한계 블록(2145)에 제어를 넘겨준다. 루프 한계 블록(2145)은 (처리되고 있는 현재의 매크로블록 내 의) 모든 4×4 블록들에 대한 변환 루프를 시작하고, 기능 블록(2150)에 제어를 넘겨준다. 기능 블록(2150)은 처리되고 있는 현재의 4×4 블록의 변환을 수행하고, 기능 블록(2155)에 제어를 넘겨준다. 기능 블록(2155)은 1/2의 오프셋을 이용하여 현재의 4×4 블록을 양자화하여 모든 변환 계수마다의 레벨i,j을 획득하고, 기능 블록(2160)에 제어를 넘겨준다. 기능 블록(2160)은 대응하는 영역(들)에 대한 분포 어레이들을 체크하여 레벨i,j 양자화 파라미터 및 i,j에 기초하여 최적의 오프셋 fi ,j를 판정하고, 기능 블록(2165)에 제어를 넘겨준다. 기능 블록(2165)은 fi ,j를 새로운 오프셋으로 이용하여 위치 i,j에 있는 계수를 재양자화하고, 루프 한계 블록(2170)에 제어를 넘겨준다. 루프 한계 블록(2170)은 변환 루프를 종료하고 루프 한계 블록(2175)에 제어를 넘겨준다. 루프 한계 블록(2175)은 예측 모드 루프를 종료하고 기능 블록(2180)에 제어를 넘겨준다. 기능 블록(2180)은 대응하는 영역(들)의 분포 어레이들 및, 만일 이용 가능하다면, 글로벌 어레이들을 업데이트하고, 루프 한계 블록(2185)에 제어를 넘겨준다. 루프 한계 블록(2185)은 MB 코딩 루프를 종료하고 루프 한계 블록(2190)에 제어를 넘겨준다. 루프 한계 블록(2190)은 픽처 코딩 루프를 종료하고 종료 블록(2195)에 제어를 넘겨준다.
도 22를 참조하면, 최적화된 양자화를 위해 변환 계수를 고려하는 인코더가 참조 번호 2200에 의해 일반적으로 지시되어 있다.
인코더(2200)에의 입력은 영역 분석 및 통계 모듈(2210)의 제1 입력, 가산기(2215)의 반전 입력, 및 움직임 보상기(2220)의 제1 입력과 신호 통신으로 접속 되어 있다. 가산기(2215)의 출력은 변환기(2225)의 입력과 신호 통신으로 접속되어 있다. 변환기(2225)의 제1 출력은 영역 분석 및 통계 모듈(2210)의 제2 입력과 신호 통신으로 접속되어 있다. 영역 분석 및 통계 모듈(2210)의 출력은 전치양자화기(2230)의 제1 입력과 신호 통신으로 접속되어 있다. 전치양자화기(2230)의 출력은 양자화기(2235)의 제1 입력과 신호 통신으로 접속되어 있다. 변환기(2225)의 제2 출력은 양자화기(2235)의 제2 입력과 신호 통신으로 접속되어 있다. 변환기(2225)의 제3 출력은 전치양자화기(2230)의 제2 입력과 신호 통신으로 접속되어 있다. 양자화기(2235)의 출력은 가변 길이 코더(VLC)(2240)의 제1 입력 및 역양자화기(2245)의 입력과 신호 통신으로 접속되어 있다. VLC(2240)의 출력은 인코더(2200)의 출력으로서 이용 가능하다.
움직임 보상기(2220)의 제1 출력은 가산기(2215)의 비반전 입력 및 가산기(2255)의 제1 입력과 신호 통신으로 접속되어 있다. 움직임 보상기(2220)의 제2 입력은 움직임 추정 및 모드 결정 모듈(2250)의 제1 출력과 신호 통신으로 접속되어 있다. 역양자화기(2245)의 출력은 역변환기(2260)의 입력과 신호 통신으로 접속되어 있다. 역변환기(2260)의 출력은 가산기(2255)의 제2 입력과 신호 통신으로 접속되어 있다. 가산기(2255)의 출력은 루프 필터(2275)의 입력과 신호 통신으로 접속되어 있다. 루프 필터(2275)의 출력은 픽처 참조 저장소(2270)의 입력과 신호 통신으로 접속되어 있다. 픽처 참조 저장소의 출력은 움직임 보상기(2220)의 제3 입력 및 움직임 추정 및 모드 결정 모듈(2250)의 입력과 신호 통신으로 접속되어 있다. 움직임 추정 및 모드 결정 모듈(2250)의 제2 출력은 VLC(2240)의 제2 입력 과 신호 통신으로 접속되어 있다.
도 23을 참조하면, 최적화된 양자화를 위해 세타 파라미터 및 변환 계수를 고려하는 인코더가 참조 번호 2300에 의해 일반적으로 지시되어 있다.
인코더(2300)에의 입력은 영역 분석 및 통계 모듈(2310)의 제1 입력, 가산기(2315)의 반전 입력, 및 움직임 보상기(2320)의 제1 입력과 신호 통신으로 접속되어 있다. 가산기(2315)의 출력은 변환기(2325)의 입력과 신호 통신으로 접속되어 있다. 변환기(2325)의 제1 출력은 영역 분석 및 통계 모듈(2310)의 제2 입력과 신호 통신으로 접속되어 있다. 영역 분석 및 통계 모듈(2310)의 제1 출력은 전치양자화기(2330)의 제1 입력과 신호 통신으로 접속되어 있다. 전치양자화기(2330)의 출력은 양자화기(2335)의 제1 입력과 신호 통신으로 접속되어 있다. 변환기(2325)의 제2 출력은 양자화기(2335)의 제2 입력과 신호 통신으로 접속되어 있다. 변환기(2325)의 제3 출력은 전치양자화기(2330)의 제2 입력과 신호 통신으로 접속되어 있다. 양자화기(2335)의 출력은 가변 길이 코더(VLC)(2340)의 제1 입력 및 역양자화기(2345)의 제1 입력과 신호 통신으로 접속되어 있다. VLC(2340)의 출력은 인코더(2300)의 출력으로서 이용 가능하다.
움직임 보상기(2320)의 제1 출력은 가산기(2315)의 비반전 입력 및 가산기(2355)의 제1 입력과 신호 통신으로 접속되어 있다. 움직임 보상기(2320)의 제2 입력은 움직임 추정 및 모드 결정 모듈(2350)의 제1 출력과 신호 통신으로 접속되어 있다. 역양자화기(2345)의 출력은 역변환기(2360)의 입력과 신호 통신으로 접속되어 있다. 역변환기(2360)의 출력은 가산기(2355)의 제2 입력과 신호 통신으로 접속되어 있다. 가산기(2355)의 출력은 루프 필터(2375)의 입력과 신호 통신으로 접속되어 있다. 루프 필터(2375)의 출력은 픽처 참조 저장소(2370)의 입력과 신호 통신으로 접속되어 있다. 픽처 참조 저장소의 출력은 움직임 보상기(2320)의 제3 입력 및 움직임 추정 및 모드 결정 모듈(2350)의 입력과 신호 통신으로 접속되어 있다. 움직임 추정 및 모드 결정 모듈(2350)의 제2 출력은 VLC(2340)의 제2 입력과 신호 통신으로 접속되어 있다.
영역 분석 및 통계 모듈(2310)의 제2 출력은 세타 도출 모듈(2380)의 입력과 신호 통신으로 접속되어 있다. 세타 도출 모듈(2380)의 제1 출력은 역양자화기(2345)의 제2 입력과 신호 통신으로 접속되어 있다. 세타 도출 모듈(2380)의 제2 출력은 전치양자화기(2330)의 제3 입력, 양자화기(2335)의 제3 입력, 및 VLC(2340)의 제3 입력과 신호 통신으로 접속되어 있다.
도 24를 참조하면, 디코더가 참조 번호 2400에 의해 일반적으로 지시되어 있다. 디코더(2400)의 입력은 세타 도출 모듈(2480)의 입력 및 가변 길이 디코더(VLD)(2440)의 입력에 신호 통신으로 접속되어 있다. 세타 도출 모듈(2480)의 출력은 역 이산 코사인 변환(IDCT) 모듈(2499)의 제1 입력과 신호 통신으로 접속되어 있다. VLD(2440)의 제1 출력은 움직임 보상기(2420)의 제1 입력과 신호 통신으로 접속되어 있다. VLD(2440)의 제2 출력은 양자화기(2435)의 입력과 신호 통신으로 접속되어 있다. 양자화기(2435)의 출력은 IDCT 모듈(2499)의 제2 입력과 신호 통신으로 접속되어 있다. ICDT 모듈(2499)의 출력은 가산기(2488)의 제1 입력과 신호 통신으로 접속되어 있다. 움직임 보상기(2420)의 출력은 가산기(2488)의 제2 입력과 신호 통신으로 접속되어 있다. 가산기(2488)의 출력은 루프 필터(2477)의 입력과 신호 통신으로 접속되어 있다. 루프 필터(2477)의 출력은 프레임 버퍼(2466)의 입력과 신호 통신으로 접속되어 있다. 프레임 버퍼(2466)의 제1 출력은 움직임 보상기(2420)의 제2 입력과 신호 통신으로 접속되어 있다. 프레임 버퍼(2466)의 제2 출력은 디코더(2400)의 출력으로서 이용 가능하다.
이제 본 발명의 다양한 예시적 실시예들에 따른, 본 발명의 다수의 부수적인 이점들/특징들 중 일부에 대하여 설명한다. 예를 들면, 하나의 이점/특징은 계수 위치 및 관련 분포를 고려함으로써 데드존 양자화가 적응적으로 수행되는 인코딩 장치 및 방법이다. 또 하나의 이점/특징은 상술한 것과 같은 인코딩 장치 및 방법으로, 코딩 모드(인트라 또는 인터), 컬러 컴포넌트, 변환 사이즈, 및 필요하다면 필드 및 프레임 매크로블록 코딩 모드들 중 적어도 하나에 따라서 적응이 수행되는 인코딩 장치 및 방법이다. 또 다른 이점/특징은 상술한 것과 같은 적응을 갖는 인코딩 장치 및 방법으로, 분포 통계가 각각의 상이한 경우에 대하여 개별적으로 수집되는 인코딩 장치 및 방법이다. 또 다른 이점/특징은 상술한 것과 같은 인코딩 장치 및 방법으로, 분포 통계가 영역 특징들(분산, 에지 등)에 기초하여 수집되는 인코딩 장치 및 방법이다. 또 다른 이점/특징은 상술한 것과 같은 인코딩 장치 및 방법으로, 먼저 고정 데드존/라운딩 제어를 이용하여 예비 레벨을 판정하고, 그 후 이 레벨에 기초하여 레벨 의존성 데드존/라운딩 제어를 이용하여 양자화를 반복하는 2단계의 방법으로 데드존 양자화가 수행되는 인코딩 장치 및 방법이다. 또한, 또 다른 이점/특징은 상술한 것과 같은 2단계 데드존 양자화를 갖는 인코딩 장치 및 방법으로, 레벨 의존성 라운딩 제어가 해당 레벨 내의 부분 분포에 기초하여 계산되는 인코딩 장치 및 방법이다. 또한, 또 다른 이점/특징은 상술한 것과 같은 2단계 데드존 양자화 및 레벨 의존성 라운딩 제어를 갖는 인코딩 장치 및 방법으로, 재구성 영역 내의 분포 농도(분포 면적)를 이용하여 계산이 수행되는 인코딩 장치 및 방법이다. 또한, 또 다른 이점/특징은 2단계 데드존 양자화를 갖고 또한 레벨 의존성 라운딩 제어를 갖는 인코딩 장치 및 방법으로, 레벨 의존성 라운딩 제어를 계산하기 위해 사다리꼴 또는 심플렉스 근사 방법들이 이용되는 인코딩 장치 및 방법이다. 또한, 또 다른 이점/특징은 상술한 것과 같은 2단계 데드존 양자화를 갖는 인코딩 장치 및 방법으로, 계산 내에서 왜곡도 고려되는 인코딩 장치 및 방법이다. 또한, 또 다른 이점/특징은 상술한 것과 같은 인코딩 장치 및 방법으로, 주관적 품질을 향상시키려는 시도에서, 최초에 레벨 0으로 설정된 어떤 계수들이 대신에 더 높은 레벨로 강제되는 인코딩 장치 및 방법이다. 또한, 또 다른 이점/특징은 상술한 것과 같은 계수 레벨 강제화를 갖는 인코딩 장치 및 방법으로, 그러한 결정이 레이트 왜곡 최적화 기준에 기초하는 인코딩 장치 및 방법이다. 또한, 또 다른 이점/특징은 상술한 것과 같은 인코딩 장치 및 방법으로, 오프세팅 양자화 행렬들 Θ의 세트의 전송 및 고려를 통하여 데드존 양자화가 세련되는 인코딩 장치 및 방법이다. 또한, 또 다른 이점/특징은 상술한 것과 같은 오프세팅 행렬들을 통하여 세련된 데드존 양자화를 갖는 인코딩 장치 및 방법으로, Θ 값들이 상이한 레벨들에서 상이한 영향을 갖는 인코딩 장치 및 방법이다. 또한, 또 다른 이점/특징은 상술한 것과 같은 오프세팅 행렬들을 통하여 세련된 데드존 양자화를 갖는 인코 딩 장치 및 방법으로, 이미지 통계 및 계수 분포에 기초하여 Θ가 계산되는 인코딩 장치 및 방법이다. 또한, 또 다른 이점/특징은 상술한 것과 같은 이미지 통계 및 계수 분포에 기초하여 계산된 Θ 및 오프세팅 행렬들을 통하여 세련된 데드존 양자화를 갖는 인코딩 장치 및 방법으로, 재구성 영역 내의 분포 농도(분포 면적)를 이용하여 Θ가 계산되는 인코딩 장치 및 방법이다. 또한, 또 다른 이점/특징은 상술한 것과 같은 이미지 통계 및 계수 분포에 기초하고 또한 분포 농도에 기초하여 계산된 Θ 및 오프세팅 행렬들을 통하여 세련된 데드존 양자화를 갖는 인코딩 장치 및 방법으로, Θ를 계산하기 위해 사다리꼴 또는 심플렉스 근사 방법들이 이용되는 인코딩 장치 및 방법이다. 또한, 또 다른 이점/특징은 상술한 것과 같은 이미지 통계 및 계수 분포에 기초하고 또한 분포 농도에 기초하여 계산된 Θ 및 오프세팅 행렬들을 통하여 세련된 데드존 양자화를 갖는 인코딩 장치 및 방법으로, Θ의 계산을 위해 왜곡도 고려되는 인코딩 장치 및 방법이다. 또한, 또 다른 이점/특징은 상술한 것과 같은 오프세팅 행렬들을 통하여 세련된 데드존 양자화를 갖는 인코딩 장치 및 방법으로, 레벨 0을 이용하여 코딩되도록 허용된 계수들의 최대 백분율에 따라서 Θ 계산이 조정될 수 있는 인코딩 장치 및 방법이다. 또 다른 이점/특징은 상술한 것과 같은 인코딩 장치 및 방법으로, 데드존 양자화가 모든 계수들에 대한 분포 특징들에 기초하여 계산되는 가중 양자화 행렬들을 고려하는 인코딩 장치 및 방법이다. 또 다른 이점/특징은 상술한 것과 같은 영역 특징들에 기초한 적응, 분포 통계, 및 모든 계수들에 대한 분포 특징들에 기초한 가중 행렬 계산에 의한 데드존 양자화를 갖는 인코딩 장치 및 방법으로, 이 계산을 위해 "가장 유효한 영역 들"의 분포만 고려되는 인코딩 장치 및 방법이다. 또한, 또 다른 이점/특징은 상술한 것과 같은 영역 특징들에 기초한 적응, 분포 통계, 및 모든 계수들에 대한 분포 특징들에 기초한 가중 행렬 계산에 의한 데드존 양자화를 갖는 인코딩 장치 및 방법으로, 주관적 영향 및 발생 통계에 기초한 가중 평균 방법을 이용하여 가중 행렬들의 계산을 위해 모든 상이한 영역들이 고려되는 인코딩 장치 및 방법이다.
본 발명의 이들 및 다른 특징들 및 이점들은 본 명세서의 교시 내용에 기초하여 관련된 기술 분야의 통상의 지식을 가진 자에 의해 쉽게 확인될 수 있다. 본 발명의 교시 내용들은 하드웨어, 소프트웨어, 펌웨어, 특정 용도 프로세서, 또는 그들의 조합의 다양한 형태로 구현될 수 있다.
더 바람직하게는, 본 발명의 교시 내용들은 하드웨어와 소프트웨어의 조합으로서 구현된다. 또한, 소프트웨어는 바람직하게는 프로그램 기억 장치상에 실체적으로 구체화된 응용 프로그램으로서 구현된다. 그 응용 프로그램은 임의의 적당한 아키텍처를 포함하는 머신에 업로드되어 실행될 수 있다. 바람직하게는, 그 머신은 하나 이상의 중앙 처리 장치("CPU"), 랜덤 액세스 메모리("RAM"), 및 입출력("I/O") 인터페이스와 같은 하드웨어를 갖는 컴퓨터 플랫폼 상에 구현된다. 컴퓨터 플랫폼은 또한 운영체계 및 마이크로명령어 코드를 포함할 수 있다. 본 명세서에서 기술된 다양한 프로세스들 및 기능들은 마이크로명령어 코드의 일부 또는 응용 프로그램의 일부, 또는 그것들의 임의의 조합일 수 있고, CPU에 의해 실행될 수 있다. 또한, 부가적인 데이터 기억 장치 및 인쇄 장치와 같은 다양한 다른 주변 장치들이 컴퓨터 플랫폼에 접속될 수 있다.
또한, 첨부 도면들에 도시된 구성하는 시스템 컴포넌트들 및 방법들의 일부는 바람직하게는 소프트웨어로 구현되기 때문에, 시스템 컴포넌트들 또는 프로세스 기능 블록들 간의 실제 접속들은 본 발명이 프로그램되는 방식에 따라서 다를 수 있다는 것을 알아야 할 것이다. 본 명세서의 교시 내용이 주어지면, 관련 기술 분야의 통상의 지식을 가진 자라면 본 발명의 이들 및 유사한 구현 또는 구성을 구상할 수 있을 것이다.
본 명세서에서는 첨부 도면들을 참조하여 예시적 실시예들이 설명되었지만, 본 발명은 바로 그 실시예들에 제한되지 않고, 본 발명의 범위 또는 사상을 벗어나지 않고 관련 기술 분야의 통상의 지식을 가진 자에 의해 다양한 변경 및 변형이 행해질 수 있다는 것을 이해해야 할 것이다. 모든 그러한 변경 및 변형들은 첨부된 청구항들에서 제시된 본 발명의 범위 내에 포함되는 것으로 의도된다.

Claims (60)

  1. 이미지 블록에 대한 비디오 신호 데이터를 인코딩하기 위한 인코더로서,
    상기 이미지 블록에 대한 변환 계수를 예비 라운딩 파라미터를 이용하여 예비 양자화 레벨로 양자화하고, 상기 예비 양자화 레벨이 미리 정해진 레벨과 동일하면 상기 변환 계수를 제2 양자화 레벨로 양자화하는 양자화기(2335)
    를 포함하는 인코더.
  2. 삭제
  3. 삭제
  4. 삭제
  5. 삭제
  6. 삭제
  7. 제1항에 있어서,
    상기 양자화기(2335)는 상기 변환 계수를 상기 예비 라운딩 파라미터와 다른 제2 라운딩 파라미터를 이용하여 상기 제2 양자화 레벨로 양자화하는 인코더.
  8. 삭제
  9. 삭제
  10. 삭제
  11. 삭제
  12. 삭제
  13. 제1항에 있어서,
    상기 양자화기(2335)는, 상기 예비 양자화 레벨이 레벨 0과 동일한 경우, 상기 제2 양자화 레벨을 상기 예비 양자화 레벨보다 강제(force)로 더 높게 하여 주관적 품질(subjective quality)을 향상시키는 인코더.
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
  26. 이미지 블록에 대한 비디오 신호 데이터를 인코딩하기 위한 방법으로서,
    상기 이미지 블록에 대한 변환 계수를 예비 라운딩 파라미터를 이용하여 예비 양자화 레벨로 양자화하는 단계(2055)와,
    상기 예비 양자화 레벨이 미리 정해진 레벨과 동일하면, 상기 변환 계수를 제2 양자화 레벨로 양자화하는 단계(2065)
    를 포함하는 인코딩 방법.
  27. 삭제
  28. 삭제
  29. 삭제
  30. 삭제
  31. 삭제
  32. 제26항에 있어서,
    상기 변환 계수를 제2 양자화 레벨로 양자화하는 단계는 상기 예비 라운딩 파라미터와 다른 제2 라운딩 파라미터를 이용하는 인코딩 방법.
  33. 삭제
  34. 삭제
  35. 삭제
  36. 삭제
  37. 삭제
  38. 제26항에 있어서,
    상기 예비 양자화 레벨이 레벨 0과 동일한 경우, 상기 제2 양자화 레벨을 상기 예비 양자화 레벨보다 강제로 더 높게 하여 주관적 품질을 향상시키는 인코딩 방법.
  39. 삭제
  40. 삭제
  41. 삭제
  42. 삭제
  43. 삭제
  44. 삭제
  45. 삭제
  46. 삭제
  47. 삭제
  48. 삭제
  49. 삭제
  50. 삭제
  51. 삭제
  52. 삭제
  53. 삭제
  54. 삭제
  55. 삭제
  56. 삭제
  57. 삭제
  58. 삭제
  59. 삭제
  60. 삭제
KR1020067026474A 2004-06-18 2005-06-03 비디오 코덱 양자화를 위한 방법 및 장치 KR101193790B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US60/581,019 2004-06-18
PCT/US2005/019647 WO2006007279A2 (en) 2004-06-18 2005-06-03 Method and apparatus for video codec quantization

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020127007669A Division KR101320260B1 (ko) 2004-06-18 2005-06-03 비디오 신호 데이터를 인코딩 및 디코딩하기 위한 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20070031938A KR20070031938A (ko) 2007-03-20
KR101193790B1 true KR101193790B1 (ko) 2012-10-23

Family

ID=43656066

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020067026474A KR101193790B1 (ko) 2004-06-18 2005-06-03 비디오 코덱 양자화를 위한 방법 및 장치

Country Status (1)

Country Link
KR (1) KR101193790B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022119304A1 (ko) * 2020-12-01 2022-06-09 현대자동차주식회사 적응적 데드존 양자화를 이용하는 포인트 클라우드 코딩 장치 및 방법

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101359500B1 (ko) * 2008-07-28 2014-02-11 에스케이 텔레콤주식회사 양자화/역 양자화 장치 및 방법과 그를 이용한 영상부호화/복호화 장치

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022119304A1 (ko) * 2020-12-01 2022-06-09 현대자동차주식회사 적응적 데드존 양자화를 이용하는 포인트 클라우드 코딩 장치 및 방법

Also Published As

Publication number Publication date
KR20070031938A (ko) 2007-03-20

Similar Documents

Publication Publication Date Title
KR101320260B1 (ko) 비디오 신호 데이터를 인코딩 및 디코딩하기 위한 방법 및 장치
EP1076885B1 (en) Method and apparatus for reducing breathing artifacts in compressed video
US9001889B2 (en) Methods and apparatus for improved quantization rounding offset adjustment for video encoding and decoding
US9756326B2 (en) Video coding method using at least evaluated visual quality and related video coding apparatus
EP1675402A1 (en) Optimisation of a quantisation matrix for image and video coding
CN107347157B (zh) 视频解码装置
US11166030B2 (en) Method and apparatus for SSIM-based bit allocation
US8259793B2 (en) System and method of fast MPEG-4/AVC quantization
KR101378749B1 (ko) 성김에 기반한 아티팩트 제거 필터링에서 가변 변환들에 응답하여 필터 파라미터 결정 및 선택을 위한 방법과 장치
US20040247030A1 (en) Method for transcoding an MPEG-2 video stream to a new bitrate
KR101193790B1 (ko) 비디오 코덱 양자화를 위한 방법 및 장치
EP1675405A1 (en) Optimisation of a quantisation matrix for image and video coding

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
A107 Divisional application of patent
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20150918

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20160921

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20170919

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20180918

Year of fee payment: 7