images.roi. Класс от руки

Пакет: images.roi

Видимая область от руки

Описание

Класс images.roi.Freehand создает объект видимой области (ROI) от руки. Вы вызываете метод draw объекта начать чертить ROI в интерактивном режиме при помощи вашей мыши.

Чтобы создать ROI от руки в интерактивном режиме, расположите указатель на оси и перетаскивание, чтобы чертить форму ROI. Выпустите указатель, чтобы закрыть форму. Чтобы удалить ROI от руки, расположите указатель над ROI, щелкните правой кнопкой и выберите Delete Freehand из контекстного меню. Для получения дополнительной информации об интерактивных поведениях включая горячие клавиши, смотрите Советы.

Класс images.roi.Freehand является классом handle.

Создание

Описание

пример

h = images.roi.Freehand создает экземпляр класса images.roi.Freehand со свойствами по умолчанию.

h = images.roi.Freehand(ax) создает ROI в осях, заданных ax.

h = images.roi.Freehand(___,Name,Value) изменяет внешний вид и поведение ROI с помощью одной или нескольких пар "имя-значение", чтобы задать свойства. Можно установить свойства с помощью пар "имя-значение" с или не задавая ax.

Входные параметры

развернуть все

Родительский элемент ROI, заданного как объект Axes.

Свойства

развернуть все

Общественные собственности

Закройте ROI от руки, заданный как логическое значение true или false. Если true (значение по умолчанию), images.roi.Freehand закрывает ROI путем соединения последней точки, чертившей к первой чертившей точке.

Цвет ROI, заданный как MATLAB® ColorSpec (Color Specification).

Пример: 'green'

Пример: 'g'

Пример: [0 1 0]

ROI может быть в интерактивном режиме удален через контекстное меню, заданное как true или false. Когда значением является true (значение по умолчанию), можно удалить ROI через контекстное меню. Чтобы отключить этот элемент контекстного меню, установите это свойство на false. Когда значение установлено к false, можно все еще удалить ROI путем вызывания функции delete определение указателя на ROI как вход.

Область осей, в которые можно в интерактивном режиме поместить ROI, заданный как одно из значений в этой таблице.

ЗначениеОписание
'auto'Областью рисунка являются пределы текущей системы координат (значение по умолчанию).
'unlimited'Область рисунка не имеет никакого контура, и КОРОЛИ могут чертиться или перетаскиваться, чтобы расширить вне пределов осей.
[x,y,w,h]Область рисунка ограничивается прямоугольной областью, начинающейся в (x, y), и расширяющей к ширине w и высота h.

Прозрачность поверхности ROI, заданной как значение числового скаляра в области значений [0 1]. Когда значением является 1, поверхность ROI полностью непрозрачна. Когда значением является 0, поверхность ROI абсолютно прозрачна.

Поверхность ROI может получить нажатия кнопки, заданные как true или false. Когда true (значение по умолчанию), поверхность ROI захватывает клики мыши. Когда false, поверхность ROI не захватывает клики мыши.

Видимость ROI обрабатывает в свойстве Children родительского элемента, заданного как одно из значений в этой таблице.

ЗначениеОписание
'on'Указатель на объект всегда видим (значение по умолчанию).
'off'Указатель на объект скрыт в любом случае.
'callback' Указатель на объект видим из коллбэков или функций, вызванных коллбэками, но не из функций, вызванных из командной строки.

Интерактивность ROI, заданного как одно из значений в этой таблице.

ЗначениеОписание
'all'ROI является полностью межигровым (значение по умолчанию).
'none'ROI не является межигровым, и никакие не перетаскивают точки, видимы.
'translate'ROI может быть переведен (перемещенный) в области рисунка, но не изменился. Это значение не доступно для использования с объектами images.roi.Point.
'reshape'ROI может быть изменен, но не переведен. Это значение не доступно для использования с объектами images.roi.Point или объектами images.roi.Rectangle.

Метка ROI, заданная как вектор символов или строка. По умолчанию ROI имеет, не маркируют ('').

Ширина ребра ROI, заданного в виде положительного числа в точках. Значение по умолчанию является три раза числом точек на экранный пиксель.

Управляйте стилем рисунка от руки во время интерактивного размещения, заданного как логическое значение true или false. То, когда значением является false (значение по умолчанию), нажатие кнопки, и перетащите жест, завершает ROI от руки. Когда значением является true, несколько жестов перетаскивания могут быть объединены с прямыми ребрами, чтобы сделать более комплексную форму ROI от руки.

Родительский элемент ROI, заданный как объект Axes. UIAxes не может быть родительским элементом ROI.

Положение ROI, заданного как n-by-2 числовой массив формы [x1 y1;...;xn yn], где n является числом точек. Каждая строка задает положение точки, задающей ROI.

Состояние выбора ROI, заданного как логическое значение true или false. Можно также установить это свойство в интерактивном режиме. Например, нажатие на ROI выбирает ROI и устанавливает это свойство на true. Точно так же нажатие клавиши Ctrl и нажатие на ROI отменяют выбор ROI и устанавливают значение этого свойства к false.

Цвет ROI, когда выбрано, заданный как ColorSpec (Color Specification) MATLAB. Интенсивность должна быть в области значений [0,1]. Если 'SelectedColor' установлен в 'none', то значение Color задает цвет ROI для всех состояний, выбранных или нет.

Пример: 'green'

Пример: 'g'

Пример: [0 1 0]

