KR20100101693A - 수평 및 수직 대칭에 기초한 필터 계수들의 비디오 코딩 - Google Patents

수평 및 수직 대칭에 기초한 필터 계수들의 비디오 코딩 Download PDF

Info

Publication number
KR20100101693A
KR20100101693A KR1020107017559A KR20107017559A KR20100101693A KR 20100101693 A KR20100101693 A KR 20100101693A KR 1020107017559 A KR1020107017559 A KR 1020107017559A KR 20107017559 A KR20107017559 A KR 20107017559A KR 20100101693 A KR20100101693 A KR 20100101693A
Authority
KR
South Korea
Prior art keywords
filter coefficients
video
filter
unit
video data
Prior art date
Application number
KR1020107017559A
Other languages
English (en)
Other versions
KR101168843B1 (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 KR20100101693A publication Critical patent/KR20100101693A/ko
Application granted granted Critical
Publication of KR101168843B1 publication Critical patent/KR101168843B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/117Filters, e.g. for pre-processing or post-processing
    • 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
    • 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
    • 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/46Embedding additional information in the video signal during the compression process
    • 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/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
    • H04N19/82Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

본 발명은, 인코더에서 정의된 필터 계수들의 몇몇이 다른 필터 계수들에 대한 대칭을 소유할 수도 있다는 사실을 인식 및 이용한다. 따라서, 본 발명은, 필터 계수들의 제 1 세트가 필터 계수들의 제 2 세트를 예측적으로 인코딩하는데 사용되며, 그에 의해, 필터 계수들 사이의 임의의 대칭을 이용하는 기술을 설명한다. 모든 필터 계수들을 디코딩 디바이스로 전달하기 보다는, 인코딩 디바이스는 필터 계수들의 제 1 세트, 및 필터 계수들의 제 2 세트와 관련된 차이값들을 전달할 수도 있다. 이러한 정보를 사용하여, 디코더는 모든 필터 계수들을 복원할 수 있을 수도 있다. 몇몇 경우에서, 정확한 대칭이 부과되면, 차이값들을 전송할 필요성이 제거될 수도 있으며, 디코더는 필터 계수들의 제 1 세트로부터 필터 계수들의 제 2 세트를 유도할 수 있을 수도 있다.

Description

수평 및 수직 대칭에 기초한 필터 계수들의 비디오 코딩{VIDEO CODING OF FILTER COEFFICIENTS BASED ON HORIZONTAL AND VERTICAL SYMMETRY}
본 출원은, 2008년 1월 8일자로 출원된 미국 가출원 제 61/019,831 호의 이익을 주장하며, 그것의 전체 내용은 여기에 참조로서 포함된다.
본 발명은, 비디오 데이터를 압축하는데 사용되는 블록-기반 비디오 코딩에 관한 것이며, 더 상세하게는, 비디오 블록들의 필터링과 관련된 필터 계수들을 코딩하기 위한 기술에 관한 것이다.
디지털 비디오 능력은, 디지털 텔레비전, 디지털 다이렉트 브로드캐스트 시스템, 무선 전화기 핸드셋과 같은 무선 통신 디바이스, 무선 브로드캐스트 시스템, 개인 휴대 정보 단말기 (PDA), 랩탑 또는 데스크탑 컴퓨터, 디지털 카메라, 디지털 레코딩 디바이스, 비디오 게이밍 디바이스, 비디오 게임 콘솔 등을 포함하는 광범위한 범위의 디바이스들에 포함될 수 있다. 디지털 비디오 디바이스들은, 디지털 비디오를 더 효율적으로 송신 및 수신하기 위해, MPEG-2, MPEG-4, 또는 ITU-T H.264/MPEG-4, Part 10, AVC (Advanced Video Coding) 와 같은 비디오 압축 기술들을 구현한다. 비디오 압축 기술들은, 비디오 시퀀스들에서 고유한 리던던시를 감소 또는 제거시키기 위해 공간 및 시간 예측을 수행한다.
일반적으로, 블록-기반 비디오 압축 기술들은, 공간 예측 및/또는 시간 예측을 수행한다. 인트라-코딩은, 비디오 프레임, 비디오 프레임의 슬라이스 등을 포함할 수도 있는 소정의 코딩된 유닛내의 비디오 블록들 사이의 공간 리던던시를 감소 또는 제거시키기 위해 공간 예측에 의존한다. 이와 대조적으로, 인터-코딩은, 비디오 시퀀스의 연속하는 코딩된 유닛들의 비디오 블록들 사이의 시간 리던던시를 감소 또는 제거시키기 위해 시간 예측에 의존한다. 인트라-코딩에 대해, 비디오 인코더는, 동일한 코딩된 유닛 내의 다른 데이터에 기초하여 데이터를 압축하기 위해 공간 예측을 수행한다. 인터-코딩에 대해, 비디오 인코더는, 2개 이상의 인접한 코딩된 유닛들의 대응하는 비디오 블록들의 이동을 추적하기 위해 모션 추정 및 모션 보상을 수행한다.
코딩된 비디오 블록은, 예측 블록, 및 코딩될 블록과 예측 블록 사이의 차이들을 나타내는 데이터의 잔여 블록을 생성 또는 식별하는데 사용될 수 있는 예측 정보에 의해 표현될 수도 있다. 인터-코딩의 경우, 데이터의 예측 블록을 식별하기 위해 하나 이상의 모션 벡터들이 사용되지만, 인트라-코딩의 경우, 예측 블록을 생성하기 위해 예측 모드가 사용될 수 있다. 인트라-코딩 및 인터-코딩 양자는, 코딩에 사용되는 예측 기술들 및/또는 상이한 블록 사이즈들을 정의할 수도 있는 수 개의 상이한 예측 모드들을 정의할 수도 있다. 또한, 부가적인 타입의 신택스 엘리먼트들은, 코딩 프로세스에 사용되는 코딩 기술들 또는 파라미터들을 제어하거나 정의하기 위해, 인코딩된 비디오 데이터의 일부로서 포함될 수도 있다.
블록-기반 예측 코딩 이후, 비디오 인코더는, 잔여 블록의 전달과 관련된 비트 레이트를 추가적으로 감소시키기 위해 변환, 양자화 및 엔트로피 코딩 프로세스들을 적용할 수도 있다. 변환 기술들은, 웨이블렛 (wavelet) 변환, 정수 변환, 또는 다른 타입들의 변환과 같은 개념적으로 유사한 프로세스들 또는 이산 코사인 변환들을 포함할 수도 있다. 이산 코사인 변환 (DCT) 프로세스에서, 일 예로서, 변환 프로세스는, 주파수 도메인에서의 픽셀값들의 에너지를 나타낼 수도 있는 변환 계수들로 일 세트의 픽셀값들을 변환한다. 양자화가 변환 계수들에 적용되며, 일반적으로, 임의의 소정의 변환 계수와 관련된 비트들의 수를 제한하는 프로세스를 포함한다. 엔트로피 코딩은, 양자화된 변환 계수들의 시퀀스를 집합적으로 포함하는 하나 이상의 프로세스들을 포함한다.
비디오 블록들의 필터링은, 인코딩 및 디코딩 루프들의 일부, 또는 복원된 비디오 블록들에 대한 포스트-필터링 (post-filtering) 프로세스의 일부로서 적용될 수도 있다. 예를 들어, 블록-기반 비디오 코딩에 일반적인 블록키니스 (blockiness) 또는 다른 아티팩트 (artifact) 를 감소시키기 위해 필터링이 일반적으로 사용된다. (종종 필터 탭으로 지칭되는) 필터 계수들은, 블록키니스를 감시키고/거나 다른 방식으로 비디오 품질을 개선시킬 수 있는 바람직한 레벨의 비디오 블록 필터링을 촉진시키기 위해, 정의되거나 선택될 수도 있다. 예를 들어, 일 세트의 필터 계수들은, 비디오 블록들의 에지들 또는 비디오 블록들 내의 다른 위치들에 따라 필터링이 적용되는 방법을 정의할 수도 있다. 상이한 필터 계수들은 비디오 블록들의 상이한 픽셀들에 대해 상이한 레벨의 필터링을 초래할 수도 있다. 예를 들어, 필터링은, 원치않는 아티팩트를 제거하는 것을 보조하기 위해 인접한 픽셀값들의 강도에서의 차이들을 평활화할 수도 있다.
일반적으로, 본 발명은, 필터 정보를 인코딩하고 필터 정보를 인코딩 디바이스로부터 디코딩 디바이스로 운반하는데 필요한 데이터의 양을 감소시킬 수 있는 기술들을 설명한다. (프레임, 슬라이스, 화상 그룹, 또는 다른 코딩된 유닛과 같은) 각각의 코딩된 유닛에 대해, 인코더는 그 코딩된 유닛의 비디오 블록들에 적용될 필터 계수들을 정의하거나 선택할 수도 있다. 필터 계수들은, 예측 코딩을 위해 사용되는 복원된 비디오 유닛들의 비디오 블록들을 필터링하기 위하여 인코더에 의해 적용될 수도 있고, 또한, 출력 비디오 품질을 개선시키기 위하여 디코더에 의해 유사하게 적용될 수도 있다. 그러나, 이러한 경우, 디코더가 필터 프로세스 동안 정확한 필터 계수들을 적용하도록, 정보가 인코더로부터 디코더로 전송될 필요가 있을 수도 있다. 특히, 디코더에 의해 적용된 필터 계수들은, 인코더에 의해 적용된 필터 계수들과 동일해야 한다.
본 발명은, 인코더에서 정의된 필터 계수들의 일부가 다른 필터 계수들에 대해 수평 및/또는 수직 대칭을 소유할 수도 있다는 사실을 인식 및 이용한다. 따라서, 인코딩 디바이스로부터 디코딩 디바이스로 그러한 필터 계수들을 운반하는데 필요한 데이터의 양을 감소시키기 위해, 본 발명은, 필터 계수들의 제 2 세트를 예측적으로 인코딩하기 위해 필터 계수들의 제 1 세트가 사용되고, 그에 의해 필터 계수들 사이에 존재할 수도 있는 수평 및/또는 수직 대칭을 이용하는 기술들을 설명한다. 필터 계수들 모두를 디코딩 디바이스로 전달하기 보다는, 인코딩 디바이스는 필터 계수들의 제 1 세트 및 필터 계수들의 제 2 세트와 관련된 차이값들을 전달할 수도 있다. 이러한 정보를 사용하여, 디코더는 필터 계수들 모두를 복원할 수 있을 수도 있다. 이러한 방식에서, 인코더로부터 디코더로 필터 계수들 모두를 전달하는 기술에 비해 데이터 압축에서의 개선이 달성될 수도 있다. 또한, 완전한 대칭을 갖는 필터 계수들을 인코더가 적용하였다고 디코더가 가정할 수도 있는 부가적인 예가 설명되며, 이러한 경우, 필터 계수들의 제 2 세트와 관련된 차이값들은 제로로 가정될 수도 있다. 이러한 경우, 필터 계수들의 제 2 세트를 생성하기 위해, 필터 계수들의 제 1 세트에 부호 변화를 적용할 수도 있다.
일 예에서, 본 발명은 비디오 데이터를 인코딩하는 방법을 제공한다. 그 방법은 비디오 데이터의 유닛을 인코딩하는 단계를 포함하며, 그 유닛은 복수의 비디오 블록들을 포함한다. 또한, 그 방법은, 비디오 데이터의 유닛의 비디오 블록들을 필터링하기 위한 필터 계수들을 선택하는 단계, 및 필터 계수들의 제 1 세트에 기초하여 필터 계수들의 제 2 세트와 관련된 차이값들을 생성하는 단계를 포함한다.
또 다른 예에서, 본 발명은 비디오 데이터를 디코딩하는 단계를 포함한다. 그 방법은, 인코딩된 비트스트림은 복수의 비디오 블록들을 포함하는 비디오 데이터의 인코딩된 유닛, 및 필터 계수들의 제 1 세트, 및 필터 계수들의 제 2 세트와 관련된 차이값들을 포함하는 필터 정보를 포함하는 인코딩된 비트스트림을 수신하는 단계를 포함한다. 또한, 그 방법은, 복수의 비디오 블록들을 디코딩하는 단계, 필터 계수들의 제 1 세트 및 차이값들에 기초하여 필터 계수들의 제 2 세트를 생성하는 단계, 및 필터 계수들의 제 1 및 제 2 세트에 기초하여, 디코딩된 복수의 비디오 블록들을 필터링하는 단계를 포함한다.
또 다른 예에서, 본 발명은 비디오 데이터를 인코딩하는 장치를 제공한다. 그 장치는 비디오 데이터의 유닛을 인코딩하는 예측 코딩 유닛을 포함하며, 비디오 데이터의 유닛은 복수의 비디오 블록들을 포함한다. 또한, 그 장치는, 비디오 데이터의 유닛의 비디오 블록들을 필터링하기 위한 필터 계수들을 선택하고, 필터 계수들의 제 1 세트에 기초하여 필터 계수들의 제 2 세트와 관련된 차이값들을 생성하는 필터 유닛을 포함한다.
또 다른 예에서, 본 발명은 비디오 데이터를 디코딩하는 장치를 제공한다. 그 장치는, 복수의 비디오 블록들을 포함하는 비디오 데이터의 인코딩된 유닛, 및 필터 계수들의 제 1 세트, 및 필터 계수들의 제 2 세트와 관련된 차이값들을 포함하는 필터 정보를 포함하는 인코딩된 비트스트림을 수신하는 유닛을 포함한다. 또한, 그 장치는, 복수의 비디오 블록들을 디코딩하는 예측 유닛, 및 필터 계수들의 제 1 세트 및 차이값들에 기초하여 필터 계수들의 제 2 세트를 생성하고, 필터 계수들의 제 1 및 제 2 세트에 기초하여, 디코딩된 복수의 비디오 블록들을 필터링하는 필터 유닛을 포함한다.
또 다른 예에서, 본 발명은 비디오 데이터를 인코딩하는 디바이스를 제공하며, 그 디바이스는, 비디오 데이터의 유닛을 인코딩하는 수단으로서, 그 유닛은 복수의 비디오 블록들을 포함하는, 그 인코딩하는 수단, 비디오 데이터의 유닛의 비디오 블록들을 필터링하기 위한 필터 계수들을 선택하는 수단, 및 필터 계수들의 제 1 세트에 기초하여 필터 계수들의 제 2 세트와 관련된 차이값들을 생성하는 수단을 포함한다.
또 다른 예에서, 본 발명은 비디오 데이터를 디코딩하는 디바이스를 제공하며, 그 디바이스는, 복수의 비디오 블록들을 포함하는 비디오 데이터의 인코딩된 유닛, 및 필터 계수들의 제 1 세트, 및 필터 계수들의 제 2 세트와 관련된 차이값들을 포함하는 필터 정보를 포함하는 인코딩된 비트스트림을 수신하는 수단, 복수의 비디오 블록들을 디코딩하는 수단, 필터 계수들의 제 1 세트 및 차이값들에 기초하여 필터 계수들의 제 2 세트를 생성하는 수단, 및 필터 계수들의 제 1 및 제 2 세트에 기초하여, 디코딩된 복수의 비디오 블록들을 필터링하는 수단을 포함한다.
또 다른 예에서, 본 발명은, 비디오 데이터의 유닛을 인코딩하는 예측 코딩 유닛으로서, 그 비디오 데이터의 유닛은 복수의 비디오 블록들을 포함하는, 그 예측 코딩 유닛, 비디오 데이터의 유닛의 비디오 블록들을 필터링하기 위한 필터 계수들을 선택하고, 필터 계수들의 제 1 세트에 기초하여 필터 계수들의 제 2 세트와 관련된 차이값들을 생성하는 필터 유닛, 및 필터 계수들의 제 1 세트, 및 필터 계수들의 제 2 세트와 관련된 차이값들을 포함하는 인코딩된 비트스트림을 송신하는 무선 송신기를 포함하는 디바이스를 제공한다.
또 다른 예에서, 본 발명은, 복수의 비디오 블록들을 포함하는 비디오 데이터의 인코딩된 유닛, 및 필터 계수들의 제 1 세트, 및 필터 계수들의 제 2 세트와 관련된 차이값들을 포함하는 필터 정보를 포함하는 인코딩된 비트스트림을 수신하는 무선 수신기, 무선 수신기로부터 인코딩된 비트스트림을 수신하고, 그 비트스트림을 디코딩하여 복수의 비디오 블록들 및 필터 정보를 생성하는 엔트로피 코딩 유닛, 복수의 비디오 블록들을 디코딩하는 예측 유닛, 및 필터 계수들의 제 1 세트 및 차이값들에 기초하여 필터 계수들의 제 2 세트를 생성하고, 필터 계수들의 제 1 및 제 2 세트에 기초하여, 디코딩된 복수의 비디오 블록들을 필터링하는 필터 유닛을 포함하는 디바이스를 제공한다.
본 발명에서 설명된 기술들은 하드웨어, 소프트웨어, 펌웨어, 또는 이들의 임의의 조합으로 구현될 수도 있다. 하드웨어로 구현되면, 장치는, 집적 회로, 프로세서, 이산 로직, 또는 이들의 임의의 조합으로서 실현될 수도 있다. 소프트웨어로 구현되면, 소프트웨어는, 마이크로프로세서와 같은 하나 이상의 프로세서들, 주문형 집적 회로 (ASIC), 필드 프로그래밍가능 게이트 어레이 (FPGA), 또는 디지털 신호 프로세서 (DSP) 에서 실행될 수도 있다. 기술들을 실행하는 소프트웨어는, 초기에 컴퓨터-판독가능 매체에 저장되고, 프로세서에서 로딩 및 실행될 수도 있다.
따라서, 본 발명은, 비디오 코딩 디바이스내에서의 실행시에 그 디바이스로 하여금 비디오 데이터를 인코딩하게 하는 명령들을 포함하는 컴퓨터-판독가능 매체를 또한 고려하며, 여기서, 그 명령들은 그 디바이스로 하여금, 복수의 비디오 블록들을 포함하는, 비디오 데이터의 유닛을 인코딩하게 하고, 비디오 데이터의 유닛의 비디오 블록들을 필터링하기 위한 필터 계수들을 선택하게 하며, 필터 계수들의 제 1 세트에 기초하여 필터 계수들의 제 2 세트와 관련된 차이값들을 생성하게 한다.
또한, 본 발명은, 비디오 코딩 디바이스내에서의 실행시에 그 디바이스로 하여금 비디오 데이터를 디코딩하게 하는 명령들을 포함하는 컴퓨터-판독가능 매체를 또한 고려하며, 여기서, 그 명령들은 그 디바이스로 하여금, 복수의 비디오 블록들을 포함하는 비디오 데이터의 인코딩된 유닛, 및 필터 계수들의 제 1 세트, 및 필터 계수들의 제 2 세트와 관련된 차이값들을 포함하는 필터 정보를 포함하는 인코딩된 비트스트림을 수신하게 하고, 복수의 비디오 블록들을 디코딩하게 하고, 필터 계수들의 제 1 세트 및 차이값들에 기초하여 필터 계수들의 제 2 세트를 생성하게 하며, 필터 계수들의 제 1 및 제 2 세트에 기초하여, 디코딩된 복수의 비디오 블록들을 필터링하게 한다.
또 다른 예에서, 본 발명은 비디오 데이터를 디코딩하는 방법을 제공하며, 그 방법은, 복수의 비디오 블록들을 포함하는 비디오 데이터의 인코딩된 유닛, 및 필터 계수들의 제 1 세트를 포함하는 필터 정보를 포함한 인코딩된 비트스트림을 수신하는 단계, 복수의 비디오 블록들을 디코딩하는 단계, 필터 계수들의 제 1 세트에 기초하여 필터 계수들의 제 2 세트를 생성하는 단계, 및 필터 계수들의 제 1 및 제 2 세트에 기초하여, 디코딩된 복수의 비디오 블록들을 필터링하는 단계를 포함한다.
또 다른 예에서, 본 발명은 비디오 데이터를 디코딩하는 장치를 제공한다. 이러한 경우, 그 장치는, 복수의 비디오 블록들을 포함하는 비디오 데이터의 인코딩된 유닛을 포함한 인코딩된 비트스트림, 및 필터 계수들의 제 1 세트를 포함하는 필터 정보를 수신하는 유닛, 복수의 비디오 블록들을 디코딩하는 예측 코딩 유닛, 및 필터 계수들의 제 1 세트에 기초하여 필터 계수들의 제 2 세트를 생성하고, 필터 계수들의 제 1 및 제 2 세트에 기초하여, 디코딩된 복수의 비디오 블록들을 필터링하는 필터 유닛을 포함한다.
또 다른 예에서, 본 발명은, 복수의 비디오 블록들을 포함하는 비디오 데이터의 인코딩된 유닛을 포함한 인코딩된 비트스트림, 및 필터 계수들의 제 1 세트를 포함하는 필터 정보를 수신하는 수단, 복수의 비디오 블록들을 디코딩하는 수단, 필터 계수들의 제 1 세트에 기초하여 필터 계수들의 제 2 세트를 생성하는 수단, 및 필터 계수들의 제 1 및 제 2 세트에 기초하여, 디코딩된 복수의 비디오 블록들을 필터링하는 수단을 포함하는 디바이스를 제공한다.
또 다른 예에서, 본 발명은, 실행시에 디코딩 디바이스로 하여금, 복수의 비디오 블록들을 포함하는 비디오 데이터의 인코딩된 유닛, 및 필터 계수들의 제 1 세트를 포함하는 필터 정보를 포함하는 인코딩된 비트스트림을 수신하게 하고, 복수의 비디오 블록들을 디코딩하게 하고, 필터 계수들의 제 1 세트에 기초하여 필터 계수들의 제 2 세트를 생성하며, 필터 계수들의 제 1 및 제 2 세트에 기초하여, 디코딩된 복수의 비디오 블록들을 필터링하게 하는 명령들을 포함하는 컴퓨터-판독가능 매체를 제공한다.
본 발명의 하나 이상의 양태들의 세부사항은 첨부한 도면 및 아래의 설명에 개시된다. 본 발명에서 설명되는 기술들의 다른 특성들, 목적들, 및 이점들은 설명 및 도면, 및 청구항으로부터 명백해질 것이다.
도 1은 비디오 인코딩 및 디코딩 시스템을 도시한 예시적인 블록도이다.
도 2는 본 발명에 부합하는 예시적인 비디오 인코더를 도시한 블록도이다.
도 3은 본 발명에 부합하는 예시적인 비디오 디코더를 도시한 블록도이다.
도 4 내지 도 6은, 다른 필터 계수들에 대해 수평 및/또는 수직 대칭을 소유할 수도 있는 예시적인 필터 계수들을 개념적으로 도시한 개념적인 그래프이다.
도 7 및 도 8은 본 발명에 부합하는 예시적인 인코딩 및 디코딩 기술들을 도시한 흐름도이다.
도 9는 본 발명에 부합하는 예시적인 디코딩 기술을 도시한 또 다른 흐름도이다.
본 발명은, 필터 정보를 인코딩하고 필터 정보를 인코딩 디바이스로부터 디코딩 디바이스로 운반하는데 필요한 데이터의 양을 감소시킬 수 있는 기술들을 설명한다. (프레임, 슬라이스, 화상 그룹, 또는 다른 코딩된 유닛과 같은) 각각의 코딩된 유닛에 대해, 인코더는, 그 코딩된 유닛의 비디오 블록들에 적용될 필터 계수들을 정의 또는 선택할 수도 있다. 필터 계수들은, 예측 코딩에 사용되는 복원된 비디오 유닛들의 비디오 블록들을 필터링하기 위하여 인코더에 의해 적용될 수도 있으며, 또한, 출력 비디오 품질을 개선시키기 위하여 디코더에 의해 유사하게 적용될 수도 있다. 디코더가 필터링 프로세스 동안 정확한 필터 계수들을 적용하도록, 정보가 인코더로부터 디코더로 전송될 수 있다.
본 발명의 기술들은, 인코더에서 정의된 필터 계수들 중 몇몇이 다른 필터 계수들에 대해 수평 및/또는 수직 대칭을 소유할 수도 있다는 사실을 인식 및 이용한다. 따라서, 그러한 필터 계수들을 운반하는데 필요한 데이터의 양을 감소시키기 위해, 본 발명은, 필터 계수들의 제 1 세트가 필터 계수들의 제 2 세트를 예측적으로 인코딩하기 위해 사용되고, 그에 의해, 필터 계수들 사이의 임의의 수평 및/또는 수직 대칭을 이용하는 기술들을 설명한다. 모든 필터 계수들을 디코딩 디바이스로 전달하기 보다는, 인코딩 디바이스는 필터 계수들의 제 1 세트, 및 필터 계수들의 제 2 세트와 관련된 차이값들을 전달할 수도 있다.
차이값들은, 제 1 세트내의 필터 계수들과 제 2 세트내의 필터 계수들 사이의 절대 크기에서의 차이를 정의할 수도 있고, 또한, 제 1 세트내의 필터 계수들과 제 2 세트내의 필터 계수들 사이의 부호에서의 차이를 식별할 수도 있다. 이러한 정보를 사용하여, 디코더는 모든 필터 계수들을 복원할 수 있을 수도 있다. 이러한 방식으로, 인코더로부터 디코더로 모든 필터 계수들을 전달하는 기술들과 비교하여, 데이터 압축에서의 개선이 달성될 수도 있다.
도 1은 본 발명의 기술들을 구현할 수도 있는 예시적인 비디오 인코딩 및 디코딩 시스템 (10) 을 도시한 블록도이다. 도 1에 도시된 바와 같이, 시스템 (10) 은, 통신 채널 (15) 을 통해 목적지 디바이스 (16) 로 인코딩된 비디오를 송신하는 소스 디바이스 (12) 를 포함한다. 소스 디바이스 (12) 및 목적지 디바이스 (16) 는 광범위한 범위의 디바이스들 중 임의의 디바이스를 포함할 수도 있다. 몇몇 경우에서, 소스 디바이스 (12) 및 목적지 디바이스 (16) 는, 소위 셀룰러 또는 위성 무선 전화기와 같은 무선 통신 디바이스 핸드셋을 포함할 수도 있다. 그러나, 비디오 블록 필터링에 더 일반적으로 적용되는 본 발명의 기술들은 무선 애플리케이션들 또는 셋팅들에 반드시 제한될 필요는 없으며, 비디오 인코딩 및/또는 디코딩 능력을 포함하는 비-무선 디바이스들에 적용될 수도 있다.
도 1의 예에서, 소스 디바이스 (12) 는, 비디오 소스 (20), 비디오 인코더 (22), 변조기/복조기 (모뎀) (23) 및 송신기 (24) 를 포함할 수도 있다. 목적지 디바이스 (16) 는, 수신기 (26), 모뎀 (27), 비디오 디코더 (28) 및 디스플레이 디바이스 (30) 를 포함할 수도 있다. 본 발명에 따르면, 소스 디바이스 (12) 의 비디오 인코더 (22) 는, 비디오 블록 필터링 프로세스를 위한 필터 계수들을 선택하고, 그 후, 다른 필터 계수들에 기초하여 필터 계수들 중 몇몇을 예측적으로 인코딩하도록 구성될 수도 있다. 목적지 디바이스 (16) 의 비디오 디코더 (28) 는, 예를 들어, 예측적으로 인코딩된 필터 계수들을 복원함으로써, 필터 계수들을 디코딩하도록 구성될 수도 있다.
더 상세하게, 소스 디바이스 (12) 의 비디오 인코더 (22) 는, 필터 계수들을 선택하고, 인코딩 프로세스 동안 그러한 필터 계수들을 적용하며, 그 후, 목적지 디바이스 (16) 의 비디오 디코더 (28) 로의 전달을 위해 필터 계수들을 인코딩할 수도 있다. 상이한 필터 계수들 사이에 유사성이 주어지면, 필터 계수들의 제 2 세트는 필터 계수들의 제 1 세트에 대한 차이값들로서 예측적으로 코딩될 수 있다. 예를 들어, 제 2 세트내의 필터 계수들은 제 1 세트내의 필터 계수들의 크기와 유사한 크기를 가질 수도 있다. 제 2 세트내의 필터 계수들의 부호 (예를 들어, 포지티브 또는 네거티브) 는 제 1 세트내의 필터 계수들의 부호와는 상이할 수도 있다. 따라서, 차이값들은 부호에서의 그러한 차이들 뿐만 아니라 절대 크기에서의 임의의 차이들을 식별할 수도 있다. 이러한 방식으로, 필터 계수들을 운반하는데 필요한 정보의 양은 감소될 수 있다. 일반적으로, 본 발명에서, "차이값" 이라는 문구는, 절대 크기에서의 차이, 부호에서의 차이, 또는 크기 및 부호에서의 차이를 지칭할 수 있다.
도 1의 도시된 시스템 (10) 은 단지 예시적일 뿐이다. 본 발명의 필터링 기술들은 임의의 인코딩 또는 디코딩 디바이스들에 의해 수행될 수도 있다. 소스 디바이스 (12) 및 목적지 디바이스 (16) 는 그러한 기술들을 지원할 수 있는 코딩 디바이스들의 예일 뿐이다.
소스 디바이스 (12) 의 비디오 인코더 (22) 는, 본 발명의 기술들을 사용하여 비디오 소스 (20) 로부터 수신된 비디오 데이터를 인코딩할 수도 있다. 비디오 소스 (20) 는, 비디오 카메라와 같은 비디오 캡쳐 디바이스, 이전에 캡쳐된 비디오를 포함하는 비디오 아카이브, 또는 비디오 콘텐츠 제공자로부터의 비디오 피드 (feed) 를 포함할 수도 있다. 추가적인 대안으로서, 비디오 소스 (20) 는, 소스 비디오, 또는 라이브 비디오, 아카이브된 비디오, 및 컴퓨터-생성된 비디오의 조합으로서 컴퓨터 그래픽-기반 데이터를 생성할 수도 있다. 몇몇 경우, 비디오 소스 (20) 가 비디오 카메라이면, 소스 디바이스 (12) 및 목적지 디바이스 (16) 는 소위 카메라 전화기 또는 비디오 전화기를 형성할 수도 있다. 각각의 경우에서, 캡쳐된, 미리-캡쳐된 또는 컴퓨터-생성된 비디오는 비디오 인코더 (22) 에 의해 인코딩될 수도 있다.
일단 비디오 데이터가 비디오 인코더 (22) 에 의해 인코딩되면, 인코딩된 비디오 정보는, 예를 들어, 코드 분할 다중 액세스 (CDMA) 또는 또 다른 통신 표준 또는 기술과 같은 통신 표준에 따라 모뎀 (23) 에 의해 변조되고, 송신기 (24) 를 통해 목적지 디바이스 (16) 로 송신될 수도 있다. 모뎀 (23) 은, 신호 변조를 위해 설계된 다양한 믹서들, 필터들, 증폭기들 또는 다른 컴포넌트들을 포함할 수도 있다. 송신기 (24) 는 데이터를 송신하기 위해 설계된 회로들을 포함하며, 그 회로들은 증폭기, 필터, 및 하나 이상의 안테나들을 포함한다.
목적지 디바이스 (16) 의 수신기 (26) 는 채널 (15) 을 통해 정보를 수신하고, 모뎀 (27) 은 그 정보를 복조한다. 비디오 디코더 (28) 에 의해 수행된 비디오 디코딩 프로세스는, 예를 들어, 루프내 디코딩의 일부 또는 디코딩 루프에 후속하는 포스트 필터링 단계로서 필터링을 포함할 수도 있다. 어느 방식이든, 비디오 디코더 (28) 에 의해 적용된 필터 계수들은 본 발명의 기술들을 사용하여 디코딩될 수도 있다. 또한, 채널 (15) 을 통해 운반된 정보의 양을 감소시키기 위해, 상이한 필터 계수들 사이의 유사성이 이용될 수도 있다. 특히, 필터 계수들의 제 2 세트는 필터 계수들의 제 1 세트에 대한 차이값으로서 예측적으로 코딩될 수 있다. 이러한 경우, 비디오 디코더 (28) 는, 비디오 블록들, 및 필터 계수들의 제 1 세트, 및 필터 계수들의 제 2 세트와 관련된 차이값들을 포함하는 필터 정보를 포함한 인코딩된 비트스트림을 수신한다.
비디오 디코더 (28) 는 비디오 블록들을 디코딩하고, 필터 계수들의 제 1 세트 및 차이값들에 기초하여 필터 계수들의 제 2 세트를 생성하며, 필터 계수들의 제 1 및 제 2 세트에 기초하여, 디코딩된 비디오 블록들을 필터링한다. 디코딩되고 필터링된 비디오 블록들은 비디오 프레임들로 어셈블리되어, 디코딩된 비디오를 형성한다. 디스플레이 디바이스 (28) 는 디코딩된 비디오 데이터를 사용자에게 디스플레이하며, 음극선 튜브 (CRT), 액정 디스플레이 (LCD), 플라즈마 디스플레이, 유기 광방출 다이오드 (OLED) 디스플레이, 또는 또 다른 타입의 디스플레이 디바이스와 같은 임의의 다양한 디스플레이 디바이스들을 포함할 수도 있다.
통신 채널 (15) 은, 무선 주파수 (RF) 스펙트럼 또는 하나 이상의 물리 송신 라인, 또는 무선 및 유선 매체의 임의의 조합과 같은 임의의 무선 또는 유선 통신 매체를 포함할 수도 있다. 통신 채널 (15) 은, 로컬 영역 네트워크, 와이드-영역 네트워크, 또는 인터넷과 같은 글로벌 네트워크와 같은 패킷-기반 네트워크의 일부를 형성할 수도 있다. 일반적으로, 통신 채널 (15) 은, 소스 디바이스 (12) 로부터 목적지 디바이스 (16) 로 비디오 데이터를 송신하기 위한 임의의 적절한 통신 매체 또는 상이한 통신 매체의 집합을 나타낸다.
비디오 인코더 (22) 및 비디오 디코더 (28) 는, 대안적으로 MPEG-4, Part 10, AVC (Advanced Video Coding) 로 지칭되는 ITU-T H.264 표준과 같은 비디오 압축 표준에 따라 동작할 수도 있다. 그러나, 본 발명의 기술들은 임의의 다양한 다른 비디오 코딩 표준들에 용이하게 적용될 수도 있다. 상세하게, 인코더 및 디코더에서의 필터링을 허용하는 임의의 표준은, 인코더로부터 디코더로 필터 정보를 전달하는데 필요한 데이터의 양을 감소시킴으로써 본 발명의 교시로부터 이익을 얻을 수도 있다.
도 1에 도시되지는 않았지만, 몇몇 양태들에서, 비디오 인코더 (22) 및 비디오 디코더 (28) 는 각각 오디오 인코더 및 디코더와 통합될 수도 있으며, 공통의 데이터 스트림 또는 별개의 데이터 스트림에서 오디오 및 비디오 양자의 인코딩을 처리하기 위해, 적절한 MUX-DEMUX 유닛, 또는 다른 하드웨어 및 소프트웨어를 포함할 수도 있다. 적용가능하다면, MUX-DEMUX 유닛은, ITU H.223 멀티플렉서 프로토콜, 또는 사용자 데이터그램 프로토콜 (UDP) 와 같은 다른 프로토콜들에 부합할 수도 있다.
비디오 인코더 (22) 및 비디오 디코더 (28) 는 각각, 하나 이상의 마이크로프로세서들, 디지털 신호 프로세서 (DSP), 주문형 집적 회로 (ASIC), 필드 프로그래밍가능 게이트 어레이 (FPGA), 별개의 로직, 소프트웨어, 하드웨어, 펌웨어 또는 이들의 임의의 조합들로서 구현될 수도 있다. 비디오 인코더 (22) 및 비디오 디코더 (28) 각각은 하나 이상의 인코더들 또는 디코더들에 포함될 수도 있으며, 이들 중 어느 하나는, 각각의 이동 디바이스, 가입자 디바이스, 브로드캐스트 디바이스, 서버 등에서 결합된 인코더/디코더 (CODEC) 의 일부로서 통합될 수도 있다.
몇몇 경우, 디바이스들 (12, 16) 은 실질적으로 대칭적인 방식으로 동작할 수도 있다. 예를 들어, 디바이스들 (12, 16) 각각은 비디오 인코딩 및 디코딩 컴포넌트들을 포함할 수도 있다. 따라서, 시스템 (10) 은, 예를 들어, 비디오 스트리밍, 비디오 재생, 비디오 브로드캐스팅, 또는 비디오 화상전화를 위해 비디오 디바이스들 (12, 16) 사이에서의 단방향 또는 양방향 비디오 송신을 지원할 수도 있다.
인코딩 프로세스 동안, 비디오 인코더 (22) 는 다수의 코딩 기술들 또는 단계들을 실행할 수도 있다. 일반적으로, 비디오 인코더 (22) 는 비디오 블록들을 인코딩하기 위해 개별 비디오 프레임들 (또는, 슬라이스들과 같이 다른 독립적으로 코딩된 유닛들) 내의 비디오 블록들에 대해 동작한다. 프레임, 슬라이스, 프레임들의 일부, 화상 그룹, 또는 다른 데이터 구조는, 복수의 비디오 블록들을 포함하는 독립적으로 디코딩가능한 유닛들로서 정의될 수도 있다. 코딩된 유닛들 내의 비디오 블록들은 고정 또는 가변 사이즈를 가질 수도 있으며, 특정된 코딩 표준에 따라 사이즈에서 상이할 수도 있다. 몇몇 경우, 각각의 비디오 프레임은 일련의 독립적으로 디코딩가능한 슬라이스들을 포함할 수도 있고, 각각의 슬라이스는 훨씬 더 작은 블록들로 배열될 수도 있는 일련의 매크로블록들을 포함할 수도 있다.
통상적으로, 매크로블록은, 16×16 블록의 데이터로 지칭된다. ITU-T H.264 표준은, 루마 컴포넌트들에 대한 16×16, 8×8, 또는 4×4, 및 크로마 컴포넌트들에 대한 8×8 과 같은 다양한 블록 사이즈들에서 인트라 예측 뿐만 아니라, 루마 컴포넌트들에 대한 16×16, 16×8, 8×16, 8×8, 8×4, 4×8 및 4×4, 및 크로마 컴포넌트들에 대한 대응하는 스케일링된 사이즈들과 같은 다양한 블록 사이즈들에서 인터 예측을 지원한다. 본 발명에서, "비디오 블록" 이라는 문구는 임의의 사이즈의 비디오 블록을 지칭한다. 또한, 비디오 블록은, 픽셀 도메인에서의 비디오 데이터의 블록, 또는 이산 코사인 변환 (DCT) 도메인, DCT와 유사한 도메인, 웨이블렛 도메인 등과 같은 변환 도메인에서의 데이터의 블록을 지칭할 수도 있다.
비디오 인코더 (22) 는, 코딩될 비디오 블록이 예측 블록을 식별하기 위해 예측 프레임 (또는 다른 코딩된 유닛) 과 비교되는 예측 코딩을 수행할 수도 있다. 코딩될 현재 비디오 블록과 예측 블록 사이의 차이는 잔여 블록으로서 코딩되며, 예측 신택스는 예측 블록을 식별하기 위해 사용된다. 잔여 블록은 변환 및 양자화될 수도 있다. 변환 기술들은 DCT 프로세스 또는 개념적으로 유사한 프로세스, 정수 변환, 웨이블렛 변환, 또는 다른 타입의 변환을 포함할 수도 있다. 일 예로서, DCT 프로세스에서, 변환 프로세스는 변환 계수들로 일 세트의 픽셀값을 변환하며, 그 변환 계수들은 주파수 도메인에서 그 픽셀값들의 에너지를 나타낼 수도 있다. 양자화는 변환 계수들에 통상적으로 적용되고, 임의의 소정의 변환 계수와 관련된 비트들의 수를 제한하는 프로세스를 일반적으로 포함한다.
변환 및 양자화에 후속하여, 양자화되고 변환된 잔여 비디오 블록들에 대해 엔트로피 코딩이 수행될 수도 있다. 또한, 인코딩 동안 정의되는 필터 정보 및 예측 벡터들과 같은 신택스 엘리먼트들은, 엔트로피 코딩된 비트스트림에 포함될 수도 있다. 일반적으로, 엔트로피 코딩은, 양자화된 변환 계수들의 시퀀스 및/또는 다른 신택스 정보를 집합적으로 포함하는 하나 이상의 프로세스들을 포함한다. 지그-재그 스캐닝 기술들과 같은 스캐닝 기술들은, 2차원 비디오 블록들로부터 계수들의 하나 이상의 직렬화된 1차원 벡터들을 정의하기 위해, 양자화된 변환 계수들에 대해 수행된다. 그 후, 스캐닝된 계수들은, 예를 들어, 콘텐츠 적응성 가변 길이 코딩 (CAVLC), 콘텍스트 적응성 바이너리 산술 코딩 (CABAC), 또는 또 다른 엔트로피 코딩 프로세스를 통해 임의의 신택스 정보와 함께 엔트로피 코딩된다.
인코딩 프로세스의 일부로서, 후속 비디오 블록들의 후속 예측-기반 코딩을 위해 사용되는 비디오 데이터를 생성하기 위해, 인코딩된 비디오 블록들은 디코딩될 수도 있다. 이러한 스테이지에서, 비디오 품질을 개선시키기고, 예를 들어, 디코딩된 비디오로부터 블록키니스 아티팩트를 제거하기 위해 필터링이 이용될 수도 있다.
인코더는 비디오 품질을 증진시키는 방식으로 필터 계수를 선택할 수도 있다. 그러한 필터 계수들은 사전-정의된 세트의 계수들로부터 선택될 수도 있거나, 비디오 품질을 증진시키도록 적응적으로 정의될 수도 있다. 일 예로서, 비디오 인코더 (22) 는, 동일한 필터 계수들이 소정의 코딩된 유닛의 모든 비디오 블록들에 대해 사용되도록 그 코딩된 유닛에 대한 일 세트의 필터 계수들을 선택 또는 정의할 수도 있다. 몇몇 경우, 비디오 인코더 (22) 는 수 개의 세트의 필터 계수들을 적용할 수도 있으며, 최상의 품질 비디오 또는 최고 레벨의 압축을 생성하는 세트를 선택할 수도 있다. 임의의 경우에서, 일단 선택되면, 각각의 코딩된 유닛에 대하여 비디오 인코더 (22) 에 의해 적용된 필터 계수들의 세트는, 각각의 소정의 코딩된 유닛에 대한 인코딩 프로세스 동안 적용되었던 동일한 필터링을 비디오 디코더 (28) 가 적용할 수 있도록, 인코딩되고 목적지 디바이스 (18) 의 비디오 디코더 (28) 에 전달될 필요가 있을 수도 있다.
도 2는, 본 발명에 부합하는 비디오 인코더 (50) 를 도시한 블록도이다. 비디오 인코더 (50) 는, 디바이스 (20) 의 비디오 인코더 (22) 또는 상이한 디바이스의 비디오 인코더에 대응할 수도 있다. 도 2에 도시된 바와 같이, 비디오 인코더 (50) 는, 예측 유닛 (32), 가산기들 (48 및 51), 및 레퍼런스 프레임 저장 엘리먼트 (34) 를 포함한다. 또한, 비디오 인코더 (30) 는, 변환 유닛 (38) 및 양자화 유닛 (40) 뿐만 아니라 역양자화 유닛 (42) 및 역변환 유닛 (44) 을 포함한다. 또한, 비디오 인코더 (50) 는 스캔 유닛 (45) 및 엔트로피 코딩 유닛 (46) 을 포함한다. 비디오 인코더 (50) 의 필터 유닛 (47) 은 필터링을 수행할 수도 있으며, 필터 정보가 또 다른 디바이스에 효율적으로 전달될 수 있도록 본 발명에 따라 필터 정보를 인코딩할 수도 있다.
인코딩 프로세스 동안, 비디오 인코더 (50) 는 코딩될 비디오 블록을 수신하고, 예측 유닛 (32) 은 예측 코딩 기술을 수행한다. 인터 코딩에 대해, 예측 유닛 (32) 은, 예측 블록을 정의하기 위해 하나 이상의 비디오 레퍼런스 프레임들내의 다양한 블록들과 인코딩될 비디오 블록을 비교한다. 인트라 코딩에 대해, 예측 유닛 (32) 은, 동일한 코딩된 유닛내의 이웃한 데이터에 기초하여 예측 블록을 생성한다. 예측 유닛 (32) 은 예측 블록을 출력하고, 가산기 (48) 는 잔여 블록을 생성하기 위해 코딩될 비디오 블록으로부터 예측 블록을 감산한다.
인터 코딩에 대해, 예측 유닛 (32) 은, 예측 블록을 지정하고 모션 벡터에 기초하여 예측 블록을 생성하는 모션 벡터를 식별하는 모션 추정 및 모션 보상 유닛들을 포함할 수도 있다. 통상적으로, 모션 추정은, 모션을 추정하는 모션 벡터를 생성하는 프로세스로 고려된다. 예를 들어, 모션 벡터는, 현재의 프레임내의 코딩될 현재 블록에 대한 예측 프레임내의 예측 블록의 변위를 나타낼 수도 있다. 통상적으로, 모션 보상은, 모션 추정에 의해 결정되는 모션 벡터에 기초하여 예측 블록을 페칭 또는 생성하는 프로세스로 고려된다. 인트라 코딩에 대해, 예측 유닛 (32) 은 동일한 코딩된 유닛내의 이웃한 데이터에 기초하여 예측 블록을 생성한다. 하나 이상의 인트라-예측 모드들은, 인트라 예측 블록이 정의될 수 있는 방법을 정의할 수도 있다.
예측 유닛 (32) 이 예측 블록을 출력하고, 가산기 (48) 가 잔여 블록을 생성하기 위해 코딩될 비디오 블록으로부터 예측 블록을 감산한 이후, 변환 유닛 (38) 은 그 잔여 블록에 변환을 적용한다. 변환은, H.264 표준에 의해 정의된 변환과 같은 이산 코사인 변환 (DCT) 또는 개념적으로 유사한 변환을 포함할 수도 있다. 웨이블렛 변환, 정수 변환, 서브-대역 변환 또는 다른 타입의 변환이 또한 사용될 수 있다. 임의의 경우, 변환 유닛 (38) 은 잔여 블록에 변환을 적용하며, 잔여 변환 계수들의 블록을 생성한다. 그 변환은 잔여 정보를 픽셀 도메인으로부터 주파수 도메인으로 변환할 수도 있다.
그 후, 양자화 유닛 (40) 은 비트 레이트를 추가적으로 감소시키기 위해 잔여 변환 계수들을 양자화한다. 예를 들어, 양자화 유닛 (40) 은, 계수들 각각을 코딩하는데 사용되는 비트들의 수를 제한할 수도 있다. 양자화 이후, 스캔 유닛 (45) 은, 2차원 표현으로부터 하나 이상의 직렬화된 1차원 벡터로 양자화된 계수 블록을 스캐닝한다. 스캔 순서는, (지그-재그 스캐닝 또는 또 다른 사전-정의된 순서와 같은) 정의된 순서로 발생하도록 사전-프로그래밍가능할 수도 있거나, 가급적 이전의 코딩 통계에 기초하여 적응적으로 정의될 수도 있다.
이러한 스캐닝 프로세스에 후속하여, 엔트로피 인코딩 유닛 (46) 은, 데이터를 추가적으로 압축하기 위해, CAVLC 또는 CABAC와 같은 엔트로피 코딩 방법에 따라 (임의의 신택스 엘리먼트와 함께) 양자화된 변환 계수들을 인코딩한다. 엔트로피 코딩된 비트스트림내에 포함된 신택스 엘리먼트들은, 인터 코딩에 대해서는 모션 벡터들 또는 인트라 코딩에 대해서는 예측 모드들과 같은 예측 유닛 (32) 으로부터의 예측 신택스를 포함할 수도 있다. 또한, 엔트로피 코딩된 비트스트림에 포함된 신택스 엘리먼트들은, 여기에 설명된 방식으로 인코딩될 수 있는 필터 유닛 (47) 으로부터의 필터 정보를 포함할 수도 있다.
CAVLC는, 엔트로피 코딩 유닛 (46) 에 의한 벡터화된 기준에 적용될 수도 있는 ITU H.264/MPEG4, AVC 표준에 의해 지원되는 엔트로피 코딩 기술의 일 타입이다. CAVLC는, 변환 계수들 및/또는 신택스 엘리먼트들의 직렬화된 "런 (run)" 을 효율적으로 압축시키는 방식으로 가변 길이 코딩 (VLC) 테이블을 사용한다. CABAC는, 엔트로피 유닛 (46) 에 의한 벡터화된 기준에 적용될 수도 있는 ITU H.264/MPEG4, AVC 표준에 의해 지원되는 엔트로피 코딩 기술의 또 다른 타입이다. CABAC는, 바이너리화, 콘텍스트 모델 선택, 및 바이너리 산술 코딩을 포함하는 수 개의 스테이지들을 포함할 수도 있다. 이러한 경우, 엔트로피 코딩 유닛 (46) 은 CABAC에 따라 변환 계수들 및 신택스 엘리먼트들을 코딩한다. 또한, 많은 다른 타입의 엔트로피 코딩 기술들이 존재하며, 새로운 엔트로피 코딩 기술들이 미래에 등장할 것이다. 본 발명은 임의의 특정 엔트로피 코딩 기술에 제한되지 않는다.
엔트로피 인코딩 유닛 (46) 에 의한 엔트로피 코딩에 후속하여, 인코딩된 비디오가 또 다른 디바이스로 송신되거나, 추후의 송신 또는 검색을 위해 아카이브될 수도 있다. 또한, 인코딩된 비디오는, 디코딩 프로세스를 적절히 구성하기 위하여 디코더에 의해 사용될 수 있는 엔트로피 코딩된 벡터들 및 다양한 신택스를 포함할 수도 있다. 역양자화 유닛 (42) 및 역변환 유닛 (44) 은, 각각, 픽셀 도메인에서 잔여 블록을 복원하기 위해 역양자화 및 역변환을 적용한다. 합산기 (51) 는, 레퍼런스 프레임 저장부 (34) 로의 저장을 위해 복원된 비디오 블록을 생성하도록, 예측 유닛 (32) 에 의해 생성된 예측 블록에 복원된 잔여 블록을 가산한다. 그러나, 그러한 저장 이전에, 필터 유닛 (47) 은 비디오 품질을 개선시키기 위해 비디오 블록에 필터링을 적용할 수도 있다. 필터 유닛 (47) 에 의한 그러한 필터링은 블록키니스 또는 다른 아티팩트를 감소시킬 수도 있다. 또한, 필터링은, 코딩될 비디오 블록들에 대한 근접한 매칭을 포함하는 예측 비디오 블록들을 생성함으로써 압축도를 개선시킬 수도 있다. 필터링 이후, 복원된 비디오 블록은, 후속 비디오 프레임 또는 다른 코딩된 유닛내의 블록을 인터-코딩하기 위하여 레퍼런스 블록으로서 예측 유닛 (32) 에 의해 사용될 수도 있다.
필터 유닛 (47) 에 의한 필터링은, 비디오 품질을 증진시키는 방식의 필터 계수 선택을 포함할 수도 있다. 예를 들어, 필터 유닛 (47) 은 계수들의 사전-선택된 세트들로부터의 필터 계수들을 선택할 수도 있거나, 비디오 품질을 증진시키거나 압축도를 개선시키기 위해 필터 계수들을 적응적으로 정의할 수도 있다. 필터 유닛 (47) 은, 동일한 필터 계수들이 소정의 코딩된 유닛의 모든 비디오 블록들에 대해 사용되도록 그 코딩된 유닛에 대한 일 세트의 필터 계수들을 선택하거나 정의할 수도 있다. 몇몇 경우, 필터 유닛 (47) 은 수개의 세트의 필터 계수들을 적용할 수도 있거나, 최상의 품질의 비디오 또는 최고 레벨의 압축을 생성하는 세트를 선택할 수도 있다. 임의의 경우에서, 일단 선택되면, 각각의 코딩된 유닛에 대하여 필터 유닛 (47) 에 의해 적용된 필터 계수들의 세트는 인코딩되고 디코딩 디바이스로 전달될 필요가 있을 수도 있다.
본 발명에 따르면, 필터 유닛 (47) 은, 필터 정보를 인코딩하고 필터 정보를 인코더 (50) 로부터 또 다른 디바이스로 운반하는데 필요한 데이터의 양을 감소시킬 수도 있는 코딩 기술들을 필터 정보에 대해 수행한다. 또한, (프레임, 화상 그룹, 슬라이스 또는 다른 코딩된 유닛과 같은) 각각의 코딩된 유닛에 대해, 필터 유닛 (37) 은, 그 코딩된 유닛의 비디오 블록들에 적용될 필터 계수들을 정의하거나 선택할 수도 있다. 필터 유닛 (37) 은, 레퍼런스 프레임 저장부 (34) 에 저장되어 있는 복원된 비디오 블록들의 비디오 블록들을 필터링하기 위해 필터 계수들을 적용하며, 이는 예측 코딩에 사용될 수도 있다. 필터 유닛은, 인코딩된 비트스트림으로의 포함을 위해 엔트로피 코딩 유닛 (46) 에 포워딩되는 필터 정보로서 필터 계수들을 인코딩할 수 있다.
본 발명의 기술들은, 필터 유닛 (47) 에 의해 정의되거나 선택되는 필터 계수들 중 몇몇이 다른 필터 계수들에 대해 수평 및/또는 수직 대칭을 소유할 수도 있다는 사실을 인식 및 이용한다. 따라서, 그러한 필터 계수들을 운반하는데 필요한 데이터의 양을 감소시키기 위해, 필터 유닛 (47) 은, 필터 계수들 사이의 임의의 수평 및/또는 수직 대칭을 이용하여, 필터 계수들의 제 1 세트에 기초하여 필터 계수들의 제 2 세트를 예측적으로 인코딩한다. 따라서, 필터 유닛 (47) 으로부터 엔트로피 코딩 유닛 (46) 으로의 필터 정보는, 필터 계수들의 제 1 세트, 및 필터 계수들의 제 2 세트와 관련된 차이값들을 포함할 수도 있다. 그 차이값들은, 제 1 세트내의 필터 계수들과 제 2 세트내의 필터 계수들 사이에서 크기에서의 차이들 및 가능하다면 부호에서의 차이들을 정의할 수도 있다. 이러한 정보를 사용하여, 디코더는 필터 계수들 모두를 복원할 수 있을 수도 있다. 이러한 방식으로, 비디오 인코더 (50) 로부터 또 다른 디바이스로 모든 필터 계수들을 전달하는 기술들에 비해 데이터 압축에서의 개선이 달성될 수도 있다.
도 3은, 여기에 설명된 방식으로 인코딩된 비디오 시퀀스를 디코딩하는 비디오 디코더 (60) 의 일 예를 도시한 블록도이다. 수신된 비디오 시퀀스는, 이미지 프레임들의 인코딩된 세트, 프레임 슬라이스들의 세트, 공통적으로 코딩된 화상 그룹 (GOP), 또는 인코딩된 비디오 블록들을 디코딩할 방법을 정의하도록 그러한 인코딩된 비디오 블록들 및 신택스를 포함하는 광범위하게 다양한 코딩된 비디오 유닛들을 포함할 수도 있다.
비디오 디코더 (60) 는, 도 2의 엔트로피 인코딩 유닛 (46) 에 의해 수행되는 인코딩의 역인 디코딩 기능을 수행하는 엔트로피 디코딩 유닛 (52) 을 포함한다. 특히, 엔트로피 디코딩 유닛 (52) 은 CAVLC 또는 CABAC 디코딩, 또는 비디오 인코더 (50) 에 의해 사용되는 임의의 다른 타입의 엔트로피 디코딩을 수행할 수도 있다. 1차원 직렬화된 형식의 엔트로피 디코딩된 비디오 블록들은 스캔 유닛 (55) 에 포워딩될 수도 있다. 엔트로피 디코딩된 예측 신택스는 엔트로피 디코딩 유닛 (52) 으로부터 예측 유닛 (54) 으로 전송될 수도 있으며, 엔트로피 디코딩된 필터 정보는 엔트로피 디코딩 유닛 (52) 으로부터 필터 유닛 (57) 로 전송될 수도 있다.
스캔 유닛 (55) 은, 도 2의 스캔 유닛 (45) 에 의해 수행된 스캐닝에 역인 역스캐닝을 수행한다. 이러한 경우, 스캔 유닛 (55) 은, 계수들의 하나 이상의 1차원 벡터들을 다시 2차원 블록 포맷으로 변환할 수도 있다. 비디오 블록들에 대해 정의된 스캔 순서뿐만 아니라 벡터들의 수 및 사이즈는, 2차원 블록이 복원되는 방법을 정의할 수도 있다.
또한, 비디오 디코더 (60) 는, 예측 유닛 (54), 역양자화 유닛 (56), 역변환 유닛 (58), 레퍼런스 프레임 저장부 (62), 및 합산기 (64) 를 포함한다. 또한, 비디오 디코더 (60) 는, 합산기 (64) 의 출력을 필터링하는 필터 유닛 (57) 을 포함한다. 본 발명에 부합하여, 필터 유닛 (57) 은, 필터 계수들의 제 1 세트, 및 필터 계수들의 제 2 세트와 관련된 차이값들을 포함하는 엔트로피 디코딩된 필터 정보를 수신할 수도 있다. 필터 유닛 (57) 은, 필터 계수들의 제 1 세트 및 차이값들에 기초하여 필터 계수들의 제 2 세트를 생성하도록 구성될 수도 있다. 그 후, 필터 유닛 (57) 은 필터 계수들의 제 1 및 제 2 세트에 기초하여, 디코딩된 비디오 블록들을 필터링할 수 있다.
예측 유닛 (54) 은 엔트로피 디코딩 유닛 (52) 으로부터 (모션 벡터와 같은) 예측 신택스를 수신한다. 예측 신택스를 사용하여, 예측 유닛 (54) 은, 비디오 블록들을 코딩하는데 사용되었던 예측 블록들을 생성한다. 역양자화 유닛 (56) 은 역양자화를 수행하고, 역변환 유닛 (58) 은 역변환을 수행하여, 잔여 비디오 블록들의 계수들을 픽셀 도메인으로 다시 변경한다. 가산기 (64) 는, 비디오 블록을 복원하기 위하여 역변환 유닛 (58) 에 의해 출력된 대응하는 잔여 블록과 각각의 예측 블록을 결합시킨다.
필터 유닛 (57) 은, 각각의 코딩된 유닛에 적용될 필터 계수들을 생성하고, 그 후, 그 코딩된 유닛의 복원된 비디오 블록들을 필터링하기 위해 그러한 필터 계수들을 적용한다. 필터링된 비디오 블록들은, 비디오 정보의 디코딩된 프레임들 (또는 다른 디코딩가능한 유닛들) 을 복원하기 위해 레퍼런스 프레임 저장부 (62) 에서 누산된다. 디코딩된 유닛들은 사용자로의 제공을 위해 비디오 디코더 (60) 로부터 출력될 수도 있지만, 또한, 후속 예측 디코딩에서의 사용을 위해 저장될 수도 있다.
도 4 내지 도 6은, 다른 필터 계수들에 대해 수평 및/또는 수직 대칭을 소유할 수도 있는 예시적인 필터 계수들을 개념적으로 도시한 개념적인 그래프이다. 본 발명의 기술들은, 비디오 인코더로부터 비디오 디코더로 필터 계수들을 운반하는데 필요한 데이터의 양을 감소시키기 위해 상이한 필터 계수들 사이의 그러한 수평 및/또는 수직 대칭을 이용한다. 특히, 모든 필터 계수들을 전달하기 보다는, 본 발명의 기술들은 필터 계수들의 제 1 세트, 및 필터 계수들의 제 2 세트와 관련된 차이값들을 전달한다. 차이값들은, 필터 계수들의 제 1 세트와 필터 계수들의 제 2 세트 사이의 차이들, 예를 들어, 크기 및 부호에서의 차이들을 나타낼 수도 있다. 이러한 방식으로, 필터 계수들의 제 2 세트는, 필터 계수들의 제 1 세트에 기초하여 예측적으로 코딩된다.
차이값들은, 필터 계수들의 제 2 세트를 전달하도록 전송될 필요가 있는 데이터의 양보다 적은 데이터를 포함할 수도 있다. 따라서, 본 발명의 기술들은, 적어도 일부의 대칭을 소유하는 필터 계수들을 포함하는 인코딩된 비디오와 관련된 데이터 압축을 개선시킬 수도 있다. 도 4 내지 도 6의 개념적인 예에서, "X" 로 지정된 필터 계수들은 인코딩 디바이스로부터 디코딩 디바이스로 송신되는 계수들을 나타낼 수도 있지만, "O" 로 지정된 계수들은, "O" 로 지정된 이들 계수들에 대해 차이값들이 인코딩 디바이스로부터 디코딩 디바이스로 송신되도록 예측적으로 코딩된 계수들을 나타낼 수도 있다.
도 4는, 2차원 공간내에 배치된 예시적인 필터 계수들을 개념적으로 도시한다. 값 f(l, k) 은, 각각의 계수가 2차원 l-k 공간내에서 "l" 컴포넌트 및 "k" 컴포넌트를 갖도록 각각의 필터 계수를 나타낼 수도 있다. 도 4에 도시된 바와 같이, 사분면 Q1 내에 상주하는 계수들은, 사분면들 Q2, Q3 및 Q4 내에 상주하는 계수들에 대해 수평, 수직 및 대각 대칭을 소유할 수도 있다. 더 상세하게, 사분면 Q2 내의 계수들은 사분면 Q1 의 계수들과 유사할 수도 있지만, 수직 (l) 축에 대해 대칭이다. 유사하게, 사분면 Q3 내의 계수들은 사분면 Q1 의 계수들과 유사할 수도 있지만, 수평 (k) 축에 대해 대칭이다. 사분면 Q4 내의 계수들은 사분면 Q1 의 계수들과 유사할 수도 있지만, 수직 (l) 축 및 수평 (k) 축에 대해 대칭이며, 이는 대각 대칭으로 지칭될 수도 있다. 임의의 경우에서, 사분면 Q1 내의 필터 계수들은, 사분면 Q2 내지 Q4 내의 계수들을 예측하는데 사용될 수도 있다. 따라서, 인코딩 디바이스는, 사분면 Q1에 대한 필터 계수들 및 사분면 Q2 내지 Q4 의 계수들에 대한 차이값들을 디코딩 디바이스에 송신할 수도 있다. 디코딩 디바이스는 사분면 Q1에 대한 필터 계수들 및 사분면 Q2 내지 Q4에 대한 차이값들을 사용하여, 사분면 Q2 내지 Q4 와 관련된 실제 계수들을 생성할 수도 있다. 또한, 차이값들은, 필터 계수들의 제 2 세트를 전달하도록 전송될 필요가 있는 데이터의 양보다 적은 데이터를 포함할 수도 있다. 사분면 Q1 내의 필터 계수들은 모든 필터 계수들의 약 1/4 를 포함하지만, 사분면 Q2 내지 Q4의 계수들은 모든 필터 계수들의 약 3/4 를 포함할 수도 있다. 수직 (l) 축 및 수평 (k) 축을 따라 중첩이 발생할 수도 있다.
몇몇 경우에서, 2차원 공간내의 필터 계수들에 대해 수직 대칭만이 또는 수평 대칭만이 존재한다. 도 5의 개념적인 예에서, 사분면 Q1 및 Q2 내에 상주하는 계수들은 사분면 Q3 및 Q4의 계수들과 유사할 수도 있지만, 수평 (k) 축에 대해 대칭이다. 이러한 경우, 사분면 Q1 및 Q2 내의 필터 계수들은 사분면 Q3 및 Q4 내의 계수들을 예측하는데 사용될 수도 있다. 따라서, 인코딩 디바이스는, 사분면 Q1 및 Q2에 대한 필터 계수들 및 사분면 Q3 및 Q4에 대한 차이값들을 디코딩 디바이스에 송신할 수도 있다. 디코딩 디바이스는 사분면 Q1 및 Q2에 대한 필터 계수들 및 사분면 Q3 및 Q4에 대한 차이값들을 사용하여, 사분면 Q3 및 Q4와 관련된 실제 계수들을 생성할 수도 있다. 사분면 Q1 및 Q2 내의 필터 계수들은 모든 필터 계수들의 약 절반을 포함할 수도 있고, 사분면 Q3 및 Q4의 필터 계수들은 모든 필터 계수들의 약 절반을 포함할 수도 있다. 이러한 경우, 수평 (k) 축을 따라 중첩이 발생할 수도 있다.
도 6의 개념적인 예에서, 사분면 Q1 및 Q3 내에 상주하는 계수들은 사분면 Q2 및 Q4의 계수들과 유사할 수도 있지만, 수직 (l) 축에 대해 대칭이다. 이러한 경우, 사분면 Q1 및 Q3 내의 필터 계수들은 사분면 Q2 및 Q4 내의 계수들을 예측하는데 사용될 수도 있다. 따라서, 인코딩 디바이스는 사분면 Q1 및 Q3에 대한 필터 계수들 및 사분면 Q2 및 Q4 에 대한 차이값들을 디코딩 디바이스에 송신할 수도 있다. 디코딩 디바이스는 사분면 Q1 및 Q3에 대한 필터 계수들 및 사분면 Q2 및 Q4 에 대한 차이값들을 사용하여, 사분면 Q2 및 Q4와 관련된 실제 계수들을 생성할 수도 있다. 사분면 Q1 및 Q3 내의 필터 계수들은 모든 필터 계수들의 약 절반을 포함할 수도 있고, 사분면 Q2 및 Q4 의 필터 계수들은 모든 필터 계수들의 약 절반을 포함할 수도 있다. 이러한 경우, 수직 (l) 축을 따라 중첩이 발생할 수도 있다.
몇몇 경우에서, 특정한 필터 계수들이 다른 계수들보다 필터링에서 더 중요할 수도 있다. 그러한 경우, 덜 중요한 필터 계수들보다 더 중요한 필터 계수들을 더 많은 비트들로 코딩하는 것이 유리할 수도 있다. 즉, 인코딩 디바이스는, 필터 계수들의 제 1 세트내의 상이한 필터 계수들에 상이한 수의 비트들을 할당할 수도 있다. 종종, 예를 들어, "l" 축 또는 "k" 축 상에 존재하는 필터 계수들이 다른 필터 계수들보다 필터링에서 더 중요할 수도 있다. 이러한 경우, 제로의 l 또는 k를 갖고, 따라서, "l" 축 또는 'k" 축에 존재하는 필터 계수들에 더 많은 해상도 또는 대역폭을 전용하는 것이 유리할 수도 있다.
일반적으로, 바람직한 필터 (예를 들어, 도 2의 필터 유닛 (47)) 는, 본래의 신호와 디코딩되고 필터링된 신호 사이의 에러를 최소화시킴으로써 설계될 수도 있다. 필터의 계수들은 다음과 같이 표현될 수도 있다.
Figure pct00001
그 후, 필터 계수들 g(k,l) 은 다음과 같이 양자화되고 표현될 수도 있다.
Figure pct00002
normFact 값은 정규화 팩터를 나타낸다. normFact 값은 2n 과 동일할 수도 있지만, 다른 정규화 값들을 가정할 수도 있다. 더 큰 값의 normFact 는, 양자화된 필터 계수들 f(k,l) 이 더 적은 값의 normFact 를 사용하는 필터 계수들보다 더 양호한 성능을 제공하도록 하는 더 큰 정확도를 생성한다. 한편, 더 큰 값의 normFact 는, 더 적은 값의 normFact 를 사용하는 필터 계수들보다 더 많은 송신할 비트를 요구하는 계수들 f(k,l) 을 생성한다.
디코더에서, 디코딩된 필터 계수들 f(k,l) 은 다음과 같이 복원된 이미지 R(i,j) 에 적용되며,
Figure pct00003
여기서, i 및 j는 이미지 또는 비디오 블록 R과 관련된 픽셀 위치들을 나타내고, i=0, ..., M-1 및 j=0, ..., N-1 이다. 본 발명은, 필터 계수들 f(k,l) 을 송신하는데 필요한 비트들의 수를 감소시킬 수 있는 기술을 제안한다.
k>0 또는 l>0 인 인덱스들 k 및 l를 갖는 필터 계수들은 다음과 같이 k<=0 및 l<=0 인 계수들 f(k,l) 로부터 예측될 수 있으며, 여기서 d(k,l) 은 k 및 l에 의해 정의된 소정의 위치에서의 차이값을 나타낸다.
Figure pct00004
계수 f(0,0) 은 다음과 같이 예측될 수 있다.
Figure pct00005
먼저, 필터 유닛 (47) 은, k=-K, ..., 0 및 l=-L, ..., 0 이고 k 또는 l가 둘 다 0과 동일하지 않는 계수들 f(k,l) 을 코딩할 수도 있다. 가장 큰 크기를 갖는 f(k,l) 을 나타내는데 필요한 비트수 n은, 필터 유닛 (47) 에 의해 코딩되고 비디오 인코더 (50) 에 의해 전송될 수도 있으며, 각각의 계수 f(k,l) 는 n 비트를 사용하여 코딩되고 전송된다. 다음으로, 계수 크기 차이값 d(k,l) 은 필터 유닛 (47) 에 의해 코딩되고 비디오 인코더 (50) 에 의해 전송될 수도 있다. 또한, 가장 큰 크기를 갖는 d(k,l) 를 나타내는데 필요한 비트수 m은 먼저 비디오 인코더 (50) 에 의해 전송될 수도 있으며, 그 후 후속하여, 각각의 계수 차이 d(k,l) 은 m비트를 사용하여 전송될 수도 있다.
계수들 g(k,l) 의 크기는 k 및 l 값에 의존할 수도 있다. 일반적으로, 가장 큰 크기를 갖는 계수는 계수 g(0,0) 이다. 또한, 가장 큰 크기를 갖는 것으로 기대되는 다른 계수들은 k 또는 l의 값이 0과 동일한 계수들이다. 이러한 관측은 그 계수들을 송신하는데 필요한 비트의 양을 추가적으로 감소시키는데 이용될 수 있다. 특히, 필터 계수들의 양자화에서 사용되는 normFact 는 k 및 l의 값들에 의존할 수 있다. 따라서, 계수들을 나타내는데 사용되는 비트수는 k 및 l의 값에 의존할 수 있다. 예를 들어, k=-K, ..., 0 및 l=-L, ..., 0 인 계수들 f(k,l) 을 코딩 및 송신할 경우, k 또는 l이 0과 동일한 계수들을 전송하는데 n비트가 사용될 수도 있지만, n-l 비트가 나머지 계수들을 전송하는데 사용될 수도 있다.
필터 계수들을 전송하는데 사용되는 비트수를 훨씬 더 추가적으로 감소시키기 위해, 정확한 대칭이 필터 계수들에 부과될 수도 있다. 예를 들어, 몇몇 예에서, 모든 필터 계수 차이값들 d(k,l) 이 제로가 되도록 강제될 수도 있으며, 따라서, 모든 필터 계수들을 전송하는데 필요한 계수들의 약 1/4 로, 전송될 필터 계수들의 수를 컷팅시킨다. 대안적으로, 정확한 수평 또는 정확한 수직 대칭이 부과될 수도 있으며, 따라서, 모든 필터 계수들을 전송하는데 필요한 계수들의 약 절반으로, 전송될 필터 계수들의 수를 컷팅시킨다.
정확한 대칭이 수직 차원, 수평 차원 또는 수직 및 수평 차원에서 부과되는 이들 예에서, 차이값들은 전송될 필요가 없을 수도 있지만, 크기에 대해 제로인 것으로 가정될 수도 있다. 디코딩 디바이스는, 복수의 비디오 블록들을 포함하는 비디오 데이터의 인코딩된 유닛, 및 필터 계수들의 제 1 세트를 포함하는 필터 정보를 포함한 인코딩된 비트스트림을 수신할 것이다. 이러한 경우, 디코딩 디바이스는, 복수의 비디오 블록들을 디코딩하고, 필터 계수들의 제 1 세트에 기초하여 필터 계수들의 제 2 세트를 생성하며, 필터 계수들의 제 1 및 제 2 세트에 기초하여, 디코딩된 복수의 비디오 블록들을 필터링할 것이다.
도 4에서, 완벽한 대칭이 인코더에 부과되면, 사분면 1에 대한 사분면 Q2 내지 Q4에서의 계수 크기 차이들과 관련된 차이값들은 제로가 될 수도 있으며, 사분면 Q2 내지 Q4의 필터 계수들에 대한 임의의 정보를 전달할 필요가 없는 것으로 가정될 수도 있다. 그러나, 사분면 Q2 내지 Q4 내의 크기 차이들에 대한 차이값들의 전달은, 사분면 Q2 내지 Q4의 필터 계수 크기들이 사분면 Q1의 계수들과 약간 상이하게 함으로써 코딩 이점을 가질 수도 있다.
도 7은 본 발명에 부합하는 인코딩 기술을 도시한 흐름도이다. 도 7은 도 2의 비디오 인코더 (50) 의 관점으로부터 설명될 것이다. 도 7에 도시된 바와 같이, 비디오 인코더 (50) 는, 예를 들어, 각각의 비디오 블록들을 예측적으로 코딩하기 위해 예측 유닛 (32) 을 호출함으로써, 비디오 블록들의 유닛을 인코딩한다 (71). 필터 유닛 (47) 은, 비디오 블록들의 유닛에 대한 필터 계수들을 선택하고 (72), 선택된 필터 계수들에 기초하여 이들 비디오 블록들을 필터링한다 (73). 필터 유닛 (47) 은, 필터 계수들의 제 1 세트에 대한 수평 및/또는 수직 대칭에 기초하여 필터 계수들의 제 2 세트를 인코딩하며 (74), 이는 필터 계수들의 제 2 세트와 필터 계수들의 제 1 세트 사이의 차이를 나타내는, 필터 계수들의 제 2 세트에 대한 차이값들의 생성을 포함할 수도 있다. 그 후, 비디오 인코더 (50) 는 필터 계수들의 제 1 세트 및 차이값들을 출력하여, 이러한 정보가 또 다른 디바이스에 송신될 수 있게 한다 (75). 특히, 엔트로피 인코딩 유닛 (46) 은, 필터 계수들의 제 1 세트, 및 필터 계수들의 제 2 세트와 관련된 차이값들을 포함하는 엔트로피 코딩된 필터 정보 및 엔트로피 코딩된 비디오 블록을 포함한 출력 비트스트림을 생성할 수도 있다.
도 8은 본 발명에 부합하는 인코딩 기술을 도시한 흐름도이다. 도 8은 도 3의 비디오 디코더 (60) 의 관점으로부터 설명될 것이다. 도 8에 도시된 바와 같이, 비디오 디코더 (60) 는 디코딩된 비트스트림에서 코딩된 유닛을 수신한다 (81). 엔트로피 디코딩 유닛 (52) 은, 예측 신택스 및 필터 정보와 같은 다양한 신택스 및 양자화된 계수들을 생성하기 위해 비트스트림을 디코딩할 수도 있다. 필터 유닛 (47) 은 필터 정보를 수신하고, 필터 계수들의 제 1 세트, 및 필터 계수들의 제 2 세트와 관련된 차이값들을 식별한다 (82). 필터 유닛 (47) 은, 필터 계수들의 제 1 세트 및 차이값들에 기초하여 필터 계수들의 제 2 세트를 생성한다 (83). 그 후, 필터 유닛 (47) 은 필터 계수들에 기초하여, 코딩된 유닛의 비디오 블록들을 필터링한다 (84). 필터 계수들의 제 2 세트 그 자체가 비트스트림에 포함되지 않으므로, 비트스트림내의 압축 레벨이 개선될 수도 있다. 차이값들은 필터 계수들의 제 2 세트보다 적은 데이터를 포함할 수도 있지만, 필터 계수들의 제 1 세트가 주어지면, 차이값들은 여기에 설명된 바와 같이 필터 계수들의 제 2 세트를 생성하기 위해 사용될 수 있다.
도 9는 본 발명에 부합하는 인코딩 기술을 도시한 흐름도이다. 그러나, 도 9의 예에서, 크기 차이와 관련된 차이값들이 필터 계수들의 제 2 세트에 대해 제로인 것으로 가정되도록 정확한 대칭이 부과된다. 이러한 경우, 필터 계수들의 제 2 세트는 비트스트림으로부터 배제될 수 있으며, 필터 계수들의 제 1 세트 및 알려진 대칭에 기초하여 디코더에서 유도될 수 있다. 도 9는 도 1의 목적지 디바이스 (16) 의 비디오 디코더 (28) 의 관점으로부터 설명될 것이다.
도 9에 도시된 바와 같이, 비디오 디코더 (28) 는, 인코딩된 유닛 및 필터 계수들의 제 1 세트를 포함하는 인코딩된 비트스트림을 수신한다 (91). 비디오 디코더 (28) 는, 필터 계수들의 제 1 세트 및 알려진 대칭에 기초하여 필터 계수들의 제 2 세트를 생성한다 (92). 이러한 경우, 비디오 디코더 (28) 는, 인코딩 프로세스 동안 비디오 인코더 (22) 가 필터 계수들에 완전한 대칭을 부가하였다는 것을 인식하도록 프로그래밍될 수도 있다. 비디오 디코더 (28) 는, 비트스트림에 포함되었던 제 1 세트 및 필터 계수들의 제 1 세트 및 알려진 대칭에 기초하여 유도되었던 제 2 세트 양자를 포함하는 필터 계수들에 기초하여 그 코딩된 유닛의 비디오 블록들을 필터링한다 (93).
도 9에 부합된 몇몇 경우에서, 비트스트림은, 차이값들이 제로인것으로 가정될 수도 있도록 수직 및/또는 수평 차원에서 필터 계수들에 완전한 대칭이 부과되었는지를 표시하기 위해, 1 비트 또는 2 비트 플래그와 같은 간단한 신택스 엘리먼트를 포함할 수도 있다. 이러한 경우, 비디오 디코더 (28) 는 그 플래그에 기초하여 대칭 또는 비대칭을 식별할 수 있고, 대칭이 존재하면, 비디오 디코더 (28) 는 필터 계수들의 제 1 세트 및 알려진 대칭에 기초하여 필터 계수들의 제 2 세트를 생성할 수 있다 (92). 알려진 대칭은, 필터 계수들의 제 1 세트에 대해 필터 계수들의 제 2 세트에서의 부호 변화를 초래할 수도 있다.
본 발명의 기술들은, 무선 핸드셋 및 집적 회로 (IC) 또는 IC들의 세트 (즉, 칩셋) 를 포함하는 광범위하게 다양한 디바이스들 또는 장치들에서 실현될 수도 있다. 임의의 컴포넌트들, 모듈들 또는 유닛들은 기능성 양태들을 강조하도록 제공되어 설명되며, 상이한 하드웨어 유닛들에 의한 실현을 반드시 요구할 필요는 없다.
따라서, 여기에 설명된 기술들은 하드웨어, 소프트웨어, 펌웨어, 또는 이들의 임의의 조합으로 구현될 수도 있다. 모듈 또는 컴포넌트로서 설명된 임의의 피처들은 집적 회로 디바이스내에서 함께 또는 별개이지만 상호동작가능한 로직 디바이스로서 별개로 구현될 수도 있다. 소프트웨어로 구현되면, 그 기술들은, 실행될 경우 상술된 하나 이상의 방법들을 수행하는 명령들을 포함하는 컴퓨터-판독가능 매체에 의해 적어도 부분적으로 실현될 수도 있다. 컴퓨터-판독가능 데이터 저장 매체는, 패키징 재료를 포함할 수도 있는 컴퓨터 프로그램 제품의 일부를 형성할 수도 있다.
컴퓨터-판독가능 매체는, 동기식 동적 랜덤 액세스 메모리 (SDRAM) 와 같은 랜덤 액세스 메모리 (RAM), 판독 전용 메모리 (ROM), 비휘발성 랜덤 액세스 메모리 (NVRAM), 전기적으로 소거가능한 프로그래밍가능 판독 전용 메모리 (EEPROM), 플래시 메모리, 자성 또는 광 데이터 저장 매체 등을 포함할 수도 있다. 부가적으로 또는 대안적으로, 그 기술들은, 명령 또는 데이터 구조의 형태로 코드를 운반 또는 전달하고, 컴퓨터에 의해 액세스, 판독, 및/또는 실행될 수 있는 컴퓨터-판독가능 통신 매체에 의해 적어도 부분적으로 실현될 수도 있다.
코드는, 하나 이상의 디지털 신호 프로세서 (DSP), 범용 마이크로프로세서, 주문형 집적 회로 (ASIC), 필드 프로그래밍가능 로직 어레이 (FPGA), 또는 다른 동등한 집적 또는 개별 로직 회로와 같은 하나 이상의 프로세서들에 의해 실행될 수도 있다. 따라서, 여기에 사용된 바와 같이, "프로세서" 라는 용어는, 전술한 구조 또는 여기에 설명된 기술들의 구현에 적합한 임의의 다른 구조 중 임의의 구조를 지칭할 수도 있다. 또한, 몇몇 양태에서, 여기에 설명된 기능은, 인코딩 및 디코딩을 위해 구성된 전용 소프트웨어 모듈 또는 하드웨어 모듈 내에 제공되거나, 결합된 비디오 인코더-디코더 (CODEC) 에 포함될 수도 있다. 또한, 그 기술들은 하나 이상의 회로 또는 로직 엘리먼트에 완전히 구현될 수 있다.
본 발명의 다양한 양태들이 설명되었다. 이들 및 다른 양태들은 다음의 청구항의 범위내에 있다.

Claims (72)

  1. 비디오 데이터를 인코딩하는 방법으로서,
    상기 비디오 데이터의 유닛을 인코딩하는 단계로서, 상기 유닛은 복수의 비디오 블록들을 포함하는, 상기 비디오 데이터의 유닛을 인코딩하는 단계;
    상기 비디오 데이터의 유닛의 비디오 블록들을 필터링하기 위한 필터 계수들을 선택하는 단계; 및
    상기 필터 계수들의 제 1 세트에 기초하여, 상기 필터 계수들의 제 2 세트와 관련된 차이값들을 생성하는 단계를 포함하는, 비디오 데이터 인코딩 방법.
  2. 제 1 항에 있어서,
    상기 필터 계수들의 제 1 세트, 및 상기 필터 계수들의 제 2 세트와 관련된 차이값들을 포함하는 인코딩된 비트스트림을 송신하는 단계를 더 포함하는, 비디오 데이터 인코딩 방법.
  3. 제 1 항에 있어서,
    상기 필터 계수들의 제 2 세트는, 상기 필터 계수들의 제 1 세트에 대해 수직 대칭 또는 수평 대칭을 갖는, 비디오 데이터 인코딩 방법.
  4. 제 1 항에 있어서,
    상기 필터 계수들의 제 2 세트의 제 1 서브세트는 상기 필터 계수들의 제 1 세트에 대해 수평 대칭을 갖고, 상기 필터 계수들의 제 2 세트의 제 2 서브세트는 상기 필터 계수들의 제 1 세트에 대해 수직 대칭을 갖는, 비디오 데이터 인코딩 방법.
  5. 제 1 항에 있어서,
    상기 필터 계수들의 제 1 세트는 상기 필터 계수들의 약 절반을 포함하고, 상기 필터 계수들의 제 2 세트는 상기 필터 계수들의 약 절반을 포함하는, 비디오 데이터 인코딩 방법.
  6. 제 1 항에 있어서,
    상기 필터 계수들의 제 1 세트는 상기 필터 계수들의 약 1/4 를 포함하고, 상기 필터 계수들의 제 2 세트는 상기 필터 계수들의 약 3/4 를 포함하는, 비디오 데이터 인코딩 방법.
  7. 제 1 항에 있어서,
    상기 필터 계수들의 제 1 세트내의 상이한 필터 계수들에 상이한 수의 비트들을 할당하는 단계를 더 포함하는, 비디오 데이터 인코딩 방법.
  8. 제 7 항에 있어서,
    상기 필터 계수들은 f(k,l) 로서 정의되고, 상기 k 및 상기 l은 2차원 k-l 공간내의 수평 및 수직 컴포넌트이며,
    상기 비디오 데이터 인코딩 방법은,
    상기 필터 계수들의 제 1 세트내에서 제로보다 큰 k 및 l 의 절대값에 대응하는 필터 계수들에 비해, 상기 필터 계수들의 제 1 세트내에서 제로의 k 또는 l의 절대값에 대응하는 필터 계수들에 더 큰 수의 비트들을 할당하는 단계를 더 포함하는, 비디오 데이터 인코딩 방법.
  9. 제 1 항에 있어서,
    상기 비디오 데이터의 유닛은, 프레임, 화상 그룹, 프레임의 슬라이스, 및 프레임내의 독립적으로 코딩된 비디오 블록들의 서브세트 중 하나를 포함하는, 비디오 데이터 인코딩 방법.
  10. 비디오 데이터를 디코딩하는 방법으로서,
    복수의 비디오 블록들을 포함하는 상기 비디오 데이터의 인코딩된 유닛, 및 필터 계수들의 제 1 세트, 및 필터 계수들의 제 2 세트와 관련된 차이값들을 포함하는 필터 정보를 포함하는 인코딩된 비트스트림을 수신하는 단계;
    상기 복수의 비디오 블록들을 디코딩하는 단계;
    상기 필터 계수들의 제 1 세트 및 상기 차이값들에 기초하여 상기 필터 계수들의 제 2 세트를 생성하는 단계; 및
    상기 필터 계수들의 제 1 세트 및 상기 필터 계수들의 제 2 세트에 기초하여 상기 디코딩된 복수의 비디오 블록들을 필터링하는 단계를 포함하는, 비디오 데이터 디코딩 방법.
  11. 제 10 항에 있어서,
    상기 필터 계수들의 제 2 세트는, 상기 필터 계수들의 제 1 세트에 대해 수직 대칭 또는 수평 대칭을 갖는, 비디오 데이터 디코딩 방법.
  12. 제 10 항에 있어서,
    상기 필터 계수들의 제 2 세트의 제 1 서브세트는 상기 필터 계수들의 제 1 세트에 대해 수평 대칭을 갖고, 상기 필터 계수들의 제 2 세트의 제 2 서브세트는 상기 필터 계수들의 제 1 세트에 대해 수직 대칭을 갖는, 비디오 데이터 디코딩 방법.
  13. 제 10 항에 있어서,
    상기 필터 계수들의 제 1 세트는 상기 필터 계수들의 약 절반을 포함하고, 상기 필터 계수들의 제 2 세트는 상기 필터 계수들의 약 절반을 포함하는, 비디오 데이터 디코딩 방법.
  14. 제 10 항에 있어서,
    상기 필터 계수들의 제 1 세트는 상기 필터 계수들의 약 1/4 를 포함하고, 상기 필터 계수들의 제 2 세트는 상기 필터 계수들의 약 3/4 를 포함하는, 비디오 데이터 디코딩 방법.
  15. 제 10 항에 있어서,
    상기 필터 계수들의 제 1 세트내의 상이한 필터 계수들은 상이한 수의 비트들에 의해 표현되는, 비디오 데이터 디코딩 방법.
  16. 제 15 항에 있어서,
    상기 필터 계수들은 f(k,l) 로서 정의되고, 상기 k 및 상기 l은 2차원 k-l 공간내의 수평 및 수직 컴포넌트이며,
    상기 필터 계수들의 제 1 세트내에서 제로보다 큰 k 및 l 의 절대값에 대응하는 필터 계수들에 비해, 상기 필터 계수들의 제 1 세트내에서 제로의 k 또는 l의 절대값에 대응하는 필터 계수들에 더 큰 수의 비트들이 할당되는, 비디오 데이터 디코딩 방법.
  17. 제 10 항에 있어서,
    상기 비디오 데이터의 유닛은, 프레임, 화상 그룹, 프레임의 슬라이스, 및 프레임내의 독립적으로 코딩된 비디오 블록들의 서브세트 중 하나를 포함하는, 비디오 데이터 디코딩 방법.
  18. 비디오 데이터를 인코딩하는 장치로서,
    상기 비디오 데이터의 유닛을 인코딩하는 예측 코딩 유닛으로서, 상기 비디오 데이터의 유닛은 복수의 비디오 블록들을 포함하는, 상기 예측 코딩 유닛; 및
    상기 비디오 데이터의 유닛의 비디오 블록들을 필터링하기 위한 필터 계수들을 선택하고, 상기 필터 계수들의 제 1 세트에 기초하여 상기 필터 계수들의 제 2 세트와 관련된 차이값들을 생성하는 필터 유닛을 포함하는, 비디오 데이터 인코딩 장치.
  19. 제 18 항에 있어서,
    상기 필터 계수들의 제 1 세트, 및 상기 필터 계수들의 제 2 세트와 관련된 차이값들을 포함하는 인코딩된 비트스트림을 생성하는 엔트로피 코딩 유닛을 더 포함하는, 비디오 데이터 인코딩 장치.
  20. 제 18 항에 있어서,
    상기 필터 계수들의 제 2 세트는, 상기 필터 계수들의 제 1 세트에 대해 수직 대칭 또는 수평 대칭을 갖는, 비디오 데이터 인코딩 장치.
  21. 제 18 항에 있어서,
    상기 필터 계수들의 제 2 세트의 제 1 서브세트는 상기 필터 계수들의 제 1 세트에 대해 수평 대칭을 갖고, 상기 필터 계수들의 제 2 세트의 제 2 서브세트는 상기 필터 계수들의 제 1 세트에 대해 수직 대칭을 갖는, 비디오 데이터 인코딩 장치.
  22. 제 18 항에 있어서,
    상기 필터 계수들의 제 1 세트는 상기 필터 계수들의 약 절반을 포함하고, 상기 필터 계수들의 제 2 세트는 상기 필터 계수들의 약 절반을 포함하는, 비디오 데이터 인코딩 장치.
  23. 제 18 항에 있어서,
    상기 필터 계수들의 제 1 세트는 상기 필터 계수들의 약 1/4 를 포함하고, 상기 필터 계수들의 제 2 세트는 상기 필터 계수들의 약 3/4 를 포함하는, 비디오 데이터 인코딩 장치.
  24. 제 18 항에 있어서,
    상기 필터 유닛은, 상기 필터 계수들의 제 1 세트내의 상이한 필터 계수들에 상이한 수의 비트들을 할당하는, 비디오 데이터 인코딩 장치.
  25. 제 24 항에 있어서,
    상기 필터 유닛은 f(k,l) 로서 상기 필터 계수들을 정의하고, 상기 k 및 상기 l은 2차원 k-l 공간내의 수평 및 수직 컴포넌트이며,
    상기 필터 유닛은, 상기 필터 계수들의 제 1 세트내에서 제로보다 큰 k 및 l 의 절대값에 대응하는 필터 계수들에 비해, 상기 필터 계수들의 제 1 세트내에서 제로의 k 또는 l의 절대값에 대응하는 필터 계수들에 더 큰 수의 비트들을 할당하는, 비디오 데이터 인코딩 장치.
  26. 제 18 항에 있어서,
    상기 비디오 데이터의 유닛은, 프레임, 화상 그룹, 프레임의 슬라이스, 및 프레임내의 독립적으로 코딩된 비디오 블록들의 서브세트 중 하나를 포함하는, 비디오 데이터 인코딩 장치.
  27. 제 18 항에 있어서,
    상기 비디오 데이터 인코딩 장치는 집적 회로를 포함하는, 비디오 데이터 인코딩 장치.
  28. 제 18 항에 있어서,
    상기 비디오 데이터 인코딩 장치는 마이크로프로세서를 포함하는, 비디오 데이터 인코딩 장치.
  29. 비디오 데이터를 디코딩하는 장치로서,
    복수의 비디오 블록들을 포함하는 상기 비디오 데이터의 인코딩된 유닛, 및 필터 계수들의 제 1 세트, 및 필터 계수들의 제 2 세트와 관련된 차이값들을 포함하는 필터 정보를 포함하는 인코딩된 비트스트림을 수신하는 유닛;
    상기 복수의 비디오 블록들을 디코딩하는 예측 유닛; 및
    상기 필터 계수들의 제 1 세트 및 상기 차이값들에 기초하여 상기 필터 계수들의 제 2 세트를 생성하고, 상기 필터 계수들의 제 1 세트 및 상기 필터 계수들의 제 2 세트에 기초하여 상기 디코딩된 복수의 비디오 블록들을 필터링하는 필터 유닛을 포함하는, 비디오 데이터 디코딩 장치.
  30. 제 29 항에 있어서,
    상기 인코딩된 비트스트림을 수신하는 유닛은, 상기 복수의 비디오 블록들 및 상기 필터 정보를 생성하기 위해 상기 인코딩된 비트스트림을 엔트로피 디코딩하는 엔트로피 유닛을 포함하는, 비디오 데이터 디코딩 장치.
  31. 제 29 항에 있어서,
    상기 필터 계수들의 제 2 세트는, 상기 필터 계수들의 제 1 세트에 대해 수직 대칭 또는 수평 대칭을 갖는, 비디오 데이터 디코딩 장치.
  32. 제 29 항에 있어서,
    상기 필터 계수들의 제 2 세트의 제 1 서브세트는 상기 필터 계수들의 제 1 세트에 대해 수평 대칭을 갖고, 상기 필터 계수들의 제 2 세트의 제 2 서브세트는 상기 필터 계수들의 제 1 세트에 대해 수직 대칭을 갖는, 비디오 데이터 디코딩 장치.
  33. 제 29 항에 있어서,
    상기 필터 계수들의 제 1 세트는 상기 필터 계수들의 약 절반을 포함하고, 상기 필터 계수들의 제 2 세트는 상기 필터 계수들의 약 절반을 포함하는, 비디오 데이터 디코딩 장치.
  34. 제 29 항에 있어서,
    상기 필터 계수들의 제 1 세트는 상기 필터 계수들의 약 1/4 를 포함하고, 상기 필터 계수들의 제 2 세트는 상기 필터 계수들의 약 3/4 를 포함하는, 비디오 데이터 디코딩 장치.
  35. 제 29 항에 있어서,
    상기 필터 계수들의 제 1 세트내의 상이한 필터 계수들은 상이한 수의 비트들에 의해 표현되는, 비디오 데이터 디코딩 장치.
  36. 제 35 항에 있어서,
    상기 필터 계수들은 f(k,l) 로서 정의되고, 상기 k 및 상기 l은 2차원 k-l 공간내의 수평 및 수직 컴포넌트이며,
    상기 필터 계수들의 제 1 세트내에서 제로보다 큰 k 및 l 의 절대값에 대응하는 필터 계수들에 비해, 상기 필터 계수들의 제 1 세트내에서 제로의 k 또는 l의 절대값에 대응하는 필터 계수들에 더 큰 수의 비트들이 할당되는, 비디오 데이터 디코딩 장치.
  37. 제 29 항에 있어서,
    상기 비디오 데이터의 유닛은, 프레임, 화상 그룹, 프레임의 슬라이스, 및 프레임내의 독립적으로 코딩된 비디오 블록들의 서브세트 중 하나를 포함하는, 비디오 데이터 디코딩 장치.
  38. 비디오 코딩 디바이스내에서의 실행 시에 상기 비디오 코딩 디바이스로 하여금 비디오 데이터를 인코딩하게 하는 명령들을 포함하는 컴퓨터-판독가능 매체로서,
    상기 명령들은 상기 비디오 코딩 디바이스로 하여금,
    복수의 비디오 블록들을 포함하는, 상기 비디오 데이터의 유닛을 인코딩하게 하고;
    상기 비디오 데이터의 유닛의 비디오 블록들을 필터링하기 위한 필터 계수들을 선택하게 하며;
    상기 필터 계수들의 제 1 세트에 기초하여 상기 필터 계수들의 제 2 세트와 관련된 차이값들을 생성하게 하는, 컴퓨터-판독가능 매체.
  39. 제 38 항에 있어서,
    상기 명령들은 상기 비디오 코딩 디바이스로 하여금, 상기 필터 계수들의 제 1 세트, 및 상기 필터 계수들의 제 2 세트와 관련된 차이값들을 포함하는 엔트로피 코딩된 비트스트림을 생성하게 하는, 컴퓨터-판독가능 매체.
  40. 제 38 항에 있어서,
    상기 명령들은 상기 비디오 코딩 디바이스로 하여금, 상기 필터 계수들의 제 1 세트내의 상이한 필터 계수들에 상이한 수의 비트들을 할당하게 하는, 컴퓨터-판독가능 매체.
  41. 제 40 항에 있어서,
    상기 필터 계수들은 f(k,l) 로서 정의되고, 상기 k 및 상기 l은 2차원 k-l 공간내의 수평 및 수직 컴포넌트이며,
    상기 명령들은 상기 비디오 코딩 디바이스로 하여금, 상기 필터 계수들의 제 1 세트내에서 제로보다 큰 k 및 l 의 절대값에 대응하는 필터 계수들에 비해, 상기 필터 계수들의 제 1 세트내에서 제로의 k 또는 l의 절대값에 대응하는 필터 계수들에 더 큰 수의 비트들을 할당하게 하는, 컴퓨터-판독가능 매체.
  42. 비디오 코딩 디바이스내에서의 실행 시에 상기 비디오 코딩 디바이스로 하여금 비디오 데이터를 디코딩하게 하는 명령들을 포함하는 컴퓨터-판독가능 매체로서,
    상기 명령들은 상기 비디오 코딩 디바이스로 하여금,
    복수의 비디오 블록들을 포함하는 상기 비디오 데이터의 인코딩된 유닛, 및 필터 계수들의 제 1 세트, 및 필터 계수들의 제 2 세트와 관련된 차이값들을 포함하는 필터 정보를 포함하는 인코딩된 비트스트림을 수신하게 하고;
    상기 복수의 비디오 블록들을 디코딩하게 하고;
    상기 필터 계수들의 제 1 세트 및 상기 차이값들에 기초하여 상기 필터 계수들의 제 2 세트를 생성하게 하며; 그리고,
    상기 필터 계수들의 제 1 세트 및 상기 필터 계수들의 제 2 세트에 기초하여 상기 디코딩된 복수의 비디오 블록들을 필터링하게 하는, 컴퓨터-판독가능 매체.
  43. 제 42 항에 있어서,
    상기 필터 계수들의 제 1 세트내의 상이한 필터 계수들은 상이한 수의 비트들에 의해 표현되는, 컴퓨터-판독가능 매체.
  44. 제 43 항에 있어서,
    상기 필터 계수들은 f(k,l) 로서 정의되고, 상기 k 및 상기 l은 2차원 k-l 공간내의 수평 및 수직 컴포넌트이며,
    상기 필터 계수들의 제 1 세트내에서 제로보다 큰 k 및 l 의 절대값에 대응하는 필터 계수들에 비해, 상기 필터 계수들의 제 1 세트내에서 제로의 k 또는 l의 절대값에 대응하는 필터 계수들에 더 큰 수의 비트들이 할당되는, 컴퓨터-판독가능 매체.
  45. 비디오 데이터를 인코딩하는 디바이스로서,
    상기 비디오 데이터의 유닛을 인코딩하는 수단으로서, 상기 유닛은 복수의 비디오 블록들을 포함하는, 상기 비디오 데이터의 유닛을 인코딩하는 수단;
    상기 비디오 데이터의 유닛의 비디오 블록들을 필터링하기 위한 필터 계수들을 선택하는 수단; 및
    상기 필터 계수들의 제 1 세트에 기초하여, 상기 필터 계수들의 제 2 세트와 관련된 차이값들을 생성하는 수단을 포함하는, 비디오 데이터 인코딩 디바이스.
  46. 제 45 항에 있어서,
    상기 필터 계수들의 제 1 세트, 및 상기 필터 계수들의 제 2 세트와 관련된 차이값들을 포함하는 인코딩된 비트스트림을 송신하는 수단을 더 포함하는, 비디오 데이터 인코딩 디바이스.
  47. 제 45 항에 있어서,
    상기 필터 계수들의 제 1 세트내의 상이한 필터 계수들에 상이한 수의 비트들을 할당하는 수단을 더 포함하는, 비디오 데이터 인코딩 디바이스.
  48. 제 47 항에 있어서,
    상기 필터 계수들은 f(k,l) 로서 정의되고, 상기 k 및 상기 l은 2차원 k-l 공간내의 수평 및 수직 컴포넌트이며,
    상기 할당하는 수단은, 상기 필터 계수들의 제 1 세트내에서 제로보다 큰 k 및 l 의 절대값에 대응하는 필터 계수들에 비해, 상기 필터 계수들의 제 1 세트내에서 제로의 k 또는 l의 절대값에 대응하는 필터 계수들에 더 큰 수의 비트들을 할당하는, 비디오 데이터 인코딩 디바이스.
  49. 비디오 데이터를 디코딩하는 디바이스로서,
    복수의 비디오 블록들을 포함하는 상기 비디오 데이터의 인코딩된 유닛, 및 필터 계수들의 제 1 세트, 및 필터 계수들의 제 2 세트와 관련된 차이값들을 포함하는 필터 정보를 포함하는 인코딩된 비트스트림을 수신하는 수단;
    상기 복수의 비디오 블록들을 디코딩하는 수단;
    상기 필터 계수들의 제 1 세트 및 상기 차이값들에 기초하여 상기 필터 계수들의 제 2 세트를 생성하는 수단; 및
    상기 필터 계수들의 제 1 세트 및 상기 필터 계수들의 제 2 세트에 기초하여 상기 디코딩된 복수의 비디오 블록들을 필터링하는 수단을 포함하는, 비디오 데이터 디코딩 디바이스.
  50. 제 49 항에 있어서,
    상기 수신하는 수단은, 상기 복수의 비디오 블록들 및 상기 필터 정보를 생성하기 위해 상기 인코딩된 비트스트림을 엔트로피 디코딩하는 엔트로피 코딩 수단을 포함하는, 비디오 데이터 디코딩 디바이스.
  51. 제 49 항에 있어서,
    상기 필터 계수들의 제 1 세트내의 상이한 필터 계수들은 상이한 수의 비트들에 의해 표현되는, 비디오 데이터 디코딩 디바이스.
  52. 제 51 항에 있어서,
    상기 필터 계수들은 f(k,l) 로서 정의되고, 상기 k 및 상기 l은 2차원 k-l 공간내의 수평 및 수직 컴포넌트이며,
    상기 필터 계수들의 제 1 세트내에서 제로보다 큰 k 및 l 의 절대값에 대응하는 필터 계수들에 비해, 상기 필터 계수들의 제 1 세트내에서 제로의 k 또는 l의 절대값에 대응하는 필터 계수들에 더 큰 수의 비트들이 할당되는, 비디오 데이터 디코딩 디바이스.
  53. 비디오 데이터의 유닛을 인코딩하는 예측 코딩 유닛으로서, 상기 비디오 데이터의 유닛은 복수의 비디오 블록들을 포함하는, 상기 예측 코딩 유닛;
    상기 비디오 데이터의 유닛의 비디오 블록들을 필터링하기 위한 필터 계수들을 선택하고, 상기 필터 계수들의 제 1 세트에 기초하여 상기 필터 계수들의 제 2 세트와 관련된 차이값들을 생성하는 필터 유닛; 및
    상기 필터 계수들의 제 1 세트, 및 상기 필터 계수들의 제 2 세트와 관련된 차이값들을 포함하는 인코딩된 비트스트림을 송신하는 무선 송신기를 포함하는, 디바이스.
  54. 제 53 항에 있어서,
    상기 디바이스는 무선 통신 핸드셋을 포함하는, 디바이스.
  55. 복수의 비디오 블록들을 포함하는 비디오 데이터의 인코딩된 유닛, 및 필터 계수들의 제 1 세트, 및 필터 계수들의 제 2 세트와 관련된 차이값들을 포함하는 필터 정보를 포함하는 인코딩된 비트스트림을 수신하는 무선 수신기;
    상기 무선 수신기로부터 상기 인코딩된 비트스트림을 수신하고 상기 인코딩된 비트스트림을 디코딩하여, 상기 복수의 비디오 블록들 및 상기 필터 정보를 생성하는 엔트로피 코딩 유닛;
    상기 복수의 비디오 블록들을 디코딩하는 예측 유닛; 및
    상기 필터 계수들의 제 1 세트 및 상기 차이값들에 기초하여 상기 필터 계수들의 제 2 세트를 생성하고, 상기 필터 계수들의 제 1 세트 및 상기 필터 계수들의 제 2 세트에 기초하여 상기 디코딩된 복수의 비디오 블록들을 필터링하는 필터 유닛을 포함하는, 디바이스.
  56. 제 55 항에 있어서,
    상기 디바이스는 무선 통신 핸드셋을 포함하는, 디바이스.
  57. 비디오 데이터를 디코딩하는 방법으로서,
    복수의 비디오 블록들을 포함하는 상기 비디오 데이터의 인코딩된 유닛, 및 필터 계수들의 제 1 세트를 포함하는 필터 정보를 포함하는 인코딩된 비트스트림을 수신하는 단계;
    상기 복수의 비디오 블록들을 디코딩하는 단계;
    상기 필터 계수들의 제 1 세트에 기초하여 상기 필터 계수들의 제 2 세트를 생성하는 단계; 및
    상기 필터 계수들의 제 1 세트 및 상기 필터 계수들의 제 2 세트에 기초하여 상기 디코딩된 복수의 비디오 블록들을 필터링하는 단계를 포함하는, 비디오 데이터 디코딩 방법.
  58. 제 57 항에 있어서,
    상기 필터 계수들의 제 2 세트는 상기 필터 계수들의 제 1 세트에 대해 수직 대칭을 갖는, 비디오 데이터 디코딩 방법.
  59. 제 57 항에 있어서,
    상기 필터 계수들의 제 2 세트는 상기 필터 계수들의 제 1 세트에 대해 수평 대칭을 갖는, 비디오 데이터 디코딩 방법.
  60. 제 57 항에 있어서,
    상기 필터 계수들의 제 2 세트는 상기 필터 계수들의 제 1 세트에 대해 수평 및 수직 대칭을 갖는, 비디오 데이터 디코딩 방법.
  61. 제 57 항에 있어서,
    상기 인코딩된 비트스트림은, 상기 필터 계수들의 제 1 세트와 상기 필터 계수들의 제 2 세트 사이의 대칭을 식별하는 신택스를 포함하는, 비디오 데이터 디코딩 방법.
  62. 비디오 데이터를 디코딩하는 장치로서,
    복수의 비디오 블록들을 포함하는 상기 비디오 데이터의 인코딩된 유닛, 및 필터 계수들의 제 1 세트를 포함하는 필터 정보를 포함하는 인코딩된 비트스트림을 수신하는 유닛;
    상기 복수의 비디오 블록들을 디코딩하는 예측 코딩 유닛; 및
    상기 필터 계수들의 제 1 세트에 기초하여 필터 계수들의 제 2 세트를 생성하고, 상기 필터 계수들의 제 1 세트 및 상기 필터 계수들의 제 2 세트에 기초하여 상기 디코딩된 복수의 비디오 블록들을 필터링하는 필터 유닛을 포함하는, 비디오 데이터 디코딩 장치.
  63. 제 62 항에 있어서,
    상기 필터 계수들의 제 2 세트는, 상기 필터 계수들의 제 1 세트에 대해 수평 대칭, 수직 대칭, 또는 수평 및 수직 대칭을 갖는, 비디오 데이터 디코딩 장치.
  64. 제 62 항에 있어서,
    상기 인코딩된 비트스트림은, 상기 필터 계수들의 제 1 세트와 상기 필터 계수들의 제 2 세트 사이의 대칭을 식별하는 신택스를 포함하는, 비디오 데이터 디코딩 장치.
  65. 제 62 항에 있어서,
    상기 비디오 데이터 디코딩 장치는 집적 회로를 포함하는, 비디오 데이터 디코딩 장치.
  66. 제 62 항에 있어서,
    상기 비디오 데이터 디코딩 장치는 마이크로프로세서를 포함하는, 비디오 데이터 디코딩 장치.
  67. 복수의 비디오 블록들을 포함하는 비디오 데이터의 인코딩된 유닛, 및 필터 계수들의 제 1 세트를 포함하는 필터 정보를 포함하는 인코딩된 비트스트림을 수신하는 수단;
    상기 복수의 비디오 블록들을 디코딩하는 수단;
    상기 필터 계수들의 제 1 세트에 기초하여 필터 계수들의 제 2 세트를 생성하는 수단; 및
    상기 필터 계수들의 제 1 세트 및 상기 필터 계수들의 제 2 세트에 기초하여 상기 디코딩된 복수의 비디오 블록들을 필터링하는 수단을 포함하는, 디바이스.
  68. 제 67 항에 있어서,
    상기 필터 계수들의 제 2 세트는, 상기 필터 계수들의 제 1 세트에 대해 수평 대칭, 수직 대칭, 또는 수평 및 수직 대칭을 갖는, 디바이스.
  69. 제 67 항에 있어서,
    상기 인코딩된 비트스트림은, 상기 필터 계수들의 제 1 세트와 상기 필터 계수들의 제 2 세트 사이의 대칭을 식별하는 신택스를 포함하는, 디바이스.
  70. 실행시에 디코딩 디바이스로 하여금,
    복수의 비디오 블록들을 포함하는 비디오 데이터의 인코딩된 유닛, 및 필터 계수들의 제 1 세트를 포함하는 필터 정보를 포함하는 인코딩된 비트스트림을 수신하게 하고;
    상기 복수의 비디오 블록들을 디코딩하게 하고;
    상기 필터 계수들의 제 1 세트에 기초하여 필터 계수들의 제 2 세트를 생성하게 하며; 그리고,
    상기 필터 계수들의 제 1 세트 및 상기 필터 계수들의 제 2 세트에 기초하여 상기 디코딩된 복수의 비디오 블록들을 필터링하게 하는 명령들을 포함하는, 컴퓨터-판독가능 매체.
  71. 제 70 항에 있어서,
    상기 필터 계수들의 제 2 세트는, 상기 필터 계수들의 제 1 세트에 대해 수평 대칭, 수직 대칭, 또는 수평 및 수직 대칭을 갖는, 컴퓨터-판독가능 매체.
  72. 제 70 항에 있어서,
    상기 인코딩된 비트스트림은, 상기 필터 계수들의 제 1 세트와 상기 필터 계수들의 제 2 세트 사이의 대칭을 식별하는 신택스를 포함하는, 컴퓨터-판독가능 매체.
KR1020107017559A 2008-01-08 2009-01-08 수평 및 수직 대칭에 기초한 필터 계수들의 비디오 코딩 KR101168843B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US1983108P 2008-01-08 2008-01-08
US61/019,831 2008-01-08
US12/348,752 US8638852B2 (en) 2008-01-08 2009-01-05 Video coding of filter coefficients based on horizontal and vertical symmetry
US12/348,752 2009-01-05
PCT/US2009/030468 WO2009089373A2 (en) 2008-01-08 2009-01-08 Video coding of filter coefficients based on horizontal and vertical symmetry

Publications (2)

Publication Number Publication Date
KR20100101693A true KR20100101693A (ko) 2010-09-17
KR101168843B1 KR101168843B1 (ko) 2012-07-26

Family

ID=40844523

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020107017559A KR101168843B1 (ko) 2008-01-08 2009-01-08 수평 및 수직 대칭에 기초한 필터 계수들의 비디오 코딩

Country Status (10)

Country Link
US (1) US8638852B2 (ko)
EP (1) EP2238763A2 (ko)
JP (1) JP2011523235A (ko)
KR (1) KR101168843B1 (ko)
CN (1) CN101919253A (ko)
BR (1) BRPI0907210A2 (ko)
CA (1) CA2710337A1 (ko)
RU (1) RU2482616C2 (ko)
TW (1) TW200943954A (ko)
WO (1) WO2009089373A2 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013042884A1 (ko) * 2011-09-19 2013-03-28 엘지전자 주식회사 영상 부호화/복호화 방법 및 그 장치
US9912947B2 (en) 2010-12-21 2018-03-06 Intel Corporation Content adaptive impairments compensation filtering for high efficiency video coding

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010146771A1 (ja) * 2009-06-19 2010-12-23 三菱電機株式会社 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法
JP5604825B2 (ja) 2009-08-19 2014-10-15 ソニー株式会社 画像処理装置および方法
WO2011083666A1 (ja) * 2010-01-08 2011-07-14 シャープ株式会社 符号化装置、復号装置、および、データ構造
US9247265B2 (en) * 2010-09-01 2016-01-26 Qualcomm Incorporated Multi-input adaptive filter based on combination of sum-modified Laplacian filter indexing and quadtree partitioning
US9819966B2 (en) 2010-09-01 2017-11-14 Qualcomm Incorporated Filter description signaling for multi-filter adaptive filtering
CN103392338A (zh) 2011-01-03 2013-11-13 联发科技股份有限公司 基于滤波单元的回路滤波方法
CN106162186B (zh) * 2011-01-03 2020-06-23 寰发股份有限公司 基于滤波单元的回路滤波方法
WO2012137890A1 (ja) * 2011-04-05 2012-10-11 シャープ株式会社 画像フィルタ装置、復号装置、符号化装置、および、データ構造
US9445093B2 (en) 2011-06-29 2016-09-13 Qualcomm Incorporated Multiple zone scanning order for video coding
EP2783350A4 (en) * 2011-11-25 2016-06-22 Thomson Licensing METHODS AND APPARATUS FOR THREE-DIMENSIONAL MODEL COMPRESSION BASED ON REFLECTION SYMMETRY
WO2013104713A1 (en) * 2012-01-13 2013-07-18 Thomson Licensing Method and device for coding an image block, corresponding method and decoding device
US9445088B2 (en) * 2012-04-09 2016-09-13 Qualcomm Incorporated LCU-based adaptive loop filtering for video coding
EP2804375A1 (en) 2013-02-22 2014-11-19 Thomson Licensing Coding and decoding methods of a picture block, corresponding devices and data stream
CN110622511B (zh) 2017-04-13 2022-04-15 Lg 电子株式会社 图像编码/解码方法及其设备
CN108810552B (zh) * 2017-04-28 2021-11-09 华为技术有限公司 图像预测方法和相关产品
US10250416B2 (en) * 2017-05-17 2019-04-02 MMRFIC Technology Pvt. Ltd. Recursive difference filter realization of digital filters
JP2018029389A (ja) * 2017-10-26 2018-02-22 ソニー株式会社 画像処理装置および方法、並びにプログラム
US20210266535A1 (en) * 2018-04-11 2021-08-26 Sony Corporation Data processing apparatus and data processing method

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2835187B2 (ja) 1991-01-07 1998-12-14 株式会社東芝 符号化/復号化器および符号化/復号化方法
US5838727A (en) * 1991-02-15 1998-11-17 Schlumberger Technology Corporation Method and apparatus for transmitting and receiving digital data over a bandpass channel
JPH08163561A (ja) 1994-12-06 1996-06-21 Matsushita Electric Ind Co Ltd 画像データ圧縮装置
JP3573832B2 (ja) 1995-07-28 2004-10-06 三洋電機株式会社 動画像符号化装置
WO1998044637A1 (en) 1997-03-28 1998-10-08 Sony Corporation Data coding method and device, data decoding method and device, and recording medium
JP3235546B2 (ja) 1997-11-07 2001-12-04 日本電気株式会社 ディジタルフィルタの量子化係数の決定方法及びその決定プログラムが記録されたコンピュータ上で読み出し可能な記録媒体
AU717480B2 (en) 1998-08-01 2000-03-30 Korea Advanced Institute Of Science And Technology Loop-filtering method for image data and apparatus therefor
US6590931B1 (en) 1999-12-09 2003-07-08 Koninklijke Philips Electronics N.V. Reconfigurable FIR filter using CSD coefficient representation
US6973127B1 (en) 1999-12-23 2005-12-06 Xvd Corporation Apparatus and method for memory saving wavelet based video coding
US6970896B2 (en) * 2001-08-08 2005-11-29 Octasic Inc. Method and apparatus for generating a set of filter coefficients
EP1335607A3 (en) 2001-12-28 2003-10-22 Ricoh Company, Ltd. Image smoothing apparatus and method
JP2004023666A (ja) 2002-06-19 2004-01-22 Ricoh Co Ltd 画像処理装置、プログラムおよび記録媒体
HU228615B1 (en) 2002-01-14 2013-04-29 Nokia Corp Method of coding of digital video pictures
US6996186B2 (en) 2002-02-22 2006-02-07 International Business Machines Corporation Programmable horizontal filter with noise reduction and image scaling for video encoding system
US6980598B2 (en) 2002-02-22 2005-12-27 International Business Machines Corporation Programmable vertical filter for video encoding
US7110459B2 (en) 2002-04-10 2006-09-19 Microsoft Corporation Approximate bicubic filter
EP1603338A4 (en) 2003-03-10 2007-12-05 Mitsubishi Electric Corp APPARATUS AND METHOD FOR VIDEO SIGNAL CODING
JP4597965B2 (ja) * 2003-04-29 2010-12-15 エヌエックスピー ビー ヴィ ディジタルフィルタ構造
US7430337B2 (en) * 2004-01-06 2008-09-30 Sharp Laboratories Of America, Inc. System and method for removing ringing artifacts
US7522774B2 (en) 2004-03-10 2009-04-21 Sindhara Supermedia, Inc. Methods and apparatuses for compressing digital image data
US7359565B2 (en) 2004-05-03 2008-04-15 International Business Machines Corporation Method of filtering pixels in a video encoding process
JP2006211152A (ja) 2005-01-26 2006-08-10 Hokkaido Univ 画像符号化装置、画像復号装置、画像符号化方法、画像復号方法、画像符号化用プログラム、画像復号用プログラム
WO2006108654A2 (en) 2005-04-13 2006-10-19 Universität Hannover Method and apparatus for enhanced video coding
SG130962A1 (en) 2005-09-16 2007-04-26 St Microelectronics Asia A method and system for adaptive pre-filtering for digital video signals
EP1845729A1 (en) 2006-04-12 2007-10-17 Matsushita Electric Industrial Co., Ltd. Transmission of post-filter hints
EP1841230A1 (en) 2006-03-27 2007-10-03 Matsushita Electric Industrial Co., Ltd. Adaptive wiener filter for video coding
JP4956550B2 (ja) 2006-11-30 2012-06-20 株式会社エヌ・ティ・ティ・ドコモ 動画像符号化装置、動画像符号化方法、動画像符号化プログラム、動画像復号化装置、動画像復号化方法及び動画像復号化プログラム
WO2008084378A2 (en) * 2007-01-09 2008-07-17 Nokia Corporation Adaptive interpolation filters for video coding
JP2007288810A (ja) 2007-07-03 2007-11-01 Nippon Telegr & Teleph Corp <Ntt> 画像符号化方法,画像復号方法,画像符号化装置,画像復号装置,画像符号化プログラム,画像復号プログラムおよびコンピュータ読み取り可能な記録媒体
KR20100105680A (ko) 2008-03-07 2010-09-29 가부시끼가이샤 도시바 동화상 부호화/복호화 방법 및 장치
KR101353304B1 (ko) 2008-10-24 2014-01-21 에스케이 텔레콤주식회사 적응적 보간 필터 계수를 이용한 영상 부호화/복호화 방법 및 장치

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9912947B2 (en) 2010-12-21 2018-03-06 Intel Corporation Content adaptive impairments compensation filtering for high efficiency video coding
US10595018B2 (en) 2010-12-21 2020-03-17 Intel Corproation Content adaptive impairment compensation filtering for high efficiency video coding
WO2013042884A1 (ko) * 2011-09-19 2013-03-28 엘지전자 주식회사 영상 부호화/복호화 방법 및 그 장치
US9485521B2 (en) 2011-09-19 2016-11-01 Lg Electronics Inc. Encoding and decoding image using sample adaptive offset with start band indicator
US9948954B2 (en) 2011-09-19 2018-04-17 Lg Electronics Inc. Method for encoding/decoding image and device thereof
US10425660B2 (en) 2011-09-19 2019-09-24 Lg Electronics Inc. Method for encoding/decoding image and device thereof
US11051041B2 (en) 2011-09-19 2021-06-29 Lg Electronics Inc. Method for encoding/decoding image and device thereof
US11570474B2 (en) 2011-09-19 2023-01-31 Lg Electronics Inc. Method for encoding/decoding image and device thereof
US11917204B2 (en) 2011-09-19 2024-02-27 Lg Electronics Inc. Method for encoding/decoding image and device thereof

Also Published As

Publication number Publication date
RU2482616C2 (ru) 2013-05-20
KR101168843B1 (ko) 2012-07-26
CA2710337A1 (en) 2009-07-16
WO2009089373A3 (en) 2011-06-30
RU2010133232A (ru) 2012-02-20
US8638852B2 (en) 2014-01-28
CN101919253A (zh) 2010-12-15
TW200943954A (en) 2009-10-16
JP2011523235A (ja) 2011-08-04
BRPI0907210A2 (pt) 2015-07-14
WO2009089373A2 (en) 2009-07-16
US20090175336A1 (en) 2009-07-09
EP2238763A2 (en) 2010-10-13

Similar Documents

Publication Publication Date Title
KR101168843B1 (ko) 수평 및 수직 대칭에 기초한 필터 계수들의 비디오 코딩
JP5405596B2 (ja) ビデオのコーディングの際の、アクティビティメトリックに基づくフィルタ予測
KR101214148B1 (ko) 비디오 블록의 인터리빙된 서브?블록들의 엔트로피 코딩
US9819940B2 (en) Weighted prediction based on vectorized entropy coding
US9288501B2 (en) Motion vector predictors (MVPs) for bi-predictive inter mode in video coding
KR101667836B1 (ko) 비디오 코딩에서 단예측 인접자들에 기초한 양예측 머지 모드
JP5032657B2 (ja) ビデオコーディングでの適応係数スキャン
US20110249754A1 (en) Variable length coding of coded block pattern (cbp) in video compression
US20120163455A1 (en) Mode dependent scanning of coefficients of a block of video data
US8665959B2 (en) Block and partition signaling techniques for video coding
US9445126B2 (en) Video filtering using a combination of one-dimensional switched filter and one-dimensional adaptive filter

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee