Выполнение морфологических операций

Морфологические операции изменяют интенсивность определенных областей изображения. В отличие от свертки или геометрических операций, влияющих на все изображение, морфологические операции изолируют определенные разделы изображения (подтверждающий их или как передний план или как фон), и затем расширяется или договоры просто те области для достижения желаемого эффекта.

Разработчики, ищущие эффективные способы улучшить или изолировать качества изображения, найденные или на переднем плане или на фоне изображения, сочтут морфологические операции в vImage полезными. Например, можно применить морфологические операции к научным изображениям ландшафта Марса для выполнения топологических исследований, изолирующих кратеры и долины вдоль поверхности планеты. В целом морфологические операции являются подходящими для:

В этой главе описываются основы обработки изображений с помощью морфологии. Путем чтения этой главы Вы будете:

Объекты

Цель vImage морфологических операций отличается от того из других типов операций, найденных в vImage. Вместо того, чтобы применить работу ко всему изображению, vImage применяет морфологические операции к объекту. Объект составлен или из самых ярких пикселей в изображении или из самых темных пикселей в изображении, где яркость определяется относительно определенного изображения.

Рисунок 4-1 показывает объекты, обрисованные в общих чертах в изображении.

  Пример рисунка 4-1 объектов в изображении

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

При определении ярких пикселей как объекта темные пиксели становятся фоном. В этом случае расширяется расширение, объекты с эрозией заключает их. При определении темных пикселей как объекта яркие пиксели становятся фоном. В этом случае объекты договоров расширения и эрозия разворачивают их.

  Примеры рисунка 4-2 объектного расширения и эрозии

Можно использовать морфологические функции на полутоновых изображениях, где исходное изображение планарное (одноканальный) или на полноцветных изображениях. Само ядро (объясненный более подробно в следующем разделе) является всегда планарным.

Ядра

Каждая морфологическая функция требует, чтобы Вы передали ее ядро свертки, определяющее, как значения соседних пикселей используются для вычислений значения целевого пикселя. Ядро является упакованным массивом, не дополняя в концах строк. См. также Ядра Свертки. Элементы массива должны иметь тип uint8_t (для Planar8 и ARGB8888 форматы) или типа float (для PlanarF и ARGBFFFF форматы). Высота и ширина массива должны оба быть нечетными числами.

Например, 3 x 3 ядра свертки для a Planar8 изображение состоит из массива девяти 8-разрядных (1-байтовых) значений, расположенных последовательно. Первые три значения представляют первую строку ядра, следующие три значения вторая строка и последние три значения третья строка.

Функции морфологии выполняют отсечение для предотвращения переполнения для Planar8 и ARGB8888 форматы. Влажное отсечение отображает все уровни яркости выше 255, к 255, все уровни яркости ниже 0, к 0, и оставляет уровни яркости между 0 и 255, содержащими, неизменными.

Когда пиксель, который будет преобразован, около края изображения — не просто область интереса, но всем изображением которого это - часть — ядро может расшириться вне края изображения, так, чтобы не было никаких существующих пикселей ниже некоторых элементов ядра. Этот сценарий известен как граничный случай, как проиллюстрировано на рисунке 4-3.

  Пример рисунка 4-3 граничного случая

В этом случае функции морфологии используют только, что часть ядра, перекрывающего исходный буфер. Другие элементы ядра проигнорированы.

vImage выполняет морфологические операции на полноцветных изображениях следующим образом:

Типы работы

Существует три основных типа морфологических операций: расширение, эрозия и максимизация/минимизация.