Patent Description:
An existing encoding or decoding technology of video images includes an intra coding technology and an inter coding technology. The intra coding refers to a technology of compressing and encoding an image content merely by using a spatial correlation within an image that is being encoded currently. The inter coding refers to a technology of compressing and encoding a current image by using a temporal correlation between the image that is being encoded currently and an encoded image. In order to improve efficiency of image intra coding, the H. <NUM>/AVC (Advanced Video Coding, advanced video coding) standard first introduced an intra prediction technology to remove a spatial information redundancy between the image block that is being encoded currently and a neighboring encoded image block. As a result, unlike earlier intra coding technologies, H. <NUM>/AVC needs to perform spatial transformation and entropy encoding only on a prediction differential signal instead of an original image signal, so as to improve the intra coding efficiency.

A video image signal generally includes one luma component and two chroma components. The HEVC (High Efficiency Video Coding, high efficiency video coding) solution is a new generation video encoding standardized solution that the International Organization for Standardization is currently working on. It inherits the intra prediction encoding technology of the H. <NUM>/AVC standard, and introduces a new intra prediction mode, the LM mode, regarding the chroma components. When the LM mode is used, a chroma component predicted value of an image block is obtained by calculation using a linear model based on a reconstruction value of resampling a luma component of a corresponding block. Therefore, the LM mode is different from a conventional directional intra prediction mode. It uses a correlation between a luma component and a chroma component of an image, and is a method of predicting a chroma component value by using a luma component value.

The HEVC solution inherits and extends the intra prediction encoding technology in the H. <NUM>/AVC standard. All available intra prediction modes for chroma components of an image block form a prediction mode set, which includes the following six prediction modes:.

In a related technology, the foregoing chroma prediction modes use a TU (Truncated Unary, truncated unary) code solution to perform encoding or decoding, where the encoding or decoding are highly complex, and decoding efficiency is low.

<CIT> discloses a method for signalling an intra chroma prediction mode and a method for implementing the signalled intra chroma prediction mode, the intra chroma prediction mode taking an interpolation of previously predicted luma samples from neighboring blocks of video data to attain an intra chroma prediction of a current chroma prediction unit.

<NPL>), a binarization process, where syntax elements and associated types of binarization arc regulated, and the chroma prediction mode is binarized by TU code.

Embodiments of the present invention provide a decoding method which can reduce decoding complexity in video image processing and improve decoding efficiency.

In another aspect, an encoding or decoding apparatus is provided, including a first extracting unit, a first determining unit, a second extracting unit, and a second determining unit, where the first extracting unit is configured to extract first information in a bitstream; the first determining unit is configured to determine a chroma component intra prediction mode according to the first information extracted by the first extracting unit; the second extracting unit is configured to, when the first determining unit cannot determine the chroma component intra prediction mode according to the first information, extract second information in the bitstream; and the second determining unit is configured to determine the chroma component intra prediction mode according to the second information extracted by the second extracting unit, where the first information includes information for indicating whether the chroma component intra prediction mode is a DM mode or an LM mode, the second information is used to indicate a remaining mode as the chroma component intra prediction mode, and the remaining mode is one of available chroma component intra prediction modes other than a mode that may be determined according to the first information.

The foregoing technical solutions may reduce the encoding information of a chroma mode and optimize sorting for the information to reduce encoding or decoding steps, thereby reducing encoding or decoding complexity and improving decoding efficiency.

To illustrate the technical solutions in the embodiments of the present invention more clearly, the following briefly introduces the accompanying drawings required for describing the embodiments of the present invention.

The wording "and/or" in this document merely describes an association between associated objects, indicating that three relationships may exist, for example, A and/or B may indicate three situations: only A exists, A and B exist at the same time, and only B exists. In addition, the character "/" in this document usually represents that the former and later associated objects are in a "or" relationship.

