Color noise reduction method and apparatus, and electronic device and computer-readable storage medium

WO2025184843A8PCT designated stage Publication Date: 2025-10-02VERISILICON MICROELECTRONICS (CHENGDU) CO LTD +4
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
PCT/CN2024/080400
Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-03-06
Publication Date
2025-10-02

AI Technical Summary

Technical Problem

Existing noise reduction methods have difficulty in balancing color noise and color overflow problems at image edges, and the effect is poor.

Method used

Convert the YUV format image to a target format that does not use brightness encoding, such as RGB format, calculate the pixel difference between adjacent pixels in the target image, obtain the difference distribution, and perform denoising on the source image based on the difference distribution.

Benefits of technology

Effectively distinguish the similarity between neighboring pixels, maximize noise reduction in edge areas, and avoid color overflow and edge noise residue.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2024080400_02102025_PF_FP_ABST
    Figure CN2024080400_02102025_PF_FP_ABST
Patent Text Reader

Abstract

Provided in the present application are a color noise reduction method and apparatus, and an electronic device and a computer-readable storage medium. The method comprises: converting a source image in a YUV format into a target image in a target format, wherein the target format is a color encoding format that does not use luminance for encoding; calculating the pixel difference between adjacent pixel points in the target image to obtain a difference distribution; and on the basis of the difference distribution, performing noise reduction on the source image. An image in a target format is used to indirectly introduce information of a Y channel in a source image, thereby not only effectively distinguishing the similarity between neighboring pixels, but also performing color noise reduction on edge regions to the maximum extent, and also solving the problems in respect of color overflow and residual edge noise during color noise reduction.
Need to check novelty before this filing date? Find Prior Art

Description

Color noise reduction method, device, electronic device and computer-readable storage medium Technical Field

[0001] The present application relates to the field of image processing, and more specifically, to a method, device, electronic device, and computer-readable storage medium for color noise reduction. Background Art

[0002] In the application scenarios of image sensors such as CMOS Sensor (Complementary Metal-Oxide-Semiconductor Sensor) and CCDSensor (Charge Coupled Device Sensor) in mobile phones and video surveillance, images often contain some low-frequency noise, which appears as low-frequency, brightly colored patches in RGB images. In the YUV domain, this low-frequency noise is more significant in the UV channel. Therefore, UV channel noise reduction is often used to remove low-frequency color noise in images.

[0003] However, existing noise reduction methods have difficulty in balancing the color noise and color overflow problems at the edges of images, and the effect is poor.

[0004] Summary of the Invention

[0005] In view of this, the purpose of the present application is to provide a color noise reduction method, device, electronic device and computer-readable storage medium to solve the problem that existing noise reduction methods are difficult to balance the color noise at the edge of the image.

[0006] In a first aspect, the present application provides a method for reducing color noise, the method comprising: converting a source image in YUV format into a target image in a target format, the target format being a color encoding format that does not use brightness for encoding; calculating the pixel difference between adjacent pixel points in the target image to obtain a difference distribution; and reducing noise on the source image based on the difference distribution.

[0007] In the above embodiment, the target format image is used to indirectly introduce the Y channel information of the source image, which can effectively distinguish the similarity between neighboring pixels and reduce the color noise in the edge area to the maximum extent, while solving the color overflow and edge noise residual in the color noise reduction process.

[0008] In an optional embodiment of the present application, the denoising of the source image based on the difference distribution includes: calculating a weight parameter of each pixel point based on the pixel difference corresponding to each pixel point in the source image in the difference distribution; and weighting the adjacent pixels corresponding to each pixel point in the source image based on the weight parameter of each pixel point to achieve noise reduction.

[0009] In the above embodiment, the target image is weighted as the guiding graph of the source image, and the target image indirectly introduces the information of the Y channel in the source image, which can not only effectively distinguish the similarity between neighboring pixels but also reduce the color noise in the edge area to the maximum extent. At the same time, there will be no color overflow and edge noise residual in the color noise reduction process.

[0010] In an optional embodiment of the present application, the calculating of pixel differences between adjacent pixels in the target image to obtain a difference distribution includes: calculating the pixel difference between a pixel in the target image and all pixels in an adjacent area of ​​the pixel to obtain a difference matrix; obtaining the difference matrix of all pixels in the target image to obtain the difference distribution.

