news 2026/1/10 13:22:10

裂缝分割数据集 4000张 ,4000张yolo格式的裂缝分割数据集 构建了一个基于 YOLOv5-seg 的裂缝分割系统 桥梁、道路、建筑等结构健康监测场景

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
裂缝分割数据集 4000张 ,4000张yolo格式的裂缝分割数据集 构建了一个基于 YOLOv5-seg 的裂缝分割系统 桥梁、道路、建筑等结构健康监测场景

yolov5-seg ,4000张yolo格式的裂缝分割数据

🛠️ 如何使用YOLOv5-seg训练 4000 张 YOLO 格式裂缝分割数据集(含 PR 曲线分析)

目标:使用 YOLOv5-seg 模型训练一个高精度的裂缝语义分割模型,支持 4000 张标注图像
任务类型:实例分割(Instance Segmentation)——识别并分割出图像中的裂缝区域
输出:完整训练流程、配置文件、代码示例、PR曲线解读与优化建议


🔧 一、环境准备

# 创建虚拟环境conda create -n yolov5_segpython=3.9-y conda activate yolov5_seg# 克隆官方 YOLOv5 仓库(含 segmentation 分支)gitclone https://github.com/ultralytics/yolov5.gitcdyolov5# 安装依赖pipinstall-r requirements.txt pipinstalltorch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu118

✅ 使用ultralytics/yolov5是推荐版本,已支持segment功能。


📁 二、数据集准备(YOLO 格式)

1. 数据结构要求

datasets/crack_segmentation/ ├── images/ │ ├── train/ # 2800 张训练图 │ └── val/ # 1200 张验证图 └── labels/ ├── train/ # 对应 .txt 文件 └── val/

2. YOLO 格式标签(.txt文件)

每行格式:

<class_id> <x_center> <y_center> <width> <height> <segmentation>
  • class_id: 0(裂缝类)
  • <x_center>, <y_center>: 边界框中心点(归一化)
  • <width>, <height>: 边界框宽高(归一化)
  • <segmentation>: 多边形顶点坐标(归一化),格式为:
    x1 y1 x2 y2 x3 y3 ... xn yn

💡 示例:labels/train/img_001.txt

0 0.45 0.62 0.2 0.3 0.4 0.6 0.5 0.6 0.55 0.7 0.5 0.7 0.55 0.6 0.5 0.5

✅ 建议使用LabelMeCVAT工具标注,再转换为 YOLO 格式。


📄 三、创建data.yaml

# data.yamlpath:./datasets/crack_segmentationtrain:images/trainval:images/val# number of classesnc:1names:['crack']

