img2color

command module
v0.0.0-...-70b7d6b Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 22, 2019 License: MIT Imports: 12 Imported by: 0

README

img2color

Usage

Usage of img2color.go:
  -image string
      Image to be processed
  -k int
      Number of colors to find (default 5)
  -mode string
      Output option (default "palette")
  -n int
      Number of rounds for computation (default 10)
  -o string
      Output file name (default "image.png")
  -t int
      Number of threads to use for computation (default 1)

Examples

Testimage

This image is used for tests. It was provided by https://www.pexels.com . test image

Color-Palette output(k=5):

Main colors are shown in a palette next to the image.

go run img2color.go -image testimage.jpeg -k 6 -t 10 -mode palette

test image with color-palette

Color-Silhouette output(k=6):

In this example every pixel is colored in its nearest main-color.

go run img2color.go -image testimage.jpeg -k 6 -t 10 -mode silhouette

test image with color-silhouette

Color-Silhouette output(k=12):

In this example every pixel is colored in its nearest main-color.

go run img2color.go -image testimage.jpeg -k 12 -t 10 -mode silhouette

test image with color-silhouette

html-color-code
go run img2color.go -image testimage.jpeg -k 6 -t 10 -mode html
Processing: 100.00%
Done.
#ba6223
#72dae8
#b9edf3
#f9fdfd
#09a4b8
#252827
html

Kmeans-Algorithm

The kmeans algorithm is used to calculate k mean points of a set of points. In each computation step every point is assigned to the nearest mean point. Then of every (k) subset a new mean point is calculated. The mean point does not have to be in the subset.

In this project we use the color of each pixel as a 3 dimensional point, and thus k mean (or dominant) colors are calculated.

Notes

Python implementation

The python implementation (img2color.py) is no longer supported and discontinued. It was much slower than the Go implementation.

Documentation

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL