KR101545382B1 - 비디오 코딩을 위한 장치, 방법 및 컴퓨터 프로그램 - Google Patents

비디오 코딩을 위한 장치, 방법 및 컴퓨터 프로그램 Download PDF

Info

Publication number
KR101545382B1
KR101545382B1 KR1020127020718A KR20127020718A KR101545382B1 KR 101545382 B1 KR101545382 B1 KR 101545382B1 KR 1020127020718 A KR1020127020718 A KR 1020127020718A KR 20127020718 A KR20127020718 A KR 20127020718A KR 101545382 B1 KR101545382 B1 KR 101545382B1
Authority
KR
South Korea
Prior art keywords
pixel
value
block
reference point
encoding
Prior art date
Application number
KR1020127020718A
Other languages
English (en)
Other versions
KR20120112773A (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 KR20120112773A publication Critical patent/KR20120112773A/ko
Application granted granted Critical
Publication of KR101545382B1 publication Critical patent/KR101545382B1/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
    • 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/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/103Selection of coding mode or of prediction mode
    • 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
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • 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/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/147Data rate or code amount at the encoder output according to rate distortion criteria
    • 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/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/18Methods 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 a set of transform coefficients
    • 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/182Methods 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 a pixel
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • 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
    • 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

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)

Abstract

비디오 코딩을 위한 장치, 방법 및 컴퓨터 프로그램이 개시된다. 이 장치는 이미지의 픽셀 블록을 인코딩하는 제 1 인코딩 방법 및 제 2 인코딩 방법을 적어도 포함하는 인코딩 방법의 세트로부터 일 인코딩 방법을 선택하도록 구성되며, 상기 픽셀 블록 내의 픽셀들 중에서 적어도 하나의 제어 지점을 선택하고 상기 제어 지점과는 상이한 제 1 참조 지점을 선택하도록 구성되는 선택기를 포함한다. 이 장치는 상기 제어 지점의 값 및 상기 제 1 참조 지점의 값에 기초하여서 상기 선택된 픽셀 블록 내의 다른 픽셀들의 값을 결정하도록 구성되는 결정기를 더 포함한다.

Description

