US20180160113A1 - Method and device for encoding and decoding intra-frame prediction - Google Patents

Method and device for encoding and decoding intra-frame prediction Download PDF

Info

Publication number
US20180160113A1
US20180160113A1 US15/579,869 US201615579869A US2018160113A1 US 20180160113 A1 US20180160113 A1 US 20180160113A1 US 201615579869 A US201615579869 A US 201615579869A US 2018160113 A1 US2018160113 A1 US 2018160113A1
Authority
US
United States
Prior art keywords
block
prediction
current
picture
adjacent
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US15/579,869
Other languages
English (en)
Inventor
Je Chang Jeong
Ki Baek Kim
Ung HWANG
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dolby Laboratories Licensing Corp
Original Assignee
Intellectual Discovery Co Ltd
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 Intellectual Discovery Co Ltd filed Critical Intellectual Discovery Co Ltd
Assigned to INTELLECTUAL DISCOVERY CO., LTD. reassignment INTELLECTUAL DISCOVERY CO., LTD. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: HWANG, UNG, KIM, KI BAEK, JEONG, JE CHANG
Publication of US20180160113A1 publication Critical patent/US20180160113A1/en
Assigned to DOLBY LABORATORIES LICENSING CORPORATION reassignment DOLBY LABORATORIES LICENSING CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: INTELLECTUAL DISCOVERY CO., LTD.
Abandoned legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques

