Рассмотрим следующий рисунок:
Обратите внимание, что фон первого изображения прозрачен, а синий фон на втором и третьем изображениях представляет собой тонкий градиент, а не сплошной цвет.
По сути, дайте 2-е изображение и 3-е, как я могу найти разницу между ними, чтобы (примерно) создать 1-е изображение?
Я открыт для любого ответа, от «как это сделать в% Program%» до «найти разницу между обоими значениями rgb и умножить на ...»
PS: я только что понял, что поменял первое изображение на второе на графике. Очевидно, вы начинаете с градиента, а затем накладываете на него наложение.
PS: в GIMP есть функция под названием «Заменить цвет на альфа-канал», в основном она делает то, что мне нужно, но использует определенный цвет. В моем случае цвет будет зависеть от положения.
Если у вас установлен imagemagick (если у вас его нет и вы работаете на Mac, я бы порекомендовал использовать homebrew ), есть очень простой способ, который поможет вам приблизиться...
см. эту статью здесь: https://legacy.imagemagick.org/Usage/compose/#changemask
В основном из ваших двух изображений вы можете вызвать эту команду...
convert original.png background.png -compose ChangeMask -composite result.png
с изображением со всем, что является оригинальным.png, синим фоном градиента, являющимся фоновым.png, и выходным (прозрачным), являющимся результатом.png (или как вы хотите, чтобы он назывался).
Вы можете видеть результат выше... он успешно удаляет фон, но сглаживание элементов все еще несколько синее.
Может быть, вам этого достаточно... если нет, все становится намного сложнее быстро.
Проблема в том, что для этих краевых пикселей неочевидно, какая у них комбинация цвета/прозрачности.
В этом помогут техники, о которых подробнее можно прочитать здесь:
Но это нетривиально, насколько я знаю.
Чтобы получить действительно хороший результат, в идеале у вас есть две версии изображения на разных фонах (белый и черный — это классика), и тогда эта техника работает:
https://legacy.imagemagick.org/Usage/masking/#two_background
В любом случае, скрестим пальцы, первого варианта может быть достаточно для ваших нужд.
е100
е100
христианин
Билли Керр