KR20030030871A - Mpeg 표준에 따라 코딩된 비디오 데이터를 디코딩하는프로세스 및 디바이스 - Google Patents

Mpeg 표준에 따라 코딩된 비디오 데이터를 디코딩하는프로세스 및 디바이스 Download PDF

Info

Publication number
KR20030030871A
KR20030030871A KR1020020060144A KR20020060144A KR20030030871A KR 20030030871 A KR20030030871 A KR 20030030871A KR 1020020060144 A KR1020020060144 A KR 1020020060144A KR 20020060144 A KR20020060144 A KR 20020060144A KR 20030030871 A KR20030030871 A KR 20030030871A
Authority
KR
South Korea
Prior art keywords
coefficients
block
inverse
coefficient
decoding
Prior art date
Application number
KR1020020060144A
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 KR20030030871A publication Critical patent/KR20030030871A/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • 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/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
    • 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
    • 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/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/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • 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)

Abstract

본 프로세스는 블록별이 아닌 계수별로 역순서로 연속적인 코딩 동작의 역 동작(26, 27, 28)을 수행하는 것을 특징으로 한다. 본 출원은 비디오 데이터의 압축에 관련된다.

Description

MPEG 표준에 따라 코딩된 비디오 데이터를 디코딩하는 프로세스 및 디바이스{PROCESS AND DEVICE FOR DECODING VIDEO DATA CODED ACCORDING TO THE MPEG STANDARD}
본 발명은 MPEG 표준을 사용하는 디코딩 프로세스 및 디바이스에 관한 것이다.
특히 MPEG 4 타입을 코딩하는 상황에서 비디오를 처리하는데 필요한 자원은 많은 양의 시간을 소비하는 프로세싱을 발생시키고, 만약 이 디코딩이 전반적으로 올바른 프로세싱을 가능하게 하기에 충분한 속도로 수행되지 않는 경우에는, 실시간 문제가 일어날 수도 있다.
프로세싱 알고리즘의 프로그래밍을 위해, 어셈블러 언어가 아닌 고레벨의 목적언어(예를 들어, C++)의 사용은 이 프로세싱 시간을 최적화하지 못한다.
더구나, 많은 양의 연산 시간을 소비하는 새로운 비디오 툴(tool)의 추가, 훨씬 더 복잡한 MPEG 4 디코딩 모드의 사용은, 만약 MPEG 4 디코딩을 위한 회로, 예를 들어 ASIC 타입의 주문형 회로의 사이즈와 코스트를 제한하기 위하여, 강력한 프로세서 없이 운용하고자 원하는 경우, 처리 시간의 최적화를 필요로 한다.
본 발명의 목적은 전술한 단점을 경감시키는 것이다.
본 발명의 대상은 계수의 블록을 연속적으로 코딩하는 동작에 기초하여 MPEG 표준에 따라 코딩된 디지털 비디오 데이터를 디코딩하는 프로세스로서, 본 디코딩 프로세스는 블록별(block by block)이 아닌 계수별(coefficient by coefficient)로역순서로 상기 연속적인 코딩 동작의 역 동작을 수행하는 것을 특징으로 한다.
특정 구현예에 따라, 코딩 동작은 계수의 양자화, DC/AC 계수의 예측, 또는 지그재그 주사로 이루어진다.
특정 구현예에 따라, 계수에 대해 역 순서로 수행되는 역 동작은 역 주사(26), 예측된 DC/AC 계수에 기초하여 DC/AC 계수의 적절한 구성(27), 이 계수의 역 양자화(28)이다.
특정 구현예에 따라, 역 주사(26)는, 코더(coder)에서 주사 순위(n)에 기초하여 블록 내의 계수의 실제 위치(s)를 제공하는, 역 지그재그 주사 표(inverse zig-zag scan table), 역 교대 수평 주사 표(inverse alternating horizontal scan table), 또는 역 교대 수직 주사 표(inverse alternating vertical scan table)에 기초하여 연산된다.
또 본 발명은 계수의 블록을 연속적으로 코딩하는 동작에 기초하여 MPEG 표준에 따라 코딩된 비디오 데이터를 디코딩하기 위한 비디오 디코딩 회로에 관한 것으로, 본 비디오 디코딩 회로는 블록별이 아닌 계수별로 역 순서로 상기 연속적인 코딩 동작의 역 동작(26, 27, 28)을 수행하는 디코딩 알고리즘을 구현하기 위한 프로세싱 회로를 포함하는 것을 특징으로 한다.
본 발명은 또한 그러한 비디오 디코딩 회로를 포함하는 디지털 장치에 관한 것이다.
본 발명에 의해, 메모리 억세스는 줄어들고, 프로세싱 시간은 최적화되며, 디코딩 회로의 코스트와 사이즈는 감소한다. 이미지의 품질은 유지되는데, 즉 과도하게 긴 프로세싱 시간을 보상하기 위해 저하되지 않는다.
본 발명의 다른 특징과 잇점은 비제한적인 예를 통해 주어진 이하 상세한 설명과 첨부하는 도면을 참조하여 보다 명백해질 것이다.
도 1은 종래 비디오 디코딩을 도시하는 도면.
도 2는 비디오 디코딩 회로를 도시하는 도면.
도 3은 본 발명에 따른 디코딩 알고리즘을 도시하는 도면.
도 4는 계수의 디코딩의 일례를 도시하는 도면.
도 5a, 도 5b, 및 도 5c는 역주사 어레이를 도시하는 도면.
<도면 주요 부분에 대한 부호의 설명>
5 : 역 동작 회로 7 : 역 양자화 회로
10: 가변 길이 디코딩 회로 11 : 역 주사 회로
12 : 역 예측 회로 13 : 역 양자화 회로
14 : DCT-1회로 15 : 움직임 보상 회로
16 : VOP 메모리 20, 22 : 메모리
25 : 추출 회로 26 : 역 주사 회로
27 : 역 DC/AC 회로 28 : 역 양자화 회로
29, 30 : 메모리 31 : 역 DCT 회로
도 1은 종래의 비디오 디코딩을 개략적으로 도시하는 도면이다.
코딩된 데이터의 이진 트레인(binary train)의 판독으로부터 나오는, 비디오 코딩에 관한 정보는 첫 번째 프로세싱(1)을 받는데, 이 첫 번째 프로세싱은 가변 길이 디코딩(variable-length decoding)이다. 프로세싱된 데이터는 메모리(2)에 기록된다. 이들 데이터는 중간 데이터 어레이를 나타낼 수 있는 방식으로 저장된다. 그 다음으로, 저장된 데이터는 역 주사를 수행하는 두 번째 프로세싱 회로(3)에 의해 판독된다. 획득된 데이터는 다시 메모리(4)에 저장되며, 이후 역 동작 회로(5)에 의해 판독되고, 메모리(6)에 의해 저장되며, 역 양자화 회로(7)에 의해 프로세싱되며, 메모리(8)에 다시 저장되고, 이후 역 변환 회로(9)에 의해 판독된다.
이들 동작은 표준으로 기술된 비디오 객체 플레인(plane) vop 또는 이미지의 코딩 블록마다 순차적으로 수행된다.
본 발명은 메모리에 그리고 이들 중간 데이터 어레이에 대한 이들 다수의 억세스을 피할 수 있게 해주는데, 즉 이들 매우 시간을 소비하는 기록/판독을 피할 수 있게 해준다. 더구나, 이미지 블록 레벨에서 하는 프로세싱이 아닌 각 계수의 레벨에서 하는 프로세싱은, 일반적으로 약하게 텍스쳐된(textured) 또는 균일한 영역에 해당하는 블록 내에 다수 있는 제로(0) 계수를 검출하게 해준다. 종래의 구조에서는, 모든 계수가 고려되어지고, 이 제로(0)는 어레이에 저장된다. 본 발명에 따른 프로세스에서, 제로 계수는 처리되지 않고 중간 연산 동안 저장되지도 않는다.
도 2는 MPEG 타입 디코더의 알려진 방식의 회로를 도시한다.
이하의 여러 단계에서 블록의 계수를 정의하는데 다음 표기가 사용된다.
- n은 코더에 의해 선택된 주사에 해당하는 계수의 순위(rank)이며, (u,v) 또는 s는 블록 내의 계수의 실제 공간 위치이며, u 및 v는 블록 내의 행 및 열의 번호이며, s는 블록의 좌상(左上)에서의 0으로부터 우하(右下)의 63으로 나아가는 오름차순에 기초하여 종래 방식으로 정의된 공간 위치이며, 그 증분(incrementation)은 8×8 계수의 이 블록에 대해, 좌에서 우로 그리고 행별(row by row)로 이루어진다.
- QFS(n)은 VLC 디코딩 후에 순위(n)의 양자화 계수에 해당한다.
- PQF(u,v) 또는 PQF(s)는 역 주사 후에, 블록 내의 실제 위치(u,v) 또는 s에 있는 양자화 계수에 해당된다.
-QF(u, v) 또는 QF(s)는 경우에 따라서 역 예측 후의 계수, 즉 양자화된 재구성된 계수에 해당한다.
- F(u,v) 또는 F(s)는 탈양자화된(dequantized) QF 계수에 해당한다.
MPEG 4 표준에 따른 이미지의 코딩으로 야기되는 이진 트레인은 회로(10)의 입력에서 수신된다. 이 이진 트레인은 가변 길이 코드 즉 VLC에 따라 코딩된 DCT 계수를 수반한다. 이 회로(10)는 코더에 의해 수행되는 가변 길이 코딩에 대해 역동작을 수행하는 가변 길이 디코딩 회로이다.
양자화 계수인 디코딩된 데이터는, 코더에 의해 수행되는 주사에 대해 역 주사를 수행하는 역 주사 회로(11)의 입력으로 송신된다. 코딩시에, 순위(n)는 블록의 각 계수로 할당되었으며, 주사는 그 순위에 해당하는 순서로 순차적으로 수행되었다. 그리하여 역 동작은 주사에 해당하는 순위(n) 또는 계수의 번호에 기초하여 블록 내의 계수를 재위치 지정하는 것으로 이루어진다. 이리하여, 순위(n)의 양자화된 계수를 나타내는 일차원 데이터{QFS(n)}는 열(u)과 행(v)을 갖는 계수 어레이를 구성하는 이차원 데이터{PQF(u,v)}로 변환된다. 8×8 픽셀의 이미지 블록에 대해, n은 0과 63 사이의 값에 해당하며, 0은 DC 계수의 순위이고, u 및 v는 0과 7 사이에 있다.
회로(12)는, 이러한 예측이 코딩시에 사용되었을 때, 인트라 코딩된(intra-coded) 매크로블록에 대한 DC 계수 및 AC 계수의 역 예측을 수행한다. 현 블록의 DC 계수는 이때 디코딩될 매크로블록의 위 또는 앞(즉 좌측)에 있는 매크로블록의 해당 블록의 DC 계수인 예측 값으로부터 연산되어야 한다. 사람들은 수직 또는 수평 DC 예측 방향이라 각각 말한다. 이 예측 방향은, 현 매크로블록의 각 블록에 대해, 현 매크로블록의 위의 해당 블록의 DC 그레디언트(블록에 대해 좌측으로 수평 그레디언트) 및 현 매크로블록의 좌측으로의 해당 블록의 DC 그레디언트(위 블록에 대해 수직 그레디언트)의 함수로서 연산된다. 1번째 행 또는 1번째 열의 AC 계수는 또한 예측된 값으로부터 연산되어야 하는데, 이 예측된 값은 각각 디코딩될 매크로블록 위에 있는 매크로블록의 해당 블록의 1번째 행의 AC 계수 또는 디코딩될 매크로블록 앞에 있는 매크로블록의 해당 블록의 1번째 열의 AC 계수이다. 한 블록의 AC 예측 방향은 이 동일한 블록에 대한 DC 예측 방향이다. 그리하여 이 코딩 모드에 대해, 블록의 1 번째 행 또는 1 번째 열만이 코딩되고, 다른 계수는 제로(0)가 된다.
회로(13)는 역 양자화를 수행하며 탈양자화된 계수{F(u,v)}를 제공하기 위하여, 이렇게 연산된 계수{QF(u,v)}를 수신한다. 다운스트림 회로(14)는 이때 탈양자화된 계수{F(u,v)}의 역 이산 코사인 변환(DCT-1)을 수행하며, 획득된 계수는 f(y,x)이며, x 및 y는 u 및 v로서 주파수 순위가 아닌 이미지 내의 공간 계수에 해당한다. 이전에 재구성된 이미지(또는 객체)를 저장하는 vop 메모리(16)는 이 메모리로부터 현 매크로블록과 연관된 움직임 벡터에 의해 지정된 예측된 매크로블록을 추출하는 움직임 보상 회로(15)에 의해 사용된다. 인터 모드에서, 이 회로(15)는 역 변환 회로로부터 수신된 디코딩된 매크로블록{f(x,y)}을 디코딩된 매크로블록을 제공하기 위하여 상기 예측된 매크로블록에 추가한다.
위에서 기술된 여러 프로세싱은 블록별로 수행되며, 여러 회로에 의해 프로세싱되고 하나의 회로로부터 다른 회로로 송신되는 데이터는 계수의 블록 또는 이미지 블록이다.
여러 가지 주사 타입, 즉 지그재그 주사, 수평 교대 주사, 및 수직 교대 주사는 ISO/IEC 문서 14496-2:1999(E) 패러그래프 7.4.2(역 주사)에서 MPEG 4 표준에 정의되어 있다. AC/DC 예측 모드에 따른 디코딩 프로세스는 상기와 동일한 문서의 패러그래프 7.4.3(인트라 매크로블록에 대해 인트라 dc 및 ac 예측)에 정의되어 있다.
도 3은, 블록별이 아닌 계수별로 프로세싱이 수행되는, 본 발명에 따른 계수 블록을 프로세싱하는 알고리즘을 도시한다.
DCT 계수를 포함하는 이진 데이터 스트림은 첫 번째 단계(17) 동안 프로세싱된다. 앞서 나타낸 바와 같이, 각 계수에는 코더 레벨에서 주사하는 것으로부터 나오는 순위인 계수 색인 번호(n)가 대응한다. 단계(17)는 이 이진 스트림의 계수를 추출하는데, 즉 계수의 값과 계수의 색인 번호를 추출한다. 이후 첫 번째 계수는 단계(18)에 송신되며, 단계(18)는 주사를 역전(inverse)시키는 동작을 수행한다. 연산된 순위(n) 및 계수 값은 그 다음 단계(19)에 송신되며, 단계(19)는 DC/AC 예측에 해당하는 프로세싱을 수행한다. 이 단계는 메모리(20)와 연계하여, 프로세싱된 현 계수를 연산하는데 필요한 현 이미지의 DC/AC 계수, 즉 코더 레벨에서 예측이 수행되는 기초가 되는 계수를 제공한다. 연산 값은 이 메모리(20)에 저장되며, 또한 역 양자화를 수행하는 단계(21)에 송신된다. 탈양자화된 계수는 메모리(22)에 저장된다. 그 다음 단계(23)는, 프로세싱된 계수가 계수 블록의 마지막 계수인지를 체크한다. 만약 마지막 계수가 아니라면, 단계(23)는 단계(17)로 궤환하며, 단계(17)는 단계(18)에 그 다음 계수를 제공한다. 만약 마지막 계수라면, 블록이 가지는 모든 계수가 프로세싱된 것이며, 그 다음 단계는 단계(24)로서 이 단계(24)는 디코딩된 이미지 블록을 제공하기 위하여 메모리(22)로부터 이들 탈양자화된 DCT 계수를 검색하며 DCT 계수의 전체 블록에 대한 역 DCT 변환을 수행한다.
도 4는 본 발명에 따른 계수를 디코딩하는 일례를 제공한다.
프로세싱된 블록은 각 순위 0, 5, 및 6에 대해 값 19, 31, 및 -1을 가지는 세 개의 계수와 제로(0) 값을 가지는 블록의 다른 계수로 이루어진 8×8 블록이다. 프로세싱된 경우(case)는, 여기에서 코딩시, 수평 DC/AC 예측에 기초하여 계수가 연산되고 주사가 교대 수직 모드로 수행되는 것이다.
도면에는 블록의 계수에 대해 수행되는 전체 동작 세트가 도시되어 있다. 이들 동작은 각 계수에 순차적으로 수행된다. 전체 연산 세트 또는 각 연산, 즉 역 주사, 역 DC/AC, 역 양자화는, 먼저 첫 번째 계수에 대해 수행되고 이후 두 번째 계수에 대해 판독되고, 세 번째, 등으로 계속된다.
새로운 블록의 계수를 프로세싱하기 전에, 참조 번호 29의 데이터 어레이 DctQuantCoef[]와 참조번호 30의 DctCoef[]의 콘텐츠는 제로(0)로 설정된다.
VLC 디코딩 후에 데이터 스트림으로부터 발생되는 코딩된 데이터는, 블록의 계수의 코딩된 값을 추출하며 이 코딩 값을 그 출력에서 연속적으로 송신하는 회로(25)에 의해 수신된다.
값 19와 순위 0의 첫 번째 계수는 이렇게 판독되고 역 주사 회로(26)에 송신된다.
PQF(u,v)=PQF(s)=QFS(n)
역 주사의 목적은 프로세싱된 순위(n)의 계수에 실제 공간 위치(s)를 할당시키는 것, 즉 QFS(n)로부터 PQF(s)를 연산하는 것이다.
각 주사 타입에 대한 표준으로 주어진 주사 어레이는 s에 해당하는 블록 내 계수의 각 위치에서 순위(n)의 값을 나타낸다. 표준에서 정의된 주사 어레이로부터추론된, 도 5a, 도 5b, 및 도 5c의 역-주사 어레이는 n에 해당하는 블록 내 계수의 각 위치에 대해 직접 s의 값을 얻을 수 있다. 예를 들어, 교대 수직 주사에 대해, 도 5c, n=5에 해당하는 위치, 즉 6번째 열, 1번째 행은 s=9의 값을 가지며, n=6에 해당하는 위치는 값 2를 가진다.
QFS(0)=19=PQF(0)
QFS(5)=31=PQF(9)
블록 내 계수의 실제 공간 위치는 그리하여 도 5a, 도 5b, 및 도 5c의 이들 역-주사 어레이로부터 직접 얻어진다.
이러한 역 주사 후에, 계수는 참조번호 27의 역 DC/AC 회로로 송신된다. 계수의 값은 수평 또는 수직 예측 타입의 함수로서 연산된다. 1번째 행 또는 1번째 열의 계수만이 연관되는데, 즉 0과 7 사이에 있는 순위(n)의 계수와 8, 16, 24, 32, 40, 48, 및 56의 계수가 연관된다.
역 DC/AC 회로는 이미지의 이전의 블록의 1번째 행과 1번째 열의 계수를 저장하는 참조번호 29의 메모리 DctQuantCoef[]에 링크된다. 여기서, 순위(0)의 계수도 수반되며, 역 동작 회로는, 프로세싱된 현 블록의 바로 좌측 블록의 순위 제로의 계수이며 코더에서 예측이 수행되는 기초가 되는 값인 계수 dq0를, 이 메모리를 통해 검색한다.
역 양자화 회로(28)는 이후 탈양자화된 계수 dct0를 제공하기 위하여 계수 dq0의 역 양자화를 수행한다. 이 회로는 이 계수를 저장하는 참조번호 30의 메모리 DctCoef[]로 링크된다.
순위 제로의 이 1번째 계수를 프로세싱하고 저장한 후, 그 다음 계수가 사용된다. 회로(25)에 의해 이 새로운 계수를 회로(26)로 송신하는 신호는 예를 들어, 이 1번째 계수를 메모리(30)에 기록하는 신호와 동기화된다. 이것은 동일하게 역 주사 회로(26)로부터 당연히 유래한다. 구체적으로, 여러 회로에 의해 계수를 프로세싱하는 것은, 준-동시적으로, 즉 그 다음 계수를 프로세싱하기 위해 메모리(30)에 현 계수를 저장하는 것을 기다리지 않고, 수행될 수 있다. 현 계수가 회로를 떠난 바로 직후, 그 다음 계수가 이 회로에 의해 프로세싱된다. 그리하여, 하나의 회로로부터 다른 회로로 계수를 송신하는 신호는 이전의 계수를 프로세싱하는 다운스트림 회로에 의해 제공된다.
현 블록의 2번째 제로 아닌 계수는 값 31의 순위 5의 계수이다. 이 계수는 역 주사 회로(26)로 송신된다. 도면에서, 회로(26 내지 28)는, 중간 단계 동안 획득된 계수 값이 프로세싱된 계수 각각에 대해 명시적이 되도록 프로세싱될 계수가 존재하는 수와 적어도 동일한 수만큼 도시되어 있다. 이 회로는 물론 동일한 프로세싱 회로일 수 있다.
역 주사 회로(26)는 계수의 실제 순위를 연산하며, 이 계수는 지금 s=9이다.
QFS(5)=PQF(9)
역 DC/AC 회로(27)는, 블록의 1번째 행 또는 1번째 열에 위치되지 않은, 이 계수의 값 31에는 영향을 주지 않는다. 값 31은 메모리(29)에 저장된다. 그 다음으로, 역 양자화는, 이 순위(9)의 계수에 대한 값 dct9를 제공하도록 수행되며, 이 값은 메모리(30)에 저장된다.
그 다음으로, 역 주사 회로(26)는 프로세싱된 마지막 계수의 순위를 고려하고, "런(run)", 즉 제로 슈트의 길이(length of the suite of zeros)를 연산한다. 현 계수에 대해, "런"은 현 계수와 이전의 제로 아닌 계수 사이에 위치되어 있는 제로 값을 갖는 계수의 수와 같다.
순위 n=5를 가지는 2번째 제로 아닌 계수-이 2번째 제로 아닌 계수 앞에는 제로 슈트가 있음-는 4의 길이를 가진다(런=4). 순위 1 내지 4의 계수의 값은 제로이다. 이들 4개의 제로 계수는 역 주사 회로(26)에 의해 프로세싱된다. 역 주사 후에, 어레이 5c에 따라 순위 n=1 내지 4에 해당하는 계수의 순위(n)는 각각 8, 16, 24, 및 1이다. 회로(27)에 의해 수행되는 역 DC/AC 동작은, 수평 예측이 수반되기 때문에, 블록의 1번째 열에 해당하는, 색인 번호 8, 16, 24를 갖는 계수에 값 dq8, dq16, 및 dq24를 할당한다. 이들은 현 블록의 좌측 블록에 해당하는 계수의 값이며, 이들 값은 메모리(29)에 저장된다. 순위(1)의 계수 값은 제로로 유지되는데, 그 이유는 2번째 열로부터 오는 이 계수는 예측 동작에 수반되지 않기 때문이다. 마지막으로, 역 양자화 회로(28)는 값 dq8, dq16, dq24, 및 0의 탈양자화된 값, 즉 순위 n=8, 16, 24, 및 1의 계수 값인, dct8, dct16, dct24, dct1을 각각 연산한다. 이 값 dct1은 제로이다. 이들 값은 메모리(30)에 저장된다.
회로(25)는 이제 맨 마지막 제로 아닌 계수를 회로(26)에 송신하는데, 즉 값 -1을 가지는 순위 n=6의 계수를 송신한다. 역 주사 회로(26)는 해당 순위 n=2를 제공한다. 이 순위는 예측 동작에 수반되지 않으며 이 순위는, 역 DC/AC 회로(27)의 출력에서, 메모리(29)에 저장된, 순위 n=2에 대해 이와 동일한 값 -1이다. 역 양자화 회로(28)는 메모리(30)에 저장된 새로운 탈양자화된 값 dct2를 제공한다.
제로 값을 코더로 송신한다하더라도, 우리와 연관된 예측 타입에 대해 1번째 열로부터 오는 계수는 실제 값을 가질 수 있는데, 즉 예측된 값을 추가한 후에 제로 아닌 값을 가질 수도 있다. 만약 "런"의 값이 제로가 아니라면, 제로 아닌 값의 추출된 계수와 동일한 방식으로 건너뛴 계수를 추가로 프로세싱할 필요가 있다. 예측이 수직 예측 또는 수평 예측인지에 따라 실제 공간 위치(값 s)가 8×8 블록의 1번째 행 또는 1번째 열에 해당하는지를 체크할 필요가 있다. 만약 거기에 해당한다면, 역 DC/AC 연산이 이미지의 이전의 블록의 1번째 행과 1번째 열의 값을 사용하기 때문에 계수는 예측된 값의 함수로서 연산되고 메모리(29)에 저장된다. 카운터 cptNbDcAc는 예측이 수평 예측 또는 수직 예측인지에 따라 1번째 열 또는 1번째 행의 프로세싱된 계수의 수를 카운트하는데 사용된다. 일단 제로와 다른 마지막 계수의 프로세싱이 수행되고 나면, 카운터 값이 사용되고 제로 계수의 프로세싱은 카운터가 값 8에 이를 때까지 계속된다. 8보다 더 작은 카운터의 값은 송신된 마지막 계수와 추출될 계수의 최대 수 사이에는 역 DC/AC에 의해 처리되지 않은 제로 값의 계수가 여전히 있다는 것을 사실 의미한다. 그러므로 이들 누락된 계수에 대한 역 양자화 동작이 후속하는 역 DC/AC 동작을 재실행할 필요가 있다.
본 예에서, 카운터 cptNbDcAc는 1번째 행의 프로세싱된 계수의 수를 카운트한다. 카운터는 예를 들어, 계수의 순위 n의 함수로서 역 주사 회로에 의해 트리거된다. 순위 n=s=0의 1번째 계수에 대해 카운터는 증분된다. 2번째 계수는 순위 n=9이다. 제로 슈트에 해당하는 계수(런=4)는 순위 n=8, n=16, n=24, n=1이며, 카운터는 그리하여 3만큼 증분되며 값 4를 가진다. 그 다음 계수는 순위 n=2이며, 이후 제로 계수는 8과 같은 카운터 값이 획득될 때까지 프로세싱된다.
순위 n=7의 계수와 제로 값을 갖는 그 다음 계수는 역 주사 회로(26)에 송신된다. 이 회로는 이들 계수의 순위(n)를 제공하며, 카운터는 1번째 열에 해당하는 s의 값, 즉 s=32, 40, 48, 56 값에 대해 증분된다. 그 다음으로, 이들 계수는 역 DC/AC 회로(27)에 송신되며, 이 역 DC/AC 회로(27)는 이전의 이미지 블록의 1번째 열의 함수로서 이들 계수 각각의 실제 값을 연산한다. 발견된 값, dq32, dq40, dq48, dq56은 메모리(29)에 저장된다. 이 값은 또한 회로(28)에 송신되며, 이 회로(28)는 메모리(30)에 저장된 탈양자화된 값 dct32, dct40, dct48, dct56을 각각 획득하기 위해 탈양자화를 수행한다.
이렇게 저장된 계수의 블록에 해당하는 데이터 어레이 DctCoef[]는 판독되고 역 DCT 회로(31)에 송신된다. 송신된 블록은 역 이산 코사인 변환을 받아 이미지 블록을 제공한다.
본 발명의 일 변형예는 디코딩 루프의 입력에서 역 주사를 제거하여 공간적으로 무질서한 dct 계수에 직접 작용하는 것이다.
역 DC/AC는, 계수가 고려되어야 할 필요가 있거나 고려할 필요가 없는지를 나타내는 데이터 어레이를 호출한다. 예를 들어, 교대 수직 주사 어레이에 기초하여, 순위 n=0,1,2,3,10,11,12,13을 가지는 1번째 열의 계수를 고려함으로써, 데이터 어레이는 이들 n의 값에 대해서는 1의 값을, 다른 n의 값에 대해서는 0의 값을 할당한다.
역 양자화는 이전에 기술된 바와 동일한 방식으로 이루어진다. 연산을 완료하자마자, 그 결과는, 제자리에 그 결과들이 위치하도록 요구하는 역 dct 연산을 수행하기 위하여 메모리(30)에 공간적으로 재위치지정된다. 메모리 억세스는 온라인 억세스 동안 최적화되고, 이것은 행 방향 연산 이후 열 방향 연산을 수행하는 역 dct를 연산하기 위한 알고리즘으로 맞춰진다.
DC/AC 계수 예측을 사용하는 코딩에 대해 상세한 설명이 제공되었다. 또한 예를 들어, MPEG2 표준에 따라 프로세싱하는데 이들 예측 동작 없이 본 발명을 사용하는 것도 생각해 볼 수 있다.
본 발명은, 앞서 기술된 알고리즘을 구현하는 소프트웨어를 포함하는 임의의 타입의 디코더 또는 이 알고리즘을 구현하는 디코딩 회로를 포함하는 TV, DVD 판독기, 위성 수신기와 같은 임의의 타입의 하드웨어에 관한 것이다.
전술된 바와 같이, 본 발명은 MPEG 표준을 사용하는 디코딩 프로세스 및 디바이스를 제공하는 효과를 가진다.

