Richardson–Lucy Deconvolution
   HOME

TheInfoList



OR:

The Richardson–Lucy algorithm, also known as Lucy–Richardson deconvolution, is an iterative procedure for recovering an underlying image that has been blurred by a known
point spread function The point spread function (PSF) describes the response of a focused optical imaging system to a point source or point object. A more general term for the PSF is the system's impulse response; the PSF is the impulse response or impulse response ...
. It was named after William Richardson and
Leon B. Lucy Leon B. Lucy (1938–2018) was a British-American astrophysicist, best known for his contribution to the Richardson-Lucy deconvolution algorithm and spearheading the development of smoothed-particle hydrodynamics methods. He won the Gold Medal o ...
, who described it independently.


Description

When an image is produced using an optical system and detected using
photographic film Photographic film is a strip or sheet of transparent film base coated on one side with a gelatin photographic emulsion, emulsion containing microscopically small light-sensitive silver halide crystals. The sizes and other characteristics of the ...
, a
charge-coupled device A charge-coupled device (CCD) is an integrated circuit containing an array of linked, or coupled, capacitors. Under the control of an external circuit, each capacitor can transfer its electric charge to a neighboring capacitor. CCD sensors are a ...
or a
CMOS sensor An active-pixel sensor (APS) is an image sensor, which was invented by Peter J.W. Noble in 1968, where each pixel sensor unit cell has a photodetector (typically a pinned photodiode) and one or more active transistors. In a metal–oxide–semic ...
, for example, it is inevitably blurred, with an ideal
point source A point source is a single identifiable ''localized'' source of something. A point source has a negligible extent, distinguishing it from other source geometries. Sources are called point sources because, in mathematical modeling, these sources ...
not appearing as a point but being spread out into what is known as the point spread function. Extended sources can be decomposed into the sum of many individual point sources, thus the observed image can be represented in terms of a transition matrix p operating on an underlying image: : d_ = \sum_ p_ u_\, where u_ is the intensity of the underlying image at pixel j and d_ is the detected intensity at pixel i. In general, a matrix whose elements are p_ describes the portion of light from source pixel j that is detected in pixel i. In most good optical systems (or in general, linear systems that are described as shift invariant) the transfer function p can be expressed simply in terms of the spatial ''offset'' between the source pixel j and the observation pixel i: : p_ = P(i-j) where P(\Delta i) is called a
point spread function The point spread function (PSF) describes the response of a focused optical imaging system to a point source or point object. A more general term for the PSF is the system's impulse response; the PSF is the impulse response or impulse response ...
. In that case the above equation becomes a
convolution In mathematics (in particular, functional analysis), convolution is a operation (mathematics), mathematical operation on two function (mathematics), functions f and g that produces a third function f*g, as the integral of the product of the two ...
. This has been written for one spatial dimension, but most imaging systems are two dimensional, with the source, detected image, and point spread function all having two indices. So a two dimensional detected image is a convolution of the underlying image with a two dimensional point spread function P(\Delta x,\Delta y) plus added detection noise. In order to estimate u_j given the observed d_i and a known P(\Delta i_x,\Delta j_y), the following iterative procedure is employed in which the ''estimate'' of u_j (called \hat_^) for iteration number ''t'' is updated as follows: :\hat_^ = \hat_j^ \sum_ \fracp_ where :c_ = \sum_ p_ \hat_^ and \sum_jp_=1 is assumed. It has been shown empirically that if this iteration converges, it converges to the maximum likelihood solution for u_j. Writing this more generally for two (or more) dimensions in terms of
convolution In mathematics (in particular, functional analysis), convolution is a operation (mathematics), mathematical operation on two function (mathematics), functions f and g that produces a third function f*g, as the integral of the product of the two ...
with a point spread function P: :\hat^ = \hat^\cdot\left(\frac\otimes P^*\right) where the division and multiplication are element wise, \otimes indicates a 2D convolution, and P^* is the mirrored
point spread function The point spread function (PSF) describes the response of a focused optical imaging system to a point source or point object. A more general term for the PSF is the system's impulse response; the PSF is the impulse response or impulse response ...
, or the inverse Fourier transform of the
Hermitian transpose In mathematics, the conjugate transpose, also known as the Hermitian transpose, of an m \times n complex matrix \mathbf is an n \times m matrix obtained by transposing \mathbf and applying complex conjugation to each entry (the complex conjugate ...
of the
optical transfer function The optical transfer function (OTF) of an optical system such as a camera, microscope, human eye, or image projector, projector is a scale-dependent description of their imaging contrast. Its magnitude is the image contrast of the Sine and cosine ...
. In problems where the point spread function p_ is not known ''a priori'', a modification of the Richardson–Lucy algorithm has been proposed, in order to accomplish
blind deconvolution In electrical engineering and applied mathematics, blind deconvolution is deconvolution without explicit knowledge of the impulse response function used in the convolution. This is usually achieved by making appropriate assumptions of the input to ...
.


Derivation

In the context of fluorescence microscopy, the probability of measuring a set of number of photons (or digitalization counts proportional to detected light) \mathbf = _0, ..., m_K/math> for expected values \mathbf = _0, ..., E_K/math> for a detector with K+1 pixels is given by : P(\mathbf \vert \mathbf) = \prod_^ \mathrm(E_) = \prod_^ \frac it is convenient to work with \ln(P) since in the context of maximum likelihood estimation the aim is to locate the ''maximum'' of the likelihood function without concern for its absolute value. : \ln (P(m \vert E)) = \sum_^ \left (m_i \ln E_i - E_i) - \ln(m_i!) \right Again since \ln(m_i!) is a constant, it will not give any additional information regarding the position of the maximum, so consider : \alpha(m \vert E) = \sum_^ \left _i \ln E_i - E_i\right where \alpha is something that shares the same maximum position as P(m \vert E). Now consider that E comes from a ''ground truth'' x and a measurement \mathbf which is assumed to be linear. Then : \mathbf = \mathbf \mathbf where a matrix multiplication is implied. This can also be written in the form : E_m = \sum_^ H_ x_n where it can be seen how H, mixes or blurs the ground truth. It can also be shown that the derivative of an element of \mathbf, (E_i) with respect to some other element of x can be written as: Tip: it is easy to see this by writing a matrix \mathbf of say (5 x 5) and two arrays \mathbf and \mathbf of 5 elements and check it. This last equation can interpreted as how much ''one'' element of \mathbf, say element i influences the ''other'' elements j \neq i (and of course the case i = j is also taken into account). For example in a typical case an element of the ground truth \mathbf will influence nearby elements in \mathbf but not the very distant ones (a value of 0 is expected on those matrix elements). Now, the key and arbitrary step: x is not known but may be estimated by \hat, let's call \hat and \hat the estimated ground truths while using the RL algorithm, where the ''hat'' symbol is used to distinguish ground truth from estimator of the ground truth Where \frac stands for a K-dimensional gradient. Performing the partial derivative of \alpha(m \vert E(x)) yields the following expression : \frac = \frac \sum_^ \left _i \ln E_i - E_i\right= \sum_^ \left frac \frac E_i - \frac E_i \right= \sum_^ \frac \left frac - 1 \right By substituting () it follows that : \frac = \sum_^ H_ \left frac - 1 \right Note that ^_ = H_ by the definition of a matrix transpose. And hence Since this equation is true for all j spanning all the elements from 1 to K, these K equations may be compactly rewritten as a single vectorial equation : \frac = \left frac - \mathbf \right where \mathbf^T is a matrix and m, E and \mathbf are vectors. Now as a seemingly arbitrary but key step, let where \mathbf is a vector of ones of size K (same as m, E and x) and the division is element-wise. By using () and (), () may be rewritten as : \hat_ = \hat_ + \lambda \frac = \hat_ + \frac \left frac - \mathbf \right= \hat_ + \frac \mathbf^T \frac - \hat_ which yields Where division refers to element-wise matrix division and \mathbf^T operates as a matrix but the division and the product (implicit after \hat_) are element-wise. Also, \mathbf = E(\hat_) = \mathbf \hat_ can be calculated because since it is assumed that - The initial guess \hat_ is known (and is typically set to be the experimental data) - The ''measurement'' function \mathbf is known On the other hand \mathbf is the experimental data. Therefore, equation () applied successively, provides an algorithm to estimate our ground truth \mathbf_ by ascending (since it moves in the direction of the gradient of the likelihood) in the likelihood ''landscape''. It has not been demonstrated in this derivation that it converges and no dependence on the initial choice is shown. Note that equation () provides a way of following the direction that increases the likelihood but the choice of the log-derivative is arbitrary. On the other hand equation () introduces a way of ''weighting'' the movement from the previous step in the iteration. Note that if this term was not present in () then the algorithm would output a movement in the estimation even if \mathbf = E(\hat_). It's worth noting that the only strategy used here is to maximize the likelihood at all cost, so artifacts on the image can be introduced. It is worth noting that no prior knowledge on the shape of the ground truth \mathbf is used in this derivation.


Software

*
RawTherapee RawTherapee is a free and open source application for processing photographs in raw image formats such as those created by many digital cameras. It comprises a subset of image editing operations specifically aimed at non-destructive post-produc ...
(since v.2.3)


See also

*
Deconvolution In mathematics, deconvolution is the inverse of convolution. Both operations are used in signal processing and image processing. For example, it may be possible to recover the original signal after a filter (convolution) by using a deconvolution ...
* Wiener filter (deconvolution in the presence of additive noise)


References

{{DEFAULTSORT:Richardson-Lucy deconvolution Image processing Estimation theory