KR20030014677A - 비디오 코딩 방법 및 대응하는 인코딩 장치 - Google Patents

비디오 코딩 방법 및 대응하는 인코딩 장치 Download PDF

Info

Publication number
KR20030014677A
KR20030014677A KR1020027016285A KR20027016285A KR20030014677A KR 20030014677 A KR20030014677 A KR 20030014677A KR 1020027016285 A KR1020027016285 A KR 1020027016285A KR 20027016285 A KR20027016285 A KR 20027016285A KR 20030014677 A KR20030014677 A KR 20030014677A
Authority
KR
South Korea
Prior art keywords
frame
encoding
macroblock
output bitstream
map
Prior art date
Application number
KR1020027016285A
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 KR20030014677A publication Critical patent/KR20030014677A/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/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • 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/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/154Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
    • 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/172Methods 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 picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/174Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • 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
    • H04N19/527Global motion vector estimation
    • 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

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)
  • Investigating Or Analysing Biological Materials (AREA)

Abstract

본 발명은 비디오 프레임들의 시퀀스에 적용되는 비디오 코딩 방법에 관한 것으로 고정된 양자화 스탭 크기를 갖는 제 1 인코딩 패스에서 각 프레임을 인코딩하는 단계와, 코딩된 비트스트림을 디코딩하는 단계와, 블러킹 효과들의 맵을 이러한 프레임에 대해 구성하는 단계와, 상기 프레임을 상기 맵에 의존하는 변경들에 기초하여 재인코딩하는 단계와, 가변 양자화 스탭 크기를 갖는 제 2 인코딩 패스에서, 제 1 인코딩 패스에 대하여 비트들의 변경된 수를 갖는 제 2 출력 비트스트림을 생성시키기 위한 것이다. 개선된 구현에서, 어떠한 원치않는 효과들을 피하기 위해 제공된 부가적인 정규화 동작이 재인코딩 단계 전에 수행된다.

Description

