WO2020091293A1 - 칼라 좌표축 변환을 이용한 영상 부호화/복호화 방법 및 장치 - Google Patents

칼라 좌표축 변환을 이용한 영상 부호화/복호화 방법 및 장치 Download PDF

Info

Publication number
WO2020091293A1
WO2020091293A1 PCT/KR2019/013933 KR2019013933W WO2020091293A1 WO 2020091293 A1 WO2020091293 A1 WO 2020091293A1 KR 2019013933 W KR2019013933 W KR 2019013933W WO 2020091293 A1 WO2020091293 A1 WO 2020091293A1
Authority
WO
WIPO (PCT)
Prior art keywords
coordinate system
color coordinate
image
information
component
Prior art date
Application number
PCT/KR2019/013933
Other languages
English (en)
French (fr)
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 US17/266,546 priority Critical patent/US11528491B2/en
Publication of WO2020091293A1 publication Critical patent/WO2020091293A1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression

Definitions

  • the present invention relates to an image encoding / decoding method and apparatus using color coordinate axis transformation, and more particularly, to a method and apparatus for improving compression efficiency by transforming a coordinate axis of a YCbCr color coordinate system during image encoding / decoding.
  • JPEG Joint Photographic Experts Group
  • MPEG Moving Picture Experts Group
  • An object of the present invention for solving the above problems is to provide a video encoding / decoding method using a color coordinate axis transformation.
  • Another object of the present invention for solving the above problems is to provide an image encoding / decoding apparatus using a color coordinate axis transformation.
  • An image encoding method for achieving the above object includes: obtaining pixel distribution information on a first color coordinate system for an image, distribution among components of the first color coordinate system based on the pixel distribution information Determining a first component having the widest variance, obtaining a middle color coordinate system by rotating a coordinate axis of the first color coordinate system about an origin so that a distribution range of the first component is maximum, among the middle color coordinate systems Determining a second component having the largest distribution range among components other than the first component, and obtaining a second color coordinate system by rotating a coordinate axis of the intermediate color coordinate system about an origin so that the distribution range of the second component becomes maximum. And encoding the image based on the pixel distribution information on the second color coordinate system.
  • the image encoding method may further include generating coordinate axis transformation information of the image based on a difference between the pixel distribution information on the first color coordinate system and the pixel distribution information on the second color coordinate system.
  • the image encoding method may further include generating additional information of the image based on the coordinate transformation information of the image.
  • the image encoding method may further include determining whether to convert the coordinate axes of the image based on the difference between the pixel distribution information on the first color coordinate system and the pixel distribution information on the second color coordinate system.
  • the image encoding method may further include generating information about whether the image is converted according to whether the image is transformed to an axis, and generating additional information of the image based on whether the image is converted.
  • the step of acquiring the pixel distribution information on the first color coordinate system for the image is obtained by obtaining the pixel distribution information on the first color coordinate system for the image based on the pixel distribution information on the first color coordinate system for at least one other image. It may include the steps.
  • the image encoding method may further include generating additional information of the image based on information on at least one other image.
  • the first color coordinate system may include a YCbCr color coordinate system
  • the first component may include a Y component
  • An image encoding apparatus for achieving the above object includes a processor and a memory in which at least one instruction executed through the processor is stored, and the at least one instruction is an image Command for obtaining pixel distribution information on a first color coordinate system for, command for determining a first component having a widest distribution range among components of the first color coordinate system, based on pixel distribution information, distribution of first component Command to obtain the middle color coordinate system by rotating the coordinate axis of the first color coordinate system around the origin so that the range is the maximum, and the command to determine the second component with the largest distribution range among components other than the first component in the middle color coordinate system.
  • the pixel distribution information on the two-color coordinate system may include a command that is based encoded video to.
  • the at least one command may further include a command for generating coordinate axis transformation information of the image based on the difference between the pixel distribution information on the first color coordinate system and the pixel distribution information on the second color coordinate system.
  • the at least one command may further include a command for generating additional information of the image based on the coordinate conversion information of the image.
  • the at least one command may further include a command for determining whether to convert the coordinate axes of the image based on the difference between the pixel distribution information on the first color coordinate system and the pixel distribution information on the second color coordinate system.
  • the at least one command may further include a command for generating information on whether or not to convert the image according to whether the coordinate axis of the image is converted and a command to generate additional information on the image based on whether or not the image is converted.
  • the at least one command may include a command for obtaining pixel distribution information on the first color coordinate system for the image based on the pixel distribution information on the first color coordinate system for the at least one other image.
  • the at least one command may further include a command for generating additional information of the video based on the information about the at least one other video.
  • the first color coordinate system may include a YCbCr color coordinate system
  • the first component may include a Y component
  • the color coordinate axis is transformed in a color conversion procedure corresponding to an initial one of the image encoding procedures, it can be applied to various image encoding methods.
  • FIG. 1 is a conceptual diagram of an image encoding and decoding system.
  • FIG. 2 is a block diagram of an image encoding apparatus.
  • FIG. 3 is a block diagram of an image decoding apparatus.
  • FIG. 4 is a view showing a sample image.
  • FIG. 5 is a diagram showing a pixel distribution of a sample image on an RGB color coordinate system.
  • FIG. 6 is a view showing a pixel distribution of a sample image on the YCbCr color coordinate system.
  • FIG. 7 is a diagram illustrating a pixel distribution of a sample image on a color coordinate system obtained by converting a color coordinate axis according to an embodiment of the present invention.
  • FIG. 8 is a graph illustrating improved compression efficiency when performing image encoding by performing color coordinate axis transformation according to an embodiment of the present invention.
  • FIG. 9 is a block diagram of an image encoding apparatus according to an embodiment of the present invention.
  • FIG. 10 is a flowchart of an image encoding method according to an embodiment of the present invention.
  • first, second, A, and B may be used to describe various components, but the components should not be limited by the terms. The terms are used only for the purpose of distinguishing one component from other components.
  • first component may be referred to as a second component without departing from the scope of the present invention, and similarly, the second component may be referred to as a first component.
  • the term "and / or" includes a combination of a plurality of related described items or any one of a plurality of related described items.
  • an image may be composed of a series of still images, and these still images may be divided into GOP (Group of Pictures) units, and each still image is referred to as a picture or a frame. can do.
  • GOP Group of Pictures
  • units such as GOP and sequence may exist, and each picture may be divided into predetermined regions such as slices, tiles, and blocks.
  • one GOP may include units such as an I picture, a P picture, and a B picture.
  • the I picture may refer to a picture that is encoded / decoded by itself without using a reference picture, and the P picture and B picture use a reference picture to perform processes such as motion estimation and motion compensation. It may mean a picture to be encoded / decoded by performing.
  • an I picture and a P picture can be used as a reference picture
  • a B picture an I picture and a P picture can be used as a reference picture
  • the above definition may also be changed by setting encoding / decoding. Can be.
  • a picture referred to for encoding / decoding is referred to as a reference picture
  • a referenced block or pixel is referred to as a reference block and a reference pixel
  • the reference data may be pixel values in a spatial domain, coefficient values in a frequency domain, and various encoding / decoding information generated and determined during the encoding / decoding process.
  • the minimum unit constituting an image may be a pixel, and the number of bits used to represent one pixel is called a bit depth.
  • the bit depth may be 8 bits, and different bit depths may be supported according to encoding settings.
  • the bit depth may support at least one bit depth according to a color space.
  • it may be configured as at least one color space according to a color format of an image. It may be composed of one or more pictures having a certain size or one or more pictures having different sizes according to a color format. For example, in the case of YCbCr 4: 2: 0, it may be composed of one luminance component (Y in this example) and two color difference components (Cb / Cr in this example).
  • the composition ratio may have a width and a length of 1: 2.
  • 4: 4: 4 it may have the same aspect ratio horizontally and vertically.
  • some color spaces (YCbCr in this example) will be described based on some color spaces (Y in this example, Y), and the other color spaces according to the color format (Cb, Cr in this example) are the same or Similar applications (setting dependent on a specific color space) can be made.
  • the settings dependent on each color space are proportional or dependent on the composition ratio of each component (eg, determined according to 4: 2: 0, 4: 2: 2 or 4: 4: 4, etc.). It may mean, and the setting independent of each color space may be defined as having a setting only for the corresponding color space independently of the composition ratio of each component.
  • some configurations may have independent settings or may have dependent settings.
  • the setting information or syntax elements required in the video encoding process may be determined at a unit level such as video, sequence, picture, slice, tile, block, etc., which are VPS (Video Parameter Set), SPS (Sequence Parameter Set), PPS (Picture Parameter Set), Slice Header, Tile Header, Block Header, etc. can be included in the bitstream and transmitted to the decoder.
  • VPS Video Parameter Set
  • SPS Sequence Parameter Set
  • PPS Picture Parameter Set
  • Slice Header Tile Header, Block Header, etc.
  • Each parameter set has a unique ID value, and a lower parameter set can have an ID value of a higher parameter set to be referred to.
  • information on an upper parameter set having a matching ID value among one or more upper parameter sets may be referenced in a lower parameter set.
  • a unit corresponding to one or more other units may be referred to as an upper unit and an included unit as a lower unit.
  • setting information generated in the unit may include content for independent setting for each unit or content for setting dependent on previous, subsequent or higher units.
  • the dependent setting indicates the setting information of the corresponding unit with flag information (for example, 1 if a 1-bit flag follows, 0 does not follow) according to previous, subsequent, and higher unit settings.
  • the setting information will be mainly described with respect to an independent setting, but an example of adding or substituting content for a relationship dependent on the setting information of a previous unit, a subsequent unit, or a higher unit is also added. Can be included.
  • the encoding / decoding of the image may be generally encoded / decoded according to the input size, but may also occur when encoding / decoding is performed through resizing.
  • a scalable video coding to support spatial, temporal, and image quality scalability, there may be cases in which the overall resolution is adjusted, such as image expansion and reduction, and partial image It may also be present when performing expansion and contraction of.
  • Information on this can be switched by allocating selection information in units such as the above-described VPS, SPS, PPS and Slice Header.
  • the vertical relationship between units may be set as VPS> SPS> PPS> Slice header.
  • FIG. 1 is a conceptual diagram of an image encoding and decoding system.
  • the video encoding device 105 and the decoding device 100 include a personal computer (PC), a notebook computer, a personal digital assistant (PDA), and a portable multimedia player (PMP). Player), PlayStation Portable (PSP: PlayStation Portable), wireless communication terminal (Wireless Communication Terminal), a user terminal such as a smart phone (Smart Phone) or TV, or a server terminal such as an application server and a service server.
  • a communication device such as a communication modem for performing communication with a wired / wireless communication network, a memory (memory, 120, 125) or a program for storing various programs and data for inter or intra prediction for encoding or decoding an image, and calculation is executed.
  • a processor 110, 115 for controlling.
  • the video encoded in the bitstream by the video encoding device 105 is real-time or non-real-time through the Internet, a short-range wireless communication network, a wireless LAN network, a WiBro network or a mobile communication network, such as a wired or wireless network (Network), or a cable or general purpose It may be transmitted to the image decoding apparatus 100 through various communication interfaces such as a serial bus (USB), and decoded by the image decoding apparatus 100 to be restored and reproduced as an image. Also, an image encoded in a bitstream by the image encoding apparatus 105 may be transferred from the image encoding apparatus 105 to the image decoding apparatus 100 through a computer-readable recording medium.
  • the above-described image encoding apparatus and image decoding apparatus may be separate devices, but may be made into one image encoding / decoding apparatus according to implementation. In that case, some components of the video encoding apparatus may be implemented to include at least the same structure or perform at least the same functions as substantially the same technical elements as some components of the video decoding apparatus.
  • the image decoding apparatus corresponds to a computing apparatus that applies an image encoding method performed by the image encoding apparatus to decoding, the following description will mainly focus on the image encoding apparatus.
  • the computing device may include a memory that stores a program or software module that implements an image encoding method and / or an image decoding method, and a processor that is connected to the memory and performs a program.
  • the image encoding apparatus may be referred to as an encoder
  • the image decoding apparatus may be referred to as a decoder, respectively.
  • FIG. 2 is a block diagram of an image encoding apparatus.
  • the image encoding apparatus 20 includes a prediction unit 200, a subtraction unit 205, a transformation unit 210, a quantization unit 215, an inverse quantization unit 220, and an inverse transformation unit 225, An adder 230, a filter unit 235, an encoded picture buffer 240, and an entropy encoder 245 may be included.
  • the prediction unit 200 may be implemented using a prediction module, which is a software module, and may generate a prediction block with respect to a block to be coded using an intra-screen prediction method or an inter-screen prediction method.
  • the prediction unit 200 may generate a prediction block by predicting a current block to be currently encoded in an image. In other words, the prediction unit 200 predicts a pixel value of each pixel of a current block to be encoded in an image according to intra-prediction or inter-prediction, and then predicted pixel value of each pixel generated. ) Can be generated.
  • the prediction unit 200 transmits information necessary for generating a prediction block, such as information about a prediction mode, such as an intra prediction mode or an inter-screen prediction mode, to the encoding unit so that the encoding unit encodes information about the prediction mode. Can be.
  • a prediction mode such as an intra prediction mode or an inter-screen prediction mode
  • the subtraction unit 205 may generate a residual block by subtracting the prediction block from the current block. In other words, the subtraction unit 205 calculates a difference between a pixel value of each pixel of a current block to be encoded and a prediction pixel value of each pixel of a prediction block generated through the prediction unit, which is a residual signal in the form of a block. You can create a residual block. Also, the subtraction unit 205 may generate a residual block according to units other than the block unit obtained through the block division unit described later.
  • the converter 210 may convert the residual block into a frequency domain and convert each pixel value of the residual block into a frequency coefficient.
  • the transform unit 210 includes a Hadamard transform, a DCT based transform, a DST based transform, or a Karune-Lube transform-based transform (KLT based) transform), the residual signal may be transformed into the frequency domain using various transformation techniques that transform the image signal on the spatial axis into the frequency axis, and the residual signal converted into the frequency domain may be a frequency coefficient.
  • the size or shape of the transform block may be determined through a block divider, which will be described later, and may support a square or rectangular transform according to the block partition.
  • the block division operation may be influenced according to transformation related settings such as the size or shape of a transform block supported by the encoder / decoder.
  • the size and shape of each transform block may be determined according to a coding cost for each candidate of the size and shape of the transform block, and split information such as the determined image data of each transform block and the determined size and shape of each transform block may be encoded. .
  • the transformation can be transformed by a one-dimensional transformation matrix.
  • Each transformation matrix can be used adaptively in horizontal or vertical units.
  • the adaptive use may be determined by various factors such as the size of the block, the shape of the block, the type of block (luminance / color difference), encoding mode, prediction mode information, quantization parameters, or encoding information of neighboring blocks, but is not limited thereto. .
  • a DCT-based transformation matrix when the prediction mode is horizontal, a DCT-based transformation matrix may be used in the vertical direction and a DST-based transformation matrix may be used in the horizontal direction.
  • a DCT-based transform matrix when the prediction mode is vertical in the intra prediction, a DCT-based transform matrix may be used in the horizontal direction and a DST-based transform matrix may be used in the vertical direction.
  • the transformation matrix is not limited to that derived from the above description.
  • the information related to the transformation may be determined according to an implicit or explicit method, and one or more factors or combinations of factors such as a block size, a block shape, a coding mode, a prediction mode, quantization parameters, and coding information of neighboring blocks It may be determined according to, and the information related to the transformation may be transmitted in units of sequences, pictures, slices, or blocks.
  • the transformation related information uses any transformation matrix for each direction. It can be transmitted as information about whether or not.
  • information related to transformation is grouped into one pair for which transformation matrix is used for the horizontal direction and the vertical direction, respectively, and two or more pairs are used as candidate groups to determine which transformation matrix is used in the horizontal direction and the vertical direction. It may be transmitted as information about.
  • partial transformation or overall transformation may be omitted in consideration of the characteristics of the image.
  • one or both of the horizontal or vertical components can be omitted. This is because intra-prediction or inter-prediction is not well performed, and thus, when a difference between a current block and a prediction block is large, that is, when a residual component is large, encoding loss may be increased when transforming it. This may be determined according to one or more of factors such as encoding mode, prediction mode information, block size, block shape, type of block (luminance / color difference), quantization parameters, and encoding information of neighboring blocks, or a combination thereof. Depending on the above conditions, it can be expressed using an implicit or explicit method, and information about it can be transmitted in units of sequences, pictures, slices, and the like.
  • the converter 210 may transmit information necessary for performing the conversion process (for example, setting information such as the size of the transform, the type of transform, the type of transform, the number of transforms, or whether the transform is applied) to the encoder 245 It is possible to cause the encoding unit to encode transformation setting information.
  • the quantization unit 215 may quantize the residual block having a frequency coefficient transformed into the frequency domain by the transformation unit 210.
  • the quantization unit 215 may quantize the transformed residual block using a dead zone uniform threshold quantization, a quantization weighted matrix, or an improved quantization technique. This may have one or more quantization techniques as candidates, and may be determined by encoding mode or prediction mode information.
  • Quantization parameters may be determined in units of blocks, and quantization parameters may also be determined in units of sequences, pictures, slices, or blocks.
  • the quantization unit 215 may predict the current quantization parameter using one or more quantization parameters derived from neighboring blocks such as left, upper left, upper, upper right, and lower left of the current block. have.
  • the quantization unit 215 may predict the current quantization parameter by changing the available neighboring blocks, such as the right and lower right blocks, by changing or adding, according to a change in the encoding order.
  • the quantization unit 215 may be set to apply the quantization weight matrix to inter-coding or intra-coding units, and may set a different weight matrix according to the intra prediction mode.
  • the quantization weight matrix may configure a quantization coefficient differently for each frequency component position.
  • the quantization unit 215 may use one of several existing quantization methods, or may be used under the same settings of the encoder / decoder. Information about this may be transmitted in units such as a sequence, picture, or slice.
  • the quantization unit 215 may transmit information necessary for performing a quantization process (for example, quantization parameters, quantization types, quantization application and setting information such as a range or a quantization matrix) to the encoding unit, and the encoding unit 245 may quantize It is possible to encode the setting information.
  • a quantization process for example, quantization parameters, quantization types, quantization application and setting information such as a range or a quantization matrix
  • the inverse quantization unit 220 inversely quantizes a residual block quantized by the quantization unit 215. That is, the inverse quantization unit 220 inversely quantizes the quantized frequency coefficient sequence to generate a residual block having a frequency coefficient.
  • the inverse transform unit 225 inverse transforms the residual block inversely quantized by the inverse quantization unit 220. That is, the inverse transform unit 225 inversely transforms the frequency coefficients of the inverse quantized residual block to generate a residual block having a pixel value, that is, a reconstructed residual block.
  • the inverse transform unit 225 may perform an inverse transform using the transformed method used by the transform unit 210 in reverse.
  • the adder 230 restores the current block by adding the predicted block predicted by the predictor 200 and the residual block restored by the inverse transform unit 225.
  • the reconstructed current block is stored as a reference picture (or reference block) in the coded picture buffer 240 and can be used as a reference picture when encoding the next block, another block, or another picture in the future.
  • the filter unit 235 may include one or more post-processing filter processes such as a deblocking filter, a sample adaptive offset (SAO), and an adaptive loop filter (ALF).
  • the deblocking filter can remove block distortion caused by a boundary between blocks in the reconstructed picture.
  • the ALF may perform filtering based on a value obtained by comparing a reconstructed image with an original image after the block is filtered through a deblocking filter.
  • the SAO can restore the offset difference from the original image in units of pixels with respect to the residual block to which the deblocking filter is applied.
  • the post-processing filter may be applied to a reconstructed picture or block.
  • the deblocking filter unit may be applied based on pixels included in several columns or rows included in both blocks based on the block boundary.
  • the block may be preferably applied to boundaries of an encoding block, a prediction block, and a transform block, and may be limited to blocks having a predetermined minimum size (eg, 8 x 8) or more.
  • Whether or not to apply filtering may be determined by considering whether the filtering boundary is applied or not and filtering strength, and may be determined as one of candidates such as strong filtering, medium filtering, and weak filtering.
  • whether or not it is applied is determined according to a flag of whether or not an in-leur filter is applied at a boundary of a division unit, and whether or not it is applied may be determined according to various cases described below. .
  • SAO can be applied based on the difference between the reconstructed image and the original image.
  • Edge offset and band offset may be supported as a type of offset, and filtering may be performed by selecting one of the offsets according to image characteristics.
  • the offset-related information may be coded on a block-by-block basis, or may be coded through prediction values. At this time, related information may be adaptively encoded according to a case in which the prediction value is correct and a case in which the prediction value does not.
  • the prediction value may be offset information of adjacent blocks (eg, left, top, left, right, etc.), and selection information about which block offset information is obtained may occur.
  • a validity check may be performed on the candidate group configuration, and if valid, it is included in the candidate group, and when invalid, the next candidate is passed. If the neighboring block is located outside the picture or may belong to a different division unit from the current block, it may not be valid even if it is impossible to refer to the present invention described later.
  • the coded picture buffer 240 may store a restored block or picture through the filter unit 235.
  • the reconstructed block or picture stored in the coded picture buffer 240 may be provided to the prediction unit 200 that performs intra prediction or inter prediction.
  • the entropy encoding unit 245 scans the generated quantized frequency coefficient sequence according to various scan methods to generate a quantized coefficient sequence, and outputs the encoded quantization using an entropy encoding technique.
  • the scan pattern can be set to one of various patterns such as zigzag, diagonal, and raster. Also, it is possible to generate encoded data including encoding information transmitted from each component and output it as a bitstream.
  • FIG. 3 is a block diagram of an image decoding apparatus.
  • the image decoding apparatus 30 includes an entropy decoding unit 305, a prediction unit 310, an inverse quantization unit 315, an inverse transform unit 320, an adder / subtractor 325, a filter 330, and It may be configured to include a decoded picture buffer 335.
  • the prediction unit 310 may include an intra-screen prediction module and an inter-screen prediction module again.
  • an image bitstream transmitted from the image encoding apparatus 20 when received, it may be delivered to the entropy decoding unit 305.
  • the entropy decoding unit 305 may decode the bitstream and decode decoded data including quantized coefficients and decoding information transmitted to each component.
  • the prediction unit 310 may generate a prediction block based on data transmitted from the entropy decoding unit 305. In this case, based on the reference image stored in the decoded picture buffer 335, a reference picture list using a default configuration technique may be constructed.
  • the intra prediction unit may include a reference pixel construction unit, a reference pixel filter unit, a reference pixel interpolation unit, a prediction block generation unit, and a prediction mode decoding unit
  • the inter prediction unit may include a reference picture construction unit, a motion compensation unit, and a motion information decoding unit. It may include, some may perform the same process as the encoder, and some may perform the inverse process.
  • the inverse quantization unit 315 may be provided as a bitstream to inverse quantize the quantized transform coefficients decoded by the entropy decoding unit 305.
  • the inverse transform unit 320 may generate a residual block by applying inverse DCT, inverse integer transform, or similar inverse transform techniques to transform coefficients.
  • the inverse quantization unit 315 and the inverse transformation unit 320 reversely perform the processes performed by the transformation unit 210 and the quantization unit 215 of the image encoding apparatus 20 described above, and may be implemented in various ways. have.
  • the same process and inverse transform that are shared with the transform unit 210 and the quantization unit 215 may be used, and information about the transform and quantization process from the image encoding apparatus 20 (eg, transform size, transform Shape, quantization type, etc.) to perform the conversion and quantization process inversely.
  • the residual block that has undergone the inverse quantization and inverse transformation processes may be added to the prediction block derived by the prediction unit 310 to generate a reconstructed image block.
  • the addition may be performed by the addition / subtraction unit 325.
  • the filter 330 may apply a deblocking filter to remove a blocking phenomenon, if necessary, for the reconstructed image block, and additional loop filters before and after the decoding process to further improve the video quality You can also use
  • the reconstructed and filtered image blocks may be stored in the decoded picture buffer 335.
  • the color coordinate axis transformation process according to an embodiment of the present invention may be performed before or after the above-described image encoding method, and the above-described image encoding / decoding method is only one embodiment of the MPEG compression technique and is also used for the JPEG compression technique.
  • the present invention is not limited to this because it may be used in various video encoding / decoding methods.
  • FIG. 4 is a view showing a sample image.
  • a color image for encoding an image may be obtained as pixels on an RGB color coordinate system when acquired by an imaging device such as a camera, and RGB color when decoded and displayed to a user. It can be displayed as pixels on the coordinate system.
  • the RGB color coordinate system may refer to a color coordinate system represented by dividing the pixels constituting the image into three components: Red (R), Green (G), and Blue (B), and based on the size of each component.
  • Red (R), Green (G), and Blue (B) Red (R), Green (G), and Blue (B)
  • RGB Red
  • G Green
  • B Blue
  • One color may be represented in a pixel of.
  • a sample image may be arranged in a horizontal direction and a vertical direction in a horizontal direction and 512 pixels, and may be composed of a total of 262,144 (512 x 512) pixels.
  • each pixel may have R, G, and B values, and each R, G, and B value may have any one of integers from 0 to 255.
  • FIG. 5 is a diagram showing a pixel distribution of a sample image on an RGB color coordinate system.
  • FIG. 5 may be a diagram illustrating each pixel of the sample image of FIG. 4 in a 3D RGB color coordinate system, which may be referred to as an RGB pixel distribution of the sample image.
  • pixels on the RGB color coordinate system of the sample image may have all components scattered to some extent, and accordingly, a difference in distribution for each component may not be significant.
  • the distribution range may be referred to as a change amount.
  • the distribution range of pixel values for each color component may affect compression efficiency when encoding an image.
  • the compression efficiency may be lowered due to the large amount of spatial data duplication, and when the distribution range is concentrated on one component, the amount is relatively small.
  • the compression efficiency can be increased as there is little spatial data duplication. This may be a reason similar to the point of downsampling the Cb component and the Cr component having a relatively small distribution range and converting to a low frequency with a wide distribution range and a high frequency component with a narrow distribution range through a discrete cosine transform (DCT).
  • DCT discrete cosine transform
  • 2 ⁇ may mean a value, but is not limited thereto, and E ⁇
  • a conventional image encoding method converts a pixel of an image from an RGB component to a YCbCr component, focusing a distribution range on one component, and accordingly, can encode an image with high compression efficiency. A detailed description thereof will be described later with reference to FIG. 6.
  • FIG. 6 is a view showing a pixel distribution of a sample image on the YCbCr color coordinate system.
  • FIG. 6 may be a diagram obtained by converting the pixel distribution on the RGB color coordinate system of the sample image of FIG. 5 into a pixel distribution on the YCbCr color coordinate system.
  • Image coding methods such as Joint Photographic Experts Group (JPEG) and Moving Picture Experts Group (MPEG) usually do not directly encode the image in the RGB color coordinate system, but convert the image in the RGB color coordinate system to the YCbCr color coordinate system to perform encoding. Can be.
  • JPEG Joint Photographic Experts Group
  • MPEG Moving Picture Experts Group
  • the YCbCr color coordinate system may refer to a color coordinate system in which pixels constituting an image are divided into one luminance component (luma sample) and two color difference components (chroma sample), and based on the size of each component.
  • One color can be represented in a pixel.
  • Each component of the YCbCr color coordinate system can be calculated from each component of the RGB color coordinate system as shown in Equation 1 when the values of each component of the RGB color coordinate system are normalized to values between 0 and 1, and each component of the RGB color coordinate system Can be calculated from each component of the YCbCr color coordinate system as in Equation 2.
  • FIG. 6 is a diagram showing each component on the YCbCr color coordinate system of the sample area on a three-dimensional YCbCr color coordinate system. It may be, it may be referred to as YCbCr pixel distribution of the sample image.
  • pixels on the YCbCr color coordinate system of the sample image may have scattered Y components, thereby concentrating a distribution range with respect to the Y component, and Cb components and Cr components may be relatively integrated, Accordingly, it may have a relatively narrow distribution range for the Cb component and the Cr component.
  • FIG. 7 is a diagram illustrating a pixel distribution of a sample image on a color coordinate system obtained by converting a color coordinate axis according to an embodiment of the present invention.
  • the image encoding method according to an embodiment of the present invention may improve compression efficiency more than the YCbCr pixel distribution of FIG. 6 through transformation of a color coordinate axis.
  • the image encoding method according to an embodiment of the present invention can transform a new YCbCr color coordinate system from an existing YCbCr color coordinate system through coordinate axis transformation.
  • the present invention is not limited to a method of converting a YCbCr color coordinate system to a new color coordinate system through conversion of a color coordinate axis, and can be applied to all color coordinate systems capable of improving compression efficiency through coordinate axis conversion.
  • the existing YCbCr color coordinate system may be represented by a YCbCr color coordinate system or a first color coordinate system
  • the new color coordinate system may be represented by a Y'Cb'Cr 'color coordinate system or a second color coordinate system.
  • the color coordinate axis conversion process according to an embodiment of the present invention can be roughly divided into three steps. Hereinafter, each step will be described in detail.
  • the first step may be a step of rotating the pixel distribution of the first color coordinate system so that the distribution range of the Y component is the maximum.
  • the coordinate axes of the Y component may be fixed to the origin, and the coordinate axes of the Y component, the coordinate axes of the Cb component, and the coordinate axes of the Cr component may each maintain a right angle.
  • the first color coordinate system may be transformed not only as the Y component coordinate axis but also as the Cb component coordinate axis and the Cr component coordinate axis through rotation, and the generated color coordinate system may be represented as an intermediate color coordinate system.
  • the above-described first step may be performed after moving the origin of the first color coordinate system to the center point of the pixel distribution so that the average value for each component is 0.
  • the second step may be a step of determining a component having a relatively wide distribution range by comparing the distribution range of the Cb component and the distribution range of the Cr component in the middle color coordinate system.
  • the third step may be a step of rotating the pixel distribution of the intermediate color coordinate system so that the distribution range of the components determined in the second step is maximum.
  • the coordinate axes of the Y component of the intermediate color coordinate system may be in a fixed state, and the coordinate axes of the Cb component and the coordinate axes of the Cr component may maintain a right angle to each other.
  • the generated color coordinate system may be represented as a second color coordinate system as a final color coordinate system generated by converting a color coordinate axis, and each component of the second color coordinate system may be represented as a Y 'component, a Cb' component, and a Cr 'component. .
  • the color coordinate axis transformation process may perform the above-described process after down-sampling the components of the existing YCbCr color coordinate system in three dimensions to reduce complexity or computational amount.
  • Y'Cb'Cr 'color coordinate system (second color coordinate system) obtained by performing coordinate axis transformation on a pixel distribution on a YCbCr color coordinate system (first color coordinate system) of the sample image of FIG. 6 through the above-described process. It may be a diagram showing the distribution.
  • the distribution range of the Y 'component in the second color coordinate system is wider than the distribution range of the Y component in the first color coordinate system, and the distribution range and Cr' component of the Cb 'component in the second color coordinate system It can be confirmed that the distribution range of is narrower than the distribution range of the Cb component and the distribution range of the Cr component in the first color coordinate system. In other words, in the second color coordinate system, a distribution range of one component may be relatively more concentrated than the first color coordinate system, and thus compression efficiency may be relatively improved.
  • the image encoding method may convert a color coordinate axis through the above-described process, and thus the coordinate axis conversion information may be included in an image file compressed in the form of overhead information for each image.
  • the size of the data according to the additional information is very small compared to the size of the compressed image file, so it can be ignored in the total amount of data.
  • the size of the data of the above-mentioned coordinate axis conversion information may be set to be smaller by referring to a previous image or a previous block.
  • a still image is divided into 8 x 8 block units and sequentially compressed in the direction of an upper-left block to a lower-right block for each block, block-by-block according to an embodiment of the present invention
  • the color coordinate transformation can be performed, and the coordinate transformation information for each block may be included in the form of additional information.
  • the coordinate transformation information may be included in the form of additional information for each block, but the current coordinate transformation information may be obtained by performing color coordinate transformation based on the previously compressed blocks or some pixels of the previous blocks,
  • the current coordinate axis transformation information thus obtained may be represented as predicted coordinate axis transformation information.
  • color coordinate axis transformation is individually performed for each block in which an image is split, and color coordinate transformation is performed by predicting the presence of coordinate transformation information or based on some pixels of the previous blocks or previous blocks.
  • Prediction coordinate axis transformation information may exist, and additional information for each block may include information about whether to predict it.
  • previous blocks to be selected or referenced for prediction or previous Information about some pixels of the blocks may be further included.
  • color coordinate axis transformation may or may not be performed for each block in which an image is divided, and additional information for each block may include information on whether or not to indicate color coordinate axis transformation. have.
  • 1 bit may be allocated as the indicator or flag as information for conversion, and information to prevent the coordinate conversion from being performed when the current block has no gain in compression efficiency even when the color coordinate conversion is performed. It may be, if the compression efficiency is smaller than a preset value, it may be set not to perform the coordinate axis conversion.
  • FIG. 8 is a graph illustrating improved compression efficiency when performing image encoding by performing color coordinate axis transformation according to an embodiment of the present invention.
  • the first case (case 1) may indicate a case where the sample image of FIG. 4 is conventionally JPEG compressed, and the second case (case 2) typically compresses the sample image of FIG. 4 by JPEG compression. It may represent a case in which an image encoding method using color coordinate axis transformation according to an embodiment of the present invention was previously performed.
  • the conversion information may be included in additional information for each block, and may include an indicator of 1 bit.
  • the conversion status information may include an indicator of a value of 0 when performing color coordinate axis conversion according to an embodiment of the present invention, and, if not performed, the conversion status information may include an indicator of value of 1. .
  • the prediction information may be included in additional information for each block, and the conversion information may be included only in additional information of a block indicating coordinate axis transformation.
  • the prediction information when the current block is predicted on the basis of the previous block or some pixels of the previous blocks based on prediction information, when performing color coordinate transformation, the left, upper left, upper side of the current block And it is possible to predict and obtain pixel distribution information of the current block based on all the pixels of the four neighboring blocks corresponding to the upper right side, and perform color coordinate axis transformation of the current block based on this.
  • the first case and the second case may compare compression efficiency when encoding / decoding an image using a peak signal to noise ratio (PSNR) and a bit per pixel (bpp), and an embodiment of the present invention It can be seen that the compression efficiency of the second case using the image encoding method using the color coordinate axis transformation is relatively improved compared to the first case.
  • the PSNR may have a unit of dB based on a logarithm.
  • the block size may be 8 x 8, but even when MPEG compression is performed, one embodiment of the present invention can be applied. It is not fixed at 8 x 8, but can be variable.
  • the image encoding method using the color coordinate axis transformation when applied during MPEG compression, predicts a current block using neighboring blocks and pixels in an already compressed intra-frame. (Intra prediction or spatial prediction), the current block using the neighboring blocks and pixels in the inter-frames (inter prediction) (inter prediction or temporal prediction), and then obtain a prediction error and can be compressed It may be different from JPEG compression.
  • FIG. 9 is a block diagram of an image encoding apparatus according to an embodiment of the present invention.
  • the image encoding apparatus 900 may include at least one processor 910, a memory 920 and a storage device 930.
  • the image encoding apparatus 900 may be performed before or after a conventional image encoding / decoding apparatus, and is mounted in the image encoding / decoding apparatus to perform before or after the image encoding / decoding step. It may be, but is not limited to this.
  • the processor 910 may execute program commands stored in the memory 920 and / or the storage device 930.
  • the processor 910 may refer to a central processing unit (CPU), a graphics processing unit (GPU), or a dedicated processor on which methods according to the present invention are performed.
  • the memory 920 and the storage device 930 may be composed of volatile storage media and / or non-volatile storage media.
  • the memory 920 may be composed of read only memory (ROM) and / or random access memory (RAM).
  • the memory 920 may store at least one instruction executed through the processor 910. At least one command is a command for obtaining pixel distribution information on a first color coordinate system for an image, and a command for determining a first component having the largest variance among components of the first color coordinate system based on the pixel distribution information.
  • the at least one command is based on a difference between the pixel distribution information on the first color coordinate system and the pixel distribution information on the second color coordinate system, and the command to generate the coordinate conversion information of the image and the image based on the coordinate conversion information of the image.
  • At least one of commands for generating additional information may be further included.
  • the at least one command is a command for determining whether to convert the coordinate axis of the image based on the difference between the pixel distribution information on the first color coordinate system and the pixel distribution information on the second color coordinate system, and to convert the image according to whether the coordinate axis of the image is converted
  • the method may further include at least one of a command for generating whether or not information and a command for generating additional information of the image based on whether the image is converted.
  • the at least one command includes: a command for obtaining pixel distribution information on the first color coordinate system for the image based on the pixel distribution information on the first color coordinate system for the at least one other image and information for the at least one other image Based on the may further include at least one of the command for generating additional information of the image.
  • the first color coordinate system may include a YCbCr color coordinate system
  • the first component may include a Y component
  • FIG. 10 is a flowchart of an image encoding method according to an embodiment of the present invention.
  • the image encoding apparatus in the image encoding apparatus according to an embodiment of the present invention, first, information on a pixel distribution on a YCbCr existing color coordinate system for an image may be obtained (S1010), and the distribution range of the Y component is the maximum. If possible, an intermediate color coordinate system may be obtained by rotating the Y component coordinate axis of the existing color coordinate system (S1020).
  • the rotation of the coordinate axis of the Y component is the reason why the Y component is usually the widest distribution range among the Y component, the Cb component, and the Cr component of the YCbCr color coordinate system, but the initial rotation is not limited to the Y component.
  • the rotation of the Y component coordinate axis may be rotated around the origin of an existing color coordinate system while maintaining a perpendicular state between the Y component coordinate axis, the Cb component coordinate axis, and the Cr component coordinate axis, and based on information about the pixel distribution before rotation. You can also move the origin so that the average value of each component is zero.
  • the image encoding apparatus may determine a component having a relatively wide distribution range among the Cb and Cr components of the middle color coordinate system (S1030), and determine the coordinate axes of the determined components of the middle color coordinate system so that the distribution range of the determined component is maximum.
  • the color coordinate system converted by rotation may be obtained (S1040).
  • the converted color coordinate system may mean the final color coordinate system, and rotation of the determined component coordinate axis may be rotated around the origin of the intermediate color coordinate system while maintaining the Cb component coordinate axis and the Cr component coordinate axis at right angles. have.
  • the image encoding apparatus may generate coordinate transformation information for coordinate transformation information based on a difference between the pixel distribution information on the existing color coordinate system and the pixel distribution information on the converted color coordinate system (S1050), and convert the generated coordinate transformation information into an image. It may be added to additional information (S1060). Thereafter, the image encoding apparatus may encode the image based on the pixel distribution information on the transformed color coordinate system (S1070), and later, when decoding the image, the pixel distribution information on the transformed color coordinate system based on the coordinate axis transformation information may be existing color coordinate system. The image can be inversely transformed into pixel distribution information.
  • the conventional image encoding apparatus acquires information on the YCbCr color coordinate system of the image to perform image encoding, but when applying an embodiment of the present invention, the image encoding apparatus uses the Y'Cb'Cr 'color coordinate system of the image. Information on the image can be obtained, and based on this, image encoding can be performed.
  • the information decoded by operating in the reverse direction as described above may be information on the Y'Cb'Cr color coordinate system, and may be provided by inverse transformation to the YCbCr color coordinate system.
  • the operation according to the embodiment of the present invention can be implemented as a computer-readable program or code on a computer-readable recording medium.
  • the computer-readable recording medium includes all kinds of recording devices in which data readable by a computer system is stored.
  • the computer readable recording medium may be distributed over network coupled computer systems so that the computer readable program or code is stored and executed in a distributed manner.
  • the computer-readable recording medium may include a hardware device specially configured to store and execute program instructions, such as a ROM, a RAM, and a flash memory.
  • Program instructions may include high-level language code that can be executed by a computer using an interpreter, etc., as well as machine code such as that produced by a compiler.
  • a programmable logic device eg, field programmable gate array
  • the field programmable gate array may work with a microprocessor to perform one of the methods described herein. In general, the methods are preferably performed by some hardware device.