[0011] In the above embodiment, the difference between a pixel point and all pixels in an adjacent area is taken, so that changes of the pixel point in all directions can be identified and more information about the pixel point can be obtained.

[0012] In an optional embodiment of the present application, the adjacent area is an area within a preset radius centered on the pixel point in the target image.

[0013] In an optional embodiment of the present application, the denoising of the source image based on the difference distribution includes: obtaining a weight matrix for each pixel in the source image, wherein the weight matrix is ​​calculated by the difference matrix of the corresponding pixel in the target image; and based on the weight matrix of each pixel, weighting all pixels in the adjacent area corresponding to each pixel in the source image to achieve noise reduction.

[0014] In the above embodiment, the weight matrix is ​​established by using the difference distribution, which can fully utilize the area around the pixel to reduce the noise of the pixel and improve the noise reduction effect.

[0015] In an optional embodiment of the present application, the target format includes an RGB format.

[0016] In an optional embodiment of the present application, the denoising the source image according to the difference distribution includes: denoising the U channel and the V channel respectively according to the difference distribution.

[0017] In second aspect, an embodiment of the present application provides a color noise reduction device, which includes: a conversion module for converting a source image in YUV format into a target image in a target format, wherein the target format is a color coding format that does not use brightness for encoding; a calculation module for calculating the pixel difference between adjacent pixel points in the target image to obtain a difference distribution; and a noise reduction module for performing noise reduction on the source image based on the difference distribution.

[0018] In a third aspect, an embodiment of the present application provides an electronic device comprising: a memory and a processor, the processor being connected to the memory; the memory being used to store programs; and the processor being used to call the programs stored in the memory to execute a method as described in any one of the first aspects.

[0019] In a fourth aspect, an embodiment of the present application provides a computer-readable storage medium having a computer program stored thereon. When the computer program is executed by a processor, the method as described in any one of the first aspects is executed.

[0020] Other features and advantages of the present application will be described in the following description. The purpose and other advantages of the present application can be realized and obtained through the structures specifically pointed out in the written description and the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS

[0021] FIG1 is a flow chart of a color noise reduction method provided in an embodiment of the present application;

[0022] FIG2 is a schematic block diagram of a color noise reduction device provided in an embodiment of the present application;

[0023] FIG3 is a schematic block diagram of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0024] Hereinafter, embodiments of the present application are described in detail with reference to the accompanying drawings. It should be noted that although the same elements are shown in different drawings, they will be represented by the same reference numerals. In the following description, specific details such as detailed configuration and components are provided to only help a comprehensive understanding of the embodiments of the present application. Therefore, it should be clear to those skilled in the art that various changes and modifications to the embodiments described herein may be made without departing from the scope of the present application. In addition, for the sake of clarity and conciseness, descriptions of well-known functions and configurations have been omitted. The terms described below are defined in consideration of the functions in the present application and may vary according to the user, the user's intention or custom. Therefore, the definition of the terms should be determined based on the content throughout this specification.

[0025] The present application may have various modifications and various embodiments, and in the present application, the embodiments are described in detail below with reference to the accompanying drawings. However, it should be understood that the present application is not limited to the embodiments, but includes all modifications, equivalents and substitutes within the scope of the present application.

[0026] The terms used herein are only used to describe various embodiments of the present application and are not intended to limit the present application. Unless the context clearly indicates otherwise, the singular form is intended to include the plural form. In the present application, it should be understood that the terms "including" or "having" indicate the presence of features, quantities, steps, operations, structural elements, parts or a combination thereof, and do not exclude the presence of one or more other features, quantities, steps, operations, structural elements, parts or a combination thereof, or the possibility of adding one or more other features, quantities, steps, operations, structural elements, parts or a combination thereof.

[0027] Unless defined differently, all terms used herein have the same meaning as understood by those skilled in the art to which this application belongs. Unless explicitly defined in this application, terms (such as those defined in general dictionaries) should be interpreted as having the same meaning as in the context of the relevant art and should not be interpreted as having an idealized or overly formal meaning.

