Deep learning-based blind image super-resolution with iterative kernel reconstruction and noise estimation
Hasan F. Ates Suleyman Yildirim Bahadir K. Gunturk


empty
                                                             










































































































































empty



















1]Hasan F. Atescor1 
[cor1]Corresponding author: 
  Tel.: +90-216-564-9855  
hasan.ates@ozyegin.edu.tr
2]Suleyman  Yildirim
3]Bahadir K. Gunturk

[1]Faculty of Engineering, Ozyegin University, Istanbul, Turkey
[2]College of Engineering, Koc University, Istanbul, Turkey
[3]School of Engineering and Natural Sciences, Istanbul Medipol University, Istanbul, Turkey

1 May 2013
10 May 2013
13 May 2013
15 May 2013
S. Sarkar


Blind single image super-resolution (SISR) is a challenging task in image processing due to the ill-posed nature of the inverse problem. Complex degradations present in real life images make it difficult to solve this problem using naïve deep learning approaches, where models are often trained on synthetically generated image pairs. Most of the effort so far has been focused on solving the inverse problem under some constraints, such as for a limited space of blur kernels and/or assuming noise-free input images. Yet, there is a gap in the literature to provide a well-generalized deep learning-based solution that performs well on images with unknown and highly complex degradations. In this paper, we propose IKR-Net (Iterative Kernel Reconstruction Network) for blind SISR. In the proposed approach, kernel and noise estimation and high-resolution image reconstruction are carried out iteratively using dedicated deep models. The iterative refinement provides significant improvement in both the reconstructed image and the estimated blur kernel even for noisy inputs. IKR-Net provides a generalized solution that can handle any type of blur and level of noise in the input low-resolution image. IKR-Net achieves state-of-the-art results in blind SISR, especially for noisy images with motion blur.  



Super-resolutionBlindIterativeDeep network 







§ INTRODUCTION

Solving inverse problems in image and video processing has always been a challenging area for researchers in the field of deep learning. In particular, the ability to develop deep learning-based models for problems such as single image super-resolution (SISR) is promising. But still, it requires further study to apply in real world scenarios where blur models are unknown <cit.>, <cit.>. Due to many environmental factors or device limitations during photography, captured images are exposed to blurring and noise in different forms. The simple form of the forward degradation model can be described as:

    y = (x ⊗ k)↓_s + n

where x is high-resolution (HR) and y is low-resolution (LR) image, ↓_s denotes the s-fold downsampling operation (which is keeping the upper-left pixel for each distinct s×s patch), ⊗ denotes convolution of the blur kernel k with HR image x, and  n is additive noise. The inverse problem, on the other hand, can be modeled as a function of y, s, k, σ (i.e. noise standard deviation) which provides a mapping from the degraded image y to the latent original image x.



The purpose of deep learning based SISR is to find an approximate solution for this inverse function. Fundamentally, these methods are aimed at learning the inverse mapping from blurry LR to sharp HR image by training on LR-HR image pairs. Traditionally, there are two main approaches: 1) learning the inverse mapping directly from data without explicit degradation modelling; 2) modelling the degradation parameters explicitly to utilize it as prior knowledge. For the first approach, Generative Adversarial Networks (GANs) are one of the most popular tools due to its ability to learn complex statistical distributions. Most of these methods are trained on synthetically generated datasets <cit.>, i.e. LR images are generated from HR images with some predefined blur kernels. These blur kernels are typically assumed to be known and fixed (e.g. bicubic) or belong to a limited space of Gaussian kernels. Thus, they cannot represent the real life degradations adequately and the performance of these models significantly drop when tested on noisy images filtered with complex blur kernels. In reality, images are affected by various types of blur, and since these data-driven models rely heavily on the limited dataset that they are trained on, their generalization capability is low. To overcome this obstacle, some work in literature enhances their training set by generating more realistic degradation models <cit.>. Although these efforts improve super-resolution performance on real-life images to a certain extent, the model's generalization capability is limited by the extent of the training dataset, which leads to poor results or loss of quality when the image is exposed to a complex degradation that is not covered by the training set.


For the second approach that models the degradation explicitly, most of the current work is focused on predicting a blur kernel representation from an input LR image and fusing the predicted representation into the SR reconstruction network <cit.>. Typically these methods prefer to predict the blur kernel in a low dimensional feature space, rather than to reconstruct the actual kernel. Moreover, most of the blur modelling SR solutions perform under the assumption of Gaussian kernels and overlook the more complicated motion blurs. In addition, noise modelling in the input image is generally ignored in blind methods, which substantially lowers their applicability to real-life cases. Therefore, a complete modelling of the full degradation process, including all types of blur and additive noise, is crucial in order to achieve an adaptive, generalized deep learning-based solution to SISR problem.

