Segmentation Using Active Contour Model and Tomlab
description
Transcript of Segmentation Using Active Contour Model and Tomlab
![Page 1: Segmentation Using Active Contour Model and Tomlab](https://reader033.fdocuments.in/reader033/viewer/2022061607/5681398d550346895da122d3/html5/thumbnails/1.jpg)
Segmentation Using Active Contour Model and Tomlab
By: Dalei Wang29/04/2003
![Page 2: Segmentation Using Active Contour Model and Tomlab](https://reader033.fdocuments.in/reader033/viewer/2022061607/5681398d550346895da122d3/html5/thumbnails/2.jpg)
Content Introduction Mathematical definition of active
contour, and its energies Program design and operation Performance and issues What to be done next
![Page 3: Segmentation Using Active Contour Model and Tomlab](https://reader033.fdocuments.in/reader033/viewer/2022061607/5681398d550346895da122d3/html5/thumbnails/3.jpg)
The Project Started out as an investigation of
how the interior point optimization algorithm applies to segmentation
Popular segmentation algorithms: Euler-Lagrange, Dynamic Program-ming, Greedy Algorithm
![Page 4: Segmentation Using Active Contour Model and Tomlab](https://reader033.fdocuments.in/reader033/viewer/2022061607/5681398d550346895da122d3/html5/thumbnails/4.jpg)
The Project Objectives: Design or find an interior
point optimization algorithm. Design a self contained segmentation program based on interior point method.
Later realized that interior point algorithms mostly apply to linear constrained problems, unsuitable for energy minimization
![Page 5: Segmentation Using Active Contour Model and Tomlab](https://reader033.fdocuments.in/reader033/viewer/2022061607/5681398d550346895da122d3/html5/thumbnails/5.jpg)
The Project Interior point method for non-linear
programming exists but resources are scarce and beyond my current level
Finally decided to use an “off the shelf” optimization program: Tomlab toolbox
Tomlab will include an interior point solver soon
![Page 6: Segmentation Using Active Contour Model and Tomlab](https://reader033.fdocuments.in/reader033/viewer/2022061607/5681398d550346895da122d3/html5/thumbnails/6.jpg)
Mathematical Definition of Snake Energies Active Contour Model, a.k.a. Snake,
developed by Kass et al. in 1987 An ordered set of snaxels{p1, p2,… pn}
defined on a bounded two dimensional space [1]
A snake is defined so as to possess certain energy
Energy conveniently defined so to reach minimum at boundary of objects [1,2]
![Page 7: Segmentation Using Active Contour Model and Tomlab](https://reader033.fdocuments.in/reader033/viewer/2022061607/5681398d550346895da122d3/html5/thumbnails/7.jpg)
Mathematical Definition of Snake Energies: Internal
The internal energy controls the elasticity and stiffness of the snake
Grants resistance to pulling and bending
Smoothness constraints: If no external force present the snake will be circular
![Page 8: Segmentation Using Active Contour Model and Tomlab](https://reader033.fdocuments.in/reader033/viewer/2022061607/5681398d550346895da122d3/html5/thumbnails/8.jpg)
Mathematical definition of snake energies: Internal Mathematically, internal energy is
defined as dv/ds2+d2v/ds2v(s) is snake curve parametrically defined in terms of s, the curve length
Must be discretized for the snake is not continuous, but defined as a set of points
Discretized, the internal energy of ith
snaxel is:
Eint(vi)=||vi-vi-1||2 +||vi-1-2vi-vi+1||
2
![Page 9: Segmentation Using Active Contour Model and Tomlab](https://reader033.fdocuments.in/reader033/viewer/2022061607/5681398d550346895da122d3/html5/thumbnails/9.jpg)
Mathematical definition of snake energies: Internal Total internal energy of a snake is
the sum of all internal energies of individual snaxels.
Can be expressed as: [x y]A[xt yt]t, where x=[x1 x2 x3..xn] and y=[y1 y2 y3..yn] and A is and n by n matrix whose elements are expressed in terms of and .
![Page 10: Segmentation Using Active Contour Model and Tomlab](https://reader033.fdocuments.in/reader033/viewer/2022061607/5681398d550346895da122d3/html5/thumbnails/10.jpg)
Mathematical definition of snake energies: External The external energy depends only
on the property of the image Let z=I(x, y) be the image
function, x, y are axes, z is 8 bit grey scale.
Alternate definition depending on the type of image and the object one wants to extract
![Page 11: Segmentation Using Active Contour Model and Tomlab](https://reader033.fdocuments.in/reader033/viewer/2022061607/5681398d550346895da122d3/html5/thumbnails/11.jpg)
Mathematical definition of snake energies: External For prostate ultra-sound images
(noisy, non-homogeneous background,boundary not clearly defined) the external energy is:
2||),(|| ii yxI
![Page 12: Segmentation Using Active Contour Model and Tomlab](https://reader033.fdocuments.in/reader033/viewer/2022061607/5681398d550346895da122d3/html5/thumbnails/12.jpg)
Mathematical definition of snake energies: External
The gradient magnitude of prostate image •This is the plot of
the x components of image gradient
•The magnitude of gradient is strong near edge of prostate…
•…But also at false minima(noises)
![Page 13: Segmentation Using Active Contour Model and Tomlab](https://reader033.fdocuments.in/reader033/viewer/2022061607/5681398d550346895da122d3/html5/thumbnails/13.jpg)
Mathematical definition of snake energies: External
This is the plot of Y gradient component
![Page 14: Segmentation Using Active Contour Model and Tomlab](https://reader033.fdocuments.in/reader033/viewer/2022061607/5681398d550346895da122d3/html5/thumbnails/14.jpg)
Mathematical definition of snake energies Minimizing the total snake energy
is therefore an unconstrained (but bounded) non-linear (due to the non-linearity of image function) programming problem
There is an unconstrained non-linear routine in Tomlab: ucSolve
![Page 15: Segmentation Using Active Contour Model and Tomlab](https://reader033.fdocuments.in/reader033/viewer/2022061607/5681398d550346895da122d3/html5/thumbnails/15.jpg)
Program Design and Operation Snake initialization: A function
allows the user to select points on the prostate image
For optimal results, one should select about 10 points
The program automatically interpolates along the curve and samples about 50 points
![Page 16: Segmentation Using Active Contour Model and Tomlab](https://reader033.fdocuments.in/reader033/viewer/2022061607/5681398d550346895da122d3/html5/thumbnails/16.jpg)
Program Design and Operation Problem definition: In order to define the
problem in Tomlab format, the following data is stored in global variable: image, gradient matrices of the image, matrix used in computing internal energy
It is important for them to be calculated only once. They are needed for energy calculation, which is evaluated about 3000~5000 times per run
![Page 17: Segmentation Using Active Contour Model and Tomlab](https://reader033.fdocuments.in/reader033/viewer/2022061607/5681398d550346895da122d3/html5/thumbnails/17.jpg)
Program Design and Operation
Another design issue: It is possible for some images to cause most or all snaxels to cluster to a region of the prostate edge, leaving a large gaps between some neighboring snaxels
![Page 18: Segmentation Using Active Contour Model and Tomlab](https://reader033.fdocuments.in/reader033/viewer/2022061607/5681398d550346895da122d3/html5/thumbnails/18.jpg)
Program Design and Operation
Solution: Interpolating along the snake curve at each iteration and sample snaxels at equal intervals along the curve length
![Page 19: Segmentation Using Active Contour Model and Tomlab](https://reader033.fdocuments.in/reader033/viewer/2022061607/5681398d550346895da122d3/html5/thumbnails/19.jpg)
A Typical Output
0 50 100 150 200 250 300 350 400 450 5000
50
100
150
200
250
300
350
400
![Page 20: Segmentation Using Active Contour Model and Tomlab](https://reader033.fdocuments.in/reader033/viewer/2022061607/5681398d550346895da122d3/html5/thumbnails/20.jpg)
A Typical Output The blue curve is initial snake, the
red is the final Solution found in 32.35 seconds
and 10 iterations (tested on Pentium III 1GHZ 384 MB Ram)
This result does reflect typical time cost
![Page 21: Segmentation Using Active Contour Model and Tomlab](https://reader033.fdocuments.in/reader033/viewer/2022061607/5681398d550346895da122d3/html5/thumbnails/21.jpg)
Issues Snakes as defined by Kass et al. has
some intrinsic short comings: Extreme sensitivity to parameters Extreme sensitivity to initialization Inability to displace far from original
position due to weak external force fields away from edges
Will NOT converge into concavities
![Page 22: Segmentation Using Active Contour Model and Tomlab](https://reader033.fdocuments.in/reader033/viewer/2022061607/5681398d550346895da122d3/html5/thumbnails/22.jpg)
Example of Poor Initialization
0 50 100 150 200 250 300 350 400 450 5000
50
100
150
200
250
300
350
400
![Page 23: Segmentation Using Active Contour Model and Tomlab](https://reader033.fdocuments.in/reader033/viewer/2022061607/5681398d550346895da122d3/html5/thumbnails/23.jpg)
Sensitivity to Parameters
0 50 100 150 200 250 300 350 400 450 5000
50
100
150
200
250
300
350
400
![Page 24: Segmentation Using Active Contour Model and Tomlab](https://reader033.fdocuments.in/reader033/viewer/2022061607/5681398d550346895da122d3/html5/thumbnails/24.jpg)
What’s Still to Be Done Performance analysis: Compute
how close the final snake is to real contour. Compare with other algorithms
Solve the problem again with interior point solver when it comes out
![Page 25: Segmentation Using Active Contour Model and Tomlab](https://reader033.fdocuments.in/reader033/viewer/2022061607/5681398d550346895da122d3/html5/thumbnails/25.jpg)
Bibliography [1] K. F. Lai, “Deformable Contours:
Modeling, Extraction, Detection and Classiication”, University of Wisconsin-Madison, 1994
[2] A. Amini, T.Weymouth, and R. Jain, “Using Dynamic Programming for Solving Variational Problems in Vision”, in IEEE Transaction On Pattern Analysis And Machine Intelligence, Vol.12 No.9, September 1990
![Page 26: Segmentation Using Active Contour Model and Tomlab](https://reader033.fdocuments.in/reader033/viewer/2022061607/5681398d550346895da122d3/html5/thumbnails/26.jpg)
Bibliography [3] L. Zhang, “Active Contour Model,
Snake”, Department of Computer Science, University of evade, Reno
[4] K.Holmstrom.”TOMLAB -An Environment for Solving Optimization Problems in Matlab.” In M.Olsson,editor,Proceedings for the Nordic Matlab Conference ’97,October 27-28 ,Stock-holm, Sweden,1997.Computer Solutions Europe AB.
![Page 27: Segmentation Using Active Contour Model and Tomlab](https://reader033.fdocuments.in/reader033/viewer/2022061607/5681398d550346895da122d3/html5/thumbnails/27.jpg)
Thanks Prof. Salama Prof. Freeman Prof. Vanelli Jessie Shen Bernard Chiu