🎯 四、训练模型(train.py

# train.pyimportosimportsys sys.path.append('./')frommodels.experimentalimportattempt_loadfromutils.datasetsimportLoadImagesAndLabelsfromutils.generalimportcheck_file,check_img_sizefromutils.plotsimportplot_resultsfromutils.torch_utilsimportselect_device# 设置参数device='0'# GPU 编号batch_size=16imgsz=640epochs=100weights='yolov5s-seg.pt'# 预训练权重(可选)data='data.yaml'name='crack_segmentation'# 启动训练!python train.py \--batch-size{batch_size}\--epochs{epochs}\--img640\--data{data}\--weights{weights}\--name{name}\--device{device}\--workers4\--patience10\--save-period10\--project runs/segment \--exist-ok

✅ 输出路径:runs/segment/crack_segmentation/


📊 五、评估结果与 PR 曲线解读

你提供的Precision-Recall Curve(PR 曲线)显示:

特征解读
初始段接近 (0,1)在低召回率下,模型具有很高的精确度(误检少)
下降趋势平缓随着召回率提升,精确度下降较慢 → 模型鲁棒性强
在 Recall ~0.8 时 Precision ~0.7表明模型在保持较高召回的同时仍能维持良好精度

理想 PR 曲线特征

  • 越靠近左上角越好
  • AUC(曲线下面积)越高越好(>0.9 优秀)

❌ 若曲线陡降,说明模型存在大量误检或漏检。


🧪 六、推理测试(检测 + 分割)

# detect.pyimporttorchfrommodels.experimentalimportattempt_loadfromutils.datasetsimportLoadImagesfromutils.generalimportnon_max_suppression,scale_coordsfromutils.plotsimportplot_one_box,plot_masks# 加载模型model=attempt_load('runs/segment/crack_segmentation/weights/best.pt',map_location='cpu')model.eval()# 推理图片image_path='test.jpg'img=cv2.imread(image_path)img=cv2.cvtColor(img,cv2.COLOR_BGR2RGB)# 推理withtorch.no_grad():pred=model(torch.tensor(img).permute(2,0,1).float().unsqueeze(0)/255.0)[0]# NMSpred=non_max_suppression(pred,conf_thres=0.5,iou=0.45,classes=None,agnostic=False)# 可视化fordetinpred:iflen(det):for*xyxy,conf,clsindet:# 绘制边界框plot_one_box(xyxy,img,color=(0,255,0),label='crack')# 绘制掩码(mask)mask=det[0][...,5:]# 获取 maskplot_masks(img,mask,xyxy)

📈 七、如何提升性能?

1.数据增强

# train.py 中添加--mosaic0.5--mixup0.5--hsv_h0.015--hsv_s0.7--hsv_v0.4

2.调整学习率

--lr00.001# 初始学习率--warmup_epochs3

3.使用更大数据量

  • 当前 4000 张数据足够训练,但若想更高精度,建议扩充至 8000+ 张

4.模型选择

模型参数量精度推荐场景
yolov5s-seg移动端/边缘设备
yolov5m-seg平衡性能
yolov5l-seg很高服务器部署

📂 八、导出模型(ONNX / TensorRT)

# export_model.pyfrommodels.experimentalimportattempt_loadimporttorch model=attempt_load('runs/segment/crack_segmentation/weights/best.pt')model.export(format='onnx')# 导出 ONNXmodel.export(format='engine')# 导出 TensorRT(需 CUDA)

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/1/8 16:38:52

1992-2024年各省、地级市、区县基尼系数、泰尔指数、阿特金森指数

数据简介 区域发展的不平等状况可以从资源配置效率、社会稳定性、政策制定精准度与发展可持续性四个层面深刻影响区域综合治理与长期规划。在资源配置效率层面&#xff0c;精准量化的不平等指数&#xff08;如基尼系数&#xff09;能揭示经济增长成果的共享程度&#xff0c;若…

作者头像 李华
网站建设 2026/1/8 16:36:50

计算机毕设java网上订餐系统 基于Java的在线餐饮预订平台设计与实现 Java技术驱动的网络订餐系统开发

计算机毕设java网上订餐系统d0a769&#xff08;配套有源码 程序 mysql数据库 论文&#xff09; 本套源码可以在文本联xi,先看具体系统功能演示视频领取&#xff0c;可分享源码参考。随着互联网技术的飞速发展&#xff0c;人们的生活方式发生了翻天覆地的变化。尤其是在疫情期间…

作者头像 李华
网站建设 2026/1/8 16:36:48

M2FP模型数据预处理优化

M2FP模型数据预处理优化&#xff1a;提升多人人体解析服务的稳定性与效率 &#x1f4d6; 背景与技术挑战 在计算机视觉领域&#xff0c;多人人体解析&#xff08;Multi-person Human Parsing&#xff09; 是一项关键任务&#xff0c;旨在对图像中多个个体的身体部位进行像素级语…

作者头像 李华
网站建设 2026/1/8 16:35:43

M2FP与其他SOTA模型对比:PASCAL-Person-Part榜单表现

M2FP与其他SOTA模型对比&#xff1a;PASCAL-Person-Part榜单表现 &#x1f4ca; 人体解析技术背景与挑战 在计算机视觉领域&#xff0c;语义分割是理解图像内容的核心任务之一。而人体解析&#xff08;Human Parsing&#xff09;作为其重要子方向&#xff0c;旨在将人体细分为多…

作者头像 李华
网站建设 2026/1/8 16:35:14

M2FP API接口文档详解:POST请求返回JSON与Base64图像

M2FP API接口文档详解&#xff1a;POST请求返回JSON与Base64图像 &#x1f4d6; 项目背景与技术定位 在计算机视觉领域&#xff0c;人体解析&#xff08;Human Parsing&#xff09; 是一项关键的细粒度语义分割任务&#xff0c;旨在将人体分解为多个语义明确的身体部位&#…

作者头像 李华
网站建设 2026/1/10 2:06:10

对比测试:M2FP在微pe官网风格页面中仍保持高解析稳定性

对比测试&#xff1a;M2FP在微pe官网风格页面中仍保持高解析稳定性 &#x1f4cc; 引言&#xff1a;为何需要稳定的人体解析服务&#xff1f; 在当前AI视觉应用快速落地的背景下&#xff0c;多人人体解析&#xff08;Human Parsing&#xff09;已成为智能零售、虚拟试衣、安防…

作者头像 李华