Claims (8)

  1. 계수의 블록을 연속적으로 코딩하는 동작에 기초하여 MPEG 표준에 따라 코딩된 디지털 비디오 데이터를 디코딩하는 프로세스에 있어서,
    블록별(block by block)이 아닌 계수별(coefficient by coefficient)로 역순서로 상기 연속적인 코딩 동작의 역 동작(26, 27, 28)을 수행하는 것을 특징으로 하는, 디지털 비디오 데이터 디코딩 프로세스.
  2. 제 1 항에 있어서, 코딩 동작은 상기 계수의 양자화, DC/AC 계수의 예측, 또는 지그재그 주사(zig-zag scanning)로 이루어지는 것을 특징으로 하는, 디지털 비디오 데이터 디코딩 프로세스.
  3. 제 1 항에 있어서, 계수에 대해 역 순서로 수행되는 상기 역 동작은, 연속적으로, 역 주사(26), 상기 예측된 DC/AC 계수에 기초하여 적절하게 상기 DC/AC 계수의 구성(27), 상기 계수의 역 양자화(28)인 것을 특징으로 하는, 디지털 비디오 데이터 디코딩 프로세스.
  4. 제 3 항에 있어서, 상기 역 주사(26)는, 코더(coder)에서 주사 순위(scan rank)(n)에 기초하여 블록 내 계수의 실제 위치(s)를 제공하는, 역 지그재그 주사 표(inverse zig-zag scan table), 역 교대 수평 주사 표(inverse alternatinghorizontal scan table), 또는 역 교대 수직 주사 표(inverse alternating vertical scan table)에 기초하여 연산되는 것을 특징으로 하는, 디지털 비디오 데이터 디코딩 프로세스.
  5. 제 1 항에 있어서, 주어진 이미지에 대하여, AC/DC 계수의 구성(27) 후에 재구성되는, 블록의 1번째 몇 개의 행과 열의 계수는 상기 이미지의 연속 블록의 DC/AC 계수의 구성 동안 사용되도록 하기 위하여 메모리(29)에 저장되는 것을 특징으로 하는, 디지털 비디오 데이터 디코딩 프로세스.
  6. 제 1 항에 있어서, 상기 계수는 계수의 저장된 블록을 제공하기 위하여 역 양자화 동작 후 저장되며(30), 그리고 상기 저장된 블록에 대해 퓨리에 변환이 수행되는(31) 것을 특징으로 하는, 디지털 비디오 데이터 디코딩 프로세스.
  7. 계수의 블록을 연속적으로 코딩하는 동작에 기초하여 MPEG 표준에 따라 코딩된 비디오 데이터를 디코딩하는 비디오 디코딩 회로에 있어서,
    블록별로가 아닌 계수별로, 역순서로, 상기 연속적인 코딩 동작의 역 동작(26, 27, 28)을 수행하는 디코딩 알고리즘을 구현하는 프로세싱 회로를 포함하는 것을 특징으로 하는, 디지털 비디오 데이터 디코딩 프로세스.
  8. 제 7 항에 따른 비디오 디코딩 회로를 포함하는 디지털 장치.
