NiDHiN-1908/id-document-forgery-detection
GitHub: NiDHiN-1908/id-document-forgery-detection
这是一个基于 FastAPI 的 AI 驱动系统,能够通过图像取证和 OCR 技术分析证件图像并生成结构化的伪造风险报告。
Stars: 1 | Forks: 0
# ID 伪造检测器
一个用于分析证件图像并生成结构化欺诈风险报告的原型 FastAPI 服务。
## 项目概述
本仓库实现了一个轻量级的伪造检测工作流程,使用图像启发式方法和 OCR 信号。
- `app/main.py` — FastAPI 应用程序入口点。
- `app/routes/analyze.py` — 用于文档分析的 Web 表单和 API 端点。
- `app/services/` — 图像处理、OCR 验证和风险评分逻辑。
- `app/models/schemas.py` — 用于验证和报告负载的 Pydantic 模型。
- `app/templates/` — 用于上传和报告渲染的 Jinja2 视图。
- `frontend/app.py` — 用于向 API 提交图像的 CLI 客户端。
- `tests/test_api.py` — 应用程序端点的集成测试。
## 功能
- 针对 JPEG/PNG 图像上传的文件验证。
- 启发式图像分析,包括亮度、对比度、边缘密度、噪声、结构和颜色均匀性。
- OCR 检查,以验证文本存在性、关键词信号、置信度和文本密度。
- 风险评分引擎,将文档分类为 `Low`(低)、`Moderate`(中)或 `High`(高)伪造风险。
- 易于理解的发现和建议的后续步骤。
- 用于监控的轻量级健康端点。
## 安装说明
1. 创建并激活您的 Python 环境。
python -m venv .venv
source .venv/bin/activate # Linux/macOS
.venv\Scripts\activate # Windows
2. 安装依赖项。
pip install -r requirements.txt
## 本地运行
启动 API 服务器:
```
python -m uvicorn app.main:app --reload --host 127.0.0.1 --port 8000
```
在浏览器中打开:
```
http://127.0.0.1:8000/
```
OpenAPI 文档位于:
```
http://127.0.0.1:8000/docs
```
## CLI 使用
使用 CLI 客户端将 ID 图像提交到 API:
```
python frontend/app.py path/to/id_image.png
```
## 测试
运行 API 测试套件:
```
python -m pytest tests/test_api.py
```
## 注意事项
- 本项目是一个原型,不应替代生产身份验证系统。
- 为了获得更好的运行时性能,请使用支持 GPU 的环境或降低 OCR 分辨率。
- 该应用设计易于扩展,可以集成到更大的身份验证 pipeline 中。
标签:Apex, API服务, AV绕过, FastAPI, OCR, Python, 云计算, 伪造识别, 光学字符识别, 图像取证, 图像处理, 图像识别, 数据验证, 文件上传, 文档分析, 无后门, 机器学习, 欺诈检测, 网络安全, 规则引擎, 计算机视觉, 逆向工具, 隐私保护