Делаем фон изображения прозрачным в Gimp

У меня есть несколько изображений в формате jpg, и мне нужно, чтобы каждое из них имело прозрачный фон.

У меня есть GIMP в качестве графического инструмента.

Мне нужно поместить их на веб-страницу, и мне нужно видеть только основной элемент и иметь прозрачный фон.

Только что выяснил, что если вы на Macbook, вам нужно нажать fn-deleteпосле выбора волшебной палочки;) удаление не работает само по себе.
Привет, @Viola, в GIMP v.2.10.18 лучший способ сделать это НЕ с помощью инструмента «волшебная палочка». Сначала вы добавляете альфа-канал к своему PNG (если это png) с помощью Layer> Transparency> Add Alpha-channel, затем используйте Layer> Transparency> Color to Alpha... и это волшебным образом сделано! Алгоритмы рулят 🚀

Ответы (4)

В GIMP 2.10.14 :

  • layer -> transparency -> add alpha channel

Затем выполните следующие шаги. В новых версиях color to alpha не существует

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

Фотография далекарлийской игрушечной лошадки в лайтбоксе, лицензия CC-By 2.0 от Creative Tools.

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

Следующим шагом будет выбор фона. Это было довольно легко сделать с помощью инструмента « Волшебная палочка », хотя мне пришлось исправить некоторые места, где белые полосы на объекте смешиваются с фоном, с помощью инструмента «Лассо» . Кроме того, как только у меня был хороший выбор фона, я расширил выделение на несколько пикселей (в полном разрешении), чтобы не оставлять беловатый ореол вокруг объекта из-за алиасинга. (Вы не можете видеть это на этом уменьшенном снимке экрана, но мне действительно удалось проделать довольно хорошую работу с выбором, если я могу так сказать.)

Та же картинка с выбранным фоном

Теперь вот хитрость : вместо того, чтобы просто вырезать фон, я использовал ColorsColor to Alpha , чтобы изменить цвет фона (белый) на прозрачный. (Вы также можете использовать заливку ведра с режимом «Стирание цвета», как предлагает utopicam.) Если применить ко всему изображению, это также сделает объект полупрозрачным, но поскольку выбран только фон, тени становятся полупрозрачными, а сам объект остается. непрозрачный:

Изображение после применения цвета к альфе

А вот та же картинка на бледно-голубом фоне, чтобы лучше показать полупрозрачные тени и отражения:

Та же картинка на бледно-голубом фоне

Еще один трюк, который я не показал, заключается в том, что часто бывает удобнее сделать две копии слоя изображения, преобразовать выделение в маску слоя на верхнем и применить цвет к альфа-каналу на нижнем. Это позволяет точно настроить края объекта, отредактировав маску, и одновременно увидеть, как будет выглядеть результат. (Совет: залейте несколько фоновых слоев разными цветами, чтобы можно было легко проверить, как изображение выглядит на различном фоне.) более естественным, так как имитирует фон, отражающийся от объекта.

the first step would be to adjust the levels of the image until the background really is solid white- как это сделать точно должно быть включено для нас чайников? Или я должен задать отдельный вопрос о том, как это сделать?
@hippietrail: Инструмент уровней обычно делает довольно хорошую работу: просто переместите крайний правый ползунок ввода влево, пока он не будет выглядеть хорошо, или используйте белую пипетку. Если срез выглядит слишком резким, вы можете переключиться на «Редактировать эти настройки как кривые» и сгладить его там. (В основном вам обычно нужна кривая, которая в основном линейна, но немного изгибается у верхнего края, чтобы встречаться с ней постепенно, а не в остром углу.)
Мне нравится инструмент кривых для перемещения «белого» фона до полностью белого. Это также дает хорошее растяжение гистограммы по остальной части изображения.

Использование быстрого заполнения ковша вместо выбора контура

Примечание. Это руководство также доступно в формате PDF.

_La trahison des images_ соотечественника Рене Магритта;  частично разрушены для целей этого урока.

Добавьте альфа-канал

В некоторых типах изображений отсутствует канал прозрачности; JPG например. Если это так, добавьте альфа-канал прозрачности. Это делается путем выбора Layer → Tranparency → Add Alpha Channel.

Заливка ковша цветом [необязательно]

Следующий шаг является необязательным и состоит в том, чтобы сначала заполнить область, которая должна стать прозрачной, простым цветом. Выберите инструмент заполнения ведра или нажмите Shift+ B. В параметрах Bucket Fillпанели инструментов выбирайте Fill transparent areasтолько при необходимости. Выберите BG colour fillи Sample mergedвыполните несколько попыток, настраивая параметры Thresholdдля достижения наилучших результатов. В промежутках нажмите Ctrl+ , Zчтобы отменить.

Некоторое смешение цветов будет неизбежным и даже желательным. (В этом отношении Adobe Photoshop ничем не отличается.) Следовательно, выберите цвет, совместимый с фоном, на котором в конечном итоге будет использовано полученное изображение. Щелкните прямоугольник цвета фона в верхней половине Tool Optionsокна панели инструментов, чтобы изменить цвет фона. Здесь я использовал f3f3e9цвет фона для заливки простым цветом. Однако можно также использовать инструмент «Пипетка», чтобы выбрать цвет из любого места на рабочем столе.

