regress_contours_xld
— Calculate the parameters of a regression line to an XLD contour.
regress_contours_xld(Contours : RegressContours : Mode, Iterations : )
regress_contours_xld
calculates the following parameters
for the input XLD contours Contours
, and stores them with
the resulting contours as global attributes:
the coordinates of the normal vector of the regression line, i.e., the least-squares approximating line, of all contour points; the normal vector always points from the origin to the line (attributes: 'regr_norm_row' , 'regr_norm_col' ),
the mean of the Euclidian distance of the contour points from the regression line (attribute: 'regr_mean_dist' ),
the standard deviation of these distances to the regression line (attribute: 'regr_dev_dist' ),
the distance of the regression line from the origin (attribute: 'regr_dist' ).
See get_contour_global_attrib_xld
for further information about
global contour attributes.
For Mode
= 'no' , the parameters of the
regression line are calculated for all points of the contour. In
addition, three different kinds of outlier treatment can be
applied. Outliers are contour points which do not lie on the
general contour direction in an “obvious” manner, and thus
“distort” the resulting regression line.
Mode
=
'drop': All contour points further away from the contour than the mean distance to the regression line are ignored for the calculation of the undistorted regression line.
'gauss': The distances of the contour points are weighted according to their probability of occurrence in a Gaussian distribution around the normal regression line.
'median': Here, also a normal distribution is assumed for the distances to the normal regression line, however with the outlier-independent standard deviation {median(all dist.)}over(0.6745). Again, the distances are weighted, and points further away than a certain distance are ignored for the undistorted regression line.
The calculation of the undistorted regression line can be iterated
several times (Iterations
).
Contours
(input_object) xld_cont-array →
object
Input XLD contours.
RegressContours
(output_object) xld_cont-array →
object
Resulting XLD contours.
Mode
(input_control) string →
(string)
Type of outlier treatment.
Default value: 'no'
List of values: 'drop' , 'gauss' , 'median' , 'no'
Iterations
(input_control) integer →
(integer)
Number of iterations for the outlier treatment.
Default value: 1
Suggested values: 1, 2, 3, 5, 10, 20
gen_contours_skeleton_xld
,
lines_gauss
,
lines_facet
,
edges_sub_pix
smooth_contours_xld
,
get_contour_global_attrib_xld
,
query_contour_global_attribs_xld
H. Suesse, K. Voss: “Adaptive Ausgleichsrechnung und
Ausreißerproblematik für die digitale Bildverarbeitung”;
Proc. 15. DAGM Symposium, Springer Verlag, Lübeck 1993
R. Haralick, L. Shapiro: “Computer and Robot Vision” Vol. 2;
Kapitel 14.9, Addison-Wesley 1992
Foundation