Commit Graph

53 Commits

Author SHA1 Message Date
evanoberholster
571ae3865a
Performance improvement ()
* 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
Dong-hee Na
4662ac9320
github: Update CIs () 2022-05-26 22:58:40 +09:00
Dong-hee Na
9b83979be0 README: Release v1.1.0 2022-05-26 18:38:43 +09:00
evanoberholster
45da7a6fef
Refactored Perceptionhash for performance ()
* 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
3dc330e270
github: Fix github action () 2020-12-28 02:35:04 +09:00
Dong-hee Na
b94d000de0 github: Create FUNDING.yml 2020-12-26 19:21:45 +09:00
Dong-hee Na
5e074e7151
goimagehash: Update README.md () 2020-10-03 15:33:01 +09:00
Dong-hee Na
bcad56853e
.github: Add go 1.14.x () 2020-09-30 22:43:22 +09:00
Dong-hee Na
3496d08ef7
github: Add latest version () 2020-02-11 11:19:25 +09:00
Rafael Cossovan
c9ea1a6596 Update dependencies from go module and dep tool. () 2019-12-07 23:29:03 +09:00
Dong-hee Na
daf77da1c6
Update github action to use gomodule () 2019-12-07 10:50:05 +09:00
Dong-hee Na
cd85f5fb0f README: Update 2019-12-06 15:48:16 +09:00
Dong-hee Na
3a999480e9
gh-37: Add workflow file for Github Action ()
* Setting up Github Action

* remove Travis CI

* Update README.md
2019-12-06 15:36:49 +09:00
Eric Levine
8be960c20e Fix typo on the GoDoc for LoadImageHash. ()
The GoDoc incorrectly specified that the LoadImageHash function produces an ExtImageHash. This function produces an ImageHash, so this corrects the typo.
2019-11-26 14:07:35 +09:00
Berkant Ipek
9343c64188 Add go.mod. ()
* Add go.mod.

* Remove `go` directive in go.mod.
2019-11-22 06:34:50 +09:00
Dong-hee Na
0069c5147b
.travis.yml: Update .travis.yml () 2019-10-01 00:29:20 +09:00
dirtsea
32a1fdcbe8 Fix typo in README.md () 2019-09-08 01:03:41 +09:00
Dong-hee Na
6392b0bac9
all: Add more test ()
* hashcompute_test: Add benchmark

* all: Add more test
2019-03-19 23:10:52 +09:00
Dong-hee Na
14aa1e136f
dct: Improve DCT1D to O(nlogn) algorithm ()
* 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
c61f6c69fb .travis.yml: Update travis 2019-03-19 00:06:41 +09:00
Dong-hee Na
138a26ae46 README.md: Update README.md 2019-03-19 00:06:12 +09:00
Dong-hee Na
3e058be50d
hashcompute: Update Extend API ()
* 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 () 2019-03-18 21:40:16 +09:00
Dong-hee Na
0876a2adc2
dct: Process dct algorithm in multiple goroutine () 2019-03-18 21:09:40 +09:00
Dong-hee Na
47321c08d3
imagehash: Create a new API Bits() () 2019-03-17 15:42:07 +09:00
Dong-hee Na
84eb1859d0
imagehash: Add new serialization API dump/load. ()
Create a new APIs for serializing purpose which can use
standard io.Reader/io.Writer APIs.

ToString() API will be remain for debugging purpose and
ExtImageHashFromString, ImageHashFromString will be removed after next
version.

- New APIs are added: LoadExtImageHash, LoadImageHash, xxxHash.Dump
- These APIs are deprecated: ExtImageHashFromString, ImageHashFromString
2019-03-17 11:34:56 +09:00
Dong-hee Na
7558e00b90 README.md: Update 2019-03-16 23:23:56 +09:00
Dong-hee Na
20cafe6017
hashcompute: Fix 64bits unaligned size case () 2019-03-16 23:15:32 +09:00
Dong-hee Na
58a4aa88ab
hashcompute: Fix bit set index () 2019-03-16 17:22:57 +09:00
Dong-hee Na
5f00903fec README.md: Update README.md 2019-03-16 01:01:25 +09:00
Dong-hee Na
bafc8a21c3 readme: Update readme.md 2019-03-16 00:54:05 +09:00
Dong-hee Na
5f56e8609c
DifferenceHashExtend: Implement DifferenceHashExtend () 2019-03-16 00:47:57 +09:00
Dong-hee Na
b535580cae
AverageHashExtend: Implement AverageHashExtend and fix bugs () 2019-03-16 00:26:38 +09:00
Alex
c41a59a872 add PerceptionHashExtend function ()
goimagehash: Implement PerceptionHashExtend
2019-02-08 18:02:25 +09:00
Dong-hee Na
81672d7016 .travis.yml: Update Go 1.11 2018-10-01 17:34:07 +09:00
Dong-hee Na
d41c941ded transforms: Fix the logic which getting a size of image 2018-08-19 16:35:17 +09:00
Dong-hee Na
9435cae35d
Update README.md 2018-05-12 00:53:41 +09:00
Dong-hee Na
6995fa9b0c goimagehash: Add test 2018-05-10 11:54:51 +09:00
Dong-hee Na
e588da1f67 goimagehash: Update README.md 2018-05-09 09:37:49 +09:00
Dong-hee Na
1903317145 goimagehash: Fix quickselect algorithm to pick median value. 2018-05-08 13:33:43 +09:00
Dominik Honnef
ad2b6ded3b Use bits.OnesCount64 when available
Benchmark on i7-2600k, which has the POPCNT instruction:

name                 old time/op  new time/op  delta
DistanceIdentical-8  5.08ns ± 0%  1.01ns ± 1%  -80.07%  (p=0.008 n=5+5)
DistanceDifferent-8  81.5ns ± 2%   1.0ns ± 0%  -98.76%  (p=0.016 n=5+4)

Benchmark on Cavium Octeon, a MIPS64 platform with no dedicated
instruction:

name                 old time/op  new time/op  delta
DistanceIdentical-2   120ns ± 6%   144ns ± 5%  +19.93%  (p=0.008 n=5+5)
DistanceDifferent-2   656ns ± 4%   144ns ± 4%  -78.09%  (p=0.008 n=5+5)
2018-05-02 23:52:38 +09:00
Dong-hee Na
7f23d56ee5 goimagehash: Add badge 2018-04-01 16:55:03 +09:00
Dong-hee Na
f148dae87d goimagehash: Add codecov 2018-04-01 16:53:44 +09:00
Dong-hee Na
be737c1d73 travis: Update golang version. 2018-03-02 18:38:42 +09:00
Dong-hee Na
dbc186a437 Update AUTHORS 2017-11-17 14:33:21 +09:00
Gustavo Brunoro
71a79d6ce7 added serialization unit tests 2017-11-17 09:56:54 +09:00
Gustavo Brunoro
139dd89622 renames hashKind to Kind on unit test 2017-11-17 09:56:54 +09:00
Gustavo Brunoro
40b64eda79 adds hex serialization methods to ImageHash
The ToString and FromString methods create a string representation
of an ImageHash, following the format:
`<first letter of type>:<hex representation of hash`
2017-11-17 09:56:54 +09:00
Dong-hee Na
22bcbf7685 goimagehash: Make go report card happy. 2017-08-04 01:05:13 +09:00
Dong-hee Na
b969cb59dc goimagehash: Fix typo. 2017-08-03 22:40:42 +09:00