TurboOCR

每秒200+张图,TensorRT加速的OCR服务,开箱即用。

开源 🏷️完全免费 🔧 仅开源项目,无在线服务,需自行部署 搜索知识 🍴 复刻 117 👀 关注 13
访问官网 ↗ GitHub ↗
GitHub 星标 ★ 1159
维护状态 维护中
是否开源 开源
定价模式 🏷️完全免费 开源项目,MIT许可证,可免费自行部署使用,无在线服务。

项目预览

TurboOCR 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类搜索知识
开发团队aiptimizer
定价模式🏷️完全免费
价格说明开源项目,MIT许可证,可免费自行部署使用,无在线服务。
访问状态🔧 仅开源项目,无在线服务,需自行部署
是否开源是
开源协议MIT
主要语言C++
技术栈/模型document-ai,document-parsing,easyocr,fastapi,fp16,gpu-ocr,grpc,inference-server,nvidia,ocr,paddleocr,pdf-extraction,qwen-vl,rag,tensorrt,text-detection,text-recognition
GitHub 星标★ 1159
上线时间2026-03-20 00:00:00
代码更新2026-09-27
仓库体积89.0 MB
本站数据更新2026-11-09
维护状态维护中
收录时间2026-08-09
浏览次数5

项目介绍

TurboOCR 是一个基于 C++ 实现的高性能 OCR 服务,专为追求极致吞吐量的场景设计。它集成了百度飞桨的 PP-OCRv6 模型,并利用 TensorRT FP16 推理加速,在 OmnidocBench 基准上实现了每秒超过 200 张图片的处理速度。项目提供 HTTP 和 gRPC 两种接口,方便集成到现有服务中。它解决了传统 OCR 服务性能瓶颈问题,尤其适合大规模文档数字化、实时视频流文字识别等对速度要求极高的应用。核心能力包括:高效的模型推理优化、灵活的部署方式(支持 Docker)、以及面向生产环境的稳定性设计。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-08-09 · 当前星标 ★ 1159

使用教程

难度:入门 约 10 分钟 部署方式:Docker 5 步

环境要求

  • Linux 系统
  • NVIDIA 驱动 595+
  • Turing 或更新的 GPU(RTX 20 系列 / GTX 16 系列及以上)
  • 显存约 4 GB(纯文本)到约 8 GB(完整流水线:版面+表格+公式)
  • 已安装 Docker 与 NVIDIA Container Toolkit(--gpus all 可用)

安装与启动步骤

  1. 1启动 OCR 容器

    用官方镜像启动服务,映射 8000(HTTP)与 50051(gRPC)端口,并挂载命名卷缓存 TensorRT 引擎。

    docker run --gpus all -p 8000:8000 -p 50051:50051 \
      -v trt-cache:/home/ocr/.cache/turbo-ocr \
      ghcr.io/aiptimizer/turboocr:latest
  2. 2等待引擎构建

    首次启动会从 ONNX 构建 TensorRT 引擎,5090 约 90 秒,旧卡可能长达 1 小时;期间 nginx 会返回连接被拒。

  3. 3调用 OCR 接口

    向后端发送图片二进制,返回文本、置信度和包围框。容器就绪后即可执行。

    curl -X POST http://localhost:8000/ocr/raw \
      --data-binary @document.png -H "Content-Type: image/png"
  4. 4加速引擎构建

    如果首次构建太慢,可加大优化等级,构建时间缩短 3~5 倍,但有轻微速度回退。

    docker run --gpus all -e TRT_OPT_LEVEL=3 -p 8000:8000 -p 50051:50051 \
      -v trt-cache:/home/ocr/.cache/turbo-ocr \
      ghcr.io/aiptimizer/turboocr:latest
  5. 5自行构建镜像

    如需从源码构建 GPU 镜像,使用仓库内的 Dockerfile.gpu,再按前述命令启动。

    docker build -f docker/Dockerfile.gpu -t turboocr .
    docker run --gpus all -p 8000:8000 -p 50051:50051 \
      -v trt-cache:/home/ocr/.cache/turbo-ocr turboocr

关键配置

