drawfreehand

创建定制的手绘ROI

描述

H= drawfreehand创建一个写意ROI对象并且使得所述当前坐标轴的圆形区域的感兴趣(ROI)的交互图。

要绘制的投资回报率,定位图像上的指针。光标变为一个芙蓉形状。单击并拖动以绘制线条。要完成的投资回报率,释放鼠标按钮。有关使用ROI,包括键盘快捷键和快捷菜单选项的详细信息,请参阅提示

注意

drawfreehand是创建一个方便的函数写意ROI对象。如果你直接创建ROI对象,调用写意,你必须调用目标函数,使投资回报率的交互图。相比之下,drawfreehand函数创建ROI对象,并调用你的目标函数。在创建无论方式的投资回报率,您使用对象的属性,对象的功能,和事件通知来定制它的外观和行为。有关使用这些功能的详细信息,请参阅提示

H= drawfreehand (斧头创建在由指定的坐标轴的ROI斧头

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

例子

全部收缩

读取的图像到工作区并显示它。

imshow (imread (“yellowlily.jpg”))

手绘ROI。

H = drawfreehand;

填写写意的投资回报率,并禁止选择的投资回报率的能力的脸。当您单击并拖动鼠标,投资回报率不动。

h.FaceAlpha = 1;h.FaceSelectable = FALSE;

读出的图像到工作区。

我= imread (“cameraman.tif”);

显示图像。

imshow(I);

在图像上手绘ROI。

ROI = drawfreehand(“颜色”'R');

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

的addListener(投资回报率,'MovingROI',@ allevents);的addListener(投资回报率,“ROIMoved”,@ allevents);

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

功能所有事件(src,evt)开关(evname)情况下{'MovingROI'} DISP([“ROI改变之前的位置:”mat2str (evt.PreviousPosition)]);disp ([“ROI移动的当前位置:”mat2str(evt.CurrentPosition)]);情况下{“ROIMoved”} DISP([“ROI移动之前的位置:”mat2str (evt.PreviousPosition)]);disp ([“ROI移动的当前位置:”mat2str(evt.CurrentPosition)]);结束结束

输入参数

全部收缩

ROI的父轴,指定为对象或UIAxes对象。有关在使用ROI信息UIAxes,包括重要的限制,请参见使用创建与App设计中应用的投资回报

名称 - 值对参数

指定可选的用逗号分隔的对名称,值参数。的名字是参数的名称和是对应的值。的名字必须出现引号内。您可以按照任何顺序指定多个名称和值对参数Name1, Value1,…,的家

例子:ROI = drawfreehand( '线宽',5);

关闭徒手ROI,指定为逗号分隔的一对组成的'关闭'和逻辑值真正要么。如果真正(默认),drawfreehand通过连接绘制的最后一个路径点和绘制的第一个路径点来关闭ROI。

ROI颜色,指定为逗号分隔的一对组成的“颜色”和一个MATLAB®ColorSpec(彩色规范)价值。

例子:'绿色'

例子:‘g’

例子:(0 1 0)

上下文菜单,指定为逗号分隔对所组成的'上下文菜单'快捷菜单对象。指定此名称-值对,以便在右键单击ROI时显示自定义上下文菜单。要创建自定义上下文菜单,请创建快捷菜单对象,通过使用uicontextmenu功能,并配置上下文菜单的属性。

ROI可以经由上下文菜单交互地删除,指定为逗号分隔的一对组成的“可删除”和的逻辑值真正要么。当该值真正(默认),您可以通过上下文菜单删除ROI。若要禁用此上下文菜单项,请设置“可删除”。当值设置为,你仍然可以通过调用删除ROI删除功能,指定句柄ROI作为输入。

可以交互地放置ROI的轴的区域,指定为逗号分隔的对,由“绘图区”并在此表中的值之一。

描述
'汽车' 绘制区域是当前轴的限制(默认值)。
'无限' 绘图区域没有边界,roi可以被绘制或拖动,以超出轴的限制。
[X,Y,W,H] 绘图区域在限制为矩形开头(Xÿ),具有宽w ^和高度H

透明性的ROI面,指定为逗号分隔对所组成'FaceAlpha'和范围内的标量值[0,1]。当该值1中,ROI面对的是完全不透明的。当该值0, ROI面是完全透明的。

ROI面可以捕捉点击,指定为逗号分隔的一对组成的“FaceSelectable”和价值真正要么。什么时候真正(默认),投资回报率的脸可以捕获点击。什么时候,投资回报率的脸就无法撷取点击。

在投资回报率手柄能见度孩子属性,指定为逗号分隔的对,由“HandleVisibility”并在此表中的值之一。

描述
'上' 对象句柄总是可见的(默认)。
“关闭” 对象句柄一直是隐藏的。
'打回来' 对象句柄在回调函数内部或由回调函数调用的函数中可见,但在从命令行调用的函数中不可见。

ROI的交互性,指定为逗号分隔的一对组成的“InteractionsAllowed”并在此表中的值之一。

描述
'所有' ROI是完全可交互的(默认)。
'没有' 投资回报率是不相互作用,并没有拖点可见。
'翻译' 投资回报率可以翻译(移动)绘图区域内,但没有重塑。
“重塑” 投资回报率可以在绘图区域内进行塑形,但没有翻译。

ROI标签,指定为逗号分隔对所组成的'标签'和字符向量或字符串。默认情况下,该属性被设置为空数组(“”)和投资回报率没有标签。

所述ROI标签的可视性,指定为逗号分隔的一对组成的'LabelVisible'这些值中的一个。

描述
'上' 当ROI是可见的时候,标签是可见的标签财产不为空(默认值)。
“徘徊”

标签是可见的鼠标悬停在投资回报率,只有当。

“关闭” 标签不可见。

所述ROI边缘的宽度,被指定为逗号分隔的一对组成的“线宽”在点正数的标量。默认值是每屏幕像素点的三倍的数量。

控制徒手交互式放置期间绘制风格,指定为逗号分隔的一对组成的'Multiclick'逻辑标量真正要么。当该值(默认),单击和拖动手势完成徒手。什么时候真正,多次点击和拖拽手势可以用直边相结合,以做出更复杂的写意造型。

ROI父类,指定为逗号分隔的对“父”要么UIAxes对象。有关在uiaxis中使用ROI(包括重要限制)的信息,请参见使用创建与App设计中应用的投资回报

写意ROI的位置,指定为ñ-by-2阵列,[X1 Y1;...;XN YN]其中每一行指定了徒手ROI的顶点的位置。

选择状态的ROI,指定为逗号分隔对所组成的“选定”真正要么。您也可以交互地设置这个值。例如,点击ROI选择它并且将该值设置为真正。同样,如果您ctrl - click投资回报率,取消选择它,并设置这个值

当被选择时ROI的颜色,指定为逗号分隔的一对组成的“SelectedColor”和一个MATLABColorSpec(彩色规范)。如果“SelectedColor”被设置为'没有',则的值颜色定义ROI对于所有状态的颜色,选择与否。

例子:'绿色'

例子:‘g’

例子:(0 1 0)

交互放置时ROI的平滑边缘,指定为逗号分隔对所组成的“平滑”和一个非负标量。该写意对象使用高斯平滑核的标准偏差来筛选Xÿ投资回报率的坐标。该参数定义了滤波器尺寸如在这个公式:2 *小区(2 *平滑)+ 1。在交互式地绘制ROI之前,必须设置参数。你只能在完成绘图后才能看到平滑效果。

颜色的ROI条纹,指定为逗号分隔对所组成“StripeColor以及MATLABColorSpec(彩色规范)价值。如果您指定“StripeColor”, ROI边缘为条纹。所指定的值的组合组成条带“颜色”并且这个值。

例子:'绿色'

例子:‘g’

例子:(0 1 0)

标签与ROI准,指定为逗号分隔的一对组成的“标签”以及字符向量或字符串标量。属性使用标记值在对象层次结构中查找ROI对象findobj功能。

数据以与ROI准,指定为逗号分隔的一对组成的'用户数据'以及任何MATLAB数据。例如,可以指定标量、向量、矩阵、单元数组、字符串、字符数组、表或结构。MATLAB不使用这些数据。

ROI可视性,指定为逗号分隔的一对组成的“可见”'上'要么“关闭”,或数字或逻辑1(真正的)或0(假)。的值'上'等于true,然后呢“关闭”相当于为false。因此,你可以使用这个属性的值是一个逻辑值。该值存储为开/关类型的逻辑值matlab.lang.OnOffSwitchState

描述
'上' 显示ROI(默认)。
“关闭” 隐藏ROI而不删除它。你仍然可以获得无形的ROI。

控制点来重塑ROI,指定为逗号分隔的一对组成的“路标”ñ×1矢量的逻辑,相同的长度位置。的每个元素航点向量表示中对应的点位置数组是一个路径点。路径点的位置设置为真正航点。拖拽路径点会修改指定路径点与其相邻路径点之间的ROI。如果空的,drawfreehand自动生成航点在曲率增大的地方。

输出参数

全部收缩

徒手ROI,返为一写意对象。

提示

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

    行为 键盘快捷键
    取消绘制ROI。 退出。该函数返回一个有效的ROI对象,该对象的值为空位置字段。
    完成画(关闭)的投资回报率。

    双击,这在指针位置增加了一个点,并绘制连接这一点到第一点绘制的线,关闭了投资回报率。

    右击,将绘制一条连接最后一个点和第一个绘制的点的线。

    将指针放在第一点和点击位置。

    输入,它会画一条连接最后一点和第一点的线。

    调整(重塑)ROI的大小。

    在航点位置指针,然后单击并拖动。无援助(捕捉到边缘)在此模式下可用。

    新增航点。

    将指针定位在ROI的边缘,右击并选择添加航点。您也可以定位在ROI的边缘,然后双击指针。

    删除航点。

    将指针定位在路径点上,右击并选择删除航点

    移动ROI。 指针移到ROI的位置。指针变为弗勒尔形状。点击并拖动可以移动的投资回报率。
    删除的投资回报率。 对投资回报率(不是顶点)的指针,用鼠标右键点击位置,并选择删除徒手画的从上下文菜单中。属性还可以通过编程方式删除ROI删除对象的方法。
  • drawfreehand函数返回一个写意ROI对象。创建完成后,使用对象的这些功能来定制ROI的外观和行为。

    • 对象属性——ROI对象支持修改其外观或行为的属性。金宝app例如,改变颜色的投资回报率将其设置为黄色颜色属性,roi。颜色=“黄色”

    • 目标函数 - ROI对象支持的一组上的ROI对象操作功能。金宝app例如,如果你想创建一个投资回报率后,MATLAB命令行暂停,调用等待目标函数。

    • 事件通知 - 投资回报率的对象可以通知你的代码当某些事件,比如移动或点击时,碰巧的投资回报率。要接收这些通知,可以使用的addListener对象函数来设置听众针对特定事件。在听者,指定事件,如“ROIMoved”和一个回调函数,当事件发生时执行。当ROI通过监听通知您的应用程序,它返回的数据具体到事件。例如,与“ROIMoved”事件发生时,ROI对象返回其先前的位置和当前位置。

    实例使用事件监听器的示例写意对象,看到为徒手ROI事件设置侦听器。有关这些功能的更多详细信息,请参阅写意对象的文档。

兼容性注意事项

全部展开

不建议从R2020a开始

介绍了在R2018b