Задание1. Основы CUDA

Номер варианта определяется списком подгруппы у преподавателя.

1. Сделать цветную картинку черно-белой
2. Применить гауссово размытие к изображению заданное пользователем количество раз
3. Применить к заданному каналу изображения операцию "негатив"
4. Применить к изображению детектор границ, вычислив в каждой точке модуль градиента
5. Увеличить контрастность изображения
6. Применить гамма-коррекцию к изображению
7. Увеличить насыщенность изображения
8. Уменьшить количество цветов изображения до n^3
9. Увеличить яркость заданного цветового канала изображения
10. Убрать красные глаза на изображении в заданной прямоугольной области
11. Увеличить размер изображения, используя интерполяцию по методу ближайшего соседа
12. Применить растягивание изображения по горизонтали
13. Применить операцию горизонтального отражения к изображению
14. Применить операцию вертикального отражения к изображению
15. Найти на изображении яркость самого темного и самого светлого пикселей
16. Применить операцию линейного расширения диапазона яркостей пикселей от заданного [a;b] до [0; 255]
17. Применить операцию обнуления заданной компоненты изображения
18. Заменить на изображении один заданный цвет другим
19. Оценить количество пикселей заданного цвета
20. Применить заданную перестановку к каналам изображения
21. Путем подсчета модуля градиента цвета выделить области резкой смены цвета на изображении

Если компилятор возвращает ошибку про отсутствующую функцию memcpy (несовместимость CUDA SDK с некоторыми версиями GCC), добавьте при компиляции опцию   -D_FORCE_INLINES