correlation

correlation — Correlation and crosscorrelation.

Synopsis




gdouble     gwy_data_field_get_correlation_score
                                            (GwyDataField *data_field,
                                             GwyDataField *kernel_field,
                                             gint ulcol,
                                             gint ulrow,
                                             gint kernel_ulcol,
                                             gint kernel_ulrow,
                                             gint kernel_brcol,
                                             gint kernel_brrow);
void        gwy_data_field_crosscorrelate   (GwyDataField *data_field1,
                                             GwyDataField *data_field2,
                                             GwyDataField *x_dist,
                                             GwyDataField *y_dist,
                                             GwyDataField *score,
                                             gint search_width,
                                             gint search_height,
                                             gint window_width,
                                             gint window_height);
void        gwy_data_field_crosscorrelate_iteration
                                            (GwyDataField *data_field1,
                                             GwyDataField *data_field2,
                                             GwyDataField *x_dist,
                                             GwyDataField *y_dist,
                                             GwyDataField *score,
                                             gint search_width,
                                             gint search_height,
                                             gint window_width,
                                             gint window_height,
                                             GwyComputationStateType *state,
                                             gint *iteration);
void        gwy_data_field_correlate        (GwyDataField *data_field,
                                             GwyDataField *kernel_field,
                                             GwyDataField *score);
void        gwy_data_field_correlate_iteration
                                            (GwyDataField *data_field,
                                             GwyDataField *kernel_field,
                                             GwyDataField *score,
                                             GwyComputationStateType *state,
                                             gint *iteration);

Description

Details

gwy_data_field_get_correlation_score ()

gdouble     gwy_data_field_get_correlation_score
                                            (GwyDataField *data_field,
                                             GwyDataField *kernel_field,
                                             gint ulcol,
                                             gint ulrow,
                                             gint kernel_ulcol,
                                             gint kernel_ulrow,
                                             gint kernel_brcol,
                                             gint kernel_brrow);

Computes correlation score. Correlation window size is given by kernel_ulcol, kernel_ulrow, kernel_brcol, kernel_brrow, postion of the correlation window on data is given by ulcol, ulrow. If anything fails (data too close to boundary, etc.), function returns -1 (none correlation).

data_field : data field
kernel_field : kernel to be correlated with data field
ulcol : upper-left column position in the data field
ulrow : upper-left row position in the data field
kernel_ulcol : upper-left column position in kernel field
kernel_ulrow : upper-left row position in kernel field
kernel_brcol : bottom-right column position in kernel field
kernel_brrow : bottom-right row position in kernel field
Returns : correlation score (between -1 and 1). Number 1 denotes maximum correlation, -1 none correlation.

gwy_data_field_crosscorrelate ()

void        gwy_data_field_crosscorrelate   (GwyDataField *data_field1,
                                             GwyDataField *data_field2,
                                             GwyDataField *x_dist,
                                             GwyDataField *y_dist,
                                             GwyDataField *score,
                                             gint search_width,
                                             gint search_height,
                                             gint window_width,
                                             gint window_height);

Algorithm for matching two different images of the same object under changes.

It does not use any special features for matching. It simply searches for all points (with their neighbourhood) of data_field1 within data_field2. Parameters search_width and search_height determine maimum area where to search for points. The area is cenetered in the data_field2 at former position of points at data_field1.

data_field1 : data field
data_field2 : data field
x_dist : field of resulting x-distances
y_dist : field of resulting y-distances
score : correlation score result
search_width : search area width
search_height : search area height
window_width : correlation window width
window_height : correlation window height

Since 1.2.


gwy_data_field_crosscorrelate_iteration ()

void        gwy_data_field_crosscorrelate_iteration
                                            (GwyDataField *data_field1,
                                             GwyDataField *data_field2,
                                             GwyDataField *x_dist,
                                             GwyDataField *y_dist,
                                             GwyDataField *score,
                                             gint search_width,
                                             gint search_height,
                                             gint window_width,
                                             gint window_height,
                                             GwyComputationStateType *state,
                                             gint *iteration);

Algorithm for matching two different images of the same object under changes.

It does not use any special features for matching. It simply searches for all points (with their neighbourhood) of data_field1 within data_field2. Parameters search_width and search_height determine maimum area where to search for points. The area is cenetered in the data_field2 at former position of points at data_field1.

data_field1 : data field
data_field2 : data field
x_dist : field of resulting x-distances
y_dist : field of resulting y-distances
score : correlation score
search_width : search area width
search_height : search area height
window_width : correlation window width
window_height : correlation window height
state : state of computation
iteration : iteration of computation loop (winthin GWY_COMP_ITERATE state)

Since 1.2.


gwy_data_field_correlate ()

void        gwy_data_field_correlate        (GwyDataField *data_field,
                                             GwyDataField *kernel_field,
                                             GwyDataField *score);

Computes correlation score for all the points in data field data_field and full size of correlation kernel kernel_field.

data_field : data field
kernel_field : correlation kernel
score : result scores

gwy_data_field_correlate_iteration ()

void        gwy_data_field_correlate_iteration
                                            (GwyDataField *data_field,
                                             GwyDataField *kernel_field,
                                             GwyDataField *score,
                                             GwyComputationStateType *state,
                                             gint *iteration);

Performs one iteration of correlation.

data_field : data field
kernel_field : kernel to be correlated with data
score : correlation scores
state : state of iteration
iteration : actual iteration row coordinate