1. A computer-implemented method, comprising: classifying clip images defined in a received OCR output of a document processed by an optical character recognition (OCR) process into a plurality of clusters of clip images, each cluster including clip images that are assigned the same one or more character codes by the OCR process, wherein the OCR process performed on one or more computers generates the received OCR output; processing clip images in each of the plurality of clusters to generate exactly one cluster image for each cluster; obtaining a shape metric distance between cluster images as a measure of a shape difference between two clusters; using shape differences in cluster images between each cluster and other clusters to detect whether an error exists in one or more OCR character codes assigned to a cluster in the OCR output; classifying a first cluster in the plurality of clusters as a suspect cluster; identifying a nearest cluster to the suspect cluster, the nearest cluster being nearest based on a shape distance between the cluster image for the nearest cluster and the cluster image for the suspect cluster; and replacing the one or more character codes assigned to the suspect cluster with one or more different character codes assigned to the nearest cluster at each occurrence of one of the clip images of the suspect cluster in the OCR output to produce a modified OCR output when the nearest cluster has a shortest shape metric distance from the suspect cluster among all other clusters and has a higher confidence score than the suspect cluster.