A method for estimating image noise based on overcomplete sparse coding

By using a dictionary of natural image training based on super-complete sparse encoding, the problem of difficulty in detecting image structure information in the prior art is solved, and the accuracy of noise estimation is improved.

CN113888433BActive Publication Date: 2025-02-21CCTV INT NETWORK WUXI CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111175668.6
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-10-09
Publication Date
2025-02-21
Estimated Expiration
2041-10-09

AI Technical Summary

Technical Problem

The prior art is difficult to effectively detect structural information in images, affecting the accuracy of noise estimation.

Method used

Using a method based on super-complete sparse encoding, the dictionary of the sparse representation model of natural images is trained, and the image blocks are used to be processed in blocks, and the image blocks are projected onto the dictionary, and the 1-norm of the projection coefficient is calculated to determine the relative Smooth the image block and estimate the noise intensity.

Benefits of technology

The accuracy of noise intensity estimation is improved, interference with the structure information of the image itself is avoided, and the ability to detect the image smoothing area is enhanced.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN113888433B_ABST
    Figure CN113888433B_ABST
Patent Text Reader

Abstract

The present invention is an image noise estimation method based on super-complete sparse coding. By using a super-complete sparse coding model to characterize the image, the problem of detecting smooth areas in the image is effectively solved, and the accuracy of noise intensity estimation is improved. The advantages of the present invention are as follows: first, a super-complete sparse coding model is trained using a natural image, and then the noise image to be estimated is projected onto a transform domain through the model. Since this sparse coding model is adaptively learned from a general natural image and is super-complete, it can more robustly characterize the general structural information in the natural image, so that the area with a typical structure in the noise image to be estimated can be effectively detected, and then the relatively smooth area in the image can be determined. Since the detection of smooth areas in the image is more accurate, estimating the noise intensity in these areas avoids the interference of the inherent structural information of the image itself, thereby improving the accuracy of noise intensity estimation.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The invention relates to an image noise estimation method based on super-complete sparse coding, belonging to the technical field of digital image processing. Background Art

[0002] In modern society, people have higher and higher requirements for image quality. However, in the process of imaging and transmission, images are often inevitably interfered by noise due to the influence of the environment, lighting and imaging equipment, resulting in reduced image quality. Therefore, in order to improve the quality of the image and facilitate subsequent image processing, some classic image denoising algorithms with good performance, such as the three-dimensional block matching algorithm (Block Matching 3D, BM3D), can be used to improve the quality and clarity of the image. When using these classic image denoising algorithms, it is often necessary to determine the noise intensity of the image in advance. The accuracy of the noise intensity estimation is of great significance to the performance of the image denoising algorithm, so it is necessary to estimate the noise intensity of the image.

[0003] In the prior art, there are many methods for estimating image noise. Some of these methods are performed in the spatial domain of the image, while others are performed by transferring the image to the transform domain through singular value decomposition or wavelet transform to estimate the noise. In order to reduce the influence of texture and edge information in the image, most methods perform a preliminary detection on the smooth area of ​​the image. However, due to the diversity of texture and edge information, these transformation methods sometimes cannot effectively detect the structural information in the image, and cannot effectively determine the relatively smooth area in the image, thereby affecting the accuracy of noise estimation. Summary of the invention

[0004] The present invention proposes a method for estimating image noise based on overcomplete sparse coding, which aims to address the problem that the existing technology cannot effectively detect structural information in an image. By utilizing an overcomplete sparse coding model to characterize the image, the problem of detecting smooth areas in the image is effectively solved, and the accuracy of noise intensity estimation is improved.

[0005] The technical solution of the present invention is a method for estimating image noise based on super-complete sparse coding, comprising the following steps:

[0006] Step S1: using natural images to train a dictionary of a sparse representation model, learning local structures of general objects in natural images, and storing these structural information in the dictionary. Natural images refer to images that can be observed or photographed in nature or real environments;

[0007] Step S2: Divide the image to be estimated for noise into blocks to obtain noisy image blocks, where the size of the divided image blocks is consistent with the size of the dictionary of the sparse representation model trained in step S1;

