YOLOv11n吸烟检测数据集,打电话检测数据集,办公室监控2类目标检测,计算机视觉基于深度学习yolov11吸烟打电话检测系统,智能安防,禁烟检测,工作纪律检测,PyQt界面,实时检测

发布时间:2026/7/16 17:31:22
YOLOv11n吸烟检测数据集,打电话检测数据集,办公室监控2类目标检测,计算机视觉基于深度学习yolov11吸烟打电话检测系统,智能安防,禁烟检测,工作纪律检测,PyQt界面,实时检测 智慧行为检测吸烟、电话检测数据集3304张yolo、voc、coco标注方式数据来源于多段办公室监控视频从视频中间隔取样后标注得到图像尺寸:998*1776类别数量:2类训练集图像数量:2752; 验证集图像数量:280 测试集图像数量:272类别名称: 每一类图像数 每一类标注数phone: 1469,2237smoke: 860,862image num: 3304一、数据集核心参数项目详情数据集名称吸烟、电话行为检测数据集图像总数3304张图像尺寸998×1776竖屏监控标注格式YOLO、VOC、COCO 三种格式类别数2类phone、smoke训练集2752张验证集280张测试集272张phone打电话图像数1469标注数2237smoke吸烟图像数860标注数862来源多段办公室监控视频间隔取样标注2.模型代码模型训练使用yolov11n训练30个epoch训练结果map如描述图所示。3.qt界面运行界面采用pyqt编写本项目已经训练好模型配置好环境后可直接使用运行效果见描述图像吸烟、电话检测数据集2类3304张YOLO/VOC/COCO二、模型训练YOLOv11n30epoch1. 环境安装pipinstallultralytics opencv-python torch2. 数据集配置smoke_phone.yamlpath:./smoke_phone_datasettrain:images/trainval:images/valtest:images/testnc:2names:[phone,smoke]3. 训练代码fromultralyticsimportYOLOif__name____main__:modelYOLO(yolov11n.pt)# 轻量模型适合监控实时推理resultsmodel.train(datasmoke_phone.yaml,epochs30,imgsz(998,1776),# 原生尺寸训练batch8,device0,workers2,projectsmoke_phone_detect,nameyolov11n_30e,patience5,augmentTrue,hsv_h0.015,hsv_s0.7,hsv_v0.4,fliplr0.5)metricsmodel.val()print(fmAP0.5:{metrics.box.map50:.3f})print(fmAP0.5-0.95:{metrics.box.map:.3f})model.predict(test.jpg,saveTrue,conf0.25)4. 推理测试fromultralyticsimportYOLO modelYOLO(best.pt)resultsmodel.predict(test.jpg,conf0.25,saveTrue)forresinresults:forboxinres.boxes:cls_idint(box.cls[0])conffloat(box.conf[0])x1,y1,x2,y2map(int,box.xyxy[0])cls_namemodel.names[cls_id]print(f行为{cls_name}| 置信度{conf:.2f}| 坐标({x1},{y1})-({x2},{y2}))三、PyQt5 可视化界面可直接运行fromPyQt5.QtWidgetsimportQApplication,QMainWindow,QFileDialogfromPyQt5.uicimportloadUifromultralyticsimportYOLOimportcv2importsysclassSmokePhoneDetectUI(QMainWindow):def__init__(self):super().__init__()loadUi(detect_ui.ui,self)self.modelYOLO(best.pt)# 训练好的权重self.btn_img.clicked.connect(self.detect_image)self.btn_video.clicked.connect(self.detect_video)self.btn_cam.clicked.connect(self.detect_camera)defdetect_image(self):path,_QFileDialog.getOpenFileName()ifpath:resultsself.model(path,conf0.25)self.show_result(results)defdetect_video(self):path,_QFileDialog.getOpenFileName()ifpath:capcv2.VideoCapture(path)whilecap.isOpened():ret,framecap.read()ifnotret:breakresultsself.model(frame,conf0.25)self.show_result(results)cv2.waitKey(1)cap.release()defdetect_camera(self):capcv2.VideoCapture(0)whilecap.isOpened():ret,framecap.read()ifnotret:breakresultsself.model(frame,conf0.25)self.show_result(results)cv2.waitKey(1)cap.release()defshow_result(self,results):total0forresinresults:forboxinres.boxes:total1cls_idxint(box.cls[0])conffloat(box.conf[0])nameself.model.names[cls_idx]print(f检测到{name}置信度{conf:.2f})print(f当前画面总数{total}\n)if__name____main__:appQApplication(sys.argv)winSmokePhoneDetectUI()win.show()sys.exit(app.exec_())四、应用场景办公室/工厂/车间禁烟工作纪律双检测电梯、医院、商场等公共禁烟区智能监控驾驶员开车接打电话/吸烟违规检测校园/考场手机使用行为监管监控视频AI智能分析自动告警