550 likes | 814 Views
P. Brigger , J. Hoeg , and M. Unser Presented by Yu- Tseh Chi. B- Spline Snake : A Flexible Tool for Parametric Contour Detection. Snake revisited B- Spline curve B-Snake B- Spline Snake Cubic B- Spline snake = Snake Implicit smoothness constraints Results and Discussion
E N D
P. Brigger, J. Hoeg, and M. Unser Presented by Yu-Tseh Chi B-Spline Snake: A Flexible Tool for Parametric Contour Detection
Snake revisited • B-Spline curve • B-Snake • B-Spline Snake • Cubic B-Spline snake = Snake • Implicit smoothness constraints • Results and Discussion • Conclusion Outlines
An energy minimizing parametric curve guided by external and internal forces. Internal energy enforce the continuity constraint. α |s’|2 + β |s’’|2 Snake
External energy (data term) attracts the curve to the image features such as edges and corners. Snake
Slow convergence due to large number of coefficients Difficulty in determining weights associated with smoothness constraints Eint = α |s’|2 + β |s’’|2 Description of the curve by a finite set of disconnected points. High-order derivatives on the discrete curve may not be accurate in noisy environments. Disadvantage of Snake
Snake revisited • B-Spline curve • B-Snake • B-Spline Snake • Cubic B-Spline snake = Snake • Implicit smoothness constraints • Results and Discussion • Conclusion Outlines
A piece-wise polynomial defined by Ci : control points : basis function of degree d B-Spline Curve C1 C2 C4 C0 C3 C5
uiare called knot values Number of knot values =Number of ctrl pts + degree +1 Basis function C1 C2 C4 C0 C3 C5
Different ratios between knot intervals define different curve For a degree 3 B-Spline curve with 5 control points: u1=[0 1 2 3 4 5 6 7 8] andu2=[0 2 4 6 8 10 12 14 16] define the same curve. Basis Function
Basis function C1 C2 C4 C0 C3 C5
Important properties • Defined by only few parameters • Cd-1 continuityA degree 3 B-Spline curve is C2continuousDuplicate knot values decrease continuity by 1 B-Spline curve C0C1C2C3C4C5 C1 C2 C4 C0 C3 C5
Important properties • Defined by only few parameters • Cd-1 continuityA degree 3 B-Spline curve is C2continuousDuplicate knot values decrease continuity by 1 B-Spline curve C0C1C2C3C4C5
Important properties • Defined by only few parameters • Cd-1 continuity • Locality B-Spline curve C0C1C2C3C4C5
For a degree d B-Spline curve, add d duplicate control points in the end. Add knot values according. Closed Curve C8 C2 C1 C7 C3 C4 C0 C5 C6
Snake revisited • B-Spline curve • B-Snake • B-Spline Snake • Cubic B-Spline snake = Snake • Implicit smoothness constraints • Results and Discussion • Conclusion Outlines
Slow convergence due to large number of coefficients Difficulty in determining weights associated with smoothness constraints Eint = α |s’|2 + β |s’’|2 Description of the curve by a finite set of disconnected points. High-order derivatives on the discrete curve may not be accurate in noisy environments. Disadvantage of Snake
Proposed by Medioni et. al. • Curve is replaced by its B-Spline approximation • Advantages of this formulation • Local Control • Continuity • Less points to apply optimization B-Snake
Energy function of B-Snake • is the derivative of the basis function = • F(S(u))is the data term as defined in the orginal Snake.
Calculate the ctrl points based on some points sampled from the user-defined curve. Update the ctrl pointsCik+1= Cik + η*∂E/ ∂Cik algorithm
Does not take advantage of the implicit smoothness constraint of B-Spline curve. Still have the regularization term explicitly Disadvantage of B-Snake
Snake revisited • B-Spline curve • B-Snake • B-Spline Snake • Cubic B-Spline snake = Snake • Implicit smoothness constraints • Results and Discussion • Conclusion Outlines
Proposed by Unser et. al. Same formulation as B-SnakeUsing to outline contour in an image. B-Spline Snake
Optimal solution for Snake (a curvature-constrained E ) is a cubic spline. Specify initial contour by node points of a B-spline curve instead of control points. Enforce smoothness constraint implicitly. Improve speed and robutsness by using a multi-resolution scheme. Contributions
Similar formulation to the one of Snake S* is the optimal solution V is the data term. S(k) some points on the curve S(u) 2nd term is the smoothness constraint. Snake = cubic spline
Define Sint(u)is the cubic spline interpolation of the Snake S(u) and Sint(ui)=S(ui) Above equation can be rewritten as Snake = cubic spline
Using first integral equation, 2nd term can be rewritten as Snake = Cubic Spline
S* is the optimal solution s.t. the energy function is minimized. The energy function can be minimized if and only if the 3rd term is minimized. Snake = Cubic Spline
By intergrading twice, S(u) – Sint(u) = au+b Because of the interpolation condition S(ui) = Sint(ui) , a = 0 and b=0 S(u) = Sint(u) Snake = Cubic Spline
Another way to prove it Take the Euler-Lagrange of the 2nd term. S(u) is a cubic spline. All Splines can be represented by a B-Spline. The optimal solution for Snake is a cubic B-Spline Snake = Cubic Spline
Optimal solution for Snake (a curvature-constrained E ) is a cubic spline. Specify initial contour by node points of a B-spline curve instead of control points. Enforce smoothness constraint implicitly. Improve speed and robutsness by using a multi-resolution scheme. Contributions
Provide more intuitive user interaction. Specify a B-spline curve from user defined node points. Nodes Points
Node points are points on the B-SplineS(u) where u = ui ( are knot values of the B-Spline) To calculate ctrl points based on given node points, we use Node Points Control points Node Points when u =ui N = B*C C=B-1*N
Optimal solution for Snake (a curvature-constrained E ) is a cubic spline. Specify initial contour by node points of a B-spline curve instead of control points. Impose smoothness constraint implicitly. Improve speed and robutsness by using a multi-resolution scheme. Contributions
2nd term is the smoothness constraint. Ignore 2nd term, by introducing smoothness factor h. Implicit Smoothness Constraint
Original parameterization with u =[0 1 2 3 …. N+3] We sample points S(ui) on the curve to do the optimization. Implicit Smoothness Constraint
New parameterization with u =[0 1h 2h …. (N+3)h] Sample points on S(u) where u is a integer h decides how dense we want to sample from the curve Implicit Smoothness Constraint h=1 h=2 h=4 h=8
h acts as the regularization factor in Snake. Implicit Smoothness Constraint
h acts as the regularization factor in Snake. Implicit Smoothness Constraint
Optimal solution for Snake (a curvature-constrained E ) is a cubic spline. Specify initial contour by node points of a B-spline curve instead of control points. Impose smoothness constraint implicitly. Improve speed and robutsness by using a multi-resolution scheme. Contributions
Used in many Research topic. Image pyramid scheme. To increase speed and prevent local minimum. Multi-Resolution scheme
Energy function g(S(i)) is the external potential function . Smoothed gradient of the input image. Φ is a smoothing kernel (Guassian) Energy Formulation
Use steepest descent algorithm to obtain new control points.
Snake revisited • B-Spline curve • B-Snake • B-Spline Snake • Cubic B-Spline snake = Snake • Implicit smoothness constraints • Results and Discussion • Conclusion Outlines
Snake revisited • B-Spline curve • B-Snake • B-Spline Snake • Cubic B-Spline snake = Snake • Implicit smoothness constraints • Results and Discussion • Conclusion Outlines
Snake = cubic B-spline Improvement of optimization speed by introducing # of free parameters of Snake curve. Intuitive user-interaction. Conclusions