vtk类之vtkImageReslice:基本算法,对体数据沿着轴进行切片

沿着轴方向切割体数据。

vtkImageReslice 是几何图形过滤器中的瑞士军刀。他可以排列,旋转,翻转,缩放,重新采样,变形, 还有随意再任何效率与图像质量组合下,渲染图像。简单的操作,像排列,重新采样和渲染高效功能,与被人所熟知的vtkImagePermute、 vtkImageResample 和 vtkImagePad一样。有一些任务,vtkImageReslice更适合做这些事情。

1)对一个图像应用简单的旋转,缩放和平移。有一个更好的注意是,先使用vtkImageChangeInformation,把图像的坐标系原点更新到图像中心点,以便尺度和旋转发生中心而不是环绕图像的左下角。

2)通过方法SetInformationInput对一个数据集重新采样,以匹配另一个数据集。例如,比较两个图像或者组合两幅图像。可以我不在同一个坐标系空间上的2幅图像,同时通过方法SetResliceTransform 应用线性或非线性变换。

3)从一个体数据中提取图像切片卷。最方便的方法来执行此操作是使用 SetResliceAxesDirectionCosines() 指定切片的方向。方向余弦形式给出 x、 y 和 z 轴的输出向量。SetOutputDimensionality(2) 用于指定的方法想要输出一个切片,而不是一个卷。SetResliceAxesOrigin()方法,设置切片将经过的该origin空间点。你也可以同时使用ResliceAxes 和ResliceTransform ,为了从体数据中导出切片序列,你需要应用变换信息。transformation 

应用实例:

#-*- coding: UTF-8 -*-
#-------------------------------------------------------------------------------
# Name:        模块2
# Purpose:
#
# Author:      ankier
#
# Created:     07-01-2013
# Copyright:   (c) Ankier 2013
# Licence:     <your licence>
#-------------------------------------------------------------------------------from ActorFactory import ActorFactory
from vtk import *
from glo import *class ResliceActorFactory(ActorFactory):def __init__(self):ActorFactory.__init__(self)#定义一块板子self.__PlaneSource = vtkPlaneSource()self.__PlaneSource.SetOrigin(-50, -50, 0)self.__PlaneSource.SetPoint1(50, -50 , 0)self.__PlaneSource.SetPoint2(-50 , 50 , 0) self.__PlaneSource.SetXResolution(50)self.__PlaneSource.SetYResolution(50)self.__Input = None#定义图像切片类self.__ImageReslice = vtkImageReslice()globalInstance = Global.GetInstance()transform = globalInstance.GetOrthoViewFrame().GetOrthoPlanesFactory().GetAxialPlane()._Transformprint transformself.__ImageReslice.SetResliceTransform(transform)self.__ImageReslice.InterpolateOn()self.__ImageReslice.SetOptimization(2)self.__ImageReslice.SetBackgroundLevel(1023)self.__ImageReslice.SetInterpolationModeToLinear()self.__ImageReslice.SetOutputDimensionality(2)self.__LookupTable = vtkLookupTable()     self.__LookupTable.SetNumberOfTableValues(256)self.__LookupTable.Build()for i in range(256):self.__LookupTable.SetTableValue(i, i/255.0, i/255.0, i/255.0)self.__MapToColor = vtkImageMapToColors()self.__MapToColor.SetLookupTable(self.__LookupTable)self.__MapToColor.SetInputConnection(self.__ImageReslice.GetOutputPort())#设置板子的纹理映射类self.__TexturePlane= vtkTextureMapToPlane()self.__TexturePlane.SetInput(self.__PlaneSource.GetOutput())#设置纹理类。self.__Texture = vtkTexture()self.__Texture.InterpolateOn()self.__Texture.RepeatOff() # only necessary if interpolation is on#设置Poly Data,从纹理映射器重,得到被filter的输出数据self.__PolyDataMapper = vtkPolyDataMapper()self.__PolyDataMapper.SetInput(self.__TexturePlane.GetOutput())def UpdateData(self):(min,max) = self.__Input.GetScalarRange()   self.__LookupTable.SetTableRange(min,max)self.__ImageReslice.SetInput(self.__Input)self.__Texture.MapColorScalarsThroughLookupTableOff()self.__Texture.SetInput(self.__MapToColor.GetOutput())def SetInput(self, input):self.__Input = inputdef _MakeActors(self):self.UpdateData()actor = self._NewActor()actor.SetMapper(self.__PolyDataMapper)actor.SetTexture(self.__Texture)return [actor]

 

