COMPUTER VISION
Стройте нейронные сети с нуля и научите их распознавать объекты на фото и видео с помощью Python и его библиотек.
Ян Колода
Senior CV & ML Engineer в Gini GmbH
PhD в сфере Image Processing & Computer Vision
о курсе
- Продолжительность:
21 занятие
- Курсовой проект:
сегментатор или нейронная сеть
В течение курса вы научитесь создавать нейронные сети с нуля с помощью Python, OpenCV и TensorFlow: от пиксельных операций и базовых манипуляций с изображением и видео до развития сетей и их тренировки. В дальнейшем сможете применять приобретенные знания в разных областях: от медицины до беспилотных автомобилей.
для кого
в программу курса входят
-
01
ОПЫТ ЛЕКТОРА
Лектор поделится личным опытом и даст overview задач Computer Vision. Каждая лекция будет сопровождаться домашним заданием, что позволит сразу же применить приобретенные знания на практике.
-
02
АКТУАЛЬНЫЕ ИНСТРУМЕНТЫ
Вы будете использовать Python, а именно библиотеки NumPy, Matplotlib, scikit-learn, для задач Computer Vision. Овладеете OpenCV, TensorFlow и Keras.
-
03
ВОРКШОПЫ И ПРАКТИКА
Научитесь решать базовые задачи компьютерного зрения: фильтрацию, выделение границ, кодирование, компрессию, классификацию, детекцию, трекинг и сегментацию. Будете строить и тренировать нейросети.
-
04
ПОДГОТОВКА К ИНТЕРВЬЮ
Узнаете о специфике должности Computer Vision Engineer. Трое студентов с наивысшими баллами за практические задания получат менторскую сессию от лектора по подготовке к техническому интервью.
Программа
-
01 занятие20.05 18:30
Знакомство с Computer Vision
- ознакомитесь с задачами, которые помогает решить Computer Vision, и получите общую информацию о том, как работает зрительная система
- установите библиотеки NymPy, Matplotlib и OpenCV и научитесь выполнять простые операции с помощью них
-
02 занятие23.05 18:30
Пиксельные операции
- узнаете, что такое операции на уровне пикселей, и научитесь читать гистограммы
- создадите простейшую программу обработки цифровых изображений — например, программу баланса белого цвета
-
03 занятие27.05 18:30
Линейная фильтрация
- изучите принцип работы свертывания
- научитесь имплементировать фильтрацию и манипулировать изображением, используя разные типы фильтрации
-
04 занятие30.05 18:30
Фильтры выделения границ
- узнаете, в чем смысл градиентов изображений
- научитесь имплементировать фильтры выделения границ
- овладеете алгоритмом выделения контуров и фильтрами в Canny
-
05 занятие03.06 18:30
Кодирование и компрессия изображений
- изучите разницу между форматами изображений [RAW, PNG, JPEG], разберете, чем отличаются форматы H264 и H265
- узнаете, как работает сжатие с потерями, и научитесь работать с изображениями в преобразованной форме
- попробуете улучшить качество изображения с помощью интеллектуального квантования
-
06 занятие06.06 18:30
Image features [визуальные признаки]
- узнаете, что такое визуальные признаки, и ознакомитесь с типичными задачами, которые можно решить с их помощью
- изучите алгоритмы выявления и описания признаков
- научитесь выделять углы с помощью детектора Харриса
- научитесь применять масштабно-инвариантную трансформацию признаков (SIFT)
-
07 занятие10.06 18:30
Image matching [соответствие изображений]
- ознакомитесь с задачами, которые решает image matching
- изучите принцип аффинного преобразования и однородных координат
- научитесь использовать гомографию для изображений
- разработаете ректификатор фотографий документов
-
08 занятие13.06 18:30
Machine Learning [машинное обучение]
- ознакомитесь с основными принципами работы с моделями данных и разберете разницу между классической обработкой данных и машинным обучением
- научитесь строить простые модели с нуля и проводить их оптимизацию
- определите разницу между Machine Learning и Deep Learning
-
09 занятие17.06 18:30
Детекция лиц
- определите, чем визуальные признаки для детекции лиц отличаются от других объектов
- ознакомитесь с методом детекции Виолы-Джонса и методом бустинга
- научитесь работать с изображениями, содержащими лицо, и осуществлять детекцию с помощью OpenCV
-
10 занятие20.06 18:30
Трекинг
- изучите основы работы трекинга и принципы работы с цифровым видео
- разберете разницу между трекингом и детекцией на практике, реализуя реальную рабочую задачу
-
11 занятие24.06 18:30
Q&A-сессия
-
12 занятие27.06 18:30
Нейронные сети: part 1
- изучите принципы работы нейронных сетей и получите overview открытых библиотек TensorFlow и Keras
- научитесь строить и тренировать простые нейронные сети
- попробуете улучшить модель нейронной сети для классической проблемы house pricing
-
13 занятие08.07 18:30
Нейронные сети: part 2
- узнаете, как ускорить тренировку нейронных сетей в несколько раз с помощью GPU, и ознакомитесь с другими преимуществами графического процессора
- ознакомитесь с облачным сервисом Google Colaboratory и научитесь строить и тренировать модели в нем
- узнаете, зачем проводить инспекцию баз данных
-
14 занятие11.07 18:30
Сверточные нейронные сети: part 1
- изучите принципы работы сверточных нейронных сетей
- изучите операции свертки и пулинга
- научитесь строить и тренировать сверточные нейронные сети
-
15 занятие15.07 18:30
Сверточные нейронные сети: part 2
- ознакомитесь с проблемой переобучения [overfitting]
- научитесь распознавать проблемы в процессе обучения и применять data augmentation в процессе тренировки
-
16 занятие18.07 18:30
Сверточные нейронные сети: part 3
- научитесь решать задачу сегментации цифровых изображений
- изучите принцип bottleneck
- построите простой автоматический энкодер для очистки изображений от шума
-
17 занятие22.07 18:30
Воркшоп: нейронные сети
-
18 занятие25.07 18:30
Детекция объектов
- изучите концепт детекции и bounding box
- научитесь распознавать объекты в режиме реального времени, используя принцип YOLO [You Only Look Once]
- примените YOLO, чтобы распознать объекты на собственном видео
- ознакомитесь с алгоритмом NMS [Non-Maximum Suppression] и другими архитектурами сетей для распознавания объектов [SSD, TinyYOLO, SqueezeDet]
-
19 занятие29.07 18:30
Сверточные нейронные сети: что дальше?
- ознакомитесь с популярными моделями сверточных нейронных сетей
- изучите процесс fine tuning и научитесь работать с Model Zoo
- узнаете, какие проблемы возникают во время тренировки сверточных нейронных сетей
-
20 занятие01.08 18:30
Q&A-сессия
-
21 занятие05.08 18:30
Презентация курсового проекта
лектор
Ян Колода
Senior Computer Vision & Machine Learning Engineer в Gini GmbH
PhD в области Image Processing & Computer Vision
6 лет опыта работы
-
разрабатывает модели, осуществляющие автоматическое извлечение информации из документов с помощью AI, в немецком финтех-стартапе Gini — этой технологией пользуются 3 крупнейших банка Германии: Deutsche Bank, Commerzbank, KfW
-
в AVL Software and Functions спроектировал Deep Learning pipelines автономного вождения и разработал алгоритмы обработки изображения и видео для беспилотных автомобилей
-
работал в Veridas, где разрабатывал систему борьбы с подделкой изображений на основе машинного обучения с точностью более 99 % — эти методы являются частью первой биометрической платежной системы, развернутой в Испании
-
преподавал цифровую обработку изображений/видео и Computer Vision в Университете Гранады [Испания] и Университете Эрлангена — Нюрнберга [Германия]
регистрация
Заполняйте форму, чтобы научиться применять Computer Vision в собственных проектах и расти в Machine Learning.