비디오 코딩 방법 및 대응하는 인코딩 장치{Video coding method and corresponding encoding device}
예를 들어, 1996년 3월, S.R.Ely에 의한, BBC-RD 리포트의 "MPEG videocoding:a basic tutorial introduction"이라는 문서에서 설명되고, 현재 디지털 텔레비전 분야에 넓게 보급된 MPEG-2 표준은, 인공위성 또는 케이블을 통해 방송자들에 의해 이미 사용되고 있으며, 곧 디지털 지상 방송을 위해 사용될 것으로 예상된다. MPEG-2 컴플리언트(compliant) 비디오 인코더는 MPEG-2 컴플리언트 비트스트림, 즉 시퀀스, GOP(group of pictures), 픽처(또는 프레임), 슬라이스, 매크로블럭 및 블럭의 6 층들의 시텍스를 갖는 비트스트림을 생성시킨다(각 프레임은 매크로블럭들로 분할되고, 그 각각은 네 개의 루미넌스 블럭들 및 두 개의 크로미넌스 블럭들을 포함하며, 각 블럭은 8x8 픽셀들을 포함한다).
이러한 인코더는 세가지 형태들의 프레임들(I, P, 또는 B)사이에서 식별하고, 각 GOP는 I 프레임으로 시작하고, 주어진 수의 P 및 B 프레임들을 포함하는 프레임들의 세트이다. I 프레임의 각각의 매크로블럭에서, 각 8 x 8 블럭은 DCT(discrete cosine transform)가 수행되고, 획득된 전송 계수들은 양자화되며(양자화 스케일 팩터는 각 매크로블럭에 대하여 선택된다), 결과적으로 양자화된 DCT 계수들은 가변 길이 코드(VLC)를 사용하여 스캔되고 인코드된다. P 프레임에서, 결정은 I 프레임(위에 설명된 바와 같이) 또는 P 프레임으로서 각 매크로블럭을 코딩하기 위해 즉, 움직임 벡터에 의해 식별된 단방향성 예측의 도움으로 취해진다. 움직임 벡터는 각 매크로블럭에 대하여, 그것의 이전의 프레임에서의 예측과 매크로블럭 그 자신(현재 프레임에서) 사이의 변환을 가리키며, 단지 그들 사이의 오차가 I 프레임의 각 매크로블럭에 대하여 위에 언급된 바와 같이 코딩된다(또한 연관된 움직임 벡터와 함께 송신된다). B 프레임에서, 결정이 위에서 설명된 두 개의 코딩기술들 중 하나(I 매크로블럭의 코딩 또는 P 매크로블럭의 코딩, 위 또는 다음 프레임들에서 설명된 이전의 프레임에 기초한 단방향성 예측 코딩)와 양방향 예측 코딩 사이에서 또한 취해지고, 그에 따라 에러 코딩이 유사하게 수행되고, 그러나 그 결정은 단지 후방 움직임 보상된 예측과 전방 보상전 예측을 보간하여 얻어진 움직임 보상된 예측 후만 행해진다.
비디오 인코더에 의한 인코딩 후에(프레임의 종류에 따라 구별되는 정도의 압축을 갖는다: 인코드될 때 B 프레임들이 비트들의 최소수로 되고, 그 다음 P 프레임들이며, I 프레임들이다), 얻어진 비트스트림들이 인코더 출력 버퍼에 저장되고, 송신되고 마지막으로 저장 매체에 저장되거나 또는 디코더의 버퍼에 의해 즉시 수신되고 디코드된다. 인코드된 비트스트림에서, I, P, B 프레임들의 각각에 대하여 인코딩 과정으로부터 결과된 비트들의 수는 각 매크로블럭들에 대해 사용된 양자화 스탭 크기를 제어하는 것에 의해 변경될 수 있고, 이 적응적 양자화는 큰 양자화 스탭 크기에 대하여, 보다 작은 양자화 스탭 크기가 사용되는 것보다 비트들이 적게 된다.
본 발명은 매크로 블럭들로 분할되고 그들 자신이 블럭들로 재분할되는 비디오 프레임들의 시퀀스에 적용되는 비디오 코딩 방법에 관한 것으로, 상기 방법은 시퀀스의 각 프레임에 대하여:
(A) 제 1 출력 비트스트림과 이 프레임의 각 매크로블럭에 연관된 통계를 생성시키기 위하여, 고정된 양자화 스탭 크기를 갖는 제 1 인코딩 패스(pass)로 상기 프레임을 인코딩하는 단계와;
(B) 상기 통계에 기초하여, 이 프레임의 각 매크로블럭에 대하여, 제 1 출력 비트스트림에 관한 비트들의 변경된 수를 갖는 제 2 출력 비트스트림을 생성시키기 위하여, 가변 양자화 스탭 크기를 갖는 제 2 인코딩 패스로 상기 프레임을 재인코딩하는 단계를 포함한다.
본 발명은 또한 대응하는 인코딩 장치에 관한 것이다.
도 1은 두 개의 인코딩 패스들을 갖는 종래의 코딩 구성을 도시하는 도면.
도 2는 본 발명에 따른 상기 인코딩 구성의 변경을 도시하는 도면.
도 3은 매크로블럭의 내부 경계들을 도시하는 도면.
도 4는 본 발명에 따른 인코딩 방법의 다른 실시예를 도시하는 도면.
도 5는 도 4의 방법의 구현의 예를 표현한 도면.
이러한 인코더의 출력에서 요구되는 제약을 충족시키기 위해, 출력된 코딩된 비트스트림이 단지 적어도 두 개의 인코딩 패스들 후에만 얻어지는 방법으로 인코딩 방법을 수행하는 것이 제안되었다. 예를 들어, 국제 특허 출원 WO 99/07158(PHF98524)에서, 프레임들의 시퀀스가 상수 양자화 스탭 크기를 갖는, 제1 패스에서 인코드된다. 이렇게 생성된 비트스트림은 요구되는 제약을 충족시킬 필요가 없으나, 이 제 1 패스는 처리된 프레임의 통계를 얻도록 허용한다(예를 들면, 움직임 벡터들, 프레임들의 복잡성들,...등). 분석 단계에 이어서 적어도 양자화 스탭 크기를 변경하고, 따라서 관련된 프레임의 각 매크로블럭에 대한 비트들의 더욱 조화로운 분포를 실행하기 위하여 상기 통계를 처리하는 제 2 패스가 따르게 된다.
각 프레임을 인코드하는데 사용된 비트들의 수를 다르게 할당시키는 것에 의해(디코더 측에서는 버퍼 문제들을 피하기 위해 최대 채널 레이트가 넘지 않는 것을 보증하는 동안), 가변 비트레이트가 얻어지며, MPEG-2 표준이 이전에 언급된 활용들에서, 프로그램이 방송될 수 있는 비트레이트들에서의 큰 유연성을 허용한다. 그러나, 비트레이트가 낮아질수록, 더 많은 압축 아티팩트들이 발생할 수 있다. 공간적(블러킹(blocking), 링잉(ringing), 코너 아웃라이어들(corner outliers)) 또는 시간적(모스키토 잡음(mosquito noise))일 수 있는 이러한 아티팩트들은, 시청자들에 대해 매우 귀찮은 것이다.
따라서, 본 발명의 제 1 목적은 그에 따라 상기 아티펙트들 때문에 생기는 지각적인 장애들이 감소되는 인코딩 방법을 제안하는 것이다.
이러한 목적을 위해, 본 발명은 본 명세서의 도입부에 정의된 바와 같은 비디오 코딩 방법에 관한 것이고, 또한, 이것은 제 1 및 제 2 인코딩 패스들 사이에:
(a) 디코딩된 출력 비트스트림을 생성시키기 위하여, 상기 제 1 출력 비트스트림을 디코딩하는 단계와;
(b) 상기 디코딩된 비트스트림에서, 모든 매크로블럭들의 내부 블럭 경계들에서 발생하는 블러킹 효과들의 맵을 형성하기 위해 블러킹 아티펙트들을 검출하는 단계와;
(c) 맵에 따라 상기 제 2 인코딩 패스가 수행되는 것의 기초가 되는 통계를 변경하는 단계를 더 포함하는 것을 또한 특징으로 한다.
상기 코딩 방법의 유익한 구현에서, 상기 아티펙트 검출 단계는:
-상기 경계에서 블러킹 효과가 발견되지 않을 때 제 1 값을 각 매크로블럭의 4개의 내부 블럭 경계들의 각각에 연관시키고 또는 반대의 경우에 제 2 값을 연관시키는 단계와;
-상기 4개의 값들의 부가로서 글로벌 값(G)을 각 매크로블럭에 대하여 정의하는 단계와;
-처리된 프레임의 매크로블럭들에 연관된 모든 글로벌 값들의 맵을 모든 프레임에 대하여 구성하는 단계와;
-각 매크로 블럭에 대하여, 대응하는 글로벌 값에 의존하는 스케일링 계수를 따라 통계를 변경하는 단계의 하위 단계들을 포함한다.
특히, 상기 제 1 인코딩 패스는 처리된 프레임의 각 최초의 매크로블럭에 연관된 복잡성과 제 1 출력 비트스트림을 생성시키기 위해 제공되고, 상기 변경시키는 하위 단계는 이후 관련된 매크로블럭에 대응하는 글로벌 값에 선형적으로 의존하는 스케일링 계수를 상기 매크로블럭 복잡성에 곱하기 위해 제공된다.
상기 코딩 방법의 구현을 따라, 재인코딩 단계 전에, 다음 부가적인 단계들:
(a)다음 표현:
F(norm)=X(in)/X(out)
에 기초한 정규화 팩터를 계산하는 단계로서, X(in) 및 X(out)은 각각 상기 맵에 따른 변경들의 전과 후의 통계의 값들의 합들인, 계산 단계와;
(b) 상기 변경들 후의 통계의 각 값에 상기 정규화 팩터를 곱하는 단계를 또한 포함할 수 있다.
본 발명의 다른 목적은 본 발명에 따른 코딩 방법의 상기 언급된 구현들에 대응하는 인코딩 장치들을 제안하는 것이다.
본 발명은 이제 첨부 도면들을 참조하여, 더욱 자세한 방법으로 설명될 것이다.
앞서 인용된 명세서 WO 99/07158에서 설명된 바와 같은 인코딩 구성이 도 1에 도시된 바와 같이 개략적으로 요약될 수 있다. 양자화 스탭 크기(Q)가 상수인 제 1 패스(FP)에서, 각각의 성공적인 프레임(FRA)이 인코더에서 처리된다. 제 1 패스의 끝에서, 어떠한 정보(도 1에서 STAT1이라 지칭됨): 처리된 매크로블럭들의 복잡성들, 상기 매크로블럭들의 각각에 연관된 움직임 벡터들, 등을 사용할 수 있다. 이러한 정보들에 기초하여, OB에서 상기 매크로블럭들의 각각에 대응하는 비트 위치를 변경하기 위하여, 양자화 스탭 크기가 프레임의 각 매크로블럭에 대해 변경되는 출력 비트스트림(OB)으로 이끄는 제 1 패스(SP1)가 수행된다.
본 발명에 따라, 아티펙트들의 수를 감소시키기 위해, 상기 인코딩 구성이 도 2에 도시된 바와 같이 변경될 수 있다. 제 1 패스(FP)의 끝에서 사용할 수 있는 출력 비트스트림(OB1)이 (디코더(DEC)에서) 디코드되고 디코드된 비트스트림은 이하에서 설명되는, 블러킹 효과 검출기(DET)를 향하여 보내진다. 검출기는 도 2에 STAT2로 지시된, 통계(현재 경우의 복잡도들)를 변경하기 위해 저장되고 사용되는 블러킹 아티팩트 맵(BAM)을 산출한다. 그 출력에서 출력 비트스트림(OB2)이 사용될 수 있는 제 2 패스(SP2)가 이후 수행되지만, 이제 각 매크로블럭(도 1의 제 2 패스(SP1)에 관하여)에 대해 다른 양자화 스탭 크기를 가지고 수행되고, 그 결과 최초로 관찰된 아티팩트들이 이제 감소된다.
검출기(DET)에 의해 구현된 블러킹 효과 검출 동작이 다음과 같이 수행된다. 이전에 말한 것과 같이, 매크로블럭은 4개의 블럭들로 구성된다. 매크로블럭들 사이의 블러킹 효과들을 배제하고, 블러킹 효과들은 4개의 내부 블럭 경계들의 임의의 것에서, 임의의 매크로블럭 내에서 발생되도록 가정된다(도 3의 A,B,C,D를 참조). 상기 경계들의 각각에 대하여, 값 V(A), V(B), V(C), V(D)가 연관된다: 블러킹 효과가 발견되면 "0"으로, 반대의 경우에는 "1"로 연관된다. 각 매크로블럭에 대하여, 글로벌 값(G)은 이후 G=V(A)+V(B)+V(C)+V(D)로 정의되고, 각 매크로블럭에 대하여 값(G)을 저장하는 블러킹 아티팩트 맵이 구성된다. 각 매크로블럭에 대하여, 제 1 패스 처리에 의해 얻어진, 제 1 패스 복잡성(X1)이 사용가능하다. 이미지 또는 이미지 일부의 복잡성은 예를 들면, 특허 US 5680483(PHF94510)에 정의되고, 다양한 문서들, 예를 들면 특허 US 5929914(PHF95584)는, 복잡성을 추정하기 위한 해법을 설명하고 이러한 복잡성과 인코더의 비트레이트 제어 사이의 연결을 가리킨다. 이후 이러한 복잡성(X1)은 글로벌 값(G)에 의존하는 값을 곱하고, 이것은 변경된 복잡성:X2=X1 x C(G)을 유도하며, 여기서 C는 G에 의존하는 계수이고, 예를 들면 다음 종속 테이블을 따른다:
G 0 1 2 3 4
C(G) 1 1,05 1,1 1,15 2
그러나, 이러한 방법이 매우 블러키(blocky)한 이미지들로 적용될 때, 모든 이미지 복잡성은 동일한 팩터로 곱해진다. 이미지 레벨 조절 이득은 이후 손실되고, 이미지의 복잡성 웨이트는 GOP들에서 보다 높고 이는 GOP 레벨 조절을 교란시킨다.
도 2의 인코딩 구성이 이후 도 4(점선으로 둘러싼 도 2의 부분의 변경을 도시하는)에 설명된 바와 같이, 출력 복잡성의 한 종류의 정규화를 수행하는 부가적인 단계를 인코더에 제공함으로써 구현될 수 있다. 이러한 부가적인 단계는 두 개의 다음 동작들을 포함한다. 먼저, 정규화 팩터 F(norm)가 다음 표현에 기초하여계산된다: F(norm)=X(in)/X(out), 여기서 X(in)은 STAT2에 의해 수신된 값들 Xin의, 관련된 프레임의 모든 매크로블럭에 대한 합이고, X(out)은 또한 STAT2의 출력에서 사용할 수 있는 값들 Xout의, 모든 매크로블럭들에 대한 유사한 합이다. 둘째로, STAT2의 출력 값 Xout이 STAT2와 SP2 사이에 제공된 곱셈기(MUL)에 의해 F(norm)로 곱해진다.
도 4에 도시된, 본 발명의 다른 실시예는 다음 변경을 포함할 수 있다: 인코딩될 입력 프레임이 I 또는 P 타입일 때, 정규화 팩터는 1로 설정되고, 이는 GOP 조절에서 이러한 프레임들을 능가하는 것을 허용한다. 이러한 구현에 대하여, DES로 참조되고 도 4에 점선으로 도시된, 부가적인 결정 단계가 제공된다.
따라서, 묘사된 코딩 방법은 각 블럭이 제어기(55)의 관리 아래에서 실행되는 특정 기능에 대응하는, 도 5의 비디오 인코딩 장치에서 구현될 수 있다. 도시된 인코딩 장치는 비디오 프레임들의 시퀀스를 수신하는 입력 버퍼(51), 감산기(549), DCT(discrete cosine transform) 회로(521), 양자화 회로(522), 가변 길이 코딩 회로(523), 출력 버퍼(524), 및 회로(522)에서 양자화 스탭 크기를 변경하는 것을 허용하는 비트레이트 범위 회로(525)를 직렬로 포함한다. 회로들(521 내지 525)은, 역 양자화 회로(531), 역 DCT 회로(532), 및 예측 서브시스템을 포함하는 예측 브렌치(53)와 연관된 코딩 브렌치(52)의 주 요소들을 구성한다. 이러한 예측 서브시스템은 스스로 가산기(541), 버퍼(542), 및 움직임 추정 회로(543)의 출력을 제 2 입력 상에서 수신하는 움직임 보상 회로(544)를 포함한다(상기 추정은 버퍼(51)의출력에서 사용할 수 있는 입력 신호들의 분석에 기초한다). 움직임 보상 회로(544)의 출력 신호들이 가산기(541)의 제 2 입력으로 되돌려 보내지고 감산기(549)로 보내진다(또한 코딩 브렌치를 향하는 회로(544)의 출력 신호들과 상기 출력 신호들 사이의 차이를 보내기 위해, 버퍼(51)의 출력 신호들을 수신한다). 제 1 패스(FP) 후에, 도시된 인코딩 장치의 출력이 블로킹 효과 디코딩 단계(DEC)로 향하여 보내지고, 이 출력은 블로킹 효과 검출기(DET)로 향하여 보내진다. 검출기(DET)에 의해 산출된 블러킹 아티팩트 맵(BAT)은 이후 제 2 패스(SP2)가 수행되기 전에 통계를 변경하기 위하여 사용된다. 부가적인 정규화 단계가 이후 F(norm)을 계산하는 회로(F)와 곱셈기(MUL)에 의해 구현된다.
본 발명의 바람직한 실시예들의 상술한 설명은 묘사와 설명의 목적들을 위해 제시되었다. 이것은 개시된 정확한 형태로 본 발명을 포괄하거나 한정하도록 의도되지 않으며, 본 발명의 범위 내에 포함되도록 의도되고 당업자에게 명백한 분명한 변경들 및 변화들이 위의 설명들의 관점에서 가능하다. 예를 들어 본 명세서에 설명된 장치들이, 하드웨어 또는 소프트웨어의 단일 아이템이 몇몇의 기능들을 수행할 수 있다는 것 또는 하드웨어나 소프트웨어 또는 둘다의 아이템들의 어셈블리가 단일 기능을 수행한다는 것을 제외함이 없이, 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어의 조합에서 구현될 수 있다는 것이 이해될 것이다. 설명된 방법들 및 장치들은 컴퓨터 시스템 또는 본 명세서에 설명된 방법들을 수행하기 위해 적응된 다른 장치의 임의의 형태에 의해 구현될 수 있다. 하드웨어와 소프트웨어의 전형적인 조합은, 로드되고 수행될 때, 본 명세서에 설명된 방법들을 수행하도록 컴퓨터 시스템을 제어하는 컴퓨터 프로그램을 갖는 범용 컴퓨터일 수 있다.
대안적으로, 본 발명의 기능적인 테스크들의 하나 또는 그 이상을 수행하기 위한 특별화된 하드웨어를 포함하는 특정 사용 컴퓨터가 사용될 수 있다. 본 발명은 또한 본 명세서에 설명된 방법들 및 기능들의 구현이 가능한 특성들을 모두 포함하는 컴퓨터 프로그램 제품에 내장될 수 있으며, 이는 컴퓨터 시스템에서 로드될 때 이러한 방법들과 기능들을 수행할 수 있다. 컴퓨터 프로그램, 소프트웨어 프로그램, 프로그램, 프로그램 제품, 또는 소프트웨어는 본 문서에서: 정보 처리 용량을 갖는 시스템이 (a) 다른 언어, 코드 또는 표기로의 변환; 및/또는 (b)다른 재료의 형태에서의 재생 중의 하나 또는 둘 다에 직접적으로 또는 후에 특정 기능을 수행하게 하도록 의도된 명령들의 세트의 임의의 언어, 코드 또는 표기의 임의의 표현을 의미한다.

