看看老师是怎么抓到吸烟的学生的吧^_^(另有几篇)

  有几个男生吸烟被告密,老师一一叫来谈心。

  第一个男生如实承认被猛剋一通;回寝室后说:“哥们儿,我一个人都承担了,你们去时可千万别认。”后来……

  第二个男生到了老师办公室。

  老师:老实说你吸烟吗?

  男生甲:不吸。

  老师:不吸?嗯,吃根薯条吧。

  男生甲:很自然地伸出两根手指夹着接过来……

        被猛剋一通。

  第三个男生到了老师办公室。

  老师:吸烟吗?

  男生乙:不吸。

  老师:不吸?嗯,吃根薯条吧。

  男生乙由于听到甲的情况所以很小心地接过了薯条。

  老师:不蘸点番茄酱吗?

  男生乙一不小心蘸多了,于是马上用两根手指弹了弹———

        被猛剋一通。

  第四个男生到了老师办公室。  

  老师:吸烟吗?

  男生丙:不吸。

  老师:不吸?好,吃根薯条吧。

  男生丙因有前面两个例子很小心地流着汗吃完了薯条。

  老师:不给同学带根回去吗?

  男生丙接过薯条后顺手就夹在耳朵上……

        被猛剋一通。

  第五个男生到了老师办公室。  

  老师:吃根薯条吧!

  男生:谢谢,不会。

### 使用 YOLOv8 设计吸烟行为检测系统 #### 1. 数据准备 为了设计一个基于 YOLOv8 的吸烟行为检测系统,首先需要收集和标注包含吸烟行为的图像数据集。这些数据应包括吸烟者及其手中的香烟或电子烟等特征对象。通过使用 2357 张图片进行训练,可以构建一个高精度的目标检测模型[^1]。 #### 2. 模型训练 在完成数据准备后,使用 YOLOv8 框架对数据集进行训练。训练完成后,生成的最佳模型文件 `best.pt` 将保存在指定路径下(如 `runs/train/weights/best.pt`)。此模型文件用于后续的推理检测任务[^2]。 #### 3. 推理检测 加载训练好的模型文件,并设置置信度阈值(如 0.25)和非极大值抑制(NMS)的 IoU 阈值(如 0.7),以确保检测结果的质量。以下是实现图片检测的代码示例: ```python from ultralytics import YOLO import cv2 # 加载预训练模型 path = 'models/best.pt' model = YOLO(path, task='detect') # 检测图片 img_path = "TestFiles/smoker.jpg" results = model(img_path) # 可视化结果 res = results[0].plot() cv2.imshow("YOLOv8 Detection", res) cv2.waitKey(0) ``` 上述代码加载了训练好的模型并对其输入图片进行了检测,最后将结果显示在窗口中[^3]。 #### 4. 判断是否为吸烟行为 YOLOv8 输出的结果中包含了每个检测框的类别信息。如果检测到的对象类别为“吸烟”或相关标签,则可判定目标正在进行吸烟行为。具体实现如下: ```python for result in results: boxes = result.boxes for box in boxes: class_id = box.cls.item() # 获取类别ID if class_id == 0: # 假设类别ID为0表示吸烟行为 print("检测到吸烟行为") ``` 在此代码片段中,通过检查检测框的类别 ID 来判断是否存在吸烟行为。假设类别 ID 为 0 表示吸烟行为,则输出相应的提示信息。 #### 5. 系统开发 为了更方便地展示功能,可以基于 Python 和 PyQt5 开发带有用户界面的吸烟行为检测系统。该系统支持图片、视频以及摄像头实时检测,并能保存检测结果[^1]。 ###
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值