32. A non-transitory computer-readable medium encoded with a system to process at least one document image comprising a plurality of text rows and a plurality of characters, each text row having at least one character, the system comprising a plurality of modules to execute on at least one processor, the modules comprising a character block creator to create character blocks for the characters in the text rows and to determine positions of alignments of the character blocks; and a classification system comprising: a subsets module to determine columns for the alignments of the character blocks at the positions of the alignments, each text row having a physical structure defined by the columns of the alignments of the character blocks in that text row, and to determine an initial subset of rows for each column; an optimum set module to determine an optimum set of columns for each initial subset of rows; a division module to: determine a final subset of rows for each initial subset of rows, each final subset of rows comprising at least one text row of a corresponding initial subset of rows having physical structures most similar to a corresponding optimum set when compared to physical structures of all text rows in the corresponding initial subset of rows; determine a confidence factor for each final subset of rows; and determine a best confidence factor for each particular text row in the at least one document image; and a classifier module to create at least one class of text rows, the at least one class comprising at least one particular text row having a same best confidence factor.
32. A non-transitory computer-readable medium encoded with a system to process at least one document image comprising a plurality of text rows and a plurality of characters, each text row having at least one character, the system comprising a plurality of modules to execute on at least one processor, the modules comprising a character block creator to create character blocks for the characters in the text rows and to determine positions of alignments of the character blocks; and a classification system comprising: a subsets module to determine columns for the alignments of the character blocks at the positions of the alignments, each text row having a physical structure defined by the columns of the alignments of the character blocks in that text row, and to determine an initial subset of rows for each column; an optimum set module to determine an optimum set of columns for each initial subset of rows; a division module to: determine a final subset of rows for each initial subset of rows, each final subset of rows comprising at least one text row of a corresponding initial subset of rows having physical structures most similar to a corresponding optimum set when compared to physical structures of all text rows in the corresponding initial subset of rows; determine a confidence factor for each final subset of rows; and determine a best confidence factor for each particular text row in the at least one document image; and a classifier module to create at least one class of text rows, the at least one class comprising at least one particular text row having a same best confidence factor. 49. The system of claim 32 wherein the modules comprise: a line detector module to detect and remove lines when lines exist in the at least one document image and to save positions of vertical lines of the at least one document image in a vertical lines array when vertical lines exist in the at least one document image; and an alignment system comprising a document block module to determine when at least one line pattern in the vertical lines array identifies at least two document blocks, to split the at least one document image into the at least two document blocks when the at least one line pattern is determined, and to vertically align the at least two document blocks before the classification system determines the columns.