throbber
DESCRIPTION
`
`ENCODER, DECODER, ENCODING METHOD, AND DECODING
`
`METHOD
`
`Cross reference to Related Application
`
`The present application claims the benefit of U.S. Provisional
`
`Patent Application No. 62/947,185 filed December 12, 2019. The
`
`entire disclosure of the above-identified application,
`
`including the
`
`specification, drawings
`
`and claims
`
`is
`
`incorporated herein by
`
`10
`
`reference in its entirety.
`
`Field
`
`The
`
`present disclosure
`
`relates
`
`to
`
`video
`
`coding,
`
`and
`
`particularly to systems, constituent elements, and methods in video
`
`15
`
`encoding and decoding.
`
`Background
`
`With advancement in video coding technology, from H.261 and
`
`MPEG-1
`
`to H.264/AVC (Advanced Video Coding), MPEG-LA,
`
`20
`
`H.265/HEVC (High Efficiency Video Coding)
`
`and H.266/VVC
`
`(Versatile Video Codec), there remains a constant need to provide
`
`improvements and optimizations to the video coding technology to
`
`process an ever-increasing amount of digital video data in various
`
`
`
`applications. to_furtherThe present’ disclosure’ relates
`
`
`
`
`
`
`
`
`
`25
`
`advancements, improvements and optimizations in video coding.
`
`Note that Non-Patent Literature (NPL)
`
`1
`
`relates to one
`
`example of a conventional standard regarding the above-described
`
`video coding technology.
`
`30
`
`Citation List
`
`Non Patent Literature
`
`NPL 1: H.265 (ISO/IEC 23008-2 HEVC)/HEVC (High Efficiency
`
`Video Coding)
`
`35
`
`Summary
`
`

`

`For example, an encoder according to an aspect of the present
`
`disclosure includes circuitry and memory connected to the circuitry,
`
`and the circuitry, in operation: determines a mode to be applied to a
`
`block from a plurality of merge modes based on a width of the block
`
`and a height of the block; when the mode determined is a first mode,
`
`stores in a bitstream an index indicating a distance and an angle that
`
`define two partitions in the block, and encodes the block using the
`
`first mode; and disables storing of the index in the bitstream when (i)
`
`the width is at least 8 times as much as the height or (ii) the height
`
`10
`
`is at least 8 times as much as the width.
`
`In video coding technology, new methods are desired to be
`
`proposed in order to improve coding efficiency, enhance image
`
`quality, and reduce circuit scale.
`
`Each of embodiments, or each of part of constituent elements
`
`15
`
`and methods in the present disclosure enables, for example, at least
`
`one of the following: improvement in coding efficiency, enhancement
`
`in
`
`image
`
`quality,
`
`reduction
`
`in
`
`processing
`
`amount
`
`encoding/decoding,
`
`reduction in
`
`circuit
`
`scale,
`
`improvement
`
`oof
`
`in
`
`processing speed of encoding/decoding, etc. Alternatively, each of
`
`20
`
`embodiments, or each of part of constituent elements and methods
`
`in
`
`the present disclosure enables,
`
`in encoding and decoding,
`
`appropriate selection of either an element such as a filter, a block, a
`
`size, a motion vector, a reference picture, and a reference block or an
`
`operation.
`
`It
`
`is to be noted that the present disclosure includes
`
`25
`
`disclosure regarding configurations and methods which may provide
`
`advantages other than the above-described ones. Examples of such
`
`configurations and methods include a configuration or method for
`
`improving coding efficiency while reducing increase in processing
`
`amount.
`
`30
`
`Additional benefits and advantages according to an aspect of
`
`the present disclosure will become apparent from the specification
`
`and drawings. The benefits and/or advantages may be individually
`
`obtained
`
`by
`
`the various
`
`embodiments
`
`and
`
`features
`
`of
`
`the
`
`specification and drawings, and not all of which need to be provided
`
`35
`
`in order to obtain one or more of such benefits and/or advantages.
`-2-
`
`

`

`It is to be noted that these general or specific aspects may be
`
`implemented using a system, an integrated circuit, a computer
`
`program, or a computer-readable recording medium such as a
`
`CD-ROM, or any combination of systems, methods,
`
`integrated
`
`circuits, computer programs, and recording media.
`
`Brief Description of Drawings
`
`These and other advantages
`
`and features will become
`
`apparent from the following description thereof taken in conjunction
`
`10
`
`with the accompanying Drawings, by way of non-limiting examples of
`
`embodiments disclosed herein.
`
`[FIG. 1]
`
`FIG. 1 is a schematic diagram illustrating one example of a
`
`configuration of a transmission system according to an embodiment.
`
`15
`
`[FIG. 2]
`
`FIG. 2 is a diagram illustrating one example of a hierarchical
`
`structure of data in a stream.
`
`[FIG. 3]
`
`FIG.
`
`3
`
`is
`
`a diagram illustrating one example of a
`
`slice
`
`20
`
`configuration.
`
`[FIG. 4]
`
`FIG.
`
`4
`
`is
`
`a diagram illustrating one example of
`
`a
`
`tile
`
`configuration.
`
`[FIG. 5]
`
`25
`
`FIG. 5 is a diagram illustrating one example of an encoding
`
`structure in scalable encoding.
`
`[FIG. 6]
`
`FIG. 6 is a diagram illustrating one example of an encoding
`
`structure in scalable encoding.
`
`30
`
`[FIG. 7]
`
`FIG. 7 is
`
`a block diagram illustrating one example of a
`
`functional configuration of an encoder according to an embodiment.
`
`[FIG. 8]
`
`FIG. 8 is a block diagram illustrating a mounting example of
`
`35
`
`the encoder.
`
`- 3 -
`
`

`

