|
FOSSredder 0.5.0
|
Implements low-level OCR helper routines for statement parsing. More...

Go to the source code of this file.
Classes | |
| struct | core::application::importing::internal::OcrLine |
| Represents one OCR line with its bounding box and recognized text. More... | |
| struct | core::application::importing::internal::TransactionMainRow |
| Represents the parsed main row of a transaction block. More... | |
Namespaces | |
| namespace | core |
| namespace | core::application |
| namespace | core::application::importing |
| namespace | core::application::importing::internal |
Functions | |
| std::vector< size_t > | core::application::importing::internal::findAmountTokenIndices (const core::application::importing::transaction::internal::OcrLine &line, int valutaX=-1, int bandPx=0) noexcept |
| Finds the indices of amount-like tokens in an OCR line. | |
| std::string | core::application::importing::internal::normalizeAlnumLower (const std::string &s) noexcept |
| Normalizes alphanumeric text to lower-case ASCII for matching. | |
| std::optional< int > | core::application::importing::internal::findTokenCenterX (const core::application::importing::transaction::internal::OcrLine &line, const std::string &tokenLower) noexcept |
| Locates the horizontal center of a token inside an OCR line. | |
| std::optional< int > | core::application::importing::internal::findPhraseCenterX (const core::application::importing::transaction::internal::OcrLine &line, std::initializer_list< const char * > phraseLower) noexcept |
| Locates the horizontal center of a multi-token phrase in an OCR line. | |
| bool | core::application::importing::internal::hasTokenNearX (const core::application::importing::transaction::internal::OcrLine &line, int x, int bandPx) noexcept |
| Checks whether any token in the line is close to a horizontal position. | |
| bool | core::application::importing::internal::hasAmountLikeTokenInLine (const core::application::importing::transaction::internal::OcrLine &line, int valutaX) noexcept |
| Checks whether the line contains amount-like tokens near the valuta column. | |
| bool | core::application::importing::internal::hasLeftDescriptiveText (const core::application::importing::transaction::internal::OcrLine &line, int valutaX) noexcept |
| Checks whether the line contains descriptive text to the left of the valuta column. | |
| bool | core::application::importing::internal::hasAmountNearValuta (const core::application::importing::transaction::internal::OcrLine &line, int valutaX, int bandPx) noexcept |
| Checks whether an amount appears close to the valuta reference. | |
| bool | core::application::importing::internal::isLooseTransactionLine (const core::application::importing::transaction::internal::OcrLine &line, int valutaX) noexcept |
| Checks whether the line looks like a loosely formatted transaction row. | |
| std::optional< double > | core::application::importing::internal::findAndParseAmountInLine (const core::application::importing::transaction::internal::OcrLine &line, int valutaX=-1, std::vector< std::string > *debugOut=nullptr) noexcept |
| Finds and parses an amount token inside an OCR line. | |
| std::vector< core::application::importing::transaction::internal::OcrLine > | core::application::importing::internal::buildOcrLinesFromWords (const std::vector< core::ports::text_recognition::Word > &words) |
| Builds OCR lines from raw Tesseract word output. | |
| ColumnGuess | core::application::importing::internal::inferColumnModelFromLines (const std::vector< OcrLine > &lines, size_t scanN) noexcept |
| std::vector< RawLineLite > | core::application::importing::internal::groupMergeLinesRaw (const std::vector< RawLineLite > &lines, int maxGapPx) |
| Merges raw lines using a gap-based heuristic. | |
| core::application::importing::transaction::internal::OcrLine | core::application::importing::internal::toOcrLineFromRawWords (const RawLineLite &src, size_t i0, size_t i1) noexcept |
| Converts a range of raw words into one OCR line. | |
| core::application::importing::transaction::internal::TransactionMainRow | core::application::importing::internal::splitMainRowFromRaw (const RawLineLite &src, int valutaX, int debitX, int creditX) noexcept |
| Splits a raw line into the main transaction row representation. | |
| core::application::importing::transaction::internal::TransactionMainRow | core::application::importing::internal::splitMainRowFromOcrLine (const core::application::importing::transaction::internal::OcrLine &src, int valutaX, int debitX, int creditX) noexcept |
| Splits an OCR line into the main transaction row representation. | |
Implements low-level OCR helper routines for statement parsing.
Definition in file ParserHelpers.cpp.