비디오 코딩을 위한 장치, 방법 및 컴퓨터 프로그램{AN APPARATUS, A METHOD AND A COMPUTER PROGRAM FOR VIDEO CODING}
본 발명은 코딩 및 디코딩을 위한 장치, 방법 및 컴퓨터 프로그램에 관한 것이다.
비디오 코덱은 비디오 입력을 저장 및/또는 전송에 적합한 압축된 리프리젠테이션(representation)으로 변환하는 인코더 및 이 압축된 비디오 리프리젠테이션을 볼 수 있는 형태로 또는 이들 중 하나로 압축해제하는 디코더를 포함할 수 있다. 통상적으로, 인코더는 비디오를 보다 컴팩트한 형태로, 가령, 보다 낮은 비트 레이트로서 표현하기 위해서 최초의 비디오 시퀀스에서 몇몇 정보를 폐기한다.
가령, International Telecommunication Union's ITU-T H.263 and H.264 코딩 규격에 따라서 동작하는 통상적인 비디오 코덱은 비디오 정보를 2 개의 국면으로 인코딩한다. 제 1 국면에서, 소정의 화상 구역 또는 블록 내의 픽셀 값들이 예측된다. 이 픽셀 값은 가령 코딩되고 있는 블록에 가장 근접하게 대응하는 이전에 인코딩된 비디오 프레임들(또는 나중에 코딩된 비디오 프레임들) 중 하나 내의 구역을 찾아서 표시하는 바를 포함하는 움직임 보상 메카니즘들에 의해서 예측될 수 있다. 또한, 픽셀 값들은 공간 영역 관계를 찾아서 표시하는 바를 포함하는 공간적 메카니즘들에 의해서 예측될 수 있다.
이전의 이미지 또는 나중의 이미지로부터의 이미지 정보를 사용하는 예측 방식은 또한 인터 예측 방법(Inter prediction method)으로 지칭되며, 동일한 이미지 내의 이미지 정보를 사용하는 예측 방법은 인트라 예측 방법(Intra prediction method)이라 지칭된다.
제 2 국면은 예측된 픽셀 블록과 최초의 픽셀 블록 간의 오차를 코딩하는 것이다. 이는 통상적으로 특정 변환을 사용하여서 픽셀 값 차를 변환함으로써 달성된다. 이러한 변환은 통상적으로 DCT(Discrete Cosine Transform, 이산 코사인 변환) 또는 이의 변형이다. 픽셀 값 차를 변환한 후에, 변환된 차가 양자화되고 엔트로피 인코딩된다.
양자화 프로세스의 충실도(fidelity)를 변화시킴으로써, 인코더는 픽셀 리프리젠테이션 정확도(달리 말하면, 화상의 품질)와 결과적으로 인코딩된 비디오 리프리젠테이션의 사이즈(달리 말하면, 전송 비트 레이트의 파일 크기) 간의 균형을 제어할 수 있다. 인코딩 프로세스의 일 실례가 도 4a에 도시되어 있다.
디코더는 (인코더에 의해서 생성되어서 압축된 이미지 리프리젠테이션으로서 저장된 움직임 정보 또는 공간적 정보를 사용하여서) 예측된 픽셀 블록 리프리젠테이션을 형성하기 위해서 인코더에 의해서 사용된 바와 유사한 예측 메카니즘 및 예측 오차 디코딩(공간적 영역에서 상기 양자화된 예측 오차 신호를 복구하기 위한 예측 오차 코딩의 역 동작)을 사용함으로써 출력 비디오를 재구성한다.
픽셀 예측 프로세스 및 오차 디코딩 프로세스를 실행한 후에, 디코더는 예측 신호(픽셀 값)와 예측 오차 신호(픽셀 값)를 결합하여서 출력 비디오 프레임을 형성한다.
디코더(및 인코더)는 또한 출력 비디오를 디스플레이하기 위해서 전송하기 이전 및/또는 출력 비디오를 비디오 시퀀스에서 후행 프레임을 위한 예측 참조 요소로서 저장하기 이전에 출력 비디오의 품질을 개선하기 위한 추가적인 필터링 프로세스를 실행할 수 있다.
이러한 디코딩 프로세스의 일 실례가 도 6a에 도시되어 있다.
통상적인 비디오 코덱에서, 움직임 정보는 각 움직임 보상된 이미지 블록과 연관된 움직임 벡터에 의해서 표시된다. 각 움직임 벡터는 이전에 코딩된 또는 디코딩된 이미지들(또는 화상들) 중 하나 내의 예측 소스 블록 및 (인코더에서) 인코딩되거나 (디코더에서) 디코딩될 화상 내의 이미지 블록의 변위를 나타낸다. 움직임 벡터를 효율적으로 표현하기 위해서, 움직임 벡터들은 통상적으로 블록 특정된 예측 움직임 벡터에 대해서 디퍼런셜(differential) 방식으로 코딩된다. 통상적인 비디오 코덱에서, 예측 움직임 벡터는 가령 인접하는 블록들의 인코딩된 또는 디코딩된 움직임 벡터들의 메디안(median)을 계산함으로써 소정의 방식으로 생성된다.
통상적인 비디오 코덱에서, 움직임 보상 후의 예측 레지듀얼(prediction residual)은 먼저 (DCT와 같은) 변환 커넬(transform kernel)을 사용하여서 변환되고 이어서 코딩된다. 이러한 이유는 예측 레지듀얼 중의 어느 정도의 상관 정도가 여전히 존재하며 상기 변환은 많은 경우에 이러한 상관 정도를 감소시키는 것을 도우며 이로써 보다 효율적인 코딩이 제공되기 때문이다.
통상적인 비디오 인코더는 가령 소망하는 매크로 블록 모드와 같은 최적 코딩 모드 및 이와 연관된 움직임 벡터들을 찾기 위해서 Lagrangian 비용 함수를 사용한다. 이러한 타입의 비용 함수는 손실이 많은 코딩 방법으로 인한 정확한 또는 추정된 이미지 왜곡과 이미지 구역 내의 픽셀 값을 표현하기 위해서 요구되는 정확한 또는 추정된 양의 정보를 서로 결합하기 위한 가중치 팩터, 즉 □을 사용한다.
이는 다음 등식에 의해서 표현될 수 있다.
C = D + □R (1)
여기서, C는 최소화될 Lagrangian 비용을 나타내며, D는 현재 고려되고 있는 모드와 움직임 벡터에서의 이미지 왜곡(가령, 최초의 이미지 블록에서의 픽셀 값과 코딩된 이미지 블록에서의 픽셀 값 간의 제곱 평균 오차)을 나타내며, R은 (후보 움직임 벡터를 표현하기 위한 데이터의 양을 포함하는) 디코더에서 이미지 블록을 재구성하기 위해서 요구되는 데이터를 표현하기 위해서 필요한 비트의 개수를 나타낸다.
H.264/AVC와 같은 몇몇 혼성 비디오 코덱은 화상 내의 이미 처리된 구역들의 픽셀 값을 사용하는 공간적 수단에 의해서 인트라 코딩된 구역들을 예측한다. 예측된 픽셀 값과 최초의 픽셀 값 간의 차는 DCT 타입의 변환을 사용하여서 손실이 나도록 코딩된다. 변환 계수의 양자화로 인해서 재구성된 비디오 신호에 아티팩트(artifact)가 발생할 수 있다. 이러한 아티팩트는 변환된 구역 또는 변환된 구역의 일부가 어떠한 고주파수 컨텐츠도 가지지 않는 경우에(즉, 픽셀 값들이 거의 동일하거나 구역 전체에 걸쳐서 점진적으로 변하는 경우에) 특히 가시적이게 된다. 이러한 경우의 통상적인 실례들은 인간의 얼굴 및 하늘이다. 이들은 모두 색상이 공간적으로 점진적으로 변화되는 특징이 있으며 동작 비트레이트가 보통 수준으로 낮게 되는 경우에(이로써, 변환 계수의 보통 수준의 양자화가 사용되는 경우에) 디코딩된 비디오에서 만족스러울 정도로 표현되지 않게 된다. 이러한 현상은 픽셀 값에서의 변화량이 양자화된 AC 변환 계수를 사용하여서 표현될 수 있는 것보다 작을 경우에 보다 심하게 될 수 있다. 이 경우에, 점진적으로 변화하는 픽셀 값을 갖는 화상은 그의 디코딩된 픽셀 값들이 오직 DC 변환 계수로만 표현되기 때문에 블록화되어서 보이게 된다.
블록화 아티팩트 이외에도, 변환 계수에 대한 정밀하지 않은 양자화로 인해서 링화(ringing)라고 지칭되는 다른 타입의 아티팩트가 생성되게 된다. 이 링화 아티팩트는 비디오 신호에서 대상의 경계를 둘러서 추가 에지를 도입하는 것을 특징으로 한다. 이러한 링화 아티팩트는 이미지 블록이 에지의 일 측 또는 양 측 상에서 평탄한 구역을 갖는 대상 경계를 포함하는 경우에 더욱 가시적으로 될 수 있다.
몇몇 알려진 구성에서는, 디코딩된 신호가 블록화되어서 보이는 문제는 그 이미지를 필터링함으로써 처리된다. 그러나, 이미지 필터링은 인코더 및 디코더를 더욱 복잡하게 만들며 특히 이러한 경우에 필터링될 필요가 있는 픽셀의 개수는 매우 커지게 된다. 실제적으로, 해당 구역 내의 모든 픽셀들이 처리될 필요가 있을 수 있다. 가령, H.264/AVC에서는, 8*8 블록 경계에서 오직 2 개의 픽셀만이 필터링되지만, 이러한 필터링 동작은 최적화된 디코더의 총 프로세싱 전력량을 거의 소비하게 된다.
본 발명은 선택된 이미지 구역에서 공간적 예측 동작 및 변환 동작을 생략하고 보간에 의해서 상기 선택된 이미지 구역의 적어도 일부의 픽셀 값을 생성하는 방식을 제공함으로써, 인코딩이 보다 효율적으로 되며 이미지 재생이 시각적으로 보다 우수하게 된다는 기술적 사상으로부터 시작되었다.
본 발명의 몇몇 실시예들은 비디오 인코더 및 디코더에 효율적인 동작 모드를 제공하여서 DCT 계수 양자화가 정밀하지 않은 경우에도 화상이 시각적으로 보기 좋게 디코딩된다. 이는 선택된 이미지 구역에 대한 공간적 예측 동작 및 DCT 변환 동작을 생략하고 그 에지 상에서의 불연속성이 존재하지 않거나 있어도 매우 작은, 처리될 이미지 블록 및 이미 처리된 이미지 구역들을 덮는 공간적 표면을 규정함으로써 이루어진다. 이미지 블록들이 통상적인 방식으로 좌측에서 우측으로 그리고 상부에서 하부로 스캐닝되는 경우에, 가령 처리되는 블록의 하부 우측 코너의 픽셀 값에 대응하는 단일 파라미터를 전송하고 샘플들의 나머지를 보간함으로써 상기 공간적 표면이 규정될 수 있다.
본 발명의 제 1 측면에 따라서, 이미지의 픽셀 블록을 인코딩하는 제 1 인코딩 방법 및 제 2 인코딩 방법을 적어도 포함하는 인코딩 방법 세트로부터 일 인코딩 방법을 선택하도록 구성되며, 상기 픽셀 블록 내의 픽셀들 중에서 적어도 하나의 제어 지점을 선택하고 상기 제어 지점과는 상이한 제 1 참조 지점을 선택하도록 구성되는 선택기와, 상기 제어 지점의 값 및 상기 제 1 참조 지점의 값에 기초하여서 상기 선택된 픽셀 블록 내의 다른 픽셀들의 값을 결정하도록 구성되는 결정기(determinator)를 포함하는 장치가 제공된다.
본 발명의 제 2 측면에 따라서, 이미지의 픽셀 블록을 인코딩하는 제 1 인코딩 방법 및 제 2 인코딩 방법을 적어도 포함하는 인코딩 방법 세트로부터 일 인코딩 방법을 선택하는 단계와, 상기 제 1 인코딩 방법이 선택될 경우에, 상기 픽셀 블록 내의 픽셀들 중에서 적어도 하나의 제어 지점을 선택하는 단계와, 상기 제어 지점과는 상이한 제 1 참조 지점을 선택하는 단계와, 상기 제어 지점의 값 및 상기 제 1 참조 지점의 값에 기초하여서 상기 선택된 픽셀 블록 내의 다른 픽셀들의 값을 결정하는 단계를 포함하는 방법이 제공된다.
본 발명의 제 3 측면에 따라서, 장치에 의해서 사용되기 위해서 코드를 그 상에 저장하고 있는 컴퓨터 판독 가능한 매체가 제공되되, 상기 코드는 프로세서에 의해서 실행되어서 상기 장치로 하여금, 이미지의 픽셀 블록을 인코딩하는 제 1 인코딩 방법 및 제 2 인코딩 방법을 적어도 포함하는 인코딩 방법 세트로부터 일 인코딩 방법을 선택하는 단계를 수행하게 하며, 상기 제 1 인코딩 방법에 대해서, 상기 코드는 상기 프로세서에 의해서 실행되어서 상기 장치로 하여금, 상기 픽셀 블록 내의 픽셀들 중에서 적어도 하나의 제어 지점을 선택하는 단계와, 상기 제어 지점과는 상이한 제 1 참조 지점을 선택하는 단계와, 상기 제어 지점의 값 및 상기 제 1 참조 지점의 값에 기초하여서 상기 선택된 픽셀 블록 내의 다른 픽셀들의 값을 결정하는 단계를 수행하게 한다.
본 발명의 제 4 측면에 따라서, 적어도 하나의 프로세서 및 적어도 하나의 메모리를 포함하는 시스템에 제공되되, 상기 적어도 하나의 메모리는 그 상에 코드를 저장하고 있으며, 상기 코드는 적어도 하나의 프로세서에 의해서 실행되어서 장치로 하여금, 이미지의 픽셀 블록을 인코딩하는 제 1 인코딩 방법 및 제 2 인코딩 방법을 적어도 포함하는 인코딩 방법 세트로부터 일 인코딩 방법을 선택하는 단계를 수행하게 하며, 상기 제 1 인코딩 방법에 대해서, 상기 코드는 상기 프로세서에 의해서 실행되어서 상기 장치로 하여금, 상기 픽셀 블록 내의 픽셀들 중에서 적어도 하나의 제어 지점을 선택하는 단계와, 상기 제어 지점과는 상이한 제 1 참조 지점을 선택하는 단계와, 상기 제어 지점의 값 및 상기 제 1 참조 지점의 값에 기초하여서 상기 선택된 픽셀 블록 내의 다른 픽셀들의 값을 결정하는 단계를 수행하게 한다.
본 발명의 제 5 측면에 따라서, 디코딩될 이미지의 픽셀 블록의 인코딩 방법에 대한 표시를 검사하도록 구성된 분석기와, 판정된 인코딩 방법이 제 1 인코딩 방법일 때에 제 1 디코딩 방법을 선택하도록 구성된 디코딩 방법 선택기와, 상기 디코딩될 픽셀 블록 내의 픽셀들 중에서 적어도 하나의 제어 지점을 선택하고, 상기 제어 지점과는 상이한 제 1 참조 지점을 선택하며, 상기 제어 지점의 값 및 상기 제 1 참조 지점의 값에 기초하여서 상기 디코딩될 픽셀 블록 내의 다른 픽셀들의 값을 결정하도록 구성되는 재구성기를 포함하는 장치가 제공된다.
본 발명의 제 6 측면에 따라서, 디코딩될 이미지의 픽셀 블록의 인코딩 방법에 대한 표시를 검사하는 단계와, 판정된 인코딩 방법이 제 1 인코딩 방법일 때에 제 1 디코딩 방법을 선택하는 단계와, 상기 디코딩될 픽셀 블록 내의 픽셀들 중에서 적어도 하나의 제어 지점을 선택하는 단계와, 상기 제어 지점과는 상이한 제 1 참조 지점을 선택하는 단계와, 상기 제어 지점의 값 및 상기 제 1 참조 지점의 값에 기초하여서 상기 디코딩될 픽셀 블록 내의 다른 픽셀들의 값을 결정하는 단계를 포함하는 방법이 제공된다.
본 발명의 제 7 측면에 따라서, 장치에 의해서 사용되기 위해서 코드를 그 상에 저장하고 있는 컴퓨터 판독 가능한 매체가 제공되되, 상기 코드는 프로세서에 의해서 실행되어서 상기 장치로 하여금, 디코딩될 이미지의 픽셀 블록의 인코딩 방법을 판정하는 단계와, 판정된 인코딩 방법이 제 1 인코딩 방법일 때에 제 1 디코딩 방법을 선택하는 단계와, 상기 디코딩될 픽셀 블록 내의 픽셀들 중에서 적어도 하나의 제어 지점을 선택하는 단계와, 상기 제어 지점과는 상이한 제 1 참조 지점을 선택하는 단계와, 상기 제어 지점의 값 및 상기 제 1 참조 지점의 값에 기초하여서 상기 디코딩될 픽셀 블록 내의 다른 픽셀들의 값을 결정하는 단계를 수행하게 한다.
본 발명의 제 8 측면에 따라서, 적어도 하나의 프로세서 및 적어도 하나의 메모리를 갖는 시스템이 제공되며, 상기 적어도 하나의 메모리 상에는 코드가 저장되며, 상기 코드는 적어도 하나의 프로세서에 의해서 실행되어서 장치로 하여금, 디코딩될 이미지의 픽셀 블록의 인코딩 방법을 판정하는 단계와, 판정된 인코딩 방법이 제 1 인코딩 방법일 때에 제 1 디코딩 방법을 선택하는 단계와, 상기 디코딩될 픽셀 블록 내의 픽셀들 중에서 적어도 하나의 제어 지점을 선택하는 단계와, 상기 제어 지점과는 상이한 제 1 참조 지점을 선택하는 단계와, 상기 제어 지점의 값 및 상기 제 1 참조 지점의 값에 기초하여서 상기 디코딩될 픽셀 블록 내의 다른 픽셀들의 값을 결정하는 단계를 수행하게 한다.
본 발명의 제 9 측면에 따라서, 이미지의 픽셀 블록을 인코딩하는 제 1 인코딩 방법 및 제 2 인코딩 방법을 적어도 포함하는 인코딩 방법 세트로부터 일 인코딩 방법을 선택하도록 구성되며, 상기 픽셀 블록 내의 픽셀들 중에서 적어도 하나의 제어 지점을 선택하고 상기 제어 지점과는 상이한 제 1 참조 지점을 선택하도록 구성되는 선택기와, 상기 제어 지점의 값 및 상기 제 1 참조 지점의 값에 기초하여서 상기 선택된 픽셀 블록 내의 다른 픽셀들의 값을 결정하도록 구성되는 결정기를 포함하는 인코더가 제공된다.
본 발명의 제 10 측면에 따라서, 디코딩될 이미지의 픽셀 블록의 인코딩 방법에 대한 표시를 검사하도록 구성된 분석기와, 판정된 인코딩 방법이 제 1 인코딩 방법일 때에 제 1 디코딩 방법을 선택하도록 구성된 디코딩 방법 선택기와, 상기 디코딩될 픽셀 블록 내의 픽셀들 중에서 적어도 하나의 제어 지점을 선택하고, 상기 제어 지점과는 상이한 제 1 참조 지점을 선택하며, 상기 제어 지점의 값 및 상기 제 1 참조 지점의 값에 기초하여서 상기 디코딩될 픽셀 블록 내의 다른 픽셀들의 값을 결정하도록 구성되는 재구성기를 포함하는 디코더가 제공된다.
본 발명의 제 11 측면에 따라서, 이미지의 픽셀 블록을 인코딩하는 제 1 인코딩 방법 및 제 2 인코딩 방법을 적어도 포함하는 인코딩 방법 세트로부터 일 인코딩 방법을 선택하는 수단과, 상기 픽셀 블록 내의 픽셀들 중에서 적어도 하나의 제어 지점을 선택하는 수단과, 상기 제어 지점과는 상이한 제 1 참조 지점을 선택하는 수단과, 상기 제어 지점의 값 및 상기 제 1 참조 지점의 값에 기초하여서 상기 선택된 픽셀 블록 내의 다른 픽셀들의 값을 결정하는 수단을 포함하는 장치가 제공된다.
본 발명의 제 12 측면에 따라서, 디코딩될 이미지의 픽셀 블록의 인코딩 방법에 대한 표시를 검사하는 수단과, 판정된 인코딩 방법이 제 1 인코딩 방법일 때에 제 1 디코딩 방법을 선택하는 수단과, 상기 디코딩될 픽셀 블록 내의 픽셀들 중에서 적어도 하나의 제어 지점을 선택하는 수단과, 상기 제어 지점과는 상이한 제 1 참조 지점을 선택하는 수단과, 상기 제어 지점의 값 및 상기 제 1 참조 지점의 값에 기초하여서 상기 디코딩될 픽셀 블록 내의 다른 픽셀들의 값을 결정하는 수단을 포함하는 장치가 제공된다.
본 발명의 더 양호한 이해를 위해서, 다음의 첨부 도면들이 예시적으로 참조될 것이다.
도 1은 본 발명의 몇몇 실시예들을 사용하는 전자 디바이스의 개략도이다.
도 2는 본 발명의 몇몇 실시예들을 사용하기에 적합한 사용자 장치의 개략도이다.
도 3은 유선 네트워크 접속 및 무선 네트워크 접속을 사용하여서 접속된 본 발명의 실시예들을 사용하는 전자 디바이스의 개략도이다.
도 4a 및 도 4b는 인코더 내에 포함되는 본 발명의 일 실시예의 개략도이다.
도 5a 및 도 5b는 도 4a 및 도 4b에서 도시된 인코더에 대한 본 발명의 일 실시예의 동작을 나타내는 흐름도이다.
도 6은 본 발명의 몇몇 실시예들에 따른 디코더의 개략도이다.
도 7은 도 6에 도시된 디코더에 대한 본 발명의 일 실시예의 동작을 나타내는 흐름도이다.
도 8a는 오직 중간 정도의 픽셀 변화량을 갖는 1 차원 신호의 일부의 실례를 나타내고 있다.
도 8b는 알려진 방법을 사용하여서 인코딩된 도 8a의 신호를 나타내고 있다.
도 8c는 본 발명의 예시적인 실시예를 사용하여서 인코딩된 도 8a의 신호를 나타내고 있다.
도 9a 및 도 9b는 위쪽 및 좌측 상의 서로 이웃하는 프로세싱된 블록들을 갖는 재구성될 8*8 픽셀 블록의 실례를 나타내고 있다.
도 10은 불균일한 양자화의 실례를 나타내고 있다.
도 11은 본 발명의 예시적인 실시예에 따른 방법에 의해서 인코딩된 이미지 정보를 포함하는 비트 스트림의 실례를 나타내고 있다.
도 12a 및 도 12b는 하나 이상의 제어 지점들을 사용하여서 재구성될 8*8 픽셀 블록의 다른 실례를 나타내고 있다.
다음은 비디오 코덱에 대한 인코딩 효율 및 신호 충실도를 개선하기에 적합한 장치 및 가능한 메카니즘들을 보다 세부적으로 설명하고 있다. 이와 관련하여서, 본 발명의 일 실시예에 따른 코덱을 포함할 수 있는 예시적인 장치 또는 전자 디바이스(50)의 개략적 블록도를 나타내고 있는 도 1이 먼저 참조된다.
전자 디바이스(50)는 가령 무선 통신 시스템의 이동 단말기 또는 사용자 장치일 수 있다. 그러나, 본 발명의 실시예들은 비디오 이미지의 인코딩 및 디코딩을 필요로 하거나 비디오 이미지의 인코딩 또는 디코딩을 필요로 할 수 있는 임의의 전자 디바이스 또는 장치 내에서 구현될 수 있다.
장치(50)는 디바이스를 포함하고 보호하기 위한 하우징(30)을 포함할 수 있다. 장치(50)는 액정 디스플레이의 형태로 디스플레이(32)를 더 포함할 수 있다. 본 발명의 다른 실시예에서, 디스플레이는 이미지 또는 비디오를 디스플레이하기 적합한 임의의 디스플레이 기술에 속할 수 있다. 장치(50)는 키패드(34)를 더 포함할 수 있다. 본 발명의 다른 실시예에서, 임의의 적합한 데이터 또는 사용자 인터페이스 메카니즘이 사용될 수 있다. 가령, 사용자 인터페이스는 터치 감지형 디스플레이에서 가상 키보드 또는 데이터 입력 시스템으로서 구현될 수 있다. 이 장치는 마이크로폰(36) 또는 디지털 또는 아날로그 신호 입력부일 수 있는 임의의 적합한 오디오 입력부를 포함할 수 있다. 장치(50)는 오디오 출력 디바이스를 더 포함할 수 있다. 이 오디오 출력 디바이스는 본 발명의 실시예들에서 이어폰(38), 스피커, 아날로그 오디오 출력 접속부 또는 디지털 오디오 출력 접속부 중 임의의 하나일 수 있다. 장치(50)는 배터리(40)를 더 포함할 수 있다(또는 다른 실시예에서, 본 디바이스는 태양 전지, 연료 전지 또는 클락워크 발전기(clockwork generator)와 같은 임의의 적합한 모바일 에너지 디바이스에 의해서 전력이 공급될 수 있다). 본 장치는 다른 디바이스들과 단거리 시야 통신을 하기 위해서 적외선 포트(42)를 더 포함할 수 있다. 다른 실시예에서, 이 장치(50)는 가령 블루투스 무선 접속부 또는 USB/파이어와이어 무선 접속부와 같은 임의의 적합한 단거리 통신부를 더 포함할 수 있다.
장치(50)는 장치(50)를 제어하는 제어기(56) 또는 프로세서를 포함할 수 있다. 제어기(56)는 본 발명의 실시예들에서 양 데이터를 이미지 데이터 및 오디오 데이터 형태로 저장하고/하거나 제어기(56) 상에서 구현되는 인스트럭션들을 저장할 수 있는 메모리(58)를 포함할 수 있다. 제어기(56)는 오디오 및/또는 비디오 데이터를 코딩 및 디코딩하기에 적합하거나 제어기(56)에 의해서 실행되는 코딩 및 디코딩 동작을 보조하기에 적합한 코덱 회로(54)에 접속될 수 있다.
장치(50)는 사용자 정보를 제공하고 네트워크에서의 사용자에 대한 인증 및 허가를 위한 인증 정보를 제공하기에 적합한, 가령 UICC 및 UICC 판독기와 같은 카드 판독기(48) 및 스마트 리더(46)를 더 포함할 수 있다.
장치(50)는 제어기에 접속되어서 가령 셀룰러 통신 네트워크, 무선 통신 시스템 또는 무선 LAN과의 통신을 위한 무선 통신 신호들을 생성하기에 적합한 무선 인터페이스 회로(52)를 포함할 수 있다. 장치(50)는 무선 인터페이스 회로(52)에 접속되어서 이 무선 인터페이스 회로(52)에서 생성된 무선 주파수 신호들을 다른 장치로 송신하고/하거나 다른 장치로부터 무선 주파수 신호들을 수신하기 위한 안테나(44)를 더 포함할 수 있다.
본 발명의 몇몇 실시예에서, 장치(50)는 개별 프레임을 기록 또는 검출할 수 있는 카메라를 포함한다. 이 기록 또는 검출된 개별 프레임들은 이어서 처리되기 위해서 코덱(54) 또는 제어기로 전송된다. 본 발명의 다른 실시예에서, 이 장치는 전송 및/또는 저장하기 이전에 프로세싱할 비디오 이미지 데이터를 다른 디바이스로부터 수신할 수 있다. 본 발명의 다른 실시예에서, 장치(50)는 코딩 및 디코딩할 이미지를 유선 방식 또는 무선 방식으로 수신할 수 있다.
도 3에서는, 본 발명의 실시예들이 사용될 수 있는 시스템의 실례가 도시되어 있다. 시스템(100)은 하나 이상의 네트워크를 통해서 통신할 수 있는 다수의 통신 디바이스들을 포함한다. 시스템(10)은 다음으로 한정되지는 않지만 (GSM, UMTS, CDMA 네트워크, 등과 같은) 무선 셀룰러 전화 네트워크, IEEE 802.x 규격들 중 임의의 것에 의해서 규정되는 WLAN(무선 LAN), 블루투스 PAN(personal area network), 이더넷 LAN, 토큰 링 LAN, WAN(wide area network) 또는 인터넷을 포함하는 무선 네트워크 또는 유선 네트워크의 임의의 조합을 포함할 수 있다.
시스템(10)은 무선 통신 디바이스 및 유선 통신 디바이스 또는 본 발명의 실시예들을 구현하기에 적합한 장치(50)를 포함할 수 있다.
가령, 도 3에 도시된 시스템은 이동 전화 네트워크(11) 및 인터넷(28)을 나타내고 있다. 인터넷(28)으로의 접속은 다음으로 한정되지 않지만 장거리 무선 접속, 단거리 무선 접속 및 다양한 무선 접속을 포함하며, 상기 무선 접속은 다음으로 한정되지 않지만 전화 라인, 케이블 라인, 전력 라인 및 유사한 통신 경로들을 포함한다.
시스템(10)에 도시된 예시적인 통신 디바이스는 다음으로 한정되지 않지만 전자 디바이스 또는 장치(50), PDA와 이동 전화(14)의 결합, PDA(16), IMD(통합 메시징 디바이스)(18), 데스크탑 컴퓨터(20) 및 노트북 컴퓨터(22)를 포함할 수 있다. 장치(50)는 정지형이거나 이동하는 개인에 의해서 소지될 때에는 이동형일 수 있다. 장치(50)는 다음으로 한정되지 않지만 차량, 트럭, 택시, 버스, 열차, 배, 비행기, 자전거 또는 오토바이와 같은 교통 모드 또는 임의의 유사하고 적합한 교통 모드에 위치할 수 있다.
몇몇 또는 다른 장치는 호 및 메시지를 송수신하고 기지국(24)으로의 무선 접속부(25)를 통해서 서비스 제공자와 통신할 수 있다. 기지국(24)은 이동 전화 네트워크(11)와 인터넷(28) 간의 통신을 가능하게 하는 네트워크 서버(26)에 접속될 수 있다. 시스템은 추가 통신 디바이스 및 다양한 타입의 통신 디바이스들을 포함할 수 있다.
통신 디바이스들은 다음으로 한정되지 않지만 CDMA, GSM, UMTS, TDMA, FDMA, TCP-IP, SMS(short messaging service), MMS(multimedia messaging service), 전자메일, IMS(instant messaging service), 블루투스, IEEE 802.11 및 임의의 유사한 무선 통신 기술을 포함하는 다양한 전송 기술들을 사용하여서 통신할 수 있다. 본 발명의 다양한 실시예들을 구현하는데 관련된 통신 디바이스는 다음으로 한정되지 않지만 무선 접속, 적외선 접속, 레이저 접속, 케이블 접속 및 임의의 적합한 접속을 포함하는 다양한 매체를 사용하여서 통신할 수 있다.
도 4a에서는, 본 발명의 실시예들을 실행하기에 적합한 비디오 인코더의 블록도가 도시된다. 또한, 도 5a 및 도 5b에서는, 특히 선택된 표면 구역의 보간nterpolation)에 대해서 본 발명의 실시예들을 예시화하는 인코더의 동작이 세부적으로 도시되어 있다.
도 4a는 픽셀 예측기(302), 예측 오차 인코더(303) 및 예측 오차 디코더(304)를 포함하는 인코더를 도시하고 있다. 도 4a는 인터 예측기(306), 인트라 예측기(308), 모드 선택기(310), 필터(316) 및 참조 프레임 메모리(318)를 포함하는 픽셀 예측기(302)의 일 실시예를 나타내고 있다. 도 4b는 상기 인코더의 예시적인 실시예의 모드 선택기(310)를 보다 상세하게 나타내고 있다. 모드 선택기(310)는 블록 프로세서(381), 비용 추정기(382) 및 표면 인코더(383)를 포함하고 있다. 도 4b는 또한 모드 1 내지 모드 n을 포함하는 다수의 상이한 인트라 예측 모드를 포함하는 인트라 예측기(308)의 일 실시예를 나타내고 있다. 모드 선택기(310)는 양자화기(384)를 더 포함할 수 있다.
인코딩될 이미지(300)가 픽셀 예측기(302)에서, 구체적으로, (상기 이미지와 움직임 보상된 참조 프레임(318) 간의 차를 판정하는) 인터 예측기(306) 및 (오직 현 프레임 또는 화상의 이미 프로세싱된 부분들에 기초하여서 이미지 블록에 대한 예측을 수행하는) 인트라 예측기(308)에서 수신된다. 인터 예측기(306) 및 인트라 예측기(308)에서의 출력은 모드 선택기(310)로 전송된다. 인트라 예측기(308)는 2 개 이상의 인트라 예측 모드들을 가질 수 있다. 따라서, 각 모드는 인트라 예측을 수행하여서 예측된 신호를 모드 선택기(310)에 제공할 수 있다. 모드 선택기(310)는 이미지(300)의 복제본을 수신한다.
블록 프로세서(381)는 현 블록을 인코딩하는데 있어서 사용할 인코딩 모드를 결정한다. 블록 프로세서(381)가 인터 예측 모드를 사용하기로 결정하면, 블록 프로세서(381)는 인터 예측기(306)의 출력을 모드 선택기(310)의 출력부에 전송할 것이다. 블록 프로세서(381)가 인트라 예측 모드를 사용하기로 결정하면, 블록 프로세서는 선택 사양적인 인트라 예측 모드들 중 하나의 출력을 모드 선택기(310)의 출력부에 전송할 것이다. 블록 프로세서(381)가 표면 코딩 모드를 사용하기로 결정한 상황에서는, 블록 프로세서는 표면 인코더(383)의 출력을 모드 선택기(310)의 출력부에 전달할 것이다. 인코딩 모드를 결정하는 바에 대한 몇몇 예시적인 실시예들은 본 명세서에서 이후에 설명될 것이다.
모드 선택기의 출력은 제 1 합산 디바이스(321)에 전송된다. 제 1 합산 디바이스는 이미지(300)로부터 픽셀 예측기(302)의 출력을 감산하여서 예측 오차 인코더(303)에 입력될 제 1 예측 오차 신호(320)를 생성한다.
픽셀 예측기(302)는 이미지 블록(312)의 예측 리프리젠테이션과 예측 오차 인코더(304)의 출력(338)의 결합을 예비 재구성기(preliminary reconstructor)(339)로부터 수신한다. 예비 재구성된 이미지(314)는 인트라 예측기(308)로 그리고 필터(316)로 전송될 수 있다. 예비 재구성된 이미지 리프리젠테이션을 수신한 필터(316)는 이 예비 재구성된 이미지 리프리젠테이션을 필터링하고 최종 재구성된 이미지(340)를 출력하며 이는 참조 프레임 메모리(318) 내에 저장될 수 있다. 이 참조 프레임 메모리(318)는 인터 예측기(306)에 접속되어서 인터 예측 동작에서 후속 이미지(300)가 그에 대해서 비교되는 참조 이미지로서 사용될 것이다.
픽셀 예측기(302)의 동작은 본 기술 분야에서 알려진 임의의 픽셀 예측 알고리즘을 수행하도록 구성될 수 있다.
예측 오차 인코더(302) 및 예측 오차 디코더(304)의 동작이 이후에 더 상세하게 설명될 것이다. 다음의 실례들에서, 이 인코더는 풀 이미지 또는 풀 화상을 형성할 16*16 픽셀 매크로 블록들에 대해서 이미지들을 생성한다. 따라서, 다음의 실례들에서, 픽셀 예측기(302)는 16*16 픽셀 사이즈를 갖는 일련의 예측된 매크로 블록을 출력하고, 제 1 합산 디바이스(321)는 이미지(300) 내의 제 1 매크로 블록과 예측된 매크로 블록(픽셀 예측기(302)의 출력) 간의 차를 표현하는 16*16 픽셀 사이즈의 일련의 레지듀얼 데이터 매크로 블록을 출력한다. 물론, 다른 사이즈의 매크로 블록도 사용될 수 있다.
예측 오차 인코더(303)는 변환 블록(342) 및 양자화기(344)를 포함한다. 변환 블록(342)은 제 1 예측 오차 신호(320)를 변환 영역으로 변환시킨다. 가령, 이러한 변환은 DCT 변환일 수 있다. 양자화기(344)는 가령, DCT 계수와 같은 변환 영역 신호를 양자화하여서 양자화된 계수를 생성한다.
엔트로피 인코더(330)는 예측 오차 인코더의 출력을 수신하여서 이 신호에 대하여 오차 검출 및 보정 기능을 제공하기에 적합한 엔트로피 인코딩/가변 길이 인코딩을 수행한다. 임의의 적합한 엔트로피 인코딩 알고리즘이 사용될 수 있다.
예측 오차 디코더(304)는 예측 오차 인코더(303)로부터의 출력을 수신하고 예측 오차 인코더(303)에 반대되는 프로세스를 수행하여서 디코딩된 예측 오차 신호(338)를 생성한다. 이 디코딩된 예측 오차 신호는 제 2 합산 디바이스(339)에서 이미지 블록(312)의 예측 리프리젠테이션과 결합되어서 예비 재구성된 이미지(314)를 생성한다. 예측 오차 디코더는 역양자화기(346) 및 역변환 블록(348)을 포함하도록 고려될 수 있다. 상기 역양자화기(346)는 가령, DCT 계수와 같은 양자화된 계수 값들을 역양자화하여서 변환 신호를 재구성한다. 상기 역변환 블록(348)은 상기 재구성된 변환 신호에 대해서 역변환을 수행한다. 상기 역변환 블록(348)의 출력은 재구성된 블록을 포함한다. 예측 오차 디코더는 다른 디코딩된 정보 및 필터 파라미터에 따라서 상기 재구성된 매크로 블록을 필터링하는 매크로 블록 필터를 더 포함할 수 있다.
도 8a 내지 도 8c는 픽셀 값에서의 변화가 작은 이미지 영역에 대해서 양자화가 초래하게 되는 영향 및 이러한 영향이 본 발명을 사용하여서 저감되는 방식을 나타내고 있다. x 축은 픽셀 좌표를 나타내고 y 축은 픽셀 값을 나타낸다. 도 8a에서, 1 차원 신호의 일부의 실례가 도시되어 있다. 픽셀 값들은 블록 간 및 각 블록(1,2,3) 내에서 근소하게 증가하고 있다. 도 8b에서, 도 8a의 이미지 신호는 공간적 예측(점선)을 사용하고 DC 변환된 신호의 DC 계수를 코딩하여서 코딩되었다. 도 8c에서, 도 8a의 이미지 신호는 본 발명의 예시적인 실시예에 따른 방법에 의해서 코딩되었으며, 이 실시예는 화상 블록 경계에서의 제어 지점들의 픽셀 값들을 표시하고 빠진 픽셀 값들을 보간하는 것이다.
모드 선택기(310)의 동작 및 실시예가 도 5a를 참조하여서 보다 상세하게 도시되어 있다. 인터 예측기(306)의 출력, 인트라 예측기(308)의 출력 및/또는 이미지 신호(300)로부터의 예측 신호에 기초하여서, 블록 프로세서(381)는 현 이미지 블록을 인코딩하는데 사용할 인코딩 모드를 결정한다. 이러한 결정은 도 5a에서 블록(500)으로서 도시되어 있다. 블록 프로세서(381)는 모드 선택기(310)로 입력된 예측 신호에 대한 RD 비용(rate-distortion cost) 값 또는 다른 비용 값을 계산하여서 이 계산된 비용이 가장 최저가 되는 인코딩 모드(502,503,504)를 선택한다. 또한, 블록 프로세서(381)는 현 블록이 평면 영역, 즉 이미지 콘텐츠 내에서 어떠한 변화도 없거나 있어도 매우 작은 변화만 있는 영역을 포함하는지의 여부를 판정하고 포함하고 있다고 판정되면 표면 코딩 모드(502)를 선택할 수 있다.
모드 선택기(310)는 현 블록의 인코딩 모드에 대한 표시(indication)를 제공한다(블록(501)). 본 경우에, 이 표시는 표면 코딩 모드를 표시한다. 이러한 표시는 인코딩되어서 해당 이미지 정보과 함께 메모리에 저장되거나 비트 스트림 내에 삽입될 수 있다.
인트라 예측 모드가 선택되면, 현 블록은 인트라 예측 방법(503)에 의해서 예측된다. 한편, 인터 예측 모드가 선택되면, 현 블록은 인터 예측 방법(504)에 의해서 예측된다.
표면 코딩 모드의 몇몇 예시적인 실시예들은 다음과 같이 동작한다. 블록 프로세서(381)는 인코딩될 블록 내의 하나 이상의 제어 지점들을 선택하고 이 제어 지점에서의 픽셀 값은 해당 픽셀에 대해서 소망하는 값으로 설정된다(블록(505)). 여러 블록들로 분할된 이미지가 좌측에서 우측으로 그리고 상부에서 하부로 인코딩되는 경우에, 제어 지점에 대한 하나의 선택 지점은 인코딩될 블록의 하부 우측 코너에서의 픽셀이다. 이는 이 제어 지점이 이미 인코딩된 픽셀들로부터 수평 및 수직 방향 모두에서 가장 멀리 있기 때문이다. 이러한 사항은 8*8 픽셀 블록이 인코딩될 것이며 이 블록과 인접하는 인코딩된 블록들이 그의 좌측 및 그 위에 존재하는 상황을 나타내고 있는 도 9a 및 도 9b에 도시되어 있다. 그러나, 두 번째의 마지막 열에서의 두 번째의 마지막 픽셀과 같은 제어 지점을 선택할 수도 있다. 또는, 블록 구역 내에서 몇몇 다른 픽셀을 제어 지점으로서 선택할 수도 있다. 또한, 가령 2 개 이상의 제어 지점들을 선택할 수도 있다.
블록들로 분할된 이미지가 우측에서 좌측으로 그리고 상부에서 하부로 인코딩되는 경우에, 제어 지점에 대한 하나의 선택 지점은 인코딩될 블록의 하부 좌측 코너에서의 픽셀이다. 또한, 하부 우측 코너에서의 픽셀과 다른 픽셀들이 제어 지점으로서 선택되거나 하부 좌측 코너에서의 픽셀이 제어 지점으로서 존재할 수 있다.
제어 지점(들)이 선택되면, 현 블록의 다른 픽셀 값들은 보간에 의해서 결정될 수 있다. 이러한 보간은 선형이거나 로그 함수적이거나 다른 알고리즘에 의해서 규정될 수 있다. 본 예시적인 실시예에서, 보간은 제어 지점에서의 픽셀 값 및 참조 값을 기초로 한다. 몇몇 실시예들에서, 참조 값은 동일한 행/열 상에 있으면서 현 블록과 이웃하는 블록의 경계에 있는 이미 인코딩된 픽셀의 값이다. 몇몇 실시예들에서, 참조 값은 (수평 방향에서) 현 블록의 좌측 상의 이미지 블록 또는 (수직 방향에서) 현 블록에 위에 있는 이미지 블록에서의 가장 근접한 이미 디코딩된 값이다. 이 참조 값은 수평 및 수직 보간을 위해서 결정된다(블록(506)). 도 9a에서, 제어 지점은 참조 부호(901)로서 도시되어 있으며, 수평 방향에서의 보간을 위한 제 1 참조 값, 즉 현 블록과 이웃하는 블록 간의 경계에 있으면서 동일한 행(row)에 존재하는 이미 인코딩된 픽셀 값은 참조 부호(902)로서 도시되어 있고, 수직 방향에서의 보간을 위한 제 2 참조 값, 즉 현 블록과 이웃하는 블록 간의 경계에 있으면서 동일한 열(column)에 존재하는 이미 인코딩된 픽셀 값은 참조 부호(903)로서 도시되어 있다.
블록 프로세서(381)는 제어 지점(901)의 값 및 참조 값들(902,903)을 표면 인코더(383)에 제공한다. 표면 인코더(383)는 이 제어 지점의 값 및 제 1 참조 값(902)에 기초하여서 현 블록의 마지막 열의 다른 값들을 보간한다. 또한, 표면 인코더(383)는 이 제어 지점의 값 및 제 2 참조 값(903)에 기초하여서 현 블록의 마지막 열의 다른 값들을 보간한다. 이 단계는 도 5에서 블록(507)으로 도시되어 있다.
현 블록의 다른 픽셀들의 값들은 가령 최종 행에 대한 보간된 값들, 최종 열에 대해서 보간된 값들 및 이웃하는 블록들의 픽셀 값들, 즉 경계 픽셀 값들을 사용하여서 양방향 보간에 의해서 결정될 수 있다(블록(508)). 가령, 도 9b에 도시된 바와 같이, 현 블록의 5 번째 행 및 5 번째 열에 있는 픽셀은 양방향 보간에 있어서 참조 픽셀들로서 다음과 같은 픽셀들을 사용하여서 결정될 수 있다. 즉, 그 픽셀들은 현 블록의 최종 행의 5 번째 픽셀, 현 블록 위의 인접하는 블록의 최종 행의 5 번째 픽셀, 현 블록의 최종 열의 5 번째 픽셀 및 현 블록에 대해서 좌측에 인접하는 블록의 최종 열의 5 번째 픽셀이다. 또한, 참조 값들로서 대응하는 픽셀 값들을 사용하여서 다른 픽셀들로 역시 양 방향 방식으로 보간될 수 있다.
몇몇 실시예들에서, 2 개 이상의 제어 지점이 존재할 수 있다. 이러한 경우에, 현 블록 내의 다른 지점들의 값을 결정하기 위한 일 선택 방안은 복수의 보간 동작을 수행하는 것이다. 이때에, 각 보간 동작은 상술한 바와 같이 일 참조 값을 일 제어 지점으로서 사용하고, 모든 보간 동작이 수행되면, 모든 보간 동작의 결과들이 가령, 픽셀들에 대해서 보간된 값들을 평균처리하거나 몇몇 다른 방법에 의해서 결합된다.
복수의 제어 지점들을 사용하는 실례가 도 12a 및 도 12b에 도시되어 있다. 본 실례에서, 4 개의 제어 지점들이 사용되고 8*8 픽셀 블록 내의 값들은 이웃하는 매크로 블록의 픽셀 값들을 사용하지 않고서 재구성된다. 본 실례에 따르면, 제 1 제어 지점은 현 블록의 하부 우측 코너의 픽셀이며, 제 2 제어 지점은 현 블록의 상부 우측 코너의 픽셀이며, 제 3 제어 지점은 현 블록의 하부 좌측 코너의 픽셀이고, 제 4 지점은 현 블록의 상부 좌측 코너의 픽셀이다.
현 블록의 다른 픽셀 값들을 획득하기 위해서 제어 지점들의 값들이 가령 다음과 같이 사용될 수 있다. 먼저, 현 블록의 최저부에서의 행 및 현 블록의 우측 에지에서의 열이 프로세싱된다. 제 3 제어 지점과 제 1 제어 지점 간의 열 값들은 제 1 제어 지점과 제 3 제어 지점의 값들을 보간함으로써 획득될 수 있다. 이에 대응되게, 제 2 제어 지점과 제 1 제어 지점 간의 열 값들은 제 1 제어 지점과 제 2 제어 지점의 값들을 보간함으로써 획득될 수 있다. 최종 행 및 최종 열의 픽셀 값들이 획득되면, 나머지 값들은 이 최종 행 및 최종 열의 픽셀 값들이 각기 현 블록의 제 1 행 및 제 1 열의 값들과 함께 사용되는 양방향 보간에 의해서 결정될 수 있다.
도 12에서 제안된 원칙들을 사용하는 다른 실시예에서, 제 1 행의 값들은 제 4 제어 지점과 제 2 제어 지점 간을 보간함으로써 결정되며, 한편, 제 1 열의 픽셀 값들은 제 4 제어 지점과 제 3 제어 지점 간을 보간함으로써 결정된다. 이 후에, 제 1 행 및 최종 행의 보간된 값들 및 제 1 열 및 최종 열의 보간된 값들이 양방향 보간에서 사용되어서 현 블록의 나머지 값들이 획득될 수 있다.
도 12a 및 도 12b의 실례에서, 제어 지점들 중 적어도 몇몇의 값들은 또한 참조 값들로서 사용되지만 이들은 이웃하는 블록들로부터 선택된 것이 아니라 동일한 블록에서 선택된 것이다.
몇몇 실시예에서, 몇몇 참조 값들은 이웃하는 블록(들)에서 선택될 수 있으며 몇몇 다른 참조 값들은 현 블록에서 선택될 수 있다.
인코딩 모드가 (또한 평면 모드로서 지칭될 수 있는) 표면 코딩 모드인 경우에, 블록 프로세서(381)는 제어 지점에 대한 표시를 형성한다(509). 이 표시는 제어 지점의 픽셀 값을 포함하거나 제어 지점의 실제 픽셀 값과 제어 지점의 예측된 픽셀 값 간의 차를 포함할 수 있다. 이러한 차는 본 문맥에서 델타로서 지칭된다. 예측된 픽셀 값은 동일한 이미지 내의 하나 이상의 (인코딩 순서에서) 보다 조기의 픽셀 값들을 사용하여서 획득될 수 있다. 가령, 이 제어 지점의 값은 인코딩될 이미지 내에서의 상기 제어 지점의 실제 값과 상기 동일한 이미지의 이전 블록(이미 인코딩된 블록) 내에서의 상기 제어 지점과 동일한 위치에서의 픽셀 값의 차로서 제공될 수 있다.
이 제어 지점의 값에 대한 표시는 또한 이 제어 지점의 좌표를 포함할 수 있다. 그러나, 몇몇 실시예에서, 제어 지점의 위치는 사전 결정되며, 이 경우에는, 비트 스트림 내에 제어 지점의 위치에 대한 표시를 포함시킬 필요가 없으며 이를 디코더에 전송할 필요가 없다. 이미지 블록 내에서 사전 결정된 위치들을 갖는 2 개 이상의 제어 지점들이 존재하는 경우에, 블록 프로세서(381)는 제어 지점의 인덱스 및 제어 지점의 델타 값(또는 실제 값)을 비트 스트림 내에 포함시킬 수 있으며, 이 경우에, 디코더는 각 제어 지점의 델타 값들을 서로 구별하기 위해서 인덱스를 사용할 수 있다.
제어 지점의 델타 값 또는 실제 값은 선택 사양적 양자화기(384)에 의해서 양자화될 수 있으며 이로써 제어 지점의 값을 디코더에 표시하기 위해서 필요한 정보의 양이 더 저감될 수 있다. 양자화기(384)는 모든 가능한 제어 지점 값 또는 델타 값에 대해서 동일한 양자화 단계를 사용하거나 각 제어 지점 값 또는 델타 값에 따라서 양자화 단계를 변경할 수 있다. 가령, 제어 지점의 값 또는 델타 값이 적으면, 이는 양자화 처리되지 않으며(즉, 양자화 단계는 1이다), 한편, 제어 지점의 값 또는 델타 값이 크면, 이는 보다 큰 양자화 처리를 받는다. 몇몇 실시예에서, 양자화기(384)는 몇몇 제어 지점 값들 또는 델타 값들에 대해서 동일한 양자화된 값을 생성할 수 있다. 즉, 이 양자화는 불균일한 양자화로서 지칭될 수 있다. 도 10은 이러한 실시예의 실례를 나타내고 있다. 본 실례에서, 양자화기(384)는 가령 델타 값이 0 내지 4일 때에 각기 0 내지 4를 양자화된 델타 값으로서 출력하고, 델타 값이 5일 때에 양자화기(384)는 4를 출력하며, 델타 값이 6 및 7일 때에는 양자화기(384)는 6을 양자화된 델타 값으로서 출력하고, 델타 값이 8 및 9일 때에 양자화기(384)는 9를 출력한다. 이러한 바는 델타 값이 10 내지 27일 때에 도 10에 도시된 바와 같이 출력 값이 출력되도록 되며, 델타 값이 28 내지 31일 때에 양자화기(384)는 양자화된 델타 값으로서 30을 출력한다. 이러한 델타 값들은 가령, 가변 길이 코드워드(codeword)에 의해서 더 인코딩되며 이로써 이 델타 값들을 표현하기 위해서 필요한 정보량이 더 저감될 수 있다.
각 제어 지점의 값은 다른 제어 지점의 값들과 독립적으로 코딩될 수 있다. 또는, 각 제어 지점의 값들은 이들 간의 상관 관계가 더 활용될 수 있도록 공동으로 인코딩될 수 있다. 가령, 다수의 연속적인 보간된 블록들에 대해서 동일한 제어 지점 값 또는 델타 값이 선택되는 경우에, 블록 프로세서(381)는 상기 (델타) 값을 한번 삽입하고 이 (델타) 값이 적용될 연속적인 보간된 블록의 개수를 표시한다.
표면 코딩 모드와 관련하여서, 블록 프로세서(381)는 몇몇 실시예에서 현 블록에 대한 레지듀얼 신호를 결정할 수 있다. 이 잔여 신호는 픽셀의 실제 값과 픽셀의 보간된 값 간의 차를 픽셀 기반으로 계산함으로써 획득될 수 있다. 이 레지듀얼 신호는 이어서 변환 블록(342)에 의해서 변환 영역으로 변환되고 변환 계수는 양자화기(344)에 의해서 양자화될 수 있다.
몇몇 실시예에서, 보간 동작은 다양한 종류의 필터와 결합될 수 있으며 이 프로세스에서 사용되는 참조 픽셀들은 필터링될 수 있다.
도 11에 도시된 바와 같은 예시적인 실시예에서, 이미지의 비트 스트림은 이미지의 시작에 대한 표시(1110), 이미지의 각 블록의 이미지 정보(1120) 및 이미지의 종료에 대한 표시(1130)를 포함한다. 이미지의 각 블록의 이미지 정보(1120)는 예측 모드에 대한 표시(1122) 및 인터 예측 또는 인트라 예측이 이미지 블록에 대해서 사용될 때에 레지듀얼 신호의 계수를 실제로 포함할 수 있는 블록의 픽셀 값들에 대한 표시(1124)를 포함할 수 있다. 표면 코딩 모드가 사용되었으면, 블록의 픽셀 값에 대한 표시(1124)는 제어 지점(들)의 (양자화되고 인코딩된) 델타 값(들)을 포함할 수 있다. 비트 스트림이 다른 정보를 더 포함할 수 있음은 자명하다. 또한, 도 11의 것은 비트 스트림의 단지 단순화된 이미지이며, 실제 구현 시에는, 비트 스트림의 내용들은 도 11에 도시된 바와는 상이할 수 있다.
비트 스트림은 엔트로피 인코더(330)에 의해서 더 인코딩될 수 있다.
이하에서는, 디코더(600)의 예시적인 실시예의 동작이 도 6을 참조하여서 보다 상세하게 기술될 것이다.
위의 실시예들이 16*16 픽셀의 매크로 블록 사이즈에 대해서 기술되었지만, 기술된 방법 및 장치들은 이와 다른 픽셀 사이즈를 갖는 매크로 블록을 처리하도록 구성될 수도 있다.
본원의 완결성을 위해서, 적합한 디코더가 이하에서 기술된다. 디코더 측에서, 유사한 동작들이 수행되어서 이미지 블록들을 재구성한다. 도 6은 본 발명의 실시예들을 사용하기에 적합한 비디오 디코더의 블록도이다. 이 디코더는 수신된 신호에 대해서 엔트로피 디코딩을 수행하는 엔트로피 디코더(600)를 나타내고 있다. 따라서, 엔트로피 디코더는 상술된 인코더인 엔트로피 인코더(330)의 역 동작을 수행한다. 엔트로피 디코더(600)는 엔트로피 디코딩의 결과를 예측 오차 디코더(602) 및 픽셀 예측기(604)에 출력한다.
픽셀 예측기(604)는 엔트로피 디코더(600)의 출력을 수신한다. 픽셀 예측기(604) 내의 예측 선택기(614)는 인터 예측, 인트라 예측 또는 보간 동작이 수행될 것임을 판정한다. 예측 선택기는 이미지 블록의 예측된 리프리젠테이션(616)을 제 1 결합기(613)에 또한 출력한다. 이미지 블록의 예측된 리프리젠테이션(616)은 재구성된 예측 오차 신호(612)와 함께 사용되어서 예비 재구성된 이미지(618)를 생성한다. 이 예비 재구성된 이미지(618)는 예측 선택기(614)에서 사용되거나 필터(622)로 전달될 수 있다. 필터(620)는 필터링을 하여서 최종 재구성된 신호(622)를 출력한다. 이 최종 재구성된 신호(622)는 참조 프레임 메모리(624) 내에 저장된다. 이 참조 프레임 메모리(624)는 예측 동작을 위해서 예측 선택기(614)에 더 접속될 수 있다.
예측 오차 디코더(602)는 엔트로피 디코더(600)로부터의 출력을 수신한다. 예측 오차 디코더(602)의 양자화기(692)는 엔트로피 디코더(600)의 출력을 양자화하고 역변환 블록(693)은 양자화기(692)가 출력한 양자화된 신호에 대해서 역변환 동작을 수행한다. 엔트로피 디코더(600)의 출력은 예측 오차 신호가 사용되지 않을 것임을 표시할 수 있으며 이 경우에 예측 오차 디코더는 제로 출력 신호를 생성한다. 이는 가령 본 발명의 본 예시적인 실시예에 대한 경우이다. 그러나, 본 발명의 다른 실시예에서는 예측 오차 디코더 유닛이 사용되어서 제로가 아닌 예측 오차 신호를 디코딩할 수 있다.
이 디코더는 재구성할 16*16 픽셀 레지듀얼 매크로 블록을 선택한다. 이렇게 재구성될 16*16 픽셀 레지듀얼 매크로 블록을 선택하는 바가 흐름도(700)에서 도시되어 있다.
디코더는 현 블록이 인코딩될 때에 사용된 인코딩 모드에 대한 정보를 수신한다. 이러한 정보는 필요하다면 표시로서 디코딩되어서 예측 선택기(614)의 재구성 프로세서(691)에 제공된다. 재구성 프로세서(691)는 이 표시를 검사한다(도 7에서의 블록(701)). 이 표시가 이미지 블록이 인트라 예측을 사용하여서 인코딩되었다고 표시하면, 인트라 예측 모드를 선택한다(블록(703)). 이 표시가 이미지 블록이 인터 예측을 사용하여서 인코딩되었다고 표시하면, 인터 예측 모드를 선택한다(블록(704)). 또는, 이 표시가 이미지 블록이 보간 방식을 사용하여서 인코딩되었다고 표시하면, 표면 코딩 모드가 선택된다(화살표(702)). 본원의 맥락에서는, 표면 코딩 모드에서만의 디코더의 동작이 보다 상세하게 기술된다.
표면 코딩 모드에서, 재구성 프로세서(691)는 제어 지점에 대한 정보를 디코딩한다(블록(705)). 사전 결정된 제어 지점들이 사용되면, 재구성 프로세서(691)는 제어 지점에 대한 위치를 수신할 필요가 없지만 가령 제어 지점에 대한 사전 결정된 위치의 정보를 포함하는 파라미터를 사용할 수는 있다. 재구성 프로세서(691)는 제어 지점의 값에 대한 정보를 디코딩한다. 상술한 바와 같이, 제어 지점의 값은 제어 지점의 실제 값과 제어 지점의 예측된 값 간의 차로서 인코딩되었으며 따라서 재구성 프로세서(691)는 제어 지점의 값을 획득하기 위해서 유사한 동작을 수행한다. 재구성 프로세서(691)는 보간 시에 인코더에 의해서 사용된 참조 지점들을 판정한다(블록(706)). 재구성 프로세서(691)는 상기 제어 지점의 값 및 참조 값들을 디코더의 표면 디코더(694)에 제공하고 표면 디코더(694)는 이 제어 지점과 동일한 행 및 동일한 열에서의 아직 알려지지 않은 픽셀 값들을 보간한다(블록(707)). 이들 픽셀 값이 보간되었으면, 현 블록의 나머지 부분의 픽셀 값들은 동일한 이미지 블록의 나머지 픽셀 값들을 인코딩하는데 사용된 인코더와 유사한 보간법을 구현함으로써 획득될 수 있다.
몇몇 실시예들에서, 표면 코딩 모드에서 획득된 픽셀 값들은 더 처리되어서 최종 픽셀 값들이 획득되게 된다. 가령, 보간에 의해서 획득된 픽셀 값들은 필터링되거나 레지듀얼 데이터 또는 움직임 보상된 예측 데이터와 같은 다른 신호들에 부가될 수 있다.
인트라 예측 모드에서, 재구성 프로세서(691)는 예비 재구성된 이미지(618)를 현 블록의 픽셀 값들을 재구성할 예측기 블록(695)으로 전송한다.
표면 코딩 모드는 다수의 상이한 컬러 성분들에 대해서 개별적으로 적용될 수 있으며, 이 경우에 각 컬러 성분의 픽셀 값들은 다른 컬러 성분에 대한 어떠한 참조도 하지 않고 보간될 수 있다. 아니면, 표면 코딩 모드는 다수의 상이한 컬러 성분들에 대해서 공동으로 적용될 수 있으며, 이 경우에, 보간은 컬러 성분들의 조합에 대해서 적용될 수 있다.
이어서, 표면 코딩 모드 선택에 관한 동작의 몇몇 예시적인 실시예들이 도 5b의 흐름도를 참조하여서 보다 상세하게 기술될 것이다. 인코더의 블록 프로세서(381)는 현 블록이 평탄한 성질을 갖는지의 여부를 검사한다. 이는 가령 하나 이상의 조건들을 평가함으로써 수행될 수 있다. 일 조건은 레이트 왜곡 비용(rate distortion cost)일 수 있으며 이 경우에 블록 프로세서(381)는 가령, 4*4 변환 사이즈, 8*8 변환 사이즈 및 16*16 변환 사이즈와 같은 상이한 변환 사이즈에 대한 레이트 왜곡 비용을 평가할 수 있다(블록(521)). 이 레이트 왜곡 비용은 가령 다음의 등식(2)에 의해서 계산될 수 있다.
RD = D + □rate (2)
여기서, D는 최초의 매크로 블록과 비교하여서 재구성된 매크로 블록의 왜곡 정도를 나타내며, rate는 현 매크로 블록의 코딩 비트 레이트를 나타내며, □는 Lagrangian 계수를 나타낸다.
평가 결과가 최상의 비용을 제공하는 변환 사이즈가 가령 16*16 픽셀 블록과 같은 사전 결정된 사이즈이거나 이보다 큰 사이즈이다는 것을 나타내면, 제 1 조건이 충족된다(블록(522)).
다른 조건은 레지듀얼 신호의 (양자화된) AC 성분들의 크기와 관련된다. 이는 인트라 예측에 있어서 하나 이상의 인트라 예측 모드를 사용하고 각 모드에 대한 레지듀얼 신호를 획득하며 레지듀얼 신호를 변환하여서 변환 계수를 획득하고 이 변환 계수를 양자화함으로써 평가될 수 있다. 이어서, 블록 프로세서는 양자화된 변환 계수를 검사하고 모든 양자화된 AC 계수들이 제로와 동일하거나 소정의 임계치보다 작으면(블록(523)), 이미지 블록이 평탄한 표면을 포함할 가능성이 있다고 판단하고 제 2 조건이 만족된다(블록(524)).
DCT 변환에서, 결과값은 DC 계수 및 AC 계수 세트이다. AC 계수는 이미지 블록의 이미지 콘텐츠에서의 편차를 표시한다. AC 계수가 제로이거나 상대적으로 작으면, 이 AC 계수는 이미지 블록의 이미지 콘텐츠가 매우 균일하며 그의 콘텐츠 내에 큰 편차를 가지지 않음을 나타낸다.
블록 프로세서(381)는 이웃하는 구역들(수직 방향 및 수평 방향으로 인접하는 블록들)의 재구성 값들 및 이웃하는 블록들과 현 블록 간의 임의의 에지의 존재를 사용할 수 있다(블록(525)). 이 결과가 제 3 조건으로서 사용될 수 있다.
또한, 최초의 이미지의 픽셀 값들 및 최초의 이미지에서의 고주파수 성분의 에너지 및 임의의 에지의 존재는 표면 코딩 모드에 대한 선택 판정 시에 제 4 조건으로서 사용될 수 있다(블록(526)).
몇몇 실시예에서, 표면 코딩 모드에 대한 선택 판정 시에 제 5 조건으로서 표면 코딩 모드의 재구성 값들이 정규 인트라 예측 모드의 재구성 값과 비교될 수 있다. 표면 코딩 모드의 재구성 값들이 정규 인트라 예측 모드의 재구성 값과 동일하면, 상기 인트라 예측 모드가 선택될 수 있다(블록(528)).
이어서, 블록 프로세서(381)는 상기 제 1 조건, 제 2 조건, 제 3 조건, 제 4 조건 및/또는 제 5 조건 또는 이들의 임의의 조합을 사용하여서, 현 블록을 인코딩하기 위해서 표면 코딩 모드가 사용될지(블록(505)) 아니면 다른 예측 모드들이 사용될지(블록(503,504))를 결정한다.
표면 코딩 모드 선택에 대한 또 다른 예시적인 실시예가 도시된다. 16*16 매크로 블록일 수 있는 현 이미지 블록에 대해서, 블록 프로세서(381)는 모든 아래의 조건들이 만족될 때에만 표면 코딩 모드를 평가한다.
먼저, 레이트 왜곡 비용에 따른 최상의 모드는 대형 변환 사이즈(가령, 16*16)를 갖는 인트라 코딩이다.
둘째로, 레지듀얼 신호의 모든 양자화된 계수들은 제로이거나 오직 DC 계수만이 제로가 아니다.
셋째로, 해당 블록 내에서의 최초의 비디오 신호의 고 주파수 에너지는 임계치보다 낮다. 이는 DCT를 사용하여서 최초의 신호를 변환하고 최고의 N 개의 계수들의 총 에너지를 계산함으로써 체크될 수 있다. 여기서, N은 제로보다 크며 변환 계수들의 개수보다 작다.
이러한 비한정적 실시예에서, 위의 모든 조건들이 만족되면, 블록 프로세서(381)는 다른 코딩 모드들에 대한 대안으로서 표면 코딩 모드를 평가한다. 이 표면 코딩 모드는 다음의 모든 기준들이 만족될 때에만 다른 코딩 모드에 대한 대안으로서 선택된다.
먼저, 표면 코딩 모드를 사용할 시의 재구성 오차가 통상적인 인트라 코딩 모드를 사용할 때의 재구성 오차보다 크게 높지 않아야 한다.
둘째로, 표면 코딩 모드의 재구성은 인트라 코딩 모드의 재구성과 동일하지 말아야 한다.
본 발명은 다양한 방식으로 구현될 수 있다. 가령, 표면 코딩 모드 사용에 대한 결정은 오직 최초의 비디오 신호를 분석하는 바에 기초하여서 이루어질 수 있다. 또는, 표면 코딩 모드 사용에 대한 결정은 상술한 바와 같은 상이한 모드들에 대한 레이트 왜곡 비용을 서로 비교하거나 이러한 비교 이전에 일 모드 또는 몇몇 모드에 어느 정도의 바이어스를 부가함으로써 이루어질 수 있다. 또는, 표면 코딩 모드 사용에 대한 결정은 필터링된 비디오 신호 또는 샘플들 또는 몇몇 다른 프로세싱을 거친 샘플들에 기초하여서 이루어질 수 있다. 또한, 양자화된 AC 계수가 존재할 시에, 즉, 모든 AC 계수들이 제로가 아닌 상황에서 표면 코딩 모드가 평가될 수 있다.
위에서 "일 모드 또는 몇몇 모드에 어느 정도의 바이어스를 부가한다"는 것은 평가된 레이트 왜곡 비용이 다른 비용 값들과 비교되기 이전에 상기 평가된 레이트 왜곡 비용으로부터 가산 또는 감산됨을 의미한다.
몇몇 실시예에서, 레지듀얼 신호에 대한 트렁케이티드 변환(truncated transform)이 사용될 때에 발생할 수 있는 링화 아티팩트를 저감하는 방법이 제공된다. 일 방법은 레지듀얼 신호에서의 고주파수 성분을 저감시키기 위해서 트렁케이티드 변환(이러한 트렁케이티드 변환으로 코딩될 때에 링화 아티팩트가 발생할 수 있음)을 사용하기 이전에 상기 레지듀얼 신호에 대해서 저역 통과 필터를 적용시키는 것이다. 다른 방법은 매크로 블록 내의 블록들에 대한 예측 및 재구성 오차를 비교함으로써 상기 트렁케이티드 변환을 사용하지 않기로 결정하는 것이다.
상술된 본 발명의 실시예들은 관련된 프로세스들의 이해를 돕기 위해서 인코더와 디코더가 분리된 장치의 측면에서 코덱을 기술하고 있다. 그러나, 본 발명에 따른 장치, 구조 및 동작들은 통합형 디코더-인코더 장치, 구조 또는 동작들로서 구현될 수도 있다. 또한, 본 발명의 몇몇 실시예에서, 인코더 및 디코더는 모든 공통 구성 요소 또는 몇몇 공통 구성 요소들을 공유할 수 있다.
상술된 실례들이 전자 장치 내의 코덱 내에서 동작하는 본 발명의 실시예들을 기술하고 있지만, 이하에서 기술되는 본 발명의 실시예들은 임의의 비디오 코덱의 일부로서 구현될 수 있다. 가령, 본 발명의 실시예들은 고정된 통신 경로 또는 유선 통신 경로 상에서 비디오 코딩을 수행할 수 있는 비디오 코덱에서 구현될 수 있다.
따라서, 사용자 장치는 위에서 기술된 본 발명의 실시예들에서 기술된 바와 같은 비디오 코덱을 포함할 수 있다.
용어 "사용자 장치"는 이동 전화, 휴대용 데이터 처리 장치 또는 휴대용 웹 브라우저와 같은 임의의 적합한 타입의 무선 사용자 장치를 포함하도록 해석되어야 한다.
또한, PLMN(public land mobile network)의 구성 요소들도 역시 상술한 바와 같은 비디오 코덱을 포함할 수 있다.
일반적으로, 본 발명의 다양한 실시예들은 하드웨어, 특정 목적용의 회로, 소프트웨어, 로직 또는 이들의 임의의 조합으로 구현될 수 있다. 가령, 몇몇 측면들은 하드웨어로 구현될 수 있는 반면에, 다른 측면들은 제어기, 마이크로프로세서 또는 다른 컴퓨팅 장치에 의해서 실행될 수 있는 펌웨어 또는 소프트웨어로 구현될 수 있으며, 본 발명은 이로만 한정되지 않는다. 본 발명의 다양한 측면들이 블록도 또는 흐름도로서 예시되거나 다른 도시적인 표현을 사용하여서 기술되었지만, 본 명세서에서 기술된 블록, 장치, 시스템, 기술 또는 방법은 예를 들어 말하자면 하드웨어, 소프트웨어, 펌웨어, 특정 목적용의 회로 또는 로직, 범용 하드웨어 또는 제어기 또는 다른 컴퓨팅 장치 또는 이들의 몇몇 조합들로 해서 구현될 수 있다.
본 발명의 실시예들은 프로세서 엔티티 내에서와 같이 이동 장치의 데이터 프로세서에 의해서 실행 가능한 컴퓨터 소프트웨어, 하드웨어 또는 이들의 조합에 의해서 구현될 수 있다. 또한, 이와 관련하여서, 도면들의 논리적 흐름에서의 임의의 블록은 프로그램 단계 또는 상호 접속된 로직 회로, 블록 및 기능 또는 프로그램 단계와 로직 회로의 조합을 나타낼 수 있다. 소프트웨어는 프로세서 내에서 구현되는 메모리 블록 또는 메모리 칩, 하드 디스크 또는 플로피 디스크와 같은 자기 매체 및 가령 DVD, 이의 변형 및 CD와 같은 광학 매체를 포함하는 물리적 매체 상에 저장될 수 있다.
메모리는 지역적 기술적 환경에 적합한 임의의 타입의 메모리이며 반도체 기반형 메모리 장치, 자기 메모리 장치 및 시스템, 광학 메모리 장치 및 시스템, 고정형 메모리 및 분리형 메모리와 같은 임의의 적합한 데이터 저장 기술을 사용하여서 구현될 수 있다. 데이터 프로세서는 지역적 기술적 환경에 적합한 임의의 타입의 프로세서일 수 있으며 예를 들어 말하자면 범용 프로세서, 특정 목적용 프로세서, 마이크로프로세서, DSP(디지털 신호 프로세서) 및 다중 코어 프로세서 아키텍처를 기반으로 하는 프로세서 중 하나 이상을 포함할 수 있다.
본 발명의 실시예들은 집적 회로 모듈과 같은 다양한 구성 요소들에서 실시될 수 있다. 집적 회로의 설계는 대체로 매우 자동화된 프로세스이다. 복잡하고 강력한 소프트웨어 툴이 사용되어서 로직 레벨 설계를 반도체 기판상에서 에칭 및 형성될 반도체 회로 설계로 변환시킬 수 있다.
미국 캘리포니아 마운틴 뷰 소재의 Synopsys, Inc 사 및 미국 캘리포니아 산 호세 소재의 Cadence Design System사에 의해서 제공되는 바와 같은 프로그램들은 이미 확립된 설계 규칙 및 사전 저장된 설계 모듈 라이브러리를 사용하여서 반도체 칩 상에서 도전체를 자동 라우팅하고 구성 요소들을 자동 로케이팅할 수 있다. 반도체 회로에 대한 설계가 완료되면, 이로써 생성된 설계 사항이 표준화된 전자적 포맷(가령, Opus, GDSII 등)으로 해서 반도체 제조 시설 또는 제조용 "팹(fab)"에 전달될 수 있다.
전술한 기술 내용은 비한정적이면서 예시적인 방식으로 본 발명의 예시적인 실시예들에 대한 전체적이면서 세부적인 사항들을 제공하고 있다. 그러나, 본 기술 분야의 당업자가 첨부 도면 및 청구 범위와 함께 전술한 내용들을 독해하면 전술한 설명들로부터 다양한 수정 및 변경이 이루어질 수 있음을 잘 알 것이다. 그러나, 본 발명의 교시 사항에 대한 이러한 모든 수정 사항 및 이와 유사한 수정 사항들도 역시 본 발명의 범위 내에 해당된다.
몇몇 실시예에서, 픽셀 블록은 적어도 2 개의 픽셀 열 및 적어도 2 개의 픽셀 행을 포함하며, 상기 선택기는 제 2 참조 지점을 선택하도록 구성될 수 있다.
몇몇 실시예에서, 상기 제 1 참조 지점은 선택된 픽셀 블록에 인접하는 인코딩된 픽셀 블록으로부터 선택될 수 있다.
몇몇 실시예에서, 선택된 인코딩 방법을 표시하는 정보가 비트 스트림 내에 인코딩될 수 있다.
인코더의 다른 실시예는 이미지의 픽셀 블록을 인코딩하는 제 1 인코딩 방법 및 제 2 인코딩 방법을 적어도 포함하는 인코딩 방법 세트로부터 일 인코딩 방법을 선택하도록 구성되며, 상기 픽셀 블록 내의 픽셀들 중에서 적어도 하나의 제어 지점을 선택하고 상기 제어 지점과는 상이한 제 1 참조 지점을 선택하도록 구성되는 선택기와, 상기 제어 지점의 값 및 상기 제 1 참조 지점의 값에 기초하여서 상기 선택된 픽셀 블록 내의 다른 픽셀들의 값을 결정하도록 구성되는 결정기(determinator)를 포함한다.
디코더의 다른 실시예는 디코딩될 이미지의 픽셀 블록의 인코딩 방법에 대한 표시를 검사하도록 구성된 분석기와, 판정된 인코딩 방법이 제 1 인코딩 방법일 때에 제 1 디코딩 방법을 선택하도록 구성된 디코딩 방법 선택기와, 상기 디코딩될 픽셀 블록 내의 픽셀들 중에서 적어도 하나의 제어 지점을 선택하고, 상기 제어 지점과는 상이한 제 1 참조 지점을 선택하며, 상기 제어 지점의 값 및 상기 제 1 참조 지점의 값에 기초하여서 상기 디코딩될 픽셀 블록 내의 다른 픽셀들의 값을 결정하도록 구성되는 재구성기를 포함한다.
장치의 다른 실시예는 이미지의 픽셀 블록을 인코딩하는 제 1 인코딩 방법 및 제 2 인코딩 방법을 적어도 포함하는 인코딩 방법 세트로부터 일 인코딩 방법을 선택하도록 구성되는 선택기를 포함하며, 상기 선택기는 다음 동작 중 적어도 하나를 사용하여서 상기 선택된 픽셀 블록에 대해서 상기 제 1 인코딩 방법을 선택할 지의 여부를 판정하도록 구성된다. 그 동작은 상기 선택된 블록의 적어도 2 개의 상이한 변환 사이즈에 대해서 레이트 왜곡 비용을 평가하는 동작과, 최상의 레이트 왜곡 비용을 산출하는 변환 사이즈를 판정하고 상기 최상의 레이트 비용을 산출하는 변환 사이즈와 임계치를 비교하여서 제 1 조건을 획득하는 동작과, 상기 선택된 픽셀 블록을 인코딩하기 위해 제 2 인코딩 방법을 사용하고 상기 인코딩 결과 및 상기 선택된 이미지 블록에 기초하여서 레지듀얼 신호를 획득하고 상기 레지듀얼 신호를 변환하여서 변환 계수를 형성하고 상기 변환 계수의 크기를 평가하여서 제 2 조건을 획득하는 동작과, 인접하는 픽셀 블록이 에지를 포함하는지의 여부를 검사하여서 제 3 조건을 획득하는 동작과, 상기 선택된 픽셀 블록이 에지를 포함하는지의 여부를 검사하여서 제 4 조건을 획득하는 동작과, 상기 제 1 인코딩 방법의 재구성 값을 상기 제 2 인코딩 방법의 재구성 값과 비교하여서 제 5 조건을 획득하는 동작을 포함한다.
방법의 다른 실시예는 이미지의 픽셀 블록을 인코딩하는 제 1 인코딩 방법 및 제 2 인코딩 방법을 적어도 포함하는 인코딩 방법 세트로부터 일 인코딩 방법을 선택하도록 구성되는 선택 단계를 포함하며, 상기 선택 단계는 다음 동작 중 적어도 하나를 사용하여서 상기 선택된 픽셀 블록에 대해서 상기 제 1 인코딩 방법을 선택할 지의 여부를 판정하도록 구성된다. 그 동작은 상기 선택된 블록의 적어도 2 개의 상이한 변환 사이즈에 대해서 레이트 왜곡 비용을 평가하는 동작과, 최상의 레이트 왜곡 비용을 산출하는 변환 사이즈를 판정하고 상기 최상의 레이트 비용을 산출하는 변환 사이즈와 임계치를 비교하여서 제 1 조건을 획득하는 동작과, 상기 선택된 픽셀 블록을 인코딩하기 위해 제 2 인코딩 방법을 사용하고 상기 인코딩 결과 및 상기 선택된 이미지 블록에 기초하여서 레지듀얼 신호를 획득하고 상기 레지듀얼 신호를 변환하여서 변환 계수를 형성하고 상기 변환 계수의 크기를 평가하여서 제 2 조건을 획득하는 동작과, 인접하는 픽셀 블록이 에지를 포함하는지의 여부를 검사하여서 제 3 조건을 획득하는 동작과, 상기 선택된 픽셀 블록이 에지를 포함하는지의 여부를 검사하여서 제 4 조건을 획득하는 동작과, 상기 제 1 인코딩 방법의 재구성 값을 상기 제 2 인코딩 방법의 재구성 값과 비교하여서 제 5 조건을 획득하는 동작을 포함한다.