In this paper, an iterative deep learning solution is proposed for blind SISR, named as Iterative Kernel Reconstruction network (IKR-Net). IKR-Net combines the blindness of data-driven methods with the generalization capability of model-based methods. The iterative update steps in IKR-Net model are visualized in Figure <ref>. The detailed architecture is provided in Figure <ref>. IKR-Net consists of four distinct modules: Kernel Initializer module (ℐ) produces the initial kernel estimate from the input LR image, Kernel Reconstruction module (𝒟k/𝒫k) iteratively corrects the estimated kernel, Noise Estimator module (ℱ) estimates the noise standard deviation and related model parameters, and SR Reconstruction module (𝒟/𝒫) iteratively reconstructs the image. With IKR-Net, we extend the work of <cit.> to blind SISR and further improve our previous model in <cit.> by incorporating noise estimation into the iterative architecture. Results show that the quality of output SR images become close to that of non-blind methods despite any prior knowledge of the blur kernel and/or noise level. IKR-Net provides state-of-the-art performance consistently for any type of blur kernel (i.e. isotropic/anisotropic Gaussian, motion blur) and for both noisy and noise-free images. IKR-Net significantly outperforms existing blind SR methods visually and in objective metrics for complex motion kernels and for noisy images. The novel contributions of this paper are as follows:







  * We propose an end-to-end trainable iterative deep SISR framework, that contains multiple separate modules for kernel initialization, iterative kernel estimation, noise estimation and iterative SR image reconstruction.

  * We apply a model-based and learning based joint approach to both kernel and SR image reconstruction. Deep learning is used for regularization during iterative estimation of the kernel and the SR image.

  * We provide a well-generalized solution to blind SISR that exhibits robust performance for any complex degradation, including nonlinear motion blurs and additive noise. The enhanced model architecture proposed in this paper is superior to our previous work in <cit.> and <cit.>, and produces high-quality SR images even in the presence of noise. 

  * The proposed model is tested with 12 selected isotropic/ anisotropic Gaussian and motion blur kernels <cit.> using multiple benchmark datasets with and without noise. We achieve state-of-the-art results in blind SISR, and approach the quality level of non-blind methods.


When compared to our previous work in <cit.>, the super-resolution model in this paper contains noise and hyper-parameter estimation modules in order to handle noise in input LR images. As a result, a more generalized model is obtained that shows superior performance not only for synthetically generated but also for real-life LR images. In addition, this paper contains extended simulation results for scales × 4 and × 2 with noisy and noise-free images and comparisons with six state-of-the-art methods from literature.  Visual comparisons for real blurry images are provided as well. This paper also contains an ablation study, in which several features and parameters of the proposed architecture are further analyzed, with special focus on the SR performance gains obtained by the iterative noise estimation and removal steps.


In this paper, we propose a generic solution to blind SISR problem by combining learning-based and model-based approaches in an end-to-end trainable iterative network. Similar to model-based methods, IKR-Net can effectively handle complex degradations with different types of blur kernels at various scale factors and input noise levels. The iterative and joint refinement of both the SR and blur kernel estimates makes it possible to achieve superior results under various degradation settings. The modules used for initial kernel estimation, noise estimation, SR image and kernel reconstruction are generic convolutional neural networks. These modules are initially trained independently for their respective tasks and then put together and fine-tuned in an iterative and end-to-end manner, as depicted in Figure <ref>. This plug-and-play nature of the proposed architecture makes it possible to replace any of the given modules with alternative solutions and/or train the model effectively and efficiently for any degradation setting.

Section 2 discusses the previous work in deep learning-based blind SISR. Section 3 gives the architectural details of IKR-Net. Section 4 provides details of training, simulations and evaluation of results. Section 5 concludes the paper with discussion of future work. 





§ RELATED WORK

Learning-based SISR models usually require LR-HR pairs dataset to train a model. Typically LR images are generated from HR images with some predefined blur kernels. Mostly, the bicubic blur kernel is used to downsample the HR images to generate the LR-HR pair for SR model training. Multiple deep learning models <cit.> have been used for the super resolution of the image using bicubic downsampling. Assuming a fixed blur kernel in these models leads to decreased performance when applied in real world images, because the real world blur kernel is different and complex from the assumed kernels. These models can perform well with the bicubic degradation setting but cannot be used directly to upsample real world images.

The traditional blind SR approach <cit.> uses model-based optimization. <cit.> use comparable patches to look for similar patterns and estimate the blur kernel. However, if there is noise in the image, the estimation accuracy of these models will be greatly reduced. ZSSR <cit.> is trained on a single image to take full advantage of its unique inside information. The model is trained at various scales of the input image and utilizes the kernel estimation algorithms of <cit.> when the blur kernel is unknown. Traditional model-based algorithms use various regularization techniques in order to achieve accurate and artifact-free blur kernel and SR image reconstruction.  

Data-driven approaches in SISR rely heavily on the content of the training set for optimizing SR performance. Model-based techniques, on the other hand, typically assume fixed apriori models to estimate the blur kernel and reconstruct the SR image. In the following sections we review the existing literature in both directions  and explain our novel framework to bring the two approaches together in an learning-based iterative optimization setting.





 §.§ Data Driven Approach

