Line 1: Line 1:
== A Solution Method For Zero-Dimensional Polynomial Equation System ==
+
== A Solution Method For Zero-Dimensional Polynomial Equation System ==
  
 
'''Motivation'''  
 
'''Motivation'''  
Line 7: Line 7:
 
We first approximate the curve defined by the contour of the template object by an implicit polynomial equation. This yields a bivariate polynomial equation p(x,y) = 0 whose solution set approximates the template contour.  
 
We first approximate the curve defined by the contour of the template object by an implicit polynomial equation. This yields a bivariate polynomial equation p(x,y) = 0 whose solution set approximates the template contour.  
  
Let (x_i,y_i) , i=1, ..., N be the points of the point cloud. We are looking for the rotation R and the translation T such that p((xi, yi)R + T) = 0 for all i = 1, ..., N. Then we have an overdetermined polynomial equation system with noisy coefficient, which contains N equations and unknown variables R and T. We need to solve this overdetermined polynomial system.
+
Let (x_i,y_i) , i=1, ..., N be the points of the point cloud. We are looking for the rotation R and the translation T such that p((xi, yi)R + T) = 0 for all i = 1, ..., N. Then we have an overdetermined polynomial equation system with noisy coefficient, which contains N equations and unknown variables R and T. We need to solve this overdetermined polynomial system.  
 
</div> <div style="width: 30%; float: right;">
 
</div> <div style="width: 30%; float: right;">
 
[[Image:Butterfly model.jpg|250px]]  
 
[[Image:Butterfly model.jpg|250px]]  
</div> <div style="width: 100%; float: left;"></div>
+
</div> <div style="width: 100%; float: left;"></div>  
 +
'''Pipeline of the Solution Method''' [[Image:Schematic Rep.jpg|860px]]
  
'''Pipeline of the Solution Method'''
+
'''Algorithm'''  
[[Image:Schematic Rep.jpg|860px]]
+
  
'''Algorithm'''
+
Univariate Polynomial Equations:
  
Univariate Polynomial Equations:
+
[[Image:Algorithm Univariate.jpg|900px]]
  
[[Image:Algorithm Univariate.jpg|900px]]
+
Multivariate Polynomial Equations:  
  
Multivariate Polynomial Equations:
+
[[Image:Algorithm Multivariate.jpg|900px]]
  
[[Image:Algorithm Multivariate.jpg|900px]]
+
'''Theorems'''
  
'''Theorems'''
+
'''Numerical Results'''  
  
'''Numerical Results'''
+
Picking 20 points along the contour of the butterfly and rotating and translating these 20 points using R = [0.6 -0.8; 0.8 0.6], and T = (-1, -1). Then registering the resulting 20 points back onto the original butterfly using the proposed method. To demonstrate how the method allows us to deal with noisy observations of the template boundary, we added an increasing amount of Gaussian noise (with standard deviation between 0.01 and 0.2) to the x and y coordinates of the 20 points, repeating each experiment 10 times, and recorded the average Euclidean distance between the registered points and the original curve every time. The results are plotted below.
  
Picking 20 points along the contour of the butterfly and rotating and translating these 20 points using R = [0.6 -0.8; 0.8 0.6], and T = (-1, -1). Then registering the resulting 20 points back onto the original butterfly using the proposed method. To demonstrate how the method allows us to deal with noisy observations of the template boundary, we added an increasing amount of Gaussian noise (with standard deviation between 0.01 and 0.2) to the x and y coordinates of the 20 points, repeating each experiment 10 times, and recorded the average Euclidean distance between the registered points and the original curve every time.
+
<br>
The results are plotted below.
+
 
 +
[[Image:L2normdegree5oringinal.png|center|400px]]

Revision as of 10:05, 22 April 2010

A Solution Method For Zero-Dimensional Polynomial Equation System

Motivation

Consider the problem of curve registration, that is, finding the rotation and translation that best maps (i.e., registers) a cloud of points onto a template object, as described on the right.

We first approximate the curve defined by the contour of the template object by an implicit polynomial equation. This yields a bivariate polynomial equation p(x,y) = 0 whose solution set approximates the template contour.

Let (x_i,y_i) , i=1, ..., N be the points of the point cloud. We are looking for the rotation R and the translation T such that p((xi, yi)R + T) = 0 for all i = 1, ..., N. Then we have an overdetermined polynomial equation system with noisy coefficient, which contains N equations and unknown variables R and T. We need to solve this overdetermined polynomial system.

Butterfly model.jpg

Pipeline of the Solution Method Schematic Rep.jpg

Algorithm

Univariate Polynomial Equations:

Algorithm Univariate.jpg

Multivariate Polynomial Equations:

Algorithm Multivariate.jpg

Theorems

Numerical Results

Picking 20 points along the contour of the butterfly and rotating and translating these 20 points using R = [0.6 -0.8; 0.8 0.6], and T = (-1, -1). Then registering the resulting 20 points back onto the original butterfly using the proposed method. To demonstrate how the method allows us to deal with noisy observations of the template boundary, we added an increasing amount of Gaussian noise (with standard deviation between 0.01 and 0.2) to the x and y coordinates of the 20 points, repeating each experiment 10 times, and recorded the average Euclidean distance between the registered points and the original curve every time. The results are plotted below.


L2normdegree5oringinal.png

Alumni Liaison

To all math majors: "Mathematics is a wonderfully rich subject."

Dr. Paul Garrett