logo
учебники и задачи по числ методам / Дьяконов_В

4.9.3. Обработка цветных изображений

Для построения цветных изображений используетсяметод разложения рисунка на составляющие цветовой модели RGB. При нем изображение представляется суммой трех составляющих с красным (Red), зеленым (Green) и синим (Blue) цветами. Соответственно функцияREADRGB обеспечивает считывание цветных изображений из файлов формата BMP и возвращает встроенный массив D, содержащий три монохромных изображения, представляющих яркости трех указанных цветов (рис. 4.47).

Рис. 4.47. Пример обработки цветного изображения

С помощью функции submatrix несложно выделить из матрицы D три матрицы rc, rg и rb, несущих информацию отдельно по каждому из трех цветов. После этого можно обрабатывать их по заданному алгоритму. Такая обработка возможна и в процессе задания подмассивов. Так, на рисунке подмассив красного цвета получен возведением каждого элемента массива D в степень 1.25. Если код интенсивности цвета какого-то элемента массива становится больше 255, из него вычитается число 256. Таким образом, происходит «внезапное» резкое изменение цвета, создающее при суммировании массивов характерное, напоминающее интерференцию изменение цвета красного пятна в центре синтезированного рисунка, как показано в левом нижнем углу рисунка (к сожалению, черно-белого).

Разумеется, приведенный пример носит исключительно учебный характер и призван продемонстрировать математические основы обработки цветных изображений. Реальная обработка таких изображений всегда ведется с помощью профессионально ориентированных на это программных средств, таких, как CorelDRAW, PhotoShop, Ulead PhotoImpact и др. Они позволяют выполнять множество операций над рисунками, не задумываясь об их математической сути. Но она принципиально важна при создании новых таких операций.