KR20110112165A - Method and apparatus for video encoding using dynamic-range trasformation, method and apparatus for video decoding using dynamic-range transformation - Google Patents

Method and apparatus for video encoding using dynamic-range trasformation, method and apparatus for video decoding using dynamic-range transformation Download PDF

Info

Publication number
KR20110112165A
KR20110112165A KR1020100056194A KR20100056194A KR20110112165A KR 20110112165 A KR20110112165 A KR 20110112165A KR 1020100056194 A KR1020100056194 A KR 1020100056194A KR 20100056194 A KR20100056194 A KR 20100056194A KR 20110112165 A KR20110112165 A KR 20110112165A
Authority
KR
South Korea
Prior art keywords
dynamic range
value
limit value
data
depth
Prior art date
Application number
KR1020100056194A
Other languages
Korean (ko)
Other versions
KR101710623B1 (en
Inventor
엘레나 알쉬나
알렉산더 알쉰
한우진
이태미
홍윤미
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to US13/079,982 priority Critical patent/US9100661B2/en
Priority to PCT/KR2011/002372 priority patent/WO2011126272A2/en
Publication of KR20110112165A publication Critical patent/KR20110112165A/en
Application granted granted Critical
Publication of KR101710623B1 publication Critical patent/KR101710623B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

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

Abstract

입력 비디오의 컨텐트에 기반하여 현재 프레임의 다이나믹 레인지를 변환한 영상 데이터를 이용하여, 현재 프레임에 대한 인트라 예측 및 움직임 추정을 통한 인터 예측을 수행하고, 인트라 예측 및 인터 예측에 의해 생성된 레지듀얼 데이터에 대해 주파수변환을 수행하고, 주파수변환에 의해 생성된 변환 계수에 대해 양자화를 수행하여 양자화된 변환 계수에 대해 엔트로피 부호화를 수행하는, 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법이 개시된다.Using image data obtained by converting the dynamic range of the current frame based on the content of the input video, inter prediction through intra prediction and motion estimation for the current frame is performed, and residual data generated by intra prediction and inter prediction. A video encoding method using a content-based dynamic range transform, which performs a frequency transform on the quantized transform, performs quantization on the transform coefficients generated by the frequency transform, and performs entropy encoding on the quantized transform coefficients.

Description

컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법과 그 장치, 및 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 방법과 그 장치{Method and apparatus for video encoding using dynamic-range trasformation, method and apparatus for video decoding using dynamic-range transformation}Method and apparatus for video encoding using content-based dynamic range transformation, and apparatus and method and apparatus for video decoding using content-based dynamic range transformation, method and apparatus for video decoding using dynamic-range transformation}

본 발명은 비디오의 부호화 및 복호화에 관한 것이다.The present invention relates to the encoding and decoding of video.

고해상도 또는 고화질 비디오 컨텐트를 재생, 저장할 수 있는 하드웨어의 개발 및 보급에 따라, 고해상도 또는 고화질 비디오 컨텐트를 효과적으로 부호화하거나 복호화하는 비디오 코덱의 필요성이 증대하고 있다. 기존의 비디오 코덱에 따르면, 비디오는 소정 크기의 매크로블록에 기반하여 제한된 부호화 방식에 따라 부호화되고 있다.With the development and dissemination of hardware capable of playing and storing high resolution or high definition video content, there is an increasing need for a video codec for efficiently encoding or decoding high resolution or high definition video content. According to the existing video codec, video is encoded according to a limited encoding method based on a macroblock of a predetermined size.

디지털 비디오 캡쳐 장치는 고정된 비트뎁스(bit-depth)에 기반한 픽셀값의 비디오 데이터를 획득한다. 부호화 및 복호화 프로세스 중 연산의 정확성을 향상시키기 위해, 픽셀값의 비트뎁스를 일시적으로 확장하는 기법 등이 이용되고 있다.The digital video capture device obtains video data of pixel values based on a fixed bit-depth. In order to improve the accuracy of operations during the encoding and decoding process, a technique of temporarily extending the bit depth of a pixel value is used.

본 발명은, 컨텐트에 기반하여 다이나믹 레인지가 변환된 비디오의 부호화 및 복호화에 관한 것이다.The present invention relates to encoding and decoding of video having a dynamic range converted based on content.

본 발명의 일 실시예에 따라 컨텐트에 기반하는 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법은, 입력 비디오의 컨텐트에 기반하는 현재 프레임의 다이나믹 레인지를 변환한 영상 데이터를 이용하여, 인트라 예측 및 움직임 추정을 통한 인터 예측을 수행하는 단계; 상기 인트라 예측 및 인터 예측에 의해 생성된 레지듀얼 데이터에 대해 주파수변환을 수행하고, 상기 주파수변환에 의해 생성된 변환 계수에 대해 양자화를 수행하는 단계; 및 상기 양자화된 변환 계수에 대해 엔트로피 부호화를 수행하고, 상기 현재 프레임에 대한 부호화된 데이터를 포함하는 비트스트림을 출력하는 단계를 포함한다.According to an embodiment of the present invention, a video encoding method using content-based dynamic range transformation uses intra prediction and motion estimation using image data obtained by converting a dynamic range of a current frame based on content of an input video. Performing inter prediction; Performing frequency transform on the residual data generated by the intra prediction and inter prediction, and performing quantization on the transform coefficients generated by the frequency transform; And performing entropy encoding on the quantized transform coefficients, and outputting a bitstream including encoded data for the current frame.

일 실시예에 따른 상기 인트라 예측 및 인터 예측 수행 단계는, 픽셀값의 현재 비트 뎁스(bit depth)로 표현 가능한 최대한계값 내지 최소한계값의 범위로, 상기 현재 프레임의 픽셀값들을 확장하도록 다이나믹 레인지가 변환된 영상 데이터를 이용하여 상기 인트라 예측 및 상기 인터 예측을 수행할 수 있다.In the performing of the intra prediction and the inter prediction according to an embodiment, the dynamic range may be extended so as to extend the pixel values of the current frame to a range from a maximum value to a minimum value that can be expressed as a current bit depth of a pixel value. The intra prediction and the inter prediction may be performed using the converted image data.

일 실시예에 따른 상기 인트라 예측 및 인터 예측 수행 단계는, 상기 현재 프레임의 픽셀값들 중 상한값보다 큰 값을 상기 최대한계값에 대응하도록 변환하고, 상기 현재 프레임의 픽셀값들 중 하한값보다 작은 값을 상기 최소한계값에 대응하도록 변환하고, 상기 현재 프레임의 픽셀값들 중 상기 상한값 및 상기 하한값 사이의 픽셀값들을 상기 최대한계값 및 상기 최소한계값 사이의 값에 일대일 대응하도록 변환할 수 있다. 일 실시예에 따른 상기 상한값 및 상기 하한값은, 각각 상기 현재 프레임의 픽셀값들 중 극대값 및 극소값일 수 있다.The performing of the intra prediction and the inter prediction according to an embodiment may include converting a value larger than an upper limit among pixel values of the current frame to correspond to the maximum value, and a value smaller than a lower limit among pixel values of the current frame. May be converted to correspond to the minimum value, and pixel values between the upper limit value and the lower limit value among the pixel values of the current frame may be converted to have a one-to-one correspondence with the value between the maximum limit value and the minimum value. The upper limit value and the lower limit value according to an embodiment may be the local maximum and local minimum among pixel values of the current frame, respectively.

일 실시예에 따른 상기 인트라 예측 및 인터 예측 수행 단계는, 상기 상한값 및 상기 하한값 사이의 픽셀값들에 대하여, 현재 픽셀값과 상기 하한값의 차이와 상기 최대한계값 및 상기 최대한계값의 차이의 곱을, 상기 상한값 및 상기 하한값의 차이로 나눈 값이 일대일 대응되도록 변환할 수 있다.The performing of the intra prediction and the inter prediction according to an embodiment may include: multiplying a difference between a current pixel value and the lower limit by the pixel value between the upper limit value and the lower limit value, and a difference between the maximum limit value and the maximum limit value. The value divided by the difference between the upper limit value and the lower limit value may be converted to correspond one-to-one.

일 실시에에 따라, 상기 상한값 및 상기 하한값 사이의 픽셀값들에 대하여 일대일 대응되는 픽셀값이, 현재 비트뎁스를 이용한 비트시프트에 의한 연산을 통해 출력될 수 있다.According to an exemplary embodiment, a pixel value corresponding one-to-one with respect to pixel values between the upper limit value and the lower limit value may be output through a bit shift operation using a current bit depth.

다른 실시예에 따른 상기 현재 비트뎁스는, 상기 비디오의 부복호화 과정 동안 내부적으로 확장된 비트뎁스일 수 있다. 다른 실시예에 따른 상기 현재 비트뎁스는, 다이나믹 레인지의 확장을 위한 제 1 비트뎁스 및 내부적으로 확장된 제 2 비트뎁스의 총합일 수 있다. 다른 실시예에 따른 상기 인트라 예측 및 인터 예측 수행 단계는, 상기 비디오의 픽셀값의 비트뎁스를 상기 제 2 비트뎁스만큼 확장하는 단계; 상기 제 2 비트뎁스만큼 확장된 비트뎁스의 중간 데이터에 대해 상기 제 1 비트뎁스만큼 다이나믹 레인지를 확장하는 단계; 및 상기 다이나믹 레인지가 확장된 데이터에 대해 상기 인트라 예측 및 인터 예측을 수행하는 단계를 포함할 수 있다. According to another embodiment, the current bit depth may be an internally extended bit depth during the video decoding process. According to another exemplary embodiment, the current bit depth may be a sum of a first bit depth and an internally extended second bit depth for extending the dynamic range. The performing of the intra prediction and the inter prediction according to another embodiment may include: extending a bit depth of a pixel value of the video by the second bit depth; Extending a dynamic range by the first bit depth with respect to intermediate data of the bit depth extended by the second bit depth; And performing the intra prediction and the inter prediction on the data having the extended dynamic range.

다른 실시예에 따른 상기 다이나믹 레인지 확장 단계는, 상기 중간 데이터 중 상한값보다 큰 값을 상기 최대한계값에 대응하도록 변환하고, 상기 현재 프레임의 픽셀값들 중 하한값보다 작은 값을 상기 최소한계값에 대응하도록 변환하고, 상기 중간 데이터 중 상기 상한값 및 상기 하한값 사이의 데이터를 상기 최대한계값 및 상기 최소한계값 사이의 값에 일대일 대응하도록 변환할 수 있다. 다른 실시예에 따른 상기 다이나믹 레인지 확장 단계는, 상기 상한값 및 상기 하한값 사이의 픽셀값들에 대하여 일대일 대응되는 픽셀값을, 상기 제 1 비트뎁스 및 상기 제 2 비트뎁스를 이용한 비트시프트에 의한 연산을 통해 출력할 수 있다. The dynamic range expansion step may include converting a value larger than an upper limit among the intermediate data to correspond to the maximum limit value, and corresponding to the minimum limit value that is smaller than a lower limit among pixel values of the current frame. The data between the upper limit value and the lower limit value of the intermediate data may be converted to correspond to the value between the maximum limit value and the minimum limit value in a one-to-one correspondence. According to another exemplary embodiment, the dynamic range expansion may include performing a pixel shift corresponding to the pixel values between the upper limit value and the lower limit value by bit shifting using the first bit depth and the second bit depth. Can be output via

일 실시예에 따른 상기 인트라 예측 및 인터 예측 수행 단계는, 상기 현재 프레임의 픽셀값들은 루마 성분 및 크로마 성분별로 다이나믹 레인지가 변환된 영상 데이터를 이용하여, 상기 인트라 예측 및 상기 인터 예측을 수행할 수 있다. In the performing of the intra prediction and the inter prediction according to an embodiment, the intra prediction and the inter prediction may be performed by using image data whose dynamic range is converted for each of the luma component and the chroma component of the pixel values of the current frame. have.

일 실시예에 따라, 상기 현재 프레임의 픽셀값들 중 상기 상한값 및 상기 하한값 사이의 픽셀값들이, 비선형 함수 관계를 따라 상기 최대한계값 및 상기 최소한계값 사이의 값에 일대일 대응하도록 변환될 수 있다. 일 실시예에 따라 상기 현재 프레임의 픽셀값들 중 상기 상한값 및 상기 하한값 사이의 픽셀값들이 소정 개수의 구간들로 분할되는 경우, 상기 구간별 픽셀값은 선형적으로 증가하는 구간별 기울기의 함수 관계에 따라 대응되는 결과값이 결정되고, 상기 구간들 중 연속하는 구간의 결과값들은 연속되어, 상기 모든 구간의 픽셀값들에 대한 결과값들이 상기 최대한계값 및 상기 최소한계값 사이의 값에 일대일 대응하도록 변환될 수 있다. According to an embodiment, pixel values between the upper limit value and the lower limit value among the pixel values of the current frame may be converted to have a one-to-one correspondence to the value between the maximum value and the minimum value according to a nonlinear function relationship. . According to an exemplary embodiment, when pixel values between the upper limit value and the lower limit value among the pixel values of the current frame are divided into a predetermined number of sections, the pixel value of each section linearly increases as a function of the section-by-section gradient. Corresponding result values are determined, and the result values of successive sections among the sections are continuous, so that the result values for pixel values of all the sections are one-to-one to the value between the maximum limit value and the minimum limit value. Can be converted to correspond.

일 실시에에 따라, 상기 상한값보다 크거나 상기 하한값보다 작은 현재 픽셀값은 절삭될 수 있다.According to one embodiment, the current pixel value larger than the upper limit value or smaller than the lower limit value may be truncated.

일 실시예에 따른 상기 상한값 및 상기 하한값은, 상기 입력 비디오의 영상 시퀀스, 프레임, 인트라 예측을 위한 프레임 세트, 영역 및 부호화 단위 중 하나의 데이터 단위별로 결정될 수 있다.The upper limit value and the lower limit value according to an embodiment may be determined for each data unit of an image sequence, a frame, a frame set for intra prediction, an area, and a coding unit of the input video.

일 실시예에 따른 상기 컨텐트에 기반하는 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법은, 상기 다이나믹 레인지의 변환에 대한 정보를 부호화하여 전송하는 단계를 더 포함할 수 있다.According to an embodiment, the video encoding method using the dynamic range transformation based on the content may further include encoding and transmitting information on the transformation of the dynamic range.

일 실시예에 따른 상기 다이나믹 레인지의 변환에 대한 정보는, 상기 입력 비디오의 컨텐트의 상한값 및 하한값에 대한 정보를 포함할 수 있다.The information on the conversion of the dynamic range according to an embodiment may include information about an upper limit value and a lower limit value of the content of the input video.

일 실시예에 따른 상기 다이나믹 레인지의 변환에 대한 정보는, 상기 입력 비디오의 컨텐트의 하한값, 및 상기 픽셀값의 최대한계값 및 최소한계값의 차이로부터 상기 상한값을 뺀 값에 대한 정보를 포함할 수 있다.The information on the conversion of the dynamic range according to an embodiment may include information about a lower limit value of the content of the input video and a value obtained by subtracting the upper limit value from a difference between the maximum value and the minimum value of the pixel value. have.

일 실시에에 따른 상기 인트라 예측 단계 및 인터 예측 수행 단계는, 상기 현재 프레임이 소정 최대 크기의 부호화 단위로 분할된 각각의 최대 부호화 단위에 대하여, 심도가 깊어짐에 따라 상기 최대 부호화 단위가 계층적으로 분할되어 축소된 영역별로, 적어도 하나의 심도별 부호화 단위마다 상기 인트라 예측 및 상기 인터 예측을 수행하고, 상기 주파수변환 및 양자화 수행 단계는, 각각의 최대 부호화 단위에 대해 상기 영역별로 적어도 하나의 심도별 부호화 단위마다 상기 주파수변환 및 상기 양자화를 수행하고, 상기 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법은, 상기 픽처의 원본 영상과의 최소 부호화 오차를 발생시키는 적어도 하나의 부호화 심도에 관한 정보를 포함하는 상기 부호화 심도의 부호화 단위에 대한 부호화 모드를 결정하는 단계를 더 포함하고, 상기 엔트로피 부호화 수행 단계는, 상기 결정된 부호화 심도 및 부호화 모드에 따른 부호화 결과인 부호화된 영상 데이터에 대해 엔트로피 부호화를 수행하여, 상기 결정된 부호화 심도 및 부호화 모드에 대한 정보 및 부호화된 영상 데이터를 포함하는 비트스트림을 출력할 수 있다.In the intra prediction step and the inter prediction step, the maximum coding unit is hierarchically as the depth is deepened for each maximum coding unit obtained by dividing the current frame into coding units having a predetermined maximum size. The intra prediction and the inter prediction are performed for each of at least one depth-based coding unit for each divided and reduced region, and the performing of the frequency transform and the quantization may include performing at least one depth for each region for each maximum coding unit. The video encoding method performing the frequency transformation and the quantization for each coding unit and using the dynamic range transformation based on the content includes information on at least one coded depth that generates a minimum coding error with an original image of the picture. For a coding unit of the coded depth The method may further include determining an encoding mode, and the performing the entropy encoding may include performing entropy encoding on the encoded image data that is an encoding result according to the determined encoding depth and the encoding mode, thereby determining the encoding depth and the encoding mode. The bitstream including the information about the encoded image data and the encoded information may be output.

본 발명의 일 실시예에 따라, 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 방법은, 수신된 비트스트림을 파싱하여 원본 비디오의 현재 프레임의 부호화된 데이터를 추출하는 단계; 상기 추출된 부호화된 데이터에 대해 엔트로피 복호화를 수행하여 데이터 심볼을 복원하는 단계; 상기 복원된 데이터 심볼에 대해, 역양자화 및 역주파수변환을 수행하여 상기 현재 프레임에 대한 레지듀얼 데이터를 복원하고, 상기 복원된 레지듀얼 데이터에 대해 인트라 예측 및 움직임 보상을 수행하여 영상 데이터를 복원하는 단계; 및 상기 복원된 영상 데이터에 대해 디블로킹 필터링을 수행하고, 상기 원본 비디오의 컨텐트를 기반으로 변환된 다이나믹 레인지를 복원함으로써, 상기 현재 프레임을 복원하는 단계를 포함한다.According to an embodiment of the present invention, a video decoding method using dynamic range transformation based on content includes: parsing a received bitstream to extract encoded data of a current frame of an original video; Restoring a data symbol by performing entropy decoding on the extracted encoded data; Reconstructing residual data for the current frame by performing inverse quantization and inverse frequency transformation on the reconstructed data symbol, and reconstructing image data by performing intra prediction and motion compensation on the reconstructed residual data step; And reconstructing the current frame by performing deblocking filtering on the reconstructed image data and reconstructing the dynamic range converted based on the content of the original video.

일 실시예에 따른 상기 현재 프레임 복원 단계는, 상기 복원된 영상 데이터에 대해, 픽셀값의 현재 비트 뎁스(bit depth)로 표현 가능한 최대한계값 내지 최소한계값의 범위로 확장되어 있는 복원 픽셀값을 상기 현재 프레임의 다이나믹 레인지로 복원할 수 있다.The reconstructing current frame may include reconstructing a pixel value extended from a maximum value to a minimum value that can be expressed as a current bit depth of a pixel value with respect to the restored image data. It may be restored to the dynamic range of the current frame.

일 실시예에 따른 상기 현재 프레임 복원 단계는, 상기 복원된 영상 데이터 중 상기 최대한계값 및 최소한계값을, 각각 상기 현재 프레임의 픽셀값들 중 상한값 및 하한값에 대응하도록 복원하고, 상기 복원된 영상 데이터 중 상기 최대한계값 및 최소한계값 사이의 값들을 상기 상한값 및 상기 하한값 사이의 값에 일대일 대응하도록 변환할 수 있다.The restoring of the current frame according to an embodiment may include restoring the maximum limit value and the minimum limit value of the restored image data to correspond to an upper limit value and a lower limit value of pixel values of the current frame, respectively. Values between the maximum and minimum limits of the data may be converted to have a one-to-one correspondence with the values between the upper limit and the lower limit.

일 실시예에 따른 상기 현재 프레임 복원 단계는, 상기 최대한계값 및 최소한계값 사이의 값들에 대하여, 현재 복원된 데이터 값과 상기 상한값 및 상기 하한값의 차이의 곱을, 상기 최대한계값 및 상기 최대한계값의 차이로 나눈 값에 상기 하한값을 더한 값이 일대일 대응되도록 변환할 수 있다.The restoring of the current frame according to an embodiment may include: multiplying the difference between the currently restored data value, the upper limit value, and the lower limit value with respect to the values between the maximum limit value and the minimum limit value by using the maximum limit value and the maximum limit value. The lower limit value plus the value divided by the difference of the value may be converted to correspond one-to-one.

일 실시예에 따라, 상기 최대한계값 및 최소한계값 사이의 값들에 대하여 일대일 대응되는 픽셀값이, 현재 비트뎁스를 이용한 비트시프트에 의한 연산을 통해 출력될 수 있다.According to an embodiment, a pixel value corresponding one-to-one with respect to values between the maximum and minimum values may be output through a bit shift operation using a current bit depth.

다른 실시예에 따른 현재 비트뎁스는, 상기 비디오의 부복호화 과정 동안 내부적으로 확장된 비트뎁스일 수 있다. 다른 실시예에 따른 상기 현재 프레임 복원 단계는, 상기 제 1 비트뎁스만큼 확장된 상기 복원된 영상 데이터의 다이나믹 레인지를 복원하는 단계; 및 상기 다이나믹 레인지가 복원되어 생성된 중간 데이터의 비트뎁스를 상기 제 2 비트뎁스만큼 축소하여 상기 현재 프레임의 픽셀값의 비트뎁스를 복원하는 단계를 포함할 수 있다.According to another embodiment, the current bit depth may be an internally extended bit depth during the video decoding process. According to another embodiment, the step of restoring a current frame may include: restoring a dynamic range of the restored image data extended by the first bit depth; And reconstructing the bit depth of the pixel value of the current frame by reducing the bit depth of the intermediate data generated by restoring the dynamic range by the second bit depth.

다른 실시예에 따른 상기 다이나믹 레인지 복원 단계는, 상기 복원된 영상 데이터 중 상기 최대한계값 및 최소한계값을, 각각 상기 중간 데이터의 상한값 및 하한값에 대응하도록 복원하는 단계; 및 상기 복원된 영상 데이터 중 상기 최대한계값 및 최소한계값 사이의 값들을 상기 중간 데이터의 상한값 및 하한값 사이의 값에 일대일 대응하도록 변환하여 상기 중간 데이터를 생성하는 단계를 포함할 수 있다.According to another exemplary embodiment, the dynamic range restoration may include: restoring the maximum limit value and the minimum limit value of the restored image data to correspond to an upper limit value and a lower limit value of the intermediate data, respectively; And generating the intermediate data by converting values between the maximum limit value and the minimum limit value of the reconstructed image data to have a one-to-one correspondence to a value between an upper limit value and a lower limit value of the intermediate data.

다른 실시예에 따른 상기 중간 데이터 생성 단계는, 상기 중간 데이터의 상한값 및 하한값 사이의 픽셀값들에 대하여 일대일 대응되는 픽셀값을, 상기 제 1 비트뎁스 및 제 2 비트뎁스를 이용한 비트시프트에 의한 연산을 통해 출력할 수 있다.In the intermediate data generating step according to another embodiment, the pixel value corresponding to the pixel value between the upper limit value and the lower limit value of the intermediate data is calculated by bit shifting using the first bit depth and the second bit depth. Can be output via

일 실시예에 따른 상기 현재 프레임 복원 단계는, 상기 복원된 영상 데이터에 대해, 루마 성분 및 크로마 성분별로 다이나믹 레인지를 복원하여, 상기 현재 프레임의 픽셀값을 복원하할 수 있다.The current frame restoration step may restore the pixel value of the current frame by restoring a dynamic range for each of the luma and chroma components with respect to the restored image data.

일 실시예에 따라, 상기 복원된 영상 데이터 중 상기 최대한계값 및 최소한계값 사이의 값들이, 비선형 함수 관계를 따라 상기 상한값 및 상기 하한값 사이의 값에 일대일 대응하도록 변환될 수 있다. 일 실 시예에 따라 상기 복원된 영상 데이터 중 상기 최대한계값 및 최소한계값 사이의 픽셀값들이 소정 개수의 구간들로 분할되는 경우, 상기 구간별 데이터는 선형적으로 증가하는 구간별 기울기의 함수 관계에 따라 대응되는 픽셀값이 결정되고, 상기 구간들 중 연속하는 구간들의 데이터에 대응되는 픽셀값들은 연속되어, 상기 모든 구간의 데이터에 대한 픽셀값들이 상기 상한값 및 상기 하한값 사이의 값에 일대일 대응하도록 변환될 수 있다. According to an embodiment, the values between the maximum value and the minimum value of the reconstructed image data may be converted to have a one-to-one correspondence to values between the upper limit value and the lower limit value according to a nonlinear function relationship. According to an exemplary embodiment, when pixel values between the maximum value and the minimum value of the reconstructed image data are divided into a predetermined number of sections, the data for each section is a function of a slope for each section that increases linearly. The pixel values corresponding to the corresponding pixel values are determined, and the pixel values corresponding to the data of the successive sections among the sections are continuous so that the pixel values for the data of all the sections correspond one-to-one to the values between the upper limit value and the lower limit value. Can be converted.

일 실시예에 따른 상기 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 방법은, 상기 현재 프레임의 다이나믹 레인지의 변환에 대한 정보를 수신하는 단계를 더 포함할 수 있다.The video decoding method using the dynamic range transformation based on the content according to an embodiment may further include receiving information on the transformation of the dynamic range of the current frame.

일 실시예에 따른 상기 데이터 심볼 복원 단계는, 상기 수신된 비트스트림의 부호화 단계 중, 입력 영상 시퀀스 중 픽처를 소정 최대 크기의 부호화 단위로 분할하고, 각각의 최대 부호화 단위에 대해, 심도가 깊어짐에 따라 상기 최대 부호화 단위가 계층적으로 분할되어 축소된 영역별로, 적어도 하나의 심도별 부호화 단위마다 부호화를 수행하여, 상기 픽처의 원본 영상과의 최소 부호화 오차를 발생시키는 적어도 하나의 부호화 심도에 관한 정보를 포함하는 상기 부호화 심도의 부호화 단위에 대한 부호화 모드에 관한 정보를 상기 비트스트림으로부터 더 추출하고, 상기 영상 데이터 복원 단계는, 상기 부호화 모드에 관한 정보에 기초하여, 상기 부호화 심도 및 부호화 모드에 기초하여 역영쟈화, 역주파수변환, 인트라 예측 및 움직음 보상을 수행하여 상기 부호화된 영상 데이터를 복호화할 수 있다.According to an embodiment, the data symbol reconstruction step may include: dividing a picture of an input image sequence into coding units having a predetermined maximum size in the encoding step of the received bitstream, and increasing the depth of each maximum coding unit. Information on at least one coded depth that generates a minimum coding error with respect to an original image of the picture by performing encoding on at least one depth-based coding unit for each region in which the maximum coding unit is hierarchically divided and reduced. Extracting information about an encoding mode for a coding unit of the encoding depth, from the bitstream, and reconstructing the image data is based on the encoding depth and an encoding mode based on the information about the encoding mode. Inverse projection, inverse frequency transformation, intra prediction and motion compensation W can decode the encoded image data.

본 발명의 일 실시예에 따른 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 장치는, 입력 비디오의 컨텐트에 기반하여 현재 프레임의 다이나믹 레인지를 변환한 영상 데이터를 이용하여, 인트라 예측을 수행하는 인트라 예측부; 상기 다이나믹 레인지 변환된 영상 데이터를 이용하여, 움직임 추정을 통한 인터 예측을 수행하는 인터 예측부; 상기 인트라 예측 및 인터 예측에 의해 생성된 레지듀얼 데이터에 대해 주파수변환을 수행하는 주파수변환부; 상기 주파수변환에 의해 생성된 변환 계수에 대해 양자화를 수행하는 양자화부; 상기 양자화된 변환 계수에 대해 엔트로피 부호화를 수행하는 엔트로피 부호화부; 및 상기 엔트로피 부호화에 의해 생성된, 상기 현재 프레임의 부호화된 데이터를 포함하는 비트스트림을 출력하는 출력부를 포함한다.A video encoding apparatus using dynamic range transformation based on content according to an embodiment of the present invention may include an intra prediction unit configured to perform intra prediction using image data obtained by converting a dynamic range of a current frame based on content of an input video. ; An inter predictor configured to perform inter prediction through motion estimation using the dynamic range converted image data; A frequency converter configured to perform frequency conversion on the residual data generated by the intra prediction and the inter prediction; A quantization unit performing quantization on the transform coefficients generated by the frequency transform; An entropy encoder for performing entropy encoding on the quantized transform coefficients; And an output unit configured to output a bitstream including the encoded data of the current frame, generated by the entropy encoding.

본 발명의 일 실시예에 따른 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 장치는, 수신된 비트스트림을 파싱하여 원본 비디오의 현재 프레임의 부호화된 데이터를 추출하는 파싱부; 상기 추출된 부호화된 데이터에 대해 엔트로피 복호화를 수행하여 데이터 심볼을 복원하는 엔트로피 복호화부; 상기 복원된 데이터 심볼에 대해, 역양자화 및 역주파수변환을 수행하여 상기 현재 프레임에 대한 레지듀얼 데이터를 복원하는 역양자화 및 역주파수변환부; 상기 복원된 레지듀얼 데이터에 대해 인트라 예측을 수행하는 인트라 예측부; 상기 복원된 레지듀얼 데이터에 대해 움직임 보상을 수행하는 움직임 보상부; 및 상기 인트라 예측 및 상기 움직임 보상에 의해 복원된 영상 데이터에 대해 디블로킹 필터링을 수행하고, 상기 원본 비디오의 컨텐트를 기반하여 변환된 다이나믹 레인지를 복원함으로써, 상기 현재 프레임을 복원하는 영상 복원부를 포함한다.According to an embodiment of the present invention, a video decoding apparatus using dynamic range transformation based on content may include: a parser configured to parse the received bitstream and extract encoded data of a current frame of an original video; An entropy decoder configured to reconstruct data symbols by performing entropy decoding on the extracted encoded data; An inverse quantization and inverse frequency converter configured to perform inverse quantization and inverse frequency transformation on the recovered data symbols to restore residual data for the current frame; An intra predictor for performing intra prediction on the reconstructed residual data; A motion compensation unit to perform motion compensation on the restored residual data; And an image reconstruction unit which deblocks the image data reconstructed by the intra prediction and the motion compensation and reconstructs the current frame by reconstructing the dynamic range converted based on the content of the original video. .

본 발명은, 본 발명의 일 실시예에 따라 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법을 구현하기 위한 프로그램이 기록된 컴퓨터로 판독가능한 기록 매체를 포함한다.The present invention includes a computer readable recording medium having recorded thereon a program for implementing a video encoding method using a dynamic range transformation based on content according to an embodiment of the present invention.

본 발명은, 본 발명의 일 실시예에 따라 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 방법을 구현하기 위한 프로그램이 기록된 컴퓨터로 판독가능한 기록 매체를 포함한다.The present invention includes a computer readable recording medium having recorded thereon a program for implementing a video decoding method using content-based dynamic range conversion according to an embodiment of the present invention.

도 1 은 본 발명의 일 실시예에 따른, 컨텐트에 기반하는 다이나믹 레인지 변환을 이용하는 비디오 부호화 장치의 블록도를 도시한다.
도 2 는 본 발명의 일 실시예에 따른, 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 장치의 블록도를 도시한다.
도 3 은 일 실시예에 따라 다이나믹 레인지가 변환된 데이터의 그래프를 도시한다.
도 4 은 일 실시예에 따라 확장된 비트뎁스에 기반하여 다이나믹 레인지가 변환된 데이터의 그래프를 도시한다.
도 5 는 일 실시예에 따른 원본 데이터의 픽셀값의 확률 밀도 함수 그래프를 도시한다.
도 6 은 본 발명의 일 실시예에 따른, 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법의 흐름도를 도시한다.
도 7 는 본 발명의 일 실시예에 따른, 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 방법의 흐름도를 도시한다.
도 8 은 본 발명의 일 실시예에 따른 영역별 계층적 데이터 단위에 기반하여, 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 장치의 블록도를 도시한다.
도 9 은 본 발명의 일 실시예에 따른 영역별 계층적 데이터 단위에 기반하여, 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 장치의 블록도를 도시한다.
도 10 은 본 발명의 일 실시예에 따른 부호화 단위의 개념을 도시한다.
도 11 는 본 발명의 일 실시예에 따른 부호화 단위에 기초한 영상 부호화부의 블록도를 도시한다.
도 12 는 본 발명의 일 실시예에 따른 부호화 단위에 기초한 영상 복호화부의 블록도를 도시한다.
도 13 는 본 발명의 일 실시예에 따른 심도별 부호화 단위 및 예측 단위를 도시한다.
도 14 은 본 발명의 일 실시예에 따른, 부호화 단위 및 변환 단위의 관계를 도시한다.
도 15 은 본 발명의 일 실시예에 따라, 심도별 부호화 정보들을 도시한다.
도 16 는 본 발명의 일 실시예에 따른 심도별 부호화 단위를 도시한다.
도 17, 18 및 19는 본 발명의 일 실시예에 따른, 부호화 단위, 예측 단위 및 주파수 변환 단위의 관계를 도시한다.
도 20 은 본 발명의 일 실시예에 따른 부호화 단위별 부호화 정보를 도시한다.
도 21 은 본 발명의 일 실시예에 따른 영역별 계층적 데이터 단위에 기반하여, 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법의 흐름도를 도시한다.
도 22 은 본 발명의 일 실시예에 따른 영역별 계층적 데이터 단위에 기반하여, 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 방법의 흐름도를 도시한다.
도 23 은 일 실시예에 따라 비선형 함수에 기초하여 다이나믹 레인지가 변환된 데이터의 그래프를 도시한다.
1 is a block diagram of a video encoding apparatus using dynamic range transformation based on content, according to an embodiment of the present invention.
2 is a block diagram of a video decoding apparatus using dynamic range transformation based on content, according to an embodiment of the present invention.
3 illustrates a graph of data in which a dynamic range is converted according to an embodiment.
4 illustrates a graph of data in which a dynamic range is converted based on an extended bit depth, according to an exemplary embodiment.
5 illustrates a probability density function graph of pixel values of original data according to an embodiment.
6 is a flowchart of a video encoding method using dynamic range transformation based on content, according to an embodiment of the present invention.
7 is a flowchart of a video decoding method using dynamic range transformation based on content according to an embodiment of the present invention.
8 is a block diagram of a video encoding apparatus using a dynamic range transformation based on content, based on a hierarchical data unit for each region according to an embodiment of the present invention.
FIG. 9 is a block diagram of a video decoding apparatus using content-based dynamic range transformation based on hierarchical hierarchical data units according to an embodiment of the present invention.
10 illustrates a concept of coding units, according to an embodiment of the present invention.
11 is a block diagram of an image encoder based on coding units, according to an embodiment of the present invention.
12 is a block diagram of an image decoder based on coding units, according to an embodiment of the present invention.
13 is a diagram of deeper coding units according to depths, and prediction units, according to an embodiment of the present invention.
14 illustrates a relationship between a coding unit and transformation units, according to an embodiment of the present invention.
FIG. 15 illustrates encoding information according to depths, according to an embodiment of the present invention.
16 is a diagram of deeper coding units according to depths, according to an embodiment of the present invention.
17, 18, and 19 illustrate a relationship between a coding unit, a prediction unit, and a frequency transform unit, according to an embodiment of the present invention.
20 is a diagram of encoding information according to coding units, according to an embodiment of the present invention.
21 is a flowchart of a video encoding method using dynamic range transformation based on content, based on a hierarchical data unit for each region according to an embodiment of the present invention.
FIG. 22 is a flowchart of a video decoding method using dynamic range transformation based on content, based on a hierarchical data unit for each region according to an embodiment of the present invention.
FIG. 23 illustrates a graph of data with dynamic range transformed based on a nonlinear function, according to one embodiment. FIG.

