1. 项目概述
这个基于Django的情感变化识别与心理状态干预系统,是我在计算机专业毕业设计期间完成的一个融合深度学习与自然语言处理技术的创新项目。系统通过CNN模型分析面部表情,结合SnowNLP和大语言模型处理文本情感,实现了多模态情感识别与智能心理干预的完整闭环。
在当今快节奏的社会环境中,心理健康问题日益突出。传统心理咨询服务存在资源有限、响应不及时等问题。作为一名计算机专业学生,我尝试用技术手段解决这个社会痛点。系统从实际需求出发,整合了计算机视觉、自然语言处理等AI技术,为普通用户提供便捷的情绪识别和心理疏导服务。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 核心技术方案设计
2.1 系统架构设计
系统采用B/S架构,前端使用Bootstrap5框架构建响应式界面,后端基于Django4.1框架开发,数据库选用MySQL5.7。整个系统分为四个核心模块:
- 用户认证模块:处理用户注册、登录和权限管理
- 数据采集模块:支持图像上传和文本输入两种数据采集方式
- 情感分析模块:
- 图像情感识别:基于CNN的面部表情分析
- 文本情感识别:SnowNLP+关键词双重分析
- 心理干预模块:整合混元和DeepSeek大模型生成心理建议
2.2 关键技术选型
2.2.1 CNN模型选择
经过对比测试,我最终选择了轻量化的CNN3模型架构,主要基于以下考虑:
- 计算效率:模型参数量控制在200万以内,在GTX1660Ti显卡上单图推理时间<20ms
- 准确率表现:在FER2013测试集上达到68.2%的准确率,满足实时应用需求
- 模型复杂度:3个卷积块+2个全连接层的设计,平衡了性能和复杂度
模型具体结构如下:
python复制class CNN3(nn.Module):
def __init__(self):
super().__init__()
self.conv1 = nn.Conv2d(1, 32, kernel_size=1) # 1x1卷积压缩维度
self.conv2_1 = nn.Conv2d(32, 64, kernel_size=3, padding=1)
