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