이하, 도 1 내지 도 22를 참조하여, 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법 및 그 장치, 그리고 비디오 복호화 방법 및 그 장치의 다양한 실시예들이 상술된다. 구체적으로 도 1 내지 7을 참조하여, 본 발명의 일 실시예에 따른 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 및 복호화에 관한 다양한 실시예들이 개시되고, 도 8 내지 22를 참조하여, 본 발명의 일 실시예에 따른 영역별 계층적 데이터 단위에 기반하여 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 및 복호화에 관한 다양한 실시예들이 개시된다.Hereinafter, a video encoding method and apparatus therefor, and a video decoding method and various embodiments of the apparatus will be described in detail with reference to FIGS. 1 to 22. Specifically, various embodiments related to video encoding and decoding using dynamic range transformation based on content according to an embodiment of the present invention will be described with reference to FIGS. 1 to 7, and with reference to FIGS. 8 to 22, Various embodiments of video encoding and decoding using dynamic range transformation based on content based on hierarchical hierarchical data units according to an embodiment are disclosed.

도 1 은 본 발명의 일 실시예에 따른 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 장치의 블록도를 도시한다.1 is a block diagram of a video encoding apparatus using dynamic range transformation based on content according to an embodiment of the present invention.

일 실시예에 따른 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 장치(100)는, 인트라 예측부(110), 인터 예측부(120), 주파수변환부(130), 양자화부(140), 엔트로피 부호화부(150) 및 출력부(160)를 포함한다.The video encoding apparatus 100 using the dynamic range transformation based on content according to an embodiment may include an intra predictor 110, an inter predictor 120, a frequency converter 130, a quantizer 140, and an entropy encoding. The unit 150 and the output unit 160 is included.

일 실시예에 따른 인트라 예측부(110)는, 입력 비디오의 컨텐트에 기반하여 현재 프레임의 다이나믹 레인지를 변환한 영상 데이터에 대하여 인트라 예측을 수행하고, 일 실시예에 따른 인터 예측부(120)는, 현재 프레임의 다이나믹 레인지 변환된 영상 데이터에 대하여, 움직임 추정을 통한 인터 예측을 수행한다.The intra predictor 110 performs intra prediction on image data obtained by converting a dynamic range of a current frame based on the content of the input video, and the inter predictor 120 according to an embodiment The inter prediction is performed through motion estimation on the dynamic range converted image data of the current frame.

일 실시예에 따른 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 장치(100)는, 픽셀값의 현재 비트 뎁스로 표현 가능한 최소한계값 내지 최대한계값의 최대 범위로, 현재 프레임의 픽셀값의 다이나믹 레인지를 확장할 수 있다. 이에 따라 일 실시예에 따른 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 장치(100)는, 픽셀값의 다이나믹 레인지가 최대 범위로 확장되도록 변환된 영상 데이터를 이용하여, 현재 프레임을 부호화할 수 있다.The video encoding apparatus 100 using the dynamic range transformation based on the content according to an embodiment may include a dynamic range of pixel values of a current frame in a maximum range of a minimum value to a maximum value that can be expressed as a current bit depth of a pixel value. Can be extended. Accordingly, the video encoding apparatus 100 using the dynamic range transformation based on the content according to an embodiment may encode the current frame using the image data converted so that the dynamic range of the pixel value is extended to the maximum range.

일 실시예에 따른 인트라 예측부(110) 및 인터 예측부(120)는, 다이나믹 레인지가 변환된 영상 데이터를 이용하여 현재 프레임에 대한 인트라 예측 및 인터 예측을 각각 수행하여, 레지듀얼 데이터를 출력할 수 있다.The intra predictor 110 and the inter predictor 120 perform intra prediction and inter prediction on a current frame by using image data obtained by converting the dynamic range, respectively, and output residual data. Can be.

이하, 본 명세서에서는, 현재 프레임의 실질적 다이나믹 레인지를 결정하기 위해 설정된 원본 영상의 픽셀값들 중 큰 값을 상한값이라 지칭하고, 작은 값을 하한값이라 지칭한다. 또한, 소정 비트 뎁스로 표현 가능한 픽셀값 중 최대값 및 최소값을 각각 최대한계값 및 최소한계값이라 지칭한다.Hereinafter, in the present specification, a large value among pixel values of an original image set to determine a substantial dynamic range of a current frame is referred to as an upper limit, and a small value is referred to as a lower limit. In addition, the maximum value and the minimum value among the pixel values that can be expressed with a predetermined bit depth are referred to as maximum and minimum values, respectively.

일 실시예에 따라, 입력 비디오의 원본 영상의 상한값 내지 하한값 사이의 픽셀값들이 소정 비트 뎁스로 표현가능한 최소한계값 내지 최대한계값의 사이의 값으로 대응되도록 다이나믹 레인지가 확장되므로, 입력 비디오의 컨텐트에 기반하여 다이나믹 레인지가 확장될 수 있다.According to an embodiment, the dynamic range is extended so that the pixel values between the upper limit value and the lower limit value of the original video of the input video correspond to the values between the minimum value and the maximum value that can be expressed by a predetermined bit depth, so that the content of the input video content is increased. The dynamic range can be extended based on.

일 실시예에 따른 인트라 예측부(110) 및 인터 예측부(120)는, 현재 프레임의 픽셀값들 중 상한값보다 큰 값이 최대한계값에 대응하도록 변환하고, 현재 프레임의 픽셀값들 중 하한값보다 작은 값이 최소한계값에 대응하도록 변환할 수 있다. 또한, 현재 프레임의 픽셀값들 중 상한값 및 하한값 사이의 픽셀값들이 최대한계값 및 최소한계값 사이의 값으로 일대일 대응하도록 변환될 수 있다.The intra predictor 110 and the inter predictor 120 may convert a value greater than an upper limit among pixel values of the current frame to correspond to a maximum value, and then convert the value greater than a lower limit among pixel values of the current frame. Small values can be converted to correspond to minimum values. In addition, the pixel values between the upper limit value and the lower limit value among the pixel values of the current frame may be converted to have a one-to-one correspondence with a value between the maximum limit value and the minimum limit value.

일 실시예에 따른 인트라 예측부(110) 및 인터 예측부(120)는, 상한값 및 하한값을, 각각 현재 프레임의 픽셀값들 중 극대값 및 극소값으로 결정할 수 있다. 여기서 해당 구간에서 현재 픽셀값보다 큰 픽셀이 없다면 현재 픽셀값이 극대값으로 정의되고, 현재 픽셀값보다 작은 픽셀이 없다면 현재 픽셀값이 극소값으로 정의돈다.The intra predictor 110 and the inter predictor 120 may determine an upper limit value and a lower limit value as maximum and minimum values of pixel values of the current frame, respectively. Here, if there is no pixel larger than the current pixel value in the interval, the current pixel value is defined as the maximum value. If no pixel is smaller than the current pixel value, the current pixel value is defined as the minimum value.

예를 들어 일 실시예에 따른 인트라 예측부(110) 및 인터 예측부(120)는, '상한값 및 하한값 사이의 픽셀값'들에 대하여, '현재 픽셀값과 하한값의 차이'와 '최대한계값 및 최소한계값의 차이'의 곱을, '상한값 및 하한값의 차이'로 나눈 값을 일대일 대응시킬 수 있다.For example, the intra predictor 110 and the inter predictor 120 according to an embodiment of the present invention may have a difference between the current pixel value and the lower limit and the maximum limit value of the pixel values between the upper limit value and the lower limit value. And a value obtained by dividing the product of the difference between the minimum value and the difference between the upper limit value and the lower limit value.

일 실시예에 따른 다이나믹 레인지 변환에 따라, 현재 프레임 중 상한값보다 크거나 하한값보다 작은 현재 픽셀값은 절삭되는 결과가 유도될 수 있다.According to the dynamic range conversion according to an embodiment, a current pixel value larger than an upper limit or smaller than a lower limit of the current frame may be cut.

일 실시예에 따른 인트라 예측부(110) 및 인터 예측부(120)는, 연산 속도 향상을 위해, 상한값 및 하한값 사이의 픽셀값들에 대하여 일대일 대응되는 픽셀값을 현재 비트뎁스를 이용한 비트시프트에 의한 연산을 통해 결정할 수 있다.The intra prediction unit 110 and the inter prediction unit 120 according to an exemplary embodiment may include a pixel value corresponding to one-to-one corresponding to pixel values between an upper limit value and a lower limit value to a bit shift using a current bit depth in order to improve computation speed. Can be determined by calculation.

일 실시예에 따른 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 장치(100)는, 입력 비디오의 부복호화 과정 중, 내부적으로 영상 픽셀값의 비트 뎁스를 확장하여 이용할 수 있다. 픽셀값의 비트뎁스가 확장됨에 따라, 픽셀값의 최대 범위도 확장될 수 있다.The video encoding apparatus 100 using the dynamic range transformation based on the content according to an embodiment may internally extend and use a bit depth of an image pixel value during the decoding process of the input video. As the bit depth of the pixel value is extended, the maximum range of the pixel value may also be extended.

일 실시예에 따른 인트라 예측부(110) 및 인터 예측부(120)가 내부적으로 확장된 비트뎁스에 따른 영상 데이터를 이용하여 현재 프레임에 대한 인트라 예측 및 인터 예측을 수행하는 경우, 확장된 비트뎁스에 따른 픽셀값의 최대 범위로 다이나믹 레인지가 확장하도록 변환된 현재 프레임의 영상 데이터를 이용하여, 현재 프레임에 대한 인트라 예측 및 인터 예측을 수행할 수 있다. When the intra predictor 110 and the inter predictor 120 perform intra prediction and inter prediction on a current frame using image data according to an internally extended bit depth, the extended bit depth is increased. Intra-prediction and inter-prediction of the current frame may be performed using image data of the current frame converted to extend the dynamic range to a maximum range of pixel values.

예를 들어, 일 실시예에 따른 다이나믹 레인지의 확장에 따른 비트뎁스의 증가량이 제 1 비트뎁스이고, 내부적으로 확장된 비트뎁스는 제 2 비트뎁스일 때, 제 1 비트뎁스 및 제 2 비트뎁스의 총합에 따른 픽셀값의 최대 범위로 다이나믹 레인지가 확장될 수 있다. 이를 위해, 비디오의 픽셀값의 비트뎁스가 제 2 비트뎁스만큼 확장하는 동작 및 제 2 비트뎁스만큼 확장된 비트뎁스의 중간 데이터에 대해 제 1 비트뎁스만큼 다이나믹 레인지를 확장하는 동작이 순차적으로 수행될 수도 있다.For example, when the increase amount of the bit depth according to the extension of the dynamic range is the first bit depth, and the internally expanded bit depth is the second bit depth, the bit depth of the first bit depth and the second bit depth is increased. The dynamic range can be extended to the maximum range of pixel values according to the sum. To this end, an operation in which the bit depth of the pixel value of the video extends by the second bit depth and the operation of extending the dynamic range by the first bit depth with respect to the intermediate data of the bit depth extended by the second bit depth may be sequentially performed. It may be.

일 실시예에 따른 인트라 예측부(110) 및 인터 예측부(120)는, 입력 비디오의 영상 시퀀스, 프레임, 인트라 예측을 위한 프레임 세트, 영역 및 부호화 단위 등의 소정 데이터 단위별로 상한값 및 하한값을 결정함으로써, 입력 비디오의 소정 데이터 단위의 컨텐트에 기반하여 다이나믹 레인지를 변환할 수 있다.The intra predictor 110 and the inter predictor 120 determine an upper limit value and a lower limit value for each predetermined data unit such as an image sequence of an input video, a frame, a frame set for intra prediction, an area, and a coding unit. As a result, the dynamic range may be converted based on the content of a predetermined data unit of the input video.

일 실시예에 따른 인트라 예측부(110) 및 인터 예측부(120)는, 입력 비디오의 컨텐트에 기반하여 다이나믹 레인지가 변환된 이전 프레임들에 대하여 인트라 예측 및 인터 예측을 수행하여 이전 프레임에 대한 레지듀얼 데이터를 출력할 수 있다.The intra predictor 110 and the inter predictor 120 perform intra prediction and inter prediction on previous frames whose dynamic range has been converted based on the content of the input video, and then register the previous frame. Dual data can be output.

이전 프레임에 대한 레지듀얼 데이터는, 주파수변환, 양자화를 통해 부호화되고, 양자화된 데이터는 역양자화, 역주파수변환 및 인루프 필터링을 거쳐 이전 프레임에 대한 복원 프레임으로 복원될 수 있다. 다아나믹 레인지 변환을 위한 상한값 및 하한값이 프레임마다 설정된다면, 일 실시예에 따른 인터 예측부(120)는, 이전 프레임들에 대한 복원 프레임들의 다이나믹 레인지를 일단 원본 다이나믹 레인지로 복원하고 현재 프레임의 다이나믹 레인지에 기초하여 재변환한 후, 현재 프레임과 동일한 다이나믹 레인지로 변환된 복원 프레임을 참조하여 현재 프레임의 인터 예측을 수행할 수 있다.The residual data for the previous frame may be encoded through frequency transformation and quantization, and the quantized data may be restored to a reconstructed frame for the previous frame through inverse quantization, inverse frequency transformation, and in-loop filtering. If the upper limit value and the lower limit value for the dynamic range conversion are set for each frame, the inter predictor 120 according to an embodiment restores the dynamic range of reconstructed frames for the previous frames to the original dynamic range and then reconstructs the current frame. After reconversion based on the dynamic range, inter prediction of the current frame may be performed with reference to a reconstructed frame converted to the same dynamic range as the current frame.

일 실시예에 따른 인트라 예측부(110)는, 다이나믹 레인지가 변환된 현재 프레임의 주변 영역 정보를 이용하여 인트라 예측을 수행할 수 있다.The intra predictor 110 according to an embodiment may perform intra prediction using information on the peripheral region of the current frame having the converted dynamic range.

일 실시예에 따른 주파수변환부(130)는, 인트라 예측 및 인터 예측에 의해 생성된 레지듀얼 데이터에 대해 주파수변환을 수행하고, 일 실시예에 따른 양자화부(140)는, 주파수변환에 의해 생성된 변환 계수에 대해 양자화를 수행한다. 일 실시예에 따른 엔트로피 부호화부(150)는, 양자화된 변환 계수에 대해 엔트로피 부호화를 수행한다. 일 실시예에 따른 출력부(160)는, 엔트로피 부호화에 의해 생성된 현재 프레임의 부호화된 데이터를 포함하는 비트스트림을 출력한다.The frequency converter 130 according to an embodiment performs frequency conversion on residual data generated by intra prediction and inter prediction, and the quantization unit 140 according to an embodiment is generated by frequency conversion. The quantization is performed on the transform coefficients. The entropy encoder 150 according to an embodiment performs entropy encoding on the quantized transform coefficients. The output unit 160 according to an embodiment outputs a bitstream including encoded data of a current frame generated by entropy encoding.

일 실시예에 따른 출력부(160)는, 다이나믹 레인지의 변환에 대한 정보를 부호화하여 현재 프레임의 부호화된 데이터와 함께 전송할 수 있다. 예를 들어, 다이나믹 레인지의 변환에 대한 정보는, 현재 프레임의 부호화된 데이터를 포함하는 비트스트림의 시퀀스 파라미터 세트 또는 슬라이스 헤더에 삽입될 수 있다.The output unit 160 according to an embodiment may encode information about the transformation of the dynamic range and transmit the encoded information with the encoded data of the current frame. For example, the information about the transformation of the dynamic range may be inserted into a sequence parameter set or a slice header of the bitstream including the encoded data of the current frame.

일 실시예에 따른 다이나믹 레인지의 변환에 대한 정보는, 입력 비디오의 컨텐트의 상한값 및 하한값에 대한 정보를 포함할 수 있다. 비트수를 절약하기 위해 상한값에 대한 정보 대신에, 픽셀값의 최대한계값 및 최소한계값의 차이로부터 상한값을 뺀 값이 부호화될 수 있다.The information on the conversion of the dynamic range according to an embodiment may include information about an upper limit value and a lower limit value of the content of the input video. Instead of the information on the upper limit in order to save the number of bits, a value obtained by subtracting the upper limit from the difference between the maximum limit value and the minimum limit value of the pixel value may be encoded.

일 실시예에 따른 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 장치(100)는, 일 실시예에 따른 영역별 계층적 데이터 단위에 기반한 비디오 부호화 방식에 기초할 수 있다. 일 실시예에 따른 영역별 계층적 데이터 단위에 기반한 비디오 부호화 방식에 기초하여, 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 장치에 대해서는 도 8 내지 도 22를 참고하여 구체적으로 후술하도록 한다.The video encoding apparatus 100 using dynamic range transformation based on content according to an embodiment may be based on a video encoding method based on hierarchical data units for respective regions according to an embodiment. Based on the video encoding method based on the hierarchical data unit for each region according to an embodiment, the video encoding apparatus using the dynamic range transformation based on the content will be described in detail later with reference to FIGS. 8 to 22.

일 실시예에 따른 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 장치(100)에 따라, 부호화 중 내부적 연산을 위한 데이터의 다이나믹 레인지가 확장됨에 따라 예측 부호화, 주파수변환 및 인루프 필터링 등의 성능이 향상될 수 있다. 또한, 데이터 단위별로 상한값 및 하한값 등이 실질적인 데이터 단위별로 설정되므로, 컨텐트에 기반하여 다이나믹 레인지가 변환될 수 있다.According to the video encoding apparatus 100 using the dynamic range transformation based on the content according to an embodiment, as the dynamic range of the data for internal calculation is extended during encoding, performance such as prediction encoding, frequency transformation, and in-loop filtering are improved. Can be. In addition, since an upper limit value and a lower limit value are set for each data unit for each data unit, the dynamic range may be converted based on the content.

도 2 는 본 발명의 일 실시예에 따른, 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 장치의 블록도를 도시한다.2 is a block diagram of a video decoding apparatus using dynamic range transformation based on content, according to an embodiment of the present invention.

일 실시예에 따른, 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 장치(200)는, 파싱부(210), 엔트로피 복호화부(220), 역양자화 및 역주파수변환부(230), 인트라 예측부(240), 움직임 보상부(250) 및 영상 복원부(260)를 포함한다.According to an embodiment, the video decoding apparatus 200 using the dynamic range transformation based on the content may include a parser 210, an entropy decoder 220, an inverse quantization and inverse frequency transformer 230, and an intra predictor ( 240, a motion compensator 250, and an image reconstructor 260.

일 실시예에 따른 파싱부(210)는, 수신된 비트스트림을 파싱하여 원본 비디오의 현재 프레임의 부호화된 데이터를 추출한다. 일 실시예에 따른 엔트로피 복호화부(220)는, 추출된 부호화된 데이터에 대해 엔트로피 복호화를 수행하여 데이터 심볼을 복원한다. 일 실시예에 따른 역양자화 및 역주파수변환부(230)는, 복원된 데이터 심볼에 대해, 역양자화 및 역주파수변환을 수행하여 현재 프레임에 대한 레지듀얼 데이터를 복원한다. 일 실시예에 따른 인트라 예측부(240)는, 복원된 레지듀얼 데이터에 대해 인트라 예측을 수행하고, 일 실시예에 따른 움직임 보상부(250)는, 움직임 벡터를 이용하여 복원된 레지듀얼 데이터에 대해 움직임 보상을 수행한다. 움직임 벡터는 파싱부(210)에 의해 추출되어 움직임 보상부(250)에 제공될 수 있다.The parsing unit 210 according to an embodiment parses the received bitstream to extract encoded data of the current frame of the original video. The entropy decoding unit 220 according to an embodiment performs entropy decoding on the extracted encoded data to restore data symbols. The inverse quantization and inverse frequency transform unit 230 according to an embodiment performs inverse quantization and inverse frequency transformation on the recovered data symbols to restore residual data for the current frame. The intra predictor 240 performs intra prediction on the reconstructed residual data, and the motion compensator 250 according to the embodiment reconstructs the residual data reconstructed using the motion vector. Perform motion compensation for the The motion vector may be extracted by the parser 210 and provided to the motion compensator 250.

일 실시예에 따른 영상 복원부(260)는, 인트라 예측 및 움직임 보상에 의해 복원된 영상 데이터에 대해 디블로킹 필터링 등의 인루프 필터링을 수행하고, 현재 프레임을 복원한다. 특히, 추출된 부호화된 데이터가 원본 비디오의 컨텐트에 기반한 다이나믹 레인지가 변환된 영상 데이터가 부호화에 따른 데이터라면, 다이나믹 레인지를 복원함으로써 현재 프레임을 복원한다. 파싱부(210)에 의해 다이나믹 레인지 변환에 대한 정보가 추출된다면, 추출된 부호화된 데이터가 다이나믹 레인지 변환된 데이터임이 유추될 수도 있다.The image reconstructor 260 according to an embodiment performs in-loop filtering such as deblocking filtering on image data reconstructed by intra prediction and motion compensation, and reconstructs the current frame. In particular, if the extracted encoded data is image data obtained by converting the dynamic range based on the content of the original video, the current frame is restored by restoring the dynamic range. If the information about the dynamic range transformation is extracted by the parser 210, it may be inferred that the extracted encoded data is the dynamic range converted data.

디블로킹 필터링 등의 인루프 필터링에 의해 복원된 영상 데이터의 다이나믹 레인지는, 픽셀값의 현재 비트 뎁스로 표현 가능한 최대한계값 내지 최소한계값의 범위로 확장되어 있는 상태이다. 따라서 일 실시예에 따라 영상 복원부(260)는 복원된 영상 데이터의 다니막 레인지를 현재 프레임의 다이나믹 레인지로 복원할 수 있다.The dynamic range of video data reconstructed by in-loop filtering, such as deblocking filtering, is extended to the range of the maximum value to the minimum value that can be expressed by the current bit depth of the pixel value. Accordingly, according to an exemplary embodiment, the image reconstructor 260 may reconstruct the range of the reconstructed image data to the dynamic range of the current frame.

복원 프레임의 다이나믹 레인지를 복원하기 위해, 일 실시예에 따른 영상 복원부(260)는 복원 픽셀값들 중 최대한계값 및 최소한계값을, 각각 현재 프레임의 픽셀값들 중 상한값 및 하한값에 대응하도록 복원하고, 최대한계값 및 최소한계값 사이의 값들을 상한값 및 하한값 사이의 값에 일대일 대응하도록 변환할 수 있다. 현재 프레임의 상한값 및 하한값의 일례는, 각각 현재 프레임의 픽셀값들 중 극대값 및 극소값일 수 있다.In order to reconstruct the dynamic range of the reconstructed frame, the image reconstructor 260 according to an embodiment may correspond to the maximum and minimum values of the reconstructed pixel values so as to correspond to the upper limit and the lower limit of the pixel values of the current frame, respectively. It is possible to restore and convert the values between the maximum and minimum values to have a one-to-one correspondence to the values between the upper and lower limits. One example of the upper limit value and the lower limit value of the current frame may be a local maximum and a local minimum among pixel values of the current frame.

일 실시예에 따른 영상 복원부(260)는, 최대한계값 및 최소한계값 사이의 값들에 대하여, 현재 복원된 데이터 값과 '상한값 및 하한값의 차이'의 곱을, '최대한계값 및 최소한계값의 차이'로 나눈 값에 하한값을 더한 값을 일대일 대응시키는 연산을 통해, 다이나믹 레인지를 역변환할 수 있다. 일 실시예에 따른 영상 복원부(260)는, 비트시프트에 의한 연산을 이용해, 다이나믹 레인지의 역변환을 위한 일대일 대응 결과값을 산출할 수 있다.According to an exemplary embodiment, the image reconstructor 260 multiplies a value between a currently reconstructed data value and a "difference between an upper limit value and a lower limit value" with respect to values between a maximum limit value and a minimum limit value, using a maximum limit value and a minimum limit value. The dynamic range can be inversely transformed by a one-to-one correspondence between a value obtained by dividing the difference by and a lower limit plus one. The image reconstructor 260 according to an embodiment may calculate a one-to-one correspondence result for inverse transformation of the dynamic range by using a bit shift operation.

일 실시예에 따른 현재 비트뎁스는, 비디오의 부복호화 과정 동안 내부적으로 확장된 비트뎁스일 수도 있다. 이 경우, 일 실시예에 따른 영상 복원부(260)는 내부적으로 확장된 비트뎁스를 원본 비트뎁스로 복원할 수 있다. 예를 들어 영상 복원부(260)는 제 1 비트뎁스만큼 확장된 다이나믹 레인지가 확장된 복원된 영상 데이터의 다이나믹 레인지를 제 1 비트뎁스만큼 축소하여 다이나믹 레인지를 복원하는 동작 및 다이나믹 레인지가 복원되어 생성된 중간 데이터의 비트뎁스를 내부적으로 제 2 비트뎁스만큼 축소하여 원본 프레임의 픽셀값의 비트뎁스로 복원하는 동작을 순차적으로 수행할 수 있다.According to an embodiment, the current bit depth may be an internally extended bit depth during the video decoding process. In this case, the image reconstructor 260 according to an embodiment may reconstruct the internally expanded bit depth to the original bit depth. For example, the image reconstructor 260 reduces the dynamic range of the reconstructed image data in which the dynamic range extended by the first bit depth is expanded by the first bit depth, and restores the dynamic range and generates the dynamic range by restoring the dynamic range. The operation of restoring the bit depth of the intermediate data internally by the second bit depth to restore the bit depth of the pixel value of the original frame may be sequentially performed.

일 실시예에 따른 영상 복원부(260)에 의해 복원된 현재 프레임의 픽셀값은, 대응되는 원본 영상의 상한값보다 크거나 하한값보다 작은 픽셀값은 절삭된 결과값일 수 있다.The pixel value of the current frame reconstructed by the image reconstructor 260 according to an exemplary embodiment may be a truncated result value of a pixel value larger than the upper limit value or smaller than the lower limit value of the corresponding original image.

현재 프레임의 상한값 및 하한값은, 각각 원본 비디오의 영상 시퀀스, 프레임, 인트라 예측을 위한 프레임 세트, 영역 및 부호화 단위 중 하나의 데이터 단위별로 결정될 수 있다.The upper limit value and the lower limit value of the current frame may be determined for each data unit of an image sequence, a frame, a frame set for intra prediction, an area, and a coding unit of the original video, respectively.

일 실시예에 따른 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 장치(200)는, 현재 프레임의 다이나믹 레인지의 변환에 대한 정보를 수신할 수 있다.The video decoding apparatus 200 using the dynamic range transformation based on the content according to an embodiment may receive information about the transformation of the dynamic range of the current frame.

일 실시예에 따라 수신된 다이나믹 레인지의 변환에 대한 정보는, 원본 비디오의 컨텐트의 상한값 및 하한값에 대한 정보를 포함할 수 있다. 수신된 정보 중 픽셀값의 최대한계값 및 최소한계값의 차이로부터 상한값을 뺀 값에 대한 정보가 포함되어 있는 경우, 이로부터 상한값이 유추될 수 있다. 또한, 현재 프레임의 상한값 및 하한값이 설정된 데이터 단위에 대한 정보도 함께 수신될 수 있다.According to an embodiment, the received information on the conversion of the dynamic range may include information about an upper limit value and a lower limit value of the content of the original video. If the received information includes information on a value obtained by subtracting the upper limit from the difference between the maximum value and the minimum value of the pixel value, the upper limit value may be inferred therefrom. In addition, information on the data unit in which the upper limit value and the lower limit value of the current frame are set may also be received.

일 실시예에 따른 움직임 보상부(260)는, 원본 비디오의 이전 프레임에 대한 복원 프레임들을 참조하여, 현재 프레임에 대한 움직임 보상을 수행할 수 있다. 이 경우 다이나믹 레인지 변환에 대한 정보가 프레임별로 설정되어 있는 경우, 현재 프레임의 변환된 다이나믹 레인지에 동기화하도록 복원 프레임의 다이나믹 레인지를 재변환함으로써, 현재 프레임과 동일한 다이나믹 레인지로 변환된 복원 프레임을 참조하여 현재 프레임의 움직임 보상이 수행될 수 있다.The motion compensator 260 according to an embodiment may perform motion compensation on the current frame by referring to reconstructed frames of the previous frame of the original video. In this case, when the information on the dynamic range conversion is set for each frame, by reconverting the dynamic range of the reconstruction frame to synchronize with the converted dynamic range of the current frame, referring to the reconstructed frame converted to the same dynamic range as the current frame, Motion compensation of the current frame may be performed.

일 실시예에 따른 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 장치(200)는, 일 실시예에 따른 영역별 계층적 데이터 단위에 기반한 비디오 복호화 방식에 기초할 수 있다. 일 실시예에 따른 영역별 계층적 데이터 단위에 기반한 비디오 복호화 방식에 기초하여, 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 장치에 대해서는 도 8 내지 도 22를 참고하여 구체적으로 후술하도록 한다.The video decoding apparatus 200 using dynamic range transformation based on content according to an embodiment may be based on a video decoding method based on hierarchical data units for respective regions according to an embodiment. Based on the video decoding method based on the hierarchical data unit for each region according to an embodiment, the video decoding apparatus using the dynamic range transformation based on the content will be described in detail later with reference to FIGS. 8 to 22.

일 실시예에 따른 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 장치(200)에 따라, 부호화 중 내부적 연산을 위해 확장된 다이나믹 레인지에 기초하여 부호화된 데이터를 복호화하여 원본 비디오를 복원할 수 있다.According to the video decoding apparatus 200 using the dynamic range transformation based on the content according to an embodiment, the original video may be reconstructed by decoding the encoded data based on the extended dynamic range for internal calculation during encoding.

도 3 은 일 실시예에 따라 다이나믹 레인지가 변환된 데이터의 그래프를 픽셀값 도시한다.3 illustrates a pixel value graph of data in which a dynamic range is converted according to an exemplary embodiment.

그래프 가로축에 원본 데이터의 픽셀값이, 세로축에는 일 실시예에 따른 비디오 부호화 장치(100) 및 비디오 복호화 장치(200)에서 다이나믹 레인지가 변환된 데이터의 픽셀값이 도시되어 있다. 도 3의 그래프는 상한값 B보다 큰 픽셀값이 없으므로 극대값이 상한값 B로 설정되고, 하한값 A보다 작은 픽셀값이 없으므로 극소값이 하한값 A로 설정될 수 있다.Pixel values of the original data are shown on the horizontal axis of the graph, and pixel values of data obtained by converting the dynamic range of the video encoding apparatus 100 and the video decoding apparatus 200 according to the exemplary embodiment are illustrated on the vertical axis. In the graph of FIG. 3, since there is no pixel value larger than the upper limit value B, the maximum value is set to the upper limit value B, and since there is no pixel value smaller than the lower limit value A, the minimum value may be set to the lower limit value A. FIG.

원본 데이터의 픽셀값은 [0, 255]의 구간에 분포되어 있으며, 일 실시예에 따른 인트라 예측부(110) 및 인터 예측부(120)는, 원본 데이터의 픽셀값의 다이나믹 레인지가 변환된 데이터를 이용하여, 각각 인트라 예측 및 인터 예측을 수행할 수 있다. 이 경우, 하한값 A의 픽셀값은, 현재 비트뎁스에 따른 최소한계값 0에 대응되고, 상한값 B의 픽셀값은 현재 비트뎁스에 따른 최대한계값 255에 대응되며, 하한값 A 및 상한값 B 사이의 픽셀값은, 현재 비트뎁스에 따른 최소한계값 및 최대한계값 사이의 데이터구간 (0, 255)의 값에 일대일 대응되도록 다이나믹 레인지가 변환되어 있다.The pixel values of the original data are distributed in intervals of [0, 255], and the intra predictor 110 and the inter predictor 120 according to an embodiment may include data obtained by converting a dynamic range of pixel values of the original data. Intra-prediction and inter-prediction may be performed, respectively. In this case, the pixel value of the lower limit value A corresponds to the minimum value 0 according to the current bit depth, the pixel value of the upper limit value B corresponds to the maximum value 255 according to the current bit depth, and the pixel between the lower limit value A and the upper limit value B. The dynamic range is converted so that the value corresponds one-to-one to the value of the data section (0, 255) between the minimum value and the maximum value according to the current bit depth.

일 실시예에 따른 영상 복원부(260)는, 다이나믹 레인지가 변환된 데이터에 대해, 데이터값 0을 현재 프레임의 하한값 A에, 데이터값 255을 현재 프레임의 상한값 B에 대응시키고, 구간 (0, 255) 사이의 데이터값은 하한값 A 및 상한값 B 사이의 픽셀값에 대응시킴으로써, 원본 다이나믹 레인지를 복원할 수 있다.According to an exemplary embodiment, the image reconstructor 260 corresponds to the lower limit A of the current frame and the data value 255 to the upper limit B of the current frame with respect to the data in which the dynamic range has been converted. The data values 255) correspond to the pixel values between the lower limit A and the upper limit B, thereby restoring the original dynamic range.

도 4 은 일 실시예에 따라 확장된 비트뎁스에 기반하여 다이나믹 레인지가 변환된 데이터의 픽셀값 그래프를 도시한다.4 illustrates a graph of pixel values of data obtained by converting a dynamic range based on an extended bit depth, according to an exemplary embodiment.

그래프 가로축에 원본 데이터의 픽셀값이, 그래프의 세로축은 일 실시예에 따른 비디오 부호화 장치(100) 및 비디오 복호화 장치(200)에서 확장된 비트뎁스에 기반하여 다이나믹 레인지가 변환된 데이터의 픽셀값이 도시되어 있다.The pixel value of the original data is on the horizontal axis of the graph, and the vertical axis of the graph is on the basis of the bit depths extended by the video encoding apparatus 100 and the video decoding apparatus 200 according to an embodiment. Is shown.

일 실시예에 따른 비디오 부호화 장치(100) 및 비디오 복호화 장치(200)는 픽셀값의 비트뎁스를 확장하여 변환된 데이터값을 이용하여 각종 프로세싱을 수행할 수 있다. 이 경우, 일 실시예에 따른 인트라 예측부(110) 및 인터 예측부(120)는, 다이나믹 레인지가 확장된 비트뎁스에 따른 최대 범위로 확장된 데이터를 이용하여 현재 프레임에 대한 인트라 예측 및 인터 예측을 수행할 수 있다. 또한, 일 실시예에 따른 영상 복원부(260)는, 확장된 비트뎁스에 기반하여 다이나믹 레인지가 변환된 데이터를 원본 데이터의 다이나믹 레인지로 복원할 수 있다. 또한 일 실시예에 따른 영상 복원부(260)는 다이나믹 레인지와 함께 내부적으로 확장된 비트뎁스를 복원할 수 있다.The video encoding apparatus 100 and the video decoding apparatus 200 according to an embodiment may perform various processing by using the data value converted by extending the bit depth of the pixel value. In this case, the intra predictor 110 and the inter predictor 120 according to an embodiment may use the intra prediction and inter prediction with respect to the current frame using data extended to a maximum range according to a bit depth in which the dynamic range is extended. Can be performed. In addition, the image reconstructor 260 according to an embodiment may reconstruct the dynamic range converted data to the dynamic range of the original data based on the extended bit depth. In addition, the image reconstructor 260 according to an embodiment may reconstruct the internally extended bit depth together with the dynamic range.

예를 들어, 픽셀값의 비트뎁스가 8비트에서 12비트로, 4비트만큼 확장되는 경우, 데이터 구간은 [0, 255]에서 [0, 4095]로 확장될 수 있다. 이 경우, 하한값 A의 픽셀값은 12비트로 확장된 비트뎁스에 따른 최소한계값 0에 대응되고, 상한값 B의 픽셀값은 12비트 비트뎁스에 따른 최대한계값 4095에 대응되며, 하한값 A 및 상한값 B 사이의 픽셀값은 12비트 비트뎁스에 따른 데이터구간 [0, 4095]의 값에 일대일 대응되도록 다이나믹 레인지가 변환할 수 있다. 따라서, 일 실시예에 따른 인트라 예측부(110) 및 인터 예측부(120)는 4비트 확장된 비트뎁스에 기반하여 다이나믹 레인지가 변환된 데이터값을 이용하여, 인트라 예측 및 인터 예측에 이용될 수 있다.For example, when the bit depth of the pixel value is extended from 8 bits to 12 bits and by 4 bits, the data section may be extended from [0, 255] to [0, 4095]. In this case, the pixel value of the lower limit value A corresponds to the minimum value 0 according to the bit depth extended to 12 bits, and the pixel value of the upper limit value B corresponds to the maximum value 4095 according to the 12 bit bit depth, and the lower limit value A and the upper limit value B The dynamic range may be converted so that the pixel value between the pixels corresponds one-to-one to the value of the data section [0, 4095] according to the 12-bit bit depth. Accordingly, the intra predictor 110 and the inter predictor 120 may be used for intra prediction and inter prediction by using a data value of which a dynamic range is converted based on a 4-bit extended bit depth. have.

