palette-from-image-ai README

The project's README from github.com/egotoadcitadel/palette-from-image-ai. As one markdown file: README.md.

AI Coloring Palette Image Generator banner


🎨 Overview

status platform license build version

palette-from-image-ai is a Windows desktop tool that reads any image — a screenshot, a photo, a game capture, a texture, a painting — and turns it into a usable color palette. Not five swatches scraped off a Wikipedia page either. The embedded vision model segments the image, clusters color by perceptual distance, weights each cluster by how much of the frame it actually owns, and emits a palette you can drop straight into a shader, a CSS file, an ASE swatch, a Godot theme, a clip-studio brush set, or a materials list.

It runs offline. It runs on one .exe. You extract the archive, double-click, and you're looking at a palette in under six seconds.

Category Details
Product name palette-from-image-ai
Type Standalone Windows desktop application (.exe)
Core engine On-device vision model + perceptual color quantizer
Input PNG, JPG, WEBP, BMP, TIFF, GIF, AVIF
Output HEX, RGB, HSL, LAB, ASE, GPL, CSS vars, JSON, PNG swatch sheet
Distribution GitHub landing page → download → extract → run
Install footprint Portable. No installer, no registry writes, no runtime deps
Year 2026 release line

The whole point is that palette extraction stopped being a toy when the model got good at understanding what's in the frame. A sunset photo doesn't hand you four near-identical oranges anymore — it hands you the horizon glow, the deep water, the sand shadow, and the cloud highlight as separate, meaningful tones.


📖 What is palette-from-image-ai

A glossary, because "palette" means different things to different people and this tool means all of them at once.

Term Explanation
Palette An ordered set of colors, usually 5–16, each with a role (dominant, accent, background, shadow, highlight).
Segmentation The model splitting an image into regions that belong together — sky vs. subject vs. ground — before sampling color.
Perceptual distance Measuring how different two colors look to a human eye, not how different their RGB numbers are. Uses CIEDE2000 in LAB space.
Cluster weight How much of the image a color family actually occupies, used to rank palette order.
Harmony mode Forcing the output toward a named scheme — analogous, complementary, triadic, or split-complement.
Role tagging Auto-labeling each swatch: this is the base, this is the accent, this is the dark you'll use for outlines.
Swatch sheet A rendered PNG of your palette with hex labels, ready to paste into a doc or Discord.

What you get out of it:


🧩 Key Features

Feature Description Benefit
Region-aware extraction Segments image, samples per region, merges perceptually No more near-duplicate swatches
Perceptual clustering CIEDE2000 in LAB, not naive RGB k-means Colors match what your eye sees
Role tagging Auto-labels base / accent / shadow / highlight Skip the guesswork
Harmony constraints Analogous, complementary, triadic, split-comp Palette looks intentional
12 export formats HEX, RGB, HSL, LAB, ASE, GPL, CSS, JSON, PNG, ACO, SKETCH, SVG Fits any pipeline
Batch mode Drop a folder, get a palette per image Whole asset packs in one pass
Palette diff Compare two palettes, see the delta Track art-direction changes
Locked swatches Pin a color, re-extract the rest around it Brand-color-safe
Eyeball sampler Click any pixel for exact value Manual override always available
GPU toggle Optional DX12 acceleration for big images 4K frame → palette in ~1.2s
Portable profile Settings live next to the .exe Move it on a USB stick
No telemetry Zero outbound calls Air-gap friendly

⬇️ Download

GET AI coloring palette-from-image 2

---

🧱 The Problem

You've lived every one of these.


🛠️ The Solution

Problem Solution
Near-duplicate swatches Perceptual clustering in LAB, deduped by CIEDE2000 threshold
Ignored accent colors Region segmentation weights small-but-distinct regions higher
Format lock-in 12 export formats including ASE, GPL, ACO, CSS, JSON
Uploaded images Fully offline; no network code compiled in
Re-extraction after edits Locked swatches — pin what stays, re-derive the rest
One-at-a-time workflows Batch mode: whole folder, one palette each
No role info Auto role-tagging with editable labels

🎯 Quick Start

  1. 🗂️ Extract the archive. Right-click the downloaded .zip, choose Extract All, pick a folder you own (Documents or a tools directory is fine).
  2. 🖱️ Run the .exe. Double-click it. Windows SmartScreen may show a warning on first run — click More info → Run anyway. No admin rights required.
  3. 🖼️ Drop an image in. Drag any PNG/JPG/WEBP onto the window, or use File → Open Image.
  4. 🎚️ Tune the palette. Slide the swatch count (5–16), pick a harmony mode if you want one, lock any color you want to keep.
  5. 📤 Export. Hit Export, choose your format, done. Or right-click the swatch strip → Copy as HEX.

