1. A method for correcting optical character recognition (OCR) errors from an OCR scan result, comprising: registering an OCR machine code from the OCR scan result; mapping the registered OCR machine code to one or more of an OCR-Key according to one or more character shape functions by: mapping from one or more segments of an individual character represented by the OCR machine code to one or more character shape classes; mapping from a combination of one or more characters represented by the OCR machine code to the one or more character shape classes; mapping according to a character shape function comprising a repetition encoding of a characteristic shape, wherein the repetition encoding is designated as a cardinality of the one or more character shape classes; mapping according to a character shape function, wherein a set of consecutive characters in a common character shape class are grouped into a single class with a cardinality equal to the sum of the cardinalities of each of the consecutive characters; and mapping to the set of character shape classes comprising disjoint classes, overlapping classes, and combinations thereof; selecting, from a dictionary, a first set of candidate words as possible matches to the registered OCR machine code; selecting, from the dictionary, a second set of candidate words as possible matches to the OCR-Key; calculating a set of errors between the second set of candidate words and the OCR machine code and the OCR-Key; and selecting a preferred candidate word from the second set of candidate words with the smallest set of errors.