WO2017014585A1 - 그래프 기반 변환을 이용하여 비디오 신호를 처리하는 방법 및 장치 - Google Patents

그래프 기반 변환을 이용하여 비디오 신호를 처리하는 방법 및 장치 Download PDF

Info

Publication number
WO2017014585A1
WO2017014585A1 PCT/KR2016/007972 KR2016007972W WO2017014585A1 WO 2017014585 A1 WO2017014585 A1 WO 2017014585A1 KR 2016007972 W KR2016007972 W KR 2016007972W WO 2017014585 A1 WO2017014585 A1 WO 2017014585A1
Authority
WO
WIPO (PCT)
Prior art keywords
graph
transform
current block
present
edge
Prior art date
Application number
PCT/KR2016/007972
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 US15/746,158 priority Critical patent/US20180220158A1/en
Publication of WO2017014585A1 publication Critical patent/WO2017014585A1/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/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder

Definitions

  • the present invention relates to a method and apparatus for encoding and decoding a video signal using a graph-based transform (GBT). Specifically, the present invention relates to a graph generation method for deriving a graph-based transform applicable to intra coding.
  • GBT graph-based transform
  • Compression coding refers to a series of signal processing techniques for transmitting digitized information through a communication line or for storing in a form suitable for a storage medium.
  • Media such as an image, an image, an audio, and the like may be a target of compression encoding.
  • a technique of performing compression encoding on an image is called video image compression.
  • Next-generation video content will be characterized by high spatial resolution, high frame rate and high dimensionality of scene representation. Processing such content would result in a tremendous increase in terms of memory storage, memory access rate, and processing power.
  • a graph is a data representation form useful for describing relationship information between pixels, and a graph-based signal processing method of expressing and processing such relationship information between pixels as a graph is used.
  • This graph-based signal processing is based on a graph in which each signal sample represents a vertex and the relationship of the signal is represented by a graph edge with a positive weight. Since differential signals have very different statistical characteristics depending on the prediction method and the video content, it is necessary to optimize concepts such as sampling, filtering, and transformation using graph-based signal processing.
  • the present invention seeks to provide a method for generating a graph for deriving a graph-based transform applicable to intra coding.
  • the present invention seeks to provide a method of generating a graph for an entire block or a partial graph for a partial region to derive a graph-based transform applicable to intra coding.
  • An object of the present invention is to provide a method of applying a graph-based transformation adaptive to a characteristic of an image signal or a differential signal.
  • An object of the present invention is to provide a method of generating a transform kernel using a graph after generating a graph from segmentation information of an image.
  • the present invention seeks to provide a method for generating an optimal transform kernel based on the graph characteristics of the differential block.
  • the present invention provides a method of selecting whether to apply a general transformation (eg, DCT or DST) or a graph-based transformation by transmitting flag information for each image segmentation unit.
  • a general transformation eg, DCT or DST
  • a graph-based transformation by transmitting flag information for each image segmentation unit.
  • An object of the present invention is to provide a method of defining a translation index corresponding to an optimal translation kernel.
  • An object of the present invention is to provide a method of generating a line graph based on at least one of an edge weight, a magnetic loop number, and a magnetic loop weight.
  • An object of the present invention is to provide a method of generating a graph-based transform kernel using various types of line graphs.
  • the present invention seeks to provide a method for defining and signaling a template for a graph-based transform based on at least one of edge weights, magnetic loop numbers, and magnetic loop weights.
  • the present invention provides a method for generating a graph for deriving a graph-based transform applicable to intra coding.
  • the present invention provides a method of generating a graph for an entire block or a partial graph for a partial region to derive a graph-based transform applicable to intra coding.
  • the present invention provides a method of constructing a graph for an entire block from a dependency relationship with neighboring reference pixels.
  • the present invention provides a method of constructing a partial graph from a graph for an entire block to derive a graph-based transform to be applied to a local region.
  • the present invention provides various methods for determining weight values of edges belonging to a graph from an intra prediction scheme.
  • the present invention provides a method of applying a graph-based transform that is adaptive to the characteristics of a video signal or a differential signal.
  • the present invention provides a method for generating a transform kernel using the graph after generating the graph based on the transform unit or the prediction mode.
  • the present invention provides a method for generating an optimal transform kernel based on the graph characteristics of the difference block.
  • the present invention provides a method of selecting whether to apply general transformation (eg, DCT or DST) or graph based transformation by transmitting flag information for each image segmentation unit.
  • general transformation eg, DCT or DST
  • the present invention provides a method of defining a translation index corresponding to an optimal translation kernel.
  • the present invention provides a method of generating a line graph based on at least one of an edge weight, a magnetic loop number, and a magnetic loop weight.
  • the present invention provides a method of generating a graph-based transform kernel using various types of line graphs.
  • a still image or a moving image is represented by a graph that can well represent characteristics of an image signal, and then encoded / decoded by applying a transform kernel generated from the graph, thereby greatly reducing the amount of compressed data for a complex image.
  • the present invention can increase the compression efficiency in intra coding by inducing a graph-based transform that can be applied well to intra coding.
  • the present invention ensures the flexibility to adaptively apply transforms, reduces computational complexity, enables faster adaptation to changing statistical characteristics in different video segments, and performs transformations. Variability can be provided.
  • the present invention can perform more efficient coding by providing a method of applying a graph-based transform that is adaptive to the characteristics of a video signal or a differential signal.
  • the present invention can significantly reduce the overhead in transmission and transform selection of a transform matrix by defining a transform index corresponding to an optimal transform kernel.
  • FIG. 1 is a schematic block diagram of an encoder in which encoding of a video signal is performed as an embodiment to which the present invention is applied.
  • FIG. 2 is a schematic block diagram of a decoder in which decoding of a video signal is performed as an embodiment to which the present invention is applied.
  • FIG. 3 shows examples of graphs used to model statistical relationships within 8x8 blocks in a video frame according to an embodiment to which the present invention is applied.
  • FIG. 4 is a diagram illustrating two types of graphs showing a weight distribution as an embodiment to which the present invention is applied.
  • FIG. 5 is a diagram for describing a process of obtaining a graph-based transformation matrix based on a 1D graph and a 2D graph as an embodiment to which the present invention is applied.
  • FIG. 6 shows an example of one-dimensional graphs that may be a transformation basis for applying a separable transform as an embodiment to which the present invention is applied.
  • FIG. 7 is a diagram for describing a method of applying a different separable transform to each line of a 2D graph as an embodiment to which the present invention is applied.
  • FIG. 8 illustrates a schematic block diagram of an encoder for processing a graph-based signal as an embodiment to which the present invention is applied.
  • FIG. 9 illustrates a schematic block diagram of a decoder for processing a graph-based signal as an embodiment to which the present invention is applied.
  • FIG. 10 illustrates an internal block diagram of a graph-based transform unit according to an embodiment to which the present invention is applied.
  • FIG. 11 is a flowchart illustrating a method of performing a transform using a graph generated based on a transform unit size (TU size) or a prediction mode according to an embodiment to which the present invention is applied.
  • TU size transform unit size
  • FIG. 11 is a flowchart illustrating a method of performing a transform using a graph generated based on a transform unit size (TU size) or a prediction mode according to an embodiment to which the present invention is applied.
  • FIG. 12 is a flowchart illustrating a method of performing inverse transform using a graph generated based on a transform unit size (TU size) or a prediction mode according to an embodiment to which the present invention is applied.
  • TU size transform unit size
  • FIG. 12 is a flowchart illustrating a method of performing inverse transform using a graph generated based on a transform unit size (TU size) or a prediction mode according to an embodiment to which the present invention is applied.
  • FIG. 13 is a diagram for explaining a method of predicting a current pixel using edge weights according to a prediction direction in intra prediction, according to an embodiment to which the present invention is applied.
  • FIG. 14 is a diagram for describing a method of generating a graph using edge weights according to intra prediction directions for a 4 ⁇ 4 block according to an embodiment to which the present invention is applied.
  • 15 to 16 illustrate embodiments to which the present invention is applied and illustrate a method of generating a partial graph in units of two lines using edge weights according to an intra prediction direction.
  • FIG. 17 is a diagram for describing a method of generating a partial graph of one line unit using edge weights according to an intra prediction direction, according to an embodiment to which the present invention is applied.
  • FIG. 18 is a diagram for describing a method of generating a partial graph in units of three lines using edge weights according to an intra prediction direction, according to an embodiment to which the present invention is applied.
  • FIG. 19 to FIG. 20 are diagrams for describing a method of generating a partial graph in units of two lines using edge weights along a vertical direction in intra prediction, according to an embodiment to which the present invention is applied.
  • 21 to 22 are diagrams for describing a method of generating a partial graph in units of two lines using edge weights along a lower right direction in intra prediction, according to an embodiment to which the present invention is applied.
  • FIG. 23 is a flowchart illustrating a method of calculating an edge weight according to a prediction mode and generating a line graph according to an embodiment to which the present invention is applied.
  • a method of decoding a video signal using a graph-based transform comprising: parsing a transform index from the video signal; Obtaining context information for a target unit, wherein the context information includes a prediction mode for a current block or a neighboring block; Obtaining an inverse transform kernel based on at least one of the transform index or the context information; And performing an inverse transform on the current block by using the inverse transform kernel.
  • the inverse transform kernel is generated based on a line graph represented by edge weights of the current block, and the edge weights are calculated using a prediction direction angle corresponding to a prediction mode for the current block or the neighboring block. It is characterized by the calculation.
  • the prediction direction angle represents an angle formed between the prediction direction and the horizontal axis
  • the edge weight represents a cosine value for the angle
  • the edge weight is calculated by at least one of a minimum value, summation, multiplication, or an average value of the connected edge weights.
  • the line graph is characterized in that it comprises a partial graph (partial graph) of at least one or more line units.
  • the inverse transform kernel when the line graph represents a partial graph of one line, is characterized by indicating a one-dimensional separable inverse-graph based transform corresponding to the line graph.
  • the present invention provides a method of encoding a video signal using a graph-based transform, the method comprising: identifying context information for a current block, wherein the context information includes a prediction mode for the current block or a neighboring block; Calculating edge weights between pixels in the current block using a prediction direction angle corresponding to the prediction mode for the current block or the neighboring block; Deriving a transform kernel from the line graph generated based on the edge weights; And performing a transform on the current block by using the transform kernel.
  • the method further comprises the step of encoding a conversion index corresponding to the conversion kernel.
  • the edge weight is calculated using a weight function set according to the prediction mode or the prediction direction angle.
  • the prediction direction angle represents an angle formed between the prediction direction and the horizontal axis
  • the edge weight represents a cosine value for the angle
  • the edge weight is calculated by at least one of a minimum value, summation, multiplication, or an average value of the connected edge weights.
  • the line graph is characterized in that it comprises a partial graph (partial graph) of at least one or more line units.
  • the transform kernel when the line graph represents a partial graph of one line, is characterized by representing a one-dimensional separable graph-based transform corresponding to the line graph.
  • an apparatus for encoding a video signal using a graph-based transform includes checking context information on a current block and using a prediction direction angle corresponding to a prediction mode for the current block or the neighboring block.
  • a graph signal generator for calculating edge weights between pixels in the current block;
  • a transform matrix determiner for deriving a transform kernel from a line graph generated based on the edge weights;
  • a transform performing unit for transforming the current block by using the transform kernel, wherein the context information includes a prediction mode for the current block or a neighboring block.
  • the present invention provides an apparatus for decoding a video signal using a graph-based transform, the apparatus comprising: a parser for parsing a transform index from the video signal; And an inverse transform unit that obtains context information about a target unit, obtains an inverse transform kernel based on at least one of the transform index or the context information, and performs an inverse transform on the current block by using the inverse transform kernel.
  • the context information provides an apparatus comprising a prediction mode for a current block or a neighboring block.
  • terms used in the present invention may be replaced for more appropriate interpretation when there are general terms selected to describe the invention or other terms having similar meanings.
  • signals, data, samples, pictures, frames, blocks, etc. may be appropriately replaced and interpreted in each coding process.
  • partitioning, decomposition, splitting, and division may be appropriately replaced and interpreted in each coding process.
  • Compression efficiency can be improved by applying a linear transformation that adaptively changes the statistical properties of the signal in other parts of the video sequence.
  • General statistical methods have been tried for this purpose, but they have had limited results.
  • a graph-based signal processing technique is introduced as a more efficient way of modeling the statistical characteristics of a video signal for video compression.
  • the orthogonal transform for coding or prediction can be derived by calculating the eigen decomposition of the graph Laplacian matrix. For example, an eigen vector and an eigen value may be obtained through the spectral decomposition.
  • the present invention provides a method for generating a graph-based transform kernel by combining transform coefficients of a region divided by an edge based on at least one line graph.
  • the transform obtained from the graph may be defined as a graph-based transform (hereinafter, referred to as 'GBT').
  • 'GBT' graph-based transform
  • GBT conversion obtained from the graph
  • FIG. 1 is a schematic block diagram of an encoder in which encoding of a video signal is performed as an embodiment to which the present invention is applied.
  • the encoder 100 may include an image splitter 110, a transformer 120, a quantizer 130, an inverse quantizer 140, an inverse transformer 150, a filter 160, and a decoder. It may include a decoded picture buffer (DPB) 170, an inter predictor 180, an intra predictor 185, and an entropy encoder 190.
  • DPB decoded picture buffer
  • the image divider 110 may divide an input image (or a picture or a frame) input to the encoder 100 into one or more processing units.
  • the processing unit may be a Coding Tree Unit (CTU), a Coding Unit (CU), a Prediction Unit (PU), or a Transform Unit (TU).
  • CTU Coding Tree Unit
  • CU Coding Unit
  • PU Prediction Unit
  • TU Transform Unit
  • the terms are only used for the convenience of description of the present invention, the present invention is not limited to the definition of the terms.
  • the term coding unit is used as a unit used in encoding or decoding a video signal, but the present invention is not limited thereto and may be appropriately interpreted according to the present invention.
  • the encoder 100 may generate a residual signal by subtracting a prediction signal output from the inter predictor 180 or the intra predictor 185 from the input image signal, and generate the residual signal. Is transmitted to the converter 120.
  • the transformer 120 may generate a transform coefficient by applying a transform technique to the residual signal.
  • the conversion process may be applied to pixel blocks having the same size as the square, or may be applied to blocks of variable size rather than square.
  • the quantization unit 130 may quantize the transform coefficients and transmit the quantized coefficients to the entropy encoding unit 190, and the entropy encoding unit 190 may entropy code the quantized signal and output the bitstream.
  • the quantized signal output from the quantization unit 130 may be used to generate a prediction signal.
  • the quantized signal may restore the residual signal by applying inverse quantization and inverse transformation through the inverse quantization unit 140 and the inverse transform unit 150 in the loop.
  • a reconstructed signal may be generated by adding the reconstructed residual signal to a prediction signal output from the inter predictor 180 or the intra predictor 185.
  • the filtering unit 160 applies filtering to the reconstruction signal and outputs it to the reproduction apparatus or transmits the decoded picture buffer to the decoding picture buffer 170.
  • the filtered signal transmitted to the decoded picture buffer 170 may be used as the reference picture in the inter predictor 180. As such, by using the filtered picture as a reference picture in the inter prediction mode, not only image quality but also encoding efficiency may be improved.
  • the decoded picture buffer 170 may store the filtered picture for use as a reference picture in the inter prediction unit 180.
  • the inter prediction unit 180 performs temporal prediction and / or spatial prediction to remove temporal redundancy and / or spatial redundancy with reference to a reconstructed picture.
  • the reference picture used to perform the prediction is a transformed signal that has been quantized and dequantized in units of blocks at the time of encoding / decoding in the previous time, blocking artifacts or ringing artifacts may exist. have.
  • the inter prediction unit 180 may interpolate the signals between pixels in sub-pixel units by applying a lowpass filter in order to solve performance degradation due to discontinuity or quantization of such signals.
  • the subpixel refers to a virtual pixel generated by applying an interpolation filter
  • the integer pixel refers to an actual pixel existing in the reconstructed picture.
  • the interpolation method linear interpolation, bi-linear interpolation, wiener filter, or the like may be applied.
  • the interpolation filter may be applied to a reconstructed picture to improve the precision of prediction.
  • the inter prediction unit 180 generates an interpolation pixel by applying an interpolation filter to integer pixels, and uses an interpolated block composed of interpolated pixels as a prediction block. You can make predictions.
  • the intra predictor 185 may predict the current block by referring to samples around the block to which current encoding is to be performed.
  • the intra prediction unit 185 may perform the following process to perform intra prediction. First, reference samples necessary for generating a prediction signal may be prepared. The prediction signal may be generated using the prepared reference sample. Then, the prediction mode is encoded. In this case, the reference sample may be prepared through reference sample padding and / or reference sample filtering. Since the reference sample has been predicted and reconstructed, there may be a quantization error. Accordingly, the reference sample filtering process may be performed for each prediction mode used for intra prediction to reduce such an error.
  • a prediction signal generated through the inter predictor 180 or the intra predictor 185 may be used to generate a reconstruction signal or to generate a residual signal.
  • FIG. 2 is a schematic block diagram of a decoder in which decoding of a video signal is performed as an embodiment to which the present invention is applied.
  • the decoder 200 includes a parser (not shown), an entropy decoder 210, an inverse quantizer 220, an inverse transformer 230, a filter 240, and a decoded picture buffer (DPB).
  • a decoded picture buffer unit 250, an inter predictor 260, and an intra predictor 265 may be included.
  • the reconstructed video signal output through the decoder 200 may be reproduced through the reproducing apparatus.
  • the decoder 200 may receive a signal output from the encoder 100 of FIG. 1, and the received signal may be entropy decoded through the entropy decoding unit 210.
  • the inverse quantization unit 220 obtains a transform coefficient from the entropy decoded signal using the quantization step size information.
  • the obtained transform coefficients may be applied to various embodiments described in the transform unit 120 of FIG.
  • the inverse transform unit 230 inversely transforms the transform coefficient to obtain a residual signal.
  • a reconstructed signal is generated by adding the obtained residual signal to a prediction signal output from the inter predictor 260 or the intra predictor 265.
  • the filtering unit 240 applies filtering to the reconstructed signal and outputs the filtering to the reproducing apparatus or transmits it to the decoded picture buffer unit 250.
  • the filtered signal transmitted to the decoded picture buffer unit 250 may be used as the reference picture in the inter predictor 260.
  • the embodiments described by the filtering unit 160, the inter prediction unit 180, and the intra prediction unit 185 of the encoder 100 are respectively the filtering unit 240, the inter prediction unit 260, and the decoder. The same may be applied to the intra predictor 265.
  • FIG. 3 illustrates an example of graphs used to model a statistical relationship in an 8x8 block in a video frame as an embodiment to which the present invention is applied.
  • Discrete-time signal processing techniques have evolved from directly processing and filtering analog signals, and therefore have some common assumptions, such as sampling and processing only regularly and organized data. Has been limited.
  • the field of video compression is basically based on the same assumptions, but is generalized to multidimensional signals.
  • Signal processing based on graph representations generalizes concepts such as sampling, filtering, and Fourier transforms, uses graphs where each signal sample represents a vertex, and from traditional approaches where signal relationships are represented by positively weighted graph edges. Begins. This completely disconnects the signal from its acquisition process, so that characteristics such as sampling rate and sequence are completely replaced by the characteristics of the graph.
  • the graph representation can be defined by some specific graph models.
  • an undirected simple graph and an undirected edge can be used.
  • the undirected simple graph may refer to a graph without a self-loop or multi edges.
  • G is an undirected simple graph with weights assigned to each edge
  • an undirected simple graph G can be described by three parameters as shown in Equation 1 below. have.
  • V denotes a set of V graph vertices
  • denotes a graph edge set
  • W denotes a weight expressed by a VxV matrix.
  • the weight W may be expressed as Equation 2 below.
  • W i, j represents the weight of the edge (i, j)
  • W j, i represents the weight of the edge (j, i)
  • if there is no edge connecting the vertices (i, j), W i, j 0.
  • W i, i 0.
  • the present invention provides two embodiments of a graph type that can be used for processing 8x8 pixel blocks in an image or video.
  • Each pixel is associated with a graph vertex, whose value is the value of the graph vertex.
  • the graph edge may mean a line connecting graph vertices.
  • the graph edge is used to represent any form of statistical dependence in the signal, where a positive weight may indicate its strength.
  • each vertex may be connected to all other vertices, and a weight of zero may be assigned to the edges connecting the unrelated or weakly associated vertices.
  • an edge with a weight of zero may be completely removed.
  • each vertex may be defined to be connected to the eight adjacent vertices nearest thereto.
  • FIG. 4 is a diagram illustrating two types of graphs showing a weight distribution as an embodiment to which the present invention is applied.
  • the vertex values of the graph are independent variables based on signal measurements (typically modeled as arbitrary variables), but it is necessary to select the edge weights of the graph that match the characteristics of some signals.
  • the colors of the lines for the graph edges represent different edge weights.
  • the graph of FIG. 4 (a) shows a case of having a "weak link” along a straight line and a case of having only two types of edge weights.
  • the "weak link” means that it has a relatively small edge weight.
  • the graph of FIG. 4 (b) shows the distribution of edge weights covering an irregular area, and the present invention intends to provide a method of processing a signal using the distribution graph of the edge weights.
  • FIG. 5 is a diagram for describing a process of obtaining a graph-based transformation matrix based on a 1D graph and a 2D graph as an embodiment to which the present invention is applied.
  • FIG. 5A illustrates a 1D graph corresponding to each line of the pixel block
  • FIG. 5B illustrates a 2D graph corresponding to the pixel block.
  • the graph vertex is associated with each pixel of the pixel block, and the value of the graph vertex may be expressed as a pixel value.
  • the graph edge may mean a line connecting graph vertices.
  • the graph edge is used to represent some form of statistical dependence in the signal, and a value representing the strength may be referred to as an edge weight.
  • FIG. 5 (a) one-dimensional graphs are shown, 0, 1, 2, and 3 represent positions of vertices, and w 0 , w 1 and w 2 represent edge weights between the vertices.
  • Each vertex may be connected to all other vertices, and an edge weight of zero may be assigned to the edges connecting the unrelated or weakly associated vertices. However, for the sake of simplicity, the edge with an edge weight of zero can be completely removed.
  • the relationship information between pixels may be represented by edge presence and edge weight values between pixels when each pixel corresponds to a vertex of the graph.
  • GBT can be obtained through the following process.
  • the encoder or decoder may obtain graph information from the target block of the video signal. From the obtained graph information, a Laplacian matrix L may be obtained as shown in Equation 3 below.
  • D represents a degree matrix, for example, the degree matrix may mean a diagonal matrix including information about the order of each vertex.
  • A represents an adjacency matrix that represents, by weight, a connection relationship (eg, an edge) with adjacent pixels.
  • the GBT kernel can be obtained by performing eigen decomposition on the Laplacian matrix L as shown in Equation 4 below.
  • Equation 4 L denotes a Laplacian matrix, U denotes an eigen matrix, and U T denotes a transpose matrix of U.
  • the eigen matrix U may provide a specialized graph-based Fourier transform for a signal that fits the corresponding graph model.
  • an eigen matrix U satisfying Equation 4 may mean a GBT kernel.
  • FIG. 6 shows an example of one-dimensional graphs that may be a transformation basis for applying a separable transform as an embodiment to which the present invention is applied.
  • Embodiments for 1D graphs that can be the basis for a line can be described as follows.
  • the correlation is small for only one pixel pair, so that only the weight value of the corresponding edge is set small.
  • a small edge weight may be set for the graph edge including the block boundary.
  • a self-loop may or may not exist at both ends, or only one side may have a self-loop.
  • FIGS. 6 (a) and 6 (b) show a case in which a self-loop exists only on one side of the 1D graph
  • FIG. 6 (c) shows a magnetic loop (across the 1D graph).
  • self-loop is present
  • FIG. 6 (d) shows a case where a self-loop is not present across the 1D graph.
  • the self-loop represents a dependency with an adjacent vertex and may mean, for example, a self weight. That is, weights may be further added to a portion where a self loop exists.
  • a separate 1D separable transform set may be defined according to the TU size.
  • the transform coefficient data increases with O (N 4 ) as the TU size increases, but in the case of a separable transform, it increases with O (N 2 ). Accordingly, the following configuration may be possible by combining various underlying 1D separable transforms.
  • a template index is signaled, and a separate weight value is additionally assigned to only an edge corresponding to the boundary. You can apply a template instead.
  • FIG. 7 is a diagram for describing a method of applying a different separable transform to each line of a 2D graph as an embodiment to which the present invention is applied.
  • FIG. 7 illustrates a two-dimensional graph corresponding to a pixel block, a graph vertex is associated with each pixel of the pixel block, and the value of the graph vertex may be expressed as a pixel value.
  • the line connecting the graph vertices means a graph edge.
  • the graph edge is used to represent some form of statistical dependence in a signal, and a value representing the strength may be referred to as an edge weight.
  • NGBT 2D non-separable GBT
  • SGBTs 1D separable GBTs
  • edge weights of each side (aij) bkl) can be used to create and apply 2D NSGBT (non-separable GBT) kernels.
  • 1D separable GBT is applied to a graph of edge weights ai0, ai1, ai2 of the i th row for each row, and each column.
  • 1D SGBT Separable GBT
  • 1D SGBT is applied to a graph composed of edge weights of the j th column b0j, b1j, and b2j.
  • 1D separate GBTs may be applied to each line.
  • 1D SGBT may be applied to each combination.
  • one GBT template set for an NxN TU is composed of M four-connected graphs, a total of M N 2 xN 2 transformation matrices must be prepared and then stored. The memory requirement for this is large.
  • one 4-connected graph can be constructed by combining at least one 1D graph element, only a transformation for at least one 1D graph element is required, and thus a memory for storing transformation matrices. The amount can be reduced.
  • a variety of 4-connected 2D graphs can be generated with a limited number of 1D graph elements, thereby making a GBT template set suitable for each mode combination. You can customize Even if the total number of GBT templates increases, the underlying number of 1D transforms will remain the same, minimizing the amount of memory required. For example, after preparing a limited number of (a i0 , a i1 , a i2 ) and (b 0j , b 1j , b 2j ) combinations in FIG. In this case, one 4-connected 2D graph may be generated.
  • the combination of 1D transforms is used to customize the combination of 1D transforms. can do.
  • FIG. 8 illustrates a schematic block diagram of an encoder for processing a graph-based signal as an embodiment to which the present invention is applied.
  • the encoder 800 to which the present invention is applied includes a graph-based transform unit 810, a quantizer 820, an inverse quantizer 830, an inverse transform unit 840, a buffer 850, and a predictor ( 860, and an entropy encoding unit 870.
  • the encoder 800 receives a video signal and generates a prediction error by subtracting the predicted signal output from the predictor 860 from the video signal.
  • the generated prediction error is transmitted to the graph-based transform unit 810, and the graph-based transform unit 810 generates a transform coefficient by applying a transform scheme to the prediction error.
  • the graph-based transform unit 810 may select a more suitable transform matrix by comparing the obtained graph-based transform matrix with the transform matrix obtained from the transform unit 120 of FIG. 1. have.
  • the quantization unit 820 quantizes the generated transform coefficient and transmits the quantized coefficient to the entropy encoding unit 870.
  • the entropy encoding unit 870 performs entropy coding on the quantized signal and outputs an entropy coded signal.
  • the quantized signal output by the quantization unit 820 may be used to generate a prediction signal.
  • the inverse quantizer 830 and the inverse transformer 840 in the loop of the encoder 800 may perform inverse quantization and inverse transformation on the quantized signal so that the quantized signal is restored to a prediction error. Can be.
  • the reconstructed signal may be generated by adding the reconstructed prediction error to the prediction signal output by the prediction unit 860.
  • the buffer 850 stores the reconstructed signal for future reference by the predictor 860.
  • the prediction unit 860 may generate a prediction signal using a signal previously restored and stored in the buffer 850.
  • the generated prediction signal is subtracted from the original video signal to generate a differential signal, which is transmitted to the graph-based converter 810.
  • FIG. 9 illustrates a schematic block diagram of a decoder for processing a graph-based signal as an embodiment to which the present invention is applied.
  • the decoder 900 of FIG. 9 receives a signal output by the encoder 800 of FIG. 8.
  • the entropy decoding unit 910 performs entropy decoding on the received signal.
  • the inverse quantization unit 920 obtains a transform coefficient from the entropy decoded signal based on a quantization step size.
  • the inverse transform unit 930 obtains a difference signal by performing inverse transform on a transform coefficient.
  • the inverse transform may mean an inverse transform for the graph-based transform obtained by the encoder 800.
  • the reconstruction signal may be generated by adding the obtained difference signal to the prediction signal output by the prediction unit 950.
  • the buffer 940 may store the reconstruction signal for future reference by the predictor 950.
  • the prediction unit 950 may generate a prediction signal based on a signal previously restored and stored in the buffer 940.
  • FIG. 10 illustrates an internal block diagram of a graph-based transform unit according to an embodiment to which the present invention is applied.
  • the graph-based converter 810 may include a graph parameter determiner 811, a graph signal generator 813, a transform matrix determiner 815, and a transform performer 817.
  • the graph parameter determiner 811 may extract a graph parameter in a graph corresponding to the target unit of the video signal or the difference signal.
  • the graph parameter may include at least one of a vertex parameter and an edge parameter.
  • the vertex parameter may include at least one of a vertex position and a vertex number
  • the edge parameter may include at least one of an edge weight value and an edge weight number.
  • the graph parameter may be defined as a predetermined number of sets.
  • the edge parameter may include boundary information, and the boundary information may include at least one of an edge weight, a magnetic loop number, and a magnetic loop weight.
  • the number of magnetic loops may refer to the number of magnetic loops or the position of the magnetic loops. In the present specification, the number of magnetic loops may be replaced with a magnetic loop position.
  • the graph parameter extracted from the graph parameter determiner 811 may be expressed in a generalized form.
  • the graph signal generator 813 may generate a graph signal based on the graph parameter extracted from the graph parameter determiner 811.
  • the graph signal may include a weighted or unweighted line graph.
  • the line graph may be generated for each row or column of the target block.
  • the transformation matrix determiner 815 may determine a transformation matrix suitable for the graph signal.
  • the transformation matrix may be determined based on Rate Distortion (RD) performance.
  • the transformation matrix may be replaced with a representation of a transformation or a transformation kernel.
  • the transform matrix may be a value determined at the encoder and the decoder, and in this case, the transform matrix determiner 815 may derive a transform matrix suitable for the graph signal from a stored location.
  • the transformation matrix determiner 815 may generate a one-dimensional transform kernel for a line graph, and combine two of the one-dimensional transform kernels to form a two-dimensional separable graph-based transform kernel. Can be generated.
  • the transform matrix determiner 815 may determine a transform kernel suitable for the graph signal among the two-dimensional separable graph-based transform kernels based on RD (Rate Distortion) performance.
  • the transform performer 817 may perform a transform by using the transform matrix obtained from the transform matrix determiner 815.
  • the function is divided and described for each function, but the present invention is not limited thereto.
  • the graph-based converter 810 may be largely composed of a graph signal generator and a converter.
  • the function of the graph parameter determiner 811 may be performed by the graph signal generator.
  • the transform matrix determiner 815 and the transform performer 817 may perform functions in the transform unit.
  • the function of the transform unit may be divided into a transform matrix determiner and a transform performer.
  • FIG. 11 is a flowchart illustrating a method of performing a transform using a graph generated based on a transform unit size (TU size) or a prediction mode according to an embodiment to which the present invention is applied.
  • TU size transform unit size
  • FIG. 11 is a flowchart illustrating a method of performing a transform using a graph generated based on a transform unit size (TU size) or a prediction mode according to an embodiment to which the present invention is applied.
  • the present invention provides a method for generating a graph for deriving a graph-based transform applicable to intra coding.
  • the present invention provides a method of generating a graph for an entire block or a partial graph for a partial region to derive a graph-based transform applicable to intra coding.
  • the present invention provides a method of constructing a graph for an entire block from a dependency relationship with neighboring reference pixels.
  • the present invention provides a method of constructing a partial graph from a graph for an entire block to derive a graph-based transform to be applied to a local region.
  • An embodiment of the present invention may generate a graph for an image block, generate a Laplacian matrix therefrom, and generate a transform kernel through eigen-decomposition.
  • the present invention can apply a transform kernel when a specific condition is satisfied in a transform unit in an encoder.
  • the specific condition may mean a case corresponding to at least one of a transform unit size and an intra prediction mode.
  • the encoder may determine a transform kernel having excellent performance in terms of rate-distortion for various transform kernels derived from a graph to which the present invention is applied.
  • the determined transform kernel may be transmitted to the decoder in units of coding units or transform units, but the present invention is not limited thereto.
  • the encoder and decoder may already know the data for the available transform kernels, in which case the encoder may only transmit indexes corresponding to the transform kernels.
  • an encoder may first obtain context information about a current block from an input video signal (S1110).
  • the context information may mean information on a previously restored sample.
  • the encoder may derive a transform kernel from the context information (S1120).
  • the transform kernel for the transform unit can be derived based on the prediction mode for the current block or neighboring block.
  • the encoder performs a transformation using the derived transform kernel (S1130). If a plurality of transform types exist, the encoder may determine an optimal transform kernel through a rate-distortion optimization process (S1140).
  • the encoder may encode transform coefficients and transform indexes (S1150).
  • the transform index may mean a graph-based transform applied to the target block.
  • the transform index may be determined based on at least one of a prediction mode and a size of a transform unit.
  • the transform index may be configured in different combinations based on at least one of the prediction mode and the size of the transform unit. That is, different graph-based transform kernels may be applied according to the prediction mode or the size of the transform unit.
  • the transform index may correspond to each subblock.
  • the graph-based transform is derived for each subblock according to the transform index, and different transform types may be applied to at least two or more subblocks.
  • the different transform types may include at least two of a discrete cosine transform (DCT), a discrete sine transform (DST), an asymmetric discrete sine transform (ADST), and a reverse ADST (RADST).
  • DCT discrete cosine transform
  • DST discrete sine transform
  • ADST asymmetric discrete sine transform
  • RADST reverse ADST
  • the encoder may generate or design a line graph.
  • the line graph may mean a graph of at least one line.
  • the encoder can generate a 1D graph-based transform (GBT) associated with one line graph, where the 1D graph-based transform (GBT) can be generated using a generalized Laplacian operator. have.
  • GBT 1D graph-based transform
  • the Laplacian matrix L may be obtained through Equation 5 below.
  • D represents a degree matrix, for example, the degree matrix may mean a diagonal matrix including information on the order of each vertex.
  • A represents an adjacency matrix that represents, by weight, a connection relationship (eg, an edge) with adjacent pixels.
  • S represents a diagonal matrix representing a self-loop at the nodes of G.
  • an optimal transform kernel may be obtained by performing eigen decomposition on the Laplacian matrix L as shown in Equation 6 below.
  • Equation 6 L denotes a Laplacian matrix, U denotes an eigen matrix, and U T denotes a transpose matrix of U.
  • the eigen matrix U may provide a specialized graph-based Fourier transform for a signal that fits the graph model.
  • an eigen matrix U satisfying Equation 6 may mean a GBT kernel.
  • the columns of the eigen matrix U may refer to basis vectors of the GBT. If the graph does not have a self-loop, the generalized Laplacian matrix is given by Equation 3 above.
  • FIG. 12 is a flowchart illustrating a method of performing inverse transform using a graph generated based on a transform unit size (TU size) or a prediction mode according to an embodiment to which the present invention is applied.
  • TU size transform unit size
  • FIG. 12 is a flowchart illustrating a method of performing inverse transform using a graph generated based on a transform unit size (TU size) or a prediction mode according to an embodiment to which the present invention is applied.
  • the decoder may parse a transform index of a target block from a video signal (S1210).
  • the transform index indicates a graph-based transform to be applied to the target block.
  • the graph-based transform to be applied to the target block may mean a graph-based transform kernel for at least one line.
  • the step S1210 may be performed by a parser in the decoder.
  • the transform index may be received for at least one unit of a coding unit, a prediction unit, or a transform unit.
  • Encoders or decoders to which the present invention is applied know various transform types, and each transform type may be mapped to a transform index.
  • the transform index may be determined based on at least one of the prediction mode and the size of the transform unit.
  • the transform index may be configured in different combinations based on at least one of the prediction mode and the size of the transform unit. That is, different graph-based transform kernels may be applied according to the prediction mode or the size of the transform unit.
  • the transform index may correspond to each subblock.
  • the graph-based transform is derived for each subblock according to the transform index, and different transform types may be applied to at least two or more subblocks.
  • the different transformation types may include at least two of DCT, DST, Asymmetric Discrete Sine Transform (ADST), and Reverse ADST (RADST).
  • the graph-based transform may be a two-dimensional separable graph-based transform kernel generated based on a combination of a plurality of one-dimensional graph-based transforms.
  • the decoder may decode transform coefficients for the target block (S1220).
  • the decoder may acquire context information (S1230).
  • the context information may mean information on a previously restored sample.
  • the decoder may acquire an inverse transform kernel based on at least one of the context information or the transform index (S1240).
  • the inverse transform kernel may be derived based on at least one of a prediction mode of a current block or a prediction mode of a neighboring block.
  • the transform kernel after obtaining the corresponding transform kernel based on the graph generated according to the present invention, it may be replaced by another transform type in the case of a specific prediction mode.
  • the specific prediction mode indicates an intra vertical mode or an intra horizontal mode
  • the transform kernel may be replaced with DCT or DST.
  • both the encoder and the decoder may know the corresponding transform kernel for each of the 35 intra prediction modes.
  • the corresponding transform kernel may be applied according to the prediction mode of the intra-coded block.
  • the conversion kernel may be determined using both the conversion index and the context information.
  • the decoder may perform inverse transform using the inverse transform kernel (S1250).
  • FIG. 13 is a diagram for explaining a method of predicting a current pixel using edge weights according to a prediction direction in intra prediction, according to an embodiment to which the present invention is applied.
  • the current pixel value is predicted using the neighboring pixel values.
  • a, b, c, d, e, and f represent pixel values at corresponding positions
  • w1 and w2 represent edge weights representing prediction contributions to pixel values located diagonally and vertically, respectively.
  • the edge weight may be defined based on the prediction direction according to the prediction mode. For example, pixels c and f may be predicted based on Equation 7 below.
  • FIG. 14 is a diagram for describing a method of generating a graph using edge weights according to intra prediction directions for a 4 ⁇ 4 block according to an embodiment to which the present invention is applied.
  • FIG. 13 it can be seen that pixels have a dependency relationship between w1 and w2 in the diagonal direction and the vertical direction, and FIG. 14 reflects the dependency relationship to the pixels of the current block. Only graphs are displayed.
  • the relationship between the pixel A and the pixel B is defined as a function of w1 and w2. w1, w2).
  • the pixel B is connected to two left reference pixels and one upper pixel (pixel C).
  • two left reference pixels are not represented.
  • the pixel B is represented as having an edge weight of w2 with the pixel C, a connection relationship between two reference pixels not shown in FIG. 14 may be represented by a magnetic loop.
  • the edge weight for the magnetic loop connected to pixel B is g (w1, w3) as a function of w1 and w3. ) Can be displayed.
  • a magnetic loop may be applied to the pixels D and E of FIG. 14, and the edge weights for the respective magnetic loops may be represented by the functions h (w1, w2, w3) and the function k (w1, w2). .
  • FIG. 13 and 14 illustrate an intra prediction mode for predicting in the lower right direction, which is described as an embodiment in the present specification, and the present invention is not limited thereto.
  • the functions f, g, h, and k shown in FIG. 14 may have different functions according to the prediction direction or the prediction mode.
  • Equation 7 is used to calculate the edge weight, this is also only an example and the present invention is not limited thereto.
  • other values besides Equation 7 may be assigned.
  • an edge weight value for the edges of FIG. 14 may be assigned zero or a positive value close to zero.
  • 15 to 16 illustrate embodiments to which the present invention is applied and illustrate a method of generating a partial graph in units of two lines using edge weights according to an intra prediction direction.
  • a partial graph of two lines in order to derive a corresponding transformation. can be generated.
  • the graph of FIG. 14 may be constructed under the assumption that all pixels constituting the entire block have the same prediction direction and consistent pixel-to-pixel dependency. If this assumption is maintained, a partial graph for the two lines as shown in FIG. 15 may also be configured in the same manner as in FIG. 14.
  • the functions f, g, h, and k may use the same function or different functions as described with reference to FIG. 14.
  • the graph-based transformation when the graph-based transformation is derived from the partial graph of FIG. 15 and applied to the entire block, the graph-based transformation corresponding to every two lines may be sequentially applied.
  • FIG. 16 illustrates an embodiment in which various functions are applied to the graph of FIG. 15. For example, in the case of the f function, a function for selecting the minimum of two edge weight values may be applied, and in the case of the remaining h, g, and k functions, a function for calculating the sum of the edge weights may be applied. .
  • Equation 8 This may be expressed as Equation 8 below.
  • the present invention is not limited thereto.
  • the edge weight function may be set based on the prediction direction angle, and an edge weight function such as Equation 9 or Equation 10 may be used.
  • Equation 10 may be applied.
  • the f, g, h, k function may be a constant function.
  • FIG. 17 is a diagram for describing a method of generating a partial graph of one line unit using edge weights according to an intra prediction direction, according to an embodiment to which the present invention is applied.
  • FIG. 17 a partial graph of one line is constructed from the graph of FIG. 14.
  • the functions f, h, and k of FIG. 17 may apply different functions as described above.
  • FIG. 18 is a diagram for describing a method of generating a partial graph in units of three lines using edge weights according to an intra prediction direction, according to an embodiment to which the present invention is applied.
  • This embodiment shows a graph in units of three lines in which one line is further increased as compared to the partial graph in FIG. 15.
  • the pixels A, B, C, D, E, and F all have magnetic loops, and the edge weights of the pixels are w5, w6, w6, w6, w3, and w4.
  • edge weighting functions f, g, h, and k may be applied to at least one of the various functions described above, and may be set differently from the functions of the foregoing embodiments.
  • a partial graph may be adaptively constructed while freely increasing or decreasing the number of lines. Different functions can be applied to the edge weights.
  • FIG. 19 to FIG. 20 are diagrams for describing a method of generating a partial graph in units of two lines using edge weights along a vertical direction in intra prediction, according to an embodiment to which the present invention is applied.
  • FIG. 19 illustrates a partial graph of two line units when the intra prediction mode is a mode indicating a vertical direction.
  • w1 may be zero.
  • the pixels A, B, C, D, and E all have magnetic loops, and the edge weight of each pixel is w5, w6, w6, w6, and w4, and each edge weight function It can be expressed as Equation 11 below.
  • w4, w5, and w6 values are set as the sum of edge weights of edges connected in the prediction direction, and w3 is a constant value ⁇ .
  • the ⁇ value may be obtained through statistical data, and for example, may represent a correlation coefficient between two pixels.
  • 21 to 22 are diagrams for describing a method of generating a partial graph in units of two lines using edge weights along a lower right direction in intra prediction, according to an embodiment to which the present invention is applied.
  • the sum of edge weights of edges connected to the prediction direction is set in w4, w5, and w6, and ⁇ times w1 is set in w3.
  • the ⁇ value may be set based on a prediction direction according to the intra prediction mode. For example, in FIG. 21, cos ( ⁇ / 4) can be set because the edge for w1 and the edge for w3 form an angle of ⁇ / 4.
  • the constant value obtained from the statistical data may be assigned to w3.
  • the graph may be generated in the same manner for the intra prediction modes in the lower left direction, the upper right direction, and the horizontal direction.
  • At least one of the position of the magnetic loop, the diagonal edge direction, and the row / column line configuration may vary according to the intra prediction mode.
  • a partial graph may be generated for at least one or more column lines.
  • the edge weight value may be determined by a predetermined model, or may be determined by measuring correlation coefficients between pixels through statistical data analysis.
  • FIG. 23 is a flowchart illustrating a method of calculating an edge weight according to a prediction mode and generating a line graph according to an embodiment to which the present invention is applied.
  • the encoder may check context information on the current block.
  • the context information may include the prediction mode of the current block or the prediction mode of the neighboring block (S2310).
  • the encoder may calculate edge weights for edges in the current block by using prediction direction angles corresponding to the prediction mode (S2320).
  • the edge weight may be defined based on a prediction direction according to a prediction mode. For example, the edge weight may be predicted based on Equation 7, but the present invention is not limited thereto.
  • the edge weight may be calculated using various functions, for example, a function of selecting a minimum value among edge weight values, a function of calculating a sum of each edge weight, a multiplication function of edge weights, or an average of edge weights. At least one of the functions may be applied.
  • the encoder may generate a line graph of at least one or more lines based on the edge weights (S2330). For example, when applying a transformation in units of two lines for current block pixels, a partial graph of units of two lines may be generated to derive a corresponding transformation.
  • the encoder may acquire a transform kernel from the generated line graph (S2340).
  • the encoder may perform transform on the current block by using a transform kernel (S2350).
  • a transform kernel S2350
  • the transform kernel when the transform kernel is derived from the partial graph of the two line units, when the transform kernel is applied to the entire block, the corresponding transform kernel may be sequentially applied to every two lines.
  • a graph indicating connection or disconnection between pixels is generated from location information or boundary information of each object, and then the conversion kernel for each block is performed through the above-described GBT generation process. Can be obtained.
  • the graph may be constructed by disconnecting a corresponding connection of the graph between pixels belonging to different objects.
  • a boundary of the CU or PU may approximately reflect edge characteristics of the image. Therefore, when a boundary of a CU or PU is included in the TU, the above-described GBT generation method may be applied after constructing a graph reflecting the boundary. For example, when a boundary of a CU or a PU is included in the TU, the connection to the part meeting the boundary may be disconnected.
  • flag information indicating whether to apply a GBT generated in the above-described manner at various levels (e.g., frame, slice, CU, PU, TU, etc.), and at least one level for optimal translation. You can choose.
  • the encoder applies both general transforms (eg DCT type-2, DST type-7, etc.) and graph-based transform (GBT), the least cost of which Conversion can be specified via flags or indexes.
  • general transforms eg DCT type-2, DST type-7, etc.
  • GBT graph-based transform
  • the line graph may be modeled on a prediction residual signal generated through intra prediction or inter prediction, and an optimal transform kernel may be adaptively selected and used according to characteristics of the prediction residual signal.
  • the transform kernel generated through each line graph may be selectively applied using various combinations for the horizontal and vertical directions, which may be signaled through additional information.
  • the embodiments described herein may be implemented and performed on a processor, microprocessor, controller, or chip.
  • the functional units illustrated in FIGS. 1, 2, 8, 9, and 10 may be implemented by a computer, a processor, a microprocessor, a controller, or a chip.
  • the decoder and encoder to which the present invention is applied include a multimedia broadcasting transmitting and receiving device, a mobile communication terminal, a home cinema video device, a digital cinema video device, a surveillance camera, a video chat device, a real time communication device such as video communication, a mobile streaming device, Storage media, camcorders, video on demand (VoD) service providing devices, internet streaming service providing devices, three-dimensional (3D) video devices, video telephony video devices, and medical video devices, and the like, for processing video signals and data signals Can be used for
  • the processing method to which the present invention is applied can be produced in the form of a program executed by a computer, and can be stored in a computer-readable recording medium.
  • Multimedia data having a data structure according to the present invention can also be stored in a computer-readable recording medium.
  • the computer readable recording medium includes all kinds of storage devices for storing computer readable data.
  • the computer-readable recording medium may include, for example, a Blu-ray disc (BD), a universal serial bus (USB), a ROM, a RAM, a CD-ROM, a magnetic tape, a floppy disk, and an optical data storage device.
  • the computer-readable recording medium also includes media embodied in the form of a carrier wave (eg, transmission over the Internet).
  • the bit stream generated by the encoding method may be stored in a computer-readable recording medium or transmitted through a wired or wireless communication network.

