KR19990087773A - 비디오 데이터 엔코더 및 디코더 - Google Patents

비디오 데이터 엔코더 및 디코더 Download PDF

Info

Publication number
KR19990087773A
KR19990087773A KR1019980707253A KR19980707253A KR19990087773A KR 19990087773 A KR19990087773 A KR 19990087773A KR 1019980707253 A KR1019980707253 A KR 1019980707253A KR 19980707253 A KR19980707253 A KR 19980707253A KR 19990087773 A KR19990087773 A KR 19990087773A
Authority
KR
South Korea
Prior art keywords
prediction error
frame
region
video data
prediction
Prior art date
Application number
KR1019980707253A
Other languages
English (en)
Other versions
KR100430328B1 (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 KR19990087773A publication Critical patent/KR19990087773A/ko
Application granted granted Critical
Publication of KR100430328B1 publication Critical patent/KR100430328B1/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/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/94Vector quantisation
    • 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/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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • 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/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/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • 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
    • 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
    • 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/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/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/97Matching pursuit coding
    • 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
    • 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/149Data rate or code amount at the encoder output by estimating the code amount by means of a model, e.g. mathematical model or statistical model
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Discrete Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Television Signal Processing For Recording (AREA)
  • Color Television Systems (AREA)

Abstract

본 발명은 모션보상 비디오 엔코딩 구조에서 예측오차의 압축에 관한 것이다. 예측 프레임 및 모션벡터들이 예를들어, 그 위치, 방향성 등과 같은 예측오차 신호의 특성들에 관한 유용한 정보를 추출하기 위하여 사용된다. 제안된 시스템의 디코더는 이러한 정보를 추출하는 수단을 포함하기 때문에 이러한 정보는 전송될 필요가 없다. 엔코더와 디코더에 의하여 추출된 정보는 예측오차 코딩구조를 적응시키는데 사용되며 이는 실질적인 비트율 저감을 제공한다.

Description

비디오 데이터 엔코더 및 디코더
모션 보상(motion compensating: MC) 비디오 엔코더들 및 디코더들은 일반적인 비디오 시퀀스의 연속적인 프레임들이 서로 매우 높은 정도의 유사성을 보인다는 사실과, 연속적인 프레임들 사이의 차이가 장면내의 모션에 의해 대개 발생한다는 사실을 이용한다. 이러한 방법으로 모션 보상 비디오 엔코딩은 예를들어 에이치. 무스만(H. Mussman), 피. 퍼쉬(P. Pirsch) 및 에이치. 그랠러트(H. Grallert)에 의한 IEEE 회보, 1995년 4월, 볼륨 73, No. 4, pp. 523 - 548의 "진보된 화상 코딩(Advances in Picture Coding)"으로부터 알려진 바와 같이 비디오 데이터의 양을 압축할 수 있게 된다. 비디오 시퀀스의 각 프레임(I(x,y))을 개별적으로 압축하는 대신에, MC 비디오 엔코더들은 코딩되어져야 하는 현재 비디오 프레임과 엔코더 내에서 계산되는 일명 예측 프레임(P(x,y)) 사이의 차이를 압축하고, 하나이상의 이전 비디오 프레임들을 기초로 현재 비디오 프레임(I(x,y))의 평가값(estimate)을 표시한다. 현재 비디오 프레임(I(x,y))과 예측 프레임(P(x,y)) 사이의 압축된 차이는 비디오 디코더에 의하여 엔코더에 의해 수행된 것과 유사한 프레임 예측을 수행함으로써, 또한 이 예측 프레임을 예측 프레임(P(x,y))과 실제 프레임(I(x,y)) 사이의 수신된 차이를 기초로 수정함으로써 현재 비디오 프레임(I*(x,y))을 재구성하는데 사용된다.
비디오 코딩 기술에서는 각기 다른 이미지 영역들은 각기 다른 코딩 모드를 사용하여 코딩되는 것이 일반적이다, 이는 MPEG-1과 MPEG-2 비디오 코딩 규격 뿐만 아니라 ITU H.261 및 H.263과 같은 모든 최신 비디오 코덱의 경우이다. 예를들어, 어떤 이미지 영역들은 아무런 임시적 예측(일명 내부블록들(intra-blocks))을 사용하지 않고도 코딩된다. 따라서, 용어 "프레임(frame)"은 이하에서 모션 보상 엔코딩 및 디코딩이 되어지는 프레임 영역들을 의미한다. 모션 보상 비디오 코딩 및 디코딩의 정황에서 용어 "프레임"으로써 내부블록들이 존재하지 않는 특수한 경우로 한정하고자 하는 것이 아님이 주목된다.
엔코더와 디코더 모두는 엔코더 내에서 모션 평가에 의하여 계산되는 평가 모션 벡터들을 기초로 현재 프레임(I(x,y))의 예측을 수행한다. 평가 모션벡터들은 엔코더가 예측 오차 프레임(E(x,y)), 즉, 현재 프레임(I)과 예측프레임 사이의 차이를 계산할 수 있다는 것을 기초로 엔코더 내에서 예측 프레임(P)을 재구성하는데 사용된다. 또한, 예측 오차 프레임(E(x,y))과 기준 프레임(R)에 대한 현재 프레임(I)의 평가 픽셀 변위를 기술하는 평가 모션벡터들은, 모션 벡터들을 기초로 한 현재 프레임의 예측(P)과, 전송된 예측오차를 기초로 한 예측프레임의 정정용 디코더와 통신하여, 즉, 현재프레임(I*(x,y))을 구성한다.
디코더로 전송되는 데이터의 양을 더 줄이기 위하여, 엔코더는 예측오차의 압축을 수행한다. 상기 예측오차에 대한 압축(compression)과 압축된 예측오차에 대한 복원(decompression)의 결과로써, 복원된 예측오차 프레임(E*(x,y))은 E(x,y)와 약간 다를 수 있다. 상기 엔코더는 예측 오차프레임(E(x,y))의 계산뿐만 아니라 예측 프레임(P(x,y))에 대한 모션 평가 및 계산을 이전의 원 프레임들(I)이 아닌 디코더에 의하여 수행된 재구성과 유사한 방법으로 엔코더에 의하여 재구성된 이전 프레임들(I*)에 기초함에 의하여 이러한 약간의 편차를 고려한다.
모션평가를 위해서는 재구성된 프레임들(I*) 또는 원 프레임들(I)이 사용될 수도 있다.
예측오차프레임(En(x,y))의 압축은 일반적으로 전체 프레임을 작은 영역들로 분할하고, 이러한 각각의 영역들에 대하여 적절한 압축방법을 사용함에 의하여 달성된다. 용어 "영역(area)"은 프레임 내에서 인접 이차원 공간 블록(contiguous spatial two dimensional block)을 형성하는 많은 픽셀들을 나타낸다. 예측오차는 일반적으로 적은 영역들에만 집중되고, 반면에 나머지 영역들에서는 매우 작거나 영이다. 따라서, 압축된 예측오차 데이터는 통상 두 형태의 정보, 즉, 코딩될 예측오차 프레임 영역을 규정하는 어드레싱 정보와, 이러한 영역들에서 압축된 예측오차값을 포함한다.
엠. 모레스코(M. Moresco), 에프. 라바게토(F. Lavagetto), 및 에프. 코커룰로(F. Cocurullo)에 의한 1992 유럽 신호처리 회의(European Conference on Signalling Processing: EUSIPCO) 회보, pp. 1357 ~ 1360의 "비디오 코딩을 위한 모션 적응적 벡터 양자화(Motion Adaptive Quantization for Video Coding)"로부터 모션 적응적 비디오 코딩 알고리즘이 알려져 있으며, 이 알고리즘에 의하여 비디오 입력 프레임들이 고정된 크기의 삼차원(공간-시간적) 블록으로 나누어지고 각 블록들내 모션 활동도에 따라 분할된다. 모션 내용에 따라 상기 블록들은 일정 프레임 수를 생략하여 시간적으로 서브 샘플링(subsampled)된다. 생략되지 않은 블록의 2차원적 공간 조각들(2 dimensional spatial slices)은 벡터 양자화되고 코딩된다. 수신기에서 전송된 각 블록의 공간적 조각들은 디코딩되고 중간적인(inbetween) 조각들은 선형적으로 보간(interpolated)됨으로써 전체 블록이 재구성된다.
본 발명은 비디오 데이터에 대하여 모션 보상 엔코딩을 수행하는 엔코더 및 모션 보상 엔코딩된 비디오 데이터를 디코딩하는 디코더에 관한 것이다. 또한, 본 발명은 비디오 데이터에 대한 모션 보상 엔코딩 및 모션 보상 엔코딩된 비디오 데이터를 디코딩하는 방법에 관한 것이다.
도 1은 본 발명에 따른 모션 보상 비디오 엔코더의 첫 번째 실시예를 도시한 블록도이다.
도 2는 본 발명에 따른 실시예로써 예측오차 엔코더를 도시한 상세 블록도이다.
도 3은 예측오차 프레임 영역의 일예를 도시한 도면이다.
도 4는 예측 프레임 영역들의 방향성 유형들(directionality patterns)에 대한 부류들 및 서브부류들의 예를 도시한 도면이다.
도 5는 본 발명에 따른 비디오 엔코더의 두 번째 실시예로써 선택가능형 영역엔코더를 도시한 블록이다.
도 6은 픽셀 클러스터들의 예를 도시한 도면이다.
도 7은 픽셀 활동성 측정 계산을 위한 서브블록들을 도시한 도면이다.
도 8은 본 발명에 따른 비디오 디코더의 첫 번째 실시예를 도시한 블록도이다.
도 9는 도 8의 예측오차 디코더에 대한 상세 블록도이다.
도 10a는 영역들의 배열을 도시한 도면이다.
도 10b는 예측오차 데이터의 일예를 도시한 도면이다.
도 11은 본 발명의 두 번째 실시예에 따른 비디오 디코더의 선택가능형 영역디코더를 도시한 블록도이다.
본 발명의 목적은 높은 엔코딩 효율이 달성되고 엔코딩된 비디오 데이터의 비트율이 더 저감될 수 있도록 비디오 데이터에 대한 엔코딩 및 디코딩을 개선하는 것이다.
본 발명에 따르면, 이러한 목적은 청구항 제1항에 따른 비디오 데이터의 모션보상엔코딩을 수행하는 엔코더와, 또한 제15항에 따른 모션보상 엔코딩된 비디오데이터를 디코딩하는 디코더에 의하여 이루어진다. 또한, 이러한 목적은 제32항에 따른 비디오 데이터의 모션보상 엔코딩 방법과, 또한 33항에 따른 모션보상 엔코딩된 비디오데이터의 디코딩 방법에 의하여 이루어진다. 본 발명의 실시예들은 종속청구항들에 정의되어 있다.
본 발명의 첫 번째 태양에 따르면, 예측 프레임의 특성들 및/또는 모션벡터들의 특성들이 코딩된 비디오 데이터의 비트율을 저감시키고, 그리하여 비디오 데이터의 코딩 효율을 향상시키는데 사용된다. 예측오차는 비디오 장면 내에서 이동하는 물체의 외곽선(contours)을 따라 집중된다. 본 발명은 모서리들(edges) 및 그와 동등한 것과 같은 예측프레임(P(x,y))내의 구조, 휘도 및/또는 색도 픽셀값들의 공간적 변동이나 패턴들이 이러한 움직이는 물체의 외곽선 위치와 대략적으로 일치한다는 것에 대한 관찰을 기초로 한다. 이 명세서에 걸쳐서, 용어 "이미지 밝기의 불연속(discontinuity of image brightness)"은 예측프레임에 대한 이러한 일반적인 구조를 나타낸다. 모션벡터들이 전송되면 곧바로 엔코더 및 디코더로 예측프레임(P(x,y))이 차례로 알려진다. 따라서, 엔코딩된 비디오 데이터 내에 저장된 예측오차 프레임 영역들에 관한 어드레스 정보를 전송할 필요없이, 엔코더와 디코더 내에서 예측프레임을 기초로 예측오차프레임내의 어느 영역들이 유효(significant)하고 각각 엔코딩 및 디코딩되어야 하는지를 결정하는 것이 가능하다.
또한, 본 발명은 예측오차가 모션 활동도가 높은 영역에 집중된다는 것에 대한 인식을 기초로 한다. 따라서, 엔코더와 디코더 내에서 얻을 수 있는 모션벡터들의 특성은 예측오차 프레임의 유효한 영역들에 관한 코딩된 비디오 데이터내의 어드레스 정보를 포함할 필요없이 엔코더에 의하여 코딩되어지고 디코더에 의해 디코딩되어지는 예측오차 프레임의 유효 영역들을 결정하는데 사용될 수 있다.
본 발명의 이러한 태양에 따른 바람직한 비디오 데이터 코딩 구조는 엔코더에 의하여 엔코딩되어야 하는 예측오차 프레임 영역을 결정하고, 예측오차 프레임의 어느 영역이 엔코딩된 비디오 데이터 내에 저장되는지를 결정하기 위하여 엔코더 내에서 평가되어 디코더로 전송되는 모션벡터들의 특성들뿐만 아니라 엔코더와 디코더 내에서 얻을 수 있는 예측프레임의 구조적 특성들을 사용한다.
바람직하게는, 예측오차 프레임이 비디오 데이터 프레임을 엔코딩하기 위하여 복수의 영역들로 분할된다. 예측 프레임은 예측오차 프레임의 분할과 유사한 방법으로 각 예측오차 프레임 영역에 대하여 예측 프레임 내에 해당 영역이 존재하도록 복수의 영역들로 나누어진다. 디코더는 엔코더와 동일한 방법으로 예측프레임을 분할하고 수신된 코딩된 비디오데이터로부터 그것에 포함되어 있는 예측오차 프레임의 각 해당 영역 내에서 예측오차 프레임을 복구한다. 상기 프레임들은 소정의 크기 및 모양을 갖는 영역들 또는 다양한 크기 및 모양을 갖는 영역들로 분할될 수 있다. 프레임들을 영역들로 분할하는 것은 적응적으로 수행될 수 있다. 각 영역의 크기 및 모양은 예를들어, 예측프레임의 국부적인 불연속 정도와 같은 예측 프레임의 국부적인 모션 활동도 및/또는 국부적인 구조적 특성에 의존한다.
바람직하게는, 엔코더가 소정의 방법 또는 적응적 방법으로 프레임 분할을 수행한 다음에, 상기 엔코더는 엔코딩되어야 하는 예측오차 프레임 영역들을 결정하는 소정의 시퀀스 규칙을 사용한다. 이러한 시퀀스 규칙은 디코더에게 미리 알려진다. 이러한 시퀀스 규칙의 일예로써, 엔코더는 엔코딩될 영역들에 대하여 프레임을 라인별로 분할함에 따른 영역들의 배열(array)을 검색(scans)하고 엔코딩될 모든 영역들을 그들이 발견되는 순서로 엔코딩한다. 그러면 디코더는 상기 시퀀스 규칙을 기초로, 또한 예측오차 프레임 및/또는 모션벡터들로부터 추출한 어느 예측오차 프레임 영역이 코딩되어야 하는지에 관한 정보에 근거를 둔 예측프레임에 대한 분할을 기초로 수신 예측오차 데이터로부터 예측오차 프레임을 복구할 수 있다.
또한 본 발명의 두 번째 태양에 따르면, 예측오차 프레임의 모든 영역 또는 선택된 영역들은 적응적 코딩구조를 사용하여 코딩된다. 선택된 영역들은 본 발명의 첫 번째 태양에 따라 유효하다고 결정된 예측오차 프레임 영역들일 수 있다. 적응적 코딩구조는 코딩되는 각 예측오차 프레임 영역들에 대한 각기 다른 특성 부류들(property classes)을 고려한다. 적응적 코딩 구조의 예들로써는 각각이 상기 특성 부류들 중의 하나에 대하여 설계된 많은 코드북들을 기초로 하는 분류 벡터 양자화 구조(classified vector quantization schemes), 직교 변환(orthogonal transformation), 매칭 추적 기법(matching pursuit techniques)등과 같은 당해분야에서 잘 알려진 모든 구조들이 포함된다. 비디오 데이터를 코딩하기 위하여 분류 벡터 양자화를 사용하는 것은 신호처리(Signal Processing), 1992, 엘스비어(Elsevier) 출판, 볼륨 26, pp. 265의 "벡터 양자화를 통한 저속 시퀀스 이미지 코딩(Low rate sequence image coding via vector quantization), H, -H, -Chen, Y, -S. Chen, 및 W. -H. Hsu" 또는 IEEE 이미지 처리 국제 회의(IEEE International Conference on image processing: ICIP), 1994, 볼륨 2, pp. 452의 "시퀀스 압축을 위한 견고한 모션 평가 및 다단계 벡터 양자화(Robust motion estimation and multistage vector quantization for sequence compression), K. Zhang, M. Bober, 및 J. Kittler"와, IEEE 음향, 음성 및 신호처리 국제회의(IEEE International Conference on Acoustics, Speech and Signal Processing: ICASSP), 1994, 볼륨 5, pp. 417의 "가변 블록크기 VQ형 모션 보상 비디오 코덱에 대한 속도 왜곡 분석(Rate distortion analysis of variable block size VQ-based motion compensated video codecs), S. Liu"에 기술되어 있는 바와 같다. 본 발명에 따르면, 예측오차 프레임 영역을 코딩하기 위하여 예를들어 분류 벡터 양자화 구조, 직교 변환, 매칭 추적 기법 등과 같은 적응적 엔코딩 구조를 사용하면, 엔코딩된 비디오 데이터 내에 분류 정보가 포함될 필요가 없도록 엔코더와 디코더 내에서 얻을 수 있는 예측프레임의 특성들로부터 분류 정보(classification information: 예를들어 코딩 방법 선택정보)를 추출함에 의하여 비트율 저감이 달성될 수 있다. 엔코딩될 예측오차 프레임 영역에 해당하는 예측 프레임 영역으로부터 분류정보를 추출하는 것에 대한 대안으로써 또는 그것에 추가적으로, 예측 프레임 영역들에 대하여 적응적 엔코딩을 사용하면, 엔코딩된 비디오 데이터내에 분류정보를 포함시킬 필요없이 예측오차 프레임의 각 코딩 영역에 대해 예를들어 코드북 선택과 같은 분류작업을 수행하기 위하여 모션벡터들의 특성들이 사용될 수 있다.
본 발명의 이러한 태양에 따르면, 추출된 분류정보는 각각의 예측오차 프레임 영역을 엔코딩하는 특정 코딩방법을 표시하거나, 각기 다른 코딩방법군을 표시할 수 있다. 본 발명의 이러한 태양에 대한 바람직한 실시예에 따르면, 각각 해당 특성 부류의 특정한 특성들에 적합하게 되어 있는 복수의 영역엔코더 중에서 엔코딩될 영역에 대한 영역엔코더를 선택하기 위하여 분류정보가 사용된다. 각 영역엔코더는 차례로 각기 다른 가용 코딩방법들의 군을 구비하고, 상기 군 중에서 최상의 코딩방법이 비디오 엔코더에 의하여 선택되며, 코딩방법 선택정보가 비디오 디코더로 발송된다. 비디오 디코더로 전송되는 코딩방법 선택정보의 양은 상기 코딩방법 선택정보가 각 영역엔코더에 대한 코딩정보 선택 확률의 분포가 불균일한 것을 이용하여 엔트로피 엔코딩(entropy encoded)되는 경우 적게 유지될 수 있다. 만일 각 특성 부류, 즉, 각 영역엔코더에 대하여 하나 또는 적은 수의 코딩방법들이 선택될 확률이 매우 높다면, 그들의 선택은 적은 비트수로써 비디오 디코더로 표시될 수 있는데, 반면에 적은 선택 확률을 갖는 코딩방법에 대한 선택은 보다 많은 비트수에 의하여 비디오 디코더로 표시될 수 있다.
선택된 영역엔코더내에 구비된 모든 코딩방법들중에서 특정 코딩방법을 선택하는 것은 비디오 디코더에 대하여 비가용상태인 정보, 예를들어, 원 비디오 데이터 프레임 입력, 엔코딩될 예측오차 프레임 영역 내에서의 픽셀값들의 개별구조등을 기초로, 비디오 엔코더에 의하여 수행될 수 있다. 그러면, 비디오 디코더는 상기 비디오 디코더 내에서 가용상태인 예측 프레임의 특성들을 기초로, 또한 상기 비디오 엔코더에 의하여 전송된 코딩방법 선택정보를 기초로 영역엔코더를 선택할 수 있다.
본 발명의 이러한 태양에 대한 상기 실시예는 예측 프레임의 특성들 및/또는 모션벡터필드의 특성들을 기초로 한 구분이 엔코딩될 각 예측오차 프레임 영역의 특성들을 고려할 때 어느 정도 불확실성이 잔류하는 경우의 상황에서 비디오 엔코더와 비디오 디코더의 성능을 개선할 수 있다는 장점이 있다. 이러한 실시예로써, 그러한 상황에서도 비디오 디코더로 발송되는 매우 적은 양의 선택정보에 의하여 매우 많은 각기 다른 코딩방법들 중에서 매우 적응적이고 정확한 코딩방법을 선택하는 것이 가능하다.
코딩방법 선택정보는 비디오 디코더로 전송되기 이전에 코딩방법 선택확률의 분포를 고려하여 엔트로피 엔코딩(entropy encoded)되는 것이 바람직하다. 등가적인 변형에서는 각 영역엔코더에 대한 복수의 코딩방법들 중에서 디폴트 코딩방법을 구비하며, 비디오 엔코더는 구분작업에 따라 선택된 영역엔코더에 대한 디폴트 코딩방법이 각 예측오차 프레임 영역을 엔코딩하기 위한 적절한 조건을 만족하는지에 대한 점검을 수행한다. 만일 선택된 영역엔코더에 대한 디폴트 코딩방법이 충분히 수행하는 것으로 파악되면, 코딩방법 선택정보가 비디오 엔코더에 의하여 비디오 디코더로 전송되지 않고, 상기 비디오 디코더는 비디오 엔코더에 의하여 채택된 디폴트 코딩방법에 해당하는 디폴트 디코딩방법을 사용한다. 그렇지 않은 경우에는, 비디오 엔코더가 디폴트를 무시하고 적절한 코딩방법을 선택하여 해당 선택정보를 비디오 디코더로 전송한다.
이하, 첨부된 도면들을 참조하여 본 발명의 바람직한 실시예들을 상세하게 기술하기로 한다.
도 1에는 본 발명에 따른 비디오 엔코더의 첫 번째 실시예를 나타낸 블록도를 도시하였다. 도 1을 참조하면, 참조번호(1)는 비디오프레임 입력(I(x,y))과 예측프레임(P(x,y)) 사이의 차이로부터 예측오차프레임(E(x,y))을 계산하는 수단을 표시한다. 참조번호(2)는 예측오차 엔코딩 블록을, 참조번호(3)는 예측오차 디코딩블록을 표시한다. 참조번호(5)는 예측프레임(P(x,y))과 디코딩된 예측오차프레임(E*(x,y))으로부터 재구성된 비디오 프레임(I*(x,y))을 계산하는 수단을 표시한다. 참조번호(6)는 복구 비디오 프레임(I*(x,y))을 저장하고, 예측프레임을 계산하는 모션보상 예측기(7)에 의하여 사용되는 기준프레임(R(x,y))을 공급하는 프레임 메모리를 표시한다. 참조번호(8)는 모션벡터들을 평가하여 평가된 모션벡터들을 MC 예측블록(7)으로 발송하는 모션평가기를 표시한다. 참조번호(4)는 모션평가기(8)에 의하여 출력된 모션벡터들과 예측오차코딩기(2)에 의하여 출력된 예측오차 데이터를 수신하고 디코더로 전송하기 위하여 상기 예측오차 데이터와 상기 모션벡터들을 멀티플렉싱하는 멀티플렉서를 표시한다.
본 실시예의 예측오차 엔코딩블록(2)은 계산수단(1)에 의하여 출력된 예측오차 프레임(E(x,y)) 뿐만 아니라 예측오차 프레임(P(x,y))과 모션평가기(8)에 의하여 평가된 모션벡터들을 수신하도록 이루어진다. 또한, 예측오차 디코딩블록(3)은 예측오차 코딩블록(2)에 의하여 출력된 예측오차 데이터뿐만 아니라 예측프레임(P(x,y))과 모션평가기(8)에 의하여 평가된 모션벡터들을 수신한다.
도 1의 비디오 엔코더는 다음과 같이 동작한다. 입력되는 각 비디오데이터 프레임(I(x,y))에 대하여, 상기 엔코더는 예측프레임(P(x,y))을 예측하고, 상기 예측프레임(P(x,y))을 실제 입력 비디오프레임(I(x,y))과 비교한다. 이러한 비교작업은 계산수단(1)에 의하여 수행된다. 다음으로 예측오차 프레임(E(x,y))은 블록(2)으로 공급되고, 디코더로 전송하기 위한 압축된 예측오차데이터를 발생하기 위하여 예측오차 엔코딩된다. 예측오차 프레임(E(x,y))의 압축은 다소의 정보 누락을 초래한다. 비디오 디코더(도 1에서는 미도시)는 비디오 엔코더로부터 예측오차 프레임(E(x,y))이 아닌 압축된 예측오차프레임을 수신한다는 점에서 볼 때, 상기 비디오 디코더는 예측오차 프레임(E(x,y))이 아닌 압축된 예측오차 데이터를 디코딩하여 구해진 복구 예측오차 프레임(E*(x,y))을 기초로 실제 비디오 프레임에 대한 예측을 수행하여야 할 것이다. 엔코더와 디코더 내에서 예측프레임(P(x,y)) 사이의 편차를 방지하기 위하여, 비디오 엔코더는 비디오 디코더에서 복구 예측오차 프레임(E*(x,y))을 구하기 위한 방법과 동일한 방법으로 예측오차 엔코더(2)에 의하여 출력된 예측오차 데이터를 디코딩하고, 실제 입력 비디오데이터 프레임을 기초로 하지 않고 블록(2)에 의하여 출력된 예측오차 데이터를 기초로 비디오 디코더에 의하여 재구성될 수 있는 비디오데이터 프레임에 해당하는 재구성된 비디오 데이터프레임(I*(x,y))을 기초로 예측이 수행된다.
모션 평가기(8)는 입력 비디오 데이터(I(x,y))의 시퀀스(sequence)로부터 장면 모션(scene motion)을 분석하고, 순차적인 비디오 프레임 내 각 픽셀의 변위(displacement)를 기술하는 모션벡터들을 평가한다. 다음으로 이러한 평가 변이들은 순차적인 비디오 프레임(I(x,y))에 대해 예측 프레임(P(x,y))에 도달하기 위하여, 평가 변이에 따라 현재의 재구성된 비디오프레임(I*(x,y))을 수정하기 위하여 MC 예측기(7)에 의해 사용된다.
모션평가를 기초로 한 예측 프레임의 발생과 예측오차 엔코딩 및 디코딩은 당해 기술 분야에서 잘 알려져 있다. 모션평가 및 모션보상 예측에 관한 많은 양의 논문들이 이미 간행된 바 있다. 이러한 주제들에 대한 상세 내용들은 상기 문헌들에서 용이하게 구할 수 있으므로 본 발명과 관련하여 이러한 발행물들을 직접적으로 더 상세히 논의할 필요는 없을 것이다.
예측오차 엔코더(2)는 예측오차 프레임을 복수의 영역들로 분할함에 의하여 예측오차 프레임(E(x,y))에 대한 엔코딩을 수행한다. 또한, 예측오차 엔코더(2)는 도 1에서 각각 점선으로 표시된 바와 같이 예측프레임(P(x,y))을 수신하고 분석한다. 또한, 예측오차 엔코더(2)는 도 1에서 각각 점선으로 표시된 바와 같이 모션평가기(8)에 의하여 평가된 모션벡터들에 관한 정보를 수신한다. 이것을 기초로, 예측오차 엔코더(2)는 어느 예측오차 프레임(E(x,y)) 영역들이 엔코딩되어야 하고 어느 예측오차 프레임 영역이 유효한 정보를 포함하지 않아 디코더로 전송될 필요가 없는지를 결정할 수 있다. 예측오차 엔코더(2)는 예측 프레임의 특성들에 대한 분석과 평가된 모션벡터들에 대한 분석을 기초로 이러한 결정을 수행하며, 여기서 상기 예측 프레임과 상기 모션벡터들은 코딩된 비디오 데이터를 수신하는 디코더 내에서도 역시 사용할 수 있다. 본 발명의 예측오차 엔코더(2)는 예측오차 프레임(E(x,y))내에서 유효한 정보는 비디오 장면 내에서 움직이는 물체들의 외곽선들을 따라 집중된다는 사실을 이용한다. 움직이는 물체의 정확한 외곽선들은 디코더로 알려지지 않지만, 예를들어 엔코더와 디코더 내에서 모두 사용할 수 있는 예측프레임(P(x,y))에 대한 이미지 밝기(image brightness)의 불연속, 모서리 및 그와 동등한 것과 같은 구조적 특성들은 이러한 외곽선들의 위치들과 근사적으로 일치한다. 따라서, 예측오차 엔코더는 예측 프레임(P(x,y))의 구조적인 특성들로부터 예측오차 프레임에 대한 유효 영역들의 근사적인 위치를 결정할 수 있다. 예측 프레임의 구조적인 특성들을 기초로 한 예측오차 프레임에 대한 유효 영역들을 결정하는 것과 더불어, 본 실시예의 예측오차 엔코더(2)는 디코더로 전송되어지는 유효 예측오차 프레임 영역들을 결정하기 위하여 비디오 장면 내에서의 모션에 의해 프레임별 각 픽셀에 대한 평가 변위를 기술하는 모션벡터들의 특성들을 분석한다. 만일 유효 영역들에 대한 결정이 모션 벡터들뿐만 아니라 모서리들 및 불연속들과 같은 예측프레임의 구조적인 특성들을 기초로 한다면, 그러한 예측오차 프레임 영역들은 움직이는 물체들의 이동 외곽선을 기술하는 것으로 결정될 수 있다. 대안적으로 이러한 유효 예측오차 프레임 영역의 결정은 예측프레임의 구조적인 특성들 또는 모션벡터들을 기초로 할 수도 있다. 이러한 그다지 바람직하지 않은 경우들에서는 여전히 몇몇 유효하지 않은 예측오차 프레임 영역들을 결정할 가능성이 있다.
본 발명의 예측오차 엔코더(2)는 또한 유효하다고 결정된 각 예측오차 프레임(E(x,y)) 영역에 대하여 적응적 코딩구조를 사용한다. 개별적인 코딩구조에 대한 선택은 예를들어 예측프레임(P(x,y)) 외곽선의 방향성과 같은 구조적인 특성들에 대한 분류를 기초로 수행된다. 각 부류(class)는 그 부류의 특성에 맞는 코딩방법이 할당되어진다. 예측프레임(P(x,y))은 비디오 엔코더와 비디오 디코더 내에서 모두 사용가능하기 때문에, 이러한 특성들을 기초로 한 적합한 코딩구조의 선택은 엔코딩된 예측오차 데이터 내에 추가적인 선택정보가 포함되어 있지 않다고 하더라도 비디오 디코더가 엔코딩될 각 영역에 대하여 비디오 엔코더에 의하여 선택된 각 코딩구조에 부합하는 적절한 디코딩 구조를 선택할 수 있다는 장점이 있다.
따라서, 본 실시예의 예측오차 엔코더(2)는 예측오차 프레임내 유효영역들의 위치에 관한 어드레스 정보 또는 선택된 코딩구조에 관한 정보를 전송할 필요가 없이, 예측오차 프레임(En(x,y))에 대하여 엔코딩될 유효 영역들을 결정하고 각 유효 예측오차 프레임(E(x,y)) 영역을 적절한 코딩구조로써 선택하기 위한 정보에 의하여, 비디오 엔코더와 비디오 디코더 내에서 예측프레임(Pn(x,y))과 모션벡터들을 사용할 수 있다는 장점을 갖는다.
도 1의 예측오차 디코더(3)는 장점을 가지지만 기본적인 이유들로 필수적이지는 않다. 만일 유효 예측오차 프레임(E(x,y)) 영역을 압축하는데 채택된 코딩구조들이 다소의 정보 누락을 초래한다면, 이러한 누락 정보의 일부는 모션벡터들의 평가와 비디오프레임들의 예측을 실제 입력프레임이 아닌 비디오 디코더에 의하여 수행된 디코딩 동작과 동일한 디코딩 동작으로부터 구해진 복구 비디오프레임(I*(x,y))을 기초로 비디오 디코더로 재전송될 수 있다. 이러한 원리는 당해 기술분야에서 잘 알려져 있으므로 예측오차 디코더(3)의 유효성(significance)에 대한 상세한 논의는 생략하기로 한다. 도 1의 예측오차 디코딩블록(3)과 비디오 디코더내의 해당 예측오차 디코딩블록과의 유사성을 고려할 때, 예측오차 디코더블록(3)에 대한 구조 및 동작 설명은 본 발명에 따른 비디오 디코더의 일실시예에 대한 이하의 기술문맥에서 주어진다.
멀티플렉서(4)는 예측오차 엔코더(2)에 의하여 출력된 코딩 예측오차 데이터와 모션 평가기(8)에 의하여 출력된 모션벡터 데이터를 멀티플렉싱하는 임의 구성요소이다. 만일 예측오차 데이터와 모션벡터들에 대하여 개별적인 전송채널들을 사용할 수 있다면, 멀티플렉서(4)는 생략될 수도 있다.
도 2에는 도 1의 예측오차 엔코더(2)의 상세 블록도를 도시하였다. 도 2를 참조하면, 참조번호(21)는 예측프레임(P(x,y))을 복수의 영역들로 분할하는 블록을 표시한다. 참조번호(22)는 각 예측프레임(P(x,y)) 영역 내에서 공간적 불연속을 분석하는 블록을 표시한다. 본 발명의 범위를 한정하지 않는 본 특정 실시예에서 이 블록은 P(x,y)에 대한 프레임분할에 따른 각 영역들 상에서 필터 동작을 수행하는 방향성 고역통과필터(directional high pass filter)를 구비한다. 블록(22)을 구현하는 다른 대안들에서는 에지(edge) 검출 알고리즘들 또는 이미지 밝기값의 변동을 측정하는 알고리즘들을 포함한다. 블록(24)은 예측프레임(P(x,y))에 대한 분할에 따라 예측오차 프레임(E(x,y))을 복수의 영역들로 분할하기 위하여 구비된다.
블록(25)은 예측오차 프레임(En(x,y))을 분할함으로써 얻은 각 영역들에 대하여 각 영역이 유효 영역이고 엔코딩되어야 할지, 또는 각 예측오차 프레임(E) 영역이 유효하지 않고 따라서 엔코딩되지 않을지를 결정하는 결정수단을 나타낸다. 각 영역의 유효성에 대한 결정을 위해서, 블록(25)은 블록(22)내의 방향성 고역통과 필터들의 출력들을 수신하고, 또한 그 유효성이 판정되어 결정되는 각 영역에 해당하는 모션벡터들을 수신한다. 블록(25)은 각 영역 내에서 필터 출력들의 절대값들을 추가하고 구한 합을 소정의 제1 임계값과 비교한다. 이러한 방법으로 블록(25)은 각 예측프레임(P) 영역이 유효한 불연속도를 가지는지의 여부를 결정할 수 있다. 또한, 블록(25)은 각 프레임 영역 내에서의 모션 활동도가 유효한지의 여부를 결정하기 위하여 각 영역들에 대한 모션벡터들의 크기를 계산하고 모션벡터들중에서 가장 큰 크기값을 제2 임계값과 비교한다. 블록(25)은 불연속도와 모션 활동도가 유효한 것으로 밝혀지면 각 영역이 유효한 것으로 결정하고, 불연속도가 유효하지 않거나 모션 활동도가 유효하지 않으면 각 영역이 유효하지 않은 것으로 결정한다.
또한, 블록(25)은 유효 예측오차 프레임(E) 영역을 압축 및 비디오 디코더(본 도면에서는 미도시)로의 전송을 위한 블록(26)으로 출력하기 위하여 소정의 시퀀스 규칙을 사용한다. 특히, 본 실시예에서 블록(25)은 블록(21)의 분할 동작에 따른 모든 영역들을 영역들의 배열 내에 배치시키고 유효 영역들을 검색하기 위하여 이 배열을 한 라인씩 검색한다. 다음으로 발견된 각 유효영역은 순차적으로 블록(26)으로 출력된다. 이러한 방법으로 비디오 디코더는 이하 계속해서 설명되어지는 바와 같이 수신 정보의 도움 없이도 수신된 예측오차 프레임 영역들을 각 위치상에 배치시킬 수 있게 된다.
예측프레임(P)의 프레임 분할은 블록(24)에 의하여 예측오차 프레임(E)을 분할하는 것과 동일한 방법으로 블록(21)에 의하여 수행됨으로써, 각 예측오차 프레임(E) 영역들에 대한 유효도는 이 영역내 예측프레임의 특성들을 기초로 한다. 다시 말하면, 블록(21)과 블록(24)에 의한 프레임 분할은 예측오차 프레임과 예측프레임의 해당 영역들이 동일한 픽셀 좌표(x,y) 집합을 포함하도록 수행된다. 예측프레임(P)과 예측오차 프레임(E)은 예를들어 4x4 픽셀들 또는 8x8 픽셀들과 같이 각각 동일한 블록크기를 갖는 영역들로 분할된다.
이러한 분할(partitioning)은 소정의 유형을 따를 수도 있고 예측 이미지들을 불규칙한 형태의 영역들로 구분(segmentation)하는 것을 기초로 할 수 있다는 것을 주목하여야 한다. 또한, 엔코더가 현재 코딩 프레임을 임의 형태의 영역들로 분할하는 것을 기술하는 정보를 디코더에게 제공하는 구조들에서는, 상술한 분할은 이러한 구분을 기초로 할 수 있다.
참조번호(26)는 예측오차 프레임(E)에 대하여 이를테면, 블록(25)에 의하여 유효하다고 결정된 각 영역과 같이, 엔코딩될 각 영역을 압축하고 엔코딩하는 적응적 영역엔코더를 표시한다. 적응적 영역엔코더(26)는 본 발명의 범위를 한정하지 않는 본 특정 실시예에서 각 유효 예측오차 프레임 영역들을 불연속 없음(no discontinuities), 수평 불연속들(horizontal discontinuities), 수직 불연속들(vertical discontinuities), 대각 좌편향적 불연속들(diagonal left-slanted discontinuities), 대각 우편향적 불연속들(diagonal right-slanted discontinuities), 무방향성 불연속들(non-directional discontinuities)의 부류들 중에서 하나로 분류하는 분류 블록(23: classification block)을 포함한다. 예측오차 프레임(E)에 대한 각 해당 영역의 분류는 각 예측프레임(P) 영역의 방향적 특성들을 기초로 수행되며, 이러한 특성들은 불연속 분석기에 의하여 분석되고 추출된다. 참조번호(28)는 각 예측오차 프레임(E) 영역을 엔코딩하기 위하여 각 예측오차 프레임(E) 영역에 대한 분류에 따라 선택 가능한 복수의 엔코더들(271,...,27n) 중의 하나를 선택하는 선택기를 표시한다. 참조번호(29)는 선택된 영역엔코더의 출력을 선택하고 비디오 디코더로의 전송을 위하여 선택된 영역엔코더의 출력을 비디오 엔코더의 출력으로써 접속하는 선택기를 표시한다.
도 3에는 도 2 내의 방향성 고역통과필터(22)의 동작을 설명하기 위하여 예측프레임(Pn(x,y)) 영역을 나타내었다. 도 3에서 각각의 검은 점은 선택된 예측프레임(P) 영역 내에서 하나의 픽셀을 나타낸다. P(x,y)는 픽셀 좌표 (x,y)를 갖는 각 픽셀의 휘도값을 나타낸다.
도 2 내의 블록(22)은 각 픽셀위치(x,y)에 대하여 소정의 방향으로 서로 마주보는 인접한 픽셀들의 휘도값(P)을 감산함으로써 각 분할 영역 내에서 픽셀위치(x,y)에 대한 불연속 정보를 추출한다. 특히, 블록(22)은 각 영역의 각 픽셀위치(x,y)에 대하여 위치(x,y+1)에서 수직으로 인접하는 픽셀의 휘도값(P(x,y+1))과 위치(x,y+1)의 상기 픽셀에 대하여 마주보는 다른 하나의 수직으로 인접하는 픽셀위치(x,y-1)에 대한 휘도값(x,y-1) 사이의 차이(FH(x,y))를 계산하기 위한 수평 고역통과필터를 포함한다. 또한, 블록(22)은 각 픽셀위치(x,y)에 대하여, 위치(x+1,y)에서 수평으로 인접하는 픽셀의 휘도값과, 위치(x+1,y)의 상기 픽셀에 대하여 마주보는 다른 하나의 수평으로 인접하는 픽셀위치(x-1,y)에서 수평으로 인접하는 또 다른 픽셀의 휘도값 사이의 차이(FV(x,y))를 계산하는 수직 고역통과필터를 포함한다.
결과적인 수평 차이들(FH(x,y)) 및 수직 차이들(FV(x,y))은 각 픽셀위치(x,y)에 대한 각각 수직 및 수평 방향에서의 공간 휘도 불연속(spatial luminance discontinuity)을 나타낸다.
블록(22)은 각 예측프레임(P) 영역의 각 픽셀에 대한 이러한 수직 및 수평 불연속값들(FV(x,y), FH(x,y))을 FV(x,y) 및 FH(x,y)의 절대값들을 각 영역의 모든 픽셀 위치들(x,y)에 걸쳐 누적함에 의하여 각 영역에서 발견된 불연속에 대한 유효성을 판정하는 블록(25)으로 공급한다. 만일 결과적인 합계가 소정의 임계값보다 크면 블록(25)은 각 예측프레임(P) 영역이 유효성있는 정도의 불연속을 포함하는 것으로 결정하고, 그렇지 않으면 각 영역은 유효성있는 불연속을 포함하지 않는 것으로 결정된다.
도 2 내의 분류기(23)는 방향성 고역통과필터에 의하여 출력된 수평 및 수직 불연속값들(FH(x,y), FV(x,y))을 수신하고, 각 해당영역에 대해 상기 영역을 영역내의 불연속 구조에 따라 여섯 개의 각기 다른 부류들로 분류하기 위하여 이러한 값들을 사용한다. 도 4에는 각 부류들 a 내지 f의 요소들에 대한 일반적인 표현들을 도시하였다. 예측프레임 영역이 이 영역 내에서 휘도값이 점진적으로 변화하거나 전혀 변화하지 않는 경우와 같이 어떠한 실질적인 불연속을 나타내지 않을 경우 그 예측프레임 영역은 부류(a)에 속하는 것으로 분류된다. 부류(b)의 일반적인 요소는 수평 모서리(horizontal edge)와 같이 수평 지향의 불연속들을 나타내는 예측프레임 영역이다. 부류(c)는 수직 모서리와 같이 수직 지향의 불연속들을 갖는 예측프레임 영역을 나타낸다. 부류(d)와 부류(e)는 대각 모서리와 같은 대각 지향의 불연속들을 갖는 영역들을 나타낸다. 부류(d)는 대각 우편향적 불연속들을 포함하며, 부류(e)는 대각 좌편향적 불연속들을 포함한다. 마지막으로, 부류(f)의 일반적인 요소는 직물형(texture)과 같이 방향 지향성이 없는 불연속들을 포함하는 예측프레임 영역이다.
각 방향성 불연속 부류들 b 내지 e는 영역내 각 불연속들의 위치를 기초로 서브부류들(subclasses)로 분할된다. 부류(b)를 일예로써 선택하면, 첫 번 째 서브부류(b1)는 영역의 상부 절반에서의 수평 불연속들을 포함하며, 서브부류(b2)는 영역의 중간에서의 수평 불연속들을 포함한다. 서브부류(b3)는 영역의 하부 절반에 위치하는 수평 불연속들을 포함한다.
유사하게, 부류들(c,d,e)의 경우, 이러한 부류들의 서브분할(subdivision)은 도 4로부터 명백하게 알 수 있는 바와 같이 각각 불연속들의 수직 및 대각 위치에 의존한다. 여기서, 부류들의 수는 당연히 선택가능형 영역엔코더들(271 ~ 27n)과 예측프레임 영역들의 압축에 사용되는 해당 채택 코딩방법들의 수에 따라 변동될 수 있다는 것이 주목된다. 또한, 이 영역 내에서 많은 다양한 알고리즘들이 필터 출력값을 기초로 각 영역들 분류하는데 사용될 수 있다. 이러한 알고리즘들의 예는 예를들어 엠. 케이. 제인(M. K. Jain)에 의한 "디지털 이미지 프로세싱(FUNDAMENTALS OF DIGITAL IMAGE PROCESSING)", 1989년 프렌티스홀 인터내셔널(Prentice Hall International) 출판, pp. 347~357로부터 알려진바 있다.
도 2의 블록(25)에 의하여 유효하다고 결정된 각 예측프레임(P) 영역에 대한 이러한 분류를 기초로, 분류기(23)는 예측오차 프레임(E)에 대하여 해당 영역을 적응적으로 엔코딩하기 위하여 예를들어 적절한 벡터양자화기(vector quantizer)와 같이 선택가능형 영역엔코더들(271~27n) 중에서 적절한 영역엔코더를 선택한다. 본 특정 실시예에서는 각 부류 또는 서브부류에 대하여 각 부류 또는 서브부류의 요소들에 대한 통계적인 특성들에 맞는 전용의 벡터양자화기가 구비된다. 이러한 벡터 양자화는 다소의 정보누락을 가지고 신호들을 압축하는 기 확립되어 있는 기법이다. 각 벡터 양자화기(VQ1~VQn)는 예측오차 프레임(En) 영역을 그 특정 벡터 양자화기에 속해있는 코드북(codebook) 내에서 발견된 그것에 가장 근사한 값으로 대체한다. 상기 코드북은 각 부류 또는 서브부류내에서 가장 발생하기 쉬운 몇몇 표현들의 집합이며, 벡터 양자화기는 각 벡터 양자화기에 속해있는 코드북 내에서 가장 부합(matching)하는 코드벡터로 인덱스(index)를 출력하기에 충분하다.
본 발명에 따르면, 예측오차 프레임 영역들의 분류는 해당 예측프레임 영역을 기초로 한다. 예측프레임은 비디오 디코더 내에서도 사용가능하므로 분류정보가 코딩 비디오 데이터에 포함될 필요가 없다. 반면에 이러한 분류정보는 엔코더에 의하여 수행된 분류와 유사한 분류동작을 수행함으로써 비디오 디코더에 의하여 복구될 수 있다.
여기서, 예측오차 프레임 영역들에 대하여 예를들어 직교변환 기법들(orthogonal transform techniques(DCT, KLT)) 또는 매칭 추적 기법들(matching pursuit techniques)과 같은 다른 압축방법들이 채택될 수 있다는 것이 주목된다.
다음에서는 본 발명에 따른 모션 보상 비디오 엔코더의 다른 실시예를 논의하기로 한다. 본 실시예는 다음을 제외하고 상술한 첫 번째 실시예의 비디오 엔코더와 유사하다.
도 5에는 본 발명에 따른 두 번째 실시예에 채택된 각 선택가능형 영역엔코더들(271~27n)의 실시예를 나타내었다. 도 5에 도시한 바와 같이, 본 실시예에 따르면, 각 선택가능형 영역엔코더들(271~27n)은 복수의 각기 다른 코딩방법들을 수행하는 복수의 엔코더들(531~53k)을 포함한다. 또한, 각 선택가능형 영역엔코더들(271~27n)은 복수의 엔코더들(531~53k) 중에서 각 예측오차 프레임 영역을 엔코딩하기 위한 적절한 기준에 따라 가장 부합하는 엔코더를 선택하는 선택제어기(51)를 포함한다. 본 발명의 범위를 한정하지 않는 본 특정 실시예에 따른 선택제어기(51)는 분류기(23)에 의하여 선택된 선택가능형 영역엔코더내에서 어느 코딩방법이 각 예측오차 프레임(E) 영역을 가장 낮은 코딩오류로써 코딩할 수 있도록 하는지를 결정한다. 이러한 목적을 위하여, 선택제어기(51)는 분류기(23)에 의하여 선택된 선택가능형 영역엔코더에 대하여 각 가용 엔코더들(531~53k)에 의해 유발되는 코딩오류를 평가할 수 있도록 하기 위하여 예측오차 프레임(E)을 수신한다. 만일 선택제어기(51)가 엔코더들(531~53k) 중에서 만족하게 수행할 하나이상의 엔코더를 발견하면, 상기 선택제어기(51)는 이러한 엔코더들중에서 가장 적은 비트로써 만족할만한 성능을 달성하는 엔코더를 선별한다. 선택제어기(51)는 선택된 엔코더가 엔코딩될 각 예측오차 프레임 영역을 엔코딩하도록 활성화하기 위하여 선택기(54)로 선택정보를 출력한다. 또한, 선택제어기(51)에 의하여 출력된 선택정보는 선택정보를 엔트로피 엔코딩(entropy encoding)하는 엔트로피 엔코더(52)로 공급된다. 또한, 상기 선택정보는 엔코더들(531~53k) 중에서 선택된 엔코더를 엔트로피 엔코딩된 선택정보를 멀티플렉싱하는 멀티플렉서(56)의 입력들 중의 하나와 접속하는 선택기(55)를 제어한다. 멀티플렉서(56)의 출력은 각 선택가능형 영역엔코더들(271~27n)중 한 엔코더의 출력이 된다.
본 발명에 따른 비디오 엔코더의 이러한 실시예에서, 도 2에 도시한 분류기(23)는 엔코딩될 각 예측오차 프레임 영역에 해당하는 각 예측프레임내에서 이미지 밝기값의 변동을 기초로 정방형의 예측프레임 영역들을 분류한다. 본 특정 실시예에서 계산되는 이미지 밝기값의 변동(varb)은 불연속 분석기(22)에 의하여 다음:
과 같이 계산되며, 여기서 p(i,j)는 각 예측프레임 영역내 위치(i,j)에서 픽셀의 밝기값이고, M은 정방형 영역의 각 행과 열이며, q는 각 예측프레임 영역내 픽셀들에 대한 밝기값의 평균이다.
다음으로, 분연속성 분석기(22)는 각 예측프레임 영역내 소정의 복수의 픽셀 클러스터들(clusters)에 대하여 클러스터 활동도 측정(cluster activity measure: CAM)을 계산한다. 각 픽셀 클러스터는 분류기(23)에 의하여 구별될 수 있는 특정한 하나의 부류에 해당한다. 도 6에는 예로써 분류기(23)에 의하여 구별될 수 있는 13개의 각기 다른 특성 부류들에 해당되는 13개의 각기 다른 픽셀 클러스터들을 나타내었다. 각 클러스터들(1~13)에 속하는 픽셀들은 도 6에서 어둡게 나타내었다.
본 특정 실시예에서는 각 클러스터내에서 클러스터 활동도 측정(CAM)이 다음과 같이 계산된다.
각 픽셀영역내 위치(i,j)상의 모든 픽셀에 대하여 픽셀(i,j)을 포함하는 네 2x2 서브블록들을 분석함으로써 픽셀 활동도 측정(pixel activity measure: pam) pam(i,j)이 계산된다. 픽셀(i,j)에 대한 이러한 서브블록들의 위치는 도 7에 나타내었다. 다음으로, 이러한 각 서브블록들내 픽셀값들의 변동이 계산된다. 이러한 변동들은 varlu, varru, varll 및 varrl로써 나타내었다. 만일 서브블록의 픽셀들이 각 영역의 외부에 존재하면, 이를테면 위치(i,j)가 영역의 경계 픽셀(boundary pixel)인 경우, 서브블록의 변동은 0으로 간주된다. 다음으로 위치(i,j)에서의 픽셀 활동도 측정은:
pam(i,j) = max(varlu, varll, varru 및 varrl)
과 같다. 다음으로 각 클러스터(a)에 대한 클러스터 활동도 측정 cam(a)은:
과 같이 계산될 수 있다. 이 수학식에서 Ca는 클러스터(a)에 속하는 픽셀 집합을 나타낸다. 클러스터 활동도 측정은 클러스터(a)의 정규화 계수(w(a))가 곱해진 클러스터 내의 모든 픽셀들에 대한 픽셀 활동도 측정의 합이다. 도 6에 나타낸 클러스터들(a=1 내지 a=13)에 대하여, w(a) 값은 다음:
본 특정 실시예에서, 분류기(23)는 14개의 부류들을 구별하고, 엔코딩될 영역이 각 예측프레임 영역내의 이미지 밝기에 대한 주요한 불연속들의 위치에 따라 이러한 14 부류들중 하나로써 분류된다. 13 부류들은 각각 도 6에 도시한 13 클러스터들중의 하나에 해당한다. 14 번째 부류는 도 6에 나타내지 않았고, 어떠한 유효 불연속들도 포함하지 않는 영역들로 할당된다.
엔코딩될 예측오차 프레임 영역에 해당하는 예측프레임 영역의 분류는 다음과 같이 수행될 수 있다. 만일 수학식 1에 따라 계산된 영역의 변동이 소정의 임계값보다 작으면, 상기 영역은 유효 불연속을 포함하지 않는다고 간주되고, 분류기(23)는 부류(14)를 이 영역으로 할당한다. 반면에, 수학식 1에 따른 영역의 변동이 상기 소정의 임계값 이상이면 클러스터 활동도 측정 cam(a)이 최대가 되는 클러스터(a)가 발견되며 이는 주요 불연속들이 클러스터(a)내에 존재한다는 것을 표시한다. 다음으로 분류기(23)는 부류(a)를 이 영역으로 할당한다.
이러한 분류작업에 따라, 분류기(23)는 선택가능형 엔코더들(271~27n) 중에서 각 부류에 해당하는 하나의 엔코더를 선택한다.
본 특정 실시예에 따르면, 각 선택가능형 엔코더들(271~27n)은 각각 도 6에 도시한 13 개의 픽셀 클러스터들 중의 하나에 맞도록 이루어진 13 개 엔코더들의 집합으로부터 하나의 엔코더(531~53k) 서브집합을 포함한다. 특히 이러한 13 개 엔코더들 각각은 그것에 결합된 픽셀 클러스터들에 대하여 이차원적 이산 코사인변환을 수행하도록 되어 있다. 각 선택가능형 영역엔코더들(271~27n)에 대한 복수의 엔코더들(531~53k)은 각 선택가능형 영역엔코더의 부류에 맞는 각 엔코더를 포함하며, 또한 각 선택가능형 영역엔코더의 부류와 관련된 부류들에 맞는 엔코더들을 포함한다. 각 영역에 대하여, 다른 모든 부류들은 관련 부류들로써 간주된다. 다음으로, 각 선택가능형 영역엔코더들은 동일한 엔코더들(531~53k)의 집합을 포함한다. 개괄적으로, 특정 부류에 대하여 한 영역을 각기 다른 부류로 분류하는 것이 각 부류로 분류하는 것보다 양호할 확률이 무시할 만한 수준이라면 각기 다른 부류는 관련 부류가 된다. 본 특정 실시예에서는 부류(1)와 관련된 부류들은 부류들(7,9,13)인 것으로 발견되었다. 부류(2)와 관련된 부류들은 부류들(1,3,13)이다. 부류(7)와 관련된 부류들은 부류들(1,4,13)이다. 부류(13)와 관련된 부류들은 다른 모든 부류들이다. 다른 모든 부류들에 대한 관련 부류들은 대칭성을 고려하여 단순하게 적용된다.
본 발명의 본 실시예에 따른 비디오 엔코더는, 분류기(23)에 의해 결정된 부류에 해당하는 엔코더가 아닌 엔코더가 이 부류에 해당하는 엔코더보다 양호하게 수행할 확률은 매우 낮지만, 이 부류에 해당하는 엔코더가 최상으로 수행할 가능성이 높아 비디오 디코더로 전송되는 코딩방법 선택정보의 양이 적고 매우 적은 비트들만으로 표현될 수 있다는 장점이 있다. 이러한 선택정보의 엔코딩은 그렇게 알려진 방법으로 각 선택가능형 영역엔코더에 대한 각 선택 확률들을 기초로 엔트로피 엔코더(52)에 의하여 수행될 수 있다.
개괄적으로, 관련 부류들은 해당 예측프레임 영역들을 기초로 한 예측오차 프레임의 분류상에 내재된 불확실성을 고려하여 선택된다. 본 실시예에서는, 각 관련부류들이 선택가능형 영역엔코더들중 하나의 부류에 해당하지만 관련 부류들을 제공하기 위한 또 다른 확률들이 존재한다는 것이 주목된다. 예를들어, 특정 부류는 어떤 다른 부류와 동일하지 않은 관련 부류들을 가질 수도 있다.
도 8에는 본 발명에 따른 비디오 디코더의 첫 번째 실시예를 도시하였다. 상기 비디오 디코더는 비디오 엔코더에서와 동일한 방법으로 예측프레임(P)을 발생하도록 되어 있다. 또한, 상기 비디오 디코더는 비디오 엔코더에 의해 예측오차 프레임을 엔코딩하는데 사용된 예측프레임(P)으로부터 동일한 정보를 추출하며, 이러한 추출정보를 수신된 데이터를 디코딩하고 예측오차 프레임(E*)을 복구하는데 사용한다.
특히, 도 8의 디코더는 비디오엔코더로부터의 코딩된 비디오 데이터를 수신하고 수신된 데이터를 예측오차 데이터와 모션벡터 데이터로 디멀티플렉싱하는 디멀티플렉서(31)를 포함한다. 블록(32)은 디멀티플렉싱된 예측오차 데이터를 수신하고 수신된 코딩 예측오차 데이터로부터 예측오차 프레임(E*)을 복구하는 예측오차 디코더를 나타낸다. 참조번호(33)는 예측프레임(P(x,y))과 복구 예측오차 프레임(E*)으로부터 복구 비디오프레임(I*)을 계산하는 수단을 표시한다. 복구 비디오프레임(I*)은 프레임메모리(34)내에 저장되고, 계속해서 비디오디코더에 의하여 디코딩된 비디오데이터로써 출력된다. 참조번호(35)는 프레임메모리(34) 내에 저장되고 기준프레임(R)으로써 작용하는 비디오 프레임들로부터, 비디오엔코더로부터 수신된 모션벡터들을 기초로 하고 현재 프레임(I)내의 평가 픽셀 변이를 기술하는 예측프레임을 구성하기 위한 모션보상 예측기를 표시한다. MC 예측기(35)는 기준프레임(R)의 이미지 밝기값과 이러한 평가 픽셀 변위들을 사용하여 예측프레임(P(x,y))을 구한다.
픽셀오차 디코더932)는 비디오엔코더로부터 전송된 코딩 예측 오차데이터 뿐만 아니라 MC 예측기(365)로부터의 예측프레임(P)과 비디오엔코더에 의하여 전송된 모션벡터들을 수신하여 상기 예측프레임(P)과 상기 모션벡터들을 기초로 예측오차 디코딩을 수행한다. 이는 도 8에서 점선으로 나타내었다.
예측오차 디코더(32)는 예측프레임(P)과 모션벡터들을 기초로 어느 예측프레임 프레임(E) 영역들이 전송될지를 예측 결정할 수 있고, 여기서 예측오차 프레임(E)내 의 유효정보는 모션 활동도가 유효한 위치들에서 대략 예측프레임(P)의 외곽선을 따라 집중된다는 점에서 장점이 있으며, 비디오디코더의 특성을 기초로 이러한 유효 예측오차 프레임 영역만이 엔코딩된다. MC 예측기(35)에 의하여 발생된 예측프레임(P)은 MC 예측기(7)에 의하여 비디오엔코더내에서 발생된 예측프레임(P)과 일치하기 때문에, 본 발명의 본 실시예에 따른 비디오디코더는 유효예측오차 프레임 영역들의 위치에 관한 정보가 필요없이 예측오차 디코딩을 수행할 수 있다. 더욱이 또는 대안적으로, 예측오차 디코더(32)는 비디오엔코더가 엔코딩될 예측오차 프레임 영역을 분류하기 위하여 예측프레임(P)을 사용하였던 것과 동일한 방법으로 예측프레임(P)으로부터 각 엔코딩 예측프레임 영역들에 관한 분류정보를 복구할 수 있기 때문에, 상기 디코더는 이러한 분류정보를 수신할 필요없이 적응적 디코딩을 수행할 수 있다.
도 9에는 도 8의 예측오차 디코더(32)의 상세 블록도를 도시하였다. 도 9에서, 참조번호(41)는 MC 예측기(35)에 의하여 제공된 예측프레임(P)을 복수의 영역들로 분할하는 수단을 표시한다. 예측프레임(P)의 분할은 비디오엔코더에서와 동일한 방법으로 수행된다. 다시 말하면, 프레임분할 수단(41)의 기능은 도 1의 예측오류 엔코더내 프레임 분할수단(21)의 기능과 완전히 일치한다.
참조번호(42)는 불연속 분석기를 표시하며, 그 기능은 비디오엔코더내에 구비된 불연속 분석기(22)의 기능과 일치한다. 블록(22)과 관련된 각 설명들이 블록(42)에 대해서도 적용되기 때문에 여기서는 반복하지 않기로 한다. 도 9에서 블록(44)은 어느 예측오차 프레임 영역이 엔코딩되고 압축 예측오차 데이터내에 저장되어야 할지를 결정하는 결정수단을 나타낸다. 이러한 목적으로, 결정수단(44)은 도 2의 블록(25)에 의하여 수행된 유효 영역들에 대한 판정 및 결정과 유사한 동작을 수행한다. 만일 비디오디코더가 상술한 비디오엔코더의 첫 번째 실시예와 협동하도록 설계되면, 블록(44)은 블록(41)에 의하여 제공된 각 예측프레임 영역의 각 픽셀위치(x,y)에 대한 수평 차이들(FH(x,y)) 및 수직 차이들(FV(x,y))을 수신하고, 각 영역의 모든 픽셀위치들(x,y)에 걸쳐 FV(x,y)와 FH(x,y)의 절대값을 누적함에 의하여 불연속의 유효성을 판정한다. 도 2의 블록(25)에 의하여 수행된 판정에 따라, 블록(44)은 결과적인 합이 블록(25)에 의하여 사용된 소정의 임계값에 해당하는 소정의 값보다 임계값보다 크면 각 예측프레임(P) 영역이 유효성있는 정도의 불연속을 포함한 것으로 결정한다. 그렇지 않으면, 각 영역은 블록(44)에 의하여 유효한 불연속들을 포함하지 않는다고 결정된다.
블록(44)은 또한 비디오엔코더에 의하여 전송된 모션벡터들을 수신한다. 이들을 기초로 블록(44)은 각 영역에 대한 모션벡터들의 크기를 계산하고 가장 큰 값을 해당동작에 대하여 도 2의 블록(25)에 의하여 사용된 상기 제2 임계값에 해당하는 임계값과 비교함으로써 각 영역에 대한 모션활동 정도를 판정한다. 블록(25)은 블록(25)에 의하여 사용된 조건들과 동일한 조건을 기초로 예측프레임(Pn) 영역이 유효하다고 결정하며, 즉, 블록(25)은 이 영역 내에서 불연속정도와 모션활동도가 모두 유효한 것으로 발견되면 각 영역이 유효한 것으로 결정한다.
블록(44)은 수신된 예측오차 데이터의 부분들을 해당 영역들로 할당하기 위하여 유효 예측오차 프레임 영역들을 출력하기 위해 비디오엔코더내의 블록(25)에 의해 채택된 소정의 시퀀스 규칙에 해당하는 소정의 시퀀스 규칙을 사용한다. 특히, 본 특정 실시예에서 블록(44)은 블록(425)의 분할 동작에 따른 모든 영역들을 비디오엔코더내의 블록(25)에 의하여 배치된 영역배열과 유사한 영역배열로 배치하고 유효 영역들을 검색하기 위하여 이 배열을 한 라인씩 검색한다. 다음으로 하나의 예측오차 프레임 영역에 해당하는 예측오차 데이터의 수신된 각 부분은 그 유효 영역으로 할당되며, 상기 배열내의 순서는 각 부분의 수신 순서에 해당한다. 이러한 동작의 일예를 도 10a와 도 10b에 도시하였다. 도 10a에는 비디오엔코더내의 블록(21)과 비디오디코더내의 블록(41)에 의하여 수행된 분할동작에 따른 영역들의 배열(105)을 나타내었다. 상기 배열은 네 열(0~3)과 네 라인(0~3)으로 구성된다. 상기 배열(105)의 빗금친 엘리먼트들은 유효하다고 결정된 영역들을 나타내며 그렇지 않은 영역들은 유효하지 않다고 결정된 영역들을 나타낸다.
도 10b에는 비디오엔코더로부터 수신된 예측오차 데이터 스트림을 나타내었다. 이 스트림은 부분들(101~104)로 구성되며, 각 부분은 해당 예측오차 프레임 영역에 대한 예측오차 데이터를 포함한다. 블록(44)에 의하여 배열(105)상에서 한 라인씩 수행된 분할동작은 본 예에서 다음과 같은 순서의 유효 배열들: (0,1); (1,2); (2,3); (3,2)을 초래한다. 이러한 순서는 예측오차 데이터 부분들의 순서에 해당한다. 이러한 해당 순서들을 기초로 블록(44)은 예측오차 데이터에 대한 각 수신부분(101~104)을 그 해당 영역들로 할당할 수 있다. t는 시간축을 나타낸다.
도 9에서 참조번호(43)는 블록(42)으로부터 출력된 불연속 정보를 수신하는 분류기를 표시한다. 본 실시예에서 분류기(43)는 방향성 고역통과필터(42)에 의하여 출력된 수직 및 수평 불연속값(FV(x,y), FH(x,y))을 수신하고, 비디오엔코더내에 구비된 분류기(23)에 의하여 수행된 동작과 유사한 동작을 수행한다. 따라서, 블록(23)에 의하여 수행된 것과 유사한 블록(43)에 의해 수행된 분류작업에 관한 설명은 여기서 반복하지 않기로 한다.
참조번호(45)는 분류기(43)에 의하여 제어되어 그것에 의하여 결정된 특성 부류에 따라 블록(44)에 의해 출력된 압축 예측오차 데이터의 각 부분에 대하여 적절한 디코더를 선택하는 선택기를 표시한다. 이러한 방법으로 적응적 영역디코더(48)는 각 예측프레임(Pn) 영역의 부류에 따라 비디오엔코더내의 블록(26)에 의하여 수행된 코딩동작에 대한 역의 동작을 수행할 수 있다. 도 9의 적응적 영역디코더(48)의 선택가능형 영역디코더들(471~47n)은 비디오엔코더내의 선택가능형 영역엔코더들(271~27n)중의 하나에 해당한다. 만일 벡터 양자화가 사용된다면, 상기 디코더는 각 디코더(471~47n)에 의하여 디코딩될 영역들의 부류에 맞는 코드북을 포함하며, 각 디코더들(471~47n)은 그 입력단에서 해당 영역엔코더에 의하여 사용된 코드북과 동일한 코드북으로 인덱스를 수신하게 되고, 수신 인덱스에 해당하는 코드북으로부터 벡터를 읽어낸다. 물론, 예측오차 엔코더와 디코더는 추가적으로 또는 벡터 양자화에 대한 대안으로써 예를들어 직교변환(DCT,KLT) 또는 매칭 추적 기법(matching pursuit techniques)과 같은 다른 예측오차 엔코딩 및 디코딩 구조를 통합할 수도 있다.
도 9내에서 참조번호(46)는 선택된 영역디코더의 출력을 도 9의 예측오차 디코딩 블록(32)의 출력으로 접속하는 선택기를 표시한다. 다음으로 각 디코딩 영역들은 예측오차 프레임메모리(미도시)내 블록(44)에 의하여 유효하다고 결정된 영역들의 각 위치들상에 기록되고, 그리하여 예측오차 프레임(E*(x,y))을 복구할 수 있다.
도 11에는 본 발명의 두 번째 실시예에 따른 비디오디코더의 선택가능형 영역엔코더를 도시하였다. 두 번째 실시예에 따른 비디오디코더는 상술한 두 번째 실시예에 따른 비디오엔코더와 협동하도록 되어 있다. 두 번째 실시예에 따른 비디오디코더는 두 번째 실시예에 따른 불연속 분석기(42)와 분류기(43)가 두 번째 실시예에 따른 비디오엔코더의 불연속 분석기(22)와 분류기(23)와 각각 유사하게 동작한다는 것을 제외하고 첫 번째 실시예에 따른 비디오디코더와 유사하므로, 이러한 블록들의 구조 및 동작에 대한 설명은 여기서 반복하지 않기로 한다. 또한, 두 번째 실시예에 따른 선택가능형 영역디코더들(471~47n)은 도 11에 도시한 첫 번째 실시예의 선택가능형 디코더들과 구별된다.
도 11에 도시한 바와 같이, 두 번째 실시예에 따른 비디오디코더내의 각 선택가능형 디코더들(471~47n)은 두 번째 실시예의 비디오엔코더로부터 수신된 압축 예측오차 데이터를 엔코딩 예측오차 데이터 및 엔트로피 엔코딩 코딩방법 선택정보로 디멀티플렉싱하는 디멀티플렉서(61)를 포함한다. 참조번호(62)는 엔트로피 엔코딩 코딩방법 선택정보를 수신하는 엔트로피 디코더를 표시한다. 참조번호들(631~63k)은 각 선택가능형 영역디코더에 해당하는 선택가능형 영역엔코더내의 각 엔코더들(531~53k)중의 하나에 대응되는 복수의 디코더들을 표시한다. 참조번호들(64,65)은 엔트로피 디코더(62)의 출력에 의하여 제어되어 엔코딩 예측오차 데이터를 선택된 복수의 디코더(631~63k)로 공급하고 선택된 디코더의 출력을 각 선택가능형 디코더의 출력으로써 접속하는 선택기들을 표시한다.
본 발명에 따른 비디오 데이터 엔코더 및 디코더와, 본 발명에 따른 비디오데이터의 엔코딩 및 디코딩 방법은 다양한 종류의 애플리케이션들(applications)에 사용될 수 있다는 장점이 있다. 이러한 다양한 종류의 애플리케이션들 중의 하나는 비디오 데이터를 전송하는 시스템으로, 상기 시스템은 본 발명에 따른 엔코더, 엔코딩 비디오 데이터를 전송하는 수단, 및 전송된 비디오데이터를 수신하여 디코딩 비디오데이터를 출력하는 본 발명에 따른 디코더를 포함한다.
장점이 있는 또 다른 애플리케이션은 비디오 데이터를 저장하는 시스템으로, 상기 시스템은 비디오데이터를 엔코딩하는 본 발명에 따른 엔코더, 엔코딩 비디오 데이터를 저장하는 수단, 및 상기 저장수단으로부터의 엔코딩 비디오데이터를 복구하고 상기 복구된 비디오데이터를 디코딩하여 출력하는 수단을 포함한다.
본 발명은 각기 다른 엔코딩될 프레임 영역들에 대하여 각기 다른 코딩모드들을 조합하여 사용될 수 있다는 장점이 있다. 만일 어떤 프레임 영역들은 내부코딩(intra coding)되고 다른 프레임 영역들은 모션보상 엔코딩되게 되는 경우, 본 발명은 이러한 모션보상 엔코딩 영역들에 사용될 수 있으며, 비디오프레임의 모션보상이라는 용어는 모든 프레임 영역들이 MC 엔코딩되는 경우로 한정되는 것으로 이해되지 않게 된다.
본 발명은 종래 기술의 코딩모드들과 함께 사용되는 비디오 코덱 내에서 하나이상의 코딩모드들에 대한 기초가 될 수 있다는 것이 당업자에 있어 명백하다. 상기 엔코더는 본 발명을 기초로 코딩영역들 및 코딩구조들에 대한 결정이 소망의 결과를 얻을 수 없을 경우 종래기술의 모드들 중의 하나를 사용할 것인지를 결정할 수 있다. 예를들어, 상기 엔코더는 코딩영역들의 선택 및 코딩 모드 선택을 무시하고 이러한 결정을 디코더로 전송할 수 있다. 이는 그렇지 않은 경우 필요하지 않은 용량을 사용하는 것이 요구될 수도 있지만, 결과적인 코딩 결정이 확실히 더 양호하다면 정당화될 수 있다.