KR1020020060144A 2001-10-11 2002-10-02 Mpeg 표준에 따라 코딩된 비디오 데이터를 디코딩하는프로세스 및 디바이스 KR20030030871A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0113083 2001-10-11
FR0113083A FR2831016A1 (fr) 2001-10-11 2001-10-11 Procede et dispositif de decodage de donnees video codees selon la norme mpeg

Publications (1)

Publication Number Publication Date
KR20030030871A true KR20030030871A (ko) 2003-04-18

Family

ID=8868161

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020020060144A KR20030030871A (ko) 2001-10-11 2002-10-02 Mpeg 표준에 따라 코딩된 비디오 데이터를 디코딩하는프로세스 및 디바이스

Country Status (8)

Country Link
US (1) US7269218B2 (ko)
EP (1) EP1303144A1 (ko)
JP (1) JP2003189306A (ko)
KR (1) KR20030030871A (ko)
CN (1) CN1241394C (ko)
FR (1) FR2831016A1 (ko)
MX (1) MXPA02009691A (ko)
MY (1) MY136459A (ko)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060222247A1 (en) * 2005-04-01 2006-10-05 Bhaskar Sherigar Hardware implementation of inverse scan for a plurality of standards
US8238676B2 (en) 2007-12-14 2012-08-07 Yamaha Corporation Image data compressor and image data decompressor
JP5194762B2 (ja) * 2007-12-14 2013-05-08 ヤマハ株式会社 データ圧縮装置およびデータ伸張装置
US10171813B2 (en) 2011-02-24 2019-01-01 Qualcomm Incorporated Hierarchy of motion prediction video blocks

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5870497A (en) * 1991-03-15 1999-02-09 C-Cube Microsystems Decoder for compressed video signals
JPH06350854A (ja) * 1993-06-10 1994-12-22 Matsushita Electric Ind Co Ltd 画像圧縮符号化装置
EP0714212A3 (en) * 1994-11-21 1999-03-31 SICAN, GESELLSCHAFT FÜR SILIZIUM-ANWENDUNGEN UND CAD/CAT NIEDERSACHSEN mbH Video decoder using concurrent processing and resource sharing
US5737019A (en) * 1996-01-29 1998-04-07 Matsushita Electric Corporation Of America Method and apparatus for changing resolution by direct DCT mapping
US5959872A (en) * 1996-10-28 1999-09-28 Samsung Electronics Co., Ltd. Apparatus and method for bidirectional scanning of video coefficients
KR100487986B1 (ko) * 1997-10-23 2005-05-09 미쓰비시덴키 가부시키가이샤 화상 복호화 장치
JP4200541B2 (ja) * 1998-04-03 2008-12-24 ソニー株式会社 データ変換装置及び方法、信号記録再生装置、並びに再生装置及び方法
JP3512346B2 (ja) * 1998-10-15 2004-03-29 ソニー株式会社 ウェーブレット復号化装置及び方法
JP2001125294A (ja) 1999-10-29 2001-05-11 Canon Inc 画像形成装置