`[FIG. 9]
`
`FIG. 9 is a flow chart illustrating one example of an overall
`
`encoding process performed by the encoder.
`
`[FIG. 10]
`
`FIG. 10 is a diagram illustrating one example of block splitting.
`
`[FIG. 11]
`
`FIG. 11 is a diagram illustrating one example of a functional
`
`configuration of a splitter.
`
`[FIG. 12]
`
`10
`
`FIG. 12 is a diagram illustrating examples of splitting patterns.
`
`[FIG. 13A]
`
`FIG. 13A is a diagram illustrating one example of a syntax tree
`
`of a splitting pattern.
`
`[FIG. 13B]
`
`15
`
`FIG. 13B is a diagram illustrating another example of a syntax
`
`tree of a splitting pattern.
`
`[FIG. 14]
`
`FIG. 14 is a chart illustrating transform basis functions for
`
`each transform type.
`
`20
`
`[FIG. 15]
`
`FIG. 15 is a diagram illustrating examples of SVT.
`
`[FIG. 16]
`
`FIG. 16 is a flow chart illustrating one example of a process
`
`performed by a transformer.
`
`25
`
`[FIG. 17]
`
`FIG. 17 is a flow chart
`
`illustrating another example of a
`
`process performed by the transformer.
`
`[FIG. 18]
`
`FIG. 18 is a block diagram illustrating one example of a
`
`30
`
`functional configuration of a quantizer.
`
`[FIG. 19]
`
`FIG. 19 is a flow chart illustrating one example of quantization
`
`performed by the quantizer.
`
`[FIG. 20]
`
`35
`
`FIG. 20 is a block diagram illustrating one example of a
`
`-4-
`
`

`

`functional configuration of an entropy encoder.
`
`[FIG. 21]
`
`FIG. 21 is a diagram illustrating a flow of CABAC in the entropy
`
`encoder.
`
`[FIG. 22]
`
`FIG. 22 is a block diagram illustrating one example of a
`
`functional configuration of a loop filter.
`
`[FIG. 23A]
`
`FIG. 23A is a diagram illustrating one example of a filter shape
`
`10
`
`used in an adaptive loop filter (ALF).
`
`[FIG. 23B]
`
`FIG. 23B is a diagram illustrating another example of a filter
`
`shape used in an ALF.
`
`[FIG. 23C]
`
`15
`
`FIG. 23C is a diagram illustrating another example of a filter
`
`shape used in an ALF.
`
`[FIG. 23D]
`
`FIG. 23D is a diagram illustrating an example where Y samples
`
`(first component) are used for a cross component ALF (CCALF) for Cb
`
`20
`
`and a CCALF for Cr (components different from the first component).
`
`[FIG. 23E]
`
`FIG. 23E is a diagram illustrating a diamond shaped filter.
`
`[FIG. 23F]
`
`FIG. 23F is a diagram illustrating an example for a joint
`
`25
`
`chroma CCALF (JC-CCALF).
`
`[FIG. 23G]
`
`FIG. 23G is a diagram illustrating an example for JC-CCALF
`
`weight index candidates.
`
`[FIG. 24]
`
`30
`
`FIG. 24 is a block diagram illustrating one example of a
`
`specific configuration of a loop filter which functions as a DBF.
`
`[FIG. 25]
`
`FIG. 25 is a diagram illustrating an example of a deblocking
`
`filter having a symmetrical filtering characteristic with respect to a
`
`35
`
`block boundary.
`
`- 5 -
`
`

`

