使用ITK-SNAP进行抠图操作并保存mask的实例


Posted in Python onJuly 01, 2020

问题描述:

想要去掉图像背景,只保留中心部分

目标:

1.利用ITK-SNAP制作二值化标签(即mask)

2.利用软件ITK-SNAP把一幅图像中自己想要的部分抠出来

步骤:

1.保存mask

打开ITK-SNAP ,这是一款可以方便进行勾画操作,制作标签的软件

1.点击勾画按钮

使用ITK-SNAP进行抠图操作并保存mask的实例

2.在图像中选点进行勾画

使用ITK-SNAP进行抠图操作并保存mask的实例

3.勾画完成后点击accept,可以看到所勾画的区域被标签颜色所覆盖

使用ITK-SNAP进行抠图操作并保存mask的实例

4.滚动鼠标滚轮到下一层(对于3D图像),继续勾画

tips:点击"paste last polygon"按钮使用上一层的勾画结果,拖动勾画框可以进行修改

使用ITK-SNAP进行抠图操作并保存mask的实例

5.勾画完成后按ctrl+S保存图像,此时所保存的即为二值化的mask(标签)

(背景部分是0,高亮区域是设定的label值,这里为1)

使用ITK-SNAP进行抠图操作并保存mask的实例

2.提取目标区域(抠图)

思想:将保存的二值化mask与原图像做点乘,就可以将去除无关背景,得到中心区域的目标图像

方法:(对于nii格式的图像)

import nibabel as nib
import numpy as np

index = list(['1','14','4','5','7','70','148'])#一共7张待处理图像
for i in range (len(index)):
 #图像位置
 nii_file = '/home/YinXiaolong/1909/MRBrainS18_data/training_corrected_selected/'+index[i]+'/data/reg_IR.nii.gz'
 nii_file2 = '/home/YinXiaolong/1910/mask_multiple/mask/' +'mask'+ index[i]+ '.nii.gz'
 #载入图像
 img = nib.load(nii_file).get_fdata()
 img2 = nib.load(nii_file2).get_fdata()
 #两幅图像相乘
 img3 = np.multiply(img,img2)
 #将矩阵转换为nii
 array_img = nib.Nifti1Image(img3,None)
 #保存并导出
 nib.save(array_img, 'reg_IR'+'_'+index[i]+'.nii')
 print('img'+index[i]+'Done')

对于一般格式图像利用numpy中的img = np.multiply(img1,img2)进行两幅图像的点乘即可。

以上这篇使用ITK-SNAP进行抠图操作并保存mask的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python中使用PyHook监听鼠标和键盘事件实例
Jul 18 Python
python计算文本文件行数的方法
Jul 06 Python
在Django的URLconf中使用多个视图前缀的方法
Jul 18 Python
pycharm运行和调试不显示结果的解决方法
Nov 30 Python
python3.7 使用pymssql往sqlserver插入数据的方法
Jul 08 Python
Python 分发包中添加额外文件的方法
Aug 16 Python
在Python中利用pickle保存变量的实例
Dec 30 Python
解决Pytorch 加载训练好的模型 遇到的error问题
Jan 10 Python
Python接收手机短信的代码整理
Aug 02 Python
Python实现socket库网络通信套接字
Jun 04 Python
Python实现随机生成迷宫并自动寻路
Jun 13 Python
详解Python中*args和**kwargs的使用
Apr 07 Python
python使用nibabel和sitk读取保存nii.gz文件实例
Jul 01 #Python
.img/.hdr格式转.nii格式的操作
Jul 01 #Python
ITK 实现多张图像转成单个nii.gz或mha文件案例
Jul 01 #Python
Python环境管理virtualenv&virtualenvwrapper的配置详解
Jul 01 #Python
读取nii或nii.gz文件中的信息即输出图像操作
Jul 01 #Python
使用SimpleITK读取和保存NIfTI/DICOM文件实例
Jul 01 #Python
使用Nibabel库对nii格式图像的读写操作
Jul 01 #Python
You might like
PHP5 面向对象程序设计
2008/02/13 PHP
PHP编实现程动态图像的创建代码
2008/09/28 PHP
php class中self,parent,this的区别以及实例介绍
2013/04/24 PHP
详解配置 Apache 服务器支持 PHP 文件的解析
2017/02/15 PHP
Thinkphp5 微信公众号token验证不成功的原因及解决方法
2017/11/12 PHP
基于PHP+Jquery制作的可编辑的表格的代码
2011/04/10 Javascript
javascript简单实现命名空间效果
2014/03/06 Javascript
jquery删除指定的html标签并保留标签内文本内容的方法
2014/04/02 Javascript
基于Jquery实现键盘按键监听
2014/05/11 Javascript
详谈JavaScript 匿名函数及闭包
2014/11/14 Javascript
浅析webapp框架AngularUI的demo
2014/12/21 Javascript
JS实现的简洁二级导航菜单雏形效果
2015/10/13 Javascript
Bootstrap+jfinal退出系统弹出确认框的实现方法
2016/05/30 Javascript
Three.js学习之文字形状及自定义形状
2016/08/01 Javascript
jQuery模拟下拉框选择对应菜单的内容
2017/03/07 Javascript
关于javascript sort()排序你可能忽略的一点理解
2017/07/18 Javascript
小程序自定义弹框效果
2020/11/16 Javascript
[34:41]夜魇凡尔赛茶话会 第二期02:你画我猜
2021/03/11 DOTA
Python牛刀小试密码爆破
2011/02/03 Python
Python的Django框架中模板碎片缓存简介
2015/07/24 Python
python使用paramiko实现远程拷贝文件的方法
2016/04/18 Python
python贪婪匹配以及多行匹配的实例讲解
2018/04/19 Python
keras处理欠拟合和过拟合的实例讲解
2020/05/25 Python
Python实现列表中非负数保留,负数转化为指定的数值方式
2020/06/04 Python
详解matplotlib中pyplot和面向对象两种绘图模式之间的关系
2021/01/22 Python
HTML5有哪些新特征
2015/12/01 HTML / CSS
YSL圣罗兰美妆官方旗舰店:购买YSL口红
2018/04/16 全球购物
东方通信股份有限公司VC面试题
2014/08/27 面试题
最新大学职业规划书范文
2013/12/30 职场文书
毕业设计说明书
2014/05/07 职场文书
维修工先进事迹
2014/05/29 职场文书
党员“四风”问题批评与自我批评思想汇报
2014/10/06 职场文书
优秀团员自我评价
2015/03/10 职场文书
河童之夏观后感
2015/06/11 职场文书
写好求职信的技巧解密
2019/05/14 职场文书
TensorFlow中tf.batch_matmul()的用法
2021/06/02 Python