主要内容

感兴趣的圆形区域

描述

一个object指定圆形感兴趣区域(ROI)的大小和位置。您可以自定义ROI的外观和交互行为。

有关使用此ROI(包括键盘快捷键)的详细信息,请参见提示

在图像中圆形物体上绘制的蓝色圆圈ROI。

创建

有两种方法来创建对象。有关更多信息,请参见创建ROI形状

  • 使用drawcircle函数。当您希望在单个命令中创建ROI并设置外观时,可以使用此函数。您可以通过使用鼠标在图像上绘制ROI,或者通过使用名称-值参数以编程方式指定ROI的大小和位置。

  • 使用images.roi.Circle函数描述如下。当您希望在指定ROI的大小和位置之前指定ROI的外观和行为时,请使用此函数。对象创建后,可以使用函数或以编程方式修改对象的属性。

描述

例子

roi= images.roi.Circle创建一个具有默认属性的对象。

roi= images.roi.Circle (斧头在指定的轴上创建ROI斧头

roi= images.roi.Circle (___名称,值属性使用名称-值参数。您可以指定多个名称-值参数。将每个属性名用单引号括起来。

例子:images.roi.Circle('颜色',' y ')创建一个黄色对象。

输入参数

全部展开

ROI的父节点,指定为对象或UIAxes对象。有关在uiaxis中使用ROI的信息,包括重要的限制,请参见使用应用程序设计器创建的应用程序中的roi

属性

全部展开

ROI的中心,指定为该形式的1 × 2数值向量(x, y).的值x而且y为ROI中心点的坐标。当您绘制或移动ROI时,此属性的值将自动更改。

ROI颜色,指定为RGB三元组、颜色名称或短颜色名称。

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

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

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

纯红色矩形

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

一个纯绿色的矩形

“蓝” “b” [0 0 1]

一个纯蓝色的长方形

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

纯青色矩形

“红色” “米” [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]

暗红色的长方形

例子:“颜色”,“r”

例子:“颜色”,“绿色”

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

右键单击指定为的ROI时显示的上下文菜单快捷菜单对象。控件可以创建自定义上下文菜单uicontextmenu函数,然后配置上下文菜单属性。

上下文菜单提供了删除ROI的选项,指定为数字的或逻辑的1真正的)或0.当值为真正的,您可以使用上下文菜单交互地删除ROI。当值为时,删除感兴趣区域的上下文菜单选项被禁用。

方法,可以在上下文菜单之外删除ROI删除函数。

可以交互地将ROI放置在其中的轴的区域,指定为本表中的值之一。

价值 描述
“汽车” 绘图区域是当前轴的限制(默认)。
“无限” 绘制区域没有边界,可以绘制或拖动roi以超出轴的限制。
[x, y, w h] 绘图区域限制为从(开始的矩形区域)xy),并延伸至widthw和高度h

ROI表面的透明度,指定为范围[0,1]中的数字。当值为1时,ROI面完全不透明。当值为0时,ROI面完全透明。

ROI面可以捕获点击,指定为数字的或逻辑的1真正的)或0.当真正的时,ROI面捕获鼠标点击。当时,ROI面不捕获鼠标单击。

中的ROI句柄的可见性孩子们属性,指定为本表中的值之一。

价值 描述
“上” 对象句柄总是可见的(默认)。
“关闭” 对象句柄始终是隐藏的。
“回调” 对象句柄在回调或回调调用的函数中可见,但在从命令行调用的函数中不可见。

ROI的交互性,指定为本表中的值之一。

价值 描述
“所有” ROI是完全可交互的(默认)。
“没有” ROI是不可交互的,并且没有可见的拖拽点。
“翻译” ROI可以在绘图区域内平移(移动),但不能重新塑形。
“重塑” ROI可以被重塑,但不能被转换。

ROI标签,指定为字符向量或字符串标量。默认情况下,ROI没有标签().

文本背景的透明度,指定为范围[0,1]中的数字。当设置为1时,文本背景完全不透明。当设置为0时,文本背景完全透明。

标记文本颜色,指定为RGB三元组、颜色名称或短颜色名称。

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

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

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

纯红色矩形

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

一个纯绿色的矩形

“蓝” “b” [0 0 1]

一个纯蓝色的长方形

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

纯青色矩形

“红色” “米” [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]

暗红色的长方形

例子:‘LabelTextColor’,‘r’

例子:“LabelTextColor”、“绿色”

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

标签可见性,指定为这些值之一。

价值 描述
“上” 当ROI可见时,标签也可见。
“徘徊” 只有当鼠标悬停在ROI上时,标签才可见。
“关闭” 标签不可见。

ROI边界的宽度,指定为以点为单位的正数。默认值是每屏幕像素点数的三倍,这样边界就有三个像素宽。

标记大小,以正数表示。默认值是每屏幕像素点数的8倍,例如标记的大小为8个像素。

的ROI父元素,指定为UIAxes对象。有关在uiaxis中使用ROI的信息,包括重要的限制,请参见使用应用程序设计器创建的应用程序中的roi

圆的半径,指定为非负数。您也可以通过绘制或调整圆的大小来设置此属性。

