ITK 重采样 resample

news/2024/5/18 21:45:37/文章来源:https://blog.csdn.net/q610098308/article/details/137606100

Itk 重新采样有二多种情况,这里说二种情况

1. 输入参数 ,和输出相关数据,输出范围,spacing ;

	typedef itk::Image< float, 3 > itkFloatImageType;typedef itk::ResampleImageFilter < itkFloatImageType, itkFloatImageType > ResampleImageFilter;ResampleImageFilter::Pointer resampleImageFilter = ResampleImageFilter::New();typedef itk::LinearInterpolateImageFunction<itkFloatImageType, double> T_Interpolator;itkFloatImageType::Pointer itkImage;mitk::CastToItkImage(inputImage, itkImage);itkFloatImageType::Pointer itkImageOut;mitk::CastToItkImage(segmentationA, itkImageOut);itkFloatImageType::SpacingType outputSpacingItk = itkImageOut->GetSpacing();itkFloatImageType::SizeType outputSizeItk = itkImageOut->GetLargestPossibleRegion().GetSize();typedef itk::IdentityTransform<double, 3> TransformType;T_Interpolator::Pointer _pInterpolator = T_Interpolator::New();resampleImageFilter->SetInput(itkImage);resampleImageFilter->SetTransform(TransformType::New());resampleImageFilter->SetInterpolator(_pInterpolator);resampleImageFilter->SetReferenceImage(itkImageOut);resampleImageFilter->UseReferenceImageOn();//resampleImageFilter->UpdateLargestPossibleRegion();resampleImageFilter->Update();

注意输入是 float

其它类型转  to float

