Double-Norm Constrained Image Denoising Algorithm Based on Dictionary Learning Sparsity and FCM Structure Clustering

To solve the problem of image smoothness and fuzzy edge texture information after image denoising, proposed a new image denoising method based on dictionary learning. Firstly, the external cycling principal component analysis reduces the dimensions of image data while retaining the main data and constructing the learning dictionary. Secondly, used the fuzzy c-means structure clustering method internally to implement structural constraints on learning dictionary training, which considered the internal structure of image pixels. Then, the learning dictionary under the double constraints of sparse and structural clustering is obtained by internal and external iteration. Finally, the sparse representation coefficient and redundancy dictionary are obtained by the orthogonal matching pursuit method and alternate direction multiplier method, and the denoised images are estimated and updated according to sparse coding theory. Using the grayscale image from Set12 data set, color image from the CBSD68 data set, real noise from RENOIR data set, and texture image from USC-SIPI data set. The experimental results show that compared with the model-based algorithms (KSVD, ISKR, EPLL, NCSR, and LR-GSC) and the learning-based algorithms(DnCNN, IRCNN, and FFDNet), the proposed algorithm preserves the edge and texture information of the image better, and achieves better subjective visual effects and objective numerical results, especially for the image with complex structure and content, and the running time is much less than learning-based algorithms.


I. INTRODUCTION
Images are an important way for humans to acquire and transmit information. In the real world, the quality of acquired images deteriorates due to the imperfection of image acquisition sensors, transmission media, and recording equipment [1]. In the noisy image, the noise will cover the critical information [2] and affect people's access to the vital information in the image. Image noise reduction model can be modeled as: (1) x is the original image, y is the image with noise, and n is the noise matrix. Image noise reduction process is to The associate editor coordinating the review of this manuscript and approving it for publication was Varuna De Silva . obtain x through y. Image denoising is the premise of other image signal processing. Improving the image denoising results is crucial for the subsequent use of the image. Image denoising algorithms can be generally divided into model-based methods [3], [4], [5], [6], [7], [8], [9], [10] and learning-based methods [11], [12], [13], [14], [15], [16], [17], [18], [19], [20]. The denoising method based on model mainly adopts the optimization strategy based on well-defined image prior or noise statistics. Elad proposed a dictionary learning algorithm based on a fixed dictionary with k times singular value decomposition (KSVD) and successively proposed a global based adaptive learning dictionary to solve the problem of ignoring image pixel information [5], [6], [7]. Zoran used maximizing the expected patch log likelihood (EPLL) of the reconstructed image, subject to constraining reconstructed image still close to the corrupted image [8]. Takeda extended the iterative steering kernel regression(ISKR) idea and proposed an ISKR framework for image denoising [9]. Zha proposed a low-rank regularized group sparse coding (LR-GSC) model [10], which utilized both group sparsity of the canonical coefficient and the low rank of the dictionary. The drawbacks of these algorithms are that they either need to spend a lot of time searching for similar blocks or they can't retain details such as the edge and texture of the image.
The denoising method based on deep learning mainly uses an effective network structure and data set for training to obtain the reconstructed image signal. Chen proposed a trainable nonlinear reaction-diffusion (TNRD) model [12]. Zhang used residual learning and batch normalization to accelerate the training process and proposed a feed-forward denoising convolutional neural networks (DnCNN) [14] to improve the denoising performance and trained a image restoration convolutional neural network(IRCNN) [15] to solve other inverse problems, and successively propose two algorithms to generalize the network. One is the fast and flexible denoising network (FFDNet) algorithm, a denoising network with adjustable noise level mapping as input [16]; the other is a convolutional blind denoising network (CBDNet), a convolutional blind denoising network with asymmetric learning to perform real image blind denoising [17]. At present, the image denoising algorithm based on deep learning has achieved the best effect, but it is difficult to explain the principle behind it, and the drawbacks of these methods are that the learning and inference time is extremely long.
In order to solve the problem of too long denoising time and loss of image edge, texture, and other details after denoising. Proposed an image denoising algorithm based on fuzzy c-means (FCM) clustering structure constraints and sparse dictionary learning (FCM-SDL). FCM-SDL algorithm is a compound denoising model which combines the FCM clustering algorithm and sparse representation. FCM clustering algorithm was used to make use of the structure of the image. Then alternate direction multiplier method (ADMM) [20] and orthogonal matching pursuit (OMP) [21] method were applied to solve the optimization. The fuzzy c-means clustering algorithm [22], [23] avoids the disadvantages of hard clustering and enhances the denoised image to retain more detailed information. Through the qualitative and quantitative comparison with similar excellent denoising algorithms, the effectiveness of the proposed algorithm is verified.
Khmag proposed two image denoising algorithms [24], [25], which used second-generation wavelet transform and principal component analysis (PCA). The influence of the second-generation wavelet transform on image denoising was that it eliminated the noise through one-generation wavelet transform, and second-generation wavelet improves the weak Gibbs effect. But our algorithm used the inner loop to make use of the internal structure information of the image through the clustering algorithm. On this basis, the outer circle utilized the sparsity of dictionary learning through the clustering constraint structure. PCA algorithm in our algorithm is mainly used to reduce the dimension of data during the construction of dictionary learning and speed up the calculation time. Dong proposed the non-local centralized sparse representation (NCSR) and used the combination of PCA and kmeans for image restoration [26]. Kmeans clustering constraints were not as fine as FCM clustering constraints, and FCM maintained finer image structure information at the cost of losing less time. We also adjusted the size of the image segmentation block and iteration threshold better in the experimental process according to many current studies.
The contributions of this paper are summarized as follows: Firstly, we created a novel image-denoising method based on the picture's structure and the dictionary's sparsity.
Secondly, we used the FCM clustering algorithm to combine the constraint of the internal structure of the image with the sparse theory to obtain better the overall structure and detailed information of the denoised image.
Thirdly, we suggested adaptive modification parameters based on the category and noise level, primarily altering the size of the segmented picture block.
The diagram of the proposed algorithm is as Fig.1 shows: The rest of the paper is organized as follows. Section II briefly introduces related works in image denoising and image clustering. Section III provides an overview of the FCM-SDL algorithm. Section IV shows the numerical results, and compares the proposed method with other imagedenoising methods. Finally, Section V concludes the paper.

A. SPARSE REPRESENTATION
In the sparse representation D ∈ R (n×k) (n < k), the image x ∈ R (n) can be represented mathematically as x = Dα; D is a redundant dictionary, d 1 , d 2 , . . . , d k is the column vector of the dictionary, k is the number of dictionary columns, and n is the number of dictionary rows. x is the original image and α is the sparse representation coefficient.
Set a threshold to indicate that the accuracy of sparse representation approximately meets the requirements, that is ε is the threshold value, followed by the requirement of sparsity L, that is Eq.
(3) ensures that α is sparse enough. Parameter (ε, L, D) defines a mathematical model as described above.
α is the estimator of α. Sparse means that the sparse representation coefficient α contains more zeros to ensure the sparse representation coefficient α is sparse enough; sparse representation means using fewer column vectors of learning dictionary D when representing the reconstructed image by the learning dictionary D and sparse representation coefficients α; T is the iterative threshold [27], [28], which is determined by ε and σ and can solve T by the maximum a posteriori (MAP) algorithm [29].
Then Eq.(4) can be optimized as: µ is the penalty factor, and Eq.(4) and Eq.(5) are equivalent when µ is given a suitable one. If we divide the unknown image x into overlapping small blocks for processing (prevent artifacts) and represent each small block by the constructed sparse model (ε, L, D), then the MAP algorithm is used to estimate as: The first part of Eq.(6) represents the global log-likelihood, which guarantees the closeness between x and y, λ is the fidelity. The second part represents the reconstructed image still has sparsity under the condition of limited errors, µ ij is the penalty factor of each item, which controls the weight. The third part indicates that the sub-image reconstructed by the dictionary is sufficiently similar to the original image, the sliding matrix window R ij of size n × N , which controls the size of the extracted image block, and R ij x is the sub-image of row i and column j, and Dα ij is the approximate sub-image obtained by reconstruction.
The solution ofα is a convex optimization problem, which the orthogonal matching pursuit algorithm can solve. The solution ofD is a problem of least absolute shrinkage and selection operator, use the ADMM algorithm to solve the problem. InitializeD to an over-redundant discrete cosine transformation (DCT) dictionary, x is initialized to y, and the PCA algorithm is used to update the dictionary [30], [31].
Finish updating the dictionary until it reaches the iteration threshold and sparsity. Then, after getting O α andD, update the denoised imagex as: Solve Eq.(7) by the least square method: I is the identity matrix, averaging the denoised blocks, and some relaxation is obtained by averaging the original noise image. The inverse matrix in the above expression is diagonal, so the calculation of Eq.(7) can also be carried out pixel by pixel according to the sliding window described in the sparse coding step.

