This is a submission for the Hacktoberfest Open-Source AI Challenge Week 1: Touch Grass.
What I Built
Palette Walk is a small local prototype with one purpose: let a picture suggest an observation activity, then put the screen away.
The Python tool groups a picture's colors with scikit-learn K-means and produces a printable card. Each swatch has a prompt: notice a texture, compare light with shade, or sketch a small detail you might walk past. Take the card to an outdoor place you already know, leaving plants and wildlife undisturbed.
This prototype was prepared with an AI coding agent. It was built and tested on October 11, 2026. There has been no outdoor user trial; the demonstration uses an original geometric illustration, not a photograph of an actual walk.
Demo
Open the synthetic demonstration card.
The public demo is a precomputed output, not a browser photo analyzer. To generate a card from a PNG/JPEG you are authorized to use, run the Python tool locally. Its analysis does not send the image to a service. The generated card contains no source image, filename, EXIF or location.
Code
Source, pinned dependencies and tests.
python palette_walk.py --demo --out first-card
Create the environment and install requirements first; the README gives the exact commands. Open the generated HTML and use its print button. Browser printing and field use remain untested.
How I Built It
The open component is the algorithm that makes the palette: scikit-learn's K-means, an unsupervised machine-learning method. It fits up to three clusters on at most 4,096 sampled RGB pixels. It is not a generative model. The observation prompts are fixed text.
Why Does Open Innovation Matter?
The local workflow makes the tradeoff inspectable. Someone can change the sampling, cluster count or prompts without a hosted model, API key or account. Initial dependency installation requires internet access; analysis can then run locally. No serialized model is loaded.
The first test exposed a useful problem: resizing blended colors at the boundaries of the synthetic fixture. Switching to nearest-neighbor sampling preserved the source colors. Browser inspection caught misleading hue labels, which were corrected with a regression check. Five bounded tests now pass, covering known colors, source preservation, card privacy, monochrome input, transparent input, the byte limit and color labels.
Those checks do not establish performance on real photographs. RGB distance is not perceptually uniform; the sampled palette may miss small details, and changing light changes the colors. The tool identifies no objects or species and assesses no route, weather or outdoor safety. The next useful test would be whether someone actually finds the printed prompts helpful on a short walk.
The design goal is deliberately small: make the screen the shortest part of the activity. No users, revenue or field results are claimed.
Prize Categories
Overall challenge only. No partner-category technology is claimed.

Top comments (0)