Разработчик компьютерного зрения

ПрофГид Обновлено 
Разработчик компьютерного зрения

Разработчик компьютерного зрения (другие названия профессии: Computer Vision Developer/CV-разработчик, Computer vision engineer/CV-инженер) пишет алгоритмы, чтобы научить компьютер распознавать и анализировать изображения, извлекать из них нужную информацию – словом, воспринимать их так, как это делает человек. Профессия подходит тем, кто увлекается информационными технологиями, дружит с математикой и не боится учиться программировать. Кстати, недавно центр профориентации ПрофГид разработал точный тест на профориентацию, который сам расскажет, какие профессии вам подходят, даст заключение о вашем типе личности и интеллекте.

Содержание:

Краткое описание

Компьютерное зрение (CV) – одна из технологий, применяемых в системах искусственного интеллекта. Есть еще NLP – обработка естественного языка, Data Science – анализ данных, в которых тоже используются методы ML – машинного обучения. Способность различать изображения компьютер получил благодаря Deep Learning (глубокому обучению) – виду машинного обучения, в котором для решения задач используются нейросети. Задача разработчика компьютерного зрения – научить нейросети извлекать смысл из изображений и видео, вычленять заданные фрагменты из визуальной информации (видео, фото, сканов) для дальнейшей обработки, реакций, выполнения сценариев.

Как узнать, подходит ли вам профессия «Разработчик компьютерного зрения»?
Пройти тест
Тест на профориентацию

Системы компьютерного зрения используются в разных сферах: медицине, биотехнологиях, обороне, спорте, торговле, транспорте, сельском хозяйстве, энергетике, ЖКХ, автомобилестроении, робототехнике, различных системах мониторинга, безопасности и СКУД (управления доступом, например по биометрии), робототехнике и т. д.

  • Курсы SkillBox
    Курсы SkillBox
    Скидка 60% на профессии и 50% на курсы Skillbox по промокоду "prof"
  • Начни учиться сегодня, оплатишь потом!
    Начни учиться сегодня, оплатишь потом!
    XYZ SCHOOL — лидер в геймдев обучении, скидки до 45%. Уникальное предложение.

Вот некоторые из задач, которые выполняют продукты с CV:

  • поиск изображений – распознавание картинки и отбор похожих в базе данных, (используется в поисковых системах);
  • улучшение качества изображения – повышение четкости/резкости при увеличении размытой картинки, решение проблемы артефактов (дефектов при воспроизведении) видео, восстановление фрагментов;
  • модерация визуального контента в соцсетях и торговых интернет-платформах для просмотра всего загружаемого массива и поиска тех картинок, которые не соответствуют заданным настройкам (для торговли: несоответствие товару, для соцсетей: насилие, обнажение, особенно если это изображения детей, агрессия);
  • распознавание лиц – используется правоохранительными органами, системами разблокировки телефона и СКУД, банками для верификации клиентов и пр.;
  • навигация беспилотного транспорта – автомобили или дроны с помощью компьютерного зрения распознают препятствия на своем пути, строят безопасный маршрут.

Особенности профессии

Функции разработчиков компьютерного зрения (зависят от уровня профессионализма – грейда (junior, middle, senior), чем он выше, тем сложнее задачи):

  • Начни учиться сегодня, оплатишь потом!
    Начни учиться сегодня, оплатишь потом!
    XYZ SCHOOL — лидер в геймдев обучении, скидки до 45%. Уникальное предложение.
  • Весенние скидки в ИПО до 40%!
    Весенние скидки в ИПО до 40%!
    Государственный диплом. Рассрочка от института и индивидуальные скидки. Ведется набор студентов.
  • Курсы SkillBox
    Курсы SkillBox
    Скидка 60% на профессии и 50% на курсы Skillbox по промокоду "prof"
  • разработка, тестирование, отладка, развертывание и обслуживание алгоритмов и оборудования компьютерного зрения для различных задач и сред;
  • разработка алгоритмов автоматизированного машинного зрения (сегментация, классификация, генерация изображений, распознавание лиц или действия, перенос стиля), преимущественно для робототехники и работы с автономными аппаратными системами;
  • создание техдокументации для систем компьютерного зрения, в качестве мануалов для конечных пользователей;
  • управление проектами компьютерного зрения, включающее определение требований к ним, разработку бюджета, координацию группами технических разработок;
  • мониторинг последних исследований и технологических достижений для применения их в своей работе.