A chroma component in an embodiments of the present invention may refer to any chroma component of two chroma components. A DC mode, a vertical mode, a horizontal mode, and a planar mode in a chroma component intra prediction mode of HEVC are the same as corresponding modes in the H. <NUM>/AVC standard in terms of a basic principle, but are different in specific implementation methods. An LM mode and a DM mode are two newly added modes. Besides the prediction modes mentioned above, there is a replacement mode. If the DM mode is the same as a remaining prediction mode in a prediction mode set, the replacement mode is used to replace the chroma prediction mode that is the same as the DM mode, so as to make a new prediction mode set. The DM mode performs prediction by using an intra prediction mode of a luma component of a current block as a prediction mode of a chroma component. Therefore, the method may also equivalently determine whether an intra prediction mode of a luma component is the same as a remaining prediction mode in the prediction mode set. The replacement mode may be a prediction mode that is different from all the modes in the chroma component prediction mode set.

The chroma component prediction mode set may be different in different embodiments of the present patent. One usable chroma component prediction mode set includes a DM mode, an LM mode, a DC mode, a vertical mode, a horizontal mode, and a planar mode. Another usable chroma component prediction mode set includes a DM mode, a DC mode, a vertical mode, a horizontal mode, and a planar mode. Another usable chroma component prediction mode set includes a DM mode, an LM mode, and a default mode. Another usable chroma component prediction mode set includes a DM mode and a default mode.

The LM mode in the modes mentioned above is an optional technology in the existing HEVC solution. Under an HE (High Efficiency, high efficiency) encoding configuration condition, the LM mode is included in available modes for the chroma intra prediction mode. In such cases, the prediction mode set includes six prediction modes. However, under an LC (Low Complexity, low complexity) encoding configuration condition, the LM mode is not included in available modes for the chroma intra prediction mode. In such cases, the prediction mode set includes five prediction modes. In the existing HEVC solution, whether the LM is an available mode is determined according to a binary flag (flag) in a bitstream.

The chroma encoding solution uses a TU (Truncated Unary) code to binarize mode information of a current block, and then performs entropy encoding on a binary flag after the binarization by using a CABAC (Context Cased Binary Arithmetic Coding, context-adaptive binary arithmetic coding) technology. For example, under an HE configuration condition, the six modes, namely, DM, LM, vertical, horizontal, DC, and planar modes may be presented by a TU code word <NUM>, <NUM>, <NUM>, <NUM>, <NUM>, and <NUM>, respectively; under an LC configuration condition, the five modes, namely, DM, vertical, horizontal, DC, and planar modes may be represented by a TU code word <NUM>, <NUM>, <NUM>, <NUM>, and <NUM>, respectively. A decoding end determines a prediction mode for a chroma component of a current block according to the TU code word obtained by parsing.

In fact, the TU code word may be regarded as a group of binary flags in series. In an entropy encoding or entropy decoding process, whether to continue to encode or decode the following binary flags is determined according to a value of each binary flag one by one. In addition, each binary flag in the TU code word represents a binarized determination. For example, under an LC encoding configuration condition, a TU code having a maximum value <NUM> is used. That is, the TU code includes a maximum of four binary flags. The first binary flag is used to determine whether a mode of a current block is a DM mode; the second binary flag is used to determine whether the mode of the current block is a vertical mode; the third binary flag is used to determine whether the mode of the current block is a horizontal mode; and the fourth binary flag is used to determine whether the mode of the current block is a DC mode. If the mode of the current block is not among the four modes described above, it must be a planar mode.

When the TU code word is used to encode and decode chroma component intra prediction mode information, a value of a previous binary flag is the basis for determining whether to encode or decode a next binary flag. This conditional encoding or decoding increases complexity of entropy encoding or entropy decoding.

The DM mode is used with a high probability, which reduces importance of other modes than the DM. Moreover, it is possible that the DM mode is the same as the planar mode, the DC mode, the horizontal mode, or the vertical mode, indicating that a large redundancy exists in a set of available modes, where the redundancy affects efficiency of compressing video images.

There are many available modes, where six modes are available under an HE condition, and five modes are available under an LC condition. This increases calculation complexity in a process for an encoding end to select a mode.

