mirror of
https://github.com/simon987/fastimagehash.git
synced 2025-04-02 16:42:58 +00:00
libfastimagehash
WIP: Not ready for production use!
libfastimagehash
is a imagehash
replacement for C/C++.
See also:
- go bindings (with cgo).
- imagehash-web (Javascript version)
Example usage
#include <fastimagehash.h>
int main() {
unsigned char result[HASH_SIZE];
phash_file("image.jpeg", result, HASH_SIZE, HIGHFREQ_FACTOR);
}
Build from source
# Download dependencies
apt install libopencv-dev libfftw3-dev cmake
# Checkout source
git clone --recursive https://github.com/simon987/fastimagehash
# Build
cmake .
make
# Install as a system library
sudo make install
Built with
- opencv for image decoding & resizing
- wavelib for wavelet decomposition in
whash
(With additional CFLAGS) - fftw3 for DCT in
phash
- google/benchmark to measure performance
Disclaimer: The methods used to compute the image hashes
are identical to the imagehash
python library, however, due to
some slight differences in the way OpenCV vs Pillow images are resized,
the final image hashes are not always exactly the same.
Description
Languages
C++
61.7%
C
18.3%
CMake
10.2%
Python
9.8%