Как разделить изображение на основе прозрачных областей - PullRequest
0 голосов
/ 05 апреля 2019

Я тщательно искал в интернете, но не смог найти решение

Вот что я хочу

Это мое изображение

enter image description here

Вот так это выглядит с 0 прозрачностью, когда я выбрал

enter image description here

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

Как я могу это сделать?

Мои предпочтительные решения основаны на c # или скрипте photoshop, но я открыт для всех решений

Пример вывода

enter image description here enter image description here

1 Ответ

1 голос
/ 05 апреля 2019

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

Загрузить файл изображения.

Извлечь альфа-канал (здесь содержится информация о прозрачности)

найти сгустки яиц (поиск / анализ сгустков, маркировка областей, связанные компоненты, бесчисленные названия для этого метода)

получить ограничивающие рамки этих сгустков

обрезать вложенные изображения с помощью этих ограничивающих рамок

Этого можно добиться с большинством библиотек обработки изображений.Если вы предпочитаете C #, попробуйте EmguCV .Или используйте веб-поиск, чтобы найти других.

http://www.emgu.com/wiki/files/3.1.0/document/html/e13fa7a9-5eee-b46c-4b65-ff3e7e427719.htm

...