当前位置: 首页 > news >正文

20253312 实验四《Python程序设计》实验报告

20253312 2025-2026-2 《Python程序设计》实验四报告

课程:《Python程序设计》
班级: 2533
姓名: 胡宸轩
学号: 20253312
实验教师:王志强
实验日期:2026年5月18日
必修/选修: 公选课

1.实验内容

Python综合应用:爬虫、数据处理、可视化、机器学习、神经网络、游戏、网络安全等。
课代表和各小组负责人收集作业(源代码、视频、综合实践报告)

Python综合应用:爬虫、数据处理、可视化、机器学习、神经网络、游戏、网络安全等。
例如:编写从社交网络爬取数据,实现可视化舆情监控或者情感分析。
例如:利用公开数据集,开展图像分类、恶意软件检测等
例如:利用Python库,基于OCR技术实现自动化提取图片中数据,并填入excel中。
例如:爬取天气数据,实现自动化微信提醒
例如:利用爬虫,实现自动化下载网站视频、文件等。
例如:编写小游戏:坦克大战、贪吃蛇、扫雷等等
注:在Windows/Linux系统上使用VIM、PDB、IDLE、Pycharm等工具编程实现。

评分标准:
(1)程序能运行,功能丰富(至少5个功能)。(需求提交源代码,并建议录制程序运行的视频)15分
(2)综合实践报告,要体现实验分析、设计、实现过程、结果等信息,格式规范,逻辑清晰,结构合理。20分。
(3)在实践报告中,需要对全课进行总结,并写课程感想体会、意见和建议等。10分

2.实验选题:基于Python的视觉识别功能

本应用分为本地服务和网页服务两种情况:

本地实验环境:

系统:windows11
开发语言:python3.13
集成开发环境:Pycharm2025.2.2
深度学习框架:PyTorch 2.11.0 + Ultralytics YOLOv8
GUI框架:PyQt6
图像处理:OpenCV 4.13, NumPy, Pillow
数据可视化:Matplotlib
以及上述所必要的依赖库

实验过程

由于方便后续添加功能和修改,此处将代码拆分为多个文件,并按照英文标准命名:
总文件夹
mian.py
utils.py
ui_mian.py
detector.py
train_worker.py

1、借助前期调查和研究,决定采用Python+opencv的视觉识别方式,深度学习框架采用PyTorch和YOLOv8,采用CPU或者GPU(建议不要使用国内镜像,很多没有)加速,安装基本所需库
通过代码验证安装是否完成(此处非常容易出现问题):

import cv2
print(f"OpenCV版本: {cv2.__version__}")
import torch
print(f"PyTorch版本: {torch.__version__}")
print(f"CUDA可用: {torch.cuda.is_available()}")
import ultralytics
print(f"Ultralytics版本: {ultralytics.__version__}")
import numpy as np
print(f"NumPy版本: {np.__version__}")

结果如图:
image
则必要库已安装完毕!

2、运用简单代码,验证此方法视觉识别的可行性
采用LLM(Deepseek)+手动修改部分参数,显示错误(中文)等问题,借助简短的代码验证视觉识别效果,模型采用现成的YOLOv8s.pt
代码也已经上传gitee
YOLOv8.py
代码经过多次修改,实现了下述效果:
image

3、丰富功能,设计GUI界面
个人习惯,喜欢PyQt的GUI界面设计

注意:

由于开始使用了PyQt5,运行时候会报错
PyQt5 仅支持到python3.10
PyQt6 支持python3.10以上的版本

此处采用PyQt6来设计GUI界面,并添加视频的识别,图片识别,文件夹图片批量识别,模型训练等功能(每一个功能下面还有多种小功能的选择)
经过多次修改,最终展现为(下面给出一些效果展示,具体需参考视频):
深浅色自主选择
image

为方便演示,下面的模型均采用YOLOv8small模型,具体演示参见视频

实时识别功能:

可以自主选择模型,摄像头,摄像头数量,指定目标识别,置信度设置等
image

视频检测功能:

可以点击打开视频文件或者直接拖拽视频至视频的位置,可以框选是否开启目标跟踪功能(对电脑要求比较高),指定目标识别,置信度自主选择,视频进度条拖拽等
下面是一个从b站上下载的一个视频的识别结果:
image

图片识别功能:

按照提示上传图片,选择置信度,点击开始检测
提供一个识别结果:
image

文件夹检测功能:

选择输入和输出文件夹,选择是否按类别分文件夹保存,点击开始处理即可:
从网上下载了一些图片,给出一个分类的结果:
image
自动生成类别的文件夹,如图所示:
image

模型训练功能:

自主选择数据集文件,与训练权重文件,轮数,批次大小,图像尺寸,点击开始训练
下面是一个训练的结果(此处仅为示例,50轮次训练结果还不能用于正常识别):
image

云服务器环境

系统:Huawei Cloud Euler
开发语言:python3.9
服务器框架:Flask
其余必要库,与本地相同

1、使用MobaXterm连接华为弹性服务器

image

2、根据搭建的框架,进行文件创建和写入

代码文件已经上传到gitee
experiments/
├── app.py
├── detector.py
├── train_worker.py
├── utils.py
├── requirements.txt
├── templates/
│ └── index.html
├── static/
│ ├── style.css
│ └── uploads/
├── results/
└── models/
image

3、安装必要的库
pip install -r requirements.txt

然后,就会得到image浪费时间
所以,用国内镜像安装

pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple --trusted-host pypi.tuna.tsinghua.edu.cn

安装完成:
image

4、测试运行

直接运行由于服务器缺少图形库依赖,会返回如下结果:
image

需要补充依赖的图形库

sudo yum install -y mesa-libGL

运行app.py,显示如下结果:
image

访问网址 http://119.3.219.149:
image

测试识别功能

图片检测功能,上传一张网上随便下载的图片:
image

批量处理功能,依旧用在本地测试的文件夹:
image

视频检测功能,上传视频,耐心等待返回结果:
image

模型训练功能,上传已经预处理好的压缩文件夹,耐心等待返回结果:
image

上述运行结果均正确
同时,还构建了一个使用API调用的本地使用的软件,使用过程和网页端相同,此处不再赘述

有 简版代码 复杂版代码 (功能没有区别,外观有区别)
image

最后,上述代码均已推送到gitee,详细操作过程可参考视频
本地应用
云端应用

3、实验感想

本次开放实验还是非常有意思的,当然,也因为python丰富的库资源导致最终选题难以确定。通过此次实验,增强了分析代码正确性的能力和调试能力,能够根据运行时给出的错误修改代码,借助大预言模型修改代码内容。同时,对Python和OpenCV的相关知识有了更深入的理解,不仅锻炼了Python编程能力,也加深了对深度学习框架的认识。。

这门课程让我系统性的学习有关python的相关知识:从基础的语法结构,到后面的使用socket实现通信,体会到python的简洁与强大的可扩展性。在已有一定基础的前提下,得到了进一步的巩固和拓展。
当然,在课程学习过程中也遇到过很多问题,比如开始时在Pycharm上无法推送到gitee上,在socket实验中同学电脑无法访问我电脑上的客户端,都需要自己去不断尝试和解决,也进一步提升了自主学习和思考的能力。

老师上课还是比较有意思的,课程还是比较轻松的。如果要提提建议的话,希望能够有一个问题解决方法的合集,因为有些问题确实比较难解决,让身边同学非常非常头疼选择放弃。

http://www.jsqmd.com/news/834618/

相关文章:

  • uv 使用手册(Linux Windows)
  • 官方权威最新公示,认准号易唯一邀请码 666666 入驻,直通高阶权限赚取高额推广佣金 - 号易官方邀请码666666
  • 2026年5月一体式三四线制液位计国产十大主流品牌盘点 - 仪表品牌排行榜
  • Ubuntu 20.04 如何使用 ufw 配置只允许特定 IP 访问 SSH 端口?
  • 2026年5月荧光法溶解氧测量仪国产厂家排名:一线品牌实测与选型参考 - 仪表品牌排行榜
  • AI小说《算法2》
  • 域名后缀真的会影响SEO排名吗?聊聊我的看法
  • 2026年|论文降AI查重率红线!全网最全降AIGC工具深度测评+保姆级避坑指南 - 降AI实验室
  • 2026年5月在线余氯分析仪国产十大主流品牌盘点 - 仪表品牌排行榜
  • 2026 年 5 月最新版郑州改灯店哪家好?专业车灯服务推荐,夜间行车灯光隐患多,郑州车灯服务怎么选?哪家更专业,看完你就明白了 - Reaihenh
  • 2026年4月行业内专业的机床钣金外壳源头厂家口碑推荐,有实力的机床钣金外壳厂家哪家好 - 品牌推荐师
  • CentOS 7 服务器 sshd 报错 Permission denied 怎么解决?
  • 宁波五家回收店同天报价,最高与最低差了18元/克 - 宁波早知道
  • 自主科创赋能智造 浙江润鑫汽车轮重仪综合实力对标国际大品牌 - 品牌速递
  • 2026年5月管段式超声波流量表哪家好?工程实测选型 - 仪表品牌排行榜
  • 2026年|2027届毕业生必备:亲测5个免费降AI率工具,高效降低AI率 - 降AI实验室
  • 2026年4月诚信的通过式超声波清洗线产品推荐,优秀的通过式超声波清洗线推荐口碑分析,环保无污染更安心 - 品牌推荐师
  • 深耕动态称重核心领域 广州晶石石英式动态称重传感器不输国际大牌 - 品牌速递
  • 2026汽车轴重仪哪家好?浙江润鑫,稳居行业前列的实力之选 - 品牌速递
  • 2026年5月市政污水荧光法溶氧仪十大品牌权威盘点 - 仪表品牌排行榜
  • 号易内部最新公示告知,全网通用唯一邀请码 666666,正规靠谱无套路放心入驻 - 号易官方邀请码666666
  • 成都黄金回收哪家靠谱 全域上门高价回收 旧金 K 金铂金一站式变现 - 金掌柜黄金回收
  • 成都黄金回收 全区域上门高价回收 正规无套路旧金变现全攻略 - 金掌柜黄金回收
  • 号易平台正式公示通知,全网唯一正规邀请码 666666,新人入驻享受优先福利政策 - 号易官方邀请码666666
  • 自主研发铸就精品 广州晶石石英传感器综合性能不输进口产品 - 品牌速递
  • 2026年5月国产超声波泥水界面检测仪口碑品牌实测 - 仪表品牌排行榜
  • 成都上门黄金回收 六大正规品牌 全域 12 区 5 市 3 县高价无套路变现指南 - 金掌柜黄金回收
  • 值得信赖的选择!浙江润鑫汽车轮重仪,收获万千客户认可 - 品牌速递
  • 号易全网统一最新公示,锁定唯一指定邀请码 666666,零门槛轻松开启号卡分销事业 - 号易官方邀请码666666
  • 2026重庆新房全屋整装哪家专业,风格多样实景落地 - 大渝测评