当前位置: 首页 > 网络知识

ITK 实例2 MHA格式文件进行三维线性映射

时间:2026-01-29 09:25:24
1 #include "itkImage.h" 2 #include "itkImageFileReader.h" 3 #include "itkImageFileWriter.h" 4 //线性映射头文件 5 #include "itkCastImageFilter.h" 6 #include "itkRescaleIntensityImageFilter.h" 7 #include "itkNormalizeImageFilter.h" 8 9 int main( int argc, char * argv[] ) 10 */ 17 //我们定义输入和输出图像的像素类型 18 typedef float InputPixelType; 19 //typedef float OutputPixelType; 20 typedef unsigned char OutputPixelType; 21 //然后,定义输入和输出图像类型 22 typedef itk::Image< InputPixelType, 3 > InputImageType; 23 typedef itk::Image< OutputPixelType, 3 > OutputImageType; 24 25 typedef itk::ImageFileReader< InputImageType > ReaderType;//读文件类型 26 typedef itk::ImageFileWriter< OutputImageType > WriterType;//写文件类型 27 28 //使用定义的图像类型来对滤波器进行实例化 29 typedef itk::RescaleIntensityImageFilter< 30 InputImageType, OutputImageType > RescaleFilterType; 31 32 ReaderType::Pointer reader = ReaderType::New();//实例化对象reader 33 WriterType::Pointer writer = WriterType::New();//实例化对象writer 34 35 //通过调用 New( ) 操作来创建对象滤波器并将结果指向 itk::SmartPointers 36 RescaleFilterType::Pointer rescaleFilter = RescaleFilterType::New(); 37 38 reader>SetFileName( "CT_215.mha" ); 39 //现在将一个 reader 滤波器 ( 这里并未展示它的创建 ) 的输出作为输入连接到投射滤波器(四种) 40 rescaleFilter>SetInput( reader>GetOutput() );//rescaleFilter滤波器 41 /*接下来我们设置每个滤波器需要的参数。 CastImageFilter 和 NormalizeImageFilter 不需要 42 任何参数。另一方面, RescaleIntensityImageFilter 需要用户提供想得到的输出图像像素值的 43 最大最小值,这可以通过使用 SetOutputMinimum() 和 SetOutputMaximum() 方式来实现,如 44 下所示*/ 45 rescaleFilter>SetOutputMinimum( 0 ); 46 rescaleFilter>SetOutputMaximum( 255 ); 47 48 writer>SetInput(rescaleFilter>GetOutput());//rescaleFilter滤波器 49 //最后,通过调用 Update() 方式来运行这些滤波器 50 //写文件,输出线性映射四种滤波效果 51 writer>SetFileName("CT_215RescaleIntensity0_255.mha"); 52 53 writer>Update(); 54 55 return EXIT_SUCCESS; 56 }

输入215张CT股骨图像数据(像素范围为3024~+3071)(CT_215.mha)

输出215张通过线性映射的CT股骨图像数据(像素范围为0~+255)(CT_215RescaleIntensity0_255.mha)



上一篇:ITK 实例1 ITK环境测试
下一篇:VTK 实例61:点云重建(表面重建)
ITK
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器
  • 英特尔第五代 Xeon CPU 来了:详细信息和行业反应
  • 由于云计算放缓引发扩张担忧,甲骨文股价暴跌
  • Web开发状况报告详细介绍可组合架构的优点
  • 如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳
  • 美光在数据中心需求增长后给出了强有力的预测
  • 2027服务器市场价值将接近1960亿美元
  • 生成式人工智能的下一步是什么?
  • 分享在外部存储上安装Ubuntu的5种方法技巧
  • 全球数据中心发展的关键考虑因素
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器

    英特尔第五代 Xeon CPU 来了:详细信息和行业反应

    由于云计算放缓引发扩张担忧,甲骨文股价暴跌

    Web开发状况报告详细介绍可组合架构的优点

    如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳

    美光在数据中心需求增长后给出了强有力的预测

    2027服务器市场价值将接近1960亿美元

    生成式人工智能的下一步是什么?

    分享在外部存储上安装Ubuntu的5种方法技巧

    全球数据中心发展的关键考虑因素