[0008] Step S3: Project the noisy image block obtained in step S2 onto the learned dictionary, and calculate the 1-norm of its projection coefficient, where the projection coefficient is used to indicate the possibility that the noisy image block contains the corresponding structural information in the dictionary. The larger the projection coefficient, the more likely the image block is to contain the corresponding structural information, and the smaller the projection coefficient, the less likely the image block is to contain the corresponding structure. The 1-norm of the projection coefficient refers to the sum of the absolute values ​​of each projection coefficient.

[0009] Step S4: Determine a relatively smooth image block according to the size of the 1-norm of the projection coefficient obtained in step S3. The larger the 1-norm of the projection coefficient, the more structural information the image block contains. Therefore, the image block with a smaller 1-norm is selected as a relatively smooth image block.

[0010] Step S5: Estimate the intensity of the noise using the smoothed image block selected in step S4.

[0011] Preferably, the step S1 of using natural images to train the dictionary of the sparse representation model specifically includes the following steps:

[0012] Step S11: Select several publicly released natural images as training images;

[0013] Step S12: randomly extracting small image blocks from the training image selected in step S11, and generating training data through preprocessing. Specifically, a number of small image blocks are randomly extracted from the training image, and then these image blocks are preprocessed to remove the mean value, and they are converted into column vectors to obtain a number of column vectors, i.e., training data of the model;

[0014] Step S13: constructing a network structure of a sparse coding model, setting the number of nodes in the hidden layer to be greater than that in the input layer. The sparse coding model is a two-layer network structure, the number of nodes in the input layer is consistent with the size of the image block in the training data, and the second layer is the hidden layer, and the number of nodes in the hidden layer is greater than the number of nodes in the input layer.

[0015] Step S14: Initialize the network parameter basis vector Φ and the representation coefficient r, set the network training hyperparameters including the regularization parameter λ and the learning rate η, initialize the network parameter basis vector Φ to a random small value, and initialize the input data representation coefficient r to zero; Step S15: Optimize the representation coefficient r according to the current input data and the basis vector Φ, where the specific method for updating the representation coefficient r is: t+1 =S λ (r t +η1Φ T (I-Φr t )), where Φ is the current basis vector, r t is the characterization coefficient of the previous moment, Sλ is the soft threshold function, η1 is the learning rate;

[0016] Step S16: Optimize the basis vector Φ according to the current input data and the representation coefficient r, and normalize the basis vector so that the length of each basis vector component is 1;

[0017] Step S17: adopting an alternating iterative training method, looping steps S15 and S16 until the model converges. Specifically, the model adopts a batch training method. In each batch, select a number of image blocks randomly selected from a number of training pictures as training data for training several times, and then replace the next batch of training data. The condition for model convergence is that the transformation amplitude of the updated basis vector meets the requirement or reaches the maximum number of iterations. At this time, the training of the sparse coding model is completed;

[0018] Step S18: restore the trained basis vectors to the form of image blocks to obtain a sparse representation dictionary. Specifically, restore each column of the basis vector Φ to the form of an image block. In the subsequent use process, the sparse representation dictionary is still kept in the form of a vector.

[0019] Preferably, the step S11 includes 10 grayscale natural images of 512×512 pixels that have been pre-processed by whitening;

[0020] Specifically, in step S12, a number of image blocks of 16×16 pixels are randomly extracted from the training image, and then these image blocks are preprocessed to remove the mean value, and are converted into column vectors to obtain a number of column vectors of length 256, i.e., training data of the model;

[0021] In step S13, the number of nodes in the input layer is 256, and the number of nodes in the hidden layer is set to 400;

[0022] In the step S17, in each batch, 250 image blocks are randomly selected from 10 training images as training data for 1000 times, and then the next batch of training data is used;

[0023] In the step S18, each column of the basis vector Φ is restored to the form of an image block, that is, a 16×16 form.

[0024] Preferably, in step S16, the basis vector Φ is optimized according to the current input data and the characterization coefficient r, and the basis vector Φ is normalized, which specifically includes the following steps:

