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

비디오 코딩 방법 Download PDF

Info

Publication number
KR20020064803A
KR20020064803A KR1020027006122A KR20027006122A KR20020064803A KR 20020064803 A KR20020064803 A KR 20020064803A KR 1020027006122 A KR1020027006122 A KR 1020027006122A KR 20027006122 A KR20027006122 A KR 20027006122A KR 20020064803 A KR20020064803 A KR 20020064803A
Authority
KR
South Korea
Prior art keywords
coefficients
macroblock
macroblocks
frames
blocks
Prior art date
Application number
KR1020027006122A
Other languages
English (en)
Inventor
라피엔피샤우드
페스퀴트-팝에스쿠비에트리스
Original Assignee
코닌클리케 필립스 일렉트로닉스 엔.브이.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 코닌클리케 필립스 일렉트로닉스 엔.브이. filed Critical 코닌클리케 필립스 일렉트로닉스 엔.브이.
Publication of KR20020064803A publication Critical patent/KR20020064803A/ko

Links

Classifications

    • 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
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • H04N19/615Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding using motion compensated temporal filtering [MCTF]
    • 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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • 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
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • 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
    • H04N19/63Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets
    • H04N19/64Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission
    • H04N19/645Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding using sub-band based transform, e.g. wavelets characterised by ordering of coefficients or of bits for transmission by grouping of coefficients into blocks after the transform
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]

Abstract

본 발명은 프레임들의 시퀀스에 인가되고 프레임들과 결합된 동작 추정 및 보상을 갖는 삼차원적인(3D) 웨이브릿 분해에 기초한 비디오 코딩 방법에 관한 것이다. 이 방법은, 해상도 플래그들에 의해 분리된 매크로블록들 및 분배의 가장 작은 근사 서브-밴드에 알맞은 크기를 갖는 블록들의 구조로 상기 분해로부터의 결과인 웨이브릿 계수들을 구성하는 단계, 공간적인 방향에 접속된 소정의 순서로 각각의 3D 매크로블록의 계수들 및 각각의 그것의 블록들의 위치를 스케닝하는 단계, 및 상기 스케닝된 계수들을 비트플레인씩 인코딩하는 단계를 포함한다. 더욱이, 상기 인코딩 단계는 전체적인 뒤틀림 최소화에 의해 매크로블록들 간의 전체적인 비트레이트 할당 서브-스텝을 포함한다.

Description