Data driven SISR methods aim to learn the inverse mapping from degraded LR images to clean HR images by training the deep SR model directly on LR-HR image pairs in an end-to-end manner. There are numerous deep learning models proposed to learn this mapping <cit.>. <cit.> propose SRGAN as a solution to the problem of classical SISR. The model uses a pre-trained feature extraction network to improve perceptual quality and a loss function to eliminate contextual errors between feature maps instead of low-level pixel-based error measurements. Consequently, the output image is prevented from being over-smoothed to achieve a high signal-to-noise ratio (SNR). Following SRGAN, <cit.> developed ESRGAN to further improve visual quality. In this method, SRGAN’s network structure is modified as well as its perceptual loss function. Batch Normalization layers are removed from the architecture and Residual in Residual Dense Block structure is used as the basic block in the generator network. In addition, the discriminator network is improved using the Relativistic GAN method. The new discriminator estimates not only the probability that an image is real or fake, but also the probability that one is more realistic than the other. Over the next few years, various GAN-based approaches have been introduced to improve the perceptual quality.  <cit.> propose a ranker network model (RankSRGAN) that can learn these perceptual metrics that are highly dependent on human vision. <cit.> calculate the reconstruction difficulty for each pixel by obtaining a score map, rather than obtaining a single discriminator score for each image. Additionally, instead of using two completely separate structures, a common feature extraction network is used for the generator and discriminator networks. However, as already mentioned, these methods train on synthetically degraded images using only predefined kernels which are mostly bicubic and/or Gaussian. Thus, they rely heavily on the limited dataset they are trained on and their generalization capability is inadequate for real-world. Consequently, performance is far from being reliable when tested on realistic images exposed to different types of blurring and noise.

Many researchers have tried to develop a solution that can work on realistic images with various forward degradation models. Some existing work learns the statistical domain distribution of natural source images using an unsupervised learning approach <cit.>, which trains the network with real images only. Others have tried to create realistic datasets that take more complex degradation models into account <cit.>.  <cit.> provides an approach to blur modeling and uses blur models extracted from natural images to prepare realistic datasets. They use the dark channel <cit.> to estimate realistic blur kernels from real LR images. Then, a GAN network is trained with these estimated blur kernels to create a large realistic blur model pool. A kernel is randomly selected from the kernel pool and the LR image is generated for the training set. <cit.> propose a similar approach using realistic degradation model pool generated by estimating blur and noise in natural images. However, model performance relies heavily on the kernel estimation algorithm <cit.>. <cit.> propose utilizing a second order degradation process to generate more practical LR images by applying the classical degradation model twice with the addition of JPEG compression. Another practical degradation model is proposed by <cit.>. They basically create multiple sets of parameters for each degradation type (e.g., blurring, resizing, noise) and randomly sample a number of degradation operations to obtain diverse degradation sequences. These sequences of operations are applied to HR images to generate corresponding LR images.  <cit.> trains a Swin Transformer architecture with the degradation process proposed by <cit.> to achieve a generalized solution for real-world SR. <cit.> aims to learn the source domain distribution corruptions to generate realistic LR-HR image pairs.  Unfortunately, these methods are not sufficient to provide robust performance for all real-world images, because the degradation models used in training are not comprehensive enough to handle all types of degradations.



 §.§ Explicit Degradation Modelling Approach

These methods generally aim to estimate the degradation model first or define some specific priors in order to perform successfully regardless of the degradation model <cit.>. In the method proposed by <cit.>, blur model is estimated by using the internal distribution similarity between the patch cropped directly from the LR image and the patch cropped from the re-blurred and downscaled version of the same image. <cit.> and <cit.> iterate through the SR process by first estimating the blur model in a low dimensional space and then integrating the features of encoded blur model into their reconstruction network. Intermediate kernel representation and SR image outputs are corrected at each step iteratively. <cit.> propose an unsupervised method to represent degradations in a low dimensional space using contrastive learning. Then, learned representations are fed into a degradation-aware SR network applying feature adaptation and channel modulation. <cit.> used reinforcement learning to estimate the blur kernels through a non-differentiable perceptual metric. However, these methods generally restrict the search space of blur kernels in one way or the other and and they estimate the kernel in this reduced dimensional subspace. <cit.> perform spatially-varying kernel estimation and propose adjusting intermediate image features based on the predicted degradation kernels. <cit.> propose Flow Kernel Prior (FKP), a kernel estimation method, based on normalizing flow that allows to deform the complex data distribution on to a simple and tractable distribution. <cit.> combine a non-blind SR network with cascaded noise and blur kernel estimation blocks to attain a blind architecture. The effectiveness of the methods listed above is limited to the parameterized space of Gaussian kernels and they neglect complex nonlinear motion blurs.  <cit.> claim that frequency domain is more conducive than spatial domain for kernel estimation and reconstructs the blur kernel from the LR image’s spectrum by utilizing kernel’s shape structure. Despite the good results for both Gaussian and motion blur kernels, this method also does not take noise model into account, which is imperative for a robust and generalized solution.




 §.§ Cascaded / Iterative Refinement Approach