An embodiment of the present invention provides a decoding method to solve the above problem.

<FIG> is a schematic flowchart of a decoding method <NUM> according to an embodiment of the present invention, including the following content.

Extract first information in a bitstream.

The first information includes information for indicating whether a chroma component intra prediction mode is a DM mode or an LM mode.

Determine a chroma component intra prediction mode according to the first information.

When the chroma component intra prediction mode cannot be determined according to the first information, extract second information in the bitstream.

Determine the chroma component intra prediction mode according to the second information.

The second information is used to indicate a remaining mode of the chroma component intra prediction mode, where the remaining mode is one of available chroma component intra prediction modes other than a mode that may be determined according to the first information.

The remaining mode may be one of modes in a chroma component intra prediction mode set other than a mode that may be determined according to the first information. For example, if the first information is used to determine whether the chroma component intra prediction mode is a DM mode or an LM mode, the remaining mode may be one of the modes in the chroma component intra prediction mode set other than the DM mode and the LM mode.

When a luma component intra prediction mode is the same as the chroma component intra prediction mode in use, a replacement mode may be used to replace the chroma component intra prediction mode, where the replacement mode is one of modes that are different from the modes in the chroma component intra prediction mode set.

The embodiment of the present invention may reduce the encoding information of a chroma mode and optimize sorting for the information to reduce encoding or decoding steps, thereby reducing encoding or decoding complexity and improving decoding efficiency.

<FIG> is a schematic flowchart of a decoding method <NUM> according to another embodiment of the present invention, including the following content.

The first information includes information for indicating whether a chroma component intra prediction mode is a DM mode or an LM mode. The first information may include one or two pieces of sub-information carried by a binary flag. The first information may also be carried by a TU code having a maximum value <NUM>.

Determine whether a chroma component intra prediction mode is a DM mode according to the first information.

When the chroma component intra prediction mode is determined as the DM mode, that is, a result is "yes", step <NUM> is performed and the DM mode is used as the chroma component intra prediction mode.

When it is determined that the chroma component intra prediction mode is not a DM mode, that is, a result is "no", alternatively, step <NUM> is performed to determine whether a chroma component intra prediction mode set includes an LM mode, where the determining method is the same as the prior art.

When it is determined that the set includes the LM mode, that is, a result is "yes", step <NUM> is performed.

Determine whether the chroma component intra prediction mode is an LM mode according to the first information.

When the chroma component intra prediction mode is determined as the LM mode, that is, a result is "yes", step <NUM> is performed and the LM mode is used as the chroma component intra prediction mode.

When it is determined that the chroma component intra prediction mode is not an LM mode, that is, a result is "no", step <NUM> is performed.

After step <NUM> is performed, step <NUM> may also be performed if it is determined that the set does not include the LM mode, that is, a result is "no".

Extract second information in the bitstream.

Determine a remaining mode by using the second information, and use the remaining mode as the chroma component intra prediction mode.

The remaining mode may be one of modes in a chroma component intra prediction mode set other than a mode that may be determined according to the first information. For example, in the embodiment, the first information is used to determine whether the chroma component intra prediction mode is a DM mode or an LM mode; then, the remaining mode may be any of four modes in the chroma component intra prediction mode set other than the DM mode and the LM mode. The second information may carry encoding information indicating which one the remaining mode specifically is. The encoding information of the four modes may be carried by using an FL code, where a corresponding relationship is established between each mode and an FL code.

Step <NUM>: Determine whether the chroma component intra prediction mode determined in the previous step is the same as a luma component intra prediction mode.

If they are the same, that is, a result is "yes", step <NUM> is performed to determine to use a replacement mode as the chroma component intra prediction mode. The replacement mode is one of modes that are different from the modes in the chroma component intra prediction mode set.

If they are different, that is, a result is "no", step <NUM> is performed to determine to keep the chroma component intra prediction mode unchanged.

As an implementation method, step <NUM> may replace steps <NUM> and <NUM>.

As another implementation method, step <NUM> is optional, and step <NUM> may be directly performed after step <NUM> or step <NUM>.

Use a default mode as the chroma component intra prediction mode, where the default mode is one of predefined luma component intra prediction modes.

In the above technical solutions, with respect to different technologies that are used, for example, a method for carrying information, multiple steps described above may be combined, or one step may be divided and completed in multiple steps.

Both the chroma component intra prediction mode and the luma component intra prediction mode are about the current block. Therefore, in the following embodiments, they are respectively referred to as a current block chroma mode and a current block luma mode for short, which generally may also be respectively referred to as a chroma mode and a luma mode for short. In a standard, generally, there are more modes in a luma component intra prediction mode set than modes in a chroma component intra prediction mode. <FIG> is a schematic flowchart according to an embodiment <NUM> of the present invention.

In the embodiment of the present invention, a binary flag is used to carry first information. The first information may include information for indicating whether a current block chroma mode is a DM mode by using a binary flag, which is expressed as DM information.

The first information may also include information for indicating whether a current block chroma mode is an LM mode by using a binary flag, which is expressed as LM information. If the LM mode is not an available mode in chroma component intra prediction modes, a bitstream contains no LM information, and an encoding end and a decoding end perform no encoding or decoding operation on LM information.

The second information is used to indicate a remaining mode of the chroma component intra prediction mode, where the remaining mode is one of available chroma component intra prediction modes other than a mode that may be determined according to the first information. An FL (Fix Length, fixed-length) code word having a length of <NUM> may be used to represent the second information. The remaining modes may be four modes, that is, vertical, horizontal, DC, and planar modes. For example, FL code words <NUM>, <NUM>, <NUM>, and <NUM> may be used to represent the four modes, respectively.

When entropy decoding is performed on the DM information, it is allowed to use no context model or use one context model, and a context model may be selected from multiple context models according to encoding information of adjacent blocks.

When entropy decoding is performed on the LM information, it is allowed to use no context model or use one context model, and a context model may be selected from multiple context models according to encoding information of adjacent blocks.

No context model is used when entropy decoding is performed on the second information. In other words, a by-pass (equiprobability) mode is used to perform entropy decoding on a bitstream to obtain an FL code word having a length of <NUM>, and determine the corresponding mode described according to the FL code word. This can improve throughput for entropy decoding. The by-pass mode is a binary entropy encoding or entropy decoding mode which does not use a probability model. In other words, the by-pass mode assumes an equal probability for a binary flag as <NUM> or <NUM> where entropy encoding or entropy decoding is currently performed.

It should be noted that it is the prior art to decode a binary flag without using a context model, that is, the by-pass mode in the CABAC technology. It is the prior art to decode a binary flag by using one context model. For example, in a luma intra mode encoding or decoding solution of HEVC, this entropy decoding method is performed for a first binary flag. It is the prior art to select a context model from multiple context models according to the encoding information of adjacent blocks. For example, in the HEVC solution, this entropy decoding method is used for a skip mode flag (skip flag). Therefore, details of the above three entropy decoding methods may not be described.

The embodiment <NUM> includes the following content.

Extract DM information from a bitstream by using the entropy decoding method described above. If a current block chroma mode is determined as a DM mode according to the DM information, end the mode determining procedure; otherwise, perform step <NUM>.

Extract LM information from the bitstream by using the entropy decoding method described above. If the current block chroma mode is determined as an LM mode according to the LM information, end the mode determining procedure; otherwise, perform step <NUM>.

It should be noted that, if the LM mode is not included in available modes for chroma intra prediction, there is no LM information in the bitstream. A decoding end does not need to perform a parsing operation and this step may be skipped. The prior art may be used to determine whether the LM mode is included in the available modes for chroma intra prediction.

Extract second information from the bitstream by using the entropy decoding method described above. The second information is an FL code word having a length of <NUM>.

Determine remaining mode information according to the second information, and use a remaining mode as a current block chroma mode.