B. FCM STRUCTURAL CLUSTERING
FCM clustering is a fuzzy clustering algorithm based on an objective function. The objective function of FCM and its constraint conditions are as follows: J is the objective function. The purpose is to divide all the data points x i (i = 1, 2, . . . , n) into c categories under the condition that the value of the constructed objective function reaches the minimum. c j is the contribution to class j; µ ij is the membership degree of each sample belonging to a certain category i and represents the probability of each sample belonging to each category. m is a membership factor in ensuring that the clustering results can not only ensure the degree of similarity between samples in the same category but also ensure the heterogeneity between samples in different categories.
The FCM update method is: Firstly, sum the membership degrees of all points to this category. Then divide the membership of each point by the sum, which is the proportion of each point in the whole, and multiply by that point's contribution x j to this category. According to the number of c i , determine the class i. The evaluation of the clustering effect of the FCM algorithm mainly depends on the fuzzy average entropy. The closer the fuzzy average entropy is to zero, the better the clustering effect.

III. FCM-SDL MODEL AND DENOISING PRINCIPLE A. FCM-SDL MODEL ESTABLISHMENT EQUATIONS
Based on Eq.(6), the model in this paper combines the image structure constraint term constituted by the FCM clustering algorithm, takes into account the prior information of natural image sparsity, to form a new FCM-SDL model, which can be expressed aŝ α = argmin y − Dα 2 2 + µ 1 α 1 + µ 2 α i − γ i 2 (12) µ 1 and µ 2 are non-negative parameters, and γ i is the clustering center of FCM clustering. Compared with the model in Eq.(6), the first item of this model describes the similarity between the estimated image and the original image, the second item describes the weighted relative TV constraint, which enhances the sparsity of the learning dictionary, and the third item describes the image structure constraint item composed of clustering.
FCM clustering can increase classification accuracy without taking too long and avoid the drawbacks of hard clustering algorithms. Increased classification accuracy allows for a better excavation of the image's core structural data as noise levels rise. When the noise level is high, FCM can effectively limit the general structure of the picture to prevent the loss of features like texture and edge, which avoids the over-smoothing phenomena of the image after noise removal.