In many different vision tasks, researchers have adopted cascaded and iterative modules to improve the performance of their models, such as video segmentation <cit.>, image restoration <cit.>, trajectory prediction <cit.>, abductive reasoning <cit.>, point cloud completion <cit.>, pose estimation <cit.>. For instance, <cit.> generate an initial description for each event representation and iteratively refine it using cascaded decoders. <cit.> study cascaded, multi-stage encoding of visual representations for better video segmentation. Likewise, <cit.> initially perform a coarse reconstruction on the input point cloud and apply iterative refinement on the intermediate output with its secondary module to achieve a high quality dense reconstruction, similar in spirit to our approach.



When it comes to image super-resolution, several non-blind model-based approaches <cit.> were proposed exploiting the advantages of iterative refinement idea,  besides the aforementioned learning based methods <cit.>. <cit.> decouple the problem into deblurring and SR tasks. The first task is solved in closed form in Fourier domain while the second task is handled by a non-blind SR network. USRNet <cit.> also unfolds the objective function which allows to embed the degradation information into the learning model effectively. 
In contrast with DPSR <cit.>, USRNet  decouples optimization problem into SR reconstruction and denoising tasks. USRNet is both a model-based and end-to-end trainable iterative architecture that accepts blur kernel, noise variance, and scale factor as input parameters in order to provide a general solution to the non-blind SISR problem.


 In this paper, we propose to transform USRNet into a blind SISR network by integrating kernel and noise estimation into the iterative reconstruction process. We claim that combining model-based reconstruction and learning-based correction is essential for robust SR results. These two components of the model can be seen as providing complementary knowledge of the underlying problem: model-based module is responsible for the degradation process and learning-based module learns how to handle the denoising process. This is similar to the  concept of multiple knowledge representation, which is introduced in <cit.> and shown to provide a more robust and regularized feature representation of the underlying data and improve the generalization capability of the model.


  This paper builds upon our previous work to achieve state-of-the-art results in blind SISR.   
  In BISR-Net <cit.>, we introduce a kernel initializer model that provides an initial kernel estimate and a kernel estimator model that iteratively corrects the estimated kernel. In <cit.>, we decouple the iterative kernel refinement process into model-based reconstruction and learning-based correction sub-modules. In this paper, we extend our previous work by integrating noise estimation into the iterative framework as well. As a result, we claim that the model becomes robust to any type of degradation in the LR image and achieve state-of-the-art performance for isotropic/anisotropic Gaussian and linear/nonlinear motion blurs with different levels of noise. 








§ PROPOSED METHOD

In this paper, we consider the blind SR problem formulated as in Equation <ref>. Due to the ill-posed nature of SISR problem, a constrained optimization approach is applied for the solution:

    x̂, k̂ = min_x,k || y-(x⊗ k)↓_s||^2_2+ λΦ(x)+Θ(k)

Here, Φ(x) and Θ(k) are the regularization functions that represent the prior information about the image and the kernel, respectively; λ denotes the Lagrangian multiplier that depends on the noise variance. To solve this problem iteratively, half quadratic splitting (HQS) method can be applied in order to break down the equation  into following steps:

    k_i   = min_k || y-(x_i-1⊗ k)↓_s||^2_2+Θ(k) 
    
    z_i   = min_z || y-(z⊗ k_i)↓_s||^2_2+μ ||z-x_i-1||^2_2 
    
    x_i   = min_xμ ||z_i-x||^2_2 + λΦ(x)

As discussed in BISR-Net <cit.>, three different modules are implemented to realize an iterative solution for this multi-layer optimization problem. In <cit.> and in this paper, instead of using a deep network module to update the kernel estimate, we utilize the HQS technique for the kernel correction step as well:

    w_i   = min_w || y-(x_i-1⊗ w)↓_s||^2_2+ζ ||w-k_i-1||^2_2 
    
    k_i   = min_kζ||w_i-k||^2_2+Θ(k)

where w and z are auxiliary variables that are used to separate the optimization of x and k into two consecutive steps. We know that the estimation of z_i is a convex problem and has a closed form solution in Fourier domain <cit.>. This property can be further exploited for the solution of w_i, since the equations for z_i and w_i have similar form (note that convolution is a commutative operation). Moreover, it can be noticed that the equations of k_i and x_i are actually both denoising problems that can be solved using deep denoiser models. Hence the consecutive optimization steps in Equations <ref> and <ref> can be solved with the following modules:


    w_i   = 𝒟k(y, x_i-1, k_i-1) 
    
    k_i   = 𝒫k(w_i) 
    
    z_i   = 𝒟(y, x_i-1, k_i)  
    
    x_i   = 𝒫(z_i,β_i)

where 𝒟 and  𝒟k are fixed modules that implement the closed form solutions of the corresponding convex optimizations, 𝒫 and  𝒫k are trainable deep networks used for denoising and artifact removal. Thus, kernel estimation is divided into two submodules: a non-trainable module 𝒟k to reconstruct the updated kernel and a kernel denoiser module 𝒫k to apply regularization on the reconstructed kernel. Additionally, a kernel initializer network ℐ is used to provide the initial estimate k_0 for the first iteration: 

    k_0 = ℐ(y)

