Top | ![]() |
![]() |
![]() |
![]() |
void | (*GwyCoordTransform2DFunc) () |
void | gwy_data_field_correct_laplace_iteration () |
void | gwy_data_field_correct_average () |
void | gwy_data_field_mask_outliers () |
void | gwy_data_field_mask_outliers2 () |
void | gwy_data_field_distort () |
void | gwy_data_field_affine () |
GwyPlaneSymmetry | gwy_data_field_unrotate_find_corrections () |
void (*GwyCoordTransform2DFunc) (gdouble x
,gdouble y
,gdouble *px
,gdouble *py
,gpointer user_data
);
The type of two-dimensional coordinate transform function.
x |
Old x coordinate. |
|
y |
Old y coordinate. |
|
px |
Location to store new x coordinate. |
|
py |
Location to store new y coordinate. |
|
user_data |
User data passed to the caller function. |
Since: 2.5
void gwy_data_field_correct_laplace_iteration (GwyDataField *data_field
,GwyDataField *mask_field
,GwyDataField *buffer_field
,gdouble corrfactor
,gdouble *error
);
Performs one interation of Laplace data correction.
Tries to remove all the points in mask off the data by using iterative method similar to solving heat flux equation.
Use this function repeatedly until reasonable error
is reached.
void gwy_data_field_correct_average (GwyDataField *data_field
,GwyDataField *mask_field
);
Fills data under mask with average value.
Simply puts average value of all the data_field
values into
points in data_field
lying under points where mask_field
values
are nonzero.
void gwy_data_field_mask_outliers (GwyDataField *data_field
,GwyDataField *mask_field
,gdouble thresh
);
Creates mask of data that are above or below thresh
*sigma from average
height.
Sigma denotes root-mean square deviation of heights. This criterium
corresponds to the usual Gaussian distribution outliers detection if
thresh
is 3.
void gwy_data_field_mask_outliers2 (GwyDataField *data_field
,GwyDataField *mask_field
,gdouble thresh_low
,gdouble thresh_high
);
Creates mask of data that are above or below multiples of rms from average height.
Data that are below mean
-thresh_low
*sigma
or above
mean
+thresh_high
*sigma
are marked as outliers, where sigma
denotes the
root-mean square deviation of heights.
data_field |
A data field. |
|
mask_field |
A data field to be filled with mask. |
|
thresh_low |
Lower threshold value. |
|
thresh_high |
Upper threshold value. |
Since: 2.26
void gwy_data_field_distort (GwyDataField *source
,GwyDataField *dest
,GwyCoordTransform2DFunc invtrans
,gpointer user_data
,GwyInterpolationType interp
,GwyExteriorType exterior
,gdouble fill_value
);
Distorts a data field in the horizontal plane.
Note the transform function invtrans
is the inverse transform, in other
words it calculates the old coordinates from the new coordinates (the
transform would not be uniquely defined the other way round).
source |
Source data field. |
|
dest |
Destination data field. |
|
invtrans |
Inverse transform function, that is the transformation from
new coordinates to old coordinates. It gets
( |
|
user_data |
Pointer passed as |
|
interp |
Interpolation type to use. |
|
exterior |
Exterior pixels handling. |
|
fill_value |
The value to use with |
Since: 2.5
void gwy_data_field_affine (GwyDataField *source
,GwyDataField *dest
,const gdouble *invtrans
,GwyInterpolationType interp
,GwyExteriorType exterior
,gdouble fill_value
);
Performs an affine transformation of a data field in the horizontal plane.
Note the transform invtrans
is the inverse transform, in other
words it calculates the old coordinates from the new coordinates. This
way even degenerate (non-invertible) transforms can be meaningfully used.
Also note that the (column, row) coordinate system is left-handed.
source |
Source data field. |
|
dest |
Destination data field. |
|
invtrans |
Inverse transform, that is the transformation from
new pixel coordinates to old pixel coordinates, represented as
( |
|
interp |
Interpolation type to use. |
|
exterior |
Exterior pixels handling. |
|
fill_value |
The value to use with |
Since: 2.34
GwyPlaneSymmetry gwy_data_field_unrotate_find_corrections (GwyDataLine *derdist
,gdouble *correction
);
Finds rotation corrections.
Rotation correction is computed for for all symmetry types. In addition an estimate is made about the prevalent one.
derdist |
Angular derivation distribution (normally obrained from
|
|
correction |
Corrections for particular symmetry types will be stored
here (indexed by GwyPlaneSymmetry). |