Rust Image processing

Open-source Rust projects categorized as Image processing

Top 23 Rust Image processing Projects

Image processing
  1. Graphite

    An open source graphics editor for 2025: comprehensive 2D content creation tool suite for graphic design, digital art, and interactive real-time motion graphics — featuring node-based procedural editing

    Project mention: Malleable software: Restoring user agency in a world of locked-down apps | news.ycombinator.com | 2025-06-10

    A tool which looks at this sort of thing which was mentioned here recently:

    https://news.ycombinator.com/item?id=44118159

    but which didn't seem to get much traction is:

    https://pontus.granstrom.me/scrappy/

    but it pretty much only works for JavaScript programmers and their friends (or folks interested in learning JavaScript).

    Other tools which I'd like to put forward as meriting discussion in this context include:

    - LyX --- making new layout files allows a user to create a customized tool for pretty much any sort of document they might wish to work on --- a front-end for LaTeX

    - pyspread --- every cell being either a Python program or the output of a program, and the possibility of cells being an image allows one to do pretty much anything without the overhead of making or reading a file

    - Ipe https://ipe.otfried.org/ --- an extensible drawing program, this really needs a simpler mechanism for that and I'd love to see a tool in the vector drawing space which addressed that --- perhaps the nascent https://graphite.rs/ ?

  2. InfluxDB

    InfluxDB – Built for High-Performance Time Series Workloads. InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.

    InfluxDB logo
  3. image

    Encoding and decoding images in Rust (by image-rs)

    Project mention: SonicScan - A Music Fingerprinting and Identification App | dev.to | 2025-05-21

    I started by exploring the audio processing part and then I discovered Symphonia which is a rust crate for audio processing. First I build a function to extract mono audio from a file using it and kept a frequency limited to 41.1 KHz as it is the maximum frequency that the human ear can hear. I also implemented functions to downsample the audio and normalise it. Then I visualized the spectrogram of the audio using image.

  4. oxipng

    Multithreaded PNG optimizer written in Rust

    Project mention: fd: A simple, fast and user-friendly alternative to 'find' | news.ycombinator.com | 2025-03-19

    While mostly true, there's a large problem with lots of these Rust CLI tools (and I use some of them, don't misunderstand me): they often discard the UNIX philosophy in favour of newbie friendliness and glitter.

    For example, ripgrep shouldn't merge find and grep (actually, I use a personal wrapper around `find ... -exec grep ... {} +` because my only beef with this is that find's syntax to exclude stuff is horrible, https://git.sr.ht/~q3cpma/scripts/tree/master/item/find_grep). Or you see something like https://github.com/shssoichiro/oxipng/issues/629 because people don't even know how to use xargs...

  5. photon

    ⚡ Rust/WebAssembly image processing library (by silvia-odwyer)

    Project mention: Photon: Rust/WebAssembly image processing library faster than VIPs and PIL | news.ycombinator.com | 2025-04-10

    That's some pretty aggressive editorializing in the title. The linked page doesn't once use "faster", "VIPS" or "PIL".

    The page does link to benchmarks [0] but Photon isn't the clear victor. It's slower on the PNG benchmark but faster on the JPG benchmark. There are no benchmarks for PIL.

    It's an interesting project but the differentiating factor is more portability and security than speed. WASM means that this can be run in a nice sandbox where its ability to harm the system is drastically reduced.

    [0]: https://github.com/silvia-odwyer/photon/wiki/Benchmarks

  6. opencv-rust

    Rust bindings for OpenCV

  7. imageproc (PistonDevelopers)

    Image processing operations

  8. pipeless

    An open-source computer vision framework to build and deploy apps in minutes

  9. Stream

    Stream - Scalable APIs for Chat, Feeds, Moderation, & Video. Stream helps developers build engaging apps that scale to millions with performant and flexible Chat, Feeds, Moderation, and Video APIs and SDKs powered by a global edge network and enterprise-grade infrastructure.

    Stream logo
  10. menyoki

    Screen{shot,cast} and perform ImageOps on the command line 🌱 🏞️

  11. noaa-apt

    NOAA APT weather satellite image decoder, for Linux, Windows, RPi 2+, OSX and Android+Termux

  12. ffmpeg-sidecar

    Wrap a standalone FFmpeg binary in an intuitive Iterator interface. 🏍

  13. lust

    A fast, auto-optimizing image server designed for high throughput and caching; Now that is hot.

  14. zune-image

    A fast and memory efficient image library in Rust

    Project mention: Photon: Rust/WebAssembly image processing library faster than VIPs and PIL | news.ycombinator.com | 2025-04-10

    I just wanted to give a huge shout-out to the excellent zune-jpeg library: https://github.com/etemesi254/zune-image/tree/dev/crates/zun...

    Most Python libraries like PIL rely on some flavor of the venerable libjpeg (e.g. libjpegturbo, mozjpeg) which makes it the de-facto standard for loading jpegs.

    A notable downside is that it's written in C and there have been more than a few exploits found inside it over the years. While it's pretty damn mature by now and there has been a huge amount of fuzzing done to tease out remaining issues, fact remains that it's yet another attack vector that makes your resident security guy or gal raise a few eyebrows.

    With zune-jpeg you get a fully memory-safe implementation that can act as a drop-in replacement, and when you turn on the (admittedly experimental) SIMD support for things like the IDCT and color-space conversion it's as fast, or in places even faster, than libjpegturbo/mozjpeg, even on very large (e.g. 4k by 4k) images.

  15. rimage

    This is CLI tool inspired by squoosh!

  16. img-hash

    A Rust library for calculating perceptual hash values of images

  17. dipc

    Convert your favorite images and wallpapers with your favorite color palettes/themes

  18. Mosaic

    Takes a folder of images (as a palette), and an image, and figures out how to tile the palette to resemble the image! (by ahhhh6980)

  19. dali

    An image processor service (by olxgroup-oss)

  20. RapidRAW

    A beautiful, non-destructive, and GPU-accelerated RAW image editor built with performance in mind.

    Project mention: RapidRAW: A beautiful, non-destructive, and GPU-accelerated RAW image editor | news.ycombinator.com | 2025-07-08

    I mean, it's making 720px width jpg thumbnails using the CPU https://github.com/CyberTimon/RapidRAW/blob/fc21ede729b45d97...

    And then it's sending these thumbnails back from rust to javascript as base64 encoded strings, not using a shared buffer: https://github.com/CyberTimon/RapidRAW/blob/fc21ede729b45d97...

    This is the sorta stuff that native apps mostly don't do. They don't base64 an image just to send it to a different app (react) to base64 decode it (via a third app, webkit) via a slow ipc mechanism (tauri) from itself to itself, allocating 6x the chunks of memory along the way for one bit of data (the 6x are: raw data in rust, base64 data in rust, json encoded base64 in rust for tauri ipc, json encoded base64 in javascript, base64 in javascript, raw image data in webkit to finally view).

  21. kmeans-colors

    k-means clustering library and binary to find dominant colors in images

  22. tarsila

    Pixel art and spritesheet editor

  23. quadim

    High-performance Quadtree image compression/stylization, 100+FPS on modern computers and avoiding ugly non-squares 💢

  24. stegano-rs

    A cross-platform command line tool for steganography focused on performance and simplicity written in rust-lang.

  25. imageproc

    An advanced image processing library for Rust. (by chyh1990)

  26. SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020).

