落石检测,危岩落石,YOLOv11,地质灾害,道路边坡落石,PyQt 可视化,山区道路灾害检测落石检测数据集

发布时间:2026/8/18 22:07:26

落石检测,危岩落石,YOLOv11,地质灾害,道路边坡落石,PyQt 可视化,山区道路灾害检测落石检测数据集
自然灾害类-落石检测数据集447张yolovoccoco标注方式图像尺寸:512*512类别数量:1类训练集图像数量:357; 验证集图像数量:67 测试集图像数量:23类别名称: 每一类图像数 每一类标注数fall_stone: 447,965image num: 447模型代码采用 YOLOv11n 网络训练训练轮次80 个 epoch全部训练 测试源代码训练精度 mAP 效果如图所示PyQt5 界面功能界面使用 PyQt5 开发提供全部源码.ui、.qrc、.py 及图标文件支持图片检测、视频检测、摄像头实时检测界面实时显示目标位置、目标总数、置信度等信息支持检测结果保存导出操作简单直观无需命令行附、配套文件全套完整完整数据集含原始图像、YOLO 格式 txt 标注、VOC 格式 xml 标注、yaml 配置文件模型程序文件训练代码 .py、训练好的模型权重 .ptQt 界面源码.ui、.qrc、.py 源码及配套图标资源程序运行说明文档程序运行步骤说明指导文档importcv2importnumpyasnpimportosdefremove_watermark_keep_box(img_path,out_path):imgcv2.imread(img_path)ifimgisNone:returnh,wimg.shape[:2]masknp.full((h,w),255,np.uint8)#保护黄绿色检测框不被抹除lower_greennp.array([0,160,0])upper_greennp.array([120,255,120])green_maskcv2.inRange(img,lower_green,upper_green)mask[green_mask0]0#保护蓝色检测框lower_bluenp.array([80,0,0])upper_bluenp.array([255,110,110])blue_maskcv2.inRange(img,lower_blue,upper_blue)mask[blue_mask0]0rescv2.inpaint(img,mask,3,cv2.INPAINT_TELEA)cv2.imwrite(out_path,res)if__name____main__:input_folder./source_imgoutput_folder./output_no_wmos.makedirs(output_folder,exist_okTrue)forfilenameinos.listdir(input_folder):iffilename.lower().endswith((.jpg,.png)):in_fileos.path.join(input_folder,filename)out_fileos.path.join(output_folder,filename)remove_watermark_keep_box(in_file,out_file)依赖pipinstallopencv-python numpy功能完整保留绿色、蓝色检测框与标签文字清除全屏半透明“闲鱼店铺深度学习master”水印。使用图片放入source_img文件夹运行代码无水印图片输出至output_no_wm。落石检测系统完整代码数据集yaml fallstone.yamlpath:./fall_stone_datasettrain:images/trainval:images/valtest:images/testnames:0:fall_stone训练脚本 train_fallstone.pyfromultralyticsimportYOLOif__name____main__:modelYOLO(yolo11n.pt)model.train(datafallstone.yaml,epochs80,imgsz640,batch8,workers2,project./runs/train,namefall_stone_yolo11n)PyQt5界面 fallstone_gui.py系统名称基于YOLOv11的落石检测系统importsysimportcv2importosfromultralyticsimportYOLOfromPyQt5.QtWidgetsimport(QApplication,QMainWindow,QWidget,QPushButton,QFileDialog,QLabel,QTableWidget,QTableWidgetItem,QVBoxLayout,QHBoxLayout,QGroupBox,QMessageBox)fromPyQt5.QtGuiimportQImage,QPixmapfromPyQt5.QtCoreimportQt,QTimerclassFallStoneDetectWindow(QMainWindow):def__init__(self):super().__init__()self.setWindowTitle(基于YOLOv11的落石检测系统)self.resize(1200,800)self.modelYOLO(./runs/train/fall_stone_yolo11n/weights/best.pt)self.camera_timerQTimer()self.camera_timer.timeout.connect(self.camera_frame)self.capNoneself.current_imgNoneself.ui_setup()defui_setup(self):centralQWidget()self.setCentralWidget(central)main_layoutQHBoxLayout(central)self.label_imgQLabel()self.label_img.setFixedSize(700,600)self.label_img.setStyleSheet(border:1px solid #999;)right_widgetQWidget()right_layoutQVBoxLayout(right_widget)group_fileQGroupBox(文件导入)file_layoutQVBoxLayout(group_file)self.btn_imgQPushButton(选择图片)self.btn_img.clicked.connect(self.detect_image)self.btn_videoQPushButton(选择视频)self.btn_video.clicked.connect(self.detect_video)self.btn_camQPushButton(打开摄像头)self.btn_cam.clicked.connect(self.open_camera)file_layout.addWidget(self.btn_img)file_layout.addWidget(self.btn_video)file_layout.addWidget(self.btn_cam)group_resultQGroupBox(检测结果)res_layoutQVBoxLayout(group_result)self.label_timeQLabel(用时0 s | 目标数目0)self.label_confQLabel(置信度0%)self.label_posQLabel(xmin:0 ymin:0 xmax:0 ymax:0)res_layout.addWidget(self.label_time)res_layout.addWidget(self.label_conf)res_layout.addWidget(self.label_pos)self.tableQTableWidget()self.table.setColumnCount(5)self.table.setHorizontalHeaderLabels([序号,文件路径,类别,置信度,坐标位置])btn_layoutQHBoxLayout()self.btn_saveQPushButton(保存结果)self.btn_save.clicked.connect(self.save_result)self.btn_exitQPushButton(退出)self.btn_exit.clicked.connect(self.close)btn_layout.addWidget(self.btn_save)btn_layout.addWidget(self.btn_exit)right_layout.addWidget(group_file)right_layout.addWidget(group_result)right_layout.addWidget(self.table)right_layout.addLayout(btn_layout)main_layout.addWidget(self.label_img)main_layout.addWidget(right_widget)defcv2qt(self,cv_img):rgbcv2.cvtColor(cv_img,cv2.COLOR_BGR2RGB)h,w,chrgb.shape bytes_per_linech*w qt_imgQImage(rgb.data,w,h,bytes_per_line,QImage.Format_RGB888)returnQPixmap.fromImage(qt_img)defdetect_image(self):filePath,_QFileDialog.getOpenFileName(filter图片(*.jpg *.png *.jpeg))ifnotfilePath:returnresself.model(filePath)[0]self.current_imgres.plot()pixself.cv2qt(self.current_img)self.label_img.setPixmap(pix.scaled(self.label_img.size(),Qt.KeepAspectRatio))boxesres.boxes numlen(boxes)self.label_time.setText(f用时{res.speed[inference]/1000:.3f}s | 目标数目{num})self.table.setRowCount(0)foridx,boxinenumerate(boxes):conffloat(box.conf[0])x1,y1,x2,y2map(int,box.xyxy[0])cls_nameself.model.names[int(box.cls[0])]self.table.insertRow(idx)self.table.setItem(idx,0,QTableWidgetItem(str(idx1)))self.table.setItem(idx,1,QTableWidgetItem(filePath))self.table.setItem(idx,2,QTableWidgetItem(cls_name))self.table.setItem(idx,3,QTableWidgetItem(f{conf*100:.2f}%))self.table.setItem(idx,4,QTableWidgetItem(f[{x1},{y1},{x2},{y2}]))self.label_conf.setText(f置信度{conf*100:.2f}%)self.label_pos.setText(fxmin:{x1}ymin:{y1}xmax:{x2}ymax:{y2})defdetect_video(self):filePath,_QFileDialog.getOpenFileName(filter视频(*.mp4 *.avi))ifnotfilePath:returnself.capcv2.VideoCapture(filePath)self.camera_timer.start(30)defopen_camera(self):self.capcv2.VideoCapture(0)self.camera_timer.start(30)defcamera_frame(self):ret,frameself.cap.read()ifnotret:self.camera_timer.stop()returnresself.model(frame)[0]out_frameres.plot()self.current_imgout_frame pixself.cv2qt(out_frame)self.label_img.setPixmap(pix.scaled(self.label_img.size(),Qt.KeepAspectRatio))defsave_result(self):ifself.current_imgisNone:QMessageBox.warning(self,提示,无检测图片)returnsave_path,_QFileDialog.getSaveFileName(filterjpg(*.jpg))ifsave_path:cv2.imwrite(save_path,self.current_img)QMessageBox.information(self,完成,保存成功)defcloseEvent(self,event):ifself.cap:self.cap.release()self.camera_timer.stop()if__name____main__:appQApplication(sys.argv)winFallStoneDetectWindow()win.show()sys.exit(app.exec_())关键词落石检测危岩落石YOLOv11地质灾害道路边坡落石PyQt可视化山区道路灾害检测应用场景1.山区公路、铁路边坡落石隐患识别2.无人机航拍地质灾害巡检3.汛期边坡危石灾害应急监测4.交通道路地质灾害预警科研5.山区道路安全防护检测实验