Abstract

본 발명은, 그래프 기반 변환을 이용하여 비디오 신호를 디코딩하는 방법에 있어서, 상기 비디오 신호로부터 변환 인덱스(transform index)를 파싱하는 단계; 타겟 유닛에 대한 컨텍스트 정보를 획득하는 단계, 여기서 상기 컨텍스트 정보는 현재 블록 또는 주변 블록에 대한 예측 모드를 포함함; 상기 변환 인덱스 또는 상기 컨텍스트 정보 중 적어도 하나에 기초하여 역변환 커널을 획득하는 단계; 및 상기 역변환 커널을 이용하여 상기 현재 블록에 대해 역변환을 수행하는 단계를 포함하는 것을 특징으로 하는 방법을 제공한다.

Description

그래프 기반 변환을 이용하여 비디오 신호를 처리하는 방법 및 장치
본 발명은 그래프 기반 변환(graph-based transform, GBT)을 이용하여 비디오 신호를 인코딩, 디코딩하는 방법 및 장치에 관한 것이다. 구체적으로, 인트라 코딩에 적용 가능한 그래프 기반 변환(graph-based transform)을 유도하기 위한 그래프 생성 방법에 관한 것이다.
압축 부호화란 디지털화한 정보를 통신 회선을 통해 전송하거나, 저장 매체에 적합한 형태로 저장하기 위한 일련의 신호 처리 기술을 의미한다. 영상, 이미지, 음성 등의 미디어가 압축 부호화의 대상이 될 수 있으며, 특히 영상을 대상으로 압축 부호화를 수행하는 기술을 비디오 영상 압축이라고 일컫는다.
차세대 비디오 컨텐츠는 고해상도(high spatial resolution), 고프레임율(high frame rate) 및 영상 표현의 고차원화(high dimensionality of scene representation)라는 특징을 갖게 될 것이다. 그러한 컨텐츠를 처리하기 위해서는 메모리 저장(memory storage), 메모리 액세스율(memory access rate) 및 처리 전력(processing power) 측면에서 엄청난 증가를 가져올 것이다.
따라서, 차세대 비디오 컨텐츠를 보다 효율적으로 처리하기 위한 코딩 툴을 디자인할 필요가 있다.
특히, 그래프는 픽셀 간 관계 정보를 기술하는데 유용한 데이터 표현 형태로써, 이러한 픽셀 간 관계 정보를 그래프로 표현하여 처리하는 그래프 기반 신호 처리 방식이 활용되고 있다. 이러한 그래프 기반 신호 처리는 각 신호 샘플이 꼭지점(vertex)을 나타내며 신호의 관계들이 양의 가중치를 가지는 그래프 에지로 나타내어지는 그래프를 기반으로 한다. 차분 신호들은 예측 방법 및 비디오 컨텐트에 따라 매우 다른 통계적 특성을 가지므로, 그래프 기반 신호 처리를 이용하여 샘플링, 필터링, 변환 등과 같은 개념들을 최적화할 필요가 있다.
본 발명은, 인트라 코딩에 적용 가능한 그래프 기반 변환(graph-based transform)을 유도하기 위한 그래프를 생성하는 방법을 제공하고자 한다.
본 발명은, 인트라 코딩에 적용 가능한 그래프 기반 변환(graph-based transform)을 유도하기 위해 전체 블록에 대한 그래프 또는 부분 영역에 대한 부분 그래프를 생성하는 방법을 제공하고자 한다.
본 발명은, 영상 신호 또는 차분 신호의 특성에 적응적인 그래프 기반 변환을 적용하는 방법을 제공하고자 한다.
본 발명은, 영상의 분할 정보로부터 그래프를 생성한 후 그래프를 이용하여 변환 커널을 생성하는 방법을 제공하고자 한다.
본 발명은, 차분 블록의 그래프 특성에 기초하여 최적의 변환 커널을 생성하는 방법을 제공하고자 한다.
본 발명은, 영상 분할 단위별로 플래그 정보를 전송하여 일반 변환(예를 들어, DCT 또는 DST 등)을 적용할지 또는 그래프 기반 변환을 적용할지 여부를 선택하는 방법을 제공하고자 한다.
본 발명은, 최적의 변환 커널에 대응되는 변환 인덱스를 정의하는 방법을 제공하고자 한다.
본 발명은, 에지 가중치, 자기 루프 개수 및 자기 루프 가중치 중 적어도 하나에 기초하여 라인 그래프를 생성하는 방법을 제공하고자 한다.
본 발명은, 다양한 타입의 라인 그래프들을 이용하여 그래프 기반 변환 커널을 생성하는 방법을 제공하고자 한다.
본 발명은, 에지 가중치, 자기 루프 개수 및 자기 루프 가중치 중 적어도 하나에 기초하여 그래프 기반 변환에 대한 템플릿을 정의하고 이를 시그널링하는 방법을 제공하고자 한다.
본 발명은, 인트라 코딩에 적용 가능한 그래프 기반 변환(graph-based transform)을 유도하기 위한 그래프를 생성하는 방법을 제공한다.
본 발명은, 인트라 코딩에 적용 가능한 그래프 기반 변환(graph-based transform)을 유도하기 위해 전체 블록에 대한 그래프 또는 부분 영역에 대한 부분 그래프를 생성하는 방법을 제공한다.
본 발명은, 이웃 참조 픽셀들과의 의존 관계로부터 전체 블록에 대한 그래프를 구성하는 방법을 제공한다.
본 발명은, 국부 영역(local region)에 적용할 그래프 기반 변환(graph-based transform)을 유도하기 위해 전체 블록에 대한 그래프로부터 부분 그래프(partial graph)를 구성하는 방법을 제공한다.
본 발명은, 인트라 예측 방식으로부터 그래프에 속한 에지들의 가중치 값을 결정하는 다양한 방법들을 제공한다.
본 발명은, 비디오 신호 또는 차분 신호의 특성에 적응적인 그래프 기반 변환을 적용하는 방법을 제공한다.
본 발명은, 변환 유닛 또는 예측 모드에 기초하여 그래프를 생성한 후 그래프를 이용하여 변환 커널을 생성하는 방법을 제공한다.
본 발명은, 차분 블록의 그래프 특성에 기초하여 최적의 변환 커널을 생성하는 방법을 제공한다.
본 발명은, 영상 분할 단위별로 플래그 정보를 전송하여 일반 변환(예를 들어, DCT 또는 DST 등)을 적용할지 또는 그래프 기반 변환을 적용할지 여부를 선택하는 방법을 제공한다.
본 발명은, 최적의 변환 커널에 대응되는 변환 인덱스를 정의하는 방법을 제공한다.
본 발명은, 에지 가중치, 자기 루프 개수 및 자기 루프 가중치 중 적어도 하나에 기초하여 라인 그래프를 생성하는 방법을 제공한다.
본 발명은, 다양한 타입의 라인 그래프들을 이용하여 그래프 기반 변환 커널을 생성하는 방법을 제공한다.
본 발명은 정지 영상 또는 동영상을 영상 신호의 특성을 잘 나타낼 수 있는 그래프로 표현한 후, 해당 그래프로부터 생성된 변환 커널을 적용하여 인코딩/디코딩함으로써, 복잡한 영상에 대한 압축 데이터 양을 대폭 줄일 수 있다.
본 발명은 인트라 코딩에 잘 적용될 수 있는 그래프 기반 변환(graph-based transform)을 유도함으로써 인트라 코딩에서의 압축 효율을 높일 수 있다.
본 발명은, 변환을 적응적으로 적용할 수 있는 유연성을 확보하며, 연산 복잡도를 감소시킬 수 있으며, 서로 다른 비디오 세그먼트들에서 변화하는 통계적 특성에 대해 보다 빠른 적응을 가능하게 하며, 변환을 수행함에 있어서의 변동성을 제공할 수 있다.
또한, 본 발명은, 비디오 신호 또는 차분 신호의 특성에 적응적인 그래프 기반 변환을 적용하는 방법을 제공함으로써 보다 효율적인 코딩을 수행할 수 있다.
또한, 본 발명은 최적의 변환 커널에 대응되는 변환 인덱스를 정의함으로써 변환 행렬의 전송 및 변환 선택에서의 오버헤드를 현저히 감소시킬 수 있다.
도 1은 본 발명이 적용되는 실시예로서, 비디오 신호의 인코딩이 수행되는 인코더의 개략적인 블록도를 나타낸다.
도 2는 본 발명이 적용되는 실시예로서, 비디오 신호의 디코딩이 수행되는 디코더의 개략적인 블록도를 나타낸다.
도 3은 본 발명이 적용되는 일 실시예에 따라 비디오 프레임 내 8×8 블록 내에서의 통계적 관계를 모델링하기 위해 사용된 그래프의 예들을 나타낸다.
도 4는 본 발명이 적용되는 일 실시예로써, 가중치 분포를 나타내는 2가지 형태의 그래프를 나타낸다.
도 5는 본 발명이 적용되는 일실시예로서, 1차원 그래프와 2차원 그래프에 기초하여 그래프 기반 변환 매트릭스를 획득하는 과정을 설명하기 위한 도면이다.
도 6은 본 발명이 적용되는 일실시예로서, 분리가능한 변환(separable transform)을 적용하기 위한 변환 기저가 될 수 있는 1차원 그래프들의 예를 나타낸다.
도 7은 본 발명이 적용되는 일실시예로서, 2차원 그래프의 각 라인마다 서로 다른 분리가능한 변환(separable transform)을 적용하는 방법을 설명하기 위한 도면이다.
도 8은 본 발명이 적용되는 실시예로서, 그래프 기반의 신호를 처리하는 인코더의 개략적 블록도를 예시한다.
도 9는 본 발명이 적용되는 실시예로서, 그래프 기반의 신호를 처리하는 디코더의 개략적 블록도를 예시한다.
도 10은 본 발명이 적용되는 일실시예로서, 그래프 기반 변환부의 내부 블록도를 나타낸다.
도 11은 본 발명이 적용되는 일실시예로서, 변환 유닛 크기(TU size) 또는 예측 모드에 기초하여 생성된 그래프를 이용하여 변환을 수행하는 방법을 설명하기 위한 흐름도이다.
도 12는 본 발명이 적용되는 일실시예로서, 변환 유닛 크기(TU size) 또는 예측 모드에 기초하여 생성된 그래프를 이용하여 역변환을 수행하는 방법을 설명하기 위한 흐름도이다.
도 13은 본 발명이 적용되는 일실시예로서, 인트라 예측에서 예측 방향에 따른 에지 가중치를 이용하여 현재 픽셀을 예측하는 방법을 설명하기 위한 픽셀 관계도이다.
도 14는 본 발명이 적용되는 일실시예로서, 4x4 블록에 대해 인트라 예측 방향에 따른 에지 가중치를 이용하여 그래프를 생성하는 방법을 설명하기 위한 도면이다.
도 15 내지 16은 본 발명이 적용되는 일실시예들로서, 인트라 예측 방향에 따른 에지 가중치를 이용하여 2개 라인 단위의 부분 그래프(partial graph)를 생성하는 방법을 설명하기 위한 도면이다.
도 17은 본 발명이 적용되는 일실시예들로서, 인트라 예측 방향에 따른 에지 가중치를 이용하여 1개 라인 단위의 부분 그래프(partial graph)를 생성하는 방법을 설명하기 위한 도면이다.
도 18은 본 발명이 적용되는 일실시예들로서, 인트라 예측 방향에 따른 에지 가중치를 이용하여 3개 라인 단위의 부분 그래프(partial graph)를 생성하는 방법을 설명하기 위한 도면이다.
도 19 내지 20은 본 발명이 적용되는 일실시예들로서, 인트라 예측에서 수직 방향에 따른 에지 가중치를 이용하여 2개 라인 단위의 부분 그래프(partial graph)를 생성하는 방법을 설명하기 위한 도면이다.
도 21 내지 22는 본 발명이 적용되는 일실시예들로서, 인트라 예측에서 우하단 방향에 따른 에지 가중치를 이용하여 2개 라인 단위의 부분 그래프(partial graph)를 생성하는 방법을 설명하기 위한 도면이다.
도 23은 본 발명이 적용되는 일실시예로서, 예측 모드에 따라 에지 가중치를 산출하고 그에 따라 라인 그래프를 생성하는 방법을 설명하기 위한 흐름도이다.
본 발명은, 그래프 기반 변환을 이용하여 비디오 신호를 디코딩하는 방법에 있어서, 상기 비디오 신호로부터 변환 인덱스(transform index)를 파싱하는 단계; 타겟 유닛에 대한 컨텍스트 정보를 획득하는 단계, 여기서 상기 컨텍스트 정보는 현재 블록 또는 주변 블록에 대한 예측 모드를 포함함; 상기 변환 인덱스 또는 상기 컨텍스트 정보 중 적어도 하나에 기초하여 역변환 커널을 획득하는 단계; 및 상기 역변환 커널을 이용하여 상기 현재 블록에 대해 역변환을 수행하는 단계를 포함하는 것을 특징으로 하는 방법을 제공한다.
본 발명에서, 상기 역변환 커널은 상기 현재 블록의 에지 가중치로 표현되는 라인 그래프에 기초하여 생성된 것이고, 상기 에지 가중치는 상기 현재 블록 또는 상기 주변 블록에 대한 예측 모드에 대응되는 예측 방향 각도를 이용하여 계산된 것을 특징으로 한다.
본 발명에서, 상기 예측 방향 각도는 예측 방향과 가로 축이 이루는 각도를 나타내고, 상기 에지 가중치는 상기 각도에 대한 코사인(cosine) 값을 나타내는 것을 특징으로 한다.
본 발명에서, 상기 에지 가중치는 연결된 에지 가중치들의 최소값(minimum value), 합(summation), 곱(multiplication), 또는 평균값 중 적어도 하나에 의해 계산된 것을 특징으로 한다.
본 발명에서, 상기 라인 그래프는 적어도 1개 이상의 라인 단위의 부분 그래프(partial graph)를 포함하는 것을 특징으로 한다.
본 발명에서, 상기 라인 그래프가 1개 라인의 부분 그래프를 나타내는 경우, 상기 역변환 커널은 상기 라인 그래프에 대응되는 1차원 분리 가능한 역-그래프 기반 변환을 나타내는 것을 특징으로 한다.
본 발명은, 그래프 기반 변환을 이용하여 비디오 신호를 인코딩하는 방법에 있어서, 현재 블록에 대한 컨텍스트 정보를 확인하는 단계, 여기서 상기 컨텍스트 정보는 상기 현재 블록 또는 주변 블록에 대한 예측 모드를 포함함; 상기 현재 블록 또는 상기 주변 블록에 대한 예측 모드에 대응되는 예측 방향 각도를 이용하여 상기 현재 블록 내 픽셀 간 에지 가중치를 계산하는 단계; 상기 에지 가중치에 기초하여 생성된 라인 그래프로부터 변환 커널을 유도하는 단계; 및 상기 변환 커널을 이용하여 상기 현재 블록에 대해 변환을 수행하는 단계를 포함하는 것을 특징으로 하는 방법을 제공한다.
본 발명에서, 상기 방법은, 상기 변환 커널에 대응되는 변환 인덱스를 인코딩하는 단계를 더 포함하는 것을 특징으로 한다.
본 발명에서, 상기 에지 가중치는 상기 예측 모드 또는 상기 예측 방향 각도에 따라 설정된 가중치 함수를 이용하여 계산되는 것을 특징으로 한다.
본 발명에서, 상기 예측 방향 각도는 예측 방향과 가로 축이 이루는 각도를 나타내고, 상기 에지 가중치는 상기 각도에 대한 코사인(cosine) 값을 나타내는 것을 특징으로 한다.
본 발명에서, 상기 에지 가중치는 연결된 에지 가중치들의 최소값(minimum value), 합(summation), 곱(multiplication), 또는 평균값 중 적어도 하나에 의해 계산되는 것을 특징으로 한다.
본 발명에서, 상기 라인 그래프는 적어도 1개 이상의 라인 단위의 부분 그래프(partial graph)를 포함하는 것을 특징으로 한다.
본 발명에서, 상기 라인 그래프가 1개 라인의 부분 그래프를 나타내는 경우, 상기 변환 커널은 상기 라인 그래프에 대응되는 1차원 분리 가능한 그래프 기반 변환을 나타내는 것을 특징으로 한다.
본 발명은, 그래프 기반 변환을 이용하여 비디오 신호를 인코딩하는 장치에 있어서, 현재 블록에 대한 컨텍스트 정보를 확인하고, 상기 현재 블록 또는 상기 주변 블록에 대한 예측 모드에 대응되는 예측 방향 각도를 이용하여 상기 현재 블록 내 픽셀 간 에지 가중치를 계산하는 그래프 신호 생성부; 상기 에지 가중치에 기초하여 생성된 라인 그래프로부터 변환 커널을 유도하는 변환 행렬 결정부; 및 상기 변환 커널을 이용하여 상기 현재 블록에 대해 변환을 수행하는 변환 수행부를 포함하되, 상기 컨텍스트 정보는 상기 현재 블록 또는 주변 블록에 대한 예측 모드를 포함하는 것을 특징으로 하는 장치를 제공한다.
본 발명은, 그래프 기반 변환을 이용하여 비디오 신호를 디코딩하는 장치에 있어서, 상기 비디오 신호로부터 변환 인덱스(transform index)를 파싱하는 파싱부; 및 타겟 유닛에 대한 컨텍스트 정보를 획득하고, 상기 변환 인덱스 또는 상기 컨텍스트 정보 중 적어도 하나에 기초하여 역변환 커널을 획득하고, 상기 역변환 커널을 이용하여 상기 현재 블록에 대해 역변환을 수행하는 역변환부를 포함하되, 상기 컨텍스트 정보는 현재 블록 또는 주변 블록에 대한 예측 모드를 포함하는 것을 특징으로 하는 장치를 제공한다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예의 구성과 그 작용을 설명하며, 도면에 의해서 설명되는 본 발명의 구성과 작용은 하나의 실시예로서 설명되는 것이며, 이것에 의해서 본 발명의 기술적 사상과 그 핵심 구성 및 작용이 제한되지는 않는다.
아울러, 본 발명에서 사용되는 용어는 가능한 한 현재 널리 사용되는 일반적인 용어를 선택하였으나, 특정한 경우는 출원인이 임의로 선정한 용어를 사용하여 설명한다. 그러한 경우에는 해당 부분의 상세 설명에서 그 의미를 명확히 기재하므로, 본 발명의 설명에서 사용된 용어의 명칭만으로 단순 해석되어서는 안 될 것이며 그 해당 용어의 의미까지 파악하여 해석되어야 함을 밝혀두고자 한다.
또한, 본 발명에서 사용되는 용어들은 발명을 설명하기 위해 선택된 일반적인 용어들이나, 유사한 의미를 갖는 다른 용어가 있는 경우 보다 적절한 해석을 위해 대체 가능할 것이다. 예를 들어, 신호, 데이터, 샘플, 픽쳐, 프레임, 블록 등의 경우 각 코딩 과정에서 적절하게 대체되어 해석될 수 있을 것이다. 또한, 파티셔닝(partitioning), 분해(decomposition), 스플리팅 (splitting) 및 분할(division) 등의 경우에도 각 코딩 과정에서 적절하게 대체되어 해석될 수 있을 것이다.
비디오 시퀀스의 다른 부분들에서 신호의 통계적 특성을 적응적으로 변화시키는 선형 변환을 적용함으로써 압축 효율을 향상시킬 수 있다. 일반적인 통계적 방법들이 이러한 목적으로 시도되어 왔지만, 그것들은 제한적인 결과를 가져왔다. 본 발명에서는, 비디오 압축을 위한 비디오 신호의 통계적 특성을 모델링하는 더 효율적인 방법으로, 그래프 기반 신호 처리 기술을 소개한다.
수학적인 분석을 단순화하고 그래프 이론으로부터 알려진 결과를 이용하기 위해, 그래프 기반 신호 처리를 위해 개발된 대부분의 어플리케이션들은 자기 루프(self-loop) 없는(즉, 그 자체로 노드를 연결하는 에지가 없음) 무방향 그래프(undirected graph)를 이용하고, 각 그래프 에지에서 음수가 아닌 에지(non-negative edge)만으로 모델링된다.
이러한 접근은 잘 정의된 불연속성, 강한 에지를 가진 이미지 또는 깊이 이미지를 시그널링하는데 성공적으로 적용될 수 있다. 이미지 및 비디오 어플리케이션에서 N2 픽셀 블록에 대응되는 그래프들은 일반적으로 2N2 또는 4N2 개의 음수가 아닌(non-negative) 에지 가중치에 대한 전송 오버헤드를 필요로 한다. 그래프가 정의된 이후, 코딩 또는 예측을 위한 직교 변환은 그래프 라플라시안 행렬의 아이겐 분해(eigen decomposition)를 계산함으로써 유도될 수 있다. 예를 들어, 상기 스펙트럼 분해를 통해 고유 벡터(eigen vector) 및 고유값(eigen value)을 획득할 수 있다.
본 발명은 적어도 1개 이상의 라인 단위의 부분 그래프(partial graph)를 에지를 기준으로 분할된 영역의 변환 계수들을 조합하여 그래프 기반 변환 커널을 생성하는 방법을 제공한다. 여기서, 그래프로부터 획득되는 변환을 그래프 기반 변환(Graph-Based Transform, 이하 'GBT'라 함)이라 정의할 수 있다. 예를 들어, TU를 구성하는 픽셀 간의 관계 정보를 그래프로 표현한다고 할 때, 이 그래프로부터 얻어진 변환을 GBT라고 할 수 있다.
이하에서는, 본 발명이 적용되는 실시예들을 구체적으로 살펴보도록 한다.
도 1은 본 발명이 적용되는 실시예로서, 비디오 신호의 인코딩이 수행되는 인코더의 개략적인 블록도를 나타낸다.
도 1을 참조하면, 인코더(100)는 영상 분할부(110), 변환부(120), 양자화부(130), 역양자화부(140), 역변환부(150), 필터링부(160), 복호 픽쳐 버퍼(DPB: Decoded Picture Buffer)(170), 인터 예측부(180), 인트라 예측부(185) 및 엔트로피 인코딩부(190)를 포함하여 구성될 수 있다.
영상 분할부(110)는 인코더(100)에 입력된 입력 영상(Input image)(또는, 픽쳐, 프레임)를 하나 이상의 처리 유닛으로 분할할 수 있다. 예를 들어, 상기 처리 유닛은 코딩 트리 유닛(CTU: Coding Tree Unit), 코딩 유닛(CU: Coding Unit), 예측 유닛(PU: Prediction Unit) 또는 변환 유닛(TU: Transform Unit)일 수 있다.
다만, 상기 용어들은 본 발명에 대한 설명의 편의를 위해 사용할 뿐이며, 본 발명은 해당 용어의 정의에 한정되지 않는다. 또한, 본 명세서에서는 설명의 편의를 위해, 비디오 신호를 인코딩 또는 디코딩하는 과정에서 이용되는 단위로써 코딩 유닛이라는 용어를 사용하지만, 본 발명은 그에 한정되지 않으며 발명 내용에 따라 적절하게 해석 가능할 것이다.
인코더(100)는 입력 영상 신호에서 인터 예측부(180) 또는 인트라 예측부(185)로부터 출력된 예측 신호(prediction signal)를 감산하여 잔여 신호(residual signal)를 생성할 수 있고, 생성된 잔여 신호는 변환부(120)로 전송된다.
변환부(120)는 잔여 신호에 변환 기법을 적용하여 변환 계수(transform coefficient)를 생성할 수 있다. 변환 과정은 정사각형의 동일한 크기를 갖는 픽셀 블록에 적용될 수도 있고, 정사각형이 아닌 가변 크기의 블록에도 적용될 수 있다.
양자화부(130)는 변환 계수를 양자화하여 엔트로피 인코딩부(190)로 전송하고, 엔트로피 인코딩부(190)는 양자화된 신호(quantized signal)를 엔트로피 코딩하여 비트스트림으로 출력할 수 있다.
양자화부(130)로부터 출력된 양자화된 신호(quantized signal)는 예측 신호를 생성하기 위해 이용될 수 있다. 예를 들어, 양자화된 신호(quantized signal)는 루프 내의 역양자화부(140) 및 역변환부(150)를 통해 역양자화 및 역변환을 적용함으로써 잔여 신호를 복원할 수 있다. 복원된 잔여 신호를 인터 예측부(180) 또는 인트라 예측부(185)로부터 출력된 예측 신호(prediction signal)에 더함으로써 복원 신호(reconstructed signal)가 생성될 수 있다.
한편, 위와 같은 압축 과정에서 인접한 블록들이 서로 다른 양자화 파라미터에 의해 양자화됨으로써 블록 경계가 보이는 열화가 발생될 수 있다. 이러한 현상을 블록킹 열화(blocking artifacts)라고 하며, 이는 화질을 평가하는 중요한 요소 중의 하나이다. 이러한 열화를 줄이기 위해 필터링 과정을 수행할 수 있다. 이러한 필터링 과정을 통해 블록킹 열화를 제거함과 동시에 현재 픽쳐에 대한 오차를 줄임으로써 화질을 향상시킬 수 있게 된다.
필터링부(160)는 복원 신호에 필터링을 적용하여 이를 재생 장치로 출력하거나 복호 픽쳐 버퍼(170)에 전송한다. 복호 픽쳐 버퍼(170)에 전송된 필터링된 신호는 인터 예측부(180)에서 참조 픽쳐로 사용될 수 있다. 이처럼, 필터링된 픽쳐를 화면간 예측 모드에서 참조 픽쳐로 이용함으로써 화질 뿐만 아니라 부호화 효율도 향상시킬 수 있다.
복호 픽쳐 버퍼(170)는 필터링된 픽쳐를 인터 예측부(180)에서의 참조 픽쳐로 사용하기 위해 저장할 수 있다.
인터 예측부(180)는 복원 픽쳐(reconstructed picture)를 참조하여 시간적 중복성 및/또는 공간적 중복성을 제거하기 위해 시간적 예측 및/또는 공간적 예측을 수행한다. 여기서, 예측을 수행하기 위해 이용되는 참조 픽쳐는 이전 시간에 부호화/복호화 시 블록 단위로 양자화와 역양자화를 거친 변환된 신호이기 때문에, 블로킹 아티팩트(blocking artifact)나 링잉 아티팩트(ringing artifact)가 존재할 수 있다.
따라서, 인터 예측부(180)는 이러한 신호의 불연속이나 양자화로 인한 성능 저하를 해결하기 위해, 로우패스 필터(lowpass filter)를 적용함으로써 픽셀들 사이의 신호를 서브 픽셀 단위로 보간할 수 있다. 여기서, 서브 픽셀은 보간 필터를 적용하여 생성된 가상의 화소를 의미하고, 정수 픽셀은 복원된 픽쳐에 존재하는 실제 화소를 의미한다. 보간 방법으로는 선형 보간, 양선형 보간(bi-linear interpolation), 위너 필터(wiener filter) 등이 적용될 수 있다.
보간 필터는 복원 픽쳐(reconstructed picture)에 적용되어 예측의 정밀도를 향상시킬 수 있다. 예를 들어, 인터 예측부(180)는 정수 픽셀에 보간 필터를 적용하여 보간 픽셀을 생성하고, 보간 픽셀들(interpolated pixels)로 구성된 보간 블록(interpolated block)을 예측 블록(prediction block)으로 사용하여 예측을 수행할 수 있다.
인트라 예측부(185)는 현재 부호화를 진행하려고 하는 블록의 주변에 있는 샘플들을 참조하여 현재 블록을 예측할 수 있다. 상기 인트라 예측부(185)는 인트라 예측을 수행하기 위해 다음과 같은 과정을 수행할 수 있다. 먼저, 예측 신호를 생성하기 위해 필요한 참조 샘플을 준비할 수 있다. 그리고, 준비된 참조 샘플을 이용하여 예측 신호를 생성할 수 있다. 이후, 예측 모드를 부호화하게 된다. 이때, 참조 샘플은 참조 샘플 패딩 및/또는 참조 샘플 필터링을 통해 준비될 수 있다. 참조 샘플은 예측 및 복원 과정을 거쳤기 때문에 양자화 에러가 존재할 수 있다. 따라서, 이러한 에러를 줄이기 위해 인트라 예측에 이용되는 각 예측 모드에 대해 참조 샘플 필터링 과정이 수행될 수 있다.
상기 인터 예측부(180) 또는 상기 인트라 예측부(185)를 통해 생성된 예측 신호(prediction signal)는 복원 신호를 생성하기 위해 이용되거나 잔여 신호를 생성하기 위해 이용될 수 있다.
도 2는 본 발명이 적용되는 실시예로서, 비디오 신호의 디코딩이 수행되는 디코더의 개략적인 블록도를 나타낸다.
도 2를 참조하면, 디코더(200)는 파싱부(미도시), 엔트로피 디코딩부(210), 역양자화부(220), 역변환부(230), 필터링부(240), 복호 픽쳐 버퍼(DPB: Decoded Picture Buffer Unit)(250), 인터 예측부(260) 및 인트라 예측부(265)를 포함하여 구성될 수 있다.
그리고, 디코더(200)를 통해 출력된 복원 영상 신호(reconstructed video signal)는 재생 장치를 통해 재생될 수 있다.
디코더(200)는 도 1의 인코더(100)로부터 출력된 신호을 수신할 수 있고, 수신된 신호는 엔트로피 디코딩부(210)를 통해 엔트로피 디코딩될 수 있다.
역양자화부(220)에서는 양자화 스텝 사이즈 정보를 이용하여 엔트로피 디코딩된 신호로부터 변환 계수(transform coefficient)를 획득한다. 여기서, 획득된 변환 계수는 상기 도 1의 변환부(120)에서 설명한 다양한 실시예들이 적용된 것일 수 있다.
역변환부(230)에서는 변환 계수를 역변환하여 잔여 신호(residual signal)를 획득하게 된다.
획득된 잔여 신호를 인터 예측부(260) 또는 인트라 예측부(265)로부터 출력된 예측 신호(prediction signal)에 더함으로써 복원 신호(reconstructed signal)가 생성된다.
필터링부(240)는 복원 신호(reconstructed signal)에 필터링을 적용하여 이를 재생 장치로 출력하거나 복호 픽쳐 버퍼부(250)에 전송한다. 복호 픽쳐 버퍼부(250)에 전송된 필터링된 신호는 인터 예측부(260)에서 참조 픽쳐로 사용될 수 있다.
본 명세서에서, 인코더(100)의 필터링부(160), 인터 예측부(180) 및 인트라 예측부(185)에서 설명된 실시예들은 각각 디코더의 필터링부(240), 인터 예측부(260) 및 인트라 예측부(265)에도 동일하게 적용될 수 있다.
도 3은 본 발명이 적용되는 실시예로서, 비디오 프레임 내 8x8 블록 내에서의 통계적 관계를 모델링하기 위해 사용되는 그래프들의 예를 나타낸다.
이산시간(discrete-time) 신호 처리 기술은 아날로그 신호를 직접 처리하고 필터링하는 것으로부터 발전되어 왔고, 그에 따라 규칙적이고 조직화된 데이터(regularly organized data)만을 샘플링하고 처리하는 것과 같은 몇 가지 공통의 가정에 의해 제한되어 왔다.
비디오 압축 분야는 기본적으로 동일한 가정에 기초하지만, 다차원 신호에 일반화되어 있다. 그래프 표현에 기초한 신호 처리는, 샘플링, 필터링, 푸리에 변환과 같은 컨셉을 일반화하고, 각 신호 샘플이 꼭지점을 나타내는 그래프를 이용하며, 신호 관계들이 양의 가중치를 가진 그래프 에지들로 표현되는 전통적인 접근으로부터 시작된다. 이는 그 획득 과정(acquisition process)으로부터 신호를 완전히 단절하고, 그에 따라 샘플링 레이트 및 시퀀스와 같은 특성이 완전히 그래프의 특성으로 대체된다. 따라서, 그래프 표현은 몇 가지 특정 그래프 모델들에 의해 정의될 수 있다.
데이터 값들 간의 경험적 연결을 나타내기 위해, 무방향 단순 그래프(undirected simple graph) 및 무방향 에지(undirected edge)가 이용될 수 있다. 여기서, 무방향 단순 그래프(undirected simple graph)는 자기 루프(self-loop) 또는 멀티 에지가 없는 그래프를 의미할 수 있다.
각 에지마다 할당된 가중치를 가진, 무방향 단순 그래프(undirected simple graph) 를 G라 하면, 무방향 단순 그래프(undirected simple graph) G는 다음 수학식 1과 같이 3개의 인자(triplet)로 설명될 수 있다.
수학식 1
Figure PCTKR2016007972-appb-M000001
여기서, V는 V개의 그래프 꼭지점 셋을 나타내고, ε는 그래프 에지 셋을 나타내며, W는 VxV 행렬로 표현되는 가중치를 나타낸다. 여기서, 가중치 W는 다음 수학식 2와 같이 표현될 수 있다.
수학식 2
Figure PCTKR2016007972-appb-M000002
Wi,j 는 에지 (i, j)의 가중치를 나타내고, Wj,i 는 에지 (j, i)의 가중치를 나타내며, 꼭지점 (i,j)를 연결하는 에지가 없는 경우 Wi,j = 0 이다. 예를 들어, 자기 루프가 없음을 가정하는 경우, 항상 Wi,i = 0 이다.
이러한 표현은 에지 가중치를 가진 무방향 단순 그래프들의 특별한 경우에 대해 부분적으로 중복된다. 이는 W 행렬이 그래프에 대한 모든 정보를 포함하고 있기 때문이다. 따라서, 본 발명에서는 그래프를 G(W)로 표현하기로 한다.
한편, 도3을 참조하면, 본 발명은 이미지 또는 비디오 내의 8x8 픽셀 블록의 처리를 위해 사용될 수 있는 그래프 타입의 두 가지 실시예를 제공한다. 각 픽셀은 그래프 꼭지점에 연관되며, 상기 픽셀의 값은 그래프 꼭지점의 값이 된다.
그래프 에지는 그래프 꼭지점을 연결하는 선을 의미할 수 있다. 상기 그래프 에지는 신호 내의 어떠한 형태의 통계적 의존성을 나타내기 위해 사용되며, 이 때 양의 가중치는 그 강도를 나타낼 수 있다. 예를 들어, 각 꼭지점은 모든 다른 꼭지점에 연결될 수 있으며, 0의 가중치는 서로 연관되지 않거나 약하게 연관된 꼭지점들을 연결하는 에지에 할당될 수 있다. 다만, 표현의 간단화를 위해, 0의 가중치를 갖는 에지는 완전히 제거될 수 있다.
도 3(a)의 그래프에서, 그래프 에지는 각각의 꼭지점이 그로부터 가장 가까운 4개의 인접 꼭지점들에 연결되도록 정의될 수 있다. 다만, 블록 경계의 경우는 다르게 취급될 수 있다. 또한, 도 3(b)의 그래프에서는 각각의 꼭지점이 그로부터 가장 가까운 8개의 인접 꼭지점들에 연결되도록 정의될 수 있다.
도 4는 본 발명이 적용되는 일 실시예로써, 가중치 분포를 나타내는 2가지 형태의 그래프를 나타낸다.
그래프의 꼭지점 값은 신호 측정(통상적으로 임의 변수로 모델링됨)에 기초하는 독립 변수이지만, 일부 신호의 특성과 합치되는 그래프의 에지 가중치를 선택하는 것이 필요하다. 도 4에서, 그래프 에지에 대한 선의 색상이 서로 다른 에지 가중치를 나타내는 그래프의 두 개의 예가 제공된다. 예를 들어, 진한 색의 선은 w = 1의 가중치를 나타내며 연한 색의 선은 w = 0.2의 가중치를 나타낼 수 있다.
도 4(a)의 그래프는 직선을 따라 “약한 링크”를 가지고 있는 경우를 나타내며, 두 종류의 에지 가중치만을 갖고 있는 경우를 나타낸다. 여기서, 상기 “약한 링크”는 상대적으로 작은 에지 가중치를 가지고 있음을 의미한다.
이는 사실 상 그래프 기반의 이미지 처리에서 통상적으로 사용되는 것이며, 이러한 구성은 이미지 내 에지와 다른 변들 간의 픽셀 통계의 차이를 나타낼 수 있다.
도 4(b)의 그래프는 불규칙한 영역을 커버하는 에지 가중치의 분포를 나타내며, 본 발명에서는 이러한 에지 가중치의 분포 그래프를 이용하여 신호를 처리하는 방법을 제공하고자 한다.
도 5는 본 발명이 적용되는 일실시예로서, 1차원 그래프와 2차원 그래프에 기초하여 그래프 기반 변환 매트릭스를 획득하는 과정을 설명하기 위한 도면이다.
본 발명의 일실시예로, 이미지 내 픽셀 블록의 처리를 위해 사용될 수 있는 그래프 타입은 도 5를 통해 설명될 수 있다. 예를 들어, 도 5(a)는 픽셀 블록의 각 라인에 대응되는 1차원 그래프를 나타내고, 도 5(b)는 픽셀 블록에 대응되는 2차원 그래프를 나타낼 수 있다.
그래프 꼭지점(vertex)은 픽셀 블록의 각 픽셀에 연관되며, 그래프 꼭지점의 값은 픽셀 값으로 표현될 수 있다. 그리고, 그래프 에지(graph edge)는 그래프 꼭지점을 연결하는 선을 의미할 수 있다. 상기 그래프 에지는 신호 내의 어떠한 형태의 통계적 의존성을 나타내기 위해 사용되며, 그 강도를 나타내는 값을 에지 가중치(edge weight)라 할 수 있다.
예를 들어, 도 5(a)를 살펴보면, 1차원 그래프를 나타내며, 0,1,2,3은 각 꼭지점의 위치를 나타내고, w0,w1,w2는 각 꼭지점 간의 에지 가중치를 나타낸다. 도 5(b)를 살펴보면, 2차원 그래프를 나타내며, aij (i=0,1,2,3,j=0,1,2), bkl (k=0,1,2,l=0,1,2,3)는 각 꼭지점 간의 에지 가중치를 나타낸다.
각 꼭지점은 모든 다른 꼭지점에 연결될 수 있으며, 0의 에지 가중치는 서로 연관되지 않거나 약하게 연관된 꼭지점들을 연결하는 에지에 할당될 수 있다. 다만, 표현의 간단화를 위해, 0의 에지 가중치를 갖는 에지는 완전히 제거될 수 있다.
픽셀 간 관계 정보는 각 픽셀을 그래프의 꼭지점에 대응시켰을 때 픽셀들 간의 에지 유무 및 에지 가중치(edge weight) 값으로 표현될 수 있다.
이 경우, GBT는 다음과 같은 과정을 통해 획득될 수 있다. 예를 들어, 인코더 또는 디코더는 비디오 신호의 타겟 블록으로부터 그래프 정보를 획득할 수 있다. 상기 획득된 그래프 정보로부터 다음 수학식 3과 같이 라플라시안 행렬(Laplacian matrix) L을 획득할 수 있다.
수학식 3
Figure PCTKR2016007972-appb-M000003
상기 수학식 3에서, D는 차수 행렬(Degree matrix)을 나타내고, 예를 들어 상기 차수 행렬은 각 꼭지점의 차수에 대한 정보를 포함하는 대각 행렬(diagonal matrix)을 의미할 수 있다. A는 인접 픽셀과의 연결 관계(예를 들어, 에지)를 가중치로 나타내는 인접 행렬(adjacency matrix)을 나타낸다.
그리고, 상기 라플라시안 행렬(Laplacian matrix) L에 대해 아래 수학식 4와 같이 고유 분해(eigen decomposition)를 수행함으로써 GBT 커널을 획득할 수 있다.
수학식 4
Figure PCTKR2016007972-appb-M000004
상기 수학식 4에서, L은 라플라시안 행렬(Laplacian matrix), U는 고유 행렬(eigen matrix), UT는 U의 전치 행렬(transpose matrix)을 의미한다. 상기 수학식 4에서, 상기 고유 행렬(eigen matrix) U는 해당 그래프 모델에 맞는 신호에 대해 특화된 그래프 기반 푸리에(Fourier) 변환을 제공할 수 있다. 예를 들어, 상기 수학식 4를 만족하는 고유 행렬(eigen matrix) U는 GBT 커널을 의미할 수 있다.
도 6은 본 발명이 적용되는 일실시예로서, 분리가능한 변환(separable transform)을 적용하기 위한 변환 기저가 될 수 있는 1차원 그래프들의 예를 나타낸다.
한 라인에 대해서 기저가 될 수 있는 1D 그래프들에 대한 실시예들로는 다음과 같이 설명될 수 있다.
첫번째 실시예로, 한 픽셀 쌍(pixel pair)에 대해서만 상관성(correlation)이 작아서 해당 에지(edge)의 가중치 값만 작게 설정하는 경우를 들 수 있다. 예를 들어, 블록 경계를 포함하는 픽셀 쌍(pixel pair)의 경우 상관성이 상대적으로 작으므로 블록 경계를 포함하는 그래프 에지에 대해 작은 에지 가중치를 설정할 수 있다.
두번째 실시예로, 양단에 자기 루프(self-loop)가 존재하거나, 존재하지 않는 경우, 또는 한 쪽만 자기 루프(self-loop)가 존재하는 경우를 들 수 있다. 예를 들어, 도 6(a)와 도 6(b)는 1D 그래프 양단의 한 쪽에만 자기 루프(self-loop)가 존재하는 경우를 나타내고, 도 6(c)는 1D 그래프 양단에 자기 루프(self-loop)가 존재하는 경우를 나타내며, 도 6(d)는 1D 그래프 양단에 자기 루프(self-loop)가 존재하지 않는 경우를 나타낸다. 여기서, 자기 루프(self-loop)란 인접 꼭지점(vertex)와의 의존성(dependency)을 나타내는 것으로, 예를 들어 자기 가중치를 의미할 수 있다. 즉, 자기 루프(self-loop)가 존재하는 부분에 가중치를 더 부여할 수 있다.
본 발명의 다른 실시예로, TU 사이즈에 따라 별도의 1D 분리 가능한 변환 셋(separable transform set)을 정의할 수 있다. 비분리 변환(Non-separable transform)의 경우 TU 사이즈가 커질수록 O(N4)으로 변환 계수 데이터가 늘어나지만, 분리 가능한 변환(separable transform)의 경우는 O(N2)으로 늘어가게 된다. 따라서, 기저를 이루는 여러 가지 1D 분리 가능한 변환(separable transform)들을 조합함으로써 다음과 같은 구성이 가능할 수 있다.
예를 들어, 1D 분리 가능한 변환(separable transform) 템플릿으로, 도 6(a)와 같이 왼쪽에 자기 루프(self-loop)가 존재하는 템플릿, 도 6(b)와 같이 오른쪽에 자기 루프(self-loop)가 존재하는 템플릿, 도 6(c)와 같이 양단에 자기 루프(self-loop)가 존재하는 템플릿, 및 도 6(d)와 같이 양쪽에 자기 루프(self-loop)가 모두 존재하지 않는 템플릿을 들 수 있다. 이들이 모두 이용가능한 경우, 행(row)과 열(column)에 대해 각기 상기 4가지 경우들이 가능하므로 총 16개의 조합에 대한 템플릿 인덱스(template index)를 정의할 수 있다.
다른 실시예로, TU 중간에 파티션 경계(partition boundary) 또는 오브젝트 경계(object boundary)가 존재하는 경우 템플릿 인덱스(template index)를 시그널링하되, 경계에 해당하는 에지에 대해서만 추가적으로 작은 가중치 값을 부여한 별도의 템플릿을 대신 적용할 수 있다.
도 7은 본 발명이 적용되는 일실시예로서, 2차원 그래프의 각 라인마다 서로 다른 분리가능한 변환(separable transform)을 적용하는 방법을 설명하기 위한 도면이다.
상기 도 7은 픽셀 블록에 대응되는 2차원 그래프를 나타내며, 그래프 꼭지점(vertex)은 픽셀 블록의 각 픽셀에 연관되며, 그래프 꼭지점의 값은 픽셀 값으로 표현될 수 있다. 여기서, 그래프 꼭지점을 연결하는 선은 그래프 에지(graph edge)를 의미한다. 앞서 살펴본 바와 같이, 상기 그래프 에지는 신호 내의 어떠한 형태의 통계적 의존성을 나타내기 위해 사용되며, 그 강도를 나타내는 값을 에지 가중치(edge weight)라 할 수 있다. 예를 들어, 도 7을 살펴보면, 2차원 그래프를 나타내며, aij (i=0,1,2,3,j=0,1,2), bkl (k=0,1,2,l=0,1,2,3)는 각 꼭지점 간의 에지 가중치를 나타낸다.
본 발명이 적용되는 일실시예로, 직각 방향으로 이웃한 픽셀들에 대해서만 그래프 에지를 연결하는 2D 그래프의 경우(이를 4-connected graph라 하기도 한다), 2D NSGBT(non-separable GBT)를 적용할 수도 있지만 행(row) 방향과 열(column) 방향에 각각 1D SGBT(separable GBT)를 적용할 수 있다.
예를 들어, 도 7의 2D 그래프의 각 꼭지점에 대해 최대 4개의 이웃한 꼭지점을 가지므로 4-연결 그래프(4-connected graph)라고 할 수 있으며, 여기서, 각 변의 에지 가중치(edge weight) (aij, bkl)를 이용하여 2D NSGBT(non-separable GBT) 커널(kernel)을 생성해서 적용할 수 있다.
구체적 예로, 행(row) 방향에 대해서는 각 행(row)에 대해 i번째 행(row)의 에지 가중치 ai0, ai1, ai2로 이루어진 그래프에 대한 1D SGBT(separable GBT)를 적용하고 각 열(column)에 대해서는 j번째 열(column) b0j, b1j, b2j의 에지 가중치로 이루어진 그래프에 대한 1D SGBT(separable GBT)를 적용할 수 있다.
다른 실시예로, 임의의 4-연결 그래프(4-connected graph)의 경우 각 라인마다 (가로 방향과 세로 방향 모두에 대해) 서로 다른 1D SGBT(separable GBT)을 적용할 수 있다. 예를 들어, 도 7에서 각 행(row)과 열(column)에 대해 에지 가중치(edge weight)의 조합이 다른 경우, 각 조합에 대한 1D SGBT를 적용할 수 있다.
한편, NxN TU에 대한 하나의 GBT 템플릿 셋(GBT template set)이 M 개의 4-연결 그래프(4-connected graph)들로 구성된 경우, 총 M 개의 N2xN2 변환 매트릭스들이 준비되어야 하므로 이들을 저장하기 위한 메모리 요구량이 커진다. 따라서, 하나의 4-연결 그래프(4-connected graph)를 적어도 하나의 1D 그래프 요소로 조합하여 구성할 수 있다면, 적어도 하나의 1D 그래프 요소에 대한 변환만이 필요하게 되므로 변환 매트릭스들을 저장하기 위한 메모리 양을 줄일 수 있다.
본 발명의 일실시예로, 제한된 개수의 1D 그래프 요소들로 다양한 4-연결 2D 그래프(4-connected 2D graph)들을 생성할 수 있고, 그럼으로써 각 모드 조합에 적합한 GBT 템플릿 셋(GBT template set)을 커스터마이징할 수 있다. 총 GBT 템플릿 개수가 늘어난다 할지라도 기저를 이루는 1D 변환들의 수는 그대로일 것이므로 필요한 메모리 양을 최소화할 수 있다. 예를 들어, 도 7에서 제한된 개수의 (ai0, ai1, ai2)과 (b0j, b1j, b2j) 조합들을 준비한 후, 각 조합에 대한 1D 그래프들을 단위로 하여 이들을 적절히 연결하게 되면 하나의 4-연결 2D 그래프(4-connected 2D graph)를 생성할 수 있다.
예를 들어, 현재 코딩 블록에 대해서, 그래프 에지 정보, 파티션 정보, 픽셀 간 상관성(correlation) 정보 등을 비트스트림으로부터 전달받거나 주변 정보로부터 유도가 가능한 경우, 이 정보들을 이용하여 1D 변환들의 조합을 커스터마이징할 수 있다.
도 8은 본 발명이 적용되는 실시예로서, 그래프 기반의 신호를 처리하는 인코더의 개략적 블록도를 예시한다.
도 8을 살펴보면, 본 발명이 적용되는 인코더(800)는 그래프 기반 변환부(810), 양자화부(820), 역양자화부(830), 역변환부(840), 버퍼(850), 예측부(860), 및 엔트로피 인코딩부(870)을 포함한다.
인코더(800)는 비디오 신호를 수신하고 상기 비디오 신호로부터 상기 예측부(860)에서 출력된 예측된 신호를 차감하여 예측 에러를 생성한다. 상기 생성된 예측 에러는 상기 그래프 기반 변환부(810)으로 전송되고, 상기 그래프 기반 변환부(810)은 변환 방식을 상기 예측 에러에 적용함으로써 변환 계수를 생성한다.
본 발명이 적용되는 다른 실시예로, 상기 그래프 기반 변환부(810)는 획득된 그래프 기반 변환 행렬과 상기 도 1의 변환부(120)로부터 획득된 변환 행렬을 비교하여 보다 적합한 변환 행렬을 선택할 수 있다.
상기 양자화부(820)은 상기 생성된 변환 계수를 양자화하여 상기 양자화된 계수를 엔트로피 인코딩부(870)으로 전송한다.
상기 엔트로피 인코딩부(870)은 상기 양자화된 신호에 대한 엔트로피 코딩을 수행하고 엔트로피 코딩된 신호를 출력한다.
상기 양자화부(820)에 의해 출력된 상기 양자화된 신호는 예측 신호를 생성하기 위해 사용될 수 있다. 예를 들어, 상기 인코더(800)의 루프 내의 상기 역양자화부(830) 및 상기 역변환부(840)은 상기 양자화된 신호가 예측 에러로 복원되도록 상기 양자화된 신호에 대한 역양자화 및 역변환을 수행할 수 있다. 복원된 신호는 상기 복원된 예측 에러를 상기 예측부(860)에 의해 출력된 예측 신호에 더함으로써 생성될 수 있다.
상기 버퍼(850)는 예측부(860)의 향후 참조를 위해 복원된 신호를 저장한다.
상기 예측부(860)은 이전에 복원되어 상기 버퍼(850)에 저장된 신호를 사용하여 예측 신호를 생성할 수 있다. 상기 생성된 예측 신호는 원 비디오 신호로부터 차감되어 차분 신호를 생성하며, 이는 상기 그래프 기반 변환부(810)으로 전송된다.
도 9는 본 발명이 적용되는 실시예로서, 그래프 기반의 신호를 처리하는 디코더의 개략적 블록도를 예시한다.
도 9의 디코더(900)는 도 8의 인코더(800)에 의해 출력된 신호를 수신한다.
상기 엔트로피 디코딩부(910)은 수신된 신호에 대한 엔트로피 디코딩을 수행한다. 상기 역양자화부(920)은 양자화 스텝 사이즈(quantization step size)에 기초하여 상기 엔트로피 디코딩된 신호로부터 변환 계수를 획득한다.
상기 역변환부(930)은 변환 계수에 대한 역변환을 수행함으로써 차분 신호를 획득한다. 이때, 상기 역변환은 상기 인코더(800)에서 획득된 그래프 기반 변환에 대한 역변환을 의미할 수 있다.
상기 획득된 차분 신호를 상기 예측부(950)에 의해 출력된 예측 신호에 더함으로써 복원 신호를 생성할 수 있다.
상기 버퍼(940)는 상기 예측부(950)의 향후 참조를 위해 상기 복원 신호를 저장할 수 있다.
상기 예측부(950)은 이전에 복원되어 상기 버퍼(940)에 저장된 신호를 기반으로 예측 신호를 생성할 수 있다.
도 10은 본 발명이 적용되는 일실시예로서, 그래프 기반 변환부의 내부 블록도를 나타낸다.
도 10을 참조하면, 그래프 기반 변환부(810)는 그래프 파라미터 결정부(811), 그래프 신호 생성부(813), 변환 행렬 결정부(815) 및 변환 수행부(817)를 포함할 수 있다.
그래프 파라미터 결정부(811)는 비디오 신호 또는 차분 신호의 타겟 유닛에 대응되는 그래프 내 그래프 파라미터를 추출할 수 있다. 예를 들어, 상기 그래프 파라미터는 꼭지점 파라미터 및 에지 파라미터 중 적어도 하나를 포함할 수 있다. 상기 꼭지점 파라미터는 꼭지점 위치 및 꼭지점 개수 중 적어도 하나를 포함하고, 상기 에지 파라미터는 에지 가중치 값 및 에지 가중치 개수 중 적어도 하나를 포함할 수 있다. 또한, 상기 그래프 파라미터는 일정 개수의 셋(set)으로 정의될 수 있다.
다른 예로, 상기 에지 파라미터는 경계 정보를 포함할 수 있으며, 상기 경계 정보는 에지 가중치, 자기 루프 개수 및 자기 루프 가중치 중 적어도 하나를 포함할 수 있다. 여기서, 상기 자기 루프 개수는 자기 루프의 개수 또는 자기 루프의 위치를 의미할 수 있으며, 본 명세서에서는 자기 루프 개수라고 기재하였지만 자기 루프 위치로 대체되어 표현될 수 있다.
본 발명의 일실시예에 따르면, 상기 그래프 파라미터 결정부(811)로부터 추출된 그래프 파라미터는 일반화된 형태로 표현될 수 있다.
그래프 신호 생성부(813)는 상기 그래프 파라미터 결정부(811)로부터 추출된 그래프 파라미터에 기초하여 그래프 신호를 생성할 수 있다. 여기서, 상기 그래프 신호는 가중치 적용된 또는 가중치 적용되지 않은 라인 그래프를 포함할 수 있다. 상기 라인 그래프는 타겟 블록의 행 또는 열 각각에 대해 생성될 수 있다.
변환 행렬 결정부(815)는 상기 그래프 신호에 적합한 변환 행렬을 결정할 수 있다. 예를 들어, 상기 변환 행렬은 RD(Rate Distortion) 성능에 기초하여 결정될 수 있다. 또한, 본 명세서에서 변환 행렬은 변환 또는 변환 커널이란 표현으로 대체되어 사용될 수 있다.
본 발명의 실시예로, 상기 변환 행렬은 인코더 및 디코더에서 이미 결정된 값일 수 있으며, 이 경우 변환 행렬 결정부(815)는 상기 그래프 신호에 적합한 변환 행렬을 저장된 곳으로부터 유도할 수 있다.
본 발명의 다른 실시예로, 상기 변환 행렬 결정부(815)는 라인 그래프에 대한 1차원 변환 커널을 생성할 수 있고, 상기 1차원 변환 커널 중 2개를 결합하여 2차원 분리 가능한 그래프 기반 변환 커널을 생성할 수 있다. 상기 변환 행렬 결정부(815)는 RD(Rate Distortion) 성능에 기초하여 상기 2차원 분리 가능한 그래프 기반 변환 커널들 중 상기 그래프 신호에 적합한 변환 커널을 결정할 수 있다.
변환 수행부(817)는 상기 변환 행렬 결정부(815)로부터 획득된 변환 행렬을 이용하여 변환을 수행할 수 있다.
상기 도 10과 관련하여, 본 명세서에서는 그래프 기반 변환을 수행하는 과정을 설명하기 위해 각 기능별로 세분화하여 설명하지만, 본 발명은 이에 한정되지 않는다. 예를 들어, 상기 그래프 기반 변환부(810)는 크게 그래프 신호 생성부와 변환부로 구성될 수 있으며, 이 경우 상기 그래프 파라미터 결정부(811)의 기능은 상기 그래프 신호 생성부에서 수행될 수 있고, 상기 변환 행렬 결정부(815) 및 상기 변환 수행부(817)의 기능은 상기 변환부에서 수행될 수 있다. 또한, 상기 변환부의 기능은 변환 행렬 결정부와 변환 수행부로 구분될 수도 있다.
도 11은 본 발명이 적용되는 일실시예로서, 변환 유닛 크기(TU size) 또는 예측 모드에 기초하여 생성된 그래프를 이용하여 변환을 수행하는 방법을 설명하기 위한 흐름도이다.
본 발명은, 인트라 코딩에 적용 가능한 그래프 기반 변환(graph-based transform)을 유도하기 위한 그래프를 생성하는 방법을 제공한다.
본 발명은, 인트라 코딩에 적용 가능한 그래프 기반 변환(graph-based transform)을 유도하기 위해 전체 블록에 대한 그래프 또는 부분 영역에 대한 부분 그래프를 생성하는 방법을 제공한다.
본 발명은, 이웃 참조 픽셀들과의 의존 관계로부터 전체 블록에 대한 그래프를 구성하는 방법을 제공한다.
본 발명은, 국부 영역(local region)에 적용할 그래프 기반 변환(graph-based transform)을 유도하기 위해 전체 블록에 대한 그래프로부터 부분 그래프(partial graph)를 구성하는 방법을 제공한다.
본 발명의 실시예는, 영상 블록에 대한 그래프를 생성하고, 이로부터 라플라시안 매트릭스를 생성한 후 아이겐 분해(eigen-decomposition)를 통해 변환 커널을 생성할 수 있다. 본 발명은 인코더 내 변환부에서 특정 조건(specific condition)이 만족될 때 변환 커널을 적용할 수 있다. 여기서, 특정 조건이란 변환 유닛 크기(transform unit size)나 인트라 예측 모드 중 적어도 하나에 대응되는 경우를 의미할 수 있다.
다른 예로, 인코더는 본 발명이 적용되는 그래프로부터 도출된 다양한 변환 커널들에 대해 율-왜곡(rate-distortion) 측면에서 성능이 우수한 변환 커널을 결정할 수 있다. 결정된 변환 커널은 코딩 유닛 또는 변환 유닛 단위로 디코더에 전송할 수 있으나, 본 발명은 이에 한정되지 않는다.
또한, 인코더 및 디코더는 이용가능한 변환 커널에 대한 데이터를 이미 알고 있을 수 있으며, 이 경우 인코더는 변환 커널에 대응되는 인덱스만을 전송할 수 있다.
도 11을 살펴보면, 먼저 인코더는 입력된 비디오 신호로부터 현재 블록에 대한 컨텍스트 정보를 획득할 수 있다(S1110). 여기서, 상기 컨텍스트 정보는 이전의 복원된 샘플에 대한 정보를 의미할 수 있다.
상기 인코더는 상기 컨텍스트 정보로부터 변환 커널을 유도할 수 있다(S1120). 예를 들어, 변환 유닛에 대한 변환 커널은 현재 블록 또는 이웃 블록에 대한 예측 모드에 기초하여 유도될 수 있다.
상기 인코더는 상기 유도된 변환 커널을 이용하여 변환을 수행하고(S1130), 만약 복수개의 변환 타입이 존재하는 경우에는 율-왜곡 최적화 과정을 통해 최적의 변환 커널을 결정할 수 있다(S1140).
최적의 변환 커널이 결정되면, 상기 인코더는 변환 계수 및 변환 인덱스를 인코딩할 수 있다(S1150). 여기서, 상기 변환 인덱스는 타겟 블록에 적용되는 그래프 기반 변환을 의미할 수 있다.
본 발명의 일실시예로, 상기 변환 인덱스는 예측 모드 및 변환 유닛의 크기 중 적어도 하나에 기초하여 결정될 수 있다. 예를 들어, 변환 인덱스는 예측 모드 및 변환 유닛의 크기 중 적어도 하나에 기초하여 서로 다른 조합으로 구성될 수 있다. 즉, 예측 모드 또는 변환 유닛의 크기에 따라 서로 다른 그래프 기반 변환 커널이 적용될 수 있다.
본 발명의 다른 일실시예로, 타겟 블록이 수평 방향 또는 수직 방향으로 파티션된 M개 또는 N개의 서브 블록들로 구성된 경우, 상기 변환 인덱스는 각 서브 블록마다 대응될 수 있다.
본 발명의 다른 실시예로, 상기 그래프 기반 변환은 상기 변환 인덱스에 따라 각 서브 블록마다 유도되며, 적어도 2개 이상의 서브 블록은 서로 다른 변환 타입이 적용될 수 있다. 예를 들어, 상기 서로 다른 변환 타입은 DCT(Discrete Cosine Transform), DST(Discrete Sine Transform), ADST(Asymmetric Discrete Sine Transform) 및 RADST(Reverse ADST) 중 적어도 2개를 포함할 수 있다.
본 발명의 일실시예에서, 인코더는 라인 그래프를 생성 또는 디자인할 수 있다. 여기서, 상기 라인 그래프는 적어도 1이상의 라인에 대한 그래프를 의미할 수 있다. 예를 들어, 상기 인코더는 1개의 라인 그래프에 연관된 1D 그래프 기반 변환(GBT)을 생성할 수 있고, 이때 상기 1D 그래프 기반 변환(GBT)은 일반화된 라플라시안 연산기(Laplacian operator)를 이용하여 생성될 수 있다.
여기서, 인접 행렬 A와 그에 의해 정의된 그래프 G(A)가 있다고 가정할 때, 라플라시안 행렬(Laplacian matrix) L은 다음 수학식 5를 통해 획득될 수 있다.
수학식 5
Figure PCTKR2016007972-appb-M000005
상기 수학식 5에서, D는 차수 행렬(Degree matrix)을 나타내고, 예를 들어 상기 차수 행렬은 각 꼭지점의 차수에 대한 정보를 포함하는 대각 행렬(diagonal matrix)을 의미할 수 있다. A는 인접 픽셀과의 연결 관계(예를 들어, 에지)를 가중치로 나타내는 인접 행렬(adjacency matrix)을 나타낸다. S는 G의 노드들에서의 자기 루프(self-loop)를 나타내는 대각 행렬(diagonal matrix)을 나타낸다.
그리고, 라플라시안 행렬(Laplacian matrix) L에 대해 아래 수학식 6과 같이 고유 분해(eigen decomposition)를 수행함으로써 최적의 변환 커널을 획득할 수 있다.
수학식 6
Figure PCTKR2016007972-appb-M000006
상기 수학식 6에서, L은 라플라시안 행렬(Laplacian matrix), U는 고유 행렬(eigen matrix), UT는 U의 전치 행렬(transpose matrix)을 의미한다. 상기 수학식 6에서, 상기 고유 행렬(eigen matrix) U는 해당 그래프 모델에 맞는 신호에 대해 특화된 그래프 기반 푸리에(Fourier) 변환을 제공할 수 있다. 예를 들어, 상기 수학식 6를 만족하는 고유 행렬(eigen matrix) U는 GBT 커널을 의미할 수 있다.
여기서, 고유 행렬(eigen matrix) U의 열들(columns)은 GBT의 기초 벡터들(basis vectors)을 의미할 수 있다. 그래프가 자기 루프(self-loop)가 없으면, 일반화된 라플라시안 행렬(generalized Laplacian matrix)은 상기 수학식 3과 같다.
도 12는 본 발명이 적용되는 일실시예로서, 변환 유닛 크기(TU size) 또는 예측 모드에 기초하여 생성된 그래프를 이용하여 역변환을 수행하는 방법을 설명하기 위한 흐름도이다.
먼저, 디코더는 비디오 신호로부터 타겟 블록에 대한 변환 인덱스(transform index)를 파싱할 수 있다(S1210). 여기서, 상기 변환 인덱스는 상기 타겟 블록에 적용될 그래프 기반 변환을 나타낸다. 예를 들어, 상기 타겟 블록에 적용될 그래프 기반 변환은 적어도 1이상의 라인에 대한 그래프 기반 변환 커널을 의미할 수 있다. 상기 S1210 단계는 디코더 내 파싱부에서 수행될 수 있다.
본 발명의 일실시예로, 상기 변환 인덱스는 코딩 유닛, 예측 유닛 또는 변환 유닛 중 적어도 하나의 유닛마다 수신될 수 있다.
본 발명이 적용되는 인코더 또는 디코더는 다양한 변환 유형을 알고 있으며, 이때 각각의 변환 유형은 변환 인덱스에 매핑될 수 있다.
본 발명의 일실시예로, 변환 인덱스는 예측 모드 및 변환 유닛의 크기 중 적어도 하나에 기초하여 결정될 수 있다. 예를 들어, 변환 인덱스는 예측 모드 및 변환 유닛의 크기 중 적어도 하나에 기초하여 서로 다른 조합으로 구성될 수 있다. 즉, 예측 모드 또는 변환 유닛의 크기에 따라 서로 다른 그래프 기반 변환 커널이 적용될 수 있다.
본 발명의 다른 일실시예로, 상기 타겟 블록이 수평 방향 또는 수직 방향으로 파티션된 M개 또는 N개의 서브 블록들로 구성된 경우, 상기 변환 인덱스는 각 서브 블록마다 대응될 수 있다.
본 발명의 다른 실시예로, 상기 그래프 기반 변환은 상기 변환 인덱스에 따라 각 서브 블록마다 유도되며, 적어도 2개 이상의 서브 블록은 서로 다른 변환 타입이 적용될 수 있다. 예를 들어, 상기 서로 다른 변환 타입은 DCT, DST, ADST(Asymmetric Discrete Sine Transform) 및 RADST(Reverse ADST) 중 적어도 2개를 포함할 수 있다.
본 발명의 다른 실시예로, 상기 그래프 기반 변환은 복수개의 1차원 그래프 기반 변환들의 결합에 기초하여 생성된, 2차원 분리 가능한 그래프 기반 변환 커널일 수 있다.
상기 디코더는 타겟 블록에 대한 변환 계수를 디코딩할 수 있다(S1220).
한편, 상기 디코더는 컨텍스트 정보를 획득할 수 있다(S1230). 여기서, 상기 컨텍스트 정보는 이전의 복원된 샘플에 대한 정보를 의미할 수 있다.
상기 디코더는 상기 컨텍스트 정보 또는 상기 변환 인덱스 중 적어도 하나에 기초하여 역변환 커널을 획득할 수 있다(S1240). 예를 들어, 상기 역변환 커널은 현재 블록의 예측 모드 또는 이웃 블록의 예측 모드 중 적어도 하나에 기초하여 유도될 수 있다.
본 발명의 일실시예로, 본 발명에 따라 생성된 그래프에 기초하여 대응되는 변환 커널을 획득한 후, 특정 예측 모드의 경우 다른 변환 타입으로 대체할 수 있다. 예를 들어, 상기 특정 예측 모드가 인트라 수직 모드 또는 인트라 수평 모드를 나타내는 경우, 상기 변환 커널은 DCT 또는 DST 로 대체될 수 있다. 구체적 예로, 35 가지의 인트라 예측 모드 각각에 대해 대응되는 변환 커널을 인코더와 디코더는 모두 알고 있을 수 있다. 그리고, 인트라 코딩된 블록의 예측 모드에 따라 대응되는 변환 커널을 적용할 수 있다.
또한, 변환 인덱스와 컨텍스트 정보 모두를 이용하여 변환 커널을 결정할 수도 있다.
상기 디코더는 상기 역변환 커널을 이용하여 역변환을 수행할 수 있다(S1250).
도 13은 본 발명이 적용되는 일실시예로서, 인트라 예측에서 예측 방향에 따른 에지 가중치를 이용하여 현재 픽셀을 예측하는 방법을 설명하기 위한 픽셀 관계도이다.
인트라 코딩의 경우 주변 픽셀 값을 이용하여 현재 픽셀 값을 예측한다. 상기 도 13을 살펴보면, a, b, c, d, e, f는 각각 해당 위치에서의 픽셀 값을 나타내고, w1과 w2는 각각 대각선 방향과 수직 방향에 위치한 픽셀 값에 대한 예측 기여도를 나타내는 에지 가중치를 나타낸다. 여기서, 상기 에지 가중치는 예측 모드에 따른 예측 방향에 기초하여 정의될 수 있다. 예를 들어, 픽셀 c와 f는 다음 수학식 7에 기초하여 예측될 수 있다.
수학식 7
Figure PCTKR2016007972-appb-M000007
여기서,
Figure PCTKR2016007972-appb-I000001
Figure PCTKR2016007972-appb-I000002
은 각각 픽셀 c와 f의 예측값을 나타낸다.
도 14는 본 발명이 적용되는 일실시예로서, 4x4 블록에 대해 인트라 예측 방향에 따른 에지 가중치를 이용하여 그래프를 생성하는 방법을 설명하기 위한 도면이다.
상기 도 13에서 살펴본 바와 같이, 픽셀들 사이에는 대각선 방향과 수직 방향에 대해 각기 w1과 w2만큼의 의존 관계를 갖음을 확인할 수 있으며, 상기 도 14는 이러한 의존 관계를 반영하여 현재 블록의 픽셀들에 대해서만 그래프를 타낸 것이다.
상기 도 14를 살펴보면, 픽셀 B와 픽셀 C는 w2만큼의 의존 관계가 있고 픽셀 C와 픽셀 A는 w1만큼의 의존관계가 있으므로, 픽셀 A와 픽셀 B의 의존 관계를 w1과 w2의 함수인 f(w1,w2)로 표시할 수 있다.
픽셀 B는 상기 도 13에서와 같이 좌측 참조 픽셀 2개와 상측 픽셀(픽셀 C) 1개로 연결되어 있는데, 상기 도 14에서는 좌측 참조 픽셀 2개가 표현되어 있지 않다. 그리고, 상기 픽셀 B는 픽셀 C와는 w2의 에지 가중치를 가진 것으로 표현되어 있으므로, 상기 도 14에 나타나지 않은 참조 픽셀 2개에 대한 연결 관계는 자기 루프에 의해 표현될 수 있다.
여기서, 상기 도 14에서 나타나지 않은 좌측 참조 픽셀 2개에 대한 연결은 각기 w1, w3의 에지 가중치를 가지고 있으므로, 픽셀 B에 연결된 자기 루프에 대한 에지 가중치는 w1과 w3의 함수인 g(w1,w3)로 표시할 수 있다.
동일한 방식으로 상기 도 14의 픽셀 D와 픽셀 E에서도 자기 루프를 적용할 수 있고, 각 자기 루프에 대한 에지 가중치는 함수 h(w1,w2,w3)와 함수 k(w1,w2)로 나타낼 수 있다.
상기 도 13 및 상기 도 14의 실시예는 우측 아래 방향으로 예측하는 인트라 예측 모드에 관한 것이며, 본 명세서에서는 일실시예로 설명하고 있으며, 본 발명은 이에 한정되지 않는다. 예를 들어, 상기 도 14에서 표시한 함수 f, g, h, k는 예측 방향 또는 예측 모드에 따라 다른 함수를 가질 수 있다.
또한, 에지 가중치를 산출하기 위해 상기 수학식 7을 이용하였으나, 이 또한 일실시예에 불과하며 본 발명은 이에 한정되지 않는다. 예를 들어, w1과 w2 를 산출하기 위해 상기 수학식 7 외에 다른 값을 할당할 수도 있다. 구체적 예로, 그래프 에지들이 물체들의 경계와 겹치게 되는 경우, 상기 도 14의 에지들에 대한 에지 가중치 값을 0 또는 0에 가까운 양수 값을 할당할 수 있다.
도 15 내지 16은 본 발명이 적용되는 일실시예들로서, 인트라 예측 방향에 따른 에지 가중치를 이용하여 2개 라인 단위의 부분 그래프(partial graph)를 생성하는 방법을 설명하기 위한 도면이다.
본 발명의 일실시예에서, 상기 도 13의 현재 블록 픽셀들에 대해 2개 라인 단위로 변환을 적용하는 경우, 상기 도 15에서와 같이, 대응되는 변환을 유도하기 위해 2개 라인 단위의 부분 그래프를 생성할 수 있다.
상기 도 14의 그래프는 전체 블록을 구성하는 모든 픽셀들이 동일한 예측 방향과 일관된 픽셀 간 의존 관계를 갖는다는 가정 하에 구성된 것일 수 있다. 이러한 가정을 유지하는 경우, 상기 도 15와 같은 2개 라인에 대한 부분 그래프(partial graph)도 상기 도 14에서와 동일한 방식으로 구성될 수 있다.
상기 도 15를 살펴보면, 함수 f, g, h, k는 상기 도 14에서 설명한 바와 같이 동일한 함수를 사용할 수도 있고 다른 함수를 사용할 수도 있다.
예를 들어, 상기 도 15의 부분 그래프(partial graph)로부터 그래프 기반 변환을 유도하여 전체 블록에 대해 적용하는 경우, 2개 라인마다 대응되는 그래프 기반 변환을 순차적으로 적용할 수 있다.
도 16은 상기 도 15의 그래프에 대해 다양한 함수를 적용하는 실시예를 나타낸다. 예를 들어, f 함수의 경우에는 2개의 에지 가중치 값 중 최소값을 선택하는 함수를 적용하고, 나머지 h 함수, g 함수, k 함수의 경우에는 각 에지 가중치의 합을 산출하는 함수를 적용할 수 있다.
이를 수학식으로 표현하면 다음 수학식 8과 같다.
수학식 8
Figure PCTKR2016007972-appb-M000008
이는 본 발명의 일실시예에 해당하며, 본 발명은 이에 한정되지 않는다. 예를 들어, w3의 경우, 최소값 함수 대신, 2개 에지 가중치의 곱셈 함수(f = w1w2) 또는 2개 에지 가중치의 평균 함수(f = avg(w1, w2)) 등이 적용될 수 있다.
다른 실시예로, 에지 가중치 함수는 예측 방향 각도에 기초하여 설정될 수 있으며, 다음 수학식 9 또는 수학식 10과 같은 에지 가중치 함수가 이용될 수 있다.
수학식 9
Figure PCTKR2016007972-appb-M000009
수학식 10
Figure PCTKR2016007972-appb-M000010
예를 들어, 상기 도 16에서와 같이, w1 에지와 w3 에지가 45도의 각도를 이루는 경우, 상기 수학식 9에 따라 f = w1cos(π/4) 이 적용될 수 있다.
또한, 예측 방향으로부터 정확하게 예측된다고 가정했을 때 예측 방향과 가로 축이 이루는 각에 대한 cos 값이 가로 방향에 대한 예측 정확도라고 볼 수 있기 때문에 상기 수학식 10이 적용될 수 있다.
또한, 상기 f, g, h, k 함수는 상수 함수일 수도 있다.
도 17은 본 발명이 적용되는 일실시예들로서, 인트라 예측 방향에 따른 에지 가중치를 이용하여 1개 라인 단위의 부분 그래프(partial graph)를 생성하는 방법을 설명하기 위한 도면이다.
상기 도 17을 살펴보면, 상기 도 14의 그래프로부터 1개 라인에 대한 부분 그래프(partial graph)를 구성한 예시이다.
여기서, 상기 도 17의 f, h, k 함수는 상기에서 설명한 바와 같이 서로 다른 함수들을 적용할 수 있다.
이때, 상기 도 17의 1개 라인 단위의 부분 그래프로부터 그래프 기반 변환을 유도하는 경우, 전체 블록에 대해 1D 분리가능한 변환으로서 적용될 수 있다.
도 18은 본 발명이 적용되는 일실시예들로서, 인트라 예측 방향에 따른 에지 가중치를 이용하여 3개 라인 단위의 부분 그래프(partial graph)를 생성하는 방법을 설명하기 위한 도면이다.
본 실시예는 상기 도 15에서의 부분 그래프(partial graph)에 비해 라인 1개를 더 늘린 3개 라인 단위의 그래프를 나타낸다. 상기 도 18을 살펴보면, 픽셀 A, B, C, D, E, F는 모두 자기 루프를 가지고 있으며, 각 픽셀의 에지 가중치는, w5, w6, w6, w6, w3, w4 임을 알 수 있다.
여기서, 에지 가중치 함수 f, g, h, k는 앞서 실시예한 다양한 함수들 중 적어도 하나가 적용될 수 있으며, 앞선 실시예들의 함수와 다르게 설정할 수 있다.
이와 같이, 본 발명은 상기 도 14 내지 도 18의 실시예들을 조합할 수 있으며, 이 경우 라인 수를 자유롭게 늘리거나 줄이면서 적응적으로 부분 그래프(partial graph)를 구성할 수 있으며, 나아가 각 픽셀의 에지 가중치에 대해 서로 다른 함수를 적용할 수 있다.
도 19 내지 20은 본 발명이 적용되는 일실시예들로서, 인트라 예측에서 수직 방향에 따른 에지 가중치를 이용하여 2개 라인 단위의 부분 그래프(partial graph)를 생성하는 방법을 설명하기 위한 도면이다.
상기 도 19는 인트라 예측 모드가 수직 방향을 나타내는 모드일 경우 2개 라인 단위의 부분 그래프를 나타낸다. 이 경우, w1 은 0일 수 있다. 상기 도 19를 살펴보면, 픽셀 A, B, C, D, E는 모두 자기 루프를 가지고 있으며, 각 픽셀의 에지 가중치는, w5, w6, w6, w6, w4 임을 알 수 있으며, 각 에지 가중치 함수는 다음 수학식 11과 같이 나타낼 수 있다.
수학식 11
Figure PCTKR2016007972-appb-M000011
상기 도 20은 f, g, h, k 함수를 설정한 일실시예를 나타낸다.
상기 도 20을 살펴보면, w4, w5, w6 값에는 예측 방향에서 연결된 에지들의 에지 가중치 합으로 설정하였고, w3은 상수 값 α를 설정하였다.
픽셀 A와 픽셀 F 사이에는 의존 관계가 없으므로, 픽셀 E와 픽셀 F 사이의 에지 가중치를 유도할 수 없다.
한편, α 값은 통계 데이터를 통해 구할 수 있으며, 예를 들어, 두 픽셀 간의 상관 계수(correlation coefficient)를 나타낼 수 있다.
도 21 내지 22는 본 발명이 적용되는 일실시예들로서, 인트라 예측에서 우하단 방향에 따른 에지 가중치를 이용하여 2개 라인 단위의 부분 그래프(partial graph)를 생성하는 방법을 설명하기 위한 도면이다.
도 21은 우하단 방향으로만 예측하는 경우에 대한 2개 라인 단위의 부분 그래프를 나타낸다. 이 경우, w2 =0 으로 설정할 수 있다.
도 22를 살펴보면, w4, w5, w6 에는 예측 방향에 연결된 에지들의 에지 가중치 합을 설정하였고, w3 에는 w1 값의 α배를 설정하였다. 여기서, 상기 α 값은 인트라 예측 모드에 따른 예측 방향에 기초하여 설정될 수 있다. 예를 들어, 도 21의 경우 w1에 대한 에지와 w3에 대한 에지가 π/4만큼의 각을 이루고 있기 때문에 cos(π/4)를 설정할 수 있다. 또는, 통계 데이터로부터 구한 상수 값을 w3에 할당할 수도 있다.
상기 도 14 내지 도 22의 실시예들은 우하단 방향 또는 수직 방향의 인트라 예측 모드에 대해 설명한 것이나, 본 발명은 이에 한정되지 않는다. 예를 들어, 좌하단 방향, 우상단 방향, 수평 방향의 인트라 예측 모드에 대해서도 동일한 방식으로 그래프를 생성할 수 있다.
또한, 상기 그래프는 인트라 예측 모드에 따라 자기 루프의 위치, 대각선 에지 방향, 행(row)/열(column) 라인 구성 중 적어도 하나가 달라질 수 있다.
예를 들어, 인트라 예측 모드가 우상단 방향으로 예측하는 경우, 적어도 하나 이상의 열(column) 라인들에 대해 부분 그래프를 생성할 수 있다.
또한, 에지 가중치 값은 정해진 모델에 의해 결정될 수도 있고, 또는 통계적 데이터 분석을 통해 픽셀 간 상관 계수(correlation coefficient) 측정 등을 통해서도 결정될 수 있다.
도 23은 본 발명이 적용되는 일실시예로서, 예측 모드에 따라 에지 가중치를 산출하고 그에 따라 라인 그래프를 생성하는 방법을 설명하기 위한 흐름도이다.
먼저, 인코더는 현재 블록에 대한 컨텍스트 정보를 확인할 수 있으며, 예를 들어 상기 컨텍스트 정보는 현재 블록의 예측 모드 또는 주변 블록의 예측 모드를 포함할 수 있다(S2310).
상기 인코더는 상기 예측 모드에 대응되는 예측 방향 각도를 이용하여 현재 블록 내 에지에 대한 에지 가중치를 계산할 수 있다(S2320). 상기 에지 가중치는 예측 모드에 따른 예측 방향에 기초하여 정의될 수 있다. 예를 들어, 상기 에지 가중치는 상기 수학식 7에 기초하여 예측될 수 있으나, 본 발명은 이에 한정되지 않는다.
또한, 상기 에지 가중치는 다양한 함수를 이용하여 계산될 수 있으며, 예를 들어, 에지 가중치 값들 중 최소값을 선택하는 함수, 각 에지 가중치의 합을 산출하는 함수, 에지 가중치의 곱셈 함수 또는 에지 가중치의 평균 함수 중 적어도 하나가 적용될 수 있다.
상기 인코더는 상기 에지 가중치에 기초하여 적어도 1개 이상 라인 단위의 라인 그래프를 생성할 수 있다(S2330). 예를 들어, 현재 블록 픽셀들에 대해 2개 라인 단위로 변환을 적용하는 경우, 대응되는 변환을 유도하기 위해 2개 라인 단위의 부분 그래프를 생성할 수 있다.
상기 인코더는 생성된 라인 그래프에 변환 커널을 획득할 수 있다(S2340).
상기 인코더는 변환 커널을 이용하여 상기 현재 블록에 대해 변환을 수행할 수 있다(S2350). 이 경우, 상기 2개 라인 단위의 부분 그래프로부터 변환 커널이 유도된 경우, 이를 전체 블록에 대해 적용할 때 2개 라인마다 대응되는 변환 커널을 순차적으로 적용할 수 있다.
다른 예로, 한 영상이 여러 객체들로 나뉘어져 코딩되는 경우, 각 객체에 대한 위치 정보나 경계 정보 등으로부터 픽셀 간 연결 또는 단절을 나타내는 그래프를 생성한 후, 상술한 GBT 생성 과정을 통해 블록 별 변환 커널을 구할 수 있다. 한 영상이 분할(segmentation) 알고리즘 등을 통해 여러 영역들 또는 객체들로 나뉘어지는 경우 서로 다른 객체에 속하는 픽셀들 간에는 그래프의 해당 연결을 단절시키는 방식으로 그래프를 구축할 수도 있다.
다른 예로, 한 영상이 CU 또는 PU 단위로 코딩이 수행된다고 했을 때, CU 또는 PU의 경계가 영상의 에지 특성을 근사적으로 반영할 수 있다. 따라서, TU 내부에 CU 또는 PU의 경계가 포함되는 경우, 해당 경계를 반영하여 그래프를 구성한 후 상술한 GBT 생성 방법을 적용할 수 있다. 예를 들어, TU 내부에 CU 또는 PU의 경계가 포함되는 경우, 경계와 만나는 부분에 대한 연결을 단절할 수 있다.
다른 예로, 다양한 레벨(예를 들어, 프레임, 슬라이스, CU, PU, TU 등) 에서 상술한 방식대로 생성된 GBT를 적용할지 여부를 가리키는 플래그 정보를 정의하고, 적어도 하나의 레벨에서 최적의 변환을 선택하도록 할 수 있다. 인코더에서 RD 최적화(rate-distortion optimization) 과정을 통해, 일반 변환(예를 들어, DCT type-2, DST type-7 등)과 GBT(graph-based transform)을 모두 적용하고 이 중 비용이 가장 작은 변환을 플래그 또는 인덱스를 통해 지정할 수 있다.
본 명세서에서는, 총 4개의 꼭지점을 갖는 라인 그래프에 대하여 설명하였으나, 본 발명은 이에 한정되지 않는다. 예를 들어, 8, 16, 32, 64 및 그 이상의 꼭지점 개수를 갖는 라인 그래프로 확장할 수 있다.
본 발명의 실시예에서, 라인 그래프는 인트라 예측 또는 인터 예측을 통해 생성된 예측 잔차 신호에 대해 모델링될 수 있으며, 예측 잔차 신호에 특성에 따라 적응적으로 최적의 변환 커널을 선택하여 사용할 수 있다.
본 발명의 실시예에서, 각 라인 그래프를 통해 생성된 변환 커널은 가로 및 세로 방향에 대해 여러 가지 조합을 이용하여 선택적으로 적용할 수 있으며, 이는 부가 정보를 통해 시그널링할 수 있다.
상기 기술된 것과 같이, 본 발명에서 설명한 실시예들은 프로세서, 마이크로 프로세서, 컨트롤러 또는 칩 상에서 구현되어 수행될 수 있다. 예를 들어, 상기 도 1, 도 2, 도 8, 도 9 및 도 10에서 도시한 기능 유닛들은 컴퓨터, 프로세서, 마이크로 프로세서, 컨트롤러 또는 칩 상에서 구현되어 수행될 수 있다.
또한, 본 발명이 적용되는 디코더 및 인코더는 멀티미디어 방송 송수신 장치, 모바일 통신 단말, 홈 시네마 비디오 장치, 디지털 시네마 비디오 장치, 감시용 카메라, 비디오 대화 장치, 비디오 통신과 같은 실시간 통신 장치, 모바일 스트리밍 장치, 저장 매체, 캠코더, 주문형 비디오(VoD) 서비스 제공 장치, 인터넷 스트리밍 서비스 제공 장치, 3차원(3D) 비디오 장치, 화상 전화 비디오 장치, 및 의료용 비디오 장치 등에 포함될 수 있으며, 비디오 신호 및 데이터 신호를 처리하기 위해 사용될 수 있다.
또한, 본 발명이 적용되는 처리 방법은 컴퓨터로 실행되는 프로그램의 형태로 생산될 수 있으며, 컴퓨터가 판독할 수 있는 기록 매체에 저장될 수 있다. 본 발명에 따른 데이터 구조를 가지는 멀티미디어 데이터도 또한 컴퓨터가 판독할 수 있는 기록 매체에 저장될 수 있다. 상기 컴퓨터가 판독할 수 있는 기록 매체는 컴퓨터로 읽을 수 있는 데이터가 저장되는 모든 종류의 저장 장치를 포함한다. 상기 컴퓨터가 판독할 수 있는 기록 매체는, 예를 들어, 블루레이 디스크(BD), 범용 직렬 버스(USB), ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크 및 광학적 데이터 저장 장치를 포함할 수 있다. 또한, 상기 컴퓨터가 판독할 수 있는 기록 매체는 반송파(예를 들어, 인터넷을 통한 전송)의 형태로 구현된 미디어를 포함한다. 또한, 인코딩 방법으로 생성된 비트 스트림이 컴퓨터가 판독할 수 있는 기록 매체에 저장되거나 유무선 통신 네트워크를 통해 전송될 수 있다.
이상, 전술한 본 발명의 바람직한 실시예는, 예시의 목적을 위해 개시된 것으로, 당업자라면 이하 첨부된 특허청구범위에 개시된 본 발명의 기술적 사상과 그 기술적 범위 내에서, 다양한 다른 실시예들을 개량, 변경, 대체 또는 부가 등이 가능할 것이다.