`[FIG. 26]
`
`FIG. 26 is a diagram for illustrating a block boundary on which
`
`a deblocking filter process is performed.
`
`[FIG. 27]
`
`FIG. 27 is a diagram illustrating examples of Bs values.
`
`[FIG. 28]
`
`FIG. 28 is a flow chart illustrating one example of a process
`
`performed by a predictor of the encoder.
`
`[FIG. 29]
`
`10
`
`FIG. 29 is a flow chart
`
`illustrating another example of a
`
`process performed by the predictor of the encoder.
`
`[FIG. 30]
`
`FIG. 30 is a flow chart
`
`illustrating another example of a
`
`process performed by the predictor of the encoder.
`
`15
`
`[FIG. 31]
`
`FIG. 31 is a diagram is a diagram illustrating one example of
`
`sixty-seven intra prediction modes used in intra prediction.
`
`[FIG. 32]
`
`FIG. 32 is a flow chart illustrating one example of a process
`
`20
`
`performed by an intra predictor.
`
`[FIG. 33]
`
`FIG. 33 is
`
`a diagram illustrating examples of
`
`reference
`
`pictures.
`
`[FIG. 34]
`
`25
`
`FIG. 34 is a diagram illustrating examples of reference picture
`
`lists.
`
`[FIG. 35]
`
`FIG. 35 is a flowchart illustrating a basic processing flow of
`
`inter prediction.
`
`30
`
`[FIG. 36]
`
`FIG. 36 is
`
`a
`
`flow chart
`
`illustrating one example of MV
`
`derivation.
`
`[FIG. 37]
`
`FIG. 37 is a flow chart
`
`illustrating another example of MV
`
`35
`
`derivation.
`
`- 6 -
`
`

`

`[FIG. 38A]
`
`
`
`
`
`
`
`
`
`
`
`
`
`FIG. diagram_illustrating38A is a one example. of
`
`categorization of modes for MV derivation.
`
`[FIG. 38B]
`
`
`
`
`
`
`
`
`
`FIG. diagram_illustrating38B is a one example of
`
`
`
`
`
`categorization of modes for MV derivation.
`
`[FIG. 39]
`
`FIG. 39 is
`
`a
`
`flow chart
`
`illustrating an example of
`
`inter
`
`prediction by normal inter mode.
`
`10
`
`[FIG. 40]
`
`FIG. 40 is
`
`a
`
`flow chart
`
`illustrating an example of
`
`inter
`
`prediction by normal merge mode.
`
`[FIG. 41]
`
`FIG. 41 is a diagram for illustrating one example of an MV
`
`15
`
`derivation process by normal merge mode.
`
`[FIG. 42]
`
`FIG. 42 is a diagram for illustrating one example of an MV
`
`derivation process by HMVP mode.
`
`[FIG. 43]
`
`20
`
`FIG. 43 is a flow chart illustrating one example of frame rate
`
`up conversion (FRUC).
`
`[FIG. 44]
`
`FIG. 44 is a diagram for illustrating one example of pattern
`
`matching (bilateral matching) between two blocks located along a
`
`25
`
`motion trajectory.
`
`[FIG. 45]
`
`FIG. 45 is a diagram for illustrating one example of pattern
`
`matching (template matching) between a template in a current
`
`picture and a block in a reference picture.
`
`30
`
`[FIG. 46A]
`
`FIG. 46A is a diagram for illustrating one example of MV
`
`derivation in units of a sub-block in affine mode in which two control
`
`points are used.
`
`[FIG. 46B]
`
`35
`
`FIG. 46B is a diagram for illustrating one example of MV
`
`- 7 -
`
`

`

`derivation in units of a sub-block in affine mode in which three
`
`control points are used.
`
`[FIG. 47A]
`
`FIG. 47A is a conceptual diagram for illustrating one example
`
`of MV derivation at control points in an affine mode.
`
`[FIG. 47B]
`
`FIG. 47B is a conceptual diagram for illustrating one example
`
`of MV derivation at control points in an affine mode.
`
`[FIG. 47C]
`
`10
`
`FIG. 47C is a conceptual diagram for illustrating one example
`
`of MV derivation at control points in an affine mode.
`
`[FIG. 48A]
`
`FIG. 48A is a diagram for illustrating an affine mode in which
`
`two control points are used.
`
`15
`
`[FIG. 48B]
`
`FIG. 48B is a diagram for illustrating an affine mode in which
`
`three control points are used.
`
`[FIG. 49A]
`
`FIG. 49A is a conceptual diagram for illustrating one example
`
`20
`
`of a method for MV derivation at control points when the number of
`
`control points for an encoded block and the number of control points
`
`for a current block are different from each other.
`
`[FIG. 49B]
`
`FIG. 49B is a conceptual diagram for
`
`illustrating another
`
`25
`
`example of a method for MV derivation at control points when the
`
`number of control points for an encoded block and the number of
`
`control points for a current block are different from each other.
`
`[FIG. 50]
`
`FIG. 50 is a flow chartillustrating one example of the affine
`
`30
`
`merge mode.
`
`[FIG. 51]
`
`FIG. 51 is a flow chart illustrating one example of a process in
`
`affine inter mode.
`
`[FIG. 52A]
`
`35
`
`FIG. 52A is
`
`a diagram for
`- 8 -
`
`illustrating generation of
`
`two
`
`