B. FCM-SDL MODEL SOLVING
Solving the FCM-SDL model can be regarded as solving the following objective function: To ensure that the FCM-SDL model is always a convex optimization problem in the process of iterative solution, a surrogate function is introduced to ensure the shrinkage of the iterative solution [32]. The basic idea behind the surrogate function is to show that the simple process of iterative shrinkage in the scalar case also applicable in more general case (i.e., D is not unitary). In [32], the author introduces the following auxiliary functions.The surrogate function is as follows: c is chosen to ensure that (α, α 0 ) is convex, because α 0 = D T x, and the unitary matrix property x 2 2 = Dx 2 2 , then the objective function of Eq.(13) becomes: After some mathematical operations (see Appendix B), Eq. (15) can be simplified to: where v 0 is equal to v 0 = 1 c D T (x − Dα 0 ) + α 0 . By converting the above minimization problem into its scalar form: α → t, v 0 → t 0 , and γ → r, the mathematical solution of the double-1 optimal solution can be achieved (see Appendix A).
where τ 1 = µ 1 c and τ 2 = µ 2 c are the scaling relaxation parameters. Then the solution of Eq.(17) is as follows: The generalized shrink operator S τ 1 ,τ 2 ,r (t) is defined as follows: In Eq.(17), τ 1 , τ 2 refers to the situation where noise is not involved. When using τ 1 , τ 2 when the image involves noise, the following strategies are adopted to adapt the two regularization parameters.
σ 2 w is the noise variance, and c 1 and c 2 are auxiliary parameters to ensure the convexity of the surrogate function VOLUME 10, 2022 (default is usually set to c 1 < c 2 , emphasizing non-local terms).
Eq. (22) is an operator that implements the idea of iterative regularization, where S =D • S • R represents the projection onto the regularization constraint set. The right side can be regarded as a degraded Landweber operator (when the fuzzy kernel is reduced to an identity operator). δ is a small positive number that controls the amount of noise fed back to the iteration.
The steps of the algorithm FCM-SDL proposed are as Algorithm 1 shows: -if the iteration threshold T is reached, the iteration should be stopped; otherwise, it should be continued. 5: Output:restore image x.
-using sparse coefficients and learning dictionary to reconstruct and restore the image.

IV. EXPERIMENT AND ANALYSIS
Experimental test environment: Matlab R2018b, the CPU is AMD Ryzen 5 4600H with Radeon Graphics 3.00GHz, the RAM is 16.0GB, NVIIDA GeForce GTX1650, and Python 3.10, PyTorch 1.12.1, and CUDA 11.3. The grayscale image from Set12 data set, color image from the CBSD68 data set, real noise from RENOIR data set [33], and texture image from USC-SIPI data set. The experiment was carried out under different types of noise with different intensities. The supervisor's visual effect and objective evaluation index obtained by different algorithms were compared through qualitative and quantitative analysis. Setting experimental parameters: Adjust the size of the image block based on previous experience [34], [35], [36] and the intensity of noise [26]. When the noise intensity is σ ≤ 20, 20 < σ ≤ 40, and σ > 40, the picture block size is set to 6 × 6, 7 × 7, and 8 × 8, and T is set to 2, 3, 4, and τ 1 = 0.1, τ 2 = 0.2, λ set to 0.23, 0.28, 0.36, and c 1 set to 0.56, 0.57, c 2 set to 0.59, 0.64, and clustering numbers set to 240, 240, 250, respectively. Fig.2 is the test image used in this experiment. Fig.2(a) to Fig.2(f) are grayscale images from the Set12 data set. Fig.2(g) to Fig.2(i) are real noise images from the RENOIR data set. Fig.2(k) to Fig.2(l) are texture images from the USC-SIPI data set. Fig.2(m) is a color image from the CBSD68 dataset.