또한 이 경우, 일 실시예에 따른 영상 복원부(260)는, 12비트로 확장된 다이나믹 레인지가 변환된 데이터에 대해, 데이터값 0을 현재 프레임의 하한값 A에, 데이터값 4095을 현재 프레임의 상한값 B에 대응시키고, 구간 (0, 4095) 사이의 데이터값은 하한값 A 및 상한값 B 사이의 픽셀값에 대응시킴으로써, 확장된 비트뎁스에 기반하여 확장된 다이나믹 레인지를 원본 다이나믹 레인지로 복원할 수 있다. 또한, 내부적으로 12비트로 확장된 비트뎁스도 8비트로 복원될 수 있다.도 5 는 일 실시예에 따른 원본 데이터의 픽셀값의 확률 밀도 함수(probability density function; pdf) 그래프를 도시한다.In this case, the image reconstructor 260 according to an exemplary embodiment may include a data value 0 as the lower limit A of the current frame and a data value 4095 as the upper limit B of the current frame, for the data whose dynamic range extended to 12 bits is converted. The data values between the intervals (0, 4095) correspond to the pixel values between the lower limit value A and the upper limit value B, thereby restoring the extended dynamic range to the original dynamic range based on the extended bit depth. In addition, the bit depth internally extended to 12 bits may also be restored to 8 bits. FIG. 5 illustrates a graph of a probability density function (pdf) of pixel values of original data according to an embodiment.

그래프 가로축에 원본 프레임의 픽셀값이, 세로축은 원본 프레임의 픽셀값의 확률 밀도가 도시되어 있다. 일반적으로 원본 프레임의 픽셀값의 하한값 이하 및 상한값보다 큰 픽셀값에 대한 확률 밀도는 극히 작다. 이 점을 고려하여, 일 실시예에 따른 인트라 예측부(110) 및 인터 예측부(120)는, 소정 확률 밀도에 대한 임계치를 설정하여, 해당 임계치에 대응하는 원본 프레임의 픽셀값 중 작은 값을 하한값으로, 큰 값을 상한값으로 설정할 수 있다.The pixel value of the original frame is shown on the horizontal axis of the graph, and the probability density of the pixel value of the original frame is shown on the vertical axis. In general, the probability density for pixel values below the lower limit and larger than the upper limit of the pixel value of the original frame is extremely small. In consideration of this, the intra prediction unit 110 and the inter prediction unit 120 set a threshold value for a predetermined probability density and set a smaller value among pixel values of an original frame corresponding to the threshold value. As a lower limit, a large value can be set as an upper limit.

일 실시예에 따른 인트라 예측부(110) 및 인터 예측부(120)는, 원본 프레임의 하한값보다 작은 픽셀값 및 상한값보다 큰 픽셀값은 절삭하고 나머지 하한값 및 상한값 사이의 픽셀값의 다이나믹 레인지를 확장한 데이터를 이용하여, 현재 프레임에 대한 인트라 예측 및 인터 예측을 수행할 수 있다. 원본 프레임의 다이나믹 레인지를 결정하는데 있어서, 상한값보다 크거나 하한값보다 작은 값은 절삭됨으로써 상한값 및 하한값 간의 차이가 줄어들 수 있다.The intra predictor 110 and the inter predictor 120 cut a pixel value smaller than the lower limit and an upper limit of the original frame and extend the dynamic range of pixel values between the remaining lower limit and the upper limit. Using one data, intra prediction and inter prediction on a current frame may be performed. In determining the dynamic range of the original frame, a value larger than the upper limit or smaller than the lower limit may be truncated to reduce the difference between the upper limit and the lower limit.

또한 이 경우, 일 실시예에 따른 영상 복원부(260)는, 다이나믹 레인지가 변환된 데이터의 최소한계값을 현재 프레임의 하한값 A에, 최대한계값을 현재 프레임의 상한값 B에 대응시키고, 최소한계값 및 최대한계값 사이의 데이터값은 하한값 A 및 상한값 B 사이의 픽셀값에 대응시킴으로써, 확장된 다이나믹 레인지를 원본 다이나믹 레인지로 복원할 수 있다. 하지만, 다이나믹 레인지 확장 과정에서 절삭된 원본 프레임의 픽셀값 중 하한값보다 작거나 상한값보다 큰 픽셀값은 복원될 수 없다.In this case, the image reconstruction unit 260 according to the embodiment corresponds to the lower limit A of the current frame and the maximum limit of the current frame to the upper limit B of the current frame. The data value between the value and the maximum value corresponds to the pixel value between the lower limit A and the upper limit B, thereby restoring the extended dynamic range to the original dynamic range. However, a pixel value smaller than the lower limit or larger than the upper limit among the pixel values of the original frame cut in the dynamic range extension process cannot be restored.

따라서, 하한값이 작을수록 또는 상한값이 클수록, 다이나믹 레인지가 덜 확장되지만, 다이나믹 레인지의 복원 과정에서 원본 프레임의 픽셀값이 덜 손실될 수 있다. 반대로, 하한값이 클수록 또는 상한값이 작을수록, 다이나믹 레인지는 더 확장되어 세밀한 영상 처리에 유리하지만, 다이나믹 레인지의 복원 과정에서 원본 프레임의 픽셀값의 손실률이 커질 수 있다. 따라서, 일 실시예에 따른 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 장치(100)는, 필요에 따라 하한값 및 상한값을 가변적으로 설정하여 원본 프레임의 픽셀값의 절삭률을 조절함으로써, 다이나믹 레인지의 확장성과 원본 픽셀의 복원성을 조절할 수도 있다.Therefore, the smaller the lower limit value or the larger the upper limit value, the less the dynamic range is extended, but less pixel values of the original frame may be lost during the restoration of the dynamic range. On the contrary, the larger the lower limit value or the smaller the upper limit value, the more the dynamic range is extended to be advantageous for detailed image processing, but the loss rate of the pixel value of the original frame may be large during the restoration of the dynamic range. Accordingly, the video encoding apparatus 100 using the dynamic range transformation based on the content according to an embodiment may adjust the cutting rate of the pixel value of the original frame by variably setting the lower limit and the upper limit as necessary, thereby extending the dynamic range. You can also adjust the resiliency of the original and original pixels.

이하, 일 실시예에 따른 일 실시예에 따른 인트라 예측부(110) 및 인터 예측부(120)가 인트라 예측 및 인터 예측에 이용하기 위해, 원본 프레임의 픽셀값의 다이나믹 레인지의 변환 방식을 관계식에 따라 상술된다.Hereinafter, in order for the intra prediction unit 110 and the inter prediction unit 120 according to an embodiment to use for intra prediction and inter prediction, a method of converting a dynamic range of pixel values of an original frame is included in a relational expression. Will be detailed accordingly.

일반적으로 디지털 비디오 캡처 장치의 비디오 포맷은 고정 비트뎁스를 사용한다. 현재 가장 널리 쓰이는 비디오 포맷은, 컬러별로 픽셀마다 8비트가 할당된다. N비트 비트뎁스의 비디오 포맷에서, 픽셀값은 [0, 2N-1]의 구간, 즉 0으로부터 2N-1 중에 분포하므로, 8비트 비트뎁스의 비디오 시퀀스의 픽셀값 구간은 [0, 28-1]이다. 일반적으로 비디오 시퀀스의 픽셀값은, 픽셀값 구간 중 중앙 근처에 분포할 확률이 더 높고, 구간 중 외곽 근처에 분포할 확률은 희박하다.In general, the video format of a digital video capture device uses a fixed bit depth. Currently, the most widely used video format is allocated 8 bits per pixel for each color. In the N-bit bit depth video format, the pixel value is distributed in the interval of [0, 2 N -1], that is, from 0 to 2 N -1, so that the pixel value interval of the 8-bit bit depth video sequence is [0, 2 8 -1]. In general, the pixel value of a video sequence is more likely to be distributed near the center of the pixel value interval, and the probability of being distributed near the outer edge of the interval is rare.

즉, 원본 비디오 시퀀스의 픽셀값의 분포는 다음과 같은 관계식 (1)에 따를 수 있다.That is, the distribution of pixel values of the original video sequence may be based on the following equation (1).

0 ≤ OrgMin ≤ Org ≤ OrgMax ≤ 2N-1 ...(1)0 ≤ OrgMin ≤ Org ≤ OrgMax ≤ 2 N -1 ... (1)

원본 픽셀값 Org, 원본 픽셀값 중 최소값 OrgMin 및 최대값 OrgMax은 0보다 크거나 같고 2N-1보다 작거나 같으므로, 원본 픽셀값은 실제 가능한 최대 범위 2N-1보다 좁은 범위의 픽셀값 구간에 분포할 수 있다.Since the original pixel value Org, the minimum of the original pixel values OrgMin, and the maximum value OrgMax are greater than or equal to 0 and less than or equal to 2 N -1, the original pixel value is a range of pixel values narrower than the actual maximum possible range 2 N -1 Can be distributed in

일 실시예에 따른 다이나믹 레인지 변환에 따르면, 컨텐트에 기초하여 원본 픽셀값의 최소값 OrgMin 및 최대값 OrgMax이 각각 하한값, 상한값으로 설정되고, 상한값 OrgMax는 상한값 및 하한값의 차 Range(= OrgMin - OrgMax)를 이용하여, OrgMin + Range으로 대체될 수 있다. 이 경우, 일 실시예에 따른 컨텐트에 기반한 다이나믹 레인지 변환 방식은 아래 변환식 (2),(3),(4)에 따를 수 있다.According to the dynamic range conversion according to an embodiment, the minimum value OrgMin and the maximum value OrgMax of the original pixel value are respectively set as the lower limit and the upper limit based on the content, and the upper limit OrgMax is the difference between the upper limit and the lower limit Range (= OrgMin-OrgMax). Can be replaced by OrgMin + Range. In this case, the dynamic range conversion method based on the content according to an embodiment may be according to the following conversion equations (2), (3) and (4).

if(Org< OrgMin) OrgTransformed = 0; ...(2)if (Org <OrgMin) OrgTransformed = 0; ...(2)

else if(Org> (OrgMin+ Range)) OrgTransformed= 2N- 1; ...(3)else if (Org> (OrgMin + Range)) OrgTransformed = 2N -1; ... (3)

else OrgTransformed= (Org- OrgMin)* (2N- 1)/Range; ...(4)else OrgTransformed = (Org-OrgMin) * ( 2N -1) / Range; ...(4)

변환식 (2)에 따라 원본 픽셀값 Org가 하한값 OrgMin보다 작은 경우, 다이나믹 레인지 변환에 의해 변환된 데이터 OrgTransformed는 0으로 결정되고, 변환식 (3)에 따라 원본 픽셀값 Org가 상한값 OrgMin + Range보다 작은 경우, 변환된 데이터 OrgTransformed는 2N - 1으로 결정되며, 변환식 (4)에 따라 원본 픽셀값 Org가 하한값 OrgMin 이상 상한값 OrgMin + Range 이하인 경우, 변환된 데이터 OrgTransformed는 원본 픽셀값 Org에 대하여 (Org - OrgMin) * (2N - 1)/Range의 값으로 일대일 대응될 수 있다.When the original pixel value Org is smaller than the lower limit OrgMin according to the conversion equation (2), the data OrgTransformed converted by the dynamic range transformation is determined to be 0, and the original pixel value Org is smaller than the upper limit OrgMin + Range according to the conversion equation (3). The transformed data OrgTransformed is determined as 2 N -1, and when the original pixel value Org is lower than the lower limit OrgMin or higher than the upper limit OrgMin + Range according to the conversion equation (4), the transformed data OrgTransformed is (Org-OrgMin) with respect to the original pixel value Org. ) * (2 N -1) / Range can be one-to-one correspondence.

변환식 (2), (3), (4)에 따른 다이나믹 레인지 변환 방식은, 원본 픽셀값 Org가 하한값 OrgMin 이상 상한값 OrgMin + Range 이하인 경우에, 기울기 (2N - 1)/Range의 선형 함수에 따라 원본 픽셀값 Org이, 변환된 데이터 OrgTransformed로 대응되는 경우이다.The dynamic range conversion method according to the conversion equations (2), (3), and (4) is based on the linear function of the slope (2 N -1) / Range when the original pixel value Org is lower limit OrgMin or higher and upper limit OrgMin + Range. The original pixel value Org corresponds to the transformed data OrgTransformed.

변환식 (2), (3), (4)는 일 실시예에 따른 컨텐트에 기반한 다이나믹 레인지 변환을 위한 변환식의 예시일 뿐, 본 발명의 다이나믹 레인지 변환 방식이 선형 함수에 기초한 변환식에 한정되는 것은 아니다. 예를 들어, 원본 픽셀값 Org가 하한값 OrgMin 보다 작은 경우 확장된 다이나믹 레인지의 최소한계값으로 변환되고, 원본 픽셀값 Org가 상한값 OrgMin + Range 보다 큰 경우 확장된 다이나믹 레인지의 최대한계값으로 변환된다는 조건은 유지되는 것이 바람직하다. 원본 픽셀값 Org가 하한값 OrgMin 이상 상한값 OrgMin + Range 이하인 경우에, 원본 픽셀값 Org이 증가할수록 이에 대응되는 변환된 데이터 OrgTransformed도 단조 증가하도록 다이나믹 레인지가 변환될 수 있다면, 필요에 따라 가변적으로 변환식이 결정될 수 있다. 다만 설명의 편의를 위해, 예시적인 변환식 (2), (3), (4)에 기초하여 일 실시예에 따른 컨텐트에 기반한 다이나믹 레인지 변환 방식에 대해 후술한다.The conversion equations (2), (3), and (4) are merely examples of the conversion equation for the dynamic range conversion based on the content according to an embodiment, and the dynamic range conversion method of the present invention is not limited to the conversion equation based on the linear function. . For example, if the original pixel value Org is less than the lower limit OrgMin, it is converted to the minimum value of the extended dynamic range. If the original pixel value Org is greater than the upper limit OrgMin + Range, the condition is converted to the maximum value of the extended dynamic range. Is preferably maintained. If the original pixel value Org is lower than the lower limit OrgMin or more than the upper limit OrgMin + Range, if the dynamic range can be transformed so that the corresponding transformed data OrgTransformed monotonically increases as the original pixel value Org increases, a transform equation can be variably determined as necessary. Can be. However, for convenience of description, a dynamic range conversion method based on content according to an embodiment will be described below based on exemplary conversion equations (2), (3), and (4).

일 실시예에 따른 컨텐트에 기반한 다이나믹 레인지 변환은 비트시프트를 이용하여 나눗셈 연산을 수행함으로써 연산 속도를 향상할 수 있다. 비트시프트를 이용한 변환식을 표현하기 위해, 오프셋 OFFSET 는 1 << (CADR_BITS -1) 로 설정될 수 있다. 컨텐트에 기반한 다이나믹 레인지 변환을 위한 비트뎁스 CADR_BITS는 입력 비디오의 영상 시퀀스, 프레임, 인트라 예측을 위한 프레임 세트, 영역 및 부호화 단위 중 하나의 데이터 단위별로 결정될 수 있다. 이하 설명의 편의를 위해, 비트뎁스 CADR_BITS가 8인 실시예를 기초로 상술된다. 또한 상수 s = (((2N- 1)<< BITS)+ (Range>> 1)) /Range가 설정될 수 있다. 이에 따라, 변환식 (4)가 아래와 같이 변환식 (5)으로 변경됨으로써, 비트시프트를 이용한 변환식이 결정될 수 있다.In the dynamic range conversion based on content according to an embodiment, a division operation may be performed using bit shift to improve a calculation speed. In order to represent the conversion equation using bit shift, the offset OFFSET may be set to 1 << (CADR_BITS -1). Bit depth CADR_BITS for dynamic range transformation based on content may be determined for each data unit of an image sequence of an input video, a frame, a frame set for intra prediction, an area, and a coding unit. For convenience of explanation, the following description will be made based on the embodiment in which the bit depth CADR_BITS is eight. In addition, the constant s = (((2 N -1) << BITS) + (Range >> 1)) / Range can be set. Accordingly, the conversion equation (4) is changed to the conversion equation (5) as follows, whereby the conversion equation using the bit shift can be determined.

if(Org< OrgMin) OrgTransformed= 0; ...(2)if (Org <OrgMin) OrgTransformed = 0; ...(2)

else if(Org> (OrgMin+ Range)) OrgTransformed= 2N- 1; ...(3)else if (Org> (OrgMin + Range)) OrgTransformed = 2N -1; ... (3)

else OrgTransformed= (s* (Org- OrgMin)+ OFFSET)>> CADR_BITS ...(5)else OrgTransformed = (s * (Org- OrgMin) + OFFSET) >> CADR_BITS ... (5)

컨텐트에 기반한 다이나믹 레인지 변환식 (2), (3) 및 (4) (또는 (5))의 결과, 변환된 데이터 OrgTransformed 의 구간은 0 ≤ OrgTransformed ≤ 2N- 1 으로 변환될 수 있다. 즉, 원본 픽셀값의 구간 [OrgMin, OrgMax]는 변환된 데이터 OrgTransformed 의 구간 [0, 2N- 1]으로 확장될 수 있다.As a result of the dynamic range transformation equations (2), (3), and (4) (or (5)) based on the content, the interval of the transformed data OrgTransformed may be transformed into 0 ≦ OrgTransformed ≦ 2N −1. That is, the section [OrgMin, OrgMax] of the original pixel value can be extended to the section [0, 2 N -1] of the transformed data OrgTransformed.

일 실시예에 따른 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 장치(100)의 인트라 예측부(110) 및 인터 예측부(120)는, 변환된 데이터 OrgTransformed 를 이용하여 인트라 예측 및 인터 예측을 수행할 수 있다. 원본 픽셀값 Org를 이용한 인트라 예측 및 인터 예측에 의해 생성되는 레지듀얼의 분포에 비해, 변환된 데이터 OrgTransformed 를 이용한 경우 생성되는 레지듀얼의 분포가 넓이지므로 내부 연산의 정확성이 향상될 수 있다.The intra prediction unit 110 and the inter prediction unit 120 of the video encoding apparatus 100 using the dynamic range transformation based on the content may perform intra prediction and inter prediction using the transformed data OrgTransformed. Can be. Compared to the distribution of residuals generated by intra prediction and inter prediction using the original pixel value Org, when the transformed data OrgTransformed is used, the generated residuals are wider, and thus the accuracy of internal calculations may be improved.

이하, 일 실시예에 따른 일 실시예에 따른 영상 복원부(260)가 복호화에 의해 복원된 데이터의 다이나믹 레인지를 원본 프레임의 다이나믹 레인지로 복원하는 방식이 관계식에 따라 상술된다.Hereinafter, a method of reconstructing the dynamic range of the data restored by decoding by the image reconstructor 260 according to an embodiment to the dynamic range of the original frame will be described in detail according to a relational expression.

복호화 과정을 통해 복원된 데이터의 다이나믹 레인지를 역변환함으로써, 원본 프레임의 다이나믹 레인지가 복원될 수 있다. 즉 아래 변환식 (6)에 따른 컨텐트에 기반한 다이나믹 레인지 역변환식을, 복호화를 거쳐 복원된 데이터 Rec에 적용함으로써, 다이나믹 레인지가 역변환된 데이터 RecInvTransformed가 출력될 수 있다.By inversely transforming the dynamic range of the data reconstructed through the decoding process, the dynamic range of the original frame may be restored. That is, by applying the dynamic range inverse transform based on the content according to the following Equation (6) to the data Rec restored through decoding, the data RecInvTransformed having the inverse transformed dynamic range may be output.

RecInvTransformed= Rec* Range/ (2N- 1)+ OrgMin; ...(6)Rec Inv Transformed = Rec * Range / (2 N -1) + OrgMin; ... (6)

일 실시예에 따른 컨텐트에 기반한 다이나믹 레인지의 역변환식 (6)도 아래 변환식 (7)과 같이 비트시프트를 이용한 변환식으로 변경될 수 있다.The inverse transform equation (6) of the dynamic range based on the content according to an embodiment may also be changed to a transform equation using bit shift as shown in the transform equation (7) below.

RecInvTransformed= (si* Rec+ (OrgMin<< CADR_BITS)+ OFFSET)>> CADR_BITS...(7)RecInvTransformed = (si * Rec + (OrgMin << CADR_BITS) + OFFSET) >> CADR_BITS ... (7)

이때 상수 si는 si= ((Range<< CADR_BITS)+ ((2N- 1)>> 1))/ (2N- 1)로 설정될 수 있다.In this case, the constant si may be set to si = ((Range << CADR_BITS) + ((2 N -1) >> 1)) / (2 N -1).

현재 시퀀스가 YUV 컬러 포맷을 따르는 경우, 루마 성분 및 크로마 성분에 대해 일 실시예에 따른 컨텐트에 기반한 다이나믹 레인지 변환이 각각 수행될 수 있다. 앞서 관계식 (1) 내지 (7)을 참조하여 전술한 다이나믹 레인지의 변환식 및 역변환식이 픽셀값의 루마 성분인 Y 성분 픽셀값에 대해 적용된 것이라 보면, 이하 관계식 (8) 내지 (23)을 참조하여 크로마 성분인 U성분 픽셀값 및 V성분 픽셀값에 대한 컨텐트에 기반한 다이나믹 레인지 변환식 및 역변환식이 기술된다. When the current sequence follows the YUV color format, the dynamic range transformation based on the content according to the embodiment may be performed on the luma component and the chroma component, respectively. If the dynamic range transformation and inverse transformation described above with reference to the relations (1) to (7) are applied to the Y component pixel value that is the luma component of the pixel value, the chroma is described with reference to relations (8) to (23) below. Dynamic range transformations and inverse transformations based on content for component U component pixel values and V component pixel values are described.

이하 관계식 (8) 내지 (17)에서, Org_U 및 Org_V는 각각 원본 U성분 픽셀값 및 원본 V성분 픽셀값을 나타낸다. OrgMin_U 및 OrgMax_U은 각각 원본 U성분 픽셀값의 최소값 및 최대값을 나타내고, OrgMin_V 및 OrgMax_V은 각각 원본 V성분 픽셀값의 최소값 및 최대값을 나타낸다. OrgMin_U와 OrgMin_V는 서로 다를 수 있으며, OrgMax_U 및 OrgMax_V도 다를 수 있다. 설명의 편의를 위해, 이하 관계식(8) 내지 (17)에서 OrgMin_U 및 OrgMax_U가 각각 U성분의 하한값 및 상한값, OrgMin_V 및 OrgMax_V이 V성분 픽셀값의 하한값 및 상한값으로 가정된다. In relations (8) to (17) below, Org_U and Org_V represent original U component pixel values and original V component pixel values, respectively. OrgMin_U and OrgMax_U represent the minimum and maximum values of the original U component pixel values, respectively, and OrgMin_V and OrgMax_V represent the minimum and maximum values of the original V component pixel values, respectively. OrgMin_U and OrgMin_V may be different, and OrgMax_U and OrgMax_V may also be different. For convenience of explanation, in the following relations (8) to (17), OrgMin_U and OrgMax_U are assumed to be the lower and upper limits of the U component, and OrgMin_V and OrgMax_V, respectively, as the lower and upper limits of the V component pixel values.

또한 iRange_U는 U성분 픽셀값의 상한값 OrgMax_U 및 하한값 OrgMin_U 간의 차(OrgMax_U - OrgMin_U)를 나타내며, iRange_V는 상한값 OrgMax_V 및 하한값 OrgMin_V 간의 차(OrgMax_V - OrgMin_V)를 나타낸다. 일 실시예에 따른 크로마 U 성분의 픽셀값에 대한 컨텐트에 기반한 다이나믹 레인지 변환 방식은 아래 변환식 (8), (9), (10)에 따를 수 있다. In addition, iRange_U represents the difference (OrgMax_U-OrgMin_U) between the upper limit OrgMax_U and the lower limit OrgMin_U of the U component pixel value, and iRange_V represents the difference (OrgMax_V-OrgMin_V) between the upper limit OrgMax_V and the lower limit OrgMin_V. The dynamic range conversion method based on the content of the pixel value of the chroma U component according to an embodiment may be according to the following conversion equations (8), (9), and (10).

if(Org_U< OrgMin_U) OrgTransformed_U = 0; ...(8)if (Org_U <OrgMin_U) OrgTransformed_U = 0; ...(8)

else if(Org_U > (OrgMin_U + iRange_U)) OrgTransformed_U = 2N- 1; ...(9)else if (Org_U> (OrgMin_U + iRange_U)) OrgTransformed_U = 2 N -1; ... (9)

else OrgTransformed_U = (Org_U - OrgMin_U)* (2N- 1)/iRange_U; ...(10)else OrgTransformed_U = (Org_U-OrgMin_U) * (2 N -1) / iRange_U; ... (10)

크로마 V 성분의 픽셀값에 대한 컨텐트에 기반한 다이나믹 레인지 변환 방식은 아래 변환식 (11), (12), (13)에 따를 수 있다.The dynamic range conversion method based on the content of the pixel value of the chroma V component may be according to the following conversion equations (11), (12) and (13).

if(Org_V< OrgMin_V) OrgTransformed_V = 0; ...(11)if (Org_V <OrgMin_V) OrgTransformed_V = 0; ... (11)

else if(Org_V > (OrgMin_V + iRange_V)) OrgTransformed_V = 2N- 1; ...(12)else if (Org_V> (OrgMin_V + iRange_V)) OrgTransformed_V = 2 N -1; ... (12)

else OrgTransformed_V = (Org_V - OrgMin_V)* (2N- 1)/iRange_V; ...(13)else OrgTransformed_V = (Org_V-OrgMin_V) * ( 2N -1) / iRange_V; ... (13)

컨텐트에 기반한 다이나믹 레인지 변환의 연산 속도를 향상시키고 연산의 복잡도를 줄이기 위해, 관계식 (8)~(10) 및 (11)~(13)의 나눗셈은, 비트시프트 연산을 통해 수행될 수 있다. 예를 들어, U성분 및 V성분을 위한 상수 s_U 및 s_V가 각각 관계식 (14) 및 (15)에 따라 미리 정의될 수 있다. In order to improve the computation speed of the dynamic range transformation based on the content and reduce the complexity of the computation, the division of the relations (8) to (10) and (11) to (13) may be performed through bit shift operations. For example, the constants s_U and s_V for the U component and the V component may be predefined according to relations (14) and (15), respectively.

s_U = (((2N- 1)<< CADR_BITS)+ (iRange_U >>1)) /iRange_U; ...(14)s_U = (((2 N -1) << CADR_BITS) + (iRange_U >> 1)) / iRange_U; ... (14)

s_V = (((2N- 1)<< CADR_BITS)+ (iRange_V >>1)) /iRange_V; ...(15)s_V = (((2 N -1) << CADR_BITS) + (iRange_V >> 1)) / iRange_V; ... (15)

크로마 U 성분의 픽셀값에 대한 컨텐트에 기반한 다이나믹 레인 변환식 (8), (9), (10) 중 (10)는 상수 s_U 및 비트연산을 이용하여, 아래 관계식 (16)으로 변형될 수 있다. The dynamic lane conversion equations (8), (9), and (10) based on the content of the pixel value of the chroma U component may be transformed into the following equation (16) by using the constant s_U and bit operation.

if(Org_U < OrgMin_U) OrgTransformed_U = 0; ...(8)if (Org_U <OrgMin_U) OrgTransformed_U = 0; ...(8)

else if(Org_U > (OrgMin_U + iRange_U)) OrgTransformed_U = 2N- 1; ...(9)else if (Org_U> (OrgMin_U + iRange_U)) OrgTransformed_U = 2 N -1; ... (9)

else OrgTransformed_U =(s_U *(Org_U -OrgMin_U)+ OFFSET)>> CADR_BITS ...(16)else OrgTransformed_U = (s_U * (Org_U -OrgMin_U) + OFFSET) >> CADR_BITS ... (16)

마찬가지로, 크로마 V 성분의 픽셀값에 대한 컨텐트에 기반한 다이나믹 레인지 변환식 (11), (12), (13) 중 (13)은, 상수 s_V 및 비트연산을 이용하여 아래 관계식 (17)로 변형될 수 있다. Similarly, (13) of the dynamic range transformation equations (11), (12), and (13) based on the content of the pixel value of the chroma V component can be transformed into the following equation (17) using the constant s_V and the bitwise operation. have.

if(Org_V < OrgMin_V) OrgTransformed_V = 0; ...(11)if (Org_V < OrgMin_V) OrgTransformed_V = 0; ... (11)

else if(Org_V > (OrgMin_V + iRange_V)) OrgTransformed_V = 2N- 1; ...(12)else if (Org_V> (OrgMin_V + iRange_V)) OrgTransformed_V = 2 N -1; ... (12)

else OrgTransformed_V= (s_V *(Org_V -OrgMin_V)+ OFFSET)>> CADR_BITS ...(17)else OrgTransformed_V = (s_V * (Org_V -OrgMin_V) + OFFSET) >> CADR_BITS ... (17)

컨텐트에 기반한 다이나믹 레인지 변환과 마찬가지로, 역변환 과정도 크로마 성분별로 수행될 수 있다. 전술된 컨텐트에 기반한 다이나믹 레인지 역변환식 (6) 및 (7)이 루마 성분에 대한 역변환식이었다고 하면, 이하 크로마 U성분 및 Y성분을 위한 컨텐트에 기반한 다이나믹 레인지 역변환식이 관계식 (18) 내지 (23)을 참조하여 기술된다. Like the dynamic range transformation based on the content, the inverse transformation process may be performed for each chroma component. If the dynamic range inverse transforms (6) and (7) based on the above-described content were inverse transforms for the luma component, then the dynamic range inverse transforms based on the content for chroma U and Y components are expressed in relations (18) to (23). It is described with reference to.

관계식 (18) 및 (19)을 통해, 복호화를 거쳐 복원된 데이터의 U성분 픽셀값 Rec_U 및 V성분 픽셀값 Rec_V가 입력받아, 다이나믹 레인지가 역변환된 U성분 픽셀값 RecInvTransformed_U 및 역변환된 V성분 픽셀값 RecInvTransformed_V가 출력될 수 있다.Through the relations (18) and (19), the U component pixel value Rec_U and the V component pixel value Rec_V of the decoded and restored data are input, and the U component pixel value RecInvTransformed_U and the inverse transformed V component pixel value whose dynamic range is inversely transformed. RecInvTransformed_V may be output.

RecInvTransformed_U= Rec_U * iRange_U / (2N- 1)+ OrgMin_U; ...(18)RecInvTransformed_U = Rec_U * iRange_U / (2 N -1) + OrgMin_U; ... (18)

RecInvTransformed_V= Rec_V * iRange_V / (2N- 1)+ OrgMin_V; ...(19)RecInvTransformed_V = Rec_V * iRange_V / (2 N -1) + OrgMin_V; ... (19)

일 실시예에 따른 컨텐트에 기반한 다이나믹 레인지의 역변환식 (18) 및 (19)도 각각 비트시프트를 이용한 고속 연산식 (22) 및 (23)로 변경될 수 있다. 먼저, U성분 및 V성분의 역변환을 위한 상수 si_U 및 si_V가 각각 관계식 (20) 및 (21)에 따라 미리 정의될 수 있다. The inverse transform equations (18) and (19) of the dynamic range based on the content according to an embodiment may also be changed to the fast equations (22) and (23) using bit shift, respectively. First, the constants si_U and si_V for inverse transformation of the U component and the V component may be previously defined according to the relations (20) and (21), respectively.

si_U = ((iRange_U << CADR_BITS)+ ((2N- 1)>> 1))/ (2N- 1); ...(20)si_U = ((iRange_U << CADR_BITS) + ((2 N -1) >> 1)) / (2 N -1); ... (20)

si_V = ((iRange_V << CADR_BITS)+ ((2N- 1)>> 1))/ (2N- 1); ...(21)si_V = ((iRange_V << CADR_BITS) + ((2 N -1) >> 1)) / (2 N -1); ... (21)

상수 si_U 및 si_V를 이용하여, 크로마 U 성분 및 V성분의 픽셀값에 대한 컨텐트에 기반한 다이나믹 레인 역변환식 (18) 및 (19)는 각각 아래 관계식 (22) 및 (23)로 정의될 수 있다. Using the constants si_U and si_V, the dynamic lane inverse equations (18) and (19) based on the content for the pixel values of the chroma U component and the V component can be defined by the following relations (22) and (23), respectively.

RecInvTransformed_U= (si_U* Rec_U+ (OrgMin_U<< CADR_BITS)+ OFFSET)>> CADR_BITS...(22)RecInvTransformed_U = (si_U * Rec_U + (OrgMin_U << CADR_BITS) + OFFSET) >> CADR_BITS ... (22)

RecInvTransformed_V= (si_V * Rec_V + (OrgMin_V << CADR_BITS)+ OFFSET)>> CADR_BITS...(23)RecInvTransformed_V = (si_V * Rec_V + (OrgMin_V << CADR_BITS) + OFFSET) >> CADR_BITS ... (23)

루마 성분에 대한 컨텐트에 기반한 다이나믹 레인지 변환 및 역변환과 마찬가지로, 크로마 성분의 픽셀값의 상한값 및 하한값 간의 범위 iRange_U 및 iRange_V은, 입력 비디오의 영상 시퀀스, 프레임, 인트라 예측을 위한 프레임 세트, 영역 및 부호화 단위 중 하나의 데이터 단위별로 결정될 수 있다. Similar to dynamic range and inverse transforms based on content for luma components, the ranges iRange_U and iRange_V between the upper and lower limits of pixel values of chroma components are the video sequence, frames, framesets for intra prediction, regions, and coding units of the input video. It may be determined for each data unit.

크로마 성분에 대한 컨텐트에 기반한 다이나믹 레인지 변환에서도, 정확성의 향상을 위해 절삭 과정이 추가적으로 수행될 수 있다. 크로마 성분의 픽셀값의 대부분은, 루마 성분에 비해 훨씬 좁은 대역에 집중되어 있으므로, 일 실시예에 따른 컨텐트에 기반한 다이나믹 레인지 변환에 따라 다이나믹 레인지가 효과적으로 확장될 수 있으며, 이에 따라 정확한 예측 부호화가 도모될 수 있다. Even in dynamic range conversion based on content for chroma components, a cutting process may be additionally performed to improve accuracy. Since most pixel values of the chroma component are concentrated in a much narrower band than the luma component, the dynamic range can be effectively extended according to the dynamic range transformation based on the content according to an embodiment, thereby achieving accurate prediction encoding. Can be.

도 4를 참고하여 전술한 바와 같이, 일 실시예에 따른 비디오 부호화 장치(100) 및 비디오 복호화 장치(200)는, 픽셀값의 비트뎁스가 내부적으로 확장된 데이터에 대해 컨텐츠에 기반하여 다이나믹 레인지가 변환된 데이터값을 이용하여 각종 프로세싱을 수행할 수 있다. 이 경우, 일 실시예에 따른 인트라 예측부(110) 및 인터 예측부(120)는, 확장된 비트뎁스 및 컨텐츠에 기반하여 다이나믹 레인지가 확장된 데이터를 이용하여 현재 프레임에 대한 인트라 예측 및 인터 예측을 수행할 수 있다.As described above with reference to FIG. 4, the video encoding apparatus 100 and the video decoding apparatus 200 according to an embodiment may provide a dynamic range based on content for data whose bit depth of a pixel value is internally extended. Various processing can be performed using the converted data value. In this case, the intra predictor 110 and the inter predictor 120 according to an embodiment may intra-prediction and inter-prediction a current frame using data having an extended dynamic range based on the extended bit depth and content. Can be performed.

또한, 일 실시예에 따른 영상 복원부(260)는, 복호화된 데이터의 다이나믹 레인지를 역변환하여 내부적으로 비트뎁스가 확장된 데이터를 복원하고, 확장된 비트뎁스의 데이터를 역변환하여 원본 다이나믹 레인지의 데이터로 복원할 수 있다. 또는 복호화된 데이터의 다이나믹 레인지 및 내부적으로 확장된 비트뎁스를 동시에 역변환하여 원본 다이나믹 레인지의 비디오 데이터를 복원할 수도 있다. In addition, the image reconstructor 260 according to an embodiment may inversely convert the decoded data dynamic range to restore data having an internally extended bit depth, and inversely convert the extended bit depth data to perform data conversion of the original dynamic range. Can be restored. Alternatively, video data of the original dynamic range may be reconstructed by simultaneously inversely converting the dynamic range of the decoded data and the internally extended bit depth.

이하, 내부적으로 확장된 비트뎁스를 고려한 컨텐츠에 기반한 다이나믹 레인지의 변환식 및 역변환식이 상술된다. Hereinafter, the transform equation and the inverse transform equation of the dynamic range based on the content considering the internally expanded bit depth are described in detail.

