320 likes | 528 Views
Image Registration Lecture 16: View-Based Registration May 3, 2005. Prof. Charlene Tsai. Overview. Retinal image registration The Dual-Bootstrap ICP algorithm Covariance matrix Covariance propagation Model selection View-based registration Software design.
E N D
Image Registration Lecture 16: View-Based RegistrationMay 3, 2005 Prof. Charlene Tsai
Overview • Retinal image registration • The Dual-Bootstrap ICP algorithm • Covariance matrix • Covariance propagation • Model selection • View-based registration • Software design Lecture 16
Retinal Image Registration: Applications • Mosaics • Multimodal integration • Change detection Lecture 16
Mosaics Lecture 16
Multimodal Integration Lecture 16
Change Visualization Lecture 16
Retinal Image Registration - Preliminaries • Features • Transformation models • Initialization Lecture 16
Features • Vascular centerline points • Discrete locations along the vessel contours • Described in terms of pixel locations, orientations, and widths • Vascular landmarks • Pixel locations, orientations and width of vessels that meet to form landmarks landmarks vascular centerlines Lecture 16
Transformation Models Lecture 16
Initializing Registration • Form list of landmarks in each image • Form matches of one landmark from each image • The selection of these matches will be discussed in Lectures 18 and 19 • Choose matches, one at a time • For each match: • Compute an initial similarity transformation in the small image region surrounding the landmarks • Apply Dual-Bootstrap ICP procedure to see if the initial alignment can be successfully grown into an accurate, image-wide alignment • End when one match leads to success, or all matches are exhausted Lecture 16
Dual-Bootstrap - Overview Iterate until convergence • Match and refine estimate in each region • Bootstrap the model: • Low-order for small regions; • High-order for large • Automatic selection • Bootstrap the region: • Covariance propagation gives uncertainty Lecture 16
Matching and Estimation in Each Region • Matching - standard stuff: • Vascular centerline points from within current region of moving image • Mapped using current transform estimate • Find closest point using Borgefors digital distance map • Estimation: • Fix scale estimate • Run IRLS Lecture 16
Covariance Matrix of Estimate • Measures uncertainty in estimate of transformation parameters • Basis for region growth and model selection • The next few slides will give an overview of computing an approximate covariance matrix • We’ll start with linear regression Lecture 16
Problem Formulation in Linear Regression • Independent (non-random) variable values: • Dependent (random) variable values • Linear relationship based on k+1 dimensional parameter vector a: Lecture 16
Least-Squares Formulation • Least-squares error term: • Here: Lecture 16
Estimate and Covariance Matrix • Estimate: • Residual error variance (square of “scale”): • Parameter estimate covariance scatter matrix for 1st order Equation #1 Shape of the cov matrix magnitude Lecture 16
Aside: Equation #1 • How to obtain • Assuming that y is the only random variable, independent and identically distributed, with covariance • The covariance matrix of a is Lecture 16
Aside: Line Fitting in 2D • Form of the equation: • If the xi values are centered: • Then the parameters are independent with variances for the linear and constant terms, respectively Lecture 16
Hessians and Covariances • Back to k dimensions, re-consider the objective function: • Compute the Hessian matrix: • Observe the relationship Lecture 16
Hessians and Covariances • This is exact for linear regression, but serves as a good approximation for non-linear least-squares • In general, the Hessian will depend on the estimate (in regression it doesn’t because the problem is quadratic), so the approximate relationship is Lecture 16
Hessian in Registration • Recall the weighted least-squares objective function: • Keeping the correspondences and the weights fixed, where Dk gives the error of the k-th correspondence • Inverting this gives the covariance approximation. • This approximation is only good when the estimate is fairly accurate Lecture 16
Back to Dual-Bootstrap ICP • Covariance is used in two ways in each DB-ICP iteration: • Determining the region incorporates enough constraints to switch to a more complex model • Similarity => Affine => Reduced Quadratic => Quadratic • Determining the growth of the dual-bootstrap region: • More stable transformation estimates lead to faster growth Lecture 16
Model Selection • What model should be used to describe a given set of data? • Classic problem in statistics, and many methods have been proposed • Most trade-off the fitting accuracy of higher-order models with the stability (or lower complexity) of lower-order models Lecture 16
Model Selection in DB-ICP • Use correspondence set • Estimate the IRLS parameters and covariance matrices for each model in current set • For each model (with dmparameters) this generates a set of weights and errors and a covariance matrix: • Choose the model maximizing the model selection equation (derived from Bayesian modeling): • The first two terms increase with increasingly complex models; the last term decreases accuracy stability Lecture 16
Region Growth in DB-ICP • Grow each side independently • Grow is inversely proportional to uncertainty in mapping of boundary point on the center of each side • New rectangular region found from the new positions of each of the boundary points Lecture 16
Aside: Covariance Propagation and Transfer Error • Given mapping function: • We will treat Q as a random variable, but not gk • Uncertainty in Qmakes gk’ a random variable. • What then is the covariance of gk’? • We solve this using standard covariance propagation techniques: • Compute the Jacobian of the transformation, evaluated at gk: • Pre- and post-multiply to obtain the covariance of gk’ • In computer vision, this is called the “transfer error” Lecture 16
Outward Growth of a Side • Let hk be the outward normal of the side, and let rk be the distance of the side from the center of the region • Project the transfer error covariance onto hk to obtain a scalar variance sk • The outward growth (along normal hk) is • where b controls the maximum growth rate, which occurs when sk < 1 Lecture 16
Turning to the Software • A “view” is a definition or snapshot of the registration problem. • A “view” contains: • An image region (current region, plus goal region) • A current transformation estimate and estimator • A current stage (resolution) of registration • Views work in conjunction with multistage registration Lecture 16
View-Based Registration - Procedural • The following is repeated for each initial estimate • For each stage: • Do • Match • Compute weights • Estimate scale • For each model • Run IRLS to estimate parameters and covariances • Re-estimate scale • Generate next view • Choose best model • Grow region • Until region has converged and highest order model used • Prepare for next stage Lecture 16
Implementation • rgrl_view • Store the information about the view • rgrl_view_generator • Generate the next view • rgrl_view_based_registration • Mirrors rgrl_feature_based_registration with modifications based on the outline on previous slide • Example • rgrl/example/registration_retina.cxx Lecture 16
Summary • Retina registration: • Models, features and initialization • DB-ICP: • Matching, estimation and covariances • Model selection • Region growing • Generalization to view-based registration and its implementation in the toolkit. Lecture 16