\section{Introduction}

Powerful deep neural networks (DNNs) have been created and investigated for high-level computer vision tasks such as image classification~\cite{krizhevsky2012imagenet,he2016deep}, object detection~\cite{ren2015faster,redmon2017yolo9000}, and semantic segmentation~\cite{longfully} as well as for low-level computer vision tasks such as image denoising~\cite{Vincent:2010vu,burger2012image,Zhang:2017eh,Lefkimmiatis:2017ka}. 
Initially, it was challenging for DNNs to outperform powerful classical denoisers such as BM3D~\cite{burger2012image}.
However, recent works with DNNs proposed and demonstrated that it is possible for DNNs to outperform classical denoisers for synthetic Gaussian noise~\cite{Zhang:2017eh} as well as for real noise~\cite{Brooks:2019vh}. All aforementioned DNN based denoisers were trained in a supervised way with noiseless ground truth images.

Collecting high-quality noiseless images for training and evaluating DNN denoisers is challenging. Plotz and Roth collected high-quality benchmark data for denoising by averaging 19 independent noise realizations per one image~\cite{plotz2017benchmarking}. It is a painstaking process to take tens of photos for one high-resolution image of static objects and to perform post-processing to compensate for lighting changes. It seems even more challenging, time-consuming, and even expensive to collect noiseless high-quality ground truth data for slowly moving objects ($e.g.$, animals, humans), for medical imaging, and for airborne hyper-spectral imaging. Even though it is possible to take 19 pictures, it may be inevitable that such a ground truth image contains mild noise if each picture is relatively noisy. For example, an average of 19 pictures contaminated with Gaussian noise of $\sigma=25$ yields a picture with noise level of $\sigma=5.74$ assuming temporal independence of noise.
Thus, it seems desirable to have methods to deal with imperfect ground truth data ($i.e.$, mild noise in ground truth) and/or to train DNN denoisers without clean ground truth.

Recently, there have been several works on unsupervised training of DNN denoisers with noisy images only.
Deep image prior (DIP) exploited the structure of a generator network and minimized the mean-squared error (MSE) 
between the output of a DNN and a given noisy image to denoise~\cite{ulyanov2018deep}. While DIP does not train the DNN, it requires to compute MSE minimization for each noisy image, which is slower than other DNN denoisers.
Noise2Noise was proposed to train DNNs for image restoration with the set of two (independent) noise realizations per image in an unsupervised way for various noise models including Gaussian distribution and a wide range of applications including compressive sensing MR recovery~\cite{noise2noise}.
Stein’s unbiased risk estimator (SURE) based training method for Gaussian denoisers was proposed to train DNNs with a set of a single noise realization per image, but it was limited to Gaussian denoising~\cite{soltanayev2018training}. 

Both Noise2Noise and SURE based method outperformed classical denoising methods such as BM3D for synthetic Gaussian noise and they often yielded comparable performance to DNN denoisers that were trained with clean ground truth. 
Noise2Noise has demonstrated powerful performance in various image denoising and restoration tasks for zero-mean contaminations~\cite{noise2noise}.
However, it required two independent noise realizations per image empirically, while there was no theoretical explanation on 
the relationship between two noise realizations. 
Thus, it is not clear if Noise2Noise can be used for the case with a single noise realization or for the case with imperfect ground truth data.
Moreover, assuming slowly moving objects or slowly varying light conditions, there is a trade-off between 
low noise in ground truth and identical underlying true image over multiple realizations.

Even though SURE based training method is limited to Gaussian noise~\cite{soltanayev2018training}, it has a potential to be extended to more general noise models such as mixed Poisson-Gaussian model~\cite{LeMontagner:2014jd}, exponential family~\cite{Eldar:2009fga} or non-parametric model~\cite{Raphan:2007wj}. It is also extended to unsupervised learning in inverse problems~\cite{Metzler:2019gsure}.
SURE could also be more robust to the noise-blur trade-off than Noise2Noise by using a single noise realization per image for slowly moving objects.
However, SURE based method is also limited since it does not take advantage of having multiple noise realizations per image
when they are available ($e.g.$, two uncorrelated noise realizations per image for Noise2Noise, imperfect ground truth image with mild noise).
In this paper, we address the following questions: 1) can Noise2Noise deal with correlated noise realizations and imperfect ground truth? 2) can SURE be extended to take advantage of having two uncorrelated noise realizations per image as in Noise2Noise? 3) can the extended SURE handle correlated noisy images and well utilize imperfect ground truth?

Here, we propose eSURE to training deep Gaussian denoisers with correlated pairs of noise realizations per image and applied it to
the case with two uncorrelated realizations per image to achieve better performance than the original SURE based method and comparable results to Noise2Noise.
Then, we further investigated the case of training Gaussian denoisers with imperfect ground truth ($i.e.$, mild noise in ground truth) by adding synthetic noise.

For the case of adding noise to imperfect ground truth to yield correlated pairs of images, our proposed eSURE based training method outperformed
conventional SURE based method as well as Noise2Noise.