Rust Image processing discussion

Log in or Post with

Rust Image processing related posts

  • CubeCL: GPU Kernels in Rust for CUDA, ROCm, and WGPU

    6 projects | news.ycombinator.com | 23 Apr 2025
  • Photon: Rust/WebAssembly image processing library faster than VIPs and PIL

    3 projects | news.ycombinator.com | 10 Apr 2025
  • Dynamic watermarking on the JVM

    1 project | dev.to | 4 Jul 2024
  • Vision AI agents for any task

    1 project | dev.to | 30 Apr 2024
  • Show HN: OS Image processing API running on edge functions using Rust and WASM

    3 projects | news.ycombinator.com | 4 Apr 2024
  • Daft: Distributed DataFrame for Python

    2 projects | news.ycombinator.com | 29 Feb 2024
  • Transitioning From PyTorch to Burn

    5 projects | dev.to | 14 Feb 2024
  • A note from our sponsor - InfluxDB
    www.influxdata.com | 11 Jul 2025
    InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now. Learn more →

Index

What are some of the best open-source Image processing projects in Rust? This list will help you:

# Project Stars
1 Graphite 18,764
2 image 5,354
3 oxipng 3,360
4 photon 3,163
5 opencv-rust 2,222
6 imageproc (PistonDevelopers) 862
7 pipeless 751
8 menyoki 653
9 noaa-apt 618
10 ffmpeg-sidecar 416
11 lust 409
12 zune-image 399
13 rimage 350
14 img-hash 321
15 dipc 287
16 Mosaic 264
17 dali 179
18 RapidRAW 158
19 kmeans-colors 151
20 tarsila 148
21 quadim 139
22 stegano-rs 118
23 imageproc 107

Sponsored
InfluxDB – Built for High-Performance Time Series Workloads
InfluxDB 3 OSS is now GA. Transform, enrich, and act on time series data directly in the database. Automate critical tasks and eliminate the need to move data externally. Download now.
www.influxdata.com