转载于:https://www.cnblogs.com/ankier/archive/2013/01/07/2850192.html

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

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

相关文章

【每日SQL打卡】​​​​​​​​​​​​​​​DAY 12丨游戏玩法分析 V【难度困难】

活动介绍&#xff1a; 「数据仓库技术交流群」已经正式启动每日SQL打卡&#xff0c;帮助大家扎实基础&#xff0c;努力工作之余&#xff0c;别忘了自我提升。另有超多CSDN 周边礼物相送。 欢迎报名和邀请小伙伴参与&#xff0c;一个人可能走得很快&#xff0c;但一群人会走得很…

仅需1/5成本:TPU是如何超越GPU,成为深度学习首选处理器的

作者&#xff1a;Kaz Sato 来源&#xff1a;Google Cloud、机器之心摘要&#xff1a;张量处理单元&#xff08;TPU&#xff09;是一种定制化的 ASIC 芯片&#xff0c;它由谷歌从头设计&#xff0c;并专门用于机器学习工作负载。TPU 为谷歌的主要产品提供了计算支持&#xff0c;…

【每日SQL打卡】​​​​​​​​​​​​​​​DAY 12丨销售分析 III【难度简单】

活动介绍&#xff1a; 「数据仓库技术交流群」已经正式启动每日SQL打卡&#xff0c;帮助大家扎实基础&#xff0c;努力工作之余&#xff0c;别忘了自我提升。另有超多CSDN 周边礼物相送。 欢迎报名和邀请小伙伴参与&#xff0c;一个人可能走得很快&#xff0c;但一群人会走得很…

[唐胡璐]Excel技巧 - 使用Excel 2007完成多人协同录入工作

下面我们来介绍下Excel 2007的共享功能。 一、设置共享 启动Excel 2007&#xff0c;打开需要设置共享的工作薄文档&#xff0c;切换到“审阅”菜单选项卡中&#xff0c;单击“更改”组中的“共享工作薄”按钮&#xff0c;打开“共享工作薄”对话框&#xff0c;如下图所示。 …

Android之jni入门

jni即java native interface&#xff0c;使用jni我们可以在JAVA中调用C代码&#xff0c;提高了效率&#xff0c;可以复用代码&#xff0c;可以灵活的应用于各种场景 怎么使用JNI 安装软件 1.NDK 用于将C代码编译成so库 2.CygWin 在windows下模拟linux环境 3.CDT 在eclipse…

腾讯投资过 600 多家公司不惊奇,京东也有出手 260+ | 大公司投资并购盘点

来源&#xff1a;IT桔子A 股一片绿&#xff0c;这已经不是满屏绿色的第一天了&#xff0c;2018 年以来&#xff0c;A 股经历了起起落落落落落落……尤其在中美贸易战不断升级后&#xff0c;A 股的代表颜色就成了绿色&#xff0c;少数会有几家企业翻红&#xff0c;然而过不了几天…

埋点技术:“呵呵,你在网上的一举一动,都在我眼皮子底下”

&#x1f345; 作者主页&#xff1a;不吃西红柿 &#x1f345; 简介&#xff1a;CSDN博客专家 & 总榜前十&#x1f3c6;、HDZ核心组成员。欢迎点赞、收藏、评论 &#x1f345; 粉丝专属福利&#xff1a;知识体系、面试题库、技术互助、简历模板。文末公众号领取 1、什么是…

printf的格式控制的完整格式

printf的格式控制的完整格式 printf的格式控制的完整格式&#xff1a;% - 0 m.n l或h 格式字符下面对组成格式说明的各项加以说明&#xff1a;①%&#xff1a;表示格式说明的起始符号&#xff0c;不可缺少。②-&#xff1a;有-表示左对齐输出&#xff0c;如省略表示右对…

【每日SQL打卡】​​​​​​​​​​​​​​​DAY 13丨每日新用户统计【难度中等】

活动介绍&#xff1a; 「数据仓库技术交流群」已经正式启动每日SQL打卡&#xff0c;帮助大家扎实基础&#xff0c;努力工作之余&#xff0c;别忘了自我提升。另有超多CSDN 周边礼物相送。 欢迎报名和邀请小伙伴参与&#xff0c;一个人可能走得很快&#xff0c;但一群人会走得很…

美国斯坦福大学发布2025计划, 创立开环大学, 彻底颠覆全球高等教育

