(CVPR2019医学影像)LesaNet配置

2023-11-14


作者原版github: LesaNet

一、环境配置

1.下载CADLab中的LesaNet文件夹

https://github.com/rsummers11/CADLab.git #下载库
cd CADLab/LesaNet #只需要用到LesaNet部分
conda create -n Lesa python=2.7 #创建python2.7的虚拟环境
source activate Lesa	#激活
conda install pytorch=0.4.1 torchvision #安装0.4.1的pytorch包及torchvision
pip install -r requirements.txt #安装所需要的包

注:如果CADLab下载超时,因为太大了。就使用该插件(需科学上网)仅下载LesaNet文件夹。

2.roi_pooling编译

roi_pooling编译后放入roi_pooling/文件夹中:

此处下载faster-rcnn的库:

git clone https://github.com/jwyang/faster-rcnn.pytorch.git   #下载库
cd faster-rcnn.pytorch
#编译cuda依赖
cd lib	
sh make.sh

这里会得到roi_pooling的文件夹(在/faster-rcnn.pytorch/lib/model下),将其下移动到Lesa中的roi_pooling/文件夹中。

3.预训练模型下载

该处下载预训练模型,下载后放在chechpoints/文件夹中。

二、数据集

下载DeepLesion数据集,共有56个zip文件(以及其他部分标注信息),全部unzip解压后均放于Image_png文件夹中。

三、配置参数

有两个配置文件:config.ymldefault.yml

需要修改default.yml中的
在这里插入图片描述
分别修改成为自己的DeepLesion文件及所在路径,后缀都不用改变。

1.demo

此时,是默认demo模式(img-L2v2cl2U-1574210093096)(../Typora_pics/image-20191116141426988.png)]

config.yml中可修改该算法的超参数

然后运行run.sh

sh run.sh

注:作者的shell脚本有点问题,做一点修改:
(img-JUlxMdeu-1574210093097)(../Typora_pics/image-20191116142819629.png)]

输出:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-y9TXNM8I-1574210093097)(../Typora_pics/image-20191116134820167.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-BMP0AjS2-1574210093098)(../Typora_pics/image-20191116140222969.png)]
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-qaNVKRQn-1574210093099)(../Typora_pics/image-20191116140237746.png)]
要求输入nifti CT volume的路径。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-LXUWw3gU-1574210093100)(../Typora_pics/image-20191116140605010.png)]
要求输入坐标文件的路径。

这里都使用实例的:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jFbyaZGZ-1574210093100)(../Typora_pics/image-20191116140725110.png)]
输出:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-elzXlhSl-1574210093101)(../Typora_pics/image-20191116140759520.png)]

输出的结果图片(patch):

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-sUhWr2yw-1574210093101)(../Typora_pics/image-20191116140851092.png)]

2.训练

在default.yml中将mode改成train

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DYwmQzgK-1574210093112)(../Typora_pics/image-20191116141641573.png)]

这里顺便把对所有病灶都生成特征图改成True。

然后再次运行run.sh,输出:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-anrAS4Jf-1574210093113)(../Typora_pics/image-20191119003940192.png)]

3.测试

将mode改成infer,运行run.sh:

生成了以下文件:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IkMo6BkL-1574210093114)(../Typora_pics/image-20191116160709942.png)]
修改visualize_results.py中的路径并运行:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-IyUBku9E-1574210093114)(../Typora_pics/image-20191116201847866.png)]
生成一系列可视化图片存于results/visualize_images:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-DkpCUAVa-1574210093115)(../Typora_pics/image-20191116235116523.png)]
其中一张如下:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-CbmZMDp2-1574210093115)(../Typora_pics/image-20191116235154375.png)]
还生成一个html文件:results/show_results.html
其中一个示例如下:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-wWptpOIg-1574210093116)(../Typora_pics/image-20191119004015612.png)]

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

(CVPR2019医学影像)LesaNet配置 的相关文章

  • 根据印刷行业的特点,整理出MES管理系统解决方案

    印刷行业中 与ERP管理系统相关的功能模块主要包含销售预测 生产计划 物料需求等 作为ERP系统的下层信息系统 MES生产执行系统的计划执行来源于上层ERP系统中的生产订单 并在MES生产执行系统中生成生产任务单 然后分配到相应的生产车间
  • 未能连接服务器1004,FAILURE:Error Domain = NSURLErrorDomain Code = -1004"无法连接到服务器。"...

    在此之前 我想列出我已阅读的帖子并尝试实施答案 避免重复 我正在开发SDK 我已经创建了一些UI测试 我试图不连接到后端系统并通过在测试时在本地机器上运行的存根服务器来模拟它们 所有请求都必须转到此服务器 我创建了一个永远不会提交到App
  • 微信AR教程|鼓浪屿趣味地图

    KIVICUBE教程 鼓浪屿WebAR趣味地图 01 场景构想 首先需要注册kivicube账号 kivicube是一个WebXR在线制作工具 帮助用户通过在线可视化编辑即可快速制作AR场景 并可一键发布至web与微信小程序两个端口 通过微
  • 【hello C++】类和对象(下)

    目录 1 再谈构造函数 1 1 构造函数体赋值 1 2 初始化列表 1 3 explicit关键字 2 static成员 2 1 概念 2 2 特性 3 友元 3 1 友元函数 3 2 友元类 4 内部类 5 匿名对象 6 拷贝对象时的一些

