Создайте перемещаемую область от руки
imfreehand
не рекомендуется. Используйте drawfreehand
или drawassisted
вместо этого.
Объект imfreehand
инкапсулирует интерактивную область от руки по изображению.
Можно добавить вершины и настроить размер и положение полигона при помощи мыши. Полигон также имеет контекстное меню, которое управляет аспектами его внешнего вида и поведения. Для получения дополнительной информации смотрите Использование.
h = imfreehand
h = imfreehand(hparent)
h = imfreehand(___,Name,Value)
h = imfreehand
начинает интерактивное размещение области от руки на текущей системе координат и возвращает объект imfreehand
.
h = imfreehand(
начинает интерактивное размещение области от руки на объекте, заданном hparent
)hparent
.
h = imfreehand(___,
задает пары "имя-значение", которые управляют поведением области от руки.Name,Value
)
Когда вы вызываете imfreehand
с интерактивным синтаксисом, указатель изменяется на крест нитей, когда расположено над изображением. Перетащите мышь, чтобы чертить область от руки и отрегулировать положение области. По умолчанию imfreehand
проводит прямую линию, соединяющую последнюю точку, которую вы чертили с первой точкой, но можно управлять этим поведением с помощью параметра Closed
.
Область от руки также поддерживает контекстное меню, которое можно использовать, чтобы управлять аспектами его внешнего вида и поведения.
Таблица приводит интерактивные функции, поддержанные imfreehand
.
Интерактивное поведение | Описание |
---|---|
Перемещение области. | Переместите указатель в области от руки. Указатель изменяется на форму fleur. Кликните и удержите левую кнопку мыши, чтобы переместить область. |
Изменение цвета раньше чертило область. | Переместите указатель в области от руки. Щелкните правой кнопкой и выберите Set Color из контекстного меню. |
Получение текущего положения области от руки. | Переместите указатель в области от руки. Щелкните правой кнопкой и выберите Copy Position из контекстного меню. imfreehand копирует n-by-2 массив координат на контуре ROI к буферу обмена. |
Удаление области | Переместите указатель в области. Щелкните правой кнопкой и выберите Delete из контекстного меню. Чтобы удалить эту опцию из контекстного меню, установите свойство Deletable на ложь: h = imfreehand(); h.Deletable = false; |
Каждый imfreehand
поддержка объектов много методов. Введите methods imfreehand
, чтобы видеть полный список.
addNewPositionCallback | Добавьте ново-позиционный коллбэк в объект ROI |
createMask | Создайте маску в изображении |
delete | Удалите объект указателя |
getColor | Доберитесь цвет раньше чертил объект ROI |
getPosition | Возвратите текущее положение объекта ROI |
getPositionConstraintFcn | Возвратите указатель на функцию в ограничительную функцию текущего положения |
removeNewPositionCallback | Удалите ново-позиционный коллбэк из объекта ROI |
resume | (Не рекомендуемый) выполнение Резюме командной строки MATLAB |
setClosed | Установите поведение закрытия объекта ROI |
setColor | Выберите цвет, используемый, чтобы чертить объект ROI |
setConstrainedPosition | Установите объект ROI на новое положение |
setPositionConstraintFcn | Установите ограничительную функцию положения объекта ROI |
wait | (Не рекомендуемый), командная строка MATLAB Блока, пока создание ROI не закончено |
В интерактивном режиме поместите закрытую видимую область от руки путем перетаскивания по изображению.
imshow('pout.tif')
h = imfreehand;
В интерактивном режиме переместите область от руки путем перетаскивания. Используйте функцию wait
, чтобы блокировать командную строку MATLAB®. Дважды кликните на области от руки, чтобы возобновить выполнение командной строки MATLAB.
position = wait(h);
Если вы используете imfreehand
с оси, который содержит объект изображения, и не задавайте ограничительную функцию положения, пользователи могут перетащить область от руки вне степени изображения и потерять область от руки. Когда используется с оси, созданные функцией plot
, пределы осей автоматически расширяются, чтобы разместить перемещение области от руки.
Чтобы отменить интерактивное размещение, нажмите клавишу ESC. imfreehand
возвращает пустой объект.
imellipse
| imline
| impoint
| impoly
| imrect
| imroi
| iptgetapi
| makeConstrainToRectFcn