Face_reg_app/README.md

89 lines
2.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 人脸识别系统
基于 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 (计划中)
## 许可证
本项目仅供学习和研究使用。