69 LIST RemainingOutlines;
77 RemainingOutlines = Outlines;
127 Delta.
x =
XDelta (*Start, *End) / NumFeatures;
128 Delta.
y =
YDelta (*Start, *End) / NumFeatures;
131 Center.
x = Start->
x + Delta.
x / 2.0;
132 Center.
y = Start->
y + Delta.
y / 2.0;
135 for (i = 0; i < NumFeatures; i++) {
182 &(
PointAt(Next)->Point), FeatureSet);
187 while (Current != First);
235 blob,
false, &local_fx_info, &bl_features);
241 for (
int f = 0; f < num_features; ++f) {
267 blob,
false, &local_fx_info, &bl_features);
#define double_VAR(name, val, comment)
const INT_FEATURE_STRUCT * features() const
void NormalizePicoX(FEATURE_SET FeatureSet)
FEATURE NewFeature(const FEATURE_DESC_STRUCT *FeatureDesc)
FEATURE_SET NewFeatureSet(int NumFeatures)
FLOAT32 NormalizedAngleFrom(FPOINT *Point1, FPOINT *Point2, FLOAT32 FullScale)
const FEATURE_DESC_STRUCT PicoFeatDesc
FEATURE_SET ExtractPicoFeatures(TBLOB *Blob)
void ConvertToPicoFeatures2(MFOUTLINE Outline, FEATURE_SET FeatureSet)
#define MAX_PICO_FEATURES
double classify_pico_feature_length
FEATURE_SET ExtractIntGeoFeatures(const TBLOB &blob, const INT_FX_RESULT_STRUCT &fx_info)
LIST ConvertBlob(TBLOB *blob)
void FreeOutlines(LIST Outlines)
FLOAT32 DistanceBetween(FPOINT A, FPOINT B)
const FEATURE_DESC_STRUCT IntFeatDesc
#define DegenerateOutline(O)
TrainingSample * BlobToTrainingSample(const TBLOB &blob, bool nonlinear_norm, INT_FX_RESULT_STRUCT *fx_info, GenericVector< INT_FEATURE_STRUCT > *bl_features)
BOOL8 AddFeature(FEATURE_SET FeatureSet, FEATURE Feature)
#define NextPointAfter(E)
void ConvertSegmentToPicoFeat(FPOINT *Start, FPOINT *End, FEATURE_SET FeatureSet)
FEATURE_SET ExtractIntCNFeatures(const TBLOB &blob, const INT_FX_RESULT_STRUCT &fx_info)
void NormalizeOutlines(LIST Outlines, FLOAT32 *XScale, FLOAT32 *YScale)
int geo_feature(int index) const