В Gwyddion реализовано несколько алгоритмов для работы с зёрнами. Прежде всего, можно использовать простые пороговые алгоритмы (порог по высоте, наклону и кривизне). Эти процедуры могут быть очень эффективны для анализа частиц (чтобы пометить частицы лежащие на ровной поверхности).
В Gwyddion пороговые методы доступны в меню → → . В этом модуле реализованы пороги по высоте, наклону и кривизне. Результаты отдельных пороговых методов можно объединять вместе используя несколько операторов.
Подобным образом можно удалить зёрна с маски используя пункт меню → → . Методы максимальной высоты и порога размера можно использовать для удаления ложных зёрен, вызванных шумом или, например, пылинками. Также можно использовать интерактивный инструмент удаления зёрен для удаления их вручную.
Для более сложных структур данных эффективность пороговых алгоритмов может оказаться весьма плохой. Для этих данных выделение зёрен или частиц более эффективно можно проводить с помощью алгоритма водораздела.
Алгоритм водораздела обычно задействуется для определения локальных минимумов и разделения изображения на сегменты в обработке изображений. Поскольку проблема определения положения зёрен может сводиться к проблеме нахождения локальных экстремумов на поверхности, этот алгоритм также можно использовать для нужд разделения и выделения зёрен. Для удобства в дальнейшем мы будем считать данные инвертированными в направлении z при описании этого алгоритма (т.е. вершины зёрен формируют локальные минимумы в нижеследующем тексте). Мы применяем две стадии анализа зёрен (см. [1]):
- В каждой точке инвертированной поверхности помещается виртуальная капля воды. В случае, если капля не находится в локальном минимуме, она следует по пути наискорейшего спуска чтобы минимизировать свою потенциальную энергию. Как только капля достигает любого локального минимума, она остаётся там и покоится на поверхности. Подобным образом она частично заполняет объём локального минимума (см. рисунок ниже и его подпись). Этот процесс повторяется несколько раз. В результате получается система озёр различного размера, заполняющих впадины в инвертированной поверхности. После этого рассчитывается площадь каждого озера и наименьшие из них отбрасываются в предположении, что они формируются в локальных минимумах, образованных шумом. Большие озёра используются для определения положения зёрен. Подобным образом можно устранить шум на данных АСМ.
- Зёрна, найденные на первом шаге, помечаются (каждое своим уникальным номером). Капли воды продолжают падать на поверхность и заполнять локальные минимумы. Поскольку зёрна уже обнаружены и помечены после первого шага, следующие пять ситуаций возможны после достижения каплей локального минимума:
- Капля достигла места, ранее отмеченного как определённое зерно. В этом случае капля объединяется с зерном, т.е. помечается как часть того же зерна.
- Капля достигла места, где нет зерна, но отмеченное зерно найдено в ближайшей окрестности капли. В этом случае капля снова объединяется с зерном.
- Капля достигла места, где нет зерён, и при этом зёрен не было даже в ближайшей окрестности капли. В этом случае капля никак не помечается.
- Капля достигла места, где нет зерна, но более одного отмеченного зерна найдено в ближайшей окрестности. (т.е. в окрестности нашлось два разных зерна). В этом случае капля помечается как граница зерна.
- Капля достигла места, помеченного как граница зерна. В этом случае капля также помечается как граница зерна.
Таким путём мы определяем положения отдельных зёрен и затем определяем объём, занятый каждым зерном по отдельности.
Свойства зёрен можно изучать с помощью нескольких функций. Простейшей из них является статистика зёрен.
→ →
Эта функция рассчитывает общее число помеченных зёрен, их общую площадь (площадь проекции) как в виде абсолютного значения, так и в виде доли общей площади поля данных, среднюю площадь и сторону эквивалентного квадрата для отдельного зерна.
Общие характеристики области под маской могут быть получены с помощью инструмента «статистические величины» когда включена опция Использовать маску. Если инвертировать маску та же информация может быть получена об областях вне зёрен.
Распределения зёрен 
→ →
Распределения зёрен является наиболее мощным и сложным инструментом. Он работает в двух режимах: построение графиков и экспорт необработанных данных. В режиме построения графиков выбранные характеристики отдельных зёрен, рассчитываются, собираются, и строятся в виде суммарных графиков, показывающих их распределения.
Импорт необработанных данных полезен для экспертов, которым нужно, например, коррелировать характеристики отдельных зёрен. В этом режиме выбранные характеристики зёрен рассчитываются и записываются в виде таблицы в текстовый файл, где каждая строка соответствует отдельному зерну, а столбцы соответствуют выбранным зёрнам. Порядок следования столбцов тот же, что и порядок следования величин в диалоговом окне; все величины записыватся в единицах измерения СИ, что обычно для Gwyddion.
→ →
Корреляция зёрен строит график одной выбранной величины зёрен как функцию другой величины, показывая корреляции между ними.
Инструмент измерения зёрен 
Инструмент измерения зёрен является интерактивным способом получения той же информации об отдельных зёрнах, что и Распределения зёрен в режиме экспорта необработанных данных. После выбора зерна мышью в окне данных, все доступные величины показываются в окне инструмента.
Помимо физических характеристик, этот инструмент также показывает номер зерна. Номера зёрен соотвествуют номерам строк (начиная с 1) в файлах, экспортированных инструментом распределений зёрен.
Инструменты распределений зёрен и измерения зёрен могут рассчитывать следующие свойства зёрен:
- Свойства значений
- Минимум, минимальное значение (высота), найденное внутри зерна.
- Максимум, максимальное значение (высота), найденное внутри зерна.
- Среднее, среднее всех значений внутри зерна, средняя высота зерна.
- Срединное, срединное всех значений внутри зерна, срединная высота зерна.
- Минимум на границе, минимальное значение (высота) найденное на внутренней границе зерна, т.е. внутри множества точек. лежащих внутри зерна, но по крайней мере одна из соседних точек которых лежит вне зерна.
- Максимум на границе, максимальное значение (высота) найденное на внутренней границе зерна, т.е. внутри множества точек. лежащих внутри зерна, но по крайней мере одна из соседних точек которых лежит вне зерна.
- Свойства площадей
- Площадь проекции, площадь проекции зерна на плоскость.
- Сторона эквивалентного квадрата, сторона квадрата с той же площадью проекции, что и у зерна.
- Радиус эквивалентного диска, радиус диска с той же площадью проекции, что и у зерна.
- Площадь поверхности, площадь поверхности зерна, см. раздел статистические величины для описания метода оценки площади поверхности.
- Свойства границы
- Длина границы проекции, длина проекции границы зерна на горизонтальную плоскость (а не на реальную трёхмерную поверхность). Метод оценки длины границы описан ниже.
- Минимальный ограничивающий размер, минимальный размер зерна в горизонтальной плоскости. Может быть показан как минимальная ширина зазора в горизонтальной плоскости, через который может пройти зерно.
- Направление минимального ограничивающего размера, направление зазора из описания предыдущей величины. Если зерно обладает симметрией, при которой таких направлений несколько, выбирается одно из них.
- Максимальный ограничивающий размер, максимальный размер зерна в горизонтальной плоскости. Может быть показан как максимальная ширина зазора в горизонтальной плоскости, который можно заполнить зерном.
- Направление максимального ограничивающего размера, направление зазора из описания предыдущей величины. Если зерно обладает симметрией, при которой таких направлений несколько, выбирается одно из них.
- Свойства объёмов
- Объём между нулевой плоскостью и поверхностью, объём между поверхностью зерна и плоскостью z = 0. Значения ниже нуля формируют отрицательные объёмы. Уровень нуля должен быть установлен на разумное значение чтобы получать вменяемые результаты (нередко достаточно исправить нуль), что является достоинством этого метода: можно использовать базисную плоскость по выбору.
- Объём между поверхностью и плоскостью, проходящей через минимум, объём между поверхностью зерна и плоскостью z = zmin, где zmin - минимальное значение (высота), найденное внутри зерна. Этот метод учитывает окружающую зерно поверхность, но обычно недооценивает объём, особенно для малых зёрен.
- Объём между поверхностью и фоном, вычисленным по Лапласу, объём между поверхностью зерна и базовой поверхностью, образованной интерполяцией окружающей зерно поверхности по Лапласу. Другими словами, это объём. который исчезнет после использования инструментов удаления данных под маской or удаления зёрен с лапласовой интерполяцией зерна. Это один из наиболее сложных методов, с другой стороны его результаты труднее всего предугадать.
- Свойства расположения
- Положение центра x, горизонтальная координата центра зерна. Поскольку площадь зерна определяется как площадь под соответствующими точками маски, цент зерна размером с пиксель будет иметь полуцелые координаты, не целые. Смещение начала координат поля данных учитывается (если оно есть).
- Положение центра y, вертикальная координата центра зерна. См. выше интерпретацию.
- Свойства наклонов
- Наклон θ, отклонение нормали к средней плоскости от оси z, см. раздел про наклоны для более подробной информации.
- Наклон φ, азимут наклона, как он был задан в определении наклонов.
Длина границы зерна оценивается путём суммирования оценочного вклада каждой комбинации из четырёх точек границы. Вклады показаны на следующем рисунке для каждого вида конфигурации, где hx и hy - размеры пикселей вдоль соответствующих осей и h - длина диагонали пикселя:
Вклады соответствуют один в один длинам сегментов границы многоугольника, которым аппроксимируется форма зерна. Создание эквивалентной формы многоугольника также показано на рисунке.
Объём зерна после вычета базиса, оценивается как объём точно такой же фигуры, верхняя поверхность которой использовалась для расчёта площади поверхности. Следует отметить, что для объёма, ограниченного многогранником, метод эквивалентен классическому двумерному методу интегрирования с помощью трапеций. Однако, мы рассчитываем объём под маской с центрами на гранях фигуры, поэтому их вклад в интеграл распределён иначе, как показано на рисунке ниже.