RapidOCR 上手:3分钟跑通截图与扫描件的本地文字识别
【免费下载链接】RapidOCR📄 Awesome OCR multiple programing languages toolkits based on ONNX Runtime, OpenVINO, MNN, PaddlePaddle, TensorRT and PyTorch.项目地址: https://gitcode.com/GitHub_Trending/ra/RapidOCR
你需要把截图或扫描文档里的文字提取成可编辑文本时,常见做法是调云端接口:按次付费,图片还得传出去。RapidOCR 是本地 OCR 文字识别工具包,3分钟装好,一行代码就能识别一张图,覆盖中文、英文、日文、韩文等多语言。
📄 场景:从截图和扫描件里抠文字
比如一批合同扫描件,或者需求文档里三四十张截图,要把文字变成可搜索、可编辑的形式。手敲不现实,云端接口又有一笔调用费,且网络要走第三方。RapidOCR 做的就是这一件事:传入一张图,返回文字内容和对应的位置框。它基于 PaddleOCR 系列模型,打包成 ONNX Runtime、OpenVINO、PaddlePaddle、TensorRT、PyTorch、MNN 等多个推理后端,机器不同就换后端,代码不变。
🖼️ 先看三张样例,效果心里有数
最基础的场景:白底大字中文,逐字框出、准确无误。
识别模型按语言分开,这类日文混排汉字的内容可以按行识别,不用换模型。
这张图存储时实际倒了 180 度,RapidOCR 会先按 EXIF 信息校正方向再识别,手机拍的照片不用手动转。
🛠️ 上手实操:装完就跑
环境准备:两条命令
git clone https://gitcode.com/GitHub_Trending/ra/RapidOCR cd RapidOCR/python && pip install -r requirements.txt不想碰源码的话,pip install rapidocr一条命令也行。模型文件在首次运行时自动下载到 python/rapidocr/models/ 目录,不占你手动管理。
跑通第一次识别
用仓库自带的测试图就能验证:
from rapidocr import RapidOCR engine = RapidOCR() result = engine("python/tests/test_files/ch_en_num.jpg") print(result.txts)result.txts就是每行文字的结果列表。想把检测框画回原图存下来,加一句result.vis("vis.jpg"),完整写法可参考 python/demo.py。
⚙️ 跑通之后,可以动的三个旋钮
都集中在 python/rapidocr/config.yaml:
- 识别链路:Global 下的 use_det / use_cls / use_rec 控制检测、方向分类、识别三步各跑不跑。如果输入本来就是裁好的文字条,关掉检测能省不少时间;text_score 是置信度下限,调高可以过滤低分结果。
- 模型选择:每个模块有 lang_type、model_type(small/mobile/server)、ocr_version 三个字段,可选模型全量清单见 python/rapidocr/default_models.yaml。
- 推理后端:engine_type 可选 onnxruntime、openvino、paddle、pytorch、tensorrt、mnn,各后端实现都在 python/rapidocr/inference_engine/ 下,配置项对应各自设备的线程、显存参数。
不想改配置文件的话,调用时也能临时覆盖:engine("img.jpg", use_det=False, text_score=0.7, return_word_box=True),最后这个参数会额外返回词级框。
🧩 还能顺手做的事
- 批量数字化:对文件夹里的文件跑一个循环,结果用 python/rapidocr/utils/ 下的 to_markdown、to_json 工具转成文档格式。
- 截图转翻译辅助:把识别文本丢给翻译接口,外文文档阅读时省一道手动抄录。
- 无障碍读屏:本地推理不经过网络,适合给视障用户做设备端文字播报。
- 命令行直用:装好后可以直接敲
rapidocr命令做一次性识别,不必为一张图写脚本。
第一次跑通之后,剩下的就是参数问题。默认配置先用起来,遇到第二张识别不理想的图,你就知道该拧上面哪个旋钮了。
【免费下载链接】RapidOCR📄 Awesome OCR multiple programing languages toolkits based on ONNX Runtime, OpenVINO, MNN, PaddlePaddle, TensorRT and PyTorch.项目地址: https://gitcode.com/GitHub_Trending/ra/RapidOCR
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考