H-минимумы преобразовывают
Создайте демонстрационное изображение с двумя региональными минимумами.
a = 10*ones(10,10); a(2:4,2:4) = 7; a(6:8,6:8) = 2
a = 10×10
10 10 10 10 10 10 10 10 10 10
10 7 7 7 10 10 10 10 10 10
10 7 7 7 10 10 10 10 10 10
10 7 7 7 10 10 10 10 10 10
10 10 10 10 10 10 10 10 10 10
10 10 10 10 10 2 2 2 10 10
10 10 10 10 10 2 2 2 10 10
10 10 10 10 10 2 2 2 10 10
10 10 10 10 10 10 10 10 10 10
10 10 10 10 10 10 10 10 10 10
Подавите все минимумы ниже заданного значения. Отметьте, как область с пикселями оценила 7, исчезает в преобразованном изображении, потому что его глубина меньше заданного h значения.
b = imhmin(a,4)
b = 10×10
10 10 10 10 10 10 10 10 10 10
10 10 10 10 10 10 10 10 10 10
10 10 10 10 10 10 10 10 10 10
10 10 10 10 10 10 10 10 10 10
10 10 10 10 10 10 10 10 10 10
10 10 10 10 10 6 6 6 10 10
10 10 10 10 10 6 6 6 10 10
10 10 10 10 10 6 6 6 10 10
10 10 10 10 10 10 10 10 10 10
10 10 10 10 10 10 10 10 10 10
I
— Введите изображениеВведите изображение, заданное как числовой массив любой размерности.
Пример: I = imread('glass.png');
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
H
— H-минимумы преобразовываютH-минимумы преобразовывают, заданный как неотрицательный скаляр.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
conn
— Пиксельная возможность соединения
| 8
| 6
| 18
| 26
| 3-by-3-by-... Матрица-by-3 0
s и 1
sПиксельная возможность соединения, заданная как одно из значений в этой таблице. Возможностью соединения по умолчанию является 8
для 2D изображений и 26
для 3-D изображений.
Значение | Значение | |
---|---|---|
Двумерные возможности соединения | ||
4 | Пиксели соединяются, если их ребра затрагивают. Окружение пикселя является смежными пикселями в горизонтальном или вертикальном направлении. | |
8 | Пиксели соединяются, если их ребра или углы затрагивают. Окружение пикселя является смежными пикселями в горизонтали, вертикальным, или диагональным направлением. | |
3D возможности соединения | ||
6 | Пиксели соединяются, если их поверхности затрагивают. Окружение пикселя является смежными пикселями в:
| |
18 | Пиксели соединяются, если их поверхности или ребра затрагивают. Окружение пикселя является смежными пикселями в:
| |
26 | Пиксели соединяются, если их поверхности, ребра или углы затрагивают. Окружение пикселя является смежными пикселями в:
|
Для более высоких размерностей, imhmin
использует значение по умолчанию
.conndef
(ndims (I), 'максимальный')
Возможность соединения может также быть задана более общим способом к любой размерности путем определения 3-by-3-by-... Матрица-by-3 0
s и 1
s. 1
- ценные элементы задают местоположения окружения относительно центрального элемента conn
. Обратите внимание на то, что conn
должно быть симметричным о его центральном элементе. Смотрите Задающие Пользовательские Возможности соединения для получения дополнительной информации.
Типы данных: single
| double
| int8
| int16
| int32
| int64
| uint8
| uint16
| uint32
| uint64
J
— Преобразованное изображениеПреобразованное изображение, возвращенное как неразреженный числовой массив, одного размера и класс как I
.
[1] Soille, P. Морфологический Анализ изображения: Принципы и Приложения. Springer-Verlag, 1999, стр 170-171.
Указания и ограничения по применению:
imhmin
поддерживает генерацию кода С (требует MATLAB® Coder™). Обратите внимание на то, что, если вы выбираете типовой MATLAB Host Computer
целевая платформа, imhmin
генерирует код, который пользуется предварительно скомпилированной, специфичной для платформы разделяемой библиотекой. Использование разделяемой библиотеки сохраняет оптимизацию производительности, но ограничивает целевые платформы, для которых может быть сгенерирован код. Для получения дополнительной информации смотрите, что Генерация кода пользуется Разделяемой Библиотекой.
При генерации кода, дополнительного третьего входного параметра, conn
, должно быть постоянное время компиляции.
conndef
| imextendedmin
| imhmax
| imreconstruct
| imregionalmin
У вас есть модифицированная версия этого примера. Вы хотите открыть этот пример со своими редактированиями?
1. Если смысл перевода понятен, то лучше оставьте как есть и не придирайтесь к словам, синонимам и тому подобному. О вкусах не спорим.
2. Не дополняйте перевод комментариями “от себя”. В исправлении не должно появляться дополнительных смыслов и комментариев, отсутствующих в оригинале. Такие правки не получится интегрировать в алгоритме автоматического перевода.
3. Сохраняйте структуру оригинального текста - например, не разбивайте одно предложение на два.
4. Не имеет смысла однотипное исправление перевода какого-то термина во всех предложениях. Исправляйте только в одном месте. Когда Вашу правку одобрят, это исправление будет алгоритмически распространено и на другие части документации.
5. По иным вопросам, например если надо исправить заблокированное для перевода слово, обратитесь к редакторам через форму технической поддержки.