일 실시예에 따라 내부적으로 확장된 비트뎁스를 고려한 컨텐츠에 기반한 다이나믹 레인지의 변환 과정은, 비트뎁스의 내부적 확장 과정 및 컨텐츠에 기반한 다이나믹 레인지의 변환 과정으로 이루어질 수 있다. 이 경우, 변환 후 총 비트뎁스 Nbits는, 관계식 (24)에 따라 컨텐트에 기반한 다이나믹 레인지 변환을 위한 BitDepth 및 확장된 비트증가량 BitIncrement의 합으로 결정될 수 있다.According to an embodiment, the process of converting the dynamic range based on the content considering the internally extended bit depth may include the process of internally extending the bit depth and converting the dynamic range based on the content. In this case, the total bit depth Nbits after the conversion may be determined as the sum of the BitDepth and the extended bit increase BitIncrement for the content-based dynamic range conversion according to the relation (24).

Nbits = BitDepth + BitIncrement ...(24)Nbits = BitDepth + BitIncrement ... (24)

먼저, 원본 픽셀값 Org에 확장된 비트뎁스를 적용하여 내부적으로 비트뎁스가 확장된 데이터는 관계식(25)에 따라 출력될 수 있다.First, the data having the bit depth extended internally by applying the extended bit depth to the original pixel value Org may be output according to the relation (25).

Org = Org<< BitIncrement ...(25)Org = Org << BitIncrement ... (25)

관계식 (25)에 따른 결과 Org는 내부적으로 확장된 비트뎁스의 데이터이므로, 상한값 OrgMax 및 하한값 OrgMin도 모두 내부적으로 확장된 비트뎁스의 데이터의 범위에서 결정될 수 있다.Since the result Org according to relation (25) is internally extended bit depth data, both the upper limit value OrgMax and the lower limit value OrgMin may be determined in the range of the data of the internally extended bit depth.

내부적으로 비트뎁스가 확장된 픽셀값의 다이나믹 레인지를 확장한 결과 데이터는 아래 관계식 (26)에 따라 결정될 수 있다.As a result of extending the dynamic range of the pixel value in which the bit depth is internally extended, data may be determined according to Equation (26) below.

OrgTranformed = (Org - OrgMin)*(2BitDepth + BitIncrement - 1)/(OrgMax - OrgMin) OrgTranformed = (Org-OrgMin) * (2 BitDepth + BitIncrement -1) / (OrgMax-OrgMin)

≒ (Org - OrgMin) * 2BitIncrement *2BitDepth/(OrgMax - OrgMin + 1)...(26)Org (Org-OrgMin) * 2 BitIncrement * 2 BitDepth / (OrgMax-OrgMin + 1) ... (26)

이하 상수 RangeFast를 관계식 (27)에 따라 정의한다. The constant RangeFast is defined according to the relation (27) below.

RangeFast = OrgMax - OrgMin + 1 ...(27)RangeFast = OrgMax-OrgMin + 1 ... (27)

일 실시예에 따라 내부적으로 확장된 비트뎁스를 고려한 컨텐츠에 기반한 다이나믹 레인지의 변환을 위한 관계식 (25) 및 (26) 중 관계식 (26)을 비트연산을 이용한 관계식 (28)으로 변경할 수 있다. According to an embodiment, the relation (26) of the relations (25) and (26) for transforming the dynamic range based on the content considering the internally expanded bit depth may be changed to the relation (28) using the bit operation.

Org = Org << BitIncrement ...(25)Org = Org << BitIncrement ... (25)

OrgTranformed = (((Org - OrgMin) << BitIncrement) << BitDepth)/ RangeFast ...(28)OrgTranformed = (((Org-OrgMin) << BitIncrement) << BitDepth) / RangeFast ... (28)

이상 관계식 (25)에 따른 비트뎁스의 내부적 확장 단계 및 관계식 (26) 또는 (28)에 따른 컨텐트에 기반한 다이나믹 레인지 변환 단계가 수행됨에 따라, 일 실시예에 따라 내부적으로 확장된 비트뎁스를 고려한 컨텐츠에 기반한 다이나믹 레인지의 변환이 수행될 수 있다. As the internal extension step of the bit depth according to the relation (25) and the dynamic range transformation step based on the content according to the relation (26) or (28) are performed, the content considering the internally extended bit depth according to an embodiment Based on the dynamic range conversion may be performed.

일 실시예에 따라 내부적으로 확장된 비트뎁스를 고려하여 컨텐츠에 기반하여 다이나믹 레인지가 변환된 데이터에 대해, 다이나믹 레인지 및 내부적으로 확장된 비트뎁스를 복원하기 위한 역변환 과정은, 다이나믹 레인지의 역변환(복원) 과정 및 내부적으로 확장된 비트뎁스의 복원 과정으로 이루어질 수 있다.According to an exemplary embodiment, an inverse transform process for restoring a dynamic range and an internally extended bit depth with respect to data whose dynamic range is converted based on content in consideration of an internally extended bit depth may include inverse transform (restore) of the dynamic range. ) And internally extended bit depth recovery.

먼저, 다이나믹 레인지의 역변환 과정은 관계식 (29)에 따를 수 있다. First, the inverse transformation process of the dynamic range may be according to relation (29).

RecInvTransformed = ((Rec*RangeFast + CADR_OFFSET) >> BitDepth) + (OrgMin << BitIncrement); ...(29)RecInvTransformed = ((Rec * RangeFast + CADR_OFFSET) >> BitDepth) + (OrgMin << BitIncrement); ... (29)

여기서 상수 CADR_OFFSET는 관계식 (30)에 따라 정의될 수 있다. Here, the constant CADR_OFFSET may be defined according to relation (30).

CADR_OFFSET = (1 << (BitDepth -1)) ...(30)CADR_OFFSET = (1 << (BitDepth -1)) ... (30)

관계식 (29)에 따라 출력된 복원된 다이나믹 레인지의 데이터 RecInvTransformed는 아직 내부적으로 확장된 비트뎁스의 데이터이다. 따라서 관계식 (31)에 따라 비트뎁스가 원본 비트뎁스로 복원될 수 있다.The reconstructed dynamic range data RecInvTransformed output according to relation (29) is data of an internally extended bit depth. Accordingly, the bit depth may be restored to the original bit depth according to the relation (31).

Rec= (RecInvTransformed + (1 << (BitIncrement-1)))>> BitIncrement ...(31)Rec = (RecInvTransformed + (1 << (BitIncrement-1))) >> BitIncrement ... (31)

이상, 관계식 (31)에 따른 출력 데이터 Rec가 복원된 다이나믹 레인지의 비디오 데이터일 수 있다. As described above, the output data Rec according to relation (31) may be video data of the restored dynamic range.

내부적으로 비트뎁스가 확장되지 않은 경우에 대해서는, 전술된 관계식 (24) 내지 (31)에서 변수 BitIncrement가 0으로 설정되며, 변환 과정 중 관계식 (25) 및 역변환 과정 중 관계식 (31)이 생략될 수 있다.In the case where the bit depth is not extended internally, the variable BitIncrement is set to 0 in the above-described relations (24) to (31), and the relational expression (25) and the relational expression (31) during the inverse transformation may be omitted. have.

관계식 (24) 내지 (31)에 따른 내부적으로 확장된 비트뎁스를 고려한 컨텐츠에 기반한 다이나믹 레인지의 변환식 및 역변환식에 따라, 원본 데이터의 손실이 발생할 수 있으나, 손실 대비 고속 연산의 이점이 더 필요한 경우 유용할 수 있다.
According to dynamic range transformation and inverse transformation based on content considering internally extended bit depths according to relations (24) to (31), loss of original data may occur, but when the advantage of high-speed operation versus loss is needed more Can be useful.

이상, 일 실시예 따른 내부적으로 확장된 비트뎁스를 고려한 컨텐츠에 기반한 다이나믹 레인지의 변환식 (25)~(28) 및 역변환식 (29)~(31)은, 루마 성분의 원본 픽셀값 Org 및 복원 픽셀값 Rec을 위한 예시적 관계식들이다. 크로마 성분의 비디오 데이터를 위한 일 실시예 따른 내부적으로 확장된 비트뎁스를 고려한 컨텐츠에 기반한 다이나믹 레인지 변환 및 역변환이 수행될 수 있다. As described above, the conversion equations (25) to (28) and the inverse conversion equations (29) to (31) of the dynamic range based on the content considering the internally expanded bit depth according to an embodiment are the original pixel value Org of the luma component and the reconstructed pixel. Exemplary relations for the value Rec. Dynamic range transformation and inverse transformation based on content considering an internally extended bit depth according to an embodiment for video data of a chroma component may be performed.

크로마 성분을 위한 내부적으로 확장된 비트뎁스를 고려한 컨텐츠에 기반한 다이나믹 레인지 변환에 있어서, 크로마 성분의 대부분의 데이터는, 오프셋 CADR_OFFSET(= 1 << (BitDepth - 1)) 근처의 좁은 대역에 집중된다. 이에 따라, 일 실시예에 따라 크로마 성분 U성분 및 V성분에 대한 내부적으로 확장된 비트뎁스를 고려한 컨텐츠에 기반한 다이나믹 레인지 변환을 위한 예시적 관계식은, 비트뎁스의 내부적 확장을 위한 관계식 (32) 및 (33) 및, 컨텐트에 기반한 다이나믹 레인지 변환을 위한 관계식 (34) 및 (35)에 따를 수 있다.In dynamic range conversion based on content considering internally extended bit depth for chroma components, most of the data of the chroma components are concentrated in a narrow band near the offset CADR_OFFSET (= 1 < <(BitDepth-1)). Accordingly, according to an embodiment, an exemplary relation for dynamic range transformation based on content considering internally extended bit depths for chroma components U and V components may include relations (32) for internal expansion of bit depths, and (33) and relations (34) and (35) for dynamic range transformation based on content.

Org_U = Org_U << BitIncrement ...(32)Org_U = Org_U << BitIncrement ... (32)

Org_V = Org_V << BitIncrement ...(33)Org_V = Org_V << BitIncrement ... (33)

OrgTranformed_U = ((Org_U + CADR_OFFSET) << BitDepth)/ RangeFast + CADR_OFFSET ...(34)OrgTranformed_U = ((Org_U + CADR_OFFSET) << BitDepth) / RangeFast + CADR_OFFSET ... (34)

OrgTranformed_V = ((Org_V + CADR_OFFSET) << BitDepth)/ RangeFast + CADR_OFFSET ...(35)OrgTranformed_V = ((Org_V + CADR_OFFSET) << BitDepth) / RangeFast + CADR_OFFSET ... (35)

관계식 (34) 및 (35) 중 상수 RangeFast는, 루마 성분을 위한 다이나믹 레인지 변환 중 관계식 (27) 및 (28)의 상수 RangeFast로 그대로 이용될 수 있다. 이로 인해, 크로마 성분을 위한 추가적인 오버헤드가 최소화될 수 있다.The constant RangeFast in the relations (34) and (35) can be used as the constant RangeFast of the relations (27) and (28) during the dynamic range conversion for the luma component. Because of this, additional overhead for chroma components can be minimized.

관계식 (32) 내지 (35)에 따라 일 실시예에 따라 크로마 성분 U성분 및 V성분의 데이터에 대해, 다이나믹 레인지 및 내부적으로 확장된 비트뎁스를 복원하기 위한 역변환 과정을 위한 예시적 관계식은, 컨텐트에 기반한 다이나믹 레인지 역변환을 위한 관계식 (36) 및 (37) 및, 내부적으로 확장된 비트뎁스의 복원을 위한 관계식 (38) 및 (39)에 따를 수 있다.An exemplary relationship for the inverse transform process for reconstructing the dynamic range and the internally extended bit depth for the data of the chroma component U and V components according to one embodiment according to relations (32) to (35), Based on equations (36) and (37) for dynamic range inverse transform, and relations (38) and (39) for reconstruction of an internally extended bit depth.

RecInvTransformed_U = (((Rec_U - (CADR_OFFSET << BitIncrement)) * RangeFast) >> BitDepth) + (CADR_OFFSET << BitIncrement) ...(36)RecInvTransformed_U = (((Rec_U-(CADR_OFFSET << BitIncrement)) * RangeFast) >> BitDepth) + (CADR_OFFSET << BitIncrement) ... (36)

RecInvTransformed_V = (((Rec_V - (CADR_OFFSET << BitIncrement)) * RangeFast) >> BitDepth) + (CADR_OFFSET << BitIncrement) ...(37)RecInvTransformed_V = (((Rec_V-(CADR_OFFSET << BitIncrement)) * RangeFast) >> BitDepth) + (CADR_OFFSET << BitIncrement) ... (37)

Rec_U = (RecInvTransformed_U + (1 << (Bit_Increment-1))) >> Bit_Increment ...(38)Rec_U = (RecInvTransformed_U + (1 << (Bit_Increment-1))) >> Bit_Increment ... (38)

Rec_V = (RecInvTransformed_V + (1 << (Bit_Increment-1))) >> Bit_Increment ...(39)Rec_V = (RecInvTransformed_V + (1 << (Bit_Increment-1))) >> Bit_Increment ... (39)

따라서, 좁은 대역에 집중되어 있는 크로마 성분에 대해, 비트뎁스를 내부적으로 확장하고, 컨텐트에 기반하여 다이나믹 레인지를 최대화함으로써 비디오 부호화시 크로마 성분의 데이터에 대한 정확한 예측이 가능할 수 있다. 또한, 비디오 복호화 시 최대화된 다이나믹 레인지에 기반하여 예측된 데이터를 이용함으로써, 비디오 데이터의 보다 정확한 복원이 가능하다. Therefore, for chroma components concentrated in a narrow band, the bit depth may be extended internally, and the dynamic range may be maximized based on the content to accurately predict the chroma component data during video encoding. In addition, by using the data predicted based on the maximized dynamic range in video decoding, more accurate reconstruction of the video data is possible.

도 23 는 일 실시예에 따라 비선형 함수에 기초하여 다이나믹 레인지가 변환된 데이터의 그래프를 도시한다. FIG. 23 illustrates a graph of data with dynamic range transformed based on a non-linear function, according to one embodiment. FIG.

전술한 바와 같이 본 발명의 다이나믹 레인지 변환 방식이 선형 함수에 기초한 매핑 관계에 한정되는 것은 아니므로, 비선형 함수가 이용될 수도 있다. 다만, 비선형 함수가 이용되는 경우 정확성이 향상되는 것에 비해 연산량의 부담이 더 커질 수 있으며, 율-왜곡 코스트가 나빠질 수 있다. As described above, since the dynamic range transformation method of the present invention is not limited to the mapping relationship based on the linear function, a nonlinear function may be used. However, when the nonlinear function is used, the computational burden may be greater and the rate-distortion cost may be worse than the accuracy is improved.

또한, 도 23에서 예시된, 구간별로 선형 함수이며 구간들이 연속적인 특성을 지닌 구간 선형(piece-wise linear) 함수에 기초한 매핑 관계가 이용될 수 있다. 도 23의 구간 비선형 함수의 가로축은 입력 픽셀의 최대 픽셀값 대비 현재 픽셀값을 나타내며, 세로축은 변환된 데이터의 최대값 대비 현재값을 나타낸다. 이러한 구간 비선형 함수가 원본 픽셀값의 누적식 분포 함수(cumulative distributioin function)에 근사하는 경우, 이에 기초한 다이나믹 레인지 변환은 보다 효과적일 수 있다. 또한, 구간별로 각각의 기울기가 일정하므로 구간별 율-왜곡 코스트가 결정될 수 있으며, 정확성의 향상과 함께 연산량의 부담도 경감될 수 있다.In addition, a mapping relationship based on a piece-wise linear function, which is a linear function for each section and the sections have continuous characteristics, illustrated in FIG. 23 may be used. The horizontal axis of the interval nonlinear function of FIG. 23 represents a current pixel value with respect to the maximum pixel value of the input pixel, and the vertical axis represents a current value with respect to the maximum value of the converted data. If the interval nonlinear function approximates a cumulative distributioin function of the original pixel value, the dynamic range transformation based on this may be more effective. In addition, since each slope is constant for each section, the rate-distortion cost for each section can be determined, and the burden of computation amount can be reduced with the improvement of accuracy.

도 6 은 본 발명의 일 실시예에 따른, 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법의 흐름도를 도시한다.6 is a flowchart of a video encoding method using dynamic range transformation based on content, according to an embodiment of the present invention.

단계 61에서, 입력된 비디오 시퀀스의 프레임별 인트라 예측 및 인터 예측이 수행된다. 이 때, 입력 비디오의 컨텐트에 기반하여 현재 프레임의 다이나믹 레인지를 변환한 영상 데이터를 이용하여, 현재 프레임에 대한 인트라 예측 및 인터 예측이 수행된다.In step 61, frame-by-frame intra prediction and inter prediction of the input video sequence are performed. In this case, intra prediction and inter prediction on the current frame are performed using image data obtained by converting the dynamic range of the current frame based on the content of the input video.

픽셀값의 현재 비트 뎁스로 표현 가능한 최대한계값 내지 최소한계값의 범위로, 현재 프레임의 픽셀값들이 확장되도록 변환된 다이나믹 레인지의 영상 데이터에 기초하여, 현재 프레임의 인트라 예측 및 인터 예측이 수행될 수 있다. 예를 들어, 현재 프레임의 픽셀값들 중 상한값보다 큰 값은 최대한계값에 대응하도록 변환되고, 현재 프레임의 픽셀값들 중 하한값보다 작은 값은 최소한계값에 대응하도록 변환되고, 현재 프레임의 픽셀값들 중 상한값 및 하한값 사이의 픽셀값들은 최대한계값 및 최소한계값 사이의 값에 일대일 대응하도록 변환될 수 있다.Intra-prediction and inter-prediction of the current frame may be performed based on the image data of the dynamic range transformed so that the pixel values of the current frame may be extended, ranging from the maximum value to the minimum value that can be expressed as the current bit depth of the pixel value. Can be. For example, a value larger than an upper limit among pixel values of a current frame is converted to correspond to a maximum value, a value smaller than a lower limit among pixel values of a current frame is converted to correspond to a minimum value and a pixel of the current frame Pixel values between the upper limit value and the lower limit value among the values may be converted to have a one-to-one correspondence with the value between the maximum limit value and the minimum limit value.

현재 픽셀값 중 상한값보다 크거나 하한값보다 작은 픽셀값은 절삭될 수 있다. 상한값 및 하한값은 입력 비디오의 영상 시퀀스, 프레임, 인트라 예측을 위한 프레임 세트, 영역 및 부호화 단위 중 하나의 데이터 단위별로 결정될 수 있다.Pixel values greater than the upper limit or smaller than the lower limit among the current pixel values may be truncated. The upper limit value and the lower limit value may be determined for each data unit of an image sequence of an input video, a frame, a frame set for intra prediction, an area, and a coding unit.

현재 비트뎁스는, 비디오의 부복호화 과정 동안 내부적으로 확장된 비트뎁스일 수 있다.The current bit depth may be an internally extended bit depth during the video decoding process.

단계 63에서, 인트라 예측 및 인터 예측에 의해 생성된 레지듀얼 데이터에 대해 주파수변환이 수행되고, 주파수변환에 의해 생성된 변환 계수에 대해 양자화가 수행된다.In step 63, a frequency transform is performed on the residual data generated by intra prediction and inter prediction, and quantization is performed on the transform coefficients generated by the frequency transform.

단계 65에서, 양자화된 변환 계수에 대해 엔트로피 부호화가 수행되고, 현재 프레임에 대한 부호화된 데이터를 포함하는 비트스트림이 출력된다. 또한, 다이나믹 레인지의 변환에 대한 정보가 부호화하여 전송될 수 있다. 예를 들어 다이나믹 레인지 변환에 대한 정보는, 입력 비디오의 컨텐트의 상한값 및 하한값에 대한 정보를 포함할 수 있다. 또한, 상한값에 대한 정보 대신에, 픽셀값의 최대한계값 및 최소한계값의 차이로부터 상한값을 뺀 값에 대한 정보로 표현함으로써 비트수가 절감될 수 있다.In step 65, entropy encoding is performed on the quantized transform coefficients, and a bitstream including the encoded data for the current frame is output. In addition, information on the transformation of the dynamic range may be encoded and transmitted. For example, the information on the dynamic range transformation may include information about an upper limit value and a lower limit value of the content of the input video. In addition, the number of bits can be reduced by expressing information about a value obtained by subtracting the upper limit from the difference between the maximum limit value and the minimum limit value of the pixel value instead of the upper limit information.

도 7 는 본 발명의 일 실시예에 따른, 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 방법의 흐름도를 도시한다.7 is a flowchart of a video decoding method using dynamic range transformation based on content according to an embodiment of the present invention.

단계 71에서, 수신된 비트스트림이 파싱되고, 비트스트림으로부터 원본 비디오의 현재 프레임의 부호화된 데이터가 추출된다. 원본 프레임의 다이나믹 레인지으로의 역변환을 위해, 영상 데이터에 대한 비트스트림과 함께 상한값 및 하한값에 대한 정보가 수신될 수 있다.In step 71, the received bitstream is parsed and the encoded data of the current frame of the original video is extracted from the bitstream. For inverse transformation of the original frame into the dynamic range, information about an upper limit value and a lower limit value may be received along with a bitstream for the image data.

단계 73에서, 추출된 부호화된 데이터에 대해 엔트로피 복호화가 수행되어 데이터 심볼이 복원된다.In step 73, entropy decoding is performed on the extracted encoded data to recover the data symbols.

단계 75에서, 복원된 데이터 심볼에 대한 역양자화 및 역주파수변환이 수행되어 현재 프레임에 대한 레지듀얼 데이터가 복원된다. 그리고 복원된 레지듀얼 데이터에 대해 인트라 예측 및 움직임 보상이 수행되어 영상 데이터가 복원된다.In step 75, inverse quantization and inverse frequency transform on the recovered data symbols are performed to restore the residual data for the current frame. Intra prediction and motion compensation are performed on the reconstructed residual data to reconstruct image data.

단계 77에서, 복원된 영상 데이터에 대해 디블로킹 필터링이 수행되고, 원본 비디오의 컨텐트에 기반하여 변환된 다이나믹 레인지를 복원함으로써, 현재 프레임이 복원된다. 예를 들어, 픽셀값의 현재 비트 뎁스로 표현 가능한 최대한계값 내지 최소한계값의 범위로 확장되어 있는 복원 픽셀값의 다이나믹 레인지는, 현재 프레임의 다이나믹 레인지로 복원될 수 있다.In step 77, deblocking filtering is performed on the reconstructed image data, and the current frame is reconstructed by reconstructing the converted dynamic range based on the content of the original video. For example, the dynamic range of the reconstructed pixel value extended in the range of the maximum value to the minimum value that can be expressed by the current bit depth of the pixel value may be restored to the dynamic range of the current frame.

복원 프레임의 다이나믹 레인지가 현재 프레임의 다이나믹 레인지로 복원되기 위해, 복원된 영상 데이터 중 최대한계값 및 최소한계값이 각각 현재 프레임의 픽셀값들 중 상한값 및 하한값에 대응하도록 복원될 수 있으며, 복원된 영상 데이터 중 최대한계값 및 최소한계값 사이의 값들은 상한값 및 하한값 사이의 값에 일대일 대응하도록 변환될 수도 있다.In order to restore the dynamic range of the reconstruction frame to the dynamic range of the current frame, the maximum and minimum values of the reconstructed image data may be reconstructed so as to correspond to the upper and lower limits of the pixel values of the current frame, respectively. Values between the maximum value and the minimum value in the image data may be converted to correspond one-to-one to values between the upper limit value and the lower limit value.

복원된 다이나믹 레인지의 비트뎁스는, 비디오의 부복호화 과정 동안 내부적으로 확장된 비트뎁스일 수 있다. 이 경우, 비트뎁스를 원본 비디오의 비트뎁스로 복원될 수 있다.The bit depth of the reconstructed dynamic range may be an internally extended bit depth during the video decoding process. In this case, the bit depth may be restored to the bit depth of the original video.

원본 프레임의 다이나믹 레인지의 상한값 및 하한값은, 원본 비디오의 영상 시퀀스, 프레임, 인트라 예측을 위한 프레임 세트, 영역 및 부호화 단위 중 하나의 데이터 단위별로 결정되어 있을 수 있다.The upper limit value and the lower limit value of the dynamic range of the original frame may be determined for each data unit of an image sequence, a frame, a frame set for intra prediction, an area, and a coding unit of the original video.

일 실시예에 따른 일 실시예에 따른 컨텐트에 기반한 다이나믹 레인 변환을 이용하는 비디오 부호화 방법 및 그 장치, 또는 일 실시예에 따른 컨텐트에 기반한 다이나믹 레인 변환을 이용하는 비디오 복호화 방법 및 그 장치에 따르면, 입력 영상의 다이나믹 레인지를 확장하여 인트라 예측 및 인터 예측 등의 영상 처리를 보다 세밀하게 수행할 수 있으므로, 부호화 및 복호화에 따른 영상 화질이 개선될 수 있다.According to an embodiment of the present invention, there is provided a video encoding method using a dynamic lane transformation based on content and a device thereof, or a video decoding method using a dynamic lane transformation based on a content and an apparatus according to an embodiment. Since the image processing such as intra prediction and inter prediction can be performed more precisely by extending the dynamic range of, image quality due to encoding and decoding can be improved.

이하 도 8 내지 22를 참조하여, 본 발명의 일 실시예에 따른 영역별 계층적 데이터 단위에 기반하여 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 및 복호화에 관한 다양한 실시예들이 개시된다.Hereinafter, various embodiments of video encoding and decoding using dynamic range transformation based on content based on hierarchical data units for respective regions according to an embodiment of the present invention will be described with reference to FIGS. 8 to 22.

도 8 은 본 발명의 일 실시예에 따른 영역별 계층적 데이터 단위에 기반하여, 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 장치의 블록도를 도시한다.8 is a block diagram of a video encoding apparatus using a dynamic range transformation based on content, based on a hierarchical data unit for each region according to an embodiment of the present invention.

일 실시예에 따른 비디오 부호화 장치(80)는, 최대 부호화 단위 분할부(81), 다이나믹 레인지 변환된 영상 부호화부(83) 및 비트스트림 출력부(85)를 포함한다.The video encoding apparatus 80 according to an embodiment includes a maximum coding unit splitter 81, a dynamic range transformed image encoder 83, and a bitstream output unit 85.

이하 설명의 편의를 위해, 일 실시예에 따른 영역별 계층적 데이터 단위에 기반하여 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 장치(80)는, 일 실시예에 따른 비디오 부호화 장치(80)로 축약하여 지칭한다.For convenience of description below, the video encoding apparatus 80 using the dynamic range transformation based on the content based on the hierarchical data unit for each region according to an embodiment is abbreviated as the video encoding apparatus 80 according to the embodiment. Refer to.

일 실시예에 따른 최대 부호화 단위 분할부(81)는, 영상의 현재 픽처를 위한 최대 크기의 부호화 단위인 최대 부호화 단위에 기반하여 현재 픽처를 구획할 수 있다. 현재 픽처가 최대 부호화 단위보다 크다면, 현재 픽처의 영상 데이터는 적어도 하나의 최대 부호화 단위로 분할될 수 있다. 최대 부호화 단위의 높이 및 너비를 계층적으로 분할할 수 있는 총 횟수를 제한하는 최대 심도 및 부호화 단위의 최대 크기가 미리 설정되어 있을 수 있다. 영상 데이터는 적어도 하나의 최대 부호화 단위별로, 다이나믹 레인지 변환된 영상 부호화부(83)로 출력될 수 있다. The maximum coding unit splitter 81 according to an embodiment may partition the current picture based on the maximum coding unit that is a coding unit of the maximum size for the current picture of the image. If the current picture is larger than the maximum coding unit, image data of the current picture may be split into at least one maximum coding unit. The maximum depth and the maximum size of the coding unit that limit the total number of times of hierarchically dividing the height and the width of the maximum coding unit may be preset. The image data may be output to the image encoder 83 which is dynamic range converted for each of at least one maximum coding unit.

일 실시예에 따른 다이나믹 레인지 변환된 영상 부호화부(83)는, 현재 픽처가 소정 최대 크기의 부호화 단위로 분할된 각각의 최대 부호화 단위에 대하여, 영역별 계층적 부호화 단위별로 부호화를 수행한다. 일 실시예에 따른 영역별 계층적 부호화 단위별 부호화는, 심도가 깊어짐에 따라 최대 부호화 단위가 분할된 영역마다, 심도가 더 깊어짐에 따라 계층적으로 분할되는 심도별 부호화 단위에 대한 부호화를 뜻한다.The dynamic range transformed image encoder 83 according to an embodiment performs encoding on a hierarchical coding unit for each region, for each maximum coding unit obtained by dividing the current picture into coding units having a predetermined maximum size. The encoding for each hierarchical coding unit for each region according to an embodiment refers to encoding for deeper coding units that are hierarchically divided according to a deeper depth, for each region in which a maximum coding unit is divided as a depth deepens. .

일 실시예에 따른 부호화 단위는 최대 크기 및 심도로 특징지어질 수 있다. 심도란 부호화 단위가 최대 부호화 단위로부터 계층적으로 분할되는 횟수에 따르는 지표이며, 심도가 깊어질수록 심도별 부호화 단위는 최대 부호화 단위로부터 최소 부호화 단위까지 분할될 수 있다. 최대 부호화 단위의 심도가 최상위 심도이며 최소 부호화 단위가 최하위 부호화 단위로 정의될 수 있다. 최대 부호화 단위는 심도가 깊어짐에 따라 심도별 부호화 단위의 크기는 감소하므로, 상위 심도의 부호화 단위는 복수 개의 하위 심도의 부호화 단위를 포함할 수 있다.The coding unit according to an embodiment may be characterized by a maximum size and depth. The depth is an index according to the number of times the coding unit is hierarchically divided from the maximum coding unit, and as the depth increases, the coding units according to depths may be split from the maximum coding unit to the minimum coding unit. The depth of the largest coding unit is the highest depth and the minimum coding unit may be defined as the lowest coding unit. As the maximum coding unit decreases as the depth increases, the size of the coding unit for each depth decreases, and thus, the coding unit of the higher depth may include coding units of a plurality of lower depths.

일 실시예에 따른 최대 심도는 최대 부호화 단위로부터 최소 부호화 단위까지의 분할 횟수와 관련된 지표이다. 일 실시예에 따른 제 1 최대 심도는, 최대 부호화 단위로부터 최소 부호화 단위까지의 총 분할 횟수를 나타낼 수 있다. 일 실시예에 따른 제 2 최대 심도는 최대 부호화 단위로부터 최소 부호화 단위까지의 심도 레벨의 총개수를 나타낼 수 있다. 예를 들어, 최대 부호화 단위의 심도가 0이라고 할 때, 최대 부호화 단위가 1회 분할된 부호화 단위의 심도는 1, 2번 분할된 부호화 단위의 심도가 2로 설정될 수 있다. 이 경우, 최대 부호화 단위로부터 4회 분할된 부호화 단위가 최소 부호화 단위라면, 심도 0, 1, 2, 3 및 4의 심도 레벨이 존재하므로 일 실시예에 따른 최대 심도는 4, 다른 실시예에 따른 최대 심도는 5로 설정될 수 있다.The maximum depth according to an embodiment is an index related to the number of divisions from the maximum coding unit to the minimum coding unit. The first maximum depth according to an embodiment may represent the total number of divisions from the maximum coding unit to the minimum coding unit. The second maximum depth according to an embodiment may represent the total number of depth levels from the maximum coding unit to the minimum coding unit. For example, when the depth of the largest coding unit is 0, the depth of the coding unit obtained by dividing the largest coding unit once may be set to the depth of the coding unit divided once or twice. In this case, if the coding unit divided four times from the maximum coding unit is the minimum coding unit, since depth levels of 0, 1, 2, 3, and 4 exist, the maximum depth according to an embodiment is 4, according to another embodiment. The maximum depth may be set to five.

전술한 바와 같이 부호화 단위의 최대 크기에 따라, 현재 픽처의 영상 데이터를 최대 부호화 단위로 분할하며, 각각의 최대 부호화 단위는 심도별로 분할되는 부호화 단위들을 포함할 수 있다. 일 실시예에 따른 최대 부호화 단위는 심도별로 분할되므로, 최대 부호화 단위에 포함된 공간 영역(spatial domain)의 영상 데이터가 심도에 따라 계층적으로 분류될 수 있다. 심도별 부호화 단위에 대한 기술적 특징은 이하 도 10 내지 19를 참조하여 상술된다.As described above, the image data of the current picture may be divided into maximum coding units according to the maximum size of the coding unit, and each maximum coding unit may include coding units divided by depths. Since the maximum coding unit is divided according to depths, image data of a spatial domain included in the maximum coding unit may be hierarchically classified according to depths. Technical features of the coding units according to depths are described below with reference to FIGS. 10 to 19.

일 실시예에 따른 다이나믹 레인지 변환된 영상 부호화부(83)는, 최대 부호화 단위의 적어도 하나의 심도별 부호화 단위에 기초하여 인트라 예측 및 인터 예측, 주파수변환 및 양자화를 수행할 수 있다.The dynamic range transformed image encoder 83 according to an embodiment may perform intra prediction, inter prediction, frequency transformation, and quantization based on at least one depth-based coding unit of the largest coding unit.

일 실시예에 따른 다이나믹 레인지 변환된 영상 부호화부(83)는, 현재 프레임의 다이나믹 레인지가 컨텐트에 기반하여 변환된 영상 데이터를 이용하여 현재 프레임에 대한 인트라 예측 및 인터 예측을 수행할 수 있다. 여기서 컨텐트에 기반한 다이나믹 레인지의 변환은 일 실시예에 따른 비디오 부호화부(100)를 통해 전술한 다이나믹 레인지의 변환에 대응된다.The dynamic range-converted image encoder 83 according to an embodiment may perform intra prediction and inter prediction on the current frame using image data obtained by converting the dynamic range of the current frame based on content. Here, the transformation of the dynamic range based on the content corresponds to the above-described transformation of the dynamic range through the video encoder 100 according to an embodiment.

일 실시예에 따르면, 픽셀값의 현재 비트 뎁스로 표현 가능한 최소한계값 내지 최대한계값의 범위로, 현재 픽처의 픽셀값들이 확장되도록 다이나믹 레인지가 변환될 수 있다. 이에 따라 일 실시예에 따른 다이나믹 레인지 변환된 영상 부호화부(83)는, 픽셀값의 최소한계값 내지 최대한계값의 범위로 다이나믹 레인지가 변환된 영상 데이터를 이용하여, 현재 픽처를 부호화할 수 있다.According to an embodiment, the dynamic range may be converted so that the pixel values of the current picture are extended to a range of a minimum value to a maximum value that can be expressed as the current bit depth of the pixel value. Accordingly, the dynamic range-converted image encoder 83 according to an embodiment may encode the current picture by using the image data of which the dynamic range is converted into a range of minimum to maximum pixel values. .

따라서 현재 픽처의 다이나믹 레인지가 변환된 영상 데이터를 이용하여 현재프레임에 대한 인트라 예측 및 인터 예측이 각각 수행될 수 있다. 이 경우, 현재 픽처의 다이나믹 레인지는, 현재 픽처의 픽셀값들 중 상한값보다 큰 값은 최대한계값에 대응하도록 변환되고, 하한값보다 작은 값은 최소한계값에 대응하도록 변환되고, 상한값 및 하한값 사이의 픽셀값들은 최대한계값 및 최소한계값 사이의 값으로 일대일 대응하도록 변환될 수 있다.Therefore, intra prediction and inter prediction for the current frame may be performed using image data obtained by converting the dynamic range of the current picture. In this case, the dynamic range of the current picture is converted so that a value larger than an upper limit among pixel values of the current picture corresponds to a maximum value, a value smaller than a lower limit is converted to correspond to a minimum value, and between an upper limit value and a lower limit value. The pixel values may be converted to have a one-to-one correspondence with a value between the maximum value and the minimum value.

현재 픽처의 픽셀값 중 상한값 및 하한값은, 각각 현재 픽처의 픽셀값들 중 극대값 및 극소값으로 결정될 수 있다. 또는 현재 픽처의 픽셀값 중 상한값 및 하한값이 별도로 설정되는 경우에는, 일 실시예에 따른 다이나믹 레인지 변환에 따라 현재 픽처 중 상한값보다 크거나 하한값보다 작은 현재 픽셀값은 절삭되는 결과가 유도될 수 있다.The upper limit value and the lower limit value of the pixel values of the current picture may be determined as the maximum and minimum values of the pixel values of the current picture, respectively. Alternatively, when the upper limit value and the lower limit value of the pixel value of the current picture are set separately, a result in which the current pixel value larger than the upper limit value or smaller than the lower limit value of the current picture may be cut according to the dynamic range conversion according to an exemplary embodiment.

