# OCR2HTML **Repository Path**: Maxwell_Peng_pengjin/ocr2-html ## Basic Information - **Project Name**: OCR2HTML - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-12-17 - **Last Updated**: 2025-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # OCR2HTML - AI化验单分析系统 基于DeepSeek-OCR和大语言模型的化验单智能分析系统,能够自动识别化验单图片、提取结构化数据、分析异常指标,并生成可视化HTML报告。 ## ✨ 功能特点 ### 🖼️ 图像处理 - 支持多种图片格式:JPG、PNG、BMP、TIFF - 自动图像质量检测与增强 - 智能OCR文字识别 ### 🔍 OCR识别 - 基于DeepSeek-OCR的高精度文字识别 - 保留表格结构和布局信息 - 置信度评估与数据过滤 ### 🧠 智能分析 - 大语言模型结构化数据提取 - 异常值自动检测与标记 - 临床意义分析与风险评估 - 单位转换与参考范围解析 ### 📊 可视化报告 - 专业美观的HTML报告 - 异常值高亮显示 - 统计图表与趋势分析 - 响应式设计,支持移动端 ### 🚀 便捷操作 - 拖拽上传文件 - 实时处理进度显示 - 批量处理支持 - 报告预览与下载 ## 🏗️ 系统架构 ``` 输入层(图像预处理) ├── 图像质量检测 ├── 自动增强处理 └── 格式转换 核心处理层 ├── DeepSeek-OCR识别 ├── 结构化数据提取 ├── 异常值分析 └── 风险评估 输出层(可视化) ├── HTML报告生成 ├── 异常指标汇总 ├── AI分析摘要 └── 报告导出 ``` ## 🚀 快速开始 ### 环境要求 - Node.js 16+ - npm 或 yarn - DeepSeek API密钥 ### 安装步骤 1. 克隆项目 ```bash git clone https://gitee.com/Maxwell_Peng_pengjin/ocr2-html.git cd ocr2-html ``` 2. 安装依赖 ```bash npm install ``` 3. 配置环境变量 ```bash cp .env.example .env # 编辑 .env 文件,填入你的DeepSeek API密钥 ``` 4. 启动服务器 ```bash npm start # 或使用开发模式 npm run dev ``` 5. 访问应用 打开浏览器访问:http://localhost:3000 ## ⚙️ 配置说明 ### 环境变量 (.env) ```env # DeepSeek API配置 DEEPSEEK_API_KEY=your_deepseek_api_key_here DEEPSEEK_API_BASE=https://api.deepseek.com # OCR配置 OCR_CONFIDENCE_THRESHOLD=0.85 OCR_MAX_FILE_SIZE=5242880 # 5MB # 服务器配置 PORT=3000 NODE_ENV=development # 文件上传配置 UPLOAD_DIR=./uploads MAX_UPLOAD_FILES=10 ``` ### 📁 目录结构 ``` ocr2-html/ ├── src/ # 源代码 │ ├── modules/ # 功能模块 │ │ ├── ocr/ # OCR处理模块 │ │ ├── parser/ # 数据解析模块 │ │ └── generator/ # HTML生成模块 │ ├── static/ # 静态文件 │ │ ├── css/ # 样式文件 │ │ ├── js/ # 前端脚本 │ │ └── index.html # 前端页面 │ └── app.js # 主应用程序 ├── uploads/ # 上传文件临时目录 ├── output/ # 生成的报告目录 ├── tests/ # 测试文件 ├── .env.example # 环境变量示例 ├── package.json # 项目配置 └── README.md # 说明文档 ``` ## 📖 使用指南 ### 1. 上传文件 - 点击"选择文件"按钮或拖拽文件到上传区域 - 支持批量上传,最多10个文件 - 单文件最大5MB ### 2. 配置选项 - **OCR识别模式**:标准/高精度/快速 - **分析模式**:标准/详细/快速 - **处理选项**:数据验证/数据增强/图像预览 ### 3. 开始处理 - 点击"开始处理"按钮 - 系统将自动进行OCR识别、数据分析和报告生成 - 实时显示处理进度 ### 4. 查看结果 - 查看统计信息:总项目数、异常项目、危急值等 - 预览HTML报告 - 下载报告文件 - 生成新的报告 ## 🔌 API接口 ### 文件上传 ``` POST /api/upload Content-Type: multipart/form-data 参数: - files: 图片文件(多选) - ocrMode: OCR模式 - analysisMode: 分析模式 - enableValidation: 是否启用验证 - enableEnhancement: 是否启用增强 - generateImagePreview: 是否生成图像预览 ``` ### 处理进度 ``` GET /api/progress/:processId ``` ### 报告列表 ``` GET /api/reports ``` ### 健康检查 ``` GET /api/health ``` ### 模拟处理(测试用) ``` POST /api/mock/process ``` ## 💻 开发指南 ### 模块说明 #### OCR模块 (`src/modules/ocr/`) - `imagePreprocessor.js`: 图像预处理 - `deepseekOCR.js`: DeepSeek-OCR接口封装 - `index.js`: OCR处理器主入口 #### 解析模块 (`src/modules/parser/`) - `dataSchema.js`: 数据Schema定义 - `deepseekParser.js`: 大语言模型解析器 - `index.js`: 数据解析器主入口 #### 生成模块 (`src/modules/generator/`) - `htmlTemplates.js`: HTML模板引擎 - `index.js`: HTML生成器主入口 ### 添加新的检验项目类型 1. 在 `src/modules/parser/dataSchema.js` 中添加项目定义 2. 在 `src/modules/parser/deepseekParser.js` 中添加解析逻辑 3. 在 `src/modules/generator/htmlTemplates.js` 中添加显示模板 ### 自定义报告样式 编辑 `src/modules/generator/htmlTemplates.js` 中的样式定义,或修改 `src/static/css/style.css` 文件。 ## 🧪 测试 ### 运行测试 ```bash npm test ``` ### 模拟测试 由于需要API密钥,系统提供了模拟测试接口: 1. 启动服务器 2. 访问 http://localhost:3000 3. 上传任意图片文件 4. 系统将使用模拟数据进行测试 ## ⚠️ 注意事项 ### 数据安全 - 所有上传的文件在处理完成后会自动删除 - 生成的报告不包含敏感个人信息 - 建议在生产环境中使用HTTPS ### 性能优化 - 大文件处理可能需要较长时间 - 建议单次处理不超过5个文件 - 可调整OCR和分析模式以平衡速度与精度 ### 错误处理 - 系统会自动记录错误日志 - 处理失败的文件会显示具体错误信息 - 支持断点续传(开发中) ## 🔧 故障排除 ### 常见问题 1. **API密钥错误** - 检查 `.env` 文件中的 `DEEPSEEK_API_KEY` - 确保API密钥有足够的额度 2. **文件上传失败** - 检查文件格式和大小限制 - 确保上传目录有写入权限 3. **处理速度慢** - 减少同时处理的文件数量 - 使用"快速模式" - 检查网络连接 4. **报告生成失败** - 检查输出目录权限 - 查看服务器日志获取详细信息 ### 日志查看 ```bash # 查看错误日志 tail -f logs/error.log # 查看访问日志 tail -f logs/access.log ``` ## 📅 更新日志 ### v1.0.0 (2024-12-17) - 初始版本发布 - 完整的OCR识别流程 - 大语言模型数据分析 - HTML报告生成 - 前端交互界面 ## 📄 许可证 MIT License ## ⚖️ 免责声明 本系统生成的分析报告仅供参考,不能替代专业医疗诊断。如有任何健康问题,请及时咨询专业医生。 ## 🤝 参与贡献 1. Fork 本仓库 2. 新建 Feat_xxx 分支 3. 提交代码 4. 新建 Pull Request ## 📞 技术支持 如有问题或建议,请提交Issue或联系开发团队。