跑通CLAM测试部分
目标:
本篇博客的主要目的是关于如何跑通CLAM测试部分的代码,之前的博客中已经介绍了如何跑通训练部分的代码,链接如下:
https://blog.csdn.net/qq_34532413/article/details/124704759
近期通过进一步的学习得知,CLAM的主要部分在于第一阶段的特征提取,第二阶段的分类工作量较小。因而在CLAM测试部分的代码流程与训练部分类似:首先是切片以及提取特征,最后进行分类。以下将详细介绍CLAM的流程。
流程:
1、首先是将WSI图像进行切片,代码如下:
python create_patches_fp.py --source Test_WSI --save_dir Test_WSI_Patch --patch_size 256 --seg --patch --stitch
2、随后进行特征提取,代码如下:
CUDA_VISIBLE_DEVICES=0,1 python extract_features_fp.py --data_h5_dir Test_WSI_Patch/ --data_slide_dir Test_WSI/ --csv_path Test_WSI_Patch/process_list_autogen_processed.csv --feat_dir Test_WSI_Feat/ --batch_size 512 --slide_ext .tif --pretrain checkpoint_0049.pth.tar
注意这里指明了预训练模型的权重参数,该参数为使用Moco预训练的ResNet50权重参数。
3、首先修改create_splits_seq.py中文件路径,如下所示
随后将数据集分别划分为训练集、验证集、测试集,并划分10次。
python create_splits_seq.py --task task_1_tumor_vs_normal --seed 1 --label_frac 0.7 --k 10
以上代码中”–k 10“表明对数据集划分10次,需要注意的是在划分时需要提供样本的标签否则无法完成划分,也即CLAM的测试必须提供标签,这是CLAM代码中的不足。
运行完成后会得到如下的划分数据集的.csv文件,其中之后会用到的是splits_i.csv(i = 0,1 … 9)
4、首先对eval.py数据集路径进行相应修改,代码修改如下:
随后运行eval.py进行交叉验证,代码如下:
CUDA_VISIBLE_DEVICES=0 python eval.py --drop_out --k 10 --models_exp_code Test_WSI --save_exp_code Test_WSI --task task_1_tumor_vs_normal --model_type clam_sb --results_dir results --data_root_dir Test_WSI_Feat/
上述参数中models_exp_code是指十折交叉验证的模型路径,此外还放置不同折的数据集拆分,如下图所示。
data_root_dir为提取的特征的存储路径。
总结
CLAM代码中的主文件(训练和测试代码文件)较为简单,难度在于有大量需要传入的参数,在把每个参数的意义明确后,很快便能理解透彻。
跑通CLAM测试部分相关推荐
- Riscv五级流水线64位cpu,systemverilog编写,指令集rv64i,支持csr寄存器,可跑通dhrystone测试
Riscv五级流水线64位cpu,systemverilog编写,指令集rv64i,支持csr寄存器,可跑通dhrystone测试. 支持2bit饱和分支预测 包括: 1.rv64单周期Cpu 2.r ...
- 【githubshare】基于 C 语言编写的一款 2D 太空射击游戏,已在 Windows 10 和 Ubuntu Linux 16.04 系统上跑通测试
基于 C 语言编写的一款 2D 太空射击游戏:space-shooter.c,已在 Windows 10 和 Ubuntu Linux 16.04 系统上跑通测试. GitHub:github.com ...
- 顶级测试框架Jest指南:跑通一个完美的程序,就是教出一群像样的学生
facebook三大项目:yarn jest metro,有横扫宇宙之势. 而jest项目的宗旨为:减少测试一个项目所花费的时间成本和认知成本. --其实,它在让你当一个好老师. jest文档非常简略 ...
- 装不了 pytorch=0.4.0? ubuntu下 基于 cuda=92 和 pytorch=1.2 配置环境跑通 CornerNet 训练和测试流程 步骤详解(包括GPU限制问题详解)
ubuntu下跑通CornerNet的流程步骤 环境配置 写这篇博客原因? 更改conda_packagelist.txt conda下基于conda_packagelist.txt创建新环境 安装p ...
- 【全网唯一】全网唯一能够跑通的,跑不通你来找我~用node.js完成微信支付下单功能,且只需要一个文件wxpay.js就解决业务流程的node.js程序
先吐为敬! 最近心血来潮研究nodejs如何完成微信支付功能,结果网上一搜索,一大堆"代码拷贝党"."留一手"."缺斤少两"."不 ...
- 13个月才跑通GitHub模型,机器学习科研入门太难了吧
点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 金磊 萧箫 发自 凹非寺 量子位 报道 | 公众号 QbitAI & ...
- yolov3网络结构图_目标检测——YOLO V3简介及代码注释(附github代码——已跑通)...
GitHub: liuyuemaicha/PyTorch-YOLOv3github.com 注:该代码fork自eriklindernoren/PyTorch-YOLOv3,该代码相比master分 ...
- DynaSLAM跑通的辛酸之路
DynaSLAM+MAC电脑+虚拟机+ubuntu18.04+跑通的辛酸之路 首先说一下我在做这项工作的前期之路. 在这之前我跑通过ORB-SLAM2,ORB-SLAM3,所以Pangolin,Eig ...
- 跑通SpringBoot + dubbo3.0.8 + zookeeper
跑通SpringBoot + dubbo + zookeeper 先安装并启动zookeeper 安装dubbo-admin进行dubbo监控 新建项目 创建统一接口 创建服务提供者 pom: yml ...
最新文章
- windows10+Python3.7安装dlib库进行面部标志识别
- python爬虫意思_python为什么叫爬虫
- Comptia Strata认证考点相关情况【2018.06.05更新】
- Scala入门到精通——第二十四节 高级类型 (三)
- height:auto 火狐没边框
- 前端后台的爱恨情仇——接口调试
- 创建一个新数组并指定数组的长度
- Linux下wps文档结构图,如何在Word中设置文档结构图
- Xshell连接服务器编写代码(windows+Xshell+阿里云主机)
- idea 中静态图片资源无法导入
- 一款简洁的税后工资计算器(2019)
- 献给那些没有自信的人。
- windows批量改名
- HMACSHA1 加密算法
- PMP®项目管理|项目干系人如何管理?
- AI路径查找器如何使用
- ubuntu 手机连接不到电脑,配置
- 闯关创业板的宝宝巴士:早教公司的面子,广告公司的里子
- 安装时提示错误1402的解决办法
- 高等数学 极限与连续 知识技巧思维导图 [21考研上岸之旅]
热门文章
- (无坑、直接的C++小代码)空间三点计算平面方程参数
- 三种蓝牙架构实现方案(蓝牙协议栈方案)
- IBM Thinkpad-要用就用最好的笔记本
- linux的c语言捕获sigsegv,Segmentation Fault in Linux (2.4栈溢出了,有时SIGSEGV,有时却啥都没发生)...
- Poetry下载安装(20230221最新方法)
- 使用vscode运行vue项目
- 三菱FX3U 485ADP与4台欧姆龙E5cc温控器远程
- libnuma.so.1()(64bit) is needed by mysql-community-server-5.7.9-1.el6.x86_64
- 修改Windows MySQL数据库存储位置
- LLVM MC 简介