The current block chroma mode is determined according to a corresponding relationship between the FL code word and the remaining mode. One available corresponding relationship is described above.

Alternatively, if a current block luma mode is the same as the current block chroma mode determined in the remaining modes according to the above method, a replacement mode is used to replace the current block chroma mode used in step <NUM>. A mode which is different from modes in a chroma component intra prediction mode set may be selected as the replacement mode. For example, a directional prediction mode from upper-right to lower-left may be used as the replacement mode. When the current block luma mode is not the same as the current block chroma mode determined from the remaining modes according to the above method, the current block chroma mode used in step <NUM> remains unchanged.

After the current block chroma mode is determined, the mode determining procedure may be ended.

In addition, in order to remove a redundancy in available prediction modes for a chroma component, alternatively, the set of available prediction modes for the chroma component includes only three chroma component prediction modes, that is, a DM mode, an LM mode, and a default mode. In such cases, step <NUM> may be used to replace steps <NUM> and <NUM>, where other steps remain unchanged. In such cases, it is known according to the previous steps that the current block chroma mode is neither the DM mode nor the LM mode. The default mode may be one of predefined luma component intra prediction modes.

Use a default mode as the current block chroma mode.

<FIG> is a schematic flowchart according to another embodiment <NUM> of the present invention. The difference from the embodiment <NUM> lies in that a TU code word having a maximum value <NUM> is used to carry first information, which is used to indicate whether a current block chroma mode is a DM mode or an LM mode. The TU code word may be <NUM>, <NUM>, and <NUM>. The three code words may respectively indicate that the current block chroma mode is a DM mode, that the current block chroma mode is an LM mode, and that the current block chroma mode is neither the DM mode nor the LM mode, that is, the current block is one in a remaining mode set. It should be noted that if the LM mode is not included in available modes for chroma intra prediction, the TU code word may be rolled back to a binary flag, where the binary flag indicates whether the current block chroma mode is a DM mode.

Similarly, an FL (Fix Length, fixed-length) code word having a length of <NUM> is used to carry second information to represent a remaining mode in a chroma prediction mode. Other aspects, for example, an entropy decoding method, are the same as the embodiment <NUM>.

Determine a current block chroma mode by extracting a TU code word indicating whether the current block chroma mode is a DM mode or an LM mode.

The entropy decoding method described in the embodiment <NUM> is used to extract a TU code word having a maximum value <NUM> from a bitstream. If the current block chroma mode is determined as a DM mode according to the TU code word, end the mode determining procedure; if the current block chroma mode is determined as an LM mode according to the TU code word, end the mode determining procedure; otherwise, the current block chroma mode is determined neither as the DM mode nor as the LM mode according to the TU code word, and step <NUM> is performed.

It should be noted that if the LM mode is not included in available modes for chroma intra prediction, the TU code word having the maximum value <NUM> is not parsed from the bitstream; instead, a binary flag is extracted from the bitstream according to the method in the embodiment <NUM>. If the current block chroma mode is determined as a DM mode according to the binary flag, end the mode determining procedure; otherwise, perform step <NUM>.

Similar to step <NUM>, the entropy decoding method described in the embodiment <NUM> is used to extract the second information from the bitstream. The second information is an FL code word having a length of <NUM>.

Determine a remaining mode according to the second information, and use the remaining mode as a current block chroma mode.

Similar to <NUM> in the embodiment <NUM>, the current block chroma mode is determined according to a corresponding relationship between the FL code word and the remaining mode. One available corresponding relationship is described above.

Alternatively, in step <NUM>, if a current block luma mode is the same as the current block chroma mode determined from the remaining modes according to the above method, a replacement mode is used to replace the current block chroma mode used in step <NUM>. A mode which is different from all modes in a chroma component intra prediction mode set may be selected as the replacement mode. For example, a directional prediction mode from upper-right to lower-left may be used as the replacement mode. When the current block luma mode is not the same as the current block chroma mode determined from the remaining modes according to the above method, the current block chroma mode used in step <NUM> remains unchanged.