[0025] Step S161: The update rule of the basis vector Φ of the sparse coding model is: ΔΦ=η2(I-Φr)r T, where r is the current representation coefficient, η2 is the corresponding learning rate, and the basis vector is updated using the stochastic gradient descent method. A smaller value is selected for the learning rate. The choice of learning rate is related to the size of the model and the amount of training data.

[0026] Step S162: Normalize the basis vector Φ, that is, normalize each basis vector component φ in Φ i Length normalization: φ i =φ i / ||φ i ||2, where ||φ i ||2 is the basis vector component φ i The 2-norm of .

[0027] Preferably, in step S161, η2 is selected to be 0.01.

[0028] Preferably, in step S3, the noisy image block is projected onto a learned dictionary, and the 1-norm of its projection coefficient is calculated, which specifically includes the following steps:

[0029] Step S31: converting the noisy image block into a vector form, denoted by symbol x, and the method of converting into a vector is consistent with the method of converting the image block of training data into a vector when training the sparse coding model;

[0030] Step S32: Project the noisy image blocks x in vector form onto the learned sparse coding dictionary Φ to obtain the projection coefficient vectors of these noisy image blocks: α=Φx;

[0031] Step S33: Calculate the 1-norm of the projection coefficient vector α: ||α||1=∑ i |α i |.

[0032] Preferably, in step S4, relatively smooth image blocks are determined according to the size of the projection coefficient norm, specifically including: arranging the 1-norms of the projection coefficient vectors of all noisy image blocks in order from small to large, and determining image blocks with smaller 1-norms as relatively smooth image blocks.

[0033] Preferably, in step S5, the noise intensity of the image is estimated by using these smooth image blocks, which specifically includes: using the selected relatively smooth image blocks, estimating the noise variance of each image block, and then taking the average value of the noise variances of these image blocks as the noise intensity of the image to be estimated:

[0034] Among them, σ 2 is the estimated value of the noise variance of the image to be estimated, N represents the total number of relatively smooth image blocks selected, M is the number of pixels in the image block, that is, the size of the image block, xi is the vector form of the i-th image block, x ij For image block x i The jth pixel of is the pixel mean of the i-th image block, that is,

[0035] The advantages of the present invention are as follows: the method is reasonably designed. First, a super-complete sparse coding model is trained using natural images, and then the image of the noise to be estimated is projected onto the transform domain through the model. Since the sparse coding model is adaptively learned from general natural images and is super-complete, it can more robustly characterize the general structural information in natural images, so that the area with typical structure in the noise image to be estimated can be effectively detected, and then the relatively smooth area in the image can be determined. Since the detection of smooth areas in the image is more accurate, estimating the noise intensity in these areas avoids the interference of the inherent structural information of the image itself, thereby improving the accuracy of the noise intensity estimation. BRIEF DESCRIPTION OF THE DRAWINGS

[0036] Figure 1 It is a flow chart of the image noise estimation method based on super-complete sparse coding of the present invention.

[0037] Figure 2 It is a flow chart of training a super-complete sparse coding model in the image noise estimation method based on super-complete sparse coding of the present invention.

[0038] Figure 3 It is a schematic diagram of an embodiment of a basis vector image learned from a natural image using an over-complete sparse coding model in an image noise estimation method based on over-complete sparse coding of the present invention.

[0039] Figure 4 The present invention is a flowchart of projecting a noisy image block onto a learned dictionary and calculating the 1-norm of its projection coefficient in an image noise estimation method based on super-complete sparse coding.

[0040] Figure 5 It is a classic Lena grayscale image used as the original image in the embodiment of the present invention. DETAILED DESCRIPTION

[0041] Effectively representing the structural information in an image plays an important role in improving the accuracy of noise estimation. Supercomplete sparse coding is an effective method for representing visual information proposed in the field of neurocomputing science in recent years by studying the relationship between the statistical properties of natural images and the receptive fields of neurons in the visual cortex of the human brain. Its basic goal is to represent an input data as a sparse linear combination of some atoms or basis vectors, which are called dictionaries. If the dimension of the dictionary exceeds the dimension of the original image block it represents, this coding method is called supercomplete.

