SS Тулбокс
SS Тулбокс
Все данные обрабатываются локально

Извлечение цветов из изображения — доминирующий цвет, палитра из 8 цветов и значения HEX

Выберите плакат, скриншот или фотографию и получите доминирующий цвет и палитру из восьми цветов, рассчитанные в браузере методом медианного разреза. Образцы показывают HEX и копируются по клику. Нет настройки количества цветов, вывода HSL или CMYK и экспорта CSS-переменных.

После выбора изображения цвет автоматически извлекается, щелкните цвет, чтобы скопировать
#100100100
Основной цвет
Палитра

Что этот инструмент извлечения цветов выдаёт — и чего не делает

  1. Доминирующий цвет и палитра из 8 цветов

    При каждой загрузке выполняется квантование медианным разрезом: самый крупный кластер цвета становится доминирующим, а палитра всегда состоит из восьми образцов. Изображение показывается только как превью в области 16:9 с contain, без операций на уровне пикселей.

  2. Нет настройки количества цветов и формата

    Размер палитры жёстко задан как 8 (доминирующий цвет берётся из отдельного квантования по 5 цветам), внутри используется RGB, а показывается только HEX в нижнем регистре. Нет текстового вывода HSL, CMYK или RGB и экспорта CSS-переменных.

  3. Клик по образцу копирует HEX

    Каждый круглый образец копирует своё значение HEX в буфер обмена и показывает уведомление. Само изображение не кликабельно, поэтому нет пипетки и возможности взять цвет конкретного пикселя.

  4. Обработка в canvas, но только локальные файлы

    Выбранное изображение рисуется на canvas и читается через getImageData — всё в браузере. Поля для URL изображения нет, поэтому загрязнение canvas из-за cross-origin невозможно: анализируется только выбранный файл.

  5. Выборка пропускает почти белые и прозрачные пиксели

    Берётся каждый десятый пиксель; пиксели с alpha ниже 125 и почти белые (все три канала выше 250) игнорируются. Поэтому белый фон и прозрачные области никогда не доминируют в результате.

Вопросы об извлечении цветов из изображения

Как рассчитываются цвета?

С помощью квантования медианным разрезом (MMCQ) из ColorThief. Доминирующий цвет — первый кластер квантования по 5 цветам, палитра — результат квантования по 8 цветам. Quality по умолчанию 10, то есть выбирается каждый десятый пиксель.

Можно ли изменить количество цветов?

Нет. Восемь образцов заданы жёстко, без ползунка и поля ввода, а доминирующий цвет берётся из отдельного квантования по 5 цветам. При каждом новом файле палитра пересчитывается и заменяется.

Какие форматы цвета можно получить?

Только HEX в нижнем регистре: показывается на каждом образце и копируется по клику. Нет значений RGB, HSL или CMYK, нет CSS-переменных и нет экспорта в PNG или текст.

Есть ли пипетка или выбор одного пикселя?

Нет. Изображение служит только превью; клик по образцу копирует его HEX. Выбора на уровне пикселей и возможности взять цвет в конкретной точке фотографии нет.

Изображение загружается на сервер? Обрабатывается в canvas?

Всё происходит в локальном canvas, ничего не отправляется. Файл загружается через object URL, показывается в фиксированной области превью 16:9, а затем рисуется в исходном размере для анализа.

Загрязнит ли canvas изображение с другого домена?

Страница принимает только локальные файлы: нет поля URL и вызова getColorFromUrl, поэтому загрязнение CORS невозможно. Для картинки из интернета сначала скачайте её, затем выберите файл.

Почему белый цвет и прозрачность игнорируются и что с очень большими изображениями?

Пиксели с alpha ниже 125 и почти белые (все каналы выше 250) пропускаются. Очень большие изображения рисуются в исходном размере и читаются целиком, поэтому могут работать медленно и занимать много памяти; масштабирования и ограничения размера нет.

Связанные инструменты
SponsorMindElixir