Перевод изображения в чёрно-белое: таблицы, формулы и онлайн-конвертер

💻 IT и кодОбновлено: 11 июля 2026 г.4 мин чтения
Нужно быстро перевести изображение в чёрно-белое, но под рукой нет редактора? Разберём все способы: от простой онлайн-утилиты до точных формул люминоса. Научитесь обесцвечивать с сохранением контраста и без артефактов.
⚡ Коротко: главное
  • Стандартная формула BT.601: Y = 0.299R + 0.587G + 0.114B — основа большинства онлайн-конвертеров.
  • Lossless-файлы (PNG, TIFF) после конвертации в градации серого сжимаются в 2–4 раза без потери качества.
  • Средний онлайн-конвертер для фото 1920×1080 обрабатывает за 1–2 секунды на обычном интернете.
  • При неправильной цветовой коррекции (например, игнорирование гаммы) чёрно-белое изображение теряет до 30% деталей в тенях.

Зачем переводить изображение в чёрно-белое?

Чёрно-белая обработка — не только эстетика. Она уменьшает размер файла, упрощает распознавание текста (OCR), экономит краску при печати и делает фото более выразительным.

  • Сжатие: После конвертации оттенки серого кодируются одним каналом вместо трёх — размер файла падает на 30–60%.
  • Печать: Многие лазерные принтеры печатают серое быстрее, чем цветное.
  • Анализ: Нейросети и OCR часто работают точнее на grayscale.

Важно: простая десатурация (усреднение RGB) даёт плохой результат. Используйте взвешенные формулы, описанные ниже.

Формулы и таблицы коэффициентов

Вес каналов R, G, B разный из-за чувствительности человеческого глаза. Основные стандарты:

BT.601 (SD): Y = 0.299R + 0.587G + 0.114B
BT.709 (HD): Y = 0.2126R + 0.7152G + 0.0722B
BT.2020 (4K): Y = 0.2627R + 0.6780G + 0.0593B
СтандартRGBПрименение
BT.6010.2990.5870.114SD видео, фото до 480p
BT.7090.21260.71520.0722HD, Full HD (1920×1080)
BT.20200.26270.67800.05934K, HDR

Для большинства веб-изображений (фото, скриншоты) достаточно BT.601. Если не уверены — берите его.

Как сделать Ч/Б вручную: пошаговый пример

Возьмём пиксель с RGB = (184, 73, 212). Считаем по BT.601:

Y = 0.299×184 + 0.587×73 + 0.114×212 = 55.016 + 42.851 + 24.168 = 122.035

Округляем до 122 — это яркость пикселя в градациях серого (RGB(122,122,122)).

  1. Откройте изображение в любом редакторе (GIMP, Photoshop).
  2. Выберите инструмент «Обесцветить» или преобразование в «Grayscale».
  3. Если редактируете через код — примените формулу к каждому пикселю.

Обратите внимание: вручную удобно при обработке маленьких изображений (иконки, 64×64). Для фото используйте готовые инструменты.

Онлайн-конвертер: быстро и без установки

Если не хотите возиться с формулами — воспользуйтесь Конвертером изображения в чёрно-белое. Просто загружаете картинку, выбираете метод (обычно BT.601), скачиваете результат.

Дополнительно: после конвертации можно перевести изображение в PDF или сжать его для отправки по email.

Совет: если нужно извлечь цветовую палитру из оригинала — Палитра из изображения онлайн.

Как перевести фото в ч/б за 3 минуты
  1. 1
    Выберите источник

    Фото с компьютера или URL — загрузите в конвертер.

  2. 2
    Укажите метод

    Обычно BT.601 подходит для любых изображений.

  3. 3
    Настройте яркость

    По желанию — двигайте ползунок яркости/контраста.

  4. 4
    Просмотрите результат

    Убедитесь, что детали не потеряны.

  5. 5
    Скачайте результат

    Выберите формат: PNG для Lossless, JPEG для веса.

Пошаговый процесс от загрузки до сохранения

Примеры кода для разработчика

JavaScript (Canvas) с BT.601:

function toGrayscale(img) {
  const canvas = document.createElement('canvas');
  const ctx = canvas.getContext('2d');
  canvas.width = img.width;
  canvas.height = img.height;
  ctx.drawImage(img, 0, 0);
  const imageData = ctx.getImageData(0, 0, canvas.width, canvas.height);
  const data = imageData.data;
  for (let i = 0; i < data.length; i += 4) {
    const gray = 0.299 * data[i] + 0.587 * data[i+1] + 0.114 * data[i+2];
    data[i] = gray;
    data[i+1] = gray;
    data[i+2] = gray;
  }
  ctx.putImageData(imageData, 0, 0);
  return canvas.toDataURL();
}

