首页 > 分享 > 语义分割预处理与后处理方法

语义分割预处理与后处理方法

语义分割预处理与后处理方法

原创 已于 2022-03-28 16:25:04 修改 · 2.8w 阅读

· 44

· 336 ·

CC 4.0 BY-SA版权

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

于 2020-04-01 18:27:29 首次发布

 深度学习发展到现在,各路大神都发展出了各种模型。在深度学习实现过程中最重要的最花时间的应该是数据预处理与后处理,会极大影响最后效果,至于模型,感觉像是拼乐高积木,一个模块一个模块地叠加,拼成最适合自己的模型。

1 数据预处理

1.1 图像切割

 一般而言,训练集会是一整张大图,所以需要自己切割成小图训练,可以做切割,也可以在训练时划窗读取,最好先做切割,可以检查数据。切割的图片大小根据服务器性能来看,12G的GPU切为256或512的比较合适一些。
 切割的时候最好有重叠的切割,至于重叠率可以根据实际情况自己做一些尝试,这样可以尽量避免将要识别的物体切割,导致模型训练时不能很好地识别该类物体。同理,在模型预测时,在边缘部分的预测结果也不准确,需要重叠切割,并且取中间部分的结果,舍弃边缘部分。

1.2 数据平衡

 待识别的物体如果占比不平衡,则会很影响模型,比如草地占比99%,喷泉占比1%的数据,只要模型将所有物体都分类为草地,那么模型的准确率也会达到99。
 所以我们希望模型的数据占比尽量达到均衡。为此有很多策略可以使用,先进行数据统计,数据分析后再制定策略。

1.2.1 数据统计

 拿到数据后一般需要分析标签中各个类别的占比。

import gdal import numpy as np data_path = r'/home/fsl/image_2_label.png' src = gdal.Open(data_path).ReadAsArray() n_class0 = np.sum(np.where(src==0)) n_class1 = np.sum(np.where(src==1)) n_class2 = np.sum(np.where(src==2)) n_class3 = np.sum(np.where(src==3)) n_class4 = np.sum(np.where(src==4)) sum = src.shape

1234567891011

相关知识

基于语义分割的油菜花分割方法的研究
憨批的语义分割6——制作语义分割数据标签
【综述研读】深度学习多模态图像语义分割前沿进展
【泡泡一分钟】基于精细语义分割网络的多品种花果检测
【图像分割】基于阈值法实现大脑图像分割附Matlab代码
制作用于图像语义分割训练的标签数据【图像分割】【labelme】
基于叶片病斑面积的病虫害监测方法与流程
如何准确识别田间害虫?“火眼金睛”图像分割新策略来了!
语义分割 Pytorch计算mIoU、PA等评价指标(可忽略指定类别)
基于实例分割的休眠期枣树修剪枝参数提取方法

网址: 语义分割预处理与后处理方法 https://m.huajiangbk.com/newsview2469724.html

所属分类:花卉
上一篇: python如何切割括号里面内容
下一篇: 2023年开工起石材加工费用价格