配置项必填说明示例
OCR_MODEL否选择模型档位,或指定 PP-OCRv5 script 模型tiny
DISABLE_LAYOUT否设为 1 跳过版面模型,省约 300–500 MB 显存0
PIPELINE_POOL_SIZE否并发 GPU 流水线数量,默认自动;小显存卡建议调低1
REQUEST_TIMEOUT_MS否单请求推理超时,超时返回 504;0 表示不限时60000
CLS_ALL_BOXES否设为 1 对每行文本做 0°/180° 方向分类,适合混排/倒置扫描件0
LAYOUT_MERGE_MODE否嵌套框策略:all/outer/innerall

如何确认成功

curl 向 http://localhost:8000/ocr/raw 发图,返回含 results 数组(text、confidence、bounding_box)的 JSON 即成功。

常见问题

Q:刚启动就请求,提示连接被拒?

A:这是正常的:首次启动要从 ONNX 构建 TensorRT 引擎,期间 nginx 会返回 connection refused,等后端就绪后再请求即可。

Q:第二次启动还要等很久吗?

A:不用。挂载 trt-cache 命名卷后引擎会被缓存,后续启动是瞬时完成的。

Q:显存不够怎么办?

A:纯文本约需 4 GB,完整流水线约 8 GB,且每个 PIPELINE_POOL_SIZE 副本会再占一整套;显存小时请调低该值,或用 DISABLE_LAYOUT=1 跳过版面模型。

Q:支持 AMD 或 Apple 芯片吗?

A:目前只有 NVIDIA 后端正式发布,Apple Metal 与 Intel OpenVINO 后端在测试中,AMD ROCm 仍在开发。

注意事项

  • 必须使用 --gpus all 把 GPU 透传给容器,否则无法推理。
  • 首次启动会构建 TensorRT 引擎,耗时可能很长,建议保留 trt-cache 卷避免重复构建。
  • 服务默认同时开放 HTTP 8000(nginx 反代到 Drogon 8080)与 gRPC 50051,两个端口都会自动启动。

核心亮点

  • 性能极致:TensorRT FP16 优化,单机吞吐量远超常规 OCR 服务,实测 200+ img/s。
  • 接口友好:同时提供 HTTP 和 gRPC,适配微服务和内部调用场景。
  • 模型先进:集成 PP-OCRv6,识别精度和速度平衡良好。

不足之处

  • 依赖特定硬件:TensorRT 优化依赖 NVIDIA GPU,非 N 卡环境无法发挥性能。
  • 文档/社区待观察:早期项目,文档和社区生态尚不成熟。

适用场景

  • 大规模文档扫描数字化,批量图片文字提取。
  • 视频流实时字幕识别,需要高吞吐低延迟。
  • 云服务商提供 OCR API,需要高并发处理能力。

替代项目

PaddleOCR、Tesseract OCR、EasyOCR

上一篇:bootcamp

下一篇:EgoLife

同类项目推荐

ai4rs 开源

遥感图像目标检测与变化检测,开箱即用

AI for remote sensing, remote sense, object detection, oriented object detection, co···

★ 164 2026-09-28
ssocr 开源

命令行识别图片里的七段数码管数字

Seven Segment Optical Character Recognition

★ 227 2026-11-08
DriveLM 开源

用图问答让自动驾驶学会推理和解释

[ECCV 2024 Oral] DriveLM: Driving with Graph Visual Question Answering

★ 1352 2026-08-09
UniGoal 开源

让机器人零训练看懂世界,直接找目标

[CVPR 2025] UniGoal: Towards Universal Zero-shot Goal-oriented Navigation

★ 373 2026-08-09
GiT 开源

一个Transformer搞定分类、检测、分割和生成,视觉任务不再分家。

[ECCV2024 Oral] Official Implementation of "GiT: Towards Generalist Vision Transform···

★ 365 2026-08-09
ComfyUI-MiniCPM 开源

在 ComfyUI 里直接调用 MiniCPM,给图像自动生成描述

A custom ComfyUI node for MiniCPM vision-language models, supporting v4, v4.5, and v···

★ 156 2026-08-09
EscherNet 开源

从几张照片生成任意视角新图,3D重建更轻松

[CVPR2024 Oral] EscherNet: A Generative Model for Scalable View Synthesis

★ 382 2026-08-09