`

`triangular prediction images.
`
`[FIG. 52B]
`
`FIG. 52B is a conceptual diagram illustrating examples of a
`
`first portion of a first partition and first and second sets of samples.
`
`[FIG. 52C]
`
`FIG. 52C is a conceptual diagram illustrating a first portion of
`
`a first partition.
`
`[FIG. 53]
`
`FIG. 53 is a flow chart illustrating one example of a triangle
`
`10
`
`mode.
`
`[FIG. 54]
`
`FIG. 54 is a diagram illustrating one example of an ATMVP
`
`mode in which an MV is derived in units of a sub-block.
`
`[FIG. 55]
`
`15
`
`FIG. 55 is a diagram illustrating a relationship between a
`
`merge mode and dynamic motion vector refreshing (DMVR).
`
`[FIG. 56]
`
`FIG. 56 is a conceptual diagram for illustrating one example of
`
`DMVR.
`
`20
`
`[FIG. 57]
`
`FIG. 57 is
`
`a conceptual diagram for
`
`illustrating another
`
`example of DMVR for determining an MV.
`
`[FIG. 58A]
`
`FIG. 58A is a diagram illustrating one example of motion
`
`25
`
`estimation in DMVR.
`
`[FIG. 58B]
`
`FIG. 58B is a flow chart illustrating one example of motion
`
`estimation in DMVR.
`
`[FIG. 59]
`
`30
`
`FIG. 59 is a flow chart illustrating one example of generation
`
`of a prediction image.
`
`[FIG. 60]
`
`FIG. 60 is
`
`a
`
`flow chart
`
`illustrating another example of
`
`generation of a prediction image.
`
`35
`
`[FIG. 61]
`
`- 9 -
`
`

`

`FIG. 61 is a flow chart illustrating one example of a correction
`
`process
`
`of
`
`a
`
`prediction
`
`image
`
`by overlapped
`
`block motion
`
`compensation (OBMC).
`
`[FIG. 62]
`
`FIG. 62 is a conceptual diagram for illustrating one example of
`
`a prediction image correction process by OBMC.
`
`[FIG. 63]
`
`FIG. 63 is a diagram for illustrating a model assuming uniform
`
`linear motion.
`
`10
`
`[FIG. 64]
`
`FIG. 64 is
`
`a
`
`flow chart
`
`illustrating one example of
`
`inter
`
`prediction according to BIO.
`
`[FIG. 65]
`
`FIG. 65 is a diagram illustrating one example of a functional
`
`15
`
`configuration of an inter predictor which performs inter prediction
`
`according to BIO.
`
`[FIG. 66A]
`
`FIG. 66A is
`
`a diagram for
`
`illustrating one example of a
`
`prediction image generation method using a luminance correction
`
`20
`
`process by local illumination compensation (LIC).
`
`[FIG. 66B]
`
`FIG. 66B is a flow chart illustrating one example of a prediction
`
`image generation method using a luminance correction process by
`
`LIC.
`
`25
`
`[FIG. 67]
`
`FIG.
`
`67
`
`is
`
`a
`
`block diagram illustrating
`
`a_
`
`functional
`
`configuration of a decoder according to an embodiment.
`
`[FIG. 68]
`
`FIG. 68 is a block diagram illustrating a mounting example of
`
`30
`
`a decoder.
`
`[FIG. 69]
`
`FIG. 69 is a flow chart illustrating one example of an overall
`
`decoding process performed by the decoder.
`
`[FIG. 70]
`
`35
`
`FIG. 7O is a diagram illustrating a relationship between a
`-10-
`
`

`

`splitting determiner and other constituent elements.
`
`[FIG. 71]
`
`FIG. 71 is a block diagram illustrating one example of a
`
`functional configuration of an entropy decoder.
`
`[FIG. 72]
`
`FIG. 72 is a diagram illustrating a flow of CABAC in the entropy
`
`decoder.
`
`[FIG. 73]
`
`FIG. 73 is a block diagram illustrating one example of a
`
`10
`
`functional configuration of an inverse quantizer.
`
`[FIG. 74]
`
`FIG. 74 is a flow chart
`
`illustrating one example of inverse
`
`quantization performed by the inverse quantizer.
`
`[FIG. 75]
`
`15
`
`FIG. 75 is a flow chart illustrating one example of a process
`
`performed by an inverse transformer.
`
`[FIG. 76]
`
`FIG. 76 is a flow chart
`
`illustrating another example of a
`
`process performed by the inverse transformer.
`
`20
`
`[FIG. 77]
`
`FIG. 77 is a block diagram illustrating one example of a
`
`functional configuration of a loop filter.
`
`[FIG. 78]
`
`FIG. 78 is a flow chart illustrating one example of a process
`
`25
`
`performed by a predictor of the decoder.
`
`[FIG. 79]
`
`FIG. 79 is a flow chart
`
`illustrating another example of a
`
`process performed by the predictor of the decoder.
`
`[FIG. 8OA]
`
`30
`
`FIG. 80A is a flow chart illustrating a portion of other example
`
`of a process performed by the predictor of the decoder.
`
`[FIG. 80B]
`
`FIG. 80B is a flow chart illustrating the remaining portion of
`
`the other example of the process performed by the predictor of the
`
`35
`
`decoder.
`
`- 11 -
`
`

`