Примеры рабочих задач CV-инженеров:

  • Разработка алгоритмов обработки для анализа картинки – распознавания объектов, детектирования лиц и движения, обнаружения различных атрибутов изображений.
  • Разработка ML-моделей для распознавания и классификации объектов на картинках с применением сверточных нейронных сетей (CNN), тренировка этих моделей на большом количестве размеченных данных.
  • Создание своих алгоритмов и моделей под конкретные задачи на базе библиотек и инструментов компьютерного зрения (OpenCV, TensorFlow, PyTorch и др.).
  • Тестирование работоспособности (unit-тестирование), оптимизация систем компьютерного зрения для точной и эффективной работы, включающую оценку точности и скорости алгоритмов, улучшение и оптимизацию существующих моделей, повышение производительности.
  • Интеграция компьютерного зрения в приложения и системы, требующая сотрудничества с другими разработчиками и включающая создание API, разработку пользовательского интерфейса, работу с облачными сервисами.
Читайте также
Профгид
Профессия «Компьютерный лингвист»

Плюсы и минусы профессии

Плюсы:

  • работа в быстроразвивающейся, перспективной сфере;
  • востребованность;
  • высокая оплата труда;
  • есть карьерные перспективы;
  • возможность работы онлайн и на несколько компаний.

Минусы:

  • высокое умственное напряжение;
  • график может быть ненормированным, перед сдачей проекта возможны «авралы»;
  • сидячая работа, нагрузка на зрение;
  • необходимость постоянно изучать новые подходы, методы, технологии (для тех, кто стремится к профессиональному развитию, это, наоборот, плюс);
  • нужно очень хорошо знать английский (тоже скорее достоинство, чем недостаток).

Важные качества

CV-разработчику нужны:

  • аналитический, математический склад ума;
  • развитое системное и логическое мышление;
  • интеллектуальная гибкость;
  • креативность;
  • организованность;
  • ответственность;
  • нацеленность на результат.

Кроме того, разработчику систем компьютерного зрения не помешают способность к грамотной презентации продукта и умение работать в команде.

Где учиться на разработчика компьютерного зрения

CV-инженер – это специалист по одной из технологий машинного обучения, соответственно, базовое образование должно быть связано с ML и AI (ИИ). Для старта карьеры желательно получить степень бакалавра, примеры вузовских направлений подготовки и профилей:

  1. «Прикладная математика и информатика», 01.03.02:
    • «Прикладное машинное обучение»;
    • «Прикладной анализ данных и ИИ»;
    • «Анализ данных и интеллектуальные системы».
  1. «Математика и компьютерные науки», 02.03.01:
    • «Системы ИИ и суперкомпьютерные технологии».
  1. «Информатика и вычислительная техника», 09.03.01:
    • «ИИ и машинное обучение».
  1. «Информационные системы и технологии», 09.03.02:
    • «ИИ и программирование»;
    • «Интеллектуальные системы и машинное обучение».
  1. «Прикладная информатика», 09.03.03:
    • «Системы ИИ».
  1. «Радиотехника», 11.03.01:
    • «Системы компьютерного зрения».

Направления в магистратуре:

  1. «Прикладная математика и информатика», 01.04.02:
    • «Компьютерное зрение, графика и обработка изображений».
  1. «Прикладная математика», 01.04.04:
    • «Цифровая обработка сигналов и изображений».
  1. «Фундаментальная информатика и ИТ», 02.04.02
    • «Машинное обучение и компьютерное зрение».

Для поступления нужны ЕГЭ преимущественно по математике, русскому, информатике и ИКТ, иностранному. Как вариант, вместо информатики – физика.