ROI的选择状态,指定为数字的或逻辑的0)或1真正的.您还可以交互地设置此属性。例如,单击ROI选择ROI并将此属性设置为真正的.类似地,按Ctrl键并单击ROI将取消选择ROI并将此属性的值设置为

选择ROI时的颜色,指定为RGB三元组、颜色名称、短颜色名称或“没有”.如果你指定“没有”的值颜色定义所有状态的ROI颜色,无论是否选中。

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

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

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

纯红色矩形

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

一个纯绿色的矩形

“蓝” “b” [0 0 1]

一个纯蓝色的长方形

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

纯青色矩形

“红色” “米” [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]

暗红色的长方形

例子:‘SelectedColor’,‘r’

例子:“SelectedColor”、“绿色”

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

ROI条纹的颜色,指定为RGB三元组、颜色名称、短颜色名称或“没有”.如果你指定“没有”时,则ROI边缘为指定的纯色颜色.否则,ROI的边缘是条纹状的,颜色在指定的颜色之间交替颜色而且StripeColor

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

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

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

纯红色矩形

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

一个纯绿色的矩形

“蓝” “b” [0 0 1]

一个纯蓝色的长方形

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

纯青色矩形

“红色” “米” [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]

暗红色的长方形

例子:‘StripeColor’,‘r’

例子:“StripeColor”、“绿色”

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

标记与ROI相关联,指定为字符向量或字符串标量。属性在对象层次结构中使用标记值查找ROI对象findobj函数。

与ROI关联的数据,指定为任何MATLAB数据。例如,您可以指定标量、向量、矩阵、单元格数组、字符串、字符数组、表或结构。的对象不使用此数据。

此属性是只读的。

圆周长上的点的位置,返回为n-by-2数值矩阵,其中n是顶点的总数。

ROI可见性,指定为“上”“关闭”,或作为数字或逻辑1真正的)或0).值为“上”等于真,和“关闭”等于false。该值存储为类型的on/off逻辑值OnOffSwitchState

价值 描述
“上” 显示ROI。
“关闭” 隐藏ROI而不删除它。您仍然可以访问一个看不见的ROI的属性。

对象的功能

addlistener 创建绑定到事件源的事件监听器
beginDrawingFromPoint 从指定点开始绘制ROI
bringToFront 将ROI置于轴的堆叠顺序前面
createMask 从ROI创建二进制掩码图像
开始交互式地绘制ROI
inROI 查询是否有点位于ROI中
等待 MATLAB命令行,直到ROI操作完成

例子

全部折叠

将图像读入工作区并显示它。

I = imread(“baby.jpg”);图imshow(我)

图中包含一个轴对象。axis对象包含一个image类型的对象。

在图像上创建一个圆形ROI。使用“中心”属性指定位置和“半径”属性指定大小。对于以编程方式创建的ROI,如果希望在特定的轴上绘制ROI,则必须将该轴指定为输入参数。的实例images.roi.Circle类被创建但不显示。在本例中,指定当前轴(gca)在该轴上绘制图像上的ROI。

h = images.roi.Circle(gca,“中心”(1000 1000),“半径”, 500);

图中包含一个轴对象。axis对象包含两个image、images.roi.circle类型的对象。

将图像读入工作区。

I = imread(“cameraman.tif”);

显示图像。

imshow(我);

在图像上绘制圆形ROI。由于此示例指定了ROI的大小和位置,因此您不必调用方法启用交互式绘图。

roi = images.roi.Circle(gca,“中心”(100 100),“半径”, 50);

为ROI移动事件设置侦听器。当您移动它时,ROI将发送这些事件的通知并执行您指定的回调函数。

addlistener (roi,“MovingROI”, @allevents);addlistener (roi,“ROIMoved”, @allevents);

allevents回调函数在命令行上显示对象的当前中心和当前半径ROI。

函数allevents(src,evt) evname = evt. eventname;开关(evname)情况下“MovingROI”} disp ([“ROI移动当前中心:”mat2str (evt.CurrentCenter)]);disp (['ROI移动电流半径:'mat2str (evt.CurrentRadius)]);情况下“ROIMoved”} disp ([“投资回报率转移到当前中心:”mat2str (evt.CurrentCenter)]);disp (['ROI移动电流半径:'mat2str (evt.CurrentRadius)]);结束结束

更多关于

全部展开

提示

  • 交互式地绘制ROIdrawcircle函数,将光标定位在轴上并单击并拖动以创建形状。若要完成绘图,请释放指针。

  • ROI支持以下交万博1manbetx互性,包括键盘快捷键。

    行为 键盘快捷键
    完成ROI的绘制。

    释放鼠标光标。

    取消绘制ROI。 新闻Esc.该函数返回一个有效值为空的ROI对象位置财产。
    调整ROI的大小。

    将指针放置在一个顶点上,然后单击并拖动。

    移动ROI。 将光标定位在ROI内的任意位置,按住鼠标并将ROI移动到图像上。
    删除ROI。 将光标定位在圆圈上,右键单击并选择删除圆从上下文菜单。控件,还可以以编程方式删除ROI删除函数。
  • 有关在使用应用程序设计器创建的应用程序中使用ROI的信息,请参见使用应用程序设计器创建的应用程序中的roi

版本历史

在R2018b中引入

全部展开

不建议从R2020a开始