diff --git a/README.md b/README.md index ec3740d..59a2129 100644 --- a/README.md +++ b/README.md @@ -11,6 +11,8 @@ Major (semantic) versions have their own repositories and are mutually incompati | 3 | [images3](https://github.com/vitali-fedulov/images3) | good, but less optimized | | 1, 2 | [images](https://github.com/vitali-fedulov/images) | good, legacy code | +[Go doc](https://pkg.go.dev/github.com/vitali-fedulov/images4) - for full code documentation. + ## Example of comparing 2 images ```go @@ -44,8 +46,6 @@ func main() { ## Main functions -Full code documentation: [Go doc](https://pkg.go.dev/github.com/vitali-fedulov/images4) - - `Open` decodes JPEG, PNG and GIF. But other types can be opened with third-party decoders, because the input to func 'Icon' is Golang image.Image. [Example fork](https://github.com/Pineapples27/images4) (not mine) expanded with support of WEBP images. - `Icon` produces an image hash-like struct called "icon", which will be used for comparision. Side note: name "hash" is reserved for true hash tables in related package for faster comparison [imagehash](https://github.com/vitali-fedulov/imagehash). @@ -83,4 +83,4 @@ Images are resampled and resized to squares of fixed size called "icons". Euclid **To considerably accelerate image decoding** you can generate icons for embedded image thumbnails. Specifically, many JPEG images contain [EXIF thumbnails](https://vitali-fedulov.github.io/similar.pictures/jpeg-thumbnail-reader.html). Packages to read thumbnails: [1](https://github.com/dsoprea/go-exif) and [2](https://github.com/rwcarlsen/goexif). A note of caution: in rare cases there could be [issues](https://security.stackexchange.com/questions/116552/the-history-of-thumbnails-or-just-a-previous-thumbnail-is-embedded-in-an-image/201785#201785) with thumbnails not matching image content. EXIF standard specification: [1](https://www.media.mit.edu/pia/Research/deepview/exif.html) and [2](https://www.exif.org/Exif2-2.PDF). -**An alternative method to increase precision** instead of func 'CustomSimilar' is to generate icons for image sub-regions and compare those icons. \ No newline at end of file +**An alternative method to increase precision** instead of func 'CustomSimilar' is to generate icons for image sub-regions and compare those icons.