image
oxipng
image | oxipng | |
---|---|---|
38 | 15 | |
5,330 | 3,305 | |
1.6% | 2.8% | |
9.2 | 8.6 | |
9 days ago | 8 days ago | |
Rust | Rust | |
Apache License 2.0 | MIT License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
image
-
SonicScan - A Music Fingerprinting and Identification App
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.
-
Transitioning From PyTorch to Burn
With the help of the image crate, loading an image from disk is fairly straightforward.
-
CVE-2023-4863: Heap buffer overflow in WebP (Chrome)
FTR there is a WebP decoder implementation in safe Rust in the image crate: https://github.com/image-rs/image
It used to be quite incomplete for a long time, but work last year has implemented many webp features. Chromium now has a policy of allowing the use of Rust dependencies, so maybe Chromium could start adopting it?
-
Porting a local app to Web
Hello! So I have a local app that I am currently running on desktop (windows). I'm using egui for the UI, and the program basically opens a folder, gets all the images in the folder, and then uses the image-rs library to resize and create a grid of images / some other operations.
- Setting the DPI of an image before saving it
-
png crate gets an ultrafast compression mode, up to 4x faster decompression
png is the de-facto standard Rust crate for reading and writing PNG images, used e.g. by the image crate.
-
What's everyone working on this week (12/2023)?
There's also a CLI to convert between formats. It uses the crate image.
-
The `exr` crate got up to 3x faster, even better performance coming soon
exr is a is a 100% Rust and 100% safe code library for reading and writing OpenEXR images. It is used by the popular image crate to read and write OpenEXR.
-
Announcing zune-jpeg: Rust's fastest JPEG decoder
We're currently looking for contributors to add support for zune-jpeg to the image crate. The image maintainers are open to it, but don't have the capacity to do it themselves. You can find more details here.
-
Does the rust image crate support paletted png?
It would be helpful to contribute to the general change towards an untyped buffer with runtime representations for color space information and fallible conversions. (https://github.com/image-rs/image/pull/1718). It's currently stalling on having too few eyeballs to judge the impact and need for that complexity.
oxipng
-
fd: A simple, fast and user-friendly alternative to 'find'
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...
- OxiPNG: Multithreaded PNG optimizer written in Rust
-
screen capture/snapshot utility with image optimization support/configurability
I have had good experiences with https://github.com/shssoichiro/oxipng . Although, I suspect this wouldn't give you nearly enough space savings as jpg.
- Ask HN: Small scripts, hacks and automations you're proud of?
-
Exported png image with color-to-alpha edit is huge
If you do want the file as a PNG (for transparency and a common format that's well supported), but don't want it so huge, consider something like oxipng. https://github.com/shssoichiro/oxipng
-
Name a program that doesn't get enough love!
oxipng, pngquant and svgcleaner — optimizing images
-
Losslessly Optimising Images
I wonder how `pngcrush` compares to `oxipng` (https://github.com/shssoichiro/oxipng).
Personally, I use `oxipng` if I want lossless compression. However, most of the time, I use `pngquant` instead, since it gives significant size reduction even at `99%` (I can't even distinguish between the original and reduced image).
pngquant --quality=99 --ext=.png --force file.png
-
Adobe plans to make Photoshop on the web free to everyone
Depending on your workflow it might make sense to export PNGs directly from Affinity and then reduce their size with a utility like Oxipng, which uses all your cores to find the best algorithm for each particular image.
- OptiPNG vs. PNGcrush vs. Gimp to Reduce PNG Size
-
Help processing massive videos (16k resolution)
Assuming your frames are PNG files, you could use a lossless optimizer like optipng to try if their size can be reduced. I prefer oxipng, which is faster and multithreaded, and seems to have more active development.
What are some alternatives?
opencv-rust - Rust bindings for OpenCV
imageproc (PistonDevelopers) - Image processing operations
rust-ndarray - ndarray: an N-dimensional array with array views, multidimensional slicing, and efficient operations
steganography - A simple steganography library written in rust