Claims (27)

  1. 이미지 인코딩에서의 예측을 위한 장치로서,
    이미지의 픽셀 블록을 인코딩하는 제 1 인코딩 방법 및 제 2 인코딩 방법을 적어도 포함하는 인코딩 방법의 세트로부터 하나의 인코딩 방법을 선택하고,
    상기 픽셀 블록의 픽셀들 중에서 적어도 하나의 제어 지점(control point)을 선택하고,
    예측을 위해 상기 픽셀 블록의 픽셀들 중 제 1 픽셀을 선택하고,
    상기 제어 지점과 상이한 제 1 참조 지점(reference point)을 선택 - 상기 제 1 참조 지점은 선택된 픽셀 블록에 인접한 제 1 블록의 인코딩된 픽셀이고 상기 제 1 픽셀과 동일한 행에 있음 - 하고,
    상기 제어 지점과 상이한 제 2 참조 지점을 선택 - 상기 제 2 참조 지점은 선택된 픽셀 블록에 인접한 제 2 블록의 인코딩된 픽셀이고 상기 제 1 픽셀과 동일한 열에 있음 - 하도록 구성되는 선택기와,
    상기 제어 지점의 값, 상기 제 1 참조 지점의 값 및 상기 제 2 참조 지점의 값에 기초하여 상기 제 1 픽셀의 값을 결정하도록 구성되는 결정기(determinator)를 포함하는
    이미지 인코딩에서의 예측 장치.

  2. 삭제
  3. 삭제
  4. 제 1 항에 있어서,
    상기 결정기는 상기 제 1 픽셀의 값을 결정하는데 필터링된 상기 제 1 참조 지점의 값 및 필터링된 상기 제 2 참조 지점의 값을 이용하도록 더 구성되는
    이미지 인코딩에서의 예측 장치.
  5. 제 1 항에 있어서,
    상기 결정기는 상기 선택된 픽셀 블록의 다른 픽셀들의 값을 결정하는 데 보간(interpolation)을 이용하도록 더 구성되는
    이미지 인코딩에서의 예측 장치.
  6. 삭제
  7. 이미지 인코딩에서의 예측을 위한 방법으로서,
    이미지의 픽셀 블록을 인코딩하는 제 1 인코딩 방법 및 제 2 인코딩 방법을 적어도 포함하는 인코딩 방법의 세트로부터 하나의 인코딩 방법을 선택하는 단계와,
    상기 픽셀 블록의 픽셀들 중에서 적어도 하나의 제어 지점을 선택하는 단계와,
    예측을 위해 상기 픽셀 블록의 픽셀들 중 제 1 픽셀을 선택하는 단계와,
    상기 제어 지점과 상이한 제 1 참조 지점을 선택하는 단계 - 상기 제 1 참조 지점은 선택된 픽셀 블록에 인접한 제 1 블록의 인코딩된 픽셀이고 상기 제 1 픽셀과 동일한 행에 있음 - 와,
    상기 제어 지점과 상이한 제 2 참조 지점을 선택하는 단계 - 상기 제 2 참조 지점은 선택된 픽셀 블록에 인접한 제 2 블록의 인코딩된 픽셀이고 상기 제 1 픽셀과 동일한 열에 있음 - 와,
    상기 제어 지점의 값, 상기 제 1 참조 지점의 값 및 상기 제 2 참조 지점의 값에 기초하여 상기 제 1 픽셀의 값을 결정하는 단계를 포함하는
    이미지 인코딩에서의 예측 방법.
  8. 삭제
  9. 삭제
  10. 제 7 항에 있어서,
    상기 제 1 픽셀의 값을 결정하는데 필터링된 상기 제 1 참조 지점의 값 및 필터링된 상기 제 2 참조 지점의 값이 이용되는
    이미지 인코딩에서의 예측 방법.
  11. 제 7 항에 있어서,
    상기 선택된 픽셀 블록의 다른 픽셀들의 값을 결정하기 위해 보간을 이용하는 단계를 더 포함하는
    이미지 인코딩에서의 예측 방법.
  12. 삭제
  13. 장치에 의해서 사용되기 위해서 코드를 내부에 저장하고 있는 컴퓨터 판독 가능한 저장 매체로서,
    상기 코드는 프로세서에 의한 실행시에 상기 장치로 하여금,
    이미지의 픽셀 블록을 인코딩하는 제 1 인코딩 방법 및 제 2 인코딩 방법을 적어도 포함하는 인코딩 방법의 세트로부터 하나의 인코딩 방법을 선택하는 단계를 포함하는 이미지 인코딩에서의 예측을 위한 방법을 수행하게 하며,
    상기 제 1 인코딩 방법에 있어서, 상기 코드는 상기 프로세서에 의한 실행시에 상기 장치로 하여금,
    상기 픽셀 블록의 픽셀들 중에서 적어도 하나의 제어 지점을 선택하게 하고,
    예측을 위해 상기 픽셀 블록의 픽셀들 중 제 1 픽셀을 선택하게 하고,
    상기 제어 지점과 상이한 제 1 참조 지점(reference point)을 선택 - 상기 제 1 참조 지점은 선택된 픽셀 블록에 인접한 제 1 블록의 인코딩된 픽셀이고 상기 제 1 픽셀과 동일한 행에 있음 - 하게 하고,
    상기 제어 지점과 상이한 제 2 참조 지점을 선택 - 상기 제 2 참조 지점은 선택된 픽셀 블록에 인접한 제 2 블록의 인코딩된 픽셀이고 상기 제 1 픽셀과 동일한 열에 있음 - 하게 하고,
    상기 제어 지점의 값, 상기 제 1 참조 지점의 값 및 상기 제 2 참조 지점의 값에 기초하여 상기 제 1 픽셀의 값을 결정하게 하는
    컴퓨터 판독 가능한 저장 매체.
  14. 이미지 디코딩에서의 예측을 위한 장치로서,
    디코딩될 이미지의 픽셀 블록의 인코딩 방법에 대한 표시(indication)를 검사하도록 구성된 분석기와,
    결정되는 상기 인코딩 방법이 제 1 인코딩 방법일 때에 제 1 디코딩 방법을 선택하도록 구성된 디코딩 방법 선택기와,
    재구성기(reconstructor)를 포함하고,
    상기 재구성기는,
    디코딩될 상기 픽셀 블록의 픽셀들 중 적어도 하나의 제어 지점을 선택하고,
    예측을 위해 상기 픽셀 블록의 픽셀들 중 제 1 픽셀을 선택하고,
    상기 제어 지점과 상이한 제 1 참조 지점을 선택 - 상기 제 1 참조 지점은 선택된 픽셀 블록에 인접한 제 1 블록의 디코딩된 픽셀이고 상기 제 1 픽셀과 동일한 행에 있음 - 하며,
    상기 제어 지점과 상이한 제 2 참조 지점을 선택 - 상기 제 2 참조 지점은 선택된 픽셀 블록에 인접한 제 2 블록의 디코딩된 픽셀이고 상기 제 1 픽셀과 동일한 열에 있음 - 하고,
    상기 제어 지점의 값, 상기 제 1 참조 지점의 값 및 상기 제 2 참조 지점의 값에 기초하여 상기 제 1 픽셀의 값을 결정하도록 구성되는
    이미지 디코딩에서의 예측 장치.
  15. 제 14 항에 있어서,
    상기 장치는 상기 제어 지점의 위치 및 값에 대한 표시를 수신하도록 더 구성되는
    이미지 디코딩에서의 예측 장치.
  16. 삭제
  17. 삭제
  18. 제 14 항에 있어서,
    상기 재구성기는 상기 제 1 픽셀의 값을 결정하는데 필터링된 상기 제 1 참조 지점의 값 및 필터링된 상기 제 2 참조 지점의 값을 이용하도록 더 구성되는
    이미지 디코딩에서의 예측 장치.
  19. 제 14 항에 있어서,
    상기 재구성기는 디코딩될 상기 픽셀 블록의 다른 픽셀들의 값을 결정하는 데 보간을 이용하도록 더 구성되는
    이미지 디코딩에서의 예측 장치.
  20. 이미지 디코딩에서의 예측을 위한 방법으로서,
    디코딩될 이미지의 픽셀 블록의 인코딩 방법에 대한 표시를 검사하는 단계와,
    결정되는 상기 인코딩 방법이 제 1 인코딩 방법일 때에 제 1 디코딩 방법을 선택하는 단계와,
    상기 픽셀 블록의 픽셀들 중 적어도 하나의 제어 지점을 선택하는 단계와,
    예측을 위해 상기 픽셀 블록의 픽셀들 중 제 1 픽셀을 선택하는 단계와,
    상기 제어 지점과 상이한 제 1 참조 지점을 선택하는 단계 - 상기 제 1 참조 지점은 선택된 픽셀 블록에 인접한 제 1 블록의 디코딩된 픽셀이고 상기 제 1 픽셀과 동일한 행에 있음 - 와,
    상기 제어 지점과 상이한 제 2 참조 지점을 선택하는 단계 - 상기 제 2 참조 지점은 선택된 픽셀 블록에 인접한 제 2 블록의 디코딩된 픽셀이고 상기 제 1 픽셀과 동일한 열에 있음 - 와,
    상기 제어 지점의 값, 상기 제 1 참조 지점의 값 및 상기 제 2 참조 지점의 값에 기초하여 상기 제 1 픽셀의 값을 결정하는 단계를 포함하는
    이미지 디코딩에서의 예측 방법.
  21. 제 20 항에 있어서,
    상기 제어 지점의 위치 및 값의 표시를 수신하는 단계를 더 포함하는
    이미지 디코딩에서의 예측 방법.
  22. 삭제
  23. 삭제
  24. 제 20 항에 있어서,
    상기 제 1 픽셀의 값을 결정하는데 필터링된 상기 제 1 참조 지점의 값 및 필터링된 상기 제 2 참조 지점의 값을 이용하는 단계를 더 포함하는
    이미지 디코딩에서의 예측 방법.
  25. 제 20 항에 있어서,
    상기 선택된 픽셀 블록의 다른 픽셀들의 값을 결정하기 위해 보간을 이용하는 단계를 더 포함하는
    이미지 디코딩에서의 예측 방법.
  26. 삭제
  27. 장치에 의해서 사용되기 위해서 코드를 내부에 저장하고 있는 컴퓨터 판독 가능한 저장 매체로서,
    상기 코드는 프로세서에 의한 실행시에 상기 장치로 하여금,
    이미지의 인코딩된 픽셀 블록을 디코딩하기 위해 상기 인코딩된 픽셀 블록의 인코딩 방법을 결정하는 단계와,
    상기 결정된 인코딩 방법이 제 1 인코딩 방법일 때에 제 1 디코딩 방법을 선택하는 단계와,
    상기 인코딩된 픽셀 블록의 픽셀들 중 적어도 하나의 제어 지점을 선택하는 단계와,
    예측을 위해 상기 픽셀 블록의 픽셀들 중 제 1 픽셀을 선택하는 단계와,
    상기 제어 지점과 상이한 제 1 참조 지점을 선택하는 단계 - 상기 제 1 참조 지점은 선택된 픽셀 블록에 인접한 제 1 블록의 디코딩된 픽셀이고 상기 제 1 픽셀과 동일한 행에 있음 - 와,
    상기 제어 지점과 상이한 제 2 참조 지점을 선택하는 단계 - 상기 제 2 참조 지점은 선택된 픽셀 블록에 인접한 제 2 블록의 디코딩된 픽셀이고 상기 제 1 픽셀과 동일한 열에 있음 - 와,
    상기 제어 지점의 값, 상기 제 1 참조 지점의 값 및 상기 제 2 참조 지점의 값에 기초하여 상기 제 1 픽셀의 값을 결정하는 단계를 포함하는 이미지 디코딩에서의 예측을 위한 방법을 수행하게 하는
    컴퓨터 판독 가능한 저장 매체.
