Что такое Рембг? Как использовать Rembg для удаления фона с изображения в Python?

Модуль rembg в Python — это библиотека, используемая для удаления фона с изображений. Он основан на алгоритме Рембга, который использует нейронную сеть для выполнения задачи удаления фона. Алгоритм обучен идентифицировать и отделять объекты переднего плана от их фона на изображениях, в результате чего получаются изображения с прозрачным фоном.

Интересная история

Библиотека rembg основана на алгоритме Rembg, который сам по себе имеет интересную историю. Алгоритм Рембга был разработан Дагом Сверре Сельеботном, исследователем и инженером-программистом. Это реализация статьи «Альфа-матирование с полностью связанными CRF», написанной Monraba et al. (2016), в котором представлен подход к точному извлечению объектов переднего плана из изображений с использованием методов глубокого обучения.

Даг Сверре Сельеботн изначально создал автономный инструмент командной строки под названием rembg, используя алгоритм Rembg. Этот инструмент приобрел популярность благодаря своей способности быстро и эффективно удалять фон с изображений. Признавая полезность и потребность в простой в использовании библиотеке Python для удаления фона, Даг Сверре Сельеботн доработал библиотеку rembg, чтобы предоставить удобный интерфейс Python для использования алгоритма Rembg.

С тех пор библиотека rembg завоевала популярность среди разработчиков и энтузиастов благодаря простоте и эффективности удаления фона с изображений. Он использовался в различных приложениях, таких как графический дизайн, редактирование изображений и задачи компьютерного зрения. Библиотека продолжает поддерживаться и обновляться сообществом открытого исходного кода, что позволяет пользователям с легкостью использовать ее возможности для удаления фона.

Как использовать Рембг?

Модуль rembg предоставляет простой интерфейс для использования алгоритма Rembg в коде Python. Он позволяет передать входное изображение алгоритму и получить на выходе соответствующее изображение с удаленным фоном. Выходное изображение обычно имеет альфа-канал, который представляет прозрачность различных частей изображения.

Монтаж

Нам нужно установить модуль rembg в вашей среде Python, который вы можете установить с помощью pip:

pip install rembg

Обратите внимание, что модуль rembg требует GPU для ускорения. Если у вас нет графического процессора, вы можете попробовать использовать версию процессора под названием rembg-cpu, которая имеет немного более низкую производительность, но все же может обеспечить удаление фона.

Пример

Вот пример того, как мы можем использовать модуль rembg для удаления фона с изображения:

import rembg
import numpy as np
from PIL import Image

# Load the input image
input_image = Image.open('input_image.jpg')

# Convert the input image to a numpy array
input_array = np.array(input_image)

# Apply background removal using rembg
output_array = rembg.remove(input_array)

# Create a PIL Image from the output array
output_image = Image.fromarray(output_array)

# Save the output image
output_image.save('output_image.jpg')

— — —

Почему фон стал завидовать библиотеке rembg?

Потому что он казался замененным и не мог «стираться» из идеальных моментов!

🙂🙂🙂