[0042] In order to better understand the content of the present invention, the mathematical model of super-complete sparse coding is briefly introduced. Assume that the input data I is a set of atoms or basis vectors Φ = [φ i ] and additive Gaussian noise n generated by:

[0043] where r = [r i ] is the coefficient of the basis vector. For the case where the input data I is a natural image, its representation coefficient r i Has a sparse distribution. If the number of basis vectors is greater than the dimension of the input data I, the model is called an over-complete sparse coding model. The goal of sparse coding is to find a model that better represents the sparse representation of the input data through adaptive learning of basis vectors. Specifically, it learns the corresponding basis vectors and sparse representation coefficients by minimizing the following cost function: Where λ is the regularization parameter, and the optimization of the model is mainly solved by alternating iterations of the basis vector Φ and the representation coefficient r.

[0044] Through sparse coding of natural images, it is found that the atoms in the dictionary often represent local structures in the image, such as edges, corners, etc. Since this coding is learned directly from the original natural image data, it can well represent the structural information contained in the image, so it can be used to determine the areas with obvious structures or relatively smooth in the image, which is beneficial to the subsequent estimation of noise intensity.

[0045] The present invention is further described in detail below with reference to examples and specific implementation methods.

[0046] like Figure 1 As shown, a method for estimating image noise based on super-complete sparse coding comprises the following steps:

[0047] Step S1: Use natural images to train the dictionary of the sparse representation model. Natural images are images that can be observed or photographed in nature or real environments, and can be images of general natural scenes, buildings, various animals and plants, and humans. Using natural images to train the sparse representation model can learn the local structure of general objects in natural images, and this structural information is stored in the dictionary.

[0048] Step S2: Divide the image to be estimated into blocks to obtain noisy image blocks. The size of the divided image blocks here should be consistent with the size of the dictionary of the previously trained sparse model.

[0049] Step S3: Project the noisy image block onto the learned dictionary and calculate the 1-norm of its projection coefficient. The projection coefficient is used to indicate the possibility that the noisy image block contains the corresponding structural information in the dictionary. The larger the projection coefficient, the more likely it is that the image block contains the corresponding structural information, and the smaller the projection coefficient, the less likely it is that the image block contains the corresponding structure. The 1-norm of the projection coefficient refers to the sum of the absolute values ​​of each projection coefficient.

[0050] Step S4: Determine a relatively smooth image block according to the size of the projection coefficient norm. The larger the 1-norm of the projection coefficient, the more structural information the image block contains, so those with smaller 1-norm are selected as relatively smooth image blocks.

[0051] Step S5: Use these smoothed image blocks to estimate the intensity of the noise.

[0052] like Figure 2 As shown, the training sparse representation model in step S1 (the process of training the over-complete sparse coding model) specifically includes the following steps:

[0053] Step S11: Select some natural images as training images. The natural images publicly released by Olshausen (http: / / redwood.berkeley.edu / bruno / sparsenet / ) are selected, including 10 grayscale natural images of 512×512 pixels, which have been pre-processed by whitening.

[0054] Step S12: randomly extract small image blocks from the training images and generate training data through preprocessing. Randomly extract some small image blocks of size 16×16 from the training images, then perform a preprocessing process of removing the mean value on these image blocks and convert them into column vectors, thus obtaining some column vectors of length 256, which are the training data of the model.

[0055] Step S13: Build the network structure of the sparse coding model, and set the number of nodes in the hidden layer to be greater than the number of nodes in the input layer. This sparse coding model is a two-layer network structure. The number of nodes in the input layer should be consistent with the size of the image block in the training data, that is, there are 256 input nodes; the second layer is the hidden layer. Since an over-complete model needs to be trained, the number of nodes in the hidden layer should be greater than the number of nodes in the input layer, which will make the entire model have better data representation capabilities. Here, the number of nodes in the hidden layer is set to 400.

[0056] Step S14: Initialize the network parameter basis vector Φ and the representation coefficient r, and set the network training hyperparameters including the regularization parameter λ and the learning rate η. The network basis vector parameter Φ is initialized to a random small value, and the representation coefficient r of the input data is initialized to zero.

