Film grain region processing method, device, and storage medium

By performing film particle area adaptive processing in video encoding and decoding, the problems of high bit rate and insufficient flexibility of film particle schemes in the prior art are solved, and efficient film particle area processing is achieved, improving video encoding and decoding efficiency and visual experience.

WO2025148442A1PCT designated stage expired Publication Date: 2025-07-17ZTE CORP
View PDF 4 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/124652
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Priority Date
2024-01-09
Filing Date
2024-10-14
Publication Date
2025-07-17

AI Technical Summary

Technical Problem

The prior art is difficult to effectively utilize the film particle characteristics in video encoding and decoding, resulting in high bit rate requirements and difficult to flexibly define film particle schemes in different regions, and occupying a large number of bits.

Method used

By performing film particle area adaptive processing on the decoding end and the encoding end, the film particle parameters and regions are determined using the film particle area adaptive indication information, and film particles are synthesized and added to the decoded image to realize adaptive film particle area processing.

Benefits of technology

It realizes the flexible definition of film grain schemes for different types of regions without increasing the bit rate, improving video encoding and decoding efficiency and visual experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024124652_17072025_PF_FP_ABST
    Figure CN2024124652_17072025_PF_FP_ABST
Patent Text Reader

Abstract

The present application provides a film grain region processing method, a device, and a storage medium. The film grain region processing method is applied to a decoding end, and comprises: on the basis of film grain region adaptive indication information corresponding to a received decoded image, determining film grain parameter indication information and region indication information; on the basis of the region indication information, determining a film grain region in the decoded image; on the basis of film grain parameters determined from the film grain parameter indication information, synthesizing film grain corresponding to the decoded image; and adding the film grain to the film grain region in the decoded image.
Need to check novelty before this filing date? Find Prior Art

Description

Film grain area processing method, device and storage medium Technical Field

[0001] The present application relates to the field of communication technology, and in particular to a film grain area processing method, device and storage medium. Background Art

[0002] Film grain technology is one of the commonly used technologies in video encoding and decoding. Generally speaking, different areas of the same frame image need to provide different film grain solutions due to different textures or brightness, or due to the difference between the foreground and background areas, or in immersive videos, the difference between the current viewing area and the non-current viewing area. This includes whether to enable film grains or enable different film grain models. Describing these different areas usually requires a certain number of bits. At the same time, for the scenarios with multiple areas mentioned above, different area description methods have been defined for most of the time. If different areas when applying film grains happen to use existing defined types of areas, it will save the number of bits occupied by redefining these areas.

[0003] Summary of the Invention

[0004] In view of this, embodiments of the present application provide a film grain region processing method, device, and storage medium, which achieve the effect of flexibly defining different types of regions without occupying too much bit rate.

[0005] The present application provides a method for processing film grain regions, which is applied to a decoding end and includes:

[0006] determining film grain parameter indication information and region indication information according to the received film grain region adaptation indication information corresponding to the decoded image;

[0007] determining a film grain region in the decoded image according to the region indication information;

[0008] synthesizing film grain corresponding to the decoded image according to film grain parameters determined by the film grain parameter indication information;

[0009] The film grain is added to a film grain region in the decoded image.

[0010] The present application provides a method for processing film grain regions, which is applied to an encoding end and includes:

[0011] Performing film grain region adaptive modeling on the source image to generate corresponding film grain parameter indication information and region indication information;

[0012] generating corresponding film grain region adaptation indication information according to the film grain parameter indication information and the region indication information;

[0013] The film grain region adaptation indication information is written into a coding stream corresponding to the source image, and the coding stream with the film grain region adaptation indication information is sent to a decoding end.

[0014] An embodiment of the present application provides a communication device, comprising: a memory, and one or more processors;

[0015] The memory is configured to store one or more programs;

[0016] When the one or more programs are executed by the one or more processors, the one or more processors implement the method described in any one of the above embodiments.

[0017] An embodiment of the present application provides a storage medium storing a computer program. When the computer program is executed by a processor, the method described in any one of the above embodiments is implemented. BRIEF DESCRIPTION OF THE DRAWINGS

[0018] FIG1 is a framework diagram of a film grain system used in a video codec provided by the related art;

[0019] FIG2 is a flow chart of a film grain region processing method provided by an embodiment of the present application;

[0020] FIG3 is a flow chart of another film grain region processing method provided by an embodiment of the present application;

[0021] FIG4 is a flowchart of a method for decoding a video image code stream provided by an embodiment of the present application;

[0022] FIG5 is a flowchart of an implementation of determining a film grain area provided by an embodiment of the present application;

[0023] FIG6 is a flowchart of a method for encoding a video image stream according to an embodiment of the present application;

[0024] FIG7 is a structural block diagram of a film grain region processing device provided by an embodiment of the present application;

[0025] FIG8 is a structural block diagram of another film grain region processing device provided by an embodiment of the present application;

[0026] FIG9 is a schematic structural diagram of a communication device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0027] The following describes the embodiments of the present application in conjunction with the accompanying drawings. The following describes the present application in conjunction with the accompanying drawings. The examples are only used to explain the present application and are not used to limit the scope of the present application.

[0028] Film grain is created during the physical process of photographic film exposure and development (the exposure and development of silver halide crystals) and is widely present in film and television content. However, digital sensors do not undergo this process, resulting in noise-free digital video without film grain. Many content creators, particularly those in the film industry, consider film grain to be a pleasant noise that enhances the natural look of video content. Re-adding film noise to video can improve the visual experience and is generally considered part of the creative intent.

[0029] Because video compression relies heavily on predictions in the temporal, spatial, or cross-component domains, and film grain is inherently random, film grain is difficult to encode using typical video coding tools. One approach to preserving film grain is to use a lower quantization parameter during video compression to better preserve detail, but this requires a relatively high bitrate for video applications such as adaptive streaming and broadcasting. Another approach is to model film grain at the encoder to obtain film grain parameters. At the decoder, these film grain parameters are then used to synthesize film grain and add it to the decoded video image, thus fully realizing the potential of video compression technology. For example, the existing High Efficiency Video Coding (HEVC) and Versatile Video Coding (VVC) schemes utilize Film Grain Characteristic (FGC) Supplemental Enhancement Information (SEI) messages to indicate the film grain parameters used to synthesize film grain when decoding and rendering video or image data, thereby preserving film grain.

[0030] Figure 1 is a framework diagram of a film grain system used in a video codec, as provided by related art. As shown in Figure 1, at the encoding end, the encoder first compresses and encodes the input source video image (referred to as the source image) to produce an encoded video stream. Meanwhile, the denoising module preprocesses the input source video image to implement denoising (the encoder itself can also be used to perform the denoising process), outputting a video image sequence with film grain removed or attenuated. The film grain modeling process, also known as the film grain parameterization process, estimates the film grain model parameter values ​​by analyzing the differences between the denoised video and the source video. The film grain parameters can be transmitted to the decoding end along with the encoded video stream or provided to the decoding end via some external transmission method.

[0031] On the decoding side, the film grain parameters are parsed and input into the film grain synthesis process to generate simulated film grain. Before the decoded video is output, the film grain is added to the decoded video, and a decoded reconstructed video with simulated film grain is output.

