# Свертка изображения

Примените к изображению собственное ядро свертки. Введите матрицу весов 3x3 или 5x5, при необходимости укажите масштаб, на который делится результат, и смещение, которое прибавляется после этого. Инструмент применит фильтр к каждому цветовому каналу. Создавайте фильтры повышения резкости, размытия, выделения границ, тиснения и смазывания в движении, проверяйте ядра из учебников или экспериментируйте с обработкой изображений без написания кода.

## Часто задаваемые вопросы

### Как ввести ядро?

Введите 9 чисел для ядра 3x3 или 25 чисел для ядра 5x5, разделяя их пробелами, запятыми или переносами строк. Вводите числа построчно, начиная с левого верхнего угла. Значения по умолчанию 0 -1 0 / -1 5 -1 / 0 -1 0 соответствуют классическому ядру повышения резкости. Каждый вес должен быть от -1000 до 1000.

### Для чего нужен масштаб?

Взвешенная сумма для каждого пикселя делится на масштаб, после чего прибавляется смещение. При значении по умолчанию 0 инструмент использует сумму ядра, если она положительна, и 1 в противном случае. Это сохраняет общую яркость при размытии и повышении резкости. Вы можете указать любой масштаб до 1000, чтобы самостоятельно нормализовать ядро.

### Для чего нужно смещение?

Смещение от -255 до 255 прибавляется к каждому результату после масштабирования. Ядра выделения границ и тиснения часто дают значения около нуля, поэтому смещение 128 переводит их в средний серый, на фоне которого видны и положительные, и отрицательные отклики. Значения за пределами от 0 до 255 обрезаются.

### С каких полезных ядер начать?

Для блочного размытия используйте девять единиц, для размытия по Гауссу — 1 2 1 / 2 4 2 / 1 2 1, для выделения границ — -1 -1 -1 / -1 8 -1 / -1 -1 -1, а для тиснения — -2 -1 0 / -1 1 1 / 0 1 2. Чтобы усилить размытие, используйте ядро 5x5 из двадцати пяти единиц.

### Фильтр применяется ко всем каналам?

Ядро обрабатывает каждый цветовой канал отдельно, поэтому красный, зеленый и синий фильтруются одинаково. Перед фильтрацией альфа-канал временно отделяется, а после нее добавляется обратно, поэтому прозрачность не размывается и не повышается резкость. Результат сохраняется в формате PNG.

### Почему результат черный или белый?

Если сумма весов ядра равна нулю и смещение не задано, однородные области становятся черными, поскольку их отклик равен нулю. Если сумма весов большая и положительная, а масштаб слишком мал, всё обрезается до белого. Используйте автоматический масштаб или добавьте смещение 128, чтобы увидеть весь диапазон откликов.

### Меняется ли размер изображения?

Нет, ширина и высота результата совпадают с исходными. Пиксели у границ фильтруются с использованием доступных соседних пикселей. Перед фильтрацией изображения, у которых одна из сторон превышает 4000 пикселей, уменьшаются до допустимого размера.

### Какие форматы можно загружать?

Поддерживаются изображения JPEG, PNG, GIF, WebP, TIFF и AVIF размером до 5 MB; у анимированных файлов используется первый кадр. Отфильтрованное изображение можно скачать в формате PNG без потери качества.

### Почему доступны только ядра 3x3 и 5x5?

Этих двух размеров достаточно почти для всех классических фильтров, и они позволяют быстро обрабатывать даже большие изображения. Для более сильного размытия лучше использовать специальный инструмент размытия с разделяемым ядром Гаусса. Если нужен более широкий эффект, примените инструмент дважды.

### Какой движок выполняет свертку?

Инструмент использует операцию convolve из библиотеки sharp, построенной на базе libvips. Расчет точно учитывает введенные вами веса, а для одинаковых исходных данных результат всегда будет одним и тем же.

Ваша реклама здесь?

[Напишите нам по электронной почте](mailto:hi@dennn.is?subject=%D0%A0%D0%B5%D0%BA%D0%BB%D0%B0%D0%BC%D0%B0%20%D0%BD%D0%B0%20OneClick%20Pro)

[Реклама Набор плагинов для работы агентов с WordPress.](https://sleekwp.com/?ref=oneclickpro)