[0057] Step S15: Optimize the representation coefficient r according to the current input data and the basis vector Φ. The specific method for updating the representation coefficient r is: t+1 =S λ (r t +η1Φ T (I-Φr t ), where Φ is the current basis vector, r t is the representation coefficient of the previous moment, Sλ is the soft threshold function, and η1 is the learning rate.

[0058] Step S16: Optimize the basis vector Φ according to the current input data and the representation coefficient r, and normalize the basis vector. The purpose of normalizing the basis vector here is to make the length of each basis vector component 1, so that the training of the model can be more balanced.

[0059] Step S17: Adopt an alternating iterative training method, and repeat steps S15 and S16 until the model converges. In a specific embodiment, the model is trained in a batch processing method. In each batch, 250 image blocks are randomly selected from 10 training pictures as training data for 1000 times, and then the next batch of training data is replaced. The condition for model convergence is that the transformation amplitude of the updated basis vector meets certain requirements or reaches the maximum number of iterations, at which time the training of the sparse coding model is completed. The purpose of training the model is that even for different input data, the model can learn stable basis vectors that can represent natural images.

[0060] Step S18: Restore the trained basis vectors to the form of image blocks to obtain a sparse representation dictionary. Here, each column of the basis vector Φ is restored to the form of image blocks, i.e., 16×16, in order to be able to intuitively observe the learned representation of natural images and see whether clear and stable local image structures such as edges and corners can be learned. In a specific embodiment, the learned sparse representation basis vector image is as follows: Figure 3 As shown. In the subsequent use process, this sparse representation dictionary is still kept in the form of a vector.

[0061] In step S16, the basis vector Φ is optimized according to the current input data and the representation coefficient r, and the basis vector Φ is normalized, which specifically includes the following steps:

[0062] Step S161: The update rule of the basis vector Φ of the sparse coding model is: ΔΦ=η2(I-Φr)r T , where r is the current representation coefficient and η2 is the corresponding learning rate. Here, the update of the basis vector is done by stochastic gradient descent, and the learning rate should be a smaller value. In a specific embodiment, η2 is selected as 0.01. It should be noted that the choice of learning rate is related to the size of the model and the amount of training data.

[0063] Step S162: Normalize the basis vector Φ, that is, normalize each basis vector component φ in Φ i Length normalization: φ i =φ i / ||φ i ||2, where ||φ i ||2 is the basis vector component Φ i The 2-norm of .

[0064] like Figure 4 As shown, in step S3, the noisy image block is projected onto the learned dictionary, and the 1-norm of its projection coefficient is calculated, which specifically includes the following steps:

[0065] Step S31: convert the noisy image block into a vector form, denoted by symbol x. The method of converting into a vector here should be consistent with the method of converting the image block of the training data into a vector when training the sparse coding model.

[0066] Step S32: Project the noisy image blocks x in vector form onto the learned sparse coding dictionary Φ to obtain the projection coefficient vectors of these noisy image blocks: α=Φx;

[0067] Step S33: Calculate the 1-norm of the projection coefficient vector α: ||α||1=∑ i |α i |;

[0068] In step S4, relatively smooth image blocks are determined according to the size of the projection coefficient norm, specifically including: arranging the 1 norms of the projection coefficient vectors of all noisy image blocks in ascending order, and determining the image blocks with smaller 1 norms as relatively smooth image blocks. In a specific embodiment, the first 20% of relatively smooth image blocks are selected to estimate the intensity of image noise. (Different noise images will select different percentages)

[0069] Step S5, using these smooth image blocks to estimate the noise intensity of the image, specifically includes: using the selected relatively smooth image blocks, estimating the noise variance of each image block, and then taking the average value of the noise variances of these image blocks as the noise intensity of the image to be estimated:

[0070]

[0071] Among them, σ 2 is the estimated value of the noise variance of the image to be estimated, N represents the total number of relatively smooth image blocks selected, M is the number of pixels in the image block, that is, the size of the image block, x i is the vector form of the i-th image block, x ij is the image patch x i The jth pixel of is the pixel mean of the i-th image block, that is,

[0072] In a specific embodiment, Figure 5 The classic Lena grayscale image shown is used as the original image. Then, Gaussian noise of different intensities is artificially added to the original image as the input of the image denoising example. The standard deviation of the added noise is {10, 20, 30, 40, 50}, and 5 noise images to be estimated with different noise intensities can be obtained respectively. It is assumed here that the grayscale image has 256 gray levels, that is, the range of the image pixel value is [0, 255]. The method in this embodiment is used to estimate the image noise intensity, and the results of the estimated noise intensity are {10.15, 20.06, 29.74, 39.42, 49.24}, which are very close to the standard deviation of the added noise. The relative errors of these estimated results are {1.50%, 0.30%, 0.87%, 1.45%, 1.52%}, respectively, and the relative errors are all around 1%, which achieves a relatively accurate estimation of the noise intensity of the image.

[0073] The above is only a preferred embodiment of the present invention. It should be pointed out that a person skilled in the art can make several modifications and improvements without departing from the inventive concept of the present invention, which all belong to the protection scope of the present invention.

Claims

1. A method for estimating image noise based on super-complete sparse coding, characterized in that The following steps are involved: Step S1: using natural images to train a dictionary of a sparse representation model, learning local structures of general objects in natural images, and storing these structural information in the dictionary. Natural images refer to images that can be observed or photographed in nature or real environments; Step S2: Divide the image to be estimated for noise into blocks to obtain noisy image blocks, where the size of the divided image blocks is consistent with the size of the dictionary of the sparse representation model trained in step S1; Step S3: Project the noisy image block obtained in step S2 onto the learned dictionary, and calculate the 1-norm of its projection coefficient, wherein the projection coefficient is used to indicate the possibility that the noisy image block contains the corresponding structural information in the dictionary. The larger the projection coefficient, the greater the possibility that the image block contains the corresponding structural information, and the smaller the projection coefficient, the smaller the possibility that the image block contains the corresponding structural information. The 1-norm of the projection coefficient refers to the sum of the absolute values ​​of each projection coefficient. Step S4: Determine a relatively smooth image block according to the size of the 1-norm of the projection coefficient obtained in step S3. The larger the 1-norm of the projection coefficient, the more structural information the image block contains. Therefore, the image block with a smaller 1-norm is selected as a relatively smooth image block. Step S5: using the smoothed image block selected in step S4 to estimate the intensity of the noise; The step S1 of using natural images to train the dictionary of the sparse representation model specifically includes the following steps: Step S11: Select several publicly released natural images as training images; Step S12: randomly extracting image blocks from the training image selected in step S11, and generating training data through preprocessing. Specifically, a number of image blocks are randomly extracted from the training image, and then these image blocks are preprocessed by removing the mean, and they are converted into column vectors to obtain a number of column vectors, i.e., training data of the model; Step S13: constructing a network structure of a sparse coding model, setting the number of nodes in the hidden layer to be greater than that in the input layer. The sparse coding model is a two-layer network structure, wherein the first layer is the input layer, and the number of nodes in the input layer is consistent with the size of the image block in the training data, and the second layer is the hidden layer, and the number of nodes in the hidden layer is greater than the number of nodes in the input layer; Step S14: Initialize the network parameter basis vector Φ and the representation coefficient r, set the network training hyperparameters including the regularization parameter λ and the learning rate η, initialize the network parameter basis vector Φ to a random small value, and initialize the input data representation coefficient r to zero; Step S15: Optimize the representation coefficient r according to the current input data and the basis vector Φ, wherein the specific method for updating the representation coefficient r is: t+1 =S λ (r t +η1Φ T (I-Φr t )), where r t+1 is the updated representation coefficient, Φ is the current basis vector, r t is the characterization coefficient of the previous moment, S λ is the soft threshold function, η1 is the learning rate; Step S16: Optimize the basis vector Φ according to the current input data and the representation coefficient r, and normalize the basis vector so that the length of each basis vector component is 1; Step S17: adopting an alternating iterative training method, looping steps S15 and S16 until the model converges. Specifically, the model adopts a batch training method. In each batch, select a number of image blocks randomly selected from a number of training pictures as training data for training several times, and then replace the next batch of training data. The condition for model convergence is that the transformation amplitude of the updated basis vector meets the requirement or reaches the maximum number of iterations. At this time, the training of the sparse coding model is completed; Step S18: Restore the trained basis vectors to the form of image blocks to obtain a sparse representation dictionary. Specifically, restore each column of the basis vector Φ to the form of an image block. In the subsequent use process, the sparse representation dictionary is still kept in the form of a vector. In the step S16, the basis vector Φ is optimized according to the current input data and the characterization coefficient r, and the basis vector Φ is normalized, which specifically includes the following steps: Step S161: The update rule of the basis vector Φ of the sparse coding model is: ΔΦ=η2(I-Φr)r T , where ΔΦ is the updated basis vector, η2 is the corresponding learning rate, and the basis vector is updated using the stochastic gradient descent method. A smaller value is selected for the learning rate. The choice of learning rate is related to the size of the model and the amount of training data. Step S162: Normalize the basis vector Φ, that is, normalize each basis vector component φ in Φ i Length normalization: φ i =φ i / ||φ i ||2, where ||φ i ||2 is the basis vector component φ i The 2-norm of ; In the step S4, relatively smooth image blocks are determined according to the size of the projection coefficient norm, specifically including: arranging the 1 norms of the projection coefficient vectors of all noisy image blocks in order from small to large, and determining the image blocks with smaller 1 norms as relatively smooth image blocks.

2. The method for estimating image noise based on supercomplete sparse coding as claimed in claim 1, characterized in that The step S11 includes 10 grayscale natural images of 512×512 pixels that have been pre-processed by whitening; Specifically, in step S12, a number of image blocks of 16×16 pixels are randomly extracted from the training image, and then these image blocks are preprocessed to remove the mean value, and are converted into column vectors to obtain a number of column vectors of length 256, i.e., training data of the model; In step S13, the number of nodes in the input layer is 256, and the number of nodes in the hidden layer is set to 400; In the step S17, in each batch, 250 image blocks are randomly selected from 10 training images as training data for 1000 times, and then the next batch of training data is used; In the step S18, each column of the basis vector Φ is restored to the form of an image block, that is, a 16×16 form.

3. The method for estimating image noise based on overcomplete sparse coding as claimed in claim 1, characterized in that In step S161, η2 is selected to be 0.

01.

4. The method for estimating image noise based on supercomplete sparse coding according to any one of claims 1 to 3, characterized in that In the step S3, the noisy image block is projected onto the learned dictionary, and the 1-norm of its projection coefficient is calculated, which specifically includes the following steps: Step S31: converting the noisy image block into a vector form, denoted by symbol x, and the method of converting into a vector is consistent with the method of converting the image block of training data into a vector when training the sparse coding model; Step S32: Project the noisy image blocks x in vector form onto the learned sparse coding dictionary Φ to obtain the projection coefficient vectors of these noisy image blocks: α=Φx; Step S33: Calculate the 1-norm of the projection coefficient vector α: ||α||1=∑ i |α i |.

5. The method for estimating image noise based on super-complete sparse coding as claimed in claim 1, characterized in that In the step S5, the noise intensity of the image is estimated by using the smoothed image blocks, which specifically includes: using the selected relatively smoothed image blocks, estimating the noise variance of each image block, and then taking the average value of the noise variances of the image blocks as the noise intensity of the noise image to be estimated: Among them, σ 2 is the estimated value of the noise variance of the noise image to be estimated, N represents the total number of relatively smooth image blocks selected, M is the number of pixels in the image block, that is, the size of the image block, x i is the vector form of the i-th image block, x ij For image block x i The jth pixel of is the pixel mean of the i-th image block, that is,

Citation Information

Patent Citations

  • Image residual signal based non-local mean value image de-noising method

    CN102930508A

  • Interferometric phase image noise reduction method adopting self-adaptive complex dictionary and sparse coding

    CN104463874A