Claims (35)

  1. 비디오 데이터의 모션보상 엔코딩을 수행하는 엔코더에 있어서,
    비디오프레임 픽셀들의 장면 모션 변위를 기술하는 모션벡터들을 평가하는 수단(8);
    제1 비디오 데이터 프레임(R)과 상기 모션벡터들을 기초로 비디오 데이터 프레임(P)을 예측하는 수단(7);
    상기 예측 비디오 데이터 프레임(P)과 제2 비디오 데이터 프레임(I)을 기초로 예측오차 프레임(E)을 계산하는 수단(1);
    상기 예측오차 프레임(E)을 엔코딩하고 예측오차 데이터를 구하는 수단(2); 및
    상기 모션벡터들과 상기 예측오차 데이터를 디코더로 전송하는 수단(4);을 포함하고,
    상기 예측오차 프레임(E) 엔코딩수단(2)은,
    상기 예측오차 프레임을 복수의 영역들로 분할하는 수단(24); 및
    상기 예측오차 프레임(E)내에서 엔코딩될 영역들의 결정 동작 및 상기 예측오차 프레임(E)의 엔코딩될 각 영역에 대하여 적어도 하나의 코딩구조를 결정하는 동작들 중에서 적어도 하나의 동작을 수행하는 결정수단;을 포함하며,
    상기 엔코더는,
    상기 결정수단의 적어도 하나의 결정 동작에 따라 상기 예측오차 프레임(E)의 엔코딩될 영역들을 엔코딩하는 영역 엔코딩 수단(26);을 더 포함하고,
    상기 결정수단은 상기 예측 비디오 데이터 프레임(P)의 특성을 분석하고 상기 분석을 기초로 적어도 하나의 상기 결정동작을 수행하도록 이루어진 것을 특징으로 하는 엔코더.
  2. 제1항에 있어서, 상기 결정수단은 상기 예측오차 프레임의 각 영역에 대하여 예측 비디오데이터 프레임(P)의 해당영역내 이미지 밝기의 불연속을 분석하는 수단(22)을 포함하고, 상기 불연속 분석을 기초로 적어도 하나의 상기 동작을 수행하도록 이루어진 것을 특징으로 하는 엔코더.
  3. 제2항에 있어서, 상기 불연속 분석수단(22)은
    예측 비디오데이터 프레임(P)의 각 영역내에서 수직 방향에서의 유한적 차이들(FH)을 계산하는 선형필터와 수평 방향에서의 유한적 차이들(FV)을 계산하는 선형필터; 및
    두 필터 출력의 절대값들의 합을 제1 소정 임계값과 비교하는 수단;을 포함하고,
    상기 결정수단은 상기 예측 비디오 데이터 프레임(P)의 해당 영역에 대하여 계산된 절대값들의 합이 상기 제1 임계값을 초과하지 않는 경우 예측오차 프레임(E) 영역이 엔코딩되지 않는 것으로 결정하도록 이루어진 것을 특징으로 하는 엔코더.
  4. 제1항 내지 제3항중 어느 한 항에 있어서,
    상기 영역 엔코딩 수단(26)은 각기 다른 영역엔코더들중에서 엔코딩되어지는 것으로 결정된 각 영역에 대하여 개별적으로 영역엔코더(271,...,27n)를 선택하는 선택수단(28,29)을 포함하는 것을 특징으로 하는 엔코더.
  5. 제4항에 있어서, 상기 결정수단은 상기 예측비디오 데이터 프레임(P)에 대한 해당 영역의 밝기 불연속 특성들에 따라 특성 부류군중에서 하나의 군을 상기 예측오차 프레임(E)의 엔코딩될 각 영역으로 할당하는 분류수단(23)을 포함하고,
    상기 선택수단(28,29)은 각 영역으로 할당된 부류에 따라 엔코딩될 각 영역에 대하여 영역엔코더(271,...,27n)를 선택하도록 이루어진 것을 특징으로 하는 엔코더.
  6. 제5항에 있어서, 상기 분류수단(23)은 상기 예측오차 프레임(E)의 엔코딩될 영역에 해당하는 각 예측 비디오 데이터 프레임 영역(P)내에서 수직 방향에서의 유한적 차이들(FH)과 수평 방향에서의 유한적 차이들(FV)을 계산하는 선형 방향성 필터들(22)에 의하여 제공된 출력을 기초로 분류작업을 수행하도록 이루어진 것을 특징으로 하는 엔코더.
  7. 제5항에 있어서, 상기 분류수단(23)은 상기 예측오차 프레임(E)의 엔코딩될 영역에 해당하는 각 예측 비디오 데이터 프레임(P) 영역의 각기 다른 픽셀 클러스터들 내의 각 밝기 불연속 집중도를 기초로 분류작업을 수행하도록 이루어진 것을 특징으로 하는 엔코더.
  8. 제6항 또는 제7항에 있어서, 상기 부류들의 군은 불연속 없음, 수평 불연속들, 수직 불연속들, 대각 좌편향적 불연속들, 대각 우편향적 불연속들, 무방향성 불연속들중의 적어도 하나를 포함하는 것을 특징으로 하는 엔코더.
  9. 제1항 내지 제8항중 어느 한 항에 있어서, 상기 영역 엔코딩수단(26)은 선택된 직교변환, 벡터양자화 또는 매칭추적구조를 사용함으로써 상기 예측오차 데이터 프레임(E)의 엔코딩될 각 영역의 데이터를 엔코딩하도록 이루어진 것을 특징으로 하는 엔코더.
  10. 제4항 내지 제9항중 어느 한 항에 있어서, 각 영역엔코더(271,...,27n)는,
    복수의 코딩방법들(531~53k);
    각 영역엔코더(271,...,27n)에 대하여 구비되어 각 복수의 코딩방법들(531~53k)에서 코딩방법들의 성능과 관련된 기준에 따라 코딩방법을 선택하는 코딩방법 선택수단(51,54,55); 및
    상기 코딩방법 선택수단(51,54,55)에 의한 선택을 비디오 디코더로 전송하는 수단(52,56);을 포함하도록 이루어진 것을 특징으로 하는 엔코더.
  11. 제10항에 있어서, 상기 복수의 코딩방법들(531~53k)은 각기 다른 영역엔코더들(271,...,27n)에 대하여 구별되는 것을 특징으로 하는 엔코더.
  12. 제1항 내지 제11항중 어느 한 항에 있어서,
    상기 예측오차 프레임(E)을 디코딩하는 예측오차 디코더(3); 및
    상기 예측 비디오데이터 프레임(P)과 상기 디코딩 예측오차 프레임(E*)을 기초로 상기 제1 비디오 데이터 프레임(R)을 계산하는 수단(5);을 포함하는 것을 특징으로 하는 엔코더.
  13. 제1항 내지 제12항중 어느 한 항에 있어서,
    상기 결정수단(25)은 상기 각 예측 비디오데이터 프레임(P) 영역에 대하여 해당 모션벡터들의 크기 및/또는 방향을 계산하는 수단을 포함하고,
    상기 결정수단(22,25)은 계산된 모션벡터들의 크기 및/또는 방향을 기초로 상기 결정을 수행하도록 이루어진 것을 특징으로 하는 엔코더.
  14. 제13항에 있어서,
    상기 결정수단은 그 영역에 해당하는 상기 모션벡터들의 상기 계산된 크기가 소정의 제2 임계값을 초과하지 않을 경우, 예측오차 프레임(E) 영역은 엔코딩되지 않는 것으로 결정하도록 이루어진 것을 특징으로 하는 엔코더.
  15. 모션보상 엔코딩된 비디오 데이터를 디코딩하는 디코더에 있어서,
    비디오 데이터 프레임(R)을 저장하는 수단(34);
    상기 비디오 데이터 프레임(R)과 수신된 모션벡터 데이터를 기초로 비디오 데이터 프레임(P)을 예측하는 수단(34);
    수신된 예측오차 데이터를 디코딩하여 예측 오차 프레임(E*)을 구하는 수단(32);
    상기 예측 비디오데이터 프레임(P)과 상기 디코딩 예측오차 프레임(E*)을 기초로 갱신된 비디오 데이터 프레임(I*)을 계산하여 출력하고 갱신된 비디오 데이터 프레임(I*)을 상기 저장수단에 저장하는 수단(33);을 포함하고,
    상기 수신된 예측오차 데이터를 디코딩하는 수단(32)은,
    수신된 예측오차 데이터 내에서 엔코딩되어 저장된 상기 예측오차 프레임(E) 영역들의 결정 동작 및 수신된 예측오차 데이터 내에서 엔코딩되어 저장된 각 영역에 대하여 적어도 하나이상의 코딩구조를 결정하는 동작들 중에서 적어도 하나를 수행하는 결정수단; 및
    예측오차 프레임을 구하기 위하여 상기 결정수단에 의하여 적어도 하나의 결정에 따라 상기 수신된 예측오차 데이터를 디코딩하는 영역 디코딩 수단(48);을 포함하고,
    상기 결정수단은 상기 예측 비디오데이터 프레임(P)의 특성들을 분석하고, 상기 분석을 기초로 적어도 하나의 상기 결정동작을 수행하도록 이루어진 것을 특징으로 하는 디코더.
  16. 제15항에 있어서, 상기 결정수단은,
    상기 예측 비디오데이터 프레임(P)을 복수의 소정 영역들로 분할하는 수단(41); 및
    상기 각 예측 비디오 데이터 프레임 영역에 대하여 이미지 밝기의 불연속을 분석하는 수단을 포함하고,
    상기 결정수단은 상기 해당 예측 비디오 데이터 프레임(P) 영역내의 불연속에 대한 분석을 기초로 상기 각 예측 비디오 데이터 프레임(E*) 영역에 대하여 적어도 하나의 상기 결정동작을 수행하도록 이루어진 것을 특징으로 하는 디코더.
  17. 제16항에 있어서, 상기 불연속 분석수단은,
    각 예측 비디오 데이터 프레임(P) 영역 내에서 수평 방향에서의 유한적 차이들(FV)을 계산하는 선형 필터(42)와 수직 방향에서의 유한적 차이들(FH)을 계산하는 선형 필터(42); 및
    각 영역 내에서 두 필터 출력의 절대값들의 합을 소정의 제3 임계값과 비교하는 수단;을 포함하고,
    상기 결정수단(44)은 상기 예측 비디오 데이터 프레임(P)의 해당 영역에 대하여 계산된 상기 절대값들의 합이 상기 제3 임계값을 초과하지 않는 경우 예측오차 프레임 영역이 상기 수신된 예측오차 데이터내에 엔코딩되어 저장되지 않는 것으로 결정하도록 이루어진 것을 특징으로 하는 디코더.
  18. 제15항 내지 제17항중 어느 한 항에 있어서, 상기 영역 디코딩 수단(48)은 상기 수신된 예측오차 데이터 내에 엔코딩되어 저장된 상기 각 예측오차 프레임(E*) 영역에 대하여 복수의 각기 다른 영역디코더들(471~47n)중에서 하나의 영역디코더를 개별적으로 선택하는 선택수단(45,46)을 포함하는 것을 특징으로 하는 디코더.
  19. 제18항에 있어서, 상기 결정수단은 상기 예측비디오 데이터 프레임(P)에 대한 해당 영역의 불연속 특성들에 따라 특성 부류군중에서 하나의 군을 상기 예측오차 프레임(E*)의 디코딩될 각 영역으로 할당하는 분류수단(43)을 포함하고,
    상기 선택수단(45,46)은 각 영역으로 할당된 부류에 따라 상기 예측오차 프레임(E*)의 디코딩될 각 영역에 대하여 하나의 영역디코더를 선택하도록 이루어진 것을 특징으로 하는 디코더.
  20. 제19항에 있어서, 상기 분류수단(43)은 상기 예측오차 데이터 내에 엔코딩되어 저장된 상기 예측오차 프레임(E*)의 한 영역에 해당하는 각 예측 비디오 데이터 프레임(P) 영역 내에서 수평 방향에서의 유한적 차이들(FV)과 수직 방향에서의 유한적 차이들(FH)을 계산하는 선형 방향성 필터들(42)에 의하여 제공된 출력값들을 기초로 분류작업을 수행하도록 이루어진 것을 특징으로 하는 디코더.
  21. 제19항에 있어서, 상기 분류수단(43)은 상기 예측오차 데이터 내에 엔코딩되어 저장된 상기 예측오차 프레임(E*)의 한 영역에 해당하는 각 예측 비디오 데이터 프레임(P) 영역에 대한 각기 다른 픽셀 클러스터들의 각기 다른 픽셀 클러스터들내의 각 밝기 불연속 집중도를 기초로 분류작업을 수행하도록 이루어진 것을 특징으로 하는 디코더.
  22. 제20항 또는 제21항에 있어서, 상기 부류들의 군은 불연속 없음, 수평 불연속들, 수직 불연속들, 대각 좌편향적 불연속들, 대각 우편향적 불연속들, 무방향성 불연속들중의 적어도 하나를 포함하는 것을 특징으로 하는 디코더.
  23. 제15항 내지 제22항중 어느 한 항에 있어서, 상기 영역 디코딩수단(48)은 선택된 직교변환, 벡터양자화 또는 매칭추적구조를 사용함으로써 상기 예측오차 데이터 프레임(E*)의 디코딩될 각 영역의 수신 예측오차 데이터를 디코딩하도록 이루어진 것을 특징으로 하는 디코더.
  24. 제18항 내지 제23항중 어느 한 항에 있어서, 각 영역디코더(471,...,47n)는,
    복수의 디코딩방법들(631~63k); 및
    수신된 코딩방법 선택정보에 따라 복수의 각 디코딩방법들(631~63k)중에서 하나의 디코딩 방법을 선택하는 코딩방법 선택수단(62,64,65);을 포함하도록 이루어진 것을 특징으로 하는 디코더.
  25. 제24항에 있어서, 상기 복수의 디코딩 방법들(631~63k)은 각기 다른 영역디코더들(471~47n)과 구별되는 것을 특징으로 하는 디코더.
  26. 제15항 내지 제25항중 어느 한 항에 있어서, 상기 결정수단은,
    상기 각 예측 비디오데이터 프레임(P) 영역에 대하여 해당 모션벡터들의 크기 및/또는 방향을 계산하는 수단(44)을 포함하고,
    상기 결정수단은 계산된 상기 모션벡터들의 크기 및/또는 방향을 기초로 상기 결정을 수행하도록 이루어진 것을 특징으로 하는 디코더.
  27. 제26항에 있어서, 상기 결정수단은 그 영역에 해당하는 상기 모션벡터들의 상기 계산된 크기가 소정의 제4 임계값을 초과하지 않을 경우, 예측오차 프레임(E*) 영역은 상기 수신 예측오차 데이터내에 엔코딩되어 저장되지 않는 것으로 결정하도록 이루어진 것을 특징으로 하는 디코더.
  28. 제15항 내지 제 27항에 있어서, 수신된 상기 예측오차 데이터를 디코딩하는 수단(32)은 순차적으로 수신된 상기 예측오차 데이터 부분들을 소정의 공간 할당규칙에 따라 상기 결정수단(41,42,44)에 의하여 결정된 각 영역들로 할당하도록 이루어지고, 각 부분은 상기 예측오차 프레임의 한 엔코딩 영역에 해당하는 것을 특징으로 하는 디코더.
  29. 제28항에 있어서, 상기 소정의 할당규칙은 상기 순차적으로 수신된 예측오차 데이터 부분들을 모든 상기 예측오차 프레임 영역들을 검색할 때 그들이 출현하는 순서 및/또는 상기 결정수단에 의하여 그들이 결정되는 순서에 따라 상기 각 영역들로 할당하는 것을 정의하는 것을 특징으로 하는 디코더.
  30. 제1항 내지 제14항중 어느 한 항에 따른 엔코더를 포함하고 제15항 내지 제29항중 어느 한 항에 따른 디코더를 포함하는 비디오 데이터 전송 시스템.
  31. 제1항 내지 제14항중 어느 한 항에 따른 엔코더, 엔코딩 비디오데이터를 저장하는 수단, 및 제15항 내지 제29항중 어느 한 항에 따른 디코더를 포함하는 비디오 데이터 저장 시스템.
  32. 비디오 데이터의 모션보상 엔코딩을 수행하는 방법에 있어서,
    비디오프레임 픽셀들의 장면 모션 변위를 기술하는 모션벡터들을 평가하는 단계;
    제1 비디오 데이터 프레임(R)과 상기 모션벡터들을 기초로 비디오 데이터 프레임(P)을 예측하는 단계;
    상기 예측 비디오 데이터 프레임(P)과 제2 비디오 데이터 프레임 입력을 기초로 예측오차 프레임(E)을 계산하는 단계;
    상기 예측오차 프레임(E)을 엔코딩하고 예측오차 데이터를 구하는 단계; 및
    상기 모션벡터들과 상기 예측오차 데이터를 디코더로 전송하는 단계;를 포함하고,
    상기 예측오차 프레임(E) 엔코딩 단계는,
    상기 예측오차 프레임(E)을 복수의 영역들로 분할하는 단계;
    상기 예측오차 프레임(E)내에서 엔코딩될 영역들의 결정 및 상기 예측오차 프레임(E)의 엔코딩될 각 영역에 대하여 적어도 하나의 코딩구조를 결정하는 동작들 중에서 적어도 하나의 동작을 수행하는 단계; 및
    상기 결정에 따라 상기 예측오차 프레임(E)의 엔코딩될 각 영역들을 엔코딩하는 단계;를 포함하며,
    적어도 하나의 상기 결정동작은 상기 예측 비디오 데이터 프레임(P)의 특성에 대한 분석을 기초로 하는 것을 특징으로 하는 엔코딩 방법.
  33. 모션보상 엔코딩된 비디오 데이터를 디코딩하는 방법에 있어서,
    비디오 데이터 프레임(R)을 저장하는 단계;
    상기 비디오 데이터 프레임(R)과 수신된 모션벡터 데이터를 기초로 비디오 데이터 프레임(P)을 예측하는 단계;
    수신된 예측오차 데이터를 디코딩하여 예측 오차 프레임(E*)을 구하는 단계; 및
    상기 예측 비디오데이터 프레임(P)과 상기 디코딩 예측오차 프레임(E*)을 기초로 갱신된 비디오 데이터 프레임(I*)을 계산하여 출력하고, 갱신된 비디오 데이터 프레임(I*)을 상기 저장수단에 저장하는 단계;를 포함하고,
    상기 수신된 예측오차 데이터를 디코딩하는 단계는,
    수신된 예측오차 데이터 내에서 엔코딩되어 저장된 상기 예측오차 프레임(E*) 영역들의 결정 및 수신된 예측오차 데이터 내에서 엔코딩되어 저장된 각 영역에 대하여 적어도 하나이상의 코딩구조를 결정하는 동작들 중에서 적어도 하나의 결정동작을 수행하는 단계; 및
    예측오차 프레임을 구하기 위하여 적어도 하나의 결정동작에 따라 상기 수신된 예측오차 데이터를 디코딩하는 단계;를 포함하고,
    상기 결정은 상기 예측 비디오데이터 프레임(P)의 특성들에 대한 분석을 기초로 하는 것을 특징으로 하는 디코딩 방법.
  34. 제32항의 방법에 따라 비디오데이터를 엔코딩하는 단계, 엔코딩된 비디오데이터를 전송매체를 통하여 전송하는 단계, 및 제33항의 방법에 따라 전송 비디오데이터를 디코딩하는 단계를 포함하는 것을 특징으로 하는 비디오 데이터 전송방법.
  35. 제32항의 방법에 따라 비디오데이터를 엔코딩하는 단계, 엔코딩된 비디오데이터를 저장수단에 저장하는 단계, 상기 저장수단으로부터 저장 비디오데이터를 복구하는 단계, 제33항의 방법에 따라 복구 비디오데이터를 디코딩하는 단계를 포함하는 것을 특징으로 하는 비디오 데이터 전송방법.
KR10-1998-0707253A 1996-04-18 1996-04-18 비디오데이터엔코더및디코더 KR100430328B1 (ko)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP1996/001628 WO1997040630A1 (en) 1996-04-18 1996-04-18 Video data encoder and decoder

Publications (2)

Publication Number Publication Date
KR19990087773A true KR19990087773A (ko) 1999-12-27
KR100430328B1 KR100430328B1 (ko) 2004-07-14

Family

ID=8166201

Family Applications (1)

Application Number Title Priority Date Filing Date
KR10-1998-0707253A KR100430328B1 (ko) 1996-04-18 1996-04-18 비디오데이터엔코더및디코더

Country Status (9)

Country Link
US (1) US6272178B1 (ko)
EP (1) EP0894404B1 (ko)
JP (1) JP3977426B2 (ko)
KR (1) KR100430328B1 (ko)
AT (1) ATE189353T1 (ko)
AU (1) AU5689896A (ko)
DE (1) DE69606441T2 (ko)
ES (1) ES2143759T3 (ko)
WO (1) WO1997040630A1 (ko)

Families Citing this family (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6594311B1 (en) * 1997-10-20 2003-07-15 Hitachi America, Ltd. Methods for reduced cost insertion of video subwindows into compressed video
KR100511693B1 (ko) * 1997-10-23 2005-09-02 미쓰비시덴키 가부시키가이샤 화상 복호화 장치
CN1164122C (zh) 1997-11-07 2004-08-25 皇家菲利浦电子有限公司 图象序列编码
FI105962B (fi) * 1998-06-30 2000-10-31 Nokia Mobile Phones Ltd Virheiden ilmaisu multipleksattuja signaaleja vastaanotettaessa
US6292512B1 (en) * 1998-07-06 2001-09-18 U.S. Philips Corporation Scalable video coding system
US6895051B2 (en) * 1998-10-15 2005-05-17 Nokia Mobile Phones Limited Video data encoder and decoder
US6624761B2 (en) * 1998-12-11 2003-09-23 Realtime Data, Llc Content independent data compression method and system
US6973126B1 (en) * 1999-03-05 2005-12-06 Kdd Corporation Video coding apparatus according to a feature of a video picture
US6601104B1 (en) * 1999-03-11 2003-07-29 Realtime Data Llc System and methods for accelerated data storage and retrieval
US6604158B1 (en) 1999-03-11 2003-08-05 Realtime Data, Llc System and methods for accelerated data storage and retrieval
US20010047473A1 (en) 2000-02-03 2001-11-29 Realtime Data, Llc Systems and methods for computer initialization
US20030191876A1 (en) * 2000-02-03 2003-10-09 Fallon James J. Data storewidth accelerator
US7417568B2 (en) * 2000-10-03 2008-08-26 Realtime Data Llc System and method for data feed acceleration and encryption
US9143546B2 (en) 2000-10-03 2015-09-22 Realtime Data Llc System and method for data feed acceleration and encryption
US8692695B2 (en) 2000-10-03 2014-04-08 Realtime Data, Llc Methods for encoding and decoding data
KR20020031015A (ko) 2000-10-21 2002-04-26 오길록 에지 히스토그램 빈의 비선형 양자화 및 유사도 계산
US7386046B2 (en) 2001-02-13 2008-06-10 Realtime Data Llc Bandwidth sensitive data compression and decompression
US7773670B1 (en) 2001-06-05 2010-08-10 At+T Intellectual Property Ii, L.P. Method of content adaptive video encoding
US6810086B1 (en) 2001-06-05 2004-10-26 At&T Corp. System and method of filtering noise
US6968006B1 (en) 2001-06-05 2005-11-22 At&T Corp. Method of content adaptive video decoding
US6970513B1 (en) 2001-06-05 2005-11-29 At&T Corp. System for content adaptive video decoding
US20030189980A1 (en) * 2001-07-02 2003-10-09 Moonlight Cordless Ltd. Method and apparatus for motion estimation between video frames
US6909748B2 (en) * 2001-12-20 2005-06-21 Sorenson Media, Inc. Method and system for image compression using block size heuristics
US20030161400A1 (en) * 2002-02-27 2003-08-28 Dinerstein Jonathan J. Method and system for improved diamond motion search
CN1232126C (zh) 2002-09-30 2005-12-14 三星电子株式会社 图像编码方法和装置以及图像解码方法和装置
FI114071B (fi) 2003-01-13 2004-07-30 Nokia Corp Kuvien käsitteleminen rajoitetulla bittimäärällä
US20060159352A1 (en) * 2005-01-18 2006-07-20 Faisal Ishtiaq Method and apparatus for encoding a video sequence
TWI288361B (en) * 2005-06-30 2007-10-11 Aten Int Co Ltd Video processing system
US7751485B2 (en) 2005-10-05 2010-07-06 Lg Electronics Inc. Signal processing using pilot based coding
CN101283252B (zh) * 2005-10-05 2013-03-27 Lg电子株式会社 信号处理的方法和装置以及编码和解码方法及其装置
KR100878833B1 (ko) * 2005-10-05 2009-01-14 엘지전자 주식회사 신호 처리 방법 및 이의 장치, 그리고 인코딩 및 디코딩방법 및 이의 장치
US7672379B2 (en) 2005-10-05 2010-03-02 Lg Electronics Inc. Audio signal processing, encoding, and decoding
CN101283249B (zh) * 2005-10-05 2013-12-04 Lg电子株式会社 信号处理的方法和装置以及编码和解码方法及其装置
US7653533B2 (en) 2005-10-24 2010-01-26 Lg Electronics Inc. Removing time delays in signal paths
US7822223B2 (en) * 2006-01-13 2010-10-26 New Jersey Institute Of Technology Method for identifying marked images using statistical moments based at least in part on a JPEG array
TWI333643B (en) * 2006-01-18 2010-11-21 Lg Electronics Inc Apparatus and method for encoding and decoding signal
US7504970B2 (en) * 2006-08-17 2009-03-17 Raytheon Company Data encoder
KR100856411B1 (ko) * 2006-12-01 2008-09-04 삼성전자주식회사 조도 보상 방법 및 그 장치와 그 방법을 기록한 컴퓨터로 읽을 수 있는 기록매체
KR101431543B1 (ko) * 2008-01-21 2014-08-21 삼성전자주식회사 영상 부호화/복호화 장치 및 방법
US8189661B2 (en) * 2009-03-09 2012-05-29 Microsoft Corporation Remote desktop protocol (RDP) tile image classification for improving compression efficiency and quality
WO2010149799A1 (es) * 2009-06-22 2010-12-29 Universidad De Barcelona Método para la calibración totalmente adaptativa de un codificador de errores de predicción
US8787698B2 (en) 2009-09-04 2014-07-22 Adobe Systems Incorporated Methods and apparatus for directional texture generation using image warping
US8599219B2 (en) 2009-09-18 2013-12-03 Adobe Systems Incorporated Methods and apparatuses for generating thumbnail summaries for image collections
US8619098B2 (en) 2009-09-18 2013-12-31 Adobe Systems Incorporated Methods and apparatuses for generating co-salient thumbnails for digital images
US20120183078A1 (en) * 2011-01-14 2012-07-19 Samsung Electronics Co., Ltd. Filter adaptation with directional features for video/image coding
US8861868B2 (en) 2011-08-29 2014-10-14 Adobe-Systems Incorporated Patch-based synthesis techniques
US9357235B2 (en) * 2011-10-13 2016-05-31 Qualcomm Incorporated Sample adaptive offset merged with adaptive loop filter in video coding
EP2863566B1 (en) 2013-10-18 2020-09-02 Université de Nantes Method and apparatus for reconstructing a data block
KR102713136B1 (ko) 2023-11-10 2024-10-07 김성수 암반 발파 비산 방지 안전매트 및 그 제조방법

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS62222783A (ja) * 1986-03-24 1987-09-30 Kokusai Denshin Denwa Co Ltd <Kdd> 動画像の高能率符号化方式
US5151784A (en) * 1991-04-30 1992-09-29 At&T Bell Laboratories Multiple frame motion estimation
JP2507204B2 (ja) * 1991-08-30 1996-06-12 松下電器産業株式会社 映像信号符号化装置
US5351083A (en) * 1991-10-17 1994-09-27 Sony Corporation Picture encoding and/or decoding system
US5214507A (en) * 1991-11-08 1993-05-25 At&T Bell Laboratories Video signal quantization for an mpeg like coding environment
EP0561593B1 (en) * 1992-03-17 1997-07-16 Sony Corporation Image compression apparatus
KR0134504B1 (ko) * 1992-09-09 1998-04-23 배순훈 적응적 주파수 변환기를 가진 영상 부호화기
US5500689A (en) * 1994-10-26 1996-03-19 Thomson Consumer Electronics, Inc. System for detecting a video signal image intensity gradient
WO1997017797A2 (en) * 1995-10-25 1997-05-15 Sarnoff Corporation Apparatus and method for quadtree based variable block size motion estimation

Also Published As

Publication number Publication date
ATE189353T1 (de) 2000-02-15
KR100430328B1 (ko) 2004-07-14
AU5689896A (en) 1997-11-12
DE69606441T2 (de) 2000-06-15
JP2000508126A (ja) 2000-06-27
JP3977426B2 (ja) 2007-09-19
US6272178B1 (en) 2001-08-07
EP0894404B1 (en) 2000-01-26
WO1997040630A1 (en) 1997-10-30
ES2143759T3 (es) 2000-05-16
EP0894404A1 (en) 1999-02-03
DE69606441D1 (de) 2000-03-02

Similar Documents

Publication Publication Date Title
KR100430328B1 (ko) 비디오데이터엔코더및디코더
US11240498B2 (en) Independently coding frame areas
US6895051B2 (en) Video data encoder and decoder
RU2697929C1 (ru) Устройство декодирования изображения и способ декодирования изображения
US6721359B1 (en) Method and apparatus for motion compensated video coding
US8681873B2 (en) Data compression for video
USRE40079E1 (en) Video encoding and decoding apparatus
US9078009B2 (en) Data compression for video utilizing non-translational motion information
EP1729521A2 (en) Intra prediction video encoding and decoding method and apparatus
US20020009143A1 (en) Bandwidth scaling of a compressed video stream
CN110679148A (zh) 用于代码化视频数据块的方法和装置
US20110206117A1 (en) Data Compression for Video
KR20090058954A (ko) 사이드 매칭을 이용한 영상의 부호화 방법 및 장치, 그복호화 방법 및 장치
WO2002037859A2 (en) Video data compression system
KR20120116936A (ko) 영상 블록 코딩 및 재구성 방법
JP3117091B2 (ja) 画像符号化装置
AU2001293994B2 (en) Compression of motion vectors
CN1134993C (zh) 视频数据编码器和解码器、传输和保存视频数据的系统及其方法
Balashov et al. Lossless compression of natural images using regressive analysis

Legal Events

Date Code Title Description
A201 Request for examination
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: 20130411

Year of fee payment: 10

FPAY Annual fee payment

Payment date: 20140410

Year of fee payment: 11

EXPY Expiration of term