位置: 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)

  • 直播营销,下一个风口我们该如何把握(直播营销,下一句怎么说)

    直播营销,下一个风口我们该如何把握(直播营销,下一句怎么说)

  • 小天才电话手表怎么换卡(小天才电话手表隐藏功能)

    小天才电话手表怎么换卡(小天才电话手表隐藏功能)

  • 米家自动洗手机怎么装电池(米家自动洗手机故障说明书)

    米家自动洗手机怎么装电池(米家自动洗手机故障说明书)

  • 闲鱼可以微信支付的嘛(闲鱼可以微信支付宝吗)

    闲鱼可以微信支付的嘛(闲鱼可以微信支付宝吗)

  • 荟萃浏览器有电脑版吗(荟萃浏览器电脑版)

    荟萃浏览器有电脑版吗(荟萃浏览器电脑版)

  • 华为荣耀8手机电池容量(华为荣耀8手机怎么设置锁屏时间)

    华为荣耀8手机电池容量(华为荣耀8手机怎么设置锁屏时间)

  • 苹果圆球在哪里设置(苹果圆球在哪里调)

    苹果圆球在哪里设置(苹果圆球在哪里调)

  • 微信朋友圈背景怎么设置黑色(微信朋友圈背景动态图怎么设置)

    微信朋友圈背景怎么设置黑色(微信朋友圈背景动态图怎么设置)

  • 飞猪双通道抢票是什么意思(飞猪双通道抢票怎么开启)

    飞猪双通道抢票是什么意思(飞猪双通道抢票怎么开启)

  • 举报群聊群主知道吗(举报群群主知道吗)

    举报群聊群主知道吗(举报群群主知道吗)

  • 在word2010中,标尺的作用是什么(在world2010中使用标尺)

    在word2010中,标尺的作用是什么(在world2010中使用标尺)

  • 抖音删除评论对方知道吗(抖音删除评论对号有影响吗)

    抖音删除评论对方知道吗(抖音删除评论对号有影响吗)

  • 钉钉可不可以不实名认证(钉钉可不可以不打开自动打卡)

    钉钉可不可以不实名认证(钉钉可不可以不打开自动打卡)

  • 打印机脱机状态是什么意思呀(打印机脱机状态怎么弄)

    打印机脱机状态是什么意思呀(打印机脱机状态怎么弄)

  • hdr高清和高清有什么区别(高清hdr和高清1080p)

    hdr高清和高清有什么区别(高清hdr和高清1080p)

  • 淘宝旺旺名在哪里看(淘宝旺旺名在哪找)

    淘宝旺旺名在哪里看(淘宝旺旺名在哪找)

  • 如何不显示手机号码(如何不显示手机分身消息)

    如何不显示手机号码(如何不显示手机分身消息)

  • 苹果怎么设置热点限制(苹果怎么设置热点连接限制)

    苹果怎么设置热点限制(苹果怎么设置热点连接限制)

  • 电脑键盘乘号怎么输入(电脑键盘乘号怎么打)

    电脑键盘乘号怎么输入(电脑键盘乘号怎么打)

  • 华为可以录屏吗(华为手机可以录屏吗)

    华为可以录屏吗(华为手机可以录屏吗)

  • 投屏卡顿是什么原因(投屏时很卡是什么情况)

    投屏卡顿是什么原因(投屏时很卡是什么情况)

  • ppt2016暗香扑面找不到(ppt2016暗香扑面主题)

    ppt2016暗香扑面找不到(ppt2016暗香扑面主题)

  •  苹果怎么开volte(华为手机的volte功能在哪里开启?)

    苹果怎么开volte(华为手机的volte功能在哪里开启?)

  • 新罕布什尔州的县桥 (© Denis Tangney Jr/E+/Getty Images)(新罕布什尔州的邮政编码)

    新罕布什尔州的县桥 (© Denis Tangney Jr/E+/Getty Images)(新罕布什尔州的邮政编码)

  • 印花税进什么费用
  • 农副产品免税发票抵扣多少税率
  • 海关进口增值税专用缴款书图片
  • 生产型企业出口退税账务处理
  • 财会英语汇总:税收术语?
  • 广告发布费在哪个分类
  • 政府补贴营业外收入所得税汇算清缴需要调增吗
  • 滴滴上开的发票是增值税发票还是普通发票
  • 企业出包工程预付的工程款
  • 年未决算的现金利润怎么算
  • 津贴个人所得税怎么算出来的
  • 购销业务账务处理
  • 股利支付率怎么找数据
  • 汇算清缴需要准备哪些数据
  • 筹建期土地使用税分录
  • 网络报销
  • 固定资产的初始成本包括
  • 进项转出后是否要交税
  • 供应商不给货款怎么办
  • 怎么查公司账户是哪个银行的
  • 发票虚开税务局要求补税怎么办?
  • 小规模纳税人代理记账流程
  • 租赁农民土地应该开发票吗
  • 资产负债表应交税费计算公式
  • 营改增政策解读
  • 处理固定资产怎么计算
  • 银行存款二级科目怎么增加
  • 总账每个月都要结账吗
  • w11如何激活
  • 负债融资的特点是什么
  • 长期负债在报表哪里看
  • 哪些业务可以进入共享服务中心
  • 家里的无线网连着连着就断了
  • 申报高新企业的当年一定要研发费用加计扣除吗
  • 基于php实现简单函数
  • php7.1
  • 建筑安装企业核定征收企业所得税
  • 长期应付款项目的列示金额
  • 增值税发票查询结果不一致是什么意思
  • 公司更衣柜费用怎么算
  • 代发工资一般收多少服务费
  • 农产品收购发票是普票还是专票
  • 公司缴个人所得税吗
  • mongodb迁移
  • 设备购入后又退出怎么办
  • 银行转账凭证可以保留多久
  • 已经认证抵扣的发票会计分录
  • 调账的基本方法及要点都有哪些?
  • 营业收入的核算方式有哪些
  • 减免所得税需要交税吗
  • 会计学营业利润
  • 购销合同上没有金额,怎么写比较好
  • 报表与账不符情况说明
  • 如何计算政府补贴应摊销
  • 在筹建期间的费用属于什么
  • 总公司和分公司如何分离
  • 公司不做账会怎样?
  • 固定资产成本包括什么
  • 总账的建立
  • 编制记账凭证的依据
  • mysql如何修改默认值
  • windows7/vista/server(no slic)
  • be备份linux系统
  • 使用u盘安装macos
  • dwrg_repair.exe什么意思
  • -f linux命令
  • lowleverfatal error怎么解决
  • win10周年版
  • opengl 输入框
  • python,数组
  • python的threading
  • shell 查找文件并赋值shell变量
  • python编程入门指南
  • django documentation
  • python发送信息到微信
  • android设计模式的应用场景
  • jquery图片轮播代码
  • 南宁地方税务局网站
  • 企业注册的步骤
  • 公司税务怎么查询缴款信息呢
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设