KR1020127020718A 2010-01-08 2011-01-07 비디오 코딩을 위한 장치, 방법 및 컴퓨터 프로그램 KR101545382B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US29346810P 2010-01-08 2010-01-08
US61/293,468 2010-01-08

Publications (2)

Publication Number Publication Date
KR20120112773A KR20120112773A (ko) 2012-10-11
KR101545382B1 true KR101545382B1 (ko) 2015-08-18

Family

ID=44305233

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127020718A KR101545382B1 (ko) 2010-01-08 2011-01-07 비디오 코딩을 위한 장치, 방법 및 컴퓨터 프로그램

Country Status (6)

Country Link
US (1) US8724692B2 (ko)
EP (2) EP3595316B1 (ko)
KR (1) KR101545382B1 (ko)
CN (1) CN102783151A (ko)
TW (1) TWI533667B (ko)
WO (1) WO2011083439A1 (ko)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101464423B1 (ko) * 2010-01-08 2014-11-25 노키아 코포레이션 비디오 프로세싱을 위한 장치, 방법 및 컴퓨터 프로그램
PL3457689T3 (pl) * 2010-05-25 2020-12-28 Lg Electronics Inc. Nowy tryb predykcji planarnej
FR2963190B1 (fr) * 2010-07-23 2013-04-26 Canon Kk Procede et dispositif de codage d'une sequence d'images
CN103262542A (zh) * 2010-10-26 2013-08-21 数码士有限公司 自适应帧内预测编码和解码方法
US9066097B2 (en) * 2011-02-01 2015-06-23 Sony Corporation Method to optimize the transforms and/or predictions in a video codec
US9147264B2 (en) * 2011-02-23 2015-09-29 Nvidia Corporation Method and system for quantizing and squeezing base values of associated tiles in an image
CA2772894A1 (en) * 2011-05-17 2012-11-17 Her Majesty The Queen In Right Of Canada, As Represented By The Ministerof Industry, Through The Communications Research Centre Canada Image and video encoding and decoding
US9654785B2 (en) * 2011-06-09 2017-05-16 Qualcomm Incorporated Enhanced intra-prediction mode signaling for video coding using neighboring mode
GB2492329B (en) 2011-06-24 2018-02-28 Skype Video coding
GB2492163B (en) * 2011-06-24 2018-05-02 Skype Video coding
GB2492330B (en) 2011-06-24 2017-10-18 Skype Rate-Distortion Optimization with Encoding Mode Selection
GB2495469B (en) 2011-09-02 2017-12-13 Skype Video coding
GB2495468B (en) 2011-09-02 2017-12-13 Skype Video coding
GB2495467B (en) 2011-09-02 2017-12-13 Skype Video coding
US8615138B2 (en) * 2011-11-03 2013-12-24 Google Inc. Image compression using sub-resolution images
US9384410B2 (en) 2012-05-21 2016-07-05 Nvidia Corporation Method and system for image compression while encoding at least one extra bit
US9819969B2 (en) 2013-11-26 2017-11-14 Nvidia Corporation Generalization of methods and systems for image compression while encoding at least one extra bit
JP6285711B2 (ja) * 2013-12-26 2018-02-28 株式会社メガチップス 画像処理装置
CN105389776B (zh) 2014-09-02 2019-05-03 辉达公司 图像缩放技术
CN104602025B (zh) * 2015-01-09 2018-11-20 华为技术有限公司 处理图像的方法和装置
US10123045B2 (en) * 2015-07-24 2018-11-06 Qualcomm Incorporated Modification to block size for transform mode in display stream compression
TWI569279B (zh) * 2015-10-15 2017-02-01 財團法人工業技術研究院 記憶體保護裝置與方法
CN111526360A (zh) 2016-02-06 2020-08-11 华为技术有限公司 图像编解码方法及装置
CN109417625B (zh) * 2016-05-05 2023-02-28 交互数字麦迪逊专利控股公司 编码或解码视频的装置及方法
JP7147145B2 (ja) * 2017-09-26 2022-10-05 富士通株式会社 動画像符号化装置、動画像符号化方法、及び動画像符号化プログラム
CN107896330B (zh) * 2017-11-29 2019-08-13 北京大学深圳研究生院 一种用于帧内和帧间预测的滤波方法
US11153578B2 (en) * 2018-04-27 2021-10-19 Ati Technologies Ulc Gradient texturing compression codec
US10848696B2 (en) * 2018-06-01 2020-11-24 Samsung Electronics Co., Ltd. Apparatus for encoding image, apparatus for decoding image and image sensor
KR102660951B1 (ko) * 2018-07-11 2024-04-26 인터디지털 브이씨 홀딩스 인코포레이티드 포인트 클라우드의 지오메트리를 인코딩/디코딩하기 위한 방법 및 디바이스
FR3086831A1 (fr) * 2018-10-01 2020-04-03 Orange Codage et decodage d'une video omnidirectionnelle

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060078048A1 (en) * 2004-10-13 2006-04-13 Gisle Bjontegaard Deblocking filter
US20070121731A1 (en) * 2005-11-30 2007-05-31 Akiyuki Tanizawa Image encoding/image decoding method and image encoding/image decoding apparatus
US20090052535A1 (en) * 2007-08-23 2009-02-26 Nokia Corporation System and method for providing improved intra-prediction in video coding
US20090097557A1 (en) * 2007-10-10 2009-04-16 Masashi Takahashi Image Encoding Apparatus, Image Encoding Method, Image Decoding Apparatus, and Image Decoding Method

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN100584024C (zh) * 2003-01-10 2010-01-20 汤姆森特许公司 为编码图像中的错误掩蔽定义内插滤波器
EP1900222A4 (en) * 2005-01-21 2009-10-28 Lg Electronics Inc METHOD AND APPARATUS FOR ENCODING / DECODING VIDEO SIGNALS USING BLOCK PREDICTION INFORMATION
KR100750128B1 (ko) 2005-09-06 2007-08-21 삼성전자주식회사 영상의 인트라 예측 부호화, 복호화 방법 및 장치
AU2006346583B2 (en) * 2006-07-28 2011-04-28 Kabushiki Kaisha Toshiba Image encoding and decoding method and apparatus
KR20100015456A (ko) 2007-04-09 2010-02-12 엘지전자 주식회사 비디오 신호 처리 방법 및 장치
KR102231772B1 (ko) 2007-10-16 2021-03-23 엘지전자 주식회사 비디오 신호 처리 방법 및 장치

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060078048A1 (en) * 2004-10-13 2006-04-13 Gisle Bjontegaard Deblocking filter
US20070121731A1 (en) * 2005-11-30 2007-05-31 Akiyuki Tanizawa Image encoding/image decoding method and image encoding/image decoding apparatus
US20090052535A1 (en) * 2007-08-23 2009-02-26 Nokia Corporation System and method for providing improved intra-prediction in video coding
US20090097557A1 (en) * 2007-10-10 2009-04-16 Masashi Takahashi Image Encoding Apparatus, Image Encoding Method, Image Decoding Apparatus, and Image Decoding Method