[0028] The electronic device according to one embodiment may be one of various types of electronic devices. The electronic device may include, for example, a portable communication device (e.g., a smartphone), a computer, a portable multimedia device, a portable medical device, a camera, a wearable device, or a household appliance. According to one embodiment of the disclosure, the electronic device is not limited to the above examples.

[0029] The term used in this application is not intended to limit the application, but is intended to include the various changes, equivalents or substitutes of corresponding embodiments. About the description of the accompanying drawings, similar reference numerals can be used to represent similar elements or related elements. Unless the relevant context clearly indicates otherwise, the singular form of the noun corresponding to the item can include one or more things. As used herein, each of the phrases such as "A or B", "at least one of A and B", "at least one of A or B", "A, B or C", "at least one of A, B and C" and "at least one of A, B or C" can include all possible combinations of the item enumerated together in the corresponding one in the phrase. As used herein, terms such as "the 1st", "the 2nd", "first" and "second" can be used to distinguish corresponding components from another component, and are not intended to limit components in other aspects (for example, importance or order). It is intended that if an element (e.g., a first element) is referred to as being “coupled with,” “coupled to,” “connected to,” or “connected to” another element (e.g., a second element), with or without the term “operably” or “communicatively,” it indicates that the element may be coupled with the other element directly (e.g., wired), wirelessly, or via a third element.

[0030] As used herein, the term "module" may include a unit implemented in hardware, software, or firmware, and may be used interchangeably with other terms such as "logic," "logic block," "component," and "circuit." A module may be a single integrated component or its smallest unit or component adapted to perform one or more functions. For example, according to one embodiment, a module may be implemented in the form of an application-specific integrated circuit (ASIC).

[0031] To facilitate understanding, the following first introduces the relevant terms and concepts involved in the embodiments of this application.

[0032] The term YUV refers to a color encoding method commonly used in various image processing components. YUV allows for reduced bandwidth for color when encoding photos or videos, taking into account human perception. YUV refers to a range of color spaces, including Y'UV, YUV, Y'CbCr, and YPbPr, all of which encode brightness information separately from color information. YUV uses three values, called Y, U, and V, to represent any color. Y stands for luminance or brightness, U for chrominance, and V for chroma.

