EP-4736426-A1 - LOOKUP TABLE BASED DECODER SIDE INTRA MODE DERIVATION
Abstract
An apparatus including: at least one processor; and at least one memory storing instructions that, when executed by the at least one processor, causes the apparatus at least to: determine a horizontal direction strength value using at least one neighboring sample of a current block of at least one picture; determine a vertical direction strength value using the at least one neighboring sample of the current block of the at least one picture; determine a ratio value in a logarithmic domain, based on the horizontal direction strength value and the vertical direction strength value; determine, using a lookup table, an angle index that is mapped to the ratio value; determine an intra prediction mode of the at least one neighboring sample, based on the angle index; and decode the current block based on the intra prediction mode.
Inventors
- AMINLOU, ALIREZA
Assignees
- Nokia Technologies Oy
Dates
- Publication Date
- 20260506
- Application Date
- 20240528
Claims (20)
- 1. An apparatus comprising: at least one processor; and at least one memory storing instructions that, when executed by the at least one processor, causes the apparatus at least to: determine a horizontal direction strength value using at least one neighboring sample of a current block of at least one picture; determine a vertical direction strength value using the at least one neighboring sample of the current block of the at least one picture; determine a ratio value in a logarithmic domain, based on the horizontal direction strength value and the vertical direction strength value; determine, using a lookup table, an angle index that is mapped to the ratio value; determine an intra prediction mode of the at least one neighboring sample, based on the angle index; and decode the current block based on the intra prediction mode.
- 2. The apparatus of claim 1, wherein the instructions, when executed by the at least one processor, cause the apparatus at least to: generate a prediction block for the current block, based on the intra prediction mode.
- 3. The apparatus of any of claims 1 to 2, wherein the instructions, when executed by the at least one processor, cause the apparatus at least to: add the intra prediction mode to a most probable mode list of the current block; and generate a prediction block for the current block based on at least one of intra modes inside the most probable mode list of the current block.
- 4. The apparatus of any of claims 1 to 3, wherein the instructions, when executed by the at least one processor, cause the apparatus at least to: determine the ratio value based on a ratio comprising a larger of an absolute value of the horizontal direction strength value and an absolute value of the vertical direction strength value to a smaller of the absolute value of the horizontal direction strength value and the absolute value of the vertical direction strength value.
- 5. The apparatus of any of claims 1 to 4, wherein the instructions, when executed by the at least one processor, cause the apparatus at least to: determine a ratio comprising a larger of an absolute value of the horizontal direction strength value and an absolute value of the vertical direction strength value to a smaller of the absolute value of the horizontal direction strength value and the absolute value of the vertical direction strength value; scale the ratio; and determine the ratio value based on the scaled ratio.
- 6. The apparatus of claim 5, wherein the instructions, when executed by the at least one processor, cause the apparatus at least to: combine the scaled ratio with an offset; and determine the ratio value based on the scaled ratio combined with the offset.
- 7. The apparatus of claim 6, wherein the instructions, when executed by the at least one processor, cause the apparatus at least to: determine the ratio value based on an integer part of the scaled ratio combined with the offset.
- 8. The apparatus of any of claims 1 to 7, wherein the instructions, when executed by the at least one processor, cause the apparatus at least to: determine a value based on a larger of an absolute value of the horizontal direction strength value and an absolute value of the vertical direction strength value; determine a value based on a smaller of the absolute value of the horizontal direction strength value and the absolute value of the vertical direction strength value; and determine the ratio value based on the value determined based on the smaller of the absolute value of the horizontal direction strength value and the absolute value of the vertical direction strength value subtracted from the value determined based on the larger of the absolute value of the horizontal direction strength value and the absolute value of the vertical direction strength value.
- 9. The apparatus of claim 8, wherein the instructions, when executed by the at least one processor, cause the apparatus at least to: determine a first bit value as an integer part of a logarithm of the larger of the absolute value of the horizontal direction strength value and the absolute value of the vertical direction strength value; determine a second bit value as an integer part of a logarithm of the smaller of the absolute value of the horizontal direction strength value and the absolute value of vertical direction strength value; determine a first shift value with adding a left shifting of the larger of the absolute value of the horizontal direction strength value and the absolute value of the vertical direction strength value with a number of bits to a first offset; determine a second shift value with adding a left shifting of a smaller of the absolute value of the horizontal direction strength value and the absolute value of the vertical direction strength value with the number of bits to a second offset; determine the value based on the larger of the absolute value of the horizontal direction strength value and the absolute value of the vertical direction strength value as a left shifting of the first bit value with the number of bits added to a right shifting of the first shift value with the first bit value; and determine the value based on the smaller of the absolute value of the horizontal direction strength value and the absolute value of the vertical direction strength value as a left shifting of the second bit value with the number of bits added to a right shifting of the second shift value with the second bit value.
- 10. The apparatus of any of claims 1 to 9, wherein the instructions, when executed by the at least one processor, cause the apparatus at least to: determine a precision value based on a value determined based on a smaller of an absolute value of the horizontal direction strength value and the vertical direction strength value subtracted from a value determined based on a larger of the absolute value of horizontal direction strength value and the absolute value of the vertical direction strength value combined added to a rounding offset; and determine the ratio value with right shifting the precision value with a number of bits.
- 11. The apparatus of claim 8 or claim 10, wherein the value determined based on the larger of the absolute value of the horizontal direction strength value and the absolute value of the vertical direction strength value is based on a logarithm, and the value determined based on the smaller of the absolute value of the horizontal direction strength value and the absolute value of the vertical direction strength value is based on a logarithm.
- 12. The apparatus of any of claims 10 to 11, wherein the instructions, when executed by the at least one processor, cause the apparatus at least to: determine a first bit value as an integer part of a logarithm of the larger of the absolute value of the horizontal direction strength value and the absolute value of vertical direction strength value; determine a second bit value as an integer part of a logarithm of a smaller of the absolute value of the horizontal direction strength value and the absolute value of the vertical direction strength value; determine a first shift value with left shifting the larger of the absolute value of the horizontal direction strength value and the absolute value of the vertical direction strength value with a number of bits; determine a second shift value with left shifting the smaller of the absolute value of the horizontal direction strength value and the absolute value of the vertical direction strength value with the number of bits; determine the value based on the larger of the absolute value of the horizontal direction strength value and the absolute value of the vertical direction strength value as a left shifting of the first bit value with the number of bits added to a right shifting of the first shift value with the first bit value; and determine the value based on the smaller of the absolute value of the horizontal direction strength value and the absolute value of the vertical direction strength value as a left shifting of the second bit value with the number of bits added to a right shifting of the second shift value with the second bit value.
- 13. The apparatus of any of claims 1 to 12, wherein the instructions, when executed by the at least one processor, cause the apparatus at least to perform at least one of: limit the ratio value to a range based at least partially on a size of the lookup table, define an upper limit of the ratio value based at least partially on the size of the lookup table, or define a lower limit of the ratio value based at least partially on the size of the lookup table.
- 14. The apparatus of any of claims 1 to 13, wherein the instructions, when executed by the at least one processor, cause the apparatus at least to: add an amplitude to a histogram, using the intra prediction mode.
- 15. The apparatus of claim 14, wherein the angle lookup table comprises a number of angles from 0 to 45 degrees with number of bits used for precision.
- 16. The apparatus of any of claims 1 to 15, wherein the instructions, when executed by the at least one processor, cause the apparatus at least to: determine a power value based on the ratio value divided with a scale value; and determine a parameter as a base value raised to the power value; wherein the parameter is used to determine a location of a subsample interpolation of neighboring samples to determine a prediction value for samples in a row or column of the current block.
- 17. The apparatus of claim 16, wherein the base value is 2.
- 18. The apparatus of any of claims 1 to 17, wherein the angle index is stored as a value within an angle lookup table, the angle lookup table comprising a mapping between an index and the angle index.
- 19. The apparatus of any of claims 1 to 18, wherein the instructions, when executed by the at least one processor, cause the apparatus at least to: determine a power value as the ratio value divided by a scale value; wherein the base value is 2; and determine an angle as the base value raised to the power value.
- 20. The apparatus of any of claims 1 to 19, wherein the instructions, when executed by the at least one processor, cause the apparatus at least to: store the ratio value with a number of bits of precision for a fractional part of a logarithmic value; and determine the lookup table based on a precision of the ratio value and a precision of the angle index.
Description
LOOKUP TABLE BASED DECODER SIDE INTRA MODE DERIVATION TECHNICAL FIELD [0001] The examples and non-limiting embodiments relate generally to multimedia transport and, more particularly, to a lookup table based decoder side intra mode derivation. BACKGROUND [0002] It is known to perform data compression and decoding in a multimedia system. BRIEF DESCRIPTION OF THE DRAWINGS [0003] The foregoing aspects and other features are explained in the following description, taken in connection with the accompanying drawings, wherein: [0004] FIG. 1 shows schematically an electronic device employing embodiments of the examples described herein. [0005] FIG. 2 shows schematically a user equipment suitable for employing embodiments of the examples described herein. [0006] FIG. 3 further shows schematically electronic devices employing embodiments of the examples described herein connected using wireless and wired network connections. [0007] FIG. 4 shows schematically a block chart of an encoder used for data compression on a general level. [0008] FIG. 5 shows a current block and neighboring samples at the left, top-left, and top sides of a current block. [0009] FIG. 6 shows deriving directionality of texture for a neighboring training sample using 3x3 neighboring samples of the training sample. [0010] FIG. 7 depicts an example of deriving the intra mode of the current block. [0011] FIG. 8 shows defining two groups for horizontal and vertical strength based on a horizontal amplitude and a vertical amplitude. [0012] FIG. 9 shows defining four groups including two groups for horizontal directions, one for positive and one for negative angles, and two groups for vertical directions, one for positive and one for negative angles. [0013] FIG. 10 is a block diagram illustrating a system in accordance with an example. [0014] FIG. 11 is an example apparatus configured to implement the examples described herein. [0015] FIG. 12 shows a representation of an example of non-volatile memory media used to store instructions that implement the examples described herein. [0016] FIG. 13 is an example method, based on the examples described herein. [0017] FIG. 14 is an example method, based on the examples described herein. [0018] FIG. 15 is an example method, based on the examples described herein. DETAILED DESCRIPTION OF EXAMPLE EMBODIMENTS [0019] Described herein is a method and apparatus to implement a lookup table based decoder side intra mode derivation [0020] The following describes in detail a suitable apparatus and possible mechanisms for a video/image encoding process according to embodiments. In this regard reference is first made to FIG. 1 and FIG. 2, where FIG. 1 shows an example block diagram of an apparatus 50. The apparatus may be an Internet of Things (loT) apparatus configured to perform various functions, such as for example, gathering information by one or more sensors, receiving or transmitting information, analyzing information gathered or received by the apparatus, or the like. The apparatus may comprise a video coding system, which may incorporate a codec. FIG. 2 shows a layout of an apparatus according to an example embodiment. The elements of FIG. 1 and FIG. 2 are explained next. [0021] The electronic device 50 may for example be a mobile terminal or user equipment of a wireless communication system, a sensor device, a tag, or other lower power device. However, it would be appreciated that embodiments of the examples described herein may be implemented within any electronic device or apparatus which may process data by neural networks. [0022] The apparatus 50 may comprise a housing 30 for incorporating and protecting the device. The apparatus 50 further may comprise a display 32 in the form of a liquid crystal display. In other embodiments of the examples described herein the display may be any suitable display technology suitable to display an image or video. The apparatus 50 may further comprise a keypad 34. In other embodiments of the examples described herein any suitable data or user interface mechanism may be employed. For example the user interface may be implemented as a virtual keyboard or data entry system as part of a touch-sensitive display. [0023] The apparatus may comprise a microphone 36 or any suitable audio input which may be a digital or analog signal input. The apparatus 50 may further comprise an audio output device which in embodiments of the examples described herein may be any one of: an earpiece 38, speaker, or an analog audio or digital audio output connection. The apparatus 50 may also comprise a battery (or in other embodiments of the examples described herein the device may be powered by any suitable mobile energy device such as solar cell, fuel cell or clockwork generator). The apparatus may further comprise a camera capable of recording or capturing images and/or video. The apparatus 50 may further comprise an infrared port for short range line of sight communication to other devices. In