Also Published As

Publication number Publication date
MY136459A (en) 2008-10-31
CN1241394C (zh) 2006-02-08
JP2003189306A (ja) 2003-07-04
FR2831016A1 (fr) 2003-04-18
EP1303144A1 (en) 2003-04-16
US7269218B2 (en) 2007-09-11
US20030072369A1 (en) 2003-04-17
CN1413020A (zh) 2003-04-23
MXPA02009691A (es) 2003-10-06

Similar Documents

Publication Publication Date Title
US5293229A (en) Apparatus and method for processing groups of fields in a video data compression system
US7215707B2 (en) Optimal scanning method for transform coefficients in coding/decoding of image and video
JP2744871B2 (ja) 画像信号符号化方法および画像信号符号化装置
EP0560577B1 (en) Video compression coding and decoding with automatic sub-pixel frame/field motion compensation
KR960006762B1 (ko) 화상부호화를 위한 효율적인 2차원 데이타의 주사선택회로
US6542642B2 (en) Image coding process and motion detecting process using bidirectional prediction
US20030095603A1 (en) Reduced-complexity video decoding using larger pixel-grid motion compensation
KR20010006292A (ko) 비디오 화상 코딩 장치 및 방법
EP0644697A2 (en) Method for half-pixel motion compensation in image decoding
KR20030014716A (ko) 미디어 프로세서에서 mpeg2 디코딩의 동적인 복잡도예측 및 조절
KR20040106364A (ko) 복잡성이 감소된 복호화에 적합한 단층 비디오 부호화된비트열들을 제공하는 시스템 및 방법
EP1417840A1 (en) Reduced complexity video decoding by reducing the idct computation on b-frames
US20060233447A1 (en) Image data decoding apparatus and method
US20070076964A1 (en) Method of and an apparatus for predicting DC coefficient in transform domain
JP2018164299A (ja) 動画像復号化方法
US20090060368A1 (en) Method and System for an Adaptive HVS Filter
US7269218B2 (en) Process and device for decoding video data coded according to the MPEG standard
JP2000023162A (ja) 符号化装置及び符号化方法
US11368694B1 (en) Architecture for rate estimation in video coding
US20080212886A1 (en) Image processing method, image processing apparatus and image pickup apparatus using the same
JPH06244736A (ja) 符号化装置
JP2004336247A (ja) 画像符号化方法、画像符号化装置及びコンピュータプログラム
US20060245494A1 (en) Reconstruction and overlap transform system and method supporting VC-1 decoding
JP2004032300A (ja) 動画像圧縮符号化装置
JP2008245237A (ja) 画像処理方法、画像処理装置およびそれを用いた撮像装置

Legal Events

Date Code Title Description
A201 Request for examination
AMND Amendment
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
B701 Decision to grant
NORF Unpaid initial registration fee