主要内容

drawrectangle

创建可定制的矩形ROI

描述

drawrectangle函数创建一个矩形对象,该对象指定矩形感兴趣区域(ROI)的形状和位置。您可以使用鼠标在图像上绘制ROI,以交互方式创建ROI,或者使用名称-值参数以编程方式创建ROI。您还可以指定ROI的初始外观和行为。

蓝色矩形画在图像中物体上的感兴趣区域。

创建ROI后,可以使用对象属性、对象函数和事件通知自定义ROI的形状、位置、外观和行为。有关使用这些功能的更多信息,请参见提示

例子

roi= drawrectangle创建一个矩形对象,并支持在当前轴上交互式绘制ROI。

要绘制感兴趣区域,请将指针放置在图像上。光标变成一朵花的形状。单击并拖动,绘制矩形感兴趣区域。要完成ROI,请松开鼠标按钮。有关使用ROI的更多信息,包括键盘快捷键和上下文菜单选项,请参见提示

roi= drawrectangle (斧头)在指定的坐标轴上创建ROI斧头

roi= drawrectangle (___,名称,值)使用一个或多个名称-值对修改ROI的外观和行为。未指定的名称-值对将被设置为默认值。

例子

全部折叠

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

imshow (imread (“baby.jpg”))

用标签画一个红色矩形ROI“OuterRectangle”

r1 = drawrectangle (“标签”,“OuterRectangle”,“颜色”, (1 0 0));

绘制另一个矩形ROI,将绘制区域限制在第一个矩形内。

r2 = drawrectangle (“标签”,“InnerRectangle”,“DrawingArea”, r1.Position);

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

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

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

在图像上方绘制一个矩形感兴趣区域,使用指定的参数指定矩形的位置和大小。该示例还指定矩形的边缘为条纹线。

h = drawrectangle (“位置”(500500、1000、1000),“StripeColor”,“r”);

图中包含一个轴对象。axis对象包含两个类型为image的对象,images.roi.rectangle。

将图像读入工作区。

我= imread (“cameraman.tif”);

显示图像。

imshow(我);

在图像上画一个矩形感兴趣区域。

投资回报率= drawrectangle (“颜色”,“r”);

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

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

allevents回调函数显示ROI的上一个位置和当前位置。

函数allevents(src,evt) evname = ev . eventname;开关(evname)情况下“MovingROI”} disp ([ROI移动了之前的位置mat2str (evt.PreviousPosition)]);disp ([“ROI移动当前位置:”mat2str (evt.CurrentPosition)]);情况下“ROIMoved”} disp ([他说,投资回报率改变了之前的立场。mat2str (evt.PreviousPosition)]);disp ([投资回报率改变了当前的头寸mat2str (evt.CurrentPosition)]);结束结束

输入参数

全部折叠

ROI之父,指定为对象或一个UIAxes对象。有关在ui轴中使用ROI(包括重要限制)的信息,请参见在应用设计师创建的应用中使用roi

名称-值参数

指定可选的逗号分隔的对名称,值参数。的名字参数名和价值为对应值。的名字必须出现在引号内。可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:“颜色”、“y”创建一个黄色矩形对象

矩形的高宽比,指定为非负数。长宽比定义为高度/宽度

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

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

您可以通过名称指定一些常见颜色作为字符串标量或字符向量。这个表列出了命名的颜色选项和等效的RGB三联体。

颜色名称 短名称 RGB值 外观
“红色” “r” (1 0 0)

纯红色的长方形

“绿色” ‘g’ (0 1 0)

纯绿色的长方形

“蓝” “b” (0 0 1)

纯蓝色的长方形

“青色” “c” (0 1 1)

纯青色的长方形

“红色” “米” (1 0 1)

紫红色的长方形

