Popularity
6.8
Growing
Activity
3.6
Stable
583
14
58
Programming language: Go
License: BSD 2-clause "Simplified" License
Tags:
Images
Latest version: v1.0.3
goimagehash alternatives and similar packages
Based on the "Images" category.
Alternatively, view goimagehash alternatives based on common mentions on social networks and blogs.
-
Primitive Pictures
Reproducing images with geometric primitives. -
imaginary
Fast, simple, scalable, Docker-ready HTTP microservice for high-level image processing -
pigo
Fast face detection, pupil/eyes localization and facial landmark points detection library in pure Go. -
bimg
Go package for fast high-level image processing powered by libvips C library -
gowitness
๐ gowitness - a golang, web screenshot utility using Chrome Headless -
smartcrop
smartcrop finds good image crops for arbitrary crop sizes -
go-opencv
Go bindings for OpenCV / 2.x API in gocv / 1.x API in opencv -
stegify
๐ Go tool for LSB steganography, capable of hiding any file within an image. -
geopattern
:triangular_ruler: Create beautiful generative image patterns from a string in golang. -
canvas
Cairo in Go: vector to raster, SVG, PDF, EPS, WASM, OpenGL, Gio, etc. -
draft
Generate High Level Cloud Architecture diagrams using YAML syntax. -
Angular 2 Image Gallery
Image Gallery built with Angular 15+, node.js and GraphicsMagick -
darkroom
An image proxy with changeable storage backends and image processing engines with focus on speed and resiliency. -
mergi
go library for image programming (merge, crop, resize, watermark, animate, ease, transit) -
steganography
Pure Golang Library that allows LSB steganography on images using ZERO dependencies -
fastimage
Finds the type and/or size of a remote image given its uri, by fetching as little as needed. -
webp-server
Simple and minimal image server capable of storing, resizing, converting and caching images. -
LookUp
:mag: Pure Go implementation of fast image search and simple OCR, focused on reading info from screenshots -
goimghdr
The imghdr module determines the type of image contained in a file for go -
scout
Scout is a standalone open source software solution for DIY video security.
Clean code begins in your IDE with SonarLint
Up your coding game and discover issues early. SonarLint is a free plugin that helps you find & fix bugs and security issues from the moment you start writing code. Install from your favorite IDE marketplace today.
Promo
www.sonarlint.org
Do you think we are missing an alternative of goimagehash or a related project?
README
goimagehash
Inspired by imagehash
A image hashing library written in Go. ImageHash supports:
Installation
go get github.com/corona10/goimagehash
Special thanks to
Usage
func main() {
file1, _ := os.Open("sample1.jpg")
file2, _ := os.Open("sample2.jpg")
defer file1.Close()
defer file2.Close()
img1, _ := jpeg.Decode(file1)
img2, _ := jpeg.Decode(file2)
hash1, _ := goimagehash.AverageHash(img1)
hash2, _ := goimagehash.AverageHash(img2)
distance, _ := hash1.Distance(hash2)
fmt.Printf("Distance between images: %v\n", distance)
hash1, _ = goimagehash.DifferenceHash(img1)
hash2, _ = goimagehash.DifferenceHash(img2)
distance, _ = hash1.Distance(hash2)
fmt.Printf("Distance between images: %v\n", distance)
width, height := 8, 8
hash3, _ = goimagehash.ExtAverageHash(img1, width, height)
hash4, _ = goimagehash.ExtAverageHash(img2, width, height)
distance, _ = hash3.Distance(hash4)
fmt.Printf("Distance between images: %v\n", distance)
fmt.Printf("hash3 bit size: %v\n", hash3.Bits())
fmt.Printf("hash4 bit size: %v\n", hash4.Bits())
var b bytes.Buffer
foo := bufio.NewWriter(&b)
_ = hash4.Dump(foo)
foo.Flush()
bar := bufio.NewReader(&b)
hash5, _ := goimagehash.LoadExtImageHash(bar)
}
Release Note
v1.0.3
- Add workflow for GithubAction
- Fix typo on the GoDoc for LoadImageHash
v1.0.2
- go.mod is now used for install goimagehash
v1.0.1
- Perception/ExtPerception hash creation times are reduced
v1.0.0
IMPORTANT goimagehash v1.0.0 does not have compatible with the before version for future features
- More flexible extended hash APIs are provided (ExtAverageHash, ExtPerceptionHash, ExtDifferenceHash)
- New serialization APIs are provided(ImageHash.Dump, ExtImageHash.Dump)
- ExtImageHashFromString, ImageHashFromString is deprecated and will be removed
- New deserialization APIs are provided(LoadImageHash, LoadExtImageHash)
- Bits APIs are provided to measure actual bit size of hash
v0.3.0
- Support DifferenceHashExtend.
- Support AverageHashExtend.
- Support PerceptionHashExtend by @TokyoWolFrog.
v0.2.0
- Perception Hash is updated.
- Fix a critical bug of finding median value.
v0.1.0
- Support Average hashing
- Support Difference hashing
- Support Perception hashing
- Use bits.OnesCount64 for computing Hamming distance by @dominikh
- Support hex serialization methods to ImageHash by @brunoro