[0032] In addition to the film grain system framework shown in Figure 1, there are other film grain system framework implementations. The main difference lies in the encoding end. For example, the encoding end does not encode the source video image sequence to obtain the encoded video stream, but can encode the denoised video image sequence to obtain the encoded video; or when the source video does not contain film grains, the encoding end can transmit it to the decoding end based on the use of predetermined film grain parameters for film grain synthesis. In this case, even if there is no film grain in the source video, film grain can be added to the video at the decoder end to achieve a certain effect.

[0033] In one embodiment, FIG2 is a flowchart of a film grain region processing method provided in an embodiment of the present application. This embodiment is applicable to adaptively processing film grain regions. This embodiment can be executed by a decoder. As shown in FIG2 , the film grain region processing method in this embodiment includes steps S210 to S240.

[0034] S210 : Determine film grain parameter indication information and region indication information according to the received film grain region adaptive indication information corresponding to the decoded image.

[0035] After receiving the bitstream sent by the encoder, the decoder decodes the bitstream and obtains a decoded reconstructed image corresponding to the bitstream, which serves as the corresponding decoded image. Parsing the bitstream and obtaining the decoded image can be implemented using existing video codec solutions and will not be further described here. The decoder obtains film grain region adaptation indication information corresponding to the decoded image and determines film grain parameter indication information and region indication information based on the film grain region adaptation indication information.

[0036] As an example, the film grain region adaptation indication information may be included in a film grain regions characteristics SEI message or a film grain region adaptation SEI message. The following description will mainly take the film grain region adaptation SEI message as an example. When the film grain region adaptation indication information is included in the film grain region characteristics SEI message, the region indication information includes at least one of the following: a region information presence flag (region_information_present_flag), a region adaptation flag (region_based_adaptation_flag), a number of regions (active_regions_number), a description of each region's position (region_top, region_left, length_width, width_height, etc.), and an alpha channel adaptation flag (alpha_channel_adaptation_flag).

[0037] S220: Determine a film grain area in the decoded image according to the area indication information.

[0038] S230 : Synthesize film grains corresponding to the decoded image according to the film grain parameters determined by the film grain parameter indication information.

[0039] S240: Add film grains to the film grain area in the decoded image.

[0040] The film grain area refers to the area in the decoded image where film grain is applied. The decoder adds the synthesized film grain to the area in the decoded image where film grain is applied.

[0041] In one embodiment, determining a film grain region in a decoded image based on region indication information includes: determining a region type based on the region indication information; obtaining corresponding region description information from the region indication information based on the region type; and determining a film grain region in the decoded image based on the region description information.

[0042] In one embodiment, the region type includes at least one of the following: an externally defined region; an internally defined region. Exemplarily, a region adaptation flag (region_based_adaptation_flag) indicates that the region type is an internally defined region, and an alpha channel adaptation flag (alpha_channel_adaptation_flag) indicates that the region type is an externally defined region.

[0043] In one embodiment, the region type is represented by at least one of the following parameters: at least one Boolean parameter; an enumeration parameter. The region type may be represented by one Boolean parameter, two Boolean parameters, or one enumeration parameter.

[0044] In one embodiment, when the area type is an externally defined area, obtaining corresponding area description information from the area indication information based on the area type includes: obtaining the external area information source and external area indication information from the area indication information; and obtaining corresponding external area description information based on the external area information source and the external area indication information. When the area type is an externally defined area, the area indication information includes at least the external area information source and / or the external area indication information, where the external area information source indicates source information of the externally defined area; and the external area indication information indicates relevant area information of the externally defined area, such as, but not limited to, the number of externally defined areas, an indicator indicating the existence of an area index, and an index of the externally defined area.

[0045] In one embodiment, when the area type is an internally defined area, acquiring corresponding area description information from the area indication information based on the area type includes: directly acquiring corresponding internal area description information from the area indication information.

[0046] In one embodiment, determining the film grain region in the decoded image according to the region indication information includes: acquiring corresponding region description information according to the region indication information; and determining the film grain region in the decoded image according to the region description information.

[0047] In one embodiment, determining the film grain region in the decoded image based on the region description information includes one of the following:

[0048] The area in the decoded image according to the area description information is set as the start-up film grain area by default;

[0049] According to the region description information, the region in the decoded image is set to not enable film grain by default;

[0050] Whether the film grain function is enabled for a region in the decoded image according to the pre-configured film grain flag indicating region description information.

[0051] In one embodiment, the area indication information includes at least one of the following: area type; external area information source; external area indication information; external area description information.

[0052] In one embodiment, when the external area information source includes an annotation area, the external area indication information includes at least one of the following: the number of externally defined areas; an area index existence identifier; and an externally defined area index.

[0053] In one embodiment, when the external area information source includes an omnidirectional viewport, the external area indication information includes at least one of the following: a viewing angle identifier; a region number; and a region index.

[0054] In one embodiment, when the external region information source includes a sub-image or a sub-tile, the external region indication information includes at least one of the following: a sub-image index; a sub-image identifier; a tile index; or a tile identifier.

[0055] In one embodiment, when the external region information source includes an annotation region, the region description information includes at least: the topmost position of the bounding box; the leftmost position of the bounding box; the width of the bounding box; and the height of the bounding box.

[0056] In one embodiment, when the external region information source includes alpha channel information, the region description information includes at least one of the following: alpha channel bit depth; alpha transparency value; alpha opacity value; alpha channel increment identifier; alpha channel clipping identifier; alpha channel clipping type identifier and auxiliary picture sample information corresponding to the alpha channel information SEI message.

[0057] In one embodiment, when the external region information source includes an omnidirectional viewport, the region description information includes at least one of the following: viewing angle azimuth center; viewing angle elevation center; tilt center; viewing angle horizontal range; viewing angle vertical range.

[0058] In one embodiment, when the external region information source includes a sub-image or a sub-tile, the region description information includes at least one of the following: sub-image size; sub-image position; sub-tile size; sub-tile position.

[0059] In one embodiment, the film grain area adaptation indication information includes at least: film grain area adaptation SEI message enable information; externally defined area indication information; internally defined area indication information; the number of externally defined areas; the source of externally defined area information; the area index existence identifier; the externally defined area index; the number of internally defined areas; the top position of the internally defined area; the leftmost position of the internally defined area; the width of the internally defined area; the height of the internally defined area; film grain area adaptation SEI message persistence indication information; area type indication information; film grain function enable information; the number of film grain areas; and film grain parameters.

[0060] In one embodiment, FIG3 is a flowchart of another film grain region processing method provided by an embodiment of the present application. This embodiment is applied to the case of adaptively processing film grain regions. This embodiment can be executed by the encoder. As shown in FIG3 , this embodiment includes: S310-S330.

[0061] S310 , performing film grain region adaptive modeling on the source image to generate corresponding film grain parameter indication information and region indication information.

[0062] S320: Generate corresponding film grain region adaptation indication information according to the film grain parameter indication information and the region indication information.

[0063] S330 , writing the film grain region adaptation indication information into the coded bitstream corresponding to the source image, and sending the coded bitstream with the film grain region adaptation indication information written therein to a decoding end.

[0064] In one embodiment, the image parameters of the source image include at least one of the following: film grain characteristics; image features; image texture;

[0065] The film grain characteristics include at least one of the following: intensity of the film grain; and scaling parameters of the film grain.

[0066] In one embodiment, film grain region adaptive modeling is performed on a source image to generate corresponding film grain parameter indication information and region indication information, including:

[0067] Adaptively model the film grain region of the source image to obtain the corresponding region description information, region type and film grain parameters;

