tesseract-doxygen/wordrec/chopper.cpp File Reference

#include <math.h>
#include "chopper.h"
#include "cutil.h"
#include "matrix.h"
#include "seam.h"
#include "states.h"
#include "stopper.h"
#include "assert.h"
#include "associate.h"
#include "callcpp.h"
#include "choices.h"
#include "const.h"
#include "oldheap.h"
#include "chop.h"
#include "freelist.h"
#include "globals.h"
#include "olutil.h"
#include "metrics.h"
#include "render.h"
#include "permute.h"
#include "pieces.h"
#include "structures.h"
#include "tordvars.h"
#include "unicharset.h"
#include "wordclass.h"
#include "wordrec.h"

Namespaces

namespace  tesseract

Defines

bounds_inside

Check to see if the bounding box of one thing is inside the bounding box of another.

#define bounds_inside(inner_tl, inner_br, outer_tl, outer_br)

Functions

preserve_outline_tree

Copy the list of outlines.

void preserve_outline (EDGEPT *start)
void preserve_outline_tree (TESSLINE *srcline)
restore_outline_tree

Copy the list of outlines.

EDGEPTrestore_outline (EDGEPT *start)
void restore_outline_tree (TESSLINE *srcline)
attempt_blob_chop

Try to split the this blob after this one. Check to make sure that it was successful.

SEAMattempt_blob_chop (TWERD *word, inT32 blob_number, SEAMS seam_list)
any_shared_split_points

Return true if any of the splits share a point with this one.

int any_shared_split_points (SEAMS seam_list, SEAM *seam)
check_blob

Returns:
true if blob has a non whole outline.
int check_blob (TBLOB *blob)
check_seam_order

Make sure that each of the splits in this seam match to outlines in this blob. If any of the splits could not correspond to this blob then there is a problem (and FALSE should be returned to the caller).

inT16 check_seam_order (TBLOB *blob, SEAM *seam)
SEAMS start_seam_list (TBLOB *blobs)
inT16 total_containment (TBLOB *blob1, TBLOB *blob2)

Variables

int repair_unchopped_blobs = 1
double tessedit_certainty_threshold = -2.25
bool fragments_guide_chopper = FALSE

Define Documentation

#define bounds_inside ( inner_tl,
inner_br,
outer_tl,
outer_br   ) 
Value:
((inner_tl.x >= outer_tl.x)     && \
(inner_tl.y <= outer_tl.y)      && \
(inner_br.x <= outer_br.x)   && \
(inner_br.y >= outer_br.y))     \

Function Documentation

int any_shared_split_points ( SEAMS  seam_list,
SEAM seam 
)
SEAM* attempt_blob_chop ( TWERD word,
inT32  blob_number,
SEAMS  seam_list 
)
int check_blob ( TBLOB blob  ) 
inT16 check_seam_order ( TBLOB blob,
SEAM seam 
)
void preserve_outline ( EDGEPT start  ) 
void preserve_outline_tree ( TESSLINE srcline  ) 
EDGEPT* restore_outline ( EDGEPT start  ) 
void restore_outline_tree ( TESSLINE srcline  ) 
SEAMS start_seam_list ( TBLOB blobs  ) 
inT16 total_containment ( TBLOB blob1,
TBLOB blob2 
)

Variable Documentation

"Use information from fragments to guide chopping process"

"Fix blobs that aren't chopped"

"Good blob limit"

Generated on Sun Jul 18 17:10:52 2010 for Tesseract by  doxygen 1.6.3