A. GRAYSCALE NOISY IMAGES
In this section, the paper focuses on the denoising case of grayscale image degradation contaminated by Gaussian white noise. Based on the previous discussion, the proposed new algorithm (FCM-SDL) is compared with model-based algorithms (ISKR, EPLL, LR-GSC, and NCSR) and learning-based algorithms (DnCNN, FFDNet, and IRCNN). To provide a fair comparison, high-quality images were combined with different levels of the same Gaussian white noise to create synthetic noise images with different noise levels of 10, 30, and 50. Then, we provide the visual denoising results of several algorithms under different noise levels and introduce PSRN and SSIM to evaluate the objective quality of denoised images. Fig.3, Fig.4, Fig.5, and Fig.6 show different models' overall and local results for restoring images for Gaussian white noise removal, with standard deviations of 15, 30, and 50, respectively.
When the noise level is low, the visual effect of each algorithm is shown in Fig.3. Fig.3 shows the overall and local results of each algorithm restoring the image when the noise level is 10 for the grayscale image. After the ISKR algorithm is processed, the image is too smooth, and the edge information of the ''building'' part is lost. In the image processing by KSVD and LR-GSC algorithm, the edge of the ''shoulder'' part is blurred. The ''sky'' in the smooth area processed by the DnCNN algorithm has a block effect. The FFDNet and IRCNN algorithms have a better effect on the processed image when the noise level is low, but the model trained 5000 times runs as long as 3 to 5 hours. Fig.4 shows the overall and local results of each algorithm restoring the image when the noise level is 30 for the grayscale image. The image processed by the ISKR algorithm is severely deformed overall and locally, but the local result of the ''eye'' is not blurred. Both the ''texture'' local result and the ''eye'' local result after the KSVD algorithm is blurred. EPLL and NCSR algorithms have ''texture'' local result distortion, but ''eye'' local result details are preserved. The LR-GSC algorithm relatively completely preserves the local texture information of the image, but the local result of the ''eye'' is blurred. After DnCnn, FFDNet, and IRCNN algorithms remove noise, the image's texture details and eye details are lost and blurred to varying degrees. The FCM-SDL algorithm preserves the local result of ''texture'' and the local result of ''eye.'' When the noise level is high, the visual effects of each algorithm are shown in Fig.5 and Fig.6. Fig.5 and Fig.6 are      blocking effect. On the right side of the NCSR algorithm, the enlarged part can see the strip deformation in the smooth area. DnCNN, FFDNet, IRCNN, and FCM-SDL maintain the overall image structure, but DnCNN, FFDNet, and IRCNN can see that the pixels at the ''petals'' in the upper left area of the ''monarch'' image are blurred. Fig.7 shows the PSNR and SSIM curves of images with simple structures (''house'' images) and images with complex structures (''monarch'' images) at different noise levels. Fig.7(a) and Fig.7(b) are the PSNR and SSIM curves of the house image, and Fig.7(c) and Fig.7(d) are the PSNR and SSIM curves of the monarch image. As the noise level increases, the PSNR and SSIM of the proposed algorithm show better performance in both simple and complex images, indicating that it has certain robustness.
We also compared the average running time of each algorithm for images in the Set12 dataset under different noise levels, as shown in Fig.8. Fig.8 shows that the running time of the FCM-SDL algorithm is at the middle level, almost the same as the running time of the LR-GSC and NCSR algorithms. However, the FCM-SDL algorithm can retain more texture and detailed information when removing noise and still maintains a good performance at a high noise level. The training time is significantly reduced compared to learning-based algorithms, and the FCM-SDL algorithm is more interpretable compared with the learning-based algorithms.
In the subjective results, we can see that other denoising methods often remove details such as edges and textures of the image when removing noise, which makes the denoising result too smooth. When the noise level is low, the ISKR algorithm can effectively remove the noise, but the reconstructed image will be deformed; but for a high level of noise, the ISKR algorithm cannot remove the noise completely. The image processed by the LR-GSC algorithm maintains some image structure but still loses the edge and texture information of the image. The edge of the image after denoising by DnCNN and IRCNN algorithm is too smooth. FFDNet is slightly better than DnCNN and IRCNN and preserves the structure of the image to a certain extent, but the edges of the image are still too smooth. The main reason is that these learning-based methods are limited to extracting high-frequency features. On the contrary, our algorithm can reconstruct local details because adding FCM clustering constraints in our method can better capture the global structural information of the image, and the learned dictionary under  clustering constraints can integrate prior external information and the internal structure features of the image to help the reconstruction.
To compare the performance more specifically, we compared each algorithm's PSNR and SSIM indicators after denoising the grayscale image with synthetic noise. By comparing the visual effect, average running time, and numerical results of the restored images, it can be seen that the proposed algorithm achieves the best result in evaluating the three aspects. The proposed algorithm has a short running time and interpretability. It has the best visual effect at all noise levels, and excellent PSNR and SSIM values in both learning-and model-based algorithms.