[0068] Generate corresponding area indication information based on the area description information and the area type;

[0069] Corresponding film grain parameter indication information is generated based on the film grain parameter.

[0070] In one embodiment, the area type includes at least one of the following: an externally defined area; an internally defined area.

[0071] In one embodiment, when the area type is an externally defined area, generating corresponding area indication information based on the area description information and the area type includes:

[0072] Generate corresponding external area information source and external area indication information based on the external area description information;

[0073] Corresponding area indication information is generated based on the external area information source and the external area indication information.

[0074] In one embodiment, when the area type is an internally defined area, generating corresponding area indication information based on the area description information and the area type includes:

[0075] The corresponding area indication information is generated directly based on the internal area description information.

[0076] In one embodiment, the area indication information includes at least one of the following: area type; external area information source; external area indication information; external area description information.

[0077] In one embodiment, when the external area information source includes an annotation area, the external area indication information includes at least one of the following: the number of externally defined areas; an area index existence identifier; and an externally defined area index.

[0078] In one embodiment, when the external area information source includes an omnidirectional viewport, the external area indication information includes at least one of the following: a viewing angle identifier; a region number; and a region index.

[0079] In one embodiment, when the external region information source includes a sub-image or a sub-tile, the external region indication information includes at least one of the following: a sub-image index; a sub-image identifier; a tile index; or a tile identifier.

[0080] In one embodiment, when the external region information source includes an annotation region, the region description information includes at least: the topmost position of the bounding box; the leftmost position of the bounding box; the width of the bounding box; and the height of the bounding box.

[0081] In one embodiment, when the external region information source includes alpha channel information, the region description information includes at least one of the following: alpha channel bit depth; alpha transparency value; alpha opacity value; alpha channel increment identifier; alpha channel clipping identifier; alpha channel clipping type identifier and auxiliary picture sample information corresponding to the alpha channel information SEI message.

[0082] In one embodiment, when the external region information source includes an omnidirectional viewport, the region description information includes at least one of the following: viewing angle azimuth center; viewing angle elevation center; tilt center; viewing angle horizontal range; viewing angle vertical range.

[0083] In one embodiment, when the external region information source includes a sub-image or a sub-tile, the region description information includes at least one of the following: sub-image size; sub-image position; sub-tile size; sub-tile position.

[0084] In one embodiment, the film grain area adaptation indication information includes at least: film grain area adaptation SEI message enable information; externally defined area indication information; internally defined area indication information; the number of externally defined areas; the source of externally defined area information; the area index existence identifier; the externally defined area index; the number of internally defined areas; the top position of the internally defined area; the leftmost position of the internally defined area; the width of the internally defined area; the height of the internally defined area; film grain area adaptation SEI message persistence indication information; area type indication information; film grain function enable information; the number of film grain areas; and film grain parameters.

[0085] In a first embodiment, FIG4 is a flow chart of a method for decoding a video image stream provided by an embodiment of the present application. This embodiment is applied to an apparatus for decoding a video stream and adaptively processing film grain areas. The apparatus inputs a video image stream or a media file, and outputs a decoded and reconstructed video image. As shown in FIG4 , the video image stream decoding process in this embodiment includes the following steps:

[0086] S410: Obtain a coded code stream, and decode the coded code stream to obtain a corresponding decoded image.

[0087] The decoder obtains the encoded bitstream and decodes it to obtain the decoded reconstructed image corresponding to the encoded bitstream, i.e., the decoded image. Parsing the bitstream to obtain the decoded image can be done using the methods specified in the video codec standard corresponding to the bitstream type. The relevant technologies will not be elaborated here.

[0088] It should be noted that the video itself is composed of a series of continuous image sequences. The image in the embodiment of the present application can be applied to a single image or a frame image in a video sequence. Therefore, the concepts of video, video image or image mentioned in the subsequent description can be equivalently replaced.

[0089] S420: Acquire film grain region adaptive indication information corresponding to the decoded image, and determine film grain parameter indication information and region indication information according to the film grain region adaptive indication information.

[0090] Based on the film grain region adaptation indication information, different regions in the decoded image may correspond to different film grain strategies. Different film grain strategies may include adding film grain to only some regions of the decoded image and not adding film grain to the remaining regions. Alternatively, different regions in the decoded image may correspond to different types of film grain.

[0091] The film grain region adaptation indication information can be a film grain region adaptation flag (denoted as fg_region_adaptive_flag) indicating whether film grain region adaptive processing is enabled for the video image. The film grain region adaptation flag can be included in the video parameter set (Video Parameter Set, VPS), sequence parameter set (Sequence Parameter Set, SPS), picture parameter set (Picture Parameter Set, PPS) or adaptation parameter set (Adaptation Parameter Set, APS), and can also be included in a specific SEI message.

[0092] The film grain region adaptation indication information may be a SEI message type or SEI message name, and the SEI message type or SEI message name may be used to determine whether a film grain region adaptation strategy is to be implemented for the decoded image. For example, when a decoder receives a Film Grain Region Adaptive supplemental enhancement information message (Film Grain Region Adaptive SEI message), this type of SEI message itself is the film grain adaptation indication information.

[0093] There is no necessary order between obtaining the film grain area adaptation indication information corresponding to the decoded image and parsing the bitstream to obtain the decoded image in S410. These two operations can be performed simultaneously, or the bitstream can be parsed to obtain the decoded image first and then the film grain area adaptation indication information is obtained. Alternatively, the film grain area adaptation indication information can be obtained first and then the bitstream can be parsed to obtain the decoded image.

[0094] The film grain area adaptive indication information may be included in the bitstream, or may be obtained through other pre-configured methods. The following embodiments will be mainly described based on different locations of the film grain area adaptive indication information in the bitstream.

[0095] S430: Determine a film grain area in the decoded image according to the area indication information.

[0096] Determining the regions in the decoded image where film grain is applied according to the region indication information includes determining one or more of the number, position, shape, size, and index of regions where film grain is applied in the decoded image.

[0097] The region indication information includes at least one or more of the region type, external region information source, external region indication information, and region description information. The region type can be used to indicate an externally defined region and / or an internally defined region. An internally defined region means that the region description information corresponding to the region is included in the SEI message corresponding to the film grain region adaptation indication information. Correspondingly, an externally defined region means that the region description information corresponding to the region is not included in the SEI message corresponding to the film grain region adaptation indication information. When the region type includes an externally defined region, the region indication information also includes at least an external region information source. Based on the external region information source, the region description information of the external region can be obtained to determine the region where film grain is applied in the decoded image; when the region type includes an internally defined region, the region indication information also includes at least internal region description information, and the region where film grain is applied in the decoded image is determined based on the internal region description information.

[0098] S440: Determine film grain parameters according to the film grain parameter indication information, and synthesize film grains according to the film grain parameters.

[0099] Film grain parameters include, but are not limited to, film grain model parameters and film grain processing parameters corresponding to the film grain processing method indicated by the film grain model parameters. Film grain model parameters can be film grain model identifiers. Film grain processing parameters can also be referred to as film grain synthesis parameters or film grain modeling parameters.

[0100] The determined film grain parameters may be one set of film grain parameters or multiple sets of film grain parameters. When multiple sets of film grain parameters are determined, corresponding multiple sets of film grain are synthesized according to each set of film grain parameters.

[0101] There is no necessary order between S430 and S440. In actual applications, the processing order of S430 and S440 can be swapped, or S430 and S440 can be processed simultaneously.

