A Pyramid Approach to Subpixel Registration Based on Intensity
P. Thévenaz, U.E. Ruttimann, M. Unser
IEEE Transactions on Image Processing, vol. 7, no. 1, pp. 2741, January 1998.
We present an automatic subpixel registration algorithm that minimizes the mean square difference of intensities between a reference and a test data set, which can be either tridimensional (3D) volumes or bidimensional (2D) images. It uses spline processing, is based on a coarsetofine strategy (pyramid approach), and performs minimization according to a new variation of the iterative MarquardtLevenberg algorithm for nonlinear leastsquare optimization (MLA). The geometric deformation model is a global 3D affine transformation, which one may restrict to the case of rigidbody motion (isometric scale, rotation and translation). It may also include a parameter to adjust for image contrast differences. We obtain excellent results for the registration of intramodality Positron Emission Tomography (PET) and functional Magnetic Resonance Imaging (fMRI) data. We conclude that the multiresolution refinement strategy is more robust than a comparable singlescale method, being less likely to get trapped into a false local optimum. In addition, it is also faster.
Erratum
Some conventions used in the paper were not explicit. More importantly, the adherence to these untold conventions was not consistent throughout the paper, which lead to erroneous equations. The version below makes the conventions explicit and corrects the mistakes.

Equation (3) should become
Q_{b,A,γ}{ƒ}(x) = C_{γ}{A_{A}{T_{b}{ƒ}}}(x) = C_{γ}{A_{A}{ƒ(· + b)}}(x) = C_{γ}{ƒ(A · + b)}(x) = {e^{γ} ƒ(A · + b)}(x) = e^{γ} ƒ(A x + b) 
Similarly, equation (11) should become
Q_{b,κ,φ,ϑ,ψ,γ}{ƒ}(x) = C_{γ}{R_{φ,ϑ,ψ}{S_{κ}{T_{b}{ƒ}}}}(x) = C_{γ}{R_{φ,ϑ,ψ}{S_{κ}{ƒ(· + b)}}}(x) = C_{γ}{R_{φ,ϑ,ψ}{ƒ(e^{κ} · + b)}}(x) = C_{γ}{ƒ(e^{κ} R(φ,ϑ,ψ) · + b)}(x) = {e^{γ} ƒ(e^{κ} R(φ,ϑ,ψ) · + b)}(x) = e^{γ} ƒ(e^{κ} R(φ,ϑ,ψ) x + b) 
Then, Table I should be corrected as follows:
Q_{p}{Q_{q}{ƒ}} Q_{p} T_{a} A_{A} C_{a} Q_{q} o T_{b} T_{a+b} T_{A1b}{A_{A}} T_{b}{C_{a}} A_{B} A_{B}{T_{Ba}} A_{BA} A_{B}{C_{a}} C_{b} C_{b}{T_{a}} C_{b}{A_{A}} C_{a+b} 
Table II should be corrected as follows:
Q_{p}{Q_{q}{ƒ}} Q_{p} T_{a} S_{κ′} R_{φ′,ϑ′,ψ′} C_{a} Q_{q} o T_{b} T_{eκ′b}{S_{κ′}} S_{κ″} S_{κ″}{T_{eκ″a}} S_{κ′+κ″} S_{κ″}{R_{φ′,ϑ′,ψ′}} S_{κ″}{C_{a}} R_{φ″,ϑ″,ψ″} R_{φ″,ϑ″,ψ″}{S_{κ′}} R_{φ,ϑ,ψ} C_{b} C_{b}{S_{κ′}} with R_{φ,ϑ,ψ}{ƒ}(x) = (R_{φ′,ϑ′,ψ′} o R_{φ″,ϑ″,ψ″}){ƒ}(x) = ƒ(R(φ″,ϑ″,ψ″) R(φ′,ϑ′,ψ′) x).

Equation (21) should become ε^{2} = (e^{2γ} ⁄ det(A)) C_{Δγ}{A_{I+ΔA}{T_{Δb}{ƒ_{T}}}}  C_{γ}{A_{A1}{T_{((I+ΔA)A)1b}{ƒ_{R}}}}^{2}.

Equation (22) should become ε^{2} = (e^{2(γ+Δγ)} ⁄ det((I+ΔA)A)) ƒ_{T}  C_{γΔγ}{A_{((I+ΔA)A)1}{T_{((I+ΔA)A)1(b+Δb)}{ƒ_{R}}}}^{2}.

Equation (23) should become ε^{2} = C_{γ+Δγ}{A_{(I+ΔA)A}{T_{b+Δb}{ƒ_{T}}}}  ƒ_{R}^{2}.

Equation (24) should become ε^{2} = e^{2γ3κ} C_{Δγ}{R_{Δφ,Δϑ,Δψ}{S_{Δκ}{T_{Δb}{ƒ_{T}}}}}  C_{γ}{R^{1}_{φ,ϑ,ψ}{S_{κ}{T_{(R(Δφ,Δϑ,Δψ)R(φ,ϑ,ψ))1eκΔκb}{ƒ_{R}}}}}^{2}.

Equation (25) should become ε^{2} = e^{2(γ+Δγ)3(κ+Δκ)} ƒ_{T}  C_{γΔγ}{(R_{φ,ϑ,ψ}oR_{Δφ,Δϑ,Δψ})^{1}{S_{κΔκ}{T_{(R(Δφ,Δϑ,Δψ)R(φ,ϑ,ψ))1eκΔκ(b+Δb)}{ƒ_{R}}}}}^{2}.

Equation (26) should become ε^{2} = C_{γ+Δγ}{R_{φ,ϑ,ψ}oR_{Δφ,Δϑ,Δψ}{S_{κ+Δκ}{T_{b+Δb}{ƒ_{T}}}}}  ƒ_{R}^{2}.

Page 32, second column, last paragraph, line 10, replace (R^{1}_{Δφ,Δϑ,Δψ}oR^{1}_{φ,ϑ,ψ}) by (R_{φ,ϑ,ψ}oR_{Δφ,Δϑ,Δψ})^{1}.

Equation (A.1) should become χ^{2}(p) = (e^{2γ} ⁄ det(A)) ∑_{i=1…N} (C_{Δγ}{A_{I+ΔA}{T_{Δb}{ƒ_{T}}}}(x_{i})  C_{γ}{A_{A1}{T_{((I+ΔA)A)1b}{ƒ_{R}}}}(x_{i}))^{2}.

Finally, Equation (A.2) should become
β_{k} = ½ (∂χ^{2}(p) ⁄ ∂Δp_{k}) = (e^{2γ} ⁄ det(A)) ∑_{i=1…N} (ƒ_{T}(x_{i})  C_{γ}{A_{A1}{T_{((I+ΔA)A)1b}{ƒ_{R}}}}(x_{i})) (∂Q_{Δp}{ƒ_{T}}(x_{i}) ⁄ ∂Δp_{k}).
@ARTICLE(http://bigwww.epfl.ch/publications/thevenaz9801.html, AUTHOR="Th{\'{e}}venaz, P. and Ruttimann, U.E. and Unser, M.", TITLE="A Pyramid Approach to Subpixel Registration Based on Intensity", JOURNAL="{IEEE} Transactions on Image Processing", YEAR="1998", volume="7", number="1", pages="2741", month="January", note="")