Geen omschrijving

Kirk Trombley 0bc530c606 Compute real metrics so scaling works right 3 jaren geleden
.gitignore 7ca6f6cf28 Ignore big-pngs dir 3 jaren geleden
README.md ce05cae0e5 Update docs 3 jaren geleden
database-cam02.csv aae3fad879 Update databases 3 jaren geleden
database.csv 8231b34d4c Generate dbs from big pngs 3 jaren geleden
database.js c554364c28 Improve kmeans logic, write proportions to js db 3 jaren geleden
explore.py 3af774f436 Misc cleanup 3 jaren geleden
ingest.py c554364c28 Improve kmeans logic, write proportions to js db 3 jaren geleden
math.md ce05cae0e5 Update docs 3 jaren geleden
nearest.css 3ebb9c085d Improve definition layout and limit responsiveness 3 jaren geleden
nearest.html 3ebb9c085d Improve definition layout and limit responsiveness 3 jaren geleden
nearest.js 0bc530c606 Compute real metrics so scaling works right 3 jaren geleden
nearest.py 9d01b436fc Update nearest script for CAM02, fix n=1 bug 3 jaren geleden
pngs.md 0d047c1960 Split up README, add more math docs 3 jaren geleden
requirements.txt 73cfcfb8bf Add k-means computation for web version 3 jaren geleden

README.md

Pokemon Color Search

Utility for quickly finding pokemon by the sprite's "distance" from a given color.

See also explanations of the underlying math and which images are used.

Included Files

  • ingest.py generates database.csv which is needed for nearest.py, database-cam02.csv which is an alternative database for nearest.py using the CAM02-UCS color space, and database.js which is needed for nearest.html. Requires numpy, Pillow (PIL), and colorspacious.
  • nearest.py provides multiple options for finding pokemon "near" a color. No external dependencies, but a database must be provided. If CAM02-UCS is being used, this requires colorspacious and numpy.
  • nearest.html and nearest.js allow you to use a front-end in your browser, by opening nearest.html directly. The implementation is somewhat lazy to avoid the use of an actual build system, and statically imports the dependencies Fuse.js, d3-color, and d3-cam02. Requires database.js to be present, meaning ingest.py must be run first, unless you are using the included database.
  • explore.py traverses a subset of the 24-bit RGB color space and finds the pokemon that most closely match each color, and produces best.csv and counts.csv as results.
  • database.csv, database-cam02.csv, and database.js are included as well, built from the set of pngs detailed in pngs.md.