基于深度学习技术实现染色质开放区域的预测与分析系统源代码+数据库,采用Flask + Vue3 实现前后端分离的植物染色质可及性预测系统
植物染色质可及性预测系统,基于深度学习技术实现染色质开放区域的预测与分析,为植物表观遗传学研究提供一站式工具。
功能特性
- 数据集管理:支持公开数据集浏览、自定义数据集构建与处理
- 模型训练:提供CharPlant深度学习模型架构,支持自定义训练
- 预测服务:基于训练好的模型进行染色质可及性预测
- 可视化分析:提供预测结果的可视化展示与分析工具
- 知识科普:集成染色质可及性相关知识介绍
技术栈
前端
- Vue 3 + TypeScript
- Element Plus UI组件库
- ECharts 数据可视化
后端
- Flask 3
- SQLAlchemy ORM
- JWT 认证
- SSE 实时通信
- Tensorflow 深度学习框架
- PICUI图床
注意事项
数据库配置
- 系统依赖MySQL和Redis服务,需提前启动
- 数据库配置位于config.py文件中- MySQL作为持久化数据库,存储用户信息、模型信息等
- Redis作为消息代理,启动服务即可(无需额外配置)
 
文件结构
- 模型/数据集静态资源:ACRmodel/static/目录下
- 前端项目:frontend/目录(基于Vue 3 + TypeScript)
其他说明
- SQL初始化脚本位于sql/文件夹中,plantacr.sql包含建表和数据初始化
- 初始数据中包含预置资源(预置数据集与预置模型)的信息,资源放入ACRmodel/static文件夹中,在百度网盘下载
- 训练脚本使用了PICUI图床,在upload_image.py中修改token配置
快速开始
1.克隆仓库:
2.创建虚拟环境并安装依赖:
# 安装依赖
pip install -r requirements.txt
3.启动后端服务:
# 启动后端服务
python app.py
4.启动前端服务:
# 进入前端目录
cd frontend
# 安装依赖
npm install
# 启动前端服务
npm run dev
5.访问前端页面:
 http://localhost:5173
项目后端结构
PlantACR/ # 后端项目 │ ├── frontend/ # 前端项目文件夹 │ ├── app.py # Flask应用入口,初始化 Flask 应用和 SQLAlchemy,导入和注册路由 ├── exts.py # 数据库相关,防止循环引用导致项目运行失败 ├── config.py # 配置文件,存储应用配置,包括数据库连接信息 ├── models.py # 数据模型,使用 SQLAlchemy 定义数据结构和数据库表映射 │ ├── route/ # 路由python包,等效于SpringBoot控制层Controller │ ├── __init__.py # 必有的文件,这里用于整合所有的路由模块 │ ├── article_route.py # 文章相关 请求处理逻辑和路由 │ ├── auth_route.py # 鉴权登录相关 请求处理逻辑和路由 │ ├── user_route.py # 用户相关 请求处理逻辑和路由 │ └── xxx_route.py # 其他相关 请求处理逻辑和路由 │ ├── utils/ # 工具文件夹 │ ├── password_utils.py # 密码相关,加密用户密码 和 检查密码是否匹配 │ └── xxx_utils.py # 其他相关工具 │ ├── sql/ # 数据库脚本文件夹 │ ├── plantacr.sql # 建表 + 数据初始化脚本 │ ├── table.sql # 建表脚本 │ └── data.sql # 数据初始化脚本 │ ├── ACRmodel/ # 模型目录 (仅供参考) │ ├── __init__.py # 把ACRmodel注册为python包,里面不用写代码 │ ├── train.py # 模型训练 │ ├── predict.py # 模型预测 │ ├── preprocess.py # 数据预处理 │ ├── my_model.py # 模型构建 │ └──static/ # 静态文件夹,模拟文件系统,存放一些模型相关的静态资源(比如数据集) │ ├── fasta/ # 参考基因组的文件夹 │ ├── dataset/ # 数据集文件夹 │ ├── weights/ # 模型权重文件目录 │ ├── predict_data/ # 预测数据文件夹 │ ├── predict_result/ # 预测结果文件夹 │ ├── picture/ # 图片文件夹 │ ├── temp/ # 临时文件夹,存放临时文件 │ └── XXXmodel/ # 如果有多个模型,也可以分开成两个文件夹,方便管理
项目前端结构
frontend/ ├── .vscode/ # VSCode工作区配置 │ ├── settings.json # 编辑器设置 │ └── vue.json.code-snippets # 代码片段 ├── public/ # 公共资源 ├── src/ │ ├── assets/ # 静态资源 │ ├── components/ # 公共组件 │ ├── datasource/ # 模拟数据 │ ├── fetch/ # 网络请求封装 │ ├── router/ # 路由配置 │ ├── service/ # API服务层 │ ├── stores/ # 状态管理(基于VueUse) │ ├── type/ # TypeScript类型定义 │ ├── views/ # 页面组件 │ │ ├── comps/ # 页面级组件 │ │ ├── layout/ # 主布局页面 │ │ └── login/ # 登录相关页面 │ ├── App.vue # 根组件 │ └── main.ts # 入口文件 ├── .eslintrc.cjs # ESLint配置 ├── .prettierrc.json # Prettier配置 ├── index.html # 主HTML文件 ├── package.json # 项目配置 ├── tsconfig.json # TypeScript配置 ├── tsconfig.app.json # 应用TS配置 ├── tsconfig.node.json # Node环境TS配置 ├── vite.config.ts # Vite配置 └── vue.md # Vue介绍文档
系统预览

 
 
 
 
