|
tesseract 3.04.01
|
#include <cubeclassifier.h>
Public Member Functions | |
| CubeClassifier (Tesseract *tesseract) | |
| virtual | ~CubeClassifier () |
| virtual int | UnicharClassifySample (const TrainingSample &sample, Pix *page_pix, int debug, UNICHAR_ID keep_this, GenericVector< UnicharRating > *results) |
| virtual const ShapeTable * | GetShapeTable () const |
Definition at line 38 of file cubeclassifier.h.
| usr src packages BUILD tesseract ccmain cubeclassifier cpp tesseract::CubeClassifier::CubeClassifier | ( | tesseract::Tesseract * | tesseract | ) | [explicit] |
Definition at line 36 of file cubeclassifier.cpp.
: cube_cntxt_(tesseract->GetCubeRecoContext()), shape_table_(*tesseract->shape_table()) { } CubeClassifier::~CubeClassifier() {
| tesseract::CubeClassifier::~CubeClassifier | ( | ) | [virtual] |
Definition at line 40 of file cubeclassifier.cpp.
| const ShapeTable * tesseract::CubeClassifier::GetShapeTable | ( | ) | const [virtual] |
Provides access to the ShapeTable that this classifier works with.
Implements tesseract::ShapeClassifier.
Definition at line 75 of file cubeclassifier.cpp.
| int tesseract::CubeClassifier::UnicharClassifySample | ( | const TrainingSample & | sample, |
| Pix * | page_pix, | ||
| int | debug, | ||
| UNICHAR_ID | keep_this, | ||
| GenericVector< UnicharRating > * | results | ||
| ) | [virtual] |
Classifies the given [training] sample, writing to results. See ShapeClassifier for a full description.
Reimplemented from tesseract::ShapeClassifier.
Definition at line 45 of file cubeclassifier.cpp.
{
results->clear();
if (page_pix == NULL) return 0;
ASSERT_HOST(cube_cntxt_ != NULL);
const TBOX& char_box = sample.bounding_box();
CubeObject* cube_obj = new tesseract::CubeObject(
cube_cntxt_, page_pix, char_box.left(),
pixGetHeight(page_pix) - char_box.top(),
char_box.width(), char_box.height());
CharAltList* alt_list = cube_obj->RecognizeChar();
if (alt_list != NULL) {
alt_list->Sort();
CharSet* char_set = cube_cntxt_->CharacterSet();
for (int i = 0; i < alt_list->AltCount(); ++i) {
// Convert cube representation to a shape_id.
int alt_id = alt_list->Alt(i);
int unichar_id = char_set->UnicharID(char_set->ClassString(alt_id));
if (unichar_id >= 0)
results->push_back(UnicharRating(unichar_id, alt_list->AltProb(i)));
}
delete alt_list;
}
delete cube_obj;
return results->size();
}