Claims (7)

  1. 매크로 블럭들로 분할되고 그들 자신이 블럭들로 재분할되는 비디오 프레임들의 시퀀스에 적용되는 비디오 코딩 방법에 있어서, 상기 방법은 상기 시퀀스의 각 프레임에 대하여:
    (A) 제 1 출력 비트스트림과 이 프레임의 각 매크로블럭에 연관된 통계를 생성시키기 위하여, 고정된 양자화 스탭 크기를 갖는 제 1 인코딩 패스로 상기 프레임을 인코딩하는 단계와;
    (B) 상기 통계에 기초하여, 이 프레임의 각 매크로블럭에 대하여, 상기 제 1 출력 비트스트림에 관한 비트들의 변경된 수를 갖는 제 2 출력 비트스트림을 생성시키기 위하여, 가변 양자화 스탭 크기를 갖는 제 2 인코딩 패스로 상기 프레임을 재인코딩하는 단계를 포함하고;
    상기 방법은 또한 상기 제 1 및 제 2 인코딩 패스들 사이에:
    (a) 디코딩된 출력 비트스트림을 생성시키기 위하여, 상기 제 1 출력 비트스트림을 디코딩하는 단계와;
    (b) 상기 디코딩된 비트스트림에서, 상기 모든 매크로블럭들의 상기 내부 블럭 경계들에서 발생하는 블러킹 효과들의 맵을 형성하기 위해 블러킹 아티펙트들을 검출하는 단계와;
    (c) 상기 맵에 따라 상기 제 2 인코딩 패스가 수행되는 것의 기초가 되는 통계를 변경하는 단계를 더 포함하는 것을 또한 특징으로 하는, 비디오 코딩 방법.
  2. 제 1 항에 있어서, 상기 아티펙트 검출 단계는:
    -상기 경계에서 블러킹 효과가 발견되지 않을 때 제 1 값을 각 매크로블럭의 4개의 내부 블럭 경계들의 각각에 연관시키고 또는 반대의 경우에 제 2 값을 연관시키는 단계와;
    -상기 4개의 값들이 부가로서 글로벌 값(G)을 각 매크로블럭에 대하여 정의하는 단계와;
    -상기 처리된 프레임의 상기 매크로블럭들에 연관된 상기 모든 글로벌 값들의 상기 맵을 상기 모든 프레임에 대하여 구성하는 단계와;
    -각 매크로 블럭에 대하여, 상기 대응하는 글로벌 값에 의존하는 스케일링 계수를 따라 상기 통계를 변경하는 단계의 하위 단계들을 포함하는, 비디오 코딩 방법.
  3. 제 2 항에 있어서, 상기 제 1 인코딩 패스는 상기 처리된 프레임의 각 최초의 매크로블럭에 연관된 복잡성과 제 1 출력 비트스트림을 생성시키기 위해 제공되고, 상기 변경시키는 하위 단계는 이후 상기 관련된 매크로블럭에 대응하는 상기 글로벌 값에 선형적으로 의존하는 스케일링 계수를 상기 매크로블럭 복잡성에 곱하기 위해 제공되는, 비디오 코딩 방법.
  4. 그들이 블럭들로 재분할된 매크로블럭들로 분할된 비디오 프레임들의 시퀀스를 인코딩하기 위한 장치에 있어서, 상기 장치는:
    (a) 적어도 양자화 회로와 가변 길이 회로를 직렬로 포함하는, 적어도 코딩 브랜치 수단과;
    (b) 상기 시퀀스의 각 프레임에 대해 다음 단계들의 실행을 제어하기 위해 제공된 제어 회로를 포함하고, 상기 다음 단계들은:
    (A) 제 1 출력 비트스트림과 이 프레임의 각 매크로블럭에 연관된 통계를 생성시키기 위하여, 고정된 양자기 스탭 크기를 갖는 제 1 인코딩 패스로 상기 프레임을 인코딩하는 단계와;
    (B) 상기 통계에 기초하여, 이 프레임의 각 매크로블럭에 대하여, 상기 제 1 출력 비트스트림에 관한 비트들의 변경된 수를 갖는 제 2 출력 비트스트림을 생성시키기 위하여, 가변 양자화 스탭 크기를 갖는 제 2 인코딩 패스로 상기 프레임을 재인코딩하는 단계와;
    (C) 상기 제 1 및 제 2 인코딩 패스들 사이에, 부가적인 단계를 포함하고, 상기 부가적인 단계는 하위 단계들:
    (a) 디코딩된 출력 비트스트림을 생성시키기 위하여, 상기 제 1 출력 비트스트림을 디코딩하는 단계와;
    (b) 상기 디코딩된 비트스트림에서, 상기 모든 매크로블럭들의 상기 내부 블럭 경계들에서 발생하는 블러킹 효과들의 맵을 형성하기 위해 블러킹 아티펙트들을 검출하는 단계와;
    (c) 상기 맵에 따라 상기 제 2 인코딩 패스가 수행되는 것의 기초가 되는 통계를 변경하는 단계인, 인코딩 장치.
  5. 제 1 항에 있어서, 상기 재인코딩 단계 전에, 다음 부가적인 단계들:
    (a)다음 표현:
    F(norm)=X(in)/X(out)
    에 기초한 정규화 팩터를 계산하는 단계로서, X(in) 및 X(out)은 각각 상기 맵에 따른 상기 변경들의 전과 후의 통계의 상기 값들의 합들인, 상기 계산 단계와;
    (b) 상기 변경들 후의 통계의 각 값에 상기 정규화 팩터를 곱하는 단계를 또한 포함하는 것을 특징으로 하는, 비디오 코딩 방법.
  6. 제 5 항에 있어서, 상기 정규화 팩터는 상기 인코드될 입력 프레임이 I 또는 P 형일 때 1로 세팅되는, 비디오 코딩 방법.
  7. 그들이 블럭들로 재분할된 매크로블럭들로 분할된 비디오 프레임들의 시퀀스를 인코딩하기 위한 장치에 있어서, 상기 장치는:
    (a) 적어도 양자화 회로와 가변 길이 회로를 직렬로 포함하는, 적어도 코딩 브랜치 수단과;
    (b) 상기 시퀀스의 각 프레임에 대해 다음 단계들의 실행을 제어하기 위해 제공된 제어 회로를 포함하고, 상기 다음 단계들은:
    (A) 제 1 출력 비트스트림과 이 프레임의 각 매크로블럭에 연관된 통계를 생성시키기 위하여, 고정된 양자화 스탭 크기를 갖는 제 1 인코딩 패스로 상기 프레임을 인코딩하는 단계와;
    (B) 디코딩된 출력 비트스트림을 생성시키기 위하여, 상기 제 1 출력 비트스트림을 디코딩하는 단계와;
    (C) 상기 디코딩된 비트스트림에서, 상기 모든 매크로블럭들의 상기 내부 블럭 경계들에서 발생하는 블러킹 효과들의 맵을 형성하기 위해 블러킹 아티펙트들을 검출하는 단계와;
    (D) 상기 맵에 따라 상기 통계를 변경시키는 단계와;
    (E) 상기 변경된 통계에 기초하여, 이 프레임의 각 매크로블럭에 대하여, 상기 제 1 출력 비트스트림에 관한 비트들의 변경된 수를 갖는 제 2 출력 비트스트림을 생성시키기 위하여, 가변 양자화 스탭 크기를 갖는 제 2 인코딩 패스로 상기 프레임을 재인코딩하는 단계이고;
    상기 장치는 상기 재인코딩 단계 전에, 제어 회로가 다음의 부가적인 단계들의 구현을 상기 시퀀스의 각 프레임에 대해 제어하기 위하여 제공되고, 상기 다음의 부가적인 단계들은:
    (a)다음 표현:
    F(norm)=X(in)/X(out)
    에 기초한 정규화 팩터를 계산하는 단계로서, X(in) 및 X(out)은 각각 상기 맵에 따른 상기 변경들의 전과 후의 통계의 상기 값들의 합들인, 상기 계산 단계와;
    (b) 상기 변경들 후의 통계의 각 값에 상기 정규화 팩터를 곱하는 단계인 것을 또한 특징으로 하는, 비디오 코딩 방법.