In addition, similar to the embodiment <NUM>, in order to remove a redundancy in available prediction modes for a chroma component, alternatively, the set of available prediction modes for the chroma component used in the embodiment may also include only three chroma component prediction modes, that is, a DM mode, an LM mode, and a default mode. Correspondingly, as shown in <FIG>, step <NUM> may also be used to replace steps <NUM> and <NUM> while other steps remain unchanged. In such cases, it is known according to the previous steps that the current block chroma mode is neither the DM mode nor the LM mode.

<FIG> is a schematic block diagram of an encoding or decoding apparatus <NUM> according to an embodiment of the present disclosure. The apparatus <NUM> includes a first extracting unit <NUM>, a first determining unit <NUM>, a second extracting unit <NUM>, and a second determining unit <NUM>.

The first extracting unit <NUM> is configured to extract first information in a bitstream.

The first determining unit <NUM> is configured to determine a chroma component intra prediction mode according to the first information extracted by the first extracting unit <NUM>.

The second extracting unit <NUM> is configured to, when the first determining unit <NUM> cannot determine the chroma component intra prediction mode according to the first information, extract second information in the bitstream.

The second determining unit <NUM> is configured to determine the chroma component intra prediction mode according to the second information extracted by the second extracting unit <NUM>.

The apparatus <NUM> implements methods <NUM> and <NUM>, where the specific details are not described repeatedly herein.

In addition, alternatively, when the first information extracted by the first extracting unit <NUM> includes DM information carried by a binary flag, where the DM information is used to indicate whether the chroma component intra prediction mode is a DM mode, the first determining unit <NUM> is specifically configured to, when the DM information indicates that the chroma component intra prediction mode is a DM mode, use the DM mode as the chroma component intra prediction mode.

Alternatively, when the first information extracted by the first extracting unit <NUM> includes DM information carried by a binary flag, where the DM information is used to indicate whether the chroma component intra prediction mode is a DM mode, the first determining unit <NUM> is specifically configured to, when the DM information indicates that the chroma component intra prediction mode is not a DM mode, use a default mode as the chroma component intra prediction mode, where the default mode is one of predefined luma component intra prediction modes.

Alternatively, when the first information extracted by the first extracting unit <NUM> includes DM information carried by a binary flag, where the DM information is used to indicate whether the chroma component intra prediction mode is a DM mode, the second extracting unit <NUM> is specifically configured to, when the first determining unit <NUM> determines that the DM information indicates that the chroma component intra prediction mode is not a DM mode, extract second information in the bitstream, and the second determining unit <NUM> is specifically configured to determine the chroma component intra prediction mode according to the second information extracted by the second extracting unit <NUM>.

Alternatively, when the DM information of the first information extracted by the first extracting unit <NUM> indicates that the chroma component intra prediction mode is not a DM mode, and the first information further includes LM information carried by a binary flag, where the LM information is used to indicate whether the chroma component intra prediction mode is an LM mode, the first determining unit <NUM> is specifically configured to, when it is determined that the LM information indicates that the chroma component intra prediction mode is an LM mode, use the LM mode as the chroma component intra prediction mode.

Alternatively, when the DM information of the first information extracted by the first extracting unit <NUM> indicates that the chroma component intra prediction mode is not a DM mode, and the first information further includes LM information carried by a binary flag, where the LM information is used to indicate whether the chroma component intra prediction mode is an LM mode, the first determining unit <NUM> is specifically configured to, when it is determined that the LM information indicates that the chroma component intra prediction mode is not an LM mode, use a default mode as the chroma component intra prediction mode, where the default mode is one of predefined luma component intra prediction modes.