Python (Pillow):

from PIL import Image
img = Image.open('photo.jpg')
gray = img.convert('L')  # Встроенная формула: 0.299R + 0.587G + 0.114B
gray.save('photo_bw.png')

ImageMagick:

convert input.jpg -set colorspace Gray output.jpg

Все примеры используют стандарт BT.601. При необходимости можно переопределить веса.

Чеклист: готовим изображение к ч/б

0 из 6

Подводные камни и частые ошибки

Ошибка 1: Простое усреднение (R+G+B)/3 — даёт тусклые, размытые тона. Всегда используйте взвешенную формулу.
Ошибка 2: Игнорирование гамма-коррекции. Если изображение в sRGB, перед расчётом Y нужно перевести в линейное пространство: R_lin = ((R/255)^2.2). Подробнее — в спецификации WCAG.
Ошибка 3: Сохранение в JPEG после конвертации — артефакты сжатия видны на градиентах. Выбирайте PNG/TIFF для lossless.

Чтобы избежать потери теней, перед конвертацией увеличьте контраст (например, автокоррекция уровней).

Как отладить результат

Проверить, корректно ли выполнена конвертация, можно тремя способами:

  1. Гистограмма: Откройте изображение в редакторе. В ч/б все три канала (R,G,B) должны быть идентичны.
  2. Пипетка: Возьмите любой участок. Если R=G=B — всё верно.
  3. Цветовой режим: В свойствах файла должно быть написано «Оттенки серого» (Grayscale).

Также полезно сравнить размер файла: ч/б PNG обычно на 30–50% меньше цветного той же ширины/высоты.

Частные случаи: логотипы, схемы, мемы

Логотипы и схемы лучше конвертировать с пороговой обработкой (threshold):

# Python
img = Image.open('logo.png').convert('L')
threshold = 128
img_points = img.point(lambda p: 255 if p > threshold else 0)
img_points.save('logo_bw.png')

Для мемов и фото с текстом — повышайте контраст до 60–80% перед обесцвечиванием, чтобы текст остался читаемым.

Скриншоты кода: конвертируйте с весом BT.709 (G-канал доминирует), так сохраняются оттенки синтаксиса.

🧮 Посчитайте сами — инструменты по теме

🧭 Разделы по теме

Частые вопросы

Какая формула лучше для перевода фото в чёрно-белое?

Для стандартных фотографий используйте BT.601: Y = 0.299R + 0.587G + 0.114B. Для HDR — BT.2020. Если не уверены, берите BT.601.

Как быстро обесцветить изображение онлайн?

Воспользуйтесь нашим конвертером по ссылке /konvertery/foto-i-izobrazheniya/konverter-izobrazheniya-v-cherno-beloe — загрузите файл, выберите метод и скачайте результат за 2 секунды.

Почему после конвертации в ч/б изображение стало тусклым?

Скорее всего использовано простое усреднение (R+G+B)/3. Используйте взвешенную формулу, например BT.601. Также проверьте гамма-коррекцию.

Как сохранить ч/б изображение без потери качества?

Сохраняйте в PNG (lossless) или TIFF. JPEG вносит артефакты, особенно на градиентах.

Можно ли перевести в ч/б только часть изображения?

Да, в графическом редакторе выделите область, примените обесцвечивание к выделению. Онлайн-конвертеры обычно обрабатывают всё изображение.

Как перевести в ч/б логотип с прозрачным фоном?

Загрузите PNG с альфа-каналом. Конвертер сохранит прозрачность, преобразуя только цветные пиксели. Результат — серые пиксели на прозрачном фоне.

Влияет ли ч/б конвертация на exif-данные?

Большинство онлайн-конвертеров удаляют exif. Если нужны метаданные, используйте десктопные программы (GIMP, Photoshop) с опцией сохранения.

Какой формат выбрать для печати ч/б фотографии?

TIFF или PNG с высоким разрешением (300 DPI). Для веба — JPEG с качеством 90% (размер меньше, а потери незаметны).

Источники и нормативные документы

  1. ITU-R BT.601-7
  2. Pillow documentation - convert('L')
  3. WCAG 2.1 relative luminance formula
  4. MDN Canvas API - ImageData

Ещё по теме «IT и код»