Skip to main content

Easily Manipulate Images Using Python: Change Brightness, Contrast, Sharpness, Resize

Project description

pillowcover

Mass Manipulate Images Using Python: Change Brightness, Contrast, Sharpness, Resize, Compress, Crop and Convert (e.g png to jpg). A simple script (wrapper) using pillow. Licensed Under: GNU General Public License v3 or later (GPLv3+) For the Gui option checkout branch 'gui'

Requirements

python >= 3.5, pillow

Installation

Simplest option is to install with pip using sudo.

sudo python3 -m pip install pillowcover --upgrade

--OR-- Install as a user without sudo. This installs it in ~/.local/bin/ make sure this path is in your $PATH.

python3 -m pip install --user pillowcover --upgrade

If not found, add the following to your .bashrc or .zshrc

# Add to PATH to Install and run programs with "pip install --user"
export PATH=$PATH:~/.local/bin

Usage

To increase brightness, contrast, sharpness by 20% and resize all images (landscape, portrait) to max dimension of 1920 pixels (using largest dimension. hight or width) and compress them to 60% in a given folder while keeping the same aspect ratio.

pillowcover -d /home/user/Pictures/ -b 1.20 -c 1.20 -s 1.20 -r 1920 -q 60

To crop (640*480 from the left corner) and convert (from png to jpg) all images in a folder.

plc -d /home/user/Pictures/ -k "0,0,640,480" -x jpg

Usage Options

usage: plc [-h] [-v] [-i IMAGE_FILE] [-d IMAGE_DIR] [-o OUTPUT_DIR]
           [-b BRIGHTNESS] [-c CONTRAST] [-s SHARPNESS] [-r RESIZE]
           [-R RESIZE_RATIO] [-k CROP] [-q COMPRESSION] [-x EXTENSION]

PillowCover: Mass Manipulate Images Using Python: Change Brightness, Contrast,
Sharpness, Resize, Compress, Crop and Convert. A simple script (wrapper) using
pillow. Licensed Under: GNU General Public License v3 or later (GPLv3+)

optional arguments:
  -h, --help            show this help message and exit
  -v, --version         show program\'s version number and exit
  -i IMAGE_FILE, --img IMAGE_FILE
                        Path to the image file to edit
  -d IMAGE_DIR, --dir IMAGE_DIR
                        Path to the directory containing the image files
  -o OUTPUT_DIR, --out-dir OUTPUT_DIR
                        Path to output directory to store edited images. by
                        default they get stored in (parent
                        director)/pillowcover-output
  -b BRIGHTNESS, --brightness BRIGHTNESS
                        Change brightness level, 1.00 is the current value
  -c CONTRAST, --contrast CONTRAST
                        Change contrast level, 1.00 is the current value
  -s SHARPNESS, --sharpness SHARPNESS
                        Change sharpness level, 1.00 is the current value
  -r RESIZE, --resize RESIZE
                        Resize img, keep ratio. provide the maximum
                        length/width value as one number. e.g pillowcase.py
                        img -r 1920
  -R RESIZE_RATIO, --resize-ratio RESIZE_RATIO
                        Resize img by providing new width and length e.g
                        pillowcase.py img -R "640 480"
  -k CROP, --crop CROP  Crop img by providing starting point then width and
                        length from it e.g pillowcase.py img -k "0,0,640,480"
  -q COMPRESSION, --compression-quality COMPRESSION
                        Compression quality 1-100, 100 means no compression at
                        all
  -x EXTENSION, --extension EXTENSION
                        Specifiy the output extension. Can be 'jpg', 'jpeg',
                        'png' Default is same as the input file's. e.g
                        pillowcase.py -d imgdir -x "jpg"

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

pillowcover-1.2.1.tar.gz (5.2 kB view hashes)

Uploaded Source

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