Alternatively, when the DM information of the first information extracted by the first extracting unit <NUM> indicates that the chroma component intra prediction mode is not a DM mode, and the first information further includes LM information carried by a binary flag, where the LM information is used to indicate whether the chroma component intra prediction mode is an LM mode, the second extracting unit <NUM> is specifically configured to extract second information in the bitstream when the first determining unit <NUM> determines that the LM information indicates that the chroma component intra prediction mode is not an LM mode, and the second determining unit <NUM> is specifically configured to determine the chroma component intra prediction mode according to the second information extracted by the second extracting unit <NUM>.

Alternatively, when the first extracting unit <NUM> extracts the first information carried by a truncated unary (TU) code having a maximum value <NUM>, the first determining unit <NUM> is specifically configured to, when it is determined that the TU code indicates that the chroma component intra prediction mode is a DM mode, use the DM mode as the chroma component intra prediction mode.

Alternatively, when the first extracting unit <NUM> specifically extracts the first information carried by a TU code having a maximum value <NUM>, the first determining unit <NUM> is specifically configured to, when it is determined that the TU code indicates that the chroma component intra prediction mode is an LM mode, use the LM mode as the chroma component intra prediction mode.

Alternatively, when the first extracting unit <NUM> extracts the first information carried by a TU code having a maximum value <NUM>, the first determining unit <NUM> is specifically configured to, when it is determined that the TU code indicates that the chroma component intra prediction mode is neither a DM mode nor an LM mode, use a default mode as the chroma component intra prediction mode, where the default mode is one of predefined luma component intra prediction modes.

Alternatively, when the first extracting unit <NUM> extracts the first information carried by a TU code having a maximum value <NUM>, the second extracting unit <NUM> is specifically configured to extract second information in the bitstream when the first determining unit <NUM> determines that the TU code indicates that the chroma component intra prediction mode is neither a DM mode nor an LM mode, and the second determining unit <NUM> is specifically configured to determine the chroma component intra prediction mode according to the second information extracted by the second extracting unit <NUM>.

Alternatively, when the first extracting unit <NUM> extracts the second information carried by a fixed-length (FL) code, the second determining unit <NUM> is specifically configured to determine a remaining mode by using the FL code, and use the remaining mode as the chroma component intra prediction mode. The first extracting unit <NUM> may extract the second information carried by one FL code by using an equiprobability (by-pass) mode.

<FIG> is a schematic block diagram of another encoding or decoding apparatus <NUM> according to an embodiment of the present disclosure. As an implementation manner, the apparatus <NUM> includes a first extracting unit <NUM>, a first determining unit <NUM>, a second extracting unit <NUM>, a second determining unit <NUM>, which are the same as or similar to the first extracting unit <NUM>, the first determining unit <NUM>, the second extracting unit <NUM>, and the second determining unit <NUM> of the apparatus <NUM>. The difference lies in that the apparatus <NUM> may further include a third determining unit <NUM> and/or a fourth determining unit <NUM>.

The second extracting unit <NUM> is configured to, when the first determining unit <NUM> cannot determine the chroma component intra prediction mode according to the first information, extract second information in the bitstream, and.

The third determining unit <NUM> is configured to determine whether a chroma component intra prediction mode set includes an LM mode.

When the third determining unit <NUM> determines that the chroma component intra prediction mode set does not include the LM mode, the first information extracted by the first extracting unit <NUM> includes only information for indicating whether the chroma component intra prediction mode is a DM mode. Alternatively, when the third determining unit <NUM> determines that the chroma component intra prediction mode set includes the LM mode, the first information extracted by the first extracting unit <NUM> includes information for indicating whether the chroma component intra prediction mode is a DM mode or an LM mode.

The fourth determining unit <NUM> is configured to, when the determined chroma component intra prediction mode is neither the DM mode nor the LM mode, determine whether a luma component intra prediction mode is the same as the determined chroma component intra prediction mode.

When the fourth determining unit <NUM> determines that the luma component intra prediction mode is the same as the determined chroma component intra prediction mode, a replacement mode is used to replace the determined chroma component intra prediction mode, where the replacement mode is one of modes that are different from the modes in the chroma component intra prediction mode set. Alternatively, when the fourth determining unit <NUM> determines that the luma component intra prediction mode is not the same as the determined chroma component intra prediction mode, the determined chroma component intra prediction mode remains unchanged.