Landscapes

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

Abstract

영상에 대한 제1 칼라 좌표계 상의 화소 분포 정보를 획득하는 단계, 화소 분포 정보를 기초로 제1 칼라 좌표계의 성분들 중 분포 범위(variance)가 가장 넓은 제1 성분을 결정하는 단계, 제1 성분의 분포 범위가 최대가 되도록 제1 칼라 좌표계의 좌표축을 원점을 중심으로 회전하여 중간 칼라 좌표계를 획득하는 단계, 중간 칼라 좌표계 중 제1 성분을 제외한 성분들 중 분포 범위가 가장 넓은 제2 성분을 결정하는 단계, 제2 성분의 분포 범위가 최대가 되도록 중간 칼라 좌표계의 좌표축을 원점을 중심으로 회전하여 제2 칼라 좌표계를 획득하는 단계 및 제2 칼라 좌표계 상의 화소 분포 정보를 기초로 영상을 부호화하는 단계를 포함하는, 칼라 좌표축 변환을 이용한 영상 부호화/복호화 방법이 개시된다.

Description

칼라 좌표축 변환을 이용한 영상 부호화/복호화 방법 및 장치
본 발명은 칼라 좌표축 변환을 이용한 영상 부호화/복호화 방법 및 장치에 관한 것으로, 더욱 상세하게는 영상 부호화/복호화 시 YCbCr 칼라 좌표계의 좌표축을 변환하여 압축 효율을 향상시키는 방법 및 장치에 관한 것이다.
최근 통신 기술의 발전에 따라 영상 전송이 급증하고 있다. 다만, 영상은 데이터의 양이 방대하므로, 영상 전송은 비용을 절감하기 위해 영상 압축이 요구되고 있으며, 이에 따라 정지영상 압축 방법에 대한 표준(JPEG, Joint Photographic Experts Group) 및 동영상 압축 방법에 대한 표준(MPEG, Moving Picture Experts Group)이 재정되었다.
다만, 표준에 따라 영상을 압축하여도 화질 및 압축률에 대한 이슈는 계속되고 있으며, 화질 저하 방지 및 높은 압축률을 위해 연구가 계속되고 있는 실정이다.
상기와 같은 문제점을 해결하기 위한 본 발명의 목적은 칼라 좌표축 변환을 이용한 영상 부호화/복호화 방법을 제공하는 데 있다.
상기와 같은 문제점을 해결하기 위한 본 발명의 다른 목적은 칼라 좌표축 변환을 이용한 영상 부호화/복호화 장치를 제공하는 데 있다.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 영상 부호화 방법은, 영상에 대한 제1 칼라 좌표계 상의 화소 분포 정보를 획득하는 단계, 화소 분포 정보를 기초로 제1 칼라 좌표계의 성분들 중 분포 범위(variance)가 가장 넓은 제1 성분을 결정하는 단계, 제1 성분의 분포 범위가 최대가 되도록 제1 칼라 좌표계의 좌표축을 원점을 중심으로 회전하여 중간 칼라 좌표계를 획득하는 단계, 중간 칼라 좌표계 중 제1 성분을 제외한 성분들 중 분포 범위가 가장 넓은 제2 성분을 결정하는 단계, 제2 성분의 분포 범위가 최대가 되도록 중간 칼라 좌표계의 좌표축을 원점을 중심으로 회전하여 제2 칼라 좌표계를 획득하는 단계 및 제2 칼라 좌표계 상의 화소 분포 정보를 기초로 영상을 부호화하는 단계를 포함할 수 있다.
여기서, 영상 부호화 방법은, 제1 칼라 좌표계 상의 화소 분포 정보 및 제2 칼라 좌표계 상의 화소 분포 정보 간의 차이를 기초로 영상의 좌표축 변환 정보를 생성하는 단계를 더 포함할 수 있다.
여기서, 영상 부호화 방법은, 영상의 좌표축 변환 정보를 기초로 영상의 부가 정보를 생성하는 단계를 더 포함할 수 있다.
여기서, 영상 부호화 방법은, 제1 칼라 좌표계 상의 화소 분포 정보 및 제2 칼라 좌표계 상의 화소 분포 정보 간의 차이를 기초로 영상의 좌표축 변환 여부를 결정하는 단계를 더 포함할 수 있다.
여기서, 영상 부호화 방법은, 영상의 좌표축 변환 여부에 따라 영상의 변환 여부 정보를 생성하는 단계 및 영상의 변환 여부 정보를 기초로 영상의 부가 정보를 생성하는 단계를 더 포함할 수 있다.
여기서, 영상에 대한 제1 칼라 좌표계 상의 화소 분포 정보를 획득하는 단계는, 적어도 하나의 다른 영상에 대한 제1 칼라 좌표계 상의 화소 분포 정보를 기초로 영상에 대한 제1 칼라 좌표계 상의 화소 분포 정보를 획득하는 단계를 포함할 수 있다.
여기서, 영상 부호화 방법은, 적어도 하나의 다른 영상에 대한 정보를 기초로 영상의 부가 정보를 생성하는 단계를 더 포함할 수 있다.
여기서, 제1 칼라 좌표계는, YCbCr 칼라 좌표계를 포함할 수 있고, 제1 성분은, Y 성분을 포함할 수 있다.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른 영상 부호화 장치는, 프로세서(processor) 및 프로세서를 통해 실행되는 적어도 하나의 명령이 저장된 메모리(memory)를 포함하고, 적어도 하나의 명령은, 영상에 대한 제1 칼라 좌표계 상의 화소 분포 정보를 획득하는 명령, 화소 분포 정보를 기초로 제1 칼라 좌표계의 성분들 중 분포 범위(variance)가 가장 넓은 제1 성분을 결정하는 명령, 제1 성분의 분포 범위가 최대가 되도록 제1 칼라 좌표계의 좌표축을 원점을 중심으로 회전하여 중간 칼라 좌표계를 획득하는 명령, 중간 칼라 좌표계 중 제1 성분을 제외한 성분들 중 분포 범위가 가장 넓은 제2 성분을 결정하는 명령, 제2 성분의 분포 범위가 최대가 되도록 중간 칼라 좌표계의 좌표축을 원점을 중심으로 회전하여 제2 칼라 좌표계를 획득하는 명령 및 제2 칼라 좌표계 상의 화소 분포 정보를 기초로 영상을 부호화하는 명령을 포함할 수 있다.
여기서, 적어도 하나의 명령은, 제1 칼라 좌표계 상의 화소 분포 정보 및 제2 칼라 좌표계 상의 화소 분포 정보 간의 차이를 기초로 영상의 좌표축 변환 정보를 생성하는 명령을 더 포함할 수 있다.
여기서, 적어도 하나의 명령은, 영상의 좌표축 변환 정보를 기초로 영상의 부가 정보를 생성하는 명령을 더 포함할 수 있다.
여기서, 적어도 하나의 명령은, 제1 칼라 좌표계 상의 화소 분포 정보 및 제2 칼라 좌표계 상의 화소 분포 정보 간의 차이를 기초로 영상의 좌표축 변환 여부를 결정하는 명령을 더 포함할 수 있다.
여기서, 적어도 하나의 명령은, 영상의 좌표축 변환 여부에 따라 영상의 변환 여부 정보를 생성하는 명령 및 영상의 변환 여부 정보를 기초로 영상의 부가 정보를 생성하는 명령을 더 포함할 수 있다.
여기서, 적어도 하나의 명령은, 적어도 하나의 다른 영상에 대한 제1 칼라 좌표계 상의 화소 분포 정보를 기초로 영상에 대한 제1 칼라 좌표계 상의 화소 분포 정보를 획득하는 명령을 포함할 수 있다.
여기서, 적어도 하나의 명령은, 적어도 하나의 다른 영상에 대한 정보를 기초로 영상의 부가 정보를 생성하는 명령을 더 포함할 수 있다.
여기서, 제1 칼라 좌표계는, YCbCr 칼라 좌표계를 포함할 수 있고, 제1 성분은, Y 성분을 포함할 수 있다.
본 발명에 따르면, JPEG 및 MPEG과 같이 YCbCr 칼라 좌표계를 사용하여 영상을 부호화하는 경우, 압축 효율을 향상시킬 수 있다.
본 발명에 따르면, 영상 부호화 절차 중 초기에 해당하는 칼라 변환 절차에서 칼라 좌표축을 변환하므로, 다양한 영상 부호화 방법에 적용될 수 있다.
도 1은 영상 부호화 및 복호화 시스템에 대한 개념도이다.
도 2는 영상 부호화 장치에 대한 블록 구성도이다.
도 3은 영상 복호화 장치에 대한 블록 구성도이다.
도 4는 샘플 영상을 나타낸 도면이다.
도 5는 RGB 칼라 좌표계 상에서 샘플 영상의 화소 분포를 나타낸 도면이다.
도 6은 YCbCr 칼라 좌표계 상에서 샘플 영상의 화소 분포를 나타낸 도면이다.
도 7은 본 발명의 일 실시예에 따른 칼라 좌표축을 변환한 칼라 좌표계 상에서 샘플 영상의 화소 분포를 나타낸 도면이다.
도 8은 본 발명의 일 실시예에 따른 칼라 좌표축 변환 수행하여 영상 부호화를 수행하는 경우 개선된 압축 효율을 나타낸 그래프이다.
도 9는 본 발명의 일 실시예에 따른 영상 부호화 장치의 블록 구성도이다.
도 10은 본 발명의 일 실시예에 따른 영상 부호화 방법의 순서도이다.
본 발명은 다양한 변경을 가할 수 있고 여러 가지 실시예를 가질 수 있는 바, 특정 실시예들을 도면에 예시하고 상세한 설명에 상세하게 설명하고자 한다. 그러나, 이는 본 발명을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경, 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 각 도면을 설명하면서 유사한 참조부호를 유사한 구성요소에 대해 사용하였다.
제1, 제2, A, B 등의 용어는 다양한 구성요소들을 설명하는 데 사용될 수 있지만, 상기 구성요소들은 상기 용어들에 의해 한정되어서는 안 된다. 상기 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용된다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 명명될 수 있다. "및/또는"이라는 용어는 복수의 관련된 기재된 항목들의 조합 또는 복수의 관련된 기재된 항목들 중의 어느 항목을 포함한다.
어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 그 다른 구성요소에 직접적으로 연결되어 있거나 또는 접속되어 있을 수도 있지만, 중간에 다른 구성요소가 존재할 수도 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소가 다른 구성요소에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 중간에 다른 구성요소가 존재하지 않는 것으로 이해되어야 할 것이다.
본 출원에서 사용한 용어는 단지 특정한 실시예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 출원에서, "포함하다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.
통상적으로 영상은 일련의 정지 영상(Still Image)으로 구성될 수 있으며, 이 정지 영상들은 GOP(Group of Pictures) 단위로 구분될 수 있고, 각 정지 영상을 픽쳐(Picture) 또는 프레임(Frame)이라 지칭할 수 있다. 상위 개념으로는 GOP, 시퀀스(Sequence)등의 단위가 존재할 수 있으며, 또한, 각 픽쳐는 슬라이스, 타일, 블록 등과 같은 소정의 영역으로 분할될 수 있다. 또한, 하나의 GOP에는 I 픽쳐, P 픽쳐, B 픽쳐 등의 단위가 포함될 수 있다. I 픽쳐는 참조 픽쳐를 사용하지 않고 자체적으로 부호화/복호화되는 픽쳐를 의미할 수 있으며, P 픽쳐와 B 픽쳐는 참조 픽쳐를 사용하여 움직임 추정(Motion Estimation) 및 움직임 보상(Motion Compensation) 등의 과정을 수행하여 부호화/복호화 하는 픽쳐를 의미할 수 있다. 일반적으로 P 픽쳐의 경우 I 픽쳐와 P 픽쳐를 참조 픽쳐로써 이용할 수 있으며, B 픽쳐의 경우 I 픽쳐와 P 픽쳐를 참조 픽쳐를 이용할 수 있으나, 이는 부호화/복호화의 설정에 의해 위의 정의 또한 변경될 수 있다.
여기서, 부호화/복호화하는데 참조되는 픽쳐를 참조 픽쳐(Reference Picture)라고 하며, 참조되는 블록 또는 화소를 참조 블록(Reference Block), 참조 화소(Reference Pixel)라고 한다. 또한, 참조되는 데이터(Reference Data)는 공간 영역(Spatial Domain)의 화소값 뿐만 아니라 주파수 영역(Frequency Domain)의 계수값, 부호화/복호화 과정 중에 생성, 결정되는 다양한 부호화/복호화 정보일 수 있다.
영상을 이루는 최소 단위는 화소일 수 있으며, 하나의 화소를 표현하는데 사용되는 비트수를 비트 심도라고 한다. 일반적으로 비트 심도는 8비트일 수 있으며 부호화 설정에 따라 다른 비트 심도를 지원할 수 있다. 비트 심도는 컬러 공간(Color Space)에 따라 적어도 하나의 비트 심도가 지원될 수 있다. 또한, 영상의 컬러 포맷(Color Format)에 따라 적어도 하나의 컬러 공간으로 구성될 수 있다. 컬러 포맷에 따라 일정 크기를 갖는 1개 이상의 픽쳐 또는 다른 크기를 갖는 1개 이상의 픽쳐로 구성될 수 있다. 예를 들어, YCbCr 4:2:0인 경우 1개의 휘도 성분(본 예에서, Y)과 2개의 색차 성분(본 예에서, Cb/Cr)으로 구성될 수 있으며, 이때 색차 성분과 휘도 성분의 구성 비는 가로, 세로 1:2를 가질 수 있다. 다른 예로, 4:4:4인 경우 가로, 세로 동일한 구성 비를 가질 수 있다. 상기 예처럼 하나 이상의 컬러 공간으로 구성이 되는 경우 픽쳐는 각 컬러 공간으로의 분할을 수행할 수 있다.
본 발명에서는 일부 컬러 포맷(본 예에서, YCbCr)의 일부 컬러 공간(본 예에서, Y)을 기준으로 설명할 것이며, 컬러 포맷에 따른 다른 컬러 공간(본 예에서, Cb, Cr)에도 동일하거나 비슷한 적용(특정 컬러 공간에 의존적인 설정)을 할 수 있다. 그러나 각 컬러 공간에 부분적인 차이(특정 컬러 공간에 독립적인 설정)를 두는 것 또한 가능할 수 있다. 즉, 각 컬러 공간에 의존적인 설정은 각 성분의 구성 비(예를 들어, 4:2:0, 4:2:2 또는 4:4:4 등에 따라 결정)에 비례하거나 의존적인 설정을 갖는 것으로 의미할 수 있고, 각 컬러 공간에 독립적인 설정은 각 성분의 구성 비에 관계없거나 독립적으로 해당 컬러 공간만의 설정을 갖는 것으로 의미할 수 있다. 본 발명에서는 부/복호화기에 따라 일부 구성에 대해서는 독립적인 설정을 갖거나 의존적인 설정을 가질 수 있다.
영상 부호화 과정에서 필요한 설정 정보 또는 구문 요소(Syntax Element)는 비디오, 시퀀스, 픽쳐, 슬라이스, 타일, 블록 등의 단위 수준에서 정해질 수 있으며 이는 VPS(Video Parameter Set), SPS(Sequence Parameter Set), PPS(Picture Parameter Set), Slice Header, Tile Header 또는 Block Header 등과 같은 단위로 비트스트림에 수록되어 복호화기로 전송될 수 있고, 복호화기에서는 동일 수준의 단위에서 파싱(Parsing)하여 부호화기에서 전송된 설정 정보를 복원하여 영상 복호화 과정에 사용할 수 있다. 각 파라미터 세트는 고유의 아이디값을 갖고 있으며, 하위 파라미터 세트에서는 참조할 상위 파라미터 세트의 아이디값을 가질 수 있다. 예를 들어, 하위 파라미터 세트에서 하나 이상의 상위 파라미터 세트 중 일치하는 아이디값을 갖는 상위 파라미터 세트의 정보를 참조할 수 있다. 위에서 언급된 다양한 단위의 예 중 어떤 하나의 단위가 하나 이상의 다른 단위를 포함하는 경우에 해당하는 단위는 상위 단위, 포함되는 단위는 하위 단위라 칭할 수 있다.
상기 단위에서 발생하는 설정 정보의 경우 해당 단위마다 독립적인 설정에 대한 내용을 포함하거나 이전, 이후 또는 상위 단위 등에 의존적인 설정에 대한 내용을 포함할 수 있다. 여기서, 의존적인 설정이란 이전, 이후, 상위 단위의 설정을 따른다는 플래그 정보(예를 들어, 1 비트 플래그로 1이면 따르고, 0이면 따르지 않음)로 해당 단위의 설정 정보를 나타내는 것이라 이해될 수 있다. 본 발명에서의 설정 정보는 독립적인 설정에 대한 예를 중심으로 설명을 할 것이나, 현재 단위의 이전, 이후의 단위 또는 상위 단위의 설정 정보에 의존적인 관계에 대한 내용으로의 추가 또는 대체되는 예 또한 포함될 수 있다.
영상의 부호화/복호화는 입력된 크기에 맞춰 부호화/복호화가 되는 것이 일반적일 수 있으나, 크기 조정을 통해 부호화/복호화를 수행하는 경우도 발생할 수 있다. 예를 들어, 공간적, 시간적 및 화질적 확장성(scalability)를 지원하기 위한 계층적 부호화 방식(scalable video coding) 등에서 영상의 확장 및 축소와 같이 전체적인 해상도를 조정하는 경우도 존재할 수 있으며, 부분적인 영상의 확장 및 축소를 수행하는 경우 또한 존재할 수 있다. 이에 대한 정보는 상술한 VPS, SPS, PPS 및 Slice Header과 같은 단위에서 선택 정보를 할당하여 스위칭할 수 있다. 이러한 경우, 각 단위 간의 상하 관계는 VPS > SPS > PPS > Slice header 등으로 설정될 수 있다.
이하, 본 발명에 따른 바람직한 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
도 1은 영상 부호화 및 복호화 시스템에 대한 개념도이다.
도 1을 참조하면, 영상 부호화 장치(105) 및 복호화 장치(100)는 개인용 컴퓨터(PC:Personal Computer), 노트북 컴퓨터, 개인 휴대 단말기(PDA: Personal Digital Assistant), 휴대형 멀티미디어 플레이어(PMP: Portable Multimedia Player), 플레이스테이션 포터블(PSP: PlayStation Portable), 무선 통신 단말기(Wireless Communication Terminal), 스마트폰(Smart Phone) 또는 TV 등과 같은 사용자 단말기이거나 응용 서버와 서비스 서버 등 서버 단말기일 수 있으며, 각종 기기 또는 유무선 통신망과 통신을 수행하기 위한 통신 모뎀 등의 통신 장치, 영상을 부호화 또는 복호화를 위해 인터 또는 인트라 예측하기 위한 각종 프로그램과 데이터를 저장하기 위한 메모리(memory, 120, 125) 또는 프로그램을 실행하여 연산 및 제어하기 위한 프로세서(processor, 110, 115) 등을 구비하는 다양한 장치를 포함할 수 있다.
또한, 영상 부호화 장치(105)에 의해 비트스트림으로 부호화된 영상은 실시간 또는 비실시간으로 인터넷, 근거리 무선 통신망, 무선랜망, 와이브로망 또는 이동통신망 등의 유무선 통신망(Network) 등을 통하거나 케이블 또는 범용 직렬 버스(USB: Universal Serial Bus) 등과 같은 다양한 통신 인터페이스를 통해 영상 복호화 장치(100)로 전송되어 영상 복호화 장치(100)에서 복호화되어 영상으로 복원되고 재생될 수 있다. 또한, 영상 부호화 장치(105)에 의해 비트스트림으로 부호화된 영상은 컴퓨터 판독 가능한 기록 매체를 통하여 영상 부호화 장치(105)에서 영상 복호화 장치(100)로 전달될 수 있다.
전술한 영상 부호화 장치와 영상 복호화 장치는 각각 별도의 장치들일 수 있으나, 구현에 따라서 하나의 영상 부호화/복호화 장치로 만들어질 수 있다. 그 경우, 영상 부호화 장치의 일부 구성은 영상 복호화 장치의 일부 구성과 실질적으로 동일한 기술요소로서 적어도 동일한 구조를 포함하거나 적어도 동일한 기능을 수행하도록 구현될 수 있다.
따라서, 이하의 기술요소들과 이들의 작동 원리 등에 대한 상세 설명에서는 대응 기술요소들의 중복되는 설명을 생략하기로 한다. 또한, 영상 복호화 장치는 영상 부호화 장치에서 수행되는 영상 부호화 방법을 복호화에 적용하는 컴퓨팅 장치에 대응하므로, 이하의 설명에서는 영상 부호화 장치를 중심으로 설명하기로 한다.
컴퓨팅 장치는 영상 부호화 방법 및/또는 영상 복호화 방법을 구현하는 프로그램이나 소프트웨어 모듈을 저장하는 메모리와 메모리에 연결되어 프로그램을 수행하는 프로세서를 포함할 수 있다. 여기서, 영상 부호화 장치는 부호화기로, 영상 복호화 장치는 복호화기로 각각 지칭될 수 있다.
도 2는 영상 부호화 장치에 대한 블록 구성도이다.
도 2를 참조하면, 영상 부호화 장치(20)는 예측부(200), 감산부(205), 변환부(210), 양자화부(215), 역양자화부(220), 역변환부(225), 가산부(230), 필터부(235), 부호화 픽쳐 버퍼(240) 및 엔트로피 부호화부(245)를 포함할 수 있다.
예측부(200)는 소프트웨어 모듈인 예측 모듈(prediction module)을 이용하여 구현될 수 있고, 부호화할 블록에 대하여 화면내 예측 방식이나 화면간 예측 방식으로 예측 블록을 생성할 수 있다. 예측부(200)는 영상에서 현재 부호화하고자 하는 현재 블록을 예측하여 예측 블록을 생성할 수 있다. 다시 말해, 예측부(200)는 영상에서 부호화하고자 하는 현재 블록의 각 화소의 화소값(pixel value)을 화면내 예측 또는 화면간 예측에 따라 예측하여 생성된 각 화소의 예측 화소값(prediced pixel value)를 갖는 예측 블록을 생성할 수 있다. 또한, 예측부(200)는 화면내 예측 모드 또는 화면간 예측 모드와 같은 예측 모드에 대한 정보와 같은 예측 블록을 생성하는데 필요한 정보를 부호화부로 전달하여 부호화부로 하여금 예측 모드에 대한 정보를 부호화하도록 할 수 있다.
감산부(205)는 현재 블록에서 예측 블록을 감산하여 잔차 블록(residual block)을 생성할 수 있다. 다시 말해, 감산부(205)는 부호화하고자 하는 현재 블록의 각 화소의 화소값과 예측부를 통해 생성된 예측 블록의 각 화소의 예측 화소값의 차이를 계산하여 블록 형태의 잔차 신호(residual signal)인 잔차 블록을 생성할 수 있다. 또한, 감산부(205)는 후술하는 블록 분할부를 통해 획득된 블록 단위 이외의 단위에 따라 잔차 블록을 생성할 수도 있다.
변환부(210)는 잔차 블록을 주파수 영역으로 변환하여 잔차 블록의 각 화소값을 주파수 계수로 변환할 수 있다. 여기서, 변환부(210)는 하다마드 변환(hadamard transform), 이산 코사인 변환 기반의 변환(DCT based transform), 이산 사인 변환 기반의 변환(DST based transform) 또는 카루넨 루베 변환 기반의 변환(KLT based transform) 등과 같은 공간축의 화상 신호를 주파수축으로 변환하는 다양한 변환 기법을 이용하여 잔차 신호를 주파수 영역으로 변환할 수 있으며, 주파수 영역으로 변환된 잔차 신호가 주파수 계수가 될 수 있다.
변환 블록의 크기 또는 형태는 후술하는 블록 분할부를 통해 결정될 수 있으며, 블록 분할에 따라 정사각형 또는 직사각형 형태의 변환을 지원할 수 있다. 여기서, 블록 분할 동작은 부호화기/복호화기에서 지원되는 변환 블록의 크기 또는 형태 등의 변환 관련 설정에 따라 영향을 받을 수 있다.
각 변환 블록의 크기 및 형태는 변환 블록의 크기 및 형태의 후보별 부호화 비용에 따라 결정될 수 있고, 결정된 각 변환 블록의 영상 데이터 및 결정된 각 변환 블록의 크기 및 형태 등의 분할 정보들이 부호화될 수 있다.
변환은 1차원 변환 매트릭스에 의해 변환될 수 있다. 각 변환 매트릭스는 수평 또는 수직 단위로 적응적으로 사용될 수 있다. 적응적 사용은 블록의 크기, 블록의 형태, 블록의 종류(휘도/색차), 부호화 모드, 예측 모드 정보, 양자화 파라미터 또는 이웃 블록의 부호화 정보 등의 여러 요인으로 결정될 수 있으나, 이에 한정되는 것은 아니다.
예를 들어, 화면내 예측에서 예측 모드가 수평일 경우, 수직 방향에는 DCT 기반의 변환 매트릭스가, 수평 방향에는 DST 기반의 변환 매트릭스가 사용될 수 있다. 반면, 화면내 예측에서 예측 모드가 수직일 경우, 수평 방향에는 DCT 기반의 변환 매트릭스가, 수직 방향에는 DST 기반의 변환 매트릭스가 사용될 수 있다. 다만, 변환 매트릭스는 위의 설명에서 나온 것에 한정되지 않는다.
이러한 변환에 관련된 정보는 묵시적 또는 명시적인 방법에 따라 결정될 수 있으며, 블록의 크기, 블록의 형태, 부호화 모드, 예측 모드, 양자화 파라미터 및 이웃 블록의 부호화 정보 등의 요인 중 하나 이상의 요인 또는 이들의 조합에 따라 결정될 수 있고, 이러한 변환에 관련된 정보는 시퀀스, 픽쳐, 슬라이스 또는 블록 등의 단위로 전송할 수 있다.
여기서, 명시적인 방법에 따라 변환에 관련된 정보를 결정하는 경우를 살펴보면, 수평 방향 및 수직 방향에 대한 2개 이상의 변환 매트릭스를 후보군으로 두고 있을 경우, 변환에 관련된 정보는 각 방향마다 어떠한 변환 매트릭스를 사용했는지에 대한 정보로 각각 전송될 수 있다. 또한, 변환에 관련된 정보는 수평 방향 및 수직 방향에 대해 각각 어떠한 변환 매트릭스를 사용했는지에 대하여 하나의 쌍으로 묶으며, 2개 이상의 쌍을 후보군으로 두어 어떠한 변환 매트릭스를 수평 방향 및 수직 방향에서 사용했는지에 대한 정보로 전송될 수도 있다.
또한, 영상의 특성을 고려하여 부분적인 변환 또는 전체적인 변환은 생략될 수 있다. 예를 들면, 수평 또는 수직 성분 중 하나 또는 모두가 생략될 수 있다. 이는 화면내 예측 또는 화면간 예측이 잘 이뤄지지 않음으로 현재 블록과 예측 블록의 차이가 크게 발생할 경우 다시 말해, 잔차 성분이 클 경우에 이를 변환할 시 그에 따른 부호화 손실이 커질 수 있기 때문이다. 이는 부호화 모드, 예측 모드 정보, 블록의 크기, 블록의 형태, 블록의 종류(휘도/색차), 양자화 파라미터 및 이웃 블록의 부호화 정보 등의 요인 중 하나 이상의 요인 또는 이들의 조합에 따라 결정될 수 있다. 위의 조건에 따라 묵시적 또는 명시적인 방법을 사용하여 이를 표현할 수 있고, 이에 대한 정보는 시퀀스, 픽쳐, 슬라이스 등의 단위로 전송될 수 있다.
변환부(210)는 변환 과정을 수행하는데 필요한 정보(예를 들어, 변환의 크기, 변환 형태, 변환 종류, 변환 횟수 또는 변환 적용 여부 등과 같은 설정 정보)를 부호화부(245)로 전달할 수 있으여 부호화부가 변환 설정 정보를 부호화하도록 할 수 있다.
양자화부(215)는 변환부(210)에 의해 주파수 영역으로 변환된 주파수 계수를 갖는 잔차 블록을 양자화할 수 있다. 여기서, 양자화부(215)는 변환된 잔차 블록을 데드존 균일 경계 양자화(dead zone uniform threshold quantization), 양자화 가중치 매트릭스(quantization weighted matrix) 또는 이를 개량한 양자화 기법 등을 사용하여 양자화할 수 있다. 이는 1개 이상의 양자화 기법을 후보로 둘 수 있으며 부호화 모드 또는 예측 모드 정보 등에 의해 결정될 수 있다. 양자화 파라미터는 블록 단위로 결정이 될 수 있으며, 양자화 파라미터는 시퀀스, 픽쳐, 슬라이스 또는 블록 등의 단위로도 결정이 될 수 있다.
일 실시예로, 양자화부(215)는 현재 블록의 왼쪽, 왼쪽 위, 위쪽, 오른쪽 위 및 왼쪽 아래 등의 이웃 블록으로부터 유도된 1개 또는 2개 이상의 양자화 파라미터를 사용하여 현재 양자화 파라미터를 예측할 수 있다. 여기서, 양자화부(215)는 부호화 순서 등의 변경으로 오른쪽 및 오른쪽 아래 블록 등과 같이 이용가능한 이웃 블록이 변경 또는 추가가 되는 경우 그에 따라 변경하여 현재 양자화 파라미터를 예측할 수 있다.
또한, 양자화부(215)는 이웃 블록으로부터 예측한 양자화 파라미터가 존재하지 않는 경우, 다시 말해, 블록이 픽쳐 또는 슬라이스 등의 경계에 있는 경우, 시퀀스, 픽쳐 또는 슬라이스 등의 단위로 전송된 기본 파라미터와의 차분치를 출력 또는 전송할 수 있다. 다만, 양자화부(215)는 이웃 블록으로부터 예측한 양자화 파라미터가 존재하는 경우, 해당 블록의 양자화 파라미터를 사용하여 차분치를 전송할 수도 있다.
예를 들어, 양자화부(215)는 양자화 가중치 매트릭스를 화면간 부호화 또는 화면내 부호화 단위 등에 적용하기 위해 설정할 수 있으며, 화면내 예측 모드에 따라 다른 가중치 매트릭스를 설정할 수도 있다. 양자화 가중치 매트릭스는 M?N의 크기로 블록의 크기가 양자화 블록 크기와 같다고 가정하는 경우, 각 주파수 성분의 위치마다 양자화 계수를 다르게 구성할 수 있다. 또한, 양자화부(215)는 기존의 여러 양자화 방법 중 하나의 방법을 이용할 수도 있으며, 부호화기/복호화기의 동일한 설정하에 이용될 수도 있다. 이에 대한 정보는 시퀀스, 픽쳐 또는 슬라이스 등의 단위로 전송될 수 있다.
양자화부(215)는 양자화 과정을 수행하는데 필요한 정보(예를 들어, 양자화 파라미터, 양자화 종류, 양자화 적용 및 범위 또는 양자화 매트릭스 등과 같은 설정 정보)를 부호화부로 전달할 수 있으며, 부호화부(245)가 양자화 설정 정보를 부호화하도록 할 수 있다.
역양자화부(220)는 양자화부(215)에 의해 양자화된 잔차 블록을 역 양자화한다. 즉, 역양자화부(220)는 양자화 주파수 계수열을 역양자화하여 주파수 계수를 갖는 잔차 블록을 생성한다.
역변환부(225)는 역양자화부(220)에 의해 역양자화된 잔차 블록을 역변환한다. 즉, 역변환부(225)는 역양자화된 잔차 블록의 주파수 계수들을 역변환하여 화소값을 갖는 잔차 블록, 즉 복원된 잔차 블록을 생성한다. 여기서, 역변환부(225)는 변환부(210)에서 사용한 변환한 방식을 역으로 사용하여 역변환을 수행할 수 있다.
가산부(230)는 예측부(200)에서 예측된 예측 블록과 역변환부(225)에 의해 복원된 잔차 블록을 가산하여 현재 블록을 복원한다. 복원된 현재 블록은 부호화 픽쳐 버퍼(240)에 참조 픽쳐(또는 참조 블록)로서 저장되어 현재 블록의 다음 블록이나 향후 다른 블록, 다른 픽쳐를 부호화할 때 참조 픽쳐로서 사용될 수 있다.
필터부(235)는 디블록킹 필터, SAO(Sample Adaptive Offset), ALF(Adaptive Loop Filter) 등의 하나 이상의 후처리 필터 과정을 포함할 수 있다. 디블록킹 필터는 복원된 픽쳐에서 블록 간의 경계에 생긴 블록 왜곡을 제거할 수 있다. ALF는 디블록킹 필터를 통해 블록이 필터링된 후 복원된 영상과 원래의 영상을 비교한 값을 기초로 필터링을 수행할 수 있다. SAO는 디블록킹 필터가 적용된 잔차 블록에 대하여, 화소 단위로 원본 영상과의 오프셋 차이를 복원할 수 있다. 이와 같은 후처리 필터는 복원된 픽쳐 또는 블록에 적용될 수 있다.
필터부에서 디블록킹 필터부는 블록 경계를 기준으로 양 블록에 포함된 몇 개의 열 또는 행에 포함된 화소를 기초로 적용할 수 있다. 상기 블록은 부호화 블록, 예측 블록, 변환 블록의 경계에 적용하는 것이 바람직할 수 있으며, 기 설정된 최소 크기(예를 들어, 8 x 8) 이상의 블록에 한할 수 있다.
필터링 적용 여부는 블록 경계의 특성을 고려하여 필터링 적용 여부와 필터링 강도가 정해질 수 있으며, 강한 필터링, 중간 필터링, 약한 필터링 등의 후보 중 하나로 결정될 수 있다. 또한, 상기 블록 경계가 분할 단위의 경계에 해당하는 경우, 분할 단위의 경계에서의 인루르 필터 적용 여부 플래그에 따라 적용 여부가 결정되며, 본 발명의 후술하는 다양한 경우에 따라 적용 여부가 결정될 수도 있다.
필터부에서 SAO는 복원된 영상과 원본 영상 간의 차이값에 기반하여 적용할 수 있다. 오프셋의 종류로 에지 오프셋(Edge Offset), 밴드 오프셋(Band Offset)이 지원될 수 있으며, 영상 특성에 따라 상기 오프셋 중 하나가 선택되어 필터링이 수행될 수 있다. 또한, 상기 오프셋 관련 정보는 블록 단위로 부호화할 수 있으며, 이에 대한 예측값을 통해 부호화할 수도 있다. 이때, 예측값이 들어맞는 경우와 들어맞지 않는 경우에 따라 적응적으로 관련 정보를 부호화할 수 있다. 예측값은 인접한 블록(예를 들어, 좌, 상, 좌상, 우상 블록 등)의 오프셋 정보가 될 수 있으며, 어떤 블록의 오프셋 정보를 획득할 지에 대한 선택 정보가 발생할 수 있다.
상기 후보군 구성에는 유효성 검사가 수행될 수 있으며, 유효한 경우에는 후보군에 포함하고 유효하지 않는 경우에는 다음 후보로 넘어간다. 만약 이웃 블록이 픽쳐의 바깥에 위치하거나 또는 현재 블록과 다른 분할 단위에 속할 수 있으며, 본 발명의 후술하는 참조 불가능한 경우에도 유효하지 않을 수 있다.
부호화 픽쳐 버퍼(240)는 필터부(235)를 통해 복원된 블록 또는 픽쳐를 저장할 수 있다. 부호화 픽쳐 버퍼(240)에 저장된 복원 블록 또는 픽쳐는 화면내 예측 또는 화면간 예측을 수행하는 예측부(200)에 제공될 수 있다.
엔트로피 부호화부(245)는 생성된 양자화 주파수 계수열을 다양한 스캔 방식에 따라 스캔하여 양자화 계수열을 생성하고, 이를 엔트로피 부호화 기법 등을 이용하여 부호화 함으로써 출력한다. 스캔 패턴은 지그재그, 대각선, 래스터(raster) 등 다양한 패턴들 중 하나로 설정할 수 있다. 또한, 각 구성부로부터 전달되는 부호화 정보를 포함하는 부호화 데이터를 생성하여 비트스트림으로 출력할 수 있다.
도 3은 영상 복호화 장치에 대한 블록 구성도이다.
도 3을 참조하면, 영상 복호화 장치(30)는 엔트로피 복호화부(305), 예측부(310), 역양자화부(315), 역변환부(320), 가감산기(325), 필터(330) 및 복호화 픽쳐 버퍼(335)를 포함하여 구성될 수 있다.
또한, 예측부(310)는 다시 화면내 예측 모듈 및 화면간 예측 모듈을 포함하여 구성될 수 있다.
먼저, 영상 부호화 장치(20)로부터 전달된 영상 비트스트림이 수신되면, 엔트로피 복호화부(305)로 전달될 수 있다.
엔트로피 복호화부(305)는 비트스트림을 복호화하여 양자화된 계수들과 각 구성부로 전달되는 복호화 정보를 포함하는 복호화 데이터를 복호화할 수 있다.
예측부(310)는 엔트로피 복호화부(305)로부터 전달된 데이터들에 기초하여 예측 블록을 생성할 수 있다. 이때, 복호화된 픽쳐 버퍼(335)에 저장된 참조 영상에 기초하여, 디폴트(default) 구성 기법을 이용한 참조 픽쳐 리스트를 구성할 수도 있다.
화면내 예측부는 참조 화소 구성부, 참조 화소 필터부, 참조 화소 보간부, 예측 블록 생성부, 예측 모드 복호화부를 포함할 수 있고, 화면간 예측부는 참조 픽쳐 구성부, 움직임 보상부, 움직임 정보 복호화부를 포함할 수 있으며, 일부는 부호화기와 동일한 과정을 수행하고 일부는 역으로 유도하는 과정을 수행할 수 있다.
역양자화부(315)는 비트스트림으로 제공되어 엔트로피 복호화부(305)에 의해 복호화된 양자화된 변환 계수들을 역양자화할 수 있다.
역변환부(320)는 역 DCT, 역 정수 변환 또는 그와 유사한 개념의 역변환 기법들을 변환 계수에 적용하여 잔차 블록을 생성할 수 있다.
이때, 역양자화부(315), 역변환부(320)는 앞서 설명한 영상 부호화 장치(20)의 변환부(210) 및 양자화부(215)에서 수행한 과정을 역으로 수행하며 다양한 방법으로 구현될 수 있다. 예를 들어, 변환부(210) 및 양자화부(215)와 공유하는 동일한 과정 및 역변환을 사용할 수도 있고, 영상 부호화 장치(20)로부터 변환 및 양자화 과정에 관한 정보(예를 들면, 변환 크기, 변환 모양, 양자화 타입 등)를 이용하여 변환 및 양자화 과정을 역으로 수행할 수 있다.
역양자화 및 역변환 과정을 거친 잔차 블록은 예측부(310)에 의해 도출된 예측 블록과 가산되어 복원된 영상 블록이 생성될 수 있다. 이러한 가산은 가감산기(325)에 의해 이루어 질 수 있다.
필터(330)는 복원된 영상 블록에 대하여, 필요에 따라 블로킹(blocking) 현상을 제거하기 위하여 디블로킹 필터를 적용할 수도 있고, 상기 복호화 과정 전 후에 다른 루프 필터들을 비디오 품질을 향상시키기 위해 추가로 사용할 수도 있다.
복원 및 필터를 거친 영상 블록은 복호화 픽쳐 버퍼(335)에 저장될 수 있다.
본 발명의 일 실시예에 따른 칼라 좌표축 변환 과정은 상술한 영상 부호화 방법 이전 또는 복호화 방법 이후에 수행될 수 있으며, 상술한 영상 부호화/복호화 방법은 MPEG 압축 기법의 일 실시예일뿐 JPEG 압축 기법에도 이용될 수 있으며, 다양한 영상 부호화/복호화 방법에도 이용될 수 있으므로, 본 발명이 이에 한정되는 것은 아니다.
도 4는 샘플 영상을 나타낸 도면이다.
통상적으로 영상의 부호화를 수행하기 위한 칼라 영상은 카메라와 같은 촬영 장치에 의해 획득되는 경우 RGB 칼라 좌표계 상의 화소(pixel)들로 획득될 수 있으며, 영상의 복호화를 수행하여 사용자에게 디스플레이하는 경우 RGB 칼라 좌표계 상의 화소들로 디스플레이될 수 있다.
여기서, RGB 칼라 좌표계는 영상을 구성하는 화소를 Red(R), Green(G) 및 Blue(B)의 세 가지 성분으로 구분하여 나타낸 칼라 좌표계를 의미할 수 있으며, 각 성분 별 크기를 기초로 하나의 화소에 하나의 칼라를 나타낼 수 있다.
도 4를 참조하면, 샘플 영상은 정지 영상으로 수평 방향 및 수직 방향으로 각각 512개의 화소들이 배열될 수 있으며, 총 262,144(512 x 512)개의 화소로 구성될 수 있다. 또한, 각 화소는 R, G 및 B 값을 각각 가질 수 있으며, 각 R, G 및 B 값은 0부터 255까지의 정수 중 어느 하나의 값을 가질 수 있다.
본 발명의 일 실시예에 따른 칼라 좌표축 변환을 이용한 영상 부호화 방법은 도 5 내지 도 7과 함께 샘플 영상을 이용하여 설명하겠다.
도 5는 RGB 칼라 좌표계 상에서 샘플 영상의 화소 분포를 나타낸 도면이다.
다시 말해, 도 5는 도 4의 샘플 영상의 각 화소를 3차원 RGB 칼라 좌표계에 나타낸 도면일 수 있으며, 이를 샘플 영상의 RGB 화소 분포로 지칭할 수 있다.
도 5를 참조하면, 샘플 영상의 RGB 칼라 좌표계 상의 화소들은 모든 성분들이 어느 정도 흩어져 존재할 수 있으며, 이에 따라 각 성분 별 분포 범위(variance)는 차이가 크지 않을 수 있다. 여기서, 분포 범위는 변화량이라고 지칭할 수도 있다.
칼라 성분 별 화소값의 분포 범위는 영상 부호화 시 압축 효율에 영향을 줄 수 있다. 다시 말해, 칼라 성분 별 화소값의 분포 범위가 서로 큰 차이가 없는 경우 공간적 데이터 중복이 많음에 따라 압축 효율이 낮아질 수 있고, 하나의 성분에 분포 범위를 넓게 집중하는 경우 다른 성분에 상대적으로 적은 양의 비트를 할당함으로써 공간적 데이터 중복이 적음에 따라 압축 효율이 높아질 수 있다. 이는 상대적으로 분포 범위가 적은 Cb 성분 및 Cr 성분을 다운샘플링하는 점 및 DCT(Discrete Cosine Transform)를 통해 분포 범위가 넓은 저주파 및 분포 범위가 좁은 고주파 성분으로 변환하는 점과 유사한 이유일 수 있다.
여기서, 분포 범위는 데이터를 랜덤 변수 X로 모델링하며, E{} 부호를 사용하여 기대값(expected value) 또는 통계학적 평균(statistical average)을 표시하는 경우 대표적으로 E{|X-E{X}|2} 값을 의미할 수 있으나, 이에 한정되는 것은 아니며, E{|X-E{X}|n} (n은 1이상의 자연수) 값과 같이 데이터의 분포 범위 또는 변화량을 의미할 수 있는 모든 측정 계수를 의미할 수 있다.
따라서, 통상적인 영상 부호화 방법은 영상의 화소를 RGB 성분으로부터 YCbCr 성분으로 변환하여 하나의 성분에 분포 범위를 집중하고, 이에 따라 높은 압축 효율로 영상을 부호화할 수 있다. 이에 대한 상세한 설명은 도 6과 함께 후술하겠다.
도 6은 YCbCr 칼라 좌표계 상에서 샘플 영상의 화소 분포를 나타낸 도면이다.
다시 말해, 도 6은 도 5의 샘플 영상의 RGB 칼라 좌표계 상의 화소 분포를 YCbCr 칼라 좌표계 상의 화소 분포로 변환한 도면일 수 있다.
JPEG(Joint Photographic Experts Group) 및 MPEG(Moving Picture Experts Group) 등과 같은 영상 부호화 방법은 통상적으로 RGB 칼라 좌표계의 영상을 직접 부호화하지 않으며, RGB 칼라 좌표계의 영상을 YCbCr 칼라 좌표계로 변환하여 부호화를 수행할 수 있다.
여기서, YCbCr 칼라 좌표계는 영상을 구성하는 화소를 하나의 휘도 성분(luma sample) 및 둘의 색차 성분(chroma sample)으로 구분하여 나타낸 칼라 좌표계를 의미할 수 있으며, 각 성분 별 크기를 기초로 하나의 화소에 하나의 칼라를 나타낼 수 있다.
YCbCr 칼라 좌표계의 각 성분은 RGB 칼라 좌표계의 각 성분의 값이 0부터 1 사이의 값으로 정규화된 경우, 수학식 1과 같이 RGB 칼라 좌표계의 각 성분으로부터 산출될 수 있으며, RGB 칼라 좌표계의 각 성분은 수학식 2와 같이 YCbCr 칼라 좌표계의 각 성분으로부터 산출될 수 있다.
Figure PCTKR2019013933-appb-M000001
Figure PCTKR2019013933-appb-M000002
도 5의 샘플 영역의 RGB 칼라 좌표계 상의 각 성분은 수학식 1에 따라 YCbCr 좌표계 상의 각 성분으로 변환될 수 있으며, 도 6은 샘플 영역의 YCbCr 칼라 좌표계 상의 각 성분을 3차원 YCbCr 칼라 좌표계에 나타낸 도면일 수 있고, 이를 샘플 영상의 YCbCr 화소 분포로 지칭할 수 있다.
도 6을 참조하면, 샘플 영상의 YCbCr 칼라 좌표계 상의 화소들은 Y 성분이 흩어져 존재할 수 있으며, 이에 따라 Y 성분에 대하여 분포 범위를 집중할 수 있고, Cb 성분 및 Cr 성분은 상대적으로 집적되어 존재할 수 있으며, 이에 따라 Cb 성분 및 Cr 성분에 대하여 상대적으로 좁은 분포 범위를 가질 수 있다.
다시 말해, YCbCr 칼라 좌표계로의 변환은 Y 성분에 대하여 분포 범위를 집중시킬 수 있으므로, 상술한 바에 따라 영상 부호화 시 압축 효율을 향상시킬 수 있다.
도 7은 본 발명의 일 실시예에 따른 칼라 좌표축을 변환한 칼라 좌표계 상에서 샘플 영상의 화소 분포를 나타낸 도면이다.
본 발명의 일 실시예에 따른 영상 부호화 방법은 칼라 좌표축의 변환을 통해 도 6의 YCbCr 화소 분포보다 더욱 압축 효율을 향상시킬 수 있다. 다시 말해, 본 발명의 일 실시예에 따른 영상 부호화 방법은 좌표축 변환을 통해 기존의 YCbCr 칼라 좌표계로부터 새로운 YCbCr 칼라 좌표계를 변환할 수 있다. 다만, 본 발명은 칼라 좌표축의 변환을 통해 YCbCr 칼라 좌표계를 새로운 칼라 좌표계로 변환하는 방법에만 한정되지 않으며, 좌표축 변환을 통해 압축 효율이 향상될 수 있는 모든 칼라 좌표계에 적용될 수 있다.
여기서, 기존의 YCbCr 칼라 좌표계는 YCbCr 칼라 좌표계 또는 제1 칼라 좌표계로 나타낼 수 있으며, 새로운 칼라 좌표계는 Y'Cb'Cr' 칼라 좌표계 또는 제2 칼라 좌표계로 나타낼 수 있다.
본 발명의 일 실시예에 따른 칼라 좌표축 변환 과정은 크게 세 단계로 구분될 수 있다. 이하, 각 단계에 대하여 상세히 설명하겠다.
제1 단계는 제1 칼라 좌표계의 화소 분포를 Y 성분의 분포 범위가 최대가 되도록 회전시키는 단계일 수 있다. 여기서, Y 성분의 좌표축은 원점에 고정된 상태일 수 있으며, Y 성분의 좌표축, Cb 성분의 좌표축 및 Cr 성분의 좌표축은 각각 서로 직각 상태를 유지할 수 있다. 여기서, 제1 칼라 좌표계는 회전을 통해 Y 성분의 좌표축뿐만 아니라 Cb 성분의 좌표축 및 Cr 성분의 좌표축도 변환될 수 있으며, 이에 따라 생성된 칼라 좌표계는 중간 칼라 좌표계로 나타낼 수 있다.
여기서, 상술한 제1 단계는 각 성분 별 평균값이 0이 되도록 제1 칼라 좌표계의 원점을 화소 분포의 중심점으로 이동시킨 후 수행될 수 있다.
제2 단계는 중간 칼라 좌표계의 Cb 성분의 분포 범위 및 Cr 성분의 분포 범위를 비교하여 상대적으로 분포 범위가 넓은 성분을 결정하는 단계일 수 있다.
제3 단계는 중간 칼라 좌표계의 화소 분포를 제2 단계에서 결정한 성분의 분포 범위가 최대가 되도록 회전시키는 단계일 수 있다. 여기서, 중간 칼라 좌표계의 Y 성분의 좌표축은 고정된 상태일 수 있으며, Cb 성분의 좌표축 및 Cr 성분의 좌표축은 서로 직각 상태를 유지할 수 있다. 이에 따라 생성된 칼라 좌표계는 칼라 좌표축을 변환하여 생성되는 최종 칼라 좌표계로 제2 칼라 좌표계로 나타낼 수 있으며, 제2 칼라 좌표계의 각 성분은 Y' 성분, Cb' 성분 및 Cr' 성분으로 나타낼 수 있다.
본 발명의 일 실시예에 따른 칼라 좌표축 변환 과정은 복잡도 또는 계산량을 낮추기 위해 기존의 YCbCr 칼라 좌표계의 성분들을 3차원 상에서 다운 샘플링한 후 상술한 과정을 수행할 수도 있다.
도 7은 상술한 과정을 통해 도 6의 샘플 영상의 YCbCr 칼라 좌표계(제1 칼라 좌표계) 상의 화소 분포에 좌표축 변환을 수행하여 획득한 Y'Cb'Cr' 칼라 좌표계(제2 칼라 좌표계) 상의 화소 분포를 나타낸 도면일 수 있다.
도 7을 참조하면, 제2 칼라 좌표계에서의 Y' 성분의 분포 범위는 제1 칼라 좌표계에서의 Y 성분의 분포 범위보다 넓어졌으며, 제2 칼라 좌표계에서의 Cb' 성분의 분포 범위 및 Cr' 성분의 분포 범위는 제1 칼라 좌표계에서의 Cb 성분의 분포 범위 및 Cr 성분의 분포 범위보다 좁아졌음을 확인할 수 있다. 다시 말해, 제2 칼라 좌표계는 제1 칼라 좌표계보다 하나의 성분의 분포 범위가 상대적으로 더욱 집중될 수 있으며, 이에 따라 압축 효율이 상대적으로 향상될 수 있다.
본 발명의 일 실시예에 따른 영상 부호화 방법은 상술한 과정을 통해 컬러 좌표축을 변환할 수 있으며, 이에 따른 좌표축 변환 정보는 영상 별로 부가 정보(overhead information)의 형태로 압축된 영상 파일에 포함될 수 있다. 여기서, 부가 정보에 따른 데이터의 크기는 압축된 영상 파일의 크기와 비교하여 매우 작으므로, 전체 데이터의 양에서는 무시될 수 있을 것이다.
다만, 상술한 좌표축 변환 정보의 데이터의 크기는 이전 영상 또는 이전 블록을 참조함으로써 보다 작아지도록 설정할 수도 있다. 예를 들어, JPEG 영상 압축을 수행하기 위해 정지 영상을 8 x 8 크기의 블록 단위로 분할하고 블록 별로 좌상 블록부터 우하 블록의 방향으로 순차적으로 압축하는 경우, 본 발명의 일 실시예에 따라 블록 별로 칼라 좌표축 변환을 수행할 수 있으며, 블록 별로 좌표축 변환 정보를 부가 정보의 형태로 포함시킬 수 있다. 여기서, 좌표축 변환 정보는 블록 별로 부가 정보의 형태로 포함시킬 수 있으나, 이미 압축되어 있는 이전 블록들 또는 이전 블록들의 일부 화소들을 기초로 칼라 좌표축 변환을 수행하여 현재 좌표축 변환 정보를 획득될 수도 있으며, 이에 따라 획득된 현재 좌표축 변환 정보는 예측 좌표축 변환 정보로 나타낼 수 있다.
본 발명의 일 실시예에 따른 영상 부호화 방법은 영상을 분할한 블록 별로 칼라 좌표축 변환이 개별 수행되어 좌표축 변환 정보가 존재하거나 이전 블록들 또는 이전 블록들의 일부 화소를 기초로 예측하여 칼라 좌표축 변환이 수행되어 예측 좌표축 변환 정보가 존재할 수 있으며, 블록 별 부가 정보는 이에 대한 예측 여부 정보를 포함할 수 있다.
여기서, 예측 여부 정보는 현재 블록이 이전 블록들 또는 이전 블록들의 일부 화소를 기초로 예측하여 칼라 좌표축 변환이 수행되어 예측 좌표축 변환 정보가 존재하는 경우, 예측을 위해 선택 또는 참조할 이전 블록들 또는 이전 블록들의 일부 화소에 대한 정보를 더 포함할 수 있다.
또한, 본 발명의 일 실시예에 따른 영상 부호화 방법은 영상을 분할한 블록 별로 칼라 좌표축 변환을 수행하거나 수행하지 않을 수도 있으며, 블록 별 부가 정보는 칼라 좌표축 변환을 지시하는 변환 여부 정보를 포함할 수 있다.
여기서, 변환 여부 정보는 표시자 또는 플래그(flag)로써 1비트가 할당될 수 있으며, 현재 블록이 칼라 좌표축 변환을 수행하여도 압축 효율에 있어서 이득이 없는 경우, 좌표축 변환을 수행하지 않도록 하기 위한 정보일 수 있고, 압축 효율이 미리 설정된 값보다 작은 경우, 좌표축 변환을 수행하지 않도록 설정될 수 있다.
도 8은 본 발명의 일 실시예에 따른 칼라 좌표축 변환 수행하여 영상 부호화를 수행하는 경우 개선된 압축 효율을 나타낸 그래프이다.
도 8을 참조하면, 제1 케이스(case 1)는 도 4의 샘플 영상을 통상적으로 JPEG 압축한 경우를 나타낼 수 있으며, 제2 케이스(case 2)는 도 4의 샘플 영상을 통상적으로 JPEG 압축하기 이전에 본 발명의 일 실시예에 따른 칼라 좌표축 변환을 이용한 영상 부호화 방법을 수행한 경우를 나타낼 수 있다.
여기서, 변환 여부 정보는 블록 별로 부가 정보에 포함될 수 있으며, 1 비트의 표시자를 포함할 수 있다. 또한, 변환 여부 정보는 본 발명의 일 실시예에 따라 칼라 좌표축 변환을 수행하는 경우 0의 값의 표시자를 포함할 수 있으며, 수행하지 않는 경우 변환 여부 정보는 1의 값의 표시자를 포함할 수 있다.
또한, 예측 여부 정보는 블록 별로 부가 정보에 포함될 수 있으며, 변환 여부 정보가 좌표축 변환을 지시하는 블록의 부가 정보에만 포함될 수도 있다. 여기서, 본 발명의 일 실시예에 따르면, 현재 블록이 예측 여부 정보에 의해 이전 블록들 또는 이전 블록들의 일부 화소를 기초로 예측하여 칼라 좌표축 변환을 수행하는 경우, 현재 블록의 좌측, 좌상측, 상측 및 우상측에 해당하는 4개의 이웃 블록의 모든 화소들을 기초로 현재 블록의 화소 분포 정보를 예측 및 획득할 수 있으며, 이를 기초로 현재 블록의 칼라 좌표축 변환을 수행할 수 있다.
도 8을 참조하면, 제1 케이스와 제2 케이스는 PSNR(Peak Signal to Noise Ratio) 및 bpp(bit per pixel)를 이용하여 영상 부호화/복호화 시 압축 효율을 비교할 수 있으며, 본 발명의 일 실시예에 따른 칼라 좌표축 변환을 이용한 영상 부호화 방법을 이용한 제2 케이스가 제1 케이스보다 상대적으로 압축 효율이 향상된 것을 확인할 수 있다. 여기서, PSNR은 로그에 기초한 dB의 단위를 가질 수 있다.
상술한 본 발명의 일 실시예는 JPEG 압축을 수행한 것으로 블록의 크기는 8 x 8일 수 있으나, MPEG 압축을 수행하는 경우에도 본 발명의 일 실시예는 적용될 수 있으며, 이 경우, 블록의 크가는 8 x 8로 고정되지 않고 가변적일 수 있다.
다시 말해, 본 발명의 일 실시예에 따른 칼라 좌표축 변환을 이용한 영상 부호화 방법은 MPEG 압축 시 적용하는 경우, 이미 압축된 동일-프레임(intra-frame) 내의 주변 블록 및 화소들을 이용하여 현재 블록을 예측(intra prediction 또는 spatial prediction)하고, 근처-프레임(inter-frame)들 내의 주변 블록 및 화소들을 이용하여 현재 블록을 예측(inter prediction or temporal prediction)한 후, 예측 오차를 구하여 압축할 수 있는 구성이 JPEG 압축 시와 다를 수 있다.
도 9는 본 발명의 일 실시예에 따른 영상 부호화 장치의 블록 구성도이다.
도 9 참조하면, 본 발명의 일 실시예에 따른 영상 부호화 장치(900)는 적어도 하나의 프로세서(910), 메모리(920) 및 저장 장치(930)를 포함할 수 있다.
본 발명의 일 실시예에 따른 영상 부호화 장치(900)는 통상적인 영상 부호화/복호화 장치의 이전 또는 이후에서 수행될 수 있으며, 영상 부호화/복호화 장치 내에 탑재되어 영상 부호화/복호화 단계 이전 또는 이후에 수행될 수도 있으나, 이에 한정되는 것은 아니다.
프로세서(910)는 메모리(920) 및/또는 저장 장치(930)에 저장된 프로그램 명령(program command)을 실행할 수 있다. 프로세서(910)는 중앙 처리 장치(CPU, Central Processing Unit), 그래픽 처리 장치(GPU, Graphics Processing Unit) 또는 본 발명에 따른 방법들이 수행되는 전용의 프로세서를 의미할 수 있다. 메모리(920)와 저장 장치(930)는 휘발성 저장 매체 및/또는 비휘발성 저장 매체로 구성될 수 있다. 예를 들어, 메모리(920)는 읽기 전용 메모리(ROM, Read Only Memory) 및/또는 랜덤 액세스 메모리(RAM, Random Access Memory)로 구성될 수 있다.
메모리(920)는 프로세서(910)를 통해 실행되는 적어도 하나의 명령을 저장하고 있을 수 있다. 적어도 하나의 명령은 영상에 대한 제1 칼라 좌표계 상의 화소 분포 정보를 획득하는 명령, 화소 분포 정보를 기초로 제1 칼라 좌표계의 성분들 중 분포 범위(variance)가 가장 넓은 제1 성분을 결정하는 명령, 제1 성분의 분포 범위가 최대가 되도록 제1 칼라 좌표계의 좌표축을 원점을 중심으로 회전하여 중간 칼라 좌표계를 획득하는 명령, 중간 칼라 좌표계 중 제1 성분을 제외한 성분들 중 분포 범위가 가장 넓은 제2 성분을 결정하는 명령, 제2 성분의 분포 범위가 최대가 되도록 중간 칼라 좌표계의 좌표축을 원점을 중심으로 회전하여 제2 칼라 좌표계를 획득하는 명령 및 제2 칼라 좌표계 상의 화소 분포 정보를 기초로 영상을 부호화하는 명령을 포함할 수 있다.
또한, 적어도 하나의 명령은, 제1 칼라 좌표계 상의 화소 분포 정보 및 제2 칼라 좌표계 상의 화소 분포 정보 간의 차이를 기초로 영상의 좌표축 변환 정보를 생성하는 명령 및 영상의 좌표축 변환 정보를 기초로 영상의 부가 정보를 생성하는 명령 중 적어도 하나를 더 포함할 수 있다.
또한, 적어도 하나의 명령은, 제1 칼라 좌표계 상의 화소 분포 정보 및 제2 칼라 좌표계 상의 화소 분포 정보 간의 차이를 기초로 영상의 좌표축 변환 여부를 결정하는 명령, 영상의 좌표축 변환 여부에 따라 영상의 변환 여부 정보를 생성하는 명령 및 영상의 변환 여부 정보를 기초로 영상의 부가 정보를 생성하는 명령 중 적어도 하나를 더 포함할 수 있다.
또한, 적어도 하나의 명령은, 적어도 하나의 다른 영상에 대한 제1 칼라 좌표계 상의 화소 분포 정보를 기초로 영상에 대한 제1 칼라 좌표계 상의 화소 분포 정보를 획득하는 명령 및 적어도 하나의 다른 영상에 대한 정보를 기초로 영상의 부가 정보를 생성하는 명령 중 적어도 하나를 더 포함할 수 있다.
여기서, 제1 칼라 좌표계는, YCbCr 칼라 좌표계를 포함할 수 있고, 제1 성분은, Y 성분을 포함할 수 있다.
도 10은 본 발명의 일 실시예에 따른 영상 부호화 방법의 순서도이다.
도 10을 참조하면, 본 발명의 일 실시예에 따른 영상 부호화 장치는 우선, 영상에 대한 YCbCr 기존 칼라 좌표계 상의 화소 분포에 대한 정보를 획득할 수 있으며(S1010), Y 성분의 분포 범위가 최대가 되도록 기존 칼라 좌표계의 Y 성분 좌표축을 회전하여 중간 칼라 좌표계를 획득할 수 있다(S1020). 여기서, Y 성분의 좌표축을 회전하는 것은 Y 성분이 YCbCr 칼라 좌표계의 Y 성분, Cb 성분 및 Cr 성분 중 통상적으로 분포 범위가 가장 넓은 이유이나, 초기 회전을 Y 성분으로 한정하는 것은 아니다. 또한, Y 성분 좌표축의 회전은 Y 성분 좌표축, Cb 성분 좌표축 및 Cr 성분 좌표축 간에 서로 직각 상태를 유지한 채 기존 칼라 좌표계의 원점을 중심으로 회전될 수 있으며, 회전 이전에 화소 분포에 대한 정보를 기초로 각 성분의 평균값이 0이 되도록 원점을 이동할 수도 있다.
이후, 영상 부호화 장치는 중간 칼라 좌표계의 Cb 성분 및 Cr 성분 중 분포 범위가 상대적으로 넓은 성분을 결정할 수 있으며(S1030), 결정한 성분의 분포 범위가 최대가 되로록 중간 칼라 좌표계의 결정한 성분의 좌표축을 회전하여 변환된 칼라 좌표계를 획득할 수 있다(S1040). 여기서, 변환된 칼라 좌표계는 최종 칼라 좌표계를 의미할 수 있으며, 결정한 성분의 좌표축의 회전은 Cb 성분의 좌표축 및 Cr 성분의 좌표축을 직각 상태로 유지한 채 중간 칼라 좌표계의 원점을 중심으로 회전될 수 있다.
영상 부호화 장치는 기존 칼라 좌표계 상의 화소 분포 정보 및 변환된 칼라 좌표계 상의 화소 분포 정보 간의 차이를 기초로 좌표축 변환 정보에 대한 좌표축 변환 정보를 생성할 수 있으며(S1050), 생성한 좌표축 변환 정보를 영상의 부가 정보에 추가할 수 있다(S1060). 이후, 영상 부호화 장치는 변환된 칼라 좌표계 상의 화소 분포 정보를 기초로 영상을 부호화할 수 있으며(S1070), 추후, 영상 복호화 시 좌표축 변환 정보를 기초로 변환된 칼라 좌표계 상의 화소 분포 정보를 기존 칼라 좌표계 상의 화소 분포 정보로 역변환할 수 있다.
다시 말해, 통상적인 영상 부호화 장치는 영상의 YCbCr 칼라 좌표계 상의 정보를 획득하여 영상 부호화를 수행하나, 본 발명의 일 실시예를 적용하는 경우, 영상 부호화 장치는 영상의 Y'Cb'Cr' 칼라 좌표계 상의 정보를 획득할 수 있으며, 이를 기초로 영상 부호화를 수행할 수 있다. 영상 복호화 장치의 경우 상술한 바의 역으로 동작하여 복호화된 정보는 Y'Cb'Cr 칼라 좌표계 상의 정보일 수 있으며, 이를 YCbCr 칼라 좌표계로 역변환하여 제공할 수 있다.
본 발명의 실시예에 따른 동작은 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 프로그램 또는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어 분산 방식으로 컴퓨터로 읽을 수 있는 프로그램 또는 코드가 저장되고 실행될 수 있다.
또한, 컴퓨터가 읽을 수 있는 기록매체는 롬(rom), 램(ram), 플래시 메모리(flash memory) 등과 같이 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치를 포함할 수 있다. 프로그램 명령은 컴파일러(compiler)에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터(interpreter) 등을 사용해서 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함할 수 있다.
본 발명의 일부 측면들은 장치의 문맥에서 설명되었으나, 그것은 상응하는 방법에 따른 설명 또한 나타낼 수 있고, 여기서 블록 또는 장치는 방법 단계 또는 방법 단계의 특징에 상응한다. 유사하게, 방법의 문맥에서 설명된 측면들은 또한 상응하는 블록 또는 아이템 또는 상응하는 장치의 특징으로 나타낼 수 있다. 방법 단계들의 몇몇 또는 전부는 예를 들어, 마이크로프로세서, 프로그램 가능한 컴퓨터 또는 전자 회로와 같은 하드웨어 장치에 의해(또는 이용하여) 수행될 수 있다. 몇몇의 실시예에서, 가장 중요한 방법 단계들의 하나 이상은 이와 같은 장치에 의해 수행될 수 있다.
실시예들에서, 프로그램 가능한 로직 장치(예를 들어, 필드 프로그래머블 게이트 어레이)가 여기서 설명된 방법들의 기능의 일부 또는 전부를 수행하기 위해 사용될 수 있다. 실시예들에서, 필드 프로그래머블 게이트 어레이는 여기서 설명된 방법들 중 하나를 수행하기 위한 마이크로프로세서와 함께 작동할 수 있다. 일반적으로, 방법들은 어떤 하드웨어 장치에 의해 수행되는 것이 바람직하다.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야의 숙련된 당업자는 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.