Definitions

  • the present invention relates to an image encoding and decoding technology and, more particularly, to encoding and decoding method and device for performing a reference pixel construction and a most probable mode construction in intra prediction.
  • the present invention has been made to solve the above problems, and an object of the present invention is to provide an image encoding/decoding method that improves an intra prediction mode.
  • Another object of the present invention is to provide an image encoding/decoding device that improves an intra prediction mode.
  • An image encoding method for performing intra prediction includes determining whether a boundary pixel within an adjacent block is available as a reference pixel of the a current block in consideration of a prediction mode of each of the current block and the adjacent block, obtaining the reference pixel of the current block based on the determined result, generating a prediction block by performing intra prediction based on the obtained reference pixel, and decoding the current block using the generated prediction block.
  • the obtaining the reference pixel may be performed by obtaining the reference pixel composed of a predetermined pixel value, when the boundary pixel is determined to be unavailable as the reference pixel of the current block.
  • the determining whether the boundary pixel is available as the reference pixel may be performed by indicating whether a predefined flag takes into consideration a prediction mode of an adjacent block.
  • the determining whether the boundary pixel is available as the reference pixel may be performed by determining that the boundary pixel is available as a reference pixel of the current picture when the prediction mode of the adjacent block is intra prediction,
  • the determining whether the boundary pixel is available as the reference pixel may be performed by determining that the boundary pixel is unavailable as a reference pixel of the current picture when the prediction mode of the adjacent block is inter prediction.
  • the determining whether the boundary pixel is available as the reference pixel may be performed by determining whether the boundary pixel is available as the reference pixel of the current picture in consideration of the reference picture of the adjacent block when the prediction mode of the adjacent block is inter prediction.
  • the reference picture may be selected from a list 0 storing data for reference pictures previous to the current picture or a list 1 storing data for reference pictures subsequent to the current picture, and the current picture is selected from the list 0 or the list 1.
  • the boundary pixel may be determined to be available as a reference pixel of the current picture.
  • the reference picture of the adjacent block is not the current picture, it may be determined that the boundary pixel is unavailable as the reference pixel of the current picture
  • the boundary pixel may be determined to be available as the reference pixel of the current picture.
  • An image decoding method for performing intra prediction includes receiving a bitstream including data on prediction modes of a current block and a block adjacent of the current block, confirming the prediction mode of the adjacent block by extracting data from the bitstream received, determining whether a boundary pixel within the adjacent block is available as a reference pixel of the current block in consideration of the prediction mode of the adjacent block, obtaining the reference pixel of the current block depending on the determined result, generating a prediction block by performing intra prediction based on the obtained reference pixel, and decoding the current block using the generated prediction block.
  • the obtaining the reference pixel may be performed by obtaining the reference pixel constituted by the preset pixel value when the boundary pixel is determined to be unavailable as the reference pixel of the current block.
  • the determining whether a boundary pixel is available as a reference pixel may indicate whether a preset flag takes into consideration a prediction mode of an adjacent block
  • the determining whether a boundary pixel is available as a reference pixel may be performed by determining that the boundary pixel is available as a reference pixel of the current picture when the prediction mode of the adjacent block is intra prediction.
  • the determining whether a boundary pixel is available as a reference pixel may be performed by determining that the boundary pixel is unavailable as a reference pixel of the current picture when the prediction mode of the adjacent block is inter prediction.
  • the determining whether a boundary pixel is available as a reference pixel may be performed by determining whether the boundary pixel is available as a reference pixel of the current picture in consideration of the reference picture of the adjacent block.
  • the reference picture may be selected from a list 0 storing data for reference pictures previous to the current picture and a list 1 storing data for reference pictures subsequent to the current picture, and the current picture may be included in the list 0 or the list 1.
  • the boundary pixel is available as the reference picture of the current picture, when the reference picture of the adjacent block is the current picture.
  • the pixel in the adjacent block is unavailable as the reference picture of the current picture when the reference picture of the adjacent block is not the current picture.
  • the pixel in the adjacent block is available as the reference picture of the current picture, when the reference picture of the adjacent block is an I-picture.
  • one or more processors may receive a bitstream including data on a prediction mode of a current block and a block adjacent to the current block, extract the data from the bitstream received to confirm the prediction mode of the adjacent block, determine whether the boundary pixel within the adjacent block is available as the reference pixel of the current block in consideration of the prediction mode of the adjacent block, obtain the reference pixel of the current block based on the determined result, generate prediction block by performing intra prediction based on the obtained reference pixel, and decode the current block using the generated prediction block.
  • An image encoding method for performing intra prediction includes determining whether each of a left block and an upper block of a current block can be used for constructing a reference pixel of the current block, selecting a most probable mode MPM candidate group based on the determined result, determining redundancy of a prediction block derived from an intra prediction mode in the MPM candidate group, selecting a MPM group using prediction modes of substitute blocks adjacent to the left block or adjacent to the upper block when it is determined that the redundancy exists, and performing an intra prediction mode encoding on the current block based on the selected MPM group.
  • the determining whether or not each block can be used may be performed by determining to be unavailable when the left block and the upper block exist outside the image boundary or encoded with inter prediction, and may be determined to be available when they are otherwise.
  • the MPM candidate group may be selected from intra prediction mode for a block determined to be available among a left block and an upper block, intra-prediction mode predetermined for a block determined to be unavailable, a planar prediction mode, a prediction mode, and a DC prediction mode.
  • the determining the redundancy may be performed by determining the redundancy based on variance values computed for reference pixel values in two or more consecutive blocks among the blocks located at lower left, left, upper left, upper, and upper right of the current block, when the left block and the upper block are all available.
  • the determining the redundancy may include selecting intra prediction modes constructed by referring only to boundary pixels between an unavailable block and the current block when at least one of the left block and the upper block is unavailable, and determining that the redundancy exists when at least two of the prediction modes selected are included in the MPM candidate group.
  • the substitute blocks may be selected from the adjacent blocks located at lower left, upper left, and upper right of the current block.
  • the substitute block may be selected with a clockwise or counterclockwise priority among the one or more blocks.
  • the substitute block may be selected with a clockwise or counterclockwise priority among the adjacent blocks located at lower left, upper left, and upper right of the current block.
  • an image decoding method for performing intra prediction may include extracting data on whether a prediction mode for a current block is included in a most probable mode MPM group from received bitstream, determining whether a prediction mode for the current block is included in the MPM group based on the data, extracting MPM group index data of the current block from the received bitstream when it is determined that the prediction mode for the current block is included in the MPM group, confirming the prediction mode for the current block in the MPM group based on the extracted MPM group index data, and performing intra prediction on the current block based on the confirmed prediction mode.
  • the MPM group may be selected by determining whether a left block and an upper block of the current block can be used for constructing a reference pixel of the current block, selecting a most probable mode MPM candidate group based on the determined result, determining redundancy of prediction blocks derived from intra prediction modes in the MPM candidate group, and using a prediction mode of a substitute block adjacent to the left block or adjacent to the upper block when it is determined that the redundancy exists.
  • the determining whether or not the blocks can be used may be performed by determining to be unavailable when each of the left block and the upper block exists outside an image boundary or encoded with inter prediction, and may determine to be available when they are otherwise.
  • the MPM candidate group may be selected from intra prediction mode for a block determined to be available among a left block and an upper block, intra-prediction mode predetermined for a block determined to be unavailable, a planar prediction mode, a prediction mode, and a DC prediction mode.
  • the determining the redundancy of the prediction block may be performed by determining the redundancy based on variance values computed for reference pixel values in two or more consecutive blocks among the blocks located at lower left, left, upper left, upper, and upper right of the current block, when the left block and the upper block are all available.
  • the determining the redundancy of the prediction block may select an intra prediction mode constructed by referring only to boundary pixels between the unavailable block and the current block when at least one of the left block and the upper block is unavailable, and determine that the redundancy exists when at least two of the prediction modes selected are included in the MPM candidate group.
  • the substitute block may be selected from adjacent blocks located at lower left, upper left, and upper right of the current block.
  • the substitute block may be selected with a clockwise or counterclockwise priority among the one or more blocks.
  • the substitute block may be selected with a clockwise or counterclockwise priority among the adjacent blocks located at lower left, upper left, and upper right of the current block.
  • the one or more processors may extract data related to whether a prediction mode for a current block is included in a most probable mode MPM group from bitstream received, determine whether the prediction mode for the current block is included in the MPM group based on the data, extract MPM group index data of the current block from the received bitstream when it is determined that the prediction mode for the current block is included in the MPM group, confirm the prediction mode for the current block in the MPM group based on the extracted MPM group index data, and perform intra prediction on the current block based on the confirmed prediction mode.
  • the MPM group may be selected by determining whether a left block and an upper block of the current block can be used for constructing a reference pixel of the current block, selecting a MPM candidate group based on the determined result, determining redundancy of the prediction block derived from an intra prediction mode in the MPM candidate group, and using a prediction mode of a substitute block adjacent to the left block or adjacent to the upper block when it is determined that the redundancy exists.
  • the determining whether or not the blocks can be used may be performed by determining to be unavailable when each of the left block and the upper block exist outside an image boundary or encoded with inter prediction, and may determine to be available when they are otherwise.
  • the determining the redundancy of the prediction block may select intra prediction mode constructed by referring only to boundary pixels between the unavailable block and the current block when at least one of the left block and the upper block is unavailable, and determine that the redundancy exists when at least two of the prediction modes selected are included in the MPM candidate group.
  • the encoding efficiency of the picture can be improved by increasing the accuracy of the prediction.
  • FIG. 1 is a conceptual view of an image encoding and decoding system according to an embodiment of the present invention.
  • FIG. 2 is a construction view of an image encoding device according to an embodiment of the present invention.
  • FIG. 3 is a construction view of an image decoding device according to an embodiment of the present invention.
  • FIG. 4 is an exemplary view illustrating an inter prediction of a P-slice in an image encoding and decoding method according to an embodiment of the present invention.
  • FIG. 5 is an exemplary view illustrating an inter prediction of a B-slice in the image encoding and decoding method according to the embodiment of the present invention.
  • FIG. 6 is an exemplary view illustrating a case where a prediction block is generated in a single direction in the image encoding and decoding method according to an embodiment of the present invention.
  • FIG. 7 is an exemplary view of construction of a reference picture list in the image encoding and decoding method according to an embodiment of the present invention.
  • FIG. 8 is an exemplary view for illustrating another example of a case where a inter prediction is performed from a reference picture list in the image encoding and decoding method according to an embodiment of the present invention.
  • FIG. 9 is an exemplary view illustrating intra prediction in the image encoding method according to an embodiment of the present invention.
  • FIG. 10 is an exemplary view illustrating a prediction principle in a P-slice or a B-slice in the image encoding method according to an embodiment of the present invention.
  • FIG. 11 is an exemplary view illustrating a process of obtaining a prediction block.
  • FIG. 12 is an exemplary view illustrating a main procedure of the image encoding method according to an embodiment of the present invention, using a syntax in a coding unit.
  • FIG. 13 is an exemplary view illustrating an example in which a symmetric type division or asymmetric type division is supported as inter prediction when a prediction block is generated through block matching in the current picture.
  • FIG. 14 is an exemplary view illustrating that 2N ⁇ 2N and N ⁇ N can be supported in inter prediction.
  • FIG. 15 is an exemplary view illustrating an encoding mode of adjacent blocks in intra prediction according to an embodiment of the present invention.
  • FIG. 16 a is an exemplary view illustrating whether a reference pixel is used or not considering an encoding mode of adjacent blocks in intra prediction according to an embodiment of the present invention.
  • FIG. 16 b is an exemplary diagram illustrating whether a reference pixel is used or not without considering a coding mode of adjacent blocks in intra prediction according to an embodiment of the present invention.
  • FIG. 17 is another exemplary view illustrating an encoding mode of adjacent blocks in intra prediction according to an embodiment of the present invention.
  • FIG. 18 a is an exemplary view illustrating a case in which an encoding mode of adjacent blocks is intra prediction in intra prediction according to an embodiment of the present invention.
  • FIG. 18 b is an exemplary view illustrating a case in which an encoding mode of adjacent blocks and a reference picture are considered, in intra prediction according to an exemplary embodiment of the present invention.
  • FIG. 18 c is another exemplary view illustrating a case in which an encoding mode of adjacent blocks is not considered, in intra prediction according to an embodiment of the present invention.
  • FIG. 19 a is an exemplary view illustrating a method of obtaining a reference pixel when available adjacent blocks are at a lower left end.
  • FIG. 19 b is an exemplary view illustrating a method of obtaining a reference pixel when available adjacent blocks are at an upper right end.
  • FIG. 19 c is an exemplary view illustrating a method of obtaining a reference pixel when available adjacent blocks are at a lower left end and an upper right end.
  • FIG. 19 d is an exemplary view illustrating a method of obtaining a reference pixel when available adjacent blocks are at a lower left end and an upper right end.
  • FIG. 20 is a flowchart of an image encoding method according to an embodiment of the present invention.
  • FIG. 21 is an exemplary diagram illustrating an intra prediction mode of HEVC.
  • FIG. 22 a is an exemplary view illustrating reference pixels used for predicting the current block in a reference pixel construction step.
  • FIG. 22 b is an exemplary view illustrating that additional pixels of an adjacent block are included in a reference pixel candidate group.
  • FIGS. 23 a , 23 b , 24 a , and 24 b are exemplary views illustrating various mode directions for the current block having a wider reference pixel capable of being obtained in a reference pixel construction step.
  • FIG. 25 is a flowchart illustrating processes in which the most probable mode is determined for a general current prediction unit (or prediction block).
  • FIG. 26 is an exemplary view of determining a prediction mode for the current prediction unit (or block).
  • FIG. 27 is an exemplary view of grouping prediction modes
  • FIGS. 28 to 32 are exemplary views of a case in which a MPM is constructed for a prediction mode using adjacent blocks other than the upper and left blocks.
  • FIG. 33 is an exemplary view of a case in which the most probable mode (MPM) is constructed as a substitute block when both the current block and adjacent blocks are available.
  • MPM most probable mode
  • FIG. 34 is a flowchart illustrating an image encoding method for performing intra prediction according to an embodiment of the present invention.
  • first, second, A, B, and the like may be used to describe various components, but the components should not be limited by these terms. The terms are used only for the purpose of distinguishing one component from another.
  • first component may be referred to as a second component, and similarly, the second component may also be referred to as a first component.
  • second component may also be referred to as a first component.
  • the term “and/or” includes any combination of a plurality of related listed items or any of a plurality of related listed items.
  • a moving picture can be composed of a series of pictures, and each picture can be divided into a predetermined area such as a block.
  • the divided area may be referred to as various sizes or terms such as a coding tree unit (CTU), a coding unit (CU), a prediction unit (PU), and a transform unit (TU) as well as a block.
  • Each unit may be constructed with one luminance block and two color difference blocks, which may be differently constructed according to the color format.
  • sizes of the luminance block and the color difference block can be determined according to the color format. For example, in the case of 4:2:0, the size of the color difference block may have a length of 1 ⁇ 2 of a width and a height of the luminance block.
  • a picture, a block, or a pixel referenced when encoding or decoding a current block or a current pixel are referred to as a reference picture, a reference block, or a reference pixel. It will be understood by those skilled in the art to which this embodiment belongs that the term “picture” described below may be used in place of other terms having equivalent meanings such as image, frame, and the like.
  • FIG. 1 is a conceptual diagram of an image encoding and decoding system according to an embodiment of the present invention.
  • an image encoding device 12 and a decoding device 11 may be implemented by a user terminal such as a personal computer (PC), a notebook computer, a personal digital assistant (PDA), a portable multimedia player (PMP), a PlayStation Portable (PSP), a wireless communication terminal, a smart phone, a TV, and the like, or a server terminal such as an application server and a service server, and may include a communication device such as a communication modem for performing communication with various machines or a wired/wireless communication network, a memory 18 for encoding or decoding an image or storing various programs and data for inter- or intra-prediction for encoding or decoding, a processor 14 for computing and controlling via a program execution, and the like.
  • a user terminal such as a personal computer (PC), a notebook computer, a personal digital assistant (PDA), a portable multimedia player (PMP), a PlayStation Portable (PSP), a wireless communication terminal, a smart phone, a TV, and the like, or a server terminal such as
  • the video encoded by the video encoding device 12 as a bitstream can be transmitted to the video decoding device and then decrypted by the video decoding device to be reconstructed and reproduced as an image, through a wired or wireless communication network such as the Internet, a local area wireless communication network, a wireless LAN network, a WiBro network, a mobile communication network, or the like in real time or non-real time, or various communication interfaces such as a cable, a universal serial bus (USB), and the like.
  • a wired or wireless communication network such as the Internet, a local area wireless communication network, a wireless LAN network, a WiBro network, a mobile communication network, or the like in real time or non-real time, or various communication interfaces such as a cable, a universal serial bus (USB), and the like.
  • a wired or wireless communication network such as the Internet, a local area wireless communication network, a wireless LAN network, a WiBro network, a mobile communication network, or the like in real time or
  • an image encoded by a video encoding device as a bitstream may be transmitted from an encoding device to a decoding device through a computer-readable recording medium.
  • FIG. 2 is a block diagram of an image encoding device according to an embodiment of the present invention.
  • FIG. 3 is a block diagram of an image decoding device according to an embodiment of the present invention.
  • An image encoding device 20 includes a prediction unit 200 , a subtract unit 205 , a transform unit 210 , a quantization unit 215 , a dequantization unit 220 , an inverse-transform unit 225 , an adding unit 230 , a filter 235 , a decoded picture buffer 240 , and an entropy encoding unit 245 , as shown in FIG. 2 .
  • An image decoding device 30 includes an entropy decoding unit 305 , a prediction unit 310 , a dequantization unit 315 , an inverse-transform unit 320 , an adding unit 325 , a filter unit 330 , and a decoded picture buffer 335 , as shown in FIG. 3 .
  • the image encoding device 20 and the image decoding device 30 may be separately configured, but they can be combined into one image encoding and decoding device according to the implementation.
  • the prediction unit 200 , the dequantization unit 220 , the inverse-transform unit 225 , the addition unit 230 , the filter 235 , and the memory 240 of the image encoding device 20 are substantially the same technical elements as the prediction unit 310 , the dequantization unit 315 , the inverse-transform unit 320 , the adding unit 325 , the filter unit 330 , and the memory 335 of the image decoding device 30 in an order disclosed, in which they may include the same structure or may be implemented to perform at least the same function.
  • the entropy encoding part 245 may correspond to the entropy decoding unit 305 when the entropy encoding part 245 performs its function reversely. Therefore, in the following description of the technical elements and their operating principles, a duplicate description of the corresponding technical elements will be omitted.
  • the image decoding device 30 corresponds to a computing device that applies the image encoding method performed in the image encoding device 20 to decoding, the following description will focus on the image encoding device 20 .
  • the computing device may include a memory that stores a program or a software module implementing the image encoding method and/or the image decoding method, and a processor that is coupled to the memory and executes the program.
  • the image encoding device may be referred to as an encoder, and the image decoding device may be referred to as a decoder.
  • the image encoding device 20 may further include a division unit.
  • the division unit divides the input image into blocks (M ⁇ N) of a predetermined size.
  • M or N is any natural number greater than one.
  • the division unit may be constructed with a picture division unit and a block division unit.
  • a size or a type of the block can be determined according to characteristics and resolution of the image, and the size or the type of the block supported through the picture division unit may be an M ⁇ N square type (256 ⁇ 256, 128 ⁇ 128, 64 ⁇ 64, 32 ⁇ 32, 16 ⁇ 16, 8 ⁇ 8, 4 ⁇ 4, etc.) in which a horizontal length and a vertical length are represented as powers of 2, or an M ⁇ N rectangular type.
  • the input image can be divided into 256 ⁇ 256 for an 8 k UHD image having a high resolution, 128 ⁇ 128 for a 1080p HD image, 16 ⁇ 16 for a WVGA image, and the like.
  • Information on the size or the type of such a block can be set as units of a sequence, a picture, a slice, or the like, and related information can be transmitted to the decoder. That is, it may be set in units of a sequence parameter set, a picture parameter set, a slice header, or a combination thereof.
  • a sequence indicates a constituent unit constituted by collecting a number of related scenes.
  • a picture is referred to as a series of luminance (Y) components or a total of luminance+chrominance (Y, Cb, Cr) components in one scene or picture, and a range of one picture may be one frame or one field.
  • a slice can refer to one independent slice segment and a number of dependent slice segments that are in the same access unit.
  • An access unit refers to as a set of network abstraction layer (NAL) units associated with a single coded picture.
  • the NAL unit is a syntax structure in which video compressed bitstream is constructed in a network-friendly format in H.264/AVC and HEVC standards.
  • one slice unit is constructed as one NAL unit, and a set of NALs or NALs constituting one frame is considered as one access unit in system standards.
  • the information related to the size or the type (M ⁇ N) of the block can be made by an explicit flag, and specifically can include block type information, one length information when the block is a square, each length information when the block is a rectangular, or the difference value information between a width and a length.
  • information related to m and n can be encoded by various methods such as unary binarization and truncated-type unary binarization to cause related information to be transmitted to the decoding device.
  • the encoder or decoder may follow preset default settings.
  • the block type may be set as a square type, which is a default setting.
  • the information may be obtained from a default value related to the minimum allowable division size Minblksize that is preset.
  • the size or the type of the block in the picture division unit can be explicitly transmitted as related information from the encoder or the decoder, or implicitly determined according to characteristics and resolution of the image, or the like.
  • the block that is divided and determined through the picture division unit can be used as a basic coding unit.
  • the block divided and determined by the picture division unit may be a minimum unit constituting a high level unit such as a picture, a slice, and a tile, and may be a maximum unit of blocks such as a encoding block, a prediction block, a transform block, a quantization block, an entropy block, and an in-loop filtering block, but some blocks are not limited thereto and may be exceptional.
  • some blocks such as an in-loop filtering block may be applied as a unit larger than the size of the block described above.
  • the block division unit performs division on the blocks such as coding, prediction, conversion, quantization, entropy, and in-loop filter.
  • the division unit is included in each component to perform a function thereof.
  • the transform unit 210 may include a transform block division unit and the quantization unit 215 may include a quantization block division unit.
  • the size or the type of an initial block in the block division unit may be determined by the division result of a block of a previous level or higher level. For example, in the case of an encoding block, a block obtained through a picture division unit which is a previous stage can be set as an initial block.
  • a block obtained through a division process of an encoding block which is a higher level of the prediction block may be set as an initial block.
  • a block obtained through a dividing process of an encoding block, which is a higher level of the transform block may be set as an initial block.
  • the condition for determining the size or the type of the initial block is not always fixed, and a part may be changed or there are exceptional cases.
  • the division process of the current level for example, whether the division is possible or not, a type of divisible block, and the like
  • a combination of at least one factors such as division state of block of previous level or upper level (for example, a size of the encoding block, a type of the encoding block, and the like) and a setting condition of the current level (for example, a size of the transform block supported, a type of the transform block, and the like).
  • the block division unit may support a quad tree based division scheme. That is, the block can be divided into four blocks each having a length of 1 ⁇ 2 in horizontal and vertical lines in the block before division. This means that the division may be repeatedly performed until it reaches a permissible division depth limit dep_k (dep_k means the number of permissible division, a size of the block in the permissible division depth limit is M>>k, N>>k).
  • dep_k means the number of permissible division
  • a size of the block in the permissible division depth limit is M>>k, N>>k).
  • the quad tree division and the binary tree division may be a symmetric division or an asymmetric division, and it may be determined which division scheme is selected according to the setting of an encoder or a decoder.
  • the symmetric division scheme will be mainly described in the image encoding method of the present invention.
  • the division flag may indicate whether or not each block is divided. If the corresponding value is 1, the division is performed, and if the value is 0, the division is not performed. Alternatively, if the corresponding value is 1, the division is performed and additional division is allowed, and if the value is 0, the division is not performed and additional division is not allowed. Depending on conditions such as a minimum allowable division size and an allowable division depth limit, the flag may consider only whether the division is performed and may not consider whether additional division is performed.
  • the division flag can be used in a quad tree division, and also in a binary tree division.
  • the division direction may be determined according to a division depth, an encoding mode, a prediction mode, a size, a type, and a sort of the block (one of encoding, prediction, transform, quantization, entropy, in-loop filter, and the like, or one of luminance and chrominance) and at least one of factors such as a slice type, a division allowable depth limit, minimum and maximum allowable division sizes, or a combination thereof.
  • the block may be divided by 1 ⁇ 2 only in the horizontal direction of the block, or divided by 1 ⁇ 2 only in the vertical direction.
  • the horizontal division is supported
  • the current division depth (dep_curr) is smaller than the allowable division depth limit to allow additional division to be performed
  • the division flag is allocated to 1 bit so that the horizontal division is performed when the corresponding value is 1 and further division is not performed when the value is 0.
  • the division depth may be one division depth for the quad tree division and the binary tree division, and each division depth for the quad tree division and the binary tree division.
  • the allowable division depth limit may be one allowable division depth limit for the quad tree division and the binary tree division, and each allowable division depth limit for the quad tree division and the binary tree division.
  • the division flag is assigned to 1 bit so that the vertical division is performed when the value is 1 and further division is not performed if the value is 0.
  • flags (div_h_flag, div_v_flag) for horizontal division or vertical division can be respectively supported, and binary division can be supported according to the flag.
  • the horizontal division flag (div_h_flag) or the vertical division flag (div_v_flag) indicates whether or not to allow horizontal or vertical division of each block.
  • the horizontal or vertical division is performed when the horizontal division flag (div_h_flag) or the vertical division flag is 1, and the horizontal or vertical division is not performed when the flag is 0.
  • each flag is 1, the horizontal or vertical division is performed and additional horizontal or vertical division is allowed.
  • the horizontal or vertical division is not performed, and further horizontal or vertical division may not be allowed.
  • the flag may consider whether or not to perform division, or may not consider whether or not to perform additional division, according to conditions such as the minimum allowable division size and the allowable division depth limit.
  • flags (div_flag/h_v_flag) for horizontal division or vertical division may be supported and binary division may be supported according to the flag.
  • the division flag (div_flag) may indicate whether or not perform horizontal or vertical division
  • the division direction flag (h_v_flag) may indicate horizontal or vertical division direction. The division is performed and horizontal or vertical division is performed according to division direction flag (h_v_flag) when division flag (div_flag) is 1, and the horizontal or vertical division is not performed when the value is 0.
  • horizontal or vertical division is performed according to the horizontal division flag (h_v_flag) and additional horizontal or vertical division is allowed.
  • the flag may consider whether or not to perform division and not consider whether or not to perform additional division, according to conditions such as the minimum allowable division size and the allowable division depth limit.
  • division flags can support horizontal and vertical division respectively, and also support the binary tree division in accordance with the flags. Also, when the division direction is predetermined, only one of the two division flags may be used as in the above example, or both of the division flags may be used.
  • the possible types of blocks can be divided into any one of M ⁇ N, M/2 ⁇ N, M ⁇ N/2, and M/2 ⁇ N/2.
  • the flags can be encoded as 00, 01, 10, and 11 (in order of div_h_flag/div_v_flag).
  • the above case is an example of setting in which the division flags may be overlapped, but setting in which the division flags may not be overlapped.
  • a division block type may be divided into M ⁇ N, M/2 ⁇ N, and M ⁇ N/2, and in this case the above flags are encoded as 00, 01, 10 (in order of div_h_flag/div_v_flag), or encoded as 00, 10, and 11 (in order of div_flag/h_v_flag, h_v_flag is a flag indicating the division direction is horizontal or vertical).
  • the overlap means that both horizontal division and vertical division are performed at the same time.
  • the quad tree division and the binary tree division described above can be used either singly or in combination according to setting of the encoder or the decoder. For example, the quad tree or the binary tree division may be determined according to the block size or type.
  • the horizontal division is performed when the block type is M ⁇ N and M is larger than N
  • the binary division may be supported according to the vertical division when the block type is M ⁇ N and N is larger than M
  • the quad tree division can be supported when the block type is M ⁇ N and N and M are the same.
  • the binary tree division may be supported if less, a quad tree division may be supported.
  • the quad tree division is supported when M or N of block (M ⁇ N) is greater than or equal to the first minimum allowable division size (Minblksize1)
  • the binary tree division may be supported when M or N of block (M ⁇ N) is greater than or equal to the second minimum allowable division size (Minblksize2).
  • a priority may be given to the first or second division method according to setting of encoder or decoder.
  • the first division method is the quad tree division
  • the second division method is the binary tree division.
  • the first minimum allowable division size (Minblksize1) is 16
  • the second maximum allowable division size (Maxblksize2) is 64
  • the block before division is 64 ⁇ 64
  • the quad tree division and the binary tree division are allowed.
  • the quad tree division is performed and additional quad tree division is allowed when the division flag (div_flag) is 1 and it may be considered that the quad tree division is not performed and quad tree division is no longer performed when the division flag (div_flag) is 1.
  • the flag may only consider whether or not perform division and may not consider whether or not perform further division depending on such conditions as the minimum allowable division size and the allowable division depth limit.
  • the division flag (div_flag) is 1, the quad tree division may be continued, since the block is divided into 4 blocks having a size of 32 ⁇ 32, which is greater than the first minimum allowable division size (Minblksize 1). If the flag is 0, no further quad tree division is performed, and the current block size (64 ⁇ 64) is within the second division support range, whereby it is possible to perform the binary tree division. If the division flag (in order of div_flag/h_v_flag) is 0, no further division is performed. If the division flag is 10 or 11, the horizontal division or vertical division can be performed.
  • the priority of the division method may be determined according to at least one of a slice type, encoding mode, luminance and chrominance component, and the like, or a combination thereof.
  • various settings can be supported depending on luminance and chrominance components.
  • the quad tree or binary tree division structure determined by the luminance component can be also used in the chrominance component without encoding or decoding additional information.
  • quad tree+binary tree division may be supported for the luminance component and quad tree division may be supported for the chrominance component when supporting independent division of the luminance component and the chrominance component.
  • the division support range may be or not be the same or prounital to luminance and chrominance components. For example, if the color format is 4:2:0, division support range of the chrominance component may be N/2 of the division support range of luminance component.
  • an I-slice can support the quad tree division
  • a P-slice can support the binary tree division
  • a B-slice can support quad tree+the binary tree division.
  • the quad tree division and the binary tree division can be set and supported according to various conditions as in the above example.
  • the above-described examples are not limited to the above-mentioned cases and may include cases where the conditions are reversed from each other, may include one or more factors mentioned in the above examples or a combination thereof, and may be also transformed into another example.
  • the allowable division depth limit can be determined according to at least one factor of a division method (quad tree, binary tree), a slice type, luminance and chrominance components, an encoding mode, and the like, or a combination thereof.
  • the division support range may be determined according to at least one factor of a division method (quad tree), a slice type, luminance and chrominance components, an encoding mode, and the like, or a combination thereof, and related information may be expressed as a maximum value and a minimum value of the division support range.
  • a division method quad tree
  • a slice type a slice type
  • luminance and chrominance components an encoding mode, and the like, or a combination thereof
  • related information may be expressed as a maximum value and a minimum value of the division support range.
  • length information of each of the maximum value and the minimum value, or difference value information between the minimum value and the maximum value can be expressed.
  • the maximum value and the minimum value are composed of powers of k (assuming k is 2)
  • the power information of the maximum and minimum values can be encoded through various binarization and transmitted to the decoding device.
  • the difference value between powers of the maximum value and the minimum value can be transmitted.
  • the information transmitted at this time may be power information of
  • information related to flags can be generated and transmitted in units such as a sequence, a picture, a slice, a tile, a block, and the like.
  • the division flags shown in the above example can represent a block division information through a quad tree or a binary tree or a mixture of two tree schemes, and a division flag can be encoded by various methods such as unary binarization and truncated-type unary binarization, thereby transmitting the related information to the decoding device.
  • the bitstream structure of the division flag for representing the division information of the block can be selected from one or more scanning methods. For example, you can construct a bitstream of division flags based on division depth order (from dep0 to dep_k), or you can construct a bitstream of division flags based on whether or not division is performed.
  • the division depth order-based method allows division information at the current level depth to be obtained based on the initial block and then division information to be obtained at the next level.
  • the method based on whether or not division is performed means that additional division information is preferentially obtained in a divided block based on the initial block, and other scanning methods not shown in the above examples may be included and selected.
  • the block division unit may generate and express index information for a block candidate group of a predefined type other than the division flag described above.
  • the type of the block candidate may include M ⁇ N, M/2 ⁇ N, M ⁇ N/2, M/4 ⁇ N, 3M/4 ⁇ N, M ⁇ N/4 M ⁇ 3N/4, M/2 ⁇ N/2, and the like, for example, as a type of division block that can be included in the block before division.
  • the index information for the division block type can be encoded by various methods such as fixed length binarization, cut truncated-type binarization, truncated-type binarization, and the like.
  • the candidate group of the division block may be determined according to at least one of factors such as division depth, encoding mode, prediction mode, size, type, sort and slice type, allowable division depth limit, and maximum and minimum allowable division sizes, and the like, or a combination thereof.
  • (M ⁇ N, M/2 ⁇ N/2) are assumed to be a candidate list 1, (M ⁇ N, M/2 ⁇ N, M ⁇ N/2, and M/2 ⁇ N/2) to a candidate list 2, (M ⁇ N, M/2 ⁇ N, M ⁇ N/2) to a candidate list 3, M ⁇ N, M/2 ⁇ N, M ⁇ N/2, M/4 ⁇ N, 3M/4 ⁇ N, M ⁇ N/4, M ⁇ 3N/4, and M/2 ⁇ N/2) to a candidate list 4.
  • division block candidates of the candidate list 3 may be supported when M ⁇ N.
  • a division block candidate of the candidate list 2 can be supported when M or N of M ⁇ N is greater than or equal to the boundary value blk_th, and a division block candidate of the candidate list 4 when the M or N is less than the boundary value blk_th.
  • the division block candidate of the candidate list 1 when M or N is equal to or greater than or equal to the first boundary value blk_th_1, the division block candidate of the candidate list 2 when M or N is less than the first boundary value blk_th_1 and greater than or equal to the second boundary value blk_th_2, and the division block candidate of the candidate list 4 when M or N is smaller than the second boundary value blk_th_2.
  • a division block candidate of the candidate list 2 can be supported, and when the encoding mode is inter prediction, a division block candidate of the candidate list 4 can be supported.
  • the bit construction according to binarization of each block may be the same or different.
  • the bit construction according to the binarization of the block candidate may vary.
  • M ⁇ N, M ⁇ N/2, and M/2 ⁇ N/2 in which binary bits of index according to M ⁇ N/2 of division block candidate group M ⁇ N, M/2 ⁇ N, M ⁇ N/2, M/2 ⁇ N/2, and the M ⁇ N/2 of the current condition may be different from each other.
  • information related to division and type of the block can be represented using one of a division flag method or a division index method.
  • the block size limit and the allowable division depth limit for supporting types of division and block may be different depending on a type of each block.
  • the encoding or decoding process of the block unit may be performed according to the processes of the prediction block determination, the transform block determination, the quantization block determination, the entropy block determination, and the in-loop filter determination, after the encoding block is determined.
  • the order of the encoding or decoding process is not always fixed, and some orders may be changed or excluded.
  • the size and type of each block are determined according to the encoding cost of each candidate of the size and type of the block, and the division related information such as image data of each determined block and size and type of each determined block can be encoded.
  • the prediction unit 200 may be implemented using a prediction module which is a software module, and may generate a prediction block using an intra prediction scheme or an inter prediction scheme for a block to be encoded.
  • the prediction block is a block which is understood to closely match the block to be encoded with terms of pixel difference, and can be determined by various methods including sum of absolute difference (SAD) and sum of square difference (SSD). Also, at this time, various syntaxes that are used in decoding the image blocks may be generated.
  • the prediction block can be classified into intra-frame block and inter-frame block depending on the encoding mode.
  • Intra prediction is a prediction technique using spatial correlation. It refers to a method of predicting a current block using reference pixels of blocks that are reconstructed by being previously encoded and decoded in the current picture. In other words, the intra prediction can use the brightness value reconstructed by prediction and reconstruction as a reference pixel in the encoder and the decoder. Intra prediction can be effective for flat areas with continuity and areas with constant directionality, and it can be used for the purpose of guaranteeing random access and preventing error diffusion because it uses spatial correlation.
  • the inter prediction uses a compression technique that removes redundancy of data by using temporal correlation by referring to an image encoded with one or more past or future pictures. That is, inter prediction can generate a prediction signal having high similarity by referring to one or more past or future pictures.
  • the encoder may search a block having a high correlation with a block to be encoded in a reference picture using the inter prediction and transmit the position information and residue signal of the selected block to a decoder, and the decoder may generate the same prediction block as the encoder using the selected information of the transmitted image and compensate the residual signal transmitted to construct the reconstructed image.
  • FIG. 4 is an exemplary view illustrating an inter prediction of a P-slice in an image encoding and decoding method according to an embodiment of the present invention.
  • FIG. 5 is an exemplary view illustrating an inter prediction of a B-slice in the image encoding and decoding method according to an embodiment of the present invention.
  • Current (t) may refer to a current picture to be encoded and may include a first reference picture t ⁇ 1 having a first temporal distance (t ⁇ 1) earlier than the POC of the current picture and a second reference picture t ⁇ 2 earlier than the first temporal distance based on a temporal flow of the picture or a picture order count POC.
  • a motion prediction is performed to find a optimal prediction block from reference pictures t ⁇ 1 and t ⁇ 2 which are encoded earlier.
  • an interpolation process is performed based on a structure in which at least one sub-pixel is arranged between two adjacent pixels, the optimal prediction block is found, and then a motion compensation is performed, thereby finding resulting prediction block.
  • the inter prediction that can be employed in the video encoding method of the present embodiment allows the prediction blocks to be generated from reference pictures t ⁇ 1 and t+1 already encoded in both directions temporally based on the current picture current(t).
  • two prediction blocks can be generated from one or more reference pictures.
  • the reference block list is constructed differently so that the prediction block may be generated from the corresponding reference picture list.
  • the reference pictures present previous to the current picture are allocated to the list 0, and the reference pictures existing subsequent to the current picture are allocated to the list 1.
  • the reference pictures existing later than the current picture can be allocated when the reference picture list 0 may not be filled up to the allowable reference picture number of the reference picture list 0.
  • the reference pictures existing later than the current picture may be allocated when the reference picture list 1 cannot be filled up to the allowable reference picture number of the reference picture list 1.
  • the reference picture list 1 is constructed, when the reference picture list 1 does not satisfy the reference picture list, the reference pictures existing before the current picture may be allocated.
  • FIG. 6 is an exemplary view illustrating a case where a prediction block is generated in a single direction in an image encoding and decoding method according to an embodiment of the present invention.
  • a prediction block can be found from a previously encoded reference picture t ⁇ 1, t ⁇ 2, and the prediction block may be also found from the areas that have been already encoded in the current picture current(t).
  • the image encoding and decoding method according to the present embodiment may be implemented such that not only the prediction block is generated from a previously encoded picture t ⁇ 1, t ⁇ 2 with temporally high correlation, but also the prediction block having a spatially high correlation is found. Finding the prediction block having such a spatially correlation can correspond to finding the prediction block in the intra prediction manner.
  • the image encoding method of the present embodiment can construct a syntax for information related to the prediction candidate that mixed with an intra prediction mode.
  • n is an arbitrary natural number
  • one mode is added to the intra prediction candidate group to support n+1 modes and the prediction mode may be encoded using M fixed bits satisfying 2M ⁇ 1 ⁇ n+1 ⁇ 2M.
  • it can be implemented to select one of the candidate groups of the prediction modes having a high probability such as most probable mode MPM of high efficiency video coding HEVC. It may also be preferentially encoded at a higher level of prediction mode encoding.
  • the video encoding method of the present embodiment may construct a syntax for related information mixed with an inter prediction mode.
  • Additional related prediction mode information may be motion or displacement related information.
  • the motion or displacement related information may include optimal candidate information among various vector candidates, a difference value between an optimal candidate vector and an actual vector, a reference direction, reference picture information, and the like.
  • FIG. 7 is an exemplary view constructed from a reference picture list in an image encoding and decoding method according to an embodiment of the present invention.
  • FIG. 8 is an exemplary view for illustrating another example of a case where an inter prediction is performed from a reference picture list in an image encoding and decoding method according to an embodiment of the present invention.
  • an image encoding method may perform inter prediction on a current block of a current picture current (t) from a reference picture list (reference list 0, reference list 1).
  • the reference picture list 0 may be constructed of a reference picture earlier than the current picture (t), in which t ⁇ 1 and t ⁇ 2 indicate reference pictures having a first temporal distance (t ⁇ 1) and a second temporal distance (t ⁇ 2) that are earlier than picture order count POC of the current picture (t) respectively.
  • the reference picture list 1 can be composed of a reference picture later than the current picture (t), in which t+1 and t+2 indicate reference pictures having the first temporal distance (t+1) and the second temporal distance (t+2) that are later than the POC of the current picture (t) respectively.
  • the above-described examples of the reference picture list construction show an example in which a reference picture list is composed of reference pictures having 1 of a difference of temporal distance (based on POC in this example), but may be constructed such that the difference in temporal distance between reference pictures is different. This can be confirmed in an example of a reference picture list construction to be described later.
  • Prediction can be performed from the reference picture in the list according to the slice type (I, P, or B).
  • the current picture can be added to the reference picture lists (reference list 0, reference list 1) to perform inter prediction encoding.
  • the reference picture list 0 may be constructed by adding a reference picture of temporal distance (t) to the reference picture earlier than the current picture (t)
  • the reference picture list 1 may be constructed by adding a reference picture of temporal distance (t) to the reference picture later than the current picture (t).
  • the reference picture previous to the current picture can be assigned to the reference picture list 0 and then the current picture (t) can be allocated to the reference picture list 0.
  • the reference picture can be assigned to the reference picture list 1 and then the current picture (t) can be allocated to the reference picture list 1.
  • the current picture (t) is allocated and then the reference picture previous to the current picture can be allocated.
  • the current picture (t) is allocated and then the reference picture subsequent to the current picture can be allocated.
  • the reference picture previous to the current picture may be allocated, the reference picture subsequent to the current picture may be allocated, and then the current picture (t) may be allocated.
  • the reference picture subsequent to the current picture can be allocated, the reference picture previous to the current picture can be allocated, and then the current picture (t) can be allocated.
  • each reference picture list (for example, add to no list, add only to list 0, add only to list 1, or add to lists 0 and 1) can be set in the encoder or decoder, and the information related thereto may be transmitted in units of a sequence, a picture, a slice, and the like.
  • the information can be encoded by methods such as fixed length binarization, cut truncated-type binarization, truncated-type binarization, and the like.
  • the image encoding and decoding method of the present embodiment allows a prediction block to be selected by performing block matching on the current picture (t), reference picture lists including related information about the prediction block to be configured, and encoding and decoding to be performed on the image by using the reference picture lists, unlike the method of FIG. 7 .
  • construction order and rules of each list, and allowable number of reference pictures of each list may be differently set, in which they may be determined according to at least one factor of whether the current picture is included in a list or not (including a current picture as a reference picture in inter prediction), a slice type, a list reconstruction parameter (which may be applied to lists 0 and 1 respectively, and may be applied to lists 0 and 1 together), a position in a group of pictures (GOP), temporal layer information (temporal id), and the like, or a combination of at least one of them, and the related information can be explicitly transmitted in a unit such as sequence, picture, and the like.
  • the reference picture list 0 can follow a list construction rule A regardless of whether the current picture is included in the list
  • the reference picture list 0 which includes current picture in the list may follow a list construction rule B
  • the reference picture list 1 can follow a list construction rule C
  • reference picture list 0 that does not include the current picture can follow a list construction rule D
  • a reference picture list 1 may follow a list construction rule E, in which B and D, and C and E of the list construction rules may be the same.
  • the list construction rules may be constructed in the same or modified manner as described in the reference picture list construction example.
  • the first allowable reference picture number when the current picture is included in the list, the first allowable reference picture number can be set, and when the current picture is not included in the list, the second allowable reference picture number can be set.
  • the first allowable reference picture number and the second allowable reference picture number may be the same or different from each other and the difference between the first allowable reference picture number and the second allowable reference picture number may be set to 1 by default.
  • all reference pictures in slice A may be a list reconstruction candidate group, and only some reference pictures in slice B may be included in a list reconstruction candidate group.
  • the slice A or B can be classified according to whether or not the current picture is included in a list, temporal layer information, a slice type, a position in a group of pictures (GOP), and the like.
  • a factor of whether or not to be included in the candidate group may be determined according to a picture order count (POC) of a reference picture or reference picture index, a reference prediction direction (earlier and later than the current picture), whether or not there is the current picture, and the like.
  • POC picture order count
  • the inter prediction can be allowed or used even in the motion estimation of the I-slice.
  • index assignment or list construction order may be different according to the slice type.
  • the priority setting of the current picture may be constructed in the same or modified manner as described in the example of the reference picture list construction.
  • Information related to the reference picture may be omitted by not constructing a reference picture list according to the slice type (for example, I-slice).
  • a prediction block may be generated through existing inter prediction, but the inter prediction information may be represented with information obtained by excluding the reference picture information from the motion information in the inter prediction mode.
  • the method of performing block matching in the current picture can determine whether or not to support the block matching depending on the slice type. For example, block matching in the current block is supported by I-slice, but not P-slice or B-slice, or other variations are possible.
  • the method of supporting block matching in the current picture may determine whether or not to support the block matching in units of a picture, a slice, a tile, etc., or based on a position in a group of pictures (GOP), temporal layer information (temporal ID), and the like.
  • Such setting information can be transmitted in units of a sequence, a picture, a slice, etc., from an image encoding process or an encoder to a decoder.
  • the setting information in the lower level unit may have a priority over the setting information in the upper level unit. For example, when the same or similar setting information is processed in a sequence, a picture, or a slice, the picture unit may have priority over the sequence unit, and the slice unit may have a priority over the picture unit.
  • FIG. 9 is an exemplary view illustrating intra prediction in an image encoding method according to an embodiment of the present invention.
  • the intra prediction method includes reference sample padding, reference sample filtering, intra prediction, and boundary filtering.
  • the reference pixel padding step may be an example of a reference pixel construction step
  • the reference pixel filtering step may be referred to as a reference pixel filter unit
  • the intra prediction may include a prediction block generating step and a prediction mode encoding step
  • the boundary filtering may be an embodiment of the post-processing filter step.
  • the intra prediction performed in the image encoding device of the present embodiment may include a reference pixel construction step, a reference pixel filtering step, a prediction block generation step, a prediction mode encoding step, and a post-processing filtering step.
  • One or some of the above processes may be omitted and other processes may be added depending on various environmental factors such as a block size, a block type, a block location, a prediction mode, a prediction method, a quantization parameter, and the order described above may be changed into a different order.
  • the reference pixel construction step, the reference pixel filtering step, the prediction block generation step, the prediction mode encoding step, and the post-processing filtering step may be implemented such that a software modules stored in a memory are executed by a processor connected to a memory. Therefore, in the following description, for convenience of description, as a function unit generated by a combination of a software module implementing each step and a processor executing it or a construction unit performing the function of the function unit, a reference pixel construction unit, a prediction block generation unit, a prediction mode encoding unit, and a post-processing filter unit will be referred to as an execution subject of each step.
  • the reference pixel construction unit constructs a reference pixel used for predicting the current block through the reference pixel padding.
  • the reference pixel padding may perform a method such as copying a value from the nearest available pixel to cause the value to be used as the reference pixel.
  • a decoded picture buffer (DPB) may be used for copying the value.
  • the intra prediction performs prediction using reference pixels of previously encoded blocks of the current picture.
  • adjacent pixels of the current block adjacent pixels of blocks such as left, upper left, lower left, upper, and upper right are mainly used as reference pixels in the reference pixel construction step.
  • the candidate group of the adjacent block for the reference pixel is only an example in which the encoding order of the block follows a raster scan or a z-scan, and adjacent pixels of blocks such as right, lower right, and lower may be also used as reference pixels in addition to the above blocks, when a scan such as a reverse z-scan is used as an encoding order scan method.
  • additional pixels other than immediately adjacent pixels may be mixed with the alternative or existing reference pixels according to a stepwise construction of the intra prediction.
  • reference pixels in a decimal unit can be generated by performing linear interpolation on the reference pixels in a integer unit.
  • the mode for performing the prediction through the reference pixels existing in a position of an integer unit includes some modes having vertical, horizontal, 45 degrees, and 135 degrees, and the process of generating reference pixels in a decimal unit for the above prediction modes is not required.
  • the prediction modes having other direction except for the above prediction mode are interpolated with interpolation accuracy of powers of 1 ⁇ 2 such as 1 ⁇ 2, 1 ⁇ 4, 1 ⁇ 8, 1/16, 1/32, and 1/64, and may have an accuracy of a multiple of 1 ⁇ 2.
  • the interpolation accuracy can be determined depending on the number of the prediction modes supported or the prediction direction of the prediction mode.
  • a fixed interpolation accuracy may be always supported in pictures, slices, tiles, blocks, etc., and an adaptive interpolation accuracy may be supported depending on size of block, type of block, prediction direction of supported modes,
  • the prediction direction of the mode can be represented by inclination information or angle information in a direction indicated by the mode based on a specific line (for example, x axis of the positive ⁇ +> on a coordinate plane).
  • linear interpolation can be performed through immediately adjacent integer pixels, but other interpolation methods can be supported.
  • one or more filter sorts and the number of taps for example, a 6-tap Wiener filter, an 8-tap Kalman filter, and the like may be supported and which interpolation is to be performed may be determined depending on a block size, a prediction direction, and the like.
  • the related information can be transmitted in units of a sequence, a picture, a slice, a block, and the like.
  • the reference pixel filter unit can perform filtering on the reference pixels for the purpose of improving a prediction efficiency by reducing remaining deterioration in the encoding process after the reference pixels are constructed.
  • the reference pixel filter unit can implicitly or explicitly determine the type of the filter and which or not apply the filtering depending on a size, a type and a prediction mode of the block. That is, even in a filter of the same tap, the filter coefficient can be determined differently depending on the filter type. For example, it is possible to use a 3-tap filter such as [1,2,1]/4 and [1,6,1]/8.
  • the reference pixel filter unit may determine whether or not the filtering is applied by determining whether or not to send bit additionally. For example, in an implied case, the reference pixel filter unit can determine whether or not the filtering is applied depending on characteristics (dispersion, standard deviation, and the like) of the pixels in peripheral reference blocks.
  • the reference pixel filter unit can determine whether or not the filtering is applied when a related flag satisfies a hiding condition predetermined in a residual coefficient, an intra prediction mode, and the like.
  • the number of taps of the filter is 3-tap such as [1,2,1]/4 for a small block (blk) and 5-tap such as [2,3,6,3,2]/16 for a large block (blk)
  • the number of times of application may be determined depending on whether or not the filtering is performed, whether or not the filtering is performed once, or whether or not filtering is performed twice.
  • the reference pixel filter unit can basically apply the filtering to the reference pixel that is the most adjacent to the current block. Additional reference pixels other than the most adjacent reference pixel may also be considered in the filtering process.
  • the filtering may be applied to additional reference pixels by replacing the nearest reference pixels, or the filtering may be applied by mixing additional reference pixels with the nearest reference pixels.
  • the filtering may be applied either fixedly or adaptively, and this may be determined depending on at least one factor of a size of the current block or a size of the adjacent block, an encoding mode of the current block or the adjacent block, a block boundary property of the current block and the adjacent block (e.g., which is a boundary of a coding unit or a boundary of a transform unit), a prediction mode or direction of the current block or the adjacent block, a prediction method of the current block or the adjacent block, a quantization parameter, and the like, or a combination thereof.
  • the determination may be made such that the encoder or decoder have the same settings (implicitly), or encoding cost is considered (explicitly).
  • the filter applied is a low pass filter.
  • the number of filter taps, the filter coefficient, whether or not a filter flag is encoded, and the number of filter application can be determined.
  • the information thereof is set in units of a sequence, a slice, a block, and the like, and related information can be transmitted to the decoder.
  • the prediction block generating unit may generate a prediction block via an extrapolation method using a reference pixel in intra prediction, an interpolation method such as an average value DC of the reference pixels or a planar mode, and copying method of the reference pixel.
  • an interpolation method such as an average value DC of the reference pixels or a planar mode
  • copying method of the reference pixel Upon copying a reference pixel, one reference pixel may be copied to generate one or more prediction pixels, or one or more reference pixels may be copied to generate one or more prediction pixels, and the number of copied reference pixels may be equal to or less than the number of prediction pixels.
  • the directional prediction method and the non-directional prediction method can be classified according to the prediction method.
  • the directional prediction method can be classified into a linear directional method and a curved directional method.
  • the linear directional method uses an extrapolation method to cause the pixels of the prediction block to be generated through the reference pixels located on the prediction direction line.
  • the curved directional method uses an extrapolation method to cause the pixels of the prediction block to be generated through the reference pixels located on the prediction direction line, and refers to a method in which a partial prediction direction of a pixel unit is allowed to be changed in consideration of a detailed directionality of a block (for example, edge ⁇ Edge>).
  • intervals between adjacent prediction modes may be equal or unequal, which may be determined according to the size or type of the block. For example, when the current block obtains a block with a size and type of M ⁇ N through a block division unit, the intervals between the prediction modes may be uniform if the M and N are the same, and the intervals between prediction modes may be non-uniform if M and N are different.
  • the modes with vertical directionality may allow a finer interval to be allocated between prediction modes close to a vertical mode (90 degrees), and a wider interval to be allocated to modes not close to the vertical mode.
  • the mode with horizontal directionality may allow a finer interval to be allocated between the prediction modes close to a horizontal mode (180 degrees), and a wider interval to be allocated to the prediction mode not close to the horizontal mode.
  • the intervals between the prediction modes can be calculated on the basis of the numerical value indicating the directionality of each mode, and the directionality of the prediction mode may be numerically expressed by inclination information or angle information of the direction.
  • the prediction block can also be generated by other methods using spatial correlation other than the above method.
  • the reference block can be generated as the prediction block by using an inter prediction method such as motion search and compensation using a current picture as a reference picture.
  • the prediction block generation step may generate the prediction block using the reference pixels according to the prediction method. That is, the prediction block can be generated through directional prediction or non-directional prediction such as extrapolation, interpolation, copying, and averaging of an existing intra prediction method according to the prediction method, the prediction block can be generated using an inter prediction method, and the prediction block may generated by other additional methods.
  • the intra prediction method can be supported under the same settings of an encoder or a decoder, and can be determined according to a slice type, a block size, a block type, and the like.
  • the intra prediction method can be supported according to at least one of the above-mentioned prediction methods or a combination thereof.
  • the intra prediction mode can be constructed according to the supported prediction method.
  • the number of intra prediction modes supported may be determined according to the prediction method, the slice type, the block size, the block type, and the like.
  • the related information can be set and transmitted in units of a sequence, a picture, a slice, a block, and the like.
  • the prediction mode encoding step performed via the prediction mode encoding may determine the mode in which the encoding cost according to each prediction mode is optimal in terms of encoding cost, as the prediction mode of the current block.
  • the prediction mode encoding unit may use one or more adjacent block modes for predicting the current block mode for the purpose of reducing the prediction mode bits.
  • the prediction modes may be included in a candidate group of the most probable mode (MPM) that is likely to be the same to the candidate block mode, and the modes of adjacent blocks can be included in the candidate group.
  • MPM most probable mode
  • the prediction modes of the blocks such as left, upper left, lower left, upper, and upper right blocks of the current block can be included in the above candidate group.
  • the candidate group of the prediction mode may be constructed depending on at least one factor of a location of the adjacent block, a priority of the adjacent block, a priority of the division block, a size or type of the adjacent block, the preset specific mode (in case of chrominance block), and the prediction mode of the luminance block, and the like, or a combination thereof, and related information may be transmitted in units of a sequence, a picture, a slice, a block, and the like.
  • the left block of adjacent blocks of the current block performs a quad tree division in the block division unit to make the division block to be three blocks
  • the prediction mode of M/2 ⁇ M/2 block can be included as a mode prediction candidate of the current block based on the block size when including M/2 ⁇ M/2, M/4 ⁇ M/4, and M/4 ⁇ M/4 blocks in top to bottom direction.
  • the upper block among the neighbor blocks of the current block performs a binary tree division in the block division unit to make the division blocks to be three
  • the prediction mode of the first N/4 ⁇ N block from the left may be included as a mode prediction candidate of the current block according to a predetermined order (priority assigned from left to right) when including N/4 ⁇ N, N/4 ⁇ N, and N/2 ⁇ N blocks from left to right direction.
  • the prediction mode adjacent to the prediction direction of the corresponding mode may be included in the mode prediction candidate group of the current block.
  • predetermined modes plane, DC, vertical, horizontal, etc.
  • a prediction mode having a high frequency of occurrence among the prediction modes of adjacent blocks may be preferentially included.
  • the priority order means not only a possibility of being included in the mode prediction candidate group of the current block, but also a possibility of being allocated a higher priority or index (that is, higher probability of being allocated fewer bits in the binarization process) in the candidate group construction.
  • the maximum number of mode prediction candidate groups of the current block is k, in which the left block is composed of m blocks whose length is smaller than a vertical length of the current block and the upper block is composed of n blocks whose length is shorter than a horizontal length of the current block, it is possible to fill the candidate group according to a predetermined order (left to right, top to bottom) if a sum (m+n) of division blocks of the adjacent blocks is greater than k, and a prediction mode of a block such as a adjacent block (left block, upper block, etc.) other than the adjacent block in the prediction mode of the adjacent block may be included in the mode prediction candidate group of the current block if a sum (m+n) of the division blocks of the adjacent blocks is greater than the maximum value k of the candidate group.
  • the above examples are not limited to the above case, but may include cases where the conditions are reversed from each other, and examples of other cases are also allowed.
  • the candidate block for predicting the current block mode is not limited to a specific block position but can utilize prediction mode information from at least one block of the blocks located on the left, upper left, lower left, upper and upper right.
  • the prediction mode candidate group of the current block can be constructed considering various factors.
  • the prediction mode encoding unit may classify a most probable mode (MPM) candidate group (referred to as candidate group 1 in this example) that is likely to be the same to the mode of the current block and a mode candidate group (referred to as candidate group 2 in this example) that is otherwise.
  • the prediction mode encoding process may be changed depending on which candidate group of the candidate groups the prediction mode of the current block belongs to.
  • the all prediction modes can be composed of the sum of the prediction mode of the candidate group 1 and the prediction mode of the candidate group 2.
  • the number of the prediction mode of the candidate group 1 and the number of the prediction modes of the candidate group 2 are determined depending on at least one factor of a total number of the prediction modes, a block type, and the like, or a combination thereof.
  • the same binarization or other binarization may be applied according to the candidate group.
  • a fixed length binarization may be applied to the candidate group 1
  • a cut truncated-type binarization may be applied to the candidate group 2.
  • the number of candidate groups is exemplified as two, it is possible to extend to, for example, a first mode candidate group having a high probability of being the same as the mode of the current block, a second mode candidate group having a high probability of being the same as the current block, and a mode candidate group that is otherwise, and also variations thereof are allowed.
  • some prediction pixels of the prediction blocks generated in the previous process may be replaced with values generated by filtering one or more reference pixels adjacent to the boundary and one or more of the prediction pixels, and the predictive pixels may be replaced with a value generated by applying a value (for example, a difference in pixel values, inclination information, etc.) obtained by digitizing characteristics between reference pixels adjacent to the block boundary to a filtering process, considering a high correlation between the reference pixel adjacent to the boundary between the current block and the adjacent block and the pixel in the current block, and other methods other than the above method and having a similar purpose (correcting some prediction pixels of a prediction block through reference pixels) may be added.
  • a value for example, a difference in pixel values, inclination information, etc.
  • a kind of filter and whether or not the filtering is applied can be implicitly or explicitly determined.
  • the position and the number of the reference pixels and the current pixels used in the post-processing filter, a kind of prediction mode applied, and the like may be set in the encoder or the decoder, and related information can be transmitted in units of a sequence, a picture, a slice, and the like.
  • an additional post-processing process may be performed after the prediction block generation as in the block boundary filtering.
  • the post-processing filtering step may be performed on the current block reconstructed by adding the residual signal and the prediction signal that is obtained through transform process, quantization process, and dequantization process, considering the characteristics of the adjacent prediction pixels, similarly to the boundary filtering.
  • the prediction block is selected or obtained through the above-described processes.
  • Information obtained from the processes may include information related to the prediction mode, and may be transmitted to the transform unit 210 for encoding the residual signal after the prediction block is obtained.
  • FIG. 10 is an exemplary view illustrating a prediction principle in a P-slice or a B-slice in an image encoding method according to an embodiment of the present invention.
  • the image encoding method may include a motion estimation step and an interpolation step.
  • Information on a motion vector, a reference picture index, and a reference direction generated in the motion estimation step may be transmitted to the interpolation step.
  • a value stored in the decoded picture buffer (DPB) can be used.
  • the image encoding device can perform the motion estimation to find a block similar to the current block in the previous encoded pictures.
  • the image encoding device can perform interpolation on the reference pictures for finer prediction than precision in decimal unit.
  • the image encoding device obtains the prediction block through a predictor in which information obtained in this process includes a motion vector, a reference picture index or a reference index, reference direction, and the like, and then the residual signal encoding can proceed.
  • intra prediction is performed in a P-slice or B-slice, so that it is possible to implement a combination method as shown in FIG. 9 that supports inter prediction and intra prediction.
  • FIG. 11 is an exemplary view illustrating a process of obtaining a prediction block.
  • an image encoding method includes steps of reference sample padding, reference sample filtering, intra prediction, a boundary filtering, motion estimation, and interpolation.
  • the prediction method in the I-slice can be implemented by the construction shown in FIG. 11 , not the construction shown in FIG. 9 . That is, the image encoding device can use not only the prediction mode in a I-slice, but also information such as a motion vector, a reference picture index, and a reference direction that occur only in a P-slice or B-slice, to generate the prediction block. However, there may exist information that can be partially omitted due to the characteristic that the reference picture is the current picture. For example, when the reference picture is the current picture, the reference picture index and the reference direction can be omitted.
  • the block matching up to the decimal unit may not be necessary due to a nature of an artificial image such as a computer graphic, whether or not to perform the block matching is set in the encoder, and a unit such as a sequence, a picture, and a slice can be set.
  • the image encoding device may not perform interpolation on reference pictures used for inter prediction according to the setting of an encoder, and may perform various settings such as not interpolating only when block matching is performed in the current picture. That is, the image encoding device of the present embodiment can be set according to whether interpolation of reference pictures is performed or not. At this time, it is possible to determine whether or not to perform interpolation on all the reference pictures or some reference pictures constituting the reference picture list. For example, the image encoding device does not perform interpolation when it is unnecessary to perform block matching in a decimal unit because the characteristic of an image of the reference block is an artificial image, and perform interpolation when it is necessary to perform block matching in a decimal unit because of natural image, for a specific current block.
  • the image encoding device can set whether or not block matching is applied to the reference picture on which interpolation is performed in a block unit. For example, when a natural image and an artificial image are mixed, interpolation is performed on the reference picture.
  • motion vector can be represented in a specific unit (here, an integer unit is assumed), and when the optimal motion vector can be obtained by selectively searching a part of a natural image, a motion vector can be expressed in other specific unit (here, assuming 1 ⁇ 4 unit).
  • FIG. 12 is an exemplary view illustrating a main procedure of an image encoding method according to an embodiment of the present invention, using syntax in a coding unit.
  • curr_pic_BM_enabled_flag means a flag that allows block matching in the current picture and may be defined and transmitted in units of a sequence and a picture.
  • a process of generating a prediction block by performing block matching on the current picture may mean a case of operating through inter prediction.
  • cu_skip_flag which is an inter-frame technique that does not encode the residual signal, is a flag that is supported only by a P-slice or a B-slice except for an I-slice.
  • the I-slice can also support block matching (BM) in the inter prediction mode when curr_pic_BM_enabled_flag is on.
  • the image encoding device of this embodiment can support skipping when generating a prediction block on the current picture through block matching, and can support skipping in the case of on-screen techniques other than block matching. Depending on the condition, skipping may not be supported in the I-slice. Whether or not to perform skipping can be determined depending on the encoder setting.
  • the prediction block can be directly reconstructed as a reconstruction block through block matching without encoding the residual signal by linking to prediction_unit( ) which is a prediction unit through if(cu_skip_flag) that is a specific flag.
  • the image encoding device classifies the method of using the prediction block through block matching in the current picture into an inter prediction technique, and such classification can be processed through a pred_mode_flag that is a specific flag.
  • the image encoding device sets the prediction mode as the inter prediction mode (MODE INTER), and if the pred_mode_flag is 1, it can set the prediction mode as the intra prediction mode (MODE INTRA).
  • This is an intra-frame technology similar to the existing one, but it can be classified into an intra-frame technique or an inter-frame technique in an I-slice to distinguish it from the existing structure. That is, the image encoding device of the present embodiment can use a temporal correlation structure without using temporal correlation in the I-slice.
  • the part_mode means information about the size and type of a block divided in a coding unit.
  • FIG. 13 is an exemplary view illustrating an example in which a symmetric type division or asymmetric type division is supported as in inter prediction when a prediction block is generated through block matching in the current picture.
  • the image encoding method may support a symmetric type such as 2N ⁇ 2N, 2N ⁇ N, and N ⁇ 2N, and an asymmetric division such as nL ⁇ 2N, nR ⁇ 2N, 2N ⁇ nU, and 2N ⁇ nD, as in the inter prediction.
  • a symmetric type such as 2N ⁇ 2N, 2N ⁇ N, and N ⁇ 2N
  • an asymmetric division such as nL ⁇ 2N, nR ⁇ 2N, 2N ⁇ nU, and 2N ⁇ nD, as in the inter prediction.
  • Various block sizes and types can be determined according to the division method of the block division unit
  • FIG. 14 is an exemplary view illustrating that 2N ⁇ 2N and N ⁇ N can be supported in inter prediction.
  • the image encoding method according to the present embodiment can support 2N ⁇ 2N and N ⁇ N as in the prediction block type used in the conventional intra prediction.
  • This is an example in which a square shape is supported through quad tree division method in a block division unit or division method according to predefined block candidate group, and other block types may be supported by adding a rectangular shape to binary tree division method or predefined block candidate group in intra prediction, in which the setting may be set in the encoder.
  • the encoder may also set whether skipping is applied only when performing block matching on the current picture, whether skipping is also applied to the existing intra prediction, or whether skipping is applied to the new intra prediction.
  • Information related thereto can be transmitted in units of a sequence, a picture, a slice, and the like.
  • a subtraction unit 205 can generate the residual block by subtracting the pixel value of the prediction block generated from the prediction unit 200 from the pixel value of the current block to be encoded to derive the pixel difference value.
  • a transform unit 210 receives the residual block, which is the difference value between the current block and the prediction block generated through intra prediction or inter prediction from the subtraction unit 205 , and transforms the residual block into the frequency domain. Through the transform process, each pixel of the residual block corresponds to the transform coefficient of the transform block.
  • the size and type of the conversion block can have a size equal to or smaller than a coding unit. Also, the size and type of the transform block may be the same as or smaller than the prediction unit.
  • the image encoding device can perform transform processing by grouping several prediction units.
  • the size or type of the transform block can be determined through the block division unit, and can support transform of square or rectangular shape according to block division.
  • the block division operation can be affected by the transform related settings (size, type, and the like of the transform block supported) supported by the encoder or decoder.
  • the size and type of each transform block are determined depending on the cost for each candidate of size and type of each transform block, and the division information such as the image data of each transform block determined and the size and type of each transform block determined may be encoded.
  • the transform can be performed by a one-dimensional transform matrix (DCT, DST, etc.).
  • Each transform matrix can be adaptively used in horizontal and vertical units. Examples of adaptive use can be determined by various factors such as size of block, type of block, sorts of block (luminance and chrominance), an encoding mode, prediction mode information, a quantization parameter, and encoding information of the adjacent block.
  • a DCT-based transform matrix when the prediction mode is horizontal, a DCT-based transform matrix may be used in a vertical direction and a DST-based transform matrix may be used in a horizontal direction.
  • a DCT-based transform matrix When the prediction mode is vertical, a DCT-based transform matrix may be used in the horizontal direction and a DST-based transform matrix may be used in the vertical direction.
  • the transform matrix is not limited to that explained in the above description.
  • Information related thereto may be determined using implicit or explicit methods and may be determined depending on one or more factors of a block size, a block type, an encoding mode, a prediction mode, a quantization parameter, encoding information of adjacent block, and the like, or a combination thereof, and the related information can be transmitted in units of a sequence, a picture, a slice, a block, and the like.
  • the partial transform or the overall transform can be omitted in consideration of the characteristics of the image. For example, one or both of the horizontal or vertical components may be omitted. Since intra prediction or inter prediction is not performed well, the encoding loss due to transform may be increased when the difference between the current block and the prediction block is large (that is, when the residual component is large). This may be determined according to at least one factor of encoding mode, prediction mode information, size of a block, type of a block, sort of a block (luminance and chrominance), quantization parameter, encoding information of an adjacent block, or a combination thereof. The above conditions can be expressed using an implicit or explicit method, and information related thereto can be transmitted in units of sequence, picture, slice, and the like.
  • a quantization unit 215 performs quantization of the residual component transformed by the transform unit 210 .
  • the quantization parameter is determined on a block basis, and the quantization parameter can be set in units of a sequence, a picture, a slice, a block, and the like.
  • the quantization unit 215 may predict the current quantization parameters using one or more quantization parameters derived from adjacent blocks such as left, top left, top, top right, and bottom left of the current block.
  • the quantization unit 215 may output or transmit a difference value from a basic parameter transmitted in units of a sequence, a picture, slice, and the like.
  • the difference value may be transmitted using the quantization parameter of the corresponding block.
  • the priority of the block which is to derive the quantization parameter may be preset or may be transmitted in units of a sequence, a picture, a slice, or the like.
  • the residual block can be quantized through a dead zone uniform threshold quantization (DZUTQ), a quantization weighted matrix, or an improved scheme. It is possible to use one or more quantization schemes as candidates and the schemes may be determined by encoding mode, prediction mode information, and the like.
  • DZUTQ dead zone uniform threshold quantization
  • a quantization weighted matrix or an improved scheme. It is possible to use one or more quantization schemes as candidates and the schemes may be determined by encoding mode, prediction mode information, and the like.
  • the quantization unit 215 may set a quantization weighted matrix to apply to inter-frame encoding, intra-frame coding unit, or the like, and may also set a different weighted matrix according to the intra prediction mode.
  • the quantization weighted matrix can be constructed by varying the quantization coefficients for each position of each frequency component, assuming that the size of the block is equal to the quantization block size with a size of M ⁇ N.
  • the quantization unit 215 may select one of various existing quantization methods, and may be used under the same setting of an encoder or a decoder. Information related thereto can be transmitted in units of a sequence, a picture, a slice, and the like.
  • dequantization units 220 and 315 and inverse-transform units 225 and 320 shown in FIGS. 2 and 3 may be implemented by reversely performing the processes in the transform unit 210 and the quantization unit 215 . That is, the dequantization unit 220 can dequantize the quantized transform coefficients generated by the quantization unit 215 , and the inverse-transform unit 225 can reversely transform the dequantized transform coefficients to generate a reconstructed residual block.
  • the adding unit 230 and 324 shown in FIGS. 2 and 3 may generate a reconstruction block by adding the pixel values of the prediction block generated from the predictor to the pixel values of the reconstructed residual block.
  • the reconstruction block may be stored in the encoding and decoded picture buffers 240 and 335 and provided to the prediction unit and the filter unit.
  • An in-loop filter such as a deblocking filter, a sample adaptive offset (SAO), an adaptive loop filter (ALF), and the like can be applied to the reconstruction block.
  • the deblocking filter can filter the reconstruction block to eliminate distortion between block boundaries that occur during encoding and decoding.
  • the SAO is a filter process that reconstructs the difference between the original image and the reconstructed image with offset, on a pixel-by-pixel basis, with respect to the residual block.
  • the ALF can perform filtering to minimize the difference between the prediction block and the reconstruction block.
  • the ALF can perform filtering based on a comparison value between the reconstruction block and the current block through the deblocking filter.
  • the entropy encoding unit 245 can entropy-encode the transform coefficients quantized through the quantization unit 215 .
  • techniques such as context adaptive variable length coding (CAVLC), context adaptive binary arithmetic coding (CABAC), syntax-based context adaptive binary arithmetic coding (SBAC), probability interval partitioning entropy (PIPE) coding, and the like may be performed.
  • CAVLC context adaptive variable length coding
  • CABAC context adaptive binary arithmetic coding
  • SBAC syntax-based context adaptive binary arithmetic coding
  • PIPE probability interval partitioning entropy
  • the entropy encoding part 245 may include a bitstream obtained by encoding a quantization coefficient and various information necessary for decoding the encoded bitstream as the encoded data.
  • the encoded data may include an encoded block type, a quantization coefficient, a bitstream in which the quantization block is encoded, and information necessary for prediction.
  • the quantization coefficient the two-dimensional quantization coefficient can be scanned in one dimension.
  • the quantization coefficient may vary depending on the characteristics of the image. In particular, in the case of intra prediction, since the distribution of coefficients can have a specific distribution depending on the prediction mode, the scanning method can be set differently.
  • the entropy encoding part 245 may be set differently according to the size of a block to be encoded.
  • the scan pattern may be preset or set as a candidate with at least one of various patterns such as zigzag, diagonal, and raster, may be determined by encoding mode, prediction mode information, and the like, and may be used under the same setting of the encoder and the decoder.
  • Information related thereto can be transmitted in units of sequence, picture, slice, and the like.
  • the size of a quantized block (hereinafter referred to as a quantization block) inputted to the entropy encoding part 245 may be equal to or smaller than the size of the transform block.
  • the quantization block can be divided into two or more sub-blocks. When the quantization block is divided, a scan pattern in the division block can be set to be the same as or different from a scan pattern of the existing quantization block.
  • the zigzag may be applied to all sub-blocks, or the zigzag pattern may be applied to sub-blocks located at an upper left of a block including a DC component and a diagonal pattern can be applied to the other blocks. This can also be determined according to encoding mode, prediction mode information, and the like.
  • the starting position of the scan pattern in the entropy encoding part 245 is basically from an upper left corner, but may be from an upper right corner, a lower right corner, or a lower left corner depending on the characteristics of the image.
  • Information on which one or more candidate groups have been selected can be transmitted in units of a sequence, a picture, a slice, or the like.
  • the entropy encoding technique may be used as an encoding technique, but is not limited thereto.
  • dequantization of the dequantization unit 220 and an inverse-transform of the inverse-transform unit 225 shown in FIGS. 2 and 3 are reversely constructed from the quantization of the quantization unit 215 and the transform of the transform unit 210 , and may be implemented by combining basic filter 235 and 330 .
  • an availability of the reference pixels of adjacent blocks must be checked.
  • the availability of the reference pixel may be determined based on at least one factor of a position of the adjacent block, a position of the current block in the division block, boundary characteristics of adjacent blocks, and the like, or a combination thereof.
  • an M ⁇ M block is divided into four M/2 ⁇ M/2 blocks (in this example, allocation of 0, 1, 2, and 3 index in the raster scan direction) through a block division unit
  • the current block is M/2 ⁇ M/2 block of number 3
  • a adjacent block located in a specific direction in this example, the upper right corner and the lower left corner in the present example
  • the corresponding block is not yet encoded so that it is determined that the block is not available, whereby the reference pixel of the block may not be used.
  • whether or not to use the reference pixels of the adjacent block can be determined according to the boundary characteristics (boundary of slices, tiles, etc.) between the current block and the adjacent block.
  • Another example of the use of reference pixels in adjacent block may support the setting for determining whether or not to use data with a high probability of error propagation in the encoder/decoder in order to avoid error propagation over time in case of P-slice or B-slice.
  • this setting information it is possible to determine whether or not to use data with high probability of error propagation for generating the prediction block, and a flag such as constrained_intra_pred_flag (CIP) of HEVC can perform a similar role.
  • the flag can determine whether or not to use the adjacent blocks encoded with inter prediction mode with high probability of error propagation among adjacent blocks referenced in intra prediction block generation are used. If the flag is 0, the reference pixel of the block encoded with the inter prediction may not be used, and if the flag is 1, the reference pixel of the block encoded with the inter prediction may be used.
  • the following example illustrates a case where a prediction block is generated when the flag is not zero.
  • An additional setting of the flag causes the reference pixel to be not available regardless of the error propagation possibility, whereby any reference pixel may not be used for prediction.
  • a prediction block since a prediction block may not use any reference pixel, a prediction block may be generated by filling a preset value (for example, a middle value of a pixel value range of a bit depth). Alternatively, it is possible to generate a prediction block that applies edge information based on a predefined value.
  • a right area including an arbitrary pixel is filled with (A+B) and the other area is filled with (A ⁇ C) on the basis of the arbitrary pixel in a M ⁇ N block to generate the prediction block, and B and C mean parameters used to represent the edge information.
  • the flag it is possible to determine the error propagation probability through the number of adjacent blocks encoded with inter prediction, the number of reference pixels of adjacent blocks, and the like. According to the determination, it is possible to determine whether to use the reference pixel of the block encoded through the intra prediction. For example, if less than N blocks of M adjacent blocks adjacent to the current block are blocks encoded with inter prediction, the reference pixels of the block may not be used for generating the prediction block, and the reference pixels of (M-N) blocks encoded with intra prediction may also not used for generating the prediction block. Since the number of blocks that is the determination criterion may be influenced by the size or type of the block, it may be replaced with the number of reference pixels existing at a position to be used for predicting the current block, and other factors may be considered.
  • the prediction block generated may be influenced depending on whether or not use the reference pixel. For example, if at least one of the adjacent blocks of the current block is available depending on whether or not use the reference pixel, the reference pixels of unavailable blocks may be replaced with the pixel derived (for example, copying, average, and the like) from the reference pixel of the available block. As another example, when there is no available block depending on whether or not use the reference pixel, the reference pixels of unavailable block may be replaced with a predefined value (for example, a middle value of a pixel value range of a bit depth).
  • the substitute of the values derived from the available blocks may be inhibited according to the setting of the encoder or the decoder. In this case, the prediction mode derived from the corresponding block may not be used.
  • FIG. 15 is an exemplary view illustrating an encoding mode of adjacent blocks in intra prediction according to an embodiment of the present invention.
  • the adjacent block may be a square shape of M ⁇ M obtained through a block division unit or a rectangular shape of M ⁇ N and may be encoded with one of intra prediction or inter prediction according to an encoding mode.
  • the current block is the middle block
  • a block located at an upper left is encoded with inter prediction (Inter)
  • two blocks located at an upper end are encoded with intra prediction (Intra)
  • a block located at an upper right is encoded with inter prediction, intra prediction, and intra prediction from a left side therein.
  • the blocks encoded with the inter prediction may be further classified according to the reference picture.
  • FIGS. 16 a and 16 b will be described under the above assumption.
  • FIG. 16 a is an exemplary diagram for explaining whether or not to use the reference pixel considering the encoding mode of adjacent blocks in intra prediction according to an embodiment of the present invention.
  • FIG. 16 b is an exemplary view for explaining whether or not to use the reference pixel without considering the encoding mode of adjacent blocks in intra prediction according to an embodiment of the present invention.
  • a CIP flag indicates 1
  • a block encoded with a specific encoding mode in this example, an inter prediction
  • the flag indicates 0, the block encoded with a specific encoding mode may be used for predicting the current block.
  • a reference pixel of the corresponding block may not be used for predicting the current block.
  • the reference block of an adjacent block of a block encoded with intra prediction (Intra) that is indicated by a hatched line can be used for predicting the current block.
  • pixels adjacent to the current block within a block capable of being used as a reference pixel may be used as the reference pixel, and other additional pixels may be included.
  • the reference pixel of an encoded block can be used for predicting the current block. That is, pixels adjacent to the current block within upper left, upper right, upper left, left, and lower left of the current block can be used as a reference pixel.
  • FIG. 17 is other exemplary view illustrating an encoding mode of adjacent blocks in intra prediction according to an embodiment of the present invention.
  • an adjacent block is encoded with one of intra prediction and inter prediction.
  • another reference picture may be added according to the reference direction of the inter prediction.
  • a block at upper right means a block located outside the picture range.
  • FIG. 18 a is an exemplary view for explaining a case in which an encoding mode of adjacent blocks is intra prediction according to an embodiment of the present invention.
  • FIG. 18 b is an exemplary view for explaining a case in which an encoding mode and a reference picture of adjacent blocks are considered, in intra prediction according to an exemplary embodiment of the present invention.
  • FIG. 18 c is another exemplary view for explaining a case in which an encoding mode of adjacent blocks is not considered, in intra prediction according to an embodiment of the present invention.
  • adjacent blocks encoded with intra prediction in the encoding mode of FIG. 17 may be displayed in a hatched area.
  • the pixels in the corresponding blocks can be used as reference pixels.
  • whether or not to consider the encoding mode of the adjacent block can be indicated according to a CIP flag, and it may be an example of the case where the CIP flag is 1.
  • pixels in blocks encoded with intra prediction in the encoding mode state of FIG. 17 can be used as reference pixels as described above.
  • pixels in such a block can be used as the reference pixel.
  • pixels of the corresponding block may not be used as the reference pixel.
  • the pixels may be used because an error propagation does not occur over time between pictures when the reference picture of the adjacent block is a current picture.
  • the pixels may be not used because the error propagation may occur when the block referenced in the current picture is a block encoded from a previous or a subsequent picture.
  • whether or not to use a reference pixel can be determined depending on at least one factor of a position of adjacent block, an encoding mode of an adjacent block, a position of a current block in a division block, a boundary characteristic of a current block and an adjacent block, or a combination thereof, and a reference picture can be added to the above factors.
  • the reference picture is specified as the current picture, it may be expanded to a reference picture having a different index or a picture order count (POC).
  • various settings for the reference picture indexes L0 and L1 may be constructed even when the reference direction of inter prediction is an unidirectional prediction (L0, L1) and a bidirectional prediction.
  • pixels within blocks (intra-frame predicted block) hatched in FIG. 18 a may be used as the reference pixel.
  • all adjacent pixels in the adjacent block can be used as a reference pixel in principle.
  • an area at an upper right of the current block positioned at the center is an area without image data or an area outside the image, it may correspond to an area that is not available in any cases.
  • the availability for a reference pixel of an adjacent block of the current block can be determined.
  • a reference pixel made up of a predefined pixel value may be obtained.
  • the reference pixel can be composed by an intermediate value of a representation range of the pixel. More specifically, since values can be assigned to the reference pixels with 1 ⁇ (bit depth ⁇ 1) and the bit depth means the number of bits used to represent the pixel, the exemplified value may mean an intermediate value of the representation value of the pixel.
  • the encoding mode of adjacent blocks (left, top, left top, top right, bottom left block, etc.) may be considered.
  • all pixels in adjacent blocks can be used as reference pixels without considering the encoding mode, and at this time the preset flag may indicate not to consider the encoding mode.
  • the encoding mode of the adjacent block is the inter prediction, it is determined that the adjacent block is unavailable so that pixels in the adjacent block may not be used for the reference pixel.
  • the pixels may be used as a reference pixel when a reference picture of the adjacent block is the current picture by checking the reference picture.
  • the reference picture is selected from a list 0 that stores data for reference pictures earlier than the current picture and a list 1 that stores data for reference pictures later than the current picture, and the current picture may be included in the list 0 or the list 1.
  • the pixels may be used as a reference pixel when a reference picture of the adjacent block is an I picture (except for P or B) by checking the reference picture.
  • the above constraint conditions should be understood as an example of determining whether a pixel in an adjacent block can be used as a reference pixel in consideration of a specific condition. That is, the encoding mode of the adjacent block is an inter prediction, and it is possible to determine availability as a reference pixel by referring to motion vectors of motion information, reference picture information, and the like on that adjacent block.
  • the conditions exemplified above can be set in units of a sequence, a picture, a slice, and the like.
  • the availability determination for the reference pixel according to an embodiment of the present invention may be performed according to the following flow.
  • the block adjacent to the current block is located beyond a boundary of the picture, slice, or tile is confirmed. Then, whether the adjacent block is encoded may be confirmed. And then, the slice type of the adjacent block is checked, and if the type is an I-slice, the boundary pixel within the adjacent block can be set to be available as a reference pixel of the current block. If the type is a P-slice, the mode is a unidirectional prediction. Therefore, the reference picture is confirmed by checking the reference picture list 0 (ref_idx_10). When the reference picture is the current picture, a reference pixel of the current picture may be set to be available. However, this should be understood as an example.
  • the reference pixel When the current picture is not a reference picture, the reference pixel may be set to be unavailable. If the type is a B-slice, after confirming whether the current picture is used as the reference picture by confirming whether the prediction mode is unidirectional_L0, unidirectional_L1, or bidirectional, whether or not the reference picture is available may be confirmed.
  • FIG. 19 a is an exemplary view for explaining a method of obtaining a reference pixel when available adjacent blocks are located at lower left.
  • FIG. 19 b is an exemplary view for explaining a method of obtaining a reference pixel when available adjacent block are located at upper right end.
  • FIG. 19 c is an exemplary view for explaining a method of obtaining reference pixels when available adjacent blocks are located at lower left end and upper right end.
  • FIG. 19 d is an exemplary view for explaining a method of obtaining a reference pixel when the available adjacent blocks are located at upper left end and upper right end.
  • hatched pixels may mean adjacent pixels within the block that is determined that the adjacent blocks are available, and arrow directions may indicate directions constituted by reference pixels.
  • the adjacent block may be determined to be available, it may be also determined to be unavailable.
  • the pixels in a block that are determined to be unavailable may not be used as reference pixels, and in such case, how to construct adjacent pixels in unavailable blocks may be problematic.
  • pixels in contact with an unavailable area are copied and filled in pixels adjacent to the current block among unavailable areas.
  • the pixels when there are available areas in both upper right and lower left of the current block, the pixels may be filled by copying pixels of any one available area, by obtaining the average value of pixels on both sides (such as ⁇ down to up and left to right>, ⁇ left to right and top to bottom>, or ⁇ bottom to top and right to left>), or by a linear interpolation.
  • the pixels when areas available as a reference pixel are mixed, the pixels may be filled with pixel values via copy in either one direction (left direction, down direction); the pixels may be filled with values generated by using pixels on both sides such as interpolation and average when there are available areas on both sides such as an upper end of the current block; and the pixels may be filled with the value obtained via copy when there is an available area on one side such as left or lower left end of the current block.
  • Pixels located at a bottom including P ( ⁇ 1,0) may not be available.
  • P(x, y) ⁇ x is 1, y is 0 to 2*blk_size ⁇ 1 ⁇ may be assigned with P( ⁇ 1, ⁇ 1).
  • the interpolation may be restricted when the positions of available areas are not connected by a vertical line. Specifically, when the coordinates of both ends of the available areas are compared, the interpolation may be restricted when both of x and y do not match, such as P( ⁇ 1, a) and P(b, ⁇ 1). When one of x and y matches with each other, such as P(a, ⁇ 1), P(b, ⁇ 1), the interpolation can be performed.
  • the interpolation can be performed when the position of an available area is located on a vertical line.
  • FIG. 20 is a flowchart of an image encoding method according to an embodiment of the present invention.
  • an image encoding method for performing intra prediction includes determining whether a boundary pixel within the adjacent block is available as a reference pixel of a current block, considering a prediction mode of each of the current block and the adjacent block (Step S 110 ); obtaining a reference pixel of the current block according to the determined result (S 120 ); generating an prediction block through intra prediction based on the obtained reference pixel (S 130 ); and encoding the current block using the generated prediction block. (S 140 ).
  • each step in this case can be referred to FIG. 15 to FIG. 18 c , and thus a detailed description thereof will be omitted.
  • An image decoding method for performing intra prediction includes steps of receiving a bitstream including data on a prediction mode of the current block and a block adjacent to the current block, extracting data from the bitstream received to confirm a prediction mode of the adjacent block, determining whether a boundary pixel within the adjacent block is available as a reference pixel of the current block in consideration of the prediction mode of the adjacent block, obtaining the reference pixel of the current block depending on the determined result, generating intra-frame predicted prediction block based on the obtained reference pixel, and decoding the current block using the prediction block generated.
  • the obtaining the reference pixel may obtain the reference pixel constituted by the preset pixel value when the boundary pixel is determined to be unavailable as the reference pixel of the current block.
  • the determining whether the boundary pixel is available as the reference pixel may indicate whether a preset flag takes into consideration the prediction mode of the adjacent block
  • the determining whether the boundary pixel is available as the reference pixel may determine that the boundary pixel is available as a reference pixel of the current picture when the prediction mode of the adjacent block is intra prediction.
  • the determining whether the boundary pixel is available as the reference pixel may determine that the boundary pixel is unavailable as a reference pixel of the current picture when the prediction mode of the adjacent block is inter prediction.
  • the determining whether the boundary pixel is available as the reference pixel may determine whether the boundary pixel is available as a reference pixel of the current picture in consideration of the reference picture of the adjacent block when the prediction mode of the adjacent block is inter prediction.
  • the reference picture is selected from a list 0 storing data for reference pictures earlier than the current picture and a list 1 storing data for reference pictures later than the current picture, and the current picture may be included in the list 0 or the list 1.
  • the boundary pixel is available as the reference picture of the current picture, when the reference picture of the adjacent block is the current picture.
  • the pixel in the adjacent block is unavailable as the reference picture of the current picture when the reference picture of the adjacent block is not the current picture.
  • the pixel in the adjacent block is available as the reference picture of the current picture, when the reference picture of the adjacent block is an I-picture.
  • one or more processors may receive a bitstream including data on a prediction mode of a current block and a block adjacent to the current block and, confirm the prediction mode of the adjacent block by extracting the data from the received bitstream, determine whether the boundary pixel within the adjacent block is available as the reference pixel of the current block in consideration of the prediction mode of the adjacent block, obtain the reference pixel of the current block based on the determined result, generate intra-frame predicted prediction block based on the obtained reference pixel, and decode the current block using the generated prediction block.
  • FIG. 21 is an exemplary diagram illustrating an intra prediction mode of HEVC.
  • each prediction mode there are a total of 35 prediction modes for a luminance component (Intra_fromLuma, 35 ). There may be prediction modes having various directions including a planer (Intra_planar, 0) and an average (Intra DC, 1). For each prediction mode, the direction of each arrow can indicate the direction in which a prediction block is constructed using reference pixels.
  • FIG. 22 a is an exemplary diagram for explaining reference pixels used for current block prediction in the reference pixel construction step.
  • pixels (A 0 ⁇ P 0 , X 0 ) of blocks on left, upper left, lower left, upper, and upper right based on the current block may be included in the reference pixel candidate group.
  • pixels of p[0, ⁇ 1] ⁇ p[(2 ⁇ M) ⁇ 1, ⁇ 1], p[ ⁇ 1,0] ⁇ p[ ⁇ 1,(2 ⁇ N)-1], and p[ ⁇ 1, ⁇ 1] based on an upper left coordinate may be included in the candidate group.
  • 2 ⁇ (M+N)+1 reference pixels may be included in the candidate group, and may be determined depending on at least one factors of a size of block, a type of block, a prediction mode, a prediction method, a slice type, and the like, a combination thereof. For example, some reference pixels may be added to the candidate group or excluded from it depending on the prediction mode. As another example, some reference pixels may be added to the candidate group or excluded therefrom depending on the prediction scheme.
  • FIG. 22 b is an exemplary view for explaining that additional pixels of an adjacent block are included in a reference pixel candidate group.
  • pixels of p[ ⁇ 1, ⁇ 2] ⁇ p[(2 ⁇ M) ⁇ 1, ⁇ 2], p[ ⁇ 2, ⁇ 1] ⁇ p[ ⁇ 2, (2 ⁇ N) ⁇ 1], and p[ ⁇ 1, ⁇ 1] based on an upper left coordinate of the block can be included in a new reference pixel candidate group.
  • the pixels may be classified into the first reference pixel line (A0 ⁇ P0, X0) and an additional reference pixel line to represent the difference from the existing reference pixel, and other additional reference pixel line may be included as the new reference pixel candidate group.
  • the order of the reference pixel lines may be determined based on the distance between the reference pixel and the current block.
  • the reference pixel line may be collectively applied to the pixels of blocks on left, upper left, lower left, upper and upper right, and may be constructed by one adjacent block or two or more adjacent block units.
  • the pixel of the corresponding block can be constructed on the reference pixel line L.
  • pixels of the corresponding blocks may be constructed in the reference pixel line U. This example will be described based on the reference pixel line that is collectively applied to adjacent blocks.
  • Whether or not to add an additional reference pixel line other than the existing reference pixel line may be determined depending on one or more factors of a block, a type of a block, a prediction mode, and a prediction method, or a combination thereof. Further, whether or not an existing reference pixel line is used and whether an additional reference pixel line is used may have various combinations of constructions. For example, the existing reference pixel line is always used, whether the additional pixel line is used or not may be determined, and whether each of the existing reference pixel line is used or not and the additional pixel line is used or not may be determined respectively. In addition, when there are more than two additional pixel lines, various combinations are possible with respect to the above settings. Also, when the reference pixel line is not collectively but partially applied to the adjacent blocks, it is possible to have various combinations related to the above settings.
  • an allowable range of the reference pixel line may be set. That is, information (maximum value) about how much the reference pixel line is to be added can be set in the encoder/decoder, and this may be determined depending on one factor of a type of the current or adjacent block, a size of the current or adjacent block, and the like, or a combination thereof. If an order of the reference pixel line is a small number, a priority may be high, but the assumption thereon may not lead to the binarization process of the related information. Index information or identifier information of the reference pixel line may be generated under predetermined conditions. The reference pixel line index or identifier information may be binarized by various methods such as unary binarization, cutting unary binarization, and the like, and the binarization may be determined according to allowable maximum value information in the reference pixel line.
  • the information related to the reference pixel line may be transmitted in units of a sequence, a picture, a slice, a block, and the like.
  • the encoded/decoded information may be included in prediction mode information in a prediction mode encoding step.
  • the process of checking whether or not to use the reference pixel of the adjacent block is performed. Whether or not to use the reference pixel may be determined by at least one of factors such as adjacent block position, encoding mode of adjacent block, reference picture of adjacent block, position of current block in division block, and boundary characteristic of current block and adjacent block, or a combination thereof.
  • the prediction of the current block can be performed using the pixels determined to be available through the process and the replaced pixel values of the pixel position determined to be unavailable through the process among the reference pixel candidate group.
  • the reference pixels may be generated in a decimal unit by using various interpolation methods on the reference pixel of an integer pixel.
  • the reference pixels of two or more reference pixel lines may be supported in the interpolation process. Not only 1D-filtering that interpolates fractional pixels between the existing two pixels, but also 2D-filtering that interpolates fractional pixels between the four pixels may also be applied.
  • the reference pixel filtering step a process of applying the filtering to the reference pixels obtained from the reference pixel construction step will be described according to the case of having the wider reference pixel.
  • FIGS. 23 a , 23 b , 24 a , and 24 b are diagrams illustrating various mode directions, for the current block having a wider reference pixel obtainable in the reference pixel construction step. This is for the purpose of explaining the directions of the various prediction modes described above and is not limited thereto. The explanation may be made under the assumption that the first reference pixel line (A0 ⁇ P0, X0) and the second reference pixel line (A1 ⁇ P1, X0, X10, X01, X11) are constructed as reference pixel candidate groups.
  • the filtering can be applied to the pixels included in the reference pixel candidate group, that is, the most adjacent pixels of the current block.
  • filtering considering the additional reference pixels may be applied.
  • FIG. 23 a illustrates an exemplary view of a mode (vertical) in which the reference pixels of the second reference pixel line, more specifically, the reference pixels A1, B1, C1, and D1 located on the second row from a top of the current block are referenced to cause pixels generated by applying filtering to the reference pixels to be applied to the prediction, and a mode in which the reference pixels of the first reference pixel line, specifically, the reference pixels A0, B0, C0, and D0 located on the first row cause pixels generated by applying filtering to the reference pixels to be applied to the prediction.
  • FIG. 23 b illustrates an exemplary view of a mode (horizontal) in which the reference pixels of the second reference pixel line, specifically, the reference pixels I1, J1, K1, and L1 located on the second row from the left of the current block are referenced to cause pixels generated by applying the generated reference pixel to be applied to the prediction, and a mode in which reference pixels of the first reference pixel line, specifically, reference pixels I0, J0, K0, and L0 causes pixels generated by applying filtering to the reference pixels to be applied to a prediction.
  • FIG. 24 a illustrates an exemplary view of a mode (directional mode leading to the lower left end) in which the reference pixels of the second reference pixel line, specifically, reference pixels C1, D1, E1, F1, G1, and H1 located on the second row from the upper right end of the current block are referenced to cause the pixels generated by applying filtering to the reference pixels to be applied to the prediction, and a mode in which the reference pixels of the first reference pixel line, more specifically, the reference pixels B0, C0, D0, E0, F0, G0, and H0 located on the first row of the upper right end of the current block are also referenced to cause the pixels generated by applying filtering to the reference pixels to be applied to the prediction.
  • the reference pixels of the first reference pixel line more specifically, the reference pixels B0, C0, D0, E0, F0, G0, and H0 located on the first row of the upper right end of the current block are also referenced to cause the pixels generated by applying filtering to the reference pixels to be applied to the prediction.
  • FIG. 24 b illustrates an exemplary view of a mode (directional mode leading to the lower right end) in which the reference pixels of the second reference pixel line, specifically, reference pixels J1, I1, X01, X11, X10, A1, and B1 are referenced to cause pixels generated by applying the filtering to the reference pixels to be applied to the prediction, and a mode in which the reference pixels of the first reference pixel line, specifically, the reference pixels (K0, J0, I0, X0, A0, B0, and C0 located at the upper left corner of the current block cause pixels generated by applying the filtering to the reference pixels to be applied to the prediction.
  • the reference pixels of the first reference pixel line specifically, the reference pixels (K0, J0, I0, X0, A0, B0, and C0 located at the upper left corner of the current block cause pixels generated by applying the filtering to the reference pixels to be applied to the prediction.
  • adaptive filtering can be performed according to the mode of the current block.
  • the reference pixel of the second reference pixel line is also applied to filtering, not only the adaptive filtering is performed according to the mode of the current block, but the reference pixel applied to the filtering may also be adaptive. That is, the filtering on the adjacent pixels of the current block may be independent of the prediction mode direction, and the pixels on the directional line of the mode as shown in FIGS. 22 a , 22 b , 23 a , and 23 b can be applied to filtering when the reference pixels of the second reference pixel line are also included in the filtering process.
  • the process of applying the filtering to the reference pixels obtained from the reference pixel construction step will be described according to the case of having the wider reference pixels.
  • the most adjacent reference pixel can be used for generating the prediction block. If an additional reference pixel line other than the first reference pixel line is supported, a reference pixel used for generating the prediction block generation can be determined. For example, according to a prediction mode, the prediction block may be generated as the first reference pixel, the prediction block may be generated as the second reference pixel, and the prediction block may be generated as prediction pixels of the first reference pixel line and the second reference pixel line.
  • the related settings (the number of prediction modes, a prediction mode direction, and the like) are not limited to the examples described below. Since there are 35 modes in the case of the HEVC, it is necessary to encode efficient mode information after determining optimal mode. In general, when the image is divided into several blocks, adjacent blocks often have similar characteristics. Therefore, when the mode of the current block is encoded, the adjacent block information is utilized. The HEVC encodes the prediction mode of the current block based on the prediction mode of the left and top blocks.
  • FIG. 25 is a flowchart illustrating an optimal mode determination process for a general current prediction unit (or prediction block).
  • the most probable mode is a prediction mode having a high possibility of being a prediction mode of the current prediction unit. Since it is likely that a prediction unit around the current prediction unit has a mode similar to the mode of the current prediction unit, the mode can be selected from the modes of peripheral blocks.
  • the prediction mode of the prediction unit on the left side is referred to as left_PU_MPM
  • the prediction mode of the prediction unit on the upper side is expressed as Above_PU_MPM, based on the current prediction unit (PU).
  • the prediction mode of the left prediction unit is different from the prediction mode of the upper prediction unit
  • the first most probable mode MPM[0] is determined as the prediction mode of the left prediction unit
  • the second most probable mode MPM[1] is determined as the prediction mode of the upper prediction unit
  • the third most probable mode MPM[2] is determined as one of the planar, DC, and vertical modes without overlapping.
  • the prediction mode of the left prediction unit is the same as the prediction mode of the upper prediction unit, it is determined whether the same prediction mode is smaller than the mode 2. If the prediction mode is smaller than the mode 2, planar, DC, and vertical mode are set as the most probable mode, and when the prediction mode is larger or the same, the prediction mode of the left prediction unit, one smaller mode than it, and one larger mode than it may be set as the first, the second, and the third most probable modes (MPM) respectively.
  • MPM most probable modes
  • modes having a high possibility as a prediction mode of the current block may be classified into the most probable mode (MPM) set or group and encoded.
  • MPM most probable mode
  • the prediction mode of the current block can be encoded by binarizing the remaining modes except for the most probable mode (MPM) among all the modes and selecting one of them.
  • the number of modes in the group of optimal mode (MPM) is three so that the encoding is performed using one or two bits. If it is not selected in the most probable mode (MPM) group, the encoding is performed using 5 bits of fixed length.
  • the embodiment according to the present invention does not limit the mode to be used as the most probable mode (MPM) to the left and upper prediction units, and may utilize the mode information from one or more blocks of blocks in the left, upper left, and upper, upper right, and lower left. Also, when one of these is divided into two or more blocks, it is possible to set a priority on information of which block among the divided blocks is referenced. For example, when the current block is 2N ⁇ 2N and two divided blocks of N ⁇ N are located in left, then a mode of an upper N ⁇ N may be used or a mode of a lower N ⁇ N may be used according to the set rule.
  • the number of modes selected by the most probable mode can also be preset in the encoding/decoding device, or transmitted in units of sequences, pictures, slices, and the like.
  • the binarization for the number of modes may be expressed by using various binarization methods such as a fixed length or variable lengths.
  • various binarization methods may be used for the binarization of modes not classified as the most probable mode (MPM).
  • MPM candidate group may be set for the purpose of efficient binarization of modes not classified as the most probable mode (MPM). For example, M ⁇ 2N of M modes can be binarized as the most probable mode (MPM) group, and 2N modes can be binarized as candidate groups that are not classified as the most probable mode (MPM).
  • N can be selected as one of 1, 2, 3, and 4, and the modes in the most probable mode (MPM) group may be represented as variable lengths (three if N is four), and candidate group not classified as the most probable mode (MPM) can be expressed as a fixed length (4 bits).
  • MPM most probable mode
  • MPM most probable mode
  • the mode information of the adjacent block it is necessary to check availability of the boundary pixel of the corresponding block as a reference pixel. For example, it is necessary to check whether the mode is located at a boundary line of a picture or slice, or whether the encoding mode is the same. In this example, whatever the reference picture is, if the encoding mode is the inter prediction mode, the reference pixel of the corresponding block is set as unavailable. (Left and upper modes are used as MPM as in HEVC) When the left block generates a prediction block in the current picture through block matching and is encoded with the inter prediction method, the reference pixel of the corresponding block can be determined as unavailable.
  • the mode (Vertical) of the corresponding block can be included in the MPM candidate. Since the reference pixel of the left block is unavailable, the mode of the corresponding block can be set as DC and included in the MPM candidate.
  • Available reference pixels and unavailable reference pixels may be classified through the process of checking the availability of reference pixels for adjacent blocks.
  • the reference pixel determined to be unavailable may be filled with the predefined value (for example, a middle value of a range of pixel values of bit depth) or a substitute value derived from a reference pixel determined to be available.
  • the prediction block can be generated by using the pixel value of the reference pixel available for intra prediction and the substitute value of the unavailable reference pixel.
  • FIG. 26 is an exemplary view for determining a prediction mode for the current prediction unit (or block).
  • the available reference pixels may be displayed in black, while the reference pixels that are unavailable may be displayed in colorless.
  • the unavailable reference pixel may be replaced by a predefined value or a value derived from the available pixel.
  • the pixel values of the unavailable reference pixels of the blocks A, B, C, and D may be filled with the value obtained by copying the pixel value in the upper right of the block E. That is, all the reference pixels of blocks A, B, C, and D may be the same value as the pixel in the upper right of block E.
  • all the modes for generating a prediction block using blocks B and C as reference pixels can construct all prediction pixels of the prediction block as the same pixel value (pixel value in the upper right of block E).
  • the blocks may have DC mode as previously assumed.
  • the prediction mode of the block A is set as DC and the mode of the block B is also set as DC, it is possible to reduce a probability that the modes determined as the most probable mode (MPM) (two DCs occur) is the prediction mode of the current block. Therefore, the mode may be used by replacing with the prediction mode of the available block adjacent to the current block.
  • MPM most probable mode
  • the mode of the block A may be substituted for the prediction mode of block E.
  • the DC which is a prediction mode of a block E and a prediction mode of a block B
  • MPM[0] planar mode
  • MPM[1] DC mode
  • MPM[2] vertical mode according to the flowchart of FIG. 25 which is a general method.
  • the upper right pixel value of boundary pixels of block E shown black in FIG. 26 is copy to the boundary pixels of block A to perform intra prediction. It is also assumed that the mode of block E is not DC. Under this assumption, if the prediction block is generated with modes of vertical, horizontal, group 2, group 3, and group 4 (referring FIG. 27 described below for each prediction mode group) including planar and DC, it is possible to generate the prediction block in which a pixel value of all the prediction blocks generated with the prediction mode is one value (upper right pixel value of the block E). This may be because all are copied to the same pixel value. Accordingly, referring to the flowchart of FIG.
  • MPM [0] is one of Planar, DC, vertical, horizontal, and groups 2 to 4
  • MPM [1] is DC
  • MPM[2] is planar if the mode of the block E is not planar and vertical if it is planar.
  • the prediction block is generated with the modes of planar, DC, vertical, horizontal, and groups 2, 3, and 4 as described above, the same prediction block (if the reference pixel is constructed with a pixel value of 100, all the pixel values are 100 whatever mode is used to generate the prediction block) are generated so that the MPM is managed with overlapping mode.
  • MPM[0] is determined to be one of planar, DC, vertical, horizontal, groups 2 to 4
  • MPM [1] is determined to be one of modes belonging to Group 1
  • MPM [2] is determined to be one of blocks not overlapped with MPM [1] belonging to group 1.
  • the prediction block may be slightly different (at least one pixel) for each mode unless the reference pixels at the boundary of the block E are all composed of the same pixel values.
  • the encoding may be performed via binarization with the existing fixed 5 bits for the prediction mode not selected as the most probable mode (MPM) or the via binarization only for the modes in group 1. For example, since there are 8 modes of modes 2 through 9 (group 1) (reduced to 6 by subtracting 2 included in the MPM), the encoding may be performed via various binarization methods with bits shorter than the fixed 5 bits.
  • MPM[0] is the prediction mode of the block E
  • MPM[1] is DC
  • MPM[2] is one mode not overlapped with the prediction mode of the block E of group 1 (from the group 1 since the prediction block generated by DC or the prediction block generated by planar, vertical, horizontal, groups 2, 3, and 4 are the same).
  • the encoding may be performed by binarization as described above.
  • FIG. 27 is a diagram showing an example of grouping for the prediction mode.
  • the prediction mode is classified into a planar, a DC, a vertical, a horizontal, a group 1, a group 2, a group 3, and a group 4.
  • a variety of settings are allowed to group the prediction modes into 2 or more groups, and groupings below are classified under settings with similar directionality.
  • the prediction modes 2 to 9 are for the group 1
  • the prediction modes 11 to 17 are for the group 2
  • the prediction modes 18 to 25 are for the group 3
  • prediction modes 27 to 34 are for the group 4.
  • the prediction mode 0 may mean planar
  • the prediction mode 1 may mean DC
  • the prediction mode 10 may mean horizontal
  • the prediction mode 26 may mean vertical.
  • FIGS. 28 to 32 are exemplary views of a case in which a MPM is constructed for a prediction mode using adjacent blocks other than the upper and left blocks.
  • the prediction mode of block E may be used by substituting block A
  • the prediction mode of block D may be used by substituting block B.
  • the prediction mode of block D may be used by substituting block A
  • the prediction mode of block C may be used by substituting block B.
  • the prediction mode of the block A is used as it is, and the prediction mode of block E may be used by substituting block B.
  • the prediction mode of the block B is used as it is, and the prediction mode of block C may be used by substituting block B.
  • a block A can be replaced with a prediction mode of block E, a block B with a prediction mode of block D, a block A with a prediction mode of block D, and a block B with a prediction mode of block C, and a block A can be replaced with the prediction mode of block E, and block B can be replaced with the prediction mode of block C. That is, the prediction mode of the available blocks can be replaced by various combinations.
  • FIG. 33 is an exemplary view of a case in which the most probable mode (MPM) is constructed as a substitute block when both the current block and the adjacent blocks are available.
  • MPM most probable mode
  • black pixels are used as reference pixels, in which pixels at the boundary with blocks A, B, C, and D have no change in pixel values or similar values to pixel values, and pixels at the boundary with block E are changed.
  • the redundancy of the most probable mode (MPM) candidate group may occur when the variance of two or more consecutive blocks is smaller than the boundary value.
  • group 4 that are prediction modes generated using only block B and block C and the prediction block generated by vertical mode may be regarded as having the same or similar values. Therefore, group 4 and vertical mode can perform a redundancy removal process. If the reference pixels of block A and block C are the same or similar, a prediction mode generated by using only block A and block C does not exist so that there is no need to consider.
  • the redundancy may be determined to occur.
  • the redundancy may be determined to occur in the modes.
  • the redundancy may be determined to occur in the modes. That is, it can be confirmed that the variance of consecutive blocks is calculated ( ⁇ ADB , ⁇ BC , ⁇ ADBC ), which is smaller than the boundary value.
  • the MPM candidate group can be reset by removing the redundancy as described above. Variance is mentioned for illustration of the above example, but is not limited thereto.
  • MPM[0] prediction mode of block A
  • MPM[1] prediction mode of block B
  • MPM[2] one of planar, DC, or vertical (according to the prediction mode of block A and the prediction mode of block B).
  • the prediction mode of block A is one of horizontal, group 2, group 3, vertical, group 4, DC, planar classified to generated the same prediction block through comparison of the above variance values
  • MPM[0] prediction mode of block A
  • MPM[1] one of the modes of group 1
  • MPM[2] one of modes of group 1 that is overlap with MPM[1].
  • MPM[0] prediction mode of block A
  • MPM[1] prediction mode a of block A
  • FIG. 34 is a flowchart illustrating an image encoding method for performing intra prediction according to an embodiment of the present invention.
  • an image encoding method for performing intra prediction includes determining whether each of a left block and an upper block of a current block are available in the reference pixel configuration of the current block (S 210 ), selecting a most probable mode MPM candidate group based on the determined result (S 220 ), determining the redundancy of a prediction block derived from an intra prediction mode in the MPM candidate group (S 230 ), selecting a MPM group using a prediction mode of a substitute block adjacent to the left block or adjacent to the upper block if it is determined that the redundancy exists (S 240 ), and performing an intra prediction mode encoding for the current block based on the selected MPM group (S 250 ).
  • the determining whether or not each block is available may be determined to be unavailable when the left block and the upper block exist outside the image boundary or are encoded with the inter prediction, and may be determined to be available when they are otherwise.
  • the MPM candidate group may include at least one of intra prediction mode for the block determined to be available among the left block and the upper block, intra-prediction mode predetermined for the block determined to be unavailable, a planar prediction mode, planar prediction mode, vertical prediction mode, and a DC prediction mode.
  • the determining the redundancy may determine the redundancy based on variance values computed for reference pixel values in two or more consecutive blocks among the blocks located at lower left, left, upper left, upper, and upper right of the current block, when the left block and the upper block are all available. For example, two or more consecutive blocks are selected and grouped, and the variance values of the selected groups are calculated. If the calculated variance value is smaller than the boundary value, it can be determined that the redundancy exists.
  • the determining the redundancy includes steps of selecting the intra prediction mode constructed by referring only to boundary pixels between the unavailable block and the current block when at least one of the left block and the upper block is unavailable, and determining that the redundancy exists when at least two of the prediction modes selected are included in the MPM candidate group.
  • the substitute block can be selected from adjacent blocks located at lower left, upper left, and upper right of the current block.
  • the substitute block may be selected with a clockwise or counterclockwise priority among one or more blocks.
  • the substitute block may be selected with a clockwise or counterclockwise priority among the adjacent blocks located at lower left, upper left, and upper right of the current block.
  • An image decoding method for performing intra prediction may include extracting data on whether a prediction mode for a current block is included in a most probable mode MPM group from received bitstream, determining whether a prediction mode for the current block is included in the MPM group based on the data, extracting MPM group index data of the current block from the received bitstream when it is determined that the prediction mode for the current block is included in the MPM group, confirming the prediction mode for the current block in the MPM group based on the extracted MPM group index data, and performing intra prediction on the current block based on the confirmed prediction mode.
  • the MPM group may be selected by determining whether a left block and an upper block of the current block can be used for constructing a reference pixel of the current block, selecting a most probable mode MPM candidate group based on the determined result, determining redundancy of prediction blocks derived from intra prediction modes in the MPM candidate group, and using a prediction mode of a substitute block adjacent to the left block or adjacent to the upper block when it is determined that the redundancy exists.
  • the determining whether or not the blocks can be used may determine to be unavailable when each of the left block and the upper block exists outside an image boundary or encoded with inter prediction, and may determine to be available when they are otherwise.
  • the MPM candidate group may be selected from intra prediction mode for a block determined to be available among a left block and an upper block, intra-prediction mode predetermined for a block determined to be unavailable, a planar prediction mode, a prediction mode, and a DC prediction mode.
  • the determining the redundancy of the prediction block may be performed by determining the redundancy based on variance values computed for reference pixel values in two or more consecutive blocks among the blocks located at lower left, left, upper left, upper, and upper right of the current block, when the left block and the upper block are all available.
  • the determining the redundancy of the prediction block may be performed by selecting an intra prediction mode constructed by referring only to boundary pixels between the unavailable block and the current block when at least one of the left block and the upper block is unavailable, and determine that the redundancy exists when at least two of the prediction modes selected are included in the MPM candidate group.
  • the substitute block may be selected from adjacent blocks located at lower left, upper left, and upper right of the current block.
  • the substitute block may be selected with a clockwise or counterclockwise priority among the one or more blocks.
  • the substitute block may be selected with a clockwise or counterclockwise priority among the adjacent blocks located at lower left, upper left, and upper right of the current block.
  • the one or more processors may extract data related to whether a prediction mode for a current block is included in a most probable mode MPM group from bitstream received, determine whether the prediction mode for the current block is included in the MPM group based on the data, extract MPM group index data of the current block from the received bitstream when it is determined that the prediction mode for the current block is included in the MPM group, confirm the prediction mode for the current block in the MPM group based on the extracted MPM group index data, and perform intra prediction on the current block based on the confirmed prediction mode.
  • the MPM group may be selected by determining whether a left block and an upper block of the current block can be used for constructing a reference pixel of the current block, selecting a MPM candidate group based on the determined result, determining redundancy of the prediction block derived from an intra prediction mode in the MPM candidate group, and using a prediction mode of a substitute block adjacent to the left block or adjacent to the upper block when it is determined that redundancy exists.
  • the determining whether or not the blocks can be used may be performed by determining to be unavailable when each of the left block and the upper block exist outside an image boundary or encoded with inter prediction, and may determine to be available when they are otherwise.
  • the determining the redundancy of the prediction block may be performed by selecting intra prediction mode constructed by referring only to boundary pixels between the unavailable block and the current block when at least one of the left block and the upper block is unavailable, and determine that the redundancy exists when at least two of the prediction modes selected are included in the MPM candidate group.
US15/579,869 2015-06-05 2016-06-07 Method and device for encoding and decoding intra-frame prediction Abandoned US20180160113A1 (en)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
KR10-2015-0079896 2015-06-05
KR20150079878 2015-06-05
KR10-2015-0079878 2015-06-05
KR20150079896 2015-06-05
PCT/KR2016/006013 WO2016195460A1 (ko) 2015-06-05 2016-06-07 화면 내 예측에 대한 부호화/복호화 방법 및 장치

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2016/006013 A-371-Of-International WO2016195460A1 (ko) 2015-06-05 2016-06-07 화면 내 예측에 대한 부호화/복호화 방법 및 장치

Related Child Applications (1)

Application Number Title Priority Date Filing Date
US16/579,217 Continuation US11368675B2 (en) 2015-06-05 2019-09-23 Method and device for encoding and decoding intra-frame prediction

Publications (1)

Publication Number Publication Date
US20180160113A1 true US20180160113A1 (en) 2018-06-07

Family

ID=57440896

Family Applications (3)

Application Number Title Priority Date Filing Date
US15/579,869 Abandoned US20180160113A1 (en) 2015-06-05 2016-06-07 Method and device for encoding and decoding intra-frame prediction
US16/579,217 Active US11368675B2 (en) 2015-06-05 2019-09-23 Method and device for encoding and decoding intra-frame prediction
US17/742,059 Pending US20220321875A1 (en) 2015-06-05 2022-05-11 Method and device for encoding and decoding intra-frame prediction

Family Applications After (2)

Application Number Title Priority Date Filing Date
US16/579,217 Active US11368675B2 (en) 2015-06-05 2019-09-23 Method and device for encoding and decoding intra-frame prediction
US17/742,059 Pending US20220321875A1 (en) 2015-06-05 2022-05-11 Method and device for encoding and decoding intra-frame prediction

Country Status (4)

Country Link
US (3) US20180160113A1 (ko)
EP (3) EP3654646A1 (ko)
CN (6) CN115134596A (ko)
WO (1) WO2016195460A1 (ko)

Cited By (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20180255299A1 (en) * 2015-08-28 2018-09-06 Kt Corporation Method and device for processing video signal
US20180343455A1 (en) * 2015-11-12 2018-11-29 Lg Electronics Inc. Method and apparatus for coefficient induced intra prediction in image coding system
US20190141328A1 (en) * 2016-07-13 2019-05-09 Panasonic Intellectual Property Corporation Of America Decoder, encoder, decoding method, and encoding method
US20190182498A1 (en) * 2016-08-26 2019-06-13 Sharp Kabushiki Kaisha Image decoding apparatus and image coding apparatus
US20190253624A1 (en) * 2017-07-17 2019-08-15 Ki Baek Kim Image data encoding/decoding method and apparatus
US20190289301A1 (en) * 2016-05-23 2019-09-19 Kaonmedia Co., Ltd. Image processing method, and image encoding and decoding method using same
US20190313094A1 (en) * 2016-12-27 2019-10-10 Panasonic Intellectual Property Corporation Of America Encoder, decoder, encoding method, and decoding method
US20200059667A1 (en) * 2017-03-09 2020-02-20 Kt Corporation Video signal processing method and device
WO2020042916A1 (en) * 2018-08-27 2020-03-05 Huawei Technologies Co., Ltd. Method and Apparatus for Intra Prediction
CN111108749A (zh) * 2018-09-25 2020-05-05 北京大学 编码方法、解码方法、编码设备和解码设备
WO2020175938A1 (ko) * 2019-02-28 2020-09-03 주식회사 엑스리스 영상 신호 부호화/복호화 방법 및 이를 위한 장치
US10924747B2 (en) 2017-02-27 2021-02-16 Apple Inc. Video coding techniques for multi-view video
US10972725B2 (en) * 2018-09-03 2021-04-06 Huawei Technologies Co., Ltd. Method and apparatus for intra prediction in video coding
US10999602B2 (en) 2016-12-23 2021-05-04 Apple Inc. Sphere projected motion estimation/compensation and mode decision
US11039148B2 (en) * 2016-10-14 2021-06-15 Industry Academy Cooperation Foundation Of Sejong University Method and apparatus for encoding/decoding an image
US11093752B2 (en) 2017-06-02 2021-08-17 Apple Inc. Object tracking in multi-view video
US11102509B2 (en) * 2017-04-28 2021-08-24 Electronics And Telecommunications Research Institute Image encoding/decoding method and device, and recording medium storing bit stream
US20210266558A1 (en) * 2018-06-26 2021-08-26 Interdigital Vc Holdings, Inc. Multiple reference intra prediction using variable weights
US11128857B2 (en) * 2018-09-06 2021-09-21 Lg Electronics Inc. Intra prediction-based image coding method using MPM list and apparatus therefor
US20210329231A1 (en) * 2018-10-05 2021-10-21 Tencent America LLC Mode list generation for multi-line intra prediction
US20210352296A1 (en) * 2016-04-29 2021-11-11 Industry Academy Cooperation Foundation Of Sejong University Method and device for encoding and decoding image signal
US11178404B2 (en) * 2016-03-18 2021-11-16 Mediatek Inc. Method and apparatus of video coding
CN113678453A (zh) * 2019-04-12 2021-11-19 北京字节跳动网络技术有限公司 基于矩阵的帧内预测的上下文确定
US11197018B2 (en) * 2017-06-30 2021-12-07 Huawei Technologies Co., Ltd. Inter-frame prediction method and apparatus
US11206426B2 (en) * 2018-06-27 2021-12-21 Panasonic Intellectual Property Corporation Of America Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device using occupancy patterns
US11212558B2 (en) * 2018-02-08 2021-12-28 Panasonic Intellectual Property Corporation Of America Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
US20220030249A1 (en) * 2017-01-16 2022-01-27 Industry Academy Cooperation Foundation Of Sejong University Image encoding/decoding method and device
US11259046B2 (en) 2017-02-15 2022-02-22 Apple Inc. Processing of equirectangular object data to compensate for distortion by spherical projections
US11265584B2 (en) * 2018-06-05 2022-03-01 Beijing Bytedance Network Technology Co., Ltd. EQT depth calculation
US20220132109A1 (en) * 2019-02-21 2022-04-28 Lg Electronics Inc. Image decoding method and apparatus using intra prediction in image coding system
US11323748B2 (en) * 2018-12-19 2022-05-03 Qualcomm Incorporated Tree-based transform unit (TU) partition for video coding
US11323693B2 (en) * 2016-05-04 2022-05-03 Microsoft Technology Licensing, Llc Intra-picture prediction using non-adjacent reference lines of sample values
US20220141458A1 (en) * 2019-03-08 2022-05-05 Sony Group Corporation Information processing device, information processing method, and program
US11368709B2 (en) * 2017-09-20 2022-06-21 Panasonic Intellectual Property Corporation Of America Encoder, decoder, encoding method, and decoding method
US11432015B2 (en) * 2019-07-11 2022-08-30 Qualcomm Incorporated Adaptive loop filtering across raster-scan slices
US11445216B2 (en) * 2018-09-14 2022-09-13 Lg Electronics Inc. Image prediction method and apparatus for performing intra prediction
US11457236B2 (en) * 2017-10-23 2022-09-27 Avago Technologies International Sales Pte. Limited Block size dependent interpolation filter selection and mapping
US20220312029A1 (en) * 2021-03-29 2022-09-29 Ati Technologies Ulc Video encoding/decoding using detected pattern of pixel intensity differences
US20220377372A1 (en) * 2021-05-21 2022-11-24 Varjo Technologies Oy Method of transporting a framebuffer
US11516491B2 (en) * 2016-02-16 2022-11-29 Samsung Electronics Co., Ltd. Method of decoding an image using indicated most probable mode
US11528505B2 (en) 2018-06-25 2022-12-13 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Intra-frame prediction method and device
WO2023277487A1 (ko) * 2021-06-29 2023-01-05 주식회사 케이티 화면내 예측 기반의 비디오 신호 부호화/복호화 방법 및 장치, 그리고 비트스트림을 저장한 기록 매체
US20230024223A1 (en) * 2019-12-05 2023-01-26 Interdigital Vc Holdings France, Sas Intra sub partitions for video encoding and decoding combined with multiple transform selection, matrix weighted intra prediction or multi-reference-line intra prediction
US11589065B2 (en) 2019-06-24 2023-02-21 Hyundai Motor Company Method and apparatus for intra-prediction coding of video data
US11696035B2 (en) 2016-10-04 2023-07-04 B1 Institute Of Image Technology, Inc. Image data encoding/decoding method and apparatus
US11743456B2 (en) * 2017-07-06 2023-08-29 Lx Semicon Co., Ltd. Method and device for encoding/decoding image, and recording medium in which bitstream is stored
US11831910B2 (en) * 2017-08-21 2023-11-28 Electronics And Telecommunications Research Institute Method and apparatus for encoding/decoding video, and recording medium storing bit stream

Families Citing this family (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180040319A (ko) * 2016-10-12 2018-04-20 가온미디어 주식회사 영상 처리 방법, 그를 이용한 영상 복호화 및 부호화 방법
US10506228B2 (en) * 2016-10-04 2019-12-10 Qualcomm Incorporated Variable number of intra modes for video coding
EP3306938A1 (en) * 2016-10-05 2018-04-11 Thomson Licensing Method and apparatus for binary-tree split mode coding
US10630978B2 (en) * 2017-05-12 2020-04-21 Blackberry Limited Methods and devices for intra-coding in video compression
JP6956543B2 (ja) * 2017-07-03 2021-11-02 日本放送協会 決定装置、符号化装置、復号装置及びプログラム
US10641957B2 (en) 2017-08-29 2020-05-05 Juniper Networks, Inc. Smooth waveguide structures and manufacturing methods
US20200275099A1 (en) * 2017-09-19 2020-08-27 Samsung Electronics Co., Ltd. Image encoding method and device, and image decoding method and device
EP3711294A4 (en) 2017-11-17 2021-07-28 Fg Innovation Company Limited DEVICE AND METHOD FOR CODING VIDEO DATA ON THE BASIS OF AN ADAPTED INTRAMODUS LIST
CN111602400B (zh) 2018-01-15 2024-04-19 有限公司B1影像技术研究所 用于色度分量的帧内预测编码/解码方法和装置
US10694195B2 (en) * 2018-03-07 2020-06-23 Tencent America LLC Methods and apparatus for palette coding
CN117834857A (zh) 2018-04-24 2024-04-05 三星电子株式会社 视频编码方法和装置以及视频解码方法和装置
KR102252323B1 (ko) * 2018-05-10 2021-05-14 삼성전자주식회사 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
CN110620926B (zh) * 2018-06-20 2022-01-04 浙江大学 一种帧内预测模式编解码方法及装置
KR20200006932A (ko) * 2018-07-11 2020-01-21 인텔렉추얼디스커버리 주식회사 화면내 예측 기반의 비디오 코딩 방법 및 장치
WO2020015841A1 (en) * 2018-07-20 2020-01-23 Huawei Technologies Co., Ltd. Method and apparatus of reference sample interpolation for bidirectional intra prediction
CN116781925A (zh) * 2018-08-28 2023-09-19 鸿颖创新有限公司 编码视频数据的方法
CN112640453B (zh) 2018-09-13 2023-03-10 华为技术有限公司 帧内预测的方法和装置
CA3113370A1 (en) * 2018-09-21 2020-03-26 Huawei Technologies Co., Ltd. Intra prediction mode derivation based on neighboring blocks
WO2020073911A1 (en) * 2018-10-09 2020-04-16 Huawei Technologies Co., Ltd. Devices and methods for image and video coding
EP3866468A4 (en) * 2018-10-12 2022-07-27 Wilus Institute of Standards and Technology Inc. VIDEO SIGNAL PROCESSING METHOD AND APPARATUS USING MULTI-ASSUMPTION PREDICTION
KR20200041801A (ko) 2018-10-12 2020-04-22 인텔렉추얼디스커버리 주식회사 영상 부호화/복호화 방법 및 장치
CN109561314B (zh) * 2018-10-26 2020-12-22 嘉兴奥恒进出口有限公司 带宽压缩的自适应模板预测方法
CN109413420B (zh) * 2018-10-26 2020-10-13 吉林建筑大学 带宽压缩中复杂纹理的双模式选择预测方法
CN117478915A (zh) * 2018-11-29 2024-01-30 华为技术有限公司 用于构建应用多假设预测的块的mpm列表的编码器、解码器及相应方法
KR20200083357A (ko) 2018-12-28 2020-07-08 인텔렉추얼디스커버리 주식회사 화면 간 예측 부호화 및 복호화 방법 및 장치
KR20200083315A (ko) * 2018-12-28 2020-07-08 한국전자통신연구원 화면 내 예측 모드 유도 방법 및 장치
CN110210283B (zh) * 2019-04-09 2021-05-14 深圳市梦网视讯有限公司 一种基于换装应用的图像处理方法和系统
CN113812160B (zh) * 2019-05-09 2024-01-12 北京字节跳动网络技术有限公司 用于屏幕内容编解码的最大可能模式列表构建
JP7359936B2 (ja) 2019-07-20 2023-10-11 北京字節跳動網絡技術有限公司 パレットモードの使用の指示の条件依存符号化
CN114145013B (zh) 2019-07-23 2023-11-14 北京字节跳动网络技术有限公司 调色板模式编解码的模式确定
CN114208188A (zh) * 2019-07-29 2022-03-18 北京字节跳动网络技术有限公司 调色板模式编解码的扫描顺序改进
CN114556949A (zh) * 2019-08-22 2022-05-27 Lg电子株式会社 帧内预测装置和方法
CN113747166B (zh) * 2019-08-23 2022-12-23 杭州海康威视数字技术股份有限公司 一种编解码方法、装置及其设备
CN113794878B (zh) * 2019-09-23 2022-12-23 杭州海康威视数字技术股份有限公司 一种编解码方法、装置及其设备
CN113099240B (zh) * 2019-12-23 2022-05-31 杭州海康威视数字技术股份有限公司 一种编解码方法、装置及其设备
CN114513661B (zh) * 2022-04-20 2022-09-06 宁波康达凯能医疗科技有限公司 一种基于方向检测的帧内图像模式决策方法与系统

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5686499B2 (ja) * 2009-01-22 2015-03-18 株式会社Nttドコモ 画像予測符号化装置、方法及びプログラム、画像予測復号装置、方法及びプログラム、並びに、符号化・復号システム及び方法
KR101756442B1 (ko) * 2010-11-29 2017-07-11 에스케이텔레콤 주식회사 인트라예측모드의 중복성을 최소화하기 위한 영상 부호화/복호화 방법 및 장치
CN102595118B (zh) * 2011-01-14 2015-04-08 华为技术有限公司 一种编解码中的预测方法和预测器
US9654785B2 (en) * 2011-06-09 2017-05-16 Qualcomm Incorporated Enhanced intra-prediction mode signaling for video coding using neighboring mode
BR112013033697A2 (pt) * 2011-07-01 2017-07-11 Samsung Electronics Co Ltd método de codificação de vídeo com previsão intra usando processo de verificação para possibilidade de referência unificada, método de decodificação de vídeo e seu dispositivo
EP2560386A1 (en) * 2011-08-15 2013-02-20 MediaTek, Inc Video processing apparatus and method
WO2013023518A1 (en) * 2011-08-17 2013-02-21 Mediatek Singapore Pte. Ltd. Method and apparatus for intra prediction using non-square blocks
US9787982B2 (en) * 2011-09-12 2017-10-10 Qualcomm Incorporated Non-square transform units and prediction units in video coding
US9277219B2 (en) * 2011-10-24 2016-03-01 Telefonaktiebolaget L M Ericsson (Publ) Encoder and decoder and methods thereof for encoding/decoding a picture of a video sequence
CN103200400B (zh) 2012-01-09 2018-03-16 中兴通讯股份有限公司 一种图像层和分片层的编解码方法、编解码器和电子设备
CN109413429B (zh) * 2012-01-20 2022-05-17 杜比实验室特许公司 解码方法、视频解码设备及编码方法
KR20130105114A (ko) * 2012-03-16 2013-09-25 주식회사 아이벡스피티홀딩스 인트라 예측 모드에서의 영상 복호화 방법
WO2013157783A1 (ko) * 2012-04-15 2013-10-24 삼성전자 주식회사 참조픽처리스트 변경이 가능한 인터 예측 방법과 그 장치
US20130336406A1 (en) 2012-06-14 2013-12-19 Qualcomm Incorporated Redundancy removal for merge/skip mode motion information candidate list construction
US9826239B2 (en) * 2013-01-07 2017-11-21 Lg Electronics Inc. Video signal processing method and device
EP2936816B1 (en) * 2013-04-09 2020-04-29 MediaTek Singapore Pte Ltd. Method and apparatus for non-square intra mode coding
US9641853B2 (en) 2013-04-15 2017-05-02 Futurewei Technologies, Inc. Method and apparatus of depth prediction mode selection
US9451254B2 (en) 2013-07-19 2016-09-20 Qualcomm Incorporated Disabling intra prediction filtering
US20150110181A1 (en) 2013-10-18 2015-04-23 Samsung Electronics Co., Ltd. Methods for palette prediction and intra block copy padding
CN109889850A (zh) * 2014-02-21 2019-06-14 联发科技(新加坡)私人有限公司 视频编解码方法
WO2016048834A1 (en) * 2014-09-26 2016-03-31 Vid Scale, Inc. Intra block copy coding with temporal block vector prediction
US9918105B2 (en) * 2014-10-07 2018-03-13 Qualcomm Incorporated Intra BC and inter unification

Cited By (120)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11477452B2 (en) * 2015-08-28 2022-10-18 Kt Corporation Method and device for deriving a prediction sample in decoding/encoding video signal using binary and quad trees
US11563943B2 (en) 2015-08-28 2023-01-24 Kt Corporation Method and device for deriving a prediction sample in decoding/encoding video signal using binary and quad trees
US11470317B2 (en) 2015-08-28 2022-10-11 Kt Corporation Method and device for deriving a prediction sample in decoding/encoding video signal using binary and quad trees
US10750174B2 (en) * 2015-08-28 2020-08-18 Kt Corporation Method and device for deriving a prediction sample in decoding/encoding video signal using binary and quad trees
US20180255299A1 (en) * 2015-08-28 2018-09-06 Kt Corporation Method and device for processing video signal
US11368690B2 (en) 2015-08-28 2022-06-21 Kt Corporation Method for decoding video signal by deriving reference sample for intra prediction
US20180343455A1 (en) * 2015-11-12 2018-11-29 Lg Electronics Inc. Method and apparatus for coefficient induced intra prediction in image coding system
US10819987B2 (en) * 2015-11-12 2020-10-27 Lg Electronics Inc. Method and apparatus for coefficient induced intra prediction in image coding system
US11516491B2 (en) * 2016-02-16 2022-11-29 Samsung Electronics Co., Ltd. Method of decoding an image using indicated most probable mode
US11528495B2 (en) * 2016-02-16 2022-12-13 Samsung Electronics Co., Ltd. Method of decoding an image using indicated most probable mode
US11546624B2 (en) * 2016-02-16 2023-01-03 Samsung Electronics Co., Ltd. Method of decoding an image using indicated most probable mode
US11528494B2 (en) * 2016-02-16 2022-12-13 Samsung Electronics Co., Ltd. Method of decoding an image using indicated most probable mode
US11178404B2 (en) * 2016-03-18 2021-11-16 Mediatek Inc. Method and apparatus of video coding
US20210352296A1 (en) * 2016-04-29 2021-11-11 Industry Academy Cooperation Foundation Of Sejong University Method and device for encoding and decoding image signal
US11758127B2 (en) 2016-05-04 2023-09-12 Microsoft Technology Licensing, Llc Intra-picture prediction using non-adjacent reference lines of sample values
US11323693B2 (en) * 2016-05-04 2022-05-03 Microsoft Technology Licensing, Llc Intra-picture prediction using non-adjacent reference lines of sample values
US20190289301A1 (en) * 2016-05-23 2019-09-19 Kaonmedia Co., Ltd. Image processing method, and image encoding and decoding method using same
US11109031B2 (en) * 2016-07-13 2021-08-31 Panasonic Intellectual Property Corporation Of America Decoder, encoder, decoding method, and encoding method
US20190141328A1 (en) * 2016-07-13 2019-05-09 Panasonic Intellectual Property Corporation Of America Decoder, encoder, decoding method, and encoding method
US10863186B2 (en) * 2016-08-26 2020-12-08 Sharp Kabushiki Kaisha Image decoding apparatus and image coding apparatus
US11234011B2 (en) * 2016-08-26 2022-01-25 Sharp Kabushiki Kaisha Image decoding apparatus and image coding apparatus
US20190182498A1 (en) * 2016-08-26 2019-06-13 Sharp Kabushiki Kaisha Image decoding apparatus and image coding apparatus
US11792524B2 (en) 2016-10-04 2023-10-17 B1 Institute Of Image Technology, Inc. Image data encoding/decoding method and apparatus
US11778332B2 (en) 2016-10-04 2023-10-03 B1 Institute Of Image Technology, Inc. Image data encoding/decoding method and apparatus
US11696035B2 (en) 2016-10-04 2023-07-04 B1 Institute Of Image Technology, Inc. Image data encoding/decoding method and apparatus
US11956548B2 (en) 2016-10-04 2024-04-09 B1 Institute Of Image Technology, Inc. Image data encoding/decoding method and apparatus
US11956549B2 (en) 2016-10-04 2024-04-09 B1 Institute Of Image Technology, Inc. Image data encoding/decoding method and apparatus
US11792522B2 (en) 2016-10-04 2023-10-17 B1 Institute Of Image Technology, Inc. Image data encoding/decoding method and apparatus
US11792523B2 (en) 2016-10-04 2023-10-17 B1 Institute Of Image Technology, Inc. Image data encoding/decoding method and apparatus
US11949994B2 (en) 2016-10-04 2024-04-02 B1 Institute Of Image Technology, Inc. Image data encoding/decoding method and apparatus
US11483476B2 (en) * 2016-10-04 2022-10-25 B1 Institute Of Image Technology, Inc. Image data encoding/decoding method and apparatus
US11902668B2 (en) 2016-10-04 2024-02-13 B1 Institute Of Image Technology, Inc. Image data encoding/decoding method and apparatus
US11838640B2 (en) 2016-10-04 2023-12-05 B1 Institute Of Image Technology, Inc. Image data encoding/decoding method and apparatus
US11778331B2 (en) 2016-10-04 2023-10-03 B1 Institute Of Image Technology, Inc. Image data encoding/decoding method and apparatus
US11838639B2 (en) 2016-10-04 2023-12-05 B1 Institute Of Image Technology, Inc. Image data encoding/decoding method and apparatus
US11812155B2 (en) 2016-10-04 2023-11-07 B1 Institute Of Image Technology, Inc. Image data encoding/decoding method and apparatus
US11039148B2 (en) * 2016-10-14 2021-06-15 Industry Academy Cooperation Foundation Of Sejong University Method and apparatus for encoding/decoding an image
US20210281854A1 (en) * 2016-10-14 2021-09-09 Industry Academy Cooperation Foundation Of Sejong University Method and apparatus for encoding/decoding an image
US20210281853A1 (en) * 2016-10-14 2021-09-09 Industry Academy Cooperation Foundation Of Sejong University Method and apparatus for encoding/decoding an image
US11792409B2 (en) * 2016-10-14 2023-10-17 Industry Academy Cooperation Foundation Of Sejong University Method and apparatus for encoding/decoding an image
US11818394B2 (en) 2016-12-23 2023-11-14 Apple Inc. Sphere projected motion estimation/compensation and mode decision
US10999602B2 (en) 2016-12-23 2021-05-04 Apple Inc. Sphere projected motion estimation/compensation and mode decision
US10917641B2 (en) * 2016-12-27 2021-02-09 Panasonic Intellectual Property Corporation Of America Encoder, decoder, encoding method, and decoding method
US11570432B2 (en) * 2016-12-27 2023-01-31 Panasonic Intellectual Property Corporation Of America Encoder, decoder, encoding method, and decoding method
US20190313094A1 (en) * 2016-12-27 2019-10-10 Panasonic Intellectual Property Corporation Of America Encoder, decoder, encoding method, and decoding method
US20220030249A1 (en) * 2017-01-16 2022-01-27 Industry Academy Cooperation Foundation Of Sejong University Image encoding/decoding method and device
US11259046B2 (en) 2017-02-15 2022-02-22 Apple Inc. Processing of equirectangular object data to compensate for distortion by spherical projections
US10924747B2 (en) 2017-02-27 2021-02-16 Apple Inc. Video coding techniques for multi-view video
US11303930B2 (en) 2017-03-09 2022-04-12 Kt Corporation Video signal processing method and device for intra prediction of coding or prediction blocks based on sample position based parameters
US11310527B2 (en) 2017-03-09 2022-04-19 Kt Corporation Video signal processing method and device for intra prediction of coding or prediction blocks based on sample position based parameters
US20200059667A1 (en) * 2017-03-09 2020-02-20 Kt Corporation Video signal processing method and device
US11234020B2 (en) 2017-03-09 2022-01-25 Kt Corporation Video signal processing method and device for intra prediction of coding or prediction blocks based on sample position based parameters
US10904568B2 (en) * 2017-03-09 2021-01-26 Kt Corporation Video signal processing method and device for intra prediction of coding or prediction blocks based on sample position based parameters
US11102509B2 (en) * 2017-04-28 2021-08-24 Electronics And Telecommunications Research Institute Image encoding/decoding method and device, and recording medium storing bit stream
US20230179796A1 (en) * 2017-04-28 2023-06-08 Intellectual Discovery Co., Ltd. Image encoding/decoding method and device, and recording medium storing bit stream
US11943475B2 (en) * 2017-04-28 2024-03-26 Intellectual Discovery Co., Ltd. Image encoding/decoding method and device, and recording medium storing bitstream
US11558640B2 (en) * 2017-04-28 2023-01-17 Electronics And Telecommunications Research Institute Image encoding/decoding method and device, and recording medium storing bit stream
US11093752B2 (en) 2017-06-02 2021-08-17 Apple Inc. Object tracking in multi-view video
US11197018B2 (en) * 2017-06-30 2021-12-07 Huawei Technologies Co., Ltd. Inter-frame prediction method and apparatus
US11743456B2 (en) * 2017-07-06 2023-08-29 Lx Semicon Co., Ltd. Method and device for encoding/decoding image, and recording medium in which bitstream is stored
US20190253624A1 (en) * 2017-07-17 2019-08-15 Ki Baek Kim Image data encoding/decoding method and apparatus
US11831910B2 (en) * 2017-08-21 2023-11-28 Electronics And Telecommunications Research Institute Method and apparatus for encoding/decoding video, and recording medium storing bit stream
US20230269390A1 (en) * 2017-09-20 2023-08-24 Panasonic Intellectual Property Corporation Of America Encoder, decoder, encoding method, and decoding method
US20230262254A1 (en) * 2017-09-20 2023-08-17 Panasonic Intellectual Property Corporation Of America Encoder, decoder, encoding method, and decoding method
US20220295092A1 (en) * 2017-09-20 2022-09-15 Panasonic Intellectual Property Corporation Of America Encoder, decoder, encoding method, and decoding method
US11671617B2 (en) * 2017-09-20 2023-06-06 Panasonic Intellectual Property Corporation Of America Encoder, decoder, encoding method, and decoding method
US11368709B2 (en) * 2017-09-20 2022-06-21 Panasonic Intellectual Property Corporation Of America Encoder, decoder, encoding method, and decoding method
US11457236B2 (en) * 2017-10-23 2022-09-27 Avago Technologies International Sales Pte. Limited Block size dependent interpolation filter selection and mapping
US11882317B2 (en) 2018-02-08 2024-01-23 Panasonic Intellectual Property Corporation Of America Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
US11212558B2 (en) * 2018-02-08 2021-12-28 Panasonic Intellectual Property Corporation Of America Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device
US11570482B2 (en) 2018-06-05 2023-01-31 Beijing Bytedance Network Technology Co., Ltd. Restriction of extended quadtree
US11445224B2 (en) 2018-06-05 2022-09-13 Beijing Bytedance Network Technology Co., Ltd. Shape of EQT subblock
US11265584B2 (en) * 2018-06-05 2022-03-01 Beijing Bytedance Network Technology Co., Ltd. EQT depth calculation
US11381848B2 (en) 2018-06-05 2022-07-05 Beijing Bytedance Network Technology Co., Ltd. Main concept of EQT, unequally four partitions and signaling
US11438635B2 (en) 2018-06-05 2022-09-06 Beijing Bytedance Network Technology Co., Ltd. Flexible tree partitioning processes for visual media coding
US11936908B2 (en) 2018-06-25 2024-03-19 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Intra-frame prediction method and device
US11930210B2 (en) 2018-06-25 2024-03-12 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Intra-frame prediction method and device
US11528505B2 (en) 2018-06-25 2022-12-13 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Intra-frame prediction method and device
US11936907B2 (en) 2018-06-25 2024-03-19 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Intra-frame prediction method and device
US11936906B2 (en) 2018-06-25 2024-03-19 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Intra-frame prediction method and device
US20210266558A1 (en) * 2018-06-26 2021-08-26 Interdigital Vc Holdings, Inc. Multiple reference intra prediction using variable weights
US11956436B2 (en) * 2018-06-26 2024-04-09 Interdigital Vc Holdings, Inc. Multiple reference intra prediction using variable weights
US11206426B2 (en) * 2018-06-27 2021-12-21 Panasonic Intellectual Property Corporation Of America Three-dimensional data encoding method, three-dimensional data decoding method, three-dimensional data encoding device, and three-dimensional data decoding device using occupancy patterns
WO2020042916A1 (en) * 2018-08-27 2020-03-05 Huawei Technologies Co., Ltd. Method and Apparatus for Intra Prediction
US11044469B2 (en) 2018-08-27 2021-06-22 Huawei Technologies Co., Ltd. Method and apparatus for intra prediction
CN112385227A (zh) * 2018-08-27 2021-02-19 华为技术有限公司 用于帧内预测的方法和装置
US11647182B2 (en) * 2018-09-03 2023-05-09 Huawei Technologies Co., Ltd. Method and apparatus for intra prediction in video coding
US20210203927A1 (en) * 2018-09-03 2021-07-01 Huawei Technologies Co., Ltd. Method and Apparatus for Intra Prediction in Video Coding
US10972725B2 (en) * 2018-09-03 2021-04-06 Huawei Technologies Co., Ltd. Method and apparatus for intra prediction in video coding
US20230199173A1 (en) * 2018-09-06 2023-06-22 Lg Electronics Inc. Intra prediction-based image coding method using mpm list and apparatus therefor
US11616947B2 (en) * 2018-09-06 2023-03-28 Lg Electronics Inc. Intra prediction-based image coding method using MPM list and apparatus therefor
US11128857B2 (en) * 2018-09-06 2021-09-21 Lg Electronics Inc. Intra prediction-based image coding method using MPM list and apparatus therefor
US11889063B2 (en) * 2018-09-06 2024-01-30 Lg Electronics Inc. Intra prediction-based image coding method using MPM list and apparatus therefor
US20210360231A1 (en) * 2018-09-06 2021-11-18 Lg Electronics Inc. Intra prediction-based image coding method using mpm list and apparatus therefor
US11843801B2 (en) 2018-09-14 2023-12-12 Lg Electronics Inc. Image prediction method and apparatus for performing intra prediction
US11445216B2 (en) * 2018-09-14 2022-09-13 Lg Electronics Inc. Image prediction method and apparatus for performing intra prediction
CN111108749A (zh) * 2018-09-25 2020-05-05 北京大学 编码方法、解码方法、编码设备和解码设备
US11785212B2 (en) * 2018-10-05 2023-10-10 Tencent America LLC Mode list generation for multi-line intra prediction
US20210329231A1 (en) * 2018-10-05 2021-10-21 Tencent America LLC Mode list generation for multi-line intra prediction
US11323748B2 (en) * 2018-12-19 2022-05-03 Qualcomm Incorporated Tree-based transform unit (TU) partition for video coding
US20220132109A1 (en) * 2019-02-21 2022-04-28 Lg Electronics Inc. Image decoding method and apparatus using intra prediction in image coding system
US11936895B2 (en) 2019-02-28 2024-03-19 Apple Inc. Method for encoding/decoding image signal, and device therefor
WO2020175938A1 (ko) * 2019-02-28 2020-09-03 주식회사 엑스리스 영상 신호 부호화/복호화 방법 및 이를 위한 장치
US11711534B2 (en) 2019-02-28 2023-07-25 Apple Inc. Method for encoding/decoding image signal, and device therefor
US20220141458A1 (en) * 2019-03-08 2022-05-05 Sony Group Corporation Information processing device, information processing method, and program
US11909964B2 (en) * 2019-03-08 2024-02-20 Sony Group Corporation Information processing device, information processing method, and program
CN113678453A (zh) * 2019-04-12 2021-11-19 北京字节跳动网络技术有限公司 基于矩阵的帧内预测的上下文确定
US11909994B2 (en) 2019-06-24 2024-02-20 Hyundai Motor Company Method and apparatus for intra-prediction coding of video data
US11917180B2 (en) 2019-06-24 2024-02-27 Hyundai Motor Company Method and apparatus for intra-prediction coding of video data
US11917181B2 (en) 2019-06-24 2024-02-27 Hyundai Motor Company Method and apparatus for intra-prediction coding of video data
US11800127B2 (en) 2019-06-24 2023-10-24 Hyundai Motor Company Method and apparatus for intra-prediction coding of video data
US11792418B2 (en) 2019-06-24 2023-10-17 Hyundai Motor Company Method and apparatus for intra-prediction coding of video data
US11589065B2 (en) 2019-06-24 2023-02-21 Hyundai Motor Company Method and apparatus for intra-prediction coding of video data
US11432015B2 (en) * 2019-07-11 2022-08-30 Qualcomm Incorporated Adaptive loop filtering across raster-scan slices
US20230024223A1 (en) * 2019-12-05 2023-01-26 Interdigital Vc Holdings France, Sas Intra sub partitions for video encoding and decoding combined with multiple transform selection, matrix weighted intra prediction or multi-reference-line intra prediction
US11831900B2 (en) * 2021-03-29 2023-11-28 Ati Technologies Ulc Video encoding/decoding using detected pattern of pixel intensity differences
US20220312029A1 (en) * 2021-03-29 2022-09-29 Ati Technologies Ulc Video encoding/decoding using detected pattern of pixel intensity differences
US11863786B2 (en) * 2021-05-21 2024-01-02 Varjo Technologies Oy Method of transporting a framebuffer
US20220377372A1 (en) * 2021-05-21 2022-11-24 Varjo Technologies Oy Method of transporting a framebuffer
WO2023277487A1 (ko) * 2021-06-29 2023-01-05 주식회사 케이티 화면내 예측 기반의 비디오 신호 부호화/복호화 방법 및 장치, 그리고 비트스트림을 저장한 기록 매체

Also Published As

Publication number Publication date
CN107925759A (zh) 2018-04-17
WO2016195460A1 (ko) 2016-12-08
US20200021801A1 (en) 2020-01-16
EP3654646A1 (en) 2020-05-20
EP3306920A1 (en) 2018-04-11
CN115134596A (zh) 2022-09-30
CN115134595A (zh) 2022-09-30
CN115134594A (zh) 2022-09-30
EP4013051A1 (en) 2022-06-15
CN115134593A (zh) 2022-09-30
US20220321875A1 (en) 2022-10-06
CN107925759B (zh) 2022-06-03
EP3306920A4 (en) 2019-01-16
US11368675B2 (en) 2022-06-21
CN115134591A (zh) 2022-09-30

Similar Documents

Publication Publication Date Title
US20220321875A1 (en) Method and device for encoding and decoding intra-frame prediction
KR101988888B1 (ko) 화면 내 예측 모드에 대한 부호화/복호화 방법 및 장치
KR102558270B1 (ko) 적응적인 디블록킹 필터링에 관한 부호화/복호화 방법 및 장치
KR102377789B1 (ko) 움직임 벡터 차분치를 이용하는 영상 부호화 및 복호화 방법과 영상 복호화 장치
KR101966195B1 (ko) 화면내 예측에서의 참조 화소 구성에 관한 부호화/복호화 방법 및 장치
KR102514392B1 (ko) 움직임 벡터 차분치를 이용하는 영상 부호화 및 복호화 방법과 영상 복호화 장치
KR101782156B1 (ko) 적응적인 디블록킹 필터링을 이용하는 영상 부호화 방법과 영상 복호화 방법 및 장치
KR102476230B1 (ko) 움직임 벡터 정밀성을 이용하는 영상 부호화 및 복호화 방법과 영상 복호화 장치

Legal Events

Date Code Title Description
AS Assignment

Owner name: INTELLECTUAL DISCOVERY CO., LTD., KOREA, REPUBLIC

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:JEONG, JE CHANG;KIM, KI BAEK;HWANG, UNG;SIGNING DATES FROM 20171208 TO 20171213;REEL/FRAME:045433/0620

STPP Information on status: patent application and granting procedure in general

Free format text: DOCKETED NEW CASE - READY FOR EXAMINATION

STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STPP Information on status: patent application and granting procedure in general

Free format text: RESPONSE TO NON-FINAL OFFICE ACTION ENTERED AND FORWARDED TO EXAMINER

STPP Information on status: patent application and granting procedure in general

Free format text: NON FINAL ACTION MAILED

STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION

AS Assignment

Owner name: DOLBY LABORATORIES LICENSING CORPORATION, CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:INTELLECTUAL DISCOVERY CO., LTD.;REEL/FRAME:058356/0603

Effective date: 20211102