[0102] S450: Add the synthesized film grains to the film grain area in the decoded image.

[0103] The method for adding film grain to the decoded image may adopt an additive mode, a multiplicative mode, or any other existing calculation method. The method for adding film grain to the decoded image may be determined by the film grain parameters in S440 or determined by the decoding end based on pre-configured parameters.

[0104] When multiple sets of film grain parameters are determined in S440 , the synthesized multiple sets of film grains are added to the regions corresponding to the film grain parameters respectively.

[0105] In a second embodiment, FIG5 is a flowchart illustrating an implementation of determining a film grain region according to an embodiment of the present application. This embodiment provides a specific example of determining region indication information based on film grain region adaptive indication information, and determining a region in a decoded image to which film grain is applied based on the region indication information. As shown in FIG5 , this embodiment includes the following steps:

[0106] S510: Determine region indication information in the film grain region adaptation indication information.

[0107] The region indication information in the film grain region adaptive indication information is determined with reference to S410 and S420 in the first embodiment.

[0108] S520: Determine the area type according to the area indication information.

[0109] Region types include internally defined regions and externally defined regions. Internally defined regions refer to regions whose description information is included in the film grain region adaptive indication information; externally defined regions refer to regions whose description information is not included in the film grain region adaptive indication information and require further region description information to be obtained from other locations.

[0110] The region type parameter used to characterize the region type may be a Boolean parameter RegionType. When RegionType=0, it indicates that the region type is an externally defined region; when RegionType=1, it indicates that the region type is an internally defined region.

[0111] The region type parameter used to characterize the region type can also be an enumeration parameter RegionType, which contains multiple values. For example, when RegionType=0, it means that the region type is an externally defined region; when RegionType=1, it means that the region type is an internally defined region; when RegionType=2, it means that the region type includes both externally defined regions and internally defined regions.

[0112] The region type parameter used to characterize the region type can also be two Boolean parameters region_external_flag and region_internal_flag, which respectively indicate whether the region type includes internally defined regions or externally defined parameters. For example, when the value of region_external_flag is 1, it indicates that the region type includes external regions; when the value of region_external_flag is 0, it indicates that the region type does not include external regions. When the value of region_internal_flag is 1, it indicates that the region type includes internal regions; when the value of region_internal_flag is 0, it indicates that the region type does not include internal regions.

[0113] It should be noted that the above is only an exemplary description, and the area type parameters in actual applications are not limited to the examples shown here.

[0114] S530. Determine whether it contains only the external defined area or the internal area based on the area type parameter. If it contains only the external area, execute S540; if it contains only the internal area, execute S560. If it contains both the external area and the internal area, execute S540 and S560 respectively.

[0115] S540: Determine the source of the externally defined area indication information and / or the corresponding external area indication information.

[0116] The external region information source RegionSource and the corresponding external region indication information are determined based on the region indication information in the film grain region adaptive indication information. There may be one or more external region information sources. In the existing scheme, the region division method in the video image screen has been defined, and the divided regions are identified by various description methods. These existing and various region division description information that may be formulated in the future can be used as the external region information source in the scheme of this application. The following table gives an example of an external region information source:

[0117] Table 1 Mapping relationship between external area information sources and different values

[0118] Different external region information sources may correspond to different external region indication information. Alternatively, for certain types of external region information sources, if the external region description information can be determined after the external region information source is determined, the corresponding external region indication information may not exist. The external region indication information may include at least one or more of the following information: the number of externally defined regions, a region index existence flag, an externally defined region index, an externally defined region identifier, and the like.

[0119] For example, when the value of the external region information source RegionSource is 0, it indicates that the externally defined region information comes from annotated regions, and the corresponding external region indication information may include at least one or more of: the number of regions (num_regions) and the region index (region_index);

[0120] When the value of RegionSource is 1, it means that the external region information comes from the alpha channel. In this case, there is no need for external region indication information.

[0121] When the value of RegionSource is 2, it indicates that the external region information is from the Omnidirectional viewport. The corresponding external region indication information may include at least one or more of the viewport identifier (viewport_id), the number of regions (num_regions), and the region index (region_index).

[0122] When the value of RegionSource is 3, it indicates that the externally defined region information comes from subpictures / tiles. The corresponding external region indication information may include at least one or more of the following: the number of regions (num_regions), the subpicture index or identifier, and the tile index or identifier.

[0123] S550: Acquire external area description information according to the external area information source and / or the corresponding external area indication information.

[0124] The specific information contained in the external region description information is determined by the external region information source, and the external region description information corresponding to different external region information sources may be different. For example:

[0125] When the externally defined region information comes from annotated regions, obtain the corresponding Annotated regions SEI message, and then obtain the corresponding number of external region description information based on the number of externally defined regions (num_regions), the region index presence flag (region_index_present_flag) and the externally defined region index (region_index) in the external region indication information. When the object index (object_idx) in the Annotated regions SEI message and the externally defined region index (region_index) have the same value, the region description information corresponding to the object index is the external region description information to be obtained. Each external region description information may include the top position of the bounding box (bounding_box_top), the leftmost position of the bounding box (bounding_box_left), the width of the bounding box (bounding_box_width) and the height of the bounding box (bounding_box_height).

[0126] When the externally defined area information comes from alpha channel information, obtain the corresponding Alpha channel information SEI message. The external area description information may include some or all of the following information: alpha channel bit depth (alpha_channel_bit_depth), alpha transparent value (alpha_transparent_value), alpha opaque value (alpha_opaque_value), alpha channel incremental flag (alpha_channel_incr_flag), alpha channel clipping flag (alpha_channel_clip_flag), alpha channel clipping type flag (alpha_channel_clip_type_flag), and auxiliary coded picture sample information corresponding to the Alpha channel information SEI message.

[0127] When the externally defined region information comes from the omnidirectional viewport, obtain the corresponding Omnidirectional viewport SEI message. Then, obtain the corresponding number of region description information based on the number of regions (num_regions) and region index (region_index) in the region indication information. Each external region description information in the Omnidirectional viewport SEI message may include the viewport azimuth center (viewport_azimuth_centre), viewport elevation center (viewport_elevation_centre), tilt center (viewport_tilt_centre), viewport horizontal range (viewport_hor_range), and viewport vertical range (viewport_ver_range).

[0128] When the externally defined region information comes from a subpicture or subtile, the corresponding number of external region description information is obtained based on the number of regions (num_regions) and region index (region_index) in the region indication information. The region index can be the subpicture or tile number; the region description information can include the size and position of the subpicture and tile.

[0129] It should be noted that, here, obtaining the external area description information from the corresponding SEI message according to the external area information source is only an embodiment. In actual applications, the obtained external area description information can come from any type of area indication information.

[0130] S560: Obtain internal area description information according to the area indication information.

[0131] The internal region description information is obtained according to the region indication information in the film grain region adaptation indication information, where the internal region description information corresponds to the internal defined region.

[0132] Region description information indicates the region in the decoded image where film grain parameters are applied. This region description information can be described by region location and size, for example, the top-right corner location and length and width can define a rectangular region. It can also be described by block size and sequence number, for example, the location of the eighth 8*8 adaptive processing block. The size of the adaptive processing block can be pre-set or determined by other means, such as determining the size and sequence of several optional adaptive processing blocks, and identifying the size of the adaptive block to be used by a given sequence number.