来源&#xff1a;钱塘号《斯坦福大学2025计划》在以设计思考理论著称的斯坦福大学设计学院牵头下正式启动&#xff0c;这次教育改革改变了以往自上而下的方式&#xff0c;代之以师生为主导。与其说《斯坦福大学2025计划》是一个方案&#xff0c;不如说它是一个对未来大学模式进…

Android之jni深入

小技巧&#xff1a;自动生成 java本地方法对应的c代码的方法名 javah 指令 全类名 java1.6版本 class C:\workspace\HelloWorldFromC2\bin\classes java1.7以上 src C:\workspace\HelloWorldFromC2\src 获得方法的签名的方法 javap -s 打印方法的签名 注意要cd到 C:\workspa…

HTML选择器

HTML选择器1、标签选择器直接将HTML元素中的标签作为选择器&#xff0c;可以是p、h1、d1、strong等HTML标签&#xff0c;在CSS中直接展现。2、ID选择器通常在编写页面的时候设定某些标签元素的ID,同一个HTML中ID不允许重复&#xff0c;例如&#xff0c;<div id"wrapper…

【每日SQL打卡】​​​​​​​​​​​​​​​DAY 13丨每位学生的最高成绩【难度中等】

活动介绍&#xff1a; 「数据仓库技术交流群」已经正式启动每日SQL打卡&#xff0c;帮助大家扎实基础&#xff0c;努力工作之余&#xff0c;别忘了自我提升。另有超多CSDN 周边礼物相送。 欢迎报名和邀请小伙伴参与&#xff0c;一个人可能走得很快&#xff0c;但一群人会走得很…

语言处理想突破,三座大山必须过

来源&#xff1a;大数据文摘编译&#xff1a;李佳、汤圆、钱天培“我的飞机什么时候到&#xff1f;”把这个问题抛给智能机器人助手。几乎可以肯定&#xff0c;机器立马就懵逼了。“我”是谁&#xff1f;“飞机”是航班还是淘宝上订的模型玩具呢&#xff1f;“到”又是到哪呢&a…

利用github page搭建博客

为什么选择GitHub Pages&#xff1f; 很多人用 wordpress&#xff0c;你为什么要用 github pages 来搭建&#xff1f; 1、github pages有300M免费空间&#xff0c;资料自己管理&#xff0c;保存可靠&#xff1b; 2、学着用 github&#xff0c;享受 github 的便利&#xff0c…

C语言中printf(built: %s %s,__TIME__,__DATE__);方便调试

代码中加入printf("built: %s %s",__TIME__,__DATE__);这样就可以了;后面将显示最后编译的时间。 这样可以知道自己改的代码是否生效&#xff0c;是否编译进去。转载于:https://www.cnblogs.com/jisheng/archive/2013/01/15/2860706.html

CSDN每日打卡已经2周,进展如何?(送两个CSDN背包)

&#x1f345; 作者主页&#xff1a;不吃西红柿 &#x1f345; 简介&#xff1a;CSDN博客专家 & 总榜前十&#x1f3c6;、HDZ核心组成员。欢迎点赞、收藏、评论 &#x1f345; 粉丝专属福利&#xff1a;知识体系、面试题库、技术互助、简历模板。文末公众号领取 点赞评论 …

WordPress环境配置与安装

要安装wordpress,要安装apache,php,mysql,还要进行一系列复杂的配置&#xff0c;较为复杂。 apache安装 php5.5.6 下载链接&#xff1a;http://windows.php.net/download/#php-5.5 推荐 V11 x64&#xff0c;也就是64bit的 apache2.4&#xff0c;下载链接&#xff1a;http:/…

趋势 | 人工智能领域十大最具成长性技术展望

来源&#xff1a;搜狐日前&#xff0c;在2018世界机器人大会基础技术与创新论坛中&#xff0c;中国电子学会发布了《新一代人工智能十大成长性技术展望》。经调研走访了一批在新一代人工智能技术及产业方面具备领先水平和特色的龙头企业&#xff0c;拜访了来自于知名高校、研究…

CTex + Texmaker

CTex 套装提供了一个Latex编译环境和相关的库&#xff0c;最大的优点是自动部署&#xff0c;直接就可以用。但是CTex自带的WinEdt和开源的Texmaker比起来在设计方面显得比较粗陋&#xff0c;影响工作效率。 Texmaker 本身只是一个前台软件&#xff0c;但是设计精良。如果已经安…