tesseract 4.1.1
Loading...
Searching...
No Matches
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

◆ LENGTH_COMPRESSION

#define LENGTH_COMPRESSION   (10.0)

Include Files and Type Defines

Definition at line 27 of file normfeat.h.

Enumeration Type Documentation

◆ NORM_PARAM_NAME

Enumerator
CharNormY 
CharNormLength 
CharNormRx 
CharNormRy 

Definition at line 29 of file normfeat.h.

29 {
NORM_PARAM_NAME
Definition: normfeat.h:29
@ CharNormRx
Definition: normfeat.h:30
@ CharNormY
Definition: normfeat.h:30
@ CharNormRy
Definition: normfeat.h:30
@ CharNormLength
Definition: normfeat.h:30

Function Documentation

◆ ActualOutlineLength()

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}
#define LENGTH_COMPRESSION
Definition: normfeat.h:27
float Params[1]
Definition: ocrfeatures.h:61

◆ ExtractCharNormFeatures()

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);
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 */
const int kBlnBaselineOffset
Definition: normalis.h:25
const FEATURE_DESC_STRUCT CharNormDesc
const float MF_SCALE_FACTOR
Definition: mfoutline.h:71
FEATURE NewFeature(const FEATURE_DESC_STRUCT *FeatureDesc)
Definition: ocrfeatures.cpp:78
bool AddFeature(FEATURE_SET FeatureSet, FEATURE Feature)
Definition: ocrfeatures.cpp:40
FEATURE_SET NewFeatureSet(int NumFeatures)
Definition: ocrfeatures.cpp:94
int16_t Ymean
Definition: intfx.h:37
int32_t Length
Definition: intfx.h:36