00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00036
00037
00038
00039
00040
00041
00042
00043
00044
00045
00046
00047
00048
00059 #ifndef __LIBGPIV_VALID_H__
00060 #define __LIBGPIV_VALID_H__
00061
00062
00063 #include <gpiv/gpiv-valid_par.h>
00064
00065 #define GPIV_GRADIENT_THRESHOLD 2.0
00066 #define GPIV_THRESHOLD_DEFAULT 1.2
00067 #define GPIV_VALID_MAX_SWEEP 9
00068 #define GPIV_RESIDU_MAX_NORMMEDIAN 2.0
00073 typedef struct __GpivLinRegData GpivLinRegData;
00074
00078 struct __GpivLinRegData {
00079 double c0;
00080 double c1;
00081 double cov00;
00082 double cov01;
00083 double cov11;
00084 double sumsq;
00085 };
00086
00087
00088
00098 gchar *
00099 gpiv_valid_residu (GpivPivData *piv_data,
00100 const GpivValidPar *valid_par,
00101 const gboolean incl_point
00102 );
00103
00104
00105
00116 GpivBinData *
00117 gpiv_valid_residu_stats (const GpivPivData *piv_data,
00118 const guint nbins,
00119 GpivLinRegData *linreg
00120 );
00121
00122
00123
00132 GpivBinData *
00133 gpiv_valid_peaklck (const GpivPivData *piv_data,
00134 const guint nbins
00135 );
00136
00137
00149 gchar *
00150 gpiv_valid_errvec (GpivPivData *piv_data,
00151 const GpivImage *image,
00152 const GpivPivPar *piv_par,
00153 const GpivValidPar *valid_par,
00154 const gboolean interrogate_valid
00155 );
00156
00157
00168 void
00169 gpiv_valid_gradient (const GpivPivPar *piv_par,
00170 GpivPivData *piv_data
00171 );
00172
00173
00185 void
00186 gpiv_cumhisto_eqdatbin_gnuplot (const gchar *fname_out,
00187 const gchar *title,
00188 const gchar *GNUPLOT_DISPLAY_COLOR,
00189 const gint GNUPLOT_DISPLAY_SIZE,
00190 const GpivLinRegData *linreg
00191 );
00192
00193
00203 gfloat
00204 gpiv_valid_threshold (const GpivPivPar *piv_par,
00205 const GpivValidPar *valid_par,
00206 const GpivLinRegData *linreg
00207 );
00208
00209
00210
00211
00212
00213 #endif
00214