aiptimizer/TurboOCR
TurboOCR, >200 img/s OmnidocBench. TensorRT FP16, PP-OCRv6, HTTP + gRPC
What it solves
TurboOCR 是一個高效能 GPU 加速的文件解析器,旨在取代緩慢的傳統 OCR 引擎與龐大的視覺語言模型(VLM)。它解決了從文件中提取結構化資料——包括文字、版面、表格與數學公式——的問題,能在極速下完成,同時保持完全本地與私密。
How it works
以 C++、CUDA 與 TensorRT 建置,專案實作了一條基於 PP-OCRv6 的多串流管線。它使用一組專門模型堆疊,而非單一巨型模型:
- Text Detection & Recognition:使用 PP-OCRv6(tiny、small 或 medium 等級)處理拉丁文、中文與日文。
- Layout Analysis:採用 PP-DocLayoutV3 辨識 25 種不同文件類別並確定閱讀順序。
- Table Extraction:使用 SLANet-Plus 將表格轉換為 HTML。
- Formula Recognition:使用 PP-FormulaNet‑S 將數學公式轉為 LaTeX。
系統以伺服器形式部署,提供 HTTP 與 gRPC 兩種 API,TensorRT 引擎會在首次啟動時自動建置,以最佳化特定 NVIDIA GPU 的效能。
Who it’s for
適用於需要高吞吐量文件處理(例如每秒處理數千張收據或表單)的開發者與組織,這類使用者需要現代 OCR 的高準確度,但無法承受 VLM 解析器的延遲或成本。
Highlights
- Extreme Throughput:在 RTX 5090 上可達每秒 559 張影像(收據)處理速度。
- Structured Output:支援匯出為 Markdown、HTML(表格)與 LaTeX(公式)。
- Native PDF Support:平行渲染與 OCR PDF 頁面,並提供可選的自動旋轉功能。
- Flexible Deployment:一行 Docker 指令即可部署,內建 Prometheus 監控指標。
- Multi-Language Support:涵蓋拉丁文、中文、日文,亦支援阿拉伯文、斯拉夫文、韓文、泰文與希臘文等其他文字。