Сглаженный ROI во время интерактивного размещения, заданного в виде положительного числа. Отфильтруйте x и координаты y ROI после интерактивного размещения с Гауссовым ядром сглаживания со стандартным отклонением, заданным Smoothing. Размером фильтра является 2*ceil(2*Smoothing) + 1.

Цвет дорожки ROI, заданной как значение ColorSpec (Color Specification) MATLAB. По умолчанию ребро ROI твердо окрашенный. Если вы задаете StripeColor, ребро ROI чередуется. Чередование состоит из комбинации значения, заданного 'Color' и этим значением.

Пример: 'green'

Пример: 'g'

Пример: [0 1 0]

Пометьте, чтобы сопоставить с ROI, заданным как вектор символов или строка. Используйте значение тега, чтобы найти объект ROI в иерархии объектов с помощью функции findobj.

Контекстное меню, заданное как объект ContextMenu. Используйте это свойство отобразить пользовательское контекстное меню, когда вы щелкнете правой кнопкой по ROI. Можно создать пользовательское контекстное меню при помощи функции uicontextmenu и затем конфигурирующий свойства контекстного меню.

Данные, чтобы сопоставить с ROI, заданным как любые данные MATLAB. Например, можно задать скаляр, вектор, матрицу, массив ячеек, строку, символьный массив, таблицу или структуру. MATLAB не использует эти данные.

Видимость ROI, заданная как одно из значений в этой таблице.

ЗначениеОписание
'on'Отобразите ROI (значение по умолчанию).
'off'Скройте ROI, не удаляя его. Все еще можно получить доступ к свойствам невидимого ROI.

Контрольные точки раньше изменяли ROI, заданный как n-by-1 массив. В массиве строке со значением true указывает, что позиция по ребру ROI является waypoint. Длина массива Waypoints должна совпадать с количеством строк в свойстве Position. Перетаскивание waypoint изменяет от руки чертившую область между заданным waypoint и его мгновенным соседним waypoints. Если пустой (значение по умолчанию), images.roi.Freehand генерирует waypoints автоматически в местоположениях увеличенного искривления.

Методы

развернуть все

События

EventNameТриггерДанные о событияхАтрибуты события
DeletingROIROI собирается быть в интерактивном режиме удаленным.event.EventData

NotifyAccess: private

ListenAccess: public

DrawingStartedROI собирается в интерактивном режиме чертиться.event.EventData

NotifyAccess: private

ListenAccess: public

DrawingFinishedROI в интерактивном режиме чертился.event.EventData

NotifyAccess: private

ListenAccess: public

MovingROIФорма ROI или местоположение в интерактивном режиме изменяются.images.roi.ROIMovingEventData

NotifyAccess: private

ListenAccess: public

ROIMovedФорма ROI или местоположение были в интерактивном режиме изменены.images.roi.ROIMovingEventData

NotifyAccess: private

ListenAccess: public

ROIClickedПо ROI кликнули.images.roi.ROIClickedEventData

NotifyAccess: private

ListenAccess: public

AddingWaypointwaypoint собирается быть в интерактивном режиме добавленным к ROI.event.EventData

NotifyAccess: private

ListenAccess: public

WaypointAddedwaypoint был в интерактивном режиме добавлен к ROI.event.EventData

NotifyAccess: private

ListenAccess: public

RemovingWaypointwaypoint собирается быть в интерактивном режиме удаленным из ROI.event.EventData

NotifyAccess: private

ListenAccess: public

WaypointRemovedwaypoint был в интерактивном режиме удален из ROI.event.EventData

NotifyAccess: private

ListenAccess: public

Примеры

свернуть все

Считайте изображение в рабочую область и отобразите ее.

I = imread('baby.jpg');
figure
imshow(I)

Создайте ROI от руки на изображении, с помощью свойства Position задать вершины ROI. Для программно созданных КОРОЛЕЙ, если вы хотите ROI, чертивший в определенные оси, необходимо указать что оси как входной параметр. В противном случае экземпляр класса images.roi.Freehand создан, но не отображен. В этом примере задайте текущую систему координат (gca), чтобы чертить ROI на изображении в этом оси.

h = images.roi.Freehand(gca,'Position',[100 150;200 250;300 350;150 450]);

Советы

  • ROI поддерживает следующую интерактивность, включая горячие клавиши.

    ПоведениеГорячая клавиша
    Закончите чертить (близко) ROI.

    Щелкнуть правой кнопкой.

    Указатель положения по первой вершине и нажатию кнопки.

    Нажмите Enter.

    Прекратите чертить ROI.Нажмите Esc. Функция возвращает допустимый объект ROI с пустым полем Position.
    Добавьте новую вершину (waypoint) к ROI.

    Расположите указатель на ребро ROI и дважды кликните.

    Расположите указатель на ребро ROI, щелкните правой кнопкой, выберите Add Waypoint из контекстного меню.

    Удалите вершину (waypoint) из ROI.

    Расположите указатель на вершину, щелкните правой кнопкой, выберите Remove Waypoint из контекстного меню.

    Измените размер (изменяют) ROI.

    Указатель положения по вершине и затем перетаскивает.

    Добавьте новую вершину к полигону и затем перетащите.

    Переместите ROI.Расположите указатель на ROI. Указатель изменяется на форму fleur. Перетащите ROI.
  • Для получения информации об использовании ROI в приложении, созданном с App Designer, смотрите Используя КОРОЛЕЙ в Приложениях, Созданных с App Designer.

Введенный в R2018b