[0033] In a broader sense, the term YUV can also include the specific color space Y'CbCr used in computer video, for example. The Y' component, also known as luminance, represents the brightness value of the color. The superscript symbol (') is used to distinguish luminance from brightness, which is a value closely related to brightness and is usually designated as Y. Luminance is derived from linear RGB values, while brightness is derived from non-linear (gamma-corrected) RGB values. Luminance is a closer measure of true brightness, but for technical reasons, brightness is more practical. The superscript symbol is often omitted, but the YUV color space always uses luminance, not brightness. Cb and Cr are the concentration offsets of blue and red.

[0034] In the existing technology, there are mainly two solutions for removing color noise from YUV images:

[0035] 1. The UV channel calculates the corresponding weighted weights according to the similarity between the current pixel and the neighboring pixels, and uses the calculated weights to weight the neighboring pixels to obtain the denoising result for the current pixel.

[0036] However, since the UV channel itself only contains low-frequency information of the image and has very low contrast, the similarity of neighboring pixels is not distinguishable. The output results based on this color noise reduction algorithm often have strong color overflow.

[0037] 2. Because color overflow is prone to occur when only the UV channel is used, we try to introduce the information of the Y channel to protect the color at the strong edge of the image from being stained by adjacent pixels. For example, we use the Y channel to detect the edge information of the image, and then use methods such as reducing the search window of similar points at the detected image edge, reducing the noise reduction intensity, and reattaching part of the original image signal after noise reduction to prevent color overflow at the edge.

[0038] However, although this color noise reduction method can reduce color overflow to a certain extent, a large amount of noise often remains on the edges of the image.

[0039] Based on this, this application proposes a color noise reduction method that uses an image in a target format to indirectly introduce the information of the Y channel in the source image. This method can effectively distinguish the similarity between neighboring pixels and reduce the color noise in the edge area to the maximum extent. At the same time, there will be no color overflow and edge noise residual in the color noise reduction process.

[0040] As shown in FIG1 , FIG1 is a flowchart of a method for reducing color noise according to an embodiment of the present application, the method comprising steps S110 to S130:

[0041] S110 , converting a source image in a YUV format into a target image in a target format, where the target format is a color coding format that does not use brightness for coding.

[0042] Get the source image. The source image is an image that is color-encoded using the YUV format. Color encoding refers to various methods used to represent, store, and transmit colors in computer systems and digital devices.

[0043] The source image is converted from the source format to the target format to generate a target image. The target image is color-encoded using the target format. The target format is a format that does not use brightness features for color encoding, such as RGB, CMYK, HSV / HSL, Hexadecimal Color Codes, LAB Color Space, etc. This application does not limit the specific form of the target format. The target format does not use the brightness dimension for color encoding. For example, for RGB (Red, Green, Blue), it is based on the additive principle of light and produces various colors by mixing red, green, and blue light in different proportions. For another example, for HSV / HSL (Hue, Saturation, Value / Lightness), the color is described by hue (color type), saturation (color purity), and brightness / brightness (color brightness). These color encoding methods are closer to the way humans perceive color.

[0044] For example, this application uses RGB format as the target format. By converting YUV to RGB, the target image corresponding to the source image, that is, the RGB image, is obtained. YUV to RGB can be performed using the following formulas 1 to 3: R = Y + 1.4075 * (V - 128) Formula 1 G = Y - 0.3455 * (U - 128) - 0.7169 * (V - 128) Formula 2 B = Y + 1.779 * (U - 128) Formula 3

[0045] S120, calculating pixel differences between adjacent pixels in the target image to obtain a difference distribution.

[0046] For each pixel in the target image, the difference between its pixel value and that of its adjacent pixels is calculated to obtain the pixel difference value of each pixel in the target image. The pixel difference values ​​of all pixels in the target image constitute the difference distribution of the target image.

[0047] For example, assuming that the image is 8x8 in size, for the pixel point at position (4, 4), the difference between its pixel value and that of the pixel point at position (4, 3) is calculated. Alternatively, assuming that the image is 8x8 in size, for the pixel point at position (4, 4), the difference between its pixel value and that of the pixel points at positions (3, 4) and (5, 4) is calculated respectively. The method for calculating pixel values ​​and their differences can be to weight the three RGB channels to obtain a weighted pixel value, and then calculate the difference between the weighted pixel values ​​of the two pixels. It is understandable that the method for calculating pixel values ​​and their differences is not limited to the above examples, and can also be other methods, which are not limited in this application.

[0048] In one embodiment of the present application, the calculating of pixel differences between adjacent pixels in the target image to obtain a difference distribution includes: calculating the pixel difference between a pixel in the target image and all pixels in an adjacent area of ​​the pixel to obtain a difference matrix; obtaining the difference matrix of all pixels in the target image to obtain the difference distribution.

[0049] For each pixel in the target image, calculate the difference between its pixel value and that of all pixels in the adjacent area to obtain a difference matrix for each pixel. The adjacent area of ​​the pixel includes at least one of the following: an area adjacent to the pixel above the pixel, an area adjacent to the pixel below the pixel, an area adjacent to the pixel on the left side of the pixel, and an area adjacent to the pixel on the right side of the pixel. The area adjacent to the pixel above the pixel can be an area composed of one or more pixels. For example, for a pixel at position (4, 4), the adjacent area above it can be an area composed of pixels at position (4, 3), or an area composed of pixels at positions (3, 3), (4, 3), and (5, 3), or an area adjacent to pixels at positions (3, 3), and (5, 3) at an oblique angle. In some embodiments of the present application, the adjacent area can be a combination of one or more areas. For example, the adjacent area can be a combination of an area adjacent to the pixel on the left side of the pixel and an area adjacent to the pixel on the right side of the pixel. In the embodiments of the present application, there is no restriction on the size of the adjacent area, the adjacent method with respect to the pixels, the shape, etc.

[0050] For example, for each pixel, the difference between the pixel values ​​of all pixels in the 2x2 area adjacent to its left is calculated. Assuming the image size is 8x8, for the pixel at position (4, 4), the difference between the pixel values ​​of all pixels in the 2x2 area adjacent to its left is calculated. That is, the pixel at position (4, 4) will calculate the difference between the pixel values ​​of all pixels in the 3, 4, (2, 4), (3, 5), and (2, 5) positions. For another example, the difference between the pixel values ​​of all pixels in the 1x3 area adjacent to its right is calculated. Assuming the image size is 8x8, the pixel at position (4, 4) will calculate the difference between the pixel values ​​of all pixels in the 5, 3, (5, 4), and (5, 5) positions.

[0051] Each pixel can obtain multiple difference values, which are stored in a preset order to generate a difference matrix for each pixel. For example, for the pixel at position (4, 4), the difference between the pixel values ​​of all pixels in the 2x2 area adjacent to its left is calculated, and the absolute value of each difference is taken to obtain the matrix (1, 2, 3, 4). The differences in the above matrix after taking the absolute value are arranged in the order of the corresponding pixels. That is, the difference value 1 corresponds to the absolute value of the difference between the pixel at position (3, 4) and the pixel at position (4, 4).

[0052] Get the difference matrix of all pixels in the target image to form the difference distribution of the target image. For example, the difference distribution can be: D (1,1) , D (1,2) , D (1,3) ,……,D (8,8) , where for D (4,4), which is (1, 2, 3, 4).

[0053] In the above embodiment, the difference between a pixel point and all pixels in an adjacent area is taken, so that changes of the pixel point in all directions can be identified and more information about the pixel point can be obtained.

[0054] Furthermore, the adjacent area is an area within a preset radius centered on the pixel point in the target image.

[0055] For each pixel, its adjacent area is a rectangular area with a preset radius as the center. For example, the adjacent area is an adjacent 3x3 area with the pixel as the center. Assuming that the image is 8x8 in size, for the pixel at position (4, 4), the difference between all pixels in the adjacent 3x3 area with the pixel at position (4, 4) will be calculated. That is, the pixel at position (4, 4) will calculate the difference in pixel value with the pixel at positions (3, 3), (3, 4), (3, 5), (4, 3), (4, 5), (5, 3), (5, 4), and (5, 5) respectively. For example, the calculation of pixel values ​​can be to calculate the difference between the pixel values ​​on the R channel, G channel, and B channel respectively. Then, for each pixel, the difference between it and all pixels in the adjacent area can be calculated using Formula 4: Diff(x,y,k1,k2)=abs{R(x,y)-R(x+k1,y+k2)}+abs{G(x,y)- Gx+k1,y+k2+absBx,y-Bx+k1,y+k2 Formula 4

[0056] Among them, Diff represents the difference operation, abs represents the absolute value, k1 represents the offset value of the row coordinate of the pixel point, and the value range of k1 is [-r, r], k2 represents the offset value of the column coordinate of the pixel point, and the value range of k2 is [-r, r], r represents the value radius, and x+k1,y+k2 means taking the current point (x, y) as the center and taking a point in the neighborhood of its radius r.

[0057] S130: Perform noise reduction on the source image according to the difference distribution.

[0058] After obtaining the difference distribution from the target image, it can be used to reduce the noise of the source image. For example, noise usually appears as random, high-frequency differences, while important image content (such as edges and textures) will appear as more consistent, patterned differences. These differences are analyzed to distinguish between noise and important image content. For example, if a pixel point is set, its corresponding pixel difference is greater than a preset threshold, it is described as a noise pixel point. For example, the step size is set to 2, the area size is 2x2, and the area of ​​the specified size is selected step by step. For all pixels in each area, if there are more than or equal to two pixels whose pixel difference is greater than the threshold, it means that the area is a noise area. It can be understood that there are various methods for judging noise based on the difference, not limited to the above examples. This application does not limit the method for judging noise. Pixels identified as noise are smoothed. This can be achieved through various filtering techniques, such as median filtering, Gaussian filtering or bilateral filtering. The filter can reduce high-frequency differences, thereby reducing noise.

[0059] In another example, the method for noise reduction using difference can be edge smoothing. The difference is used to identify the edge areas of the image. Typically, the pixel difference in edge areas is large. Specific measures are applied to the identified edge areas. For example, the noise reduction intensity can be reduced in these areas to avoid over-smoothing. It is understood that there are many methods for noise reduction based on difference, not limited to the above examples, and the specific implementation method of noise reduction using difference is not limited in this application.

[0060] In the above embodiment, the target format image is used to indirectly introduce the Y channel information of the source image, which can effectively distinguish the similarity between neighboring pixels and reduce the color noise in the edge area to the maximum extent, while solving the color overflow and edge noise residual in the color noise reduction process.

[0061] In one embodiment of the present application, the denoising of the source image based on the difference distribution includes: calculating the weight parameter of each pixel point based on the pixel difference corresponding to each pixel point in the source image in the difference distribution; and weighting the adjacent pixels corresponding to each pixel point in the source image based on the weight parameter of each pixel point to achieve noise reduction.

[0062] The pixels in the source image and the target image are in one-to-one correspondence, that is, the pixel difference value of a pixel in the target image is also the pixel difference value of the corresponding pixel in the source image.

[0063] For each pixel point in the source image, obtain its corresponding pixel difference in the difference distribution, calculate the weight parameter of the pixel based on the obtained pixel difference, weight the adjacent pixels of the pixel according to the weight parameter of the pixel, and use the pixel value obtained after weighting as the pixel value of the pixel to achieve noise reduction.

[0064] For example, each pixel will calculate the difference in pixel values ​​of all pixels in the adjacent 2x2 area on its left. Assuming that the image is 8x8 in size, for the pixel at position (4, 4) in the source image, it obtains the pixel difference of the pixel at position (4, 4) in the target image, assuming the difference is (4, 5, 6, 7). The difference is converted into a weight parameter. The method of obtaining the weight parameter is not limited in this application. It can be diverse, for example, it can be a normalized conversion, or it can be a proportional conversion. For example, this application uses proportional conversion to convert the difference into weights (0.182, 0.227, 0.273, 0.318). After obtaining the weight parameters, assuming that the pixel values ​​at positions (3, 4), (2, 4), (3, 5), and (2, 5) in the source image are (100, 150, 200, 300), respectively, the weighting is: 100×0.182+150×0.227+200×0.273+300×0.318. The pixel value of the pixel at position (4, 4) in the source image is 202. By weighting the adjacent pixels of a pixel and calculating the pixel value of the pixel, the pixel noise is reduced.

[0065] In the above embodiment, the target image is weighted as the guiding graph of the source image, and the target image indirectly introduces the information of the Y channel in the source image, which can not only effectively distinguish the similarity between neighboring pixels but also reduce the color noise in the edge area to the maximum extent. At the same time, there will be no color overflow and edge noise residual in the color noise reduction process.

[0066] In one embodiment of the present application, the denoising of the source image based on the difference distribution includes: obtaining a weight matrix for each pixel in the source image, wherein the weight matrix is ​​calculated by the difference matrix of the corresponding pixel in the target image; and weighting the pixel values ​​of all pixel points in the adjacent area corresponding to each pixel point in the source image based on the weight matrix of the pixel points to achieve noise reduction.

[0067] In the embodiment where the adjacent area of ​​the pixel point is a rectangular area with a preset radius as the center, the difference matrix between the pixel point and the adjacent area is calculated.

[0068] For each pixel in the target image, the difference matrix is ​​converted into a weight matrix. The conversion process can be performed using Formula 5: W(x,y,k1,k2)=exp(-Diff(x,y,k1,k2) / Sigma) Formula 5

[0069] Wherein, Exp represents the exponent of e, Sigma represents a preset constant, and W(x, y, k1, k2) represents the weight matrix of the pixel at position (x, y).

[0070] For each pixel in the source image, a corresponding weight matrix is ​​obtained based on the corresponding relationship between the pixels. All pixels in the adjacent area of ​​the pixel are weighted according to the pixel weight matrix, and the weighted pixel value is used as the pixel value of the pixel to achieve noise reduction.

[0071] In the above embodiment, the weight matrix is ​​established by using the difference distribution, which can fully utilize the area around the pixel to reduce the noise of the pixel and improve the noise reduction effect.

[0072] Furthermore, the performing noise reduction on the source image according to the difference distribution includes: performing noise reduction on the U channel and the V channel respectively according to the difference distribution.

[0073] Use the calculated weighted weights to weight the neighborhood pixels of the U and V channels respectively. Specifically, it can be done using formulas 6 and 7:

[0074] Among them, NRU is the result of denoising the U channel in the YUV image, NRV is the result of denoising the V channel in the YUV image, U(x+k1,y+k2) represents the neighborhood pixels in the U channel with (x,y) as the center and within a radius of r, and V(x+k1,y+k2) represents the neighborhood pixels in the V channel with (x,y) as the center and within a radius of r.

[0075] As shown in FIG2 , FIG2 shows a structural block diagram of a color noise reduction device 200 provided in an embodiment of the present application. The color noise reduction device 200 includes: a conversion module 210 , a calculation module 220 and a noise reduction module 230 .

[0076] The conversion module 210 is configured to convert a source image in a YUV format into a target image in a target format, where the target format is a color coding format that does not use brightness for coding.

[0077] The calculation module 220 is used to calculate the pixel difference between adjacent pixels in the target image to obtain a difference distribution.

[0078] The denoising module 230 is configured to perform denoising on the source image according to the difference distribution.

[0079] In an optional embodiment of the present application, the calculation module 220 is specifically used to calculate the pixel difference between a pixel point in the target image and all pixel points in the adjacent area of ​​the pixel point to obtain a difference matrix; obtain the difference matrix of all pixel points in the target image to obtain the difference distribution.

[0080] In an optional embodiment of the present application, the adjacent area is an area within a preset radius centered on the pixel point in the target image.

[0081] In an optional embodiment of the present application, the noise reduction module 230 is specifically used to calculate the weight parameter of each pixel point in the source image based on the pixel difference corresponding to each pixel point in the difference distribution; and based on the weight parameter of each pixel point, weight the adjacent pixels corresponding to each pixel point in the source image to achieve noise reduction.

[0082] In an optional embodiment of the present application, the noise reduction module 230 is specifically used to obtain a weight matrix for each pixel point in the source image, and the weight matrix is ​​calculated by a difference matrix of corresponding pixel points in the target image; based on the weight matrix of each pixel point, all pixel points in the adjacent area corresponding to each pixel point in the source image are weighted to achieve noise reduction.

[0083] In an optional embodiment of the present application, the target format includes an RGB format.

[0084] In an optional embodiment of the present application, the noise reduction module 230 is specifically configured to perform noise reduction on the U channel and the V channel respectively according to the difference distribution.

[0085] As shown in Figure 3, Figure 3 shows a structural block diagram of an electronic device 300 provided in an embodiment of the present application. The electronic device 300 includes: a processor 310 and a memory 320;

[0086] The processor 310, the memory 320, and each component are electrically connected to each other directly or indirectly to achieve data transmission or interaction. For example, these components can be electrically connected to each other via one or more communication buses or signal lines. The memory 320 is used to store computer programs, such as the software function module shown in Figure 2, that is, the color noise reduction device 200. The color noise reduction device 200 includes at least one software function module that can be stored in the memory 320 in the form of software or firmware or embedded in the operating system (OS) of the electronic device 300. The processor 310 is used to execute the executable module stored in the memory 320, such as the software function module or computer program included in the color noise reduction device 200.

[0087] Among them, the memory 320 can be, but is not limited to, random access memory (RAM), read only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), etc.

[0088] The processor 310 may be an integrated circuit chip with signal processing capabilities. The above-mentioned processor may be a general-purpose processor, including a central processing unit (CPU), a network processor (NP), a microprocessor, etc.; it may also be a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components. The various methods, steps and logic block diagrams disclosed in the embodiments of the present application can be implemented or executed. Alternatively, the processor 310 may also be any conventional processor, etc.

[0089] An embodiment of the present application further provides a non-volatile computer-readable storage medium (hereinafter referred to as storage medium), on which a computer program is stored. When the computer program is run by a computer such as the electronic device 300 described above, the color noise reduction method shown above is executed.

[0090] It should be noted that the various embodiments in this specification are described in a progressive manner, and each embodiment focuses on the differences from other embodiments. The same and similar parts between the various embodiments can be referenced to each other.

[0091] In the several embodiments provided in this application, it should be understood that the disclosed devices and methods can also be implemented in other ways. The device embodiments described above are merely illustrative. For example, the flowcharts and block diagrams in the accompanying drawings show the possible architectures, functions and operations of the devices, methods and computer program products according to the multiple embodiments of the present application. In this regard, each box in the flowchart or block diagram can represent a module, a program segment or a part of the code, and the module, program segment or a part of the code contains one or more executable instructions for implementing the specified logical functions. It should also be noted that in some alternative implementations, the functions marked in the box can also occur in an order different from that marked in the accompanying drawings. For example, two consecutive boxes can actually be executed substantially in parallel, and they can sometimes be executed in the opposite order, depending on the functions involved. It should also be noted that each box in the block diagram and / or flowchart, and the combination of boxes in the block diagram and / or flowchart, can be implemented using a dedicated hardware-based system that performs the specified function or action, or can be implemented using a combination of dedicated hardware and computer instructions.

[0092] In addition, the functional modules in each embodiment of the present application can be integrated together to form an independent part, or each module can exist independently, or two or more modules can be integrated to form an independent part.

[0093] If the functions are implemented in the form of software function modules and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art, or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a computer-readable storage medium, including a number of instructions for enabling a computer device (which can be a personal computer, a laptop, a server, or an electronic device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned computer-readable storage medium includes: various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.

[0094] The above description is merely a specific embodiment of the present application, but the scope of protection of the present application is not limited thereto. Any changes or substitutions that can be easily conceived by a person skilled in the art within the technical scope disclosed in the present application should be included in the scope of protection of the present application. Therefore, the scope of protection of the present application should be based on the scope of protection of the claims.

Claims

1. A color noise reduction method, characterized in that: The method comprises: Convert a source image in a YUV format to a target image in a target format, wherein the target format is a color encoding format that does not use brightness for encoding; Calculating pixel differences between adjacent pixels in the target image to obtain a difference distribution; Noise reduction is performed on the source image according to the difference distribution.

2. The method according to claim 1, characterized in that The denoising of the source image according to the difference distribution includes: Calculating a weight parameter for each pixel in the source image according to a pixel difference corresponding to each pixel in the difference distribution; According to the weight parameter of each pixel, the adjacent pixels corresponding to each pixel in the source image are weighted to achieve noise reduction.

3. The method according to claim 1, characterized in that Calculating pixel differences between adjacent pixels in the target image to obtain a difference distribution includes: Calculating pixel differences between a pixel point in the target image and all pixels in an adjacent area of ​​the pixel point to obtain a difference matrix; Obtain a difference matrix of all pixels in the target image to obtain the difference distribution.

4. The method according to claim 3, characterized in that The adjacent area is an area within a preset radius centered at the pixel point in the target image.

5. The method according to claim 3 or 4, characterized in that The denoising of the source image according to the difference distribution includes: Obtaining a weight matrix for each pixel in the source image, where the weight matrix is ​​calculated from a difference matrix of corresponding pixels in the target image; According to the weight matrix of each pixel, all pixels in the adjacent area corresponding to each pixel in the source image are weighted to achieve noise reduction.

6. The method according to any one of claims 1 to 4, characterized in that The target format includes an RGB format.

7. The method according to any one of claims 1 to 4, characterized in that The denoising of the source image according to the difference distribution includes: According to the difference distribution, noise reduction is performed on the U channel and the V channel respectively.

8. A color noise reduction device, characterized in that: The device comprises: A conversion module, configured to convert a source image in a YUV format into a target image in a target format, wherein the target format is a color coding format that does not use brightness for coding; A calculation module, configured to calculate pixel differences between adjacent pixels in the target image to obtain a difference distribution; A denoising module is configured to perform denoising on the source image according to the difference distribution.

9. An electronic device, characterized in that: include: processor and memory; The processor and the memory communicate with each other via a bus; The memory stores program instructions that can be executed by the processor, and the processor calls the program instructions to execute the color noise reduction method according to any one of claims 1 to 7.

10. A computer-readable storage medium, characterized in that The computer-readable storage medium stores computer program instructions, and when the computer program instructions are read and executed by a computer, the color noise reduction method according to any one of claims 1 to 7 is executed.