相关新闻

自然灾害类:-滑坡检测数据集 部分无人机视角滑坡数据集 4基于YOLOv11滑坡检测系统

自然灾害类:-滑坡检测数据集 部分无人机视角滑坡数据集 4基于YOLOv11滑坡检测系统

2026/8/18 22:07:26

自然灾害类:-滑坡检测数据集,6709张,yolo,voc,coco三种标注方式 图像尺寸:640*640 类别数量:1类 训练集图像数量:5917; 验证集图像数量:668; 测试集图像数量:124 类别名称: 每一类图像数 ,每一…

Codex AI开发平台:从环境配置到MCP扩展的完整实践指南

Codex AI开发平台:从环境配置到MCP扩展的完整实践指南

2026/8/18 21:57:25

如果你最近在关注 AI 编程助手,可能会发现一个现象:很多工具要么功能单一,要么配置复杂,要么需要你不断重复描述上下文。当你只是想快速搭建一个开发环境、管理代码版本,或者让 AI 记住你项目的长期偏好时,…

嵌入式开发入门:从寄存器操作到XMC1302 LED闪烁实战

嵌入式开发入门:从寄存器操作到XMC1302 LED闪烁实战

2026/8/18 21:57:25

1. 从“点灯”开始:为什么它依然是嵌入式入门的试金石“点灯”,或者说让一个LED按照我们的意愿闪烁,几乎是所有嵌入式开发者职业生涯中写下的第一行“有效”代码。这个看似简单的动作,背后串联起的是一整套嵌入式开发的完整逻辑链…

