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 桌面应用,利用本地运行的视觉模型和感知颜色聚类,从任意图片中提取出一套干净、带有角色标注的配色方案,全程不上传云端,也没有任何订阅费用。
这是网页版取色工具,还是在我电脑上本地运行的?它是一个完全离线的绿色版 Windows .exe——没有服务器,不需要注册账号,也不会上传图片。所有处理都在你自己的电脑上完成。
我怎么把它跑起来?下载 .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)能对一个目录里的每张图片各生成一套配色,还提供可脚本化的 CLI 模式,比如 '.exe --input foo.png --count 8 --format css'。
它和普通的 k-means 取色脚本有什么区别?它先把图片分割成不同区域,然后在 LAB 色彩空间中使用 CIEDE2000 感知色距进行颜色聚类,而不是直接在原始 RGB 上聚类;每个色样还会按它在画面中所占面积加权,并自动标注 base、accent、shadow、highlight 之类的角色。
重新提取其余配色时,我能锁定某个品牌色不变吗?可以——色样锁定(Swatch Lock)功能可以固定任意一个颜色,并围绕它重新推导其余色样。当美术方向变了、但品牌色必须保持不变时,这个功能非常实用。
Size
0.8 MB
Stars
300
Updated
CommitOct 13
Age
5d
Commits · 90 Days