B. COLOR SCALE NOISY IMAGES
In this section, the paper focuses on the denoising case of color image degradation contaminated by Gaussian white noise, comparing the proposed FCM-SDL algorithm with model-based algorithms (ISKR and BM3D) and learning-based algorithms (DnCNN, FFDNet, and IRCNN). A comparison is made to verify the effectiveness of the proposed algorithm in color image denoising. Based on the denoising results of grayscale images at various noise levels, this section combines the high-quality image with the same Gaussian white noise at level 50 to create a synthetic color noise image. Then, we provide the visual denoising results of several algorithms and introduce two evaluation indicators, PSNR and SSIM, to evaluate the objective quality of denoised images.
The denoising results of different methods for color images in the case of σ = 50 are shown in Fig.9. In the subjective results, we can find that other denoising methods tend to remove edge details along with the noise, which makes the result too smooth. ISKR can neither preserve image structure nor remove noise deeply. BM3D [4] preserves the structure of the image to a certain extent but fails to remove noise deeply. DnCNN [14] and IRCNN [15] algorithms will over-smooth the edges of the image, and FFDNet [16] is slightly better than the first two methods. Our algorithm can integrate prior external information and internal structural features of the image under the constraints of FCM clustering to help reconstruct the restored image. In the objective numerical comparison, compared with other algorithms, the FCM-SDL algorithm achieved the best PSNR and SSIM values among the algorithms. FCM-SDL algorithm achieved at least 0.57dB and 0.0072 improvements in PSNR and SSIM values. Comparing the visual effects and numerical results of the restored color image comprehensively, it can be seen that the proposed algorithm has achieved the best results in the comprehensive evaluation. The experiments in this section show that the FCM-SDL algorithm proposed in this paper can also retain the details and texture of the image while removing the noise and obtaining a better visual effect than the grayscale image.

C. REAL WHITE NOISE REMOVAL
In this section, the paper focuses on the denoising case of the real noisy image. We compared the FCM-SDL algorithm with the ISKR algorithm, NCSR algorithm, DnCNN algorithm, FFDNet algorithm, and IRCNN algorithm, aiming to verify the proposed algorithm's effectiveness in denoising real noisy images. We provide the visual denoising results of several algorithms and introduce PSRN, SSIM, SNR, and figure of merit (FOM) to evaluate the objective quality of denoised images. Fig.10 shows the overall and local results of different models for the restored image with real noise removed. The first line of Fig.10 is the denoising result of the image ''batch16'', the second line of Fig.10 is the denoising result of the image ''batch26'', and the third line of Fig.10 is the denoising result of the image ''batch32''. It can be seen that the DnCNN [14] algorithm and the IRCNN [15] algorithm make the left side of the ''batch16'' image blurred, the character '2008' in the image ''batch26'' is blurred, the edges of the buttons in the image ''batch32'' are blurred, and the overall image is blurred. Texture details are lost, block effects exist, and noise removal is not clean. FFDNet [14] is slightly better than the first two methods, but the overall effect is not good. The edge and texture information of the ISKR algorithm is well preserved, but there are local deformations. The edge and texture information of the NCSR algorithm is well preserved, but the local noise removal is not clean. The noise of the FCM-SDL algorithm is removed cleanly, and the edge and texture information of the image is kept well.
In order to compare the performance more objectively, we compared the PSNR, SSIM, SNR, and FOM of each algorithm after denoising the real noise image. Table 2 lists the PSNR, SSIM, SNR, and FOM values of images recovered by different algorithms. In the objective numerical comparison, the FCM-SDL algorithm obtained the best PSNR, SSIM, SNR, and FOM values among all algorithms. The average increase of PSNR was 3.158dB, SSIM was 0.067, SNR was 5.539dB, and FOM was 0.064.

D. THE FEASIBILITY OF THE PROPOSED ALGORITHM
In this section, this article focuses on the feasibility of the proposed algorithm. The proposed new model (FCM-SDL) is compared with the NFCM-SDL algorithm and NCSR algorithm without FCM constraints, aiming to verify the effectiveness of the proposed algorithm for image structure preservation during image denoising and the novelty of the FCM-SDL algorithm. This experiment was performed using one edge structure image, ''Hex,'' and two texture images, ''Tile'' and ''Grass,'' all of which were destroyed by Gaussian white noise σ = 50. Fig.11 shows the overall and local results of the recovered image of the edge structure image at σ = 50. It can be seen from the figure that the denoising image processed by the algorithm without adding FCM constraints has a block effect as a whole, and the structure is blurred at the magnification part. However, the overall structure of the denoising image processed by the NCSR algorithm and FCM-SDL algorithm is clear, but the FCM-SDL is clearer at the local enlargement. The values of the FCM-SDL algorithm PSNR, SSIM, and SNR are improved by 0.1054dB, 0.0011, and 0.2389dB compared to the NCSR algorithm and by 0.6018dB, 0.0401, and 0.6019dB compared to the NFCM-SDL algorithm.    Fig.12 shows the overall and local results of the restored image of the texture image at σ = 50. It can be seen from the figure that the denoising image processed by the NFCM-SDL algorithm and NCSR algorithm has a block effect in places with many smooth components, the edges at the magnified local ''tiles'' are blurred, the edges at the VOLUME 10, 2022   zoomed local ''grass'' are lost. The ''grass'' image is blurred as a whole. However, the overall structure of the denoising image processed by the algorithm adding FCM constraint is clear, the edge at the zoomed ''tile'' is clear, the edge at the zoomed ''grass'' is visible, and the overall structure of the image is maintained. Compared with the NFCM-SDL algorithm PSNR, SSIM, and SNR, the FCM-SDL algorithm improves the values of 0.6018dB, 0.0401, and 0.6019dB in Tile images, respectively. In Grass, the image is improved by 2.0028dB, 0.3429, and 4.7448dB, respectively. Compared with the NCSR algorithm PSNR, SSIM, and SNR, the FCM-SDL algorithm improves the values of 0.6018dB, 0.0401, and 0.6019dB in Tile images, respectively. In Grass, the image is improved by 2.0028dB, 0.3429, and 4.7448dB, respectively. The visual and numerical results of denoising images with complex texture structures show that FCM clustering maintains the effectiveness of image structure for image denoising. The experimental results also show that although both FCM-SDL and NCSR are based on clustering algorithms, their denoising effects are different, and the FCM-SDL algorithm is novel.