일 실시예에 따르면, 입력 비디오의 픽처 시퀀스, 프레임, 인트라 예측을 위한 프레임 세트, 영역 및 부호화 단위 중 하나의 데이터 단위별로 상한값 및 하한값이 결정할 수 있다.According to an embodiment, an upper limit value and a lower limit value may be determined for each data unit of a picture sequence, a frame, a frame set for intra prediction, an area, and a coding unit of an input video.

일 실시예에 따른 다이나믹 레인지 변환된 영상 부호화부(85)는, 입력 비디오의 컨텐트에 기반하여 다이나믹 레인지가 변환된 이전 픽처들에 대하여 인트라 예측 및 인터 예측을 수행하여 이전 픽처에 대한 레지듀얼 데이터를 출력할 수 있다. 이전 픽처에 대한 레지듀얼 데이터는, 주파수변환, 양자화, 역양자화, 역주파수변환 및 디블로킹 필터링을 통해 이전 픽처에 대한 복원 픽처로 복원될 수 있다.The dynamic range-converted image encoder 85 according to an embodiment performs intra prediction and inter prediction on previous pictures whose dynamic range is converted based on the content of the input video, and performs residual data on the previous picture. You can print The residual data for the previous picture may be reconstructed as a reconstructed picture for the previous picture through frequency transform, quantization, inverse quantization, inverse frequency transform, and deblocking filtering.

일 실시예에 따라 다이나믹 레인지가 픽처마다 변환되는 경우, 이전 픽처들에 대한 복원 픽처들의 다이나믹 레인지는 일단 원본 다이나믹 레인지로 복원되고 현재 픽처의 다이나믹 레인지에 기초하여 재변환되는 것이 바람직하다. 이런 식으로 현재 픽처와 동일한 다이나믹 레인지에 기초하도록 생성된 복원 픽처를 참조하여 현재 픽처 인터 예측이 수행될 수 있다.According to an embodiment, when the dynamic range is converted from picture to picture, the dynamic range of the reconstructed pictures for the previous pictures is preferably reconstructed based on the dynamic range of the current picture once reconstructed to the original dynamic range. In this way, the current picture inter prediction may be performed with reference to a reconstructed picture generated to be based on the same dynamic range as the current picture.

일 실시예에 따른 다이나믹 레인지 변환된 영상 부호화부(83)는, 다이나믹 레인지가 변환된 현재 픽처의 주변 영역 정보를 이용하여 현재 픽처에 대한 인트라 예측을 수행할 수 있다.The dynamic range transformed image encoder 83 according to an embodiment may perform intra prediction on the current picture by using the peripheral region information of the current picture having the converted dynamic range.

일 실시예에 따른 비디오 부호화 장치(80)는, 입력 비디오의 부복호화 과정 내부적으로, 영상 픽셀값의 비트 뎁스를 확장하여 이용할 수 있다. 이에 따라 내부적으로 확장된 비트뎁스에 따른 영상 데이터의 다이나믹 레인지가 변환되고, 변환된 다이나믹 레인지의 영상 데이터를 이용하여 현재 픽처에 대한 인트라 예측 및 인터 예측이 수행될 수도 있다.The video encoding apparatus 80 according to an embodiment may extend and use a bit depth of an image pixel value internally in the decoding process of the input video. Accordingly, the dynamic range of the image data according to the internally extended bit depth may be converted, and intra prediction and inter prediction may be performed on the current picture using the converted dynamic range image data.

일 실시예에 따른 다이나믹 레인지 변환된 영상 부호화부(83)는, 인트라 예측 및 인터 예측에 의해 생성된 레지듀얼 데이터에 대해 주파수변환을 수행하고, 주파수변환에 의해 생성된 변환 계수에 대해 양자화를 수행한다.The dynamic range transformed image encoder 83 according to an embodiment performs frequency transform on residual data generated by intra prediction and inter prediction, and quantizes transform coefficients generated by frequency transform. do.

일 실시예에 따른 비디오 부호화 장치(80)가 일 실시예에 따른 영역별 계층적 데이터 단위에 기반한 비디오 부호화 방식에 기초하는 경우, 일 실시예에 따른 다이나믹 레인지 변환된 영상 부호화부(83)는, 영역별 계층적 부호화 단위를 부호화하여 최종 부호화 결과가 출력될 심도를 결정한다. 즉 일 실시예에 따른 다이나믹 레인지 변환된 영상 부호화부(83)는, 현재 픽처의 최대 부호화 단위마다 심도별 부호화 단위로 영상 데이터를 부호화하여 가장 작은 부호화 오차가 발생하는 심도를 선택하여 부호화 심도로 결정할 수 있다. 적어도 하나의 부호화 심도마다, 해당 부호화 단위에 대한 부호화 모드가 결정될 수 있다. 결정된 부호화 심도 및 최대 부호화 단위별 영상 데이터는 비트스트림 출력부(85)로 출력된다.When the video encoding apparatus 80 according to an embodiment is based on a video encoding method based on hierarchical data units for each region according to an embodiment, the dynamic range transformed image encoder 83 according to an embodiment may include: A hierarchical coding unit for each region is encoded to determine a depth at which the final encoding result is output. That is, the dynamic range-converted image encoder 83 according to an embodiment encodes the image data in coding units according to depths for each maximum coding unit of the current picture, and selects a depth at which the smallest coding error occurs to determine the coding depth. Can be. For each of at least one coded depth, an encoding mode for a corresponding coding unit may be determined. The determined coded depth and the image data for each maximum coding unit are output to the bitstream output unit 85.

최대 부호화 단위 내의 영상 데이터는 최대 심도 이하의 적어도 하나의 심도에 따라 심도별 부호화 단위에 기반하여 부호화되고, 각각의 심도별 부호화 단위에 기반한 부호화 결과가 비교된다. 심도별 부호화 단위의 부호화 오차의 비교 결과 부호화 오차가 가장 작은 심도가 선택될 수 있다. 각각의 최대화 부호화 단위마다 적어도 하나의 부호화 심도가 결정될 수 있다.Image data in the largest coding unit is encoded based on coding units according to depths according to at least one depth less than or equal to the maximum depth, and encoding results based on the coding units for each depth are compared. As a result of comparing the encoding error of the coding units according to depths, a depth having the smallest encoding error may be selected. At least one coding depth may be determined for each maximum coding unit.

최대 부호화 단위의 크기는 심도가 깊어짐에 따라 부호화 단위가 계층적으로 분할되어 분할되며 부호화 단위의 개수는 증가한다. 또한, 하나의 최대 부호화 단위에 포함되는 동일한 심도의 부호화 단위들이라 하더라도, 각각의 데이터에 대한 부호화 오차를 측정하고 하위 심도로의 분할 여부가 결정된다. 따라서, 하나의 최대 부호화 단위에 포함되는 데이터라 하더라도 위치에 따라 심도별 부호화 오차가 다르므로 위치에 따라 부호화 심도가 달리 결정될 수 있다. 따라서, 하나의 최대 부호화 단위에 대해 부호화 심도가 하나 이상 설정될 수 있으며, 최대 부호화 단위의 데이터는 하나 이상의 부호화 심도의 부호화 단위에 따라 구획될 수 있다.As the depth of the maximum coding unit increases, the coding unit is divided into hierarchically and the number of coding units increases. In addition, even in the case of coding units having the same depth included in one largest coding unit, a coding error of each data is measured, and whether or not division into a lower depth is determined. Therefore, even in the data included in one largest coding unit, since the encoding error for each depth is different according to the position, the coding depth may be differently determined according to the position. Accordingly, one or more coding depths may be set for one maximum coding unit, and data of the maximum coding unit may be partitioned according to coding units of one or more coding depths.

최대 부호화 단위의 예측 부호화 및 주파수변환이 수행될 수 있다. 예측 부호화 및 주파수변환도 마찬가지로, 최대 부호화 단위마다, 최대 심도 이하의 심도마다 심도별 부호화 단위를 기반으로 수행된다.Predictive coding and frequency transformation of the largest coding unit may be performed. Similarly, the prediction encoding and the frequency transformation are performed based on depth-wise coding units for each maximum coding unit and for each depth below the maximum depth.

최대 부호화 단위가 심도별로 분할될 때마다 심도별 부호화 단위의 개수가 증가하므로, 심도가 깊어짐에 따라 생성되는 모든 심도별 부호화 단위에 대해 예측 부호화 및 주파수변환을 포함한 부호화가 수행되어야 한다. 이하 설명의 편의를 위해 적어도 하나의 최대 부호화 단위 중 현재 심도의 부호화 단위를 기반으로 예측 부호화 및 주파수변환을 설명하겠다.Since the number of coding units for each depth increases each time the maximum coding unit is divided for each depth, encoding including prediction coding and frequency transform should be performed on all the coding units for each depth generated as the depth deepens. For convenience of explanation, the prediction encoding and the frequency transformation will be described based on the coding unit of the current depth among at least one maximum coding unit.

일 실시예에 따른 비디오 부호화 장치(80)는, 영상 데이터의 부호화를 위한 데이터 단위의 크기 또는 형태를 다양하게 선택할 수 있다. 영상 데이터의 부호화를 위해서는 예측 부호화, 주파수변환, 엔트로피 부호화 등의 단계를 거치는데, 모든 단계에 걸쳐서 동일한 데이터 단위가 사용될 수도 있으며, 단계별로 데이터 단위가 변경될 수도 있다.The video encoding apparatus 80 according to an embodiment may variously select a size or shape of a data unit for encoding image data. In order to encode the image data, a process of predictive encoding, frequency transformation, entropy encoding, and the like is performed. The same data unit may be used in all stages, or the data unit may be changed in stages.

예를 들어 비디오 부호화 장치(80)는, 영상 데이터의 부호화를 위한 부호화 단위 뿐만 아니라, 부호화 단위의 영상 데이터의 예측 부호화를 수행하기 위해, 부호화 단위와 다른 데이터 단위를 선택할 수 있다.For example, the video encoding apparatus 80 may select not only a coding unit for encoding the image data, but also a data unit different from the coding unit in order to perform predictive encoding of the image data in the coding unit.

최대 부호화 단위의 예측 부호화를 위해서는, 최대 부호화 단위의 심도별 부호화 단위의 부분적 데이터 단위를 기반으로 예측 부호화가 수행될 수 있다. 부호화 단위의 부분적 데이터 단위는, 부호화 단위 및 심도별 부호화 단위의 높이 및 너비 중 적어도 하나가 분할된 데이터 단위를 포함할 수 있다.For prediction encoding of the largest coding unit, prediction encoding may be performed based on a partial data unit of the coding unit according to depths of the maximum coding unit. The partial data unit of the coding unit may include a data unit in which at least one of a height and a width of the coding unit and depth-specific coding units are divided.

예를 들어, 부호화 단위의 크기가 2Nx2N(단, N은 양의 정수)인 경우, 부분적 데이터 단위의 크기는 2Nx2N, 2NxN, Nx2N, NxN 등일 수 있다. 부호화 단위의 높이 또는 너비 중 적어도 하나를 반분하는 형태의 데이터 단위 이외에도 다양하게 분할한 형태의 데이터 단위를 기반으로 예측 부호화가 수행될 수도 있다. 이하, 예측 부호화의 기반이 되는 데이터 단위는 '예측 단위'라고 지칭될 수 있다.For example, when the size of the coding unit is 2Nx2N (where N is a positive integer), the size of the partial data unit may be 2Nx2N, 2NxN, Nx2N, NxN, or the like. The prediction encoding may be performed based on variously divided data units in addition to a data unit having half of at least one of a height or a width of the coding unit. Hereinafter, the data unit on which the prediction encoding is based may be referred to as a 'prediction unit'.

부호화 단위의 예측 모드는, 인트라 모드, 인터 모드 및 스킵 모드 중 적어도 하나일 수 있다. 예를 들어 인트라 모드 및 인터 모드는, 2Nx2N, 2NxN, Nx2N, NxN 크기의 예측 단위에 대해서 수행될 수 있다. 또한, 스킵 모드는 2Nx2N 크기의 예측 단위에 대해서만 수행될 수 있다. 부호화 단위 이내의 하나의 예측 단위마다 독립적으로 부호화가 수행되어 부호화 오차가 가장 작은 예측 모드가 선택될 수 있다.The prediction mode of the coding unit may be at least one of an intra mode, an inter mode, and a skip mode. For example, the intra mode and the inter mode may be performed with respect to prediction units having sizes of 2N × 2N, 2N × N, N × 2N, and N × N. In addition, the skip mode may be performed only for a prediction unit having a size of 2N × 2N. The encoding may be performed independently for each prediction unit within the coding unit to select a prediction mode having the smallest encoding error.

또한, 일 실시예에 따른 비디오 부호화 장치(80)는, 영상 데이터의 부호화를 위한 부호화 단위 뿐만 아니라, 부호화 단위와 다른 데이터 단위를 기반으로 부호화 단위의 영상 데이터의 주파수변환을 수행할 수 있다.Also, the video encoding apparatus 80 according to an embodiment may perform frequency conversion of image data of a coding unit based on not only a coding unit for encoding image data, but also a data unit different from the coding unit.

부호화 단위의 주파수변환을 위해서는, 부호화 단위보다 작거나 같은 크기의 데이터 단위를 기반으로 주파수변환이 수행될 수 있다. 예를 들어, 주파수변환을 위한 데이터 단위는, 인트라 모드를 위한 데이터 단위 및 인터 모드를 위한 데이터 단위를 포함할 수 있다. 이하, 주파수변환의 기반이 되는 데이터 단위는 '변환 단위'라고 지칭될 수 있다.For frequency transformation of a coding unit, frequency transformation may be performed based on a data unit having a size smaller than or equal to the coding unit. For example, the data unit for frequency conversion may include a data unit for an intra mode and a data unit for an inter mode. Hereinafter, the data unit on which the frequency conversion is based may be referred to as a 'conversion unit'.

부호화 심도별 부호화 정보는, 부호화 심도 뿐만 아니라 예측 관련 정보 및 주파수변환 관련 정보가 필요하다. 따라서, 일 실시예에 따른 다이나믹 레인지 변환된 영상 부호화부(83)는 최소 부호화 오차를 발생시킨 부호화 심도 뿐만 아니라, 부호화 심도의 부호화 단위를 예측 단위로 분할한 파티션 타입, 예측 단위별 예측 모드, 주파수변환을 위한 변환 단위의 크기 등을 결정할 수 있다.The encoded information for each coded depth requires not only the coded depth but also prediction related information and frequency transform related information. Accordingly, the dynamic range-converted image encoder 83 according to an embodiment not only has a coded depth that generates a minimum coding error, but also a partition type obtained by dividing a coding unit of a coded depth into prediction units, a prediction mode for each prediction unit, and a frequency. The size of a transformation unit for transformation may be determined.

일 실시예에 따른 다이나믹 레인지 변환된 영상 부호화부(83)는 심도별 부호화 단위의 부호화 오차를 라그랑지 곱(Lagrangian Multiplier) 기반의 율-왜곡 최적화 기법(Rate-Distortion Optimization)을 이용하여 측정할 수 있다.The dynamic range transformed image encoder 83 according to an embodiment may measure encoding errors of coding units according to depths using a Lagrangian Multiplier-based rate-distortion optimization technique. have.

일 실시예에 따른 비트스트림 출력부(85)는 부호화 심도 및 부호화 모드에 대한 정보 및 부호화된 영상 데이터를 포함하는 비트스트림을 출력할 수 있다. 일 실시예에 따른 비트스트림 출력부(85)는, 영역별 계층적 데이터 단위에 기반하여 결정된 부호화 심도 및 부호화 모드에 따른 부호화 결과인 부호화된 영상 데이터에 대해 엔트로피 부호화를 수행하고, 비트스트림 출력부(85)는 부호화 심도 및 부호화 모드에 대한 정보 및 부호화된 영상 데이터를 포함하는 비트스트림을 출력할 수 있다.The bitstream output unit 85 according to an embodiment may output a bitstream including information about a coded depth and an encoding mode and encoded image data. The bitstream output unit 85 according to an embodiment may perform entropy encoding on encoded image data that is a result of encoding according to an encoding depth and an encoding mode determined based on hierarchical data units for each region, and then output the bitstream output unit. The processor 85 may output a bitstream including information about an encoded depth and an encoding mode and encoded image data.

일 실시예에 따른 비트스트림 출력부(85)는, 다이나믹 레인지 변환된 영상 부호화부(85)에서 결정된 적어도 하나의 부호화 심도에 기초하여 부호화된 최대 부호화 단위의 영상 데이터 및 심도별 부호화 모드에 관한 정보를 비트스트림 형태로 출력한다. 다이나믹 레인지 변환된 영상 부호화부(85)에 의해 부호화된 영상 데이터는 엔트로피 부호화를 통해 비트스트림 형태로 변환된 후, 전송용 비트스트림에 삽입될 수 있다.The bitstream output unit 85 according to an embodiment may include information about image data and a coding mode according to depths, which are encoded based on at least one coded depth determined by the dynamic range-converted image encoder 85. Output in the form of a bitstream. The image data encoded by the dynamic range-converted image encoder 85 may be converted into a bitstream form through entropy encoding and then inserted into a bitstream for transmission.

일 실시예에 따라 부호화된 영상 데이터는 영상의 레지듀얼 데이터의 부호화 결과일 수 있다. 일 실시예에 따른 심도별 부호화 모드에 관한 정보는, 부호화 심도 정보, 부호화 심도의 부호화 단위의 예측 단위의 파티션 타입 정보, 예측 단위별 예측 모드 정보, 변환 단위의 크기 정보 등을 포함할 수 있다.According to an embodiment, the encoded image data may be a result of encoding residual data of an image. The information about the encoding modes according to depths according to an embodiment may include coded depth information, partition type information of a prediction unit of a coding unit of a coding depth, prediction mode information for each prediction unit, and size information of a transformation unit.

부호화 심도 정보는, 현재 심도로 부호화하지 않고 하위 심도의 부호화 단위로 부호화할지 여부를 나타내는 심도별 분할 정보를 이용하여 정의될 수 있다. 현재 부호화 단위의 현재 심도가 부호화 심도라면, 현재 부호화 단위는 현재 심도의 부호화 단위로 부호화되므로 현재 심도의 분할 정보는 더 이상 하위 심도로 분할되지 않도록 정의될 수 있다. 반대로, 현재 부호화 단위의 현재 심도가 부호화 심도가 아니라면 하위 심도의 부호화 단위를 이용한 부호화를 시도해보아야 하므로, 현재 심도의 분할 정보는 하위 심도의 부호화 단위로 분할되도록 정의될 수 있다.The coded depth information may be defined using depth-specific segmentation information indicating whether to encode to a coding unit of a lower depth without encoding to the current depth. If the current depth of the current coding unit is a coding depth, since the current coding unit is encoded in a coding unit of the current depth, split information of the current depth may be defined so that it is no longer divided into lower depths. On the contrary, if the current depth of the current coding unit is not the coding depth, encoding should be attempted using the coding unit of the lower depth, and thus split information of the current depth may be defined to be divided into coding units of the lower depth.

현재 심도가 부호화 심도가 아니라면, 하위 심도의 부호화 단위로 분할된 부호화 단위에 대해 부호화가 수행된다. 현재 심도의 부호화 단위 내에 하위 심도의 부호화 단위가 하나 이상 존재하므로, 각각의 하위 심도의 부호화 단위마다 반복적으로 부호화가 수행되어, 동일한 심도의 부호화 단위마다 재귀적(recursive) 부호화가 수행될 수 있다.If the current depth is not the coded depth, encoding is performed on the coding unit divided into the coding units of the lower depth. Since at least one coding unit of a lower depth exists in the coding unit of the current depth, encoding may be repeatedly performed for each coding unit of each lower depth, and recursive coding may be performed for each coding unit of the same depth.

하나의 최대 부호화 단위 안에 적어도 하나의 부호화 심도가 결정되며 부호화 심도마다 적어도 하나의 부호화 모드에 관한 정보가 결정되어야 하므로, 하나의 최대 부호화 단위에 대해서는 적어도 하나의 부호화 모드에 관한 정보가 결정될 수 있다. 또한, 최대 부호화 단위의 데이터는 심도에 따라 계층적으로 구획되어 위치 별로 부호화 심도가 다를 수 있으므로, 데이터에 대해 부호화 심도 및 부호화 모드에 관한 정보가 설정될 수 있다.Since at least one coding depth is determined in one maximum coding unit and information about at least one coding mode should be determined for each coding depth, information about at least one coding mode may be determined for one maximum coding unit. In addition, since the data of the largest coding unit is divided hierarchically according to the depth, the coding depth may be different for each location, and thus information about the coded depth and the coding mode may be set for the data.

현재 프레임 또는 현재 시퀀스 등 소정 범위의 비디오 단위 내에서 설정된 부호화 단위들, 예측 단위들 및 변환 단위들 중 가장 작은 크기의 정사각 데이터 단위가 '최소 단위'라 지칭될 수 있다. 일 실시예에 따른 비트스트림 출력부(85)는, 최대 부호화 단위에 포함되어 있는 최소 단위마다 해당 부호화 정보를 설정할 수 있다. 즉, 부호화 심도의 부호화 단위는 동일한 부호화 정보를 보유하고 있는 최소 단위를 하나 이상 포함하고 있다. 이를 이용하여, 인근 최소 단위들이 동일한 심도별 부호화 정보를 갖고 있다면, 동일한 최대 부호화 단위에 포함되는 최소 단위일 수 있다.The smallest square data unit among coding units, prediction units, and transformation units set within a predetermined range of video units such as a current frame or a current sequence may be referred to as a 'minimum unit'. The bitstream output unit 85 according to an embodiment may set corresponding encoding information for each minimum unit included in the maximum coding unit. That is, the coding unit of the coded depth includes one or more minimum units having the same coding information. By using this, if the neighboring minimum units have the same depth-specific encoding information, it may be the minimum unit included in the same maximum coding unit.

예를 들어 일 실시예에 따른 비트스트림 출력부(85)를 통해 출력되는 부호화 정보는, 심도별 부호화 단위별 부호화 정보와 예측 단위별 부호화 정보로 분류될 수 있다. 심도별 부호화 단위별 부호화 정보는, 예측 모드 정보, 파티션 크기 정보를 포함할 수 있다. 예측 단위별로 전송되는 부호화 정보는 인터 모드의 추정 방향에 관한 정보, 인터 모드의 참조 영상 인덱스에 관한 정보, 움직임 벡터에 관한 정보, 인트라 모드의 크로마 성분에 관한 정보, 인트라 모드의 보간 방식에 관한 정보 등을 포함할 수 있다. 또한, 픽처, 슬라이스 또는 GOP별로 정의되는 부호화 단위의 최대 크기에 관한 정보 및 최대 심도에 관한 정보는 비트스트림의 헤더에 삽입될 수 있다.For example, the encoding information output through the bitstream output unit 85 according to an embodiment may be classified into encoding information according to depth coding units and encoding information according to prediction units. The encoding information for each coding unit according to depth may include prediction mode information and partition size information. The encoding information transmitted for each prediction unit includes information about an estimation direction of the inter mode, information about a reference image index of the inter mode, information about a motion vector, information about a chroma component of an intra mode, and information about an inter mode of an intra mode. And the like. In addition, information about a maximum size and information about a maximum depth of a coding unit defined for each picture, slice, or GOP may be inserted in a header of a bitstream.

일 실시예에 따른 일 실시예에 따른 비트스트림 출력부(85)는 적응적 루프 필터링에 이용되는 필터 계수를 부호화하여 출력할 수 있다. 또한, 일 실시예에 따른 적응적 루프 필터링을 위해, 각각의 1차원 필터의 종류, 개수, 크기, 양자화 비트, 계수, 필터링 방향, 필터링 수행 여부 및 러닝 필터링 수행 여부 등이 설정될 수 있으므로, 루프 필터링의 1차원 필터 세트에 대한 정보가 부호화되어 전송될 수도 있다.The bitstream output unit 85 according to an embodiment may encode and output filter coefficients used for adaptive loop filtering. In addition, for adaptive loop filtering according to an embodiment, the type, number, size, quantization bit, coefficient, filtering direction, whether to perform filtering and whether to perform running filtering, etc. may be set. Information about the one-dimensional filter set of filtering may be encoded and transmitted.

일 실시예에 따른 비디오 부호화 장치(80)의 가장 간단한 형태의 실시예에 따르면, 심도별 부호화 단위는 한 계층 상위 심도의 부호화 단위의 높이 및 너비를 반분한 크기의 부호화 단위이다. 즉, 현재 심도의 부호화 단위의 크기가 2Nx2N이라면, 하위 심도의 부호화 단위의 크기는 NxN 이다. 또한, 2Nx2N 크기의 현재 부호화 단위는 NxN 크기의 하위 심도 부호화 단위를 최대 4개 포함할 수 있다.According to an embodiment of the simplest form of the video encoding apparatus 80 according to an embodiment, a coding unit for each depth is a coding unit having a size that is half the height and width of the coding unit of a higher layer depth. That is, if the size of the coding unit of the current depth is 2Nx2N, the size of the coding unit of the lower depth is NxN. In addition, the current coding unit having a size of 2N × 2N may include up to four lower depth coding units having a size of N × N.

또한 일 실시예에 따른 비트스트림 출력부(85)는, 다이나믹 레인지 복원을 위한 다이나믹 레인지에 대한 정보를 부호화하여 전송용 비트스트림에 삽입될 수 있다. 일 실시예에 따른 비트스트림 출력부(85)는, 다이나믹 레인지 변환된 영상 부호화부(85)로부터 다이나믹 레인지 변환에 대한 부가 정보를 입력받아, 이를 부호화하여 비트스트림에 삽입할 수도 있다.In addition, the bitstream output unit 85 according to an embodiment may encode information about the dynamic range for dynamic range restoration and insert the encoded information about the dynamic range for insertion into the transmission bitstream. The bitstream output unit 85 according to an embodiment may receive additional information about the dynamic range transformation from the dynamic range transformed image encoder 85, encode the same, and insert the additional information into the bitstream.

예를 들어, 다이나믹 레인지 변환에 대한 정보는, 현재 픽처의 부호화된 데이터를 포함하는 비트스트림의 시퀀스 파라미터 세트 또는 슬라이스 헤더에 삽입될 수 있다. 일 실시예에 따른 다이나믹 레인지 변환에 대한 정보는, 입력 비디오의 컨텐트의 상한값 및 하한값에 대한 정보를 포함할 수 있다. 비트수를 절약하기 위해 상한값에 대한 정보 대신에, '픽셀값의 최대한계값 및 최소한계값의 차이'로부터 상한값을 뺀 값이 부호화될 수 있다.For example, the information on the dynamic range transformation may be inserted into a sequence parameter set or a slice header of a bitstream including encoded data of the current picture. The information on the dynamic range transformation according to an embodiment may include information about an upper limit value and a lower limit value of the content of the input video. In order to save the number of bits, instead of the information on the upper limit, a value obtained by subtracting the upper limit from the difference between the maximum value and the minimum value of the pixel value may be encoded.

따라서, 일 실시예에 따른 비디오 부호화 장치(80)는 현재 픽처의 특성을 고려하여 결정된 최대 부호화 단위의 크기 및 최대 심도를 기반으로, 각각의 최대 부호화 단위마다 최적의 형태 및 크기의 부호화 단위를 결정할 수 있다. 또한, 각각의 최대 부호화 단위마다 다양한 예측 모드, 주파수변환 방식 등으로 부호화할 수 있으므로, 다양한 영상 크기의 부호화 단위의 영상 특성을 고려하여 최적의 부호화 모드가 결정될 수 있다.Accordingly, the video encoding apparatus 80 according to an embodiment determines a coding unit having an optimal shape and size for each maximum coding unit based on the size and the maximum depth of the maximum coding unit determined in consideration of the characteristics of the current picture. Can be. In addition, since each of the maximum coding units may be encoded in various prediction modes, frequency transform schemes, or the like, an optimal coding mode may be determined in consideration of image characteristics of coding units having various image sizes.

따라서, 영상의 해상도가 매우 높거나 데이터량이 매우 큰 영상을 기존 매크로블록 단위로 부호화한다면, 픽처당 매크로블록의 수가 과도하게 많아진다. 이에 따라, 매크로블록마다 생성되는 압축 정보도 많아지므로 압축 정보의 전송 부담이 커지고 데이터 압축 효율이 감소하는 경향이 있다. 따라서, 일 실시예에 따른 비디오 부호화 장치는, 영상의 크기를 고려하여 부호화 단위의 최대 크기를 증가시키면서, 영상 특성을 고려하여 부호화 단위를 조절할 수 있으므로, 영상 압축 효율이 증대될 수 있다.Therefore, if an image having a very high resolution or a very large data amount is encoded in an existing macroblock unit, the number of macroblocks per picture is excessively increased. Accordingly, since the compressed information generated for each macroblock increases, the transmission burden of the compressed information increases, and the data compression efficiency tends to decrease. Therefore, the video encoding apparatus according to an embodiment may adjust the coding unit in consideration of the image characteristics while increasing the maximum size of the coding unit in consideration of the size of the image, thereby increasing image compression efficiency.

또한 일 실시예에 따라 컨텐트에 기반하여 다이나믹 레인지가 확장된 영상 데이터를 이용하여, 부호화 단위별로 인트라 예측 및 인터 예측 등의 영상 처리가 보다 세밀하게 수행될 수 있으므로, 부호화 및 복호화에 따른 영상 화질이 개선될 수 있다.Further, according to an exemplary embodiment, image processing such as intra prediction and inter prediction may be performed more precisely for each coding unit by using image data having an extended dynamic range based on content, so that image quality due to encoding and decoding may be improved. Can be improved.

도 9 은 본 발명의 일 실시예에 따른 영역별 계층적 데이터 단위에 기반하여, 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 장치의 블록도를 도시한다.FIG. 9 is a block diagram of a video decoding apparatus using content-based dynamic range transformation based on hierarchical hierarchical data units according to an embodiment of the present invention.

일 실시예에 따른 영역별 계층적 데이터 단위에 기반하여, 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 장치(90)는, 수신부(91), 부호화된 데이터, 부호화 정보 및 다이나믹 레인지 정보 추출부(93), 영상 데이터 복호화부(95) 및 다이나믹 레인지 복원된 영상 복원부(97)를 포함한다. 이하 편의를 위해, 일 실시예에 따른 영역별 계층적 데이터 단위에 기반하여 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 장치(90)는 일 실시예에 따른 비디오 복호화 장치(90)로 축약하고, 일 실시예에 따른 부호화된 데이터, 부호화 정보 및 다이나믹 레인지 정보 추출부(93)는 일 실시예에 따른 정보 추출부(93)으로 축약하고, 일 실시예에 따른 다이나믹 레인지 복원된 영상 복원부(97)는 일 실시예에 따른 영상 복원부(97)로 축약하여 지칭한다.Based on the hierarchical data unit for each region according to an embodiment, the video decoding apparatus 90 using the dynamic range transformation based on the content may include a receiver 91, encoded data, encoded information, and dynamic range information extractor 93. ), An image data decoder 95 and a dynamic range reconstructed image reconstructor 97. For convenience, the video decoding apparatus 90 using the dynamic range transformation based on the content based on the hierarchical data unit for each region according to an embodiment may be shortened to the video decoding apparatus 90 according to an embodiment. The encoded data, the encoded information, and the dynamic range information extractor 93 according to the embodiment are abbreviated to the information extractor 93 according to an embodiment, and the dynamic range restored image restorer 97 according to an embodiment. Is abbreviated to an image reconstructor 97 according to an embodiment.

일 실시예에 따른 비디오 복호화 장치(90)의 각종 프로세싱을 위한 부호화 단위, 심도, 예측 단위, 변환 단위, 각종 부호화 모드에 관한 정보 등 각종 용어의 정의는, 도 8 및 일 실시예에 따른 비디오 부호화 장치(80)를 참조하여 전술한 바와 동일하다.Definitions of various terms such as coding units, depths, prediction units, transformation units, and information about various encoding modes for various processings of the video decoding apparatus 90 according to an embodiment may include video encoding according to FIGS. 8 and 1. Same as described above with reference to device 80.

일 실시예에 따른 수신부(91)는 부호화된 비디오에 대한 비트스트림을 수신하여 파싱하고, 일 실시예에 따른 정보 추출부(93)는 파싱된 비트스트림으로부터 비트스트림으로부터 부호화된 데이터, 부호화 정보 및 다이나믹 레인지 정보를 추출한다. 추출된 부호화된 데이터 및 부호화 정보는 영상 데이터 복호화부(95)로 출력된다. 다이나믹 레인지 정보는 일 실시예에 따른 영상 복원부(97)로 출력될 수 있다.The receiver 91 according to an embodiment receives and parses a bitstream of an encoded video, and the information extractor 93 according to an embodiment encodes data, encoded information, and the like encoded from the bitstream from the parsed bitstream. Extract the dynamic range information. The extracted encoded data and encoded information are output to the image data decoder 95. The dynamic range information may be output to the image restoration unit 97 according to an embodiment.

일 실시예에 따른 정보 추출부(93)는 현재 픽처에 대한 헤더로부터 현재 픽처의 부호화 단위의 최대 크기에 관한 정보를 추출할 수 있다.The information extractor 93 according to an embodiment may extract information about a maximum size of a coding unit of the current picture from a header for the current picture.

또한, 일 실시예에 따른 정보 추출부(93)는 파싱된 비트스트림으로부터 최대 부호화 단위별 부호화 심도 및 부호화 모드에 관한 정보를 추출한다. 추출된 부호화 심도 및 부호화 모드에 관한 정보는 영상 데이터 복호화부(95)로 출력된다. 즉, 비트열의 영상 데이터를 최대 부호화 단위로 분할하여, 영상 데이터 복호화부(95)가 최대 부호화 단위마다 영상 데이터를 복호화하도록 할 수 있다.In addition, the information extractor 93 extracts information about a coded depth and an encoding mode for each largest coding unit from the parsed bitstream. The extracted information about the coded depth and the coding mode is output to the image data decoder 95. That is, the image data of the bit string may be divided into maximum coding units so that the image data decoder 95 may decode the image data for each maximum coding unit.

최대 부호화 단위별 부호화 심도 및 부호화 모드에 관한 정보는, 하나 이상의 부호화 심도 정보에 대해 설정될 수 있으며, 부호화 심도별 부호화 모드에 관한 정보는, 부호화 단위별 예측 단위의 파티션 타입 정보, 예측 모드 정보 및 변환 단위의 크기 정보 등을 포함할 수 있다. 또한, 부호화 심도 정보로서, 심도별 분할 정보가 추출될 수도 있다.The information about the coded depth and the encoding mode for each largest coding unit may be set for one or more coded depth information, and the information about the coding mode for each coded depth may include partition type information of a prediction unit for each coding unit, prediction mode information, and the like. The size information of the transformation unit may be included. In addition, split information for each depth may be extracted as the coded depth information.

일 실시예에 따른 정보 추출부(93)가 추출한 최대 부호화 단위별 부호화 심도 및 부호화 모드에 관한 정보는, 일 실시예에 따른 비디오 부호화 장치(80)와 같은 부호화단에서, 최대 부호화 단위별 심도별 부호화 단위마다 반복적으로 부호화를 수행하여 최소 부호화 오차를 발생시키는 것으로 결정된 부호화 심도 및 부호화 모드에 관한 정보이다. 따라서, 일 실시예에 따른 비디오 복호화 장치(90)는 최소 부호화 오차를 발생시키도록 부호화된 데이터를 복호화하여, 그에 상응하는 부호화 방식에 따라 원본 영상을 복원할 수 있다.The information about the coded depth and the encoding mode for each maximum coding unit extracted by the information extractor 93 according to an embodiment may be determined according to the depths according to the maximum coding units in the encoding stage, such as the video encoding apparatus 80 according to the embodiment. Information about a coded depth and an encoding mode determined to repeatedly perform encoding for each coding unit to generate a minimum encoding error. Therefore, the video decoding apparatus 90 according to an embodiment may decode the encoded data to generate the minimum encoding error, and reconstruct the original image according to the corresponding encoding scheme.