LR image is bilinear interpolated to produce the initial SR estimate x_0. The model hyper-parameters  (i.e. β, λ, μ, ζ and α from Equation <ref>) depend on the noise variance σ^2 and the level of uncertainty in the reconstruction process. β determines the denoising strength of module 𝒫 and is updated at each iteration as well. In this paper, we investigate both scenarios where noise variance is zero/fixed or unknown. In case the noise variance is unknown, a noise estimator module ℱ is also used to iteratively estimate the variance and update the related hyper-parameters β, α:

    (σ_i, β_i, α_i)  = ℱ(y, x_i-1, k_i)

Figure <ref> summarizes these modules and  iterative updates applied on estimated kernel and SR image. 







 §.§ Kernel Initializer

Module ℐ performs an initial estimation of the blur kernel; then the initial kernel is fed to SR reconstruction and kernel reconstruction modules. The architecture of ℐ is basically an auto-encoder network where a fully convolutional encoder learns the latent feature subspace that uniquely represents different kernels and a fully connected decoder network translates these compressed features into 21× 21 kernels. The initializer network is trained in feature subspace via utilizing a separate kernel encoder-decoder model as explained in <cit.>. Figure <ref> shows the network architecture for the initializer.
 


 §.§ SR Reconstruction  Model

As depicted in Figure <ref>, SR Reconstruction model is divided into two sub modules: fixed operator 𝒟 and a deep denoiser model 𝒫.Module 𝒟 performs inverse filtering operation on LR image to reconstruct the SR estimate. Any reconstruction artifacts/noise caused by this inverse filtering are removed by the trainable module 𝒫. By separating SR reconstruction into two consecutive steps, it becomes possible to train module 𝒫 as a generic denoising network that is almost independent of the underlying blur kernel. In other words, 𝒟 is responsible for correct filtering based on the kernel estimate and  𝒫 handles noise removal from the SR estimate of 𝒟 .

The solution of 𝒟 has a closed form when implemented in Fourier domain, as explained in <cit.>: 

    z_i   = ℱ^-1(1α_i(d-ℱ(k_i)⊙_s(ℱ(k_i)d)⇓_s(ℱ(k_i)ℱ(k_i))⇓_s+α_i))


    d    = ℱ(k_i)ℱ(y↑_s)+α_iℱ(x_i-1)

Here  α_i is a regularizing constant that is estimated at each iteration by equation <ref>, ℱ(.) denotes FFT, ⊙_s denotes applying element-wise multiplication to the s × s distinct blocks of ℱ(k_i), ⇓_s
denotes averaging the s × s distinct blocks, ↑_s denotes  upsampling the spatial size by filling the new entries with zeros.

The denoiser module 𝒫 has a CNN architecture based on ResUNet, which is a combination of ResNet <cit.> and U-Net <cit.> (see <cit.> for more details). The module  𝒟 outputs the reconstructed image z, which is input to the denoiser module 𝒫 for regularization. The denoising strength β is concatenated with z as an additional constant input channel for 𝒫. Then the SR estimate x is fed back to 𝒟 for iterative update. The architecture for module 𝒫 is given in Figure <ref>. 

Similar to UNet, ResUNet downscales and then upscales the feature maps through encoder and decoder layers, respectively. There is identity skip connection between corresponding layers of the encoder and decoder at four different scales.  In Figure <ref>, "ch" represents the number of output channels in each layer, and "st" is the stride. Transposed convolution is used at the decoder for upscaling. Each encoder and decoder layer contains two consecutive residual blocks, in addition to the strided and transpose convolution layers, respectively. A residual block is composed of two 3×3 convolution layers with ReLU activation in the middle and an identity skip connection added to its output. The architecture also has two additional convolution layers without any nonlinear activation, one at the input and the other at the output of the network.




 §.§ Kernel Reconstruction  Model

In Figure <ref>, kernel reconstruction module also consists of a a fixed 𝒟k  and a trainable denoiser/regularizer module 𝒫k, just like SR model. Since the convolution of an image with kernel k is a commutative operation, the same technique that is used for SR reconstruction can be also applied here. The closed-form solution of 𝒟k is given in Equations <ref> and <ref>:

    w_i+1   = ℱ^-1(1γ(d-ℱ(x_i)⊙_s(ℱ(x_i)d)⇓_s(ℱ(x_i)ℱ(x_i))⇓_s+γ))


    d    = ℱ(x_i)ℱ(y↑_s)+γℱ(k_i)

Here a constant value of γ is used for regularization, as opposed to the iteratively updated parameter α in module 𝒟. 

The regularizer 𝒫k is also a ResUNet architecture, as in SR reconstruction model, but without the additional input channel for the denoising strength. Module 𝒫k  removes noise/artifacts in the kernel estimate w of module 𝒟k. Then the updated kernel k is fed back to 𝒟k for iterative refinement.



 §.§ Noise Estimator Module