`[FIG. 81]
`
`FIG. 81 is a diagram illustrating one example of a process
`
`performed by an intra predictor of the decoder.
`
`[FIG. 82]
`
`FIG. 82 is
`
`a
`
`flow chart
`
`illustrating one example of MV
`
`derivation in the decoder.
`
`[FIG. 83]
`
`FIG. 83 is a flow chart
`
`illustrating another example of MV
`
`derivation in the decoder.
`
`10
`
`[FIG. 84]
`
`FIG. 84 is
`
`a
`
`flow chart
`
`illustrating an example of
`
`inter
`
`prediction by normal inter mode in the decoder.
`
`[FIG. 85]
`
`FIG. 85 is
`
`a
`
`flow chart
`
`illustrating an example of
`
`inter
`
`15
`
`prediction by normal merge mode in the decoder.
`
`[FIG. 86]
`
`FIG. 86 is
`
`a
`
`flow chart
`
`illustrating an example of
`
`inter
`
`prediction by FRUC mode in the decoder.
`
`[FIG. 87]
`
`20
`
`FIG. 87 is
`
`a
`
`flow chart
`
`illustrating an example of
`
`inter
`
`prediction by affine merge mode in the decoder.
`
`[FIG. 88]
`
`FIG. 88 is
`
`a
`
`flow chart
`
`illustrating an example of
`
`inter
`
`prediction by affine inter mode in the decoder.
`
`25
`
`[FIG. 89]
`
`FIG. 89 is
`
`a
`
`flow chart
`
`illustrating an example of
`
`inter
`
`prediction by triangle mode in the decoder.
`
`[FIG. 90]
`
`FIG. 90 is a flow chart
`
`illustrating an example of motion
`
`30
`
`estimation by DMVR in the decoder.
`
`[FIG. 91]
`
`FIG. 91 is a flow chart illustrating one specific example of
`
`motion estimation by DMVR in the decoder.
`
`[FIG. 92]
`
`35
`
`FIG. 92 is a flow chart illustrating one example of generation
`-12-
`
`

`

`of a prediction image in the decoder.
`
`[FIG. 93]
`
`FIG. 93 is
`
`a
`
`flow chart
`
`illustrating another example of
`
`generation of a prediction image in the decoder.
`
`[FIG. 94]
`
`FIG. 94 is
`
`a
`
`flow chart
`
`illustrating another example of
`
`correction of a prediction image by OBMC in the decoder.
`
`[FIG. 95]
`
`FIG. 95 is
`
`a
`
`flow chart
`
`illustrating another example of
`
`10
`
`correction of a prediction image by BIO in the decoder.
`
`[FIG. 96]
`
`FIG. 96 is
`
`a
`
`flow chart
`
`illustrating another example of
`
`correction of a prediction image by LIC in the decoder.
`
`[FIG. 97]
`
`15
`
`FIG. 97 is a conceptual diagram illustrating a partitioning line
`
`used in a wedge mode.
`
`[FIG. 98]
`
`FIG. 98 is a flow chart illustrating processing of encoding a
`
`block using the wedge mode.
`
`20
`
`[FIG. 99]
`
`FIG. 99 is a conceptual diagram illustrating an example of a
`
`plurality of partitioning line candidate sets.
`
`[FIG. 100]
`
`FIG. 100 is a conceptual diagram illustrating a plurality of
`
`25
`
`partitioning line candidate sets according to Variation 1.
`
`[FIG. 101]
`
`FIG. 101 is a conceptual diagram illustrating a plurality of
`
`partitioning line candidate sets according to Variation 2.
`
`[FIG. 102]
`
`30
`
`FIG. 102 is a conceptual diagram illustrating a plurality of
`
`partitioning line candidate sets according to Variation 3.
`
`[FIG. 103]
`
`FIG. 103 is a conceptual diagram illustrating an example of a
`
`partitioning line when the width-to-height ratio is high.
`
`35
`
`[FIG. 104]
`
`-13-
`
`