Claims (16)

  1. 영상에 대한 제1 칼라 좌표계 상의 화소 분포 정보를 획득하는 단계;
    상기 화소 분포 정보를 기초로 상기 제1 칼라 좌표계의 성분들 중 분포 범위(variance)가 가장 넓은 제1 성분을 결정하는 단계;
    상기 제1 성분의 분포 범위가 최대가 되도록 상기 제1 칼라 좌표계의 좌표축을 원점을 중심으로 회전하여 중간 칼라 좌표계를 획득하는 단계;
    상기 중간 칼라 좌표계 중 상기 제1 성분을 제외한 성분들 중 분포 범위가 가장 넓은 제2 성분을 결정하는 단계;
    상기 제2 성분의 분포 범위가 최대가 되도록 상기 중간 칼라 좌표계의 좌표축을 원점을 중심으로 회전하여 제2 칼라 좌표계를 획득하는 단계; 및
    상기 제2 칼라 좌표계 상의 화소 분포 정보를 기초로 상기 영상을 부호화하는 단계를 포함하는, 영상 부호화 방법.
  2. 청구항 1에 있어서,
    상기 제1 칼라 좌표계 상의 화소 분포 정보 및 상기 제2 칼라 좌표계 상의 화소 분포 정보 간의 차이를 기초로 상기 영상의 좌표축 변환 정보를 생성하는 단계를 더 포함하는, 영상 부호화 방법.
  3. 청구항 2에 있어서,
    상기 영상의 좌표축 변환 정보를 기초로 상기 영상의 부가 정보를 생성하는 단계를 더 포함하는, 영상 부호화 방법.
  4. 청구항 1에 있어서,
    상기 제1 칼라 좌표계 상의 화소 분포 정보 및 상기 제2 칼라 좌표계 상의 화소 분포 정보 간의 차이를 기초로 상기 영상의 좌표축 변환 여부를 결정하는 단계를 더 포함하는, 영상 부호화 방법.
  5. 청구항 4에 있어서,
    상기 영상의 좌표축 변환 여부에 따라 상기 영상의 변환 여부 정보를 생성하는 단계; 및
    상기 영상의 변환 여부 정보를 기초로 상기 영상의 부가 정보를 생성하는 단계를 더 포함하는, 영상 부호화 방법.
  6. 청구항 1에 있어서,
    상기 영상에 대한 제1 칼라 좌표계 상의 화소 분포 정보를 획득하는 단계는,
    적어도 하나의 다른 영상에 대한 제1 칼라 좌표계 상의 화소 분포 정보를 기초로 상기 영상에 대한 제1 칼라 좌표계 상의 화소 분포 정보를 획득하는 단계를 포함하는, 영상 부호화 방법.
  7. 청구항 6에 있어서,
    상기 적어도 하나의 다른 영상에 대한 정보를 기초로 상기 영상의 부가 정보를 생성하는 단계를 더 포함하는, 영상 부호화 방법.
  8. 청구항 1에 있어서,
    상기 제1 칼라 좌표계는,
    YCbCr 칼라 좌표계를 포함하고,
    상기 제1 성분은,
    Y 성분을 포함하는, 영상 부호화 방법.
  9. 프로세서(processor); 및
    상기 프로세서를 통해 실행되는 적어도 하나의 명령이 저장된 메모리(memory)를 포함하고,
    상기 적어도 하나의 명령은,
    영상에 대한 제1 칼라 좌표계 상의 화소 분포 정보를 획득하도록 실행되고,
    상기 화소 분포 정보를 기초로 상기 제1 칼라 좌표계의 성분들 중 분포 범위(variance)가 가장 넓은 제1 성분을 결정하도록 실행되고,
    상기 제1 성분의 분포 범위가 최대가 되도록 상기 제1 칼라 좌표계의 좌표축을 원점을 중심으로 회전하여 중간 칼라 좌표계를 획득하도록 실행되고,
    상기 중간 칼라 좌표계 중 상기 제1 성분을 제외한 성분들 중 분포 범위가 가장 넓은 제2 성분을 결정하도록 실행되고,
    상기 제2 성분의 분포 범위가 최대가 되도록 상기 중간 칼라 좌표계의 좌표축을 원점을 중심으로 회전하여 제2 칼라 좌표계를 획득하도록 실행되고,
    상기 제2 칼라 좌표계 상의 화소 분포 정보를 기초로 상기 영상을 부호화하도록 실행되는, 영상 부호화 장치.
  10. 청구항 9에 있어서,
    상기 적어도 하나의 명령은,
    상기 제1 칼라 좌표계 상의 화소 분포 정보 및 상기 제2 칼라 좌표계 상의 화소 분포 정보 간의 차이를 기초로 상기 영상의 좌표축 변환 정보를 생성하도록 실행되는, 영상 부호화 장치.
  11. 청구항 10에 있어서,
    상기 적어도 하나의 명령은,
    상기 영상의 좌표축 변환 정보를 기초로 상기 영상의 부가 정보를 생성하도록 실행되는, 영상 부호화 장치.
  12. 청구항 9에 있어서,
    상기 적어도 하나의 명령은,
    상기 제1 칼라 좌표계 상의 화소 분포 정보 및 상기 제2 칼라 좌표계 상의 화소 분포 정보 간의 차이를 기초로 상기 영상의 좌표축 변환 여부를 결정하도록 실행되는, 영상 부호화 장치.
  13. 청구항 12에 있어서,
    상기 적어도 하나의 명령은,
    상기 영상의 좌표축 변환 여부에 따라 상기 영상의 변환 여부 정보를 생성하도록 실행되고,
    상기 영상의 변환 여부 정보를 기초로 상기 영상의 부가 정보를 생성하도록 실행되는, 영상 부호화 장치.
  14. 청구항 9에 있어서,
    상기 적어도 하나의 명령은,
    적어도 하나의 다른 영상에 대한 제1 칼라 좌표계 상의 화소 분포 정보를 기초로 상기 영상에 대한 제1 칼라 좌표계 상의 화소 분포 정보를 획득하도록 실행되는, 영상 부호화 장치.
  15. 청구항 14에 있어서,
    상기 적어도 하나의 명령은,
    상기 적어도 하나의 다른 영상에 대한 정보를 기초로 상기 영상의 부가 정보를 생성하도록 실행되는, 영상 부호화 장치.
  16. 청구항 9에 있어서,
    상기 제1 칼라 좌표계는,
    YCbCr 칼라 좌표계를 포함하고,
    상기 제1 성분은,
    Y 성분을 포함하는, 영상 부호화 장치.
