TableVision: Recovering Verified Structure from Historical Tables
Organizations: T. Y. Zhou is with Harvard University, Cambridge, MA 02138 USA. · J. M. Snyder, Jr. is with the Department of Government, Harvard University, Cambridge, MA 02138 USA.
Abstract
Gaps, skips, and mistakes are the normal state of a historical register: rows go missing, tables cross page breaks, columns slip under wrong names, and column sums disagree with the corresponding row entries. Readers read digits correctly but lose the table structure. On seven clean panels of election returns, the best open-source reader reproduces 99.0% of the digits but files only 83.7% of the figures in the correct cells and gets 11 of 30 columns correct. TableVision treats table structure recovery as the problem. On three degraded 1888 pages, Amazon Textract files only 1 of 1494 figures correctly; TableVision correctly files 99.2%, and all 51 columns its exact-total check releases are correct. A dynamic program cuts a volume into blocks by how many columns sum to their last line; witnesses read the cells; the gate classifies each column as exactly reconciling, flagged as faithful to a page whose arithmetic is wrong, or withheld. A theory of the sum check says which errors it cannot see and why its optimal block is about rows at defect rate . On 2201 columns of Wisconsin electoral data, the gate accepts 2042, flags 118, and withholds 41; failure rises with column length as at 1.1 defects per 1000 cells in general elections; official returns confirm 933 of 934 testable accepted sums and all 35 testable flagged totals; and the deployment added 491,359 gated precinct rows to a 9.3-million-row dataset. One implication is that the design of the verification block is critical.
Figures & tables
| % of Digits | % of Numbers | County Columns | |||
| Reader | Correct | in Correct Cell | 100% Correct | ||
| Clean pages: 7 panels, 1214 numbers, 30 county columns | |||||
| Reader’s own table the same words in TableVision’s structure | |||||
| Tesseract | 90.9 | 69.0 | 83.4 | 3 | 9 |
| EasyOCR | 77.3 | 41.6 | 60.5 | 0 | 1 |
| PaddleOCR | 98.1 | 81.4 | 96.5 | 9 | 14 |
| Failed | Rows | Cells failed (%) | |||||
| Volume | Cols. | Flag | With. | (95%) | obs./model | ||
| 1925 | 497 | 66 | 13 | 37.8 | 85.1 | 4.95 (3.9–6.1) | 26.3 / 26.4 |
| 1954 | 639 | 20 | 2 | 45.5 | 149.0 | 0.80 (0.5–1.2) | 9.4 / 10.0 |
| 1956 | 213 | 0 | 8 | 46.3 | 161.8 | 0.86 (0.4–1.6) | 9.9 / 11.3 |
| 1958 | 568 | 20 | 14 | 47.2 | 167.6 | 1.47 (1.0–2.1) | 24.4 / 17.5 |
| 1962 | 284 | 12 | 4 | 49.0 | 176.4 | 1.26 (0.7–2.0) | 15.5 / 16.2 |
| Reader | MN p. 340 | MN p. 377 | WI p. 455 | WI p. 652 L | WI p. 652 R | WI p. 653 L | WI p. 653 R |
|---|---|---|---|---|---|---|---|
| Tesseract 5.3 (mode 6, best model, ) | 71.2/78.8 | 68.1/80.1 | 28.9/69.1 | 92.9/96.8 | 93.5/95.2 | 96.4/96.4 | 98.1/98.1 |
| EasyOCR 1.7 ( ) | 35.3/61.8 | 25.7/37.7 | 23.4/56.9 | 81.0/88.1 | 45.2/58.9 | 70.0/82.7 | 65.4/75.0 |
| PaddleOCR PP-OCRv4 ( ) | 86.5/95.9 | 89.5/96.7 | 43.8/92.1 | 100.0/100.0 | 98.4/98.4 | 99.1/99.1 | 100.0/100.0 |
| docTR 1.1 ( ) | 84.7/94.7 | 92.4/96.7 | 50.3/97.7 | 100.0/100.0 | 100.0/100.0 | 100.0/100.0 | 100.0/100.0 |
| img2table 2.0 ( ) | 42.4/54.1 | 57.6/59.4 | 44.4/56.6 | 75.4/80.2 | 54.0/57.3 | 0.0/78.2 | 15.4/83.7 |
| SLANet-plus ( ) | 35.9/95.9 | 0.0/96.7 | 59.9/92.1 | 62.7/100.0 | 44.4/98.4 | 68.2/99.1 | 22.1/100.0 |
| Reader | Chars. | Figs. | Cells | In order | Rows | Cols. | Released |
|---|---|---|---|---|---|---|---|
| Tesseract 5.3, as filed | 90.9 | 86.4 | 69.0 | 73.3 | 64.0 | 3/30 | 1 (1) |
| EasyOCR 1.7, as filed | 77.3 | 67.7 | 41.6 | 46.0 | 37.6 | 0/30 | 1 (1) |
| PaddleOCR PP-OCRv4, as filed | 98.1 | 96.5 | 81.4 | 94.1 | 77.6 | 9/30 | 2 (0) |
| docTR 1.1, as filed | 99.0 | 97.9 | 83.7 | 97.4 | 79.2 | 11/30 | 4 (0) |
| img2table 2.0, as filed | 60.5 | 50.7 | 44.8 | 19.9 | 16.8 | 0/30 | 0 (0) |
| SLANet-plus, as filed | 78.5 | 76.9 | 39.1 | 33.6 | 25.1 | 1/30 | 0 (0) |
| Failure mode (where observed) | Signal that exposed it | Disposition | |
|---|---|---|---|
| 1 | Sideways pages; skew over half a row pitch (IA 1894, 1895) | rendering; row 20 px lower at the right edge | rotate, deskew; one page, two counties, not attempted |
| 2 | Column comb shifted by a 28-px double rule (IA) | width guard (b); a total under another’s name | comb re-measured (S5) |
| 3 | Data row taken for a heading or never detected (six rows in five counties, IA 1894) | : every column short by one row’s figures; gap at a label line | row read off the page and block re-gated (four counties) |
| 4 | Sub-heading given a reading from the column rule (eight rows, WI 1940) | by-eye check; residuals | readings set absent (S1, S4) |
| 5 | Last column clipped by the scan edge (WI 1940; WI 1956) | window against page edge (S6); unread cells | columns withheld |
| 6 | Witness misreads: text-layer drift (297 for 207, WI 1940); broken glyphs (42 read as 12, MN 1889) | witness disagreement; residual; 5–8 re-read | corrected only from the page |
| Reader | Chars. | Figs. | Cells | In order | Rows | Cols. | Released |
|---|---|---|---|---|---|---|---|
| Tesseract 5.3 (mode 6, best model, ) | 67.4 | 63.3 | 15.0 | 19.7 | 0.0 | 0/77 | 0 (0) |
| EasyOCR 1.7 ( ) | 29.9 | 24.2 | 3.5 | 4.1 | 0.0 | 0/77 | 0 (0) |
| PaddleOCR PP-OCRv4 ( ) | 60.8 | 56.2 | 13.9 | 16.3 | 0.0 | 0/77 | 0 (0) |
| docTR 1.1 ( ) | 71.0 | 69.5 | 19.0 | 30.7 | 0.0 | 0/77 | 1 (1) |
| img2table 2.0 ( ) | 18.6 | 17.6 | 3.8 | 1.1 | 0.0 | 0/77 | 0 (0) |
| SLANet-plus ( ) | 32.8 | 30.5 | 14.8 | 3.9 | 0.9 | 0/77 | 0 (0) |
| Cell | Column sum | |||||||
|---|---|---|---|---|---|---|---|---|
| p. | County | Row | Column | ref. | pass | Total | ref. | pass |
| 113 | Fayette | Bethel | Jones | 12 | 14 | 289 | 289 | 291 |
| 113 | Fayette | Fremont | Stone | 92 | 89 | 2815 | 2815 | 2812 |
| 113 | Fayette | West Union | Rice | 6 | blank | 288 | 288 | 282 |
| 113 | Fayette | West Union | Sharp | 5 | 6 | 43 | 43 | 44 |
| 113 | Floyd | 3d ward | Stone | 82 | 84 | 2002 | 2002 | 2004 |
Table Structure Recognition
Table structure recognition recovers rows, columns, cells, spans, and hierarchy from table images and documents.
See all 32 papers