Skip to content

nonese/OnlineTraining

Repository files navigation

在线训练与预测平台

本仓库提供一个简易的图片分类训练与预测系统, 可用于学校学生上课体验项目中的图像收集与分析。 后端基于 Python Flask,提供 JSON API; 前端位于 frontend 目录,采用 Vue 的 VitePress 构建。

虚拟化环境

python -m venv .venv
source .venv/bin/activate  # Windows 使用 .venv\Scripts\activate

项目部署

  1. 准备 Python 3.8+ 环境,安装 Flask、TensorFlow 等依赖。 若需更准确的人脸比对效果,可额外安装 face_recognition 库: pip install face_recognition。 安装前会遇到cmake、dlib和numpy==1.26.9版本的环境问题。 pip install "numpy==1.26.4可以解决numpy问题;cmake和dlib安装包已经在项目中给出直接安装即可。 翻译功能依赖 argostranslate 以及对应的中英离线语言包,请预先安装: pip install argostranslate,并通过运行install_en_zh_translate.py完成导入中英互译数据。
  2. 在项目根目录执行 python app.py 启动后端服务。
  3. 安装 Node.js 后进入 frontend 目录,执行 npm install
  4. 通过 npx vitepress dev docs 启动前端开发服务器。
  5. 打开前端页面后可在首页按需配置后端地址,随后即可使用各功能。
  6. pip install的库比较多,除了上述内容以外还有flask_sock、tensorflow

使用方法

  1. 打开前端页面,先在“上传训练图片”处按类别上传样本。
  2. 在“开始训练”页面点击按钮,等待模型训练完成。
  3. 训练结束后,在“上传图片进行预测”页面选择图片即可得到分类结果。
  4. 如需连接不同的后端服务,可在前端首页调整 API 地址。

注意事项

  • train_data 目录下需按类别建立子文件夹,每个类别至少包含一张图片。
  • 模型训练在 CPU 上进行,数据量较大时耗时可能较长。
  • 若部署在不同服务器,请修改 frontend/docs/apiConfig.js 中的 API_BASE

待添加功能

  1. 人脸识别相关功能
  2. 语音对话功能(Zipformer)模型待研究
  3. yolo-world相关支持
  4. 语音处理
  5. 语音合成

About

在线训练平台

Resources

Stars

Watchers

Forks

Packages

No packages published