Удалить фон изображения
От: vsb Казахстан  
Дата: 10.01.21 02:25
Оценка:
Хочется в таком изображении заменить чёрный цвет на прозрачный. Т.е. во-первых правльно обработать края изображения, создав плавный переход на однопиксельной границе антиалиасинга, но самое сложное — правильно обработать частицы горящего огня, чтобы он остался полупрозрачным. Мне это нужно сделать программно, т.к. таких изображений много. Интуитивно кажется, что сначала надо выделить область с чистым чёрным цветом и потом расширять её по одному пикселу, пока они не слишком темнеют (т.е. чтобы расширение на границе с основным рисунком остановилось сразу, а там, где горит огонь, но формализовать это рассуждение не получается.

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

Думал уже находить области с огнём и отдельно их обрабатывать, но как-то слишком сложно всё выходит. Хочется всё же попробовать некий универсальный способ подобрать.

Если это сильно облегчит задачу, можно изначально рисовать исходное изображение на фоне любого другого цвета. Хотя мне показалось, что это только исказит цвета.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.