Skip to content
THE IMAGE LIBRARY FOR PYTHON

Make every pixel count.

Familiar Python image workflows, powered by Rust. Open, transform, and save images with a focused Pillow-shaped API.

Performance compared with Pillow

Resize a 1920 × 1280 RGB image to 960 × 640. In this run, Blanket was 2.6–7.5× faster across all six resize filters.

Resize filter Blanket Pillow Speedup
Nearest 0.085 ms 0.259 ms 3.05×
Box 2.139 ms 5.537 ms 2.59×
Bilinear 2.228 ms 8.521 ms 3.83×
Hamming 2.293 ms 8.550 ms 3.73×
Bicubic 2.062 ms 15.370 ms 7.46×
Lanczos 2.849 ms 21.113 ms 7.41×

Median of 50 runs after 3 warmups, using identical synthetic in-memory inputs. Apple M1 Max, macOS 27.0 arm64, Python 3.14.7, Blanket 0.0.1 (release build), Pillow 12.3.0. Measured September 23, 2026. Speedup is Pillow time divided by Blanket time; higher is better. Results vary by hardware, image size, and operation.

Methodology, raw results, and reproduction commands.

BUILT FOR REAL WORK

Everything you need to move from source to output.

A small example, start to finish

from blanket import Image, ImageOps

with Image.open("photo.jpg") as image:
    upright = ImageOps.exif_transpose(image)
    thumbnail = ImageOps.fit(upright, (256, 256), method=Image.Resampling.LANCZOS)
    thumbnail.save("thumbnail.webp", quality=85)

Blanket is alpha software. It supports L, RGB, and RGBA images, with limited indexed P support. See Pillow interoperability for integration with Pillow.

Find your next step