八、使用代码对道路结果进行后处理及iou优化步骤详解

老师又给我画了大饼
没办法 只能按照他们的想法做个尝试
上一篇的方法还没进行下去
就被叫停 又更新了一个新的想法

这里记录一下
我的尝试过程

一、图片膨胀

首先使用代码对道路进行膨胀
这里的代码
import cv2
import numpy as np

img = cv2.imread(gt_dir+name, 0)    
kernel = np.ones((7, 7), np.uint8)    
img_dilate = cv2.dilate(img, kernel, iterations = 1)    
cv2.imwrite(gt_dir+name+'_mask.png',img_dilate.astype(np.uint8))

img – 目标图片
kernel – 进行操作的内核,默认为3×3的矩阵
iterations – 膨胀次数,默认为1

我把kernel改成70确实就很明显
在这里插入图片描述
膨胀后:
在这里插入图片描述

但是存在一个问题 这个代码读取保存的图像是8位深度的
而我们需要的是24位的
imwrite没有直接写入RGB的参数
主要是在imread读取的是什么格式那么保存的就是什么格式的
那么我们要保存24位的就要这样写

img = cv2.imread(gt_dir+name, cv2.IMREAD_COLOR)    
kernel = np.ones((7, 7), np.uint8)    
img_dilate = cv2.dilate(img, kernel, iterations = 1)    
cv2.imwrite(gt_dir+name+'_mask.png',img_dilate.astype(np.uint8))
``

第一步完成

二、计算iou

首先原iou为
Get miou.
test_mIoU: 72.79
test_mPA: 80.12
Get miou done.

膨胀real图片之后,不变predict的iou为
Get miou.
test_mIoU: 67.22
test_mPA: 69.53
Get miou done.

如果把pre膨胀 不变real:
Get miou.
test_mIoU: 69.79
test_mPA: 86.76

两个都膨胀:
Get miou.
  test_mIoU:  74.72
  test_mPA:  81.2
Get miou done.

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Laney_Midory

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值