일 실시예에 따른 정보 추출부(93)는 최소 단위별로 부호화 심도 및 부호화 모드에 관한 정보를 추출할 수 있다. 최소 단위별로, 해당 최대 부호화 단위의 부호화 심도 및 부호화 모드에 관한 정보가 기록되어 있다면, 동일한 부호화 심도 및 부호화 모드에 관한 정보를 갖고 있는 최소 단위들은 동일한 최대 부호화 단위에 포함되는 데이터 단위로 유추될 수 있다. 즉, 동일한 정보의 최소 단위를 모아 복호화하면, 부호화 오차가 가장 작은 부호화 심도의 부호화 단위를 기반으로 한 복호화가 가능하다.The information extractor 93 according to an embodiment may extract information about a coded depth and an encoding mode for each minimum unit. For each minimum unit, if information about the coded depth and the encoding mode of the corresponding maximum coding unit is recorded, the minimum units having the information about the same coded depth and the encoding mode may be inferred as data units included in the same maximum coding unit. have. That is, when the minimum unit of the same information is collected and decoded, decoding based on the coding unit of the coded depth having the smallest encoding error is possible.

일 실시예에 따른 영상 데이터 복호화부(95)는 최대 부호화 단위별 부호화 심도 및 부호화 모드에 관한 정보에 기초하여 각각의 최대 부호화 단위의 영상 데이터를 복호화한다. 최대 부호화 단위별 부호화 심도 정보에 기초하여, 일 실시예에 따른 영상 데이터 복호화부(95)는 적어도 하나의 부호화 심도의 부호화 단위마다 영상 데이터를 복호화할 수 있다. 복호화 과정은 인트라 예측 및 움직임 보상을 포함하는 예측 과정, 및 역주파수변환 과정을 포함할 수 있다.The image data decoder 95 according to an embodiment decodes image data of each maximum coding unit based on information about a coded depth and an encoding mode for each maximum coding unit. Based on the coded depth information for each largest coding unit, the image data decoder 95 according to an embodiment may decode the image data for each coding unit of at least one coded depth. The decoding process may include a prediction process including intra prediction and motion compensation, and an inverse frequency transform process.

일 실시예에 따른 영상 데이터 복호화부(95)는, 부호화 단위별 예측 부호화를 위해, 부호화 심도별 부호화 단위의 예측 단위의 파티션 타입 정보 및 예측 모드 정보에 기초하여, 부호화 단위마다 각각의 예측 단위 및 예측 모드로 인트라 예측 또는 움직임 보상을 수행할 수 있다.The image data decoder 95 according to an embodiment may perform prediction units for each coding unit on the basis of partition type information and prediction mode information of the prediction unit of the coding unit for each coding depth, for prediction encoding for each coding unit. In the prediction mode, intra prediction or motion compensation may be performed.

또한, 일 실시예에 따른 영상 데이터 복호화부(95)는, 최대 부호화 단위별 역주파수변환을 위해, 부호화 심도별 부호화 단위의 변환 단위의 크기 정보에 기초하여, 부호화 단위마다 각각의 변환 단위로 역주파수변환을 수행할 수 있다.In addition, the image data decoder 95 according to an embodiment may perform inverse transformation on each transformation unit for each coding unit based on the size information of the transformation unit of the coding unit for each coding depth, for inverse frequency transformation for each coding unit. Frequency conversion can be performed.

일 실시예에 따른 영상 데이터 복호화부(95)는 심도별 분할 정보를 이용하는 현재 최대 부호화 단위의 부호화 심도를 결정할 수 있다. 만약, 분할 정보가 현재 심도로 복호화할 것을 나타내고 있다면 현재 심도가 부호화 심도이다. 따라서, 일 실시예에 따른 복호화부(95)는 현재 최대 부호화 단위의 영상 데이터에 대해 현재 심도의 부호화 단위를 예측 단위의 파티션 타입, 예측 모드 및 변환 단위 크기 정보를 이용하여 복호화할 수 있다.The image data decoder 95 according to an embodiment may determine a coded depth of a current maximum coding unit using split information according to depths. If the split information indicates decoding to the current depth, the current depth is the coded depth. Therefore, the decoder 95 according to an embodiment may decode the coding unit of the current depth with respect to the image data of the current maximum coding unit by using the partition type, the prediction mode, and the transformation unit size information of the prediction unit.

즉, 최소 단위에 대해 설정되어 있는 부호화 정보를 해석하여, 동일한 분할 정보를 포함한 부호화 정보를 보유하고 있는 최소 단위를 모아, 하나의 데이터 단위로 복호화할 수 있다.That is, the encoding information set with respect to the minimum unit can be analyzed, and the minimum unit holding encoding information including the same split information can be collected and decoded into one data unit.

일 실시예에 따른 영상 데이터 복호화부(95)에 의해 심도별 부호화 단위에 기초하여 복호화된 영상 데이터들은, 일 실시예에 따른 영상 복원부(97)로 입력될 수 있다. 일 실시예에 따른 영상 복원부(97)는, 복호화된 영상 데이터들을 최대 부호화 단위별로 복원하여 현재 픽처를 복원할 수 있다. 현재 픽처의 복원 화질을 향상시키기 위해, 디블로킹 필터링, 적응적 루프 필터링 등의 인루프 필터링이 수행될 수 있다.Image data decoded based on depth-based coding units by the image data decoder 95 according to an embodiment may be input to the image reconstructor 97 according to an embodiment. The image reconstructor 97 according to an embodiment may reconstruct the current picture by reconstructing the decoded image data for each largest coding unit. In order to improve reconstructed picture quality of the current picture, in-loop filtering such as deblocking filtering and adaptive loop filtering may be performed.

또한, 일 실시예에 따른 컨텐트에 기반하여 변환된 다이나믹 레인에 기반하여 부호화된 영상 데이터가 복호화된 경우라면, 일 실시예에 따른 영상 복원부(97)는, 일 실시예에 따른 정보 추출부(93)에 의해 추출된 다이나믹 레인지 정보를 이용하여, 현재 픽처의 원본 다이나믹 레인지를 복원할 수 있다.In addition, when image data encoded based on a dynamic lane converted based on content according to an embodiment is decoded, the image reconstructor 97 according to an embodiment may include an information extracting unit ( By using the dynamic range information extracted by 93), the original dynamic range of the current picture can be restored.

일 실시예에 따른 정보 추출부(93)에 의해 추출된 다이나믹 레인지 정보는, 현재 픽처의 다이나믹 레인지의 변환에 대한 정보를 포함할 수 있다. 예를 들어 일 실시예에 따라 수신된 다이나믹 레인지의 변환에 대한 정보는, 원본 비디오의 컨텐트의 상한값 및 하한값에 대한 정보를 포함할 수 있다. 추출된 정보 중 상한값에 대한 정보 대신에, 픽셀값의 최대한계값 및 최소한계값의 차이로부터 상한값을 뺀 값에 대한 정보가 포함되어 있을 수 있다.The dynamic range information extracted by the information extractor 93 according to an embodiment may include information on the conversion of the dynamic range of the current picture. For example, the received information about the conversion of the dynamic range may include information about an upper limit value and a lower limit value of the content of the original video. Instead of the information on the upper limit among the extracted information, the information on the value obtained by subtracting the upper limit from the difference between the maximum value and the minimum value of the pixel value may be included.

또한, 현재 프레임의 상한값 및 하한값이 설정된 데이터 단위에 대한 정보도 함께 수신될 수 있다. 예를 들어 현재 프레임의 상한값 및 하한값은, 각각 원본 비디오의 영상 시퀀스, 픽처, 프레임, 인트라 예측을 위한 프레임 세트, 영역 및 부호화 단위 중 하나의 데이터 단위별로 설정되어 있을 수 있다.In addition, information on the data unit in which the upper limit value and the lower limit value of the current frame are set may also be received. For example, the upper limit value and the lower limit value of the current frame may be set for each data unit of an image sequence, a picture, a frame, a frame set for intra prediction, an area, and a coding unit of the original video.

일 실시예에 따른 영상 복원부(97)는, 복호화, 루프 필터링 등에 의해 복원된 영상 데이터에 대해, 픽셀값의 현재 비트 뎁스로 표현 가능한 최대한계값 내지 최소한계값의 범위로 확장되어 있는 복원 픽셀값을, 현재 프레임의 다이나믹 레인지로 복원할 수 있다.The image reconstructor 97 according to an exemplary embodiment may include a reconstructed pixel extended with respect to image data reconstructed by decoding, loop filtering, etc., in the range of the maximum value to the minimum value that can be expressed by the current bit depth of the pixel value. You can restore the value to the dynamic range of the current frame.

일 실시예에 따른 영상 복원부(97)는, 복원 픽셀값들 중 최대한계값 및 최소한계값을, 각각 현재 프레임의 픽셀값들 중 상한값 및 하한값에 대응하도록 복원하고, 최대한계값 및 최소한계값 사이의 값들을 상한값 및 하한값 사이의 값에 일대일 대응하도록 변환할 수 있다. 현재 프레임의 상한값 및 하한값의 일례는, 각각 현재 프레임의 픽셀값들 중 극대값 및 극소값일 수 있다.The image reconstructor 97 restores the maximum value and the minimum value among the reconstructed pixel values to correspond to the upper limit value and the lower limit value among the pixel values of the current frame, respectively. The values between the values can be converted to have a one-to-one correspondence to the values between the upper and lower limits. One example of the upper limit value and the lower limit value of the current frame may be a local maximum and a local minimum among pixel values of the current frame.

일 실시예에 따른 영상 복원부(97)는, 최대한계값 및 최소한계값 사이의 값들에 대하여, 현재 복원된 데이터 값과 '상한값 및 하한값의 차이'의 곱을, '최대한계값 및 최소한계값의 차이'로 나눈 값에 하한값을 더한 값이, 일대일 대응되도록 변환할 수 있다. 일 실시예에 따른 영상 복원부(97)는, 현재 비트뎁스를 이용한 비트시프트에 의한 연산을 이용해, 최대한계값 및 최소한계값 사이의 값들에 대하여 일대일 대응되는 픽셀값을 연산하여 출력할 수 있다. 일 실시예에 따른 현재 비트뎁스는, 비디오의 부복호화 과정 동안 내부적으로 확장된 비트뎁스일 수도 있다.According to an exemplary embodiment, the image reconstructor 97 multiplies a value between a currently reconstructed data value and a 'difference between an upper limit value and a lower limit value' with respect to values between a maximum limit value and a minimum limit value. A value obtained by adding a lower limit to a value divided by a difference of 'can be converted to have a one-to-one correspondence. The image reconstructor 97 according to an embodiment may calculate and output a one-to-one corresponding pixel value with respect to values between the maximum limit value and the minimum limit value, using a bit shift operation using the current bit depth. . According to an embodiment, the current bit depth may be an internally extended bit depth during the video decoding process.

일 실시예에 따른 영상 복원부(97)에 의해 복원된 현재 프레임의 픽셀값은, 대응되는 원본 영상의 상한값 이상의 픽셀값 및 하한값 이하의 픽셀값은 절삭된 결과값일 수 있다.The pixel value of the current frame reconstructed by the image reconstructor 97 according to an exemplary embodiment may be a truncated result value of a pixel value greater than or equal to an upper limit and a pixel value less than or equal to a lower limit of the corresponding original image.

일 실시예에 따른 영상 데이터 복호화부(95)는, 원본 비디오의 이전 픽처에 대한 복원 픽처들을 참조하여, 현재 픽처에 대한 움직임 보상을 수행할 수 있다. 만일 픽처 단위로 다이나믹 레인지 변환에 대한 정보가 설정된 경우라면, 일 실시예에 따른 영상 데이터 복호화부(95)는, 일 실시예에 따른 영상 복원부(97)로부터 이전 픽처들에 대한 복원 픽처들을 수신하고, 복원 픽처들의 다이나믹 레인지를 현재 픽처의 변환된 다이나믹 레인지에 기초하여 재변환함으로써, 동일하게 확장된 다이나믹 레인지에 기반하는 복원 픽처를 참조하여 현재 픽처의 움직임 보상을 수행할 수 있다.The image data decoder 95 according to an embodiment may perform motion compensation on the current picture by referring to reconstructed pictures of the previous picture of the original video. If information on dynamic range conversion is set on a picture basis, the image data decoder 95 according to an embodiment receives the reconstructed pictures of previous pictures from the image reconstructor 97 according to an embodiment. In addition, by reconverting the dynamic range of the reconstructed pictures based on the converted dynamic range of the current picture, motion compensation of the current picture may be performed with reference to the reconstructed picture based on the same extended dynamic range.

일 실시예에 따른 비디오 복호화 장치(90)는, 부호화 과정에서 최대 부호화 단위마다 재귀적으로 부호화를 수행하여 최소 부호화 오차를 발생시킨 부호화 단위에 대한 정보를 획득하여, 이를 이용하여 현재 픽처에 대한 복호화를 수행할 수 있다. 즉, 최대 부호화 단위마다 최적 부호화 단위로 영상 데이터의 복호화가 가능해진다. 또한, 다이나믹 레인지가 변환되어 부호화된 영상 데이터에 대한 복호화인 경우, 수신된 다이나믹 레인지 변환에 관한 정보를 이용하여 원본 픽처의 다이나믹 레인지가 복원되므로, 부호화 단위별로 보다 세밀한 인트라 예측 및 인터 예측을 통해 부호화된 데이터를 최대 부호화 단위마다 최적 부호화 단위로 복호화할 수 있다.The video decoding apparatus 90 according to an embodiment obtains information on a coding unit that generates a minimum coding error by recursively encoding each maximum coding unit in the encoding process, and uses the same to decode the current picture. Can be performed. That is, the image data can be decoded in an optimal coding unit for each maximum coding unit. In addition, in the case of decoding the encoded image data after the dynamic range has been transformed, the dynamic range of the original picture is reconstructed using the received information on the dynamic range transform, and thus encoding is performed through more detailed intra prediction and inter prediction for each coding unit. The obtained data can be decoded in an optimal coding unit for each maximum coding unit.

이하 도 10 내지 20을 참조하여, 일 실시예에 따른 영역별 계층적 데이터 단위에 기반하여 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 및 복호화를 위해, 영역별 계층적 데이터 단위에 대해 상술된다.Hereinafter, with reference to FIGS. 10 through 20, hierarchical hierarchical data units are described in detail for video encoding and decoding using content-based dynamic range transformation based on hierarchical hierarchical data units according to an embodiment.

도 10 은 본 발명의 일 실시예에 따른 부호화 단위의 개념을 도시한다.10 illustrates a concept of coding units, according to an embodiment of the present invention.

부호화 단위의 예는, 너비x높이가 64x64인 부호화 단위부터, 32x32, 16x16, 8x8, 및 4x4를 포함할 수 있다. 정사각형 형태의 부호화 단위 이외에도, 너비x높이가 64x32, 32x64, 32x16, 16x32, 16x8, 8x16, 8x4, 4x8인 부호화 단위들이 존재할 수 있다.Examples of coding units may include 32x32, 16x16, 8x8, and 4x4, starting from a coding unit having a width x height of 64x64. In addition to the square coding units, there may be coding units having a width x height of 64x32, 32x64, 32x16, 16x32, 16x8, 8x16, 8x4, and 4x8.

비디오 데이터(310)에 대해서는, 해상도는 1920x1080, 부호화 단위의 최대 크기는 64, 최대 심도가 2로 설정되어 있다. 비디오 데이터(320)에 대해서는, 해상도는 1920x1080, 부호화 단위의 최대 크기는 64, 최대 심도가 4로 설정되어 있다. 비디오 데이터(330)에 대해서는, 해상도는 352x288, 부호화 단위의 최대 크기는 16, 최대 심도가 2로 설정되어 있다. 도 10에 도시된 최대 심도는, 최대 부호화 단위로부터 최소 부호화 단위까지의 총 분할 횟수를 나타낸다. As for the video data 310, the resolution is set to 1920x1080, the maximum size of the coding unit is 64, and the maximum depth is 2. As for the video data 320, the resolution is set to 1920x1080, the maximum size of the coding unit is 64, and the maximum depth is 4. For the video data 330, the resolution is set to 352x288, the maximum size of the coding unit is 16, and the maximum depth is 2. The maximum depth illustrated in FIG. 10 represents the total number of divisions from the maximum coding unit to the minimum coding unit.

해상도가 높거나 데이터량이 많은 경우 부호화 효율의 향상 뿐만 아니라 영상 특성을 정확히 반형하기 위해 부호화 사이즈의 최대 크기가 상대적으로 큰 것이 바람직하다. 따라서, 비디오 데이터(330)에 비해, 해상도가 높은 비디오 데이터(310, 320)는 부호화 사이즈의 최대 크기가 64로 선택될 수 있다.When the resolution is high or the amount of data is large, it is preferable that the maximum size of the coding size is relatively large not only to improve coding efficiency but also to accurately shape an image characteristic. Accordingly, the video data 310 or 320 having a higher resolution than the video data 330 may be selected to have a maximum size of 64.

최대 심도는 계층적 부호화 단위에서 총 계층수를 나타낸다. 따라서, 비디오 데이터(310)의 최대 심도는 2이므로, 비디오 데이터(310)의 부호화 단위(315)는 장축 크기가 64인 최대 부호화 단위로부터, 심도가 두 계층 깊어져서 장축 크기가 32, 16인 부호화 단위들까지 포함할 수 있다. 반면, 비디오 데이터(330)의 최대 심도는 2이므로, 비디오 데이터(330)의 부호화 단위(335)는 장축 크기가 16인 부호화 단위들로부터, 심도가 두 계층 깊어져서 장축 크기가 8, 4인 부호화 단위들까지 포함할 수 있다.The maximum depth represents the total number of layers in the hierarchical coding unit. Therefore, since the maximum depth of the video data 310 is 2, the coding unit 315 of the video data 310 is encoded from the largest coding unit having a long axis size of 64 by two layers of depth and having a long axis size of 32 or 16. It can include up to units. On the other hand, since the maximum depth of the video data 330 is 2, the coding unit 335 of the video data 330 has two long depths of encoding from the coding units having the long axis size of 16, so that the long axis sizes are 8 and 4 It can include up to units.

비디오 데이터(320)의 최대 심도는 4이므로, 비디오 데이터(320)의 부호화 단위(325)는 장축 크기가 64인 최대 부호화 단위로부터, 심도가 네 계층 깊어져서 장축 크기가 32, 16, 8, 4인 부호화 단위들까지 포함할 수 있다. 심도가 깊어질수록 세부 정보의 표현능력이 향상될 수 있다.Since the maximum depth of the video data 320 is 4, the coding unit 325 of the video data 320 has a depth of four layers deeper from the maximum coding unit having a long axis size of 64, so that the long axis size is 32, 16, 8, 4 Up to coding units may be included. As the depth increases, the expressive power of the detailed information may be improved.

도 11 는 본 발명의 일 실시예에 따른 부호화 단위에 기초한 영상 부호화부의 블록도를 도시한다.11 is a block diagram of an image encoder based on coding units, according to an embodiment of the present invention.

일 실시예에 따른 영상 부호화부(400)는, 일 실시예에 따른 비디오 부호화 장치(80)의 다이나믹 레인지 조정된 영상 부호화부(83)에서 영상 데이터를 부호화하는데 거치는 작업들을 포함한다. 즉, 인트라 예측부(410)는 현재 프레임(405) 중 인트라 모드의 부호화 단위에 대해 인트라 예측을 수행하고, 움직임 추정부(420) 및 움직임 보상부(425)는 인터 모드의 현재 프레임(405) 및 참조 프레임(495)를 이용하여 인터 추정 및 움직임 보상을 수행한다.The image encoder 400 according to an embodiment includes operations performed by the dynamic range adjusted image encoder 83 of the video encoding apparatus 80 according to an embodiment to encode image data. That is, the intra predictor 410 performs intra prediction on the coding unit of the intra mode among the current frame 405, and the motion estimator 420 and the motion compensator 425 are the current frame 405 of the inter mode. And the inter frame estimation and motion compensation using the reference frame 495.

인트라 예측부(410), 움직임 추정부(420) 및 움직임 보상부(425)로부터 출력된 데이터는 주파수변환부(430) 및 양자화부(440)를 거쳐 양자화된 변환 계수로 출력된다. 양자화된 변환 계수는 역양자화부(460), 역주파수변환부(470)을 통해 공간 영역의 데이터로 복원되고, 복원된 공간 영역의 데이터는 디블로킹부(480) 및 루프 필터링부(490)를 거쳐 후처리되어 참조 프레임(495)으로 출력된다. 양자화된 변환 계수는 엔트로피 부호화부(450)를 거쳐 비트스트림(455)으로 출력될 수 있다.Data output from the intra predictor 410, the motion estimator 420, and the motion compensator 425 is output as a quantized transform coefficient through the frequency transformer 430 and the quantizer 440. The quantized transform coefficients are restored to the data of the spatial domain through the inverse quantizer 460 and the inverse frequency converter 470, and the restored data of the spatial domain are deblocked 480 and the loop filter 490. After processing, the data is output to the reference frame 495. The quantized transform coefficients may be output to the bitstream 455 via the entropy encoder 450.

일 실시예에 따른 비디오 부호화 장치(80)에 적용되기 위해서는, 영상 부호화부(400)의 구성 요소들인 인트라 예측부(410), 움직임 추정부(420), 움직임 보상부(425), 주파수변환부(430), 양자화부(440), 엔트로피 부호화부(450), 역양자화부(460), 역주파수변환부(470), 디블로킹부(480) 및 루프 필터링부(490)가 모두, 최대 부호화 단위마다 최대 심도를 고려한 심도별 부호화 단위에 기반하여 작업을 수행하여야 한다.In order to be applied to the video encoding apparatus 80 according to an embodiment, an intra predictor 410, a motion estimator 420, a motion compensator 425, and a frequency converter that are components of the image encoder 400 may be used. 430, quantization unit 440, entropy encoding unit 450, inverse quantization unit 460, inverse frequency transformer 470, deblocking unit 480, and loop filtering unit 490 are all coded at maximum. Work should be performed based on depth-based coding units considering the maximum depth for each unit.

특히, 인트라 예측부(410), 움직임 추정부(420) 및 움직임 보상부(425)는 부호화 단위의 최대 크기 및 심도를 고려하여 부호화 단위 내의 예측 단위 및 예측 모드를 결정하며, 주파수변환부(430)는 부호화 단위의 최대 크기 및 심도를 고려하여 변환 단위의 크기를 고려하여야 한다.In particular, the intra predictor 410, the motion estimator 420, and the motion compensator 425 determine the prediction unit and the prediction mode in the coding unit in consideration of the maximum size and the depth of the coding unit, and the frequency converter 430. ) Should consider the size of the transform unit in consideration of the maximum size and depth of the coding unit.

도 12 는 본 발명의 일 실시예에 따른 부호화 단위에 기초한 영상 복호화부의 블록도를 도시한다.12 is a block diagram of an image decoder based on coding units, according to an embodiment of the present invention.

비트스트림(505)이 파싱부(510)를 거쳐 복호화 대상인 부호화된 비디오 데이터 및 복호화를 위해 필요한 부호화에 관한 정보가 파싱된다. 부호화된 비디오 데이터는 엔트로피 복호화부(520) 및 역양자화부(530)를 거쳐 역양자화된 데이터로 출력되고, 역주파수변환부(540)를 거쳐 공간 영역의 영상 데이터가 복원된다.The bitstream 505 is parsed through the parser 510, and the encoded video data to be decoded and information about encoding necessary for decoding are parsed. The encoded video data is output as dequantized data through the entropy decoding unit 520 and the inverse quantization unit 530, and the image data of the spatial domain is reconstructed through the inverse frequency converter 540.

공간 영역의 영상 데이터에 대해서, 인트라 예측부(550)는 인트라 모드의 부호화 단위에 대해 인트라 예측을 수행하고, 움직임 보상부(560)는 참조 프레임(585)를 함께 이용하여 인터 모드의 부호화 단위에 대해 움직임 보상을 수행한다.For the image data of the spatial domain, the intra prediction unit 550 performs intra prediction on the coding unit of the intra mode, and the motion compensator 560 uses the reference frame 585 together to apply the coding unit of the inter mode. Perform motion compensation for the

인트라 예측부(550) 및 움직임 보상부(560)를 거친 공간 영역의 데이터는 디블로킹부(570) 및 루프 필터링부(580)를 거쳐 후처리되어 복원 프레임(595)으로 출력될 수 있다. 또한, 디블로킹부(570) 및 루프 필터링부(580)를 거쳐 후처리된 데이터는 참조 프레임(585)으로서 출력될 수 있다.Data in the spatial domain that has passed through the intra predictor 550 and the motion compensator 560 may be post-processed through the deblocking unit 570 and the loop filtering unit 580 to be output to the reconstructed frame 595. In addition, the post-processed data through the deblocking unit 570 and the loop filtering unit 580 may be output as the reference frame 585.

일 실시예에 따른 비디오 복호화 장치(90)의 영상 데이터 복호화부(95)에서 영상 데이터를 복호화하기 위해, 일 실시예에 따른 영상 복호화부(500)의 파싱부(510) 이후의 단계별 작업들이 수행될 수 있다.In order to decode the image data by the image data decoder 95 of the video decoding apparatus 90 according to an embodiment, step-by-step operations after the parser 510 of the image decoder 500 according to an embodiment are performed. Can be.

일 실시예에 따른 비디오 복호화 장치(90)에 적용되기 위해서는, 영상 복호화부(500)의 구성 요소들인 파싱부(510), 엔트로피 복호화부(520), 역양자화부(530), 역주파수변환부(540), 인트라 예측부(550), 움직임 보상부(560), 디블로킹부(570) 및 루프 필터링부(580)가 모두, 최대 부호화 단위마다 부호화 심도의 부호화 단위에 기반하여 작업을 수행하여야 한다.In order to be applied to the video decoding apparatus 90 according to an exemplary embodiment, the parser 510, the entropy decoder 520, the inverse quantizer 530, and the inverse frequency converter, which are components of the image decoder 500, may be used. 540, the intra predictor 550, the motion compensator 560, the deblocking unit 570, and the loop filtering unit 580 all perform operations based on the coding unit of the coding depth for each largest coding unit. do.

특히, 인트라 예측부(550), 움직임 보상부(560)는 부호화 단위의 최대 크기 및 심도를 고려하여 부호화 단위 및 예측 모드를 결정하며, 역주파수변환부(540)는 부호화 단위의 최대 크기 및 심도를 고려하여 변환 단위의 크기를 고려하여야 한다.In particular, the intra predictor 550 and the motion compensator 560 determine a coding unit and a prediction mode in consideration of the maximum size and depth of the coding unit, and the inverse frequency transformer 540 determines the maximum size and depth of the coding unit. Consider the size of the transformation unit.

도 13 는 본 발명의 일 실시예에 따른 심도별 부호화 단위 및 예측 단위를 도시한다.13 is a diagram of deeper coding units according to depths, and prediction units, according to an embodiment of the present invention.

일 실시예에 따른 비디오 부호화 장치(80) 및 일 실시예에 따른 비디오 복호화 장치(90)는 영상 특성을 고려하기 위해 계층적인 부호화 단위를 사용한다. 부호화 단위의 최대 높이 및 너비, 최대 심도는 영상의 특성에 따라 적응적으로 결정될 수도 있으며, 사용자의 요구에 따라 다양하게 설정될 수도 있다. 미리 설정된 부호화 단위의 최대 크기에 따라, 심도별 부호화 단위의 크기가 결정될 수 있다.The video encoding apparatus 80 and the video decoding apparatus 90 according to an embodiment use hierarchical coding units to consider image characteristics. The maximum height, width, and maximum depth of the coding unit may be adaptively determined according to the characteristics of the image, and may be variously set according to a user's request. According to the maximum size of the preset coding unit, the size of the coding unit for each depth may be determined.

일 실시예에 따른 부호화 단위의 계층 구조(600)는 부호화 단위의 최대 높이 및 너비가 64이며, 최대 심도가 5인 경우를 도시하고 있다. 도 13에 도시된 최대 심도는, 최대 부호화 단위로부터 최소 부호화 단위까지의 심도 레벨의 총 개수를 나타낸다. The hierarchical structure 600 of a coding unit according to an embodiment illustrates a case in which a maximum height and a width of a coding unit are 64 and a maximum depth is five. The maximum depth illustrated in FIG. 13 represents the total number of depth levels from the maximum coding unit to the minimum coding unit.

일 실시예에 따른 부호화 단위의 계층 구조(600)의 세로축을 따라서 심도가 깊어지므로 심도별 부호화 단위의 높이 및 너비가 각각 분할한다. 또한, 부호화 단위의 계층 구조(600)의 가로축을 따라, 각각의 심도별 부호화 단위의 예측 부호화의 기반이 되는 부분적 데이터 단위인 예측 단위가 도시되어 있다.Since the depth deepens along the vertical axis of the hierarchical structure 600 of the coding unit according to an embodiment, the height and the width of the coding unit for each depth are divided. Also, a prediction unit is illustrated, which is a partial data unit that is the basis of prediction encoding of each deeper coding unit along the horizontal axis of the hierarchical structure 600 of the coding unit.

즉, 부호화 단위(610)는 부호화 단위의 계층 구조(600) 중 최대 부호화 단위로서 심도가 0이며, 부호화 단위의 크기, 즉 높이 및 너비가 64x64이다. 세로축을 따라 심도가 깊어지며, 크기 32x32인 심도 1의 부호화 단위(620), 크기 16x16인 심도 2의 부호화 단위(630), 크기 8x8인 심도 3의 부호화 단위(640), 크기 4x4인 심도 4의 부호화 단위(650)가 존재한다. 크기 4x4인 심도 4의 부호화 단위(650)는 최소 부호화 단위이다.That is, the coding unit 610 has a depth of 0 as the largest coding unit of the hierarchical structure 600 of the coding unit, and the size, ie, the height and width, of the coding unit is 64x64. The depth is deeper along the vertical axis, the coding unit 620 of depth 1 having a size of 32x32, the coding unit 630 of depth 2 having a size of 16x16, the coding unit 640 of depth 3 having a size of 8x8, and the depth 4 of depth 4x4. The coding unit 650 exists. A coding unit 650 having a depth of 4 having a size of 4 × 4 is a minimum coding unit.

각각의 심도별로 가로축을 따라, 부호화 단위의 예측 단위로서, 부분적 데이터 단위들이 배열된다. 즉, 심도 0의 크기 64x64의 부호화 단위(610)의 예측 단위는, 크기 64x64의 부호화 단위(610)에 포함되는 크기 64x64의 부분적 데이터 단위(610), 크기 64x32의 부분적 데이터 단위들(612), 크기 32x64의 부분적 데이터 단위들(614), 크기 32x32의 부분적 데이터 단위들(616)일 수 있다. 반대로 보면, 부호화 단위는 예측 단위들(610, 612, 614, 616)을 포함하는 최소 크기의 정사각형의 데이터 단위일 수 있다.Partial data units are arranged as prediction units of the coding unit along the horizontal axis for each depth. That is, the prediction unit of the coding unit 610 of size 64x64 having a depth of 0 includes the partial data unit 610 of the size 64x64 included in the coding unit 610 of the size 64x64, the partial data units 612 of the size 64x32, It may be partial data units 614 of size 32x64 and partial data units 616 of size 32x32. In contrast, the coding unit may be a data unit of a square size of a minimum size including the prediction units 610, 612, 614, and 616.

마찬가지로, 심도 1의 크기 32x32의 부호화 단위(620)의 예측 단위는, 크기 32x32의 부호화 단위(620)에 포함되는 크기 32x32의 부분적 데이터 단위(620), 크기 32x16의 부분적 데이터 단위들(622), 크기 16x32의 부분적 데이터 단위들(624), 크기 16x16의 부분적 데이터 단위들(626)일 수 있다.Similarly, the prediction unit of the coding unit 620 having a size of 32x32 having a depth of 1 includes the partial data unit 620 having a size of 32x32, the partial data units 622 having a size of 32x16, included in the coding unit 620 having a size of 32x32. It may be partial data units 624 of size 16x32 and partial data units 626 of size 16x16.

마찬가지로, 심도 2의 크기 16x16의 부호화 단위(630)의 예측 단위는, 크기 16x16의 부호화 단위(630)에 포함되는 크기 16x16의 부분적 데이터 단위(630), 크기 16x8의 부분적 데이터 단위들(632), 크기 8x16의 부분적 데이터 단위들(634), 크기 8x8의 부분적 데이터 단위들(636)일 수 있다.Similarly, the prediction unit of the coding unit 630 of size 16x16 having a depth of 2 may include the partial data unit 630 of the size 16x16 included in the coding unit 630 of the size 16x16, the partial data units 632 of the size 16x8, The partial data units 634 of size 8x16 and the partial data units 636 of size 8x8.

마찬가지로, 심도 3의 크기 8x8의 부호화 단위(640)의 예측 단위는, 크기 8x8의 부호화 단위(640)에 포함되는 크기 8x8의 부분적 데이터 단위(640), 크기 8x4의 부분적 데이터 단위들(642), 크기 4x8의 부분적 데이터 단위들(644), 크기 4x4의 부분적 데이터 단위들(646)일 수 있다.Similarly, the prediction unit of the coding unit 640 of size 8x8 having a depth of 3 includes the partial data unit 640 of the size 8x8 included in the coding unit 640 of the size 8x8, the partial data units 642 of the size 8x4, It may be partial data units 644 of size 4x8 and partial data units 646 of size 4x4.

마지막으로, 심도 4의 크기 4x4의 부호화 단위(650)는 최소 부호화 단위이며 최하위 심도의 부호화 단위이고, 크기 4x4의 부호화 단위(650)의 예측 단위는, 크기 4x4의 부분적 데이터 단위(650), 크기 4x2의 부분적 데이터 단위들(652), 크기 2x4의 부분적 데이터 단위들(654), 크기 2x2의 부분적 데이터 단위들(656)일 수 있다.Finally, the coding unit 650 of size 4x4 having a depth of 4 is a minimum coding unit and the coding unit of the lowest depth, and the prediction unit of the coding unit 650 of size 4x4 is a partial data unit 650 having a size of 4x4, and the size thereof. 4x2 partial data units 652, size 2x4 partial data units 654, size 2x2 partial data units 656.

일 실시예에 따른 비디오 부호화 장치(80)의 부호화 심도 및 부호화 모드 결정부(83)는, 최대 부호화 단위(610)의 부호화 심도를 결정하기 위해, 최대 부호화 단위(610)에 포함되는 각각의 심도의 부호화 단위마다 부호화를 수행하여야 한다.The coded depth and the coded mode determiner 83 of the video encoding apparatus 80 according to an exemplary embodiment may determine depths of the maximum coding unit 610 in order to determine the coded depth of the maximum coding unit 610. Encoding must be performed for each coding unit of.

동일한 범위 및 크기의 데이터를 포함하기 위한 심도별 부호화 단위의 개수는, 심도가 깊어질수록 심도별 부호화 단위의 개수도 증가한다. 예를 들어, 심도 1의 부호화 단위 한 개가 포함하는 데이터에 대해서, 심도 2의 부호화 단위는 네 개가 필요하다. 따라서, 동일한 데이터의 부호화 결과를 심도별로 비교하기 위해서, 한 개의 심도 1의 부호화 단위 및 네 개의 심도 2의 부호화 단위를 이용하여 각각 부호화되어야 한다.The number of deeper coding units according to depths for including data having the same range and size increases as the depth increases. For example, four coding units of depth 2 are required for data included in one coding unit of depth 1. Therefore, in order to compare the encoding results of the same data for each depth, each of the coding units having one depth 1 and four coding units having four depths 2 should be encoded.

각각의 심도별 부호화를 위해서는, 부호화 단위의 계층 구조(600)의 가로축을 따라, 심도별 부호화 단위의 예측 단위들마다 부호화를 수행하여, 해당 심도에서 가장 작은 부호화 오차인 대표 부호화 오차가 선택될 수다. 또한, 부호화 단위의 계층 구조(600)의 세로축을 따라 심도가 깊어지며, 각각의 심도마다 부호화를 수행하여, 심도별 대표 부호화 오차를 비교하여 최소 부호화 오차가 검색될 수 있다. 최대 부호화 단위(610) 중 최소 부호화 오차가 발생하는 심도가 최대 부호화 단위(610)의 부호화 심도 및 파티션 타입으로 선택될 수 있다.For each depth coding, encoding may be performed for each prediction unit of a coding unit according to depths along a horizontal axis of the hierarchical structure 600 of the coding unit, and a representative coding error, which is the smallest coding error at a corresponding depth, may be selected. . In addition, a depth deeper along the vertical axis of the hierarchical structure 600 of the coding unit, the encoding may be performed for each depth, and the minimum coding error may be searched by comparing the representative coding error for each depth. The depth in which the minimum coding error occurs in the maximum coding unit 610 may be selected as the coding depth and the partition type of the maximum coding unit 610.

도 14 은 본 발명의 일 실시예에 따른, 부호화 단위 및 변환 단위의 관계를 도시한다.14 illustrates a relationship between a coding unit and transformation units, according to an embodiment of the present invention.

