Функции, связанные с масками, можно разделить на три основные группы:
Маски создаются с помощью различных типов функций выделения, а именно функций выделения зёрен (Пометить по порогу, Пометить по водоразделу), функций выделения дефектов (Маска выпадающего, Пометить царапины) и функций выделения выдающихся частей (Маска по корреляции, Анализ граней, Карта достоверности). В дополнение, некоторые основные функции редактирования маски позволяют создать их с нуля.
Маски также используются чтобы пометить неправильные пиксели в файлах, импортированных из форматов, которые делают различие между правильными и неправильными пикселями, поскольку Gwyddion не поддерживает концепцию неправильных пикселей.
В общем случае, область под маской считается интересующей областью, т.е. той областью, над которой будут производиться операции. Это применимо, в частности, к статистическим функциям, таким как Инструмент статистических величин. Функция Интерполировать данные под маской заменяет данные под маской, в то время, как Инструмент удаления зёрен может производить подобную замену для отдельных зёрен. Доступен ряд функций для изучения свойств отдельных зёрен, см. раздел статистика зёрен.
Некоторые функции спрашивают, стоит ли рассматривать область под маской включенной или исключенной (или игнорировать маску), в частности, функции выравнивания. Такой выбор показывается только если маска присутствует на данных.
Несколько основных операций с масками, таких как инверсия или полное удаление, доступно в меню инструмент удаления зёрен и фильтр зёрен, которые предлагают различные способы удаления части маски, так же, как инструмент редактирования маски и пометить с помощью ориентированы на общее редактирование маски.
→ . Более сложные функции, включая предназначенные для работы с зёрнамиЭтот раздел описывает общие функции работы с масками, которые не привязаны к конкретным применениям.
Основные операции в меню Редактор маски, описанного ниже. Также маску можно удалить используя контекстное меню окна данных.
→ включают в себя , которая инвертирует маску, делая отмеченные пиксели неотмеченными и наоборот, и , которая удаляет маску с поля данных. Эти функции также доступны из инструментаФункция
создаёт новое изображение из маски поверх текущего изображения. Новое изображение будет иметь значения 1 в пикселях, отмеченных маской, и 0 в неотмеченных.Маску можно сдвигать горизонтально и/или вертикально используя опцию Тип внешней части управляет тем, как они будут заполняться. Методы периодического, зеркального и копирования границы работают так же, как и в методе Расширить. В дополнение, все внешние пиксели могут быть установлены в пиксели под маской (Заполненный) или без маски (Пустой).
→ → . После сдвига маски, часть её пикселей перестаёт попадать в границы изображения. ОпцияИногда полезно скопировать маску на несколько изображений сразу. Это можно сделать с помощью функции сохранять имеющиеся маски, то функция не будет заменять маски там, где они уже есть. Следует отметить, что маска может быть скопирована только на изображения с таким же разрешением в пикселях. Следовательно, изображения с другими размерами автоматически исключаются.
. Она может копировать маску либо на все изображения в одном файле, либо на все изображения во всех открытых файлах. Если установлен флажокИнструмент Редактор маски — «швейцарский нож» для изменения маски. Он реализует две группы функций: редактирование маски рисованием непосредственно в окне данных и глобальные операции над маской, такие как инверсия, увеличение и сжатие маски.
Непосредственное изменение маски управляется кнопками в группе редактор. Оно может осуществляться двумя способами: выбором геометрических фигур, которые последовательно заполняются или удаляются (используя опцию Формы, и свободным рисованием с помощью инструментов рисования (опция Инструменты рисования).
Кнопки в ряду Режим выбирают, как нарисованная в окне данных геометрическая фигура будет изменять маску:
Создаётся новая маска в виде нарисованной фигуры, убирая любую уже имеющуюся маску.
Маска расширяется нарисованной фигурой (если маски не было, она создаётся).
Нарисованная фигура вырезается из маски. Функция ничего не делает если маски нет.
Маска устанавливается в пересечение нарисованной фигуры и уже имеющейся маски. Функция ничего не делает если маски нет.
Кнопки в ряду Форма контролируют форму изображаемой на маске фигуры. Можно выбрать прямоугольники, эллипсы и тонкие линии.
Инструменты свободного рисования выбираются кнопками в ряду инструмент:
Свободное рисование карандашом с радиусом, заданным параметром Радиус. Может быть медленным на небыстрых компьютерах и/или больших областях данных.
Свободное стирание ластиком с радиусом, заданным параметром Радиус. Может быть медленным на небыстрых компьютерах и/или больших областях данных.
Заливка непрерывной пустой области.
Удаление заливки непрерывной области под маской.
Основные глобальные операции с масками, т.е. инверсия, удаление и заполнение всей области данных маской доступны в ряду Действия. Дополнительные операции включают в себя:
Расширяет маску на количество пикселей с каждой стороны. Точнее маска расширяется на один пиксель с каждой стороны и это повторяется количество раз.
Обычно расширение не различает отдельные части маски. При этом части, которые выросли настолько, что соединились друг с другом, сливаются. Это можно предотвратить с помощью выбора опции Предотвращать слияние зёрен при растяжении которая прекращает рост отдельных частей маски когда между ними остаётся зазор в один пиксель.
Когда маска расширяется на большую величину может стать важным каким образом измеряется расстояние от границы маски, поскольку оно будет определять форму, в виде которой будут расти малые зёрна. Это управляется опцией тип расстояния. Различные типы расстояний описаны в параграфе преобразование расстояния. Обычно предпочтительным является эвклидово расстояние.
Уменьшает маску на количество пикселей с каждой стороны. Точнее, маска уменьшается на один пиксель с каждой стороны и это повторяется количество раз.
Уменьшение может происходить, а может не происходить со стороны границ поля данных. Это управляется с помощью флажка Ужать от границы. Также как и для расширения, возможно задать тип расстояния также для уменьшения.
Делает все зёрна односвязными, т.е. без пустот, заполняя пустоты в зёрнах. Флажок Заполнять не односвязные управляет будут ли заполняться только простые пустоты, т.е. те пустоты, которые сами являются односвязными, или будут заполняться любые пустоты независимо от их топологии.
→ →
Инструмент может создавать или изменять маски используя другие маски или данные того же разрешения. Операции, которые можно производить с текущей маской, те же самые, что и в инструменте редактирования маски: создание, объединение, вычитание, пересечение. Источник другой маски может быть одним из следующих:
Это наиболее простой случай, маска может комбинироваться с другой с использованием заданных логических операций.
В режиме данных, другое поле высот используется как источник другой маски. Маска состоит из пикселей, попадающих в диапазон высот, заданный как относительные значения от полного диапазона. Чтобы использовать пиксели, не попадающие в определённый диапазон, для маскирования, установите верхнюю границу меньше, чем нижнюю.
Режим презентации отличается от режима данных только тем, что используется презентация вместо данных.
Это является исключением из правила, что презентации никогда не используются для дальнейшей обработки. Иногда оказывается полезно пометить, например, края, обнаруженные на данных, даже если соответствующая презентация показывает дикую с физической точки зрения величину.
Классические морфологические операции можно производить над маской используя меню
→ → . Все операции берут маску как первый операнд и так называемый структурирующий элемент как второй операнд, который определяет точный вид воздействия. Структурирующий элемент может быть выбран из нескольких предопределённых форм (диск, восьмигранник, квадрат, бриллиант) или может быть задан другой маской.Все основные формы являются симметричными. Если в качестве структурирующего элемента используется другая маска, она может быть асимметричной или иметь пустые границы. В этом случае структурирующий элемент будет иметь полные размеры выбранного изображения маски, включая любую пустую границу. Это полноразмерное изображение считается центрированным. Если нужно убрать пустые границы с маски структурирующего элемента, используйте опцию Подрезать пустые границы. Структурирующий элемент будет снова отцентрован, но уже после удаления пустых границ.
Доступные операции включают в себя:
Эрозия удаляет малые особенности и уменьшает размер больших областей – на величину и в виде формы заданной структурирующим элементом. Точнее, если структурирующий элемент помещён в пиксель маски и целиком содержится внутри маски, то этот пиксель останется под маской. Все остальные пиксели маски будут очищены.
Расширение заполняет малые полости и увеличивает размер выделенных областей – на величину и в виде формы заданной структурирующим элементом. Точнее, если структурирующий элемент повёрнут на угол 180 градусов и помещён в каждый пиксель маски, то результат расширения будет объединением всех этих структурирующих элементов с данными смещениями.
Размыкание это последовательное применение эрозии после расширения. Расширение исправляет эффект предшествующей эрозии в тех точках, где маска совпадает со структурирующим элементом. Общим эффектом будет то, что малые несовпадающие выступы и зёрна будут удаляться, а совпадающие части будут оставаться в исходном виде. Форма маски при этом становится более чистой и простой.
Замыкание это последовательное применение расширения после эрозии. Эрозия исправляет эффект предшествующего расширения в тех точках, где маска совпадает со структурирующим элементом. Общим эффектом будет то, что малые несовпадающие впадины и дыры будут удаляться, а совпадающие части будут оставаться в исходном виде. Форма маски при этом становится более простой.
Простой фильтр размыкания или замыкания может оказаться слишком грубым для исправления дефектов формы с варьирующимся размером. Переменный последовательный фильтр представляет собой последовательность операций замыкания и размыкания с пропорционально увеличивающимся до заданного размера структурирующим элементом. Он лучше сохраняет форму особенностей, которые не должны удаляться размыканием. Финальной операцией этого фильтра будет размыкание.
Простой фильтр размыкания или замыкания может оказаться слишком грубым для исправления дефектов формы с варьирующимся размером. Переменный последовательный фильтр представляет собой последовательность операций замыкания и размыкания с пропорционально увеличивающимся до заданного размера структурирующим элементом. Он лучше сохраняет форму особенностей, которые не должны удаляться замыканием. Финальной операцией этого фильтра будет замыкание.
Преобразование расстояния присваивает каждому пикселю его расстояние до границы маски. Оно доступно из меню водораздела. Преобразование расстояния может выполнять преобразование используя евклидово расстояние
→ → . Эта операция является в некотором роде дополнительной к операции, а также классические простые определения расстояния, такие как городские кварталы (4-связное)
и шахматная доска (8-связное)
, которые полезны в основном в образовательных целях. В дополнение доступны октогональные расстояния, которые рассчитываются делая шаги по очереди по определению городских кварталов и шахматной доски, в результате получая варианты «48» и «84» в зависимости от того, какой шаг был сделан первым. И, наконец, доступно восьмистороннее расстояние без уточнения, которое является средним двух предыдущих вариантов.
Если оно применяется к внутренней части зёрен, расстояние равно нулю снаружи зерна и увеличивается по мере приближения к "центру" зерна. Оно может применяться наоборот, к внешней части по отношению к зёрнам и значение будет большим для наиболее удалённых от любого зерна пикселей. Также можно рассчитать знаковое двухстороннее преобразование, равное разности двух предыдущих, т.е. оно положительно внутри зерна и отрицательно снаружи.
Опция Ужать от границы управляет обработкой границ изображения. При включенной, границы изображения также рассматриваются как границы зёрен (или пустого пространства). Пиксели на краях изображения при этом не могут приобретать больших значений. При выключенной опции, зёрна (или пустое пространство) оказываются как-бы бесконечно большими вне изображения. И пиксели вблизи границы могут приобретать большие значения расстояния.
Утоньшение это ещё одна классическая морфологическая операция, доступная в меню
→ → . Она уменьшает маску до скелетной части, состоящей только из тонких линий, характеризующих общую форму. Если граница маски будет зазубренной, это будет приводить к большому числу дополнительных ответвлений. Следовательно, обычно более полезно применить предварительно упрощающую операцию (размыкание или замыкание).Следует отметить, что данная функция работает только с маской. Она не использует никакой информации нижележащего поля данных. Следовательно, даже если маска после утоньшения нередко может совпадать с вершинами и гребнями выделенных топографических особенностей, обычно это просто совпадение.
Функция
→ → добавляет случайный шум вида соль и/или перец к маске, тип шума выбирается (симметричный, положительный, отрицательный). Этот модуль нужен в основном для тестирования и разработки методов обработки данных.Параметр Плотность определяет долю пикселей изображения, задетых обработкой. Если включена опция Менять только границы пиксели маски не меняются, если они не принадлежат в настоящее время границе маски, т.е. некоторые из их четырёхсвязных соседей не отличаются от текущего пикселя.