exponenta event banner

Перекрестие

Область перекрестия, представляющая интерес

Описание

Crosshair объект представляет собой представляющую интерес область перекрестия (ROI).

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

Создание

Описание

Создание Crosshair объект, используйте images.roi.Crosshair функция создания. После создания объекта вызовите draw функция объекта, чтобы начать рисование ROI. В качестве удобства вы также можете использовать drawcrosshair для создания функции Crosshair объект. drawcrosshair создает объект ROI и автоматически вызывает draw объектная функция.

пример

roi = images.roi.Crosshair создает Crosshair со свойствами по умолчанию.

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

roi = images.roi.Crosshair(___,Name,Value) задает свойства, используя одну или несколько пар имя-значение. Например, images.roi.Crosshair('Color','y') устанавливает цвет перекрестия ROI в желтый. Заключите каждое имя свойства в кавычки.

Входные аргументы

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

Родитель ROI, указанный как Axes объект или UIAxes объект. Сведения об использовании ROI в UIAxes, включая важные ограничения, см. в разделе Использование ROI в приложениях, созданных с помощью App Designer.

Свойства

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

Цвет окупаемости инвестиций, указанный как MATLAB ®ColorSpec (Color Specification).

Пример: 'green'

Пример: 'g'

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

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

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

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

СтоимостьОписание
'auto'Область рисования представляет собой пределы текущих осей (по умолчанию).
'unlimited'Область рисования не имеет границ, и объекты ROI можно нарисовать или перетащить, чтобы выйти за пределы осей.
[x,y,w,h]Область рисования ограничена прямоугольной областью, начинающейся с (x, y) и продолжающейся до ширины w и высоты h.

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

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

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

СтоимостьОписание
'all'ROI полностью взаимодействует (по умолчанию).
'none'ROI не взаимодействует, и точки перетаскивания не видны.

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

Прозрачность текстового фона, заданная как скалярное значение в диапазоне [0 1]. Если установлено значение 1, текстовой фон полностью непрозрачен. Если установлено значение 0, текстовой фон полностью прозрачен.

Цвет текста метки, заданный как MATLAB ColorSpec (Color Specification). Интенсивности должны находиться в диапазоне [0,1].

Видимость метки ROI, указанной как одно из следующих значений:

СтоимостьОписание
'on'Метка отображается при отображении ROI и Label свойство nonempty (по умолчанию).
'hover'Метка отображается только при наведении курсора мыши на ROI.
'off'Метка не видна.

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

Родитель ROI, указанный как Axes или UIAxes объект. Сведения об использовании ROI в UIAxes, включая важные ограничения, см. в разделе Использование ROI в приложениях, созданных с помощью App Designer.

Позиция ROI, заданная как числовой массив 1 на 2 формы [x y]. Ценности x и y укажите координаты x и y местоположения, в котором горизонтальная линия пересекает вертикальную линию в пересечении ROI. Это значение изменяется автоматически при рисовании или перемещении окупаемости инвестиций.

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

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

Пример: 'green'

Пример: 'g'

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

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

Пример: 'green'

Пример: 'g'

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

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

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

Видимость окупаемости инвестиций, указанная как 'on' или 'off'или как числовое или логическое 1 (true) или 0 (ложь). Значение 'on' эквивалентно true, и 'off' эквивалентно false. Таким образом, можно использовать значение этого свойства в качестве логического значения. Значение сохраняется как логическое значение типа вкл/выкл matlab.lang.OnOffSwitchState.

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

Функции объекта

addlistenerСоздать прослушиватель событий, привязанный к источнику событий
beginDrawingFromPointНачало окупаемости инвестиций в чертеж из указанной точки
bringToFrontПриведение ROI в порядок штабелирования осей
drawНачало окупаемости инвестиций в чертеж в интерактивном режиме
waitБлокировать командную строку MATLAB до завершения операции окупаемости инвестиций

Примеры

свернуть все

Чтение изображения в рабочую область и его отображение.

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

Программно разместите перекрестную окупаемость инвестиций на изображении. При указании положения ROI необходимо указать оси.

h = images.roi.Crosshair(gca,'Position',[100,100]);

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

img = imread('coins.png');

Отображение изображения на рисунке.

hAx = gca;
imObj = imshow(img,'Parent',hAx);
imObj.Parent.Visible = 'on';

Создайте перекрестную окупаемость инвестиций на изображении.

h = images.roi.Crosshair('Parent',hAx,'Position',[50 50],'LineWidth',1,'Color','y');

Настройте прослушиватель для получения уведомления при перемещении окупаемости инвестиций по изображению. Поскольку код отображает значение пикселя под перекрестием, необходимо передать изображение в качестве аргумента слушателю.

addlistener(h,'MovingROI',@(src,data)displayInfo(src,data,hAx,img));

Определите displayInfo функция, вызываемая прослушивателем при 'MovingROI' происходит событие.

function displayInfo(~,data,hAx,img)
pos = ceil(data.CurrentPosition);
title(hAx,['Pixel Value: ',num2str(img(pos(2),pos(1)))])
end

Появление изображения с заголовком при интерактивном движении ROI Crosshair.

Подробнее

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

Совет

  • В этой таблице описывается выполнение общих задач с помощью Crosshair ОКУПАЕМОСТЬ ИНВЕСТИЦИЙ.

    ЗадачаОписание
    Отмена операции рисования.Нажмите клавишу Esc. Функция возвращает допустимый объект ROI с пустым Position поле.
    Переместите окупаемость инвестиций.Наведите курсор на центр перекрестия ROI (где пересекаются две линии) и щелкните и перетащите перекрестие. Другим способом перемещения перекрестной окупаемости инвестиций является размещение курсора в любом месте на одной из двух линий и щелчок мышью. Другая линия перекрестия переходит в новое положение центра перекрестия.
    Удалите ROI.Наведите курсор на ROI, щелкните правой кнопкой мыши и выберите в контекстном меню команду «Удалить перекрестие». Можно также удалить ROI программным путем с помощью delete объектная функция.
  • Сведения об использовании окупаемости инвестиций в приложении, созданном с помощью App Designer, см. в разделе Использование окупаемости инвестиций в приложениях, созданных с помощью App Designer.

Вопросы совместимости

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

Не рекомендуется начинать с R2020a

Представлен в R2019b