# paddleocr_test **Repository Path**: hu-cj/paddleocr_test ## Basic Information - **Project Name**: paddleocr_test - **Description**: paddleocr 使用python 进行本地调用测试 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-12-04 - **Last Updated**: 2025-12-04 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # PaddleOCR 文字识别服务 基于 PaddleOCR 的图片文字识别工具,支持 CPU/GPU 推理,可输出 JSON 结果和可视化标注图片。 --- ## 📦 环境安装 ### 1. 安装 PaddleOCR 和 PaddleX ```bash pip install paddleocr paddlex ``` ### 2. 安装 PaddlePaddle 框架 **GPU 版本**(推荐,支持 CUDA 12.9): ```bash python -m pip install paddlepaddle-gpu==3.2.2 -i https://www.paddlepaddle.org.cn/packages/stable/cu129/ ``` **CPU 版本**: ```bash python -m pip install paddlepaddle==3.2.2 -i https://www.paddlepaddle.org.cn/packages/stable/cpu/ ``` > ⚠️ **重要提示**:CPU 和 GPU 版本不能同时安装,后安装的会覆盖前者。 > > 切换时请先卸载: > ```bash > pip uninstall paddlepaddle paddlepaddle-gpu -y > ``` ### 3. CUDA 环境配置(GPU 推理必需) - **CUDA 12.9**:[下载地址](https://developer.nvidia.com/cuda-12-9-0-download-archive?target_os=Windows&target_arch=x86_64&target_version=10&target_type=exe_local) - **cuDNN 9.7**:[下载地址](https://developer.nvidia.com/cudnn-9-7-0-download-archive?target_os=Windows&target_arch=x86_64&target_version=10&target_type=exe_local) 验证 CUDA 安装: ```bash nvidia-smi nvcc --version ``` --- ## 📋 当前版本 ```bash paddleocr 3.3.2 paddlepaddle 3.2.2 # CPU 版本 paddlepaddle-gpu 3.2.2 # GPU 版本 paddlex 3.3.10 ``` 查询版本命令: ```bash pip list | findstr paddle python -c "import paddle; print(paddle.__version__)" ``` --- ## 🚀 使用方法 ### 基本用法 ```bash python ocr_service.py --image <图片路径> [选项] ``` ### 参数说明 | 参数 | 说明 | 默认值 | |------|------|--------| | `--image` | 输入图片路径(必需) | - | | `--ocr-version` | 模型版本:PP-OCRv3/v4/v5 | PP-OCRv5 | | `--use-gpu` | 启用 GPU 加速 | False (CPU) | | `--lang` | 语言代码:ch/en 等 | ch | | `--json-output` | JSON 结果保存路径 | - | | `--visual-output` | 可视化图片保存路径 | - | --- ## 💡 推荐配置 ### CPU 推理(速度优先) ```bash python ocr_service.py --image .\pic\4.png \ --ocr-version PP-OCRv3 \ --json-output .\result\result_cpu_v3.json \ --visual-output .\result\result_cpu_v3.jpg ``` **性能**:~3.3 秒/张,准确率 87-96% ### GPU 推理(精度优先) ```bash python ocr_service.py --image .\pic\4.png \ --use-gpu \ --ocr-version PP-OCRv5 \ --json-output .\result\result_gpu_v5.json \ --visual-output .\result\result_gpu_v5.jpg ``` **性能**:~5-10 秒/张,准确率 96-99% ### GPU 推理(速度与精度平衡) ```bash python ocr_service.py --image .\pic\4.png \ --use-gpu \ --ocr-version PP-OCRv3 \ --json-output .\result\result_gpu_v3.json \ --visual-output .\result\result_gpu_v3.jpg ``` **性能**:~1-2 秒/张,准确率 87-96% --- ## 📊 性能对比 | 配置 | 初始化 | 识别耗时 | 准确率 | 推荐场景 | |------|--------|---------|--------|---------| | **CPU + v3** | ~1.8s | ~3.5s | 87-96% | ⭐ 日常使用 | | **GPU + v3** | ~1.0s | ~3.0s | 87-96% | 快速批处理 | | **CPU + v5** | ~3.6s | ~42s | 96-99% | ❌ 不推荐 | | **GPU + v5** | ~2.0s | ~6-10s | 96-99% | ⭐ 高精度需求 | > 💡 **建议**: > - CPU 环境:使用 PP-OCRv3 > - GPU 环境:根据需求选择 v3(快)或 v5(准) --- ## 🔧 常见问题 ### 1. 标注框位置不准确 确保禁用文档预处理(代码已配置): ```python use_doc_orientation_classify=False use_doc_unwarping=False ``` ### 2. AttributeError: module 'paddle' has no attribute 'device' 版本冲突,重新安装: ```bash pip uninstall paddlepaddle paddlepaddle-gpu -y pip install paddlepaddle-gpu==3.2.2 -i https://pypi.tuna.tsinghua.edu.cn/simple ``` ### 3. 识别速度太慢 - CPU 环境:改用 PP-OCRv3 - GPU 环境:检查 CUDA 是否正确安装 - 确保使用 `--use-gpu` 参数 --- ## 📁 输出文件说明 ### JSON 结果文件 ```json [ { "text": "识别的文字", "confidence": 0.98, "bounding_box": [[x1,y1], [x2,y2], [x3,y3], [x4,y4]] } ] ``` ### 可视化图片 在原图上绘制绿色标注框,标注所有识别到的文字区域。 --- ## 📝 更新日志 - **v1.2** - 支持 GPU 推理,添加性能计时 - **v1.1** - 修复标注框坐标问题,禁用文档预处理 - **v1.0** - 初始版本,支持 JSON 和可视化输出