RomanDillerNsk
@RomanDillerNsk
JavaScript

Как можно получить контур изображения?

Коллеги доброго времени суток, у меня вопрос видимо риторический, но все же. Суть такая, есть на входе PNG, вот пример:

5d67706a2bac4534422628.png

Изображение - прозрачный фон + какая то фигура(желтенькая))). У данного изображения есть точный размер и какие-то координаты, для позиционирования на карте. Возник вопрос, а есть ли способ получить контур этой фигуры?

Т.е. мне на вход падает такая картинка, а на выходе я получаю JSON с координатами полигона. Перевод координат экранных в географические не проблема. Проблема в получении контура.

Буду рад любым советам по теме. Заранее благодарю.
  • Вопрос задан
  • 607 просмотров
Пригласить эксперта
Ответы на вопрос 3
samodum
@samodum
Какой вопрос - такой и ответ
Контуры выделить можно несколькими способами.
Например, с помощью фильтра Собеля. Сначала бинаризовать картинку, а затем пройтись этим фильтром. Он как раз и выделяет границы изображения. После этого можно применить фильтр эрозии, либо ещё раз бинаризовать, чтобы отсеять серые полутона.
https://habr.com/ru/post/114452/
Ответ написан
Комментировать
freeExec
@freeExec
Участник OpenStreetMap
Вот тут изображения с кадастра преобразовываются в геопривязанные контуры.
https://github.com/rendrom/rosreestr2coord
Ответ написан
@grinat
В последнее время все обленились и делают через opencv, но вообще читай тут - https://en.wikipedia.org/wiki/Connected-component_... реализаци море:
https://trackingjs.com/
https://github.com/bramp/Connected-component-labelling
blog.acipo.com/blob-detection-js
в общем гугл в помощь
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы