Введение 3
Обзор литературы 4
Глава 1. Вычисления на графических процессорах, технология
CUDA 6
1.1. Определения и основные понятия 6
1.2. Архитектура CUDA, библиотека CUDAfy.NET 7
1.3. Управление пямятью в CUDA 11
1.4. Практическое использование CUDA 12
Глава 2. Методы цифровой обработки изображений и их реализация 15
2.1. Степенные преобразования 15
2.2. Использование медианного фильтра для восстановления изображения 20
2.3. Практическая реализация 21
Выводы 26
Заключение 27
Список используемых источников 28
В современном мире во многих отраслях деятельности человека используется обработка изображений и сигналов. Например, системы мониторинга и наблюдения с помощью видеокамер, техническое и компьютерное зрение, разнообразные автономные системы, которые анализируют поступающую видеоинформацию и так далее. Уровень развития компьютерных технологий растет каждый день и значимую роль, в том числе, стали играть алгоритмы и методы обработки и улучшения качества видеоинформации. Благодаря им упрощается общее восприятие графической информации человеком и становится возможным дальнейшее распознавание образов и объектов с целью их последующего использования в автономных системах.
Самой распространенной областью использования алгоритмов обработки изображений стали системы, анализа в реальном времени. Например, городские и дорожно-транспортные системы наблюдения. С нарастающим объемом поступающих данных возникла острая необходимость в оптимизации методов и улучшении их быстродействия. Самым эффективным решением поставленной задачи стало внедрение технологии GPGPU (Generalpurpose graphics processing units), которая стала незаменимым инструментом для осуществления параллельных вычислений. С развитием этой технологии компания NVIDIA сделала огромнейший шаг вперед и разработала архитектуру CUDA, которая как потомок сохранила в себе все лучшие особенности предка, и стала еще быстрее и удобнее. CUDA (Compute Unified Device Architecture) - архитектура и программная модификация для реализации параллельных вычислений, позволяющая проводить расчеты с помощью GPU NVIDIA со значительным увеличением скорости. Сегодня с ее помощью решают широкий спектр научно-исследовательских задач.
Был разработан программный комплекс для коррекции изображений на GPU с параллельной архитектурой. В ходе выполнения работы были изучены некоторые методы улучшения качества цифровых изображений, осуществлена реализация на центральном и графическом процессоре с использованием технологии CUDA и библиотеки CUDAfy. Также произведено их сравнение по следующим параметрам: скорость процедуры обработки и ее зависимость от размера блоков памяти, используемых архитектурой CUDAfy.
На основе полученных результатов были сделаны следующие выводы:
1. Благодаря адаптации алгоритмов для их выполнения на графических процессорах мы можем получить существенное ускорение времени рассчетов. Поэтому параллелизация вычислений с помощью CUDA полностью оправдана.
2. Использование видеокарты (с поддержкой архитектуры CUDA) для проведения вычислений — более выгодное решение экономически и вычислительно по сравнению с использованием центрального процессора.