Encoder, decoder, encoding method, and decoding method
An image encoder/decoder includes circuitry and a memory coupled to the circuitry. When a geometry of a block of a picture satisfies a first condition, the circuitry splits the block of the picture into sub blocks having a first set of geometries. When the geometry of the block does not satisfy the first condition, the circuitry splits the block of the picture into sub blocks having a second set of geometries, the second set of geometries being different from the first set of geometries. The circuitry encodes/decodes the sub blocks of the block.
1. An image encoder, comprising:
circuitry; and
a memory coupled to the circuitry,
wherein the circuitry, in operation:
obtains a block from a coding tree unit (CTU);
in response to a determined number of sub blocks of the block being set to four, splits the block into four sub blocks, wherein,
in response to a size of the block satisfying a block-size condition, splits the block into four sub blocks along a single direction, wherein the splitting includes,
in response to a width of the block being larger than a height of the block and the size of the block being 32×8, splitting the block along a vertical direction into four 8×8 sub blocks; and
in response to the height of the block being larger than the width of the block and the size of the block being 8×32, splitting the block along a horizontal direction into four 8×8 sub blocks; and
in response to the size of the block not satisfying the block-size condition, splits the block into four sub blocks along the vertical and horizontal directions, wherein the splitting includes splitting the block along the vertical and horizontal directions into four 16×16 sub blocks in response to the width of the block being equal to the height of the block and the size of the block being 32×32; and
encodes the sub blocks of the block.
2. An image decoder, comprising:
circuitry; and
a memory coupled to the circuitry,
wherein the circuitry, in operation:
obtains a block from a coding tree unit (CTU);
in response to a determined number of sub blocks of the block being set to four, splits the block into four sub blocks, wherein,
in response to a size of the block satisfying a block-size condition, splits the block into four sub blocks along a single direction, wherein the splitting includes,
in response to a width of the block being larger than a height of the block and the size of the block being 32×8, splitting the block along a vertical direction into four 8×8 sub blocks; and
in response to the height of the block being larger than the width of the block and the size of the block being 8×32, splitting the block along a horizontal direction into four 8×8 sub blocks; and
in response to the size of the block not satisfying the block-size condition, splits the block into four sub blocks along the vertical and horizontal directions, wherein the splitting includes splitting the block along the vertical and horizontal directions into four 16×16 sub blocks in response to the width of the block being equal to the height of the block and the size of the block being 32×32; and
decodes the sub blocks of the block.
3. A non-transitory computer readable medium storing a bitstream,
the bitstream including syntax information according to which a computer performs a decoding process including:
obtains a block from a coding tree unit (CTU);
in response to a determined number of sub blocks of the block being set to four, splits the block into four sub blocks, wherein,
in response to a size of the block satisfying a block-size condition, splits the block into four sub blocks along a single direction, wherein the splitting includes,
splitting the block along a vertical direction into four 8×8 sub blocks in response to a width of the block being larger than a height of the block and the size of the block being 32×8; and
splitting the block along a horizontal direction into four 8×8 sub blocks in response to the height of the block being larger than the width of the block and the size of the block being 8×32; and
in response to the size of the block not satisfying the block-size condition, splits the block into four sub blocks along the vertical and horizontal directions, wherein the splitting includes splitting the block along the vertical and horizontal directions into four 16×16 sub blocks in response to the width of the block being equal to the height of the block and the size of the block being 32×32; and
decoding the sub blocks of the block.