Лучшие университеты для разработчика компьютерного зрения

Топ-10 вузов для CV-разработчиков по версии RAEX (общая группа «ИТ»):

  1. МГУ им. Ломоносова.
  2. МФТИ.
  3. Университет ИТМО.
  4. НИУ «ВШЭ».
  5. СПбГУ.
  6. СПбПУ Петра Великого.
  7. МГТУ им. Баумана.
  8. УрФУ им. Ельцина.
  9. НИЯУ МИФИ.
  10. МАИ.

Что касается именно ИИ, то лидерами в этой сфере можно назвать «Вышку», МФТИ и ИТМО. На базе Физтеха создан Центр компетенций НТИ «Искусственный интеллект». Его аналитики провели исследование рынка продуктов на основе ИИ, среди его результатов вывод: кадровый голод на рынке ИИ сохраняется, а решать ключевые задачи в сфере искусственного интеллекта по плечу выпускникам вузов, получившим навыки работы с машинным обучением. В числе «фаворитов» выпускники шести университетов: ВШЭ, Физтеха (МФТИ), Сколтеха, ИТМО, МГУ, СПбГУ.


Вузы

Курсы машинного обучения

Место работы

Большинство предприятий и организаций, использующих продукты на базе компьютерного зрения, не разрабатывают их силами своего штата, а пользуются решениями, которые предлагают специализированные компании. Искать работу нужно именно в них, несколько примеров российских компаний-разработчиков CV:

  • «Системы компьютерного зрения», Санкт-Петербург;
  • «ЭЛВИС-НеоТек», Москва;
  • Яндекс, сервис Yandex Vision;
  • Mail.ru Group;
  • «Контент ИИ» (ранее – ABBYY Россия), Москва;
  • ГосНИИАС, Москва.

Кроме этого, можно устроится на работу дистанционно в иностранные компании.

Оплата труда

Больше половины открытых вакансий для разработчика компьютерного зрения в России приходится на Москву, у Питера – второе место.

Московские предложения в зависимости от уровня профессионализма, стека, которым владеет кандидат:

  • Junior – от 100 тыс. руб.
  • Junior+/Middle – 130–250 тыс. руб.
  • Middle – 200–285 тыс. руб.
  • Python-разработчик CV, специалист по Data Sciense, ML и CV – 200–300 тыс. руб.
  • руководитель группы разработки (WMS) – 207–400 тыс. руб.

Зарплата разработчика компьютерного зрения на апрель 2024

Информации о зарплатах предоставлена порталом hh.ru.

Россия 40000—80000₽
Москва 80000—354000₽

Карьера

Карьера, заработок и перспективы CV-разработчика прогрессируют по мере накопления опыта, знаний, умений. Из небольших стартапов можно перейти в крупные компании – вакансий пока больше, чем специалистов высокого уровня квалификации.

Профессиональные знания

Разработчику компьютерного зрения требуются знания:

  • матанализа, линейной алгебры, статистики;
  • языков C++, Python (чаще всего), Java (реже);
  • библиотек и инструментов ML – PyTorch, OpenCV, Caffe, Catboost, MatLab, Point Cloud Library, NumPy, Matplotlib, TensorFlow, Scikit-learn, SciPy; нейросетевых моделей – ResNet, HRNet, Swin, DaViT и пр.;
  • принципов работы с GIT;
  • структур баз данных.

Могут понадобиться хотя бы поверхностные знания в области, для которой создается CV-приложение (медицина, маркетинг, видеонаблюдение, электронная торговля и др.).

Читайте также
Профгид
Профессия «Инженер-программист»

Примеры компаний с вакансиями разработчика компьютерного зрения

  • Senior Golang-разработчик (платформа видеокоммуникаций Jazz)
  • Преподаватель Data Science, Машинное обучение (удалённо)
  • Golang Developer (Middle+/Senior)
  • Python-разработчик
  • Разработчик С#.Net (Middle)
  • Ведущий программист 1С

Материал может содержать рекламу. Информация о рекламодателе по ссылкам в статье.