PCT/KR2019/013933 2018-11-01 2019-10-23 칼라 좌표축 변환을 이용한 영상 부호화/복호화 방법 및 장치 WO2020091293A1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/266,546 US11528491B2 (en) 2018-11-01 2019-10-23 Image encoding/decoding method and device using color coordinate axis conversion

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020180132672A KR20200050111A (ko) 2018-11-01 2018-11-01 칼라 좌표축 변환을 이용한 영상 부호화/복호화 방법 및 장치
KR10-2018-0132672 2018-11-01

Publications (1)

Publication Number Publication Date
WO2020091293A1 true WO2020091293A1 (ko) 2020-05-07

Family

ID=70463410

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2019/013933 WO2020091293A1 (ko) 2018-11-01 2019-10-23 칼라 좌표축 변환을 이용한 영상 부호화/복호화 방법 및 장치

Country Status (3)

Country Link
US (1) US11528491B2 (ko)
KR (1) KR20200050111A (ko)
WO (1) WO2020091293A1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004100504A2 (en) * 2003-04-30 2004-11-18 Ventana Medical Systems, Inc. Color image compression via spectral decorrelation and elimination of spatial redundancy
JP2011019204A (ja) * 2009-07-10 2011-01-27 Konica Minolta Business Technologies Inc 画像符号化方法
KR20110096811A (ko) * 2010-02-23 2011-08-31 (주)스프링웨이브 컬러 영상의 색좌표 변환 처리 장치
JP2014204332A (ja) * 2013-04-05 2014-10-27 日本電信電話株式会社 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、およびそれらのプログラム並びに記録媒体
KR20180026517A (ko) * 2015-08-04 2018-03-12 돌비 레버러토리즈 라이쎈싱 코오포레이션 하이 다이내믹 레인지 신호들에 대한 신호 리섀이핑

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10244249B2 (en) * 2015-09-21 2019-03-26 Qualcomm Incorporated Fixed point implementation of range adjustment of components in video coding

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004100504A2 (en) * 2003-04-30 2004-11-18 Ventana Medical Systems, Inc. Color image compression via spectral decorrelation and elimination of spatial redundancy
JP2011019204A (ja) * 2009-07-10 2011-01-27 Konica Minolta Business Technologies Inc 画像符号化方法
KR20110096811A (ko) * 2010-02-23 2011-08-31 (주)스프링웨이브 컬러 영상의 색좌표 변환 처리 장치
JP2014204332A (ja) * 2013-04-05 2014-10-27 日本電信電話株式会社 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置、およびそれらのプログラム並びに記録媒体
KR20180026517A (ko) * 2015-08-04 2018-03-12 돌비 레버러토리즈 라이쎈싱 코오포레이션 하이 다이내믹 레인지 신호들에 대한 신호 리섀이핑

