imageprocessing (android)

Содержит функции для обработки изображений.

Применить эффект можно двумя способами:

  1. Передать BitmapValue и массив параметров. Результатом будет BitmapValue. bitmap = boxBlur(bitmap, [20, 40])
  2. Передать ширину, высоту, массив пикселей и массив параметров. Результатом будет массив [ширина, высота, пиксели]. extract(width, height, pixels) = boxBlur(w, h, pixels, [20, 40])

Функции

boxBlur(horizontalBlur = 10 (min 1, max 100), verticalBlur = 10 (min 1, max 100)) — применяет быстрый эффект размытия

contrast(level = 40 (min -100, max 100)) — изменяет контрастность изображения

decolour() — преобразует цветное изображение в оттенки серого

edgeDetection(operator = 1, mode = 0) — применяет эффект выделения границ.

operator 0 - оператор Робертса, 1 - Прюитт, 2 - Собеля, 3 - Шарра mode 0 - цветные грани, 1 - чёрно-белые грани, 2 - вычитание границ

emboss(azimuth = 45 (min 0, max 360), elevation = 45 (min 0, max 90), edgeHeight = 140 (min 0, max 256), edgeThickness = 80 (min 2, max 100), emboss = 0 (min 0, max 1)) — применяет эффект выдавливания

extractChannel(channel = 0, monochrome = 0) — извлекает заданный канал из изображения.

channel 0 - красный, 1 - зелёный, 2 - синий
monochrome конвертировать полученную маску в чёрно-белый, 0 - нет, 1 - да

gamma(level = 20 (min -50, max 50)) — изменяет гамму изображения

hsbCorrection(hue = 45 (min 0, max 360), saturation = 0 (min -100, max 100), brightness = 0 (min -100, max 100), tone = 0 (min 0, max 1)) — изменяет оттенок, насыщенность и яркость изображения, тонирует при tone = 1

invert(invertAlpha = 0, invertRed = 1, invertGreen = 2, invertBlue = 3) — инвертирует заданные каналы изображения

monochrome(level = 128 (min 0, max 255)) — преобразует цветное изображение в монохромное

mosaic(size = 4 (min 1, max 50)) — применяет эффект мозайки

noiseGeneration(amount = 50 (min 0, max 255), monochrome = 0) — добавляет шум к изображению

posterization(level = 64 (min 1, max 255)) — применяет эффект постеризации

rgbCorrection(alpha = 0 (min -255, max 255), red = 0 (min -255, max 255), green = 0 (min -255, max 255), blue = 0 (min -255, max 255)) — изменяет прозрачность, красный, зелёный, синий каналы изображения

rotate(angle = 45 (min 0, max 360)) — поворачивает изображение

saturation(level = 64 (min -255, max 255)) — изменяет насыщенность изображения

scatter(horizontalScatter = 10 (min 1, max 100), verticalScatter = 10 (min 1, max 100)) — применяет эффект рассеивания пикселей

smooth(level = 3 (min 1, max 25)) — применяет эффект сглаживания

xor(level = 64 (min 0, max 255)) — применяет операцию ИСКЛЮЧАЮЩЕЕ ИЛИ для каждого пикселя изображения