2015-03-24 2 views
0

Я пытаюсь отделить некоторые ячейки от микроскопического изображения. Похоже, this (извините, не показывать фотографии).Идеи для сегментации ячеек - OpenCV

Я попробовал Отверстие Otsu, для красного канала (потому что ячейки красные), и он уменьшил большую часть синего фона, но некоторые ячейки соединены в один объект. Результат можно найти здесь в альбоме this (третье изображение).

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

Из-за разных цветов, как в следующий раз, я попробовал HSV порог вместо MSER. Я применил его на обмолотом изображении Отсу. Я нашел значения HSV окружающего «синего» и отделил его. Он уменьшил большинство синих областей вокруг клеток. Для обмолотого изображения я использовал findContours, где я использовал только области размером более 300 пикселей. Результат выглядит как последнее изображение в альбоме выше.

Есть ли у кого-нибудь идеи о более «надежном» и полезном методе для этой сегментации клеток? Проблема заключается в различных условиях освещения, где значения HSV различны. Спасибо за помощь!

ответ

0

Обычно вы не можете ожидать надежных и точных результатов от простых подходов к определению пороговых значений. Вы можете попробовать с watershed segmentation или region growing segmentation в OpenCV.

Вы, вероятно, получите некоторое улучшение, но все же вы не должны ожидать невероятных результатов. Надежные подходы обычно являются машинами.

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

Смежные вопросы