Also Published As

Publication number Publication date
KR20200050111A (ko) 2020-05-11
US11528491B2 (en) 2022-12-13
US20210321120A1 (en) 2021-10-14

Similar Documents

Publication Publication Date Title
WO2017069419A1 (ko) 비디오 코딩 시스템에서 인트라 예측 방법 및 장치
WO2013062193A1 (ko) 영상 복호화 방법 및 장치
WO2012018198A2 (ko) 예측 블록 생성 장치
WO2012018197A2 (ko) 인트라 예측 복호화 장치
WO2012144876A2 (ko) 인루프 필터링을 적용한 예측 방법을 이용한 영상 부호화/복호화 방법 및 장치
WO2017160117A1 (ko) 인트라 예측 기반의 비디오 신호 처리 방법 및 장치
WO2016204360A1 (ko) 영상 코딩 시스템에서 조도 보상에 기반한 블록 예측 방법 및 장치
WO2019240448A1 (ko) 성분 간 참조 기반의 비디오 신호 처리 방법 및 장치
WO2011126285A2 (ko) 부호화 모드에 대한 정보를 부호화, 복호화하는 방법 및 장치
WO2012023762A2 (ko) 인트라 예측 복호화 방법
WO2013069932A1 (ko) 영상의 부호화 방법 및 장치, 및 복호화 방법 및 장치
WO2011019234A2 (en) Method and apparatus for encoding and decoding image by using large transformation unit
WO2012081879A1 (ko) 인터 예측 부호화된 동영상 복호화 방법
WO2020185004A1 (ko) 예측 유닛을 서브 유닛들로 분할하여 예측하는 인트라 예측 방법 및 장치
WO2013062191A1 (ko) 인트라 예측 모드에서의 영상 부호화 방법 및 장치
WO2013062196A1 (ko) 영상 복호화 장치
WO2016200043A1 (ko) 비디오 코딩 시스템에서 가상 참조 픽처 기반 인터 예측 방법 및 장치
WO2013062198A1 (ko) 영상 복호화 장치
WO2020197038A1 (ko) 영상 코딩 시스템에서 인트라 서브 파티션 기반의 인트라 예측 방법 및 장치
WO2013062194A1 (ko) 복원 블록을 생성하는 방법 및 장치
WO2019112071A1 (ko) 영상 코딩 시스템에서 크로마 성분의 효율적 변환에 기반한 영상 디코딩 방법 및 장치
WO2019132567A1 (ko) 서브-블록 단위 화면 내 예측을 사용하는 비디오 코딩 방법 및 장치
WO2020231228A1 (ko) 영상 복호화 장치에서 이용하는 역양자화장치 및 방법
WO2011126274A2 (en) Methods and apparatuses for encoding and decoding image based on segments
WO2019212230A1 (ko) 영상 코딩 시스템에서 블록 사이즈에 따른 변환을 사용하는 영상 디코딩 방법 및 그 장치

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19879296

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19879296

Country of ref document: EP

Kind code of ref document: A1