位置: IT常识 - 正文

【swinUnet官方代码测试自己的数据集(已训练完毕)】

编辑:rootadmin
【swinUnet官方代码测试自己的数据集(已训练完毕)】 ***************************************************码字不易,收藏之余,别忘了给我点个赞吧!***************************************************---------Start

推荐整理分享【swinUnet官方代码测试自己的数据集(已训练完毕)】,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

首先参考上一篇的训练过程,因为测试需要用到训练获得的权重。

1、检查相关文件1.1 检查test_vol.txt的内容是否是测试用的npz文件名称【swinUnet官方代码测试自己的数据集(已训练完毕)】

测试集的npz文件

1.2 检查模型权重文件

2、修改部分代码2.1 修改dataset_synapse.py

slice_name = self.sample_list[idx].strip('\n') data_path = os.path.join(self.data_dir, slice_name+'.npz') data = np.load(data_path) image, label = data['image'], data['label'] #改,numpy转tensor image = torch.from_numpy(image.astype(np.float32)) image = image.permute(2,0,1) label = torch.from_numpy(label.astype(np.float32))2.2 修改test.py代码

修改相关参数和文件路径 is_savenii:是否保存预测结果图片 num_classes:预测的目标类别数+1 cfg:swinUnet网络结构配置文件 test_save_dir:保存预测结果文件夹 num_classes:预测的目标类别数+1 自定义权重路径

2.3 修改util.py代码(分两种情况)第一种情况:保存预测原图,保存的结果是一张灰度图,每个像素的值代表该像素属于哪个类别。例如(0:背景,1:目标1,2:目标2…),这是一张全黑图。def test_single_volume(image, label, net, classes, patch_size=[256, 256], test_save_path=None, case=None, z_spacing=1): image, label = image.squeeze(0).cpu().detach().numpy(), label.squeeze(0).cpu().detach().numpy() _, x, y = image.shape # 缩放图像符合网络输入大小224x224 if x != patch_size[0] or y != patch_size[1]: image = zoom(image, (1, patch_size[0] / x, patch_size[1] / y), order=3) input = torch.from_numpy(image).unsqueeze(0).float().cuda() net.eval() with torch.no_grad(): out = torch.argmax(torch.softmax(net(input), dim=1), dim=1).squeeze(0) out = out.cpu().detach().numpy() # 缩放预测结果图像同原始图像大小 if x != patch_size[0] or y != patch_size[1]: prediction = zoom(out, (x / patch_size[0], y / patch_size[1]), order=0) else: prediction = out metric_list = [] for i in range(1, classes): metric_list.append(calculate_metric_percase(prediction == i, label == i)) if test_save_path is not None: #保存预测结果 prediction = Image.fromarray(np.uint8(prediction)).convert('L') prediction.save(test_save_path + '/' + case + '.png') return metric_list第二种情况:保存可见图像,将不同类别映射成不同的颜色。只需要将上面代码的if test_save_path is not None:里面的内容替换成下面的代码即可。 #将不同类别区域呈彩色展示 #2分类 背景为黑色,类别1为绿色 if test_save_path is not None: a1 = copy.deepcopy(prediction) a2 = copy.deepcopy(prediction) a3 = copy.deepcopy(prediction) #r通道 a1[a1 == 1] = 0#g通道 a2[a2 == 1] = 255#b通道 a3[a3 == 1] = 0 a1 = Image.fromarray(np.uint8(a1)).convert('L') a2 = Image.fromarray(np.uint8(a2)).convert('L') a3 = Image.fromarray(np.uint8(a3)).convert('L') prediction = Image.merge('RGB', [a1, a2, a3]) prediction.save(test_save_path+'/'+case+'.png')

至此,设置完毕,右键run运行,若控制台出现下面的结果,则表示运行正确,我这里的权重只训练了一个epoch,所以预测的都是0。

3、查看预测结果

查看日志文件 查看预测结果图

总结: swinUnet主要由swin_transform模块构成,数据量太少的时候训练效果很差,跟TransUnet不能比。由于仅文字表述某些操作存在局限性,故只能简略描述,有任何疑问可下方留言评论或私信,回复不及还望见谅,感激不尽!
本文链接地址:https://www.jiuchutong.com/zhishi/293157.html 转载请保留说明!

上一篇:vue3使用svg图标多种方式(vue引用svg矢量图)

下一篇:Zend Framework教程之Zend_Registry对象用法分析(zendframework3)

  • 未认证的进项税能做转出处理吗
  • 金蝶软件中怎么增加固定资产
  • 如何根据资产负债表填写现金流量表
  • 工会经费2019年新政策
  • 防伪税控发票
  • 被收购的收入计什么科目
  • 处置固定资产取得的收益属于利得吗
  • 哪些计入应收账款
  • 研发样机是什么
  • 一般纳税人每个月需要报哪些税
  • 集团内关联企业有哪些
  • 专票可以当费用票吗
  • 商标的费用能抵扣吗
  • 开具发票超出企业经营范围属于虚开发票吗??
  • 付款申请需要附什么依据
  • 教学用品采购
  • 公益捐赠税前扣除政策
  • 无票收入确认收入
  • 建筑业调试费进什么科目?
  • 牛奶的增值税普通发票
  • 企业所得税调增调减怎么理解
  • 赠与合同要公证吗有效吗
  • 公司销售自己使用过的固定资产
  • 增值税出口服务零税率
  • 增值税发票销货清单哪里领
  • gcuservice.exe
  • 凭证的类型
  • 代理业务怎么记账
  • 公司购置办公楼自用
  • form action target
  • 企业购买银行理财
  • 亚运村夜宵地方
  • 如果收到房租的说说
  • framework在哪里打开
  • 建信信托介绍
  • 2021年前端面试
  • php获取位置
  • 石油预付款发票怎么开
  • dedecms调用页面
  • csv文件导入到pycharm时报错
  • 滞纳金是
  • 收据入帐
  • 企业所得税免税项目
  • 旅行社差额征税全额开票和差额开票
  • 个人出租不动产月租金不超10万免税
  • 主营业务收入如何做分录
  • 企业亏损为什么还继续
  • 员工医药费属于什么费用
  • 文化事业建设费税收优惠政策2022
  • 电信电子发票什么格式
  • 挂靠建筑公司预交的增值税如何做凭证?
  • 公司固定资产如何核算
  • 如何处理记账凭证
  • mysql的基本sql语句
  • win8.1系统更新后启动不了
  • win10手机版下载官方中文版
  • windowsxp开机启动项在哪里设置
  • 在windows下把绿色程序添加到鼠标右键的方法
  • winton
  • centos设置双网卡
  • 如何注销windows账户登录
  • 360安全卫士windows7
  • linux中的top命令
  • 电脑开机显示windows不可用
  • win7怎么设置局域网共享文件和操作
  • 升级win10后悔了
  • cocos2d-x起点之程序的入口
  • 动作
  • bash脚本加密
  • linux服务器安全攻防
  • 给一个接口,然后怎么在vue里面调用
  • 编写shell脚本,批量建立用户
  • 深入探讨换个说法怎么说
  • js相等和全等
  • javascript Keycode对照表
  • linux pythonide
  • javascript面向对象吗
  • 境外投资收益如何交税
  • 开票项目信息分类查询
  • 电子税务怎么弄
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设