[0133] S570: Determine a film grain area in the decoded image according to the internal or external area description information.

[0134] Based on the region description information used to indicate the location area in the decoded image where film grain parameters are applied, the region corresponding to the region description information is first determined in the decoded image, and then the region in the decoded image where film grain is applied is further determined. The region corresponding to the region description information in the decoded image is related art. Methods for determining the region in the decoded image where film grain is applied based on the region description information include, but are not limited to: the region corresponding to the region description information in the decoded image is a region where film grain is enabled by default; or the region corresponding to the region description information is a region where film grain is not enabled by default; and a film grain flag indicating whether film grain is enabled may also be set for each region, so that the film grain flag indicates whether the region in the decoded image determined based on the region description information has the film grain function enabled.

[0135] In a third embodiment, an embodiment of the present application provides an example of an SEI message for implementing adaptive processing of film grain areas, wherein the grammatical structure and semantic information (as shown in the table below) may correspond to a combination example of various situations described in the first and second embodiments.

[0136] In order to better explain, here we first supplement the content related to the SEI message parsing process and SEI message encapsulation. Before obtaining the SEI message, the decoding end will first obtain the Network Abstract Layer unit (NAL unit) from the bitstream. The NAL unit is the most basic syntax structure in the bitstream. Each NAL unit contains a header information (nal_unti_header) and RBSP (Raw Byte Sequence Payload) information. The NAL unit header information further includes NAL unit type information (nal_unti_type). When the value of nal_unit_type is 23, it indicates that the NAL unit is PREFIX_SEI_NUT, that is, the pre-SEI information. When the value of nal_unit_type is 24, it indicates that the NAL unit is SUFFIX_SEI_NUT, that is, the post-SEI information. In this application, we do not limit the film grain region adaptation (film_grain_adaptive_region) SEI message to PREFIX_SEI_NUT or SUFFIX_SEI_NUT. When a NAL unit type is determined to be an SEI message, the RBSP data in the NAL unit is parsed according to the RBSP syntax structure corresponding to the SEI message (as shown in Table 2). An SEI RBSP can include one or more SEI messages (sei_message).

[0137] Table 2 Schematic diagram of the syntax structure of a SEI RBSP

[0138] The syntax structure of sei_message() is shown in the following table (Table 3), which includes the syntax element payload_type, indicating the type of SEI message.

[0139] Table 3 Syntax structure of SEI message

[0140] After determining the type of the SEI message, the parameter information to be transmitted by the SEI message can be further parsed according to the sei_payload() syntax structure corresponding to the SEI message of this type (as shown in Table 3).

[0141] Table 4 Schematic diagram of the syntax structure of sei_payload()

[0142] For the embodiment of the present application, the payloadType value of the film grain region adaptation (film_grain_adaptive_region) SEI message only needs to be different from the payloadType values ​​of other existing SEI messages (for example, the value can be 8). The decoder can determine that the SEI message is the film grain region adaptation (film_grain_adaptive_region) SEI message through the above analysis, that is, it can be used as the region adaptation indication information in the first embodiment or the second embodiment.

[0143] The payload syntax structure of the film grain region adaptation (film_grain_adaptive_region) SEI message can be shown in the following table:

[0144] Table 5 Schematic diagram of the syntax structure of a film grain region adaptation SEI message payload()

[0145] The following is the semantic information corresponding to each syntax element in the film grain region adaptation (film_grain_adaptive_region) SEI message:

[0146] Film grain region adaptation SEI message enable information fga_region_cancel_flag: When the value is equal to 1, it indicates that the film grain region adaptation SEI message cancels the persistence of any previous film grain region adaptation SEI message and does not use the related SEI function. Conversely, when the value is equal to 0, it indicates that the film grain region adaptation information immediately follows.

[0147] When this syntax element does not exist, it indicates that fga_region_cancel_flag is equal to 0.

[0148] External definition area indication information fga_region_external_flag: when the value is equal to 1, it indicates that the external definition area exists; when the value is equal to 0, it indicates that the external definition area does not exist;

[0149] Internally defined area indication information fga_region_internal_flag: when the value is equal to 1, it indicates that an internally defined area exists; when the value is equal to 0, it indicates that no internally defined area exists;

[0150] Number of externally defined regions fga_num_regions_external_minus1: plus 1 to indicate the number of externally defined regions;

[0151] Externally defined region information source fga_regions_source[i]: indicates the source of the i-th externally defined region. For its value, refer to S540 in the second embodiment.

[0152] When the region index presence flag fga_region_index_present_flag is equal to 1, it indicates that an externally defined region index exists; when it is equal to 0, it indicates that no externally defined region index exists;

[0153] Externally defined region index fga_region_external_index[i]: indicates the i-th externally defined region index. The region position of the i-th externally defined region can be determined according to the externally defined region index and the externally defined region source.

[0154] Number of internally defined regions fga_num_regions_internal_minus1: plus 1 to indicate the number of internally defined regions;

[0155] The top position of the internal definition area fga_region_internal_top[i]: indicates the top position of the i-th internal definition area;

[0156] The leftmost position of the internal definition area fga_region_internal_left[i]: indicates the leftmost position of the i-th internal definition area;

[0157] Internal definition area width fga_region_internal_width[i]: indicates the width of the i-th internal definition area;

[0158] Internal definition area height fga_region_internal_height[i]: indicates the height of the i-th internal definition area;

[0159] Film grain region adaptation SEI message persistence indication information fga_region_persistent_flag: used to indicate the persistence of the current film grain region adaptation SEI message. When the value of the persistence flag (fga_region_persistent_flag) is equal to 0, it indicates that the film grain region adaptation SEI message applies only to the currently decoded (sub-) picture. When the value of the persistence flag (fga_region_persistent_flag) is equal to 1, it indicates that the film grain region adaptation SEI message applies not only to the currently decoded (sub-) picture, but also to subsequent decoded (sub-) pictures within the persistence scope (peisistence_scope). For example, the persistence scope (peisistence_scope) of the film grain region adaptation SEI message can be an access unit (AU), a coded video sequence (CVS), or unspecified. This embodiment of the application does not impose specific restrictions on this. When this syntax element does not exist, it indicates that fga_region_persistent_flag is equal to 0.

[0160] In the fourth embodiment, the embodiment of the present application provides another SEI message example for implementing film grain area adaptive processing, wherein the grammatical structure and semantic information (as shown in the table below) may correspond to a combination example of various situations described in the first and second embodiments.

[0161] Table 6 Schematic diagram of the syntax structure of another film grain region adaptation SEI message payload()

[0162] The following is the semantic information corresponding to each syntax element in the film grain adaptation (film_grain_adaptive) SEI message:

[0163] fga_region_cancel_flag: refer to the description in the third embodiment.

[0164] Region type indication information fga_region_type: equal to 1 indicates an internally defined area; equal to 0 indicates an externally defined area.

[0165] Film grain function enable information fga_region_enabled_flag: when equal to 1, it means that the film grain function is enabled for the internally defined area or the externally defined area; when equal to 0, it means that the film grain function is not enabled for the internally defined area or the externally defined area.

[0166] Number of film grain regions fga_num_regions_minus1: plus 1 equal to the number of regions to which film grain is applied, and the number of regions cannot exceed 4;

[0167] Film grain parameters fga_characteristic_parameters()[i]: indicates the film grain parameters applied to the i-th region; the actual indication method of the film grain parameters is not limited here. All film grain parameters can be directly included in the current SEI message, or the corresponding film grain parameters can be determined by giving a film grain model, or the film grain parameters in the film grain SEI message can be obtained given a film grain SEI message identifier, etc.