비디오 코딩 방법{Video coding method}
비디오 압축에서, 특히, 멀티미디어 분야에서, 주된 현재의 연구 방향들은 확장성(scalability) 및 진보된 전송에 관한 것이다. 이러한 기능성들을 갖는, 전송 공정은 원하는 레벨의 해상도 및/또는 충실도를 얻기 위해 원래 신호의 서브셋(subset)만을 전송할 수 있다. 가장 중요한 정보를 우선 전송하고, 그 다음에 수신기가 허용하는 밴드폭만큼 개선된다. 비트스트림의 내장은 다음을 이루기위한 다른 중요한 특성이다: 코딩 및 디코딩 공정은 그 다음에, 전송중의 방해 또는 정보의 손실이 발생할수도 있는 어떤 네트워크들 상에서 사용될 수 있고, 이는 효과적으로 전송된 데이터가 정보가 가능한 한 효과적으로 재구성되도록 사용되기 때문이다. 더욱, 비트스트림의 더 짧은 부분을 디코딩하기 위한 모든 필수적인 정보는 자급자족 될 수 있어야 한다.
어떤 상기 언급된 점들은 비트-플레인 인코딩(bit-plane encoding)과 같은 공지된 기술들을 인가함으로서 얻어질 수도 있다: 가장 중요한 비트-플레인이 먼저 인코딩되고, 그리고, 각각의 패스에서, 다음의 비트-플레인이 전송된다. 이러한 진보된 전송 스키마에서, 가장 높은 비트-플레인들은 많은 제로들(zeros)을 포함할 것이며, 엔트로피 인코더(entropy encoder)를 통해 매우 잘 압축될 것이다. 만일 정지 화상들의 경우에 웨이브릿을 사용하여 이 분석을 더 발전시킨다면, 분해는 계수들의 좋은 상관을 이끌고, 그러므로, 좋은 압축비들을 이끈다. 비디오(움직이는 화상들)압축 스키마에 대하여, 시간 다중해상도 분석(temporal multiresolution analysis)은 중복성을 줄이도록 사용될 수 있지만, 큰 변위들 및 코딩 효율의 향상을 고려하기 위해, 동작 추정(ME:motion estimation) 및 동작 보상(MC:motion compensation) 기술들과 함께 조합되어야 한다.
분해 공정은, 비디오 정보의 시간적인 서브밴드 분해를 도시하는 도 1에 도시된 것처럼, 2진 트리에 의해 나타내질 수 있다. 동작 보상을 갖는 도시된 3D 웨이브릿 분해는, F1 내지 F8로 불려지는 GOF(group of frames)에 인가된다. 이 3D 서브밴드 분해 스키마에서, 입력 비디오의 각각의 GOF는 우선, 큰 동작을 갖는 시퀀스를 처리하는 것을 허용하는 동작 보상(MC)되고, 그 후에 하(Haar) 웨이브릿들을 사용하여 시간적으로 필터링된다(점선의 화살표들은 하이-패스 시간적인 필터링에 대응하는 반면, 다른 것들은 로우-패스 시간적인 필터링에 대응한다). 도 1에서, 분해의 3개의 스테이지가 도시되었다(L 및 H = 제 1 스테이지; LL 및 LH = 제 2 스테이지;LLL 및 LLH = 제 3 스테이지).
이 시공적인 분해 공정후에, 낮은 주파수 서브밴드에 포함된 데이터는 일반적으로 높은 절대값들을 제시한다. 값들은 가장 높은 주파수들을 향한 계수들을 스케닝할 때 감소하는 경향이 있다. 진보된 코딩은 만일 웨이브릿 계수들이 기록된다면, 대략적으로 동일한 크기를 갖는 계수들의 그룹을 얻기에 더욱 효율적이다. 이 원리를 인가함으로서, 제로들의 더 큰 실행들 및 더 나은 압축비가 얻어진다.
계수들의 이러한 그룹들을 생성하기에 효과적인 알고리즘들이 이미 존재한다. 예를 들면, 소위 "Embedded Zero-tree Wavelet(EZW)" 방법은 몇몇의 해상도들에서 강한 상관관계를 갖는 계수들의 트리들을 제공한다. 특정 공간적 해상도 및 위치에서 웨이브릿 계수-상기 "부모" 계수-가 주어진 임계치 미만이라면, 그것의 자손들/옵스프링들(가장 높은 해상도들 및 동일한 공간적 위치)은 이 임계치 미만의 크기를 또한 가질 것인 사실을 개발한다.
직접적으로 EZW 방법에 기초하나 다른 그룹핑 공정을 사용하는 다른 그룹핑 기술은 "A new, fast and efficient image codec based on set partitioning in hierarchical trees(SPIHT)" by A Said 및 W.A.Pearlman, IEEE Transactions on Circuits and Systems for Video Technology, vol.6, no3, June 1996, pp 243-250에제시되었다. 이 방법은, 계산 코딩(arithmetical coding)과 결합된, 어떤 특정 비트플fp인에서 제로값이된 계수들을 클러스터링하는데 매우 효과적이고, 실질적으로 공지된 매우 효과적인 용상 압축 알고리즘들을 중 하나이다. 비디오 시퀀스들에 대한 이 알고리즘의 삼차원적(3D) 응용은 "An embedded wavelet video coder using three-dimensional set partitioning in hierarchical tree(SPIHT)", Proceedings of the Data Compression Conference, March 25-27, 1997, Snowbird, Utah, USA, pp.251-260에 설명되었다. 비록 매우 효율적이라 할지라도(이 효과는 코딩될 데이터의 분석에서 그것의 소스를 취한다), 그러나 이 기술은 다음과 같은 주목할만한 결정은 갖는다: 그것의 구현들의 계산량은 실재로 제한적일 것이다. 그러므로 많은 시간 및 자원들이 필요로 되고, 실시간 응용에 대하여 상기 기술을 직접적으로 사용하거나 또는 작고, 저가의 시스템에서의 구현은 어려울 것이다.
덜 효율적이지만 더 적은 계산량을 갖는, "Z-coder adaptive coder", by L.Bottou 및 등등, Proceedings of Data Compression Conference, Snowbird, Utah, USA, March 30-April 1, 1998, pp. 18-32에 제시된 코딩 공정은 비트-플레인 인코딩에 대한 또 다른 접근법이다. 부모-옵스프링 관계들을 개발하고 중요 맵을 인코딩하는 트리들을 사용하는 대신에, 시공간적인 도메인 내의 간단한 이웃하는 관계를 사용한다. 데이터에 따른 이웃들은 네 개의 다른 "타입들"로 분류된다. 계수들의 이러한 타입들 또는 그룹들은 실행-길이 인코더 기반의 골롬 코드(Golomb code)를 통해 인코딩된다. 실행-길이 코더와 같은 엔트로피 코더들은 제로들의 코드 길이 실행들에 효과적임이 주목될 수 있다. 이러한 실행들은, 두 개의 연속적인 큰크기의 계수들이 몇몇의 작은 크기의 계수들에 의해 분리되기 때문에, 비트플레인씩 진보된 코딩 절차 작업에서 발생될 수 있다. 그러나, 에너지의 대부분의 부분이 그룹으로 되기 때문에, 낮은 주파수들에서의 대부분의 모든 웨이브릿 계수들은 큰 크기를 갖는다. 코딩 전에 서브밴드들의 평균을 간단하게 제거하는 대신에, 이러한 크기 특성이 존재하는 서브밴드를 코딩하기 위해 DPCM(differentpulsecodemodulation)를 도입하는 더욱 효과적인 계산 스키마가 이미 인용된 유럽 특허 출원에서 제안되었다.
상기 소개된 기술들의 효과는 코딩되는 데이터의 분석에서 그것의 소스를 취한다. 그러나, 대응하는 구현의 복잡성은 때때로 제한으로서 고려된다.
본 발명은 프레임들의 시퀀스에 인가되고 및 프레임들과 결합된 동작 추정(motion estimation) 및 보상(compensation)을 갖는 3 차원적인(3D) 분해(decomposition)에 기초한 비디오 코딩 방법에 관한 것으로서, 상기 분해는 계층적인 피라미드를 구성하는 변환 계수들로 프레임들의 화상 성분들(픽셀들)의 원래 세트로부터 리드하는 웨이브릿 변환(wavelet transform)이고, 시공간적인 방향 트리(spatio-temporal orientation tree)는-루트들(roots)은 3D 웨이브릿 변환으로부터의 결과인 근사값 서브밴드의 픽셀들과 함께 형성되고, 이러한 픽셀들 각각의 옵스프링(offspring)은 이러한 루트 픽셀들에 의해 정의된 영상 볼륨에 대응하는 더 높은 서브밴드들의 픽셀들과 함께 형성됨-상기 계층적 피라미드 내부의 시공간적 관계를 정의한다.
도 1은 동작 보상을 갖는 3D 서브-밴드 분해 내에서, 비디오 정보(현재의 경우, 8 프레임들의 그룹 또는 GOF)의 일시적인 서브-밴드 분해를 도시하는 도면.
도 2는 각각의 시공간적인 서브-밴드내의 각각의 프레임을 블록들로 분할 및 2차원(2D)의 경우 매크로블록들 내의 블록들의 순서를 스케닝하는 것을 도시하는 도면.
도 3은 매트로블록내의 두 개의 프레임들이 제 3 공간 분할에 대응하는 경우에 블록 인터레이싱을 도시한 도면.
도 4는 수평적인, 수직적인 및 사선의 서브-밴드들의 스케닝 순서를 도시한도면.
도 5는 매크로블록의 헤더의 구조를 도시한 도면.
도 6은 비트스트림 내의 매크로블록 구조를 도시한 도면.
도 7은 GOF의 헤더의 구조를 도시한 도면.
도 8은 본 발명의 실시예에 관련된 흐름도.
본 발명의 또 다른 목적은 코딩 공정이 데이터에 관계없이 구현되는 또 다른 종류의 접근법을 제안하는 것이다.
이러한 목적을 위해서, 본 발명은 명세서의 도입부에 정의된 것과 같은 인코딩 방법에 관한 것이고, 더욱이, SNR(signal-to-noiseratio) 및 공간적이고 시간적인 해상도들로 스케일링 가능한 인코딩된 비트스트림을 얻기 위해, 상기 방법은,
(A) 각각의 매크로블록(macroblock)의 시작과 각각 연관된 해상도 플래그들에 의해 분리된 3D 매크로블록들 및 블록들의 구조로 상기 트리의 계수들의 변환을 구성(organizing)하는 단계로서, 각각의 블록의 크기는 가장 거친 해상도로 모든 변환 계수들을 포함하는 가장 작은 근사값 서브 밴드에 알맞고, 각각의 3D 매크로블록 내의 모든 블록들은 시공간적인 분해 레벨에 속하는 연속적인 2-차원적(2D)매크로블럭들 내에서 스스로 구성되고, 시공간적인 분해 레벨의 모든 프레임들에 대하여 그룹화되는, 상기 구성 단계
(B) 각각의 블록 내에서, 상기 블록의 공간적인 방향에 의해, 3D 매크로블록 내에서, 시간적인 분해 레벨의 모든 프레임들에서 동일한 위치를 갖는 블록들의 연관에 의해 정의된 소정의 순서로 각각의 3D 매크로블록의 상기 계수들을 스케닝하는 단계;
(C) 비트플레인 당 상기 스케닝된 계수들을 인코딩하는 단계를 포함한다.
제안된 구조-진보된 웨이브릿 3차원적인 인코더-는 내장된 확장성 비디오 코딩 스키마를 얻기 위한 만족할만한 접근인 것처럼 보이고, 이것의 주 기능성들은 하기에 더욱 자세히 설명될 것이다.
본 발명은 첨부된 도면을 참조로하여 예를 들어 설명될 것이다.
본 발명에 따른 인코더의 주요 모듈들은 상기 인코더에게 다음의 기능성들을 주기 위해 제공된다.
(1) 동작 추정 및 동작 보상을 갖는 3D 서브-밴드 분해;
(2) 그들의 크기에 따른 계수들의 재-구성을 얻기 위해 제공되는 매크로블록 구성화: 시공간적인 트리내의 계수들은 블록들 내로 함께 모여지고, (매크로블록(0)을 제외하고는)매크로블록들내의 블록들은 대략적으로, 주어진 시간적인 해상도 레벨의 모든 프레임들에서, 시-공간적인 해상도 레벨에서의 상세한 서브-밴드들의 모든 계수들을 대략적으로 나타냄;
(3) 매크로블록(0) 내의 벡터적인 DPCM 예측: 특정 통계적 특성들을 갖는, 근사 서브밴드는 이 서브-밴드의 계수들 간의 잉여 상관관계를 감소시키기 위해 DPCM 기술을 사용하여 따로 따로 인코딩됨(예측 에러는 상세 계수들로서 동일한 알고리즘을 위해 인코딩된다);
(4) 전체적인 뒤틀림을 최소화하는 알고리즘에 의해, 매크로블록들 간의 비트레이트 할당;
(5) 비트플레인 인코딩:선정된 순서로 스케닝된, 각각의 매크로블록의 계수들은 비트플레인씩 인코딩되고, 두 개의 패스들은 각각의 비트플레인 레벨에서 수행됨:
(a) 이 레벨에서 중요해지는 계수들을 인코딩하기 위해 적용적인 실행-길이 인코더를 사용하여 중요 맵을 인코딩;
(b) "0" 실행들의 길이를 최대화하기 위한 목적으로, 이 단계 동안, 각각의 블록 내의 계수들의 스케닝이 블록이 속하는 서브-밴드 내에 상세들의 공간적인 방향에 따라서 실현되고, 더 높은 레벨의 중요도가 찾아지는 계수들의 개선 비트들은 코딩 없이 비트스트림에 넣어짐.
본 발명에 따른 인코더는 우선, "Fast progressive wavelet coding", H.S.Malver, Proceeding of Data Compression Coference, Snowbird, Utah, USA, March 29-31, 1999, pp.336-343에 설명된 것으로부터 내의를 받은 매크로블록 구조를 포함한다. 상기 문서내에 제시된 구조로부터 시작하여, 웨이브릿 계수들은 우선 블록들로 구성된다. 각각의 블록의 크기는 가장 거친 해상도(각각의 프레임이 블록들(0, 1, 2, 3, 4, 5 등)로 분할되고, 2D의 경우 매크로블록들 내의 상기 블록의 순서로 스케닝 되는 도 2에서, 블록 0)에서 모든 웨이브릿 계수들을 포함하는 가장 작은 근사 서브-밴드에 정확하는 맞도록 선택된다.
각각의 시공간적 서브-밴드내에서 각각의 블록들로 분할된 각각의 프레임은, 이러한 블록들을 판독하는 방식, 데이터의 판독/클러스터링을 위해, 압축비를 향상시키기 위해 제공되는 중복성을 생성할 것이다. 비트플레인 인코딩을 갖는 진보된스키마에서, 주어진 비트플레인에서 거의 동일한 크기를 갖는 데이터(즉, 웨이브릿 계수들)는 그대로의 어떤 중복성을 제시한다. 서브-밴드들은 블록들로 분할되고, 목적은 동일한 유사성을 차례로 제시하는 블록들을 스캔하는 것이다: 전형적으로, 이러한 블록들은 동일한 위치로부터 발행된다(이것은 그렇지 않다면 대부분의 경우들에 웨이브릿 계수들이 블록 내의 중요한 변화들을 제시하지 않는다). 도 2에 도시된, 하나의 프레임에 대한 2D의 경우 보유된 블록들의 스케닝 순서는, 동일한 해상도 레벨에서 대각선의 상세 서브-밴드(48,49, 50 등)와 종료하는, 수평적인 세부 서브-밴드 및 수직적인 세부 서브-밴드간을 교차한다; 이것은 계수들을 정렬하는 크기를 고려한다. 가장 거친 해상도는 블록들의 크기를 결정하고, 블록(0)에 의해 알맞게 된다. 이 2D의 경우, 각각이 매크로블록은 공간적인 해상도 개선을 나타낸다. 매크로블록(0)은 특정 시공간적인 레벨로 보여지는 블록(0)이고, 매크로블록(1)은 블록들(1 내지 3)을 포함하고, 매크로블록(2)은 블록들(4 내지 15)을 포함하고, 매크로 블록(3)은 블록들(16 내지 63)을 포함한다.
재배열된 비트플레인을 제외하고, 이러한 매크로블록 구조는 공간적이고 시간적인 확장성을 허용해야만 한다. 이 기능성을 얻기 위해(즉, 매크로블록에 관련된 정보를 비트스트림에 부가하는 것은 공간적 및 시간적인 해상도를 모두 개선해야 한다), 매크로블록내의 모든 블록들은 시간적인 레벨의 모든 프레임들에 대하여, 특정 공간적인 분해 레벨(매크로블록의 공간적인 해상도)에 속한다. 그러므로, 매크로 블록의 3D 확장은 특정 공간적 레벨의 모든 프레임들 내의 모든 대응하는 2D 매크로블록들을 그룹화함으로서, 도 2에 관하여, 간단하게 얻어진다(이 확장에대하여, 매크로블록들내의 두 개의 프레임들의 경우 블록 인터레이싱은 제 3 공간적인 분해에 대응하는 도 3을 참조하라):예를 들면, 2D 경우에 블록들(16 내지 63)을 포함하는 매크로블록(3)은 제 1 프레임에 블록들(16 내지 63)을, 제 2 프레임 및 나머지 프레임들에 대하여 블록들(16 내지 63)을 포함한다.
3D 경우 확장의 효과적인 구현을 수행하기 위해, 블록들의 스케닝 순서는 그것들을 프레임씩 계산하기보다는 프레임 사이에서 인터레이싱 된다.(예를 들면, 16번째 블록은 우선 제 1 프레임에서 스케닝되고, 제 2 프레임 내에서 17번째 블록이 동일한 방식으로 스케닝되고 그 후도 유사하다), 이것은 계수들을 정렬하는 크기 및 한정된 시간적인 레벨의 다른 프레임들 간의 시간적인 상관관계를 고려하는 것을 허용한다: 예를 들면, 수평적인 상세 서브-벤드내의 두 개의 수형적인 연속적인 계수들은 유사한 크기를 가진 것처럼 보인다. 그러한 중복성을 고려하기 위해, 각각의 블록 내부의 계수들의 스케닝은 상기 블록의 공간적인 방향에 의해 결정되고: 도 4에 도시된 것처럼, 수평 및 사선 상세 서브-밴드들에 속하는 블록들 내의 계수들은 수평으로 스케닝되고, 수직 상세 서브-밴드들에 속하는 블록들 내의 계수들은 수직으로 스케닝된다.
계수 크기에 관한 아주 일반적인 가정에 기초한, 상술된 기록 방법은 완전히 데이터 독립적이고 쉽게 구현되며 낮은 복잡도를 갖는다. 또한, 다음과 같은 데이터 구성을 특징으로 한다.
해상도 확장성(resolution scability)을 용이하게 달성하기 위해서, 각 공간 및 시간 레벨을 분리할 필요가 있게 된다. 예를 들어, 코딩된 시퀀스를 두 배 더작게 재구성하도록 요청되면, 각 시간 해상도에서 최대 공간 레벨을 제거할 필요가 있다. (그 구성의 장점에 의해) 매크로블록은 특정 시공간적 레벨에 대응하기 때문에, 확장성 특징을 제공하기 위해서, 각 매크로 블록은 플래그로 그 시작을 마킹함으로써 분류된다(즉, 유일한 시퀀스가 나머지 비트스트림에는 허용되지 않는다). 매크로블록의 헤더 구조를 도시하는 도 5에 도시된 바와 같이, 확장 가능한 비트스트림을 얻을 수 있도록 하는 이 해상도 플래그는 이 예에서 헤더의 첫 번째 17비트들로 표시된다("1"의 1비트 + "0"의 16비트들).
이 해상도 플래그에는 Nbits_Y 및 Nbits_C라고 하는 2개의 비트들의 숫자들로 이어진다. 이하 설명되는 바와 같이, 이 숫자들은 휘도 Y 및 색차 C(U 또는 V)를 코딩하는데 사용된 비트플레인들의 수를 나타낸다. 또한, 이들은 각각 휘도 및 색차에 대한 매크로블록 내의 임의의 웨이브릿 계수들을 코딩하는데 사용된 비트들의 총 수를 나타낸다. 그 값들은 다음과 같이 주어진다.
여기서, 함수 x →는 값 x를 그의 정수부에 매핑하고, EY, EU, EV는 각각 현재 매크로블록에서의 Y, U, V 플레인들의 계수들의 세트들이다. 이 값들이 단지 매크로블록과 관련되기 때문에, 매크로블록 플래그 뒤에서만 헤더의 비트스트림에 추가된다. 매크로블록을 다른 매크로블록을 변경할 수도 있는, 이 두 값들을 코딩하기 위해 필요한 비트들의 수는 통상 시공간적 주파수 서브-밴드들에 대해 높다.
양호한 PSNR(Peak Signal-to-Noise Ratio)은 단지 웨이브릿 계수들의 정수부만이 코딩되는 경우에 매우 높은 비트레이트들에서 쉽게 달성될 수 없기 때문에, 정밀도는 각각 휘도 및 색차 플레인들에 대한 C_Y 및 C_C를 코딩하기 전에 각 웨이브릿 계수에 상수를 곱합으로써 개선될 수도 있다. 이 두 상수들의 값을 조정함으로써, 웨이브릿 계수들의 최대 정밀도가 정의될 수도 있다(예를 들어, C_Y가 16과 같으면, Y의 계수들은 가장 근사한 1/16 값으로 반올림된다). 이러한 상수들에 있어서, Nbit_Y 및 Nbits_c의 값들은 다음과 같이 된다.
이 두 값들을 코딩하는데 사용된 비트들의 수 "n"은 각 웨이브릿 계수의 소망의 정확도에 의존하여 변할 수도 있다. 이 실시예에서, 단위 정확도로는 4 비트로, 1/16의 정확도를 위해서는 5비트면 충분하며, 일반적으로 어떤 구현을 위해서는 8비트면 충분하다. 어떤 경우에서든(즉, 개선되었거나 그렇지 않은 Nbits_Y 및 Nbits_C를 고려하면), 이 값들은, 작은 웨이브릿 계수들의 경우에(통상 고주파수 서브밴드들에서), 매크로블록의 시작에 쓸모없는 0들의 긴 실행들을 피하면서 Y 및 C의 관련 데이터만을 코딩하기 위해 사용되는 필요한 비트플레인들을 나타낸다.
(진보된 비트플레인 인코딩으로부터 발생된) 데이터 자체에 있어서, 데이터는 비트스트림 바로 다음의 헤더에 추가된다. 주요한 제한 조건은 (인코딩에 사용된 비트레이트와는 다른 비트레이트로 시퀀스를 디코딩할 수 있는) 비트레이트 확장성이기 때문에, 블록들의 그룹들에 의해 색 플레인들을 인터레이스(interlace)함으로써 3개의 색 플레인들(Y-플레인, U-플레인, V-플레인)의 삽입이 매크로블록 내에서 수행된다. 비트스트림에서의 이러한 매크로블록 및 블록 구조가 도 6에 도시되어 있으며, n개의 블록들과 k개의 프레임들의 경우에, 상세한 구조는 다음과 같다. 도 6의 제 1 라인은 (Y, U 및 V 데이터 사이에 인코딩 비트들(EB)을 갖는) Y-플레인, U-플레인 및 V-플레인의 삽입을 도시하고, 제 2 라인은 Y 데이터의 내용을 더 상세히 도시하며(연속적으로, 비트플레인(B)에 대한 실행-길이 코드(RLC(B)), 대응하는 개선 비트들(REF(B)), 다음으로 RLC(B-1) 및 REF(B-1); ..; 등..;., RLC(B-N)), 제 3 라인은 이 실행-길이 코드들 및 대응하는 개선 비트들에 주어지는 블록들(0 내지 n)을 나타내고, 제 4 라인은 각 블록(0, 1, 2, ..., n)의 프레임들(0 내지 k)을 나타낸다.
인코딩 단계는 적응적이기 때문에, 얼마나 많은 비트들이 비트스트림에 추가되고 다음 비트가 인코딩되는지를 정확히 알 수 없지만, 인코딩 (및 디코딩) 처리의 임의의 단계에서의 적어도 최대수의 비트들을 결정하는 것은 가능하며, 이는 k+2와 같다. 정교한 비트레이트 제어를 수행하기 위해서, 테스트를 수행하는 것이 적절하며, 추가되어야 할 다음 RLR 코드에 대한 적어도 (k+2)개의 비트들을 코딩하기에 충분한 비용이 있다면, RLR 코드마다 인코딩된다. 그렇지 않은 경우라면, 가장 근사한 비트에 대한 비트 제어를 수행하기 위해서 "인코딩 비트들(EB)"이라고 할 수도 있는 쓸모없는 비트들이 추가된다.
어떤 부가적인 점들은 GOF(group of frames)의 시작을 인코딩하기 시작할 때고려될 수도 있다. 실재로, 하나는 하나의 매크로블록과 GOF로 역시 분리할 수 있다. 가장 거친 시공간적 해상도를 포함하는 것을 제외하고, 그것의 헤더는 반드시 모든 GOF에 대하여 필요로 되는 정보를 또한 포함해야 한다(선형 예상의 경우, 예상기 계수들은 디코딩 측에서 필요로 된다). 더욱이, 정보가 정확하게 디코딩 되는 만큼, 이것은 각각의 매크로블록에 대한 정보를 인코딩하도록 사용되는 정확한 비트레이트를 결정해야 하고, 그것들의 각각의 변화는 또한 GOF의 헤더 내에 전송된다(비트레이트를 결정하는데 사용되는 방법은 모든 매크로블록들이 변화를 필요로 하기 때문에 상기 변화는 상기 설명된 헤더내의 비트스트림에 부가될 수 없다). 상기 GOF 헤더는 도 7에 도시된다.
또한, 상기 설명된 매크로 블록의 플래그는 이전의 매크로블록의 끝 및 새로운 매크로 블록의 시작을 나타내는데 사용될 수 있다. 매크로블록의 시작 및 GOF의 시작을 구별하기 위해, 이것은 오직 제로들만을 포함하는 매크로블록을 갖지 않는 것처럼 관찰될 수 있다. GOF의 시작을 표시하기 위해 선택된 구조는 자동적으로 0으로 설정되는 Nbits_Y 및 Nbits_C를 제외하고는, 매크로블록의 플래그와 동일하다. GOF 플래그의 검출은 매크로블록들에 대하여 거의 실현되고: 일단 플래그가 도달하면, Nbits_Y 및 Nbits_C의 간단한 테스트가 매크로블록 또는 GOF의 시작을 나타낸다.
그러므로, 제안된 코딩 방법은 또한 버젯 할당을 간단하게 함으로서 향상될 수도 있다. 이 간략화를 얻기 위해, 상기 참조문헌으로 언급된 "Fast progressive wavelet coding" 로부터의 매크로블록 구조는 3D 웨이브릿 분해로 도입되고 인가된다. 주 포인트가 엔트로피 인코딩동안 더 나은 압축비를 얻기 위해 데이터를 정렬하는 매크로블록 구조가 이제 설명될 것이다. 우선 웨이브릿 계수들이 "블록들"로 구성된다. 각각의 블록의 크기는 가장 작은 근사값 서브밴드에 정확하고 알맞게 선택되고, 가장 거친 해상도에서 모든 웨이브릿 계수들을 포함한다. 그러므로, 각각의 시공간적인 서브밴드내의 각각의 프레임은 블록들로 분할된다. 이러한 블록들을 판독하는 방법은 중복성을 생성할 것이다: 비트-플레인 인코딩을 갖는 진보적인 스키마에서, 주어진 비트플레인에서, 상호간에 거의 동일한 크기를 갖는 데이터는 어떤 중복성을 제시한다. 서브밴드들은 블록들로 분할되고, 목적은 차례로 어떠한 유사성들을 제시하는 블록들을 스캔하는 것이다. 전형적으로, 이러한 블록들은 동일한 공간적인 위치에서 발행된다. 만일 그렇지 않다면, 대부분의 경우에 웨이브릿 계수들은 블록 내에 중요한 변화를 제시하지 않는 것으로 간주된다. 동일한 해상도 레벨에서 대각선의 상세 서브밴드들과 함께 종료하는, 대각선 블록들의 스케닝 순서는 수평적인 상세 서브밴드 및 수직적인 상세 서브밴드들 간에서 변화한다. 이 순서는 계수들의 크기 배열을 고려한다. 가장 거친 해상도는 블록들의 크기들을 결정하고, 블록(0)에 의해 맞춰진다. 이 2D 의 경우, 각각의 매크로블록은 공간적인 해상도 개선을 나타낸다. 매크로블록(0)은 (특정 시공간적 레벨로서 보이는)블록(0)이다.
비트-플레인 재배열을 제외하고, 매크로블록 구조의 제 2 주요점은 공간적이고 시간적인 확장성을 허용하는 것이다. 이것을 얻기 위해, 주요점은 매크로블록에 관련된 정보를 비트스트림으로 부가하는 것은 공간적이고 시간적인 해상도에서 개선되어야 한다. 여기서, 매크로블록 내의 모든 블록들은 특정 시간적 레벨의 모들 프레임들에 관하여, 특성 공간적인 분해 레벨(매크로블록의 공간적인 해상도)에 속한다. 이러한 방법으로, 매크로블록의 3D 확장은 특정 시간적 레벨이 모든 프레임들에서 모든 대응하는 2D 매크로블록들을 그룹화함으로서 간단하게 얻어진다. 예를 들면, 2D의 경우에 블록들(16 내지 63)을 포함하는 매크로블록(3)은 제 1 프레임 내에 블록들(16 내지 63)을 포함하고, 제 2 프레임 및 나머지 프레임들 내에 블록들(16 내지 63)을 포함한다.
3D 경우 확장에서 효과적인 구현을 수행하기 위해, 블록들의 스케닝 순서는 프레임 당 계산되기보다는 각각의 프레임 사이에서 인터레이스되고, 이는 한정 시간적인 레벨의 다른 프레임들 및 계수들의 크기 배열간의 시간적인 상관관계를 고려한다. 상기 제안된, 완벽하게 데이터 독립적인, 재배열 방법은 계수 크기에 관하여 상당히 일반적인 가정에만 기초한다. 이러한 방법으로, 3D-SPIHT 에 의해 얻어진 것과 같은 동일한 효율성은 얻어질 수 없다. 그러나, 이 방법의 강도는 알고리즘의 낮은 복잡성과 구현의 편리성에 있다.
비트 할당은 상기 설명된 것과 같이 두 개의 레벨들에서 수행된다.
- 우선, 전체적인 비트 버젯은 Y, U 및 V 플레인들 간에서 할당:
- 둘째로, 각각의 컬러 플레인에 대하여, 나머지 비트 버젯은 매크로블록들간에 할당됨.
(a) 컬러 플레인들간의 비트 할당.
상기 언급된 것처럼, 색차 플레인은 휘도 플레인에 비하여 2배나 작은 해상도를 갖는다(4로 나누어진 크기). 더욱이, 덜 공간적인 상세들은 이러한 플레인들에서 존재한다. 그러므로 휘도 계수들을 인코딩하기 위해 필수적인 비트 버젯은 휘도 계수들에 대하여 필요로 하는 것보다 훨씬 작다. 더한 감소는 만일 휘도 및 색차간의 종속들이 코딩 공정들을 고려한다면 얻어질 수 있다. 컬러 플레인들 간의 최적 비트 할당을 결정하기 위해, 다음의 방법이 사용된다: 전체 비트 버젯(R)은 각각의 Y, U, V 플레인들에 대한 비트 버젯인 RU, RV및 RV사이로 분할된다.
파라미터은 할당 공정을 제어한다(이것의 최적 값은 디초토믹 접근에 의해 결정된다: 현재의 경우, 테스트들은 이것이 0.6 내지 0.9 사에에서 변화함을 도시한다).
(b) 매크로블록들 간의 비트 할당.
지금 설명된 알고리즘은 코딩 공정에서 전체 뒤틀림을 최소화하기 위해 매크로블록 마다 비트 버젯을 할당하기 위한 방법을 제공한다. 표시법은 다음 것들을 따른다.
- 'N'은 전체 GOF 내의 픽셀들이 수(또는, 또한, 매크로블록들의 복수의 개수들의 합)
- 'Mi'은 i 번째 매크로블록이고,M i 의 변화,n i 는 그것이 포함하는 점들의 수이고, 'bi'는 이 i 번째 매크로블록에서 사용되는 계수당 비트들의 수이고,'i'는 매크로블록들의 수;
-D i '는 Mi의 뒤틀림, 'D g '는 모든 매크로블록들의 전체 뒤틀림.
매크로블록(Mi)상의 균일한 양자화, 이 매크로블록의 뒤틀림'D i '은 다음처럼 주어진다.
전체 인코딩 공정의 전체 뒤틀림'D g '은 다음처럼 주어진다.
인코딩된 시퀀스에 대한 전체 비트레이트()는 다음처럼 주어진다.
최소화될 수 있는 표준은 라그랑지안(Lagrangian)을 사용하여 다음처럼 쓰여질 수 있다.
각각의 매크로블록의 버젯에 대한 어떤 압박도 없이, 이것은 공지된 비트 할당 방법을 감소시키고, 이것의 해는 다음처럼 주어진다.
현재의 케이스의 이 방법의 직접적인 응용은 특히 낮은 비트레이트(사실 이것은 대부분의 매크로블록들에 할당된 네거티브 버젯이다)에서 나쁜 결과를 이끈다. 이러한 문제를 피하기 위해 최적화된 표본은 해를 명확하게 하는 추가의 규정을 부가함으로서 변화된다. 이 표준은 다음처럼 된다
마지막으로, 하기(및 도 8)에 설명되고 및 상기에 설명된 매크로블록 방향성(MB-ORG)에 인가된, 제안된 해를 주는, 알고리즘은 후자의 방법에 연관된다.
1. 계산된 상기 변화들을 갖은 후에(단계 CPVAR), 변화를 감소시킴으로서 매크로블록들을 정렬(단계 CPVAR)
2. ℓ= 1로 설정
3.M l (단계 CPML) 및(단계 CPLD)로서
식 1
4. 만일이 다음의 부등식을 검증한다면(단계 TSTLD):
식 2
그때, ℓ = ℓ + 1(YES라 대답)로 설정 및 단계(0)으로 감(최대 값까지)
5. 만일 테스트의 응답이 NO라면, 다음의 식을 사용하여 각각의 매크로 블록(k)에 대한 비트들(Rk,l)의 수를 계산
식 3

