# paddle-ocr-webcam **Repository Path**: techwolf/paddle-ocr-webcam ## Basic Information - **Project Name**: paddle-ocr-webcam - **Description**: paddle-ocr-webcam - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-10-17 - **Last Updated**: 2025-10-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # PaddleOCR FastAPI 服务 > **项目已升级**: 从 Jupyter Notebook 转换为生产级别的 FastAPI 微服务! ## 📚 快速导航 ### 🚀 快速开始 (5 分钟) - **[QUICKSTART.md](QUICKSTART.md)** - 快速开始指南 - **[INDEX.md](INDEX.md)** - 文档索引和导航 ### 📖 详细文档 - **[API_README.md](API_README.md)** - 完整的 API 文档 - **[PROJECT_STRUCTURE.md](PROJECT_STRUCTURE.md)** - 项目结构说明 - **[MIGRATION_SUMMARY.md](MIGRATION_SUMMARY.md)** - 迁移总结 - **[COMPLETION_REPORT.md](COMPLETION_REPORT.md)** - 完成报告 - **[FINAL_SUMMARY.md](FINAL_SUMMARY.md)** - 最终总结 ## 🎯 项目概述 本项目是 PaddleOCR Jupyter Notebook 的现代化升级版本,已转换为生产级别的 FastAPI 微服务。 ### 核心功能 - ✅ 文本检测和识别 (Text Detection & Recognition) - ✅ 视频处理 (Video Processing) - ✅ RESTful API 接口 - ✅ Docker 容器化部署 - ✅ 完整的文档和测试 ### 支持的视频格式 MP4, AVI, MOV, MKV, FLV, WMV ## 🚀 快速开始 ### 1. 安装依赖 ```bash pip install -r requirements.txt ``` ### 2. 启动服务 ```bash python main.py ``` ### 3. 访问 API ```bash # 打开浏览器访问 Swagger UI http://localhost:8000/docs # 或使用 curl 进行健康检查 curl http://localhost:8000/health ``` ### 4. 处理视频 ```bash # 获取 JSON 结果 curl -X POST "http://localhost:8000/process-video" \ -F "file=@video.mp4" # 获取输出视频 curl -X POST "http://localhost:8000/process-video-with-output" \ -F "file=@video.mp4" \ -o output.mp4 # 使用客户端 python client_example.py --video video.mp4 --output output.mp4 --extract-text ``` ## 🐳 Docker 部署 ### 使用 Docker Compose ```bash docker-compose up ``` ### 使用 Docker 命令 ```bash docker build -t paddle-ocr-api . docker run -p 8000:8000 paddle-ocr-api ``` ## 📊 项目统计 | 指标 | 数值 | |------|------| | 总提交数 | 8 个 | | 总文件数 | 20 个 | | 总代码行数 | 2,192 行 | | API 端点 | 4 个 | | 文档文件 | 7 个 | ## 🔧 核心文件 ### 应用代码 - `main.py` - FastAPI 应用主文件 - `config.py` - 配置管理 - `ocr_processor.py` - OCR 处理模块 - `video_processor.py` - 视频处理模块 ### 测试和示例 - `test_api.py` - API 测试脚本 - `client_example.py` - 客户端示例 ### 部署配置 - `Dockerfile` - Docker 镜像配置 - `docker-compose.yml` - Docker Compose 编排 - `requirements.txt` - Python 依赖包 ## 📝 原始 Notebook 原始的 Jupyter Notebook 仍然可用: - `paddle-ocr-webcam.ipynb` - 原始 Notebook 文件 ## 🎓 技术栈 - **Web 框架**: FastAPI + Uvicorn - **推理引擎**: OpenVINO - **深度学习**: PaddlePaddle - **图像处理**: OpenCV - **容器化**: Docker + Docker Compose ## 📖 原始项目信息 PaddleOCR performs the Optical Character Recognition (OCR) function from a video, an image, or a scanned document. It is mainly composed of three parts: DB text detection, detection frame correction and [SVTR](https://arxiv.org/abs/2205.00159) text recognition. For more details, refer to the PaddleOCR [introduction](https://github.com/PaddlePaddle/PaddleOCR/blob/4b17511491adcfd0f3e2970895d06814d1ce56cc/doc/doc_en/PP-OCRv3_introduction_en.md). For more information about the other PaddleOCR pre-trained models, refer to the [PaddleOCR GitHub](https://github.com/PaddlePaddle/PaddleOCR) or [PaddleOCR Gitee](https://gitee.com/paddlepaddle/PaddleOCR).