The noise and hyper-parameter estimator module is given in Figure <ref>. The module takes LR image, SR estimate and kernel estimate as input. The SR estimate is filtered with the kernel and downsampled to produce denoised LR image, y_D:

    y_D = (x_i-1 ⊗ k_i)↓_s

The difference between the noisy LR image y and the denoised output y_D is input to a 2-layer convolution network 
in order to estimate the noise standard deviation σ. This standard deviation is used together with the scale factor s to adjust the hyper-parameters α and β through a simple 3-layer fully-connected network. 



§ EXPERIMENTS

This section first provides the details on implementing data pre-processing and network training, and then compares the proposed IKR-Net model to other existing blind  SR models.


 §.§ Details of Implementation and Training

For the training the model, DIV2K <cit.> and Flickr2K <cit.> datasets consisting of total 3450 HR images are used. LR images are generated by using the degradation process in Equation <ref> with and without noise and for scale factors ×4 and ×2. 100K random Gaussian kernels (isotropic and anisotropic kernels with standard deviations in the range [0.2 4.0] for both axes and rotated by a random angle in [-π,π]) and 100K randomly generated motion kernels with different levels of nonlinearity are used for blurring. Also, data augmentation techniques such as random cropping, rotation and flipping are applied to the training images. Two different models are trained for scales ×4 and ×2. 

Kernel initializer ℐ is initially trained using L2 loss on 10-dimensional latent feature space generated by a trained kernel encoder (see <cit.> for more details) and then fine tuned using L2 loss on the predicted kernel coefficients. SR reconstruction model is first trained with the initial kernel estimate of ℐ and without using kernel reconstruction model. L1 loss is used for SR model training. Noise variance is assumed to be known at this stage and hyper-parameter estimator in Figure <ref> is trained together with module 𝒫. After 𝒫 is trained for a number of epochs, kernel regularizer 𝒫k is trained using the generated SR images while 𝒫 is frozen. 𝒫k is trained with L2 loss on kernel coefficients. Afterwards, the noise estimator ℱ is trained using L2 loss on the standard deviation of the noise. The maximum standard deviation of the additive Gaussian noise is assumed to be 3%. Finally, all modules are integrated as in Figure <ref> and 𝒫 and ℱ are fine-tuned while freezing ℐ and 𝒫k modules. The number of iterations in SR reconstruction is set as 16.
For training, ADAM optimizer is used with  = 0.9,  = 0.99, batch size of 8, and learning rate of 10e-4. 


















 §.§ Evaluation and Comparison

The proposed model is evaluated on CBSD68 <cit.> and Urban100 <cit.> datasets, which contain 68 and 100 HR images, respectively. These images are blurred using a set of 12 kernels consisting of both Gaussian and motion blurs. In Figure <ref>, the first 4 kernels are isotropic, the next 4 are anisotropic Gaussian and the last four are selected motion kernels. The results are compared with blind SISR models of DASR <cit.>, BRSGAN/BSRNet <cit.>, FKP <cit.>, IKC <cit.>, DAN <cit.>, and BISR-Net <cit.>. For fair comparison, the models of DASR, IKC and DAN are fine-tuned with the same set of motion kernels used in IKR-Net and BISR-Net training. BRSGAN/BSRNet models are not fine-tuned, since they claim to be robust against different real-life degradations (note that, while BSRNet model is tested for scale ×4, BSRGAN is tested for scale ×2 since BSRNet model is not available for this scale). The training of FKP  is unsupervised and thus FKP claims to be applicable for arbitrary kernel assumptions. The second version of DAN model is fine-tuned and tested under two settings: setting-1 for isotropic Gaussians (DANv2s1), and setting-2 for isotropic/anisotropic Gaussians (DANv2s2). DASR model is tested with and without fine-tuning, in order to analyze the performance improvement for motion kernels after fine-tuning. In the following "model(ft)" stands for a model fine-tuned with 100K motion kernels.

PSNR results for all tested 12 kernels are presented in Table <ref> for scale ×4 and Table <ref> for scale ×2, when there is no input noise. IKR-Net outperforms all the tested methods in terms of average PSNR. For scale ×4 IKR-Net is the best or second best method in all the tested kernels in both CBSD68 and Urban100 datasets. The PSNR gains are even more impressive for motion kernels.  For scale ×2, DANv2s2(ft) outperforms IKR-Net for anisotropic Gaussian kernels. However  IKR-Net is still the best algorithm in terms of average PNSR. 

Table <ref> presents the test results for noise standard deviation of 2% in scales ×4 and ×2. IKR-Net is by far the superior model for noisy images, providing the highest PSNR values in all tested kernels (except for kernel-VI in Urban dataset). DASR stands out as the second best algorithm; the comparison between DASR and DASR(ft) shows that fine-tuning improves DASR's performance for motion kernels with slight PSNR drop for Gaussian kernels. However fine-tuned DASR still cannot achieve the performance of IKR-Net, especially for motion kernels.

