Drew Short
8c7bc059f6
Code cleanup
* Renamed the FFI get_phashes to get_pihashes to reduce name collision with the phash implementation
5 years ago
Drew Short
8076a5281f
Remove lifetimes and internalize copies of strings
* Broke testing out into more distinct tests
5 years ago
Drew Short
e4b72b2e16
Added tests using lib with the cache disabled
5 years ago
Drew Short
f196c3a722
Extract common &CStr -> &str code and reduce allowed hamming distance
5 years ago
Drew Short
b90d10a6cf
cleanup imports
5 years ago
Drew Short
e3560fb7bf
Address cargo warnings
5 years ago
Drew Short
3206c81967
Reformatted project with RustFMT
5 years ago
Drew Short
fa97ecc742
Code cleanup and addressing usize vs u32 issues
5 years ago
Drew Short
5726b1af3f
Working on passing structs through the cffi
6 years ago
Drew Short
725f22f732
Updated libraries to latest versions.
* Breaking change, new hashes are computed as a result of the underlying image library update
6 years ago
Drew Short
961953b3d1
Resolving merge conflicts
7 years ago
Drew Short
487401a45a
Rustfmt and code cleanup
7 years ago
Drew Short
88eac9cb29
Resolving test compilation issues
7 years ago
Drew Short
0b28ddeb4c
Fixed some formatting issues
Looking to do micro-benchmarks with the critereon library
8 years ago
Drew Short
54598246c8
Migrated to latest dependencies
Some math appears to have changed underneath so the tests needed to be
updated. I've added an inefficient test of the max hamming distance for
the comaparisons. I'm not happy with the dhash that is getting a hamming
distance of 4 on samples 03. However with 64 bits of information in the
hash, a hamming distance of 4 says that the hashes are within 6.25% similar,
which is very similar out of the 2^64 combinations of hashes.
8 years ago
Drew Short
e0bb7d6592
Fixed the FFI implementation. Updated the python FFI example to reflect the new changes.
8 years ago
Drew Short
60f7015937
Reverted image library. It was no longer processing jpg images. Added some saftey features to opening images. Cleaned up the library calls. Finished the lib conversion of PIHash struct. FFI stuff missing, that will come in another point release to the library.
8 years ago
Drew Short
ebd2fdaa75
Modularized some code. Changed API to use a PIHash library struct for maintaining the cache information. FFI code currently broken, will bring back next version after I figure out how to pass pointers to Rust structs around.
8 years ago
Drew Short
36cbc8d64d
Changed the exectable to print phash info for a single file, or print the similar images to the first when passed more than one image
8 years ago
Drew Short
3073006ef4
Updated dependency versions
8 years ago
Drew Short
dc8453dc67
Ran rustfmt
8 years ago
Drew Short
e0a951ee3c
Cleanup
8 years ago
Drew Short
188fbe9101
Converted hash.rs into a module. Refactored lib.rs and the tests within.
8 years ago
Drew Short
1d408c2905
Working on allowing the cache to be turned off
8 years ago
Drew Short
6a27b548fd
Introduced the concept of a cache_version so that we can change the cache style without segfaulting existing deployments.
8 years ago
Drew Short
b543cb397e
Moved the cache into a struct
8 years ago
Drew Short
9166422065
FFI Work
8 years ago
Drew Short
58579b2dcd
FFI Interface methods and tests
Added FFI interface methods to the library
Added a set of tests for the FFI. currently only the python one is working as intended. the c one isn't complete yet.
Need to add example tests for java, ruby, go?...
Woot! FFI!!!
8 years ago
Drew Short
23f0eec0f4
Externalizing
Added pub extern methods to the library to expose as a c api
set cargo to build a dynamic library as well as an rlib for the included binary.
8 years ago
Drew Short
0d128cb8aa
Style changes
Changed the repo to ignore the rs.bk files produced by rustfmt
Ran RustFmt on the repository to cleanup the code
8 years ago
Drew Short
0f6574e7c7
Updates to caching and the unit tests to ensure this build runs.
9 years ago
Drew Short
7ed4752420
Same work for DHash and PHash. Also updating testing to the new model.
9 years ago
Drew Short
d25bd4db8e
Ported AHash to the new style for hashes. Set git to ignore sublime-workspace files
9 years ago
Drew Short
899b847850
Added rounding to the 2d DFT. Moved to using enums for precision.
9 years ago
Drew Short
9bff272fef
Refactoring the hashing code
9 years ago
Drew Short
5ef33aef97
Working simple caching of the images used to hash. Needs some additional work, but much better than on dry runs.
9 years ago
Drew Short
18d715ef1c
Working on a simple caching solution for already processed image buffers
9 years ago
Drew Short
412bb4dc60
Working interface with the binary being able to basic processing.
9 years ago
Drew Short
9f6423932c
Here come the phashes
9 years ago
Drew Short
e30125b8ca
Working on phash prep work. Resolved a bunch of warnings.
9 years ago
Drew Short
69cbd19ba1
Forgot to uncomment the ahash test and the directory select test from local testing.
9 years ago
Drew Short
65991e6755
Working dhash implementation and testing.
9 years ago
Drew Short
e6671fa3ce
Working on a testing fix. Also comitted a travis.yml to let travis build pihash.
9 years ago
Drew Short
ba86192900
Addition work and testing... Pretty sure there's some endianness weirdness still going on, have to test on x86 to confirm.
9 years ago
Drew Short
2849c529d4
Added full ahash test for sample_01. Renamed sample images for testing purposes. Working on a more comprehensive testing for ahashes.
9 years ago
Drew Short
bc229d478a
Changed product name to pihash for more convienient writing in functions. Updated the unit test to confirm that there are 12 test images
9 years ago
Drew Short
9f2b0d919e
Resized some images for the test. Updated the credits for the images. Added a test to confirm that we're reading files in the test directory.
9 years ago
Drew Short
20a439d173
Basic binary + library setup
9 years ago