Создайте перемещаемую область от руки
imfreehand не рекомендуется. Используйте drawfreehand или drawassisted вместо этого.
Объект imfreehand инкапсулирует интерактивную область от руки по изображению.
Можно добавить вершины и настроить размер и положение полигона при помощи мыши. Полигон также имеет контекстное меню, которое управляет аспектами его внешнего вида и поведения. Для получения дополнительной информации смотрите Использование.
h = imfreehandh = 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