現代 OCR 管線有兩個階段:偵測(使用 CRAFT 或 DBNet 等模型找到文字區域)和辨識(使用 CRNN 或基於 Transformer 的模型讀取每個區域中的文字)。端到端方法(如 PaddleOCR、EasyOCR)結合了兩個階段。對於結構化文件,專用模型(LayoutLM、Donut)理解文字內容和空間佈局,辨識出發票上的「總計:$42.50」與段落中相同文字的含義不同。
多模態 LLM(Claude、GPT-4V、Gemini)作為其視覺能力的附帶效果,已在 OCR 方面變得非常出色。你可以上傳影像並詢問「讀取此影像中的所有文字」或「從這張收據中擷取表格」。對於具有混合佈局、手寫和多語言的複雜文件,視覺 LLM 通常優於專用 OCR 系統,因為它們理解上下文且能處理模糊性。代價是速度和成本——專用 OCR 在批量處理時快 100 倍。
仍然困難的問題:手寫辨識(特別是草書或潦草的手寫)、退化的歷史文件、複雜背景中的文字(標誌、衣服、產品上的自然場景文字),以及具有複雜字元組合的文字系統(中文、阿拉伯文、天城文)。準確度因語言和文字系統而異——拉丁文字 OCR 幾乎已解決,但 CJK 和從右到左的文字仍有明顯的錯誤率。