89 lines
2.4 KiB
Markdown
89 lines
2.4 KiB
Markdown
|
|
# 人脸识别系统
|
|||
|
|
|
|||
|
|
基于 C++ 核心的多端人脸识别系统,支持 Web 管理端和 Android 离线识别。
|
|||
|
|
|
|||
|
|
## 项目结构
|
|||
|
|
|
|||
|
|
```
|
|||
|
|
Face-app-web/
|
|||
|
|
├── backend-java/ # Java Spring Boot 后端
|
|||
|
|
├── android-sdk/ # Android 离线 SDK
|
|||
|
|
│ ├── face-core/ # SDK 核心库
|
|||
|
|
│ └── app/ # 示例应用
|
|||
|
|
├── web-admin/ # React 管理前端
|
|||
|
|
├── FaceRecog/ # C++ 人脸识别核心(参考)
|
|||
|
|
├── FaceFeatureExtractorAPI/# Python 特征提取 API(参考)
|
|||
|
|
└── Silent-Face-Anti-Spoofing-APK-master/ # 活体检测(参考)
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
## 功能特性
|
|||
|
|
|
|||
|
|
### 后端系统 (backend-java)
|
|||
|
|
- ✅ 人员管理(增删改查)
|
|||
|
|
- ✅ 分组管理
|
|||
|
|
- ✅ 设备管理与心跳
|
|||
|
|
- ✅ 数据同步接口(支持增量更新)
|
|||
|
|
- ✅ RESTful API
|
|||
|
|
|
|||
|
|
### Android SDK (android-sdk)
|
|||
|
|
- ✅ 离线人脸识别(基于 C++ 核心)
|
|||
|
|
- ✅ 活体检测集成
|
|||
|
|
- ✅ 本地数据库(SQLite)
|
|||
|
|
- ✅ 数据同步机制
|
|||
|
|
- ✅ 实时相机预览与识别 UI
|
|||
|
|
|
|||
|
|
## 快速开始
|
|||
|
|
|
|||
|
|
### 1. 启动后端
|
|||
|
|
|
|||
|
|
```bash
|
|||
|
|
cd backend-java
|
|||
|
|
mvn spring-boot:run
|
|||
|
|
```
|
|||
|
|
|
|||
|
|
访问测试页面:http://localhost:8080/test.html
|
|||
|
|
|
|||
|
|
### 2. 运行 Android 应用
|
|||
|
|
|
|||
|
|
1. 在 Android Studio 中打开 `android-sdk` 目录
|
|||
|
|
2. 修改 `SyncManager.java` 中的服务器地址
|
|||
|
|
3. 连接设备或启动模拟器
|
|||
|
|
4. 运行 `app` 模块
|
|||
|
|
|
|||
|
|
### 3. 使用流程
|
|||
|
|
|
|||
|
|
1. 在后端测试页面注册用户(上传人脸照片)
|
|||
|
|
2. 在 Android 应用中点击"同步人员数据"
|
|||
|
|
3. 点击"开始人脸识别"进行实时识别
|
|||
|
|
|
|||
|
|
## 详细文档
|
|||
|
|
|
|||
|
|
- [调试指南](DEBUG_GUIDE.md) - 详细的调试步骤和常见问题
|
|||
|
|
- [实施计划](implementation_plan.md) - 系统架构和实施方案
|
|||
|
|
- [开发回顾](walkthrough.md) - 项目构建过程回顾
|
|||
|
|
|
|||
|
|
## API 接口
|
|||
|
|
|
|||
|
|
### 人员管理
|
|||
|
|
- `POST /api/users/add` - 添加用户
|
|||
|
|
- `GET /api/users/list` - 查询所有用户
|
|||
|
|
- `GET /api/users/{id}` - 查询单个用户
|
|||
|
|
- `POST /api/users/update/{id}` - 更新用户
|
|||
|
|
- `DELETE /api/users/{id}` - 删除用户
|
|||
|
|
|
|||
|
|
### 数据同步
|
|||
|
|
- `GET /api/sync/users?lastSyncTime={timestamp}` - 同步用户数据
|
|||
|
|
|
|||
|
|
### 设备管理
|
|||
|
|
- `POST /api/devices/register` - 设备注册/心跳
|
|||
|
|
|
|||
|
|
## 技术栈
|
|||
|
|
|
|||
|
|
- **后端**: Java 17, Spring Boot 3.x, MyBatis-Plus, MySQL
|
|||
|
|
- **Android**: Java, CameraX, SQLite, JNI (C++)
|
|||
|
|
- **前端**: React + TypeScript (计划中)
|
|||
|
|
|
|||
|
|
## 许可证
|
|||
|
|
|
|||
|
|
本项目仅供学习和研究使用。
|