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:覆盖拉丁文、中文、日文,还支持阿拉伯文、斯拉夫文、韩文、泰文和希腊文等其他脚本。