KR20080108538A - 비디오 코딩 방법 - Google Patents

비디오 코딩 방법 Download PDF

Info

Publication number
KR20080108538A
KR20080108538A KR1020087024885A KR20087024885A KR20080108538A KR 20080108538 A KR20080108538 A KR 20080108538A KR 1020087024885 A KR1020087024885 A KR 1020087024885A KR 20087024885 A KR20087024885 A KR 20087024885A KR 20080108538 A KR20080108538 A KR 20080108538A
Authority
KR
South Korea
Prior art keywords
coding
region
inter
picture
frame
Prior art date
Application number
KR1020087024885A
Other languages
English (en)
Other versions
KR101405549B1 (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 브리티쉬 텔리커뮤니케이션즈 파블릭 리미티드 캄퍼니
Publication of KR20080108538A publication Critical patent/KR20080108538A/ko
Application granted granted Critical
Publication of KR101405549B1 publication Critical patent/KR101405549B1/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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/192Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
    • H04N19/194Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive involving only two passes
    • 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
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • 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/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/15Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
    • 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/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • 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)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

비디오 신호는 예측 코딩을 사용하여 부호화된다. 적용되는 양자화의 정도는 예측력의 측정치의 함수로서 변화되며, 다른 픽처에 대해 유용한 픽처는 잘 코딩할 가치가 있다는 것을 기본 아이디어로 한다. 이들 측정값은 분석된 각 매크로블록에 대해서 다른 영역의 잠재 예측자가 되는 한 영역의 상기 다른 영역에 대한 유사도에 종속하는 측정치를 얻기 위해 픽처의 사전 분석에서 형성된다. 바람직하게는 이들 측정치는 누적적인 것이다.

Description