Here is the summary on the contributions of this paper:
\begin{itemize}
\item Analyzing Noise2Noise theoretically and empirically for correlated pairs of noise realizations per image.
\item Extending SURE to take advantage of having a pair of noise realizations per image for training unlike the conventional SURE that can take a single noise realization per image.
\item Investigating eSURE that exploits two independent or correlated noise realizations per image as well as that can utilize imperfect ground truth with mild noise.
\end{itemize}
We will show that there is a clear theoretical link between Noise2Noise and eSURE in a limited case of Gaussian denoising. 
In fact, it turned out that Noise2Noise is a special case of eSURE for independent Gaussian noise in theory. 
However, while the performance of Noise2Noise was degraded with correlated pairs of noisy images, the performance of the proposed eSURE remains the same. 




This paper is organized as follows: Section~\ref{theory} briefly reviews SURE, Monte-Carlo SURE (MC-SURE) and SURE based denoiser training.
Then, Section~\ref{method} revisits theoretical derivation of Noise2Noise training methods,  
 proposes an extended version of MC-SURE (called eSURE) and shows a clear link between our eSURE and Noise2Noise. 
 These are followed by experimental results to validate the effectiveness of our proposed unsupervised DNN training method in Section~\ref{results}
 for the case of having two independent realizations per image and for the case with imperfect ground truth.
Finally, Section~\ref{conclusion} draws a conclusion of this work.

