9. A non-transitory computer-readable storage medium storing executable computer program instructions for performing physical page layout analysis via tab-stop detection, the computer program instructions comprising instructions for: receiving an input image; determining the physical page layout of the input image, comprising: determining connected components from the input image, wherein the connected components comprise connected groups of pixels that may be text; identifying a subset of the connected components that are candidates for being located at a tab-stop by, for each respective connected component in question: establishing a vertical gutter to a side of the connected component in question; determining if neighboring connected components are in the gutter; determining if the neighboring connected components are edge-aligned with the connected component in question; and identifying the connected component in question as a candidate connected component responsive to no neighboring connected components being in the gutter and neighboring connected components being edge-aligned with the connected component in question; forming a plurality of tab-stop lines from the candidate connected components, wherein a tab-stop line defines a position of a tab-stop for a vertical span of a respective tab-stop line; creating column partitions from the positions of the plurality of tab-stop lines; and forming chains of column partitions to identify regions of the physical page layout of the input image; determining a reading order of the identified regions of the physical page layout of the input image; and outputting metadata describing at least one selected from a group consisting of the regions and the reading order for use in optical character recognition.
9. A non-transitory computer-readable storage medium storing executable computer program instructions for performing physical page layout analysis via tab-stop detection, the computer program instructions comprising instructions for: receiving an input image; determining the physical page layout of the input image, comprising: determining connected components from the input image, wherein the connected components comprise connected groups of pixels that may be text; identifying a subset of the connected components that are candidates for being located at a tab-stop by, for each respective connected component in question: establishing a vertical gutter to a side of the connected component in question; determining if neighboring connected components are in the gutter; determining if the neighboring connected components are edge-aligned with the connected component in question; and identifying the connected component in question as a candidate connected component responsive to no neighboring connected components being in the gutter and neighboring connected components being edge-aligned with the connected component in question; forming a plurality of tab-stop lines from the candidate connected components, wherein a tab-stop line defines a position of a tab-stop for a vertical span of a respective tab-stop line; creating column partitions from the positions of the plurality of tab-stop lines; and forming chains of column partitions to identify regions of the physical page layout of the input image; determining a reading order of the identified regions of the physical page layout of the input image; and outputting metadata describing at least one selected from a group consisting of the regions and the reading order for use in optical character recognition. 16. The computer-readable storage medium of claim 9 , wherein the instructions for determining the physical page layout of the input image further comprise instructions for: tracing horizontally from a candidate connected component at a first tab-stop line through vertically overlapping connected components to another candidate connected component at a second tab-stop line; and associating the first and second tab-stop lines as opposite sides of a column.