Expand description
A crate that provides several perceptual hashing algorithms for images. Supports images opened with the image crate from Piston.
use image_hasher::{HasherConfig, HashAlg};
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§
- Hasher
- Generates hashes for images.
- Hasher
Config - Start here. Configuration builder for
Hasher
. - Image
Hash - A struct representing an image processed by a perceptual hash. For efficiency, does not retain a copy of the image data after hashing.
Enums§
- BitOrder
- The bit order used when forming the bit string of the hash
- Filter
Type - Available Sampling Filters.
- HashAlg
- Hash algorithms implemented by this crate.
- Invalid
Bytes Error - Error that can happen constructing a
ImageHash
from bytes.