1. A computer-implemented method comprising: under the control of one or more computer systems configured with executable instructions, obtaining an input image that includes at least one image variation; filtering and segmenting the input image; creating a mask of the image from a plurality of bounding boxes, each bounding box at least partially enclosing a connected component; intersecting the filtered and segmented input image with the mask to produce a first output image; separately processing the filtered and segmented input image to create a binary chip for each of the plurality of bounding boxes to produce a second output image; separately recognizing text in the first output image and each binary chip of the second output image using an optical character recognizer; and combining the separately recognized text from the first output image and the second output image to produce a single output.