Also Published As

Publication number Publication date
EP3595316B1 (en) 2022-03-30
US8724692B2 (en) 2014-05-13
EP3595316A1 (en) 2020-01-15
TWI533667B (zh) 2016-05-11
US20120121013A1 (en) 2012-05-17
EP2522144B1 (en) 2019-05-01
EP2522144A1 (en) 2012-11-14
WO2011083439A1 (en) 2011-07-14
EP2522144A4 (en) 2014-03-19
CN102783151A (zh) 2012-11-14
TW201201589A (en) 2012-01-01
KR20120112773A (ko) 2012-10-11

Similar Documents

Publication Publication Date Title
KR101545382B1 (ko) 비디오 코딩을 위한 장치, 방법 및 컴퓨터 프로그램
US11368700B2 (en) Apparatus, a method and a computer program for video coding
US20230179792A1 (en) Method for coding and an apparatus
KR101464423B1 (ko) 비디오 프로세싱을 위한 장치, 방법 및 컴퓨터 프로그램
KR20130099242A (ko) 비디오 코딩의 움직임 예측
US9280835B2 (en) Method for coding and an apparatus based on a DC prediction value
US20120243606A1 (en) Methods, apparatuses and computer programs for video coding
US9432699B2 (en) Methods, apparatuses and computer programs for video coding

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20180718

Year of fee payment: 4