3

I was reading on wikipedia about the Lucy-Richardson algorithm and its equivalent iterative function:

$$ u^{(t+1)}=u^{(t)}\cdot \Big(\frac{d}{u^{(t)}\otimes p}\otimes \hat{p}\Big) $$

where d is the observed pixel, $u^{(t)}$ is the current iteration, $u^{(t+1)}$ is the successive iteration, p is the point spread function, and $\hat{p}$ is the flipped point spread function.

I understand, at least in an algorithmic sense, what everything is except the the flipped point spread function. Wikipedia explained it as this:

$$ \hat{p}=p_{(i-n)(j-m)}, 0\leq n, m\leq i, j $$

Again, all well and good, assuming one knows what m, n, i, and j are. In this context, i and j are the xy-coordinate of the pixel u. However, my trouble lies with m and n: what range are they on? Is any value fine as long as it's greater than 0, or less than i, respectively; or is there some relation to j or i?

Anyway, if someone could explain in general what flipping the point spread function does, and what these new variables actually mean in relation to the old ones, I'd really appreciate it.

Royi
  • 10,050
Woody1193
  • 161

1 Answers1

2

Convolution with Flipped Kernel is basically Correlation.

In MATLAB the function imfilter() has the Correlation mode of operation.
Otherwise, just use convolution operator where you flip the kernel both horizontally and vertically.

Royi
  • 10,050