KR102722391B1 - Method and apparatus for image encoding/decoding - Google Patents
Method and apparatus for image encoding/decoding Download PDFInfo
- Publication number
- KR102722391B1 KR102722391B1 KR1020230155363A KR20230155363A KR102722391B1 KR 102722391 B1 KR102722391 B1 KR 102722391B1 KR 1020230155363 A KR1020230155363 A KR 1020230155363A KR 20230155363 A KR20230155363 A KR 20230155363A KR 102722391 B1 KR102722391 B1 KR 102722391B1
- Authority
- KR
- South Korea
- Prior art keywords
- layer
- picture
- prediction
- inter
- reference picture
- Prior art date
- Legal status (The legal status 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 status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 66
- 239000010410 layer Substances 0.000 claims description 485
- 239000011229 interlayer Substances 0.000 claims description 58
- 238000013507 mapping Methods 0.000 abstract description 63
- 239000013598 vector Substances 0.000 description 49
- 239000000523 sample Substances 0.000 description 40
- 230000002123 temporal effect Effects 0.000 description 24
- 239000013074 reference sample Substances 0.000 description 21
- 238000013139 quantization Methods 0.000 description 15
- 238000010586 diagram Methods 0.000 description 10
- 208000037170 Delayed Emergence from Anesthesia Diseases 0.000 description 9
- 230000005540 biological transmission Effects 0.000 description 8
- 238000005070 sampling Methods 0.000 description 8
- 230000009466 transformation Effects 0.000 description 5
- 230000003044 adaptive effect Effects 0.000 description 3
- 230000007774 longterm Effects 0.000 description 3
- 239000011159 matrix material Substances 0.000 description 2
- 238000012545 processing Methods 0.000 description 2
- 239000002356 single layer Substances 0.000 description 2
- 238000012952 Resampling Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 230000006835 compression Effects 0.000 description 1
- 238000007906 compression Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
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/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
-
- 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/132—Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
-
- 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/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
복수의 계층을 지원하는 영상 부호화/복호화 방법 및 장치가 개시된다. 상기 복수의 계층을 지원하는 영상 복호화 방법은 현재 복호화 대상 블록을 포함하는 제2 계층의 픽처가 참조하는 제1 계층의 정보를 복호화하는 단계, 상기 제2 계층의 픽처 크기로 상기 제1 계층의 정보를 매핑(mapping)하는 단계, 상기 매핑된 제1 계층의 정보를 추가하여 상기 제2 계층의 픽처에 대한 참조 픽처 리스트를 구성하는 단계 및 상기 참조 픽처 리스트를 기반으로 상기 제2 계층의 현재 복호화 대상 블록에 대한 예측을 수행하여 상기 현재 복호화 대상 블록의 예측 샘플들을 생성하는 단계를 포함한다. A video encoding/decoding method and device supporting multiple layers are disclosed. The video decoding method supporting multiple layers includes a step of decoding information of a first layer referenced by a picture of a second layer including a current decoding target block, a step of mapping the information of the first layer to a picture size of the second layer, a step of adding the mapped first layer information to configure a reference picture list for a picture of the second layer, and a step of performing prediction on a current decoding target block of the second layer based on the reference picture list to generate prediction samples of the current decoding target block.
Description
본 발명은 영상 부호화 및 복호화에 관한 것으로, 보다 상세하게는 다계층 구조의 영상 부호화 및 복호화 시 하위 계층의 정보를 이용하여 상위 계층의 영상을 예측하고 부호화 및 복호화 하는 방법에 관한 것이다. The present invention relates to image encoding and decoding, and more particularly, to a method for predicting, encoding, and decoding an image of an upper layer using information of a lower layer when encoding and decoding an image of a multi-layer structure.
최근 멀티미디어(multimedia) 환경이 구축되면서, 다양한 단말과 네트워크가 이용되고 있으며, 이에 따른 사용자 요구도 다변화하고 있다. Recently, as the multimedia environment is being built, various terminals and networks are being used, and user demands are also diversifying accordingly.
예컨대, 단말의 성능과 컴퓨팅 능력(computing capability)가 다양해짐에 따라서 지원하는 성능도 기기별로 다양해지고 있다. 또한 정보가 전송되는 네트워크 역시 유무선 네트워크와 같은 외형적인 구조뿐만 아니라, 전송하는 정보의 형태, 정보량과 속도 등 기능별로도 다양해지고 있다. 사용자는 원하는 기능에 따라서 사용할 단말과 네트워크를 선택하며, 또한 기업이 사용자에게 제공하는 단말과 네트워크의 스펙트럼도 다양해지고 있다. For example, as the performance and computing capability of terminals become more diverse, the supported performance also becomes more diverse for each device. In addition, the network through which information is transmitted is also becoming more diverse not only in terms of external structure such as wired and wireless networks, but also in terms of functions such as the form, amount, and speed of the information being transmitted. Users select the terminal and network to use according to the desired function, and the spectrum of terminals and networks that companies provide to users is also becoming more diverse.
이와 관련하여, 최근 HD(High Definition) 해상도를 가지는 방송이 국내뿐만 아니라 세계적으로 확대되어 서비스되면서, 많은 사용자들이 고해상도, 고화질의 영상에 익숙해지고 있다. 이에 따라서 많은 영상 서비스 관련 기관들이 차세대 영상 기기에 대한 개발에 많은 노력을 하고 있다. In this regard, as broadcasting with HD (High Definition) resolution has recently expanded and become available not only domestically but also internationally, many users are becoming accustomed to high-resolution, high-quality images. Accordingly, many video service-related organizations are putting a lot of effort into developing next-generation video devices.
또한 HDTV와 더불어 HDTV의 4배 이상의 해상도를 가지는 UHD(Ultra High Definition)에 대한 관심이 증대되면서 보다 높은 해상도, 고화질의 영상을 압축하여 처리하는 기술에 대한 요구는 더 높아지고 있다. In addition, as interest in UHD (Ultra High Definition), which has a resolution more than four times that of HDTV, increases, the demand for technology that compresses and processes higher resolution, high-definition images is increasing.
영상을 압축하여 처리하기 위해, 시간적으로 이전 및/또는 이후의 픽처로부터 현재 픽처에 포함된 화소값을 예측하는 인터(inter) 예측 기술, 현재 픽처 내의 화소 정보를 이용하여 현재 픽처에 포함된 다른 화소값을 예측하는 인트라(intra) 예측 기술, 출현 빈도가 높은 심볼(symbol)에 짧은 부호를 할당하고 출현 빈도가 낮은 심볼에 긴 부호를 할당하는 엔트로피 인코딩 기술 등이 사용될 수 있다.In order to compress and process an image, an inter prediction technique that predicts pixel values included in a current picture from temporally previous and/or subsequent pictures, an intra prediction technique that predicts other pixel values included in the current picture using pixel information in the current picture, and an entropy encoding technique that assigns short codes to symbols with a high appearance frequency and long codes to symbols with a low appearance frequency can be used.
상술한 바와 같이, 지원하는 기능이 상이한 각 단말과 네트워크 그리고 다변화된 사용자의 요구를 고려할 때, 지원되는 영상의 품질, 크기, 프레임 등도 이에 따라 다변화될 필요가 있다. As described above, considering the different functions supported by each terminal and network, and the diverse needs of users, the quality, size, and frame of the supported video also need to be diversified accordingly.
이와 같이, 이종의 통신망과 다양한 기능 및 종류의 단말로 인해, 영상의 화질, 해상도, 크기, 프레임 율 등을 다양하게 지원하는 스케일러빌리티(scalability)는 비디오 포맷의 중요한 기능이 되고 있다. In this way, scalability, which supports various image quality, resolution, size, frame rate, etc. due to heterogeneous communication networks and various functions and types of terminals, is becoming an important function of video formats.
따라서, 고효율의 비디오 부호화 방법을 기반으로 다양한 환경에서 사용자가 요구하는 서비스를 제공하기 위해 시간, 공간, 화질 등의 측면에서 효율적인 비디오 부호화와 복호화가 가능하도록 스케일러빌리티 기능을 제공하는 것이 필요하다.Therefore, in order to provide services required by users in various environments based on a highly efficient video encoding method, it is necessary to provide a scalability function to enable efficient video encoding and decoding in terms of time, space, and image quality.
본 발명은 스케일러블 비디오 코딩에서 하위 계층의 정보를 이용하여 상위 계층을 부호화/복호화하는 방법 및 장치를 제공한다.The present invention provides a method and device for encoding/decoding an upper layer using information of a lower layer in scalable video coding.
본 발명은 스케일러블 비디오 코딩에서 하위 계층 영상을 매핑하는 방법 및 장치를 제공한다. The present invention provides a method and apparatus for mapping lower layer images in scalable video coding.
본 발명은 스케일러블 비디오 코딩에서 하위 계층 영상을 이용하여 상위 계층 영상의 참조 픽처 리스트를 구성하고 예측을 수행하는 방법 및 장치를 제공한다. The present invention provides a method and device for constructing a reference picture list of an upper layer image and performing prediction using a lower layer image in scalable video coding.
본 발명의 일 실시예에 따르면, 복수의 계층을 지원하는 영상 복호화 방법이 제공된다. 상기 영상 복호화 방법은 현재 복호화 대상 블록을 포함하는 제2 계층의 픽처가 참조하는 제1 계층의 정보를 복호화하는 단계, 상기 제2 계층의 픽처 크기로 상기 제1 계층의 정보를 매핑(mapping)하는 단계, 상기 매핑된 제1 계층의 정보를 추가하여 상기 제2 계층의 픽처에 대한 참조 픽처 리스트를 구성하는 단계 및 상기 참조 픽처 리스트를 기반으로 상기 제2 계층의 현재 복호화 대상 블록에 대한 예측을 수행하여 상기 현재 복호화 대상 블록의 예측 샘플들을 생성하는 단계를 포함한다. According to one embodiment of the present invention, an image decoding method supporting a plurality of layers is provided. The image decoding method includes a step of decoding information of a first layer referenced by a picture of a second layer including a current decoding target block, a step of mapping the information of the first layer to a picture size of the second layer, a step of adding the mapped information of the first layer to configure a reference picture list for the picture of the second layer, and a step of performing prediction on a current decoding target block of the second layer based on the reference picture list to generate prediction samples of the current decoding target block.
상기 제1 계층의 정보는 상기 제1 계층 픽처의 샘플 값 및 움직임 정보 중 적어도 하나를 포함할 수 있다. The information of the first layer may include at least one of a sample value and motion information of the first layer picture.
본 발명의 다른 실시예에 따르면, 복수의 계층을 지원하는 영상 복호화 장치가 제공된다. 상기 영상 복호화 장치는 현재 복호화 대상 블록을 포함하는 제2 계층의 픽처가 참조하는 제1 계층의 정보를 복호화하는 복호화부 및 상기 제2 계층의 픽처 크기로 상기 제1 계층의 정보를 매핑(mapping)하고, 상기 매핑된 제1 계층의 정보를 추가하여 상기 제2 계층의 픽처에 대한 참조 픽처 리스트를 구성하고, 상기 참조 픽처 리스트를 기반으로 상기 제2 계층의 현재 복호화 대상 블록에 대한 예측을 수행하여 상기 현재 복호화 대상 블록의 예측 샘플들을 생성하는 예측부를 포함한다. According to another embodiment of the present invention, a video decoding device supporting a plurality of layers is provided. The video decoding device includes a decoding unit which decodes information of a first layer referenced by a picture of a second layer including a current decoding target block, and a prediction unit which maps the information of the first layer to a picture size of the second layer, adds the mapped information of the first layer to form a reference picture list for the picture of the second layer, and performs prediction on a current decoding target block of the second layer based on the reference picture list to generate prediction samples of the current decoding target block.
상기 제1 계층의 정보는 상기 제1 계층 픽처의 샘플 값 및 움직임 정보 중 적어도 하나를 포함할 수 있다. The information of the first layer may include at least one of a sample value and motion information of the first layer picture.
본 발명의 또 다른 실시예에 따르면, 복수의 계층을 지원하는 영상 부호화 방법이 제공된다. 상기 영상 부호화 방법은 현재 부호화 대상 블록을 포함하는 제2 계층의 픽처가 참조하는 제1 계층의 정보를 복호화하는 단계, 상기 제2 계층의 픽처 크기로 상기 제1 계층의 정보를 매핑(mapping)하는 단계, 상기 매핑된 제1 계층의 정보를 추가하여 상기 제2 계층의 픽처에 대한 참조 픽처 리스트를 구성하는 단계 및 상기 참조 픽처 리스트를 기반으로 상기 제2 계층의 현재 부호화 대상 블록에 대한 예측을 수행하여 상기 현재 부호화 대상 블록의 예측 샘플들을 생성하는 단계를 포함한다. According to another embodiment of the present invention, an image encoding method supporting a plurality of layers is provided. The image encoding method includes a step of decoding information of a first layer referenced by a picture of a second layer including a current encoding target block, a step of mapping the information of the first layer to a picture size of the second layer, a step of adding the mapped information of the first layer to configure a reference picture list for the picture of the second layer, and a step of performing prediction on a current encoding target block of the second layer based on the reference picture list to generate prediction samples of the current encoding target block.
상기 제1 계층의 정보는 상기 제1 계층 픽처의 샘플 값 및 움직임 정보 중 적어도 하나를 포함할 수 있다. The information of the first layer may include at least one of a sample value and motion information of the first layer picture.
본 발명의 또 다른 실시예에 따르면, 복수의 계층을 지원하는 영상 부호화 장치가 제공된다. 상기 영상 부호화 장치는 현재 부호화 대상 블록을 포함하는 제2 계층의 픽처가 참조하는 제1 계층의 정보를 부호화하는 부호화부 및 상기 제2 계층의 픽처 크기로 상기 제1 계층의 정보를 매핑(mapping)하고, 상기 매핑된 제1 계층의 정보를 추가하여 상기 제2 계층의 픽처에 대한 참조 픽처 리스트를 구성하고, 상기 참조 픽처 리스트를 기반으로 상기 제2 계층의 현재 부호화 대상 블록에 대한 예측을 수행하여 상기 현재 부호화 대상 블록의 예측 샘플들을 생성하는 예측부를 포함한다. According to another embodiment of the present invention, an image encoding device supporting a plurality of layers is provided. The image encoding device includes an encoding unit which encodes information of a first layer referenced by a picture of a second layer including a current encoding target block, and a prediction unit which maps the information of the first layer to a picture size of the second layer, adds the mapped information of the first layer to form a reference picture list for the picture of the second layer, and performs prediction on a current encoding target block of the second layer based on the reference picture list to generate prediction samples of the current encoding target block.
상기 제1 계층의 정보는 상기 제1 계층 픽처의 샘플 값 및 움직임 정보 중 적어도 하나를 포함할 수 있다. The information of the first layer may include at least one of a sample value and motion information of the first layer picture.
종래 기술에서는 하위 계층의 움직임 정보를 매핑하는 과정에서, 상위 계층의 시간 움직임 벡터 예측이 수행되지 않는 경우에도, 불필요한 움직임 정보 매핑 과정이 수행되는 문제점이 있다. 또한, 하위 계층의 움직임 정보 매핑을 수행하지 않는 경우, 상위 계층에서 시간 움직임 벡터를 위한 대응 픽처(collocated picture)로 하위 계층의 복호화된 픽처를 지시할 수 있기 때문에 상위 계층의 시간 움직임 벡터 예측을 수행하지 못하는 경우가 발생하여 부호화 효율이 저하되는 문제점이 있다. In the prior art, there is a problem that an unnecessary motion information mapping process is performed even when temporal motion vector prediction of an upper layer is not performed in the process of mapping motion information of a lower layer. In addition, when motion information mapping of a lower layer is not performed, since a decoded picture of a lower layer can be indicated as a corresponding picture (collocated picture) for a temporal motion vector in the upper layer, there is a problem that temporal motion vector prediction of the upper layer cannot be performed, resulting in a decrease in encoding efficiency.
본 발명에 따르면, 상위 계층이 참조하는 하위 계층의 움직임 정보를 상위 계층의 영상 크기로 매핑을 수행한 후 매핑된 하위 계층의 영상 신호를 이용하여 상위 계층을 예측하여 복원함으로써, 부호화/복호화 효율을 향상시킬 수 있다. 또한, 상위 레벨 신택스를 수정함으로써, 불필요한 하위 계층의 움직임 정보에 대한 매핑 과정을 생략할 수 있으며 복잡도를 감소시킬 수 있다. 또한, 잘못된 대응 픽처가 사용되는 것을 방지하여 부호화 효율의 저하를 방지할 수 있다. According to the present invention, by mapping motion information of a lower layer referenced by an upper layer to an image size of the upper layer and then predicting and restoring the upper layer using the image signal of the mapped lower layer, encoding/decoding efficiency can be improved. In addition, by modifying the upper level syntax, the mapping process for unnecessary motion information of the lower layer can be omitted, and complexity can be reduced. In addition, the use of an incorrect corresponding picture can be prevented, thereby preventing a decrease in encoding efficiency.
도 1은 발명이 적용되는 영상 부호화 장치의 일 실시예에 따른 구성을 나타내는 블록도이다.
도 2는 본 발명이 적용되는 영상 복호화 장치의 일 실시예에 따른 구성을 나타내는 블록도이다.
도 3은 본 발명이 적용될 수 있는, 복수 레이어를 이용한 스케일러블 비디오 코딩 구조의 일 실시예를 개략적으로 나타내는 개념도이다.
도 4는 본 발명의 실시예에 따른 스케일러블 비디오 코딩에서 계층간 예측(인터 레이어 예측)을 수행하는 방법을 개략적으로 나타낸 순서도이다.
도 5 및 도 6은 본 발명의 일 실시예에 따른 계층 간 움직임 정보 매핑 방법을 설명하기 위해 도시된 도면이다.FIG. 1 is a block diagram showing the configuration of an image encoding device to which the invention is applied according to one embodiment.
FIG. 2 is a block diagram showing the configuration of an image decoding device according to one embodiment of the present invention.
FIG. 3 is a conceptual diagram schematically illustrating one embodiment of a scalable video coding structure using multiple layers to which the present invention can be applied.
FIG. 4 is a flowchart schematically illustrating a method for performing inter-layer prediction (inter-layer prediction) in scalable video coding according to an embodiment of the present invention.
FIGS. 5 and 6 are diagrams illustrating a method for mapping inter-layer motion information according to one embodiment of the present invention.
이하, 도면을 참조하여 본 발명의 실시 형태에 대하여 구체적으로 설명한다. 본 명세서의 실시예를 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 명세서의 요지를 흐릴 수 있다고 판단되는 경우에는 해당 설명을 생략할 수도 있다.Hereinafter, embodiments of the present invention will be specifically described with reference to the drawings. In describing the embodiments of this specification, if it is determined that a specific description of a related known configuration or function may obscure the gist of this specification, such description may be omitted.
본 명세서에서 어떤 구성 요소가 다른 구성 요소에 “연결되어” 있다거나 “접속되어” 있다고 언급된 때에는, 그 다른 구성 요소에 직접적으로 연결되어 있거나 또는 접속되어 있는 것을 의미할 수도 있고, 중간에 다른 구성 요소가 존재하는 것을 의미할 수도 있다. 아울러, 본 명세서에서 특정 구성을 “포함”한다고 기술하는 내용은 해당 구성 이외의 구성을 배제하는 것이 아니며, 추가적인 구성이 본 발명의 실시 또는 본 발명의 기술적 사상의 범위에 포함될 수 있음을 의미한다.When it is mentioned in this specification that a component is “connected” or “connected” to another component, it may mean that it is directly connected or connected to that other component, or it may mean that there are other components in between. In addition, the description in this specification that a specific configuration “includes” does not exclude configurations other than the configuration concerned, and it means that additional configurations may be included in the scope of the implementation of the present invention or the technical idea of the present invention.
제1, 제2 등의 용어는 다양한 구성들을 설명하는데 사용될 수 있지만, 상기 구성들은 상기 용어에 의해 한정되지 않는다. 상기 용어들은 하나의 구성을 다른 구성으로부터 구별하는 목적으로 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성은 제2 구성으로 명명될 수 있고, 유사하게 제2 구성도 제1 구성으로 명명될 수 있다.The terms first, second, etc. may be used to describe various configurations, but the configurations are not limited by the terms. The terms are used to distinguish one configuration from another. For example, without departing from the scope of the present invention, the first configuration may be referred to as the second configuration, and similarly, the second configuration may also be referred to as the first configuration.
또한 본 발명의 실시예에 나타나는 구성부들은 서로 다른 특징적인 기능을 나타내기 위해 독립적으로 도시되는 것으로, 각 구성부들이 분리된 하드웨어나 하나의 소프트웨어 구성 단위로 이루어짐을 의미하지 않는다. 즉, 각 구성부는 설명의 편의상 각각의 구성부로 나열하여 포함한 것으로 각 구성부 중 적어도 두 개의 구성부가 하나의 구성부를 이루거나, 하나의 구성부가 복수 개의 구성부로 나뉘어져 기능을 수행할 수 있다. 각 구성부의 통합된 실시예 및 분리된 실시예도 본 발명의 본질에서 벗어나지 않는 한 본 발명의 권리 범위에 포함된다.In addition, the components shown in the embodiments of the present invention are independently depicted to indicate different characteristic functions, and do not mean that each component is formed as a separate hardware or software configuration unit. That is, each component is listed and included as a separate component for convenience of explanation, and at least two components among each component may form one component, or one component may be divided into multiple components to perform a function. Integrated embodiments and separate embodiments of each component are also included in the scope of the present invention as long as they do not deviate from the essence of the present invention.
또한, 일부의 구성 요소는 본 발명에서 본질적인 기능을 수행하는 필수적인 구성 요소는 아니고 단지 성능을 향상시키기 위한 선택적 구성 요소일 수 있다. 본 발명은 단지 성능 향상을 위해 사용되는 구성 요소를 제외한 본 발명의 본질을 구현하는데 필수적인 구성부만을 포함하여 구현될 수 있고, 단지 성능 향상을 위해 사용되는 선택적 구성 요소를 제외한 필수 구성 요소만을 포함한 구조도 본 발명의 권리범위에 포함된다.In addition, some components may not be essential components that perform essential functions in the present invention, but may be optional components that are merely used to improve performance. The present invention may be implemented by including only essential components for implementing the essence of the present invention, excluding components that are merely used to improve performance, and a structure that includes only essential components, excluding optional components that are merely used to improve performance, is also included in the scope of the present invention.
도 1은 발명이 적용되는 영상 부호화 장치의 일 실시예에 따른 구성을 나타내는 블록도이다. FIG. 1 is a block diagram showing the configuration of an image encoding device to which the invention is applied according to one embodiment.
멀티 레이어(multi-layer) 구조를 지원하는 스케일러블(scalable) 비디오 부호화 장치는, 단일 레이어 구조의 일반적인 영상 부호화 장치를 확장(extension)하여 구현될 수 있다. 도 1의 블록도는 멀티 레이어 구조에 적용 가능한 스케일러블 비디오 부호화 장치의 기초가 될 수 있는 영상 부호화 장치의 일 실시예를 나타낸다.A scalable video encoding device supporting a multi-layer structure can be implemented by extending a general video encoding device having a single layer structure. The block diagram of Fig. 1 illustrates an embodiment of a video encoding device that can be the basis of a scalable video encoding device applicable to a multi-layer structure.
도 1을 참조하면, 영상 부호화 장치(100)는 인터 예측부(110), 인트라 예측부(120), 스위치(115), 감산기(125), 변환부(130), 양자화부(140), 엔트로피 부호화부(150), 역양자화부(160), 역변환부(170), 가산기(175), 필터부(180) 및 참조 픽처 버퍼(190)를 포함한다.Referring to FIG. 1, an image encoding device (100) includes an inter prediction unit (110), an intra prediction unit (120), a switch (115), a subtractor (125), a transform unit (130), a quantization unit (140), an entropy encoding unit (150), an inverse quantization unit (160), an inverse transform unit (170), an adder (175), a filter unit (180), and a reference picture buffer (190).
영상 부호화 장치(100)는 입력 영상에 대해 인트라(intra) 모드 또는 인터(inter) 모드로 부호화를 수행하고 비트스트림을 출력할 수 있다. An image encoding device (100) can perform encoding on an input image in intra mode or inter mode and output a bitstream.
인트라 모드인 경우 스위치(115)가 인트라로 전환되고, 인터 모드인 경우 스위치(115)가 인터로 전환될 수 있다. 인트라 예측은 화면 내 예측, 인터 예측은 화면 간 예측을 의미한다. 영상 부호화 장치(100)는 입력 영상의 입력 블록에 대한 예측 블록을 생성한 후, 입력 블록과 예측 블록의 차분(residual)을 부호화할 수 있다. 이때, 입력 영상은 원 영상(original picture)를 의미할 수 있다.In the case of intra mode, the switch (115) may be switched to intra, and in the case of inter mode, the switch (115) may be switched to inter. Intra prediction means prediction within a screen, and inter prediction means prediction between screens. The image encoding device (100) may generate a prediction block for an input block of an input image, and then encode the difference (residual) between the input block and the prediction block. At this time, the input image may mean an original picture.
인트라 모드인 경우, 인트라 예측부(120)는 현재 블록 주변의 이미 부호화/복호화된 블록의 샘플 값을 참조 샘플로 이용할 수 있다. 인트라 예측부(120)는 참조 샘플을 이용하여 공간적 예측을 수행하고 현재 블록에 대한 예측 샘플들을 생성할 수 있다.In the case of intra mode, the intra prediction unit (120) can use the sample values of already encoded/decoded blocks surrounding the current block as reference samples. The intra prediction unit (120) can perform spatial prediction using the reference samples and generate prediction samples for the current block.
인터 모드인 경우, 인터 예측부(110)는, 움직임 예측 과정에서 참조 픽처 버퍼(190)에 저장되어 있는 참조 픽처에서 입력 블록(현재 블록)과의 차이가 가장 적은 참조 블록을 특정하는 움직임 벡터를 구할 수 있다. 인터 예측부(110)는 움직임 벡터와 참조 픽처 버퍼(190)에 저장되어 있는 참조 픽처를 이용하여 움직임 보상을 수행함으로써 현재 블록에 대한 예측 블록을 생성할 수 있다.In the case of inter mode, the inter prediction unit (110) can obtain a motion vector that specifies a reference block with the smallest difference from the input block (current block) among the reference pictures stored in the reference picture buffer (190) during the motion prediction process. The inter prediction unit (110) can perform motion compensation using the motion vector and the reference picture stored in the reference picture buffer (190) to generate a prediction block for the current block.
멀티 레이어 구조의 경우, 인터 모드에서 적용되는 인터 예측은 인터 레이어 예측을 포함할 수 있다. 인터 예측부(110)는 참조 레이어의 픽처를 샘플링하여 인터 레이어 참조 픽처를 구성하고, 참조 픽처 리스트에 인터 레이어 참조 픽처를 포함하여 인터 레이어 예측을 수행할 수 있다. 레이어 간의 참조 관계는 레이어 간의 의존성을 특정하는 정보를 통해 시그널링될 수 있다. In the case of a multi-layer structure, the inter prediction applied in the inter mode may include inter-layer prediction. The inter-prediction unit (110) may sample pictures of a reference layer to configure inter-layer reference pictures, and perform inter-layer prediction by including the inter-layer reference pictures in a reference picture list. The reference relationship between layers may be signaled through information specifying the dependency between layers.
한편, 현재 레이어 픽처와 참조 레이어 픽처가 동일 사이즈인 경우에 참조 레이어 픽처에 적용되는 샘플링은 참조 레이어 픽처로부터의 샘플 복사 또는 보간에 의한 참조 샘플의 생성을 의미할 수 있다. 현재 레이어 픽처와 참조 레이어 픽처의 해상도가 상이한 경우에 참조 레이어 픽처에 적용되는 샘플링은 업샘플링을 의미할 수 있다.Meanwhile, when the current layer picture and the reference layer picture have the same size, sampling applied to the reference layer picture may mean generation of reference samples by copying or interpolating samples from the reference layer picture. When the current layer picture and the reference layer picture have different resolutions, sampling applied to the reference layer picture may mean upsampling.
예컨대, 레이어 간 해상도가 다른 경우로서 해상도에 관한 스케일러빌러티를 지원하는 레이어 간에는 참조 레이어의 복원된 픽처를 업샘플링하여 인터 레이어 참조 픽처가 구성될 수 있다.For example, in cases where resolutions are different between layers, an inter-layer reference picture can be constructed by upsampling the restored picture of the reference layer between layers that support resolution scalability.
어떤 레이어의 픽처를 이용하여 인터 레이어 참조 픽처를 구성할 것인지는 부호화 코스트 등을 고려하여 결정될 수 있다. 부호화 장치는 인터 레이어 참조 픽처로 사용될 픽처가 속하는 레이어를 특정하는 정보를 복호화 장치로 전송할 수 있다. A decision on which layer's picture to use to construct an inter-layer reference picture can be made by considering encoding cost, etc. An encoding device can transmit information specifying a layer to which a picture to be used as an inter-layer reference picture belongs to a decoding device.
또한, 인터 레이어 예측에 있어서 참조되는 레이어, 즉 참조 레이어 내에서 현재 블록의 예측에 이용되는 픽처는 현재 픽처(현재 레이어 내 예측 대상 픽처)와 동일 AU(Access Unit)의 픽처일 수 있다.Additionally, in inter-layer prediction, the referenced layer, that is, the picture used for prediction of the current block within the reference layer, may be a picture of the same AU (Access Unit) as the current picture (the target picture to be predicted within the current layer).
감산기(125)는 입력 블록과 생성된 예측 블록의 차분에 의해 잔차 블록(residual block)을 생성할 수 있다. A subtractor (125) can generate a residual block by the difference between an input block and a generated prediction block.
변환부(130)는 잔차 블록에 대해 변환(transform)을 수행하여 변환 계수(transform coefficient)를 출력할 수 있다. 여기서, 변환 계수는 잔차 블록 및/또는 잔차 신호에 대한 변환을 수행함으로써 생성된 계수 값을 의미할 수 있다. 이하, 본 명세서에서는 변환 계수에 양자화가 적용되어 생성된, 양자화된 변환 계수 레벨(transform coefficient level)도 변환 계수로 불릴 수 있다. The transform unit (130) can perform a transform on the residual block and output a transform coefficient. Here, the transform coefficient can mean a coefficient value generated by performing a transform on the residual block and/or the residual signal. Hereinafter, in the present specification, a quantized transform coefficient level generated by applying quantization to the transform coefficient can also be called a transform coefficient.
변환 생략(transform skip) 모드가 적용되는 경우, 변환부(130)는 잔차 블록에 대한 변환을 생략할 수도 있다.When the transform skip mode is applied, the transform unit (130) may skip the transformation for the residual block.
양자화부(140)는 입력된 변환 계수를 양자화 파라미터(quantization parameter, 또는 양자화 매개변수)에 따라 양자화하여 양자화된 계수(quantized coefficient)를 출력할 수 있다. 양자화된 계수는 양자화된 변환 계수 레벨(quantized transform coefficient level)로 불릴 수도 있다. 이때, 양자화부(140)에서는 양자화 행렬을 사용하여 입력된 변환 계수를 양자화할 수 있다.The quantization unit (140) can quantize the input transform coefficient according to a quantization parameter and output a quantized coefficient. The quantized coefficient may also be called a quantized transform coefficient level. At this time, the quantization unit (140) can quantize the input transform coefficient using a quantization matrix.
엔트로피 부호화부(150)는, 양자화부(140)에서 산출된 값들 또는 부호화 과정에서 산출된 부호화 파라미터 값 등을 확률 분포에 따라 엔트로피 부호화하여 비트스트림(bitstream)을 출력할 수 있다. 엔트로피 부호화부(150)는 비디오의 화소 정보 외에 비디오 디코딩을 위한 정보(예컨대, 신택스 엘리먼트(syntax element) 등)을 엔트로피 부호화 할 수도 있다.The entropy encoding unit (150) can output a bitstream by entropy encoding values produced by the quantization unit (140) or encoding parameter values produced during the encoding process according to a probability distribution. In addition to pixel information of the video, the entropy encoding unit (150) can also entropy encode information for video decoding (e.g., syntax elements, etc.).
부호화 파라미터는 부호화 및 복호화에 필요한 정보로서, 신택스 엘리먼트와 같이 부호화 장치에서 부호화되어 복호화 장치로 전달되는 정보뿐만 아니라, 부호화 혹은 복호화 과정에서 유추될 수 있는 정보를 포함할 수 있다.Encoding parameters are information required for encoding and decoding, and may include not only information encoded in an encoding device and transmitted to a decoding device, such as syntax elements, but also information that can be inferred during the encoding or decoding process.
예를 들어, 부호화 파라미터는 인트라/인터 예측 모드, 이동/움직임 벡터, 참조 영상 색인, 부호화 블록 패턴, 잔차 신호 유무, 변환 계수, 양자화된 변환 계수, 양자화 파라미터, 블록 크기, 블록 분할 정보 등의 값 또는 통계를 포함할 수 있다. For example, encoding parameters may include values or statistics such as intra/inter prediction mode, translation/motion vector, reference picture index, encoded block pattern, presence or absence of residual signal, transform coefficients, quantized transform coefficients, quantization parameters, block size, and block partition information.
잔차 신호는 원신호와 예측 신호 간의 차이를 의미할 수 있고, 또한 원신호와 예측 신호 간의 차이가 변환(transform)된 형태의 신호 또는 원신호와 예측 신호 간의 차이가 변환되고 양자화된 형태의 신호를 의미할 수도 있다. 잔차 신호는 블록 단위에서는 잔차 블록이라 할 수 있다.The residual signal can mean the difference between the original signal and the predicted signal, or it can mean the signal in the form of a transformed difference between the original signal and the predicted signal, or the signal in the form of a transformed and quantized difference between the original signal and the predicted signal. The residual signal can be called a residual block in block units.
엔트로피 부호화가 적용되는 경우, 높은 발생 확률을 갖는 심볼에 적은 수의 비트가 할당되고 낮은 발생 확률을 갖는 심볼에 많은 수의 비트가 할당되어 심볼이 표현됨으로써, 부호화 대상 심볼들에 대한 비트열의 크기가 감소될 수 있다. 따라서 엔트로피 부호화를 통해서 영상 부호화의 압축 성능이 높아질 수 있다.When entropy coding is applied, a small number of bits are allocated to symbols with a high occurrence probability, and a large number of bits are allocated to symbols with a low occurrence probability, thereby representing symbols, so that the size of the bit string for symbols to be encoded can be reduced. Therefore, the compression performance of image encoding can be improved through entropy coding.
엔트로피 부호화부(150)는 엔트로피 부호화를 위해 지수 골룸(exponential golomb), CAVLC(Context-Adaptive Variable Length Coding), CABAC(Context-Adaptive Binary Arithmetic Coding)과 같은 부호화 방법이 사용될 수 있다. 예를 들어, 엔트로피 부호화부(150)는 가변 길이 부호화(VLC: Variable Lenghth Coding/Code) 테이블을 이용하여 엔트로피 부호화를 수행할 수 있다. 또한 엔트로피 부호화부(150)는 대상 심볼의 이진화(binarization) 방법 및 대상 심볼/빈(bin)의 확률 모델(probability model)을 도출한 후, 도출된 이진화 방법 또는 확률 모델을 사용하여 엔트로피 부호화를 수행할 수도 있다.The entropy encoding unit (150) may use encoding methods such as exponential golomb, Context-Adaptive Variable Length Coding (CAVLC), and Context-Adaptive Binary Arithmetic Coding (CABAC) for entropy encoding. For example, the entropy encoding unit (150) may perform entropy encoding using a Variable Length Coding/Code (VLC) table. In addition, the entropy encoding unit (150) may derive a binarization method of a target symbol and a probability model of a target symbol/bin, and then perform entropy encoding using the derived binarization method or probability model.
도 1의 실시예에 따른 영상 부호화 장치(100)는 인터 예측 부호화, 즉 화면 간 예측 부호화를 수행하므로, 현재 부호화된 영상은 참조 영상으로 사용되기 위해 복호화되어 저장될 필요가 있다. 따라서 양자화된 계수는 역양자화부(160)에서 역양자화되고 역변환부(170)에서 역변환될 수 있다. 역양자화, 역변환된 계수는 가산기(175)를 통해 예측 블록과 더해지고 복원 블록(Reconstructed Block)이 생성된다.Since the image encoding device (100) according to the embodiment of Fig. 1 performs inter-prediction encoding, i.e., inter-screen prediction encoding, the currently encoded image needs to be decoded and stored in order to be used as a reference image. Accordingly, the quantized coefficients can be inversely quantized in the inverse quantization unit (160) and inversely transformed in the inverse transformation unit (170). The inversely quantized and inversely transformed coefficients are added to the prediction block through the adder (175), and a reconstructed block is generated.
복원 블록은 필터부(180)를 거치고, 필터부(180)는 디블록킹 필터(deblocking filter), SAO(Sample Adaptive Offset), ALF(Adaptive Loop Filter) 중 적어도 하나 이상을 복원 블록 또는 복원 픽처에 적용할 수 있다. 필터부(180)는 적응적 인루프(in-loop) 필터로 불릴 수도 있다. 디블록킹 필터는 블록 간의 경계에 생긴 블록 왜곡을 제거할 수 있다. SAO는 코딩 에러를 보상하기 위해 픽셀값에 적정 오프셋(offset) 값을 더해줄 수 있다. ALF는 복원된 영상과 원래의 영상을 비교한 값을 기초로 필터링을 수행할 수 있다. 필터부(180)를 거친 복원 블록은 참조 픽처 버퍼(190)에 저장될 수 있다.The restoration block passes through the filter unit (180), and the filter unit (180) can apply at least one of a deblocking filter, a Sample Adaptive Offset (SAO), and an Adaptive Loop Filter (ALF) to the restoration block or the restoration picture. The filter unit (180) may also be called an adaptive in-loop filter. The deblocking filter can remove block distortion occurring at the boundary between blocks. The SAO can add an appropriate offset value to a pixel value in order to compensate for a coding error. The ALF can perform filtering based on a value obtained by comparing the restored image with the original image. The restoration block that has passed through the filter unit (180) can be stored in the reference picture buffer (190).
도 2는 본 발명이 적용되는 영상 복호화 장치의 일 실시예에 따른 구성을 나타내는 블록도이다.FIG. 2 is a block diagram showing the configuration of an image decoding device according to one embodiment of the present invention.
멀티 레이어(multi-layer) 구조를 지원하는 스케일러블(scalable) 비디오 복호화 장치는, 단일 레이어 구조의 일반적인 영상 복호화 장치를 확장(extension)하여 구현될 수 있다. 도 2의 블록도는 멀티 레이어 구조에 적용 가능한 스케일러블 비디오 복호화 장치의 기초가 될 수 있는 영상 복호화 장치의 일 실시예를 나타낸다.A scalable video decoding device supporting a multi-layer structure can be implemented by extending a general video decoding device having a single layer structure. The block diagram of Fig. 2 illustrates an embodiment of a video decoding device that can be the basis of a scalable video decoding device applicable to a multi-layer structure.
도 2를 참조하면, 영상 복호화 장치(200)는 엔트로피 복호화부(210), 역양자화부(220), 역변환부(230), 인트라 예측부(240), 인터 예측부(250), 가산기(255), 필터부(260) 및 참조 픽처 버퍼(270)를 포함한다.Referring to FIG. 2, the image decoding device (200) includes an entropy decoding unit (210), an inverse quantization unit (220), an inverse transformation unit (230), an intra prediction unit (240), an inter prediction unit (250), an adder (255), a filter unit (260), and a reference picture buffer (270).
영상 복호화 장치(200)는 부호화기에서 출력된 비트스트림을 입력 받아 인트라 모드 또는 인터 모드로 복호화를 수행하고 재구성된 영상, 즉 복원 영상을 출력할 수 있다. The image decoding device (200) can receive a bitstream output from an encoder, perform decoding in intra mode or inter mode, and output a reconstructed image, i.e., a restored image.
인트라 모드인 경우 스위치가 인트라로 전환되고, 인터 모드인 경우 스위치가 인터로 전환될 수 있다.When in intra mode, the switch can be switched to intra, and when in inter mode, the switch can be switched to inter.
영상 복호화 장치(200)는 입력 받은 비트스트림으로부터 복원된 잔차 블록(reconstructed residual block)을 얻고 예측 블록을 생성한 후 복원된 잔차 블록과 예측 블록을 더하여 재구성된 블록, 즉 복원 블록을 생성할 수 있다.The video decoding device (200) can obtain a reconstructed residual block from an input bitstream, generate a prediction block, and then add the reconstructed residual block and the prediction block to generate a reconstructed block, i.e., a restored block.
엔트로피 복호화부(210)는, 입력된 비트스트림을 확률 분포에 따라 엔트로피 복호화하여, 양자화된 계수(quantized coefficient)와 신택스 엘리먼트 등의 정보를 출력할 수 있다.The entropy decoding unit (210) can entropy decode the input bitstream according to a probability distribution and output information such as quantized coefficients and syntax elements.
양자화된 계수는 역양자화부(220)에서 역양자화되고 역변환부(230)에서 역변환된다. 양자화된 계수가 역양자화/역변환 된 결과, 복원된 잔차 블록이 생성될 수 있다. 이때, 역양자화부(220)에서는 양자화된 계수에 양자화 행렬을 적용할 수 있다.The quantized coefficients are inversely quantized in the inverse quantization unit (220) and inversely transformed in the inverse transformation unit (230). As a result of the inverse quantization/inverse transformation of the quantized coefficients, a restored residual block can be generated. At this time, the inverse quantization unit (220) can apply a quantization matrix to the quantized coefficients.
인트라 모드인 경우, 인트라 예측부(240)는 현재 블록 주변의 이미 복호화된 블록의 샘플 값을 이용하여 공간적 예측을 수행하고, 현재 블록에 대한 예측 샘플들을 생성할 수 있다. In the case of intra mode, the intra prediction unit (240) can perform spatial prediction using sample values of already decoded blocks surrounding the current block and generate prediction samples for the current block.
인터 모드인 경우, 인터 예측부(250)는 움직임 벡터 및 참조 픽처 버퍼(270)에 저장되어 있는 참조 픽처를 이용하여 움직임 보상을 수행함으로써 현재 블록에 대한 예측 블록을 생성할 수 있다.In the inter mode, the inter prediction unit (250) can generate a prediction block for the current block by performing motion compensation using a motion vector and a reference picture stored in the reference picture buffer (270).
멀티 레이어 구조의 경우, 인터 모드에서 적용되는 인터 예측은 인터 레이어 예측을 포함할 수 있다. 인터 예측부(250)는 참조 레이어의 픽처를 샘플링하여 인터 레이어 참조 픽처를 구성하고, 참조 픽처 리스트에 인터 레이어 참조 픽처를 포함하여 인터 레이어 예측을 수행할 수 있다. 레이어 간의 참조 관계는 레이어 간의 의존성을 특정하는 정보를 통해 시그널링될 수 있다.In the case of a multi-layer structure, the inter prediction applied in the inter mode may include inter-layer prediction. The inter-prediction unit (250) may sample pictures of a reference layer to configure inter-layer reference pictures, and perform inter-layer prediction by including the inter-layer reference pictures in a reference picture list. The reference relationship between layers may be signaled through information specifying the dependency between layers.
한편, 현재 레이어 픽처와 참조 레이어 픽처가 동일 사이즈인 경우에 참조 레이어 픽처에 적용되는 샘플링은 참조 레이어 픽처로부터의 샘플 복사 또는 보간에 의한 참조 샘플의 생성을 의미할 수 있다. 현재 레이어 픽처와 참조 레이어 픽처의 해상도가 상이한 경우에 참조 레이어 픽처에 적용되는 샘플링은 업샘플링을 의미할 수 있다.Meanwhile, when the current layer picture and the reference layer picture have the same size, sampling applied to the reference layer picture may mean generation of reference samples by copying or interpolating samples from the reference layer picture. When the current layer picture and the reference layer picture have different resolutions, sampling applied to the reference layer picture may mean upsampling.
예컨대, 레이어 간 해상도가 다른 경우로서 해상도에 관한 스케일러빌러티를 지원하는 레이어 간에 인터 레이어 예측이 적용된다면, 참조 레이어의 복원된 픽처를 업샘플링하여 인터 레이어 참조 픽처가 구성될 수 있다. For example, if inter-layer prediction is applied between layers that support resolution scalability in cases where the resolutions between layers are different, an inter-layer reference picture can be constructed by upsampling the restored picture of the reference layer.
이때, 인터 레이어 참조 픽처로 사용될 픽처가 속하는 레이어를 특정하는 정보는 부호화 장치로부터 복호화 장치로 전송될 수 있다.At this time, information specifying the layer to which a picture to be used as an inter-layer reference picture belongs can be transmitted from the encoding device to the decoding device.
또한, 인터 레이어 예측에 있어서 참조되는 레이어, 즉 참조 레이어 내에서 현재 블록의 예측에 이용되는 픽처는 현재 픽처(현재 레이어 내 예측 대상 픽처)와 동일 AU(Access Unit)의 픽처일 수 있다.Additionally, in inter-layer prediction, the referenced layer, that is, the picture used for prediction of the current block within the reference layer, may be a picture of the same AU (Access Unit) as the current picture (the target picture to be predicted within the current layer).
복원된 레지듀얼 블록과 예측 블록은 가산기(255)에서 더해져서, 복원 블록이 생성된다. 다시 말하면, 레지듀얼 샘플과 예측 샘플이 더해져서 복원된 샘플 또는 복원된 픽처가 생성된다.The restored residual block and the predicted block are added in an adder (255) to generate a restored block. In other words, the residual sample and the predicted sample are added to generate a restored sample or restored picture.
복원된 픽처는 필터부(260)에서 필터링 된다. 필터부(260)는 디블록킹 필터, SAO, ALF 중 적어도 하나 이상을 복원 블록 또는 복원 픽처에 적용할 수 있다. 필터부(260)는 재구성된(modified) 혹은 필터링된(filtered) 복원 픽처(reconstructed picture)를 출력한다. 복원 영상은 참조 픽처 버퍼(270)에 저장되어 인터 예측에 사용될 수 있다.The reconstructed picture is filtered in the filter unit (260). The filter unit (260) can apply at least one of a deblocking filter, SAO, and ALF to the reconstructed block or the reconstructed picture. The filter unit (260) outputs a modified or filtered reconstructed picture. The reconstructed image can be stored in the reference picture buffer (270) and used for inter prediction.
또한, 영상 복호화 장치(200)는 비트스트림에 포함되어 있는 인코딩된 영상에 관련된 정보를 파싱하는 파싱부(미도시)를 더 포함할 수 있다. 파싱부는 엔트로피 복호화부(210)를 포함할 수도 있고, 엔트로피 복호화부(210)에 포함될 수도 있다. 이러한 파싱부는 또한 디코딩부의 하나의 구성요소로 구현될 수도 있다.In addition, the image decoding device (200) may further include a parsing unit (not shown) that parses information related to an encoded image included in a bitstream. The parsing unit may include an entropy decoding unit (210) or may be included in the entropy decoding unit (210). This parsing unit may also be implemented as a component of the decoding unit.
도 1과 도 2에서는 하나의 부호화 장치/복호화 장치가 멀티 레이어에 대한 부호화/복호화를 모두 처리하는 것으로 설명하였으나, 이는 설명의 편의를 위한 것으로서, 부호화 장치/복호화 장치는 레이어별로 구성될 수도 있다.In FIGS. 1 and 2, it is described that one encoding/decoding device processes all encoding/decoding for multiple layers, but this is for convenience of explanation, and the encoding/decoding device may be configured for each layer.
이 경우, 상위 레이어의 부호화 장치/복호화 장치는 상위 레이어의 정보 및 하위 레이어의 정보를 이용하여 해당 상위 레이어의 부호화/복호화를 수행할 수 있다. 예컨대, 상위 레이어의 예측부(인터 예측부)는 상위 레이어의 픽셀 정보 또는 픽처 정보를 이용하여 현재 블록에 대한 인트라 예측 또는 인터 예측을 수행할 수도 있고, 하위 레이어로부터 복원된 픽처 정보를 수신하고 이를 이용하여 상위 레이어의 현재 블록에 대한 인터 예측(인터 레이어 예측)을 수행할 수도 있다. 여기서는, 레이어 간의 예측만을 예로서 설명하였으나, 부호화 장치/복호화 장치는 레이어별로 구성되든, 하나의 장치가 멀티 레이어를 처리하든 상관없이, 다른 레이어의 정보를 이용하여 현재 레이어에 대한 부호화/복호화를 수행할 수 있다. In this case, the encoding/decoding device of the upper layer can perform encoding/decoding of the upper layer using information of the upper layer and information of the lower layer. For example, the prediction unit (inter prediction unit) of the upper layer can perform intra prediction or inter prediction for the current block using pixel information or picture information of the upper layer, or can receive picture information reconstructed from the lower layer and perform inter prediction (inter-layer prediction) for the current block of the upper layer using the same. Although only inter-layer prediction is described as an example here, the encoding/decoding device can perform encoding/decoding for the current layer using information of another layer regardless of whether it is configured for each layer or whether one device processes multiple layers.
본 발명에서 레이어는 뷰(view)를 포함할 수 있다. 이 경우, 인터 레이어 예측의 경우는 단순히 하위 레이어의 정보를 이용하여 상위 레이어의 예측을 수행하는 것이 아니라, 레이어 간 의존성을 특정하는 정보에 의해 의존성이 있는 것으로 특정된 레이어들 사이에서 다른 레이어의 정보를 이용하여 인터 레이어 예측이 수행될 수도 있다.In the present invention, a layer may include a view. In this case, in the case of inter-layer prediction, rather than simply using information of a lower layer to perform prediction of an upper layer, inter-layer prediction may be performed using information of another layer between layers that are specified as having dependency by information specifying inter-layer dependency.
도 3은 본 발명이 적용될 수 있는, 복수 레이어를 이용한 스케일러블 비디오 코딩 구조의 일 실시예를 개략적으로 나타내는 개념도이다. 도 3에서 GOP(Group of Picture)는 픽처군 즉, 픽처의 그룹을 나타낸다.Fig. 3 is a conceptual diagram schematically illustrating one embodiment of a scalable video coding structure using multiple layers to which the present invention can be applied. In Fig. 3, GOP (Group of Picture) represents a group of pictures, i.e., a group of pictures.
영상 데이터를 전송하기 위해서는 전송 매체가 필요하며, 그 성능은 다양한 네트워크 환경에 따라 전송 매체별로 차이가 있다. 이러한 다양한 전송 매체 또는 네트워크 환경에의 적용을 위해 스케일러블 비디오 코딩 방법이 제공될 수 있다.In order to transmit video data, a transmission medium is required, and its performance varies depending on the transmission medium and various network environments. A scalable video coding method can be provided for application to such various transmission media or network environments.
스케일러빌러티를 지원하는 비디오 코딩 방법(이하, ‘스케일러블 코딩’혹은 ‘스케일러블 비디오 코딩’이라 함)은 계층(layer) 간의 텍스쳐 정보, 움직임 정보, 잔여 신호 등을 활용하여 계층 간 중복성을 제거하여 인코딩 및 디코딩 성능을 높이는 코딩 방법이다. 스케일러블 비디오 코딩 방법은, 전송 비트율, 전송 에러율, 시스템 자원 등의 주변 조건에 따라, 공간적(spatial), 시간적(temporal), 화질적(혹은 품질적, quality), 시점(view) 관점에서 다양한 스케일러빌리티를 제공할 수 있다.A video coding method supporting scalability (hereinafter referred to as “scalable coding” or “scalable video coding”) is a coding method that removes redundancy between layers by utilizing texture information, motion information, and residual signals between layers to improve encoding and decoding performance. The scalable video coding method can provide various scalabilities in terms of spatial, temporal, picture quality, and view, depending on surrounding conditions such as transmission bit rate, transmission error rate, and system resources.
스케일러블 비디오 코딩은, 다양한 네트워크 상황에 적용 가능한 비트스트림을 제공할 수 있도록, 복수 계층(multiple layers) 구조를 사용하여 수행될 수 있다. 예를 들어 스케일러블 비디오 코딩 구조는, 일반적인 영상 디코딩 방법을 이용하여 영상 데이터를 압축하여 처리하는 기본 계층을 포함할 수 있고, 기본 계층의 디코딩 정보 및 일반적인 영상 디코딩 방법을 함께 사용하여 영상 데이터를 압축 처리하는 향상 계층을 포함할 수 있다.Scalable video coding can be performed using a multiple layers structure so as to provide a bitstream applicable to various network situations. For example, the scalable video coding structure can include a base layer that compresses and processes video data using a general video decoding method, and an enhancement layer that compresses and processes video data using decoding information of the base layer and a general video decoding method together.
기본 계층(Base layer)은 베이스 레이어라고 지칭할 수도 있고, 하위 계층(lower layer)이라 지칭할 수도 있다. 향상 계층(Enhancement layer)은 인핸스먼트 레이어 혹은 상위 계층(higher layer)이라 지칭할 수도 있다. 이때, 하위 계층은 특정 계층 보다 낮은 스케일러빌러티를 지원하는 계층을 의미할 수 있으며, 상위 계층은 특정 계층 보다 높은 스케일러빌러티를 지원하는 계층을 의미할 수 있다. 또한, 다른 계층의 부호화/복호화에 참조되는 계층을 참조 계층(참조 레이어)라고 하고, 다른 계층을 이용하여 부호화/복호화되는 계층을 현재 계층(현재 레이어)라고 할 수 있다. 참조 계층은 현재 계층보다 하위 계층일 수 있으며, 현재 계층은 참조 계층보다 상위 계층일 수 있다. The base layer may be referred to as the base layer or the lower layer. The enhancement layer may be referred to as the enhancement layer or the higher layer. In this case, the lower layer may refer to a layer that supports lower scalability than a specific layer, and the higher layer may refer to a layer that supports higher scalability than a specific layer. In addition, a layer that is referenced for encoding/decoding of another layer may be referred to as a reference layer (reference layer), and a layer that is encoded/decoded using another layer may be referred to as a current layer (current layer). The reference layer may be a lower layer than the current layer, and the current layer may be a higher layer than the reference layer.
여기서, 계층(layer)은 공간(spatial, 예를 들어, 영상 크기), 시간(temporal, 예를 들어, 디코딩 순서, 영상 출력 순서, 프레임 레이트), 화질, 복잡도, 시점(view) 등을 기준으로 구분되는 영상 및 비트스트림(bitstream)의 집합을 의미한다.Here, a layer refers to a set of images and bitstreams that are distinguished based on spatial (e.g., image size), temporal (e.g., decoding order, image output order, frame rate), image quality, complexity, view, etc.
도 3을 참조하면, 예를 들어 기본 계층은 SD(standard definition), 15Hz의 프레임율, 1Mbps 비트율로 정의될 수 있고, 제1 향상 계층은 HD(high definition), 30Hz의 프레임율, 3.9Mbps 비트율로 정의될 수 있으며, 제2 향상 계층은 4K-UHD (ultra high definition), 60Hz의 프레임율, 27.2Mbps 비트율로 정의될 수 있다. Referring to FIG. 3, for example, the base layer may be defined as SD (standard definition), a frame rate of 15 Hz, and a bit rate of 1 Mbps, the first enhancement layer may be defined as HD (high definition), a frame rate of 30 Hz, and a bit rate of 3.9 Mbps, and the second enhancement layer may be defined as 4K-UHD (ultra high definition), a frame rate of 60 Hz, and a bit rate of 27.2 Mbps.
상기 포맷(format), 프레임율, 비트율 등은 하나의 실시예로서, 필요에 따라 달리 정해질 수 있다. 또한 사용되는 계층의 수도 본 실시예에 한정되지 않고 상황에 따라 달리 정해질 수 있다. 예를 들어, 전송 대역폭이 4Mbps라면 상기 제1 향상계층 HD의 프레임 레이트를 줄여서 15Hz 이하로 전송할 수 있다. The above format, frame rate, bit rate, etc. are only examples and may be determined differently as needed. Also, the number of layers used is not limited to this example and may be determined differently depending on the situation. For example, if the transmission bandwidth is 4 Mbps, the frame rate of the first enhancement layer HD may be reduced to 15 Hz or less for transmission.
스케일러블 비디오 코딩 방법은 상기 도 3의 실시예에서 상술한 방법에 의해 시간적, 공간적, 화질적, 시점 스케일러빌리티를 제공할 수 있다. 본 명세서에서 스케일러블 비디오 코딩은 인코딩 관점에서는 스케일러블 비디오 인코딩, 디코딩 관점에서는 스케일러블 비디오 디코딩과 동일한 의미를 가진다.The scalable video coding method can provide temporal, spatial, image quality, and view scalability by the method described in the embodiment of FIG. 3. In this specification, scalable video coding has the same meaning as scalable video encoding from an encoding perspective, and scalable video decoding from a decoding perspective.
통상적으로, 화면간 예측(이하, 인터 예측)은 현재 픽처의 이전 픽처 또는 이후 픽처 중 적어도 하나를 참조 픽처로 하고, 참조 픽처를 기반으로 현재 블록에 대한 예측을 수행할 수 있다. Typically, inter-prediction (hereinafter, inter prediction) uses at least one of the previous picture or the next picture of the current picture as a reference picture, and can perform prediction for the current block based on the reference picture.
현재 블록의 예측에 이용되는 영상을 참조 픽처(reference picture) 또는 참조 프레임(reference frame)이라고 한다. The image used to predict the current block is called a reference picture or reference frame.
참조 픽처 내에서 현재 블록의 예측에 이용되는 영역(참조 블록)은 참조 픽처를 지시하는 참조 픽처 인덱스(refIdx) 및 움직임 벡터(motion vector) 등을 이용하여 나타낼 수 있다. The region (reference block) used for prediction of the current block within the reference picture can be represented using a reference picture index (refIdx) indicating the reference picture and a motion vector.
인터 예측은 참조 픽처 및 참조 픽처 내에서 현재 블록에 대응하는 참조 블록을 선택해서, 현재 블록에 대한 예측 블록을 생성할 수 있다. 이때, 인터 예측은 현재 블록과의 레지듀얼(residual) 신호가 최소화되며, 움직임 벡터 크기 역시 최소가 되도록 예측 블록을 생성할 수 있다. Inter prediction can generate a prediction block for the current block by selecting a reference picture and a reference block corresponding to the current block within the reference picture. At this time, inter prediction can generate a prediction block so that the residual signal with respect to the current block is minimized and the motion vector size is also minimized.
인터 예측 시 참조 픽처의 정보를 이용하기 위해, 현재 블록 주변에 위치한 주변 블록들의 정보를 이용할 수 있다. 예컨대, 인터 예측은 주변 블록들의 정보를 이용하는 방법에 따라, 스킵(skip) 모드, 머지(merge) 모드, AMVP(Advanced Motion Vector Prediction) 등을 적용할 수 있다. 이러한 스킵 모드, 머지 모드, AMVP 모드는 주변 블록의 정보에 기반하여 현재 블록에 대한 예측 블록을 생성할 수 있다. In order to utilize information of reference pictures in inter prediction, information of surrounding blocks located around the current block can be utilized. For example, inter prediction can apply skip mode, merge mode, AMVP (Advanced Motion Vector Prediction), etc. depending on the method of utilizing information of surrounding blocks. These skip mode, merge mode, and AMVP mode can generate a prediction block for the current block based on information of surrounding blocks.
스킵 모드는 주변 블록의 정보를 그대로 현재 블록에 이용할 수 있다. 따라서, 스킵 모드가 적용되는 경우, 부호화기는 현재 블록의 움직임 정보로서 어떤 주변 블록의 움직임 정보를 이용할 것인지를 지시하는 정보를 복호화기로 전송하면 되고, 이외 레지듀얼 등과 같은 신택스 정보는 복호화기로 전송하지 않는다. Skip mode can use the information of surrounding blocks as is for the current block. Therefore, when skip mode is applied, the encoder only needs to transmit information indicating which surrounding block's motion information to use as the motion information of the current block to the decoder, and does not transmit any syntax information such as residuals to the decoder.
머지 모드는 주변 블록의 움직임 정보를 그대로 이용하여 현재 블록에 대한 예측 블록을 생성할 수 있다. 머지 모드가 적용되는 경우, 부호화기는 현재 블록에 대하여 머지 모드를 적용하는지를 지시하는 정보, 어떤 주변 블록의 움직임 정보를 이용할 것인지를 지시하는 정보, 현재 블록에 대한 레지듀얼 정보 등을 복호화기에 전송할 수 있다. 복호화기는 부호화기로부터 지시된 주변 블록의 움직임 정보를 이용하여 현재 블록에 대한 예측 블록을 생성하고, 생성된 예측 블록과 부호화기로부터 전송되는 레지듀얼을 더하여 현재 블록을 복원할 수 있다. The merge mode can generate a prediction block for the current block by directly using the motion information of the surrounding blocks. When the merge mode is applied, the encoder can transmit information indicating whether to apply the merge mode for the current block, information indicating which motion information of the surrounding block to use, residual information for the current block, etc. to the decoder. The decoder can generate a prediction block for the current block by using the motion information of the surrounding blocks indicated by the encoder, and can reconstruct the current block by adding the generated prediction block and the residual transmitted from the encoder.
AMVP는 주변 블록들의 움직임 정보를 이용하여 현재 블록의 움직임 벡터를 예측할 수 있다. AMVP가 적용되는 경우, 부호화기는 어떤 주변 블록의 움직임 정보를 이용하는지를 지시하는 정보, 현재 블록의 움직임 벡터와 예측된 움직임 벡터 사이의 차이, 참조 픽처를 지시하는 참조 픽처 인덱스 등을 복호화기에 전송할 수 있다. 복호화기는 주변 블록의 움직임 정보(움직임 벡터)를 이용하여 현재 블록의 움직임 벡터를 예측하고, 부호화기로부터 수신된 움직임 벡터 차이를 이용하여 현재 블록에 대한 움직임 벡터를 유도할 수 있다. 복호화기는 유도한 움직임 벡터와 부호화기로부터 수신된 참조 픽처 인덱스 정보를 기반으로 현재 블록에 대한 예측 블록을 생성할 수 있다. AMVP can predict the motion vector of the current block using the motion information of the surrounding blocks. When AMVP is applied, the encoder can transmit to the decoder information indicating which motion information of the surrounding block is used, the difference between the motion vector of the current block and the predicted motion vector, and a reference picture index indicating the reference picture. The decoder can predict the motion vector of the current block using the motion information (motion vector) of the surrounding blocks, and derive the motion vector for the current block using the difference between the motion vectors received from the encoder. The decoder can generate a prediction block for the current block based on the derived motion vector and the reference picture index information received from the encoder.
인터 예측의 경우, 복호화기는 부호화기로부터 수신한 스킵 플래그, 머지 플래그 등을 확인하고, 확인한 정보에 따라 현재 블록의 인터 예측에 필요한 움직임 정보(예컨대, 움직임 벡터, 참조 픽처 인덱스 등에 관한 정보)를 유도할 수 있다. In the case of inter prediction, the decoder can check the skip flag, merge flag, etc. received from the encoder, and derive motion information (e.g., information about motion vector, reference picture index, etc.) required for inter prediction of the current block based on the checked information.
예측이 수행되는 처리 단위는 예측 방법 및 구체적인 내용이 정해지는 처리 단위와 다를 수 있다. 예컨대, 코딩 유닛(CU: Coding Unit) 단위로 인터 예측인지 인트라 예측인지 정해질 수 있고, 예측 유닛(PU: Prediction Unit) 단위로 인트라 예측에 대한 예측 모드 및 인터 예측에 대한 예측 모드가 정해질 수 있다. 또는 예측 유닛 단위로 예측 모드가 정해져서 변환 유닛(TU: Transform Unit) 단위로 예측이 수행될 수도 있다.The processing unit where prediction is performed may be different from the processing unit where the prediction method and specific content are determined. For example, inter prediction or intra prediction may be determined on a coding unit (CU: Coding Unit) basis, and the prediction mode for intra prediction and the prediction mode for inter prediction may be determined on a prediction unit (PU: Prediction Unit) basis. Alternatively, the prediction mode may be determined on a prediction unit basis, and prediction may be performed on a transform unit (TU: Transform Unit) basis.
한편, 복수의 계층을 지원하는 스케일러블 비디오 코딩 구조에서는 계층 간 강한 연관성(correlation)이 존재하므로 이러한 연관성을 이용하여 예측을 수행하면 데이터의 중복 요소를 제거할 수 있고 영상의 부호화 성능을 향상시킬 수 있다. 따라서, 부호화/복호화되는 현재 계층(상위 계층)의 픽처(영상)를 예측할 경우, 현재 계층의 정보를 이용한 인터 예측 혹은 인트라 예측뿐만 아니라, 다른 계층의 정보를 이용한 계층간 예측(inter-layer prediction, 혹은 인터 레이어 예측)을 수행할 수 있다.Meanwhile, in a scalable video coding structure that supports multiple layers, since there is a strong correlation between layers, if prediction is performed using this correlation, redundant elements of data can be removed and the encoding performance of the image can be improved. Therefore, when predicting a picture (image) of the current layer (upper layer) to be encoded/decoded, not only inter prediction or intra prediction using information of the current layer, but also inter-layer prediction (or inter-layer prediction) using information of another layer can be performed.
복수의 계층들은 해상도, 프레임 레이트, 컬러 포맷, 시점 중 적어도 하나가 서로 다를 수 있기 때문에(즉, 계층 간의 스케일러빌리티 차이), 현재 계층에 대한 인터 레이어 예측 시 신호 왜곡이 생길 수도 있고, 레지듀얼 신호가 증가하게 될 수도 있다. Since multiple layers may differ in at least one of resolution, frame rate, color format, and viewpoint (i.e., scalability differences between layers), signal distortion may occur or residual signals may increase during inter-layer prediction for the current layer.
따라서, 본 발명에서는 현재 계층(상위 계층)이 참조하는 참조 계층(하위 계층)의 움직임 정보들을 현재 계층의 영상 크기로 매핑(mapping)을 수행한 후 현재 계층의 참조 픽처 리스트에 추가하여 현재 계층에 대한 인터 예측을 수행할 수 있는 방법을 제공한다. Therefore, the present invention provides a method for performing inter prediction for the current layer by mapping motion information of a reference layer (lower layer) referenced by the current layer (upper layer) to the image size of the current layer and then adding the information to the reference picture list of the current layer.
또한, 본 발명은 복수의 계층(layer) 또는 시점(view)을 포함하는 영상의 부호화 및 복호화에 관한 것으로, 복수의 계층 또는 시점은 제1, 제2, 제3, 제n 계층 또는 제1, 제2, 제3, 제n 시점으로 표현될 수 있다. In addition, the present invention relates to encoding and decoding of an image including a plurality of layers or views, wherein the plurality of layers or views can be expressed as a first, a second, a third, an n-th layer or a first, a second, a third, an n-th view.
이하, 본 발명의 실시예에서는 설명의 편의상 제1 계층과 제2 계층이 존재하는 영상을 예로 들어 기술하나, 그 이상의 계층 또는 시점이 존재하는 영상에도 동일한 방법으로 적용될 수 있다. 또한, 제1 계층은 하위 계층(base layer) 혹은 기본 계층 혹은 참조 계층으로, 제2 계층은 상위 계층(enhancement layer) 혹은 향상 계층 혹은 현재 계층으로 표현될 수도 있다. Hereinafter, in the embodiments of the present invention, for the sake of convenience of explanation, an image having a first layer and a second layer is described as an example, but the same method can be applied to an image having more layers or viewpoints. In addition, the first layer can be expressed as a base layer or a basic layer or a reference layer, and the second layer can be expressed as an enhancement layer or an enhancement layer or a current layer.
도 4는 본 발명의 실시예에 따른 스케일러블 비디오 코딩에서 계층간 예측(인터 레이어 예측)을 수행하는 방법을 개략적으로 나타낸 순서도이다. 도 4의 방법은 상술한 도 1의 영상 부호화 장치 및 도 2의 영상 복호화 장치에서 수행될 수 있다. FIG. 4 is a flowchart schematically illustrating a method for performing inter-layer prediction (inter-layer prediction) in scalable video coding according to an embodiment of the present invention. The method of FIG. 4 can be performed in the video encoding device of FIG. 1 and the video decoding device of FIG. 2 described above.
도 4를 참조하면, 부호화/복호화 장치는 제2 계층의 영상(픽처)이 참조하고 있는 제1 계층의 정보를 복호화한다(S400). Referring to FIG. 4, the encoding/decoding device decodes information of the first layer referenced by the image (picture) of the second layer (S400).
상술한 바와 같이, 제2 계층은 현재 부호화/복호화를 수행하는 계층을 의미하며, 제1 계층보다 높은 스케일러빌리티를 제공하는 상위 계층일 수 있다. 제1 계층은 제2 계층의 부호화/복호화를 위해 참조되는 계층일 수 있으며, 참조 계층 혹은 하위 계층으로 지칭될 수 있다. As described above, the second layer refers to a layer that currently performs encoding/decoding, and may be a higher layer that provides higher scalability than the first layer. The first layer may be a layer referenced for encoding/decoding of the second layer, and may be referred to as a reference layer or a lower layer.
부호화/복호화 장치는 제2 계층의 영상 내 부호화/복호화 대상 블록을 예측하기 위한 참조 신호로 제1 계층의 정보를 복호화하여 사용할 수 있다. The encoding/decoding device can decode and use information of the first layer as a reference signal for predicting a target block to be encoded/decoded within an image of the second layer.
복호화할 제1 계층의 정보(제1 계층의 복호화 대상 정보)는 제1 계층 영상(픽처)의 샘플 값 및 움직임 정보 등을 포함할 수 있다. 여기서, 움직임 정보는 움직임 벡터 값, 참조 픽처 인덱스, 예측 방향 지시자, 참조 픽처 POC(Picture Order Count), 예측 모드, 참조 픽처 리스트, 머지 플래그, 머지 색인, 참조 픽처의 픽처 타입(단기(short-term) 참조 픽처, 장기(long-term) 참조 픽처) 등에 관한 정보일 수 있다. Information of the first layer to be decoded (information on the decoding target of the first layer) may include sample values and motion information of the first layer image (picture). Here, the motion information may be information about a motion vector value, a reference picture index, a prediction direction indicator, a reference picture POC (Picture Order Count), a prediction mode, a reference picture list, a merge flag, a merge index, a picture type of a reference picture (short-term reference picture, long-term reference picture), etc.
제1 계층의 복호화된 움직임 정보는 NxN 크기의 단위 블록으로 압축되어 저장될 수 있다. 예를 들어, 제1 계층의 복호화된 움직임 정보는 16x16 블록마다 압축되어 저장될 수 있다. The decoded motion information of the first layer can be compressed and stored in unit blocks of NxN size. For example, the decoded motion information of the first layer can be compressed and stored in 16x16 blocks.
부호화/복호화 장치는 복호화된 제1 계층의 정보를 제2 계층의 영상 크기로 매핑(mapping)한다(S410). The encoding/decoding device maps the decoded first layer information to the image size of the second layer (S410).
여기서, 매핑은 영상들 사이의 크기나 해상도가 다른 경우에 영상 크기나 해상도를 동일하게 조정하기 위해서 영상의 샘플에 대해 샘플링을 수행하는 것일 수 있으며, 영상의 샘플 값에 대한 샘플링 및 영상의 움직임 정보에 대한 샘플링을 포함할 수 있다. Here, mapping may be sampling of images to adjust image sizes or resolutions to be the same when images have different sizes or resolutions, and may include sampling of image sample values and sampling of image motion information.
다시 말해, 부호화/복호화 장치는 복호화된 제1 계층 영상을 제2 계층 영상의 크기로 매핑하기 위해서, 복호화된 제1 계층 영상에 대해 샘플링을 수행할 수 있으며, 샘플링된 제1 계층 영상의 샘플 값 및 움직임 정보 등을 참조할 수 있다. In other words, the encoding/decoding device can perform sampling on the decoded first layer image to map the decoded first layer image to the size of the second layer image, and can refer to sample values and motion information of the sampled first layer image.
스케일러블 비디오 코딩 구조에서는 계층 간 영상의 크기가 다를 수 있으므로, 계층 간(제1 계층과 제2 계층 간) 영상의 크기가 다를 경우, 부호화/복호화 장치는 복호화된 제1 계층의 영상 크기를 제2 계층의 영상 크기로 매핑하기 위해 복호화된 제1 계층 영상의 샘플 값들에 대해 리샘플링(resampling)을 수행할 수 있다. In a scalable video coding structure, since the sizes of images between layers may be different, when the sizes of images between layers (between the first layer and the second layer) are different, the encoding/decoding device may perform resampling on sample values of the decoded first layer image to map the size of the decoded first layer image to the size of the second layer image.
예를 들어, 복호화된 제1 계층의 영상 크기가 960x540이며 제2 계층의 영상 크기가 1920x1080인 경우, 부호화/복호화 장치는 복호화된 제1 계층의 영상 크기를 제2 계층의 영상 크기인 1920x1080 크기로 매핑하는 업샘플링(upsampling)을 수행할 수 있다. 업샘플링은 서로 다른 영상 크기를 가지는 계층 간에 영상 크기를 조정하기 위해 수행될 수 있으며, 작은 영상 크기를 가지는 계층(참조 계층 혹은 하위 계층)의 영상에 보간(interpolation)을 적용함으로써 보간된 샘플들이 유도되어 영상 크기가 조정될 수 있다. For example, if the image size of the decoded first layer is 960x540 and the image size of the second layer is 1920x1080, the encoding/decoding device can perform upsampling to map the image size of the decoded first layer to the image size of 1920x1080, which is the image size of the second layer. Upsampling can be performed to adjust the image size between layers having different image sizes, and interpolated samples can be derived by applying interpolation to the image of a layer (reference layer or lower layer) having a small image size, so that the image size can be adjusted.
부호화/복호화 장치는 복호화된 제1 계층의 움직임 정보를 제2 계층의 영상 크기로 매핑을 하여 사용할 수 있다. 이러한 복호화된 제1 계층 영상의 움직임 정보를 제2 계층의 영상 크기로 매핑하는 계층 간 움직임 정보 매핑은, 제2 계층 영상을 NxN 크기의 단위 블록으로 구분을 하고, 제2 계층의 NxN 단위 블록마다 대응되는 제1 계층의 움직임 정보를 제2 계층 해당 블록의 움직임 정보로 사용할 수 있다. The encoding/decoding device can use the decoded motion information of the first layer by mapping it to the image size of the second layer. The inter-layer motion information mapping that maps the motion information of the decoded first layer image to the image size of the second layer can divide the second layer image into NxN sized unit blocks, and use the motion information of the first layer corresponding to each NxN unit block of the second layer as the motion information of the corresponding block of the second layer.
이하에서 본 발명의 일 실시예에 따른 계층 간 움직임 정보 매핑 방법을 도 5 및 도 6의 실시예를 통해 설명한다. Hereinafter, a method for mapping inter-layer motion information according to one embodiment of the present invention will be described through the embodiments of FIGS. 5 and 6.
도 5 및 도 6은 본 발명의 일 실시예에 따른 계층 간 움직임 정보 매핑 방법을 설명하기 위해 도시된 도면이다. FIGS. 5 and 6 are diagrams illustrating a method for mapping inter-layer motion information according to one embodiment of the present invention.
도 5는 NxN 크기의 단위 블록으로 분할된 제2 계층의 영상을 나타낸다.Figure 5 shows an image of the second layer divided into unit blocks of NxN size.
예를 들어, 도 5에 도시된 바와 같이, 제2 계층의 영상 크기가 1920x1080이고 N=16인 경우, 부호화/복호화 장치는 제2 계층의 영상을 총 8160개의 16x16 단위 블록으로 분할할 수 있으며, 제2 계층의 각 단위 블록마다 대응되는 제1 계층 블록의 움직임 정보를 제2 계층 해당 블록의 움직임 정보로 사용할 수 있다. For example, as illustrated in FIG. 5, when the image size of the second layer is 1920x1080 and N=16, the encoding/decoding device can divide the image of the second layer into a total of 8160 16x16 unit blocks, and can use the motion information of the corresponding first layer block for each unit block of the second layer as the motion information of the corresponding block of the second layer.
이때, 움직임 정보는 각 단위 블록마다 저장될 수 있다. 또는, 움직임 정보는 픽처마다 룩업 테이블(look-up table) 형태로 저장되어 각 단위 블록이 참조하여 사용할 수 있다. At this time, the motion information can be stored for each unit block. Alternatively, the motion information can be stored for each picture in the form of a look-up table so that each unit block can reference and use it.
도 6은 제2 계층의 NxN 블록을 나타내며, 일예로 N=16인 경우의 16x16 블록(600)을 도시하였다. 16x16 블록(600) 내 각각의 사각형은 하나의 샘플을 의미하며, 16x16 블록(600) 내 가장 왼쪽 맨 위쪽의 샘플 위치를 (xP, yP)로 가정한다. Fig. 6 shows an NxN block of the second layer, and as an example, a 16x16 block (600) is illustrated when N=16. Each square in the 16x16 block (600) represents one sample, and the location of the uppermost left sample in the 16x16 block (600) is assumed to be (xP, yP).
상술한 바와 같이, 계층 간 움직임 정보를 매핑할 때, 제2 계층의 NxN 단위 블록마다 대응되는 제1 계층 블록의 움직임 정보를 제2 계층의 움직임 정보로 매핑하여 사용한다. 이때, 제2 계층의 NxN 블록마다 대응되는 제1 계층 블록의 움직임 정보는, 제2 계층 NxN 블록의 기준 샘플 위치에 대응되는 제1 계층 샘플 위치의 움직임 정보일 수 있다. As described above, when mapping motion information between layers, the motion information of the first layer block corresponding to each NxN unit block of the second layer is mapped and used as motion information of the second layer. At this time, the motion information of the first layer block corresponding to each NxN block of the second layer may be motion information of the first layer sample position corresponding to the reference sample position of the second layer NxN block.
예를 들어, 도 6에 도시된 바와 같이, 부호화/복호화 장치는 제2 계층의 16x16 블록(600) 내 (xP+8, yP+8) 위치를 기준 샘플 위치로 결정하고, 기준 샘플 위치 (xP+8, yP+8)에 대응되는 제1 계층 샘플 위치의 움직임 정보를 이용하여 계층 간 움직임 정보 매핑을 수행할 수 있다. For example, as illustrated in FIG. 6, the encoding/decoding device may determine a location (xP+8, yP+8) within a 16x16 block (600) of the second layer as a reference sample location, and perform inter-layer motion information mapping using motion information of a first layer sample location corresponding to the reference sample location (xP+8, yP+8).
또는, 부호화/복호화 장치는 제2 계층의 16x16 블록(600) 내 (xP, yP) 위치를 기준 샘플 위치로 결정하고, 기준 샘플 위치 (xP, yP)에 대응되는 제1 계층 샘플 위치의 움직임 정보를 이용하여 계층 간 움직임 정보 매핑을 수행할 수 있다. Alternatively, the encoding/decoding device may determine the location (xP, yP) within the 16x16 block (600) of the second layer as a reference sample location and perform inter-layer motion information mapping using motion information of the first layer sample location corresponding to the reference sample location (xP, yP).
또는, 부호화/복호화 장치는 제2 계층의 16x16 블록(600) 내 (xP+15, yP) 위치를 기준 샘플 위치로 결정하고, 기준 샘플 위치 (xP+15, yP)에 대응되는 제1 계층 샘플 위치의 움직임 정보를 이용하여 계층 간 움직임 정보 매핑을 수행할 수 있다. Alternatively, the encoding/decoding device may determine the location (xP+15, yP) within the 16x16 block (600) of the second layer as a reference sample location, and perform inter-layer motion information mapping using motion information of the first layer sample location corresponding to the reference sample location (xP+15, yP).
또는, 부호화/복호화 장치는 제2 계층의 16x16 블록(600) 내 (xP, yP+15) 위치를 기준 샘플 위치로 결정하고, 기준 샘플 위치 (xP, yP+15)에 대응되는 제1 계층 샘플 위치의 움직임 정보를 이용하여 계층 간 움직임 정보 매핑을 수행할 수 있다. Alternatively, the encoding/decoding device may determine a location (xP, yP+15) within a 16x16 block (600) of the second layer as a reference sample location, and perform inter-layer motion information mapping using motion information of a first layer sample location corresponding to the reference sample location (xP, yP+15).
또는, 부호화/복호화 장치는 제2 계층의 16x16 블록(600) 내 (xP+15, yP+15) 위치를 기준 샘플 위치로 결정하고, 기준 샘플 위치 (xP+15, yP+15)에 대응되는 제1 계층 샘플 위치의 움직임 정보를 이용하여 계층 간 움직임 정보 매핑을 수행할 수 있다. Alternatively, the encoding/decoding device may determine a location (xP+15, yP+15) within a 16x16 block (600) of the second layer as a reference sample location, and perform inter-layer motion information mapping using motion information of a first layer sample location corresponding to the reference sample location (xP+15, yP+15).
또는, 부호화/복호화 장치는 제2 계층의 16x16 블록(600) 내 (xP+1, yP+1) 위치를 기준 샘플 위치로 결정하고, 기준 샘플 위치 (xP+1, yP+1)에 대응되는 제1 계층 샘플 위치의 움직임 정보를 이용하여 계층 간 움직임 정보 매핑을 수행할 수 있다. Alternatively, the encoding/decoding device may determine a location (xP+1, yP+1) within a 16x16 block (600) of the second layer as a reference sample location, and perform inter-layer motion information mapping using motion information of a first layer sample location corresponding to the reference sample location (xP+1, yP+1).
부호화/복호화 장치는 상기에서 언급한 기준 샘플 위치뿐만 아니라, 다른 기준 샘플 위치를 사용하여 이에 대응되는 제1 계층 샘플 위치의 움직임 정보를 이용하여 계층 간 움직임 정보 매핑을 수행할 수 있다. The encoding/decoding device can perform inter-layer motion information mapping using motion information of first layer sample positions corresponding to other reference sample positions in addition to the above-mentioned reference sample positions.
제2 계층의 기준 샘플 위치에 대응되는 제1 계층의 샘플 위치는, 계층 간 영상의 크기를 고려하여 아래 수학식 1과 같이 계산될 수 있다. The sample position of the first layer corresponding to the reference sample position of the second layer can be calculated as in the following mathematical expression 1 by considering the size of the image between layers.
여기서, xRef와 yRef는 제1 계층의 샘플 위치이며, xP와 yP는 제2 계층의 기준 샘플 위치이며, ScaledW와 ScaledH는 스케일링된 제1 계층 픽처의 가로 및 세로 크기이며, picWRL와 picHRL는 제1 계층 픽처의 가로 및 세로 크기이다. Here, xRef and yRef are sample locations of the first layer, xP and yP are reference sample locations of the second layer, ScaledW and ScaledH are the width and height sizes of the scaled first layer picture, and picWRL and picHRL are the width and height sizes of the first layer picture.
예를 들어, 제1 계층의 움직임 정보가 16x16 단위로 압축되어 저장되어 있는 경우, 상기 수학식 1에 의해 계산된 제1 계층의 샘플 위치는 아래 수학식 2를 통해 16x16 단위의 움직임 정보를 사용할 수 있도록 조정될 수 있다. For example, if the motion information of the first layer is compressed and stored in 16x16 units, the sample positions of the first layer calculated by the mathematical expression 1 can be adjusted to use the motion information of 16x16 units through the mathematical expression 2 below.
다른 예로, 제1 계층의 움직임 정보가 8x8 단위로 압축되어 저장되어 있는 경우, 상기 수학식 1에 의해 계산된 제1 계층의 샘플 위치는 아래 수학식 3을 통해 8x8 단위의 움직임 정보를 사용할 수 있도록 조정될 수 있다. As another example, if the motion information of the first layer is compressed and stored in 8x8 units, the sample positions of the first layer calculated by the mathematical expression 1 can be adjusted to use the motion information of the 8x8 units through the mathematical expression 3 below.
제2 계층의 기준 샘플 위치에 대응되는 제1 계층 샘플 위치의 예측 모드가 인트라 예측 모드인 경우, 부호화/복호화 장치는 제2 계층 해당 블록의 움직임 벡터 값으로 (0, 0)을 사용할 수 있으며, 제2 계층 해당 블록의 참조 픽처 인덱스 및 참조 픽처 POC에는 -1 값을 할당할 수 있다. If the prediction mode of the first layer sample position corresponding to the reference sample position of the second layer is the intra prediction mode, the encoding/decoding device may use (0, 0) as the motion vector value of the corresponding block of the second layer, and may assign a value of -1 to the reference picture index and reference picture POC of the corresponding block of the second layer.
또는, 제2 계층의 기준 샘플 위치에 대응되는 제1 계층 샘플 위치의 예측 모드가 인트라 예측 모드인 경우, 부호화/복호화 장치는 제2 계층 해당 블록의 움직임 벡터 값으로 (0, 0)을 사용할 수 있으며, 제2 계층 해당 블록의 참조 픽처 인덱스 및 참조 픽처 POC에는 특정 값(예를 들어, 참조 픽처 인덱스는 0으로 할당하고, 참조 픽처 POC는 참조 픽처 인덱스 0이 지시하는 픽처의 POC로 할당)을 할당할 수 있다. Alternatively, if the prediction mode of the first layer sample position corresponding to the reference sample position of the second layer is the intra prediction mode, the encoding/decoding device may use (0, 0) as the motion vector value of the second layer corresponding block, and may assign specific values (for example, 0 is assigned to the reference picture index and the reference picture POC is assigned as the POC of the picture indicated by the reference picture index 0) to the reference picture index and the reference picture POC of the second layer corresponding block.
제2 계층의 기준 샘플 위치에 대응되는 제1 계층 샘플 위치의 예측 모드가 인터 예측 모드인 경우, 부호화/복호화 장치는 제2 계층 해당 블록의 움직임 정보로 제1 계층 샘플 위치의 움직임 벡터 값, 참조 픽처 인덱스, 참조 픽처 POC 값을 사용할 수 있다. When the prediction mode of the first layer sample position corresponding to the reference sample position of the second layer is the inter prediction mode, the encoding/decoding device can use the motion vector value, reference picture index, and reference picture POC value of the first layer sample position as the motion information of the corresponding block of the second layer.
제1 계층의 움직임 벡터를 사용할 경우, 부호화/복호화 장치는 아래 수학식 4와 같이 계층 간 영상의 크기를 반영하여 제1 계층의 움직임 벡터를 사용할 수 있다. When using the motion vector of the first layer, the encoding/decoding device can use the motion vector of the first layer by reflecting the size of the image between layers as shown in the mathematical expression 4 below.
부호화/복호화 장치는 제2 계층의 블록에 대응되는 제1 계층의 대응 블록이 참조하고 있는 참조 픽처의 픽처 타입 정보(참조 픽처가 단기 참조 픽처인지 장기 참조 픽처인지에 대한 픽처 타입 정보)를 제2 계층 해당 블록의 정보로 사용할 수 있다. The encoding/decoding device can use the picture type information (picture type information on whether the reference picture is a short-term reference picture or a long-term reference picture) of the reference picture referenced by the corresponding block of the first layer corresponding to the block of the second layer as information of the corresponding block of the second layer.
상술한 계층 간 움직임 정보 매핑은 상위 레벨에서 결정될 수 있으며, 부호화 장치는 계층 간 움직임 정보 매핑 관련 정보를 상위 레벨에서 전송할 수 있다. 복호화 장치는 상위 레벨로부터 계층 간 움직임 정보 매핑 관련 정보를 획득할 수 있다. The above-described inter-layer motion information mapping can be determined at a higher level, and the encoding device can transmit information related to the inter-layer motion information mapping at a higher level. The decoding device can obtain information related to the inter-layer motion information mapping from a higher level.
상위 레벨은 비디오 파라미터 세트(VPS: Video Parameter Set), 시퀀스 파라미터 세트(SPS: Sequence Parameter Set), 픽처 파라미터 세트(PPS: Picture Parameter Set), 슬라이스 세그먼트 헤더(Slice segment header) 등일 수 있다. The upper level can be a video parameter set (VPS), a sequence parameter set (SPS), a picture parameter set (PPS), a slice segment header, etc.
이하에서는 본 발명의 실시예에 따라 움직임 정보 매핑과 관련된 정보를 상위 레벨에서 시그널링하는 방법에 대해 설명한다. Below, a method for signaling information related to motion information mapping at a high level according to an embodiment of the present invention is described.
본 발명의 일 실시예에 의하면, 표 1에서와 같이 VPS에서 해당 계층의 움직임 정보 매핑에 관련된 정보가 시그널링될 수 있다. According to one embodiment of the present invention, information related to motion information mapping of a corresponding layer in a VPS can be signaled as shown in Table 1.
표 1을 참조하면, inter_layer_mfm_enable_flag가 0인 경우, i번째 계층의 움직임 정보 매핑을 수행하지 않을 수 있다. Referring to Table 1, if inter_layer_mfm_enable_flag is 0, motion information mapping of the i-th layer may not be performed.
inter_layer_mfm_enable_flag가 1인 경우, 상기 i번재 계층의 움직임 정보 매핑을 수행할 수 있다.If inter_layer_mfm_enable_flag is 1, motion information mapping of the i-th layer can be performed.
본 발명의 다른 실시예에 의하면, 표 2에서와 같이 SPS의 확장(extension)에서 해당 계층의 움직임 정보 매핑에 관련된 정보가 시그널링될 수 있다. According to another embodiment of the present invention, information related to motion information mapping of a corresponding layer can be signaled in an extension of SPS as in Table 2.
표 2를 참조하면, sps_inter_layer_mfm_enable_flag가 0인 경우, 제1 계층의 움직임 정보 매핑을 수행하지 않을 수 있다. Referring to Table 2, if sps_inter_layer_mfm_enable_flag is 0, motion information mapping of the first layer may not be performed.
sps_inter_layer_mfm_enable_flag가 1인 경우, 제 1계층의 움직임 정보 매핑을 수행할 수 있다.If sps_inter_layer_mfm_enable_flag is 1, motion information mapping of the first layer can be performed.
*본 발명의 또 다른 실시예에 의하면, 표 3에서와 같이 SPS에서 전송되는 시간 움직임 벡터 예측 사용 여부를 알려주는 정보(예를 들어, sps_temporal_mvp_enabled_flag)에 따라 해당 계층의 움직임 정보 매핑 수행 여부를 알려주는 정보(예를 들어, sps_inter_layer_mfm_enable_flag)의 전송 여부를 결정할 수 있다. *According to another embodiment of the present invention, it is possible to determine whether to transmit information (e.g., sps_inter_layer_mfm_enable_flag) indicating whether to perform motion information mapping of a corresponding layer according to information (e.g., sps_temporal_mvp_enabled_flag) indicating whether to use temporal motion vector prediction transmitted from SPS as in Table 3.
표 3을 참조하면, 시간 움직임 벡터 예측 사용 여부를 알려주는 sps_temporal_mvp_enabled_flag가 1인 경우, 제1 계층의 움직임 정보 매핑을 수행할지 여부를 알려주는 sps_inter_layer_mfm_enable_flag를 전송할 수 있다. Referring to Table 3, when sps_temporal_mvp_enabled_flag, which indicates whether to use temporal motion vector prediction, is 1, sps_inter_layer_mfm_enable_flag, which indicates whether to perform motion information mapping of the first layer, can be transmitted.
sps_temporal_mvp_enabled_flag가 1이고 sps_inter_layer_mfm_enable_flag가 0인 경우, 제1 계층의 움직임 정보를 제2 계층에서 사용하지 않을 수 있다. 즉, 제1 계층의 복원된 영상이 제2 계층의 TMVP(temporal motion vector predictor)로 사용되지 않을 수 있다.When sps_temporal_mvp_enabled_flag is 1 and sps_inter_layer_mfm_enable_flag is 0, the motion information of the first layer may not be used in the second layer. That is, the reconstructed image of the first layer may not be used as the TMVP (temporal motion vector predictor) of the second layer.
본 발명의 또 다른 실시예에 의하면, 상기 표 3에서와 같은 sps_inter_layer_mfm_enable_flag 전송 없이, sps_temporal_mvp_enabled_flag 값에 의해 해당 계층의 움직임 정보 매핑 수행 여부가 결정될 수 있다. 예를 들어, sps_temporal_mvp_enabled_flag가 1인 경우에는 sps_inter_layer_mfm_enable_flag 가 1인 것으로 간주하여, 해당 계층의 움직임 정보 매핑을 수행할 수 있다. sps_temporal_mvp_enabled_flag가 0 인 경우에는 sps_inter_layer_mfm_enable_flag 가 0인 것으로 간주하여, 해당 계층의 움직임 정보 매핑을 수행할 수 있다.According to another embodiment of the present invention, whether to perform motion information mapping of a corresponding layer can be determined by the sps_temporal_mvp_enabled_flag value without transmitting sps_inter_layer_mfm_enable_flag as in Table 3. For example, if sps_temporal_mvp_enabled_flag is 1, sps_inter_layer_mfm_enable_flag is considered to be 1, and motion information mapping of the corresponding layer can be performed. If sps_temporal_mvp_enabled_flag is 0, sps_inter_layer_mfm_enable_flag is considered to be 0, and motion information mapping of the corresponding layer can be performed.
본 발명의 또 다른 실시예에 의하면, 표 4에서와 같이 PPS의 확장(extension)에서 해당 계층의 움직임 정보 매핑에 관련된 정보가 시그널링될 수 있다.According to another embodiment of the present invention, information related to motion information mapping of a corresponding layer can be signaled in an extension of PPS as in Table 4.
표 4를 참조하면, pps_inter_layer_mfm_enable_flag가 0인 경우, 제 1계층의 움직임 정보 매핑을 수행하지 않을 수 있다. Referring to Table 4, if pps_inter_layer_mfm_enable_flag is 0, motion information mapping of the first layer may not be performed.
pps_inter_layer_mfm_enable_flag가 1인 경우, 제 1계층의 움직임 정보 매핑을 수행할 수 있다.If pps_inter_layer_mfm_enable_flag is 1, motion information mapping of the first layer can be performed.
본 발명의 또 다른 실시예에 의하면, 표 5에서와 같이 슬라이스 세그먼트 헤더의 확장(extension)에서 해당 계층의 움직임 정보 매핑에 관련된 정보가 시그널링될 수 있다.According to another embodiment of the present invention, information related to motion information mapping of a corresponding layer can be signaled in an extension of a slice segment header as in Table 5.
표 5를 참조하면, slice_inter_layer_mfm_enable_flag가 0인 경우, 제 1계층의 움직임 정보 매핑을 수행하지 않을 수 있다. Referring to Table 5, if slice_inter_layer_mfm_enable_flag is 0, motion information mapping of the first layer may not be performed.
slice_inter_layer_mfm_enable_flag가 1인 경우, 제 1계층의 움직임 정보 매핑을 수행할 수 있다.If slice_inter_layer_mfm_enable_flag is 1, motion information mapping of the first layer can be performed.
본 발명의 또 다른 실시예에 의하면, 표 6에서와 같이 슬라이스 세그먼트 헤더의 확장(extension)에서 해당 계층의 움직임 정보 매핑에 관련된 정보가 시그널링될 수 있다.According to another embodiment of the present invention, information related to motion information mapping of a corresponding layer can be signaled in an extension of a slice segment header as in Table 6.
표 6을 참조하면, 시간 움직임 벡터 예측 사용 여부를 알려주는 slice_temporal_mvp_enabled_flag가 1인 경우, 제1 계층의 움직임 정보 매핑을 수행할지 여부를 알려주는 slice_inter_layer_mfm_enable_flag를 전송할 수 있다. slice_inter_layer_mfm_enable_flag는 기본 계층이 아닌 계층(즉, 향상 계층)에서만 전송이 되며, 향상 계층의 경우 움직임 예측에 사용되는 계층이 존재하지 않을 경우 slice_inter_layer_mfm_enable_flag를 전송하지 않을 수 있다. 해당 플래그가 존재하지 않을 경우에는 해당 플래그 값을 0으로 유추 할 수 있다.Referring to Table 6, when slice_temporal_mvp_enabled_flag, which indicates whether to use temporal motion vector prediction, is 1, slice_inter_layer_mfm_enable_flag, which indicates whether to perform motion information mapping of the first layer, can be transmitted. slice_inter_layer_mfm_enable_flag is transmitted only in a layer other than the base layer (i.e., the enhancement layer), and in the case of the enhancement layer, if a layer used for motion prediction does not exist, slice_inter_layer_mfm_enable_flag may not be transmitted. If the flag does not exist, the flag value can be inferred as 0.
slice_temporal_mvp_enabled_flag가 1이고 slice_inter_layer_mfm_enable_flag가 0인 경우, 제1 계층의 움직임 정보를 제2 계층에서 사용하지 않을 수 있다. 즉, 제1 계층의 복원된 영상이 제2 계층의 시간 움직임 벡터 예측(TMVP: Temporal Motion Vector Predictor)으로 사용되지 않을 수 있다.If slice_temporal_mvp_enabled_flag is 1 and slice_inter_layer_mfm_enable_flag is 0, the motion information of the first layer may not be used in the second layer. That is, the reconstructed image of the first layer may not be used for the Temporal Motion Vector Predictor (TMVP) of the second layer.
slice_inter_layer_mfm_enable_flag가 기본 계층이 아닌 계층(즉, 향상 계층)에서 전송되는 경우, slice_inter_layer_mfm_enable_flag는 표 7에서와 같이 기본 계층이 아닌 계층(즉, 향상 계층)의 슬라이스 세그먼트 헤더에서 slice_segement_header_extension_present_flag 상위에 존재할 수 있다. If slice_inter_layer_mfm_enable_flag is transmitted in a non-base layer (i.e., enhancement layer), slice_inter_layer_mfm_enable_flag can be present above slice_segement_header_extension_present_flag in the slice segment header of the non-base layer (i.e., enhancement layer), as shown in Table 7.
표 7을 참조하면, 시간 움직임 벡터 예측 사용 여부를 알려주는 slice_temporal_mvp_enabled_flag가 1인 경우, 제1 계층의 움직임 정보 매핑을 수행할지 여부를 알려주는 slice_inter_layer_mfm_enable_flag를 전송할 수 있다. Referring to Table 7, when slice_temporal_mvp_enabled_flag, which indicates whether to use temporal motion vector prediction, is 1, slice_inter_layer_mfm_enable_flag, which indicates whether to perform motion information mapping of the first layer, can be transmitted.
slice_temporal_mvp_enabled_flag가 1이고 slice_inter_layer_mfm_enable_flag가 0인 경우, 제1 계층의 움직임 정보를 제2 계층에서 사용하지 않을 수 있다. 즉, 제1 계층의 복원된 영상이 제2 계층의 TMVP(temporal motion vector predictor)로 사용되지 않을 수 있다.If slice_temporal_mvp_enabled_flag is 1 and slice_inter_layer_mfm_enable_flag is 0, the motion information of the first layer may not be used in the second layer. That is, the reconstructed image of the first layer may not be used as the TMVP (temporal motion vector predictor) of the second layer.
slice_temporal_mvp_enabled_flag가 1이고 slice_inter_layer_mfm_enable_flag가 1인 경우, 제1 계층의 움직임 정보를 제2 계층에서 사용할 수 있다. 즉, 제1 계층의 움직임 정보를 제2 계층의 크기로 매핑을 수행한 후 제1 계층의 복원된 영상을 제2 계층의 TMVP를 위한 대응 픽처(ColPic, Collocated picture)로 사용할 수 있다.When slice_temporal_mvp_enabled_flag is 1 and slice_inter_layer_mfm_enable_flag is 1, the motion information of the first layer can be used in the second layer. That is, after mapping the motion information of the first layer to the size of the second layer, the restored image of the first layer can be used as a corresponding picture (ColPic, Collocated picture) for TMVP of the second layer.
slice_inter_layer_mfm_enable_flag가 1인 경우, 표 8에서와 같이 추가 신택스 정보를 통해 제2 계층의 TMVP를 위한 제1 계층의 대응 픽처(ColPic, Collocated picture)에 대한 정보가 시그널링될 수 있다. 예를 들어, collocated_ref_layer_idx를 통하여 참조하는 계층의 정보를 알 수 있으며, 상기 참조 계층 대응 픽처의 움직임 정보를 제2 계층의 영상 크기로 매핑할 수 있다. 또한 B 슬라이스인 경우, collocated_ref_layer_from_l0_flag를 통하여 대응 픽처로 사용할 수 있는 참조 계층의 픽처가 위치하는 참조 픽처 리스트 방향을 정할 수 있다.When slice_inter_layer_mfm_enable_flag is 1, information about corresponding pictures (ColPic, Collocated pictures) of the first layer for TMVP of the second layer can be signaled through additional syntax information as shown in Table 8. For example, information about the layer to be referenced can be known through collocated_ref_layer_idx, and motion information of the corresponding picture of the reference layer can be mapped to the image size of the second layer. In addition, in case of B slice, the direction of the reference picture list where pictures of the reference layer that can be used as corresponding pictures are located can be determined through collocated_ref_layer_from_l0_flag.
표 8을 참조하면, collocated_ref_layer_idx는 움직임 예측을 위해 사용되는 참조 계층의 개수가 2개 이상일 경우, 움직임 예측에 사용되는 참조 계층의 정보를 알려주는 지시자이다. 움직임 예측을 위해 사용되는 참조 계층의 개수가 1개일 경우 collocated_ref_layer_idx는 생략될 수 있다. 이때, 픽처 내 모든 슬라이스는 동일한 값을 가져야 한다는 제약을 가할 수 있다. Referring to Table 8, collocated_ref_layer_idx is an indicator that provides information on the reference layer used for motion prediction when the number of reference layers used for motion prediction is 2 or more. If the number of reference layers used for motion prediction is 1, collocated_ref_layer_idx can be omitted. In this case, a constraint can be imposed that all slices in the picture must have the same value.
collocated_ref_layer_from_l0_flag는 B 슬라이스에서 전송된다. collocated_ref_layer_from_l0_flag 값이 1인 경우는 LIST0 내에 존재하는 참조 계층의 픽처를 대응 픽처(ColPic)로 한다. collocated_ref_layer_from_l0_flag 값이 0인 경우는 LIST1 내에 존재하는 참조 계층의 픽처를 대응 픽처(ColPic)로 한다. 이후, 대응 픽처(ColPic) 내의 대응 블록(ColPb)의 움직임 벡터를 구하는 과정에서 collocated_from_l0_flag 대신 collocated_ref_layer_from_l0_flag 값을 동일한 의미로 사용할 수 있다. 이때, 픽처 내 모든 슬라이스는 동일한 값을 가져야 한다는 제약을 가할 수 있다. 또는, 대응 픽처(ColPic) 내의 대응 블록(ColPb)의 움직임 벡터를 구하는 과정에서 대응 블록이 LIST0와 LIST1 방향의 움직임 정보를 둘 다 가지고 있는 경우, 현재 부호화/복호화 대상 픽처가 가리키고 있는 방향과 동일한 방향의 움직임 정보를 가져올 수 있다. collocated_ref_layer_from_l0_flag is transmitted in the B slice. If the collocated_ref_layer_from_l0_flag value is 1, the picture of the reference layer existing in LIST0 is used as the corresponding picture (ColPic). If the collocated_ref_layer_from_l0_flag value is 0, the picture of the reference layer existing in LIST1 is used as the corresponding picture (ColPic). Thereafter, in the process of obtaining the motion vector of the corresponding block (ColPb) in the corresponding picture (ColPic), the collocated_ref_layer_from_l0_flag value can be used with the same meaning instead of collocated_from_l0_flag. At this time, a constraint that all slices in the picture must have the same value can be imposed. Alternatively, in the process of obtaining the motion vector of the corresponding block (ColPb) within the corresponding picture (ColPic), if the corresponding block has motion information in both the LIST0 and LIST1 directions, motion information in the same direction as the direction pointed by the current encoding/decoding target picture can be obtained.
기본 계층 또는 slice_inter_layer_mfm_enable_flag가 0 인 경우, 참조 계층의 움직임 정보를 이용하지 않고 collocated_from_l0_flag와 collocated_ref_idx를 사용하여 제2 계층 내의 리스트 방향과 대응 픽처를 알려 줄 수 있다.When the base layer or slice_inter_layer_mfm_enable_flag is 0, the list direction and corresponding picture within the second layer can be indicated using collocated_from_l0_flag and collocated_ref_idx without using the motion information of the reference layer.
slice_inter_layer_mfm_enable_flag가 1인 경우, 표 9에서와 같이 추가 신택스 정보를 사용하여 제2 계층의 TMVP를 위한 제1 계층의 대응 픽처(ColPic, Collocated picture)에 대한 정보 및 참조 픽처 리스트 방향 정보가 시그널링될 수 있다. 예를 들어, slice_temporal_mvp_enabled_flag가 1인 경우, B 슬라이스에 대해서는 collocated_from_l0_flag 값으로부터 대응 픽처의 참조 픽처 리스트 방향을 정할 수 있으며, collocated_ref_layer_idx 값으로부터 참조하는 계층을 알 수 있다.When slice_inter_layer_mfm_enable_flag is 1, information about corresponding pictures (ColPic, Collocated pictures) of the first layer for TMVP of the second layer and reference picture list direction information can be signaled using additional syntax information as shown in Table 9. For example, when slice_temporal_mvp_enabled_flag is 1, for B slice, the reference picture list direction of the corresponding picture can be determined from the collocated_from_l0_flag value, and the referencing layer can be known from the collocated_ref_layer_idx value.
표 9를 참조하면, collocated_from_l0_flag는 slice_temporal_mvp_enabled_flag가 1이고 B 슬라이스일 경우, 대응 픽처가 속해 있는 참조 픽처 리스트 방향을 지시한다. collocated_from_l0_flag가 존재하지 않을 경우, collocated_from_l0_flag는 1로 유추할 수 있다. 이때, 픽처 내 모든 슬라이스는 동일한 값을 가져야 한다는 제약을 가할 수 있다. Referring to Table 9, collocated_from_l0_flag indicates the direction of the reference picture list to which the corresponding picture belongs when slice_temporal_mvp_enabled_flag is 1 and it is a B slice. If collocated_from_l0_flag does not exist, collocated_from_l0_flag can be inferred to be 1. In this case, a constraint can be imposed that all slices in the picture must have the same value.
collocated_ref_layer_idx는 움직임 예측을 위해 사용되는 참조 계층의 개수가 2개 이상일 경우, 움직임 예측에 사용되는 참조 계층의 정보를 알려주는 지시자이다. 움직임 예측을 위해 사용되는 참조 계층의 개수가 1개일 경우 collocated_ref_layer_idx는 생략될 수 있다. 이때, 픽처 내 모든 슬라이스는 동일한 값을 가져야 한다는 제약을 가할 수 있다. 상위에서 전송된 collocated_from_l0_flag로부터 대응 픽처에 대한 리스트 방향을 정할 수 있다. collocated_ref_layer_idx is an indicator that provides information on the reference layers used for motion prediction when there are two or more reference layers used for motion prediction. If there is only one reference layer used for motion prediction, collocated_ref_layer_idx can be omitted. In this case, a constraint that all slices in a picture must have the same value can be applied. The list direction for the corresponding picture can be determined from the collocated_from_l0_flag transmitted from above.
기본 계층 또는 slice_inter_layer_mfm_enable_flag가 0 인 경우, 참조 계층의 움직임 정보를 이용하지 않고 collocated_from_l0_flag와 collocated_ref_idx를 사용하여 제2 계층 내의 리스트 방향과 대응 픽처를 알려 줄 수 있다.When the base layer or slice_inter_layer_mfm_enable_flag is 0, the list direction and corresponding picture within the second layer can be indicated using collocated_from_l0_flag and collocated_ref_idx without using the motion information of the reference layer.
slice_inter_layer_mfm_enable_flag가 1인 경우, 표 10에서와 같이 collocated_ref_layer_idx를 통하여 참조하는 계층의 정보를 알 수 있으며 상기 참조 계층 대응 픽처의 움직임 정보를 제2 계층의 영상 크기로 매핑할 수 있다. 이때, 슬라이스 타입에 따라 P 슬라이스인 경우에는 LIST0 내에 존재하는 참조 계층의 픽처를 대응 픽처로 하며, B 슬라이스인 경우에는 LIST0 또는 LIST1 중 하나의 방향으로 규약을 하고 해당하는 참조 계층의 픽처를 대응 픽처로 하여 부호화/복호화 장치가 동일하게 사용할 수 있다.When slice_inter_layer_mfm_enable_flag is 1, information on the referenced layer can be known through collocated_ref_layer_idx as in Table 10, and motion information of the corresponding picture of the reference layer can be mapped to the image size of the second layer. At this time, depending on the slice type, in the case of a P slice, a picture of the reference layer existing in LIST0 is used as the corresponding picture, and in the case of a B slice, a convention is made in the direction of either LIST0 or LIST1, and the corresponding picture of the reference layer is used as the corresponding picture so that the encoding/decoding device can use it identically.
기본 계층 또는 slice_inter_layer_mfm_enable_flag가 0인 경우, 참조 계층의 움직임 정보를 이용하지 않고 collocated_from_l0_flag와 collocated_ref_idx를 사용하여 제2 계층 내의 리스트 방향과 대응 픽처를 알려 줄 수 있다.When the base layer or slice_inter_layer_mfm_enable_flag is 0, the list direction and corresponding picture within the second layer can be indicated using collocated_from_l0_flag and collocated_ref_idx without using the motion information of the reference layer.
본 발명의 또 다른 실시예에 따르면, 픽처가 N개의 인디펜던트 슬라이스(independent slice)로 분할되어 있을 경우, 각각의 슬라이스 세그먼트 헤더 내의 slice_inter_layer_mfm_enable_flag는 동일한 값을 가져야 하며, 첫번째 인디펜던트 슬라이스 세그먼트 헤더 내의 slice_inter_layer_mfm_enable_flag 값에 따라 픽처 당 한번의 움직임 정보 매핑 과정을 수행할 수 있다.According to another embodiment of the present invention, when a picture is divided into N independent slices, slice_inter_layer_mfm_enable_flag in each slice segment header must have the same value, and a motion information mapping process can be performed once per picture according to the slice_inter_layer_mfm_enable_flag value in the first independent slice segment header.
상술한 본 발명의 실시예들에서는, 상위 레벨에서 전송되는 ‘sps_inter_layer_mfm_enable_flag’가 움직임 정보 매핑 수행 여부를 알려주는 정보로 사용되었으나, 이 정보를 확장하여 계층 간 신택스 예측 여부를 알려주는 정보로 활용될 수 있다. 예를 들어, sps_inter_layer_mfm_enable_flag가 1인 경우, 움직임 정보 매핑 수행뿐만 아니라, 계층 간 신택스(움직임 정보) 예측을 수행할 수도 있다.In the embodiments of the present invention described above, the ‘sps_inter_layer_mfm_enable_flag’ transmitted at a higher level was used as information indicating whether motion information mapping is performed, but this information can be extended and utilized as information indicating whether inter-layer syntax prediction is performed. For example, when sps_inter_layer_mfm_enable_flag is 1, not only motion information mapping is performed, but also inter-layer syntax (motion information) prediction can be performed.
상술한 본 발명의 실시예들에서는, 움직임 정보 매핑 수행 여부를 알려주는 별도의 신택스를 사용하였지만, 별도의 신택스 전송 없이 계층 간 예측 수행에 관한 신택스 정보 값에 따라 움직임 정보 매핑을 수행할 수도 있다. In the embodiments of the present invention described above, a separate syntax for indicating whether motion information mapping is performed is used, but motion information mapping may also be performed according to a syntax information value regarding inter-layer prediction performance without transmitting a separate syntax.
본 발명에서는 상위 계층에서 시그널링되는 계층 간 예측 수행 여부를 알려주는 신택스 정보를 이용하여 움직임 정보 매핑 수행 여부를 판단할 수 있다. 상기 계층 간 예측 수행 여부를 알려주는 신택스 정보는 상위 레벨에서 시그널링될 수 있다. In the present invention, it is possible to determine whether motion information mapping is performed using syntax information that indicates whether inter-layer prediction is performed, which is signaled from a higher layer. The syntax information that indicates whether inter-layer prediction is performed can be signaled from a higher level.
여기서, 상위 레벨은 비디오 파라미터 세트(VPS: Video Parameter Set), 시퀀스 파라미터 세트(SPS: Sequence Parameter Set), 픽처 파라미터 세트(PPS: Picture Parameter Set), 슬라이스 세그먼트 헤더(Slice segment header) 등일 수 있다.Here, the upper level can be a video parameter set (VPS), a sequence parameter set (SPS), a picture parameter set (PPS), a slice segment header, etc.
본 발명의 일 실시예에 의하면, 표 11에서와 같이 VPS에서 계층 간 예측 수행 여부를 알려주는 신택스가 전송될 수 있다. According to one embodiment of the present invention, a syntax indicating whether inter-layer prediction is performed in a VPS may be transmitted as in Table 11.
표 11을 참조하면, VPS에서 계층 간 예측 수행 여부를 알려주는 신택스가 전송될 경우, no_inter_layer_pred_flag가 1이면 움직임 정보 매핑을 수행하지 않을 수 있으며, no_inter_layer_pred_flag가 0이면, 움직임 정보 매핑을 수행할 수 있다.Referring to Table 11, when a syntax indicating whether to perform inter-layer prediction is transmitted in VPS, if no_inter_layer_pred_flag is 1, motion information mapping may not be performed, and if no_inter_layer_pred_flag is 0, motion information mapping may be performed.
본 발명에서는 상위 계층에서 시그널링되는 계층 간 신택스 예측 수행 여부를 알려주는 신택스 정보를 이용하여 움직임 정보 매핑 수행 여부를 판단할 수 있다. 상기 계층 간 신택스 예측 수행 여부를 알려주는 신택스 정보는 상위 레벨에서 시그널링될 수 있다. In the present invention, it is possible to determine whether motion information mapping is performed using syntax information that indicates whether syntax prediction between layers signaled from a higher layer is performed. The syntax information that indicates whether syntax prediction between layers is performed can be signaled from a higher level.
여기서, 상위 레벨은 비디오 파라미터 세트(VPS: Video Parameter Set), 시퀀스 파라미터 세트(SPS: Sequence Parameter Set), 픽처 파라미터 세트(PPS: Picture Parameter Set), 슬라이스 세그먼트 헤더(Slice segment header) 등일 수 있다.Here, the upper level can be a video parameter set (VPS), a sequence parameter set (SPS), a picture parameter set (PPS), a slice segment header, etc.
본 발명의 일 실시예에 의하면, 표 12에서와 같이 PPS에서 계층 간 신택스 예측 수행 여부를 알려주는 신택스가 전송될 수 있다. According to one embodiment of the present invention, syntax indicating whether to perform inter-layer syntax prediction in PPS may be transmitted as in Table 12.
표 12를 참조하면, PPS에서 계층 간 신택스 예측 수행 여부를 알려주는 신택스가 전송될 경우, no_inter_layer_syntax_pred_flag가 0이면, 움직임 정보 매핑을 수행할 수 있으며, no_inter_layer_syntax_pred_flag가 1이면, 움직임 정보 매핑을 수행하지 않을 수 있다.Referring to Table 12, when a syntax indicating whether to perform inter-layer syntax prediction is transmitted in PPS, if no_inter_layer_syntax_pred_flag is 0, motion information mapping can be performed, and if no_inter_layer_syntax_pred_flag is 1, motion information mapping may not be performed.
본 발명의 다른 실시예에 의하면, 표 13에서와 같이 슬라이스 세그먼트 헤더에서 계층 간 신택스 예측 수행 여부를 알려주는 신택스가 전송될 수 있다. According to another embodiment of the present invention, syntax indicating whether to perform inter-layer syntax prediction may be transmitted in a slice segment header as in Table 13.
표 13을 참조하면, 슬라이스 세그먼트 헤더에서 계층 간 신택스 예측 수행 여부를 알려주는 신택스가 전송될 경우, no_inter_layer_syntax_pred_flag가 0이면, 움직임 정보 매핑을 수행할 수 있으며, no_inter_layer_syntax_pred_flag가 1이면, 움직임 정보 매핑을 수행하지 않을 수 있다.Referring to Table 13, when a syntax indicating whether to perform inter-layer syntax prediction is transmitted in the slice segment header, if no_inter_layer_syntax_pred_flag is 0, motion information mapping can be performed, and if no_inter_layer_syntax_pred_flag is 1, motion information mapping may not be performed.
다시 도 4를 참조하면, 부호화/복호화 장치는 제1 계층의 정보를 제2 계층의 참조 픽처 리스트에 추가하여 제2 계층의 영상을 부호화/복호화한다(S420).Referring again to FIG. 4, the encoding/decoding device adds information of the first layer to the reference picture list of the second layer and encodes/decodes an image of the second layer (S420).
즉, 부호화/복호화 장치는 상술한 단계 S400 ~ S410을 통해 제2 계층 영상 크기로 매핑된 제1 계층의 복호화된 샘플 값들과 움직임 정보들을 제2 계층의 현재 부호화/복호화 대상 영상을 위한 참조 픽처 리스트에 추가할 수 있으며, 추가된 제1 계층의 정보를 이용하여 제2 계층 영상의 참조 픽처 리스트를 구성할 수 있다. 그리고 부호화/복호화 장치는 상기 참조 픽처 리스트를 기반으로 제2 계층의 영상에 대해 예측 신호를 생성하는 인터 예측을 수행할 수 있다. That is, the encoding/decoding device can add the decoded sample values and motion information of the first layer, which are mapped to the second layer image size through the steps S400 to S410 described above, to the reference picture list for the current encoding/decoding target image of the second layer, and can configure the reference picture list of the second layer image using the added information of the first layer. In addition, the encoding/decoding device can perform inter prediction to generate a prediction signal for the image of the second layer based on the reference picture list.
제2 계층의 참조 픽처 리스트를 구성할 때, 제1 계층의 복호화된 영상은 제2 계층의 현재 부호화/복호화 대상 영상을 위한 참조 픽처 리스트의 마지막 위치에 추가될 수 있다. When configuring the reference picture list of the second layer, the decoded image of the first layer can be added to the last position of the reference picture list for the current encoding/decoding target image of the second layer.
또는, 제1 계층의 복호화된 영상은 제2 계층의 현재 부호화/복호화 대상 영상을 위한 참조 픽처 리스트의 특정 위치에 추가될 수 있다. 이때, 특정 위치는 상위 레벨(예를 들어, VPS, SPS, PPS, 슬라이스 세그먼트 헤더 등)에서 알려 줄 수 있으며, 혹은 추가 정보의 전송 없이 정해진 규약에 의해 특정 위치가 지정될 수도 있다. Alternatively, the decoded image of the first layer can be added to a specific location in the reference picture list for the current encoding/decoding target image of the second layer. At this time, the specific location can be notified at a higher level (e.g., VPS, SPS, PPS, slice segment header, etc.), or the specific location can be specified by a set convention without transmitting additional information.
또는, 제1 계층의 복호화된 영상은 제2 계층의 현재 부호화/복호화 대상 영상을 위한 참조 픽처 리스트 L0와 L1에 추가될 수 있다. 이 경우, 참조 픽처 리스트 L0와 L1에 추가되는 위치는 동일할 수도 있으며, 상이할 수도 있다. 예를 들어, 참조 픽처 리스트 L0에서는 첫번째 위치에 제1 계층의 복호화된 영상을 추가하고, 참조 픽처 리스트 L1에서는 마지막 위치에 제1 계층의 복호화된 영상을 추가할 수 있다. Alternatively, the decoded image of the first layer may be added to the reference picture lists L0 and L1 for the current encoding/decoding target image of the second layer. In this case, the positions added to the reference picture lists L0 and L1 may be the same or different. For example, the decoded image of the first layer may be added to the first position in the reference picture list L0, and the decoded image of the first layer may be added to the last position in the reference picture list L1.
또는, 제1 계층의 복호화된 영상은 제2 계층의 현재 부호화/복호화 대상 영상을 위한 참조 픽처 리스트 방향(L0와 L1) 중 어느 하나에 추가될 수 있다. 예를 들어, 제2 계층의 현재 부호화/복호화 대상 영상이 B 슬라이스로 부호화/복호화 되는 경우, 참조 픽처 리스트 L0 혹은 참조 픽처 리스트 L1에만 제1 계층의 복호화된 영상을 추가할 수 있다. Alternatively, the decoded image of the first layer can be added to either one of the reference picture list directions (L0 and L1) for the current encoding/decoding target image of the second layer. For example, if the current encoding/decoding target image of the second layer is encoded/decoded with a B slice, the decoded image of the first layer can be added only to the reference picture list L0 or the reference picture list L1.
이때, 특정 방향의 참조 픽처 리스트에 제1 계층의 복호화된 영상을 추가할 때, 상위 레벨(예를 들어, VPS, SPS, PPS, 슬라이스 세그먼트 헤더 등)에서 특정 방향의 참조 픽처 리스트 내 어느 위치에 추가될 것인지 위치를 알려 줄 있으며, 혹은 추가 정보의 전송 없이 정해진 규약에 의해 특정 위치가 지정될 수도 있다. At this time, when adding the decoded image of the first layer to the reference picture list of a specific direction, the position in the reference picture list of a specific direction to be added can be indicated at a higher level (e.g., VPS, SPS, PPS, slice segment header, etc.), or a specific position can be specified by a set convention without transmitting additional information.
또는, 제1 계층의 복호화된 영상은 예측 구조의 계층적 깊이(hierarchical depth) 정보를 이용하여 깊이에 따라 참조 픽처 리스트의 서로 다른 위치에 추가될 수 있다. 이때, 위치에 대한 정보는 상위 레벨(예를 들어, VPS, SPS, PPS, 슬라이스 세그먼트 헤더 등)에서 알려 줄 수 있다. 예를 들어, 제1 계층의 복호화된 영상은 계층적 깊이에 따라 갖는 시간 레벨(temporal_Id) 값을 기반으로 참조 픽처 리스트 내에 추가되는 위치를 달리 할 수 있다. 일예로, 시간 레벨(temporal_Id) 2 이상을 갖는 경우에, 참조 픽처 리스트의 마지막 위치에 제1 계층의 복호화된 영상을 추가할 수 있고, 시간 레벨(temporal_Id)이 2보다 작은 경우에, 참조 픽처 리스트의 첫번째 위치에 제1 계층의 복호화된 영상을 추가할 수 있다. 이때, 기준 시간 레벨 값은 상위 레벨(예를 들어, VPS, SPS, PPS, 슬라이스 세그먼트 헤더 등)에서 알려줄 수 있다. Alternatively, the decoded image of the first layer can be added to different positions in the reference picture list according to the depth using hierarchical depth information of the prediction structure. At this time, information about the position can be notified at a higher level (e.g., VPS, SPS, PPS, slice segment header, etc.). For example, the position at which the decoded image of the first layer is added in the reference picture list can be different based on the temporal level (temporal_Id) value according to the hierarchical depth. For example, when the temporal level (temporal_Id) is 2 or greater, the decoded image of the first layer can be added to the last position of the reference picture list, and when the temporal level (temporal_Id) is less than 2, the decoded image of the first layer can be added to the first position of the reference picture list. At this time, the reference temporal level value can be notified at a higher level (e.g., VPS, SPS, PPS, slice segment header, etc.).
상술한 제1 계층의 복호화된 영상은 제1 계층의 복호화된 샘플 값들뿐만 아니라, 제2 계층의 영상 크기로 매핑된 제1 계층의 복호화된 움직임 정보를 포함할 수 있다. The decoded image of the first layer described above may include not only the decoded sample values of the first layer, but also the decoded motion information of the first layer mapped to the image size of the second layer.
부호화/복호화 장치는 상술한 바와 같은 방법으로, 제1 계층의 복호화된 영상을 제2 계층의 현재 부호화/복호화 대상 영상을 위한 참조 픽처 리스트에 추가한 후, 통상의 인터 예측 방법으로 제2 계층의 현재 부호화/복호화 대상 영상에 대한 예측을 수행할 수 있다. The encoding/decoding device can perform prediction on the current encoding/decoding target image of the second layer using a conventional inter prediction method after adding the decoded image of the first layer to the reference picture list for the current encoding/decoding target image of the second layer in the same manner as described above.
제1 계층의 복호화된 영상을 제2 계층의 현재 부호화 대상 영상의 참조 신호로 사용하여 예측을 수행하는 경우(인터 레이어 예측을 수행하는 경우), 부호화 장치는 움직임 예측 과정 없이 현재 부호화 대상 영상 내 예측 블록과 동일한 위치의 제1 계층 샘플 값을 예측 신호로 사용할 수 있다. 이 경우, 부호화 장치는 해당 블록의 움직임 정보(예를 들어, 움직임 벡터 차분 값, 움직임 예측 후보 플래그 등)를 전송하지 않을 수 있다. When performing prediction using the decoded image of the first layer as a reference signal of the current encoding target image of the second layer (when performing interlayer prediction), the encoding device can use the first layer sample value at the same position as the prediction block in the current encoding target image as the prediction signal without a motion prediction process. In this case, the encoding device may not transmit motion information of the corresponding block (e.g., motion vector difference value, motion prediction candidate flag, etc.).
복호화 장치는 제2 계층의 참조 픽처 인덱스가 지시하는 영상이 참조 픽처 리스트 내 제1 계층의 복호화된 영상인 경우, 제2 계층의 현재 복호화 대상 영상 내 예측 블록에 대한 움직임 정보(예를 들어, 움직임 벡터 차분 값, 움직임 예측 후보 플래그 등)를 복호화하지 않고, 현재 복호화 대상 영상 내 예측 블록과 동일한 위치의 제1 계층 샘플 값을 예측 신호로 사용할 수 있다. If the image indicated by the reference picture index of the second layer is a decoded image of the first layer in the reference picture list, the decoding device may use the first layer sample value at the same position as the prediction block in the current decoding target image as a prediction signal without decoding motion information (e.g., a motion vector difference value, a motion prediction candidate flag, etc.) for the prediction block in the current decoding target image of the second layer.
제2 계층 현재 복호화 대상 블록의 참조 픽처 인덱스가 지시하는 영상이 참조 픽처 리스트 내 제1 계층의 복호화된 영상인 경우(인터 레이어 예측이 수행되는 경우), 복호화 장치는 상위 레벨(예를 들어, VPS, SPS, PPS, 슬라이스 세그먼트 헤더 등)에서 전송되는 정보를 기반으로 하여, 제2 계층의 현재 복호화 대상 블록에 대한 움직임 정보(예를 들어, 움직임 벡터 차분 값, 움직임 예측 후보 플래그 등)를 복호화할지 여부를 판단하여 제2 계층의 현재 복호화 대상 블록에 대한 예측을 수행할 수 있다. If the image indicated by the reference picture index of the current decoding target block of the second layer is a decoded image of the first layer in the reference picture list (if interlayer prediction is performed), the decoding device can determine whether to decode motion information (e.g., a motion vector difference value, a motion prediction candidate flag, etc.) for the current decoding target block of the second layer based on information transmitted from a higher level (e.g., VPS, SPS, PPS, slice segment header, etc.) and perform prediction for the current decoding target block of the second layer.
표 14는 계층 간 움직임 벡터가 (0, 0) 값을 가지는지 여부를 지시하는 정보(sps_inter_layer_mv_zero_flag)가 SPS에서 전송되는 신택스의 일예를 나타낸다. Table 14 shows an example of a syntax in which information (sps_inter_layer_mv_zero_flag) indicating whether the inter-layer motion vector has the value (0, 0) is transmitted in SPS.
표 14를 참조하면, SPS에서 전송되는 sps_inter_layer_mv_zero_flag가 1의 값을 가지며, 현재 복호화 대상 블록의 참조 픽처 인덱스가 참조 픽처 리스트 내에서 제1 계층의 복호화된 영상을 지시할 경우, 복호화 장치는 움직임 벡터 차분 값과 움직임 예측 후보 플래그를 복호화하지 않고 현재 복호화 대상 블록의 위치와 동일한 위치를 갖는 복호화된 제1 계층 영상의 샘플 값을 현재 복호화 대상 블록에 대한 예측 신호로 사용할 수 있다.Referring to Table 14, if sps_inter_layer_mv_zero_flag transmitted from SPS has a value of 1 and the reference picture index of the current decoding target block indicates a decoded image of the first layer within the reference picture list, the decoding device may use a sample value of the decoded first layer image having the same position as the position of the current decoding target block as a prediction signal for the current decoding target block without decoding the motion vector differential value and the motion prediction candidate flag.
SPS에서 전송되는 sps_inter_layer_mv_zero_flag가 0의 값을 가지며, 현재 복호화 대상 블록의 참조 픽처 인덱스가 참조 픽처 리스트 내에서 제1 계층의 복호화된 영상을 지시할 경우, 복호화 장치는 움직임 벡터 차분 값과 움직임 예측 후보 플래그를 복호화한 후 움직임 벡터 값을 구하고, 상기 구해진 움직임 벡터 값의 위치에 있는 복호화된 제1 계층 영상의 샘플 값을 현재 복호화 대상 블록에 대한 예측 신호로 사용할 수 있다. If the sps_inter_layer_mv_zero_flag transmitted from the SPS has a value of 0 and the reference picture index of the current decoding target block indicates a decoded image of the first layer within the reference picture list, the decoding device decodes the motion vector differential value and the motion prediction candidate flag, and then obtains a motion vector value, and can use the sample value of the decoded first layer image at the position of the obtained motion vector value as a prediction signal for the current decoding target block.
한편, 부호화 장치에서는 매핑된 제1 계층의 움직임 정보를 제2 계층의 현재 부호화 대상 블록에 대한 시간 움직임 벡터 후보로 사용하기 위해서, 제1 계층의 복호화된 영상을 제2 계층의 시간 움직임 벡터 예측을 위한 대응 영상(collocated picture)로 사용할 수 있다. 이 경우, 부호화 장치는 슬라이스 세그먼트 헤더 내의 내의 대응 픽처를 지시하는 정보(collocated_ref_idx)를 통해 제1계층의 복호화된 영상을 대응 영상으로 지정할 수 있다.Meanwhile, in order to use the motion information of the mapped first layer as a temporal motion vector candidate for the current encoding target block of the second layer, the encoding device may use the decoded image of the first layer as a collocated picture for predicting the temporal motion vector of the second layer. In this case, the encoding device may designate the decoded image of the first layer as the collocated picture through information (collocated_ref_idx) indicating the corresponding picture in the slice segment header.
부호화기에서 전송된 슬라이스 세그먼트 헤더 내의 대응 픽처를 지시하는 정보(collocated_ref_idx)가 제1 계층의 복호화된 영상을 지시하는 경우, 복호화 장치에서는 매핑된 제1 계층의 움직임 정보를 제2 계층의 시간 움직임 벡터 후보로 사용할 수 있다. When information (collocated_ref_idx) indicating a corresponding picture in a slice segment header transmitted from an encoder indicates a decoded image of the first layer, the decoding device can use the mapped motion information of the first layer as a temporal motion vector candidate of the second layer.
매핑된 제1 계층의 움직임 정보를 제2 계층의 시간 움직임 벡터 후보로 사용하는 경우, 부호화/복호화 장치는 상기 매핑된 제1 계층의 움직임 정보, 즉 참조 픽처 POC, 참조 픽처 리스트, 참조 픽처의 픽처 타입(단기 참조 픽처, 장기 참조 픽처) 정보 중 하나 이상을 이용할 수 있으며, 하나 이상의 매핑된 제1 계층의 움직임 정보를 이용함으로써 제2 계층의 움직임 벡터를 시간적 거리에 맞게 스케일링(scaling)하여 사용할 수 있다. When the motion information of the mapped first layer is used as a temporal motion vector candidate of the second layer, the encoding/decoding device can use one or more of the motion information of the mapped first layer, that is, the reference picture POC, the reference picture list, and the picture type (short-term reference picture, long-term reference picture) information of the reference picture, and by using the motion information of one or more mapped first layers, the motion vector of the second layer can be scaled and used according to the temporal distance.
상위 레벨에서 제1 계층의 움직임 정보 매핑을 허용하지 않고 복호화된 제1 계층 영상의 참조 샘플 값들만 참조 픽처 리스트에 추가하여 예측을 수행하는 경우, 대응 픽처를 지시하는 정보(collocated_ref_idx)는 제1 계층의 복호화된 영상을 대응 픽처로 지시하지 않도록 표준 문서 상에 제약을 둘 수 있다. When prediction is performed by adding only reference sample values of the decoded first layer image to the reference picture list without allowing motion information mapping of the first layer at the upper level, a restriction can be placed in the standard document so that the information indicating the corresponding picture (collocated_ref_idx) does not indicate the decoded first layer image as the corresponding picture.
매핑된 제1 계층의 움직임 정보를 제2 계층의 움직임 정보로 사용하는 다른 예로, 매핑된 제1 계층의 움직임 정보를 제2 계층의 시간 움직임 벡터 후보가 아닌 추가적인 후보 모드로 사용할 수도 있다. 이 경우, 제2 계층의 시간 움직임 벡터 후보가 제2 계층의 참조 픽처로부터 유도될 수 있도록 하기 위해, 대응 픽처를 지시하는 정보(collocated_ref_idx)는 제1 계층의 복호화된 영상을 대응 픽처로 지시하지 않도록 표준 문서 상에 제약을 둘 수 있다. 또한, 추가적인 후보 모드로 매핑된 제1 계층의 움직임 정보를 사용하기 위해, 부호화 장치는 추가적으로 참조 픽처 리스트 내의 제1 계층의 매핑된 영상 위치를 알려줄 수 있는 인덱스(예를 들어, base_ref_idx)를 슬라이스 세그먼트 헤더 등에서 전송할 수 있다. 참조 픽처 리스트 내 추가적인 후모 모드의 위치는 부호화 장치와 복호화 장치에 동일하게 적용될 수 있다. As another example of using the motion information of the mapped first layer as the motion information of the second layer, the motion information of the mapped first layer may be used as an additional candidate mode other than the temporal motion vector candidate of the second layer. In this case, in order to allow the temporal motion vector candidate of the second layer to be derived from the reference picture of the second layer, the information indicating the corresponding picture (collocated_ref_idx) may be restricted in the standard document so as not to indicate the decoded image of the first layer as the corresponding picture. In addition, in order to use the motion information of the first layer mapped as the additional candidate mode, the encoding device may additionally transmit an index (e.g., base_ref_idx) that can indicate the position of the mapped image of the first layer in the reference picture list, such as in the slice segment header. The position of the additional posteriors in the reference picture list may be applied equally to the encoding device and the decoding device.
상술한 본 발명에 따른 방법은 컴퓨터에서 실행되기 위한 프로그램으로 제작되어 컴퓨터가 읽을 수 있는 기록 매체에 저장될 수 있으며, 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등이 있으며, 또한 캐리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다.The method according to the present invention described above can be produced as a program to be executed on a computer and stored in a computer-readable recording medium. Examples of the computer-readable recording medium include a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, an optical data storage device, and the like, and also includes a recording medium implemented in the form of a carrier wave (e.g., transmission via the Internet).
컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고, 상기 방법을 구현하기 위한 기능적인(function) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.The computer-readable recording medium can be distributed across network-connected computer systems so that the computer-readable code can be stored and executed in a distributed manner. In addition, functional programs, codes, and code segments for implementing the above method can be easily inferred by programmers in the technical field to which the present invention belongs.
상술한 실시예들에서, 방법들은 일련의 단계 또는 블록으로서 순서도를 기초로 설명되고 있으나, 본 발명은 단계들의 순서에 한정되는 것은 아니며, 어떤 단계는 상술한 바와 다른 단계와 다른 순서로 또는 동시에 발생할 수 있다. 또한, 당해 기술 분야에서 통상의 지식을 가진 자라면 순서도에 나타난 단계들이 배타적이지 않고, 다른 단계가 포함되거나, 순서도의 하나 또는 그 이상의 단계가 본 발명의 범위에 영향을 미치지 않고 삭제될 수 있음을 이해할 수 있을 것이다.In the above-described embodiments, the methods are described based on the flowchart as a series of steps or blocks, but the present invention is not limited to the order of the steps, and some steps may occur in a different order or simultaneously with other steps than those described above. In addition, those skilled in the art will understand that the steps shown in the flowchart are not exclusive, and other steps may be included, or one or more steps in the flowchart may be deleted without affecting the scope of the present invention.
이상의 설명은 본 발명의 기술 사상을 예시적으로 설명한 것에 불과한 것으로서, 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자라면 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 다양한 수정 및 변형이 가능할 것이다. 따라서, 본 발명에 개시된 실시 예들은 본 발명의 기술 사상을 한정하기 위한 것이 아니라 설명하기 위한 것이고, 이러한 실시 예에 의하여 본 발명의 기술 사상의 범위가 한정되는 것은 아니다. 본 발명의 보호범위는 특허청구범위에 의하여 해석되어야 하며, 그와 동등한 범위 내에 있는 모든 기술 사상은 본 발명의 권리범위에 포함되는 것으로 해석되어야 할 것이다. The above description is merely an illustrative description of the technical idea of the present invention, and those skilled in the art will appreciate that various modifications and variations may be made without departing from the essential characteristics of the present invention. Accordingly, the embodiments disclosed in the present invention are not intended to limit the technical idea of the present invention but to explain it, and the scope of the technical idea of the present invention is not limited by these embodiments. The protection scope of the present invention should be interpreted by the claims, and all technical ideas within a scope equivalent thereto should be interpreted as being included in the scope of the rights of the present invention.
Claims (5)
제1 계층의 픽처를 복호화하는 단계;
상기 제1 계층의 픽처가 현재 복호화 대상 블록을 포함하는 제2 계층의 픽처가 참조하는 픽처인 경우, 상기 제1 계층의 픽처를 상기 제2 계층의 픽처에 대한 참조 픽처 리스트에 추가하는 단계, 상기 제1 계층은, 상기 제2 계층과 상이한 계층임; 및
상기 참조 픽처 리스트에 포함된 참조 픽처들 중 하나를 대응 픽처로 선택하는 단계를 포함하되,
상기 참조 픽처 리스트는, L0 참조 픽처 리스트 또는 L1 참조 픽처 리스트이고,
비트스트림을 통해 복호화되는 플래그에 기초하여, 상기 대응 픽처가 상기 L0 참조 픽처 리스트 또는 상기 L1 참조 픽처 리스트에 포함되는지 여부가 결정되고,
상기 제1 계층의 픽처와 상기 제2 계층의 픽처가 상이한 크기를 가지는 경우, 상기 제1 계층의 픽처는, 상기 대응 픽처로 결정되지 않고,
상기 대응 픽처를 지시하는 정보는 상기 참조 픽처 리스트에 포함된 참조 픽처들 중 상기 제1 계층의 픽처를 지시하지 않는 것을 특징으로 하는, 영상 복호화 방법.In an image decoding method that performs inter-layer prediction,
Step of decoding the picture of the first layer;
If the picture of the first layer is a picture referenced by a picture of the second layer including the current decoding target block, a step of adding the picture of the first layer to a reference picture list for the picture of the second layer, the first layer being a different layer from the second layer; and
Including a step of selecting one of the reference pictures included in the above reference picture list as a corresponding picture,
The above reference picture list is an L0 reference picture list or an L1 reference picture list,
Based on the flag decoded through the bitstream, it is determined whether the corresponding picture is included in the L0 reference picture list or the L1 reference picture list,
If the picture of the first layer and the picture of the second layer have different sizes, the picture of the first layer is not determined as the corresponding picture.
A video decoding method, characterized in that the information indicating the corresponding picture does not indicate a picture of the first layer among the reference pictures included in the reference picture list.
상기 제1 계층의 픽처는, 상기 제2 계층의 픽처와 POC (Picture Order Count)가 동일한 경우, 상기 참조 픽처 리스트에 추가되는 것을 특징으로 하는, 영상 복호화 방법.In paragraph 1,
A video decoding method, characterized in that a picture of the first layer is added to the reference picture list when the picture has the same POC (Picture Order Count) as a picture of the second layer.
상기 제1 계층의 픽처가, 상기 제2 계층의 픽처가 참조하는 픽처인지 여부는 상기 제2 계층 픽처의 레이어 아이디에 기초하여 결정되는 것을 특징으로 하는, 영상 복호화 방법.In paragraph 1,
A video decoding method, characterized in that whether the picture of the first layer is a picture referenced by the picture of the second layer is determined based on the layer ID of the picture of the second layer.
제1 계층의 픽처를 복원하는 단계;
상기 제1 계층의 픽처가 현재 부호화 대상 블록을 포함하는 제2 계층의 픽처가 참조하는 픽처인 경우, 상기 제1 계층의 픽처를, 상기 제2 계층이 픽처에 대한 참조 픽처 리스트에 추가하는 단계, 상기 제1 계층은, 상기 제2 계층과 상이한 계층임; 및
상기 참조 픽처 리스트에 포함된 참조 픽처들 중 하나를 대응 픽처로 선택하는 단계를 포함하되,
상기 참조 픽처 리스트는, L0 참조 픽처 리스트 또는 L1 참조 픽처 리스트이고,
상기 대응 픽처가 상기 L0 참조 픽처 리스트 또는 상기 L1 참조 픽처 리스트에 포함되는지 여부를 나타내는 플래그가 비트스트림에 부호화되고,
상기 제1 계층의 픽처와 상기 제2 계층의 픽처가 상이한 크기를 가지는 경우, 상기 제1 계층의 픽처는, 상기 대응 픽처로 결정되지 않고,
상기 대응 픽처를 지시하는 정보는 상기 참조 픽처 리스트에 포함된 참조 픽처들 중 상기 제1 계층의 픽처를 지시하지 않는 것을 특징으로 하는, 영상 부호화 방법.In an image encoding method for performing inter-layer prediction,
Step of restoring the picture of the first layer;
If the picture of the first layer is a picture referenced by a picture of the second layer including the current encoding target block, a step of adding the picture of the first layer to a reference picture list for the picture of the second layer, the first layer being a different layer from the second layer; and
Including a step of selecting one of the reference pictures included in the above reference picture list as a corresponding picture,
The above reference picture list is an L0 reference picture list or an L1 reference picture list,
A flag indicating whether the corresponding picture is included in the L0 reference picture list or the L1 reference picture list is encoded in the bitstream,
If the picture of the first layer and the picture of the second layer have different sizes, the picture of the first layer is not determined as the corresponding picture.
A video encoding method, characterized in that the information indicating the corresponding picture does not indicate a picture of the first layer among the reference pictures included in the reference picture list.
상기 영상 부호화 방법은,
제1 계층의 픽처를 복원하는 단계;
상기 제1 계층의 픽처가 현재 부호화 대상 블록을 포함하는 제2 계층의 픽처가 참조하는 픽처인 경우, 상기 제1 계층의 픽처를, 상기 제2 계층이 픽처에 대한 참조 픽처 리스트에 추가하는 단계, 상기 제1 계층은, 상기 제2 계층과 상이한 계층임; 및
상기 참조 픽처 리스트에 포함된 참조 픽처들 중 하나를 대응 픽처로 선택하는 단계를 포함하되,
상기 참조 픽처 리스트는, L0 참조 픽처 리스트 또는 L1 참조 픽처 리스트이고,
상기 대응 픽처가 상기 L0 참조 픽처 리스트 또는 상기 L1 참조 픽처 리스트에 포함되는지 여부를 나타내는 플래그가 상기 비트스트림에 부호화되고,
상기 제1 계층의 픽처와 상기 제2 계층의 픽처가 상이한 크기를 가지는 경우, 상기 제1 계층의 픽처는, 상기 대응 픽처로 결정되지 않고,
상기 대응 픽처를 지시하는 정보는 상기 참조 픽처 리스트에 포함된 참조 픽처들 중 상기 제1 계층의 픽처를 지시하지 않는 것을 특징으로 하는, 영상 부호화 방법에 의해 생성된 비트스트림을 저장하는 기록매체.In a recording medium storing a bitstream generated by a video encoding method,
The above image encoding method is,
Step of restoring the picture of the first layer;
If the picture of the first layer is a picture referenced by a picture of the second layer including the current encoding target block, a step of adding the picture of the first layer to a reference picture list for the picture of the second layer, the first layer being a different layer from the second layer; and
Including a step of selecting one of the reference pictures included in the above reference picture list as a corresponding picture,
The above reference picture list is an L0 reference picture list or an L1 reference picture list,
A flag indicating whether the corresponding picture is included in the L0 reference picture list or the L1 reference picture list is encoded in the bitstream,
If the picture of the first layer and the picture of the second layer have different sizes, the picture of the first layer is not determined as the corresponding picture.
A recording medium storing a bitstream generated by a video encoding method, characterized in that the information indicating the corresponding picture does not indicate a picture of the first layer among the reference pictures included in the reference picture list.
Applications Claiming Priority (9)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR20130037106 | 2013-04-04 | ||
KR1020130037106 | 2013-04-04 | ||
KR1020130039356 | 2013-04-10 | ||
KR20130039356 | 2013-04-10 | ||
KR1020130081199 | 2013-07-10 | ||
KR1020130081199A KR20140121315A (en) | 2013-04-04 | 2013-07-10 | Method and apparatus for image encoding and decoding based on multi-layer using reference picture list |
KR20130082577A KR20140121316A (en) | 2013-04-04 | 2013-07-15 | Method and apparatus for image encoding and decoding based on multi-layer using reference picture list |
KR1020130082577 | 2013-07-15 | ||
KR1020230026886A KR102602633B1 (en) | 2013-04-04 | 2023-02-28 | Method and apparatus for image encoding/decoding |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020230026886A Division KR102602633B1 (en) | 2013-04-04 | 2023-02-28 | Method and apparatus for image encoding/decoding |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20230161912A KR20230161912A (en) | 2023-11-28 |
KR102722391B1 true KR102722391B1 (en) | 2024-10-25 |
Family
ID=78866405
Family Applications (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210167537A Active KR102418524B1 (en) | 2013-04-04 | 2021-11-29 | Method and apparatus for image encoding/decoding |
KR1020220081983A Active KR102506469B1 (en) | 2013-04-04 | 2022-07-04 | Method and apparatus for image encoding/decoding |
KR1020230026886A Active KR102602633B1 (en) | 2013-04-04 | 2023-02-28 | Method and apparatus for image encoding/decoding |
KR1020230155363A Active KR102722391B1 (en) | 2013-04-04 | 2023-11-10 | Method and apparatus for image encoding/decoding |
Family Applications Before (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020210167537A Active KR102418524B1 (en) | 2013-04-04 | 2021-11-29 | Method and apparatus for image encoding/decoding |
KR1020220081983A Active KR102506469B1 (en) | 2013-04-04 | 2022-07-04 | Method and apparatus for image encoding/decoding |
KR1020230026886A Active KR102602633B1 (en) | 2013-04-04 | 2023-02-28 | Method and apparatus for image encoding/decoding |
Country Status (1)
Country | Link |
---|---|
KR (4) | KR102418524B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102774217B1 (en) | 2023-11-21 | 2025-02-26 | 전남대학교산학협력단 | Encoding/decoding methods and devices in an multi-mode orthogonal frequency division multiplexing with index modulation for communication systems |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103765899B (en) * | 2011-06-15 | 2018-03-06 | 韩国电子通信研究院 | For coding and decoding the method for telescopic video and using its equipment |
KR101979284B1 (en) * | 2011-10-26 | 2019-05-17 | 인텔렉추얼디스커버리 주식회사 | Method and apparatus for scalable video coding using inter prediction mode |
-
2021
- 2021-11-29 KR KR1020210167537A patent/KR102418524B1/en active Active
-
2022
- 2022-07-04 KR KR1020220081983A patent/KR102506469B1/en active Active
-
2023
- 2023-02-28 KR KR1020230026886A patent/KR102602633B1/en active Active
- 2023-11-10 KR KR1020230155363A patent/KR102722391B1/en active Active
Non-Patent Citations (3)
Title |
---|
Hahyun Lee, et al.., ‘On signaling the syntax ‘sps_inter_layer_mfm_enable_flag’’, (JCTVC-M120), JCT-VC of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, 13th Meeting: Incheon, KR, (2013.04.18.) |
Jianle Chen, et al.., ‘SHVC Test Model 1 (SHM 1)’, (JCTVC-L1007_V3), JCT-VC of ITU-T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, 12th Meeting: Geneva, CH, (2013.01.14.) |
이범식 외 4, ‘스케일러블 비디오 부호화에서 공간 계층간 움직임 벡터 예측을 이용한 고속 모드 결정’, |
Also Published As
Publication number | Publication date |
---|---|
KR102418524B1 (en) | 2022-07-07 |
KR20220103661A (en) | 2022-07-22 |
KR20230161912A (en) | 2023-11-28 |
KR102602633B1 (en) | 2023-11-20 |
KR102506469B1 (en) | 2023-03-06 |
KR20210149673A (en) | 2021-12-09 |
KR20230034281A (en) | 2023-03-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11778206B2 (en) | Image encoding/decoding method and device | |
JP6166287B2 (en) | Inter-layer prediction method and apparatus using the same | |
KR20130037193A (en) | Method and apparatus for scalable encoding and decoding | |
US11843773B2 (en) | Video decoding method and apparatus using the same | |
US20250063181A1 (en) | Image encoding/decoding method and device | |
KR102722391B1 (en) | Method and apparatus for image encoding/decoding | |
KR102356481B1 (en) | Method and Apparatus for Video Encoding and Video Decoding | |
KR102219841B1 (en) | Method and Apparatus for Video Encoding and Video Decoding | |
US20150010083A1 (en) | Video decoding method and apparatus using the same | |
KR102271878B1 (en) | Video encoding and decoding method and apparatus using the same | |
KR102400485B1 (en) | Video decoding method and apparatus using the same | |
KR102325977B1 (en) | Video decoding method and apparatus using the same |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A107 | Divisional application of patent | ||
PA0107 | Divisional application |
Comment text: Divisional Application of Patent Patent event date: 20231110 Patent event code: PA01071R01D Filing date: 20230228 Application number text: 1020230026886 |
|
PA0201 | Request for examination | ||
PG1501 | Laying open of application | ||
E701 | Decision to grant or registration of patent right | ||
PE0701 | Decision of registration |
Patent event code: PE07011S01D Comment text: Decision to Grant Registration Patent event date: 20240722 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20241022 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20241022 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration |