Курсы программирование

Формула программиста
основатель — Волосатов Евгений Витольдович
Вступай в Телеграм чат проекта

Фотошарп

В этом видеокурсе мы будем попиксельно обрабатывать картинки.
Мы применим несколько различных фильтров:
градации серого, изменение яркости и контрастности.
Во второй части курса мы реализуем алгоритмы масштабирования.

Срок: 20 дней.

Хочу купить!

Купить в рассрочку за мегахеши

Цена: 1200 p.


Список уроков | фото | видео

# Название видеоурока Решило Рейтинг Доступ
1 256 оттенков серого 00:23:54 56 чел. ★ 5 Done
  На этом уроке мы попиксельно поработаем с картинками.
Сделаем конвертацию картинки в чёрно-белый формат.
Ссылка на рекомендуемую статью:
http://vscode.ru/prog-lessons/filtratsiya-izobrazheniy-na-c-sharp.html
Отчёт отправил: 9263. Андрей Н. Выполнено за 3 час. 00 мин. [Показать отчёт]
Научился: Научился делать картинку "в оттенках серого" 
Сложности: --- 
Комментарии: Решил сделать проект на WPF. Здесь стандартный набор классов значительно отличается (в общем-то сама работа с графикой отличается), например, класса Bitmap здесь нет вообще. Пришлось много гуглить и читать SO и MSDN, в итоге написал класс-обертку над WriteableBitmap для удобной попиксельной работы с изображением 
2 Яркость и контрастность 00:28:49 44 чел. ★ 5 Done
  На этом уроке мы доработаем програму обработки изоображения,
добавим алгоритм изменения яркости и контрастности у картинки.
Ссылка на рекомендуемую статью:
http://vscode.ru/prog-lessons/filtratsiya-izobrazheniy-na-c-sharp.html
Отчёт отправил: 9263. Андрей Н. Выполнено за 2 час. 00 мин. [Показать отчёт]
Научился: Научился попиксельно менять яркость и контрастность изображений 
Сложности: --- 
Комментарии: В WPF с помощью привязок кое-что можно сделать прямо в XAML-разметке без написания кода, например, слайдер (здесь так называется аналог trackBar'а WinForm), его значение можно забиндить в поле Text элемента TextBlock: Здесь slBrightness - имя моего слайдера, так вот при изменении Value в текст-блоке автоматически отображается это значение. Обработчик события писать не требуется 
3 Градационная коррекция 00:20:01 28 чел. ★ 5 Done
  На этом уроке мы напишем алгоритм для создания фильтра
градационной коррекции тремя различными способами:
синусоидальный, экспоненциальный и логарифмический.
Отчёт отправил: 9263. Андрей Н. Выполнено за 30 мин. [Показать отчёт]
Научился: Научился функциональной коррекции изображений 
Сложности: --- 
Комментарии: В шарпе есть некоторые готовые "шаблоны" делегатов, такие как Action, Func и т.п., поэтому не обязательно в таком простом примере писать свой делегат, я использовал просто Func Ну и передаю функцию как лямбду (куда уж без нее... :D) 
4 Гамма-коррекция 00:12:47 26 чел. ★ 5 Done
  На этом уроке мы создадим ещё один фильтр - гамма коррекции.
В основе формулы лежит степенная функция, которую мы и будем применять.
Отчёт отправил: 9263. Андрей Н. Выполнено за 20 мин. [Показать отчёт]
Научился: Научился гамма-коррекции изображений 
Сложности: --- 
Комментарии: Логичнее было бы реализовать гамма-коррекцию так же, как и предыдущие виды коррекции Также передать делегат, остальное уже всё есть... 
5 Изменение размера 00:09:58 22 чел. ★ 5 Done
  На этом уроке мы подготовим форму для создания программы,
которая будет менять размер изображения.

Рекомендуемый материал:
https://habrahabr.ru/post/243285/
Отчёт отправил: 9263. Андрей Н. Выполнено за 10 мин. [Показать отчёт]
Научился: Изучил методы ресайза изображений 
Сложности: --- 
Комментарии: --- 
6 Метод ближайшего соседа 00:17:55 22 чел. ★ 5 Done
  На этом уроке мы реализуем алгоритм ближайшего соседа для изменения размера изображения.

Рекомендуемый материал:
https://habrahabr.ru/post/243285/
Отчёт отправил: 9263. Андрей Н. Выполнено за 20 мин. [Показать отчёт]
Научился: Реализации ресайза методом ближайшего соседа 
Сложности: --- 
Комментарии: --- 
7 Билинейная интерполяция 00:36:25 21 чел. ★ 5 Done
  На этом уроке мы рассмотрим понятие интерполяции.
Разберём алгоритм билинейной интерполяции для изображения.
Создадим алгоритм в нашей программе и протестируем его работу на разных картинках.

Рекомендуемые страницы:
http://www.cambridgeincolour.com/ru/tutorials-ru/image-interpolation.htm
https://ru.wikipedia.org/wiki/Билинейная_интерполяция

Отчёт отправил: 9263. Андрей Н. Выполнено за 50 мин. [Показать отчёт]
Научился: Научился реализации алгоритма билинейной интерполяции 
Сложности: --- 
Комментарии: При использовании четырехпиксельной картинки выяснил, что у меня в методе ближайшего соседа неправильно округление идет, как видно на первом скрине получилось почти всё красным, лишь узкие полосы шириной в один пиксель по краям, на втором скрине видно, что это уже исправлено. Написал операторы сложения для цветов и умножения цвета на число float - так использовать формулы ну гораздо удобнее... :) 
8 ФИНАЛЬНЫЙ УРОК 25 чел. ★ 4.9 Done
  Напишите в отчёте, понравился ли вам этот миникурс, оставьте отзыв.
Приложите свою чёрно-белую фотографию и напишите своё имя и фамилию.

Какой курс ты будешь проходить следующим?

Отчёт отправил: 9263. Андрей Н. Выполнено за 5 мин. [Показать отчёт]
Научился: Интересный курс в целом, получил много информации об обработке изображений 
Сложности: Сложным было реализовать что-то вне курса, в частности написать проект полностью на WPF А двигаться по курсу вполне можно и новичку-"середнячку" 
Комментарии: > 5. Кaкoй кypс ты бyдешь прохoдить следyющим? Планирую "добить" все незавершенные курсы. 
9 VIP. Делегаты на кубиках 00:47:37 13 чел. ★ 5 Done
  На этом уроке подробно показываю и объясняю,
что такое делегаты, зачем они нужны и как их использовать.
Отчёт отправил: 9263. Андрей Н. Выполнено за 50 мин. [Показать отчёт]
Научился: По идее научился использовать делегаты, по факту - знаком был с ними ранее =) 
Сложности: --- 
Комментарии: --- 
  Итого:   9 видеоуроков общей продолжительностью 3 час. 17 мин. 13 чел. ★ 4.99  
  Финалисты:   Андрей Н.,   Владимир,   Permitin Alexey,   Сергей Аникин,   Максим,   Yefim,   Сергей Д.,   Ludmila,   Tekashnik,   Александр,   Мариша ,   Новопашин Владимир,   Иван .

Начинаем практику по языку C#




Чтобы стать хорошим программистом — нужно писать программы. На нашем сайте очень много практических упражнений.

После заполнения формы ты будешь подписан на рассылку «C# Вебинары и Видеоуроки», у тебя появится доступ к видеоурокам и консольным задачам.

Несколько раз в неделю тебе будут приходить письма — приглашения на вебинары, информация об акциях и скидках, полезная информация по C#.

Ты в любой момент сможешь отписаться от рассылки.


Научился: подвел итог мини-курса
Трудности: Нужно было бы взять другую фотографию себя, но короче сказать, для меня это сложный процесс, и выбрать из чего на самом деле не было, поэтому пришлось использовать картинку, которую я использую на всех своих аватарках. Как-то пока не дошли руки нафотографироваться нормально и разнообразить изображения себя.
Вчера в спаме заметил затерявшееся письмо, оказалось, что Евгений Витольдович сделал рассылку со своего другого адреса. Я сразу хотел было отложить письмо на потом, подумать, но как увидел что предлагают всего за 16 рублей несколько уроков по любопытной теме, то не смог не согласиться попробовать. В итоге, пришлось сегодня прервать дела первого приоритета, чтобы в срок вложиться. И вот, не сильно планируя, потратил-таки несколько часов времени и немалое количества сил, и это все, определенно, полезно: узнал как легко из своей программы можно сделать разные обработки картинок, а еще вчера я бы и во сне не представил, что такое легко смогу реализовать; вспомнил немного подзабытых моментов программирования в VS, надо тоже поддерживать это направление в тонусе; отвлекся от других дел. Большое спасибо Витольдовичу за его старания. Сам бы я за такое короткое время, точно бы не смог погрузиться в эту тему и тем более не сейчас, а так представление теперь есть, и когда придется, уже гораздо уверенне буду решать подобные возникающие задачи.


Научился: Обpабатывать в создaнной пpогpaмме cвоё фото.
Миникурс "Фотошарп" действительно раскрыл некоторые секреты обработки графических изображений с помощью языка СиШарп. Мы не просто делали поверхностную обработку, а внедрялись в глубины самого пикселя, причем каждого пикселя. И как часто бывает: аппетит приходит во время еды. И поэтому неудивительно, что хочется продолжить изучение и проводить различные эксперименты. А может быть предложить Евгению Витольдовичу разработать вторую часть, где затронуть еще одно свойство цвета как прозрачность. В любом случае основы заложены и остальные темы можно попытаться изучить самостоятельно. Тем более, что к некоторым видео урокам были указаны первоисточники в интернете. Со следующим курсом пока не определился. Их так много, что глаза разбегаются. Было бы неплохо получить у Евгения Витольдовича рекомендации в какой последовательности выбирать курсы, чтобы новые темы, освещаемые в них были логически связаны и шли по нарастающей сложности.