主要内容

orthosliceViewer

在灰度或RGB卷中浏览正交切片

描述

一个orthosliceViewer对象显示体积图像数据,方法是沿xy,z维度。

使用orthosliceViewer查看卷中的单个切片。的orthosliceViewer打开,显示每个维度中的中心切片。图像堆栈的每个视图都包含一个准星,可用于查看图像堆栈的不同切片。十字准星是链接的,因此如果您移动一个,相关视图中的十字准星也会移动。

orthosliceViewer对象支持可用于金宝app自定义其外观和功能的属性、对象函数和事件。的orthosliceViewer对象可以在某些事件发生时发送通知,例如准星移动。有关更多信息,请参见事件

请注意

默认情况下,在交互式显示的切片中单击并拖动鼠标会改变其亮度和对比度,这种技术称为窗口/水平.从左到右水平拖动鼠标可以改变对比度。垂直上下拖动鼠标可改变亮度。按住Ctrl键时点击和拖动鼠标加速变化。按住转变键,同时点击和拖动鼠标减慢更改的速度。在点击和拖动之前按这些键。要控制此行为,请使用DisplayRangeInteraction财产。

创建

描述

例子

orthosliceViewer (V显示音量V在一个图形中。

orthosliceViewer (___名称,值属性使用名称-值对参数。可以指定多个名称-值对。将每个属性名用单引号括起来。

例子:orthosliceViewer (V, Colormap,提出)创建一个orthosliceViewer对象,并指定用于显示卷的颜色映射。

年代= orthosliceViewer (___返回一个orthosliceViewer对象,年代,其属性可用于控制图像的可视化。使用前面任何语法的输入参数。

输入参数

全部展开

输入音量,指定为——- - - - - -n——- - - - - -p——- - - - - -c数字数组。对于灰度体积,c是1。对于RGB卷,c是3。RGB卷只能是类卷uint8uint16,

数据类型:||int8|int16|int32|uint8|uint16|uint32

属性

全部展开

一般性质

图像堆栈的颜色映射,指定为-by-3数值数组,其值范围为[0,1]。的Colormap属性没有影响时V是RGB图像堆栈。

灰度音量的显示范围,指定为窗体的2元素矢量(低高).的值(以及任何小于)显示为黑色。的值(以及任何大于)显示为白色。两者之间的值显示为灰色的中间阴影,使用默认的灰度级别数量。如果你指定一个空矩阵([])orthosliceViewer使用默认值。DisplayRange在指定RGB卷时无效。

显示范围的交互式控制,指定为以下值之一。当指定RGB图像堆栈时,此属性没有影响。有关使用此功能的详细信息,请参见事件

价值 描述
“上”(默认为灰度强度卷) 您可以通过左键单击鼠标并在轴上拖动鼠标来控制灰度图像堆栈的显示范围。
“关闭”(默认为逻辑卷和RGB卷) 没有显示范围的交互性。

的父级orthosliceViewer对象的句柄,指定为uipanel或作为一个图形创建的数字uifigure函数。类的父级orthosliceViewer对象是gcf

用于重新缩放体积的比例因子,指定为1 × 3的正数值矢量。控件中应用的比例因子对应数组中的值xy,z的方向。

要显示的图像切片的索引,指定为1乘3的非负数值数组。orthosliceViewer控件上的相应切片[x, y, z]的索引YZXZ,XY的观点。

十字丝属性

十字准星颜色,指定为RGB三元组、颜色名称或短颜色名称。

您可以使用RGB三元组指定任何颜色。RGB三元组是一个3元素的行向量,其元素指定颜色的红、绿和蓝分量的强度。强度必须在[0,1]范围内。

您可以通过字符串标量或字符向量的名称指定一些常见颜色。该表列出了已命名的颜色选项和等效的RGB三元组。

颜色名称 短名称 RGB值 外观
“红色” “r” [10 0 0]

纯红色矩形

“绿色” “g” [0 10 0]

一个纯绿色的矩形

“蓝色” “b” [0 0 1]

一个纯蓝色的长方形

“青色” “c” [0 1 1]

纯青色矩形

“红色” “m” [10 0 1]

一个纯洋红色的长方形

“黄色” “y” [11 10 0]

纯黄色矩形

“黑色” “k” [0 0 0]

一个黑色的矩形

“白色” “w” [1 1 1]

一个白色的矩形

这里是RGB三组的默认颜色,MATLAB®在许多类型的图中使用。

RGB值 外观
[0 0.4470 0.7410]

一个中蓝色的矩形

[0.8500 0.3250 0.0980]

红橙色矩形

[0.9290 0.6940 0.1250]

深黄色的长方形

[0.4940 0.1840 0.5560]

深紫色矩形

[0.4660 0.6740 0.1880]

一个浅绿色的长方形

[0.3010 0.7450 0.9330]

浅蓝色的长方形

[0.6350 0.0780 0.1840]

暗红色的长方形

例子:‘CrosshairColor’,‘r’

例子:“CrosshairColor”、“绿色”

例子:' crossshaircolor ',[0 0.4470 0.7410]

链接的十字准星对象的状态,指定为本表中的值之一。

价值 描述
“上” 十字准星是可见的,可以与之交互。
“不活跃” 十字准星是可见的,但不能与之交互
“关闭” 十字准星不可见。

准星线的宽度,指定为正数值标量,以点为单位。默认值是每个屏幕像素的点数。

十字准星条纹的颜色,指定为RGB三元组、颜色名称、短颜色名称或“没有”.如果你指定“没有”属性指定的纯色CrosshairColor财产。属性所指定的颜色与此属性所指定的颜色之间交替CrosshairColor财产。

您可以使用RGB三元组指定任何颜色。RGB三元组是一个3元素的行向量,其元素指定颜色的红、绿和蓝分量的强度。强度必须在[0,1]范围内。

您可以通过字符串标量或字符向量的名称指定一些常见颜色。该表列出了已命名的颜色选项和等效的RGB三元组。

颜色名称 短名称 RGB值 外观
“红色” “r” [10 0 0]

纯红色矩形

“绿色” “g” [0 10 0]

一个纯绿色的矩形

“蓝色” “b” [0 0 1]

一个纯蓝色的长方形

“青色” “c” [0 1 1]

纯青色矩形

“红色” “m” [10 0 1]

一个纯洋红色的长方形

“黄色” “y” [11 10 0]

纯黄色矩形

“黑色” “k” [0 0 0]

一个黑色的矩形

“白色” “w” [1 1 1]

一个白色的矩形

下面是MATLAB在许多类型的图中使用的默认颜色的RGB三元组。

RGB值 外观
[0 0.4470 0.7410]

一个中蓝色的矩形

[0.8500 0.3250 0.0980]

红橙色矩形

[0.9290 0.6940 0.1250]

深黄色的长方形

[0.4940 0.1840 0.5560]

深紫色矩形

[0.4660 0.6740 0.1880]

一个浅绿色的长方形

[0.3010 0.7450 0.9330]

浅蓝色的长方形

[0.6350 0.0780 0.1840]

暗红色的长方形

例子:‘CrosshairStripeColor’,‘r’

例子:“CrosshairStripeColor”、“绿色”

例子:'CrosshairStripeColor',[0 0.4470 0.7410]

对象的功能

addlistener 创建绑定到事件源的事件监听器
getAxesHandles 在Orthoslice Viewer中获取轴的句柄

例子

全部折叠

将图像堆栈加载到工作区中。

负载(fullfile (toolboxdir (“图片”),“imdata”“BrainMRILabeled”“图片”“vol_001.mat”));

创建一个自定义Colormap。

Cmap = parula(256);

在orthslice Viewer中查看MRI数据。

s = orthosliceViewer(vol,“Colormap”提出)
s = orthosliceViewer with properties: SliceNumbers: [121 121 78] CrosshairColor: [1 1 0] CrosshairLineWidth: 1 crosshaistripecolor: 'none' CrosshairEnable: 'on' Parent: [1×1 Panel] Colormap: [256×3 double] DisplayRange: [0 2239] ScaleFactors: [1 1 1 1] DisplayRangeInteraction: 'on'

载入MRI数据并在正形切片查看器中查看。

负载(fullfile (toolboxdir (“图片”),“imdata”“BrainMRILabeled”“图片”“vol_001.mat”));s = orthosliceViewer(vol);

获取包含切片的轴的句柄。

[hXYAxes, hYZAxes, hXZAxes] = getAxesHandles(s);

关闭准星以获得更好的能见度。

集(年代,“CrosshairEnable”“关闭”);

指定GIF文件的名称。

文件名=“animatedYZSlice.gif”

在需要的方向上创建一个切片号数组。考虑YZ方向。

sliceNums = 1:240;

循环并在指定的切片位置创建图像。

idx = sliceNums更新X片数以获得YZ片。s.SliceNumbers(1) = idx;使用getframe捕获图像。I = getframe(hYZAxes);[indI,cm] = rgb2ind(I.cdata,256);将帧写入GIF文件。如果idx == 1 imwrite(indI,cm,filename,“gif”“Loopcount”正,“延迟时间”, 0.05);其他的imwrite(英蒂,厘米,文件名,“gif”“写模式”“添加”“延迟时间”, 0.05);结束结束

查看动画GIF。

加载一堆图像。

负载(fullfile (toolboxdir (“图片”),“imdata”“BrainMRILabeled”“图片”“vol_001.mat”));

创建用于查看切片的自定义色图。

Cmap = parula(256);

在正形切片查看器中查看图像堆栈。

os = orthosliceViewer(vol,“Colormap”,提出);

为两个Orthoslice Viewer十字准星移动事件设置监听器。当您移动准星时,orthslice Viewer将发送这些事件的通知并执行您指定的回调函数。

addlistener(操作系统,“CrosshairMoving”, @allevents);addlistener(操作系统,“CrosshairMoved”, @allevents);

allevents回调函数显示每个事件的名称以及十字准星的上一个位置和当前位置。

函数allevents(src,evt) evname = evt. eventname;开关(evname)情况下“CrosshairMoved”} disp ([“准星移动了之前的位置:”mat2str (evt.PreviousPosition)]);disp ([“准星移动当前位置:”mat2str (evt.CurrentPosition)]);情况下“CrosshairMoving”} disp ([“准星移动到之前的位置:”mat2str (evt.PreviousPosition)]);disp ([十字准星移动当前位置:mat2str (evt.CurrentPosition)]);结束结束

更多关于

全部展开

版本历史

R2019b引入