When results in all three tables are analyzed, it is not hard to see that IKR-Net provides the most generalized solution to blind SR problem. IKR-Net achieves consistent and high performance in all tested scales for all isotropic/anisotropic Gaussian and linear/nonlinear motion kernels and at different noise levels. DAN provides competitive performance for isotropic/anisotropic Gaussian when there is no noise; however DAN's performance degrades substantially when there is noise in the tested images. IKC and BISR-Net are also not robust against noise. FKP fails for motion kernels and exhibit very poor results for scale ×2. FKP also cannot handle noise in input images and is therefore not included in Table <ref>.  BSRNet/BSRGAN and DASR yield comparatively better results in the presence of noise; yet they also fail to compete with IKR-Net.      

Table <ref> compares IKR-Net against existing methods under the test settings provided for DAN in <cit.>. In setting-1, 8 isotropic Gaussian kernels are used, with kernel widths uniformly chosen from the range [1.8, 3.2]. No noise is added to the LR images or the kernels. 
In setting-2, anisotropic Gaussian kernels are utilized: the lengths of both axes are uniformly distributed in (0.6, 5), rotated by a random
angle uniformly distributed in [-π, π]. To deviate from a regular Gaussian, uniform multiplicative noise (up to 25% of each pixel value of the kernel) is applied  and the kernel is normalized to sum to one. LR image is again noise-free. The table reports average PSNR values for the Y-channel (i.e. PSNR-Y) in addition to the PSNR for the whole color image. The results in the table confirm our previous findings. IKR-Net and DAN  have similar PNSR performance for isotropic/anisotropic Gaussians when there is no noise in LR image. IKR-Net outperforms DAN for the isotropic case and DAN  is slightly better for anisotropic Gaussians kernels that are distorted by multiplicative noise. Other methods exhibit substantially lower performance in both settings. 


In Figures <ref>, <ref>, <ref>, visual comparisons of SR results for scale factor ×4  also confirm the superiority of our method. In Figure <ref> for noise-free LR images, IKR-Net achieves the best reconstruction performance for fine high-frequency details (e.g., the texture in the man's shirt and the columns of the building). DANv2s2(ft) is second best and provides slightly more blurry results than IKR-Net. Other methods exhibit blurry outcomes and/or motion artifacts.  In Figure <ref> for noisy LR images, IKR-Net shows robust visual performance, strong denoising capability with fine reconstruction of image details (e.g., the windows of the building exterior).  DASR(ft) and BSRNet also filter out the noise successfully, but BSRNet cannot remove motion blur and  DASR(ft) outputs more blurry results with some high-frequency artifacts. Also when the reconstructed kernels in Figures <ref> and <ref> are compared, it is easy to see that IKR-Net provides much more accurate kernel estimates than BISR-Net for both noise-free and noisy LR images.          

In Figure <ref>, SR results of the best performing four methods are compared for real blurry images. The images are scaled by ×4. The top two figures highlight the superior motion deblurring capability of IKR-Net. Despite being fine-tuned with motion kernels, DASR(ft) and DANv2s2(ft) cannot remove motion blur effectively. In the bottom figure, IKR-Net provides the sharpest and most noise/artifact-free result for the text image. Other methods produce slightly more blurry outcomes with shadow artifacts in some of the text characters. Therefore IKR-Net is capable of not only removing motion blur but also providing the sharpest and fine-detailed results in real-life test cases.  

In order to highlight the limitations of the proposed SR model, Figure <ref> provides a visual example in which IKR-Net fails to synthesize correctly the high-frequency details of the HR image. Aliasing artifact are visible on the ground and the texture on the wall is not correctly reconstructed. As future work, we plan to apply generative learning techniques, which are known to provide better representation of such challenging high-frequency patterns. 










 §.§ Ablation Study

This section analyzes the effects of several critical modules and parameters on the performance of IKR-Net. In particular we investigate kernel reconstruction accuracy, noise variance estimation performance, number of model iterations, the use of iterative kernel update and their affect on the SR image reconstruction performance.   

Table <ref> gives the average kernel reconstruction error for 12 tested kernels in CBSD68 dataset for scale factor × 4. The models IKR-Net, BISR-Net and FKP are compared in this table, since these three methods provide explicit kernel reconstruction. As the Table implies, and as can be seen from the visual examples in Figure <ref>, IKR-net provides significantly better kernel estimates, especially for motion kernels, which lead to better SR image reconstruction.



In Table <ref>, an ablation study is provided for the noise estimation module ℱ. IKR-Net performance is evaluated for the following cases: i) Known: the noise variance is assumed to be known; ii) Predicted: noise variance is predicted by ℱ; iii) Zero: the image is assumed to have no noise;  iv) Max:  the image is assumed to have maximum noise of 3%. Average PNSR values are provided for the three class of kernels: isotropic Gaussian, anisotropic Gaussian and motion kernels. As seen from the table, perfect knowledge of the noise variance has no effect on the average PSNR performance. The hyper-parameter estimator module  ℱ provides very accurate estimation of noise standard deviation, the estimation error being typically much less than 10% of the actual value. IKR-Net performance is also very robust against any errors in noise estimation, thereby providing almost the same performance with and without any prior knowledge of the noise variance. On the other hand, SR output quality of IKR-Net drops significantly when the noise estimation module is not used. The average loss of PSNR is about 0.5 dB  if the model assumes zero noise at the input. When maximum noise is assumed for the input image, the PSNR drop is only 0.05 dB on average. Figure  <ref> compares the visual results for Known, Predicted, Zero and Max test cases. It is clear from the figures that Zero scenario outputs a noisy SR image, while Max noise scenario over-smooths the model output. Despite little change in PNSR, maximum noise assumption produces blurry SR images, thereby reducing the visual quality. On the other hand, there is little visual difference between Predicted and Known case results in the figure.









































Iterative application of noise estimation by module ℱ and denoising by module 𝒫 is essential for producing high quality SR image outputs. In order to analyze the contribution of iterative noise estimation and denoising on the performance of the model, pre-SR and post-SR denoising approaches are tested and compared against IKR-Net. SCU-Net color image denoising model <cit.> is used for pre-SR/post-SR denoising. This model is also used in the last 4 iterations of IKR-Net as module 𝒫 in place of ResUNet (note that, only last 4 iterations are replaced due to the heavy computational complexity of SCU-Net). Hence, the model is tested under the following three settings:


  * Denoise+IKR: Denoise LR image, then apply IKR-Net without noise estimation

  * IKR+Denoise: Apply IKR-Net without noise estimation, then denoise SR image 

  * IKR with SCU-Net:  IKR-Net with noise estimation, where SCU-Net is used for denoising in the last 4 iterations
 
 The SCU-Net model is fine-tuned separately for Denoise+IKR, IKR+Denoise and IKR-Net with SCU-Net scenarios, using LR/SR images generated with IKR-Net training set. Table <ref> and Figure <ref> give the average PNSR and visual comparison of the three tested methods, respectively. Table <ref> includes the original IKR-Net model performance for reference as well. Even though average PSNR difference is about 0.1 dB, both  Denoise+IKR and IKR+Denoise methods produce visually inferior results. While IKR+Denoise generates more blurry outputs, Denoise+IKR produces SR images with left-over noise and reconstruction artifacts. IKR with SCU-Net model has similar performance to the original IKR-Net with slightly better results for motion kernels. Hence, it can be argued that  iterative denoising in IKR-Net using well-estimated noise variance is critical for generating sharp SR images that are free of noise and reconstruction artifacts.





Table <ref> compares IKR-Net performance for 16 iterative updates versus 8 iterations in scale × 4. IKR-Net model is fine-tuned for optimal accuracy in 8 iterations. The average loss of PSNR is about 0.1 dB for Gaussian kernels and 0.25 dB for motion kernels. Hence the model complexity can be reduced significantly with slight loss in SR image quality.






Table <ref> compares IKR-Net performance with and without using iterative kernel reconstruction (i.e. using kernel initializer only) in scales × 4 and × 2. The average loss of PSNR is about 0.5 dB when 𝒟k-𝒫k modules are removed. The difference in performance between the two test scenarios highlights the importance of iterative kernel refinement in order to obtain the optimal SR reconstruction quality.

Figure <ref> shows the updated SR image and kernel estimate through different iterations of IKR-Net for a noisy LR input image. The visuals highlight the iterative denoising by the SR reconstruction module. The module 𝒫 not only denoises the SR image but also corrects any reconstruction artifacts due to the inverse filtering in module 𝒟. The iterative improvement of the blur kernel estimate also proves the effectiveness of 𝒟k/𝒫k modules for kernel reconstruction.












§ CONCLUSION AND FUTURE WORK

This article has proposed a blind iterative SISR framework that can be trained end-to-end for joint reconstruction of the blur kernel and the SR image. The proposed architecture contains separate modules for kernel estimation, noise estimation and SR image reconstruction. Thanks to its modular architecture, the proposed method can generalize well on  blur kernels of various types including isotropic, anisotropic Gaussian and motion blurs. The noise and hyper-parameter estimation module can handle various levels of additive noise in the input image and provide parameters for optimal level of filtering for noise/artifact-free results with fine high-frequency details. Reconstruction errors due to initial kernel mismatches can be compensated via iterative refinement approach, resulting in superior performance when compared to the other state-of-the-art blind SR methods in terms of both qualitative and quantitative comparisons. 

In the future, we plan to extend this work by incorporating other types degradations (e.g. compression artifacts, camera noise, spatially varying blurs, etc.) into the proposed framework and training procedure. Also, other network topologies, such as attention mechanisms and transformers, will be tested for kernel estimation and SR image reconstruction. The proposed framework can be easily applied to other inverse problems in imaging, such as deblurring/denoising and medical image reconstruction / enhancement. 




















§ ACKNOWLEDGMENTS

This work is supported in part by TUBITAK Grant Project No: 119E566.

model2-names































































