`

`FIG. 104 is a flow chart illustrating operations of an encoder
`
`according to an embodiment.
`
`[FIG. 105]
`
`FIG. 105 is a flow chart illustrating operations of a decoder
`
`according to the embodiment.
`
`[FIG. 106]
`
`FIG. 106 is a diagram illustrating an overall configuration of a
`
`content providing system for implementing a content distribution
`
`service.
`
`10
`
`[FIG. 107]
`
`FIG. 107 is a diagram illustrating an example of a display
`
`screen of a web page.
`
`[FIG. 108]
`
`FIG. 108 is a diagram illustrating an example of a display
`
`15
`
`screen of a web page.
`
`[FIG. 109]
`
`FIG.
`
`109
`
`is
`
`a diagram illustrating one
`
`example
`
`of
`
`a
`
`smartphone.
`
`[FIG. 110]
`
`20
`
`FIG. 110 is a diagram illustrating an example of a smartphone.
`
`Description of Embodiments
`
`[Introduction]
`
`For example, to encode a video, a prediction image of a block
`
`25
`
`in a picture included in the video is generated, and a difference image
`
`between the prediction image and the original image of the block is
`
`encoded.
`
`To decode a video, a difference image is decoded, a
`
`prediction image is generated, and the prediction image and the
`
`difference image are added to generate a reconstructed image of a
`
`30
`
`block. This way, the code amount is reduced.
`
`A prediction image of a block may be generated by splitting the
`
`block into two partitions and applying two different prediction
`
`processes to the two partitions.
`
`For example, a partitioning line
`
`may be determined, and the block may be split into two partitions
`
`35
`
`along the partitioning line. The partitioning line can be flexibly
`
`- 14 -
`
`

`

`determined by a distance from the center of the block and an angle
`
`corresponding to the partitioning line. This makes it possible to
`
`generate various prediction images.
`
`However, there are cases where it is inappropriate to define
`
`two partitions by a distance and an angle.
`
`By eliminating such an
`
`operation, there is a possibility of reducing useless processing and
`
`enhancing the processing efficiency.
`
`In view of the above, an encoder according to an aspect of the
`
`present disclosure is an encoder including circuitry and memory
`
`10
`
`connected to the circuitry.
`
`In the encoder,
`
`the circuitry,
`
`in
`
`operation: determines a mode to be applied to a block from a
`
`plurality of merge modes based on a width of the block and a height
`
`of the block; when the mode determined is a first mode, stores ina
`
`bitstream an index indicating a distance and an angle that define two
`
`15
`
`partitions in the block, and encodes the block using the first mode;
`
`and disables storing of the index in the bitstream when (i) the width
`
`is at least 8 times as much as the height or (ii) the height is at least
`
`8 times as much as the width.
`
`This way, there is a possibility of reducing useless processing
`
`20
`
`and enhancing the processing efficiency.
`
`Specifically, when the
`
`width-to-height ratio or the height-to-width ratio is high,
`
`it may be
`
`inappropriate to define two partitions by a distance and anangle.
`
`In
`
`such a case, by disabling the storing of the index indicating a
`
`distance and an angle in the bitstream,
`
`there is a possibility of
`
`25
`
`reducing useless processing and enhancing the processing efficiency.
`
`For example, the circuitry disables the storing of the index in
`
`the bitstream when (i) the width is 64 pixels and the height is 8 pixels
`
`or (ii) the width is 8 pixels and the height is 64 pixels.
`
`By doing so, there is a possibility that the storing of the index
`
`30
`
`indicating a distance and an angle in the bitstream is disabled when
`
`the width-to-height ratio or the height-to-width ratio is high, even if
`
`the block size is within an appropriate range. This way, there is a
`
`possibility of
`
`reducing useless processing and enhancing the
`
`processing efficiency.
`
`35
`
`For example,
`
`a
`
`line that determines shapes of
`-15-
`
`the two
`
`

`

`partitions in the block is defined by the distance and the angle, the
`
`distance is a distance between a center of the block and the line, and
`
`the angle is an angle related to the line.
`
`This way, there is a possibility of appropriately defining the
`
`line for determining the shapes of two partitions.
`
`For example, a decoder according to an aspect of the present
`
`disclosure is a decoder including circuitry and memory connected to
`
`the circuitry.
`
`Inthe decoder, the circuitry, in operation: determines
`
`a mode to be applied to a block from a plurality of merge modes
`
`10
`
`based on a width of the block and a height of the block; when the
`
`mode determined is a first mode, obtains from a bitstream an index
`
`indicating a distance and an angle that define two partitions in the
`
`block, and decodes the block using the first mode; and disables
`
`obtaining of the index from the bitstream when (i) the width is at
`
`15
`
`least 8 times as much as the height or (ii) the height is at least 8
`
`times as much as the width.
`
`This way, there is a possibility of reducing useless processing
`
`and enhancing the processing efficiency.
`
`Specifically, when the
`
`width-to-height ratio or the height-to-width ratio is high,
`
`it may be
`
`20
`
`inappropriate to define two partitions by a distance and anangle.
`
`In
`
`such a case, by disabling the obtaining of the index indicating a
`
`distance and an angle from the bitstream, there is a possibility of
`
`reducing useless processing and enhancing the processing efficiency.
`
`For example, the circuitry disables the obtaining of the index
`
`25
`
`from the bitstream when (i) the width is 64 pixels and the height is 8
`
`pixels or (ii) the width is 8 pixels and the height is 64 pixels.
`
`By doing so, there is a possibility that the obtaining of the
`
`index indicating a distance and an angle from the bitstream is
`
`disabled when the width-to-height ratio or the height-to-width ratio
`
`30
`
`is high, even if the block size is within an appropriate range. This
`
`way,
`
`there is
`
`a possibility of
`
`reducing useless processing and
`
`enhancing the processing efficiency.
`
`For example,
`
`a
`
`line that determines shapes of
`
`the two
`
`partitions in the block is defined by the distance and the angle, the
`
`35
`
`distance is a distance between a center of the block and the line, and
`
`-16-
`
`

`