vtkImageData *  ToFloatScaleValue(vtkImageData * VtkImageData)
{ThresholdingvtkSmartPointer<vtkImageThreshold> imageThreshold = vtkSmartPointer<vtkImageThreshold>::New();imageThreshold->SetInputData(VtkImageData);imageThreshold->SetOutputScalarTypeToFloat();imageThreshold->ThresholdByLower(0.2); // range is inclusive but always in double. Precision issue.imageThreshold->SetOutValue(255);imageThreshold->SetInValue(0);imageThreshold->ReleaseDataFlagOn();imageThreshold->UpdateInformation();imageThreshold->Update();return imageThreshold->GetOutput();}

2. 输入参数 ,输入数据,和输出相关数据, spacing ;需要自己求出 bounds 输出范围

 typedef itk::ResampleImageFilter < itkFloatImageType, itkFloatImageType > ResampleImageFilter;ResampleImageFilter::Pointer resampleImageFilter = ResampleImageFilter::New();itkFloatImageType::Pointer itkImage;mitk::CastToItkImage(out, itkImage);itkFloatImageType::SpacingType outputSpacing;itkFloatImageType::SizeType inputSize = itkImage->GetLargestPossibleRegion().GetSize();itkFloatImageType::SizeType outputSize = inputSize;outputSpacing[0] = itkImage->GetSpacing()[0];outputSpacing[1] = resampleSpacing;outputSpacing[2] = itkImage->GetSpacing()[2];outputSize[1] = inputSize[1] * itkImage->GetSpacing()[1] / outputSpacing[1];typedef itk::IdentityTransform<double, 3> TransformType;resampleImageFilter->SetInput(itkImage);resampleImageFilter->SetSize(outputSize);resampleImageFilter->SetOutputSpacing(outputSpacing);resampleImageFilter->SetTransform(TransformType::New());resampleImageFilter->UpdateLargestPossibleRegion();

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_1045507.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

数字化智慧养老:引领老年人融入科技时代新生活

hello宝子们...我们是艾斯视觉擅长ui设计和前端开发10年经验&#xff01;希望我的分享能帮助到您&#xff01;如需帮助可以评论关注私信我们一起探讨&#xff01;致敬感谢感恩&#xff01; 人类社会已经步入了一个全新的数字时代。在这个时代&#xff0c;互联网、大数据、人工智…

搭建前后端的链接(java)

搭建前后端的链接(java) 一.前提 1.1 javaEE 搭建前后端的链接首先需要用到javaEE&#xff0c;也就是java企业版&#xff0c;也就是java后端(后端javaSE) 利用javaEE和前端交互&#xff0c;javaSE和数据库交互&#xff0c;javaSE和javaEE之间再进行交互就实现了前后端的交互…

“卷生卷死”的消费电子ODM,如何用数据建设缩短交期?奇点云供应链控制塔实践

消费电子制造是一个充分竞争的行业。 哪怕对于已位居全球龙头的ODM厂商&#xff08;原始设计制造商&#xff09;而言&#xff0c;在既卷质量又卷价格还卷创新的市场始终保持领先&#xff0c;也从不简单。 以本文分享的企业为例&#xff0c;企业A是领先的智能硬件ODM厂商&…

scRAN-seq|加权最近邻分析(2)

概述 本文[1]介绍了Seurat 5.0.0中的加权最近邻&#xff08;WNN&#xff09;分析方法&#xff0c;这是一种用于整合和分析多模态单细胞数据的无监督框架。 简介 多模态分析作为单细胞基因组学的一个新兴领域&#xff0c;它通过同时测量多种数据类型来精确描绘细胞状态&#xff…

掼蛋的六讲原则

第一讲&#xff1a;与同事玩掼蛋&#xff0c;讲娱乐 同事可以说是现在的人们见得最多的一批人&#xff0c;所以与同事打好关系是十分有必要的&#xff0c;所以在和同事玩掼蛋的时候&#xff0c;我们主要讲究的是娱乐精神&#xff0c;大家一起开开心心玩&#xff0c;工作也能变得…

Docker快速上手及常用命令速查

Docker快速上手 安装 在ubuntu上安装docker: sudo apt-get install docker docker -v #查看版本在centos7上安装docker&#xff1a;(docker在YUM源的Extras仓库中) yum install docker systemctl start dockerdocker常用命令速查 #查看docker信息 docker info #查看本地镜…

SpringBoot及其特性

0.前言 Spring 框架提供了很多现成的功能。那么什么是 Spring Boot&#xff1f;使用 Spring 框架&#xff0c;我们可以避免编写基础框架并快速开发应用程序。为了让 Spring 框架提供基础框架&#xff0c;我们需要向 Spring 框架描述有关我们的应用程序及其组件的信息。 不只是…

面试记录(三)

面了57min&#xff0c;实在问麻了&#xff0c;下面的问题就没有按顺序记录了&#xff1a; 1.linux熟悉吗&#xff1a;熟悉基础的环境变量、目录等用法&#xff0c;问如何查找一个文件&#xff08;不会&#xff0c;又追问如何设计一个c的程序去查找&#xff1a;先找文件类型&am…

java基础语法(12)| 异常

1. 异常 1.1 什么是异常 异常 &#xff1a;指的是程序在执行过程中&#xff0c;出现的非正常的情况&#xff0c;最终会导致JVM的非正常停止。 在Java等面向对象的编程语言中&#xff0c;异常本身是一个类&#xff0c;产生异常就是创建异常对象或抛出了一个异常对象。Java处理异…

万界星空科技生产工时管理系统

生产工时管理系统是一个管理系统&#xff0c;生产管理人员可以详细地、逐项活动地查看生产和即时劳动力数据&#xff0c;特别是活动级劳动力信息&#xff0c;辅助生产管理人员利用从车间获得的效率数据&#xff0c;实时监控生产流程&#xff0c;并在提高生产率&#xff0c;控制…

C++的并发世界(十一)——线程池

0.线程池的概念 1.线程池使用步骤 ①初始化线程池&#xff1a;确定线程数量&#xff0c;并做好互斥访问&#xff1b; ②启动所有线程 ③准备好任务处理基类&#xff1b; ④获取任务接口&#xff1a;通过条件变量阻塞等待任务 2.atomic原子操作 std:atomic是C11标准库中的一个…

ics-05-攻防世界

题目 点了半天只有设备维护中心能进去 御剑扫一下 找到一个css 没什么用 再点击云平台设备维护中心url发生了变化 设备维护中心http://61.147.171.105:65103/index.php?pageindex试一下php伪协议 php://filter/readconvert.base64-encode/resourceindex.php base64解一下…

Vue2电商前台项目(三):完成Search搜索模块业务

目录 一、请求数据并展示 1.写Search模块的接口 2.写Vuex中的search仓库&#xff08;三连环&#xff09; 3.组件拿到search仓库的数据 用getters简化仓库中的数据 4.渲染商品数据到页面 5.search模块根据不同的参数获取数据展示 &#xff08;1&#xff09;把派发actions…

HTML5.Canvas简介

1. Canvas.getContext getContext(“2d”)是Canvas元素的方法&#xff0c;用于获取一个用于绘制2D图形的绘图上下文对象。在给定的代码中&#xff0c;首先通过getElementById方法获取id为"myCanvas"的Canvas元素&#xff0c;然后使用getContext(“2d”)方法获取该Ca…

MySQL学习笔记(数据类型, DDL, DML, DQL, DCL)

Learning note 1、前言2、数据类型2.1、数值类型2.2、字符串类型2.3、日期类型 3、DDL总览数据库/表切换数据库查看表内容创建数据库/表删除数据库/表添加字段删除字段表的重命名修改字段名&#xff08;以及对应的数据类型&#xff09; 4、DML往字段里写入具体内容修改字段内容…

【Java网络编程】OSI七层网络模型与TCP/IP协议簇

1.1、OSI七层网络模型 OSI七层网络模型中&#xff0c;每层的功能如下&#xff1a; 应用层&#xff1a;人与计算机网络交互的窗口。表示层&#xff1a;负责数据格式的封装&#xff0c;如加密、压缩、编解码等。会话层&#xff1a;建立、终止、管理不同端间的会话连接。传输层&a…

【linux】基础IO(四)

在上一篇基础IO中我们主要讲述了文件再磁盘中的存储&#xff0c;当然我们说的也都只是预备知识&#xff0c;为这一篇的文件系统进行铺垫。 目录 搭文件系统的架子&#xff1a;填补细节&#xff1a;inode&#xff1a;datablock[]: 更上层的理解&#xff1a; 搭文件系统的架子&a…

PTA 探索地道战

地道战是在抗日战争时期&#xff0c;在华北平原上抗日军民利用地道打击日本侵略者的作战方式。地道网是房连房、街连街、村连村的地下工事&#xff0c;如下图所示。 我们在回顾前辈们艰苦卓绝的战争生活的同时&#xff0c;真心钦佩他们的聪明才智。在现在和平发展的年代&#x…

软考113-上午题-【计算机网络】-IPv6、无线网络、Windows命令

一、IPv6 IPv6 具有长达 128 位的地址空间&#xff0c;可以彻底解决 IPv4 地址不足的问题。由于 IPv4 地址是32 位二进制&#xff0c;所能表示的IP 地址个数为 2^32 4 294 967 29640 亿&#xff0c;因而在因特网上约有 40亿个P 地址。 由 32 位的IPv4 升级至 128 位的IPv6&am…

Vue学习笔记-S1

1 什么是Vue Vue是一款用于构建用户界面的渐进式JavaScripte框架&#xff0c;可基于数据渲染用户页面. 1.1 Vue的知识架构 Vue核心包&#xff1a;声明式渲染、组件系统Vue构建&#xff1a;客户端路由、状态管理、构建工具局部使用Vue&#xff1a;快速入门、常用指令、生命周…