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.
Only breaks cached data, so not doing anything to the minor version.
Should add some commands to delete cached data if it causes an error
on reading. Namely the cached matrix data as we can tell if thats
corrupt thanks to the compression. Image data can be corrupted and
we wouldn't really know. ;(
Compression using flate2 has been added to the caching controller
Made the hash code call for cached matricies before calculating them again if
possible
Changed the FFI tests to be a bit more dynamic. That said, I just noticed that
python hates unsigned 64bit numbers. Need to find a way around this. I
should be able to compare the native Rust code against the python FFI and
get the same results for a specific file.
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!!!