KR1020027016285A 2001-03-29 2002-03-26 비디오 코딩 방법 및 대응하는 인코딩 장치 KR20030014677A (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
EP01400816.3 2001-03-29
EP01400816 2001-03-29
EP01403084.5 2001-11-30
EP01403084 2001-11-30

Publications (1)

Publication Number Publication Date
KR20030014677A true KR20030014677A (ko) 2003-02-19

Family

ID=26077230

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020027016285A KR20030014677A (ko) 2001-03-29 2002-03-26 비디오 코딩 방법 및 대응하는 인코딩 장치

Country Status (8)

Country Link
US (1) US20030156642A1 (ko)
EP (1) EP1374595B1 (ko)
JP (1) JP2004523985A (ko)
KR (1) KR20030014677A (ko)
CN (1) CN1292597C (ko)
AT (1) ATE340485T1 (ko)
DE (1) DE60214835T2 (ko)
WO (1) WO2002080565A2 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101373890B1 (ko) * 2006-12-28 2014-03-12 톰슨 라이센싱 자동적인 시각적 아티팩트 분석 및 아티팩트 감소를 위한 방법 및 장치
KR101367104B1 (ko) * 2007-01-18 2014-03-12 삼성전자주식회사 이미지 처리 어플리케이션에서 적응적인 양자화층 감소방법 및 시스템
KR101415429B1 (ko) * 2014-03-20 2014-07-09 인하대학교 산학협력단 블록 아티팩트 기반의 동영상 화질 최적화를 위한 비트레이트 결정 방법

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060146734A1 (en) * 2005-01-04 2006-07-06 Nokia Corporation Method and system for low-delay video mixing
EP2002657B1 (en) 2006-04-03 2018-08-08 British Telecommunications public limited company Video coding
US8437397B2 (en) 2007-01-04 2013-05-07 Qualcomm Incorporated Block information adjustment techniques to reduce artifacts in interpolated video frames
WO2009067155A2 (en) * 2007-11-16 2009-05-28 Thomson Licensing System and method for encoding video
CN102037730B (zh) * 2008-05-22 2013-06-12 爱立信电话股份有限公司 内容自适应视频编码器和编码方法
CN101494461B (zh) * 2009-01-15 2011-07-20 中国科学院研究生院 联合信源信道可变长符号级可逆编解码方法
JP2012022021A (ja) * 2010-07-12 2012-02-02 Sony Corp 符号化装置および符号化方法、復号装置および復号方法、並びにプログラム
FR2985879A1 (fr) * 2012-01-17 2013-07-19 France Brevets Procede de quantification dynamique pour le codage de flux de donnees
CN103517080A (zh) * 2012-06-21 2014-01-15 北京数码视讯科技股份有限公司 实时视频流编码器和实时视频流编码方法

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BE1007808A3 (nl) * 1993-11-30 1995-10-24 Philips Electronics Nv Inrichting voor het coderen van een videosignaal.
JPH07177464A (ja) * 1993-12-16 1995-07-14 Pioneer Video Corp リアルタイム画像圧縮処理装置
EP0670663A1 (fr) * 1994-03-02 1995-09-06 Laboratoires D'electronique Philips S.A.S. Procédé et dispositif de codage de signaux numériques représentatifs d'une séquence d'images
KR0139154B1 (ko) * 1994-07-08 1998-06-15 김광호 신경망을 이용한 부호화방법 및 그 장치
DE69615533T2 (de) * 1995-11-15 2002-05-23 Koninkl Philips Electronics Nv Verfahren und vorrichtung zur steuerung der globalen bitrate einer vielzahl von kodierern
KR100667607B1 (ko) * 1997-07-29 2007-01-15 코닌클리케 필립스 일렉트로닉스 엔.브이. 가변 비트레이트 비디오 코딩 방법 및 대응하는 비디오 코더

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101373890B1 (ko) * 2006-12-28 2014-03-12 톰슨 라이센싱 자동적인 시각적 아티팩트 분석 및 아티팩트 감소를 위한 방법 및 장치
KR101367104B1 (ko) * 2007-01-18 2014-03-12 삼성전자주식회사 이미지 처리 어플리케이션에서 적응적인 양자화층 감소방법 및 시스템
KR101415429B1 (ko) * 2014-03-20 2014-07-09 인하대학교 산학협력단 블록 아티팩트 기반의 동영상 화질 최적화를 위한 비트레이트 결정 방법

Also Published As

Publication number Publication date
EP1374595A2 (en) 2004-01-02
WO2002080565A3 (en) 2002-12-12
US20030156642A1 (en) 2003-08-21
EP1374595B1 (en) 2006-09-20
ATE340485T1 (de) 2006-10-15
CN1292597C (zh) 2006-12-27
CN1460384A (zh) 2003-12-03
WO2002080565A2 (en) 2002-10-10
JP2004523985A (ja) 2004-08-05
DE60214835T2 (de) 2007-04-26
DE60214835D1 (de) 2006-11-02

Similar Documents

Publication Publication Date Title
US7372903B1 (en) Apparatus and method for object based rate control in a coding system
US7653129B2 (en) Method and apparatus for providing intra coding frame bit budget
EP0912063B1 (en) A method for computational graceful degradation in an audiovisual compression system
US6658157B1 (en) Method and apparatus for converting image information
KR100559924B1 (ko) 코딩 시스템의 매크로 블록 기반 비율을 제어하기 위한장치 및 방법
EP1445958A1 (en) Quantization method and system, for instance for video MPEG applications, and computer program product therefor
US20050002458A1 (en) Spatial scalable compression
US5974185A (en) Methods and apparatus for encoding video data using motion vectors for decoding by regular or downconverting decoders
KR20000071026A (ko) 코딩 시스템내에서 속도 제어를 최적화하기 위한 장치 및 방법
US20050036549A1 (en) Method and apparatus for selection of scanning mode in dual pass encoding
US7373004B2 (en) Apparatus for constant quality rate control in video compression and target bit allocator thereof
EP1374595B1 (en) Video coding method and device
KR100364748B1 (ko) 영상 변환 부호화 장치
US7236529B2 (en) Methods and systems for video transcoding in DCT domain with low complexity
US7254176B2 (en) Apparatus for variable bit rate control in video compression and target bit allocator thereof
KR100394014B1 (ko) 영상 변환 부호화 장치
US20060146932A1 (en) Method and apparatus for providing motion estimation with weight prediction
JP2005303555A (ja) 動画像符号化装置および動画像符号化方法
JP2820636B2 (ja) 動画像圧縮装置
US20060181650A1 (en) Encoding method and device
JP4359273B2 (ja) 符号化モード選択方法
JPH07131789A (ja) 画像符号化方式
JP4353928B2 (ja) データ圧縮方法、記録方法、及び伝送方法
KR20010060591A (ko) 동영상 부호화기의 비트율 제어장치
JP4264790B2 (ja) 統計多重制御装置、画像符号化装置、統計多重システム、統計多重制御方法および符号化方法

Legal Events

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