|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Computer Graphics Support Group of 30 Phys-Math Lyceum. Tough Universe Processing
Tough Universe Processing1992-GRAPH_PP 19992-TRF
Научный руководитель проекта: Галинский Виталий Александрович ТезисыПроект посвящен разработке и реализации системы анализа, обработки и преобразования растровых изображений. В постановке задачи присутствовали требования проектирования системы с функциональным набором операций для цифровой обработки изображений на основе фильтрации, поточечных преобразований изображений и геометрических трансформаций. Система должна обладать удобным функциональным и пользовательским интерфейсом и быть легко настраиваемой под произвольные задачи работы с растровыми данными. В основе разработанной системы лежит несколько функциональных модулей. Это модули хранения и базовой обработки изображений, модули поточечной обработки и цифровой фильтрации, модуль геометрических преобразований. Хранение и базовая обработка изображений основана на плоском представлении загруженных растровых данных в оперативную память. Изображение при создании/загрузке делится на цветовые плоскости — для удобства независимой обработки каждого цветового слоя — с возможностью дополнительного увеличения плоскостей для расширения возможностей (например, плоскость прозрачности — т.н. "альфа"-канал). Для быстрого применения поточечных преобразований — информация при такой обработке анализируется и обрабатывается "попиксельно" без учета соседних точек — авторами был применен метод подстановочных таблиц. Суть идеи заключается в создании массива подстановочных значений с количеством элементов равным количеству различных цветов. При применении преобразований цвет в результирующем изображении меняется на цвет, взятый из соответствующего входному значению элемента таблицы. Не все преобразования можно так задать, но некоторые элементарные (изменение контрастности, яркости и т.п.) и произвольные преобразования цвета заданные таким образом обрабатываются за линейное время пропорционально размеру исходного изображения. Для более сложных манипуляций над изображениями авторами реализован модуль цифровой фильтрации. Модуль разбивается на две логические части — линейные и нелинейные фильтры. Суть применения линейных фильтров заключается в сборе цветов некоторой области точки изображения (апертуре — зоне соседей вокруг каждого "пикселя"), умножении их на весовые коэффициенты и их суммировании. Веса апертуры, примененные в программе, позволяют повысить четкость изображений, убрать резкие "выбросы" цвета, выделять перепады цветов и т.п. Нелинейные фильтры требуют программной реализации каждого вида персонально. Нами реализованы некоторые известные фильтры для усреднения цвета в апертуре (медианные и процентильные фильтры), а также фильтры Собеля и Робертса для выделения границ объектов на изображении. Общий подход в организации кода программы и разработанная система взаимодействия различных ее модулей позволяет реализовать как нелинейный фильтр практически любое преобразование растрового изображения. Подсистема геометрического преобразования растровых данных служит для построения новых изображений на основе изменения его геометрических характеристик. Используется два подхода: общее преобразование на базе произвольных аффинных трансформаций изображения и кусочная обработка, позволяющая применять некоторые преобразования данных входной картинки в некоторых ее областях независимо от соседних зон, стыкуя в конце полученный результат. Система разработана на языке программирования C. Для оптимизации некоторых действий с плоскостями изображений используются вставки на языке Ассемблера. Литература
|
|
|||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|