Selaa lähdekoodia

添加OCR验证系统的README文档,详细说明主要功能、使用指南和项目结构

zhch158_admin 2 kuukautta sitten
vanhempi
commit
e7bb3e7be0
1 muutettua tiedostoa jossa 239 lisäystä ja 0 poistoa
  1. 239 0
      README.md

+ 239 - 0
README.md

@@ -0,0 +1,239 @@
+# OCR验证系统
+
+一个基于视觉语言模型(VLM)的OCR识别与验证系统,专门用于处理财务报表、数据表格等文档的OCR识别和结果对比验证。
+
+## ✨ 主要功能
+
+- 🔍 **高精度OCR识别**:使用多模态大语言模型进行图片文字识别
+- 📊 **智能表格处理**:专业的表格结构识别和数据提取
+- 🔧 **数字格式标准化**:自动处理全角/半角字符、千分符格式
+- 📝 **结果对比验证**:详细的OCR结果差异分析
+- 📈 **多种输出格式**:支持Markdown、JSON等格式输出
+- ⚙️ **灵活配置**:支持多种API提供商和参数调整
+
+## 🚀 快速开始
+
+### 环境配置
+
+```bash
+# 创建conda环境
+conda create -n py312 python=3.12 -y
+conda activate py312
+
+#
+git config --local user.name "zhch158_admin"
+git config --local user.email "zhch158@sina.com"
+# 自定义缓存时间(如7200秒)
+git config --global credential.helper 'cache --timeout=7200'
+
+# 克隆项目
+git clone https://gitee.com/zhch158_admin/ocr_verify.git
+cd ocr_verify
+
+# 安装依赖
+pip install openai python-dotenv beautifulsoup4 markdown
+```
+
+### 环境变量配置
+
+复制 [.env](.env) 文件并配置您的API密钥:
+
+```bash
+cp .env.example .env
+# 编辑.env文件,配置相应的API密钥
+```
+
+支持的API提供商:
+
+- DeepSeek
+- 阿里云DashScope
+- ModelScope
+- Google Gemini
+- Ollama (本地部署)
+
+## 📖 使用指南
+
+### 1. OCR识别
+
+使用 [ocr_by_vlm.py](ocr_by_vlm.py) 进行图片OCR识别:
+
+```bash
+# 标准OCR识别(启用数字标准化)
+python ocr_by_vlm.py image.png -o output/
+
+# 禁用数字标准化
+python ocr_by_vlm.py image.png --no-normalize
+
+# 批量标准化已有文件
+python ocr_by_vlm.py --batch-normalize ./markdown_files/ -o ./normalized/
+
+# 自定义参数
+python ocr_by_vlm.py image.png -t 0.05 -m 8192 --timeout 300
+```
+
+**参数说明:**
+
+- `-o, --output`:输出目录
+- `-t, --temperature`:生成温度(默认0.1)
+- `-m, --max-tokens`:最大token数(默认4096)
+- `--timeout`:超时时间(默认180秒)
+- `--no-normalize`:禁用数字标准化
+- `--batch-normalize`:批量标准化模式
+
+### 2. 结果对比
+
+使用 compare_ocr_results.py 对比两个OCR结果:
+
+```bash
+# 基本对比
+python compare_ocr_results.py file1.md file2.md
+
+# 指定输出格式和文件名
+python compare_ocr_results.py file1.md file2.md -o comparison_result -f both
+
+# 生成详细报告
+python compare_ocr_results.py file1.md file2.md --ignore-images
+```
+
+**输出格式:**
+
+- JSON报告:机器可读的详细差异数据
+- Markdown报告:人类友好的对比报告
+
+### 3. 高级验证功能
+
+查看 ocr_vlm_verify 目录了解升级后的验证功能:
+
+```bash
+# 运行高精度验证演示
+cd ocr_vlm_verify
+python quick_demo.py
+
+# 查看升级对比说明
+cat README_Upgrade_Comparison.md
+```
+
+## 📁 项目结构
+
+```
+ocr_verify/
+├── .env                        # 环境变量配置
+├── README.md                   # 项目说明文档
+├── ocr_by_vlm.py              # 主OCR识别脚本
+├── compare_ocr_results.py     # 结果对比工具
+├── ocr_vlm_verify/            # 升级版验证系统
+│   ├── ocr_verification.py    # 高级验证功能
+│   ├── quick_demo.py          # 功能演示
+│   ├── simple_ocr_test.py     # 简化测试
+│   └── README_Upgrade_Comparison.md  # 升级说明
+├── sample_data/               # 测试样本数据
+├── output/                    # 输出结果目录
+├── image_edit/               # 图片处理工具
+```
+
+## 🔧 核心功能详解
+
+### OCR识别功能
+
+- **多模态识别**:支持图片转Markdown格式
+- **数字标准化**:自动处理财务数据格式
+- **表格优化**:专业的表格结构识别
+- **格式保持**:保持原文档的布局结构
+
+### 对比验证功能
+
+- **表格差异检测**:逐项对比表格数据
+- **段落差异分析**:智能段落匹配对比
+- **金额验证**:专门的数字金额对比
+- **位置定位**:精确的差异位置标记
+
+### 数字标准化功能
+
+自动处理以下格式转换:
+
+- 全角数字 → 半角数字
+- 全角标点 → 半角标点
+- 千分符标准化
+- 小数点格式统一
+
+## 📊 使用示例
+
+### 示例1:处理财务报表
+
+```bash
+# 识别财务报表图片
+python ocr_by_vlm.py 财务报表.png -o output/
+
+# 对比两个版本的识别结果
+python compare_ocr_results.py output/财务报表.md reference/标准版本.md -o 对比报告
+```
+
+### 示例2:批量处理
+
+```bash
+# 批量标准化已有的Markdown文件
+python ocr_by_vlm.py --batch-normalize ./原始文件/ -o ./标准化文件/
+```
+
+## 🎯 升级功能亮点
+
+系统经过全面升级,主要改进包括:
+
+### 检测能力提升
+
+- 错误检测覆盖率:70% → 95%
+- 新增格式错误识别功能
+- 表格坐标精确定位
+- 专业级错误描述
+
+### 验证模式对比
+
+- **高精度模式**:适用于财务报表,逐项数值验证
+- **标准模式**:通用文档处理
+- **快速模式**:大批量处理
+
+详细升级内容请查看 README_Upgrade_Comparison.md
+
+## 🔧 Visual Studio Code配置
+
+项目包含预配置的VSCode调试配置,请参考 launch.json:
+
+```json
+{
+    "configurations": [
+        {
+            "name": "Python Debugger: Current File",
+            "type": "debugpy",
+            "request": "launch",
+            "program": "${file}",
+            "console": "integratedTerminal",
+            "cwd": "${fileDirname}",
+            "env": {"PYTHONPATH":"${workspaceFolder};${env:PYTHONPATH}"},
+            "envFile": "${workspaceFolder}/.env",
+            "justMyCode": false
+        }
+    ]
+}
+```
+
+## 📄 输出示例
+
+### OCR识别输出
+
+- **Markdown文件**:格式化的文档内容
+- **JSON元数据**:处理信息和配置参数
+- **标准化报告**:字符变更统计
+
+### 对比报告示例
+
+查看 comparison_result.md 了解详细的对比报告格式。
+
+## 📞 联系方式
+
+- 作者:zhch158_admin
+- 邮箱:zhch158@sina.com
+- 仓库:https://gitee.com/zhch158_admin/ocr_verify.git
+
+## 📝 许可证
+
+本项目采用开源许可证,具体请查看项目根目录的LICENSE文件。