<code>Заливка ковша</code>: выбирайте <code>Заполнять прозрачные области</code> только при необходимости.  Обязательно выберите <code>BG color fill</code> и <code>Sample merged</code> и выполните несколько попыток, настраивая <code>Threshold</code> для достижения наилучших результатов.  Между ними нажмите <kbd>Ctrl</kbd>+<kbd>Z</kbd>, чтобы отменить действие.

<code>Заполнение ковша</code> применено.  Выберите цвет заливки, совместимый с фоном, на котором в конечном итоге будет использовано полученное изображение.  Это потому, что некоторое смешивание цветов неизбежно и даже желательно.  Здесь я использовал <code>f3f3e9</code> для заливки простым цветом.

Выбрать по цвету

Правильный поступок сейчас Select → By Colour. Может показаться заманчивым выполнить Colour to Transparency, однако это также изменит полупрозрачные области в нужной области изображения. На этот раз сделайте select Fill transparent areasтак же, как и Sample merged. Для этого конкретного примера я решил не применять Antialiasingни Feather edges. Тем не менее, поэкспериментируйте с этими настройками и выберите то, что выглядит лучше всего. Опять же, выполните несколько попыток, настраивая Thresholdдля достижения наилучших результатов. В промежутках нажмите Ctrl+ , Zчтобы отменить.

<code>Выбрать по цвету</code>: на этот раз выберите <code>Заполнить прозрачные области</code>, а также <code>Образец слияния</code>.  Снова выполните несколько попыток, настраивая <code>Порог</code>, и поэкспериментируйте с <code>Сглаживанием</code> и <code>Растушевкой краев</code> для достижения наилучших результатов.  Между ними нажмите \ <kbd>Ctrl</kbd>+<kbd>Z</kbd>, чтобы отменить действие.

Применен <code>Выбрать → По цвету</code>

Вычесть из выбора

Иногда бывает сложно правильно подобрать цвет. Некоторые из желаемых областей изображения также могут быть выбраны, потому что цвет совпадает. В данном случае также были выбраны для удаления едва заметные девять нужных пикселей в середине трубы. Когда это произойдет, используйте Ctrl+ Dragс Selectинструментом по вашему выбору, чтобы выбрать область вычитания.

Используйте <kbd>Ctrl</kbd>+<code>Drag</code> с инструментом <code>Select</code> по вашему выбору, чтобы выделить область выделения.

Желаемая область прозрачности выбрана.

Увеличить выделение [необязательно]

По краю желаемого изображения некоторые оттенки фона остаются невыбранными. В этом случае увеличьте выделение с помощью пикселя с помощью Select → Grow… → 1px.

Удалить

Как только нужная область прозрачности выбрана, просто нажмите Delete.

После выбора нужной области прозрачности просто нажмите <kbd>Удалить</kbd>.

Конечный результат

Наконец, экспортируйте прозрачное изображение File → Export As...в формат файла, который поддерживает прозрачность. Желательно, чтобы это был PNG, но GIF тоже подойдет.

Окончательный результат

Вы можете увеличить выделение на 1 пиксель, чтобы удалить белые края (Выбрать > Увеличить > 1 > ОК).
Я совсем не разбираюсь в графическом дизайне. Каждый редкий случай, когда мне нужно удалить фон, я, кажется, возвращаюсь к этому ответу. Благодарю вас!
Я также обнаружил, что использование этой Featherопции при выборе также полезно для изображений с размытыми краями на фоне пробелов.
Спасибо: уже имея jpg с чисто белым фоном, это было так просто: добавить слой прозрачности, выбрать, удалить.

Похоже, вам нужно обрезать определенные части jpg (например, основную фигуру) и удалить «фон». Вы можете сделать это с помощью инструмента лассо.

На веб-сайте gimp есть много руководств и объяснений. Проверьте это http://docs.gimp.org/en/gimp-painting.html#gimp-concepts-selection и вот это: http://docs.gimp.org/en/gimp-tool-free-select.html

Многоугольное выделение создает опорную точку каждый раз, когда вы щелкаете. Затем перемещение указателя мыши рисует линию с новой точкой привязки, которую вы можете перемещать до тех пор, пока не щелкнете снова.

Вы можете получить доступ к инструменту «Лассо» разными способами:

  • В строке меню изображения Инструменты → Инструменты выделения → Свободный выбор,

  • щелкнув значок инструмента на панели инструментов,

  • с помощью сочетания клавиш F.

Чтобы сделать сплошной фон изображения прозрачным , добавьте альфа-канал и с помощью волшебной палочки выберите фон. Затем с помощью инструмента «Палитра цветов» выберите цвет фона, который станет цветом переднего плана на панели инструментов. Используйте инструмент Bucket Fill с выбранным цветом. Установите режим заливки ковша на «Стирание цвета», который стирает пиксели с выбранным цветом; другие пиксели частично стерты, а их цвет изменен.

Современный способ добиться этого эффекта в вашем конкретном случае — открыть изображение в последней версии Gimp и в верхнем меню перейти в «Цвета» -> «Цвет в альфа-канал». На этой панели цвет установлен на белый, Gimp попытается заменить все области белых пикселей прозрачностью. По крайней мере, это стоит попробовать.