整车控制器VCU:从MCU选型到CAN总线与软件架构的深度解析

整车控制器VCU:从MCU选型到CAN总线与软件架构的深度解析

2026/8/18 23:57:31

1. 从“大脑”到“神经中枢”:整车控制器VCU的角色演进在汽车电子圈里待久了,你会发现一个有趣的现象:很多工程师提起“整车控制器”(Vehicle Control Unit, VCU),第一反应就是“哦,…

嵌入式开发可移植类型实战:stdint.h与类型安全编程

嵌入式开发可移植类型实战:stdint.h与类型安全编程

2026/8/18 23:57:31

1. 项目概述:嵌入式开发中的可移植类型 在嵌入式开发的日常里,我们经常需要和不同的芯片、不同的编译器打交道。今天想和大家深入聊聊一个看似基础,却直接影响代码质量和项目成败的话题: 可移植类型(Portable Types&a…

Linux 系统编程(6)——线程基础

Linux 系统编程(6)——线程基础

2026/8/18 23:57:31

一、为什么需要线程?进程的创建是为了提高并发,但进程是重量级的——创建和切换的开销很大。线程的出现,正是为了在保持并发能力的同时,降低系统开销。1.1 进程与线程的本质区别对比项进程(Process)线程&am…

RAG系统检索效果调优:从向量检索到混合检索与重排序的工程实践

RAG系统检索效果调优:从向量检索到混合检索与重排序的工程实践

2026/8/18 23:57:31

上周,一个做企业知识库的朋友深夜发来消息,说他们基于RAG的问答系统上线后,用户反馈“时灵时不灵”。同一个问题,第一次问能答对,第二次问就答非所问;简单问题答得挺好,稍微复杂点、需要综合多个…

车联网如何重塑ADAS:从单车智能到协同感知的实战解析

车联网如何重塑ADAS:从单车智能到协同感知的实战解析

2026/8/18 23:57:31

1. 从ADAS到车联网:一场关于“车”的认知革命如果你和我一样,在汽车电子或者智能驾驶这个圈子里泡了几年,就会发现一个很有意思的现象:早些年大家聊ADAS(高级驾驶辅助系统),焦点都在车上——这颗…

欧尚长行MPV深度解析:7座家用车性价比之选

欧尚长行MPV深度解析:7座家用车性价比之选

2026/8/18 23:47:31

1. 新车上市:欧尚长行价格与定位解析 今天早上刷新闻,看到一条消息,长安欧尚旗下的全新MPV车型——欧尚长行,正式公布了售价,价格区间定在了6.89万元到8.29万元。这个价格一出来,我身边好几个正在看家用车的…

【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

【文章复现】非线性值迭代自适应动态规划(ADP):离散时间非线性系统的策略迭代自适应动态规划算法研究附Matlab代码

2026/8/17 1:28:42

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…

【双层规划,节点出清价,绿证交易,CVaR方法】两级电力市场环境下计及风险的省间交易商最优购电模型附Matlab代码

【双层规划,节点出清价,绿证交易,CVaR方法】两级电力市场环境下计及风险的省间交易商最优购电模型附Matlab代码

2026/8/18 1:03:22

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…

隐式mpc+自适应mpc+时变mpc,线性时变模型预测控制附Simulink仿真

隐式mpc+自适应mpc+时变mpc,线性时变模型预测控制附Simulink仿真

2026/8/17 8:40:51

✅作者简介:热爱科研的Matlab仿真开发者,擅长毕业设计辅导、数学建模、数据处理、建模仿真、程序设计、完整代码获取、论文复现及科研仿真。🍎 往期回顾关注个人主页:Matlab科研工作室👇 关注我领取海量matlab电子书和…

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

2026/8/17 12:00:53

一天写完毕业论文在2026年已不再是天方夜谭。2026年最炸裂、实测能大幅提速的AI论文写作工具,覆盖选题构思、文献整理、内容生成、格式排版等核心场景,真正帮你高效搞定论文难题。 一、全流程王者:一站式搞定论文全链路(一天定稿首…

导师推荐!2026最新AI论文工具测评与实用推荐

导师推荐!2026最新AI论文工具测评与实用推荐

2026/8/15 10:10:27

2026年真正好用的AI论文工具,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 一、…

告别游戏崩溃:XCOM 2模组管理器的智能革命

告别游戏崩溃:XCOM 2模组管理器的智能革命

2026/8/18 12:20:24

告别游戏崩溃:XCOM 2模组管理器的智能革命 【免费下载链接】xcom2-launcher The Alternative Mod Launcher (AML) is a replacement for the default game launchers from XCOM 2 and XCOM Chimera Squad. 项目地址: https://gitcode.com/gh_mirrors/xc/xcom2-lau…