tesseract  4.1.0
normfeat.h File Reference
#include "ocrfeatures.h"

Go to the source code of this file.

Macros

#define LENGTH_COMPRESSION   (10.0)
 

Enumerations

enum  NORM_PARAM_NAME { CharNormY, CharNormLength, CharNormRx, CharNormRy }
 

Functions

float ActualOutlineLength (FEATURE Feature)
 
FEATURE_SET ExtractCharNormFeatures (const INT_FX_RESULT_STRUCT &fx_info)
 

Macro Definition Documentation

#define LENGTH_COMPRESSION   (10.0)

Include Files and Type Defines

Definition at line 27 of file normfeat.h.

Enumeration Type Documentation

Enumerator
CharNormY 
CharNormLength 
CharNormRx 
CharNormRy 

Definition at line 29 of file normfeat.h.

Function Documentation

float ActualOutlineLength ( FEATURE  Feature)

Public Function Prototypes

Return the length of the outline in baseline normalized form.

Definition at line 32 of file normfeat.cpp.

32  {
33  return (Feature->Params[CharNormLength] * LENGTH_COMPRESSION);
34 }
float Params[1]
Definition: ocrfeatures.h:61
#define LENGTH_COMPRESSION
Definition: normfeat.h:27
FEATURE_SET ExtractCharNormFeatures ( const INT_FX_RESULT_STRUCT fx_info)

Return the character normalization feature for a blob.

The features returned are in a scale where the x-height has been normalized to live in the region y = [-0.25 .. 0.25]. Example ranges for English below are based on the Linux font collection on 2009-12-04:

  • Params[CharNormY]
    • The y coordinate of the grapheme's centroid.
    • English: [-0.27, 0.71]
  • Params[CharNormLength]
    • The length of the grapheme's outline (tiny segments discarded), divided by 10.0=LENGTH_COMPRESSION.
    • English: [0.16, 0.85]
  • Params[CharNormRx]
    • The radius of gyration about the x axis, as measured from CharNormY.
    • English: [0.011, 0.34]
  • Params[CharNormRy]
    • The radius of gyration about the y axis, as measured from the x center of the grapheme's bounding box.
    • English: [0.011, 0.31]

Definition at line 61 of file normfeat.cpp.

61  {
62  FEATURE_SET feature_set = NewFeatureSet(1);
63  FEATURE feature = NewFeature(&CharNormDesc);
64 
65  feature->Params[CharNormY] =
67  feature->Params[CharNormLength] =
69  feature->Params[CharNormRx] = MF_SCALE_FACTOR * fx_info.Rx;
70  feature->Params[CharNormRy] = MF_SCALE_FACTOR * fx_info.Ry;
71 
72  AddFeature(feature_set, feature);
73 
74  return feature_set;
75 } /* ExtractCharNormFeatures */
FEATURE_SET NewFeatureSet(int NumFeatures)
Definition: ocrfeatures.cpp:94
FEATURE NewFeature(const FEATURE_DESC_STRUCT *FeatureDesc)
Definition: ocrfeatures.cpp:78
bool AddFeature(FEATURE_SET FeatureSet, FEATURE Feature)
Definition: ocrfeatures.cpp:40
const int kBlnBaselineOffset
Definition: normalis.h:25
const FEATURE_DESC_STRUCT CharNormDesc
float Params[1]
Definition: ocrfeatures.h:61
#define MF_SCALE_FACTOR
Definition: mfoutline.h:65
#define LENGTH_COMPRESSION
Definition: normfeat.h:27
int32_t Length
Definition: intfx.h:36
int16_t Ymean
Definition: intfx.h:37