Expand description

A crate that provides several perceptual hashing algorithms for images. Supports images opened with the image crate from Piston.

let image1 = image::open("image1.png").unwrap();
let image2 = image::open("image2.png").unwrap();
     
let hasher = HasherConfig::new().to_hasher();

let hash1 = hasher.hash_image(&image1);
let hash2 = hasher.hash_image(&image2);
     
println!("Image1 hash: {}", hash1.to_base64());
println!("Image2 hash: {}", hash2.to_base64());
     
println!("Hamming Distance: {}", hash1.dist(&hash2));

Structs

Generates hashes for images.
Start here. Configuration builder for Hasher.
A struct representing an image processed by a perceptual hash. For efficiency, does not retain a copy of the image data after hashing.

Enums

Available Sampling Filters.
Hash algorithms implemented by this crate.
Error that can happen constructing a ImageHash from bytes.

Traits

Image types that can be diffed.
Interface for types used for storing hash data.
Shorthand trait bound for APIs in this crate.