Claims (15)

  1. 그래프 기반 변환을 이용하여 비디오 신호를 인코딩하는 방법에 있어서,
    현재 블록에 대한 컨텍스트 정보를 확인하는 단계, 여기서 상기 컨텍스트 정보는 상기 현재 블록 또는 주변 블록에 대한 예측 모드를 포함함;
    상기 현재 블록 또는 상기 주변 블록에 대한 예측 모드에 대응되는 예측 방향 각도를 이용하여 상기 현재 블록 내 픽셀 간 에지 가중치를 계산하는 단계;
    상기 에지 가중치에 기초하여 생성된 라인 그래프로부터 변환 커널을 유도하는 단계; 및
    상기 변환 커널을 이용하여 상기 현재 블록에 대해 변환을 수행하는 단계
    를 포함하는 것을 특징으로 하는 방법.
  2. 제1항에 있어서, 상기 방법은,
    상기 변환 커널에 대응되는 변환 인덱스를 인코딩하는 단계
    를 더 포함하는 것을 특징으로 하는 방법.
  3. 제1항에 있어서,
    상기 에지 가중치는 상기 예측 모드 또는 상기 예측 방향 각도에 따라 설정된 가중치 함수를 이용하여 계산되는 것을 특징으로 하는 방법.
  4. 제3항에 있어서,
    상기 예측 방향 각도는 예측 방향과 가로 축이 이루는 각도를 나타내고, 상기 에지 가중치는 상기 각도에 대한 코사인(cosine) 값을 나타내는 것을 특징으로 하는 방법.
  5. 제1항에 있어서,
    상기 에지 가중치는 연결된 에지 가중치들의 최소값(minimum value), 합(summation), 곱(multiplication), 또는 평균값 중 적어도 하나에 의해 계산되는 것을 특징으로 하는 방법.
  6. 제1항에 있어서,
    상기 라인 그래프는 적어도 1개 이상의 라인 단위의 부분 그래프(partial graph)를 포함하는 것을 특징으로 하는 방법.
  7. 제6항에 있어서,
    상기 라인 그래프가 1개 라인의 부분 그래프를 나타내는 경우, 상기 변환 커널은 상기 라인 그래프에 대응되는 1차원 분리 가능한 그래프 기반 변환을 나타내는 것을 특징으로 하는 방법.
  8. 그래프 기반 변환을 이용하여 비디오 신호를 디코딩하는 방법에 있어서,
    상기 비디오 신호로부터 변환 인덱스(transform index)를 파싱하는 단계;
    타겟 유닛에 대한 컨텍스트 정보를 획득하는 단계, 여기서 상기 컨텍스트 정보는 현재 블록 또는 주변 블록에 대한 예측 모드를 포함함;
    상기 변환 인덱스 또는 상기 컨텍스트 정보 중 적어도 하나에 기초하여 역변환 커널을 획득하는 단계; 및
    상기 역변환 커널을 이용하여 상기 현재 블록에 대해 역변환을 수행하는 단계
    를 포함하는 것을 특징으로 하는 방법.
  9. 제8항에 있어서,
    상기 역변환 커널은 상기 현재 블록의 에지 가중치로 표현되는 라인 그래프에 기초하여 생성된 것이고, 상기 에지 가중치는 상기 현재 블록 또는 상기 주변 블록에 대한 예측 모드에 대응되는 예측 방향 각도를 이용하여 계산된 것을 특징으로 하는 방법.
  10. 제9항에 있어서,
    상기 예측 방향 각도는 예측 방향과 가로 축이 이루는 각도를 나타내고, 상기 에지 가중치는 상기 각도에 대한 코사인(cosine) 값을 나타내는 것을 특징으로 하는 방법.
  11. 제9항에 있어서,
    상기 에지 가중치는 연결된 에지 가중치들의 최소값(minimum value), 합(summation), 곱(multiplication), 또는 평균값 중 적어도 하나에 의해 계산된 것을 특징으로 하는 방법.
  12. 제9항에 있어서,
    상기 라인 그래프는 적어도 1개 이상의 라인 단위의 부분 그래프(partial graph)를 포함하는 것을 특징으로 하는 방법.
  13. 제12항에 있어서,
    상기 라인 그래프가 1개 라인의 부분 그래프를 나타내는 경우, 상기 역변환 커널은 상기 라인 그래프에 대응되는 1차원 분리 가능한 역-그래프 기반 변환을 나타내는 것을 특징으로 하는 방법.
  14. 그래프 기반 변환을 이용하여 비디오 신호를 인코딩하는 장치에 있어서,
    현재 블록에 대한 컨텍스트 정보를 확인하고, 상기 현재 블록 또는 상기 주변 블록에 대한 예측 모드에 대응되는 예측 방향 각도를 이용하여 상기 현재 블록 내 픽셀 간 에지 가중치를 계산하는 그래프 신호 생성부;
    상기 에지 가중치에 기초하여 생성된 라인 그래프로부터 변환 커널을 유도하는 변환 행렬 결정부; 및
    상기 변환 커널을 이용하여 상기 현재 블록에 대해 변환을 수행하는 변환 수행부
    를 포함하되,
    상기 컨텍스트 정보는 상기 현재 블록 또는 주변 블록에 대한 예측 모드를 포함하는 것을 특징으로 하는 장치.
  15. 그래프 기반 변환을 이용하여 비디오 신호를 디코딩하는 장치에 있어서,
    상기 비디오 신호로부터 변환 인덱스(transform index)를 파싱하는 파싱부; 및
    타겟 유닛에 대한 컨텍스트 정보를 획득하고, 상기 변환 인덱스 또는 상기 컨텍스트 정보 중 적어도 하나에 기초하여 역변환 커널을 획득하고, 상기 역변환 커널을 이용하여 상기 현재 블록에 대해 역변환을 수행하는 역변환부
    를 포함하되,
    상기 컨텍스트 정보는 현재 블록 또는 주변 블록에 대한 예측 모드를 포함하는 것을 특징으로 하는 장치.