[0168] fga_regions_source: refer to the description in the third embodiment.

[0169] When region source is not equal to 1 (Alpha Channel Information), further region index information is required;

[0170] fga_region_external_index[i]: refer to the description in the third embodiment;

[0171] fga_region_internal_top[i]: refer to the description in the third embodiment;

[0172] fga_region_internal_left[i]: refer to the description in the third embodiment;

[0173] fga_region_internal_width[i]: refer to the description in the third embodiment;

[0174] fga_region_internal_height[i]: refer to the description in the third embodiment;

[0175] fga_region_persistent_flag: refer to the description in the third embodiment.

[0176] In a fifth embodiment, FIG6 is a flow chart of a method for encoding a video image stream according to an embodiment of the present application. This embodiment is applied to an apparatus for encoding an input video image and adaptively processing film grain areas. The apparatus input is a source video image (referred to as a source image), and the output is a video image stream or media file. As shown in FIG6 , the process of encoding the source image in this embodiment includes the following steps:

[0177] S610: Encode the source image to generate an encoded bitstream.

[0178] The image can be a single image or a frame in a video sequence. There are many related technologies for encoding images to generate bitstreams. This article does not limit the use of any coding standard to encode images, so it will not be described in detail.

[0179] S620: Perform film grain region adaptive modeling according to the source image or film grain characteristics in the source image.

[0180] The film grain characteristics may be based on the film grain characteristics of the entire image, or the film grain characteristics of different regions in the image; the film grain characteristics include but are not limited to the intensity of the film grain, the scaling parameters of the film grain, and the like.

[0181] Regional adaptive film grain modeling can be based on the film grain characteristics of different regions in the image to only model film grain in some areas, or based on the film grain characteristics of different regions in the image to model film grain separately. The film grain modeling methods used in different regions can be the same or different. When the same film grain modeling method is used in different regions, the corresponding film grain parameters of different regions may not be exactly the same;

[0182] If the original image does not contain film grains, you can first add film grains to the image and then perform regional adaptive modeling based on the added film grain characteristics. You can also directly determine the method of regional adaptive film grain modeling based on the characteristics or texture of the image.

[0183] S630: Determine film grain region adaptation indication information, where the film grain region adaptation indication information at least includes film grain parameter indication information and region indication information.

[0184] The film grain regional adaptive indication information corresponding to the image is determined according to the regional adaptive film grain modeling process adopted in S620. The film grain regional adaptive indication information includes at least film grain parameter indication information and region indication information.

[0185] S640: Write the film grain area adaptation indication information into the corresponding encoding bitstream.

[0186] The code stream can be an image code stream or a transport stream or media file containing an image code stream.

[0187] In one embodiment, FIG7 is a block diagram of a film grain region processing device provided by an embodiment of the present application. This embodiment is applied to a decoding end. As shown in FIG7 , the film grain region processing device in this embodiment includes a first determination module 710, a second determination module 720, a synthesis module 730, and an addition module 740.

[0188] The first determining module 710 is configured to determine film grain parameter indication information and region indication information according to the received film grain region adaptive indication information corresponding to the decoded image.

[0189] The second determining module 720 is configured to determine the film grain region in the decoded image according to the region indication information.

[0190] The synthesis module 730 is configured to synthesize film grains corresponding to the decoded image according to the film grain parameters determined by the film grain parameter indication information.

[0191] The adding module 740 is configured to add film grain to the film grain area in the decoded image.

[0192] In one embodiment, the second determining module 720 includes:

[0193] a first determining unit configured to determine an area type according to the area indication information;

[0194] A first acquiring unit is configured to acquire corresponding area description information from the area indication information based on the area type;

[0195] The second determining unit is configured to determine the film grain region in the decoded image according to the region description information.

[0196] In one embodiment, the area type includes at least one of the following: an externally defined area; an internally defined area.

[0197] In one embodiment, the region type is characterized by at least one of the following parameters: at least one Boolean parameter; an enumeration parameter.

[0198] In one embodiment, when the area type is an externally defined area, the first obtaining unit includes:

[0199] a first acquiring subunit, configured to acquire the external area information source and the external area indication information from the area indication information;

[0200] The second acquisition subunit is configured to acquire corresponding external area description information according to the external area information source and the external area indication information.

[0201] In one embodiment, when the area type is an internally defined area, the first obtaining unit is configured to directly obtain the corresponding internal area description information from the area indication information.

[0202] In one embodiment, the second determining module includes:

[0203] A second acquiring unit is configured to acquire corresponding area description information according to the area indication information;

[0204] The third determining unit is configured to determine the film grain region in the decoded image according to the region description information.

[0205] In one embodiment, the third determining unit is configured as one of the following:

[0206] The area in the decoded image according to the area description information is set as the start-up film grain area by default;

[0207] According to the region description information, the region in the decoded image is set to not enable film grain by default;

[0208] Whether the film grain function is enabled for a region in the decoded image according to the pre-configured film grain flag indicating region description information.

[0209] In one embodiment, the area indication information includes at least one of the following: area type; external area information source; external area indication information; external area description information.

[0210] In one embodiment, when the external area information source includes an annotation area, the external area indication information includes at least one of the following: the number of externally defined areas; an area index existence identifier; and an externally defined area index.

[0211] In one embodiment, when the external area information source includes an omnidirectional viewport, the external area indication information includes at least one of the following: a viewing angle identifier; a region number; and a region index.

[0212] In one embodiment, when the external region information source includes a sub-image or a sub-tile, the external region indication information includes at least one of the following: a sub-image index; a sub-image identifier; a tile index; or a tile identifier.

[0213] In one embodiment, when the external region information source includes an annotation region, the region description information includes at least: the topmost position of the bounding box; the leftmost position of the bounding box; the width of the bounding box; and the height of the bounding box.

[0214] In one embodiment, when the external region information source includes alpha channel information, the region description information includes at least one of the following: alpha channel bit depth; alpha transparency value; alpha opacity value; alpha channel increment identifier; alpha channel clipping identifier; alpha channel clipping type identifier and auxiliary picture sample information corresponding to the alpha channel information SEI message.

[0215] In one embodiment, when the external region information source includes an omnidirectional viewport, the region description information includes at least one of the following: viewing angle azimuth center; viewing angle elevation center; tilt center; viewing angle horizontal range; viewing angle vertical range.

[0216] In one embodiment, when the external region information source includes a sub-image or a sub-tile, the region description information includes at least one of the following: sub-image size; sub-image position; sub-tile size; sub-tile position.

[0217] In one embodiment, the film grain area adaptation indication information includes at least: film grain area adaptation SEI message enable information; externally defined area indication information; internally defined area indication information; the number of externally defined areas; the source of externally defined area information; the area index existence identifier; the externally defined area index; the number of internally defined areas; the top position of the internally defined area; the leftmost position of the internally defined area; the width of the internally defined area; the height of the internally defined area; film grain area adaptation SEI message persistence indication information; area type indication information; film grain function enable information; the number of film grain areas; and film grain parameters.

[0218] The film grain region processing device provided in this embodiment is configured to implement the film grain region processing method applied to the decoding end of the embodiment shown in FIG2 . The implementation principle and technical effects of the film grain region processing device provided in this embodiment are similar and will not be described in detail here.