`the angle is an angle related to the line.
`
`This way, there is a possibility of appropriately defining the
`
`line that determines the shapes of two partitions.
`
`For example, an encoding method according to an aspect of
`
`the present disclosure is an encoding method including: determining
`
`a mode to be applied to a block from a plurality of merge modes
`
`based on a width of the block and a height of the block; when the
`
`mode determined is a first mode, storing in a bitstream an index
`
`indicating a distance and an angle that define two partitions in the
`
`10
`
`block, and encoding the block using the first mode; and disabling the
`
`storing of the index in the bitstream when (i) the width is at least 8
`
`times as much as the height or (ii) the height is at least 8 times as
`
`much as the width.
`
`This way, there is a possibility of reducing useless processing
`
`15
`
`and enhancing the processing efficiency.
`
`Specifically, when the
`
`width-to-height ratio or the height-to-width ratio is high,
`
`it may be
`
`inappropriate to define two partitions by a distance and anangle.
`
`In
`
`such a case, by disabling the storing of the index indicating a
`
`distance and an angle in the bitstream,
`
`there is a possibility of
`
`20
`
`reducing useless processing and enhancing the processing efficiency.
`
`For example, a decoding method according to an aspect of the
`
`present disclosure is a decoding method including: determining a
`
`mode to be applied to a block from a plurality of merge modes based
`
`on a width of the block and a height of the block; when the mode
`
`25
`
`determined is a first mode, obtaining from a bitstream an index
`
`indicating a distance and an angle that define two partitions in the
`
`block, and decoding the block using the first mode; and disabling the
`
`obtaining of the index from the bitstream when (i) the width is at
`
`least 8 times as much as the height or (ii) the height is at least 8
`
`30
`
`times as much as the width.
`
`This way, there is a possibility of reducing useless processing
`
`and enhancing the processing efficiency.
`
`Specifically, when the
`
`width-to-height ratio or the height-to-width ratio is high,
`
`it may be
`
`inappropriate to define two partitions by a distance and anangle.
`
`In
`
`35
`
`such a case, by disabling the obtaining of the index indicating a
`
`- 17 -
`
`

`

`distance and an angle from the bitstream, there is a possibility of
`
`reducing useless processing and enhancing the processing efficiency.
`
`For example, an encoder according to an aspect of the present
`
`disclosure includes an input terminal, a splitter, an intra predictor,
`
`an inter predictor, a loop filter, a transformer,
`
`a quantizer, an
`
`entropy encoder, and an output terminal.
`
`A current picture is input to the input terminal. The splitter
`
`splits the current picture into a plurality of blocks.
`
`The intra predictor generates a prediction signal of a current
`
`10
`
`block included in the current picture, using a
`
`reference image
`
`included in the current picture. The inter predictor generates a
`
`prediction signal of a current block included in the current picture,
`
`using a reference image included in a reference picture different from
`
`the current picture. The loop filter applies a filter to a reconstructed
`
`15
`
`block of a current block included in the current picture.
`
`The
`
`transformer
`
`generates
`
`transform coefficients
`
`by
`
`transforming a prediction error between the original signal of a
`
`current block included in the current picture and the prediction signal
`
`generated by the intra predictor or
`
`the inter predictor.
`
`The
`
`20
`
`quantizer generates quantized coefficients
`
`by quantizing the
`
`transform coefficients. The entropy encoder generates an encoded
`
`bitstream by applying variable-length encoding to the quantized
`
`coefficients. Then,
`
`the encoded bitstream that
`
`includes control
`
`information
`
`and
`
`the
`
`quantized
`
`coefficients
`
`to which’
`
`the
`
`25
`
`variable-length encoding has been applied is output from the output
`
`terminal.
`
`For example, the inter predictor,
`
`in operation: determines a
`
`mode to be applied to a block from a plurality of merge modes based
`
`on a width of the block and a height of the block; and when the mode
`
`30
`
`determined is a first mode, stores in a bitstream an index indicating
`
`a distance and an angle that define two partitions in the block, and
`
`encodes the block using the first mode.
`
`Furthermore,
`
`the inter
`
`predictor disables storing of the index in the bitstream when (i) the
`
`width is at least 8 times as much as the height or (ii) the height is at
`
`35
`
`least 8 times as much as the width.
`
`-18 -
`
`

`