随机推荐

  • 用sort 对结构体排序

    思路 先定义一个你想要的结构体 然后再自定义一个cmp函数 根据需要来进行大小比较的判断 最后在main函数中通过sort xxx xxx n cmp 来进行判断即可 实例 struct people string name string
  • 【硬件架构的艺术】学习笔记(1)亚稳态的世界

    目录 1 亚稳态 1 1 什么是亚稳态 1 2 亚稳态窗口 1 3 避免亚稳态 1 3 1 使用多级同步器 1 3 2 使用时钟倍频电路的多级同步器 1 4 亚稳态测试电路 1 5 同步器的类型 1 6 亚稳态综合性建议 1 亚稳态 1 1
  • docker教程:从头基于空镜像scratch创建一个新的Docker镜像

    从头基于空镜像scratch创建一个新的Docker镜像 我们在使用dockerfile构建镜像时 一种方式是使用预制镜像 这样可以省很多工作量 但问题是镜像会变得特别大 尤其是安装一些应用程序所需的依赖后 镜像的尺寸会更大 如果我们的需求
  • Unity常用旋转API

    Unity中的旋转通常可以用Transform 直接控制和 rotation 控制两种方式 一 Transform控制 工程中的scene1 1 1 Transform Rotate 旋转某个角度 函数定义 csharp view plai
  • python turtle代码示例-Python turtle.left方法代码示例

    本文整理汇总了Python中turtle left方法的典型用法代码示例 如果您正苦于以下问题 Python turtle left方法的具体用法 Python turtle left怎么用 Python turtle left使用的例子
  • 大屏数据可视化——屏幕适配方案(多分辨率下)

    文章目录 前言 一 一些前提概念 1 1 常见大屏分辨率 1 2 设备像素 二 适配痛点 三 关于rem 四 关于px2rem 五 适配方案 5 1 rem自适应缩放 5 2 css3缩放scale 六 demo演示 6 1 1366 76
  • vs2017统计代码行数方法

    方法一 查找所有代码行数 包括系统生成 1 打开项目 2 编辑 查找和替换 选中 在文件中查找 然后就会弹出一个查找框 输入正则表达式 b b 选择查找整个解决方案 查找选项选择使用正则表达式 然后查找全部 最后就会统计出一共有几行 方法二
  • 华为OD机试 Java查找人名

    题目 代码 import java util ArrayList import java util List public class NameMatcher public
  • 网速dns怎么调快_Switch【实用DNS分享】:有效提升网络速度!

    最近很多朋友反应 似乎又有一批DNS不太灵了 下载速度直线下降 游戏联网体验也大打折扣 根据检测以下是出问题的DNS和一批没被 污染 的DNS 测试网络环境 广东电信 100M光纤 被淘汰的DNS 如果还有使用这一批DNS的玩家请研究一下自
  • BeanUtils.copyProperties的使用方法

    BeanUtils copyProperties的使用方法 1 使用的是springframe包下的 BeanUtils copyProperties a b 把a属性拷贝给b属性 2 注意事项 使用时 例如 a和b都用page封装起来 P
  • STM32F103 内部FLASH读写擦操作

    内部flash介绍 开发步骤 1 解锁和锁定 前面我们介绍了在对 FLASH 进行写操作前必须先解锁 解锁操作也就是必 须在 FLASH KEYR 寄存器写入特定的序列 0X45670123 和 0XCDEF89AB 固件库 提供了一个解锁
  • nginx(六十七)http_ssl模块 client与nginx的ssl握手

    一 HTTPS握手机制 关注点 SSL TLS握手 的细节与nginx 配置指令 的关系 核心 讲解 客户端 下游 与作为 server 端的nginx之间的 握手 最佳实践 建议在 http块 中通过 include ssl conf 把
  • 01-pytest-安装及入门

    目录 1 安装 2 查看版本 3 创建第一个测试 4 pytest用例规则 1 安装 pip install U pytest 2 查看版本 pytest version 或 pip show pytest 3 创建第一个测试 1 新建te
  • 分享一个QTabWidget的好看样式

    void setTabWidgetStyleSheet QTabWidget obj obj gt setStyleSheet QTabWidget background color transparent QTabWidget pane
  • python rfind函数用法_纵经千万次增删改,初心永不变

    开篇 上一期介绍了字符串及其切片用法 相信你已经掌握 那么这一期 我们就来学习一下字符串的增删改查等一系列方法 正是因为有了这些方法 你才能像呼吸一样自然地操作字符串 需要指出的是 字符串是不可变类型 也就是说 只要一个字符串确定了 那么任
  • Navicat远程连接mysql数据库

    第一 首先能ping通mysql数据库所在的主机 第二 telnet mysql数据库的端口号 如果不行 要在防火墙 高级设置里面 配置入站规则 开放3306端口 第三 如果还不行 结合下面两个网址 http blog csdn net a
  • iOS进阶_Log分类打印日志自动转换中文

    description方法是NSObject类的一个实例方法 因此所有的Object C对象都有description方法 description方法返回的永远是字符串 对于一个Person类 如果没有重写description方法 NSL
  • DWR3常见错误解决方法

    1 提示 缺少对象 原因 程序中使用了dwr util setValue userInfo data 或getValues 之类的语句 而控件ID与这里的userInfo名字不匹配 则提示缺少对象 解决方法 检查每一个setValue中的控
  • 设置对象的键为一个变量

    在JS中将对象的键设为变量的方法是将对象的键用 包起来 否则会直接识别成键名 例如 var key mykey var num mynum let obj key num 上面代码创建后的对象是 key mynum 并不是我们所期望的 my
  • (CVPR2019医学影像)LesaNet配置

    目录 一 环境配置 1 下载CADLab中的LesaNet文件夹 2 roi pooling编译 3 预训练模型下载 二 数据集 三 配置参数 1 demo 2 训练 3 测试 作者原版github LesaNet 一 环境配置 1 下载C