비디오 코딩 방법{VIDEO CODING}
본 발명은 비디오 코딩에 관한 것이다.
지난 20년 동안 개발된 비디오 압축 기술은 모션 보상된 변환 코딩에 기초하였다. 기본 사상은 한 이미지를 인코딩하고, 이 이미지를 다음 이미지를 예측하는데 사용하여, 시간적 중복을 제거하며, 블록 기반 변환 코딩 기법에 의해 예측 잔여(prediction residual)를 인코딩한다. 각각의 후속 이미지는 이전의 부호화된 이미지(들)로부터 예측될 수 있다.
소스 픽처는 보통 매크로블록(macroblock)이라고 하는 16x16 영역으로 분할된다. 인코더는 현재 매크로블록과 양호한 매칭이나 예측을 이전에 인코딩되어 저장된 하나 이상의 픽처에서 검색한다. 현재 매크로블록과 위치가 같은 기준 픽처의 매크로블록과 현재 매크로블록의 예측을 위해 사용된 픽셀들의 영역 사이의 변위를 모션 벡터(motion vector)라고 한다. 일부 표준은 매크로블록 당 하나의 모션 벡터만을 허용하지만, 다른 표준은 매클로블록이 세분되는 것을 허용하고 각 세분(sub-division)에 대해 상이한 기준 픽처와 상이한 모션 벡터들이 선택되어 부호화되는 것을 허용한다.
매크로블록을 인코딩하기 위해 이전 픽처로부터 예측을 사용하는 인터-코 딩(inter-coding)의 대안은 이전에 인코딩된 픽처를 참조하지 않고 매크로블록을 인코딩하는 것이다. 이것은 인트라 코딩(intra coding)이라고 한다. 초기의 압축 표준에서, 이것은 단순히 감산기(subtractor)를 제거하고 소스 픽처를 직접 변환 및 양자화하여 달성된다. 나중의 표준에서는, 현재 픽처의 이미 부호화된 픽셀들을 사용하는 다양한 형태의 공간 예측이 상기 변환 및 양자화 프로세스 이전에 소스 매크로블록으로부터 중복을 제거하기 위해 사용된다.
예측 오류 또는 예측 잔여라고 하는 소스 픽처와 예측 사이의 차이는 블록 기반 변환을 사용하여 주파수 도메인으로 보통 변환되고, 그 다음에 스칼라 양자화기(scalar quantiser)로 양자화되며, 생성된 양자화된 계수는 엔트로피 부호화된다.
일정 비트율의 네트워크를 통한 전송을 위해 일정 비트율을 달성하는 것과 같이 어떤 소정의 비트율 제약을 충족시키기 위해 상기 엔트로피 코딩에 의해 생성된 비트의 수에 대해 상기 양자화 프로세스에 의해 야기된 디스토션이 조정될 수 있도록 일련의 스칼라 양자화기가 보통 사용될 수 있다.
비디오 코딩 및 디코딩에 대한 다수의 표준이 발표되었으며, ITU의 H 시리즈 표준과 ISO/IEC MPEG 시리즈가 있다. 주어진 블록의 예측 에러에 대한 스칼라 양자화기를 선택하는데 사용되는 알고리즘은 비디오 압축 표준의 범위를 벗어난다.
본 발명에 의하면 비디오 신호를 코딩하는 방법이 제공되며, 이 방법은:
(a) 픽처(picture)의 분석된 각 영역에 대한 예측력(predictive power)의 측정값을 얻기 위해 상기 픽처를 분석하는 단계; 및
(b) 상기 예측력의 측정값의 함수로서 변화하는 해상도(resolution)로 상이한 코딩을 사용하여 상기 신호를 코딩하는 단계;
를 포함하고,
상기 각 측정값은 다른 영역의 예측자(predictor)로서 사용되는 한 영역의 상기 다른 영역에 대한 유사도에 종속하는 것을 특징으로 한다.
본 발명의 다른 측면들은 청구범위에 기재되어 있다.
이제 본 발명의 몇몇 실시예가 첨부한 도면을 참조하여 예로서 설명될 것이다.
도 1은 본 발명의 일 실시예에서 사용된 기존의 일 형태의 비디오 코더(video coder)의 블록도이고,
도 2는 기존의 일 형태의 비디오 디코더(video decoder)의 블록도이고,
도 3은 본 발명의 제 1 실시예에서 사용된 디코더(decoder)의 블록도이고,
도 4는 본 발명의 제 2 실시예에서 사용된 대안적인 디코더의 블록도이다.
도 1은 하이브리드 모션 보상된 변환 코더의 아키텍처를 도시한다(종래기술). 비디오 신호(보통 디지털 형태임)는 입력(1)에서 수신된다. 감산기(2)는 입력과, 나중에 추가로 코딩되는 예측기 버퍼(3)의 예측된 신호 사이의 차이를 구성한다. 여기서 수행된 코딩은 예컨대 변환 코딩(transform coding)(4), 스레쉬홀 딩(thresholding)(제로 또는 미소한 차이의 전송을 억제함), 양자화(5), 및/또는 가변 길이 코딩(6)을 포함할 수 있다. 예측기 저장소(3)의 입력은 예측과 8, 9에서 디코딩된 코딩된 차이 신호의, 가산기(7)에서 형성된, 합이다(그리하여 코딩 및 디코딩 프로세스에서 정보의 손실은 예측기 루프에 포함된다). 역양자화기(8), 역변환기(9) 및 가산기(7)는 저장소(3) 및 모션 보상기(10)와 함께 로컬 디코더를 형성한다.
도 2는 디코더를 도시한다. 가변길이 디코더(11) 이후에는 프레임간 차이 신호를 생성하는 역양자화기(8')와 역변환기(9')가 온다. 그 다음 이것은 인코더로부터 모션 벡터를 수신하는 모션 보상 유닛(10')에서 모션 보상 후에 프레임 스토어(3')로부터의 예측에 가산기(7')에서 가산된다. 가산기(7')의 출력은 디코더 출력을 형성하고 또한 프레임 스토어(3')의 입력에 인가된다. 일정 비트율 채널을 통해 전송을 허용하기 위해 인코더 출력(12)과 디코더 입력(도시되지 않음)에 버퍼링이 제공된다. 모션 추정기(motion estimator)(13)가 또한 포함된다. 이것은 부호화되는 픽처의 프레임을 상기 예측기 프레임과 비교한다: 즉 현재 프레임의 각 블록에 대해(픽처가 분할된 것으로 간주됨) 상기 블록이 가장 가까이 닮은 이전 프레임의 상기 영역을 식별한다. 해당 블록과 상기 식별된 영역 사이의 위치에서의 벡터 차이를 모션 벡터라고 하며(그것은 TV 화상에 의해 묘사된 장면 내의 객체의 모션을 보통 나타내기 때문임) 상기 이전 프레임의 식별된 영역을 현재 프레임에서관련 블록의 위치로 이동시키는 모션 보상 유닛(10)에 인가되며, 이에 의해 더 나은 예측을 생성한다. 이것으로 인해 결국 평균적으로 더 작은 차이가 감산기(2)에 의해 형성되며 4, 5에서 코딩이 그렇지 않은 경우보다 더 낮은 비트율을 사용하여 픽처를 인코딩하는 것을 허용한다.
이 코더는 그러나 인터-프레임 코딩에서 항상 사용되지는 않는다. H.261 표준에 의하면 코더는 각 매크로블록에 대해 매클로블록이 모션-보상된 인터-프레임 차동 코딩을 사용하여 부호화될 것인지, 또는 상기 매클로블록에 대해 인트라-프레임 코딩을 사용하는 것이 비트에 있어서 더 경제적인지에 대해 결정한다. 이 결정은 제어유닛(14)에 의해 행해진다: 만일 인트라-프레임 코딩이 사용된다면, 상기 "이전 픽처" 예측은 더 이상 감산기에 인가되지 않는다. 이것은 스위치(15)에 의해 도 1에서 개략적으로 도시되어 있다. 상기 결정은 또한 유사한 스위치(15')를 제어하는 디코더에 전송된다. 상기 표준에 의하면, 인트라 코딩은 단순히 실제 픽셀 값을 코딩하는 대신에, 동일한 픽처 내의 이전에 디코딩된 픽셀로부터 예측을 사용하여 인트라-프레임 차동 코딩을 가져올 수 있다.
정지되거나 아주 느리게 이동하는 상세 이미지로 구성된 비디오 한 장면을 생각해 보자. 비트율 제약을 만족시키는 스칼라 양자화기의 선택의 전형적인 방법은 각 픽처를 부호화하기 위해 고정된 수의 비트를 사용하는 것이다. 만일 이것이 이 유형의 장면에 적용되면, 제 1 픽처는 부호화되어야 것이 많이 있기 때문에 아주 불량하게 압축될 것이며, 이것은 비트율 제약에 의해 조잡한 스칼라 양자화기가 필요함을 의미한다. 그리고 나중의 픽처는, 각 픽처를 부호화하는데 사용된 비트가 상기 예측 오류를 정제하는데 사용되면서 모션 예측이 더 잘 동작하기 때문에 더 양호한 품질을 지속적으로 가질 것이다.
제 1 픽처는 상기 장면의 나머지에 대해 양호한 예측을 제공한다. 즉 높은 "예측력(predictive power)을 가진다는 것을 알 수 있다. 결과적으로 제 1 부호화된 픽처의 품질의 개선은 부호화될 잔여 정보를 표시하는 추가적인 비트의 필요없이 후속 픽처들에 계승된다는 것을 알 수 있다. 다시 말해서, 제 1 픽처를 잘 부호화하는데 사용된 비트들은 제 1 픽처의 "예측력" 때문에 나중의 픽처들에도 편익을 줄 것이다.
그러므로, 장면을 부호화하기 위한 비트들의 전체 수에 대한 소정의 제약에 대해, 제 1 방법에 의하면 결과적으로 낮은 품질의 제 1 픽처가 얻어지고, 상기 장면의 나머지에 대한 품질의 지속적인 향상이 이루어질 것이며, 반면 제 1 픽처에 더 많은 비트를 할당하면, 상기 장면 모두는 동일한 전체 비트 수를 가지고 잘 부호화될 수 있다.
종래부터, 비디오는 표시 순서대로 부호화되지만, 예측을 위한 픽처의 유용성은 인코더에서 아직 가용하지 않은 미래의 픽처에 분명히 종속한다. 그리하여, 본 발명의 제 1 실시예는 제 1 패스가 역방향인 2 패스(two pass) 인코딩 기법을 사용한다. 그러므로 이것은 저장된 비디오의 오프라인 인코딩에는 유용하지만, 엄격한 지연 제약이 있는 실시간 인코딩에는 유용하지 않다.
주목할 것은 2패스 인코딩은 멀티 패스 인코딩으로 그 자체가 잘 알려져 있다는 것이다. 예를 들면 페르트(Fert) 등은 (미국 특허 제6,411,738호에서) 비디오 시퀀스의 예비적인 분석을 수행하며 양자화 스텝 크기에 대한 전체적인 조정을 하여 상기 시퀀스가 소정의 한계 내에 맞도록 한다(예컨대, 표준 크기 DVD에 맞도 록 함). 요코야마(Yokoyama) 등은 ("A rate control method with preanalysis for real-time MPEG-2 video coding", Proceedings of the 2001 International Confernce on Image Processing, IEEE, vol 3, pp. 514-517에서)은 코딩 복잡도에 따라 비트를 할당하기 위해 수행된 예비분석을 위한 선행 제안을 논의한 후, 슬라이딩 지연 윈도우 동안 미리 분석하는 실시간 코딩을 위한 제안을 한다. 쿡나르드(Cougnard) 등(미국 특허 공개 2003/0031255A에서)은 제 1 패스에 대한 통계적 결과를 계산하며, 상기 결과는 그 다음에 제 2 패스 동안 비트율 할당과 버퍼 관리를 최적화하기 위해 사용된다. 마지막으로, 루올(Ruol)은 (미국 특허 공개 2003/0156642A에서) "블록형(blocky)" 프레임에 대해 제 1 패스를 검사하고 그것들을 감소시키기 위해 비트 할당을 재조정한다.
인코딩의 제 1 패스는 역방향이므로, 인코더에 전달된 제 1 픽처는 비디오 시퀀스에서는 마지막이며, 인코더에 전달된 마지막 픽처는 비디오 시퀀스에서는 첫번 째이다; 한편 제 2 패스는 종래의 순방향이다.
제 1 패스에서 비디오 스퀀스를 역방향으로 처리함으로써, 주어진 픽처가 처리될 때, 보통 그것으로부터 예측되는 픽처는 이미 인코더를 통과했으며, 따라서 인코더는 그것들에 대해 알고 있고 따라서 주어진 픽처가 나중의 픽처를 예측하는데 얼마나 유용한지 판단할 수 있다. 이것이 아래 기술된다:
소스 픽처 순서: P0 P1 P2 P3 P4 P5 P6
제 1 인코딩 패스: P6 P5 P4 P3 P2 P1 P0
제 2 인코딩 패스: P0 P1 P2 P3 P4 P5 P6
제 1 인코딩 패스에서 픽처 P3가 부호화될 때, P6 내지 P4는 이미 처리되었으며, 그것들에 대한 지식이 저장되어 있다. 제 2 패스에서 P3가 부호화될 때, P4 내지 P6에 대한 이 저장된 지식은 P3를 위한 인코딩 파라미터를 설정하는데 사용될 수 있다.
이 기법은 P4가 P3의 부호화에 양호한 기준 픽처라면 P3는 P4의 부호화에 양호한 기준 픽처가 될 것이라는 가정에 의존한다. 이 가정은 일반적으로 합리적인 것으로 알려져 있다.
한 픽처의 "예측력(predictive power)"은 여기서 도입된 개념이다. 우리는 이것을 한 픽처의 소정의 픽셀이 비디오 시퀀스의 다른 픽셀들을 예측하는데 있어서 얼마나 유용한지를 표시하는 수치로서 정의한다. 전형적으로 이것은 후속 픽처의 픽셀들이 될 것이지만, 그 원리는 나중의 픽처들로부터 예측하는 경우에도 역시 적용될 수 있을 것이며, 동일한 픽처 내의 픽셀들의 예측에도 적용될 수 있다.
발명자들은 비디오 시퀀스 전체에 대해 제 1의 역방향 인코딩 패스 동안에 "예측력"에 대한 수치를 결정하는 다수의 방법을 확인했다. 주목할 것은 이것들이 동일한 기저의 개념을 나타내는 상이한 수치를 계산하는 다른 방법들이라는 것이다.
이 기법들의 각각에 대한 기본은 다음과 같다.
픽처들이 제 1 패스에서 인코더를 통과할 때, 그것들은 보통과 같이 부호화되고 부호화된 비트들은 저장된다. 이 예에서, 사용된 인코더는 도 1에 도시된 것과 같은 변형되지 않은 H.261 인코더이다; 그러나 편의상, 이 버젼에서, B-프레임 의 사용은 허용되지 않는다. 특히 주목할 것은 상기 매클로블록이 모션-보상된 인터-프레임 차동 코딩을 사용하여 부호화될 것인지, 또는 상기 매클로블록에 대해서 인트라-프레임 코딩을 사용하는 것이 비트에 있어서 더욱 경제적일지에 대해 결정하기 위한 정밀한 기준은 표준에 의해 강제되지 않는다. 바람직한 실시예에서, 인트라/인터 결정은 모션 추정으로부터의 절대적 차이의 합계와 내부 변화(intra variance)의 추정과 비교를 통해 이루어진다. 이것은 사실상 진정한 변화는 아니다. 왜냐하면 실제로 행해지는 것이 매클로블록에 대한 평균 루미넌스 값을 계산하고 그 다음 매크로블록의 각 픽셀과 상기 매크로블록에 대한 픽셀들의 평균 사이의 절대적 차이의 합계로서 상기 변화를 계산하기 때문이다.
if (bset_soad < intra_var + 500)
{
coding_type = inter;
}
else
{
coding_type = intra;
}
H.264 intra는 개선된 효율을 위해 공간 예측 모드를 선택한다.
H.264에서, 공간 예측 모드를 선택하기 위해 사용하는 알고리즘은 인코더의 구성에 의존하며, 특히 인코딩을 위해 얼마나 많은 프로세싱 파워가 가용한지에 의 존한다. 한 가지 경우는 상기 모션 벡터와 매크로블록 모드 비트를 반영하는 레이트 인자(rate factor)와 절대적 차이의 인터 합계, 절대적 차이와 레이트 인자의 인트라 합을 비교한다. 더 많은 프로세싱 파워가 가용한 경우, 인트라 모드와 다양한 인터 모드에서 매크로블록을 완전히 인코딩하고, 재구성된 이미지 상의 실제 왜곡과 생성된 실제 비트 수의 최적의 조합을 제공하는 것을 선택한다.
제 2 순방향 인코딩 패스 전의 중간 단계에서, 부호화된 비트는 디코더에 의해 복호화된다. 그러나 이것은 표준 디코더가 아니며: 오히려, H.261과 유사한 구조를 갖지만, 상기 "예측력" 계산을 실행할 수 있도록 크게 변형하여, 그리고 "예측력" 픽처가 출력된다.
현재의 원형 실시에서, "예측력" 픽처는 임의의 압축되지 않은 비디오 파일을 보기 위해 사용되는 동일한 애플리케이션을 사용하여 볼 수 있는 실제 비디오 파일이다. 흰색은 양호한 예측력을 표시하기 위해 사용되고, 검은색은 조잡한 예측력을 표시하기 위해 사용되며, 회색의 색조는 양극단 사이의 값을 표시하는데 사용된다.
이것은 상기 "예측력" 정보를 보는데 유용한 것이 입증되었지만, 필수적인 것은 아니다: "예측력" 정보는 임의의 적당한 파일 포맷으로 저장될 수 있을 것이다.
제 2 인코딩 패스에서, 인코더는 순방향 순서로 소스 픽처를 읽고 "예측력" 픽처를 반대의 순서로 읽음으로써, 양자가 동일한 실제 픽처를 참조하고, 상기 소스 픽처를 인코딩하기 위한 인코딩 프로세스에서 인코딩 파라미터를 설정하기 위해 상기 "예측력" 픽처 내의 정보를 사용한다. 특히, 그것은 상기 양자화기 스텝 크기를 제어하기 위해 양자화기(도1)에 제어 입력을 제공한다.
전술한 "중간 단계(intermediate step)"의 실행을 위한 적합한 디코더가 도 3에 도시되어 있다. 이것은 제 1 인코딩 패스로부터 부호화된 비트스트림 출력을 수신하고 각 부호화된 매크로블록(16x16 픽셀 영역)에 대해 부호화된 모드(인트라 또는 인터), 모션 벡터(존재한다면) 및 양자화된 변환 계수를 추론하기 위해 엔트로피 디코딩(11)이 보통 수행된다. 만일 매크로블록이 인트라 코딩되면, 비트스트림으로부터의 다른 정보는 무시되고(스위치(16)가 0 입력으로 설정됨) 상기 매크로블록은 모두 0 값의 픽셀을 갖는 것으로 재구성된다(검은색 픽셀). 만일 매크로블록이 인터 코딩되면, 상기 양자화된 변환 계수는 무시되고, 역양자화된 역변환된 잔여 픽셀들은 모두 값 1로 설정되며, 복호화된 모션 벡터와 이전에 복호화된 "픽처"를 사용하여 프레임간 예측(inter prediction)이 정상으로 수행된다(스위치(16)가 가산기 출력으로 설정됨). 이 디코딩 프로세스로부터 얻어진 픽처는 "예측력" 픽처이다.
이 알고리즘의 논거는 인트라 코딩이 잘 동작하지 않는 예측 프로세스를 표시하면, 동작하더라도, 관련된 픽셀들의 예측력을 0으로 리셋시킨다. 반면 인터 코딩은 잘 동작하는 예측 프로세스를 표시하면, 매크로블록의 픽셀들의 예측력을 그 기준 픽셀로 사용된 픽셀들의 예측력까지 증가시킨다.
본 발명의 제 2 실시예는 제 1 실시예와 유사하지만 픽처의 예측력을 결정하기 위해 인트라/인터 기법 대신에 예측 잔여 기법(Prediction Residual Technique) 을 사용한다. 그러나 제 1 패스 인코딩은 다음의 점에서 수정된다. 즉 인트라 코딩은 예측력에 대해 전혀 알려주지 않는 것으로 간주되기 때문에, 인트라 코딩은 단지 제 1 픽처와 장면 변화에 대해서만 허용된다 - 인트라 코딩이 압축이 더 우수하지만 인터 코딩된 픽처의 어떤 매크로블록에 대해서도 사용되지 않는데, 이것은 이 단계의 목적이 인터코딩된 잔여를 관찰하는 기법을 사용하여 매크로블록의 예측력을 결정하는 것이기 때문이다. 주목할 것은 최근 압축 표준에서, 인트라 코딩이 때로는 그 공간 예측의 사용 덕분에 매크로블록에 대해 인터 코딩보다 더 효율적인 인코딩 기법이 될 수도 있다는 것이다.
이 기법을 최적화하기 위해, 제 1 인코딩 패스는 바람직하게는 다수의 양자화된 잔여가 0이 되는 것을 회피하기 위해 정밀 양자화를 사용해야 한다. 사실, 만일 이 기법이 중간 단계로서보다 제 1 패스에 적용되면, 실제 예측 잔여는 양자화 이전에 가용하다.
이제 상기 "중간 단계"의 실행으로 관심을 돌리면, 이것은 도 4에 도시된 디코더를 사용하여 수행된다.
제 1 인코딩 패스의 부호화된 비트스트림 출력은 디코더로 입력된다. 각각의 부호화된 매크로블록(16x16 픽셀 영역)에 대해 부호화된 모드(인트라 또는 인터), 모션 벡터(존재한다면) 및 양자화된 변환 계수를 도출하기 위해 엔트로피 디코딩(11)이 정상적으로 수행된다. 만일 매크로블록이 인트라 코딩되었다면, 비트스트림으로부터의 다른 정보는 무시되고 상기 매크로블록은 모든 픽셀이 값 128(중간-회색 픽셀)을 가진 것으로 재구성된다(스위치(16)는 하위 위치에 있음). 만일 상기 매크로블록이 인터 코딩된다면, 상기 양자화된 변환 계수는 역양자화 및 역변환 프로세스를 사용하여 정상적으로 디코딩된다(스위치(16)는 상위 위치에 있음). 그 다음에 생성된 예측 잔여 픽셀들은 소정의 매핑 프로세스를 사용하여 '17'에서 "예측력" 잔여에 매핑된다. 그 다음 이들 잔여와 상기 디코딩된 모션 벡터 및 이전에 디코딩된 픽처를 사용하여 프레임간 예측(inter prediction)이 정상적으로 수행된다. 이 디코딩 프로세스로부터 생성된 픽처는 "예측력" 픽처이다.
전술한 미리 정해진 매핑 프로세스에 대해 다수의 가능한 것들이 있다. 모든 경우에 상기 역양자화와 역변환 프로세스에 의해 생성된 작은 잔여는 포지티브 "예측력" 잔여로 귀결되고 큰 잔여는 네거티브 "예측력" 잔여로 귀결된다(또는 상기 "예측력" 픽처의 후속적인 반대 해석에 의해, 명백히 완전 반대임).
한 가지 가능한 것은 고정 매핑이다. 우리가 구현한 것은 이하에 기술되어 있다. 변수 "real_residual"은 역변환의 출력에서 얻어진 실제 잔여의 크기를 가리킨다.
하지만 이것은 주어진 시퀀스에 대해 상기 매핑이 최적이 아니고 또한 아주 빠르게 상기 "예측력" 픽처가 대부분 흰색(255)이거나 검은색(0)이 되는 문제에 부딪힐 수 있는데, 이는 주어진 픽처에 대한 매핑의 정규화가 없기 때문이다. 주목할 것은 상기 디코딩 프로세스는 예측과 (매핑된) 잔여 값들에 관계없이 출력 픽셀을 0~ 255의 범위로 클리핑(clip)한다.
Figure 112008070813168-PCT00001
다른 가능한 것은 디코딩의 순수 효과가 평균 디코딩된 픽셀 값에 0 또는 0에 근접한 변화가 되도록 각 픽처에 대해 독립적으로 매핑을 계산하는 것이다. 이것은 인트라 픽처 이후에는 128이며 일부 픽셀은 더 밝아지고 일부 픽셀은 더 어두워지기 때문에 대략 이 레벨로 유지될 것이다. 이 실시에 있어서, 우리는 잔여의 범위를 5개의 백분위수 범위(0-20%, 20-40% 등)로 나누고, 처음 2개에 대해 고정 매핑을 사용하며, 중간 범위를 0으로 매핑하고, 예컨대 거의 0 평균을 얻기 위해 마지막 2개에 대한 매핑을 조정한다.
이것은 이하에서 슈도-코드로 설명된다. 최하위 20%의 실제 잔여는 +4의 예 측력 잔여에 매핑되고, 20% - 40%의 실제 잔여는 +2의 예측력 잔여에 매핑되고, 40% - 60%의 실제 잔여는 0의 예측력 잔여에 매핑되고, 60% - 80%의 실제 잔여는 -1배 배율(scale_factor)에 매핑되고, 80% - 100%의 실제 잔여는 -2배 배율로 매핑된다. 배율은 예측력 잔여에 대해 0에 가까운 평균을 달성하도록 선택된다. 주목할 것은 이들 백분위수 범위의 각각에서 실제 잔여의 수는 반드시 20%는 아니라는 것이다. 이것은 다수가 동일한 작은 값들을 가지며, 예컨대, 50% 이상이 0인 것이 이상하지 않기 때문이다. 이것은 중간 20% 백분위수의 값을 갖는 실제 잔여가 0의 예측력 잔여에 매핑되도록 보장하기 위해 중간 범위가 슈도 코드에서 먼저 검사되는 이유이다.
실제 잔여 값들의 히스토그램을 축적한다.
20% 백분위수 범위의 각각의 경계의 실제 잔여(r20, r40, r60, r80)의 값들을 저장한다. 주목할 것은 x% 백분위수 경계(rx)는 x%의 픽셀들이 그보다 작거나 같은 잔여를 갖는 값이라는 것이다. 당연히, 50% 이상의 픽셀들이 0의 잔여를 갖는 경우(종종 일어날 수 있음), r20 및 r40은 둘 다 0이 될 것이다.
상기 백분위수 범위 각각에서 픽셀들의 수(n20, n40, n60, n80, n100)를 결정하라.
다음과 같이 2개의 상위 백분위수 범위에 대해 배율을 계산한다:
scale_factor = -(4*n20 + 2*n40) / (n80 + 2*n100)
다음과 같이 각각의 실제 잔여를 예측력 잔여에 매핑한다:
Figure 112008070813168-PCT00002
픽처 적응 방법에는 임의의 수의 픽처를 처리한 후 한 픽처의 평균 "예측력"이 변하지 않기 때문에 시퀀스 레벨 정보가 얻어지지 않는 문제가 있다. 그러므로 쉽게 예측된 것들로부터 시퀀스를 예측하기 위해 확실히 구별하는 것이 불가능하거나 또는 어렵다.
이들 2개의 매핑의 홉합은 더 나은 전체적인 성능을 제공할 것이다.
프로세스의 마지막 단계는 제 2 인코딩 패스에서 픽처의 예측력을 사용하는 것이다. 이 단계는 상기 예측력 결과가 양자화를 제어하는데 사용된다는 것을 제외하고는 도 1과 같은 표준 인코더를 사용한다. 기본 아이디어는 만일 매크로블록이 높은 (그 구성 픽셀들의 "예측력"을 평균하여 형성된) "예측력"을 가지면, 정밀 양자화에 의해 그것을 잘 코딩함으로써 (더 많은) 비트가 잘 소비될 것이라는 것이며, 이것은 매클로블록의 최종 고품질 인코딩이 이것으로부터 예측되는 후속 픽처들에 의해 승계될 것이기 때문이다.
따라서 일반적으로, 매크로블록에 대한 양자화 파라미터는 매크로블록을 구성하는 픽셀들의 "예측력"으로부터 소정의 매핑에 따라 설정된다.
따라서 가능한 일 실시예에서, "예측력"과 양자화 파라미터 오프셋 사이의 고정 매핑이 사용된다. 그 다음에 양자화 파라미터 오프셋을 상기 픽처에 대해 선택된, 고정값이거나, 픽처 종속값이거나, 또는 어떤 비트율 제약에 의해 결정된 값 등일 수 있는, 임의의 기본 양자화 파라미터에 가산함으로써 상기 매크로블록에 대한 양자화 파라미터가 결정된다. 주목할 것은 원칙적으로 전술한 바와 같이 픽셀 단위로 얻어진 예측력 결과는 원칙적으로 각 픽셀에 대해 별도로 양자화 파라미터를 결정하는데 사용될 수 있을 것이다. 그러나 우리는 전체 매크로블록에 대한 결과를 평균하여 이것을 전체 매클로블록에 대한 단일 양자화 파라미터로 변환하는 것을 선호한다. 사실, 대부분의 표준은 양자화 지수가 오직 매크로블록 레벨에서만 변경되는 것을 허용할 것이다.
한 가지 가능한 매핑은 만일 평균 예측력이 128을 초과하면 양자화 오프셋은 음의 양(128 - average_pp)/16이고; 그렇지 않으면 양자화 오프셋은 0인 것이다. 이 수식은 H.264 양자화기에서 적합하며, 이것의 양자화 지수의 범위는 0 - 51이고(8 비트 비디오 샘플에 대해), 스텝 크기는 양자화지수와 지수함수 관계를 갖는다(스텝 크기는 2^에 비례(양자화 지수/6), 즉 스텝 크기는 매 6 증가마다 2배가 됨). 따라서 H.264에서 양자화 오프셋은 스텝 크기의 조정(scaling)에 대응한다.
이것은 H.264 이전의 표준(H.261 등)에서는 그렇지 않으며, 여기서는 동일한 결과를 달성하기 위해 상이한 관계가 필요할 것이다. 이들 조기의 표준들은 1 - 31 범위의 양자화 지수를 가졌으며, 스텝 크기는 양자화 지수에 비례했다(스텝 크기 = 2* 양자화 지수).
이것을 각 픽처에 독립적으로 적용하는 이 실시에서 일어날 수 있는 어려움은 픽처의 부분들이 몇 개의 연속적인 픽처에서 높은 "예측력"을 갖는 경우에 상기 부분들은, 비디오 소스에서 (작은) 모션 예측 실패 및/또는 노이즈 때문에 다수의 비트를 소비하여, 모든 픽처에서 잘 코딩되지만, 다른 부분들은 낮은 품질로 반복해서 코딩된다는 것이다. 이것은 느린 이동하는/노이즈 배경을 잘 코딩되게 하고 덜 "예측가능한" 전경 객체, 특히 사람 눈과 입이 불량하게 코딩되게 할 수 있다.
어떤 환경에서는, 낮은 "예측력"을 갖는 픽처의 영역이 주관적으로는 가장 중요할 수 있으며, 처음에 생각했던 것과 정반대로 "예측력" 정보를 적용하는 것이 더 나을 수 있으며, 이 부분의 코딩은 예측을 위해 잘 사용되지 않을 것이다.
실제상 합리적으로 잘 동작하는 것으로 알려진 타협은 "예측력" 정보를 전술한 대로 매 n번째 픽처와 반대의 의미에서 모든 다른 픽처에 적용하는 것이다. 따라서 후속 예측에 좋은 픽처의 영역은 제 1 픽처(즉, 일련의 그러한 픽처의 첫 번째)에서 잘 부호화되지만, 다시 반복하기 전 다음(n-1) 픽처에서 평균 양자화보다 더 거칠게 부호화되며; 반면 다른 영역들은 전체 시퀀스에서 균일하게 부호화된다. n은 제 1 인코딩 패스에서 도출된 정보 예컨대 모션 벡터의 크기와 예측 잔여의 크 기를 사용하여 선택될 수 있으며, 슬로우 모션 및/또는 작은 잔여는 n이 커지는 것을 허용한다. 잘 부호화되는 제 1 픽처의 영역은 다음(n-1) 픽처를 예측하는데 사용되며, 이들 픽처의 대응하는 매크로블록에서 더 거친 양자화의 사용으로 인해, 대부분(바람직하게는 모두)의 변형 계수가 0으로 양자화되어 아주 효율적인 코딩이 될 수 있다(예컨대, 매크로블록에 대해 어떤 정보도 인코딩되지 않을 때 "생략 모드(skip mode)").
이것은 아래에 슈도-코드에서 설명되고 있다. 매 n번째 픽처에 대해, 양자화 오프셋은 전술한 바와 같다. 중간의 픽처에 대해, 양자화 오프셋의 부호는 반전된다. 우리의 원형 실시에서, 전체 픽처에 대해 단일 사이클의 픽처 번호를 사용했다. 그러나 원한다면 이 코드는 부호화되는 각 매크로블록에 대해 별도로 진행될 수 있으며, 이 경우에 한 매크로블록에 있어서는 높은 예측력을 가진 한 시퀀스의 첫 번째인 픽처는 어떤 다른 매크로블록에 있어서는 첫 번째가 아닐 수도 있다.
매크로블록의 각 픽셀에 대한 "예측력"의 합(sum_pp)을 계산한다.
//단일 픽셀에 대한 등가로 상기 합을 환원하여 정규화한다.
Figure 112008070813168-PCT00003
변형예
상기는 현재의 전형적인 실시를 설명하며, 이것은 종래의 코더와 디코더의 구성을 상당히 이용한다는 점에서 특히 매력적이다. 그러나 분명히 엔트로피 코딩/디코딩과 같이 제 1 패스 및 중간 단계에서 그리고 전혀 사용되지 않는 도 3의 단계(8', 9', 11')로부터 생략될 수 있는 단계들이 있다. 상업적인 실시에서 중간 단계는 분리될 필요가 없고 제 1 인코딩 패스의 일부가 될 수도 있다. 즉, 제 1 인코딩 패스는 후속 예측을 위해 정상의 복호화된 픽처를 생성하고 인코딩 프로세스에서 생성된 정보를 사용하여 "예측력" 픽처를 출력할 수 있다. 사실 이 방법은 "예측력" 픽처를 생성하기 위해 어떤 인코딩 파라미터라도 사용되는 것을 허용하는 반면 중간 단계의 사용은, 더 많은 정보가 제 1 인코딩 패스 동안에 저장되지 않으면, 상기 "예측력" 픽처가 제 1 패스 부호화된 비트스트림의 정보에만 종속하도록 제한하는 점에서 더 일반적이다.
예측력을 결정하는 전술한 제 1 실시예(인트라/인터 기법)에서, 하나는 인트라 또는 인터 코딩을 사용할 것인지 결정하는 기존 인코더 결정 메커니즘을 필수적으로 사용하고 있으며, 그 다음 중간 단계에서, 디코더 예측자 루프를 사용하여 단순히 PP 스코어를 축적한다. 인코더에 이들 결정을 기록함으로써 동일한 예측력 수치를 얻을 수 있을 것이고 디코딩 단계를 제거할 수 있을 것이다. 상기 기록은 다음과 같이 이루어진다:
만일 결정 = INTRA이면, PP(x,y) = 0이고,
만일 결정 = INTER이면, PP(x,y) = pp(x+mx, y+my) +1이며,
여기서 mx, my는 관련 모션 벡터이다.
주목할 것은 몇몇 애플리케이션에서, 픽처는 BBP로 알려진 패턴으로 부호화되며 여기서 P 픽처는 시간적으로 앞선 B 픽처 이전에 부호화되고, P 픽처는 기준 픽처로 사용되며 B 픽처는 기준으로 사용되지 않는다는 것이다. B 픽처가 허용되지 않는다는 앞서 언급한 제약은 필수적인 것은 아니며, B 픽처는 원한다면 사용될 수도 있다. 그런 경우에, B 픽처는 기준 픽처로 사용되지 않기 때문에, 예측력 계산에서 제외되며, 이는 P 픽처(그리고 부호화되는 임의의 인트라(I) 픽처)에서만 수행된다. H.264에서, 픽처(또는 한 픽처의 슬라이스)가 양방향으로 예측되는지(종래의 B 픽처에서와 같이) 그리고 그것이 기준 픽처인 것으로 표시되는지 여부는 독립적이다. 그러므로 H.264를 사용할 때, 기준으로 사용되는 픽처는 그것들이 양방향 예측을 사용하는지에 관계없이 예측력 계산에 포함된다.
또한, 상기 방법은 제 1 패스가 앞으로 진행하면 역시 적용될 수 있다. 인트라-부호화된 매크로블록을 만나 0으로 떨어질 때까지 PP 스코어를 축적할 수 있으며: 스코어는 그 다음에 반대로 전파될 수 있다. 그리하여, 특정 매크로블록에 대해, 그 PP 스코어가 전방향 스캔에서 0123450 이고(제 1 방법을 사용하여) 이것은 그 다음에 실제 스코어 54321X(여기서 X는 다음에 무엇이 오는가에 따라 달라지므로 알 수 없음)로 변환되어야 하는 일련의 프레임 IPPPPPI(여기서 I 또는 P는 프레임 유형이 아니라 그 매크로블록을 위해 사용되는 예측의 유형임)을 얻을 수 있을 것이다. 이 프로세스는 이것을 위해 적절한 윈도우를 제공하기에 충분히 공급이 버퍼링된다면 실시간 공급으로 사용될 수 있을 것이다. 당연히 이 프로세스는 예측자로서 프레임의 이용이 윈도우 길이를 초과한다면 종결되어야 할 것이다.
전방향 제 1 패스의 사용은 다수의 대체적인 기준 프레임이 허용되는 경우에 예측력의 계산을 단순화하는데 있어서 특별한 값을 가질 수 있다. 허용되는 경우, 한 픽셀이 2개 또는 여러 개의 다른 프레임에 대해서도 예측자로서 사용되는 것이 가능하게 되며: 이러한 경우 예측력은 2개 이상의 예측에 대해 별도로 계산된 예측력의 조합(예컨대, 합)이 될 것이다.
상기 내용은 양자화를 제어함으로써 해상도가 변화되는 것으로 본다. 그러나, 대 신에(또는 추가로) 예컨대 가변 서브샘플링에 의해, 또는 (변환-기반 시스템에서) 전송된 계수의 수를 변화시킴으로써 공간 해상도를 변경시킬 수 있다.

Claims (10)

  1. 비디오 신호를 코딩(coding)하는 방법에 있어서,
    (a) 픽처(picture)의 분석된 각 영역에 대한 예측력(predictive power)의 측정값을 얻기 위해 상기 픽처를 분석하는 단계; 및
    (b) 상기 예측력의 측정값의 함수로서 변화하는 해상도(resolution)로 상이한 코딩을 사용하여 상기 신호를 코딩하는 단계를 포함하고,
    상기 각 측정값은 다른 영역의 예측자(predictor)로서 사용되는 한 영역의 상기 다른 영역에 대한 유사도에 종속하며,
    상기 예측력의 측정은, 한 영역이 후보자(potential)로서 사용되는 다른 영역에 유사할 때 상기 측정값이 상기 다른 영역에 대해서 계산된 측정에 종속함으로써 누적적으로 계산되는 것을 특징으로 하는 비디오 신호 코딩 방법.
  2. 제 1 항에 있어서,
    상기 각 영역이 예측자로서 사용되는 상기 다른 영역은 또 다른 프레임의 영역이고,
    상기 코딩 단계는 인터-프레임 차동 코딩(inter-frame differential coding)을 포함하는 것을 특징으로 하는 비디오 코딩 방법.
  3. 제 2 항에 있어서,
    상기 각 영역이 예측자로서 사용되는 상기 다른 영역은 또 다른 프레임의 모션-보상된 영역인 것을 특징으로 하는 비디오 코딩 방법.
  4. 제 1 항 내지 제 3 항에 중 어느 한 항에 있어서,
    상기 분석단계는,
    상기 신호의 시도 코딩(trial coding)을 수행하는 단계;
    상기 시도 코딩의 결과를 검사하여, 각 영역에 대해 다른 영역의 잠재 예측자(potential predictor)가 되는 각 영역에 대해 다른 영역에 대한 상기 각 영역의 유사도의 기준을 만족시키는지 여부를 판정하는 단계;
    상기 기준이 만족되면, 상기 영역에 대해 하나 이상의 저장된 값을 조정하는 단계; 및
    상기 기준이 만족되지 않으면, 상기 하나 이상의 저장된 값을 고정된 양으로 설정하는 단계를 포함하는 것을 특징으로 하는 비디오 코딩 방법.
  5. 제 2 항에 종속하는 제 4 항에 있어서,
    상기 시도 코딩은 상기 각 영역에 대해서 상기 영역이 인터-프레임 차동 코딩에 의해 코딩되는지 여부를 결정하는 비디오 코더에 의해 수행되고, 코딩의 출력에 인터-프레임 차동 코딩에 의한 것인지를 표시하는 플래그(flag)를 포함하며;
    상기 유사도의 기준은 고려 중인 영역이 시도 코딩에서 예측자로 사용되는 영역에 대한 상기 플래그가 인터-프레임 코딩의 사용 결정을 표시하는 것이고;
    상기 저장된 값의 증가는 상기 값을 고정량 만큼 증가시키는 것으로 구성되는 것을 특징으로 하는 비디오 코딩 방법.
  6. 제 2 항에 종속하는 제 4 항에 있어서,
    상기 시도 코딩은 상기 각 영역에 대해서 상기 영역이 인터-프레임 차동 코딩에 의해 코딩되는지 여부를 결정하는 비디오 코더에 의해 수행되고, 코딩의 출력에 인터-프레임 차동 코딩에 의한 것인지를 표시하는 플래그를 포함하며;
    상기 유사도의 기준은 고려 중인 영역이 시도 코딩에서 예측자로 사용되는 영역에 대한 상기 플래그가 인터-프레임 코딩의 사용 결정을 표시하는 것이고;
    상기 저장된 값의 증가는 상기 값을 상기 예측 잔여의 크기와 같은 양으로 또는 상기 예측 잔여의 크기의 단조함수(monotonic function)로 조정하여 이루어지는 것을 특징으로 하는 비디오 코딩 방법.
  7. 제 2 항에 종속하는 제 4 항에 있어서,
    상기 시도 코딩은 최종 코딩(eventual coding)에 역순으로 수행되는 것을 특징으로 하는 비디오 코딩 방법.
  8. 제 7 항에 있어서,
    상기 시도 코딩은 상기 각 영역에 대해서 상기 영역이 인터-프레임 차동 코딩에 의해 코딩되는지 여부를 결정하는 비디오 코더에 의해 수행되고, 코딩의 출력 에 인터-프레임 차동 코딩에 의한 것인지를 표시하는 플래그를 포함하며;
    상기 유사도의 기준은 고려 중인 영역에 대한 상기 플래그가 인터-프레임 코딩의 사용 결정을 표시하는 것이고;
    상기 저장된 값의 증가는 상기 값을 고정량 만큼 증가시켜 이루어지는 것을 특징으로 하는 비디오 코딩 방법.
  9. 제 7 항에 있어서,
    상기 시도 코딩은 상기 각 영역에 대해서 상기 영역이 인터-프레임 차동 코딩에 의해 코딩되는지 여부를 결정하는 비디오 코더에 의해 수행되고, 코딩의 출력에 인터-프레임 차동 코딩에 의한 것인지를 표시하는 플래그를 포함하며;
    상기 유사도의 기준은 고려 중인 영역에 대한 상기 플래그가 인터-프레임 코딩의 사용 결정을 표시하는 것이고;
    상기 저장된 값의 증가는 상기 값을 상기 예측 잔여의 크기와 같은 양으로 또는 상기 예측 잔여의 크기의 단조함수(monotonic function)로 조정하여 이루어지는 것을 특징으로 하는 비디오 코딩 방법.
  10. 제 1 항 내지 제 9 항 중 어느 한 항에 있어서,
    상기 예측력의 측정값은 개별 픽처 요소에 대해서 생성되고 이것들을 평균하여 한 영역에 대해 단일 측정값을 얻는 것을 특징으로 하는 비디오 코딩 방법.
KR1020087024885A 2006-04-03 2007-04-03 비디오 코딩 방법 KR101405549B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP06251885.7 2006-04-03
EP06251885 2006-04-03
PCT/GB2007/001234 WO2007113559A1 (en) 2006-04-03 2007-04-03 Video coding

Publications (2)

Publication Number Publication Date
KR20080108538A true KR20080108538A (ko) 2008-12-15
KR101405549B1 KR101405549B1 (ko) 2014-06-10

Family

ID=36950417

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087024885A KR101405549B1 (ko) 2006-04-03 2007-04-03 비디오 코딩 방법

Country Status (6)

Country Link
US (1) US8325807B2 (ko)
EP (1) EP2002657B1 (ko)
KR (1) KR101405549B1 (ko)
CN (1) CN101411200B (ko)
CA (1) CA2646538C (ko)
WO (1) WO2007113559A1 (ko)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012117744A1 (en) * 2011-03-03 2012-09-07 Panasonic Corporation Method of encoding an image into a coded image, method of decoding a coded image, and apparatuses thereof
US9032467B2 (en) 2011-08-02 2015-05-12 Google Inc. Method and mechanism for efficiently delivering visual data across a network
KR20130050149A (ko) * 2011-11-07 2013-05-15 오수미 인터 모드에서의 예측 블록 생성 방법
US9094684B2 (en) 2011-12-19 2015-07-28 Google Technology Holdings LLC Method for dual pass rate control video encoding
US9024958B2 (en) * 2012-01-30 2015-05-05 Lenovo (Singapore) Pte. Ltd. Buffering mechanism for camera-based gesturing
US8948529B1 (en) * 2012-10-30 2015-02-03 Google Inc. Multi-pass encoding
US20180176285A1 (en) * 2016-12-15 2018-06-21 The Directv Group, Inc. Enhanced transmission of media to client devices
GB2608412A (en) * 2021-06-30 2023-01-04 Sony Group Corp Data encoding and decoding

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5764293A (en) * 1995-12-26 1998-06-09 C-Cube Microsystems, Inc. Method of encoding video using master and slave encoders wherein bit budgets for frames to be encoded are based on encoded frames
WO1999007158A2 (en) 1997-07-29 1999-02-11 Koninklijke Philips Electronics N.V. Variable bitrate video coding method and corresponding video coder
US6167085A (en) * 1997-07-31 2000-12-26 Sony Corporation Image data compression
JP2002540741A (ja) 1999-03-26 2002-11-26 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ ビデオ符号化方法及び対応するビデオ符号器
KR20030014677A (ko) 2001-03-29 2003-02-19 코닌클리케 필립스 일렉트로닉스 엔.브이. 비디오 코딩 방법 및 대응하는 인코딩 장치
US7200561B2 (en) * 2001-08-23 2007-04-03 Nippon Telegraph And Telephone Corporation Digital signal coding and decoding methods and apparatuses and programs therefor
AU2003280512A1 (en) * 2002-07-01 2004-01-19 E G Technology Inc. Efficient compression and transport of video over a network
JP3934568B2 (ja) * 2003-03-04 2007-06-20 松下電器産業株式会社 動画符号化方法および装置
SG140441A1 (en) * 2003-03-17 2008-03-28 St Microelectronics Asia Decoder and method of decoding using pseudo two pass decoding and one pass encoding
KR100987764B1 (ko) * 2003-09-04 2010-10-13 경희대학교 산학협력단 영상 데이터의 예측 부호화를 위한 참조 데이터 유닛 결정방법 및 그 장치
US7869503B2 (en) * 2004-02-06 2011-01-11 Apple Inc. Rate and quality controller for H.264/AVC video coder and scene analyzer therefor
US20050286629A1 (en) * 2004-06-25 2005-12-29 Adriana Dumitras Coding of scene cuts in video sequences using non-reference frames
US20060044420A1 (en) 2004-08-26 2006-03-02 Matsushita Electric Industrial Co., Ltd. Image pickup apparatus
JP4515870B2 (ja) 2004-09-24 2010-08-04 パナソニック株式会社 信号処理装置及び映像システム
JP4270125B2 (ja) * 2004-12-16 2009-05-27 ソニー株式会社 データ処理装置、画像処理装置、それらの方法およびプログラム
US8116577B2 (en) * 2005-03-07 2012-02-14 Sony Corporation Encoding method, encoding device, encoding process program, and recording medium on which encoding process program is recorded

Also Published As

Publication number Publication date
US8325807B2 (en) 2012-12-04
US20100150241A1 (en) 2010-06-17
CA2646538C (en) 2015-11-24
CN101411200B (zh) 2011-08-10
EP2002657B1 (en) 2018-08-08
CA2646538A1 (en) 2007-10-11
CN101411200A (zh) 2009-04-15
KR101405549B1 (ko) 2014-06-10
EP2002657A1 (en) 2008-12-17
WO2007113559A1 (en) 2007-10-11

Similar Documents

Publication Publication Date Title
KR100750136B1 (ko) 영상의 부호화, 복호화 방법 및 장치
KR100719647B1 (ko) 영상 데이터 변환 장치 및 영상 데이터 변환 방법
KR100593350B1 (ko) 화상 부호화 장치, 화상 부호화 방법, 화상 복호 장치,화상 복호 방법, 및 통신 장치
US5969764A (en) Adaptive video coding method
KR100860147B1 (ko) 화상 부호화 방법, 그 장치 및 제어 프로그램을 기록한 컴퓨터 판독가능한 기록 매체
KR100295006B1 (ko) 비디오 프레임 시퀀스 인코딩 시스템 및 그 방법, 컴퓨터 프로그램 제품
KR101420957B1 (ko) 화상 부호화 장치, 화상 복호 장치, 화상 부호화 방법 및 화상 복호 방법
US9036712B1 (en) Methods and/or apparatus for controlling zero-residual coding in predictive image/video coding
KR20090099234A (ko) 영상의 부호화, 복호화 방법 및 장치
KR101405549B1 (ko) 비디오 코딩 방법
KR19980079371A (ko) 움직임 예측 방법
KR100204069B1 (ko) 적응적인 양자화 조절 기능을 갖는 개선된 영상 부호화 시스템 및 그 양자화 제어방법
KR100708182B1 (ko) 동영상 부호화기의 비트율 제어 장치 및 방법
JP4130617B2 (ja) 動画像符号化方法および動画像符号化装置
JP4532607B2 (ja) ブロック・ベースのコード化システムにおいてコード化モードを選択するための装置および方法
KR20080010610A (ko) 비디오 인코딩 데이터율 제어를 위한 실시간 장면 전환검출 방법
JP4253276B2 (ja) 画像符号化方法
CN1067204C (zh) 视频编码的全局判决方法
KR100359819B1 (ko) 압축영상의 공간 도메인에서의 효율적인 엣지 예측 방법
KR100260702B1 (ko) 인간의 시각특성을 이용한 영상신호 압축 부호화 방법 및 그 장치
KR20040066397A (ko) 디지털 영상압축 시스템 및 그 방법
KR100207397B1 (ko) 영상 부호화 시스템의 움직임 예측장치 및 방법
KR100196828B1 (ko) 영상부호기의 움직임 벡터 선택방법
KR20050003029A (ko) 저전송율 비디오 부호화 장치 및 방법
KR20040042380A (ko) 영상의 배경 특성을 이용한 영상 부호화 장치 및 방법

Legal Events

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

Payment date: 20170525

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20180525

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190523

Year of fee payment: 6