KR20210062048A - 적어도 하나의 이미지를 표현하는 데이터 스트림을 인코딩 및 디코딩하기 위한 방법들 및 디바이스들 - Google Patents
적어도 하나의 이미지를 표현하는 데이터 스트림을 인코딩 및 디코딩하기 위한 방법들 및 디바이스들 Download PDFInfo
- Publication number
- KR20210062048A KR20210062048A KR1020217011404A KR20217011404A KR20210062048A KR 20210062048 A KR20210062048 A KR 20210062048A KR 1020217011404 A KR1020217011404 A KR 1020217011404A KR 20217011404 A KR20217011404 A KR 20217011404A KR 20210062048 A KR20210062048 A KR 20210062048A
- Authority
- KR
- South Korea
- Prior art keywords
- current block
- coding mode
- pixel
- block
- decoded
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 88
- 238000003672 processing method Methods 0.000 claims abstract description 27
- 238000001914 filtration Methods 0.000 claims description 34
- 238000004590 computer program Methods 0.000 claims description 15
- 239000004289 sodium hydrogen sulphite Substances 0.000 claims description 4
- 235000010267 sodium hydrogen sulphite Nutrition 0.000 claims description 4
- 239000004296 sodium metabisulphite Substances 0.000 claims description 3
- 235000010262 sodium metabisulphite Nutrition 0.000 claims description 3
- 238000012937 correction Methods 0.000 claims description 2
- 238000013139 quantization Methods 0.000 description 36
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 20
- 238000012805 post-processing Methods 0.000 description 19
- 238000012545 processing Methods 0.000 description 18
- 230000006870 function Effects 0.000 description 12
- 230000006835 compression Effects 0.000 description 9
- 238000007906 compression Methods 0.000 description 9
- 230000009466 transformation Effects 0.000 description 7
- 230000005540 biological transmission Effects 0.000 description 6
- 230000008901 benefit Effects 0.000 description 5
- 230000000694 effects Effects 0.000 description 5
- 238000013459 approach Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000005457 optimization Methods 0.000 description 4
- 230000003044 adaptive effect Effects 0.000 description 3
- 239000004306 orthophenyl phenol Substances 0.000 description 3
- 235000010292 orthophenyl phenol Nutrition 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 239000004299 sodium benzoate Substances 0.000 description 3
- 235000010234 sodium benzoate Nutrition 0.000 description 3
- 239000001797 sucrose acetate isobutyrate Substances 0.000 description 3
- 239000005711 Benzoic acid Substances 0.000 description 2
- 235000010233 benzoic acid Nutrition 0.000 description 2
- 239000004301 calcium benzoate Substances 0.000 description 2
- 235000010237 calcium benzoate Nutrition 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 239000004403 ethyl p-hydroxybenzoate Substances 0.000 description 2
- 235000010228 ethyl p-hydroxybenzoate Nutrition 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000001814 pectin Substances 0.000 description 2
- 235000010987 pectin Nutrition 0.000 description 2
- 239000000256 polyoxyethylene sorbitan monolaurate Substances 0.000 description 2
- 235000010486 polyoxyethylene sorbitan monolaurate Nutrition 0.000 description 2
- 239000001818 polyoxyethylene sorbitan monostearate Substances 0.000 description 2
- 235000010989 polyoxyethylene sorbitan monostearate Nutrition 0.000 description 2
- 239000004300 potassium benzoate Substances 0.000 description 2
- 235000010235 potassium benzoate Nutrition 0.000 description 2
- 239000000661 sodium alginate Substances 0.000 description 2
- 235000010413 sodium alginate Nutrition 0.000 description 2
- 238000003860 storage Methods 0.000 description 2
- 239000004291 sulphur dioxide Substances 0.000 description 2
- 235000010269 sulphur dioxide Nutrition 0.000 description 2
- 239000001226 triphosphate Substances 0.000 description 2
- 235000011178 triphosphate Nutrition 0.000 description 2
- 239000001842 Brominated vegetable oil Substances 0.000 description 1
- 239000001828 Gelatine Substances 0.000 description 1
- 239000001825 Polyoxyethene (8) stearate Substances 0.000 description 1
- 239000004285 Potassium sulphite Substances 0.000 description 1
- 239000001852 Succistearin Substances 0.000 description 1
- 239000001809 ammonium phosphatide Substances 0.000 description 1
- 235000010986 ammonium phosphatide Nutrition 0.000 description 1
- 239000004294 calcium hydrogen sulphite Substances 0.000 description 1
- 235000010260 calcium hydrogen sulphite Nutrition 0.000 description 1
- 239000004295 calcium sulphite Substances 0.000 description 1
- 235000010261 calcium sulphite Nutrition 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 239000001806 glycerol esters of wood rosin Substances 0.000 description 1
- 235000010985 glycerol esters of wood rosin Nutrition 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000002620 method output Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000001194 polyoxyethylene (40) stearate Substances 0.000 description 1
- 235000011185 polyoxyethylene (40) stearate Nutrition 0.000 description 1
- 239000000244 polyoxyethylene sorbitan monooleate Substances 0.000 description 1
- 235000010482 polyoxyethylene sorbitan monooleate Nutrition 0.000 description 1
- 239000000249 polyoxyethylene sorbitan monopalmitate Substances 0.000 description 1
- 235000010483 polyoxyethylene sorbitan monopalmitate Nutrition 0.000 description 1
- 239000001816 polyoxyethylene sorbitan tristearate Substances 0.000 description 1
- 235000010988 polyoxyethylene sorbitan tristearate Nutrition 0.000 description 1
- 239000004297 potassium metabisulphite Substances 0.000 description 1
- 235000010263 potassium metabisulphite Nutrition 0.000 description 1
- 239000004405 propyl p-hydroxybenzoate Substances 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004402 sodium ethyl p-hydroxybenzoate Substances 0.000 description 1
- 235000010226 sodium ethyl p-hydroxybenzoate Nutrition 0.000 description 1
- GEHJYWRUCIMESM-UHFFFAOYSA-L sodium sulphite Substances [Na+].[Na+].[O-]S([O-])=O GEHJYWRUCIMESM-UHFFFAOYSA-L 0.000 description 1
- 235000010265 sodium sulphite Nutrition 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/11—Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/103—Selection of coding mode or of prediction mode
- H04N19/105—Selection 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/117—Filters, e.g. for pre-processing or post-processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods 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/157—Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
- H04N19/159—Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/80—Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
- H04N19/86—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/85—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
본 발명은, 블록들로 분할되는 적어도 하나의 이미지를 표현하는 코딩된 데이터 스트림을 디코딩하기 위한 방법에 관한 것이다. 현재 블록으로 지칭되는 상기 이미지의 적어도 하나의 블록에 대해, 현재 블록의 제1 코딩 모드 및 제2 코딩 모드 중 코딩 모드를 표시하는 정보의 항목은 데이터 스트림으로부터 디코딩되고(E42), 현재 블록은 이러한 정보의 항목에 의존하여 디코딩된다. 현재 블록의 코딩 모드가 제2 코딩 모드에 대응할 때, 현재 블록은, 각각의 픽셀에 대해, 획득된 예측으로부터, 현재 블록 또는 이미지의 이전에 디코딩된 블록에 속하는 다른 이전에 디코딩된 픽셀로부터, 그리고 상기 픽셀과 연관된 디코딩된 잔차로부터 재구성된다. 적어도 하나의 프로세싱 방법은, 현재 블록의 코딩 모드 및/또는 이웃 블록의 코딩 모드에 의존하여, 현재 블록의 적어도 하나의 픽셀에 대해 재구성된 현재 블록에 적용된다.
Description
1. 발명의 기술분야
본 발명의 분야는 특히 비디오 스트림들에서 이미지들 또는 이미지들의 시퀀스들을 인코딩 및 디코딩하는 것이다.
더 구체적으로, 본 발명은 이미지들의 블록 표현을 사용하여 이미지들 또는 이미지들의 시퀀스들의 압축에 관한 것이다.
본 발명은 특히, 현재 또는 장래의 인코더들(JPEG, MPEG, H.264, HEVC 등 및 이들의 수정들)에서 구현되는 이미지 또는 비디오 코딩, 및 대응하는 디코딩에 적용될 수 있다.
2. 종래 기술
디지털 이미지들 및 이미지들의 시퀀스들은 메모리 관점에서 많은 공간을 차지하고, 이는, 이러한 이미지들을 송신할 때, 이러한 송신에 사용되는 네트워크 상에서 혼잡 문제들을 회피하기 위해 이미지들을 압축하도록 요구한다.
비디오 데이터를 압축하기 위한 많은 기술들이 이미 공지되어 있다. 이들 중, HEVC 압축 표준("High Efficiency Video Coding, Coding Tools and Specification", Matthias Wien, Signals and Communication Technology, 2015)은 동일한 이미지(인트라 예측) 또는 이전 또는 후속 이미지(인터 예측)에 속하는 다른 픽셀들과 관련하여 현재 이미지의 픽셀들의 예측을 구현하는 것을 제안한다.
더 구체적으로, 인트라 예측은 이미지 내의 공간 리던던시들을 사용한다. 이를 수행하기 위해, 이미지들은 픽셀들을 블록들로 분할된다. 그런 다음, 픽셀들의 블록들은 이미지 내의 블록들의 스캐닝 순서에 따라 현재 이미지에서 이전에 코딩/디코딩된 블록들에 따른 이미 재구성된 정보를 사용하여 예측된다.
또한, 표준 방식에서, 현재 블록의 코딩은 예측자 블록으로 지칭되는 현재 블록, 및 현재 블록과 예측자 블록 사이의 차이에 대응하는 예측 잔차 또는 "잔차 블록"의 예측을 사용하여 수행된다. 그런 다음, 결과적 잔차 블록은, 예컨대, DCT(discrete cosine transform) 타입 변환을 사용하여 변환된다. 그런 다음, 변환된 잔차 블록의 계수들은 양자화되고, 엔트로피 코딩에 의해 코딩되고 디코더에 송신되며, 디코더는 이러한 잔차 블록을 예측자 블록에 추가함으로써 현재 블록을 재구성할 수 있다.
디코딩은 이미지별로, 그리고 각각의 이미지에 대해 블록별로 수행된다. 각각의 블록에 대해, 스트림의 대응하는 엘리먼트들이 판독된다. 잔차 블록의 계수들의 역양자화 및 역변환이 수행된다. 그런 다음, 예측자 블록을 획득하기 위해 블록 예측이 계산되고, 현재 블록은 예측(즉, 예측자 블록)을 디코딩된 잔차 블록에 추가함으로써 재구성된다.
US9253508에서, 인트라 모드에서 블록들을 코딩하기 위한 DPCM(Differential Pulse Code Modulation) 코딩 기술이 HEVC 인코더에 통합된다. 이러한 기술은 이전에 재구성된 동일한 블록의 픽셀들의 다른 세트에 의해 인트라 블록의 픽셀들의 세트를 예측하는 것으로 구성된다. US9253508에서, 코딩될 인트라 블록의 픽셀들의 세트는 블록의 행, 또는 열, 또는 행 및 열에 대응하고, 픽셀들의 세트를 예측하기 위해 사용되는 인트라 예측은 HEVC 표준에 정의된 방향성 인트라 예측들 중 하나이다.
그러나, 이러한 기술은 최적이 아니다. 실제로, 인트라 블록의 픽셀들의 세트의 재구성은, 손실없는 코딩의 경우 예측 잔차의 추가에 대응하여 상당히 낮은 압축비를 제공하거나, 또는 예측으로 기능하는 픽셀들의 상기 다른 세트의 역변환 및/또는 역양자화 이후 예측 잔차의 추가에 대응한다. 따라서 이러한 기술에서는, 로컬 예측 기능을 사용하여 인트라 블록의 각각의 픽셀이 예측되는 것 및 후속 픽셀이 예측되기 전에 예측된 픽셀이 재구성되는 것을 가능하지 않다. 실제로, 이러한 기술은 픽셀들의 다른 세트를 예측하기 위해 픽셀들의 세트(예컨대, 블록의 행/열)가 재구성되도록 요구한다. 즉, 한 쌍의 블록의 각각의 예측 및 재구성에 있어서, 블록의 몇몇 픽셀들이 예측되고 재구성된다.
또한, US9253508에서, 예컨대, HEVC 표준에서 정의된 바와 같은 종래의 인트라 예측 모드들과 DPCM 예측 모드가 공존하게 하는 방법은 설명되지 않는다.
따라서, 이미지 또는 비디오 데이터의 압축을 개선하기 위한 새로운 코딩 및 디코딩 방법이 필요하다.
본 발명은 최신 기술을 개선한다. 이러한 목적으로, 본 발명은, 블록들로 분할되는 적어도 하나의 이미지를 표현하는 코딩된 데이터 스트림을 디코딩하기 위한 방법에 관한 것이다. 이러한 디코딩 방법은, 현재 블록으로 지칭되는 이미지의 적어도 하나의 블록에 대해:
적어도 제1 코딩 모드 및 제2 코딩 모드 중 현재 블록의 코딩 모드를 표시하는 정보의 항목을 디코딩하는 단계 ― 제2 코딩 모드는, 현재 블록의 각각의 픽셀에 대해:
다른 이전에 디코딩된 픽셀로부터 상기 픽셀의 예측을 획득하는 것 ― 다른 이전에 디코딩된 픽셀은 상기 현재 블록 또는 이미지의 이전에 디코딩된 블록에 속함 ― ;
상기 픽셀과 연관된 예측 잔차를 디코딩하는 것;
상기 픽셀과 연관된 디코딩된 예측 잔차 및 상기 획득된 픽셀의 예측으로부터 상기 픽셀을 재구성하는 것에 의해,
현재 블록이 디코딩되는 코딩 모드임 ― ;
디코딩된 정보의 항목에 의해 표시되는 코딩 모드에 따라 현재 블록을 디코딩하는 단계;
현재 블록의 코딩 모드가 제2 코딩 모드와는 별개의 코딩 모드에 대응할 때, 재구성된 현재 블록에 적어도 하나의 프로세싱 방법을 적용하는 단계;
현재 블록의 코딩 모드가 제2 코딩 모드에 대응할 때, 상기 현재 블록의 적어도 하나의 픽셀에 대해, 재구성된 현재 블록에 대한 상기 적어도 하나의 프로세싱 방법의 적용을 디스에이블링하는 단계를 포함한다.
따라서, 본 발명에 따라, 동일한 블록의 이전에 재구성된 픽셀들로부터의 픽셀 예측을 사용하여 코딩 모드에 따라 디코딩된 블록의 경우에, 재구성된 블록에 대한 프로세싱 동작들의 적용이 수행되지 않는다. 이러한 코딩 모드에 따라, 각각의 픽셀과 연관된 예측 잔차는 변환되지 않는다. 프로세싱 방법들은, 예컨대, 변환(디블로킹 필터)을 사용한 예측 잔차 코딩으로 인한 블록들 사이의 불연속들의 영향들을 감소시킴으로써, 또는 각각의 픽셀의 개별 값(SAO(Sample Adaptive Offset)로 또한 알려짐)을 보정함으로써, 재구성된 픽셀들의 블록들의 품질을 개선하는 것을 목적으로 한다.
본 발명에 따라, 각각의 픽셀과 연관된 예측 잔차가 픽셀 재구성을 위해 즉시 이용가능해야 하고 그래서 예측 잔차가 현재 블록의 후속 픽셀들을 예측하는 데 사용될 수 있기 때문에, 제2 코딩 모드는 예측 잔차 변환을 사용하지 않는다. 따라서, 현재 블록이 제2 코딩 모드에 따라 디코딩될 때, 이러한 현재 블록의 경계들에서 불연속들을 감소시킬 필요가 없다. 유사하게, 현재 블록이 제2 코딩 모드를 사용하여 디코딩될 때, 각각의 픽셀의 값은 각각의 픽셀과 연관된 예측 잔차를 사용하여 개별적으로 코딩된다. 따라서 각각의 픽셀의 값을 보정할 필요가 없다.
재구성된 블록들에 적용된 프로세싱 방법들은 보통 블록 레벨에서 파라미터들의 송신을 요구한다. 따라서 제2 코딩 모드에 따라 코딩된 블록들에 대한 이러한 프로세싱 방법들을 디스에이블링하는 것은 레이트에서의 이득을 가능하게 한다. 게다가, 이러한 프로세싱 방법들이 이러한 블록들에 적용되지 않기 때문에, 디코딩 프로세스는 실질적으로 가속화될 수 있다.
본 발명은 또한, 블록들로 분할되는 적어도 하나의 이미지를 표현하는 데이터 스트림을 인코딩하기 위한 방법에 관한 것이다. 이러한 코딩 방법은, 현재 블록으로 지칭되는 이미지의 적어도 하나의 블록에 대해:
적어도 제1 코딩 모드 및 제2 코딩 모드 중 현재 블록의 코딩 모드를 표시하는 정보의 항목을 코딩하는 단계 ― 제2 코딩 모드는, 현재 블록의 각각의 픽셀에 대해:
다른 이전에 디코딩된 픽셀로부터 상기 픽셀의 예측을 획득하는 것 ― 상기 다른 이전에 디코딩된 픽셀은 상기 현재 블록 또는 이미지의 이전에 디코딩된 블록에 속함 ― ;
상기 픽셀의 예측으로부터 획득된 상기 픽셀과 연관된 예측 잔차를 코딩하는 것;
상기 픽셀의 예측 및 상기 픽셀과 연관된 디코딩된 예측 잔차로부터 상기 픽셀을 재구성하는 것에 의해,
현재 블록이 코딩되는 코딩 모드임 ― ;
코딩된 정보의 항목에 의해 표시되는 코딩 모드에 따라 현재 블록을 코딩하는 단계;
현재 블록의 코딩 모드가 제2 코딩 모드와는 별개의 코딩 모드에 대응할 때, 재구성된 현재 블록에 적어도 하나의 프로세싱 방법을 적용하는 단계;
현재 블록의 코딩 모드가 제2 코딩 모드에 대응할 때, 상기 현재 블록의 적어도 하나의 픽셀에 대해, 재구성된 현재 블록에 대한 상기 적어도 하나의 프로세싱 방법의 적용을 디스에이블링하는 단계를 포함한다.
본 발명의 특정 실시예에 따라, 프로세싱 방법은, 이미지에서 재구성된 현재 블록과 재구성된 이웃 블록의 경계에 위치된, 재구성된 현재 블록의 픽셀들에 적용되는 디블로킹 필터링이다. 본 발명의 이러한 특정 실시예에 따라, 프로세싱 방법은, 블록들 사이의 불연속들의 영향들을 감소시키기 위해, 종래에 블록 경계들에 적용된 "디블로킹" 필터에 대응한다.
본 발명의 특정 실시예에 따라:
현재 블록이 제2 코딩 모드에 따라 디코딩 또는 코딩될 때:
재구성된 현재 블록에 대한 디블로킹 필터링의 적용은 재구성된 현재 블록의 모든 픽셀들에 대해 디스에이블링되고,
현재 블록이 제2 코딩 모드와는 별개의 코딩 모드에 따라 디코딩 또는 코딩될 때:
상기 픽셀이 이미지에서 상기 재구성된 현재 블록과 재구성된 이웃 블록의 경계에 위치되는 경우 및 상기 이웃 블록이 제2 코딩 모드와는 별개의 코딩 모드에 따라 디코딩 또는 코딩되는 경우, 디블로킹 필터링이 재구성된 현재 블록의 픽셀에 적용된다.
본 발명의 이러한 특정 실시예에 따라, 디코딩 필터링은, 제2 코딩 모드와는 별개의 코딩 모드들에 따라 코딩뿐만 아니라 디코딩되는 2개의 블록들의 경계에서의 픽셀들에만 적용된다. 다시 말해서, 제2 코딩 모드와는 별개의 코딩 모드들에 따라 코딩 또는 디코딩된 현재 블록에 대해, 디블로킹 필터링은, 제2 코딩 모드에 따라 코딩 또는 디코딩된 이웃 블록과의 경계 상에 위치된 재구성된 현재 블록의 픽셀들에 대해 디스에이블링된다.
본 발명의 다른 특정 실시예에 따라, 현재 블록이 제2 코딩 모드에 따라 디코딩 또는 코딩될 때:
상기 픽셀이 이미지에서 상기 재구성된 현재 블록과 이웃 블록의 경계에 위치되는 경우 및 상기 이웃 블록이 제2 코딩 모드에 따라 디코딩 또는 코딩되는 경우, 재구성된 현재 블록에 대한 디블로킹 필터링의 적용은 재구성된 현재 블록의 픽셀에 대해 디스에이블링되고, 그리고
상기 픽셀이 이미지에서 상기 재구성된 현재 블록과 재구성된 이웃 블록의 경계에 위치되는 경우 및 상기 이웃 블록이 제2 코딩 모드와는 별개의 코딩 모드에 따라 디코딩 또는 코딩되는 경우, 디블로킹 필터링이 재구성된 현재 블록의 픽셀에 적용된다.
본 발명의 이러한 다른 특정 실시예에 따라, 디코딩 필터링은 2개의 블록들의 경계에 위치된 픽셀들에 적용되고, 그 블록들 중 적어도 하나는 제2 코딩 모드와는 별개의 코딩 모드에 따라 코딩뿐만 아니라 디코딩된다. 그러나, 디코딩 필터링은, 제2 코딩 모드에 따라 코딩뿐만 아니라 디코딩되는 2개의 블록들의 경계에 위치된 픽셀들에 대해 디스에이블링된다.
본 발명의 이러한 특정 실시예는, 제2 코딩 모드와는 별개의 임의의 다른 코딩 모드 또는 제1 코딩 모드에 따라 코딩 또는 디코딩된 블록들이 제2 코딩 모드에 따라 코딩 또는 디코딩된 재구성된 블록의 이웃들일 때조차, 그 블록들에 대한 블록 영향들을 평활화한다.
본 발명의 다른 특정 실시예에 따라, 프로세싱 방법은, 데이터 스트림에서 코딩되거나 데이터 스트림으로부터 디코딩된 정보의 항목으로부터 획득된 값을 상기 픽셀의 재구성된 값에 합함으로써, 재구성된 현재 블록의 적어도 하나의 픽셀을 보정하기 위한 방법이다. 본 발명의 이러한 특정 실시예에 따라, 프로세싱 방법은, HEVC 압축 표준에 통합된 SAO 방법에 대응한다.
본 발명의 특정 실시예에 따라, 현재 블록이 제2 코딩 모드에 따라 디코딩 또는 코딩될 때, 재구성된 현재 블록에 대한 상기 보정 방법의 적용은 재구성된 현재 블록의 모든 픽셀들에 대해 디스에이블링된다.
본 발명은 또한 위에 정의된 특정 실시예들 중 어느 하나에 따라 디코딩 방법을 구현하도록 구성된 디코딩 디바이스에 관한 것이다. 이러한 디코딩 디바이스는, 물론, 본 발명에 따른 디코딩 방법에 관련된 상이한 특징들을 포함할 수 있다. 따라서, 이러한 디코딩 디바이스의 특징들 및 장점들은 디코딩 방법의 특징들 및 장점들과 동일하고, 그들은 추가로 상세되지 않는다.
디코딩 디바이스는 특히 프로세서를 포함하고, 프로세서는, 현재 블록으로 지칭되는 이미지의 적어도 하나의 블록에 대해:
적어도 제1 코딩 모드 및 제2 코딩 모드 중 현재 블록의 코딩 모드를 표시하는 정보의 항목을 디코딩하고 ― 제2 코딩 모드는, 현재 블록의 각각의 픽셀에 대해:
다른 이전에 디코딩된 픽셀로부터 상기 픽셀의 예측을 획득하는 것 ― 상기 다른 이전에 디코딩된 픽셀은 상기 현재 블록 또는 이미지의 이전에 디코딩된 블록에 속함 ― ,
상기 픽셀과 연관된 예측 잔차를 디코딩하는 것,
상기 픽셀과 연관된 디코딩된 예측 잔차 및 상기 획득된 픽셀의 예측으로부터 상기 픽셀을 재구성하는 것에 의해,
현재 블록이 디코딩되는 코딩 모드임 ― ;
디코딩된 정보의 항목에 의해 표시되는 코딩 모드에 따라 현재 블록을 디코딩하고;
현재 블록의 코딩 모드가 제2 코딩 모드와는 별개의 코딩 모드에 대응할 때, 재구성된 현재 블록에 적어도 하나의 프로세싱 방법을 적용하고;
현재 블록의 코딩 모드가 제2 코딩 모드에 대응할 때, 상기 현재 블록의 적어도 하나의 픽셀에 대해, 재구성된 현재 블록에 대한 상기 적어도 하나의 프로세싱 방법의 적용을 디스에이블링하도록 구성된다.
본 발명의 특정 실시예에 따라, 이러한 디코딩 디바이스는 단말에 포함된다.
본 발명은 또한 위에 정의된 특정 실시예들 중 어느 하나에 따라 인코딩 방법을 구현하도록 구성된 인코딩 디바이스에 관한 것이다. 이러한 인코딩 디바이스는, 물론, 본 발명에 따른 코딩 방법에 관련된 상이한 특징들을 포함할 수 있다. 따라서, 이러한 인코딩 디바이스의 특징들 및 장점들은 인코딩 방법의 특징들 및 장점들과 동일하고, 그들은 추가로 상세되지 않는다.
인코딩 디바이스는 특히 프로세서를 포함하고, 프로세서는, 현재 블록으로 지칭되는 이미지의 적어도 하나의 블록에 대해:
적어도 제1 코딩 모드 및 제2 코딩 모드 중 현재 블록의 코딩 모드를 표시하는 정보의 항목을 코딩하고 ― 제2 코딩 모드는, 현재 블록의 각각의 픽셀에 대해:
다른 이전에 디코딩된 픽셀로부터 상기 픽셀의 예측을 획득하는 것, ― 상기 다른 이전에 디코딩된 픽셀은 상기 현재 블록 또는 이미지의 이전에 디코딩된 블록에 속함 ― ,
상기 픽셀의 예측으로부터 획득된 상기 픽셀과 연관된 예측 잔차를 코딩하는 것,
상기 픽셀의 예측 및 상기 픽셀과 연관된 디코딩된 예측 잔차로부터 상기 픽셀을 재구성하는 것에 의해,
현재 블록이 코딩되는 코딩 모드임 ― ;
코딩된 정보의 항목에 의해 표시되는 코딩 모드에 따라 현재 블록을 코딩하고;
현재 블록의 코딩 모드가 제2 코딩 모드와는 별개의 코딩 모드에 대응할 때, 재구성된 현재 블록에 적어도 하나의 프로세싱 방법을 적용하고;
현재 블록의 코딩 모드가 제2 코딩 모드에 대응할 때, 상기 현재 블록의 적어도 하나의 픽셀에 대해, 재구성된 현재 블록에 대한 상기 적어도 하나의 프로세싱 방법의 적용을 디스에이블링하도록 구성된다.
본 발명의 특정 실시예에 따라, 이러한 인코딩 디바이스는 단말 또는 서버에 포함된다.
본 발명에 따른 디코딩 방법, 인코딩 방법 각각은 다양한 방식들로, 특히 유선 형태 또는 소프트웨어 형태로 구현될 수 있다. 본 발명의 특정 실시예에 따라, 디코딩 방법, 인코딩 방법 각각은 컴퓨터 프로그램에 의해 구현된다. 본 발명은 또한, 프로그램이 프로세서에 의해 실행될 때, 이전에 설명된 특정 실시예들 중 임의의 실시예에 따른 디코딩 방법 또는 인코딩 방법을 구현하기 위한 명령들을 포함하는 컴퓨터 프로그램에 관한 것이다. 이러한 프로그램은 임의의 프로그래밍 언어를 사용할 수 있다. 이는 통신 네트워크로부터 다운로드되고 그리고/또는 컴퓨터 판독가능 매체 상에 기록될 수 있다.
이러한 프로그램은 임의의 프로그래밍 언어를 사용할 수 있고, 소스 코드, 객체 코드, 또는 소스 코드와 객체 코드 사이의 중간적 코드의 형태, 예컨대, 부분적으로 컴파일된 형태 또는 임의의 다른 바람직한 형태일 수 있다.
본 발명은 또한 앞서 언급된 바와 같은 컴퓨터 프로그램의 명령들을 포함하는 컴퓨터 판독가능 저장 매체 또는 데이터 매체에 관한 것이다. 앞서 언급된 기록 매체들은 프로그램을 저장할 수 있는 임의의 엔티티 또는 디바이스일 수 있다. 예컨대, 매체는 메모리와 같은 저장 수단을 포함할 수 있다. 한편, 기록 매체들은 라디오에 의해 또는 다른 수단에 의해, 전기 또는 광학 케이블을 통해 반송될 수 있는 전기 또는 광학 신호와 같은 송신 매체에 대응할 수 있다. 본 발명에 따른 프로그램은 특히 인터넷-타입 네트워크 상에 다운로드될 수 있다.
대안적으로, 기록 매체들은 프로그램이 임베딩되는 집적 회로에 대응할 수 있고, 회로는 해당 방법을 실행하도록 또는 실행에 사용되도록 적응된다.
4. 도면들의 목록
본 발명의 다른 특성들 및 이점들은 간단한 예시적인 비제한적 예로서 제공된 특정 실시예의 다음 설명 및 첨부된 도면을 읽을 때 보다 명확하게 나타날 것이다.
도 1은 본 발명의 특정 실시예에 따른 코딩 방법의 단계들을 도시한다.
도 2는 본 발명의 특정 실시예에 따른 인트라 예측 모드를 결정하기 위한 현재 블록의 이웃 블록들의 위치 예를 예시한다.
도 3은 본 발명의 특정 실시예에 따른 현재 블록의 픽셀들을 예측하기 위해 사용되는 기준 픽셀들의 위치 예를 예시한다.
도 4는 본 발명의 특정 실시예에 따른 디코딩 방법의 단계들을 도시한다.
도 5a 및 5b는 본 발명의 특정 실시예들에 따른, 픽셀들이 속하는 블록의 코딩 모드에 따라 픽셀들에 프로세싱-후 동작이 적용되거나 적용되지 않는 재구성된 픽셀들의 블록들을 예시한다.
도 6은 본 발명의 특정 실시예들 중 임의의 것에 따른 코딩 방법을 구현하도록 적응된 코딩 디바이스의 단순화된 구조를 도시한다.
도 7은 본 발명의 특정 실시예들 중 임의의 것에 따른 디코딩 방법을 구현하도록 적응된 디코딩 디바이스의 단순화된 구조를 도시한다.
본 발명의 다른 특성들 및 이점들은 간단한 예시적인 비제한적 예로서 제공된 특정 실시예의 다음 설명 및 첨부된 도면을 읽을 때 보다 명확하게 나타날 것이다.
도 1은 본 발명의 특정 실시예에 따른 코딩 방법의 단계들을 도시한다.
도 2는 본 발명의 특정 실시예에 따른 인트라 예측 모드를 결정하기 위한 현재 블록의 이웃 블록들의 위치 예를 예시한다.
도 3은 본 발명의 특정 실시예에 따른 현재 블록의 픽셀들을 예측하기 위해 사용되는 기준 픽셀들의 위치 예를 예시한다.
도 4는 본 발명의 특정 실시예에 따른 디코딩 방법의 단계들을 도시한다.
도 5a 및 5b는 본 발명의 특정 실시예들에 따른, 픽셀들이 속하는 블록의 코딩 모드에 따라 픽셀들에 프로세싱-후 동작이 적용되거나 적용되지 않는 재구성된 픽셀들의 블록들을 예시한다.
도 6은 본 발명의 특정 실시예들 중 임의의 것에 따른 코딩 방법을 구현하도록 적응된 코딩 디바이스의 단순화된 구조를 도시한다.
도 7은 본 발명의 특정 실시예들 중 임의의 것에 따른 디코딩 방법을 구현하도록 적응된 디코딩 디바이스의 단순화된 구조를 도시한다.
5. 본 발명의 실시예의 설명
5.1 일반적 원리
이미지를 디코딩한 후에 수행되는 프로세싱 동작들(프로세싱-후 동작들로 또한 알려짐)은, 재구성된 이미지들의 품질을 향상시키기 위해 비디오 코딩 표준들에 통합된다. 예컨대, 이러한 프로세싱-후 동작들은 디블로킹 필터링의 적용 또는 SAO(Sample Adaptive Offset) 프로세싱-후 동작으로 구성될 수 있다.
디블로킹 필터링은, 각각의 블록을 디코딩한 후, 각각의 블록 사이에 존재하고 인간의 눈이 매우 민감한 불연속들을 지우는 것을 허용한다. 반면에, SAO 프로세싱 동작은 디코딩된 블록의 각각의 픽셀의 값이 개별적으로 수정되는 것을 허용한다.
이러한 2개의 프로세싱-후 방법들은, 예컨대, HEVC 압축 표준에 통합되고, 압축 및 품질에서 이득들을 제공한다.
그러나, 본 발명에 따라, ILR(In- Loop Residual) 코딩으로 알려진, 이미지의 블록들에 대한 새로운 코딩 모드는 이러한 2개의 프로세싱-후 방법들을 유리하게 생략하는 것을 허용한다.
블록들 사이의 불연속들의 영향들과 관련하여, 이들은 주로 기존의 잔차를 변환 형태로 코딩하는 것으로 인한 것이다. 변환의 기본 벡터들은 블록-단위(block-wise)이므로, 그들은 블록의 경계를 따라 픽셀 값들의 개별적인 제어를 허용하지 않는다. 그러나, ILR 코딩 모드는, 각각의 픽셀의 세기가 다른 픽셀들과 독립적으로 코딩되는 것을 허용한다. 따라서 어떠한 블록 영향도 관찰되지 않고, 필터링이 쓸모가 없다.
유사하게, SAO 프로세싱 동작은 기존의 코딩 후에 특정 픽셀들의 개별 값을 보정하는 것을 목적으로 한다. 그렇지만, 나중에 설명될 ILR 코딩 모드는 각각의 픽셀의 값이 개별적으로 코딩되는 것을 이미 허용한다. 따라서, 이러한 픽셀들에 대해, 어떠한 SAO 프로세싱 동작도 필요하지 않다.
그러나, 인코더가, 비디오 시퀀스의 코딩 비용을 최적화하기 위해 코딩될 각각의 블록에 대해 기존의 코딩 모드와 ILR 코딩 모드 사이에서 선택할 수 있을 필요가 있다.
따라서 본 발명의 일반적인 원리는, 블록이 ILR 코딩 모드에 따라 코딩/디코딩되었는지에 의존하여, 재구성된 블록에 대한 프로세싱-후 방법의 적용을 활성화하거나 비활성화하는 것이다.
기존의 코딩 방법, 즉, ILR 이외의 코딩 모드에 의해 코딩된 블록들에 대해서만 디블로킹 및/또는 SAO 프로세싱 동작들을 가능하게 하는 몇몇의 장점들이 존재한다. 실제로, 이것은, ILR 코딩 모드에 따라 코딩/디코딩된 블록들에 대해 디블로킹 필터 또는 SAO 프로세싱 동작에 관련된 어떠한 신택스 엘리먼트도 송신되지 않기 때문에, 송신될 레이트를 감소시킨다. 이것은 또한, ILR 코딩 모드에 따라 코딩/디코딩된 블록들이 계산들 및 메모리 자원들 측면에서 구현하기에 매우 성가신 디블로킹 및/또는 SAO 프로세싱 단계들을 적용할 필요가 없기 때문에, 디코딩의 속도를 상당히 높인다.
5.2 실시예들
도 1은 본 발명의 특정 실시예에 따른 코딩 방법의 단계들을 도시한다. 예컨대, 이미지들의 시퀀스 I1, I2, ..., INb는 본 발명의 특정 실시예에 따른 코딩된 데이터 스트림 STR의 형태로 코딩된다. 예컨대, 이러한 코딩 방법은 도 6과 관련하여 추후에 설명되는 바와 같은 코딩 디바이스에 의해 구현된다.
이미지들의 시퀀스 I1, I2, ..., INb ― Nb는 코딩될 시퀀스의 이미지들의 수임 ― 는 코딩 방법의 입력으로서 제공된다. 코딩 방법은 입력으로서 제공된 이미지들의 시퀀스를 표현하는 코딩된 데이터 스트림 STR을 출력한다.
공지된 방식으로, 이미지들의 시퀀스 I1, I2, ..., INb의 코딩은 인코더에 공지되고 이전에 확립된 코딩 순서에 따라 이미지별로 수행된다. 예컨대, 이미지들은 시간 순서 I1, I2, ..., INb, 또는 다른 순서, 예컨대, I1, I3, I2, ..., INb로 코딩될 수 있다.
단계 E0에서, 이미지들의 시퀀스 I1, I2, ..., INb의 코딩될 이미지 Ij는 블록들로, 예컨대, 크기 32x32 또는 64x64 픽셀들 또는 그 초과의 블록들로 분할된다. 이러한 블록은, 정사각형 또는 직사각형 서브-블록들, 예컨대, 16x16, 8x8, 4x4, 16x8, 8x16으로 세분화될 수 있다.
단계 E1에서, 이미지 Ij의 코딩될 제1 블록 또는 서브-블록 Xb는 이미지 Ij의 미리 결정된 스캐닝 순서에 따라 선택된다. 예컨대, 이는 이미지의 사전편찬 상의 스캐닝 순서에서 제1 블록일 수 있다.
단계 E2에서, 인코더는 현재 블록 Xb를 코딩하기 위한 코딩 모드를 선택할 것이다.
본원에 설명된 특정 실시예에 따라, 인코더는 제1 코딩 모드 M1 및 제2 코딩 모드 M2로부터 현재 블록 Xb를 코딩하기 위한 코딩 모드를 선택한다. 추가적인 코딩 모드들(본원에 설명되지 않음)이 사용될 수 있다.
본원에 설명된 특정 실시예에 따라, 제1 코딩 모드 M1은 예컨대, HEVC 표준에 따라 정의된 바와 같이 종래의 인트라 예측에 의한 현재 블록의 코딩에 대응하고, 제2 코딩 모드 M2는 ILR(In-Loop Residual) 예측 코딩에 대응한다.
본 발명의 원리는 제1 코딩 모드 M1에 대한 다른 타입들의 코딩 모드들로 확장될 수 있다. 예컨대, 제1 코딩 모드는 예측 잔차의 변환을 사용하는 임의의 타입의 코딩 모드(인터-이미지 예측 코딩(inter-image prediction coding), 템플릿 매칭 코딩(template matching coding)을 사용한 공간 예측 등)에 대응할 수 있다.
단계 E2에서, 인코더는 현재 블록을 코딩하기 위한 최상의 코딩 모드를 결정하기 위해 레이트/왜곡 최적화를 수행할 수 있다. 이러한 레이트/왜곡 최적화 동안, 제1 및 제2 코딩 모드들과 별개인 추가적인 코딩 모드들, 예컨대, 인터 모드 코딩 모드가 테스트될 수 있다. 이러한 레이트/왜곡 최적화 동안, 인코더는 각각의 코딩 모드와 연관된 왜곡 및 레이트를 결정하기 위해 상이한 이용가능한 코딩 모드들에 따라 현재 블록 Xb의 코딩을 시뮬레이트하고, 예컨대, D+λ.R 함수에 따라 최상의 레이트/왜곡 절충을 제공하는 코딩 모드를 선택하고, 여기서 R은 평가된 코딩 모드에 따라 현재 블록을 코딩하도록 요구되는 레이트이고, D는 디코딩된 블록과 원래의 현재 블록 사이에서 측정된 왜곡이고, λ는, 예컨대, 사용자에 의해 입력되거나 인코더에서 정의되는 라그랑지안 승수(Lagrangian multiplier)이다.
단계 E20에서, 현재 블록에 대해 선택된 코딩 모드를 표시하는 정보의 항목은 데이터 스트림 STR에서 코딩된다.
현재 블록 Xb가 제1 코딩 모들 M1에 따라 코딩되면, 방법은 M1에 따라 블록을 코딩하기 위한 단계 E21로 진행한다. 현재 블록 Xb가 제2 코딩 모들 M2에 따라 코딩되면, 방법은 M2에 따라 블록을 코딩하기 위한 단계 E22로 진행한다.
본 발명의 특정 실시예에 따라, 제1 코딩 모드 M1에 따라 블록을 코딩하기 위한 단계 E21이 아래에서 설명된다. 본원에 설명된 특정 모드에 따라, 제1 코딩 모드는 종래의 인트라 예측, 예컨대, HEVC 표준에서 정의된 것에 대응한다.
단계 E210에서, 양자화 단계 δ1이 결정된다. 예컨대, 양자화 단계 δ1은 사용자에 의해 설정되거나, 또는 압축과 품질 사이의 절충을 설정하는 양자화 파라미터를 사용하여 계산되고 사용자에 의해 입력 또는 인코더에 의해 정의될 수 있다. 따라서, 이러한 양자화 파라미터는 레이트 왜곡 비용 함수 D+λ.R에서 사용되는 파라미터 λ일 수 있고, 여기서 D는 코딩에 의해 도입되는 왜곡을 표현하고, R은 코딩에 사용되는 레이트를 표현한다. 이러한 함수는 코딩 선택들을 행하기 위해 사용된다. 통상적으로, 이러한 함수를 최소화하는 이미지를 코딩하는 방법이 추구된다.
변형으로서, 양자화 파라미터는 AVC 또는 HEVC 표준들에서 종래에 사용되는 양자화 파라미터에 대응하는 QP일 수 있다. 따라서, HEVC 표준에서, 양자화 단계 δ1은 수식 에 의해 결정되고, 여기서 k = 0..5에 대해 levelScale[ k ] = { 40, 45, 51, 57, 64, 72 }이다.
단계 E211에서, 현재 블록의 예측은 종래의 인트라 예측 모드를 사용하여 결정된다. 이러한 종래의 인트라 예측에 따라, 각각의 예측된 픽셀은 현재 블록 위에 위치된 이웃 블록들(기준 픽셀들)로부터 발생하는 디코딩된 픽셀들로부터 현재 블록의 좌측으로만 계산된다. 픽셀들이 기준 픽셀들로부터 예측되는 방식은, 디코더에 송신되고 인코더 및 디코더에 공지된 미리 결정된 모드 세트들로부터 인코더에 의해 선택되는 예측 모드에 의존한다.
따라서, HEVC에서 35개의 가능한 예측 모드들, 즉, 33개의 상이한 각도 방향들에서 기준 픽셀들을 보간하는 33개의 모드들, 및 2개의 다른 모드들, 즉, 예측된 블록의 각각의 픽셀이 기준 픽셀들의 평균으로부터 생성되는 DC 모드, 및 평면형 및 비방향성 보간을 수행하는 PLANAR 모드가 존재한다. 이러한 "종래의 인트라 예측"은 널리 공지되어 있고, 또한 ITU-T H.264 표준(오직 9개의 상이한 모드들만이 존재함) 뿐만 아니라 인터넷 어드레스(https://jvet.hhi.fraunhofer.de/)에서 입수가능한 실험적 JEM 소프트웨어에서 사용되며, 여기서 67개의 상이한 예측 모드들이 존재한다. 모든 경우들에서, 종래의 인트라 예측은 위에서 언급된 2개의 양상들(이웃 블록들로부터 픽셀들의 예측 및 최적의 예측 모드의 디코더로의 송신)을 고려한다.
따라서, 단계 E211에서, 인코더는 예측 모드들의 미리 결정된 리스트로부터 이용가능한 예측 모드들 중 하나를 선택한다. 선택하기 위한 하나의 방식은 예컨대, 모든 예측 모드들을 평가하는 것, 및 전통적으로 레이트-왜곡 비용과 같은 비용 함수를 최소화하는 예측 모드를 유지하는 것으로 이루어진다.
단계 E212에서, 현재 블록에 대해 선택된 예측 모드는 현재 블록의 이웃 블록들로부터 코딩된다. 도 2는 현재 블록 Xb의 예측 모드를 코딩하기 위해 현재 블록 Xb의 이웃 블록들 Ab 및 Bb의 위치 예를 도시한다.
단계 E212에서, 현재 블록에 대해 선택된 인트라 예측 모드는 이웃 블록들과 연관된 인트라 예측 모드들을 사용하여 코딩된다.
예컨대, 현재 블록의 예측 모드를 코딩하기 위해 HEVC 표준에서 설명된 접근법이 사용될 수 있다. 도 2의 예에서, 이러한 접근법은 현재 블록 위에 위치된 블록 Ab와 연관된 인트라 예측 모드 mA, 및 현재 블록의 바로 좌측에 위치된 블록 Bb와 연관된 인트라 예측 모드 mB를 식별하는 것으로 이루어진다. mA 및 mB의 값에 따라, 3개의 인트라 예측 모드들을 포함하는 MPM(Most Probable Mode)으로 지칭되는 리스트 및 32개의 다른 예측 모드들을 포함하는 넌-MPM으로 지칭되는 리스트가 생성된다.
HEVC 표준에 따라, 현재 블록의 인트라 예측 모드를 코딩하기 위해, 신택스 엘리먼트들이 송신된다:
- 현재 블록에 대해 코딩될 예측 모드가 MPM 리스트 내에 있는지 여부를 표시하는 바이너리 표시자,
- 현재 블록의 예측 모드가 MPM 리스트에 속하면, 현재 블록의 예측 모드에 대응하는 MPM 리스트가 코딩되고,
- 현재 블록의 예측 모드가 MPM 리스트에 속하지 않으면, 현재 블록의 예측 모드에 대응하는 넌-MPM 리스트가 코딩되고,
단계 E213에서, 현재 블록에 대한 예측 잔차 R이 구성된다.
단계 E213에서, 표준 방식으로, 예측된 블록 P가 단계 E211에서 선택된 예측 모드에 따라 구성된다. 그런 다음, 예측 잔차 R은 예측된 블록 P와 원래의 현재 블록 사이의 각각의 픽셀에 대한 차이를 계산함으로써 획득된다.
단계 E214에서, 예측 잔차 R은 RT로 변환된다.
단계 E214에서, 변환 계수들을 포함하는 블록 RT를 생성하기 위해 잔차 블록 R에 주파수 변환이 적용된다. 변환은 예컨대, DCT-타입 변환일 수 있다. 변환들의 미리 결정된 세트 ET로부터 사용될 변환을 선택하고 사용된 변환을 디코더에 통지하는 것이 가능하다.
단계 E215에서, 변환된 잔차 블록 RT는 예컨대, 양자화 단계 δ1의 스칼라 양자화를 사용하여 양자화된다. 이는 양자화된 변환된 예측 잔차 블록 RTQ를 생성한다.
단계 E216에서, 양자화된 블록 RTQ의 계수들이 엔트로피 인코더에 의해 코딩된다. 예컨대, HEVC 표준에서 특정된 엔트로피 코딩이 사용될 수 있다.
공지된 방식으로, 양자화된 블록 RTQ의 계수들을 역양자화하고, 그런 다음, 디코딩된 예측 잔차를 획득하기 위해 역양자화된 계수들에 역변환을 적용함으로써, 현재 블록이 디코딩된다. 그런 다음, 현재 블록을 재구성하고 그 디코딩된 버전을 획득하기 위해, 디코딩된 예측 잔차에 예측이 추가된다. 그런 다음, 현재 블록의 디코딩된 버전이 추후에 사용되어 이미지의 다른 이웃 블록들이 공간적으로 예측되거나 다른 이미지들의 블록들이 인터-이미지 예측에 의해 예측될 수 있다.
본 발명의 특정 실시예에 따라, 제2 코딩 모드 M2에 따라 블록을 코딩하기 위한 단계 E22가 아래에서 설명된다. 본원에 설명된 특정 실시예에 따라, 제2 코딩 모드는 ILR 예측 코딩에 대응한다.
단계 E220에서, 현재 블록에 대한 로컬 예측자 PL이 결정된다. 본원에 설명된 코딩 모드에 따라, 현재 블록의 픽셀들은 현재 블록의 이웃 블록 또는 현재 블록 자체의 이전에 재구성된 픽셀들에 의해 예측된다.
바람직하게는, 예측을 위해, 예측될 픽셀에 가능한 한 가까이 있는 픽셀들이 선택된다. 이는, 이것이 로컬 예측자로 지칭되는 이유이다. 로컬 예측자 PL은 또한 제2 코딩 모드 M2와 연관된 현재 블록의 예측 모드에 동화될 수 있다. 이러한 해석에 따라, 본원에 설명된 특정 실시예에서, 제1 코딩 모드는 인트라 예측 모드들의 제1 그룹, 예컨대, HEVC 표준에 의해 정의된 인트라 예측 모드들을 사용하고, 여기서는 ILR 모드인 제2 코딩 모드는 인트라 예측 모드들의 제1 그룹과 별개인 예측 모드들의 제2 그룹을 사용한다.
로컬 예측자 PL은 고유할 수 있거나 또는 미리 결정된 로컬 예측자들의 세트(예측 모드들의 제2 그룹)로부터 선택될 수 있다.
실시예 변형에 따라, 4개의 로컬 예측자들이 정의된다. 따라서, 현재 블록 Xb를 도시하는 도 3에 예시된 바와 같이, 현재 블록으로부터 예측될 현재 픽셀을 X, X의 바로 좌측에 위치된 픽셀을 A, X의 바로 좌측 위에 위치된 픽셀을 B, X의 바로 위에 위치된 픽셀을 C로 지칭하면, 4개의 로컬 예측자들 PL1, PL2, PL3, PL4는 다음과 같이 정의될 수 있다:
여기서 min(A,B)는 A의 값과 B의 값 사이에서 최소 값을 리턴하는 함수에 대응하고, max(A,B)는 A의 값과 B의 값 사이에서 최대 값을 리턴하는 함수에 대응한다.
단계 E220에서, 현재 블록에 대해 사용된 로컬 예측자 PL이 결정된다. 즉, 현재 블록의 모든 픽셀들에 대해 동일한 로컬 예측자, 즉, 동일한 예측 함수가 사용될 것이다. 이를 위해, 몇몇 실시예 변형들이 가능하다.
예측자들 각각을 이용한 현재 블록의 코딩이 (현재 블록에 대한 코딩 모드를 선택하는 최적화와 유사하게) 시뮬레이트될 수 있고, 비용 함수를 최적화하는(예컨대, D+λ.R 함수를 최소화함, 여기서 R은 블록을 코딩하기 위해 사용되는 레이트이고, D는 원래의 블록에 대한 디코딩된 블록의 왜곡이고, λ는 사용자에 의해 설정된 파라미터임) 로컬 예측자가 선택된다.
또는, 현재 블록에 대한 로컬 예측자를 선택하는 복잡도를 제한하기 위해, 이전에 코딩된 픽셀들의 텍스처의 배향이 분석된다. 예컨대, 현재 블록의 위 또는 좌측에 위치된 블록에서 이전에 코딩된 픽셀들은 소벨-타입(Sobel-type) 연산자를 사용하여 분석된다.
- 배향이 수평인 것으로 결정되면, 로컬 예측자 PL2가 선택되고,
- 배향이 수직인 것으로 결정되면, 로컬 예측자 PL3이 선택되고,
- 배향이 대각인 것으로 결정되면, 로컬 예측자 PL4가 선택되고,
- 배향이 나타나지 않으면, 로컬 예측자 PL1이 선택된다.
현재 블록을 예측하기 위해 어느 로컬 예측자가 사용되었는지를 디코더에 표시하기 위해 데이터 스트림 STR에서 신택스 엘리먼트가 코딩된다.
단계 E221에서, 양자화 단계 δ2가 결정된다. 예컨대, 양자화 단계 δ2는, 현재 블록이 제1 코딩 모드에 따라 코딩되었다면 단계 E210에서 결정될 양자화 단계 δ1과 동일한 양자화 파라미터에 의존한다.
단계 E222에서, 현재 블록에 대한 예측 잔차 R1이 계산된다. 이를 위해, 로컬 예측자가 선택되면, 현재 블록의 각각의 현재 픽셀에 대해,
- 예측된 값 PRED를 획득하기 위해, 현재 블록의 현재 픽셀 X는, 블록 외부에 있고 이미 재구성된 픽셀들(및 그에 따라 그들의 디코딩된 값과 함께 이용가능함), 또는 현재 블록에서 이전에 재구성된 픽셀들, 또는 둘 모두를 사용하여, 선택된 로컬 예측자 PL에 의해 예측된다. 모든 경우들에서, 예측자 PL은 이전에 재구성된 픽셀들을 사용한다. 도3에서, 현재 블록의 제1 행 및/또는 제1 열 상에 위치된 현재 블록의 픽셀들은 (예측된 값 PRED를 구성하기 위한) 기준 픽셀들로서, 블록 외부에 있고 이미 재구성된 픽셀들(도 3의 회색 픽셀들) 및 가능하게는 현재 블록의 재구성된 픽셀들을 사용할 것이다. 현재 블록의 다른 픽셀들의 경우, 예측된 값 PRED를 구성하기 위해 사용되는 기준 픽셀들은 현재 블록 내부에 위치되고;
PRED와 X 사이의 차이 DIFF는, Q(X) = ScalarQuant(DIFF) = ScalarQuant(δ2, X-PRED)에 의해 δ2 양자화 단계 스칼라 양자화기에 의해 값 Q(X)로 양자화되고, 스칼라 양자화기는, 예컨대, 와 같은 가장 가까운 이웃 스칼라 양자화기이다.
Q(X)는 X와 연관된 양자화된 잔차이다. 이는 공간 도메인에서 계산되는데, 즉, 픽셀 X의 예측된 값 PRED와 X의 원래의 값 사이의 차이로부터 직접 계산된다. 픽셀 X에 대한 이러한 양자화된 잔차 Q(X)는 추후에 코딩될 양자화된 예측 잔차 블록 R1Q에 저장되고;
- X의 디코딩된 예측된 값 P1(X)은 양자화된 잔차 Q(X)의 역양자화된 값을 예측된 값 PRED에 추가함으로써 계산된다. 따라서, X의 디코딩된 예측된 값 P1(X)은 P1(X) = PRED + ScalarDequant(δ2, Q(X))에 의해 획득된다. 예컨대, 가장 가까운 스칼라 양자화 역함수는, ScalarDequant(Δ,x)=Δ×x로 주어진다.
따라서, 디코딩된 예측된 값 P1(X)는 현재 블록에서 프로세싱되도록 유지되는 가능한 픽셀들을 예측하는 것을 가능하게 한다. 또한, 현재 블록의 픽셀들의 디코딩된/재구성된 값들을 포함하는 블록 P1은 (종래의 인트라 예측자와는 반대로) 현재 블록의 ILR 예측자이다.
앞서 설명된 서브-단계들은, PL1,..., PL4로부터 선택된 예측을 위해 사용되는 픽셀들이 이용가능한 것을 보장하는 스캐닝 순서로, 현재 블록의 모든 픽셀들에 대해 수행된다.
실시예 변형에 따라, 현재 블록의 스캐닝 순서는 사전편찬 상의 순서, 즉, 좌측부터 우측으로, 그리고 최상부로부터 최하부로의 순서이다.
다른 실시예 변형에 따라, 현재 블록의 몇몇 스캐닝 순서들, 예컨대,
- 사전편찬 상의 순서, 또는
- 최상부로부터 최하부로 제1 열을 스캐닝하고, 그런 다음, 그 바로 우측의 열을 스캐닝하는 식, 또는
- 서로 대각들을 스캐닝하는 것이 사용될 수 있다.
이러한 다른 변형에 따라, 스캐닝 순서들 각각과 연관된 코딩 비용을 시뮬레이트하고, 레이트/왜곡 관점에서 현재 블록에 대한 최상의 스캐닝 순서를 선택하고, 그런 다음, 현재 블록에 대해, 선택된 스캐닝 순서를 표현하는 정보의 항목을 코딩하는 것이 가능하다.
단계 E222의 종료 시에, 양자화된 잔차 블록 R1Q가 결정되었다. 이러한 양자화된 잔차 블록 R1Q는 디코더로의 송신을 위해 코딩되어야 한다. 현재 블록의 예측자 P1이 또한 결정되었다.
단계 E223에서, 양자화된 잔차 블록 R1Q는 디코더로의 송신을 위해 코딩된다. 종래의 예측 잔차의 양자화된 계수들을 코딩하기 위해, HEVC에서 설명된 방법과 같은 임의의 공지된 접근법이 사용될 수 있다.
본원에 설명된 발명의 특정 실시예에 따르면, 양자화된 잔차 블록 R1Q의 값들은, 데이터 스트림 STR로부터 엔트로피 인코더를 사용하여 코딩된다.
본 발명의 특정 실시예에 따라, 현재 블록에 대해 획득된 ILR 예측자로부터 추가적인 예측 잔차 R2를 결정 및 코딩하는 것이 가능하다. 그러나, 추가적인 예측 잔차 R2의 코딩은 선택적이다. 실제로, 그 예측된 버전 P1 및 양자화된 잔차 R1Q에 의해 현재 블록을 간단히 코딩하는 것이 가능하다.
현재 블록에 대해 추가적인 예측 잔차 R2를 코딩하기 위해, 하기 단계들이 구현된다.
단계 E224에서, 예측자 P1과 원래의 현재 블록 Xb 사이의 차이 R2는 추가적인 잔차 R2를 형성하기 위해 계산된다: R2= Xb-P1. 하기 단계들은 이러한 잔차 R2에 대한 종래의 코딩 단계들에 대응한다.
단계 E225에서, 잔차 R2는 계수들 R2T의 블록을 생성하기 위해 주파수 변환을 사용하여 변환되다.
변환은 예컨대, DCT-타입 변환일 수 있다. 변환들의 미리 결정된 세트 ET2로부터 사용될 변환을 선택하고 사용된 변환을 디코더에 통지하는 것이 가능하다. 이러한 경우, 잔차 R2의 특정 통계에 적응하기 위해 세트 ET2는 세트 ET와 상이할 수 있다.
단계 E226에서, 계수들 R2T의 블록은, 예컨대, 양자화 단계 스칼라 양자화 δ를 사용하여 양자화된다. 이는 블록 R2TQ를 생성한다.
양자화 단계 δ는 사용자에 의해 설정될 수 있다. 이는 또한, 압축과 품질 사이의 절충을 설정하는 다른 파라미터 λ를 사용하여 계산되고 사용자 또는 인코더에 의해 입력될 수 있다. 예컨대, 양자화 단계 δ는 양자화 단계 δ1에 대응하거나 그와 유사하게 결정될 수 있다.
그런 다음, 단계 E227에서, 양자화된 블록 R2TQ의 계수들은 코딩된 방식으로 송신된다. 예컨대, HEVC 표준에서 특정된 코딩이 사용될 수 있다.
공지된 방식으로, 양자화된 블록 R2TQ의 계수들을 역양자화하고, 그런 다음, 디코딩된 예측 잔차를 획득하기 위해 역양자화된 계수들에 역변환을 적용함으로써, 현재 블록이 디코딩된다. 그런 다음, 현재 블록을 재구성하고 그 디코딩된 버전 Xrec를 획득하기 위해, 디코딩된 예측 잔차에 예측 P1이 추가된다. 그런 다음, 현재 블록의 디코딩된 버전 Xrec이 추후에 사용되어 이미지의 다른 이웃 블록들이 공간적으로 예측되거나 다른 이미지들의 블록들이 인터-이미지 예측에 의해 예측될 수 있다.
단계 E23에서, 현재 블록이 코딩 방법에 의해 프로세싱될 이미지의 마지막 블록인지 여부가 체크되어, 이전에 정의된 스캐닝 순서를 고려한다. 현재 블록이 프로세싱될 이미지의 마지막 블록이 아니면, 단계 E24에서, 프로세싱될 이미지의 후속 블록이 이미지의 이전에 정의된 스캐닝 순서에 따라 선택되고, 코딩 방법은 단계 E2로 진행하고, 여기서 선택된 블록은 프로세싱될 현재 블록이 된다.
이미지의 모든 블록들이 코딩된 경우, 프로세스는, 단계 E231에서, 재구성된 이미지에 적용될 프로세싱-후 방법들의 적용으로 진행한다. 위에서 논의한 바와 같이, 이러한 프로세싱-후 방법들은 디블로킹 필터링 및/또는 SAO 방법일 수 있다. 프로세싱-후 동작들의 적용이 인코더와 디코더에서 유사하게 이루어지기 때문에, 단계 E231는 나중에 설명될 것이다.
적어도 하나의 프로세싱-후 방법을 적용한 후, 방법은 비디오의 다음 이미지(존재하는 경우)를 코딩하는 것(단계 E25)으로 진행한다.
도 4는 본 발명의 특정 실시예에 따라 디코딩될 이미지들 I1, I2, ..., INb의 시퀀스를 표현하는 코딩된 데이터의 스트림 STR을 디코딩하기 위한 방법의 단계들을 도시한다.
예컨대, 데이터 스트림 STR은 도 1과 관련하여 도시된 코딩 방법을 통해 생성되었다. 데이터 스트림 STR은 도 7과 관련하여 설명된 바와 같이, 디코딩 디바이스 DEC에 대한 입력으로서 제공된다.
디코딩 방법은 이미지별로 스트림을 디코딩하고, 각각의 이미지는 블록별로 디코딩된다.
단계 E40에서, 디코딩될 이미지 Ij는 블록들로 세분화된다. 각각의 블록은, 이후 상세히 설명되는 일련의 단계들로 이루어진 디코딩 동작을 겪을 것이다. 블록들은 동일한 크기 또는 상이한 크기들일 수 있다.
단계 E41에서, 이미지 Ij의 디코딩될 제1 블록 또는 서브-블록 Xb는 이미지 Ij의 미리 결정된 스캐닝 순서에 따라 현재 블록으로서 선택된다. 예컨대, 이는 이미지의 사전편찬 상의 스캐닝 순서에서 제1 블록일 수 있다.
단계 E42에서, 현재 블록에 대한 코딩 모드를 표시하는 정보의 항목은 데이터 스트림 STR로부터 판독된다. 본원에 설명된 특정 실시예에 따라, 이러한 정보의 항목은, 현재 블록이 제1 코딩 모드 M1에 따라 코딩되는지 또는 제2 코딩 모드 M2에 따라 코딩되는지 여부를 표시한다. 본원에 설명된 특정 실시예에 따라, 제1 코딩 모드 M1은 예컨대, HEVC 표준에 따라 정의된 바와 같이 현재 블록의 종래의 인트라 예측 코딩에 대응하고, 제2 코딩 모드 M2는 ILR(In-Loop Residual) 예측 코딩에 대응한다.
다른 특정 실시예들에서, 스트림 STR로부터 판독된 정보의 항목은 또한 현재 블록을 코딩하기 위한 다른 코딩 모드들의 사용을 표시할 수 있다(본원에 설명되지 않음).
현재 블록이 제1 코딩 모드 M1에 따라 코딩되는, 현재 블록을 디코딩하기 위한 단계 E43이 아래에 설명된다.
단계 E430에서, 양자화 단계 δ1이 결정된다. 예컨대, 양자화 단계 δ1은 단계 E401에서 판독된 양자화 파라미터 QP로부터 또는 인코더에서 수행된 것과 유사하게 결정된다. 예컨대, 양자화 단계 δ1은 단계 E401에서 판독된 양자화 파라미터 QP를 사용하여 계산될 수 있다. 예컨대, 양자화 파라미터 QP는 AVC 또는 HEVC 표준들에서 종래에 사용되는 양자화 파라미터일 수 있다. 따라서, HEVC 표준에서, 양자화 단계 δ1은 수식 에 의해 결정되고, 여기서 k = 0..5에 대해 levelScale[ k ] = { 40, 45, 51, 57, 64, 72 }이다.
단계 E431에서, 현재 블록을 코딩하기 위해 선택된 예측 모드는 이웃 블록들로부터 디코딩된다. 이를 위해, 인코더에서 수행된 바와 같이, 현재 블록에 대해 선택된 인트라 예측 모드는 현재 블록의 이웃 블록들과 연관된 인트라 예측 모드들을 사용하여 코딩된다.
MPM 및 넌-MPM 리스트들 둘 모두의 구성은 코딩 동안 수행된 것과 엄격하게 유사하다. HEVC 표준에 따라, 하기 타입의 신택스 엘리먼트들이 디코딩된다:
- 현재 블록에 대해 코딩될 예측 모드가 MPM 리스트 내에 있는지 여부를 표시하는 바이너리 표시자,
- 현재 블록의 예측 모드가 MPM 리스트에 속하면, 코딩된 현재 블록의 예측 모드에 대응하는 MPM 리스트 내의 인덱스,
- 현재 블록의 예측 모드가 MPM 리스트에 속하지 않으면, 코딩된 현재 블록의 예측 모드에 대응하는 넌-MPM 리스트 내의 인덱스.
따라서, 현재 블록의 인트라 예측 모드를 디코딩하기 위해, 바이너리 표시자 및 예측 모드 인덱스가 데이터 스트림 STR로부터의 현재 블록에 대해 판독된다.
단계 E432에서, 디코더는 디코딩된 예측 모드로부터 현재 블록에 대한 예측된 블록 P를 구성한다.
단계 E433에서, 디코더는 예컨대, HEVC 표준에 특정된 디코딩을 사용하여 데이터 스트림 STR로부터 양자화된 블록 RTQ의 계수들을 디코딩한다.
단계 E434에서, 디코딩된 블록 RTQ는, 예컨대, δ1 양자화 단계 스칼라 역양자화를 사용하여 역양자화된다. 이는 역양자화된 계수들 RTQD의 블록을 생성한다.
단계 E435에서, 디코딩된 예측 잔차 블록 RTQDI를 생성하기 위해 역양자화된 계수들 RTQD의 블록에 주파수 역변환이 적용된다. 변환은 예컨대, DCT-타입 역변환일 수 있다. 데이터 스트림 STR로부터 표시자를 디코딩함으로써 변환들의 미리 결정된 세트 ETI로부터 사용될 변환을 선택하는 것이 가능하다.
단계 E436에서, Xrec = P + RTQDI에 의해 디코딩된 현재 블록 Xrec를 생성하기 위해, 단계 E432에서획득된 예측된 블록 P 및 단계 E435에서 획득된 디코딩된 잔차 블록 RTQDI으로부터 현재 블록이 재구성된다.
현재 블록이 제2 코딩 모드 M2에 따라 코딩되는, 현재 블록을 디코딩하기 위한 단계 E44가 아래에 설명된다.
단계 E440에서, 현재 블록의 픽셀들을 예측하기 위해 사용된 로컬 예측자 PL이 결정된다. 오직 하나의 예측자가 이용가능한 경우, 로컬 예측자는, 예컨대, 디코더 레벨에서 디폴트로 설정되고, 이를 결정하기 위해 스트림 STR로부터 어떠한 신택스 엘리먼트도 판독될 필요가 없다.
몇몇 로컬 예측자들, 예컨대, 앞서 설명된 예측자들 PL1 내지 PL4가 이용가능한 경우, 현재 블록을 예측하기 위해 어느 로컬 예측자가 사용되었는지를 식별하기 위해 데이터 스트림 STR로부터 신택스 엘리먼트가 디코딩된다. 따라서 로컬 예측자는 그 디코딩된 신택스 엘리먼트로부터 결정된다.
단계 E441에서, 인코더에서 수행된 것과 유사하게 양자화 단계 δ2가 결정된다.
단계 E442에서, 양자화된 잔차 R1Q는 데이터 스트림 STR로부터 디코딩된다. HEVC에 설명된 방법과 같은 임의의 알려진 접근법은 기존의 예측 잔차의 양자화된 계수들을 디코딩하는 데 사용될 수 있다.
단계 E443에서, 역양자화된 잔차 블록 R1QD를 생성하기 위해, 양자화된 잔차 블록 R1Q는 양자화 단계 δ2를 사용하여 역양자화된다.
단계 E444에서, 역양자화된 잔차 블록 R1QD가 획득될 때, 예측된 블록 P1은 단계 E440에서 결정된 로컬 예측자 PL을 사용하여 구성된다.
단계 E444에서, 현재 블록의 각각의 픽셀은 다음과 같이 예측 및 재구성된다:
- 예측된 값 PRED를 획득하기 위해, 현재 블록의 현재 픽셀 X는, 블록 외부에 있고 이미 재구성된 픽셀들, 또는 현재 블록의 이전에 재구성된 픽셀들 또는 둘 모두를 사용하여, 선택된 예측자 PL에 의해 예측된다. 모든 경우들에서, 예측자 PL은 이전에 디코딩된 픽셀들을 사용한다.
- 현재 픽셀 X의 디코딩된 예측된 값 P1(X)은, P1(X) = PRED + R1QD(X)이 되도록, 예측 잔차 R1QD의 역양자화된 값을 예측된 값 PRED에 추가함으로써 계산된다.
이러한 단계들은, PL1,..., PL4로부터 선택된 예측을 위해 사용되는 픽셀들이 이용가능한 것을 보장하는 스캐닝 순서로, 현재 블록의 모든 픽셀들에 대해 구현된다.
예컨대, 스캐닝 순서는 사전편찬 상의 순서(좌측에서 우측으로, 그런 다음, 최상부로부터 최하부까지의 행들)이다.
본 발명의 특정 실시예에 따라, 현재 블록의 각각의 픽셀의 디코딩된 예측된 값들 P1(X)을 포함하는 예측된 블록 P1은 여기서 디코딩된 현재 블록 Xrec를 형성한다.
본 발명의 다른 특정 실시예에 따라, 여기서, 현재 블록에 대해 추가적인 예측 잔차가 코딩되었다고 고려된다. 따라서, 현재 블록 Xrec의 디코딩된 보전을 재구성하기 위해 이러한 추가적인 예측 잔차를 디코딩하는 것이 필요하다.
예컨대, 이러한 다른 특정 실시예는 인코더 및 디코더 레벨에서 디폴트로 활성화되거나 활성화되지 않을 수 있다. 또는, 추가적인 예측 잔차가 코딩되면 ILR 코딩 모드에 따라 코딩된 각각의 블록에 대해 표시할 블록 레벨 정보를 갖는 표시자가 데이터 스트림에서 코딩될 수 있다. 또는 추가로, 추가적인 예측 잔차가 코딩되면 ILR 코딩 모드에 따라 코딩된 이미지 또는 이미지들의 시퀀스의 모든 블록들에 대해 표시할 이미지 또는 이미지들의 시퀀스 레벨 정보를 갖는 표시자가 데이터 스트림에서 코딩될 수 있다.
단계 E445에서, 현재 블록에 대해 추가적인 예측 잔차가 코딩될 때, 양자화된 예측 잔차 R2TQ의 계수들은 인코더에서 구현된 것들에 적응되는 수단, 예컨대, HEVC 디코더에서 구현되는 수단을 사용하여 데이터 스트림 STR로부터 디코딩된다.
단계 E446에서, 양자화된 계수들 R2TQ의 블록은, 예컨대, 양자화 단계 δ1의 스칼라 역양자화를 사용하여 역양자화된다. 이는 역양자화된 계수들 R2TQD의 블록을 생성한다.
단계 E447에서, 디코딩된 예측 잔차 블록 R2TQDI를 생성하기 위해 블록 R2TQD에 주파수 역변환이 적용된다.
역변환은 예컨대, DCT-타입 역변환일 수 있다.
변환들의 미리 결정된 세트 ET2로부터 사용될 변환을 선택하고 사용될 변환을 디코더에 통지하는 정보의 항목을 디코딩하는 것이 가능하다. 이러한 경우, 잔차 R2의 특정 통계에 적응하기 위해 세트 ET2는 세트 ET와 상이하다.
단계 E448에서, 현재 블록은, 단계 E444에서 획득된 예측된 블록 P1을 디코딩된 예측 잔차 R2TQDI에 추가함으로써 재구성된다.
단계 E45에서, 현재 블록이 디코딩 방법에 의해 프로세싱될 이미지의 마지막 블록인지 여부가 체크되어, 이전에 정의된 스캐닝 순서를 고려한다. 현재 블록이 프로세싱될 이미지의 마지막 블록이 아니면, 단계 E46에서, 프로세싱될 이미지의 후속 블록이 이미지의 이전에 정의된 스캐닝 순서에 따라 선택되고, 디코딩 방법은 단계 E42로 진행하고, 선택된 블록은 프로세싱될 현재 블록이 된다.
이미지의 모든 블록들이 디코딩된 경우, 프로세스는, 단계 E451에서, 재구성된 이미지에 적용될 적어도 하나의 프로세싱-후 방법의 적용으로 진행한다. 위에서 논의한 바와 같이, 이러한 프로세싱-후 방법들은 디블로킹 필터링 및/또는 SAO 방법일 수 있다.
적어도 하나의 프로세싱-후 방법을 적용한 후, 방법은 비디오의 다음 이미지(존재하는 경우)를 디코딩하는 것(단계 E47)으로 진행한다.
본 발명에 따라 인코더 및 디코더에서 적어도 하나의 프로세싱-후 방법을 각각 적용하기 위한 단계들 E231 및 E451이 아래에 설명된다.
프로세싱-후 동작들은 일반적으로, 인코더 및 디코더에서 사용되는 이미지의 블록들의 스캐닝 순서에 따라, "미래" 블록 또는 아직 재구성되지 않은 블록들을 포함하여, 프로세싱될 현재 블록의 이웃 블록들에 포함된 데이터에 대한 액세스를 필요로 한다. 따라서 프로세싱-후 동작들은 일반적으로, 이미지의 모든 재구성된 블록들에 대해 제2 완전한 루프를 만듦으로써 수행된다. 따라서, 인코더와 디코더에서, 이미지의 모든 블록들에 대한 제1 루프는 블록들에 대한 코딩된 정보로부터 블록들의 재구성된 버전을 구성한 다음, 재구성된 블록들의 재구성을 개선하기 위해 프로세싱-후 루프가 재구성된 블록들을 다시 급히 살펴본다(run through). 2개의 향상 예들이 위에 제공되고, 본 발명의 일반적인 원리가 물론 다른 프로세싱-후 방법들에 적용된다.
디블로킹 필터링
이러한 프로세싱 동작 동안, "디블로킹" 필터링이 이미지의 재구성된 블록들에 적용된다. 이러한 필터링은 일반적으로, 재구성된 블록의 경계에 있는 픽셀들에 저역 통과 필터를 적용하는 것으로 구성된다. 이러한 필터는 대체적으로 다음의 논문에 설명된다.
Andrey Norkin et al, "HEVC deblocking filter", IEEE Transactions on Circuits and Systems for Video Technology (Volume: 22, Issue: 12, Dec. 2012), page(s): 1746-1754, 05 October 2012.
본 발명의 특정 실시예에 따라, 디블로킹 필터링은 기존의 코딩 모드, 즉, ILR 이외의 코딩 모드에 의해 이전에 코딩된 2개의 재구성된 블록들의 경계에서만 적용된다.
본 발명의 이러한 특정 실시예는, 예컨대, 다음을 보여주는 도 5a에 예시된다:
코딩 모드 M2(ILR)에 따라 디코딩된 재구성된 픽셀들의 블록(80),
코딩 모드 M1(넌(non)-ILR)에 따라 디코딩되었고, 블록(80)에 이웃한 재구성된 픽셀의 블록(81),
코딩 모드 M1(넌-ILR)에 따라 디코딩되었고, 블록(81)에 이웃한 재구성된 픽셀들의 블록(82).
도 5a에서:
해칭된 픽셀들은, 디블로킹 필터링의 적용이 디스에이블링된 픽셀들에 대응하고,
도트들로 채워진 픽셀들은, 재구성된 블록의 픽셀들의 위치로 인해, 디블로킹 필터링에 영향을 받지 않는 픽셀들이고,
그리고 백색 픽셀들은 디블로킹 필터링이 적용된 픽셀들이다.
따라서, 설명된 본 발명의 특정 실시예에 따라, 현재 블록, 예컨대, 블록(80)이 코딩 모드 M2에 따라 디코딩 또는 코딩될 때, 재구성된 현재 블록에 대한 디블로킹 필터링의 적용은 현재 블록의 모든 픽셀들에 대해 디스에이블링된다. 이것은 도 5a에 도시되고, 여기서 블록(80)의 경계에 있는 모든 픽셀들이 해칭된다.
게다가, 현재 블록, 예컨대, 블록(81)이 기존의 또는 넌-ILR 코딩 모드에 따라 디코딩 또는 코딩될 때, 픽셀이 재구성된 현재 블록과 이웃 블록의 경계에 위치되는 경우 및 이웃 블록이 기존의, 즉, 넌-ILR 코딩 모드에 따라 디코딩 또는 코딩된 경우, 디블로킹 필터링이 재구성된 현재 블록의 픽셀에 적용된다. 이것은 도 5a에 도시되고, 여기서 블록(80)과의 경계에 위치된 블록(81)의 모든 픽셀들이 해칭되고, 블록(82)과의 경계에 위치된 블록(81)의 모든 픽셀들은 백색이다.
본 발명의 특정 실시예에 따라, 디블로킹 필터링은 2개의 블록들의 경계에서만 적용되고, 2개의 블록들 중 적어도 하나는 기존의 코딩 모드(예컨대, 도 2 및 4와 관련하여 설명된 예에서 M1)에 따라 코딩/디코딩된 블록이다.
본 발명의 이러한 특정 실시예는, 예컨대, 다음을 보여주는 도 5b에 예시된다:
코딩 모드 M1(넌-ILR)에 따라 디코딩된 재구성된 픽셀들의 블록(83),
코딩 모드 M2(ILR)에 따라 디코딩되었고, 블록(83)에 이웃한 재구성된 픽셀들의 블록(84),
코딩 모드 M2(ILR)에 따라 디코딩되었고, 블록(84)에 이웃한 재구성된 픽셀들의 블록(85).
도 5b에서:
해칭된 픽셀들은, 디블로킹 필터링의 적용이 디스에이블링된 픽셀들에 대응하고,
도트들로 채워진 픽셀들은, 블록의 픽셀들의 위치로 인해, 디블로킹 필터링에 영향을 받지 않는 픽셀들이고,
백색 픽셀들은 디블로킹 필터링이 적용되는 픽셀들이다.
따라서, 설명된 본 발명의 특정 실시예에 따라, 현재 블록, 예컨대, 블록(84)이 코딩 모드 M2(ILR)에 따라 디코딩되거나 코딩될 때, 픽셀이 재구성된 현재 블록(84)과 이웃 블록의 경계에 위치되는 경우 및 상기 이웃 블록이 코딩 모드 M2(ILR)에 따라 디코딩되거나 코딩된 경우, 디블로킹 필터링의 적용은 재구성된 현재 블록(84)의 픽셀에 대해 디스에이블링된다. 이것은 도 5b에 도시되고, 여기서 블록(85)과의 경계에 위치된 블록(84)의 모든 픽셀들이 해칭된다.
더욱이, 본 발명의 이 특정 실시예에 따라, 픽셀이 재구성된 현재 블록과 이웃 블록의 경계에 위치되는 경우, 및 이웃 블록이 코딩 모드 M2와는 별개의 코딩 모드에 따라 디코딩되거나 코딩된 경우, 디블로킹 필터링이 재구성된 현재 블록(84)의 픽셀에 적용된다. 이것은 도 5b에 도시되고, 여기서 블록(83)과의 경계에 위치된 블록(84)의 모든 픽셀들은 백색이다.
SAO 프로세싱 동작
전형적으로, SAO 프로세싱 동작은 재구성된 블록의 모든 픽셀들에 적용된다. 이러한 SAO 프로세싱 동작은, 상기 픽셀의 환경에 의존하여, 디코더에 명시적으로 송신된 값만큼 블록의 각각의 픽셀의 디코딩된 값을 시프팅하는 것으로 구성된다. SAO 프로세싱 동작은 Chih-Ming Fu, Elena Alshina, Alexander Alshin, Yu-Wen Huang, Ching-Yeh Chen, and Chia-Yang Tsai, Chih-Wei Hsu, Shaw-Min Lei, Jeong-Hoon Park, and Woo-Jin Han, "Sample Adaptive Offset in the HEVC Standard" IEEE TRANSACTIONS ON CIRCUITS AND SYSTEMS FOR VIDEO TECHNOLOGY, VOL. 22, No. 12, DECEMBER 2012, 1755에 설명된다.
본 발명의 특정 실시예에 따라, SAO 프로세싱 동작은 기존의, 즉, 넌-ILR 코딩 모드에 의해 코딩된 재구성된 블록들에만 적용된다. 다시 말해서, 현재 블록이 ILR 코딩 모드(이전에 설명된 예들에서 M2)에 따라 디코딩되거나 코딩될 때, 재구성된 현재 블록의 모든 픽셀들에 대해, 재구성된 현재 블록에 대한 SAO 방법의 적용이 디스에이블링된다.
도 6은 본 발명의 특정 실시예들 중 임의의 것에 따른 코딩 방법을 구현하도록 적응된 코딩 디바이스 COD의 단순화된 구조를 도시한다.
본 발명의 특정 실시예에 따라, 코딩 방법의 단계들은 컴퓨터 프로그램 명령어들에 의해 구현된다. 이를 위해, 코딩 디바이스 COD는 컴퓨터의 표준 아키텍처를 갖고, 특히, 예컨대, 프로세서 PROC를 구비하고 메모리 MEM에 저장된 컴퓨터 프로그램 PG에 의해 구동되는 프로세싱 유닛 UT, 메모리 MEM을 포함한다. 컴퓨터 프로그램 PG는, 프로그램이 프로세서 PROC에 의해 실행될 때, 앞서 설명된 바와 같이 코딩 방법의 단계들을 구현하기 위한 명령들을 포함한다.
초기화 시에, 컴퓨터 프로그램 PG의 코드 명령들은 예컨대, 프로세서 PROC에 의해 실행되기 전에 RAM 메모리(도시되지 않음)에 로딩된다. 특히, 프로세싱 유닛 UT의 프로세서 PROC는 컴퓨터 프로그램 PG의 명령들에 따라, 앞서 설명된 코딩 방법의 단계들을 구현한다.
도 7은 본 발명의 특정 실시예들 중 임의의 것에 따른 디코딩 방법을 구현하도록 적응된 디코딩 디바이스 DEC의 단순화된 구조를 도시한다.
본 발명의 특정 실시예에 따라, 디코딩 디바이스 DEC는 컴퓨터의 표준 아키텍처를 갖고, 특히, 예컨대, 프로세서 PROC0을 구비하고 메모리 MEM0에 저장된 컴퓨터 프로그램 PG0에 의해 구동되는 프로세싱 유닛 UT0, 메모리 MEM0을 포함한다. 컴퓨터 프로그램 PG0은, 프로그램이 프로세서 PROC0에 의해 실행될 때, 앞서 설명된 바와 같이 디코딩 방법의 단계들을 구현하기 위한 명령들을 포함한다.
초기화 시에, 컴퓨터 프로그램 PG0의 코드 명령들은 예컨대, 프로세서 PROC0에 의해 실행되기 전에 RAM 메모리(도시되지 않음)에 로딩된다. 특히, 프로세싱 유닛 UT0의 프로세서 PROC0은 컴퓨터 프로그램 PG0의 명령들에 따라, 앞서 설명된 디코딩 방법의 단계들을 구현한다.
Claims (11)
- 적어도 하나의 이미지를 표현하는 코딩된 데이터 스트림을 디코딩하기 위한 방법으로서,
상기 이미지는 블록들로 분할되고,
상기 디코딩 방법은, 현재 블록으로 지칭되는 상기 이미지의 적어도 하나의 블록에 대해:
적어도 제1 코딩 모드 및 제2 코딩 모드 중 상기 현재 블록의 코딩 모드를 표시하는 정보의 항목을 디코딩하는 단계(E42) ― 상기 제2 코딩 모드는, 상기 현재 블록의 각각의 픽셀에 대해:
다른 이전에 디코딩된 픽셀로부터 상기 픽셀의 예측을 획득하는 것 ― 상기 다른 이전에 디코딩된 픽셀은 상기 현재 블록 또는 상기 이미지의 이전에 디코딩된 블록에 속함 ― ;
상기 픽셀과 연관된 예측 잔차를 디코딩하는 것;
상기 픽셀과 연관된 상기 디코딩된 예측 잔차 및 상기 획득된 픽셀의 예측으로부터 상기 픽셀을 재구성하는 것에 의해,
상기 현재 블록이 디코딩되는(E44) 코딩 모드임 ― ;
상기 디코딩된 정보의 항목에 의해 표시되는 상기 코딩 모드에 따라 상기 현재 블록을 디코딩하는 단계(E44, E43);
상기 현재 블록의 코딩 모드가 상기 제2 코딩 모드와는 별개의 코딩 모드에 대응할 때, 상기 재구성된 현재 블록에 적어도 하나의 프로세싱 방법을 적용하는 단계;
상기 현재 블록의 코딩 모드가 상기 제2 코딩 모드에 대응할 때, 상기 현재 블록의 적어도 하나의 픽셀에 대해, 상기 재구성된 현재 블록에 대한 상기 적어도 하나의 프로세싱 방법의 적용을 디스에이블링하는 단계를 포함하는,
방법. - 적어도 하나의 이미지를 표현하는 데이터 스트림을 인코딩하기 위한 방법으로서,
상기 이미지는 블록들로 분할되고,
상기 인코딩 방법은, 현재 블록으로 지칭되는 상기 이미지의 적어도 하나의 블록에 대해:
적어도 제1 코딩 모드 및 제2 코딩 모드 중 상기 현재 블록의 코딩 모드를 표시하는 정보의 항목을 코딩하는 단계(E20) ― 상기 제2 코딩 모드는, 상기 현재 블록의 각각의 픽셀에 대해:
다른 이전에 디코딩된 픽셀로부터 상기 픽셀의 예측을 획득하는 것(E222) ― 상기 다른 이전에 디코딩된 픽셀은 상기 현재 블록 또는 상기 이미지의 이전에 디코딩된 블록에 속함 ― ;
상기 픽셀의 예측으로부터 획득된, 상기 픽셀과 연관된 예측 잔차를 코딩하는 것(E223);
상기 픽셀의 예측 및 상기 픽셀과 연관된 상기 디코딩된 예측 잔차로부터 상기 픽셀을 재구성하는 것에 의해,
상기 현재 블록이 코딩되는(E22) 코딩 모드임 ― ;
상기 코딩된 정보의 항목에 의해 표시되는 상기 코딩 모드에 따라 상기 현재 블록을 코딩하는 단계(E21, E22);
상기 현재 블록의 코딩 모드가 상기 제2 코딩 모드와는 별개의 코딩 모드에 대응할 때, 상기 재구성된 현재 블록에 적어도 하나의 프로세싱 방법을 적용하는 단계;
상기 현재 블록의 코딩 모드가 상기 제2 코딩 모드에 대응할 때, 상기 현재 블록의 적어도 하나의 픽셀에 대해, 상기 재구성된 현재 블록에 대한 상기 적어도 하나의 프로세싱 방법의 적용을 디스에이블링하는 단계를 포함하는,
방법. - 제1 항 또는 제2 항에 있어서,
상기 프로세싱 방법은, 상기 이미지에서 상기 재구성된 현재 블록과 재구성된 이웃 블록의 경계에 위치된, 상기 재구성된 현재 블록의 픽셀들에 적용되는 디블로킹 필터링인,
방법. - 제3 항에 있어서,
상기 현재 블록이 상기 제2 코딩 모드에 따라 디코딩 또는 코딩될 때:
상기 재구성된 현재 블록에 대한 상기 디블로킹 필터링의 적용은 상기 재구성된 현재 블록의 모든 픽셀들에 대해 디스에이블링되고,
상기 현재 블록이 상기 제2 코딩 모드와는 별개의 코딩 모드에 따라 디코딩 또는 코딩될 때:
상기 픽셀이 상기 이미지에서 상기 재구성된 현재 블록과 재구성된 이웃 블록의 경계에 위치되는 경우 및 상기 이웃 블록이 상기 제2 코딩 모드와는 별개의 코딩 모드에 따라 디코딩 또는 코딩되는 경우, 상기 디블로킹 필터링이 상기 재구성된 현재 블록의 픽셀에 적용되는,
방법. - 제3 항에 있어서,
상기 현재 블록이 상기 제2 코딩 모드에 따라 디코딩 또는 인코딩될 때:
상기 픽셀이 상기 이미지에서 상기 재구성된 현재 블록과 이웃 블록의 경계에 위치되는 경우 및 상기 이웃 블록이 상기 제2 코딩 모드에 따라 디코딩 또는 코딩되는 경우, 상기 재구성된 현재 블록에 대한 상기 디블로킹 필터링의 적용은 상기 재구성된 현재 블록의 픽셀에 대해 디스에이블링되고, 그리고
상기 픽셀이 상기 이미지에서 상기 재구성된 현재 블록과 재구성된 이웃 블록의 경계에 위치되는 경우 및 상기 이웃 블록이 상기 제2 코딩 모드와는 별개의 코딩 모드에 따라 디코딩 또는 코딩되는 경우, 상기 디블로킹 필터링이 상기 재구성된 현재 블록의 픽셀에 적용되는,
방법. - 제1 항 또는 제2 항에 있어서,
상기 프로세싱 방법은, 상기 데이터 스트림에서 인코딩되거나 상기 데이터 스트림으로부터 디코딩된 정보의 항목으로부터 획득된 값을 상기 픽셀의 재구성된 값에 합함으로써 상기 재구성된 현재 블록의 적어도 하나의 픽셀을 보정하기 위한 방법인,
방법. - 제6 항에 있어서,
상기 현재 블록이 상기 제2 코딩 모드에 따라 디코딩 또는 인코딩될 때, 상기 재구성된 현재 블록에 대한 상기 보정 방법의 적용은 상기 재구성된 현재 블록의 모든 픽셀들에 대해 디스에이블링되는,
방법. - 적어도 하나의 이미지를 표현하는 인코딩된 데이터 스트림을 디코딩하기 위한 디바이스로서,
상기 이미지는 블록들로 분할되고,
상기 디코딩 디바이스는 프로세서(PROC0)를 포함하고,
상기 프로세서는, 현재 블록으로 지칭되는 상기 이미지의 적어도 하나의 블록에 대해:
적어도 제1 코딩 모드 및 제2 코딩 모드 중 상기 현재 블록의 코딩 모드를 표시하는 정보의 항목을 디코딩하고 ― 제2 코딩 모드는, 상기 현재 블록의 각각의 픽셀에 대해:
다른 이전에 디코딩된 픽셀로부터 상기 픽셀의 예측을 획득하는 것 ― 상기 다른 이전에 디코딩된 픽셀은 상기 현재 블록 또는 상기 이미지의 이전에 디코딩된 블록에 속함 ― ;
상기 픽셀과 연관된 예측 잔차를 디코딩하는 것;
상기 픽셀과 연관된 상기 디코딩된 예측 잔차 및 상기 획득된 픽셀의 예측으로부터 상기 픽셀을 재구성하는 것에 의해,
상기 현재 블록이 디코딩되는 코딩 모드임 ― ;
상기 디코딩된 정보의 항목에 의해 표시되는 상기 코딩 모드에 따라 상기 현재 블록을 디코딩하고;
상기 현재 블록의 코딩 모드가 상기 제2 코딩 모드와는 별개의 코딩 모드에 대응할 때, 상기 재구성된 현재 블록에 적어도 하나의 프로세싱 방법을 적용하고;
상기 현재 블록의 코딩 모드가 상기 제2 코딩 모드에 대응할 때, 상기 현재 블록의 적어도 하나의 픽셀에 대해, 상기 재구성된 현재 블록에 대한 상기 적어도 하나의 프로세싱 방법의 적용을 디스에이블링하도록 구성되는,
디바이스. - 적어도 하나의 이미지를 표현하는 데이터 스트림을 인코딩하기 위한 디바이스로서,
상기 이미지는 블록들로 분할되고,
상기 인코딩 디바이스는 프로세서(PROC)를 포함하고,
상기 프로세서는, 현재 블록으로 지칭되는 상기 이미지의 적어도 하나의 블록에 대해:
적어도 제1 코딩 모드 및 제2 코딩 모드 중 상기 현재 블록의 코딩 모드를 표시하는 정보의 항목을 코딩하고 ― 상기 제2 코딩 모드는, 상기 현재 블록의 각각의 픽셀에 대해:
다른 이전에 디코딩된 픽셀로부터 상기 픽셀의 예측을 획득하는 것(E222) ― 상기 다른 이전에 디코딩된 픽셀은 상기 현재 블록 또는 상기 이미지의 이전에 디코딩된 블록에 속함 ― ;
상기 픽셀의 예측으로부터 획득된, 상기 픽셀과 연관된 예측 잔차를 코딩하는 것(E223);
상기 픽셀의 예측 및 상기 픽셀과 연관된 상기 디코딩된 예측 잔차로부터 상기 픽셀을 재구성하는 것에 의해,
상기 현재 블록이 코딩되는 코딩 모드임 ― ;
상기 코딩된 정보의 항목에 의해 표시되는 상기 코딩 모드에 따라 상기 현재 블록을 코딩하고;
상기 현재 블록의 코딩 모드가 상기 제2 코딩 모드와는 별개의 코딩 모드에 대응할 때, 상기 재구성된 현재 블록에 적어도 하나의 프로세싱 방법을 적용하고;
상기 현재 블록의 코딩 모드가 상기 제2 코딩 모드에 대응할 때, 상기 현재 블록의 적어도 하나의 픽셀에 대해, 상기 재구성된 현재 블록에 대한 상기 적어도 하나의 프로세싱 방법의 적용을 디스에이블링하도록 구성되는,
디바이스. - 컴퓨터 프로그램으로서,
상기 프로그램이 프로그램에 의해 실행될 때, 제1 항 또는 제3 항 내지 제7 항 중 어느 한 항에 따른 디코딩 방법 또는 제2 항 내지 제7 항 중 어느 한 항에 따른 인코딩 방법을 구현하기 위한 명령들을 포함하는,
컴퓨터 프로그램. - 제10 항에 따른 컴퓨터 프로그램의 명령들을 포함하는,
컴퓨터 판독가능 데이터 매체.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
FR1858573A FR3086487A1 (fr) | 2018-09-21 | 2018-09-21 | Procedes et dispositifs de codage et de decodage d'un flux de donnees representatif d'au moins une image. |
FR1858573 | 2018-09-21 | ||
PCT/FR2019/052029 WO2020058595A1 (fr) | 2018-09-21 | 2019-09-03 | Procédés et dispositifs de codage et de décodage d'un flux de données représentatif d'au moins une image |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20210062048A true KR20210062048A (ko) | 2021-05-28 |
Family
ID=65494291
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020217011404A KR20210062048A (ko) | 2018-09-21 | 2019-09-03 | 적어도 하나의 이미지를 표현하는 데이터 스트림을 인코딩 및 디코딩하기 위한 방법들 및 디바이스들 |
Country Status (8)
Country | Link |
---|---|
US (2) | US11516465B2 (ko) |
EP (1) | EP3854085A1 (ko) |
JP (2) | JP7487185B2 (ko) |
KR (1) | KR20210062048A (ko) |
CN (2) | CN118175323A (ko) |
BR (1) | BR112021003486A2 (ko) |
FR (1) | FR3086487A1 (ko) |
WO (1) | WO2020058595A1 (ko) |
Family Cites Families (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012134046A2 (ko) * | 2011-04-01 | 2012-10-04 | 주식회사 아이벡스피티홀딩스 | 동영상의 부호화 방법 |
US9338476B2 (en) | 2011-05-12 | 2016-05-10 | Qualcomm Incorporated | Filtering blockiness artifacts for video coding |
US9510020B2 (en) * | 2011-10-20 | 2016-11-29 | Qualcomm Incorporated | Intra pulse code modulation (IPCM) and lossless coding mode deblocking for video coding |
US9503750B2 (en) | 2011-11-04 | 2016-11-22 | Futurewei Technologies, Inc. | Binarization of prediction residuals for lossless video coding |
RU2654129C2 (ru) * | 2013-10-14 | 2018-05-16 | МАЙКРОСОФТ ТЕКНОЛОДЖИ ЛАЙСЕНСИНГ, ЭлЭлСи | Функциональные возможности режима внутреннего предсказания с блочным копированием для кодирования и декодирования видео и изображений |
FR3012714A1 (fr) * | 2013-10-25 | 2015-05-01 | Orange | Procede de codage et de decodage d'images, dispositif de codage et de decodage d'images et programmes d'ordinateur correspondants |
AU2014202921B2 (en) * | 2014-05-29 | 2017-02-02 | Canon Kabushiki Kaisha | Method, apparatus and system for de-blocking a block of video samples |
US9924175B2 (en) * | 2014-06-11 | 2018-03-20 | Qualcomm Incorporated | Determining application of deblocking filtering to palette coded blocks in video coding |
US10924744B2 (en) * | 2017-11-17 | 2021-02-16 | Intel Corporation | Selective coding |
US11470329B2 (en) | 2018-12-26 | 2022-10-11 | Tencent America LLC | Method and apparatus for video coding |
-
2018
- 2018-09-21 FR FR1858573A patent/FR3086487A1/fr not_active Withdrawn
-
2019
- 2019-09-03 US US17/277,945 patent/US11516465B2/en active Active
- 2019-09-03 CN CN202410401679.9A patent/CN118175323A/zh active Pending
- 2019-09-03 CN CN201980061930.9A patent/CN112740690B/zh active Active
- 2019-09-03 JP JP2021515568A patent/JP7487185B2/ja active Active
- 2019-09-03 WO PCT/FR2019/052029 patent/WO2020058595A1/fr active Application Filing
- 2019-09-03 BR BR112021003486-2A patent/BR112021003486A2/pt unknown
- 2019-09-03 KR KR1020217011404A patent/KR20210062048A/ko active Search and Examination
- 2019-09-03 EP EP19783583.8A patent/EP3854085A1/fr active Pending
-
2022
- 2022-10-26 US US17/973,966 patent/US11962761B2/en active Active
-
2024
- 2024-05-07 JP JP2024075259A patent/JP2024092045A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
BR112021003486A2 (pt) | 2021-05-18 |
CN112740690A (zh) | 2021-04-30 |
CN112740690B (zh) | 2024-04-09 |
US20210352272A1 (en) | 2021-11-11 |
JP7487185B2 (ja) | 2024-05-20 |
CN118175323A (zh) | 2024-06-11 |
US11516465B2 (en) | 2022-11-29 |
JP2024092045A (ja) | 2024-07-05 |
EP3854085A1 (fr) | 2021-07-28 |
US11962761B2 (en) | 2024-04-16 |
FR3086487A1 (fr) | 2020-03-27 |
JP2022501910A (ja) | 2022-01-06 |
WO2020058595A1 (fr) | 2020-03-26 |
US20230050410A1 (en) | 2023-02-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101947657B1 (ko) | 인트라 예측 정보 부호화 방법 및 장치 | |
KR101947658B1 (ko) | 영상 복호화 방법 및 장치 | |
US20230199193A1 (en) | Methods and devices for coding and decoding a data stream representing at least one image | |
JP2024056766A (ja) | 少なくとも1つの画像を表すデータストリームをコーディングおよびデコーディングするための方法および装置 | |
JP7487185B2 (ja) | 少なくとも1つの画像を表すデータストリームを符号化および復号するための方法およびデバイス | |
JP7466469B2 (ja) | 少なくとも1つの画像を表すデータストリームをコーディングおよび復号するための方法およびデバイス | |
CN113412618B (zh) | 用于编码和解码表示至少一个图像的数据流的方法和设备 | |
CN112740692B (zh) | 用于编码和解码表示至少一个图像的数据流的方法和设备 | |
CN118555386A (zh) | 对表示图像的数据流进行编码和解码的方法、装置和介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination |