Skip to main content

Make images with transparent background

Project description

Transparent Background

This is a background removing tool powered by InSPyReNet (ACCV 2022). You can easily remove background from the image or video or bunch of other stuffs when you can make the background transparent!

Image Video

:inbox_tray: Installation

Dependencies

package version (>=)
pytorch 1.7.1
torchvision 0.8.2
opencv-python 4.6.0.66
timm 0.6.11
tqdm 4.64.1
kornia 0.5.4
gdown 4.5.4

Install command

# via pypi
pip install transparent-background

# via github
pip install git+https://github.com/plemeri/transparent-background.git

# locally
pip install . e

:pencil2: Usage

:computer: Command Line

transparent-background --source [SOURCE] --dest [DEST] --type [TYPE]
  • --source [SOURCE]: Specify your data in this argument.

    • Single image - image.png
    • Folder containing images - path/to/img/folder
    • Single video - video.mp4
    • Folder containing videos - path/to/vid/folder
  • --dest [DEST] (optional): Specify your destination folder. If not specified, it will be saved in current directory.

  • --type [TYPE]: Choose between rgba, map green, blur, overlay, and another image file.

    • rgba will generate RGBA output regarding saliency score as an alpha map. Note that this will not work for video input.
    • map will output saliency map only.
    • green will change the background with green screen.
    • blur will blur the background.
    • overlay will cover the salient object with translucent green color, and highlight the edges.
    • Another image file (e.g., backgroud.png) will be used as a background, and the object will be overlapped on it.
    Examples of different TYPE argument choices

:crystal_ball: Python API

  • Usage Example
import cv2

from PIL import Image
from transparent_background import Remover

remover = Remover()

# Usage for image
img = Image.open('samples/aeroplane.jpg') # read image

out = remover.process(img) # default setting - transparent background
out = remover.process(img, type='rgba') # same as above
out = remover.process(img, type='map') # object map only
out = remover.process(img, type='green') # image matting - green screen
out = remover.process(img, type='blur') # blur background
out = remover.process(img, type='overlay') # overlay object map onto the image
out = remover.process(img, type='samples/background.jpg') # use another image as a background

Image.fromarray(out).save('output.png') # save result

# Usage for video
cap = cv2.VideoCapture('samples/b5.mp4') # video reader for input
fps = cap.get(cv2.CAP_PROP_FPS)

writer = None

while cap.isOpened():
    ret, frame = cap.read() # read video

    if ret is False:
        break
        
    frame = cv2.cvtColor(frame, cv2.COLOR_BGR2RGB) 
    img = Image.fromarray(frame).convert('RGB')

    if writer is None:
        writer = cv2.VideoWriter('output.mp4', cv2.VideoWriter_fourcc(*'mp4v'), fps, img.size) # video writer for output

    out = remover.process(img, type='map') # same as image, except for 'rgba' which is not for video.
    writer.write(cv2.cvtColor(out, cv2.COLOR_BGR2RGB))

cap.release()
writer.release()

:outbox_tray: Uninstall

pip uninstall transparent-background

:page_facing_up: Licence

See LICENCE for more details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

transparent-background-1.0.3.tar.gz (19.3 kB view details)

Uploaded Source

Built Distribution

transparent_background-1.0.3-py3-none-any.whl (21.0 kB view details)

Uploaded Python 3

File details

Details for the file transparent-background-1.0.3.tar.gz.

File metadata

File hashes

Hashes for transparent-background-1.0.3.tar.gz
Algorithm Hash digest
SHA256 e8a15441185307607cafe9a42b6f87997e360fee1ac84bf9d3768e5d83258c44
MD5 134c9801583a766436a84d0a0f69c6f5
BLAKE2b-256 8f50465f7c2084e1e283c6e4656272227aee8e63f94a301ce15697c41aa33e82

See more details on using hashes here.

File details

Details for the file transparent_background-1.0.3-py3-none-any.whl.

File metadata

File hashes

Hashes for transparent_background-1.0.3-py3-none-any.whl
Algorithm Hash digest
SHA256 1b3b569258ae64eab00a0110bbed26ea178c7046f4a29488dc6d24875240f5c6
MD5 7064d3defde85920fe0c2ad110ccb5fe
BLAKE2b-256 93ca1a4126a1c370547c99948948670d4d3954833c1773bb2fed194b17f71ce3

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page