1. 项目简介

在课堂、图书馆和自习室等场景中,手机使用行为容易分散注意力。本文实现了一个"别玩手机行为识别系统":用户上传一张场景图片,系统调用已训练的图像分类模型,输出"正在使用手机"或"未使用手机"的预测类别及置信度。项目将深度学习推理能力封装为 Django Web 页面,便于演示、测试与后续扩展。

2. 技术栈

  • 后端框架:Django
  • 深度学习框架:PyTorch
  • 图像处理库:Pillow、torchvision
  • 可选模型架构:AlexNet、VGG、ResNet、GoogLeNet、MobileNet、DenseNet、EfficientNet、RegNet、ShuffleNet、Swin Transformer、Vision Transformer
  • 运行环境:Django 5.2.12 + Python 3.8+

3. 数据集说明

项目使用本地 data_set/phone 数据集,采用 PyTorch 的 ImageFolder 目录组织方式。数据集结构如下:

数据集 图片数量 类别说明
训练集 3,150 张 0_phone(正在使用手机)
测试集 1,001 张 1_no_phone(未使用手机)

训练脚本默认数据集名称为 phone,训练阶段读取 train 目录,评估阶段读取 test 目录。

在这里插入图片描述

4. 界面设计

页面采用左右分栏的工具型界面:

左侧区域
直观说明二分类标签,帮助用户理解系统功能。

右侧区域
集中放置模型选择、图片上传和预测结果区域。

设计优势

  • 相比只展示单一结果的页面,这种布局更适合课程设计或项目答辩中的现场演示
  • 预测结果会清晰展示使用模型、行为类别和置信度
  • 界面简洁直观,降低用户学习成本

在这里插入图片描述

5. 总结与优化方向

本文完成了从行为图片数据集、深度学习分类模型到 Django 可视化页面的完整闭环。后续可从三方面继续完善:

  1. 数据增强:补充不同光照、遮挡和远距离场景数据,提升模型泛化能力
  2. 模型对比:基于真实测试日志对多个模型的准确率、推理速度和模型大小进行系统对比
  3. 功能扩展:扩展为视频流检测,在连续帧上增加时序平滑与告警策略

更多推荐