A person of ordinary skill in the art may be aware that units and algorithm steps of the examples described with reference to the embodiments disclosed herein may be implemented by using electronic hardware or a combination of computer software and electronic hardware. These functions may be executed in a mode of hardware or software depending on a specific application design constraint condition of the technical solutions.

A person skilled in the art should clearly understand that, for the convenience and brevity of description, for the specific operation processes of the above system, apparatus, and units, reference may be made to the corresponding processes in the method methods, and details are not described repeatedly here.

In the embodiments provided the present application, it should be understood that the system, apparatus, and method disclosed may be implemented in other forms. For example, the apparatus embodiment described above is merely illustrative. For example, the division of units is merely logical functional division, and there are other division forms in real application. For example, multiple units or components may be combined or be integrated to another system, or some features may be ignored or not be executed. In another aspect, the coupling, direct coupling, or communication connection therebetween which is displayed or discussed may be indirect coupling or communication connection of interfaces, apparatuses, or units, and may be electrical, mechanical, or in other forms.

The units described as separate components may be or may be not physically separate, and the components displayed as units may be or may be not physical units, and may be located in one place or be distributed on multiple network units. Part or all units may be selected depending on the actual requirements to realize the objectives of the solutions according to the embodiments.

In addition, the functional units in embodiments of the present invention may be integrated in one processing unit or exist separately as physical units, or two or more units may be integrated in one unit.

The functions may be implemented in a mode of software functional units and sold or used as an independent product, which may be stored in a computer readable storage medium. Based on such understanding, the essence of the technical solutions of the present invention or the part that makes a contribution to the prior art may be implemented in the form of software product. The computer software product is stored in a storage medium, and includes multiple instructions to enable a computer equipment (which may be a personal computer, a server, or a network equipment) to execute all or partial steps of the method described in embodiments of the present invention. The storage medium includes various media which can store program codes such as a USB flash drive, a mobile hard disk, a read-only memory (Read-Only Memory, ROM), a random access memory (Random Access Memory, RAM), a magnetic disk, or an optical disk.

Claim 1:
A decoding method, comprising:
extracting first information in a bitstream, wherein the first information is carried by a binary flag which indicates whether a chroma component intra prediction mode is a DM mode, wherein the DM mode is used to perform prediction by using an intra prediction mode of a luma component of a current block as a prediction mode of a chroma component;
determining the chroma component intra prediction mode to be the DM mode when the binary flag indicates the chroma component intra prediction mode is a DM mode;
when the binary flag indicates the chroma component intra prediction mode is not a DM mode, extracting second information in the bitstream; and
determining the chroma component intra prediction mode according to the second information,
wherein the second information is used to indicate a remaining mode of the chroma component intra prediction mode, the remaining mode is one of available chroma component intra prediction modes other than the DM mode, and the remaining mode is one of a vertical mode, a horizontal mode, a DC mode and a planar mode;
wherein the second information is carried by a fixed-length FL code, and
wherein the extracting the second information in the bitstream and determining the chroma component intra prediction mode comprises:
extracting an FL code in the bitstream, determining a remaining mode by using the FL code and the intra prediction mode of the luma component of the current block, and using the remaining mode as the chroma component intra prediction mode; and
wherein the determining a remaining mode by using the FL code and the intra prediction mode of the luma component of the current block, follows a rule that comprises:
when the intra prediction mode of the luma component of the current block is the same as the remaining mode, output a replacement mode as the chroma component intra prediction mode, wherein the replacement mode is one of modes that are different from modes in a chroma component intra prediction mode set containing the vertical mode, the horizontal mode, the DC mode and the planar mode; or
when the intra prediction mode of the luma component of the current block is different from the remaining mode, output the remaining mode as the chroma component intra prediction mode;
determining a predicted value of the chroma component of the current block based on the chroma component intra prediction mode.