Claims (10)

  1. 프레임들의 시퀀스에 인가되고 및 프레임들과 결합된 동작 추정(motion estimation) 및 보상(compensation)을 갖는 3 차원적인(3D) 분해(decomposition)에 기초한 비디오 코딩 방법으로서, 상기 분해는 계층적인 피라미드를 구성하는 변환 계수들로 프레임들의 화상 성분들(픽셀들)의 원래 세트로부터 리드하는 웨이브릿 변환(wavelet transform)이고, 시공간적인 방향 트리(spatio-temporal orientation tree)는-루트들(roots)은 3D 웨이브릿 변환으로부터의 결과인 근사값 서브밴드의 픽셀들과 함께 형성되고, 이러한 픽셀들 각각의 옵스프링(offspring)은 이러한 루트 픽셀들에 의해 정의된 영상 볼륨에 대응하는 더 높은 서브밴드들의 픽셀들과 함께 형성됨-상기 계층적 피라미드 내부의 시공간적 관계를 정의하고,
    상기 방법은, SNR(signal-to-noiseratio) 및 시공간적 해상도들로 스케일링 가능한 인코딩된 비트스트림을 얻기 위해, 상기 방법은,
    (A) 각각의 매크로블록(macroblock)의 시작과 각각 연관된 해상도 플래그들에 의해 분리된 3D 매크로블록들 및 블록들의 구조로 상기 트리의 계수들의 변환을 구성(organizing)하는 단계로서, 각각의 블록의 크기는 가장 거친 해상도로 모든 변환 계수들을 포함하는 가장 작은 근사값 서브 밴드에 알맞고, 각각의 3D 매크로블록 내의 모든 블록들은 시공간적인 분해 레벨에 속하는 연속적인 2-차원적(2D) 매크로블럭들 내에서 스스로 구성되고, 시공간적인 분해 레벨의 모든 프레임들에 대하여 그룹화되는, 상기 구성 단계
    (B) 각각의 블록 내에서, 상기 블록의 공간적인 방향에 의해, 3D 매크로블록 내에서, 시간적인 분해 레벨의 모든 프레임들에서 동일한 위치를 갖는 블록들의 연관에 의해 정의된 소정의 순서로 각각의 3D 매크로블록의 상기 계수들을 스케닝하는 단계;
    (C) 비트플레인 당 상기 스케닝된 계수들을 인코딩하는 단계를 포함하는 것을 특징으로 하는, 비디오 코딩 방법.
  2. 제 1 항에 있어서,
    상기 비트플레인 인코딩은,
    (a) 고려된 비트플레인에서 중요해지는 계수들에 연관된, 중요 맵 인코딩 동작을 수행하는 제 1 패스;
    (b) 이미 중요한 계수들의 개선 비트들(refinement bits)의 부가적인 인코딩 없이 전송하기 위해, 개선 동작을 수행하는 제2 패스의 두 개의 패스 내에서 수행되는 것을 특징으로 하는, 비디오 코딩 방법.
  3. 제 1 항 내지 제 2 항에 있어서,
    전체적인 비트레이트 할당 서브-스텝(global bitrate allocation sub-step)은 전체적인 뒤틀림 최소화에 의해 상기 인코딩 단계 전에, 3D 매크로블록들 사이에서 더 수행되는 것을 특징으로 하는, 코딩 방법.
  4. 제 3 항에 있어서,
    상기 전체적인 비트레이트 할당 서브-스텝 자신은
    3개의 휘도 및 색차 플레인들(Y, U, V) 사이의 전체적인 비트 버젯(bit budget)(R)을 할당하는 동작,
    각각의 컬러 플레인(Y, U 및 V)에 대하여, 3D 매크로블록들 사이의 남은 비트 버젯의 할당하는 동작을 포함하는, 코딩 방법.
  5. 제 4 항에 있어서,
    상기 전체적인 비트 버젯(R)은 다음의 관계들에 따라,
    3개의 플레인들(Y, U, V)에 대응하는 3개의 비트 버젯들(R(Y), R(U), R(V))로 분할되는, 비디오 코딩 방법.
  6. 제 5 항에 있어서,
    3개의 플레인들 사이의 비트 예산 할당을 제어하는 파라미터( alpha )의 최적 값은 구간[0,6-0,9] 안에 포함되고, 전체적인 디초토믹(dichotomic) 접근에 의해 정의되는, 코딩 방법.
  7. 제 4 항에 따라서,
    상기 나머지 비트 버젯은,
    (a) 각각의 3D 매크로블록의 변화(variance)를 계산;
    (b) 변화의 감소에 따라 상기 3D 매크로블록들을 분류;
    (c) 각각의 3D 매크로불록에 대한 최적 비율을 찾기 위해 반복 절차(iterative procedure)를 수행하는 동작에 따라 3D 매크로블록들 간에 할당되고,
    상기 반복 절차는,
    (1) 상기 복수의 처리된 3D 매크로블록들을 ℓ= 1에서 초기화하는 절차,
    (2) 다음의 관계에 따라서, 라그랑지안(Lagrangian) λ(ℓ)을 계산하는 절차,
    (3) λ(ℓ)가 다음의 관계를 만족하는지 아닌지를 확인하는 절차로서.
    (i) 만일 이 테스트의 대답이 YES라면, 1 만큼 스텝사이즈(stepsizs)(ℓ)를 증가시키고(즉, ℓ= ℓ+ 1) (2)로 돌아가고;
    (ii) 만일 대답이 NO라면, 3D 매크로블록들의 최적 번호가 발견되었고, 그들각각의 버젯은
    두 관계에 의해 얻어지는 상기 확인 절차를 포함하는, 코딩 방법.
  8. 프레임들의 시퀀스를 수신하는 비디오 코더 내에서 프레임들과 결합된 동작 추정 및 보상을 갖는 삼차원적인(3D) 웨이브릿 분해에 기초하여 사용하기 위해, 컴퓨터 실행 가능한 공정 단계들은 상기 프레임들을 코딩하기 위해 컴퓨터 판독 가능한 저장 매체 상에 저장되도록 제공되고,
    해상도 플래그들에 의해 분리된 매크로블록들 및 블록들의 구조로 상기 분해로부터의 결과인 웨이브릿 계수들을 구성하는 단계로서, 각각의 블록들의 크기는 상기 분배의 가장 작은 근사 서브-밴드에 알맞은, 상기 구성 단계,
    각각의 그것의 블록들의 공간적인 방향에 의해서 및, 3D 매크로블록내에서, 시간적인 분해 레벨의 모든 프레임들 내에 동일한 위치를 갖는 블록들의 조합에 의해 정의된 소정의 순서로 각각의 3D 매크로블록의 계수들을 스케닝하는 단계,
    및 상기 스케닝된 계수들을 비트플레인씩 인코딩하는 단계로서, 상기 코딩 단계는 전체적인 뒤틀림 최소화에 의해 매크로블록들간의 전체적인 비트레이트 할당 서브-스텝을 포함하는 인코딩 단계를 포함하는, 컴퓨터 실행 가능한 공정 단계들.
  9. 명령들이 코더 내에 로딩될 때, 제 8 항에 청구된 것과 같은 공정을 수행하는 명령들의 세트에 따라 프레임들의 시퀀스를 코딩하기 위해 제공되는 비디오 코더에 대한 컴퓨터 프로그램 제품.
  10. 코딩 방법에 따른 프레임들의 시퀀스를 코딩함으로서 생성되는 전송 가능한 코딩된 신호에 있어서,
    해상도 플래그들에 의해 분리된 매크로블록들 및 블록들의 구조로 상기 분해로부터의 결과인 웨이브릿 계수들을 구성하는 단계로서, 각각의 블록들의 크기는 분배의 가장 작은 근사 서브-밴드에 알맞은, 상기 구성 단계,
    공간적인 방향에 접속된 소정의 순서로 각각의 3D 매크로블록의 계수들 및 그것의 각각의 블록들의 위치를 스케닝하는 단계,
    및 상기 스케닝된 계수들을 비트플레인씩 인코딩하는 단계로서, 상기 코딩 단계는 전체적인 뒤틀림 최소화에 의해 매크로블록들 간의 전체적인 비트레이트 할당 서브-스텝을 포함하는 상기 인코딩 단계를 포함하는, 전송 가능한 코딩된 신호.
