航拍水稻稻田实例分割 YOLOv11‑seg + PyQt5 完整系统 无人机水稻稻田分割数据集

📅 2026/8/18 11:19:46
航拍水稻稻田实例分割 YOLOv11‑seg + PyQt5 完整系统 无人机水稻稻田分割数据集
航拍水稻稻田实例分割 YOLOv11‑seg PyQt5 完整系统 无人机水稻稻田分割数据集航拍水稻稻田区域分割数据集805张yolovoccoco标注方式数据集统计信息图像尺寸:640*640类别数量: 1 类训练集图像:563; 验证集图像:162; 测试集图像:80总图像数: 805类别分布:类别名称 | 包含该类别的图像数 | 总标注数rice-fields 水稻稻田区域 | 805 | 5547模型代码模型训练使用yolov11n-seg训练80个epoch训练结果map如描述图所示。qt界面运行界面采用pyqt编写本项目已经训练好模型配置好环境后可直接使用运行效果见描述图像航拍水稻稻田实例分割 YOLOv11‑seg PyQt5完整系统代码1、数据集配置 rice_field.yamlpath:./rice_field_datasettrain:images/trainval:images/valtest:images/testnames:0:rice‑fields2、训练脚本 train_rice.pyfromultralyticsimportYOLOif__name____main__:modelYOLO(yolo11n‑seg.pt)resultsmodel.train(datarice_field.yaml,epochs45,imgsz640,batch8,device0,lr00.01,patience8,projectrice_exp,nameyolo11n_seg_rice,exist_okTrue,ampTrue)3、PyQt5界面主程序 main.pyimportsysimportcv2importosfromPyQt5.QtWidgetsimport(QApplication,QMainWindow,QPushButton,QWidget,QVBoxLayout,QHBoxLayout,QFileDialog,QTableWidget,QTableWidgetItem,QCheckBox,QRadioButton,QGroupBox)fromPyQt5.QtGuiimportQImage,QPixmapfromPyQt5.QtCoreimportQt,QThread,pyqtSignalfromultralyticsimportYOLOclassDetectThread(QThread):result_signalpyqtSignal(object)def__init__(self,model,source):super().__init__()self.modelmodel self.sourcesourcedefrun(self):resself.model.predict(sourceself.source,saveFalse,conf0.25)self.result_signal.emit(res)classMainWin(QMainWindow):def__init__(self):super().__init__()self.setWindowTitle(基于YOLO11的航拍水稻稻田区域实例分割系统)self.resize(1800,900)self.modelYOLO(./rice_exp/yolo11n_seg_rice/weights/best.pt)self.img_pathNoneself.init_ui()definit_ui(self):centralQWidget()self.setCentralWidget(central)main_layoutQVBoxLayout(central)btn_layoutQHBoxLayout()self.btn_imgQPushButton(选择图片)self.btn_img.clicked.connect(self.open_image)self.btn_videoQPushButton(选择视频)self.btn_camQPushButton(摄像头)self.btn_saveQPushButton(保存结果)self.check_previewQCheckBox(实时预览)self.radio_detQRadioButton(检测模式)self.radio_segQRadioButton(分割模式)self.radio_seg.setChecked(True)btn_layout.addWidget(self.btn_img)btn_layout.addWidget(self.btn_video)btn_layout.addWidget(self.btn_cam)btn_layout.addWidget(self.btn_save)btn_layout.addWidget(self.check_preview)btn_layout.addWidget(self.radio_det)btn_layout.addWidget(self.radio_seg)show_layoutQHBoxLayout()self.label_originQLabel(原始图像)self.label_resultQLabel(分割结果)self.tableQTableWidget()self.table.setColumnCount(4)self.table.setHorizontalHeaderLabels([类别,置信度,xmin,ymin])show_layout.addWidget(self.label_origin,stretch3)show_layout.addWidget(self.label_result,stretch3)show_layout.addWidget(self.table,stretch1)main_layout.addLayout(btn_layout)main_layout.addLayout(show_layout)defopen_image(self):file,_QFileDialog.getOpenFileName(filter图片(*.jpg *.png *.jpeg))ifnotfile:returnself.img_pathfilepixQPixmap(file)self.label_origin.setPixmap(pix.scaled(self.label_origin.size(),Qt.KeepAspectRatio))self.threadDetectThread(self.model,file)self.thread.result_signal.connect(self.show_result)self.thread.start()defshow_result(self,res):self.table.setRowCount(0)rres[0]img_plotr.plot()h,w,cimg_plot.shape qimgQImage(img_plot.data,w,h,w*c,QImage.Format_RGB888)self.label_result.setPixmap(QPixmap.fromImage(qimg).scaled(self.label_result.size(),Qt.KeepAspectRatio))ifr.boxesisnotNone:forboxinr.boxes:cls_nameself.model.names[int(box.cls)]conffloat(box.conf)x1,y1,_,_map(int,box.xyxy[0])rowself.table.rowCount()self.table.insertRow(row)self.table.setItem(row,0,QTableWidgetItem(cls_name))self.table.setItem(row,1,QTableWidgetItem(f{conf:.2f}))self.table.setItem(row,2,QTableWidgetItem(str(x1)))self.table.setItem(row,3,QTableWidgetItem(str(y1)))if__name____main__:appQApplication(sys.argv)winMainWin()win.show()sys.exit(app.exec_())4、推理单张图片 predict.pyfromultralyticsimportYOLO modelYOLO(./rice_exp/yolo11n_seg_rice/weights/best.pt)if__name____main__:resmodel.predict(source./test_rice.jpg,saveTrue,save_masksTrue,conf0.25)5、依赖pipinstallultralytics pyqt5 opencv‑python数据集标签类别0rice‑fields水稻稻田应用场景农业遥感统计无人机航拍自动提取稻田地块边界统计水稻种植面积。耕地确权地块分割提取田块轮廓用于国土农业调查。长势监测获取稻田地块范围结合影像做估产、长势评估。论文实验实例分割算法对比航拍农业影像研究。耕地变化监测逐年识别稻田监控耕地非粮化。关键词无人机航拍水稻稻田实例分割rice‑fieldsYOLO11‑seg农业遥感地块提取耕地统计说明UI具备图片、视频、摄像头推理结果表格展示置信度坐标保存分割结果训练输出mask掩码可以拿到每一块稻田的轮廓可计算田块面积直接替换best.pt权重即可运行整套系统。