Этот пример показывает, как использовать итерационный подход, чтобы отобразить сегментацию, пробуя несколько различных методов, пока вы не достигаете результатов, которые вы хотите.
Для получения информации об открытии приложения и загрузке изображения, смотрите Открытое Изображение Приложения и Загрузки Image Segmenter. Этот пример использует изображение от MRI колена. Используйте следующий код, чтобы считать изображение в рабочую область и загрузить его в Image Segmenter.
I = dicomread('knee1');
knee = mat2gray(I);
imageSegmenter(knee)
Как первая попытка сегментации изображения колена, попробуйте пороговую обработку.
Нажмите Threshold в Создать группе панели инструментов Маски. Отображения приложения вкладка Threshold. Можно выбрать между несколькими методами задания порога: Глобальная переменная, Адаптивная, и Ручная. Часто полезно попробовать каждую опцию и видеть, какой работает лучше всего с вашим изображением. Экспериментируйте с дополнительными параметрами, доступными с каждой опцией. Например, с Ручной опцией можно использовать ползунок, чтобы задать пороговое значение. Изображение колена не имеет четко определенных различий в интенсивности пикселей между передним планом и фоном. Пороговая обработка не походит на лучший выбор сегментировать это изображение.
Нажмите Cancel, чтобы возвратиться к основному окну приложения сегментации, не принимая результат и попробовать одну из других опций сегментации. Если вы хотели сохранить пороговый рисунок маски, нажмите Create Mask.
Другой метод, который можно попробовать, должен чертить области, которые вы хотите включать в рисунок маски. Image Segmenter обеспечивает инструменты, которые можно использовать, чтобы чертить прямоугольники, замещающие знаки, полигоны или формы от руки.
Расширьте Добавление в группу Маски и кликните по опции Draw ROIs. Выберите тип ROI, который вы хотите чертить и изменения курсора в форме креста нитей, когда вы перемещаете его через изображение. Нажмите кнопку мыши и чертите форму по изображению, которое обрисовывает в общих чертах объект, который вы хотите сегментировать. С опцией ROI От руки, которой Помогают, которая предварительно выобрана, можно чертить форму от руки, которая автоматически следует за ребрами в основном изображении, чтобы помочь вам чертить более точный ROI. Как вы чертите, щелкаете мышью, чтобы создать waypoints для точного рисунка. Чтобы настроить границы ROI, дважды кликните на ребре ROI, чтобы добавить дополнительный waypoint. Переместите waypoint, чтобы настроить границу ROI.
Нажмите Apply, чтобы сохранить области ваш чертили. Чтобы сохранить этот рисунок маски, нажмите Export.
Эта часть примера показывает, как совершенствовать созданное использование бинарной маски Image Segmenter. Приложение Image Segmenter обеспечивает несколько инструментов, которые можно использовать, чтобы заполнить дыры, закончить грубое приближение с помощью Активных Контуров и других операций. Этот пример показывает, как загрузить существующий бинарный рисунок маски. Активные контуры (змеи) являются автоматическим, итерационный метод, где вы отмечаете местоположения в изображении и активных контурах, выращивает (или уменьшения) области, идентифицированные в изображении. Чтобы использовать активные контуры, у вас уже должна быть грубая сегментация. Точность этой начальной маски seed может повлиять на конечный результат после активных контуров. Можно использовать опцию Include Texture Features с Активными Контурами.
Чертите формы seed в областях, которые вы хотите сегментировать. Можно использовать области от руки, чертившие с помощью инструмента от руки (см. Сегмент Путем Рисования областей в Image Segmenter). Чтобы использовать существующую бинарную маску, сначала загрузите оригинальное изображение, которое вы сегментировали. После загрузки оригинального изображения нажмите Load Mask и укажите, что сегментированное изображение следует из Сегмента в качестве примера Путем Рисования областей в Image Segmenter.
I = dicomread('knee1');
knee = mat2gray(I);
imageSegmenter(knee)
Кликните по опции Active Contours. Image Segmenter открывает вкладку Active Contours.
Нажмите Evolve, чтобы использовать активные контуры, чтобы вырастить области, чтобы заполнить объекты к их границам. Первоначально, используйте активный (находящийся в области) метод контуров по умолчанию и количество по умолчанию итераций (100). Image Segmenter отображает прогресс обработки в правом нижнем углу. Смотря на результаты, вы видите, что этот подход работал на два из трех объектов, но сегментация вышла за край в фон для одного из объектов. Граница объекта не так четко определена в этой области.
Повторите активную сегментацию контуров, на этот раз изменив количество итераций. Чтобы восстановить операцию, измените количество итераций в поле итераций, задав 35, и нажмите Evolve снова. Когда вы будете удовлетворены сегментацией, нажмите Apply. Цвет областей изменяется от синего до желтого, указывая, что изменения были применены. Чтобы видеть, как удалить маленький недостаток в той из областей, смотрите Морфологию Использования, чтобы Совершенствовать Маску в Image Segmenter.
Рисунок маски сегментации, который вы создали на шаге сегментации (Рабочий процесс Image Segmenter) может иметь небольшие недостатки, которые требуется зафиксировать. Image Segmenter включает морфологические инструменты, такие как расширение и эрозия, на вкладке Morphology и опциях как Fill Holes и Clear Borders на вкладке Segmentation. Можно использовать эти инструменты, чтобы улучшить рисунок маски.
После тщательного изучения одна из областей маски (созданный в Рабочем процессе Image Segmenter) содержит маленькое отверстие.
Нажмите Fill Holes, и Image Segmenter заполняет дыру в области.
Image Segmenter | activecontour