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

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

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

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

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

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

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

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

Разработчики компьютерного зрения создают алгоритмы и модели, которые позволяют компьютерам «видеть» и понимать изображения. Они работают над такими задачами, как детектирование и декомпозиция объектов на изображении, анализ движения и траектории, повышение качества изображения и многое другое.

В рамках стратегии импортозамещения и развития ИИ сегодня многие компании занимаются разработкой собственных проектов на базе технологий компьютерного зрения. Мы в BPA видим перспективу в подобных проектах и разрабатываем решения для автоматизации производства, мониторинга строительной деятельности, регулирования транспортных потоков, комплексного контроля безопасности на промышленных и инфраструктурных объектах. Приведу пример – наш проект по управлению офисными помещениями. Мы обучили модель компьютерного зрения распознавать подозрительные предметы в помещении (оставленный мусор), деятельность персонала и охраны.

Вадим Медяник
технический директор компании BPA
  • Хотите стать профориентологом всего за 2 месяца?
    Получите полезную профессию, помогающую людям. Курс Эльмиры Давыдовой.

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

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

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

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

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

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

Плюсы:

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

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

Вадим Медяник
технический директор компании BPA

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

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

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

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

За последние годы ML-технологии прошли большой путь: появились более эффективные алгоритмы, найдены новые сферы их применения. Тенденция на развитие отрасли продолжается, и разработчики компьютерного зрения должны быть готовы к постоянному обучению и адаптации к новым технологиям.

Вадим Медяник
технический директор компании BPA

Минусы:

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

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

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

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

Специальности в магистратуре:

  • «Прикладная математика и информатика», 01.04.02:
    • «Компьютерное зрение, графика и обработка изображений».
  • «Прикладная математика», 01.04.04:
    • «Цифровая обработка сигналов и изображений».
  • «Фундаментальная информатика и ИТ», 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

Россия 45000—75000₽
Москва 100000—290000₽

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

Карьера

Карьера, заработок и перспективы 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С

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

0 комментариев
Оценка: