LUNA16数据集介绍
LUNA16数据集小知识
LUNA16数据集包括888低剂量肺部CT影像(mhd格式)数据,每个影像包含一系列胸腔的多个轴向切片。每个影像包含的切片数量会随着扫描机器、扫描层厚和患者的不同而有差异。原始图像为三维图像。每个图像包含一系列胸腔的多个轴向切片。这个三维图像由不同数量的二维图像组成。
LUNA16数据集的由来
LUNA16数据集是最大公用肺结节数据集LIDC-IDRI的子集,LIDC-IDRI它包括1018个低剂量的肺部CT影像。LIDC-IDRI删除了切片厚度大于3mm和肺结节小于3mm的CT影像,剩下的就是LUNA16数据集了。
CT影像简介
CT 采集后所得的数值为 X 射线衰减值,单位为亨氏单位(Hounsfield unit, HU). 水的 HU 值为 0,空气的 HU 值为-1000, 而其他物体的 HU 值计算公式为
其中 , 为线性衰减系数 ,和 X 射线强度有关 。
亨氏单位值经过线性变换成为图像中的像素值 .。不同设备由于变换标准不同 , 所获得的图像像素值有一定差别 ; 但是在相同的 X 射线条件下 , CT照射人体所获得的亨氏单位值却是相同的 , 如表 1所示
在对肺部 CT 图像处理之中 , 由于肺的 HU 值为 -500 左右 , 一般做法是将 HU 值在 [-1000,+ 400]内的区域保留 ( 从空气到骨骼 ), 超出此范围的区域就可以认为与肺部疾病监测无关而舍去 。
这里面写一个luna16的数据处理吧
# -*- coding:utf-8 -*-
'''
this script is used for basic process of lung 2017 in Data Science Bowl
'''
import SimpleITK as sitk
from skimage.morphology import ball, disk, dilation, binary_erosion, remove_small_objects, erosion, closing, \reconstruction, binary_closing
from skimage.measure import label, regionprops
from skimage.filters import roberts
from skimage.segmentation import clear_border
from scipy import ndimage as ndi
import matplotlib.pyplot as plt# numpyImage[numpyImage > -600] = 1
# numpyImage[numpyImage <= -600] = 0def get_segmented_lungs(im, plot=False):'''This funtion segments the lungs from the given 2D slice.'''if plot == True:f, plots = plt.subplots(8, 1, figsize=(5, 40))'''Step 1: Convert into a binary image. '''binary = im < -600if plot == True:plots[0].axis('off')plots[0].imshow(binary, cmap=plt.cm.bone)'''Step 2: Remove the blobs connected to the border of the image.'''cleared = clear_border(binary)if plot == True:plots[1].axis('off')plots[1].imshow(cleared, cmap=plt.cm.bone)'''Step 3: Label the image.'''label_image = label(cleared)if plot == True:plots[2].axis('off')plots[2].imshow(label_image, cmap=plt.cm.bone)'''Step 4: Keep the labels with 2 largest areas.'''areas = [r.area for r in regionprops(label_image)]areas.sort()if len(areas) > 2:for region in regionprops(label_image):if region.area < areas[-2]:for coordinates in region.coords:label_image[coordinates[0], coordinates[1]] = 0binary = label_image > 0if plot == True:plots[3].axis('off')plots[3].imshow(binary, cmap=plt.cm.bone)'''Step 5: Erosion operation with a disk of radius 2. This operation is seperate the lung nodules attached to the blood vessels.'''selem = disk(2)binary = binary_erosion(binary, selem)if plot == True:plots[4].axis('off')plots[4].imshow(binary, cmap=plt.cm.bone)'''Step 6: Closure operation with a disk of radius 10. This operation is to keep nodules attached to the lung wall.'''selem = disk(10)binary = binary_closing(binary, selem)if plot == True:plots[5].axis('off')plots[5].imshow(binary, cmap=plt.cm.bone)'''Step 7: Fill in the small holes inside the binary mask of lungs.'''edges = roberts(binary)binary = ndi.binary_fill_holes(edges)if plot == True:plots[6].axis('off')plots[6].imshow(binary, cmap=plt.cm.bone)'''Step 8: Superimpose the binary mask on the input image.'''get_high_vals = binary == 0im[get_high_vals] = 0if plot == True:plots[7].axis('off')plots[7].imshow(im, cmap=plt.cm.bone)plt.show()return imif __name__ == '__main__':filename = './raw_data/1.3.6.1.4.1.14519.5.2.1.6279.6001.108197895896446896160048741492.mhd'itkimage = sitk.ReadImage(filename) # 读取.mhd文件numpyImage = sitk.GetArrayFromImage(itkimage) # 获取数据,自动从同名的.raw文件读取data = numpyImage[50]plt.figure(50)plt.imshow(data, cmap='gray')im = get_segmented_lungs(data, plot=True)plt.figure(200)plt.imshow(im, cmap='gray')plt.show()
关于医疗影像的mhd和dcm格式图像的读取和坐标转换
https://blog.csdn.net/zyc2017/article/details/84030903
LUNA16数据集介绍相关推荐
- 实战:使用yolov3完成肺结节检测(Luna16数据集)及肺实质分割
实战:使用yolov3完成肺结节检测(Luna16数据集) yolov3是一个比较常用的端到端的目标检测深度学习模型,这里加以应用,实现肺结节检测.由于Luna16数据集是三维的,需要对其进行切片操作 ...
- 肺结节检测(一):数据集介绍及处理
一.LUNA16数据集介绍 1.简介 LUNA16数据集包括888低剂量肺部CT影像(mhd格式)数据,每个影像包含一系列胸腔的多个轴向切片.原始图像为三维图像.每个图像包含一系列胸腔的多个轴向切片. ...
- LUNA16数据集简介
1. 简介 1.1 介绍 LUNA16,全称Lung Nodule Analysis 16,是16年推出的一个肺部结节检测数据集.数据集包括 888 个低剂量肺部 CT 影像(mhd格式)数据,每个影 ...
- K-近邻算法之案例:鸢尾花种类预测--数据集介绍
K-近邻算法之案例:鸢尾花种类预测--数据集介绍 本实验介绍了使用Python进行机器学习的一些基本概念. 在本案例中,将使用K-Nearest Neighbor(KNN)算法对鸢尾花的种类进行分类, ...
- 深度学习常用数据集介绍
数据集大全 数据集大全 介绍 目前接触到的数据集 1. [MNIST](http://yann.lecun.com/exdb/mnist/) 2. [CIFAR-10 / CIFAR-100](htt ...
- 【知识星球】数据集板块重磅发布,海量数据集介绍与下载
有三AI知识星球的"数据集板块"正式上线,提供数据集介绍,论文下载,数据集下载3大功能,那些因为网速问题,因为需要签license的蛋疼问题,从此不再成为问题! 有三AI知识星球- ...
- OHSUMED数据集介绍
1. OHSUMED数据集介绍 本实验中采用OHSUMED测试数据集合(其也被用于第9 届国际文本检索竞赛TREC9 的文档过滤子竞赛).OHSUMED 数据集合由William Hersh和他的同事 ...
- GCN(一)数据集介绍
1.数据集介绍 1.1 数据集概述 Cora数据集由机器学习论文组成,是近年来图深度学习很喜欢使用的数据集.在数据集中,论文分为以下七类之一: 基于案例 遗传算法 神经网络 概率方法 强化学习 规则学 ...
- camvid数据集介绍_深度学习图像数据集介绍(MSCOCO)
深度学习图像数据集介绍(MSCOCO) MSCOCO数据集是微软开发维护的大型图像数据集,次数聚集的任务包括识别(recognition),分割(segementation),及检测(detectio ...
最新文章
- 全景图像拼接——基本流程
- web前端之html从入门到精通
- ASP.Net学习笔记011--ASP.Net揭秘之div版本自增
- lazy-load-img.js 源码 学习笔记及原理说明
- 响应式开发(黑马教程笔记)-Bootsrap
- 开源首发!Android入门“神器“——《Android编程入门教程》,理论与实战齐飞!
- 搭建php实验报告_php实验报告..doc
- 什么是社会融资规模,M0、M1、M2?
- 计算机符号大全名字大全,符号大全_特殊符号网名大全
- 一个人如何开发一款app?(2020修改版)
- 你不知道的京东数据库运维自动化体系建设之路
- [RelativeNAS] Relative Neural Architecture Search via Slow-Fast Learning
- 计算机软考高级证自明评职称,IT领域唯一的国家级证书,好处多多,入手不亏...
- 职称计算机考试时的输入法,2017年高级职称计算机预习:输入法的使用
- 【全开源】六合一口红机完整源码
- wifi打印服务器方案USB共享打印机模块参考设计
- .Net开发 开发工具使用vs C盘占用空间不断增大
- CSDN个人博客访问量突破300万
- iphone修改app名称_iPhone6 plus怎么修改图标名字?苹果6 plus设置修改图标名字教程...
- python 爬虫-(2)认识爬虫
热门文章
- DataSet读写xml文件
- mybatis返回Date类型数据 格式化
- Struts2执行流程
- 23个.net开源项目
- springmvc从request中获取body的数据的方法
- 触控屏c语言程序,TouchWin编程软件下载_TouchWin触摸屏软件下载 2.D.2c 官网版_当载软件站...
- Selenium API-WebElement 方法
- 关于地图制图大赛的8点说明,附地图学习资源
- shiro 升级_小米11消息再次确认:骁龙875有独占期,超广角镜头大升级
- php页面的特点_带你认识PHP的四大特性八大优势