“黄色” “y” (1 1 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”

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

例子:“颜色”,[0 0.4470 - 0.7410)

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

上下文菜单提供了一个删除ROI的选项,指定为真正的.当值为真正的,您可以使用上下文菜单交互式地删除ROI。当值为时,删除ROI的上下文菜单选项被禁用。

在这两种情况下,您都可以在上下文菜单之外使用删除函数。

您可以交互放置ROI的坐标轴区域,指定为该表中的值之一。

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

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

ROI面可以捕捉点击,指定为真正的.当真正的(默认),ROI面捕获鼠标点击。当, ROI的面孔不捕捉鼠标点击。

纵横比在交互过程中保持恒定,指定为真正的.当值为真正的,当您绘制或调整ROI大小时,纵横比保持不变。当值为,您可以在绘制或调整ROI时更改纵横比。

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

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

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

价值 描述
“所有” ROI是完全可交互的。
“没有” ROI是不可交互的,没有可见的阻力点。
“翻译” ROI可以在绘图区域内转换(移动)。

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

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

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

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

您可以通过名称指定一些常见颜色作为字符串标量或字符向量。这个表列出了命名的颜色选项和等效的RGB三联体。

颜色名称 短名称 RGB值 外观
“红色” “r” (1 0 0)

纯红色的长方形

“绿色” ‘g’ (0 1 0)

纯绿色的长方形

“蓝” “b” (0 0 1)

纯蓝色的长方形

“青色” “c” (0 1 1)

纯青色的长方形

“红色” “米” (1 0 1)

紫红色的长方形

“黄色” “y” (1 1 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上时,标签才可见。

“里面” 标签只有在ROI中有足够的空间显示时才可见。
“关闭” 标签不可见。

ROI边界的宽度,指定为正数点数。默认值是每个屏幕像素点数的三倍,因此边界是三个像素宽。

标记的大小,指定为正数点数。默认值是每个屏幕像素点数的8倍,因此标记的大小为8个像素。

ROI母,指定为UIAxes对象。有关在ui轴中使用ROI(包括重要限制)的信息,请参见在应用设计师创建的应用中使用roi

ROI的位置,指定为表格的1 × 4数字向量[xmin,ymin,宽度,高度].xminymin指定矩形左上角的坐标。宽度高度指定矩形的宽度和高度,且必须是非负的。

ROI的轮换能力,指定为真正的.当值为真正的,您可以通过单击角落附近的标记来旋转矩形。当值为,则不能旋转矩形。

ROI的旋转角度,指定为一个数字。角度是以ROI中心为中心,按顺时针方向以度数测量的。

ROI的选择状态,指定为逻辑值真正的

选定时ROI的颜色,指定为RGB三元组、颜色名称、短颜色名称或“没有”.如果您指定“没有”,然后是值颜色定义所有选中或未选中状态的ROI颜色。

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

您可以通过名称指定一些常见颜色作为字符串标量或字符向量。这个表列出了命名的颜色选项和等效的RGB三联体。

颜色名称 短名称 RGB值 外观
“红色” “r” (1 0 0)

纯红色的长方形

“绿色” ‘g’ (0 1 0)

纯绿色的长方形

“蓝” “b” (0 0 1)

纯蓝色的长方形

“青色” “c” (0 1 1)

纯青色的长方形

“红色” “米” (1 0 1)

紫红色的长方形

“黄色” “y” (1 1 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” (1 0 0)

纯红色的长方形

“绿色” ‘g’ (0 1 0)

纯绿色的长方形

“蓝” “b” (0 0 1)

纯蓝色的长方形

“青色” “c” (0 1 1)

纯青色的长方形

“红色” “米” (1 0 1)

紫红色的长方形

“黄色” “y” (1 1 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数据。例如,可以指定标量、向量、矩阵、单元格数组、字符串、字符数组、表或结构。的drawrectangle对象不使用此数据。

ROI可见性,指定为“上”“关闭”,或作为一个数字或逻辑1(真正的)或0(假)。的值“上”等于true,那么“关闭”等于false。该值存储为开启/关闭类型的逻辑值OnOffSwitchState

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

输出参数

全部折叠

矩形ROI,返回为矩形对象。

提示

  • ROI支持以下交金宝app互性,包括键盘快捷键。

    行为 键盘快捷键
    取消绘制ROI。 新闻Esc.函数返回一个有效的ROI对象,其值为空位置财产。
    调整(重塑)ROI。

    将指针放置在顶点上,然后单击并拖动。矩形的每个角和每条边的中点都有顶点。要在调整大小时保留宽高比,请按转变关键。要锁定长宽比,请使用修复长宽比在右键单击上下文菜单中。

    移动ROI。 将指针放置在ROI上。指针变成了芙蓉形状。单击并拖动ROI。
    删除ROI。 将指针放置在ROI上的任意位置,单击鼠标右键。选择删除矩形从上下文菜单。您也可以使用删除函数。
  • drawrectangle函数创建一个矩形对象。在创建对象之后,您可以使用这些对象功能修改ROI的形状、位置、外观和行为。

    能力 金宝app
    对象属性

    ROI对象具有指定其形状、位置、外观和行为的属性。创建ROI对象后,使用点符号更改属性。

    例如,要改变颜色roi为黄色,设置它颜色属性:

    roi。颜色=“黄色”

    对象的功能 ROI对象具有对ROI进行操作的对象功能。例如,如果您想在创建ROI后暂停MATLAB命令行,请使用等待函数。
    事件通知

    当某些事件发生时,例如当单击ROI或移动ROI时,ROI对象可以通知代码。要接收事件通知,请设置听众.当ROI通过侦听器通知应用程序时,它将返回特定于事件的数据。例如,与ROIMoved事件时,ROI对象返回其先前位置和当前位置。您可以指定在事件发生时执行的回调函数。

    的事件监听器使用示例矩形对象,看到为矩形ROI事件设置监听器

兼容性的考虑

全部展开

不建议在R2020a开始

介绍了R2018b