PCT/KR2016/007972 2015-07-21 2016-07-21 그래프 기반 변환을 이용하여 비디오 신호를 처리하는 방법 및 장치 WO2017014585A1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US15/746,158 US20180220158A1 (en) 2015-07-21 2016-07-21 Method and device for processing video signal using graph-based transform

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201562194819P 2015-07-21 2015-07-21
US62/194,819 2015-07-21

Publications (1)

Publication Number Publication Date
WO2017014585A1 true WO2017014585A1 (ko) 2017-01-26

Family

ID=57834140

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2016/007972 WO2017014585A1 (ko) 2015-07-21 2016-07-21 그래프 기반 변환을 이용하여 비디오 신호를 처리하는 방법 및 장치

Country Status (2)

Country Link
US (1) US20180220158A1 (ko)
WO (1) WO2017014585A1 (ko)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112543323A (zh) * 2019-09-23 2021-03-23 杭州海康威视数字技术股份有限公司 一种编解码方法、装置及其设备
CN113365052A (zh) * 2019-03-09 2021-09-07 杭州海康威视数字技术股份有限公司 进行编码和解码的方法、解码端、编码端和系统
CN115379211A (zh) * 2018-09-02 2022-11-22 Lg电子株式会社 对视频信号进行解码/编码的方法和计算机可读存储介质

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
ITUB20153724A1 (it) * 2015-09-18 2017-03-18 Sisvel Tech S R L Metodi e apparati per codificare e decodificare immagini o flussi video digitali
IT201600122898A1 (it) * 2016-12-02 2018-06-02 Ecole Polytechnique Fed Lausanne Epfl Metodi e apparati per codificare e decodificare immagini o flussi video digitali
US11134272B2 (en) * 2017-06-29 2021-09-28 Qualcomm Incorporated Memory reduction for non-separable transforms
CN114885163B (zh) * 2018-09-02 2024-04-23 Lg电子株式会社 用于对图像信号编码和解码的方法及计算机可读记录介质
JP7245323B2 (ja) * 2018-09-23 2023-03-23 エルジー エレクトロニクス インコーポレイティド ビデオ信号の符号化/復号化方法及びそのための装置
US11425374B2 (en) * 2019-03-12 2022-08-23 FG Innovation Company Limited Device and method for coding video data
EP3771213A1 (en) * 2019-07-24 2021-01-27 Deutsche Telekom AG System and method to estimate blockiness in transform-based video encoding
US11405647B2 (en) * 2020-02-18 2022-08-02 Tencent America LLC Primary transforms using 8-bit and 10-bit cores
US11272212B2 (en) * 2020-05-12 2022-03-08 Tencent America LLC Tuned line graph transforms
US11785254B2 (en) * 2020-05-29 2023-10-10 Tencent America LLC Implicit mode dependent primary transforms
CN117296323A (zh) * 2021-04-22 2023-12-26 抖音视界有限公司 基于特征的变换选择

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110093532A (ko) * 2010-02-12 2011-08-18 삼성전자주식회사 그래프 기반 화소 예측을 이용한 영상 부호화/복호화 시스템 및 방법 그리고 깊이 맵 부호화 시스템 및 방법
JP2014007477A (ja) * 2012-06-21 2014-01-16 Research Organization Of Information & Systems 濃淡画像符号化装置及び復号装置
WO2015009039A1 (ko) * 2013-07-15 2015-01-22 삼성전자 주식회사 비디오 코딩에서 사선 모드의 인트라 예측 향상을 위한 방법
KR20150046353A (ko) * 2010-07-09 2015-04-29 퀄컴 인코포레이티드 인트라 예측 모드들의 서브세트 및 대응하는 방향 변환들을 이용한 비디오 코딩

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7216140B1 (en) * 2000-09-30 2007-05-08 Intel Corporation Efficient implementation of n-point DCT, n-point IDCT, SA-DCT and SA-IDCT algorithms
US7565021B2 (en) * 2005-03-01 2009-07-21 Microsoft Corporation Efficient implementation of block-based transform on graphics processing unit
KR20110135787A (ko) * 2010-06-11 2011-12-19 삼성전자주식회사 엣지-적응 변환을 이용한 영상 부호화/복호화 시스템 및 방법
WO2012044124A2 (ko) * 2010-09-30 2012-04-05 한국전자통신연구원 영상 부호화 방법과 복호화 방법 및 이를 이용한 영상 부호화 장치와 복호화 장치
CN104378639B (zh) * 2011-10-19 2018-05-04 株式会社Kt 解码视频信号的方法
EP3300365B1 (en) * 2012-06-11 2019-09-04 Samsung Electronics Co., Ltd. Encoding and decoding videos sharing sao parameters according to a color component
US9003263B2 (en) * 2013-01-15 2015-04-07 Lsi Corporation Encoder and decoder generation by state-splitting of directed graph
JP6341650B2 (ja) * 2013-11-20 2018-06-13 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
US10282469B2 (en) * 2014-03-25 2019-05-07 Oath Inc. System and method for summarizing a multimedia content item
WO2016190690A1 (ko) * 2015-05-26 2016-12-01 엘지전자(주) 적응적인 분리가능한 그래프 기반 변환을 이용하여 비디오 신호를 처리하는 방법 및 장치
US10499061B2 (en) * 2015-07-15 2019-12-03 Lg Electronics Inc. Method and device for processing video signal by using separable graph-based transform

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110093532A (ko) * 2010-02-12 2011-08-18 삼성전자주식회사 그래프 기반 화소 예측을 이용한 영상 부호화/복호화 시스템 및 방법 그리고 깊이 맵 부호화 시스템 및 방법
KR20150046353A (ko) * 2010-07-09 2015-04-29 퀄컴 인코포레이티드 인트라 예측 모드들의 서브세트 및 대응하는 방향 변환들을 이용한 비디오 코딩
JP2014007477A (ja) * 2012-06-21 2014-01-16 Research Organization Of Information & Systems 濃淡画像符号化装置及び復号装置
WO2015009039A1 (ko) * 2013-07-15 2015-01-22 삼성전자 주식회사 비디오 코딩에서 사선 모드의 인트라 예측 향상을 위한 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
PAVEZ, EDUARDO ET AL.: "GTT: Graph Template Transforms with Applications to Image Coding", PICTURE CODING SYMPOSIUM (PCS, 3 June 2015 (2015-06-03), Cairns Australia, XP055294452 *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115379211A (zh) * 2018-09-02 2022-11-22 Lg电子株式会社 对视频信号进行解码/编码的方法和计算机可读存储介质
CN113365052A (zh) * 2019-03-09 2021-09-07 杭州海康威视数字技术股份有限公司 进行编码和解码的方法、解码端、编码端和系统
CN113365052B (zh) * 2019-03-09 2022-03-25 杭州海康威视数字技术股份有限公司 进行编码和解码的方法、解码端、编码端和系统
CN112543323A (zh) * 2019-09-23 2021-03-23 杭州海康威视数字技术股份有限公司 一种编解码方法、装置及其设备
CN112543323B (zh) * 2019-09-23 2022-05-31 杭州海康威视数字技术股份有限公司 一种编解码方法、装置及其设备

Also Published As

Publication number Publication date
US20180220158A1 (en) 2018-08-02

Similar Documents

Publication Publication Date Title
WO2017014585A1 (ko) 그래프 기반 변환을 이용하여 비디오 신호를 처리하는 방법 및 장치
WO2018128323A1 (ko) 이차 변환을 이용한 비디오 신호의 인코딩/디코딩 방법 및 장치
WO2016129872A1 (ko) 그래프 기반 변환을 이용하여 비디오 신호를 처리하는 방법 및 장치
WO2017010850A1 (ko) 분리 가능한 그래프 기반 변환을 이용하여 비디오 신호를 처리하는 방법 및 장치
WO2017065525A2 (ko) 영상을 부호화 또는 복호화하는 방법 및 장치
WO2016190690A1 (ko) 적응적인 분리가능한 그래프 기반 변환을 이용하여 비디오 신호를 처리하는 방법 및 장치
WO2016064185A1 (ko) 최적화 함수를 이용하여 그래프 기반 예측을 수행하는 방법 및 장치
WO2018236028A1 (ko) 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
WO2018062788A1 (ko) 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
WO2017065532A1 (ko) 비디오 신호의 인코딩, 디코딩 방법 및 장치
WO2018038554A1 (ko) 이차 변환을 이용한 비디오 신호의 인코딩/디코딩 방법 및 장치
WO2018070713A1 (ko) 크로마 성분에 대한 인트라 예측 모드를 유도하는 방법 및 장치
WO2018236031A1 (ko) 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
WO2016153146A1 (ko) 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
WO2018062880A1 (ko) 영상 처리 방법 및 이를 위한 장치
WO2019017694A1 (ko) 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
WO2018190523A1 (ko) 영상의 부호화/복호화 방법 및 이를 위한 장치
WO2018105759A1 (ko) 영상 부호화/복호화 방법 및 이를 위한 장치
WO2016195455A1 (ko) 그래프 기반 변환을 이용하여 비디오 신호를 처리하는 방법 및 장치
WO2020213944A1 (ko) 영상 코딩에서 매트릭스 기반의 인트라 예측을 위한 변환
WO2018044125A1 (ko) 레이어드 기븐스 변환을 이용하여 변환을 수행하는 방법 및 장치
WO2020180119A1 (ko) Cclm 예측에 기반한 영상 디코딩 방법 및 그 장치
WO2018124333A1 (ko) 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
WO2011071325A2 (en) Method and apparatus for encoding and decoding image by using rotational transform
WO2020213945A1 (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: 16828089

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 15746158

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 16828089

Country of ref document: EP

Kind code of ref document: A1