일 실시예에 따른 비디오 부호화 장치(80) 또는 일 실시예에 따른 비디오 복호화 장치(90)는, 최대 부호화 단위마다 최대 부호화 단위보다 작거나 같은 크기의 부호화 단위로 영상을 부호화하거나 복호화한다. 부호화 과정 중 주파수변환을 위한 변환 단위의 크기는 각각의 부호화 단위보다 크지 않은 데이터 단위를 기반으로 선택될 수 있다.The video encoding apparatus 80 or the video decoding apparatus 90 according to the embodiment encodes or decodes an image in coding units having a size smaller than or equal to the maximum coding unit for each maximum coding unit. The size of a transform unit for frequency transformation during the encoding process may be selected based on a data unit that is not larger than each coding unit.

예를 들어, 일 실시예에 따른 비디오 부호화 장치(80) 또는 일 실시예에 따른 비디오 복호화 장치(90)에서, 현재 부호화 단위(710)가 64x64 크기일 때, 32x32 크기의 변환 단위(720)를 이용하여 주파수변환이 수행될 수 있다.For example, in the video encoding apparatus 80 or the video decoding apparatus 90 according to the embodiment, when the current coding unit 710 is 64x64 size, the 32x32 size transformation unit 720 is selected. Frequency conversion can be performed using the above.

또한, 64x64 크기의 부호화 단위(710)의 데이터를 64x64 크기 이하의 32x32, 16x16, 8x8, 4x4 크기의 변환 단위들로 각각 주파수변환을 수행하여 부호화한 후, 원본과의 오차가 가장 적은 변환 단위가 선택될 수 있다.In addition, the data of the 64x64 coding unit 710 is encoded by performing frequency transformation on the 32x32, 16x16, 8x8, and 4x4 size transformation units of 64x64 size or less, and then the transformation unit having the least error with the original is obtained. Can be selected.

도 15 은 본 발명의 일 실시예에 따라, 심도별 부호화 정보들을 도시한다.FIG. 15 illustrates encoding information according to depths, according to an embodiment of the present invention.

일 실시예에 따른 비디오 부호화 장치(80)의 부호화 정보 부호화부는 부호화 모드에 관한 정보로서, 각각의 부호화 심도의 부호화 단위마다 파티션 타입에 관한 정보(800), 예측 모드에 관한 정보(810), 변환 단위 크기에 대한 정보(820)를 부호화하여 전송할 수 있다.The encoding information encoder of the video encoding apparatus 80 according to an embodiment is information about an encoding mode, and information about a partition type 800, information about a prediction mode 810, and transformation for each coding unit of each coded depth. Information 820 about the unit size may be encoded and transmitted.

파티션 타입에 대한 정보(800)는, 현재 부호화 단위의 예측 부호화를 위해 예측 단위로서, 현재 부호화 단위가 분할된 타입에 대한 정보를 나타낸다. 예를 들어, 심도 0 및 크기 2Nx2N의 현재 부호화 단위 CU_0는, 크기 2Nx2N의 예측 단위(802), 크기 2NxN의 예측 단위(804), 크기 Nx2N의 예측 단위(806), 크기 NxN의 예측 단위(808) 중 어느 하나의 타입으로 분할되어 예측 단위로 이용될 수 있다. 이 경우 현재 부호화 단위의 파티션 타입에 관한 정보(800)는 크기 2Nx2N의 예측 단위(802), 크기 2NxN의 예측 단위(804), 크기 Nx2N의 예측 단위(806) 및 크기 NxN의 예측 단위(808) 중 하나를 나타내도록 설정된다.The information about the partition type 800 indicates information about a type in which the current coding unit is split as a prediction unit for prediction encoding of the current coding unit. For example, the current coding unit CU_0 of depth 0 and size 2Nx2N includes a prediction unit 802 of size 2Nx2N, a prediction unit 804 of size 2NxN, a prediction unit 806 of size Nx2N, and a prediction unit of size NxN 808. ) May be divided into any one type and used as a prediction unit. In this case, the information 800 about the partition type of the current coding unit includes a prediction unit 802 of size 2Nx2N, a prediction unit 804 of size 2NxN, a prediction unit 806 of size Nx2N, and a prediction unit 808 of size NxN. It is set to indicate one of the.

예측 모드에 관한 정보(810)는, 각각의 예측 단위의 예측 모드를 나타낸다. 예를 들어 예측 모드에 관한 정보(810)를 통해, 파티션 타입에 관한 정보(800)가 가리키는 예측 단위가 인트라 모드(812), 인터 모드(814) 및 스킵 모드(816) 중 하나로 예측 부호화가 수행되는지 여부가 설정될 수 있다.Information 810 about the prediction mode indicates a prediction mode of each prediction unit. For example, through the information 810 about the prediction mode, the prediction unit indicated by the information 800 about the partition type is performed by one of the intra mode 812, the inter mode 814, and the skip mode 816. Can be set.

또한, 변환 단위 크기에 관한 정보(820)는 현재 부호화 단위를 어떠한 변환 단위를 기반으로 주파수변환을 수행할지 여부를 나타낸다. 예를 들어, 변환 단위는 제 1 인트라 변환 단위 크기(822), 제 2 인트라 변환 단위 크기(824), 제 1 인터 변환 단위 크기(826), 제 2 인트라 변환 단위 크기(828) 중 하나일 수 있다.In addition, the information about the transform unit size 820 indicates whether to transform the current coding unit based on the transform unit. For example, the transform unit may be one of a first intra transform unit size 822, a second intra transform unit size 824, a first inter transform unit size 826, and a second intra transform unit size 828. have.

일 실시예에 따른 비디오 복호화 장치(90)의 정보 추출부(93)는, 각각의 심도별 부호화 단위마다 파티션 타입에 관한 정보(800), 예측 모드에 관한 정보(810), 변환 단위 크기에 대한 정보(820)를 추출하여 복호화에 이용할 수 있다.The information extractor 93 of the video decoding apparatus 90 according to an embodiment may include information about a partition type 800, information 810 about a prediction mode, and a transform unit size for each depth-based coding unit. The information 820 may be extracted and used for decoding.

도 16 는 본 발명의 일 실시예에 따른 심도별 부호화 단위를 도시한다.16 is a diagram of deeper coding units according to depths, according to an embodiment of the present invention.

심도의 변화를 나타내기 위해 분할 정보가 이용될 수 있다. 분할 정보는 현재 심도의 부호화 단위가 하위 심도의 부호화 단위로 분할될지 여부를 나타낸다.Segmentation information may be used to indicate a change in depth. The split information indicates whether a coding unit of a current depth is split into coding units of a lower depth.

심도 0 및 2N_0x2N_0 크기의 부호화 단위의 예측 부호화를 위한 예측 단위(910)는 2N_0x2N_0 크기의 파티션 타입(912), 2N_0xN_0 크기의 파티션 타입(914), N_0x2N_0 크기의 파티션 타입(916), N_0xN_0 크기의 파티션 타입(918)을 포함할 수 있다.The prediction unit 910 for predictive encoding of coding units having a depth of 0 and 2N_0x2N_0 size includes a partition type 912 having a size of 2N_0x2N_0, a partition type having a size of 2N_0xN_0 (914), a partition type having a size of N_0x2N_0 (916), and a partition having a size of N_0xN_0 Type 918 may be included.

파티션 타입마다, 한 개의 2N_0x2N_0 크기의 예측 단위, 두 개의 2N_0xN_0 크기의 예측 단위, 두 개의 N_0x2N_0 크기의 예측 단위, 네 개의 N_0xN_0 크기의 예측 단위마다 반복적으로 예측 부호화가 수행되어야 한다. 크기 2N_0x2N_0, 크기 N_0x2N_0 및 크기 2N_0xN_0 및 크기 N_0xN_0의 예측 단위에 대해서는, 인트라 모드 및 인터 모드로 예측 부호화가 수행될 수 있다. 스킵 모드는 크기 2N_0x2N_0의 예측 단위에 예측 부호화가 대해서만 수행될 수 있다.For each partition type, prediction coding must be repeatedly performed for one prediction unit of 2N_0x2N_0 size, two prediction units of 2N_0xN_0 size, two prediction units of N_0x2N_0 size, and four prediction units of N_0xN_0 size. For prediction units of size 2N_0x2N_0, size N_0x2N_0, size 2N_0xN_0, and size N_0xN_0, prediction encoding may be performed in intra mode and inter mode. The skip mode may be performed only for prediction encoding on a prediction unit having a size of 2N_0x2N_0.

크기 N_0xN_0의 파티션 타입(918)에 의한 부호화 오차가 가장 작다면, 심도 0를 1로 변경하고(920), 심도 2 및 크기 N_0xN_0의 파티션 타입의 부호화 단위들(922, 924, 926, 928)에 대해 반복적으로 최소 부호화 오차를 검색해 나갈 수 있다.If the encoding error of the partition type 918 having the size N_0xN_0 is the smallest, the depth 0 is changed to 1 (920), and the depth 2 and the coding units 922, 924, 926, and 928 of the partition type having the size N_0xN_0 are changed. We can repeatedly search for the minimum coding error.

동일한 심도의 부호화 단위들(922, 924, 926, 928)에 대해 부호화가 반복적으로 수행되므로, 이중 하나만 예를 들어 심도 1의 부호화 단위의 부호화를 설명한다. 심도 1 및 크기 2N_1x2N_1 (=N_0xN_0)의 부호화 단위의 예측 부호화를 위한 예측 단위(930)는, 크기 2N_1x2N_1의 파티션 타입(932), 크기 2N_1xN_1의 파티션 타입(934), 크기 N_1x2N_1의 파티션 타입(936), 크기 N_1xN_1의 파티션 타입(938)을 포함할 수 있다. 파티션 타입마다, 한 개의 크기 2N_1x2N_1의 예측 단위, 두 개의 크기 2N_1xN_1의 예측 단위, 두 개의 크기 N_1x2N_1의 예측 단위, 네 개의 크기 N_1xN_1의 예측 단위마다 반복적으로 예측 부호화가 수행되어야 한다.Since encoding is repeatedly performed on coding units 922, 924, 926, and 928 having the same depth, only one of them will be described, for example, encoding of a coding unit having a depth of 1. The prediction unit 930 for predictive encoding of a coding unit having a depth of 1 and a size of 2N_1x2N_1 (= N_0xN_0) includes a partition type 932 of size 2N_1x2N_1, a partition type 934 of size 2N_1xN_1, and a partition type 936 of size N_1x2N_1. It may include a partition type 938 of size N_1xN_1. For each partition type, prediction encoding must be repeatedly performed for each prediction unit of size 2N_1x2N_1, prediction units of two sizes 2N_1xN_1, prediction units of two sizes N_1x2N_1, and prediction units of four sizes N_1xN_1.

또한, 크기 N_1xN_1 크기의 파티션 타입(938)에 의한 부호화 오차가 가장 작다면, 심도 1을 심도 2로 변경하면서(940), 심도 2 및 크기 N_2xN_2의 부호화 단위들(942, 944, 946, 948)에 대해 반복적으로 최소 부호화 오차를 검색해 나갈 수 있다.Also, if the encoding error of the partition type 938 having the size N_1xN_1 is the smallest, the depth 1 is changed to the depth 2 (940), and the coding units 942, 944, 946, and 948 of the depth 2 and the size N_2xN_2 are used. We can repeatedly search for the minimum coding error.

최대 심도가 d인 경우, 심도별 분할 정보는 심도 d-1일 때까지 설정될 수 있다. 즉, 심도 d-1 및 크기 2N_(d-1)x2N_(d-1)의 부호화 단위의 예측 부호화를 위한 예측 단위(950)는, 크기 2N_(d-1)x2N_(d-1)의 파티션 타입(952), 크기 2N_(d-1)xN_(d-1)의 파티션 타입(954), 크기 N_(d-1)x2N_(d-1)의 파티션 타입(956), 크기 N_(d-1)xN_(d-1)의 파티션 타입(958)을 포함할 수 있다.In the case where the maximum depth is d, the split information for each depth may be set until the depth d-1. That is, the prediction unit 950 for the prediction encoding of the coding unit of the depth d-1 and the size 2N_ (d-1) x2N_ (d-1) is a partition having the size 2N_ (d-1) x2N_ (d-1). Partition type 954 of type 952, size 2N_ (d-1) xN_ (d-1), partition type 956 of size N_ (d-1) x2N_ (d-1), size N_ (d- 1) xN_ (d-1) may include a partition type 958.

파티션 타입마다, 한 개의 크기 2N_(d-1)x2N_(d-1)의 예측 단위, 두 개의 크기 2N_(d-1)xN_(d-1)의 예측 단위, 두 개의 크기 N_(d-1)x2N_(d-1)의 예측 단위, 네 개의 크기 N_(d-1)xN_(d-1)의 예측 단위마다 반복적으로 예측 부호화를 통한 부호화가 수행되어야 한다. 최대 심도가 d이므로, 심도 d-1의 부호화 단위(952)는 더 이상 분할 과정을 거치지 않는다.For each partition type, one prediction unit of size 2N_ (d-1) x2N_ (d-1), two prediction units of 2N_ (d-1) xN_ (d-1), two sizes N_ (d-1) It is necessary to repeatedly perform prediction coding on each prediction unit of) x2N_ (d-1) and prediction units of four sizes N_ (d-1) xN_ (d-1). Since the maximum depth is d, the coding unit 952 of the depth d-1 no longer undergoes a division process.

일 실시예에 따른 비디오 부호화 장치(80)는 부호화 단위(912)를 위한 부호화 심도를 결정하기 위해, 심도별 부호화 오차를 비교하여 가장 작은 부호화 오차가 발생하는 심도를 선택한다.The video encoding apparatus 80 according to an embodiment compares the encoding error for each depth to select a depth at which the smallest encoding error occurs in order to determine a coding depth for the coding unit 912.

예를 들어, 심도 0의 부호화 단위에 대한 부호화 오차는 파티션 타입(912, 914, 916, 918)마다 예측 부호화를 수행한 후 가장 작은 부호화 오차가 발생하는 예측 단위가 결정된다. 마찬가지로 심도 0, 1, ..., d-1 마다 부호화 오차가 가장 작은 예측 단위가 검색될 수 있다. 크기 2N_dx2N_d의 데이터 단위(960)는 최소 단위이면서, 심도 d-1의 부호화 단위(952)의 예측 단위이므로 이를 기반으로 예측 부호화를 통해 부호화 오차가 결정될 수도 있다.For example, as the encoding error for the coding unit having a depth of 0, a prediction unit in which the smallest coding error occurs after predictive encoding is performed for each partition type 912, 914, 916, and 918 is determined. Similarly, prediction units having the smallest coding error may be searched for depths 0, 1, ..., d-1. Since the data unit 960 having a size of 2N_dx2N_d is a minimum unit and is a prediction unit of the coding unit 952 having a depth d-1, a coding error may be determined based on the prediction encoding.

이런 식으로 심도 0, 1, ..., d-1의 모든 심도별 최소 부호화 오차를 비교하여 오차가 가장 작은 심도가 선택되어 부호화 심도로 결정될 수 있다. 부호화 심도 및 해당 심도의 예측 단위는 부호화 모드에 관한 정보로써 부호화되어 전송될 수 있다. 또한, 심도 0으로부터 부호화 심도에 이르기까지 부호화 단위가 분할되어야 하므로, 부호화 심도의 분할 정보만이 '0'으로 설정되고, 부호화 심도를 제외한 심도별 분할 정보는 '1'로 설정되어야 한다.In this way, the depth with the smallest error can be determined by comparing the minimum coding errors for all depths of depths 0, 1, ..., d-1 and determined as the coding depth. The coded depth and the prediction unit of the corresponding depth may be encoded and transmitted as information about an encoding mode. In addition, since the coding unit must be split from the depth 0 to the coded depth, only the split information of the coded depth is set to '0', and the split information for each depth except the coded depth should be set to '1'.

일 실시예에 따른 비디오 복호화 장치(90)의 정보 추출부(93)는 부호화 단위(912)에 대한 부호화 심도 및 예측 단위에 관한 정보를 추출하여 부호화 단위(912)를 복호화하는데 이용할 수 있다. 일 실시예에 따른 비디오 복호화 장치(90)는 심도별 분할 정보를 이용하여 분할 정보가 '0'인 심도를 부호화 심도로 파악하고, 해당 심도에 대한 부호화 모드에 관한 정보를 이용하여 복호화에 이용할 수 있다.The information extractor 93 of the video decoding apparatus 90 according to an embodiment may extract information about a coding depth and a prediction unit of the coding unit 912 and use the same to decode the coding unit 912. According to an embodiment, the video decoding apparatus 90 may identify a depth having split information of '0' as a coding depth by using split information for each depth, and may use the decoding depth by using information about an encoding mode for a corresponding depth. have.

도 17, 18 및 19는 본 발명의 일 실시예에 따른, 부호화 단위, 예측 단위 및 주파수변환 단위의 관계를 도시한다.17, 18, and 19 illustrate a relationship between a coding unit, a prediction unit, and a frequency transform unit, according to an embodiment of the present invention.

부호화 단위(1010)는, 최대 부호화 단위에 대해 일 실시예에 따른 비디오 부호화 장치(80)가 결정한 부호화 심도별 부호화 단위들이다. 예측 단위(1060)는 부호화 단위(1010) 중 각각의 부호화 심도별 부호화 단위의 예측 단위들이며, 변환 단위(1070)는 각각의 부호화 심도별 부호화 단위의 변환 단위들이다.The coding units 1010 are coding units according to coding depths determined by the video encoding apparatus 80 according to an embodiment with respect to the maximum coding unit. The prediction unit 1060 is prediction units of coding units of respective coding depths of the coding unit 1010, and the transformation unit 1070 is transformation units of coding units of each coding depth.

심도별 부호화 단위들(1010)은 최대 부호화 단위의 심도가 0이라고 하면, 부호화 단위들(1012, 1054)은 심도가 1, 부호화 단위들(1014, 1016, 1018, 1028, 1050, 1052)은 심도가 2, 부호화 단위들(1020, 1022, 1024, 1026, 1030, 1032, 1048)은 심도가 3, 부호화 단위들(1040, 1042, 1044, 1046)은 심도가 4이다.If the depth-based coding units 1010 have a depth of 0, the coding units 1012 and 1054 have a depth of 1, and the coding units 1014, 1016, 1018, 1028, 1050, and 1052 have depths. 2, coding units 1020, 1022, 1024, 1026, 1030, 1032, and 1048 have a depth of three, and coding units 1040, 1042, 1044, and 1046 have a depth of four.

예측 단위들(1060) 중 일부(1014, 1016, 1022, 1032, 1048, 1050, 1052, 1054)는 부호화 단위가 분할된 타입이다. 즉, 예측 단위(1014, 1022, 1050, 1054)는 2NxN의 파티션 타입이며, 예측 단위(1016, 1048, 1052)는 Nx2N의 파티션 타입, 예측 단위(1032)는 NxN의 파티션 타입이다. 즉, 심도별 부호화 단위들(1010)의 예측 단위는 각각의 부호화 단위보다 작거나 같다.Some of the prediction units 1060 1014, 1016, 1022, 1032, 1048, 1050, 1052, and 1054 are types in which coding units are split. That is, the prediction units 1014, 1022, 1050, and 1054 are partition types of 2N × N, the prediction units 1016, 1048, and 1052 are partition types of N × 2N, and the prediction units 1032 are partition types of N × N. That is, the prediction unit of the deeper coding units 1010 is smaller than or equal to each coding unit.

변환 단위들(1070) 중 일부(1052)의 영상 데이터에 대해서는 부호화 단위에 비해 작은 크기의 데이터 단위로 주파수변환 또는 역주파수변환이 수행된다. 또한, 변환 단위(1014, 1016, 1022, 1032, 1048, 1050, 1052, 1054)는 예측 단위들(1060) 중 해당 예측 단위와 비교해보면, 서로 다른 크기 또는 형태의 데이터 단위이다. 즉, 일 실시예에 따른 비디오 부호화 장치(80) 및 일 실시예에 다른 비디오 복호화 장치(90)는 동일한 부호화 단위에 대한 인트라 예측/움직임 추정/움직임 보상 작업, 및 주파수변환/역변환 작업이라 할지라도, 각각 별개의 데이터 단위를 기반으로 수행할 수 있다.The image data of the part 1052 of the transformation units 1070 is subjected to frequency transformation or inverse frequency transformation in a data unit having a smaller size than the coding unit. In addition, the transformation units 1014, 1016, 1022, 1032, 1048, 1050, 1052, and 1054 are data units having different sizes or shapes when compared to the corresponding prediction unit among the prediction units 1060. That is, the video encoding apparatus 80 according to an embodiment and the video decoding apparatus 90 according to the embodiment may be an intra prediction / motion estimation / motion compensation operation and a frequency conversion / inverse transformation operation for the same coding unit. Each can be performed based on separate data units.

도 20 은 본 발명의 일 실시예에 따른 부호화 단위별 부호화 정보를 도시한다.20 is a diagram of encoding information according to coding units, according to an embodiment of the present invention.

일 실시예에 따른 비디오 부호화 장치(80)의 비트스트림 출력부(85)는 부호화 단위별 부호화 정보를 출력하고, 일 실시예에 따른 비디오 복호화 장치(90)의 정보 추출부(93)는 부호화 단위별 부호화 정보를 추출할 수 있다.The bitstream output unit 85 of the video encoding apparatus 80 according to an embodiment outputs encoding information for each coding unit, and the information extractor 93 of the video decoding apparatus 90 according to an embodiment may be encoding unit. Star coding information can be extracted.

부호화 정보는 부호화 단위에 대한 분할 정보, 파티션 타입 정보, 예측 모드 정보, 변환 단위 크기 정보를 포함할 수 있다. 도 11에 도시되어 있는 부호화 정보들은 일 실시예에 따른 비디오 부호화 장치(80) 및 일 실시예에 따른 비디오 복호화 장치(90)에서 설정할 수 있는 일례이다.The encoding information may include split information about a coding unit, partition type information, prediction mode information, and transformation unit size information. The encoding information illustrated in FIG. 11 is an example that may be set in the video encoding apparatus 80 and the video decoding apparatus 90 according to an embodiment.

분할 정보는 해당 부호화 단위의 부호화 심도를 나타낼 수 있다. 즉, 분할 정보에 따라 더 이상 분할되지 않는 심도가 부호화 심도이므로, 부호화 심도에 대해서 파티션 타입 정보, 예측 모드, 변환 단위 크기 정보가 정의될 수 있다. 분할 정보에 따라 한 단계 더 분할되어야 하는 경우에는, 분할된 4개의 하위 심도의 부호화 단위마다 독립적으로 부호화가 수행되어야 한다.The split information may indicate a coded depth of a corresponding coding unit. That is, since a depth that is no longer divided according to the split information is a coded depth, partition type information, a prediction mode, and transform unit size information may be defined for the coded depth. If it is to be further split by the split information, encoding should be performed independently for each coding unit of the divided four lower depths.

파티션 타입 정보는, 부호화 심도의 부호화 단위의 변환 단위의 파티션 타입을 2Nx2N, 2NxN, Nx2N 및 NxN 중 하나로 나타낼 수 있다. 예측 모드는, 인트라 모드, 인터 모드 및 스킵 모드 중 하나로 나타낼 수 있다. 인트라 모드 및 인터 모드는 파티션 타입 2Nx2N, 2NxN, Nx2N 및 NxN에서 정의될 수 있으며, 스킵 모드는 파티션 타입 2Nx2N에서만 정의될 수 있다. 변환 단위 크기는 인트라 모드에서 두 종류의 크기, 인터 모드에서 두 종류의 크기로 설정될 수 있다.The partition type information may indicate a partition type of a transformation unit of a coding unit of a coding depth as one of 2Nx2N, 2NxN, Nx2N, and NxN. The prediction mode may be represented by one of an intra mode, an inter mode, and a skip mode. Intra mode and inter mode may be defined in partition types 2Nx2N, 2NxN, Nx2N and NxN, and a skip mode may be defined only in partition type 2Nx2N. The conversion unit size may be set to two kinds of sizes in the intra mode and two kinds of sizes in the inter mode.

부호화 단위 내의 최소 단위마다, 소속되어 있는 부호화 심도의 부호화 단위별 부호화 정보를 수록하고 있을 수 있다. 따라서, 인접한 최소 단위들끼리 각각 보유하고 있는 부호화 정보들을 확인하면, 동일한 부호화 심도의 부호화 단위에 포함되는지 여부가 확인될 수 있다. 또한, 최소 단위가 보유하고 있는 부호화 정보를 이용하면 해당 부호화 심도의 부호화 단위를 확인할 수 있으므로, 최대 부호화 단위 내의 부호화 심도들의 분포가 유추될 수 있다.For each minimum unit in the coding unit, encoding information for each coding unit of the coded depth to which the code belongs may be stored. Therefore, if the encoding information held by the adjacent minimum units, respectively, can be confirmed, it can be confirmed whether it is included in the coding unit of the same coded depth. In addition, since the coding unit of the corresponding coding depth may be identified by using the encoding information held by the minimum unit, the distribution of the coded depths within the maximum coding unit may be inferred.

따라서 이 경우 현재 부호화 단위가 주변 데이터 단위를 참조하여 예측하기 경우, 현재 부호화 단위에 인접하는 심도별 부호화 단위 내의 최소 단위의 부호화 정보가 직접 이용됨으로써 최소 단위의 데이터가 참조될 수 있다.Therefore, in this case, when the current coding unit is predicted with reference to the neighboring data unit, the minimum unit data may be referred to by using the encoding information of the minimum unit in the depth-specific coding unit adjacent to the current coding unit.

또 다른 실시예로, 심도별 부호화 단위의 부호화 정보가 심도별 부호화 단위 내 중 대표되는 최소 단위에 대해서만 저장되어 있을 수 있다. 이 경우 현재 부호화 단위가 주변 부호화 단위를 참조하여 예측되는 경우, 인접하는 심도별 부호화 단위의 부호화 정보를 이용하여, 심도별 부호화 단위 내에서 현재 부호화 단위에 인접하는 데이터가 검색됨으로써 참조될 수도 있다.
In another embodiment, the encoding information of the coding units according to depths may be stored only for the smallest representative unit among the coding units according to depths. In this case, when the current coding unit is predicted with reference to the neighboring coding unit, the data adjacent to the current coding unit may be referred to in the depth-wise coding unit by using the encoding information of the adjacent coding units according to depths.

도 21 은 본 발명의 일 실시예에 따른 영역별 계층적 데이터 단위에 기반하여, 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법의 흐름도를 도시한다.21 is a flowchart of a video encoding method using dynamic range transformation based on content, based on a hierarchical data unit for each region according to an embodiment of the present invention.

단계 2110에서, 입력된 비디오 시퀀스 중 현재 픽처가 최대 부호화 단위로 분할된다.In operation 2110, the current picture among the input video sequences is divided into maximum coding units.

단계 2120에서, 현재 픽처의 영상 데이터에 대해 컨텐트에 기반하여 다이나믹 레인지를 변환하고, 다이나믹 레인지가 변환된 영상 데이터에 대해 영역별 계층적 데이터 단위에 기반한 인트라 예측, 인터 예측, 주파수변환 및 양자화가 수행된다. 최대 부호화 단위의 영역별로 재귀적인 부호화를 수행한 결과, 부호화 심도 및 부호화 모드가 결정될 수 있다. 일 실시예에 따라 컨텐트에 기반하여 다이나믹 레인지가 변환된 영상 데이터에 대해 인트라 예측 및 인터 예측이 수행될 수 있다.In operation 2120, the dynamic range is converted based on the content of the image data of the current picture, and intra prediction, inter prediction, frequency conversion, and quantization are performed based on hierarchical data units for each region on the image data having the converted dynamic range. do. As a result of performing recursive encoding for each region of the largest coding unit, a coding depth and an encoding mode may be determined. According to an embodiment, intra prediction and inter prediction may be performed on image data whose dynamic range is converted based on content.

일 실시예에 따른 컨텐트에 기반한 다이나믹 레인지의 변환에 따라, 원본 영상의 상한값 내지 하한값 구간의 픽셀값들이 소정 비트 뎁스로 표현가능한 최소한계값 내지 최대한계값의 구간의 값으로 대응되도록 다이나믹 레인지가 확장될 수 있다.According to the conversion of the dynamic range based on the content according to an embodiment, the dynamic range is extended so that the pixel values of the upper limit value or the lower limit value range of the original image correspond to the minimum or maximum value range that can be expressed by a predetermined bit depth. Can be.

단계 2130에서, 최대 부호화 단위마다 심도별 부호화 단위별로 부호화된 데이터에 대해 엔트로피 부호화가 수행되고, 부호화된 데이터, 부호화 심도 및 부호화 모드에 관한 정보 및 다이나믹 레인지 정보를 포함하는 비트스트림이 출력된다.In operation 2130, entropy encoding is performed on the data encoded for each coding unit according to depths, and a bitstream including encoded data, information about a coded depth, an encoding mode, and dynamic range information is output.

도 22 은 본 발명의 일 실시예에 따른 영역별 계층적 데이터 단위에 기반하여, 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 방법의 흐름도를 도시한다.FIG. 22 is a flowchart of a video decoding method using dynamic range transformation based on content, based on a hierarchical data unit for each region according to an embodiment of the present invention.

단계 2210에서 부호화된 비디오 비트스트림이 수신되고, 단계 2220에서는 수신된 비트스트림을 파싱하여 파싱된 비트스트림으로부터 부호화된 데이터, 부호화 정보 및 다이나믹 레인지 정보가 추출된다. 단계 2230에서는 부호화된 데이터에 대해 엔트로피 복호화을 수행하여 데이터 심볼들이 복원된다.In operation 2210, the encoded video bitstream is received. In operation 2220, the received bitstream is parsed to extract encoded data, encoding information, and dynamic range information from the parsed bitstream. In operation 2230, data symbols are reconstructed by performing entropy decoding on the encoded data.

단계 2240에서, 데이터 심볼에 대하여 부호화 정보에 기초하여 영역별 계층적 데이터 단위에 기초한 역양자화 및 역주파수변환, 인트라 예측 및 움직임 보상을 수행하여, 최대 부호화 단위별로 영상 데이터가 복호화된다.In operation 2240, image data is decoded for each largest coding unit by performing inverse quantization, inverse frequency transformation, intra prediction, and motion compensation on a hierarchical data unit for each region based on encoding information.

단계 2250에서, 복호화된 픽처에 대해 디블로킹 필터링 등의 인루프 필터링을 수행함으로써 현재 픽처가 복원되고, 현재 픽처의 다이나믹 레인지가 복원된다. 비트스트림으로부터 다이나믹 레인지 변환에 대한 정보가 추출된 경우, 다이나믹 레인지 변환에 대한 정보에 기초하여 현재 픽처의 원본 다이나믹 레인지가 복원될 수 있다.In operation 2250, the current picture is reconstructed by performing in-loop filtering such as deblocking filtering on the decoded picture, and the dynamic range of the current picture is reconstructed. When the information on the dynamic range transformation is extracted from the bitstream, the original dynamic range of the current picture may be reconstructed based on the information on the dynamic range transformation.

일 실시예에 따른 컨텐트에 기반한 다이나믹 레인지의 복원에 따라, 복원 영상 데이터의 최소한계값 내지 최대한계값의 구간의 값이, 원본 영상의 상한값 내지 하한값 구간의 픽셀값으로 대응되도록 다이나믹 레인지가 축소될 수 있다.According to the restoration of the dynamic range based on the content according to an exemplary embodiment, the dynamic range may be reduced such that the minimum value or the maximum value range of the reconstructed image data corresponds to the pixel value of the upper limit value or the lower limit value of the original image. Can be.

일 실시예에 따른 일 실시예에 따른 영역별 계층적 데이터 단위에 기반하여 컨텐트에 기반한 다이나믹 레인 변환을 이용하는 비디오 부호화 방법 또는 일 실시예에 따른 영역별 계층적 데이터 단위에 기반하여 컨텐트에 기반한 다이나믹 레인 변환을 이용하는 비디오 복호화 방법에 따르면, 입력 영상의 다이나믹 레인지를 확장하여 인트라 예측 및 인터 예측 등의 영상 처리를 보다 세밀하게 수행할 수 있으므로, 부호화 및 복호화에 따른 영상 화질이 개선될 수 있다.A video encoding method using dynamic lane transformation based on content based on hierarchical data units of regions according to an embodiment, or dynamic lane based on content based on hierarchical data units of regions according to an embodiment According to the video decoding method using the transformation, since the dynamic range of the input image can be extended to further perform image processing such as intra prediction and inter prediction, the image quality according to encoding and decoding can be improved.

한편, 상술한 본 발명의 실시예들은 컴퓨터에서 실행될 수 있는 프로그램으로 작성가능하고, 컴퓨터로 읽을 수 있는 기록매체를 이용하여 상기 프로그램을 동작시키는 범용 디지털 컴퓨터에서 구현될 수 있다. 상기 컴퓨터로 읽을 수 있는 기록매체는 마그네틱 저장매체(예를 들면, 롬, 플로피 디스크, 하드디스크 등) 및 광학적 판독 매체(예를 들면, 시디롬, 디브이디 등)와 같은 저장매체를 포함한다.Meanwhile, the above-described embodiments of the present invention can be written as a program that can be executed in a computer, and can be implemented in a general-purpose digital computer that operates the program using a computer-readable recording medium. The computer-readable recording medium includes storage media such as magnetic storage media (eg, ROM, floppy disk, hard disk, etc.) and optical reading media (eg, CD-ROM, DVD, etc.).

이제까지 본 발명에 대하여 그 바람직한 실시예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.So far I looked at the center of the preferred embodiment for the present invention. Those skilled in the art will appreciate that the present invention can be implemented in a modified form without departing from the essential features of the present invention. Therefore, the disclosed embodiments should be considered in an illustrative rather than a restrictive sense. The scope of the present invention is shown in the claims rather than the foregoing description, and all differences within the scope will be construed as being included in the present invention.

Claims (44)

