Commit Graph

20 Commits

Author SHA1 Message Date
Timmy Welch
003cba6e1b Fix data race 2024-08-10 16:08:38 -07:00
Timmy Welch
88dd4778eb Fix bufPool 2024-08-05 13:56:02 -07:00
Timmy Welch
5cd3cb8dcf staticcheck fixes 2024-08-04 18:24:04 -07:00
Timmy Welch
aa1fe89e96 Performance
Reduce allocations by re-using uint8 slices where possible
Use github.com/disintegration/imaging for resizing
Add a module option to skip RGB conversion for YCbCr images
2024-08-04 17:21:58 -07:00
Timmy Welch
cb5a8237c4 Update module path 2024-05-01 18:06:48 -07:00
Timmy Welch
1ca06a1968 Make compliant with python imagehash 2024-04-05 17:29:30 -06:00
Wu Tingfeng
d68e89bd8f
Increase test coverage to 96.6% (#61)
* gitignore *.html for test coverage reports

* fix typos

* Increase hashcompute.go test coverage to 100 percent

* Add new Go versions. Upgrade GitHub Actions.

* Add tests for missing ext hashes

* Add test for hashing non-hexadecimal string

* Add tests for loading empty bytes buffer

* Run go fmt

* Fix comments

* Fix comments

* Fix spelling

* fix actions versions

* Upgrade to actions/setup-go@v4

* Add minimum Go version for go.mod
2023-05-03 23:52:14 +09:00
evanoberholster
571ae3865a
Performance improvement (#56)
* Performance improvement

* Added support fpr DCT2DFast256

* Update hashcompute.go

Co-authored-by: Dong-hee Na <donghee.na92@gmail.com>

Co-authored-by: Evan Oberholster <eroberholster@gmail.com>
Co-authored-by: Dong-hee Na <donghee.na92@gmail.com>
2022-09-08 15:20:33 +09:00
evanoberholster
45da7a6fef
Refactored Perceptionhash for performance (#54)
* refactored Perceptionhash for performance

* update AUTHORS.md

* replaced PerceptionHash algorithm

* Update hashcompute_test.go

Co-authored-by: Dong-hee Na <donghee.na92@gmail.com>

* Update hashcompute_test.go

Co-authored-by: Evan Oberholster <eroberholster@gmail.com>
Co-authored-by: Dong-hee Na <donghee.na92@gmail.com>
2022-05-26 15:56:47 +09:00
Dong-hee Na
14aa1e136f
dct: Improve DCT1D to O(nlogn) algorithm (#29)
* hashcompute_test: Add benchmark

* dct: Improve DCT1D to O(nlogn) algorithm

AS-IS:
BenchmarkPerceptionHash-8  500  2893930 ns/op  456698 B/op  4455 allocs/op

TO-BE:
BenchmarkPerceptionHash-8  2000  890306 ns/op  456382 B/op  4455 allocs/op

reference: DCT type II, unscaled. Algorithm by Byeong Gi Lee, 1984.
2019-03-19 13:52:44 +09:00
Dong-hee Na
3e058be50d
hashcompute: Update Extend API (#28)
* hashcompute: Update Extend API

- AverageHashExtend -> ExtAverageHash
- PerceptionHashExtend -> ExtPerceptionHash
- DiffrenceHashExtend -> ExtDiffrenceHash

* imagehash: Update load api
2019-03-18 23:53:09 +09:00
Dong-hee Na
161b6f5676
hashcompute: Redesign XXXHashExtend API interface (#27) 2019-03-18 21:40:16 +09:00
Dong-hee Na
47321c08d3
imagehash: Create a new API Bits() (#25) 2019-03-17 15:42:07 +09:00
Dong-hee Na
20cafe6017
hashcompute: Fix 64bits unaligned size case (#23) 2019-03-16 23:15:32 +09:00
Dong-hee Na
58a4aa88ab
hashcompute: Fix bit set index (#22) 2019-03-16 17:22:57 +09:00
Dong-hee Na
5f56e8609c
DifferenceHashExtend: Implement DifferenceHashExtend (#21) 2019-03-16 00:47:57 +09:00
Dong-hee Na
b535580cae
AverageHashExtend: Implement AverageHashExtend and fix bugs (#20) 2019-03-16 00:26:38 +09:00
Alex
c41a59a872 add PerceptionHashExtend function (#18)
goimagehash: Implement PerceptionHashExtend
2019-02-08 18:02:25 +09:00
Dong-hee Na
2b9c664be8 Update docs. 2017-07-31 23:29:35 +09:00
Dong-hee Na
7aba8954cd [goimagehash] First implement. 2017-07-31 22:47:14 +09:00