That's the whole loop. First-run to exported palette is under a minute.


📦 Installation

1. Get the archive

Use the download link above. You'll receive a .zip containing the .exe and a models/ folder. Do not separate them — the vision model lives in models/.

2. Extract, don't run from inside the zip

Running the .exe directly from the zip viewer will fail because the model files can't be memory-mapped from a compressed container. Extract the whole folder first.

3. First launch

Double-click the .exe. On the first run, the app builds a small shader cache in ./cache/ — takes about 3 seconds. Every run after that is instant.

No installer. No PATH changes. No Python. No Node. Delete the folder and it's fully uninstalled.


🖥️ System Requirements

Component Minimum Recommended
OS Windows 10 21H2 (x64) Windows 11 23H2+ (x64)
CPU 4-core, SSE4.2 8-core, AVX2
RAM 4 GB 16 GB
GPU Integrated (DX11) Discrete DX12, 4 GB VRAM
Storage 450 MB free 1.2 GB free (SSD)
Display 1280×720 1920×1080 or higher
Input Mouse + keyboard + colorimeter (optional)
Runtime None None

The app runs entirely CPU-side if you don't have a DX12 GPU. Expect ~5–8s per 4K image on CPU, ~1.2s with GPU acceleration enabled.


📊 Comparison

Aspect Online palette sites Generic k-means scripts This Tool
Region awareness No No Yes — segmentation-based
Perceptual distance Varies Rarely Yes — CIEDE2000
Offline No Yes Yes
Export formats 2–4 1–2 12
Batch processing Paid tiers only Manual scripting Built-in
Swatch locking No No Yes
Harmony constraints Sometimes No Yes — 4 modes
Role tagging No No Yes
Speed (4K image) N/A (upload) 5–20s ~1.2s (GPU)

🧭 Feature Catalog

29 modules, grouped by what they actually do.

🎨 Extraction & Analysis

🎚️ Palette Control

📤 Export & Interop

⚙️ Workflow

🧪 Advanced


🚦 All Modules Status

Module Status Description
Segmenter ✅ Working Region splitting on all supported formats
Region Sampler ✅ Working Weighted-grid sampling per region
Perceptual Clusterer ✅ Working CIEDE2000 merge, tunable threshold
Dominance Ranker ✅ Working Area-weighted ordering
Vibrance Detector ✅ Working Accent flagging
Shadow/Highlight Extractor ✅ Working Boundary tone extraction
Harmony Engine ✅ Working 4 named schemes
Swatch Lock ✅ Working Pin-and-rederive
Eyeball Sampler ✅ Working Per-pixel picker
ASE Export ✅ Working Adobe Swatch Exchange v1.0
GPL Export ✅ Working GIMP palette format
ACO Export ✅ Working Photoshop legacy swatches
CSS Variables Export ✅ Working Ready-to-paste block
JSON Export ✅ Working Role + weight + hex
PNG Swatch Sheet ✅ Working Rendered card
SVG Swatch Sheet ✅ Working Vector version
Batch Folder Mode ✅ Working Multithreaded
Palette Diff ✅ Working Delta report
Preset Manager ✅ Working Named presets
CLI Mode ✅ Working Scriptable
Watch Folder ✅ Working Auto-process on file drop
GPU Acceleration ✅ Working DX12 path
Custom Distance Function ✅ Working CMC, CIE94, CIEDE2000
Threshold Override ✅ Working Exposed
Role Tagger ✅ Working Editable labels
Recent Palettes ✅ Working 20-item history
Portable Profile ✅ Working Local config
Reorder Drag ✅ Working Order preserved on export
Swatch Count Slider ✅ Working 5–16 range

⚠️ Known Issues

Issue Solution
SmartScreen warning on first run Click More info → Run anyway. The .exe is unsigned; a signed build is on the roadmap.
Palette looks flat on highly saturated images Lower the dedup threshold in Settings → Advanced to 2.0 and re-extract.
Batch mode stalls on network drives Copy images to a local folder first — the segmenter needs memory-mapped file access.
ASE file not showing in Photoshop Photoshop caches swatches. Restart Photoshop after importing.
GPU toggle greyed out Your GPU doesn't expose a DX12 compute queue. App runs CPU-only; no functional loss beyond speed.
Very large TIFFs (>200 MP) fail to open Downscale to under 100 MP first. The 16-bit TIFF path is on the roadmap.

❔ FAQ