[0219] In one embodiment, FIG8 is a block diagram of another film grain region processing device provided by an embodiment of the present application. This embodiment is applied to an encoding end. As shown in FIG8 , the film grain region processing device in this embodiment includes a first generation module 810, a second generation module 820, and a sending module 830.

[0220] The first generating module 810 is configured to perform film grain region adaptive modeling on the source image and generate corresponding film grain parameter indication information and region indication information.

[0221] The second generating module 820 is configured to generate corresponding film grain region adaptation indication information according to the film grain parameter indication information and the region indication information.

[0222] The sending module 830 is configured to write the film grain area adaptation indication information into the coded bitstream corresponding to the source image and send it to the decoding end.

[0223] In one embodiment, the image parameters of the source image include at least one of the following: film grain characteristics; image features; image texture;

[0224] The film grain characteristics include at least one of the following: intensity of the film grain; and scaling parameters of the film grain.

[0225] In one embodiment, the first generating module 810 includes:

[0226] a modeling unit configured to perform film grain region adaptive modeling on the source image to obtain corresponding region description information, region type, and film grain parameters;

[0227] A first generating unit is configured to generate corresponding area indication information based on the area description information and the area type;

[0228] The second generating unit is configured to generate corresponding film grain parameter indication information based on the film grain parameter.

[0229] In one embodiment, the area type includes at least one of the following: an externally defined area; an internally defined area.

[0230] In one embodiment, when the area type is an externally defined area, the first generating unit includes:

[0231] A first generating subunit is configured to generate corresponding external area information source and external area indication information based on the external area description information;

[0232] The second generating subunit is configured to generate corresponding area indication information based on the external area information source and the external area indication information.

[0233] In one embodiment, when the area type is an internally defined area, the first generating unit is configured to generate corresponding area indication information directly based on the internal area description information.

[0234] In one embodiment, the area indication information includes at least one of the following: area type; external area information source; external area indication information; external area description information.

[0235] In one embodiment, when the external area information source includes an annotation area, the external area indication information includes at least one of the following: the number of externally defined areas; an area index existence identifier; and an externally defined area index.

[0236] In one embodiment, when the external area information source includes an omnidirectional viewport, the external area indication information includes at least one of the following: a viewing angle identifier; a region number; and a region index.

[0237] In one embodiment, when the external region information source includes a sub-image or a sub-tile, the external region indication information includes at least one of the following: a sub-image index; a sub-image identifier; a tile index; or a tile identifier.

[0238] In one embodiment, when the external region information source includes an annotation region, the region description information includes at least: the topmost position of the bounding box; the leftmost position of the bounding box; the width of the bounding box; and the height of the bounding box.

[0239] In one embodiment, when the external region information source includes alpha channel information, the region description information includes at least one of the following: alpha channel bit depth; alpha transparency value; alpha opacity value; alpha channel increment identifier; alpha channel clipping identifier; alpha channel clipping type identifier and auxiliary picture sample information corresponding to the alpha channel information SEI message.

[0240] In one embodiment, when the external region information source includes an omnidirectional viewport, the region description information includes at least one of the following: viewing angle azimuth center; viewing angle elevation center; tilt center; viewing angle horizontal range; viewing angle vertical range.

[0241] In one embodiment, when the external region information source includes a sub-image or a sub-tile, the region description information includes at least one of the following: sub-image size; sub-image position; sub-tile size; sub-tile position.

[0242] In one embodiment, the film grain area adaptation indication information includes at least: film grain area adaptation SEI message enable information; externally defined area indication information; internally defined area indication information; the number of externally defined areas; the source of externally defined area information; the area index existence identifier; the externally defined area index; the number of internally defined areas; the top position of the internally defined area; the leftmost position of the internally defined area; the width of the internally defined area; the height of the internally defined area; film grain area adaptation SEI message persistence indication information; area type indication information; film grain function enable information; the number of film grain areas; and film grain parameters.

[0243] The film grain area processing device provided in this embodiment is configured to implement the film grain area processing method applied to the encoding end of the embodiment shown in FIG3 . The implementation principle and technical effects of the film grain area processing device provided in this embodiment are similar and will not be described in detail here.

[0244] In one embodiment, Figure 9 is a schematic diagram of the structure of a communication device provided by an embodiment of the present application. As shown in Figure 9, the device provided by the present application includes: a processor 910, a memory 920, and a communication module 930. The number of processors 910 in the device can be one or more, and Figure 9 uses one processor 910 as an example. The number of memories 920 in the device can be one or more, and Figure 9 uses one memory 920 as an example. The processor 910, memory 920, and communication module 930 of the device can be connected via a bus or other means, and Figure 9 uses bus connection as an example.

[0245] Memory 920, as a computer-readable storage medium, can be configured to store software programs, computer-executable programs, and modules, such as program instructions / modules corresponding to the device of any embodiment of the present application (e.g., the first determination module 710, the second determination module 720, the synthesis module 730, and the addition module 740 in the film grain region processing method apparatus). Memory 920 may include a program storage area and a data storage area. The program storage area may store an operating system and application programs required for at least one function; the data storage area may store data created based on the use of the device. Furthermore, memory 920 may include high-speed random access memory and non-volatile memory, such as at least one disk storage device, flash memory device, or other non-volatile solid-state memory device. In some instances, memory 920 may further include memory remotely located relative to processor 910, and such remote memory may be connected to the device via a network. Examples of such networks include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.

[0246] In the case where the communication device is a decoding end, the above-provided device can be configured to execute the film grain area processing method applied to the decoding end provided in any of the above-mentioned embodiments, and have corresponding functions and effects.

[0247] In the case where the communication device is an encoding end, the above-provided device can be configured to execute the film grain area processing method applied to the encoding end provided in any of the above-mentioned embodiments, and have corresponding functions and effects.

[0248] An embodiment of the present application also provides a storage medium containing computer-executable instructions, which, when executed by a computer processor, are used to perform a film grain area processing method applied to a decoding end, the method comprising: determining film grain parameter indication information and area indication information based on film grain area adaptive indication information corresponding to a received decoded image; determining a film grain area in the decoded image based on the area indication information; synthesizing film grain corresponding to the decoded image based on film grain parameters determined according to the film grain parameter indication information; and adding film grain to the film grain area in the decoded image.

[0249] An embodiment of the present application also provides a storage medium containing computer-executable instructions, which, when executed by a computer processor, are used to perform a film grain area processing method applied to an encoding end, the method comprising: performing film grain area adaptive modeling on a source image to generate corresponding film grain parameter indication information and area indication information; generating corresponding film grain area adaptive indication information based on the film grain parameter indication information and the area indication information; and writing the film grain area adaptive indication information into an encoded code stream corresponding to the source image and sending it to a decoding end.

[0250] It will be appreciated by those skilled in the art that the term user equipment encompasses any suitable type of wireless user equipment, such as a mobile phone, a portable data processing device, a portable web browser or a car-mounted mobile station.

[0251] In general, various embodiments of the present application may be implemented in hardware or dedicated circuits, software, logic, or any combination thereof. For example, some aspects may be implemented in hardware, while other aspects may be implemented in firmware or software that can be executed by a controller, microprocessor, or other computing device, although the present application is not limited thereto.

[0252] Embodiments of the present application may be implemented by executing computer program instructions by a data processor of a mobile device, for example, in a processor entity, or by hardware, or by a combination of software and hardware. The computer program instructions may be assembly instructions, instruction set architecture (ISA) instructions, machine instructions, machine-dependent instructions, microcode, firmware instructions, state setting data, or source code or object code written in any combination of one or more programming languages.

[0253] The block diagram of any logic flow in the drawings of the present application may represent program steps, or may represent interconnected logic circuits, modules and functions, or may represent a combination of program steps and logic circuits, modules and functions. A computer program may be stored on a memory. The memory may be of any type suitable for the local technical environment and may be implemented using any suitable data storage technology, such as, but not limited to, read-only memory (ROM), random access memory (RAM), optical storage devices and systems (digital versatile discs (DVD) or compact disks (CD)), etc. Computer-readable media may include non-transient storage media. A data processor may be of any type suitable for the local technical environment, such as, but not limited to, a general-purpose computer, a special-purpose computer, a microprocessor, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), and a processor based on a multi-core processor architecture.

[0254] The above are merely optional embodiments of the present application and are not intended to limit the present application. Various modifications and variations are possible for those skilled in the art. Any modifications, equivalent substitutions, improvements, etc. made within the spirit and principles of the present application shall be included within the scope of protection of the present application.

Claims

1. A method for processing a film grain region, applied to a decoding end, comprising: Determining film grain parameter indication information and region indication information according to the received film grain region adaptive indication information corresponding to the decoded image; Determining the film grain region in the decoded image according to the region indication information; Synthesizing the film grain corresponding to the decoded image according to the film grain parameters determined according to the film grain parameter indication information; Adding the film grain to the film grain region in the decoded image.

2. The method according to claim 1, wherein, The determining the film grain region in the decoded image according to the region indication information includes: Determining a region type according to the region indication information; Obtaining corresponding region description information from the region indication information based on the region type; Determining the film grain region in the decoded image according to the region description information.

3. The method according to claim 2, wherein The region type includes at least one of the following: externally defined region; internally defined region.

4. The method according to claim 2, wherein, The region type is characterized by at least one of the following parameters: at least one boolean parameter; enumerated parameter.

5. The method according to claim 2, wherein, In the case where the region type is an externally defined region, the obtaining corresponding region description information from the region indication information based on the region type includes: Obtaining external region information source and external region indication information from the region indication information; Obtaining corresponding external region description information according to the external region information source and the external region indication information.

6. The method according to claim 2, wherein In the case where the region type is an internally defined region, the obtaining corresponding region description information from the region indication information based on the region type includes: Directly obtaining corresponding internal region description information from the region indication information.

7. The method according to claim 1, wherein, The determining the film grain region in the decoded image according to the region indication information includes: Obtaining corresponding region description information according to the region indication information; Determining the film grain region in the decoded image according to the region description information.

8. The method according to claim 2 or 7, wherein The determining the film grain region in the decoded image according to the region description information includes one of the following: The region in the decoded image according to the region description information is defaulted to the activated film grain region; The region in the decoded image according to the region description information is defaulted to the non-activated film grain region; Indicating whether the region in the decoded image corresponding to the region description information activates the film grain function according to the pre-configured film grain identifier.

9. The method according to claim 1, wherein The region indication information includes at least one of the following: region type; external region information source; external region indication information; region description information.

10. The method according to claim 9, wherein In the case where the external region information source includes an annotation region, the external region indication information includes at least one of the following: externally defined region quantity; region index existence flag; externally defined region index.

11. The method according to claim 9, wherein, In the case where the external region information source includes an omnidirectional viewport, the external region indication information includes at least one of the following: viewing angle identifier; region quantity; region index.

12. The method according to claim 9, wherein, When the external region information source includes a sub-image or a sub-tile, the external region indication information includes at least one of the following: sub-image index; sub-image identifier; tile index; tile identifier.

13. The method according to claim 9, wherein, When the external region information source includes an annotation region, the region description information includes at least: the topmost position of the bounding box; the leftmost position of the bounding box; the width of the bounding box; the height of the bounding box.

14. The method according to claim 9, wherein When the external region information source includes alpha channel information, the region description information includes at least one of the following: alpha channel bit depth; alpha transparency value; alpha opacity value; alpha channel increment identifier; alpha channel clip identifier; alpha channel clip type identifier; and auxiliary picture sample information corresponding to the alpha channel information supplementary enhancement information SEI message.

15. The method according to claim 9, wherein, When the external region information source includes an omnidirectional viewport, the region description information includes at least one of the following: view azimuth center; view elevation center; tilt center; view horizontal range; view vertical range.

16. The method according to claim 9, wherein, When the external region information source includes a sub-image or a sub-tile, the region description information includes at least one of the following: sub-image size; sub-image position; sub-tile size; sub-tile position.

17. The method according to claim 9, wherein, The film grain region adaptive indication information includes at least one of the following: film grain region adaptive SEI message enable information; externally defined region indication information; internally defined region indication information; number of externally defined regions; external region information source; region index presence flag; externally defined region index; number of internally defined regions; topmost position of the internally defined region; leftmost position of the internally defined region; width of the internally defined region; height of the internally defined region; film grain region adaptive SEI message persistence indication information; region type indication information; film grain function enable information; number of film grain regions; film grain parameters.

18. A film grain region processing method, applied to an encoding end, includes: Performing film grain region adaptive modeling on a source image to generate corresponding film grain parameter indication information and region indication information; Generating corresponding film grain region adaptive indication information according to the film grain parameter indication information and the region indication information; Writing the film grain region adaptive indication information into an encoded bitstream corresponding to the source image, and sending the encoded bitstream written with the film grain region adaptive indication information to a decoding end.

19. The method according to claim 18, wherein, The image parameters of the source image include at least one of the following: film grain characteristics; image features; image texture; Among them, the film grain characteristics include at least one of the following: the intensity of the film grain; the scaling parameter of the film grain.

20. The method according to claim 18, wherein The performing film grain region adaptive modeling on a source image to generate corresponding film grain parameter indication information and region indication information includes: Performing film grain region adaptive modeling on a source image to obtain corresponding region description information, region type, and film grain parameters; Generating corresponding region indication information based on the region description information and the region type; Generate corresponding film grain parameter indication information based on the film grain parameters.

21. The method according to claim 20, wherein, The region type includes at least one of the following: externally defined region; internally defined region.

22. The method according to claim 20, wherein, When the region type is an externally defined region, the generating corresponding region indication information based on the region description information and the region type includes: Generate corresponding external region information source and external region indication information based on the external region description information; Generate corresponding region indication information based on the external region information source and the external region indication information.

23. The method according to claim 20, wherein When the region type is an internally defined region, the generating corresponding region indication information based on the region description information and the region type includes: Directly generate corresponding region indication information based on the internal region description information.

24. The method according to claim 20, wherein The region indication information includes at least one of the following: region type; external region information source; external region indication information; region description information.

25. A communication device, comprising: A memory, and one or more processors; The memory is configured to store one or more programs; When the one or more programs are executed by the one or more processors, the one or more processors implement the method according to any one of claims 1-17 or 18-24 above.

26. A storage medium storing a computer program, which when executed by a processor implements the method according to any one of claims 1-17 or 18-24 above.

Citation Information

Patent Citations

  • Film particle process

    CN114946184A

  • Metadata signaling and conversion for film particle coding

    CN117121491A

  • Independent subpicture film grain

    WO2023274688A1

  • Applying an overlay process to a picture

    WO2023274772A1