deeplabv3+街景图片语义分割,无需训练模型,看不懂也没有影响,直接使用,cityscapes数据集
最近做街景语义分割相关的工作,因为没有gpu训练模型,且训练的模型往往miou很低,并不如别人训练好的权重好用,所以在github找到了一个模型,具有cityscapes数据集预训练权重,不需要训练模型,不需要看懂模型,一行代码直接出语义分割之后的结果。然后用pyhton进行统计像素值,统计类别所占像素值。详细内容后面再写,先占个坑。
目录
邮箱:邮箱已设置自动回复,不看私信,没精力看。437969428@qq.com
最近做街景语义分割相关的工作,因为没有gpu训练模型,且训练的模型往往MIOU很低,还不如直接找训练好的模型,所以在github找到了一个模型,具有cityscapes数据集预训练权重,不需要训练模型,不需要看懂模型,一行代码直接出语义分割之后的结果。
语义分割之后,用pyhton统计各个类别所占像素个数,用于后续定量指标的计算。
三个视频+两个详细代码使用文档+所有代码。
视频教程:
1.语义分割全流程介绍(14分)
2.语义分割模型使用(19分)
3.像素提取(计算类别百分比)+指标计算(绿视率、 开阔度、 视觉熵等),转shp矢量(22分)
1、下载代码,下载预训练好的权重

选择哪一个都行,随便下载一个,以DeepLabV3Plus-ResNet101为例
没有checkpoints文件夹就自己建一个。
2、预测代码
代码在终端运行,修改完之后,直接复制粘贴运行。

单张图片:
python predict.py --input datasets/data/cityscapes/leftImg8bit/train/bremen/bremen_000000_000019_leftImg8bit.png --dataset cityscapes --model deeplabv3plus_mobilenet --ckpt checkpoints/best_deeplabv3plus_mobilenet_cityscapes_os16.pth --save_val_results_to test_results
文件夹:
python predict.py --input datasets/data/cityscapes/leftImg8bit/train/bremen --dataset cityscapes --model deeplabv3plus_mobilenet --ckpt checkpoints/best_deeplabv3plus_mobilenet_cityscapes_os16.pth --save_val_results_to test_results
python predict.py 意思是运行predict这个python文件
--input datasets/bremen_000000_000019_leftImg8bit.png 这里是输入文件/输入文件夹,修改为自己的比如:E:\深圳街景\A01街景原图\福田区
--dataset cityscapes 使用的数据集
--model deeplabv3plus_mobilenet 使用的模型,或者deeplabv3plus_resnet101
--ckpt checkpoints/best_deeplabv3plus_mobilenet_cityscapes_os16.pth 权重文件,需要新
建checkpoints文件夹,将权重文件放进去。或者使用best_deeplabv3plus_resnet101_cityscapes_os16.pth.tar这个权重文件
注:--model要与--ckpt权重文件保持一致,mobilenet就都mobilenet,resnet101就都resnet101。
--save_val_results_to test_results 输出文件夹,指定路径即可,不存在会按照指定的路径创建
直接将所有图片进行语义分割,随后将四个图片的像素求平均即可。
建议直接用四个方向的图预测。
如果是全景图的话,建议用ptgui pro拆分成上下前后左右六个方向,保留前后左右四个方向,是否保留上方向,自己考虑。根据我的结果是不建议,全是天空没有意义且模型分错严重。
全景图还是四个方向,见仁见智,论文中都有,只不过更多的是四个方向。
以文件夹为例:
python predict.py --input D:\街景图片 --dataset cityscapes --model deeplabv3plus_resnet101 --ckpt checkpoints/best_deeplabv3plus_resnet101_cityscapes_os16.pth.tar --save_val_results_to D:\语义分割后的图片
如果下载的模型是:
--model deeplabv3plus_mobilenet
--ckpt checkpoints/best_deeplabv3plus_mobilenet_cityscapes_os16.pth
--model deeplabv3plus_resnet101
--ckpt checkpoints/best_deeplabv3plus_resnet101_cityscapes_os16.pth.tar
出现其他运行的错误,包括但不限于 numpy之类的,百度搜索一下就可以解决。
语义分割后的示例图片
语义分割之后,统计各类像素数量的代码:
3、像素提取(计算类别百分比)+指标计算
结果示例图。
常规提取代码:运行速度比较慢,大概2张/1s(不维护了,也不出了)。
改进提取代码+说明文档:能达到60张/s(取决于cpu),并且文件保存时间几乎为0。文档内容见下图。
需要代码(语义分割结果提取像素的代码,不是模型提升精度的代码)联系邮箱437969428@qq.com,放wx会被认为广告,下架博文。
4、文档部分内容截图
示例图2
示例图3
示例图4
邮箱:不看私信,没精力看。437969428@qq.com
更多推荐



所有评论(0)