입력 비디오의 컨텐트에 기반하여 현재 프레임의 다이나믹 레인지를 변환한 영상 데이터를 이용하여, 상기 현재 프레임에 대한 인트라 예측 및 움직임 추정을 통한 인터 예측을 수행하는 단계;
상기 인트라 예측 및 인터 예측에 의해 생성된 레지듀얼 데이터에 대해 주파수변환을 수행하고, 상기 주파수변환에 의해 생성된 변환 계수에 대해 양자화를 수행하는 단계; 및
상기 양자화된 변환 계수에 대해 엔트로피 부호화를 수행하고, 상기 현재 프레임에 대한 부호화된 데이터를 포함하는 비트스트림을 출력하는 단계를 포함하는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법.
Performing inter prediction through intra prediction and motion estimation on the current frame using image data obtained by converting a dynamic range of a current frame based on content of an input video;
Performing frequency transform on the residual data generated by the intra prediction and inter prediction, and performing quantization on the transform coefficients generated by the frequency transform; And
Performing entropy encoding on the quantized transform coefficients, and outputting a bitstream including encoded data of the current frame.
제 1 항에 있어서, 상기 인트라 예측 및 인터 예측 수행 단계는,
픽셀값의 현재 비트 뎁스(bit depth)로 표현 가능한 최대한계값 내지 최소한계값의 범위로, 상기 현재 프레임의 픽셀값들을 확장하도록 다이나믹 레인지가 변환된 영상 데이터를 이용하여 상기 인트라 예측 및 상기 인터 예측을 수행하는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법.
The method of claim 1, wherein performing intra prediction and inter prediction comprises:
The intra prediction and the inter prediction using image data whose dynamic range is converted to extend the pixel values of the current frame in a range of a maximum value to a minimum value that can be expressed as a current bit depth of a pixel value. And a video encoding method using dynamic range transformation based on content.
제 2 항에 있어서, 상기 인트라 예측 및 인터 예측 수행 단계는,
상기 현재 프레임의 픽셀값들 중 상한값보다 큰 값을 상기 최대한계값에 대응하도록 변환하고, 상기 현재 프레임의 픽셀값들 중 하한값보다 작은 값을 상기 최소한계값에 대응하도록 변환하고,
상기 현재 프레임의 픽셀값들 중 상기 상한값 및 상기 하한값 사이의 픽셀값들을 상기 최대한계값 및 상기 최소한계값 사이의 값에 일대일 대응하도록 변환하는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법.
The method of claim 2, wherein performing the intra prediction and the inter prediction is performed.
Convert a value larger than an upper limit among pixel values of the current frame to correspond to the maximum value, and convert a value smaller than a lower limit among pixel values of the current frame to correspond to the minimum value,
Video encoding using a dynamic range transformation based on content, characterized by converting pixel values between the upper limit value and the lower limit value among the pixel values of the current frame to have a one-to-one correspondence with the value between the maximum limit value and the minimum limit value. Way.
제 3 항에 있어서,
상기 상한값 및 상기 하한값은, 각각 상기 현재 프레임의 픽셀값들 중 극대값 및 극소값인 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법.
The method of claim 3, wherein
The upper limit value and the lower limit value are video encoding methods using dynamic range transformation based on content, wherein a maximum value and a minimum value of pixel values of the current frame are respectively.
제 3 항에 있어서, 상기 인트라 예측 및 인터 예측 수행 단계는,
상기 상한값 및 상기 하한값 사이의 픽셀값들에 대하여, 현재 픽셀값과 상기 하한값의 차이와 상기 최대한계값 및 상기 최대한계값의 차이의 곱을, 상기 상한값 및 상기 하한값의 차이로 나눈 값이 일대일 대응되도록 변환하는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법.
The method of claim 3, wherein performing intra prediction and inter prediction comprises:
For pixel values between the upper limit value and the lower limit value, a product of a difference between a current pixel value and the lower limit value, and a difference between the maximum limit value and the maximum limit value divided by the difference between the upper limit value and the lower limit value is one-to-one corresponded. A video encoding method using dynamic range transformation based on content, characterized in that for converting.
제 5 항에 있어서,
상기 상한값 및 상기 하한값 사이의 픽셀값들에 대하여 일대일 대응되는 픽셀값이, 현재 비트뎁스를 이용한 비트시프트에 의한 연산을 통해 출력되는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법.
The method of claim 5, wherein
And a one-to-one corresponding pixel value for the pixel values between the upper limit value and the lower limit value is output through a bit shift operation using a current bit depth.
제 2 항에 있어서,
상기 현재 비트뎁스는, 상기 비디오의 부복호화 과정 동안 내부적으로 확장된 비트뎁스인 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법.
The method of claim 2,
The current bit depth is a video encoding method using a dynamic range transformation based on content, characterized in that the bit depth is internally extended during the decoding process of the video.
제 7 항에 있어서,
상기 현재 비트뎁스는, 다이나믹 레인지의 확장을 위한 제 1 비트뎁스 및 내부적으로 확장된 제 2 비트뎁스의 총합인 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법.
The method of claim 7, wherein
The current bit depth is a video encoding method using the dynamic range transformation based on the content, characterized in that the sum of the first bit depth and the internally extended second bit depth for the extension of the dynamic range.
제 8 항에 있어서, 상기 인트라 예측 및 인터 예측 수행 단계는,
상기 비디오의 픽셀값의 비트뎁스를 상기 제 2 비트뎁스만큼 확장하는 단계;
상기 제 2 비트뎁스만큼 확장된 비트뎁스의 중간 데이터에 대해 상기 제 1 비트뎁스만큼 다이나믹 레인지를 확장하는 단계; 및
상기 다이나믹 레인지가 확장된 데이터에 대해 상기 인트라 예측 및 인터 예측을 수행하는 단계를 포함하는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법.
The method of claim 8, wherein performing intra prediction and inter prediction comprises:
Extending the bit depth of the pixel value of the video by the second bit depth;
Extending a dynamic range by the first bit depth with respect to intermediate data of the bit depth extended by the second bit depth; And
And performing the intra prediction and the inter prediction on the data of which the dynamic range has been expanded.
제 9 항에 있어서, 상기 다이나믹 레인지 확장 단계는,
상기 중간 데이터 중 상한값보다 큰 값을 상기 최대한계값에 대응하도록 변환하고, 상기 현재 프레임의 픽셀값들 중 하한값보다 작은 값을 상기 최소한계값에 대응하도록 변환하고,
상기 중간 데이터 중 상기 상한값 및 상기 하한값 사이의 데이터를 상기 최대한계값 및 상기 최소한계값 사이의 값에 일대일 대응하도록 변환하는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법.
10. The method of claim 9, wherein the dynamic range expanding step comprises:
A value larger than an upper limit among the intermediate data is converted to correspond to the maximum value, and a value smaller than a lower limit among pixel values of the current frame is converted to correspond to the minimum value,
And converting the data between the upper limit value and the lower limit value among the intermediate data so as to have a one-to-one correspondence with the value between the maximum limit value and the minimum limit value.
제 10 항에 있어서, 상기 다이나믹 레인지 확장 단계는,
상기 상한값 및 상기 하한값 사이의 픽셀값들에 대하여 일대일 대응되는 픽셀값을, 상기 제 1 비트뎁스 및 상기 제 2 비트뎁스를 이용한 비트시프트에 의한 연산을 통해 출력하는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법.
The method of claim 10, wherein the dynamic range expansion step,
Dynamic range based on content, characterized by outputting a pixel value corresponding to the pixel value between the upper limit value and the lower limit value through a bit shift operation using the first bit depth and the second bit depth. Video coding method using transform.
제 2 항에 있어서, 상기 인트라 예측 및 인터 예측 수행 단계는,
상기 현재 프레임의 픽셀값들은 루마 성분 및 크로마 성분별로 다이나믹 레인지가 변환된 영상 데이터를 이용하여, 상기 인트라 예측 및 상기 인터 예측을 수행하는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법.
The method of claim 2, wherein performing the intra prediction and the inter prediction is performed.
And the intraframe and the inter prediction are performed on the pixel values of the current frame by using the image data whose dynamic range is converted for each of the luma component and the chroma component.
제 3 항에 있어서,
상기 현재 프레임의 픽셀값들 중 상기 상한값 및 상기 하한값 사이의 픽셀값들이, 비선형 함수 관계를 따라 상기 최대한계값 및 상기 최소한계값 사이의 값에 일대일 대응하도록 변환하는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법.
The method of claim 3, wherein
Wherein the pixel values between the upper limit value and the lower limit value among the pixel values of the current frame are converted one-to-one corresponding to the value between the maximum limit value and the minimum limit value according to a nonlinear function relationship. Video coding method using range transformation.
제 13 항에 있어서,
상기 현재 프레임의 픽셀값들 중 상기 상한값 및 상기 하한값 사이의 픽셀값들이 소정 개수의 구간들로 분할되는 경우, 상기 구간별 픽셀값은 선형적으로 증가하는 구간별 기울기의 함수 관계에 따라 대응되는 결과값이 결정되고, 상기 구간들 중 연속하는 구간의 결과값들은 연속되어, 상기 모든 구간의 픽셀값들에 대한 결과값들이 상기 최대한계값 및 상기 최소한계값 사이의 값에 일대일 대응하도록 변환되는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법.
The method of claim 13,
If the pixel values between the upper limit value and the lower limit value among the pixel values of the current frame are divided into a predetermined number of sections, the pixel value for each section corresponds to a function relationship of the slope for each section that increases linearly. A value is determined, and the result values of successive sections of the sections are continuous so that the result values for pixel values of all the sections are converted to correspond one-to-one to the value between the maximum limit value and the minimum limit value. A video encoding method using dynamic range transformation based on a characteristic content.
제 3 항에 있어서,
상기 상한값보다 크거나 상기 하한값보다 작은 현재 픽셀값은 절삭되는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법.
The method of claim 3, wherein
And a current pixel value larger than the upper limit or smaller than the lower limit is truncated.
제 3 항에 있어서,
상기 상한값 및 상기 하한값은, 상기 입력 비디오의 영상 시퀀스, 프레임, 인트라 예측을 위한 프레임 세트, 영역 및 부호화 단위 중 하나의 데이터 단위별로 결정되는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법.
The method of claim 3, wherein
The upper limit value and the lower limit value are determined according to one data unit of an image sequence, a frame, a frame set for intra prediction, an area, and a coding unit of the input video. .
제 1 항에 있어서, 상기 인트라 예측 및 인터 예측 수행 단계는,
상기 입력 비디오의 컨텐트에 기반하여 다이나믹 레인지가 변환된 이전 프레임들에 대하여, 인트라 예측, 움직임 추정 및 보상을 통한 인터 예측, 주파수변환, 양자화, 역양자화, 역주파수변환 및 디블로킹 필터링을 통해 생성된 복원 프레임들의 다이나믹 레인지를 복원하는 단계;
상기 현재 프레임의 다이나믹 레인지에 기초하여, 상기 다이나믹 레인지가 복원된 복원 프레임의 다이나믹 레인지를 변환하는 단계; 및
상기 다이나믹 레인지가 변환된 참조 프레임을 참조하여, 상기 현재 프레임에 대한 인터 예측을 수행하는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법.
The method of claim 1, wherein performing intra prediction and inter prediction comprises:
For previous frames whose dynamic range is transformed based on the content of the input video, inter prediction, frequency transformation, quantization, inverse quantization, inverse frequency transformation, and deblocking filtering through intra prediction, motion estimation and compensation are generated. Restoring the dynamic range of the reconstructed frames;
Converting a dynamic range of a reconstructed frame in which the dynamic range is restored, based on the dynamic range of the current frame; And
The video encoding method using the dynamic range transformation based on content, wherein the inter frame prediction is performed on the current frame with reference to the reference frame having the converted dynamic range.
제 1 항에 있어서, 상기 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법은,
상기 다이나믹 레인지의 변환에 대한 정보를 부호화하여 전송하는 단계를 더 포함하는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법.
The video encoding method of claim 1, wherein the video encoding method using the dynamic range transformation based on the content includes:
And encoding and transmitting the information about the transformation of the dynamic range. The video encoding method using the dynamic range transformation based on the content.
제 18 항에 있어서,
상기 다이나믹 레인지의 변환에 대한 정보는, 상기 입력 비디오의 컨텐트의 상한값 및 하한값에 대한 정보를 포함하는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법.
The method of claim 18,
And the information on the conversion of the dynamic range includes information about an upper limit value and a lower limit value of the content of the input video.
제 1 항에 있어서,
상기 인트라 예측 단계 및 인터 예측 수행 단계는, 상기 현재 프레임이 소정 최대 크기의 부호화 단위로 분할된 각각의 최대 부호화 단위에 대하여, 심도가 깊어짐에 따라 상기 최대 부호화 단위가 계층적으로 분할되어 축소된 영역별로, 적어도 하나의 심도별 부호화 단위마다 상기 인트라 예측 및 상기 인터 예측을 수행하고,
상기 주파수변환 및 양자화 수행 단계는, 각각의 최대 부호화 단위에 대해 상기 영역별로 적어도 하나의 심도별 부호화 단위마다 상기 주파수변환 및 상기 양자화를 수행하고,
상기 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법은, 상기 픽처의 원본 영상과의 최소 부호화 오차를 발생시키는 적어도 하나의 부호화 심도에 관한 정보를 포함하는 상기 부호화 심도의 부호화 단위에 대한 부호화 모드를 결정하는 단계를 더 포함하고,
상기 엔트로피 부호화 수행 단계는, 상기 결정된 부호화 심도 및 부호화 모드에 따른 부호화 결과인 부호화된 영상 데이터에 대해 엔트로피 부호화를 수행하여, 상기 결정된 부호화 심도 및 부호화 모드에 대한 정보 및 부호화된 영상 데이터를 포함하는 비트스트림을 출력하는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법.
The method of claim 1,
The intra prediction step and the inter prediction step may include: a region in which the maximum coding unit is hierarchically divided and reduced as the depth increases with respect to each maximum coding unit in which the current frame is divided into coding units having a predetermined maximum size. The intra prediction and the inter prediction are performed for each coding unit of at least one depth.
In the performing of the frequency transform and quantization, the frequency transform and the quantization are performed for at least one depth-based coding unit for each region for each maximum coding unit,
The video encoding method using the dynamic range transformation based on the content may include: determining an encoding mode for a coding unit of the coded depth including information on at least one coded depth for generating a minimum coding error with an original image of the picture. Further comprising:
The entropy encoding may include performing entropy encoding on encoded image data that is an encoding result according to the determined encoding depth and an encoding mode, and including information about the determined encoding depth and an encoding mode and encoded image data. A video encoding method using dynamic range transformation based on content, characterized by outputting a stream.
수신된 비트스트림을 파싱하여 원본 비디오의 현재 프레임의 부호화된 데이터를 추출하는 단계;
상기 추출된 부호화된 데이터에 대해 엔트로피 복호화를 수행하여 데이터 심볼을 복원하는 단계;
상기 복원된 데이터 심볼에 대해, 역양자화 및 역주파수변환을 수행하여 상기 현재 프레임에 대한 레지듀얼 데이터를 복원하고, 상기 복원된 레지듀얼 데이터에 대해 인트라 예측 및 움직임 보상을 수행하여 영상 데이터를 복원하는 단계; 및
상기 복원된 영상 데이터에 대해 디블로킹 필터링을 수행하고, 상기 원본 비디오의 컨텐트에 기반하여 변환된 다이나믹 레인지를 복원함으로써, 상기 현재 프레임을 복원하는 단계를 포함하는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 방법.
Parsing the received bitstream to extract encoded data of the current frame of the original video;
Restoring a data symbol by performing entropy decoding on the extracted encoded data;
Reconstructing residual data for the current frame by performing inverse quantization and inverse frequency transformation on the reconstructed data symbol, and reconstructing image data by performing intra prediction and motion compensation on the reconstructed residual data step; And
Restoring the current frame by performing deblocking filtering on the restored image data and restoring the converted dynamic range based on the content of the original video. Video decoding method using.
제 21 항에 있어서, 상기 현재 프레임 복원 단계는,
상기 복원된 영상 데이터에 대해, 픽셀값의 현재 비트 뎁스(bit depth)로 표현 가능한 최대한계값 내지 최소한계값의 범위로 확장되어 있는 복원 픽셀값을 상기 현재 프레임의 다이나믹 레인지로 복원하는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 방법.
The method of claim 21, wherein the current frame recovery step,
The reconstructed pixel value of the reconstructed image data may be reconstructed to the dynamic range of the current frame. The reconstructed pixel value extended in the range of the maximum value to the minimum value that can be expressed as the current bit depth of the pixel value is restored. A video decoding method using dynamic range transformation based on content to be described.
제 22 항에 있어서, 상기 현재 프레임 복원 단계는,
상기 복원된 영상 데이터 중 상기 최대한계값 및 최소한계값을, 각각 상기 현재 프레임의 픽셀값들 중 상한값 및 하한값에 대응하도록 복원하고,
상기 복원된 영상 데이터 중 상기 최대한계값 및 최소한계값 사이의 값들을 상기 상한값 및 상기 하한값 사이의 값에 일대일 대응하도록 변환하는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 방법.
The method of claim 22, wherein the current frame recovery step,
The maximum limit value and the minimum limit value of the restored image data are restored to correspond to an upper limit value and a lower limit value among pixel values of the current frame, respectively.
And converting values between the maximum value and the minimum value of the reconstructed image data so as to have a one-to-one correspondence with values between the upper limit value and the lower limit value.
제 23 항에 있어서,
상기 상한값 및 상기 하한값은, 각각 상기 현재 프레임의 픽셀값들 중 극대값 및 극소값인 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 방법.
The method of claim 23,
The upper limit value and the lower limit value are video decoding methods using dynamic range transformation based on content, wherein the maximum value and the minimum value of pixel values of the current frame are respectively.
제 23 항에 있어서, 상기 현재 프레임 복원 단계는,
상기 최대한계값 및 최소한계값 사이의 값들에 대하여, 현재 복원된 데이터 값과 상기 상한값 및 상기 하한값의 차이의 곱을, 상기 최대한계값 및 상기 최대한계값의 차이로 나눈 값에 상기 하한값을 더한 값이 일대일 대응되도록 변환하는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 방법.
The method of claim 23, wherein the current frame recovery step,
For values between the maximum value and the minimum value, the product of the difference between the currently restored data value, the upper limit value and the lower limit value, divided by the difference between the maximum limit value and the maximum limit value plus the lower limit value A video decoding method using dynamic range transformation based on content, characterized in that the one-to-one correspondence is converted.
제 25 항에 있어서,
상기 최대한계값 및 최소한계값 사이의 값들에 대하여 일대일 대응되는 픽셀값이, 현재 비트뎁스를 이용한 비트시프트에 의한 연산을 통해 출력되는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 방법.
The method of claim 25,
And a pixel value corresponding one-to-one with respect to the values between the maximum value and the minimum value is output through a bit shift operation using a current bit depth.
제 22 항에 있어서,
상기 현재 비트뎁스는, 상기 비디오의 부복호화 과정 동안 내부적으로 확장된 비트뎁스인 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 방법.
The method of claim 22,
The current bit depth is a video decoding method using a dynamic range transformation based on content, characterized in that the bit depth is internally extended during the decoding process of the video.
제 27 항에 있어서,
상기 현재 비트뎁스는, 다이나믹 레인지의 확장을 위한 제 1 비트뎁스 및 내부적으로 확장된 제 2 비트뎁스의 총합인 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 방법.
The method of claim 27,
Wherein the current bit depth is a sum of a first bit depth for expanding the dynamic range and a second bit depth extended internally.
제 28 항에 있어서, 상기 현재 프레임 복원 단계는,
상기 제 1 비트뎁스만큼 확장된 상기 복원된 영상 데이터의 다이나믹 레인지를 복원하는 단계; 및
상기 다이나믹 레인지가 복원되어 생성된 중간 데이터의 비트뎁스를 상기 제 2 비트뎁스만큼 축소하여 상기 현재 프레임의 픽셀값의 비트뎁스를 복원하는 단계를 포함하는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 방법.
The method of claim 28, wherein the current frame recovery step,
Restoring a dynamic range of the reconstructed image data extended by the first bit depth; And
Restoring the bit depth of the intermediate data generated by restoring the dynamic range by the second bit depth to restore the bit depth of the pixel value of the current frame. Video decoding method.
제 29 항에 있어서, 상기 다이나믹 레인지 복원 단계는,
상기 복원된 영상 데이터 중 상기 최대한계값 및 최소한계값을, 각각 상기 중간 데이터의 상한값 및 하한값에 대응하도록 복원하는 단계; 및
상기 복원된 영상 데이터 중 상기 최대한계값 및 최소한계값 사이의 값들을 상기 중간 데이터의 상한값 및 하한값 사이의 값에 일대일 대응하도록 변환하여 상기 중간 데이터를 생성하는 단계를 포함하는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 방법.
The method of claim 29, wherein the dynamic range restoration step,
Restoring the maximum limit value and the minimum limit value of the restored image data to correspond to an upper limit value and a lower limit value of the intermediate data, respectively; And
And generating the intermediate data by converting the values between the maximum and minimum values of the reconstructed image data to have a one-to-one correspondence to the values between the upper limit value and the lower limit value of the intermediate data. A video decoding method using based dynamic range transformation.
제 30 항에 있어서, 상기 중간 데이터 생성 단계는,
상기 중간 데이터의 상한값 및 하한값 사이의 픽셀값들에 대하여 일대일 대응되는 픽셀값을, 상기 제 1 비트뎁스 및 제 2 비트뎁스를 이용한 비트시프트에 의한 연산을 통해 출력하는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 방법.
The method of claim 30, wherein the intermediate data generation step,
And outputs a pixel value corresponding one to one with respect to pixel values between the upper limit value and the lower limit value of the intermediate data through a bit shift operation using the first bit depth and the second bit depth. Video decoding method using range transformation.
제 22 항에 있어서, 상기 현재 프레임 복원 단계는,
상기 복원된 영상 데이터에 대해, 루마 성분 및 크로마 성분별로 다이나믹 레인지를 복원하여, 상기 현재 프레임의 픽셀값을 복원하는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 방법.
The method of claim 22, wherein the current frame recovery step,
And reconstructing the dynamic range for each of the luma and chroma components of the reconstructed image data, thereby reconstructing a pixel value of the current frame.
제 23 항에 있어서,
상기 복원된 영상 데이터 중 상기 최대한계값 및 최소한계값 사이의 값들이, 비선형 함수 관계를 따라 상기 상한값 및 상기 하한값 사이의 값에 일대일 대응하도록 변환하는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 방법.
The method of claim 23,
Using the dynamic range transformation based on the content, the values between the maximum value and the minimum value of the reconstructed image data are converted one-to-one corresponding to the value between the upper limit value and the lower limit value according to a nonlinear function relationship. Video decoding method.
제 33 항에 있어서,
상기 복원된 영상 데이터 중 상기 최대한계값 및 최소한계값 사이의 픽셀값들이 소정 개수의 구간들로 분할되는 경우, 상기 구간별 데이터는 선형적으로 증가하는 구간별 기울기의 함수 관계에 따라 대응되는 픽셀값이 결정되고, 상기 구간들 중 연속하는 구간들의 데이터에 대응되는 픽셀값들은 연속되어, 상기 모든 구간의 데이터에 대한 픽셀값들이 상기 상한값 및 상기 하한값 사이의 값에 일대일 대응하도록 변환되는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 방법.
The method of claim 33, wherein
If the pixel values between the maximum value and the minimum value of the reconstructed image data are divided into a predetermined number of sections, the data for each section correspond to a function corresponding to a function of a slope for each section that increases linearly. A value is determined, and pixel values corresponding to data of consecutive sections among the sections are successively converted, so that pixel values for data of all the sections are converted one-to-one to a value between the upper limit value and the lower limit value. A video decoding method using dynamic range transformation based on content to be described.
제 23 항에 있어서,
상기 상한값보다 크거나 상기 하한값보다 작은 현재 픽셀값은 절삭된 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 방법.
The method of claim 23,
And a current pixel value larger than the upper limit value or smaller than the lower limit value is truncated.
제 23 항에 있어서,
상기 상한값 및 상기 하한값은, 상기 원본 비디오의 영상 시퀀스, 프레임, 인트라 예측을 위한 프레임 세트, 영역 및 부호화 단위 중 하나의 데이터 단위별로 결정된 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 방법.
The method of claim 23,
And the upper limit value and the lower limit value are determined for each data unit of an image sequence, a frame, a frame set for intra prediction, an area, and a coding unit of the original video.
제 21 항에 있어서, 상기 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 방법은,
상기 현재 프레임의 다이나믹 레인지의 변환을 위한 상기 원본 비디오에 대한 정보를 수신하는 단계를 더 포함하는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 방법.
The video decoding method of claim 21, wherein the video decoding method using the dynamic range transformation based on the content includes:
And receiving information on the original video for converting the dynamic range of the current frame.
제 37 항에 있어서,
상기 다이나믹 레인지의 변환에 대한 정보는, 상기 원본 비디오의 컨텐트의 상한값 및 하한값에 대한 정보를 포함하는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 방법.
39. The method of claim 37,
And the information on the conversion of the dynamic range includes information about an upper limit value and a lower limit value of the content of the original video.
제 21 항에 있어서, 상기 영상 데이터 복원 단계는,
상기 원본 비디오의 이전 프레임에 대한 복원 프레임의 다이나믹 레인지를 복원하는 단계;
상기 현재 프레임의 다이나믹 레인지에 기초하여, 상기 복원 프레임의 다이나믹 레인지를 변환하는 단계; 및
상기 다이나믹 레인지가 변환된 복원 프레임을 참조하여, 상기 현재 프레임에 대한 움직임 보상을 수행하는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 방법.
The method of claim 21, wherein the image data restoration step,
Restoring the dynamic range of the reconstructed frame relative to the previous frame of the original video;
Converting a dynamic range of the reconstructed frame based on the dynamic range of the current frame; And
And a motion compensation for the current frame by referring to the reconstructed frame of which the dynamic range has been converted.
제 21 항에 있어서,
상기 데이터 심볼 복원 단계는, 상기 수신된 비트스트림의 부호화 단계 중, 입력 영상 시퀀스 중 픽처를 소정 최대 크기의 부호화 단위로 분할하고, 각각의 최대 부호화 단위에 대해, 심도가 깊어짐에 따라 상기 최대 부호화 단위가 계층적으로 분할되어 축소된 영역별로, 적어도 하나의 심도별 부호화 단위마다 부호화를 수행하여, 상기 픽처의 원본 영상과의 최소 부호화 오차를 발생시키는 적어도 하나의 부호화 심도에 관한 정보를 포함하는 상기 부호화 심도의 부호화 단위에 대한 부호화 모드에 관한 정보를 상기 비트스트림으로부터 더 추출하고,
상기 영상 데이터 복원 단계는, 상기 부호화 모드에 관한 정보에 기초하여, 상기 부호화 심도 및 부호화 모드에 기초하여 역영쟈화, 역주파수변환, 인트라 예측 및 움직음 보상을 수행하여 상기 부호화된 영상 데이터를 복호화하는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 장치.
The method of claim 21,
The data symbol reconstruction step may include: dividing a picture of an input image sequence into coding units having a predetermined maximum size in the encoding step of the received bitstream, and increasing the depth of each maximum coding unit as the depth increases. Encoding including information on at least one coded depth that generates a minimum coding error with respect to an original image of the picture by performing encoding on at least one depth-by-depth coding unit for each region that is hierarchically divided and reduced. Further extracting information about an encoding mode for a coding unit of depth from the bitstream,
The image data reconstructing step may decode the encoded image data by performing inverseization, inverse frequency transformation, intra prediction, and motion compensation based on the encoding depth and the encoding mode based on the information about the encoding mode. And a video encoding apparatus using dynamic range transformation based on content.
입력 비디오의 컨텐트에 기반하여 현재 프레임의 다이나믹 레인지를 변환한 영상 데이터를 이용하여, 상기 현재 프레임에 대한 인트라 예측을 수행하는 인트라 예측부;
상기 다이나믹 레인지 변환된 영상 데이터를 이용하여, 상기 현재 프레임에 대한 움직임 추정을 통한 인터 예측을 수행하는 인터 예측부;
상기 인트라 예측 및 인터 예측에 의해 생성된 레지듀얼 데이터에 대해 주파수변환을 수행하는 주파수변환부;
상기 주파수변환에 의해 생성된 변환 계수에 대해 양자화를 수행하는 양자화부;
상기 양자화된 변환 계수에 대해 엔트로피 부호화를 수행하는 엔트로피 부호화부; 및
상기 엔트로피 부호화에 의해 생성된, 상기 현재 프레임의 부호화된 데이터를 포함하는 비트스트림을 출력하는 출력부를 포함하는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 장치.
An intra predictor configured to perform intra prediction on the current frame by using image data obtained by converting a dynamic range of a current frame based on content of an input video;
An inter prediction unit using the dynamic range converted image data to perform inter prediction through motion estimation on the current frame;
A frequency converter configured to perform frequency conversion on the residual data generated by the intra prediction and the inter prediction;
A quantization unit performing quantization on the transform coefficients generated by the frequency transform;
An entropy encoder for performing entropy encoding on the quantized transform coefficients; And
And an output unit configured to output a bitstream including the encoded data of the current frame, generated by the entropy encoding.
수신된 비트스트림을 파싱하여 원본 비디오의 현재 프레임의 부호화된 데이터를 추출하는 파싱부;
상기 추출된 부호화된 데이터에 대해 엔트로피 복호화를 수행하여 데이터 심볼을 복원하는 엔트로피 복호화부;
상기 복원된 데이터 심볼에 대해, 역양자화 및 역주파수변환을 수행하여 상기 현재 프레임에 대한 레지듀얼 데이터를 복원하는 역양자화 및 역주파수변환부;
상기 복원된 레지듀얼 데이터에 대해 인트라 예측을 수행하는 인트라 예측부;
상기 복원된 레지듀얼 데이터에 대해 움직임 보상을 수행하는 움직임 보상부; 및
상기 인트라 예측 및 상기 움직임 보상에 의해 복원된 영상 데이터에 대해 디블로킹 필터링을 수행하고, 상기 원본 비디오의 컨텐트에 기반하여 변환된 다이나믹 레인지를 복원함으로써, 상기 현재 프레임을 복원하는 영상 복원부를 포함하는 것을 특징으로 하는 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 장치.
A parser configured to parse the received bitstream and extract encoded data of a current frame of the original video;
An entropy decoder configured to reconstruct data symbols by performing entropy decoding on the extracted encoded data;
An inverse quantization and inverse frequency converter configured to perform inverse quantization and inverse frequency transformation on the recovered data symbols to restore residual data for the current frame;
An intra predictor for performing intra prediction on the reconstructed residual data;
A motion compensation unit to perform motion compensation on the restored residual data; And
And an image reconstruction unit for reconstructing the current frame by performing deblocking filtering on the image data reconstructed by the intra prediction and the motion compensation, and reconstructing the dynamic range converted based on the content of the original video. A video decoding apparatus using a dynamic range transformation based on content characterized in that.
제 1 항 내지 제 20 항 중 어느 한 항의 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 부호화 방법을 구현하기 위한 프로그램이 기록된 컴퓨터로 판독가능한 기록 매체.A computer-readable recording medium having recorded thereon a program for implementing a video encoding method using a dynamic range transformation based on the content of any one of claims 1 to 20. 제 21 항 내지 제 40 항 중 어느 한 항의 컨텐트에 기반한 다이나믹 레인지 변환을 이용하는 비디오 복호화 방법을 구현하기 위한 프로그램이 기록된 컴퓨터로 판독가능한 기록 매체.41. A computer readable recording medium having recorded thereon a program for implementing a video decoding method using dynamic range transformation based on the content of any of claims 21-40.
KR1020100056194A 2010-04-05 2010-06-14 Method and apparatus for video encoding using dynamic-range trasformation, method and apparatus for video decoding using dynamic-range transformation KR101710623B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
US13/079,982 US9100661B2 (en) 2010-04-05 2011-04-05 Method and apparatus for encoding video by using dynamic-range transformation, and method and apparatus for decoding video by using dynamic-range transformation
PCT/KR2011/002372 WO2011126272A2 (en) 2010-04-05 2011-04-05 Method and apparatus for encoding video by using dynamic-range transformation, and method and apparatus for decoding video by using dynamic-range transformation

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR20100031142 2010-04-05
KR1020100031142 2010-04-05

Publications (2)

Publication Number Publication Date
KR20110112165A true KR20110112165A (en) 2011-10-12
KR101710623B1 KR101710623B1 (en) 2017-03-09

Family

ID=45028055

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020100056194A KR101710623B1 (en) 2010-04-05 2010-06-14 Method and apparatus for video encoding using dynamic-range trasformation, method and apparatus for video decoding using dynamic-range transformation

Country Status (1)

Country Link
KR (1) KR101710623B1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013069972A1 (en) * 2011-11-08 2013-05-16 한국전자통신연구원 Method for intra-prediction and device thereof
WO2013077660A1 (en) * 2011-11-24 2013-05-30 에스케이텔레콤 주식회사 Method and apparatus for effective encoding/decoding usnig detailed predictive unit
KR20160148836A (en) * 2015-06-16 2016-12-27 광운대학교 산학협력단 Method and apparatus for employing dynamic range mapping data for hdr video decoder considering backward compatibility
US9674520B2 (en) 2011-11-24 2017-06-06 Sk Telecom Co., Ltd. Method and apparatus for effective encoding/decoding using detailed predictive unit
KR20200110247A (en) * 2019-03-15 2020-09-23 삼성전자주식회사 Method and apparatus for image encoding, and method and apparatus for image decoding

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2018174591A1 (en) 2017-03-22 2018-09-27 김기백 Image encoding/decoding method using pixel value range constituting image
WO2022211374A1 (en) * 2021-03-31 2022-10-06 현대자동차주식회사 Mapping-based video coding method and apparatus

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090087111A1 (en) * 2006-03-30 2009-04-02 Reiko Noda Image encoding apparatus and method for the same and image decoding apparatus and method for the same

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090087111A1 (en) * 2006-03-30 2009-04-02 Reiko Noda Image encoding apparatus and method for the same and image decoding apparatus and method for the same

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2013069972A1 (en) * 2011-11-08 2013-05-16 한국전자통신연구원 Method for intra-prediction and device thereof
WO2013077660A1 (en) * 2011-11-24 2013-05-30 에스케이텔레콤 주식회사 Method and apparatus for effective encoding/decoding usnig detailed predictive unit
US9674520B2 (en) 2011-11-24 2017-06-06 Sk Telecom Co., Ltd. Method and apparatus for effective encoding/decoding using detailed predictive unit
US10033998B2 (en) 2011-11-24 2018-07-24 Sk Telecom Co., Ltd. Method and apparatus for effective encoding/decoding using detailed predictive unit
US10038900B2 (en) 2011-11-24 2018-07-31 Sk Telecom Co., Ltd. Method and apparatus for effective encoding/decoding using detailed predictive unit
KR20220093052A (en) * 2015-06-16 2022-07-05 광운대학교 산학협력단 Method and apparatus for employing dynamic range mapping data for hdr video decoder considering backward compatibility
KR20160148836A (en) * 2015-06-16 2016-12-27 광운대학교 산학협력단 Method and apparatus for employing dynamic range mapping data for hdr video decoder considering backward compatibility
US11451837B2 (en) 2015-06-16 2022-09-20 Kwangwon University Industry-Academic Collaboration Foundation Method and apparatus for employing dynamic range mapping information for HDR image decoder considering backward compatibility
KR20200110247A (en) * 2019-03-15 2020-09-23 삼성전자주식회사 Method and apparatus for image encoding, and method and apparatus for image decoding
CN113574879A (en) * 2019-03-15 2021-10-29 三星电子株式会社 Image encoding method and apparatus, image decoding method and apparatus
KR20210008124A (en) * 2019-03-15 2021-01-20 삼성전자주식회사 Method and apparatus for image encoding, and method and apparatus for image decoding
KR20210008125A (en) * 2019-03-15 2021-01-20 삼성전자주식회사 Method and apparatus for image encoding, and method and apparatus for image decoding
US11451814B2 (en) 2019-03-15 2022-09-20 Samsung Electronics Co., Ltd. Image encoding method and device, and image decoding method and device
KR20230057321A (en) * 2019-03-15 2023-04-28 삼성전자주식회사 Method and apparatus for image encoding, and method and apparatus for image decoding

Also Published As

Publication number Publication date
KR101710623B1 (en) 2017-03-09

Similar Documents

Publication Publication Date Title
JP6388685B2 (en) Video encoding method and apparatus with bit depth adjustment for fixed-point conversion, and video decoding method and apparatus
KR101624649B1 (en) Method and apparatus for video encoding considering hierarchical coded block pattern, and method and apparatus for video decoding considering hierarchical coded block pattern
KR101675118B1 (en) Method and apparatus for video encoding considering order of skip and split, and method and apparatus for video decoding considering order of skip and split
KR101483750B1 (en) Method and apparatus for image encoding, and method and apparatus for image decoding
KR20110017719A (en) Method and apparatus for video encoding, and method and apparatus for video decoding
KR20110083367A (en) Method and apparatus for video encoding using pattern information of hierarchical data unit, and method and apparatus for video decoding using pattern information of hierarchical data unit
JP2013501451A (en) Video encoding method and apparatus, and decoding method and apparatus thereof
KR20110083368A (en) Method and apparatus for encoding and decoding image using large transform unit
KR20110017720A (en) Method and apparatus for video encoding considering adaptive loop filtering, and method and apparatus for video decoding considering adaptive loop filtering
KR101710623B1 (en) Method and apparatus for video encoding using dynamic-range trasformation, method and apparatus for video decoding using dynamic-range transformation
KR101857800B1 (en) Method and apparatus for video encoding considering order of skip and split, and method and apparatus for video decoding considering order of skip and split
KR101617336B1 (en) Method and apparatus for video encoding, and method and apparatus for video decoding
KR101618766B1 (en) Method and apparatus for image decoding
KR101662741B1 (en) Method for image decoding
KR101943991B1 (en) Method and apparatus for video encoding, and method and apparatus for video decoding
KR101917656B1 (en) Method and apparatus for video encoding considering order of skip and split, and method and apparatus for video decoding considering order of skip and split
KR101676793B1 (en) Method and apparatus for video encoding considering hierarchical coded block pattern, and method and apparatus for video decoding considering hierarchical coded block pattern
KR101676794B1 (en) Method and apparatus for video encoding considering hierarchical coded block pattern, and method and apparatus for video decoding considering hierarchical coded block pattern
KR101644092B1 (en) Method and apparatus for video encoding, and method and apparatus for video decoding
KR101624661B1 (en) Method and apparatus for video encoding considering hierarchical coded block pattern, and method and apparatus for video decoding considering hierarchical coded block pattern
KR101624662B1 (en) Method and apparatus for video encoding considering hierarchical coded block pattern, and method and apparatus for video decoding considering hierarchical coded block pattern
KR101618214B1 (en) Method for image decoding
KR101525015B1 (en) Method and apparatus for image encoding, and method and apparatus for image decoding
KR101643621B1 (en) Method and apparatus for video encoding, and method and apparatus for video decoding
KR101489222B1 (en) Method and apparatus for image encoding, and method and apparatus for image decoding

Legal Events

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