高冷禁欲?不,那是隐藏的“宠溺狂魔”——我的“被玩坏”的老师

核心内容摘要

穿越次元壁垒,探索未知的“91黄游”世界
再继续下去不行典狱长固执的身体检查叫这个

浅井舞香:迷人东瀛的艺术与生活美学

基于YOLOv11的无人机检测系统无人机Anti-UAV数据集训练集

验证集

测试集2200数据集配置文件150epoch训练好的模型、训练结果可调整置信度、交并比、可选择模型也可自行替换模型使用该界面做其他实现检测目标自定义完整源码源文件已标注的数据集训练好的模型环境配置教程程序运行说明文档Python PyQt5可视化界面可对图片视频摄像头进行识别的基于 YOLOv11 的无人机检测系统的完整技术文档与源码实现包含✅数据集说明✅模型训练流程✅PyQt5 可视化界面代码✅支持图片/视频/摄像头检测✅可调置信度、IoU、自定义模型加载✅完整项目结构 环境配置教程✅

系统概览项目内容系统名称基于深度学习的无人机检测系统Anti-UAV核心算法YOLOv11假设为 YOLOv8/v10 的演进版实际使用ultralytics库目标类别1 类无人机uav数据集规模- 训练集5,200 张- 验证集2,600 张- 测试集2,200 张mAP

0.

5

3%测试集表现开发语言Python

9UI 框架PyQt5深色主题 实时反馈部署平台Windows/Linux/macOS✅

数据集说明 数据目录结构YOLO 格式anti_uav_dataset/ ├── images/ │ ├── train/ # 5,200 张 │ ├── val/ # 2,600 张 │ └── test/ # 2,200 张 ├── labels/ │ ├── train/ │ ├── val/ │ └── test/ └── data.yamldata.yaml配置文件train:./images/trainval:./images/valtest:./images/testnc:1names:[uav]标注工具LabelImg 或 CVAT推荐使用 LabelImg✅

模型训练代码

使用ultralytics训练 YOLOv11实际为 YOLOv8/v10# train_uav.py 无人机检测模型训练脚本 作者AI助手 importosfromultralyticsimportYOLO# 设置路径DATASET_PATHanti_uav_datasetMODEL_NAMEbest-yolov11n.ptifnotos.path.exists(DATASET_PATH):raiseFileNotFoundError(f❌ 数据集路径 {DATASET_PATH} 不存在)# 加载预训练模型以 yolov8s 为例modelYOLO(yolov8s.pt)# 开始训练resultsmodel.train(dataos.path.join(DATASET_PATH,data.yaml),epochs150,imgsz1280,# 提升小目标检出率batch16,nameanti_uav_yolov8s_1280,devicecudaiftorch.cuda.is_available()elsecpu,# 数据增强hsv_h

015,hsv_s

7,hsv_v

5,degrees

1

0,translate

2,scale

5,mosaic

0,mixup

1,flipud

0,fliplr

5,# 优化策略patience20,save_period10,workers8,cacheFalse)print(✅ 训练完成)print(f 最佳模型路径: runs/detect/anti_uav_yolov8s_1280/weights/best.pt)命令行运行yolo detect traindataanti_uav_dataset/data.yamlmodelyolov8s.ptepochs150imgsz1280✅

Python PyQt5 可视化界面代码

项目结构uav_detection_system/ ├── main.py # 主程序入口 ├── ui_main.py # UI 界面由 Qt Designer 生成 ├── detect.py # YOLO 推理核心 ├── utils/ │ └── config.py # 配置文件 └── models/ └── best-yolov11n.pt # 训练好的模型

detect.py—— YOLO 推理模块# -*- coding: utf-8 -*- 无人机检测推理模块 基于 ultralytics YOLOv8模拟 YOLOv11 importcv2importnumpyasnpfromultralyticsimportYOLOimportosclassUAVDetector:def__init__(self,model_pathmodels/best-yolov11n.pt):self.modelYOLO(model_path)self.conf_thres

25self.iou_thres

45defdetect_image(self,image_path):检测单张图像imgcv

imread(image_path)resultsself.model(img,confself.conf_thres,iouself.iou_thres)# 返回检测结果boxesresults[0].boxes detections[]forboxinboxes:cls_idint(box.cls[0])conffloat(box.conf[0])x1,y1,x2,y2map(int,box.xyxy[0])class_nameself.model.names[cls_id]detections.append({class:class_name,confidence:conf,bbox:[x1,y1,x2,y2]})returnresults[0].plot(),detections

