Создание прозрачного фона изображения в Gimp


303

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

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

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


Просто выяснил, если вы находитесь на Macbook, вам нужно нажать fn-deleteпосле выбора волшебной палочки;) удаление не работает само по себе.
Бен

Ответы:


307

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

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

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

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

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

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

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

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

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

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


1
the first step would be to adjust the levels of the image until the background really is solid white- как это сделать, чтобы именно для нас были чайники? Или я должен задать отдельный вопрос о том, как это сделать?
hippietrail

1
@hippietrail: инструмент уровней обычно делает довольно хорошую работу: просто переместите самый правый ползунок ввода влево, пока он не будет хорошо выглядеть, или используйте белую пипетку. Если обрезание выглядит слишком резким, вы можете переключиться на «Редактировать эти настройки как Кривые» и сгладить его там. (По сути, вам обычно нужна кривая, которая в основном линейная, но немного наклоняется к верхнему краю, чтобы соответствовать ей постепенно, а не в остром углу.)
Илмари Каронен

Мне нравится инструмент кривых, чтобы переместить «белый» фон до полностью белого. Это также дает хорошее растяжение гистограммы по всей остальной части изображения.
Мистер Пурпур

75

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

Примечание. Это руководство также доступно в формате 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> Bucket Fill </ code>: выбирайте <code> Fill прозрачные области </ code> только при необходимости.  Выберите <code> BG color fill </ code> и <code> Sample merged </ code> и выполните несколько попыток, настраивая <code> Threshold </ code> для достижения наилучших результатов.  Между ними нажмите <kbd> Ctrl </ kbd> + <kbd> Z </ kbd>, чтобы отменить.

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

Выберите по цвету

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

<code> Select by Color </ code>: на этот раз выберите <code> Fill прозрачные области </ code>, а также <code> Sample merged </ code>.  Опять же, выполните несколько попыток при настройке <code> Threshold </ code> и поэкспериментируйте с <code> Antialiasing </ code> и <code> Feather edge </ 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 также работал бы.

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


4
Возможно, вы захотите увеличить выделение на 1 пиксель, чтобы удалить белые края (Выбрать> Расти> 1> ОК)
MonoThreaded

4
Я совсем не разбираюсь в графическом дизайне. Каждый раз, когда мне нужно удалить фон, я, кажется, возвращаюсь к этому ответу. Спасибо!
Slayernoah

1
Я также обнаружил, что использование Featherпараметра в выделении также полезно для изображений с размытыми краями на фоне пробелов.
jocull

1
Спасибо: уже с jpg с чистым белым фоном это было так просто: добавить слой прозрачности, выбрать, удалить.
djvg

21

Похоже, вам нужно обрезать определенные части jpgs (например, основной рисунок) и удалить «фон». Вы можете сделать это, используя инструмент лассо.

Веб-сайт GIMP имеет множество учебных пособий и объяснений. Проверьте это http://docs.gimp.org/en/gimp-painting.html#gimp-concepts-selection и это: http://docs.gimp.org/en/gimp-tool-free-select.html

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

Вы можете получить доступ к инструменту Lasso по-разному:

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

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

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

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

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.