\section{Background} \label{theory}
\subsection{Stein`s Unbiased Risk Estimator (SURE)}
Typically, Gaussian contaminated signal (or image) is modeled as a linear equation:
\begin{equation}
\mathbf{y} = \mathbf{x} + \mathbf{n}  
\label{eq:signal}
\end{equation}
where $\mathbf{x} \in \mathbb{R}^N$ is an unknown signal,
$\mathbf{y} \in \mathbb{R}^N$ is a known measurement,
$\mathbf{n} \in \mathbb{R}^N$ is an \textit{i.i.d.} Gaussian noise 
such that $\mathbf{n} \sim \mathcal{N} (\mathbf{0}, \sigma^2 \mathbf{I})$, and
$\mathbf{I}$ is an identity matrix. We denote $\mathbf{n} \sim \mathcal{N} (\mathbf{0}, \sigma^2 \mathbf{I})$
as $\mathbf{n} \sim \mathcal{N}_{0, \sigma^2}$.

In general, given an estmator $\mathbf{h}( \mathbf{y} )$ of $\mathbf{x}$, the SURE has the following form:
\begin{eqnarray} \label{eq:sure}
\eta (\mathbf{h}( \mathbf{y} )) =  \frac{\| \mathbf{y} - \mathbf{h} ( \mathbf{y} ) \|^2}{N}  - \sigma^2
+ \frac{2 \sigma^2}{N} \sum_{i=1}^N 
\frac{\partial \mathbf{h}_i ( \mathbf{y} )}{\partial \mathbf{y}_i }
\end{eqnarray}
Assuming $\mathbf{x}$ to be deterministic signal (or image), 
the following theorem for (\ref{eq:sure})  holds.
\begin{thm}\cite{Stein:1981vf, Blu:2007fz}
	The random variable $\eta (\mathbf{h}( \mathbf{y} ))$ is an unbiased estimator of
	\[
	\mathrm{MSE}(\mathbf{h}( \mathbf{y} )) = \frac{1}{N} \| \mathbf{x} - \mathbf{h}( \mathbf{y} ) \|^2
	\]
	or
	\begin{equation}
	\mathbb{E}_{\mathbf{n} \sim \mathcal{N}_{0, \sigma^2}} 
	\left\{ \frac{\| \mathbf{x} - \mathbf{h}( \mathbf{y} ) \|^2}{N}  \right\}
	= \mathbb{E}_{\mathbf{n} \sim \mathcal{N}_{0, \sigma^2}}  
	\left\{  \eta (\mathbf{h}( \mathbf{y} )) \right\}
	\label{eq:expectsure}
	\end{equation}
	\label{thm:sure}
	\vspace{-1em}
\end{thm}
where $\mathbb{E}_{\mathbf{n} \sim \mathcal{N}_{0, \sigma^2}}\{ \cdot \}$ is the expectation operator in terms of the random vector $\mathbf{n}$.

Although (\ref{eq:sure}) looks appealing in terms of optimizing parameters of an estimator $\mathbf{h}( \mathbf{y})$, the analytical solution for the last divergence term in  (\ref{eq:sure}) is limited only to some special cases such as the estimator $\mathbf{h}( \mathbf{y} )$ to be
non-local mean or linear filters \cite{van2009sure,van2011nonlocal}. Thus, in order to utilize (\ref{eq:sure}), 
one needs to find at least an approximate solution of the divergence term for more general cases.

\subsection{Monte-Carlo SURE (MC-SURE)}
A fast Monte-Carlo approximation of the divergence term has been developed by Ramani \textit{et al.} in \cite{Ramani:2008ij}. This method
yielded accurate unbiased estimate of MSE for many denoising methods $\mathbf{h} ( \mathbf{y} )$. 
\begin{thm} \cite{Ramani:2008ij} Let $\mathbf{\tilde{n}} \sim \mathcal{N}_{0, 1} \in \mathbb{R}^N$ 
	be independent of $\mathbf{n}$ or $\mathbf{y}$. Then,
	\begin{equation}
	\sum_{i=1}^K \frac{\partial \mathbf{h}_i ( \mathbf{y} )}{\partial \mathbf{y}_i } = 
	\lim_{\epsilon \to 0} \mathbb{E}_{\mathbf{\tilde{n}}} \left\{ \mathbf{\tilde{n}}^\mathrm{t}  
	\left(  \frac{\mathbf{h} ( \mathbf{y} + \epsilon \mathbf{\tilde{n}} ) - \mathbf{h} ( \mathbf{y} )}{\epsilon} \right)\right\}
	\end{equation}
	provided that $\mathbf{h} ( \mathbf{y} )$ admits a well-defined second-order Taylor expansion. 
	If not, this is still valid in the weak sense provided that $\mathbf{h} ( \mathbf{y} )$ is tempered.
	\label{thm:mcsure}
\end{thm}

Consequently, by applying Theorem~\ref{thm:mcsure} to the divergence term in (\ref{eq:sure}), the divergence approximation of the denoiser $\mathbf{h} ( \mathbf{y} )$
will be:
\begin{equation}
\frac{1}{N} \sum_{i=1}^N \frac{\partial \mathbf{h}_i ( \mathbf{y} )}{\partial \mathbf{y}_i } \approx
\frac{1}{\epsilon N} \mathbf{\tilde{n}}^\mathrm{T}  
\left(  \mathbf{h} ( \mathbf{y} + \epsilon \mathbf{\tilde{n}} ) - \mathbf{h} ( \mathbf{y} ) \right),
\label{eq:approx}
\end{equation}
where $\mathbf{\tilde{n}}^\mathrm{T}$ is a transposed $i.i.d$ Gaussian vector ($\mathbf{\tilde{n}} \sim \mathcal{N}_{0, 1}$) and $\epsilon$ is a fixed small positive value.

\subsection{SURE based deep denoiser training}
Recently, SURE was used as a surrogate metric to minimize the MSE between the output of the DNNs and the ground truth for unsupervised training of DNN based Gaussian  denoisers~\cite{soltanayev2018training}. Specifically, MC-SURE allows DNN to learn large-scale weights by minimizing MC-SURE with no noiseless ground truth images for Gaussian denoising. The equation (2) with (4) was reformulated for the DNN $\mathbf{h_\theta} ( \cdot )$ as follows:
\begin{eqnarray}
\eta (\boldsymbol{h_\theta}( \mathbf{y} )) = \frac{1}{M} \sum_{j=1}^M \bigg\{
\| \mathbf{y}^{(j)} - \mathbf{h_\theta} ( \mathbf{y}^{(j)} ) \|^2 -N \sigma^2 \label{eq:riskdenoiser_emp_batch_prop_mcsure} \\
+ \frac{2 \sigma^2}{\epsilon} (\mathbf{\tilde{n}}^{(j)})^\mathrm{t}  
\left(  \boldsymbol{h_\theta} ( \mathbf{y}^{(j)} + \epsilon \mathbf{\tilde{n}}^{(j)}) - \boldsymbol{h_\theta} ( \mathbf{y}^{(j)}) \right) \bigg\},
\nonumber
\end{eqnarray}
where $\boldsymbol{\theta}$ is the set of DNN denoiser parameters, $M$ is the size of mini-batch, $\epsilon$ is a small fixed positive constant, 
and $\mathbf{\tilde{n}}^{(j)}$ is a single realization from standard normal distribution for each training data $j$. 

This approach has been demonstrated to yield state-of-the-art performance in denoising task with synthetic Gaussian noise, 
yielding comparable to or slightly worse qualitative and quantitative results than 
MSE-trained DNNs. 

 
 \section{Methods} \label{method}
In this section, we first re-visit Noise2Noise method~\cite{noise2noise} and re-derive the method of Noise2Noise in a different approach from~\cite{noise2noise}.
Then, we propose to extend the original SURE and MC-SURE to deal with a pair of correlated noisy images instead of a single noisy image
and to use it for training deep learning based denoisers 
with pairs of correlated Gaussian noise realizations per image.
We also show that Noise2Noise is a special case of our proposed extended SURE for Gaussian denoising. 
Lastly, we will demonstrate that our proposed method is more robust to correlated noise realization pairs in training data set compared to a Noise2Noise method.
Our eSURE is especially useful for the case of using imperfect ground truth images with mild noise.


\subsection{Revisiting Noise2Noise}

The Noise2Noise method has been proposed to train DNNs for image processing only with noisy images where two noise realizations per image were required~\cite{noise2noise}.
Its theoretical justification required zero-mean noise, but there was no clear assumption on independence or uncorrelated property of two realizations.
However, two independent noise realizations per image were used empirically.

Assuming that the triplet $(\mathbf{x}, \mathbf{y}, \mathbf{z})$ follows a joint distribution and the expectation of two random vectors $\mathbf{y} - \mathbf{x}$, $\mathbf{z} - \mathbf{x}$ are both zero vectors, the MSE for infinite data is as follows:
\begin{eqnarray}
\mathbb{E}_{(\mathbf{x}, \mathbf{y})} 
\left\{ \| \mathbf{x} - \boldsymbol{h_\theta}( \mathbf{y} ) \|^2 \right\}  &=&
\mathbb{E}_{\mathbf{x}}  \left[ \mathbb{E}_{(\mathbf{y}, \mathbf{z}) | \mathbf{x} } 
\left\{ \| \mathbf{x} - \mathbf{z} + \mathbf{z} - \boldsymbol{h_\theta}( \mathbf{y} ) \|^2 | \mathbf{x} \right\}  \right]  \label{eq:n2nderiv} \\
&=& \mathbb{E}_{\mathbf{x}}  \left[ \mathbb{E}_{(\mathbf{y}, \mathbf{z}) | \mathbf{x}} 
\left\{ \| \mathbf{z} - \boldsymbol{h_\theta}( \mathbf{y} ) \|^2 + 2  (\mathbf{z} - \mathbf{x})^T \boldsymbol{h_\theta}( \mathbf{y} ) | \mathbf{x} \right\}  \right] + const.
\nonumber
\end{eqnarray}
Therefore, for a fixed $\mathbf{x}$, if $\mathbf{y}$ and ($\mathbf{z} - \mathbf{x}$) are uncorrelated or independent such that ($\mathbf{z} - \mathbf{x}$) has zero mean vector,
then (\ref{eq:n2nderiv}) is equivalent to the following Noise2Noise loss function in terms of $\boldsymbol\theta$:
\begin{equation}
\mathbb{E}_{(\mathbf{x}, \mathbf{y}, \mathbf{z})} \| \mathbf{z} - \boldsymbol{h_\theta}( \mathbf{y} ) \|^2.
\label{eq:n2n}
\end{equation}
Consequently, the optimal network parameters $\boldsymbol{\theta}$ of a denoiser using (\ref{eq:n2n}) will yield the same solution as the MSE based training with clean ground truth. Noise2Noise achieved outstanding performance in various image restoration tasks including Gaussian noise removal as far as there is the set of two noisy image pairs per one ground truth image~\cite{noise2noise}.

Therefore, this analysis on Noise2Noise can now predict that if there are imperfect ground truth images $\tilde{\mathbf{x}}$ with a mild noise, then denoiser training with
$\tilde{\mathbf{x}}$ plus additional synthetic noise may not be able to yield good performance comparable to the case using two independent noise realizations or using
perfect ground truth data with additional synthetic noise possibly due to non-negligible non-zero term of 
\(
\mathbb{E}_{(\mathbf{x} , \mathbf{y}, \mathbf{z})} \left\{ (\mathbf{z} - \mathbf{x})^T \boldsymbol{h_\theta}( \mathbf{y} ) \right\}
\)
in (\ref{eq:n2nderiv}).



\subsection{Extended SURE and MC-SURE}

The original SURE in (\ref{eq:sure}) works well with a single noise realization per image, but it can not take advantage of having multiple noise realizations per image just like Noise2Noise. 
Thus, we propose to extend the original SURE to be able to handle pairs of noisy images per ground truth image. The extended SURE (eSURE) can be formulated in the following way:
\begin{thm}
	Let $\mathbf{y_1} \sim \mathcal{N}(\mathbf{x}, \sigma_{\mathbf{y_1}}^2\mathbf{I})$, $\mathbf{z} \sim \mathcal{N}(\mathbf{0}, \sigma_\mathbf{z}^2\mathbf{I})$, and 
	$\mathbf{y_2} \triangleq (\mathbf{y_1} + \mathbf{z}) \sim \mathcal{N}(\mathbf{x}, (\sigma_{\mathbf{y_1}}^2 + \sigma_{\mathbf{z}}^2)\mathbf{I})$. Then, the random variable $\gamma (\boldsymbol{h_{\theta}}( \mathbf{y_2}), \mathbf{y_1})$ is an unbiased estimator of MSE:
	\[
	\mathbb{E}_{\mathbf{y_2}}   			
	\left\{ \frac{1}{N}\| \mathbf{x} - \boldsymbol{h_{\theta}}( \mathbf{y_2} ) \|^2  \right\}
	= \mathbb{E}_{\mathbf{y_2} }  			
	\left\{  \gamma (\boldsymbol{h_{\theta}}( \mathbf{y_2} ), \mathbf{y_1}) \right\}
	\label{eq:expectnewsure}
	\]
	where $\mathbf{y_1}$ and $\mathbf{z}$ are independent (or uncorrelated) and 
	\begin{eqnarray}
	\gamma (\boldsymbol{h_{\theta}}( \mathbf{y_2} ), \mathbf{y_1}) =  \frac{1}{N}\| \mathbf{y_1} 
	- \boldsymbol{h_{\theta}}( \mathbf{y_2} ) ) \|^2  - \sigma_{\mathbf{y_1}}^2 
	+ \frac{2 \sigma_{\mathbf{y_1}}^2}{N} \sum_{i=1}^N 
	\frac{\partial \mathbf{h}_i ( \mathbf{y_2} )}{\partial (\mathbf{y_2})_i }.
	\label{eq:newsure}
	\end{eqnarray}
	\label{thm:newsure}
\end{thm}

Theorem~\ref{thm:newsure} is developed for the general case where imperfect ground truth images with mild Gaussian noise are available and one needs to train the DNN for denoising images contaminated with larger noise level. Moreover, one can train DNN denoisers using the following Corollary of Theorem~\ref{thm:newsure}:
\begin{cor}
	Given a noisy realization pairs of a clean image $(\mathbf{y_3}, \mathbf{y_4})$ from the same distribution $\mathcal{N}(\mathbf{x}, \sigma_\mathbf{y}^2\mathbf{I})$, we calculate less noisy image $\mathbf{w} = \frac{1}{2}(\mathbf{y_3} + \mathbf{y_4}) \sim \mathcal{N}(\mathbf{x}, \frac{1}{2}\sigma_\mathbf{y}^2\mathbf{I})$. Then, we add $i.i.d.$ Gaussian noise 
	$\mathbf{z} \sim \mathcal{N}(\mathbf{0}, \frac{1}{2}\sigma_\mathbf{y}^2\mathbf{I})$ to $\mathbf{w}$, so that $\mathbf{v}= (\mathbf{w} + \mathbf{z}) \sim \mathcal{N}(\mathbf{x}, \sigma_\mathbf{y}^2\mathbf{I})$. Finally, by applying Theorem~\ref{thm:newsure} and replacing divergence term with its Monte-Carlo approximation (\ref{eq:approx}), one can minimize extended MC-SURE 
	with respect to $\boldsymbol{\theta}$:
	\begin{eqnarray}
	\gamma (\boldsymbol{h_{\theta}}( \mathbf{v} ), \mathbf{w}) = \frac{1}{N} 
	\| \mathbf{w} - \boldsymbol{h_\theta} ( \mathbf{v}) \|^2  \label{eq:newsure_dnn2} 
	- \frac{1}{2}\sigma_{\mathbf{y}}^2 + \frac{\sigma_{\mathbf{y}}^2}{\epsilon N} (\mathbf{\tilde{n}})^\mathrm{t}\left(  \boldsymbol{h_\theta} ( \mathbf{v} + \epsilon \mathbf{\tilde{n}}) - \boldsymbol{h_\theta} ( \mathbf{v}) \right).
	\end{eqnarray}

\end{cor}
For a training dataset of noisy $M$ pairs $\{ (\boldsymbol{y_3}^{(1)}, \boldsymbol{y_4}^{(1)}), \cdots, (\boldsymbol{y_3}^{(M)}, \boldsymbol{y_4}^{(M)}) \}$, we can generate  $\{ (\boldsymbol{w}^{(j)}, \boldsymbol{v}^{(j)}) \}, j \in [1, M]$ to train deep learning based denoisers with proposed eSURE method. In simulations, our proposed method will show better performance compared to the original MC-SURE based training approach~\cite{soltanayev2018training} for both grayscale and color image denoising. The proof of Theorem~\ref{thm:newsure} and other details can be found in the supplementary material.

\subsection{Link between eSURE and Noise2Noise}
The eSURE framework that we proposed can be applied to a pair of uncorrelated Gaussian noisy images
 ($\mathbf{y} \sim \mathcal{N}(\mathbf{x}, \sigma_{\mathbf{y}}^2)$ and $\mathbf{z} \sim \mathcal{N}(\mathbf{x}, \sigma_{\mathbf{z}}^2)$. In that case, the divergence term vanishes leaving us the following expression:
\begin{eqnarray}
\mathbb{E}_{\mathbf{z, y} }  			
\left\{  \gamma (\boldsymbol{h_{\theta}}( \mathbf{y} ), \mathbf{z}) \right\}
= \mathbb{E}_{\mathbf{z, y} }  			
\left\{ \frac{\| \mathbf{z} - \boldsymbol{h_{\theta}}( \mathbf{y} ) ) \|^2}{N} \right\} - \sigma_{\mathbf{z}}^2  
\label{eq:link}
\end{eqnarray}
From the above expression, one clearly sees that the first term corresponds to the cost function of Noise2Noise for $i.i.d.$ Gaussian noise denoising case \cite{noise2noise}, while the second term $\sigma^2_{\mathbf{z}}$ is a constant. 

Minimization of (\ref{eq:link}) with respect to a set of denoiser parameters $\boldsymbol{\theta}$ should give us the same solution for both Noise2Noise and our eSURE. Although it is not easy to notice the relationship between two different approaches from the first sight, it turns out that Noise2Noise is a special case of proposed extended MC-SURE based training method for $i.i.d.$ Gaussian denoising. A complete derivation can be found in the supplementary material.

\section{Results}

\subsection{Experimental setup}
\label{results}
We have conducted two experiments to evaluate our proposed methods. In the first experiment, we experimentally show that eSURE 
efficiently utilizes given two uncorrelated realizations per image to outperform SURE and is 
is a general case of Noise2Noise for $i.i.d.$ Gaussian noise.
Second experiment aimed to investigate the effect of noise correlation for Noise2Noise and eSURE with imperfect ground truth. 
Our proposed method was compared with 
BM3D \cite{Dabov2007fh}, DnCNN trained on MC-SURE \cite{soltanayev2018training}, and DnCNN trained with MSE using noiseless ground truth data. 

We used DnCNN \cite{Vincent:2010vu, Zhang:2017eh} as a deep denoising network for grayscale and RGB color images. DnCNN consists of 20 layers of CNN with batch normalization followed by ReLU as a non-linear function. For benchmark test images, we have chosen Berkeley's BSD-68\cite{MartinFTM01}
datasets, and widely used standard test images so called Set 12~\cite{Dabov2007fh}. All experiments were implemented on Tensorflow framework~\cite{Abadi2016} and run on NVidia Titan X GPU.

It is worth to note that $\epsilon$ in (\ref{eq:sure}) and (\ref{eq:newsure}) should be carefully chosen for stable training and high performance. As mentioned in  \cite{soltanayev2018training} and \cite{deledalle2014stein}, $\epsilon$ should be directly proportional to the noise standard deviation $\sigma$. Therefore, $\epsilon$ was fine tuned, so that for our proposed eSURE it was set to be $\epsilon = 1.6 \times 10^{-4} \times \sigma$. 


\subsection{The case with two uncorrelated noise realizations per one image} \label{link}
Given an uncorrelated two noisy realizations for each image in the training set, we trained DnCNNs with MC-SURE, Noise2Noise, and our proposed eSURE, respectively. More precisely, by following procedures described in DnCNN paper~\cite{Zhang:2017eh}, we generated 128$\times$2,919 patches with 50$\times$50 size from BSD-400~\cite{MartinFTM01} and produced two independent noisy patches (noise level range $\sigma \in [0-55]$) per clean patch. Using the aforementioned Corollary, we trained DnCNN with eSURE. It is worth to note that MC-SURE requires only a single noisy image per one ground truth in the training set compared to eSURE and Noise2Noise. Therefore, for a fair comparison, we concatenated both noisy datasets to train DnCNN-SURE with twice more data and denoted it as DnCNN-SURE*. 
DnCNN denoisers were trained for blind denoising with the noise level range of $\sigma \in [0-55]$ using Adam optimizer \cite{kinga2015method}. An initial learning rate was set to 10\textsuperscript{-3}, which was dropped to 10\textsuperscript{-4} after 40 epochs and the network was further trained for 10 more epochs. 

The performance of our approach along with the state-of- the-art methods was tabulated in Table~\ref{table:blind_gray_part1}. Our network training approach demonstrates almost identical quantitative results with Noise2Noise trained DnCNN (DnCNN-N2N) in both test sets.
These results are consistent with our theoretical understandings such as 1) eSURE efficiently utilized two uncorrelated realizations compared to SURE*, 
2) (\ref{eq:link}) holds for uncorrelated noisy training set and Noise2Noise is a special case of the extended MC-SURE. Moreover, quantitative analysis on BSD68 test set reveals that our eSURE is consistently better than conventional BM3D for about 0.5dB and outperforms DnCNN-SURE for about 0.15 dB in lower and higher noise cases. The performance gap between the proposed method, BM3D and DnCNN-SURE are still similar for Set12 test set. In addition, we can observe that minimizing MC-SURE with twice more dataset (DnCNN-SURE*) provides a little improvement, but not enough to reach DnCNN-eSURE and DnCNN-N2N.    
\begin{table}[!h]
	\caption{PSNR results of blind denoisers on BSD68 and Set12 datasets.}
	\label{table:blind_gray_part1}
	\centering
	\resizebox{\columnwidth}{!}{
		\begin{tabular}{c|ccccc|c}
			\toprule
			\multicolumn{7}{c}{BSD-68}\\
			\midrule
			Methods 		& BM3D & DnCNN-SURE & DnCNN-SURE* & DnCNN-N2N & DnCNN-eSURE & DnCNN-MSE\\
			\midrule
			$\sigma = 25$ &28.56 & 28.92  & 29.00  & \bf{29.08} & \bf{29.08} & 29.20\\
			$\sigma = 50$ &25.62  & 26.00  & 26.07 & 26.13       &\bf{26.15}  & 26.22\\
			\midrule
			\multicolumn{7}{c}{Set 12}\\
			\midrule
			$\sigma = 25$ &29.97  & 30.04  &30.13 & 30.30 & \bf{30.31} & 30.42 \\
			$\sigma = 50$ &26.67  & 26.87  &26.97 & \bf{27.07}   &\bf{27.07}   & 27.16\\
			\midrule
			Noisy dataset	& - & 1  & 2  & 2 & 2 & $\infty$ \\
			\bottomrule
	\end{tabular}}
\end{table}

In terms of visual comparison, our proposed eSURE method effectively removed noise from an image, while preserving texture and edges. In Figure \ref{fig-dncnn_sigma50}, conventional BM3D yielded blurry results. A similar trend is observed for DnCNN-SURE where details of the denoised test image from BSD68 were not fully recovered (see Figure \ref{fig-dncnn_sigma50}). Also one may be able to observe visually similar denoising performance for DnCNN-N2N and our method.


\begin{figure}[ht]
	\centering    
	\subfigure[Ground Truth]    		       		 {\includegraphics[width=27mm]{./results/gray_true/clean_sigma50.png}}		\subfigure[BM3D / 25.40 dB] 			 		{\includegraphics[width=27mm]{./results/gray_true/bm3d_sigma50.png}}
	\subfigure[SURE / 25.83 dB] 			  		{\includegraphics[width=27mm]{./results/gray_true/sure_sigma50.png}}
	\subfigure[N2N / \bf{26.01} dB]    				{\includegraphics[width=27mm]{./results/gray_true/n2n_sigma50.png}}
	\subfigure[Ours / \bf{26.01} dB]         	    {\includegraphics[width=27mm]{./results/gray_true/newsure_sigma50.png}}
	\caption{Denoised test (BSD68) results of BM3D, DnCNN trained with various methods for $\sigma=50$.}
	\label{fig-dncnn_sigma50}
\end{figure}

To sum up, it was experimentally shown that for two uncorrelated noise realizations of noisy training set, DnCNN-eSURE and DnCNN-N2N yield almost identical performance. Also, since  eSURE uses less noisy data for training (see Corollary), it better approximates MSE and accordingly outperforms MC-SURE yielding results 
that are closer to MSE trained DnCNN. 

\subsection{The case with two correlated noise realizations per one image: imperfect ground truth}

In many practical applications, collecting noiseless ground truth images is challenging, expensive, or even infeasible because of camera/object motion and long exposure time. Thus, we may have a limited number of photo shots of a particular scene and by averaging them, we have a ground truth where small amount of noise still remained. Adding synthetic noise to imperfect ground truth to produce noisy images for DNN training produces a dataset where the noise in noisy image may be correlated with the noise in the ground truth. In order to investigate how correlated noise affects our eSURE, Noise2Noise, and original SURE, we have conducted 2 experiments: DnCNN denoisers were trained for a fixed noise level for denoising (e.g. $\sigma_{noisy}=25, 50$) on grayscale BSD-400 and for a blind noise ($\sigma_{noisy} \in [\sigma_{gt}-55]$) on color BSD-432~\cite{MartinFTM01}.

We simulated the case with imperfect ground truth images (or slightly noisy ground truth), by adding synthetic Gaussian noise with $\sigma_{gt}$ to the noiseless clean oracle images. Consequently, noisy training images  were generated by adding $i.i.d.$ Gaussian noise on the top of the imperfect ground truth dataset. Following the same procedures in Section~\ref{link}, 128$\times$2,919 patches with 50$\times$50 size for grayscale and 128$\times$2,019 patches for RGB case were generated. DnCNN denoisers were trained using Adam optimizer \cite{kinga2015method}. The initial learning rate was set to 10\textsuperscript{-3}, which was dropped to 10\textsuperscript{-4} after 40 epochs and the network further trained for 10 more epochs. 

\begin{table}[!h]
	\caption{Results of denoising methods on BSD68 and Set 12 datasets (Performance in dB).}
	\label{table:fixed_gray_part2}
	\centering

	\begin{tabular}{l|ccc|cccc}
		\toprule
		\multicolumn{8}{c}{BSD-68} \\
		\midrule
		$\sigma_{noisy}$  & \multicolumn{3}{c}{25} \vline & \multicolumn{4}{c}{50}   \\
		\midrule
		$\sigma_{gt}$ 		 &  1 & 5 & 10 &  1 & 5 & 10 & 20									\\
		\midrule
		BM3D 					  & \multicolumn{3}{c}{28.56} \vline & \multicolumn{4}{c}{25.62} \\ 					
		DnCNN-SURE		  & 29.05 &	29.01 &	29.02 &	25.95 &	25.97 &	25.90 &	25.92 \\
		DnCNN-N2N		   & 29.23 & 29.15 & 28.37 & \bf{26.28} & 26.24 & 25.91	&24.69 \\
		DnCNN-eSURE 	&\bf{29.23}	&\bf{29.23}	&\bf{29.21}	&26.27	&\bf{26.24}	&\bf{26.27}	&\bf{26.25} \\
		\midrule
		DnCNN-MSE		& \multicolumn{3}{c}{29.23} \vline & \multicolumn{4}{c}{26.28} \\ 												
		\midrule
		\multicolumn{8}{c}{Set 12} \\
		\midrule
		BM3D 					 & \multicolumn{3}{c}{29.97} \vline & \multicolumn{4}{c}{26.67} \\ 	
		DnCNN-SURE		 & 30.23 &	30.19 &	30.19 &	26.77 &	26.85 &	26.73 &	26.74 \\ 
		DnCNN-N2N		 & 30.41 &	30.39 &	29.46 &	\bf{27.28} &	27.20 &	27.08 &	25.39 \\
		DnCNN-eSURE    &\bf{30.47} &	\bf{30.48} &	\bf{30.44} & 27.27&	\bf{27.27} &	\bf{27.25}&	\bf{27.23} \\
		\midrule
		DnCNN-MSE 		& \multicolumn{3}{c}{30.47} \vline & \multicolumn{4}{c}{27.28} \\ 				
		\bottomrule
	\end{tabular
\end{table}

\begin{table}[!h]
	\caption{Results of denoising methods on RGB color BSD68 dataset(Performance in dB).}
	\label{table:blind_rgb_part2}
	\centering

	\begin{tabular}{l|ccc|cccc}
		\toprule
		\multicolumn{8}{c}{RGB BSD-68} \\
		\midrule
		$\sigma_{noisy}$  & \multicolumn{3}{c}{25} \vline & \multicolumn{4}{c}{50}   \\
		\midrule
		$\sigma_{gt}$ 		 &  1 & 5 & 10 & 1 & 5 & 10 & 20									\\
		\midrule
		CBM3D 					  & \multicolumn{3}{c} {30.70} \vline & \multicolumn{4}{c}{27.38} \\ 					
		CDnCNN-SURE		  &30.97	    &30.98			  &30.99   			&27.63	   			 &27.68			   &27.64		 	 &27.63 \\
		CDnCNN-N2N		   &31.18  		  &31.08     		&29.83     		  &27.89			   &27.87			 &27.61   		    &25.62 \\
		CDnCNN-eSURE 	 &\bf{31.20} &\bf{31.18}	 &\bf{31.19}   	  &\bf{27.94}		&\bf{27.91}	    &\bf{27.90}     &\bf{27.78} \\
		\midrule
		DnCNN-MSE			& \multicolumn{3}{c}{31.20} \vline & \multicolumn{4}{c}{27.93} \\ 														
		\bottomrule
	\end{tabular
\end{table}

\begin{figure}[!t]
	\centering    
	\subfigure[Ground Truth]    		       		 {\includegraphics[width=46mm]{./results/rgb_gt5_25/gt.png}}		
	\subfigure[Noisy / 20.68 dB]        			 {\includegraphics[width=46mm]{./results/rgb_gt5_25/noisy.png}}
	\subfigure[BM3D / 30.82 dB] 			 	   {\includegraphics[width=46mm]{./results/rgb_gt5_25/cbm3d.png}}
	\subfigure[SURE / 30.90 dB] 			  		{\includegraphics[width=46mm]{./results/rgb_gt5_25/sure.png}}
	\subfigure[N2N /29.89 dB]    				     {\includegraphics[width=46mm]{./results/rgb_gt5_25/n2n.png}}
	\subfigure[Ours / \bf{31.17} dB]         	    {\includegraphics[width=46mm]{./results/rgb_gt5_25/esure.png}}
	\caption{CBM3D and CDnCNN results on test image from BSD-68 with noise $\sigma=25$. CDnCNN trained with imperfect ground truth with $\sigma_{gt} = 10$ for blind noise denoising task using various approaches. }
	\label{fig-dncnn_rgb_sigma50}
	
\end{figure}

Table~\ref{table:fixed_gray_part2} shows the performance of denoising methods trained for a fixed noise given a noisy ground-truth images with $\sigma_{gt} = \{1, 5, 10, 20\}$. The higher the $\sigma_{gt}$ is, the more correlated noise is in a training set. We notice that at low level of ground-truth noise ($\sigma_{gt}=1$), both Noise2Noise (DnCNN-N2N) and eSURE (DnCNN-eSURE) yield the best PSNR results and even comparable to the DnCNN-MSE. However, as noise correlation gets severe ($\sigma_{gt}=5, 10$), Noise2Noise fails to achieve high performance that is consistent with our theoretical derivation. 
In contrast, the proposed DnCNN eSURE produces the best quantitative results in a stable manner. Although, DnCNN-SURE is not susceptible to noise correlation, it still yielded worse performance than
DnCNN-eSURE.   

The experimental results for RGB color image denoising case are tabulated in Table~\ref{table:blind_rgb_part2}. In this case, we observe the same performance degradation pattern of DnCNN-N2N as the noise in ground truth image increases (more results in the supplementary material). The visual assessment of methods also demonstrates that eSURE trained DnCNN was able to provide high-quality images with preserved texture and color. Moreover, we can see from Figure~\ref{fig-dncnn_rgb_sigma50} that denoised output image of CBM3D is highly smoothed out and DnCNN-N2N recovered image still have some noise, while our eSURE denoised image shows sharp edges with almost no noise.   

\section{Conclusion} \label{conclusion}
We have investigated properties of Noise2Noise and proposed eSURE that extended the original SURE to handle correlated pairs of noisy images efficiently
for training DNN denoisers. For two uncorrelated noisy realizations per image, eSURE yielded better performance than SURE that implies efficient utilization of 
two uncorrelated noisy realizations as compared to SURE and SURE*. Our eSURE also yielded comparable performance to Noise2Noise that is consistent with our theoretical analysis.
For two correlated noisy realizations per image or imperfect ground truth, eSURE still yielded the best performance among all compared methods such as
BM3D, SURE, and Noise2Noise. However, Noise2Noise did not yield good performance with correlated noisy realizations as predicted based on our theoretical analysis.


	\section*{Acknowledgments}
	
	This work was supported partly by 
	Basic Science Research Program through the National Research Foundation of Korea(NRF) 
	funded by the Ministry of Education(NRF-2017R1D1A1B05035810),
	the Technology Innovation Program or Industrial Strategic Technology Development Program 
	(10077533, Development of robotic manipulation algorithm for grasping/assembling 
	with the machine learning using visual and tactile sensing information) 
	funded by the Ministry of Trade, Industry \& Energy (MOTIE, Korea), and a grant of the Korea Health Technology R\&D Project 
	through the Korea Health Industry Development Institute (KHIDI), 
	funded by the Ministry of Health \& Welfare, Republic of Korea (grant number: HI18C0316).
	

\small
\bibliographystyle{unsrt}