KR1020027006122A 2000-09-12 2001-08-29 비디오 코딩 방법 KR20020064803A (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
EP00402511 2000-09-12
EP00402511.0 2000-09-12
EP00403591.1 2000-12-19
EP00403591 2000-12-19
PCT/EP2001/010109 WO2002023475A2 (en) 2000-09-12 2001-08-29 Video coding method

Publications (1)

Publication Number Publication Date
KR20020064803A true KR20020064803A (ko) 2002-08-09

Family

ID=26073577

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020027006122A KR20020064803A (ko) 2000-09-12 2001-08-29 비디오 코딩 방법

Country Status (6)

Country Link
US (1) US6728316B2 (ko)
EP (1) EP1320831A2 (ko)
JP (1) JP2004509531A (ko)
KR (1) KR20020064803A (ko)
CN (1) CN1266649C (ko)
WO (1) WO2002023475A2 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101065520B1 (ko) * 2006-12-07 2011-09-19 콸콤 인코포레이티드 라인-기반 비디오 레이트 제어 및 압축
KR101246115B1 (ko) * 2006-09-02 2013-03-20 세종대학교산학협력단 3차원 웨이블릿 기반 영상 부호화/복호화 방법 및 장치

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2002366825A1 (en) * 2001-12-20 2003-07-09 Koninklijke Philips Electronics N.V. Video encoding and decoding method and device
US7193537B2 (en) 2002-03-07 2007-03-20 Aware, Inc. Interlaced sign bit coding
US6795584B2 (en) * 2002-10-03 2004-09-21 Nokia Corporation Context-based adaptive variable length coding for adaptive block transforms
KR20050085571A (ko) * 2002-12-11 2005-08-29 코닌클리케 필립스 일렉트로닉스 엔.브이. 비디오 부호화 방법 및 대응하는 컴퓨터 프로그램
US20060257028A1 (en) * 2002-12-31 2006-11-16 France Telecom Method and device for detection of points of interest in a source digital image, corresponding computer program and data support
US7471726B2 (en) 2003-07-15 2008-12-30 Microsoft Corporation Spatial-domain lapped transform in digital media compression
US7724827B2 (en) 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
US7369709B2 (en) * 2003-09-07 2008-05-06 Microsoft Corporation Conditional lapped transform
KR100631714B1 (ko) 2004-06-30 2006-10-09 엘지전자 주식회사 휴대단말기의 개선된 영상신호 레이트 콘트롤 장치 및 방법
FR2872989A1 (fr) * 2004-07-06 2006-01-13 Thomson Licensing Sa Procede et dispositif pour choisir un vecteur mouvement pour le codage d'un ensemble de blocs
US8340177B2 (en) * 2004-07-12 2012-12-25 Microsoft Corporation Embedded base layer codec for 3D sub-band coding
US7428342B2 (en) * 2004-12-17 2008-09-23 Microsoft Corporation Reversible overlap operator for efficient lossless data compression
US7471850B2 (en) * 2004-12-17 2008-12-30 Microsoft Corporation Reversible transform for lossy and lossless 2-D data compression
US7305139B2 (en) * 2004-12-17 2007-12-04 Microsoft Corporation Reversible 2-dimensional pre-/post-filtering for lapped biorthogonal transform
EP1727372A1 (en) * 2005-05-27 2006-11-29 Thomson Licensing Method and apparatus for encoding and decoding video data,
US8036274B2 (en) * 2005-08-12 2011-10-11 Microsoft Corporation SIMD lapped transform-based digital media encoding/decoding
US7860327B2 (en) * 2005-10-06 2010-12-28 Sony Corporation Systems and methods for enhanced coding gain
US20070201550A1 (en) * 2006-01-09 2007-08-30 Nokia Corporation Method and apparatus for entropy coding in fine granularity scalable video coding
JP4424522B2 (ja) * 2006-07-13 2010-03-03 日本電気株式会社 符号化及び復号化装置ならびに符号化方法及び復号方法
US9031129B2 (en) * 2007-06-15 2015-05-12 Microsoft Technology Licensing, Llc Joint spatio-temporal prediction for video coding
US8369638B2 (en) 2008-05-27 2013-02-05 Microsoft Corporation Reducing DC leakage in HD photo transform
US8447591B2 (en) * 2008-05-30 2013-05-21 Microsoft Corporation Factorization of overlapping tranforms into two block transforms
TW201016017A (en) * 2008-10-08 2010-04-16 Univ Nat Taiwan Memory management method and system of video encoder
US8275209B2 (en) * 2008-10-10 2012-09-25 Microsoft Corporation Reduced DC gain mismatch and DC leakage in overlap transform processing
JP2013506379A (ja) * 2009-10-14 2013-02-21 ソニー株式会社 カラー画像のための結合スカラー埋め込みグラフィックス符号化
KR20120035096A (ko) * 2010-10-04 2012-04-13 한국전자통신연구원 쿼드 트리 변환 구조에서 부가 정보의 시그널링 방법 및 장치
US8532413B2 (en) * 2010-10-13 2013-09-10 Samsung Electronics Co., Ltd. Entropy encoding/decoding method and apparatus for hierarchical image processing and symbol encoding/decoding apparatus for the same
WO2013109126A1 (ko) * 2012-01-20 2013-07-25 한국전자통신연구원 비디오 정보 전송 방법, 비디오 복호화 방법, 비디오 부호화기 및 비디오 복호화기
US9357232B2 (en) * 2014-10-28 2016-05-31 Sony Corporation Image processing system with binary decomposition and method of operation thereof
US10356410B2 (en) * 2014-10-28 2019-07-16 Sony Corporation Image processing system with joint encoding and method of operation thereof
US10063889B2 (en) 2014-10-28 2018-08-28 Sony Corporation Image processing system with conditional coding and method of operation thereof
US9357237B2 (en) * 2014-10-28 2016-05-31 Sony Corporation Image processing system with bitstream reduction and method of operation thereof
US9674554B2 (en) 2014-10-28 2017-06-06 Sony Corporation Image processing system with coding mode and method of operation thereof
EP3300363B1 (en) * 2015-12-15 2018-08-29 Axis AB A bit rate controller and a method for limiting output bit rate
CN112188216A (zh) * 2019-07-05 2021-01-05 腾讯美国有限责任公司 视频数据的编码方法、装置、计算机设备及存储介质
US11863786B2 (en) * 2021-05-21 2024-01-02 Varjo Technologies Oy Method of transporting a framebuffer

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5764807A (en) * 1995-09-14 1998-06-09 Primacomp, Inc. Data compression using set partitioning in hierarchical trees
US6160846A (en) * 1995-10-25 2000-12-12 Sarnoff Corporation Apparatus and method for optimizing the rate control in a coding system
WO1999017257A2 (en) * 1997-09-29 1999-04-08 Conexant Systems, Inc. System and method for compressing images using multi-threshold wavelet coding
US6560371B1 (en) * 1997-12-31 2003-05-06 Sarnoff Corporation Apparatus and method for employing M-ary pyramids with N-scale tiling
US6208692B1 (en) * 1997-12-31 2001-03-27 Sarnoff Corporation Apparatus and method for performing scalable hierarchical motion estimation
US6148111A (en) * 1998-04-27 2000-11-14 The United States Of America As Represented By The Secretary Of The Navy Parallel digital image compression system for exploiting zerotree redundancies in wavelet coefficients
US6253165B1 (en) * 1998-06-30 2001-06-26 Microsoft Corporation System and method for modeling probability distribution functions of transform coefficients of encoded signal
US6137915A (en) * 1998-08-20 2000-10-24 Sarnoff Corporation Apparatus and method for error concealment for hierarchical subband coding and decoding
US6553147B2 (en) * 1998-10-05 2003-04-22 Sarnoff Corporation Apparatus and method for data partitioning to improving error resilience
US6487319B1 (en) * 1998-11-18 2002-11-26 Sarnoff Corporation Apparatus and method for identifying the location of a coding unit
WO2001006794A1 (en) * 1999-07-20 2001-01-25 Koninklijke Philips Electronics N.V. Encoding method for the compression of a video sequence

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101246115B1 (ko) * 2006-09-02 2013-03-20 세종대학교산학협력단 3차원 웨이블릿 기반 영상 부호화/복호화 방법 및 장치
KR101065520B1 (ko) * 2006-12-07 2011-09-19 콸콤 인코포레이티드 라인-기반 비디오 레이트 제어 및 압축
US8165203B2 (en) 2006-12-07 2012-04-24 Qualcomm Incorporated Line-based video rate control
US8208554B2 (en) 2006-12-07 2012-06-26 Qualcomm Incorporated Line-based video compression

Also Published As

Publication number Publication date
WO2002023475A2 (en) 2002-03-21
CN1266649C (zh) 2006-07-26
US6728316B2 (en) 2004-04-27
EP1320831A2 (en) 2003-06-25
US20020118759A1 (en) 2002-08-29
CN1460231A (zh) 2003-12-03
WO2002023475A3 (en) 2002-12-27
JP2004509531A (ja) 2004-03-25

Similar Documents

Publication Publication Date Title
KR20020064803A (ko) 비디오 코딩 방법
US6898324B2 (en) Color encoding and decoding method
US6553148B2 (en) Joint coding method for images and videos with multiple arbitrarily shaped segments or objects
AU769333B2 (en) Embedded quadtree wavelets in image compression
RU2329615C2 (ru) Способ масштабируемого кодирования и декодирования видеосигнала и устройство для его осуществления
US6084908A (en) Apparatus and method for quadtree based variable block size motion estimation
US20040234141A1 (en) Embedded DCT-based still image coding algorithm
KR20010075232A (ko) 비디오 시퀀스의 압축을 위한 인코딩 방법
US20050163217A1 (en) Method and apparatus for coding and decoding video bitstream
KR20000059799A (ko) 웨이브릿 부호화를 이용한 움직임 보상 부호화 장치 및 방법
Pearlman Trends of tree-based, set partitioning compression techniques in still and moving image systems
EP1585338B1 (en) Decoding method and decoding device
CA2552800A1 (en) Video/image coding method and system enabling region-of-interest
US20050063470A1 (en) Encoding method for the compression of a video sequence
KR101246115B1 (ko) 3차원 웨이블릿 기반 영상 부호화/복호화 방법 및 장치
KR100323701B1 (ko) 영상부호화장치
Campisi et al. Three dimensional wavelet based approach for a scalable video conference system
KR20070028720A (ko) 웨이블릿 패킷 변환 기반의 동영상 인코딩 시스템 및 방법
EP0848557A2 (en) Subband image encoding method
Mueller et al. Embedded Laplacian pyramid still image coding using zerotrees
Nanda et al. Effect of quantization on video compression
MILOVANOVIC et al. DEVELOPMENT OF WAVELET TECHNIQUES IN JPEG2000 IMAGE CODING STANDARD
Ng et al. An adaptive multiresolution modification of the H. 263 video coding algorithm
Furht Hong Man 2, Alen Docef 3 and Faouzi Kossentini 4
Shoba et al. Low Memory Wavelet Image Compression for Multimedia Sensor Networks

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application