V. CONCLUSION
Because the traditional dictionary learning algorithm does not consider the inherent structural features of image pixels, resulting in image over-smoothing, image texture, edge information loss, and other problems, a novel FCM-SDL denoising algorithm combining dictionary learning and FCM structure clustering is proposed. Firstly, the FCM-SDL algorithm can effectively shorten the time of generating the learning dictionary by using the PCA method through the external loop. Secondly, the FCM-SDL algorithm uses the FCM clustering method to constrain the learning dictionary through the inner loop, which makes up for the defect that the existing sparse representation-based image denoising methods do not consider the internal structure of the image. Thirdly, the learning dictionary under the constraint of inner and outer loop iteration can improve the efficiency of image denoising while maintaining the texture and edge details. Finally, sparse representation coefficients and redundant dictionaries are obtained by using the OMP method and alternating direction multiplication. According to the sparse coding theory, the denoised image is obtained. This algorithm is superior to KSVD, ISKR, EPLL, LR-GSC, DnCNN, IRCNN, and FFDNet in both subjective effect and objective evaluation. This method can effectively remove white Gaussian noise in gray images and color image and successfully remove real noise. At the same time, the edge and texture information of the image is retained, which enhances the subjective effect and increases the objective evaluation value. Richly textured images can provide better visuals, but images with smoother components will be worse than richly textured images. That is what we are going to deal with in the future. Through the research of plug and play algorithm and expansion algorithm, it is feasible to combine the learning-based algorithm with the model-based algorithm. For the texture part, the model-based algorithm can give more constraints. The smooth region can rely on the learning-based algorithm to process and synthesize different types of image blocks to get better image processing results.

APPENDIX A THE SIMPLIFICATION PROCESS OF FCM-SDL MODEL
To comprehend how the double-1 optimization problem is solved, first explain how the single-1 optimization problem was solved. The single-1 optimization problem is described as follows: Assuming D is a unitary matrix, in terms of DD T = I, the objective function is: where α 0 = D T x and the unitary matrix's characteristic The objective function is diagonalized as a result of the process described above, the objective function becomes, The scalar minimization issue is made more accessible by the scalar form, which directly replaces the vector form: By using a mathematical approach to solve the issue of the minimal value of one variable function, it is possible to derive the generalized contraction operator of the optimization problem with a single-1 constraint, Apply the same method to obtain a generalized contraction operator for the double-1 optimization problem above.

APPENDIX B ILLUSTRATION OF THE MATHEMATICAL SIMPLIFICATION OPERATIONL
The specific simplification process of Eq.(15) to Eq.(16) is explained as follows: Since y is x with noise, y − Dα 2 2 is the difference between y and x. Dα − x 2 2 is Dα ≈ x.Eq.(14) has too many where v 0 is equal to v 0 = 1 c D T (x − Dα 0 ) + α 0 .

APPENDIX C ALGORITHMIC COMPLEXITY OF THE FCM-SDL ALGORITHM
The algorithm complexity can be described as time complexity and space complexity. We will analyze our proposed algorithm from two aspects using the big O notation. The big O notation is a mathematical notation used to describe the asymptotic behavior of functions.
First, we analyze the time complexity of this algorithm. In the running process of the FCM-SDL algorithm, there are binary search statements with ''if'' and ''else'' in pairs whose time complexity is O(logn). FCM-SDL algorithm also has loop nesting, there is quadratic loop nesting, and its time complexity is O(n 2 ); The maximum cycle nesting of the whole algorithm is three times; that is, when classifying the image, it is necessary to calculate the image blocks of row i and column j and arrange the classified ones, so the time complexity of the cycle nesting of three times is O(n 3 ). So, sort by time complexity.
Order the time complexity from smallest to largest: Therefore, the time complexity of the FCM-SDL algorithm is O(n 3 ).
We also drew the time graph of the FCM-SDL algorithm based on the Set12 data set. Fig.13(a) shows the time used by the proposed algorithm to make noise in the Set12 data set with different noise levels, and Fig.13(b) shows the average time used by the proposed algorithm to make noise in the Set12 data set with different noise levels. With the increase in image noise, the algorithm's running time will be longer. However, the complexity of the proposed algorithm is low, the maximum nesting in the algorithm operation is three cycles, and the algorithm's complexity is O(n 3 ).
Space complexity measures the amount of storage space temporarily occupied by an algorithm during its run. Space complexity is the number of variables. The number of variables in the FCM-SDL algorithm is 105. Therefore, its space complexity is O(105).
In summary, the time complexity of the FCM-SDL algorithm is O(n 3 ), and the space complexity is O(105).