как заполнить пустое пространство внутри изображения, сгенерированного функцией Matlab "scatter" - PullRequest
2 голосов
/ 20 сентября 2011

Мое изображение - это двумерная поверхность белка, и я использую функцию matlab "scatter", чтобы отобразить изображение, поэтому в нем есть несколько белых пустых мест.

Я хочу заполнить их цветами ,, но вопрос в том, что точки имеют разные цвета, некоторые красные, а некоторые оранжевые (цвет точки определяется значением RGB).

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

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

Но скорость действительно медленная, а результат недостаточно хороший, кто-нибудь может дать мне какое-нибудь представление об этом?

У меня есть двумерное изображение точек рассеяния, а также трехмерная структура. Каждая точка в 2D может найти одну коллега в 3D, я не знаю, поможет ли эта информация.

enter image description here

1 Ответ

4 голосов
/ 20 сентября 2011

После размывания с использованием ядра диска (7x7), например enter image description here, а затем двустороннего фильтра:

enter image description here

PS: если у вас есть структура трехмерных точек, загрузитеэто где-то и разместить ссылку

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...