|
ФИЗИКО-МАТЕМАТИЧЕСКОГО ЛИЦЕЯ № 30 of 30 Phys-Math Lyceum Tough Image ComposerАвторы:
Научный руководитель проекта: Галинский Виталий Александрович Введение и постановка задачиДанная работа посвящена цифровой обработке изображений. На данный момент тема цифровой обработки изображений хорошо изучена и предоставляет разработчику широкий спектр возможностей для получения специальных эффектов, в основе которых лежат различные способы синтезирования изображений. Целью данной работы являляется разработка комплекса функциональных средств (и объединения их в единую систему) цифровой обработки растровых изображений на основе цифровой фильтрации, таблиц "подсмотра" (look-up-tables - LUT [1]), а также методов деформации изображений на основе билинейных преобразований. Комплекс разбивается на несколько логически законченных частей: система представления растровых изображений, цифровая фильтрация изображений (линейная и нелинейная), таблицы LUT, деформация изображений (warping & morphing). В основе всего проекта лежит разработанная система представления растровых изображений в памяти компьютера. Суть ее заключается в хранении изображений в послойном режиме - отдельно красная, зеленая и синяя составляющая, также, возможно, составляющая по прозрачности - альфа-канал [2]. Данная схема выбрана из-за удобства независимого хранения цветовых составляющих изображений, что особенно удобно в задачах применения цифровых эффектов, так как при их исполнении цветовые составляющие обрабатываются независимо друг от друга. Исходные изображения импортируются из файлов в некоторых стандартных форматов (BMP, TGA и т.п. - [3]). Результат выполнения программы экспортируется в вышеперечисленные форматы, а также в анимационный формат AVI.Цифровая обработка изображенийЦифровая фильтрация растровых изображений [1, 4-6]- функция, получающая на вход одну "картинку" и возвращающая другую. В классической литературе по анализу и обработке изображений фильтрацию делят на несколько категорий: по приему входной информации (целиком изображение или его фрагмент) - на глобальную и локальную; по записи результата (обратно во входное изображение или в новое, результирующее) - на рекурсивную и нерекурсивную; по способу получения результата фильтра (отклика) - на линейную и нелинейную. В проекте реализованы локальные нерекурсивные линейные и нелинейные фильтры. Локальные фильтры характеризуются способом вырабатывания отклика на основе получения апертурного окна (прямоугольного фрагмента изображения фиксированного размера) и обработки цветов точек, попавших в него с целью получения результата по заданному алгоритму. Следует заметить, что перемещение окна инвариантно по отношению к исходному изображению в случае нерекурсивной фильтрации, в результате чего порядок обработки точек входного изображения неважен; главное, чтобы каждая точка была обработана. Линейные фильтры задаются таблицей весовых коэффициентов, нормирующим коэффициентом и коэффициентом увеличения яркости. Основное отличие нелинейной фильтрации от линейной заключается в том, что выход нелинейного фильтра формируется нелинейным образом от данных исходного изображения. В проекте реализованы нелинейные фильтры удаления "пятен" и выделения границ (фильтры Робертса, Собеля, процентильный).Деформация изображенийДля деформации картинки (warping) в нашей программе используются билинейные преобразования. При билинейном преобразовании две противолежащие стороны результирующего и исходного фрагмента делятся на одинаковое количество частей. Оба фрагмента делятся на одинаковое количество отрезков, и для каждой точке отрезка из результирующего фрагмента берётся точка из отрезка исходного фрагмента. В каждом фрагменте результирующего изображения отношения длин всех отрезков остаются одинаковыми. Для осуществления деформаций можно применять несколько различных математических методов [7]: аффинные преобразования, проективные преобразования, билинейные преобразования. Проведя анализ предлагаемых методов, мы пришли к выводу, что для редактирования параметров деформации растровых изображений необходимо соблюдение пропорций между отдельными частями изображений до и после преобразования (см. рис.). В результате чего приемлемым вариантом является случай билинейных трансформаций. Также важнейшим фактором является визуальная задача параметров для warping, а использование четырехугольных форм упрощает редактирование и хранение входной информации. Билинейные преобразования подходят для этого больше всего, так как в аффинных преобразованиях сохраняется параллельность, что приводит к непропорциональной деформации картинки, а в проективном - не выполняется сочленение сторон смежных четырехугольников. Для добавления последовательных покадровых преобразований между разными изображениями разработан алгоритм morphing - расширение warping за счет построений дополнительных преобразований между исходным и конечным изображениями. Результаты всех деформаций с возможными наложениями фильтров и т.п. могут быть записаны в анимационный файл.ЗаключениеРазработанный проект может служить дополнением к любому профессиональному пакету работы с растровыми изображениями для быстрого использования и применения цифровых эффектов. Реализованные алгоритмы позволяют применять основные виды цифровых эффектов от фильтров до покадровой деформации и межкартинных преобразований.Литература
|
|