`For example, a decoder according to an aspect of the present
`
`disclosure includes an input terminal, an entropy decoder, an inverse
`
`quantizer, an inverse transformer, an intra predictor, an inter
`
`predictor, a loop filter, and an output terminal.
`
`An encoded bitstream is
`
`input
`
`to the input terminal. The
`
`entropy decoder derives
`
`quantized
`
`coefficients
`
`by
`
`applying
`
`variable-length decoding to the encoded bitstream. The inverse
`
`quantizer derives transform coefficients by inverse quantizing the
`
`quantized coefficients. The inverse transformer derives a prediction
`
`10
`
`error by inverse transforming the transform coefficients.
`
`The intra predictor generates a prediction signal of a current
`
`block included in a current picture, using a reference image included
`
`in the current picture. The inter predictor generates a prediction
`
`signal of a current block included in the current picture, using a
`
`15
`
`reference image included in a reference picture different from the
`
`current picture.
`
`The loop filter applies a filter to a reconstructed block of the
`
`current block included in the current picture. Then,
`
`the current
`
`picture is output from the output terminal.
`
`20
`
`For example, the inter predictor,
`
`in operation: determines a
`
`mode to be applied to a block from a plurality of merge modes based
`
`on a width of the block and a height of the block; and when the mode
`
`determined is a first mode, obtains from a bitstream an index
`
`indicating a distance and an angle that define two partitions in the
`
`25
`
`block, and decodes the block using the first mode. Furthermore, the
`
`inter predictor disables obtaining of the index from the bitstream
`
`when (i) the width is at least 8 times as much as the height or (ii) the
`
`height is at least 8 times as much as the width.
`
`In addition,
`
`these general or
`
`specific aspects may be
`
`30
`
`implemented using a system, a device, a method, an integrated
`
`circuit, a computer program, or a non-transitory computer-readable
`
`recording medium such as a CD-ROM, or any combination of systems,
`
`devices, methods,
`
`integrated circuits, computer programs, and
`
`recording media.
`
`35
`
`[Definitions of Terms]
`
`-19-
`
`

`

`The respective terms may be defined as indicated below as
`
`examples.
`
`(1) image
`
`An image is a data unit configured with a set of pixels,
`
`is a
`
`picture or includes blocks smaller than a picture.
`
`Images include a
`
`still image in addition to a video.
`
`(2) picture
`
`A picture is an image processing unit configured with a set of
`
`pixels, and is also referred to as a frame or a field.
`
`10
`
`(3) block
`
`A block is a processing unit which is a set of a particular
`
`number of pixels. The block is also referred to as indicated in the
`
`following examples.
`
`The
`
`shapes of blocks are not
`
`limited.
`
`Examples include a rectangle shape of MxN pixels and a square
`
`15
`
`shape of MxM pixels for the first place, and also include a triangular
`
`shape, a circular shape, and other shapes.
`
`(examples of blocks)
`
`- slice/tile/brick
`
`CTU / super block / basic splitting unit
`
`20
`
`VPDU / processing splitting unit for hardware
`
`- CU / processing block unit / prediction block unit (PU) /
`
`orthogonal transform block unit (TU) / unit
`
`- sub-block
`
`(4) pixel/sample
`
`25
`
`A pixel or sample is a smallest point of an image.
`
`Pixels or
`
`samples include not only a pixel at an i

This document is available on Docket Alarm but you must sign up to view it.


Or .

Accessing this document will incur an additional charge of $.

After purchase, you can access this document again without charge.

Accept $ Charge
throbber

Still Working On It

This document is taking longer than usual to download. This can happen if we need to contact the court directly to obtain the document and their servers are running slowly.

Give it another minute or two to complete, and then try the refresh button.

throbber

A few More Minutes ... Still Working

It can take up to 5 minutes for us to download a document if the court servers are running slowly.

Thank you for your continued patience.

This document could not be displayed.

We could not find this document within its docket. Please go back to the docket page and check the link. If that does not work, go back to the docket and refresh it to pull the newest information.

Your account does not support viewing this document.

You need a Paid Account to view this document. Click here to change your account type.

Your account does not support viewing this document.

Set your membership status to view this document.

With a Docket Alarm membership, you'll get a whole lot more, including:

  • Up-to-date information for this case.
  • Email alerts whenever there is an update.
  • Full text search for other cases.
  • Get email alerts whenever a new case matches your search.

Become a Member

One Moment Please

The filing “” is large (MB) and is being downloaded.

Please refresh this page in a few minutes to see if the filing has been downloaded. The filing will also be emailed to you when the download completes.

Your document is on its way!

If you do not receive the document in five minutes, contact support at support@docketalarm.com.

Sealed Document

We are unable to display this document, it may be under a court ordered seal.

If you have proper credentials to access the file, you may proceed directly to the court's system using your government issued username and password.


Access Government Site

We are redirecting you
to a mobile optimized page.





Document Unreadable or Corrupt

Refresh this Document
Go to the Docket

We are unable to display this document.

Refresh this Document
Go to the Docket