Основная идея реализовать контурную прорисовку изображения

Я использую matplotlib.pyplot.contour для построения контура изображения, и мне интересно, как реализовать контурную прорисовку, но я обнаружил, что код pyplot.contour мне трудно понять. У меня есть идея, что для изображения в градациях серого каждый пиксель имеет значение интенсивности, чтобы построить его контур, я мог бы выбрать набор значений интенсивности, например разделить диапазон [min-intensity-value, max-intensity-value] до 10 сегментов [min-intensity-value, val0, val1,..., val8, max-intensity-value], то для значения интенсивности границы каждого сегмента (как val0, val1,...,val8), найдите все те пиксели, которые имеют одинаковое значение интенсивности, и я думаю, что эти пиксели сформируют контурную линию.

Моя идея — верный путь? Надеюсь, кто-нибудь может дать мне основную идею о том, как его реализовать.
Благодарю.

0

Решение

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

Я считаю, что вопрос в основном то, что вы хотите достичь. Если вы просто хотите векторизовать изображение, для этого есть инструменты, например, например. Potrace. Если вам нужно что-то особенное или у вас есть специальные входные данные, вы получите лучшие результаты, когда расскажете об этом людям. В этом случае, я бы также потратил час или два, чтобы найти очень хорошее описание алгоритма POtrace на их веб-сайте, может быть, вы можете позаимствовать несколько хороших идей из него?

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector