0Aman1/IntelliVision

GitHub: 0Aman1/IntelliVision

一款 AI 驱动的图像取证与安全分析平台,整合目标检测、OCR、篡改检测等多维能力,实现单图片深度解读。

Stars: 0 | Forks: 0

# IntelliVision **AI 驱动的图像分析,支持多视角解读。** 单进程、同步、单体后端。无队列、无任务存储、无轮询。 ## 项目概述 IntelliVision 通过单一的请求/响应流程分析上传的图像: 1. 通过 `POST /api/v1/analyze` **上传**图像。 2. **后端**在进程内运行完整流水线: - **共享视觉:** 目标检测 (YOLO)、OCR (EasyOCR/Tesseract)、场景分类、元数据。 - **Agent 视角:** 风险、人群密度、异常、安全警报。 - **侦探视角:** ELA、克隆检测、取证线索、篡改评估。 - **用户视角:** 摘要、标题、关键点、说明。 3. **响应**在同一个 HTTP 响应中返回完整的 JSON 结果。 无 `task_id`、无轮询、无 Celery、无 Redis、无用于任务的 PostgreSQL。 ## 架构 (单体) ``` ┌─────────────┐ POST /api/v1/analyze ┌──────────────────────────────────┐ │ Browser │ ────────────────────────────► │ FastAPI (single process) │ │ (React) │ multipart/form-data │ • Save image │ └─────────────┘ │ • run_shared_vision │ ▲ │ • run_agent_view │ │ │ • run_detective_view │ │ Full JSON result │ • run_user_view │ └─────────────────────────────────────│ • Delete temp file │ │ • Return response │ └──────────────────────────────────┘ ``` - **单一后端进程:** 一个 uvicorn 进程运行 API 和所有 AI 逻辑。 - **同步:** 请求阻塞直到分析完成;响应包含完整结果。 - **无状态:** 无任务数据库;无 Redis/Celery。 ## 核心能力 - **目标检测** (YOLOv8) - **OCR** (EasyOCR, Tesseract 后备) - **场景分类** (桩模块;可扩展) - **元数据** (EXIF/时间戳) - **Agent 视角** (风险、人群、警报、观察) - **侦探视角** (ELA、克隆检测、取证线索、篡改) - **用户视角** (摘要、BLIP 标题、关键点、说明) ## 文件夹结构 ``` IntelliVision/ ├── backend/ │ ├── main.py # Entry: from app.main import app (for uvicorn main:app) │ ├── requirements.txt │ ├── app/ │ │ ├── main.py # FastAPI app, CORS, router │ │ ├── core/ │ │ │ └── constants.py # UPLOAD_DIR, allowed types, max size │ │ ├── utils/ │ │ │ └── image_utils.py # validate_image, generate_safe_filename │ │ ├── api/v1/ │ │ │ ├── router.py # Mounts health + analyze │ │ │ └── routes/ │ │ │ ├── health.py # GET /health │ │ │ └── analyze.py # POST /analyze (sync pipeline) │ │ └── ai/ │ │ ├── shared/ # run_shared_vision (YOLO, OCR, scene, metadata) │ │ ├── agent_view/ # run_agent_view │ │ ├── detective_view/ # run_detective_view │ │ └── user_view/ # run_user_view │ └── uploads/ # Temp uploads (created at runtime) ├── frontend/ │ ├── package.json │ ├── vite.config.js │ ├── index.html │ └── src/ │ ├── main.jsx │ ├── App.jsx # Upload → POST analyze → display result │ ├── App.css │ └── index.css └── README.md ``` ## 技术栈 | 层级 | 技术 | |----------|------------| | 后端 | Python 3.11+, FastAPI, Uvicorn | | AI | PyTorch, Ultralytics (YOLO), EasyOCR, Tesseract, Transformers (BLIP), OpenCV, Pillow, NumPy, SciPy | | 前端 | React 18, Vite, Axios, Lucide React | | 配置 | Pydantic (环境变量), 代码中的常量 | ## 如何运行 ### 后端 使用 **Python 3.11**(spaCy/Pydantic 尚未完全兼容 Python 3.14+)。本仓库提供了一个使用 3.11 创建的 `venv311`;可以直接使用或自行创建: ``` # 从项目根目录(例如 intellivision-forensics) python -m venv venv311 --python=python3.11 # or: py -3.11 -m venv venv311 venv311\Scripts\activate # Windows # source venv311/bin/activate # Linux/macOS pip install -r requirements.txt uvicorn backend.main:app --reload --host 0.0.0.0 --port 8000 ``` - API: http://localhost:8000 - 文档: http://localhost:8000/docs ### 前端 ``` cd IntelliVision/frontend npm install npm run dev ``` - 应用: http://localhost:3000 (或 Vite 显示的端口)。 - 确保后端运行在 8000 端口,以便前端可以调用 `/api/v1/analyze`。 ### 快速测试 1. 启动后端,然后启动前端。 2. 在浏览器中打开应用,上传图像 (JPEG/PNG/WebP, 最大 10MB)。 3. 点击 **Analyze Image**。等待请求完成(无轮询)。 4. 在 Overview、Objects、Text、Scenes、Perspectives 和 Forensics 标签页查看结果。 ## 未来扩展 - **可选的速率限制**(如需要,例如内存或 Redis)。 - **ResNet/ViT 场景分类器**以替换桩模块。 - 检测对象之间的**关系分析**。 - **可选的结果缓存**(例如通过图像哈希)以避免对同一图像重新运行流水线。 - **Docker** 单镜像部署(后端使用一个容器,无需用于任务的 worker/Redis/Postgres)。 **版本:** 1.0.0 **架构:** 单体、同步、单进程。
标签:AV绕过, ELA, FastAPI, Naabu, OCR, Python, React, Syscalls, YOLO, 人工智能, 元数据分析, 光学字符识别, 克隆检测, 内容安全, 凭据扫描, 单体系架构, 图像分析, 图像取证, 图像鉴权, 场景分类, 对象检测, 异常检测, 情报分析, 数字取证, 无后门, 深度伪造检测, 用户模式Hook绕过, 篡改检测, 系统调用监控, 网络安全, 网络诊断, 自动化攻击, 自动化脚本, 计算机视觉, 逆向工具, 错误级别分析, 隐写术, 隐私保护