doc: rewrite README with architecture overview and module docs
This commit is contained in:
parent
a83eb04094
commit
12d21b0d23
141
README.md
141
README.md
@ -1 +1,140 @@
|
|||||||
# themblem.com project
|
# 徵象 Themblem
|
||||||
|
|
||||||
|
**AI 驱动的智能防伪溯源平台**
|
||||||
|
|
||||||
|
徵象基于"无复制性原理",利用二维码在印刷过程中形成的微观差异作为不可复制的"图像指纹",结合深度学习模型实现高精度真伪鉴别。消费者仅需通过微信小程序扫码,即可在 1-2 秒内完成防伪验证。
|
||||||
|
|
||||||
|
## 架构总览
|
||||||
|
|
||||||
|
```
|
||||||
|
┌──────────────────────┐ ┌────────────────────┐
|
||||||
|
│ 微信小程序 (scanner) │ │ 管理后台 (web) │
|
||||||
|
│ · 扫码采集 │ │ · Vue 3 + CoreUI │
|
||||||
|
│ · WASM QR 检测 │ │ · 产品/批次管理 │
|
||||||
|
│ · 实时验证 │ │ · 扫描数据分析 │
|
||||||
|
└──────────┬───────────┘ └──────────┬─────────┘
|
||||||
|
│ │
|
||||||
|
▼ ▼
|
||||||
|
┌──────────────────────────────────────────────────┐
|
||||||
|
│ Django API (api) │
|
||||||
|
│ · REST API (Tastypie) · 多租户隔离 │
|
||||||
|
│ · AI 对话 (DeepSeek) · 阿里云 OSS 存储 │
|
||||||
|
│ · 设备摄像头适配 · PostgreSQL │
|
||||||
|
└──────────────────────┬───────────────────────────┘
|
||||||
|
│
|
||||||
|
┌───────────────┼───────────────┐
|
||||||
|
▼ ▼ ▼
|
||||||
|
┌─────────────┐ ┌─────────────┐ ┌─────────────┐
|
||||||
|
│ alg (C++) │ │ emblem5 (AI)│ │ Kubernetes │
|
||||||
|
│ · libqr │ │ · ResNet18 │ │ · K3s │
|
||||||
|
│ · WASM 编译 │ │ · 训练/推理 │ │ · Traefik │
|
||||||
|
│ · 特征提取 │ │ · wandb │ │ · Nginx │
|
||||||
|
└─────────────┘ └─────────────┘ └─────────────┘
|
||||||
|
```
|
||||||
|
|
||||||
|
## 项目结构
|
||||||
|
|
||||||
|
```
|
||||||
|
├── alg/ QR 码检测与特征提取 (C++/WASM)
|
||||||
|
├── api/ Django REST API 后端
|
||||||
|
├── web/ Vue 3 管理后台
|
||||||
|
├── scanner/ 微信小程序
|
||||||
|
├── emblem5/ AI 训练与推理流水线 (PyTorch)
|
||||||
|
├── deploy/ Kubernetes 部署配置
|
||||||
|
├── scripts/ 部署脚本与 CLI 工具
|
||||||
|
├── dataset/ 训练数据集样本
|
||||||
|
├── doc/ 产品与技术文档
|
||||||
|
├── Makefile 构建、训练、部署一站式入口
|
||||||
|
└── .gitlab-ci.yml CI/CD 流水线
|
||||||
|
```
|
||||||
|
|
||||||
|
## 核心模块
|
||||||
|
|
||||||
|
### QR 检测引擎 (`alg/`)
|
||||||
|
|
||||||
|
基于 OpenCV 构建的 QR 码检测与特征提取库,核心用 C++ 编写,编译产出:
|
||||||
|
|
||||||
|
- **qrtool** — CLI 工具,用于离线处理
|
||||||
|
- **qrtool.web.wasm** — 浏览器端 WebAssembly
|
||||||
|
- **qrtool.wx.wasm** — 微信小程序 WebAssembly
|
||||||
|
|
||||||
|
关键算法包括 QR 码定位、透视矫正、微观特征提取和相似度比对(CellWeight / FuzzyPixelCmp)。
|
||||||
|
|
||||||
|
### AI 训练流水线 (`emblem5/`)
|
||||||
|
|
||||||
|
基于 PyTorch ResNet18 的迁移学习方案,完整覆盖数据采集到模型部署全流程:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
make fetch # 从 API 拉取扫描数据
|
||||||
|
make sbs # 生成 side-by-side 训练图对
|
||||||
|
make train # 训练模型 (30 epochs)
|
||||||
|
make check-accuracy MODEL=... # 评估模型准确率
|
||||||
|
```
|
||||||
|
|
||||||
|
训练方法:将扫描帧与标准图像分别切割为 3×3 网格,逐块对比学习微观特征差异,最终通过投票机制判定真伪。当前最佳模型准确率达 **98.94%** (正样本) / **96.13%** (负样本)。
|
||||||
|
|
||||||
|
### API 后端 (`api/`)
|
||||||
|
|
||||||
|
Django + Tastypie REST API,核心功能:
|
||||||
|
|
||||||
|
- 多租户隔离与权限管理
|
||||||
|
- 二维码批次生成与生命周期管理
|
||||||
|
- 扫描数据采集与验证结果分析
|
||||||
|
- AI 客服对话 (DeepSeek + RAG)
|
||||||
|
- 设备摄像头参数动态适配 (覆盖 1500+ 机型)
|
||||||
|
|
||||||
|
### 管理后台 (`web/`)
|
||||||
|
|
||||||
|
Vue 3 + CoreUI 构建的 SPA 管理面板,提供产品管理、批次操作、扫描数据分析、AI 对话配置、模型管理等功能。
|
||||||
|
|
||||||
|
### 微信小程序 (`scanner/`)
|
||||||
|
|
||||||
|
消费者端扫码验证入口。内置 WebAssembly QR 检测引擎,通过 Worker 线程实现非阻塞实时检测,支持自动亮度感应、设备特定参数适配等优化。
|
||||||
|
|
||||||
|
## 快速开始
|
||||||
|
|
||||||
|
### 环境要求
|
||||||
|
|
||||||
|
- Python 3.10+, Node.js 16+
|
||||||
|
- PostgreSQL
|
||||||
|
- Docker (构建镜像)
|
||||||
|
|
||||||
|
### 本地开发
|
||||||
|
|
||||||
|
```bash
|
||||||
|
# API 后端
|
||||||
|
cd api && pip install -r ../requirements.txt
|
||||||
|
./manage.py migrate && ./manage.py runserver
|
||||||
|
|
||||||
|
# Web 前端
|
||||||
|
cd web && npm install && npm run serve
|
||||||
|
|
||||||
|
# AI 训练 (需 GPU)
|
||||||
|
make fetch && make sbs && make train
|
||||||
|
```
|
||||||
|
|
||||||
|
### 构建与部署
|
||||||
|
|
||||||
|
```bash
|
||||||
|
make web # 构建前端
|
||||||
|
make docker-build # 构建 Docker 镜像
|
||||||
|
make docker-push # 推送至镜像仓库
|
||||||
|
make deploy-api-dev # 部署到开发环境
|
||||||
|
make deploy-api-prod # 部署到生产环境
|
||||||
|
```
|
||||||
|
|
||||||
|
## 技术栈
|
||||||
|
|
||||||
|
| 层级 | 技术 |
|
||||||
|
|------|------|
|
||||||
|
| 前端 | Vue 3, CoreUI, Chart.js |
|
||||||
|
| 后端 | Django, Tastypie, Gunicorn, Nginx |
|
||||||
|
| AI/ML | PyTorch, ResNet18, Kornia, wandb |
|
||||||
|
| 计算机视觉 | OpenCV, C++, WebAssembly (Emscripten) |
|
||||||
|
| 存储 | PostgreSQL, 阿里云 OSS |
|
||||||
|
| 部署 | Docker, Kubernetes (K3s), Traefik |
|
||||||
|
| 小程序 | 微信原生 + WASM Worker |
|
||||||
|
|
||||||
|
## 许可证
|
||||||
|
|
||||||
|
Proprietary — 广州市诚投科技有限公司 © 2024
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user