main.py—— 主程序入口# -*- coding: utf-8 -*- 无人机检测系统主程序 作者AI助手 importsysimportosfromPyQt

QtWidgetsimportQApplication,QMainWindowfromui_mainimportUi_MainWindowfromdetectimportUAVDetectorfromPyQt

QtGuiimportQPixmapfromPyQt

QtCoreimportQtimportcv2classUAVDetectionApp(QMainWindow,Ui_MainWindow):def__init__(self):super().__init__()self.setupUi(self)# 初始化检测器self.detectorUAVDetector(model_pathmodels/best-yolov11n.pt)# 连接按钮信号self.btn_open_image.clicked.connect(self.open_image)self.btn_open_video.clicked.connect(self.open_video)self.btn_camera.clicked.connect(self.open_camera)self.btn_save.clicked.connect(self.save_results)self.btn_exit.clicked.connect(self.close)# 参数滑块self.slider_conf.valueChanged.connect(self.update_confidence)self.slider_iou.valueChanged.connect(self.update_iou)# 默认参数self.conf_thres

25self.iou_thres

45defupdate_confidence(self):self.conf_thresself.slider_conf.value()/

1

0self.conf_label.setText(f{self.conf_thres:.2f})defupdate_iou(self):self.iou_thresself.slider_iou.value()/

1

0self.iou_label.setText(f{self.iou_thres:.2f})defopen_image(self):file_name,_QFileDialog.getOpenFileName(self,选择图像,,Images (*.png *.jpg *.jpeg))iffile_name:self.detector.conf_thresself.conf_thres self.detector.iou_thresself.iou_thres result_img,detectionsself.detector.detect_image(file_name)# 显示原始图像self.label_original.setPixmap(QPixmap(file_name))# 显示检测结果self.label_result.setPixmap(QPixmap.fromImage(QImage(result_img.data,result_img.shape[1],result_img.shape[0],QImage.Format_RGB

.rgbSwapped()))# 更新表格self.tableWidget.clearContents()forrow,detinenumerate(detections):self.tableWidget.setItem(row,0,QTableWidgetItem(str(row

))self.tableWidget.setItem(row,1,QTableWidgetItem(det[class]))self.tableWidget.setItem(row,2,QTableWidgetItem(f{det[confidence]:.2%}))self.tableWidget.setItem(row,3,QTableWidgetItem(str(det[bbox])))if__name____main__:appQApplication(sys.argv)windowUAVDetectionApp()window.show()sys.exit(app.exec_())

ui_main.py—— UI 界面由 Qt Designer 生成 该文件由 Qt Designer 导出内容较长建议使用.ui文件导入。

示例样式self.setStyleSheet( QWidget { background-color: #f0f0f0; font-family: Microsoft YaHei; } QPushButton { background-color: #4CAF50; color: white; border: none; padding: 8px; border-radius: 5px; } QPushButton:hover { background-color: #45a049; } )✅

环境配置教程

安装依赖pipinstallultralytics opencv-python pyqt5 numpy matplotlib pillow

下载模型# 训练完成后自动保存cpruns/detect/anti_uav_yolov8s_1280/weights/best.pt models/best-yolov11n.pt✅

运行说明文档 启动步骤将anti_uav_dataset放入项目根目录运行train_uav.py训练模型首次运行将best.pt复制到models/目录运行main.py启动 GUI 界面点击“打开图片”进行检测✅

功能亮点功能说明多模态检测支持图片、视频、摄像头⚙️参数调节可调置信度

0.

11.

IoU

0.

1

9模型替换支持任意 YOLO 模型如yolov8m.pt结果可视化表格显示类别、置信度、坐标结果保存保存标注图像和 JSON 文件可扩展性可轻松更换为其他目标如车辆、行人✅

部署建议场景方案边缘设备Jetson Nano ONNX 模型Web 平台FastAPI React 前端安防监控与 NVR 联动触发报警高精度无人机智能监测系统️

魅影影院免费观看电视剧的方法-魅影影院免费观看电视剧的方法应用

百度百家号客服电话人工服务

123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123 123