Question Answer
Is it really offline? Yes. No network code is compiled into the binary. You can run it with the Wi-Fi card disabled.
Do I need an account? No. There's no account system, no login, no telemetry.
What formats can I feed it? PNG, JPG, WEBP, BMP, TIFF, GIF, AVIF. Multi-frame GIFs use the first frame.
Can I use it for commercial work? Yes. MIT license. Attribution appreciated but not required.
How many swatches should I pick? 5 for minimalist UI, 8 for general art direction, 12–16 for full texture work.
Why does the palette differ from a k-means script? Perceptual distance + region segmentation. K-means on RGB treats two visually identical oranges as different colors.
Can I script it? Yes — CLI mode. .exe --input foo.png --count 8 --format css --out palette.css.
Does it need admin rights? No. Portable, user-space, no registry writes.
Where are my settings saved? ./profile/ next to the .exe, unless you point it elsewhere in Settings → Storage.
Can I pin a brand color? Yes — add the swatch, click the lock icon, re-extract. The rest of the palette re-derives around it.
Why is the first launch slow? Shader cache build. ~3 seconds once, instant after.
Will there be a macOS or Linux build? The engine is portable; a Linux CLI build is on the roadmap. macOS is unlikely due to the DX12 path.

🧰 Usage Guidelines

Allowed Not allowed
Personal art and design work Redistributing the .exe under a different name
Commercial projects (MIT) Removing the license header from source
Game asset pipelines Selling the app as-is without modification
Texture / shader authoring Claiming authorship of the underlying vision model
Educational use and research Using it to scrape copyrighted images at scale

🩹 Changelog


💡 Tips for Best Results


FETCH AI coloring palette-from-ima

palette-from-image-ai exists because palette extraction deserves the same seriousness as the rest of your pipeline. The model reads the image the way you read it — regions, meaning, weight — and hands you a palette you can actually ship. Extract the folder, run the `.exe`, drop an image in. The rest is five seconds of clicking and a color set you'll keep.

palette-from-image-ai (egotoadcitadel/palette-from-image-ai)

Searching Database…

Что это такое?Это отдельное настольное приложение для Windows, которое извлекает из любого изображения чистую палитру цветов с ролями для каждого цвета, используя модель компьютерного зрения на самом устройстве и перцептивную кластеризацию цветов — без загрузки в облако и без подписки.
Это веб-инструмент для палитр или он работает локально на моём компьютере?Это полностью офлайн переносимое приложение — .exe для Windows: ни сервера, ни аккаунта, ни загрузки изображений. Всё работает на вашем компьютере.
Как его запустить?Скачайте .zip, распакуйте всю папку (не запускайте прямо из окна архиватора), затем дважды щёлкните по .exe — права администратора не нужны. При первом запуске примерно за 3 секунды создаётся небольшой кэш шейдеров, а все последующие запуски мгновенны.
Нужен ли установленный Python или другая среда выполнения?Нет. Приложение поставляется как один переносимый .exe с моделью компьютерного зрения в папке models/ — не нужны ни Python, ни Node, ни отдельная среда выполнения.
Есть версия для Mac или Linux?Нет — единственные указанные системные требования: Windows 10 21H2 и Windows 11 23H2+, обе версии x64, так что пока это только Windows.
Моё изображение куда-нибудь загружается?Нет — приложение не делает ни одного исходящего сетевого запроса и не собирает телеметрию, поэтому изображения и палитры полностью остаются на вашем компьютере.
Какие форматы экспорта поддерживаются?Двенадцать форматов, включая HEX, RGB, HSL, LAB, ASE, GPL, ACO, CSS-переменные, JSON, а также листы образцов в PNG или SVG, так что палитра сразу вставляется в Photoshop, GIMP, Godot или в CSS-файл.
Можно обработать сразу целую папку с изображениями?Да — пакетный режим папки (Batch Folder Mode) создаёт по одной палитре на каждое изображение во всей директории, а ещё есть режим командной строки, например: '.exe --input foo.png --count 8 --format css'.
Чем это отличается от обычного скрипта k-means для цветов?Сначала изображение разбивается на области, затем цвета кластеризуются по перцептивному расстоянию CIEDE2000 в пространстве LAB вместо «сырого» RGB, причём каждый образец взвешивается по доле кадра, которую он занимает, и автоматически получает роль — base, accent, shadow, highlight.
Можно закрепить один фирменный цвет и заново извлечь остальную палитру?Да — функция Swatch Lock фиксирует любой цвет и заново подбирает остальные образцы вокруг него. Это удобно, когда арт-директива меняется, а фирменный цвет должен остаться прежним.
Size
0.8 MB
Stars
300
Updated
CommitOct 13
Age
6d
Commits · 90 Days