Как ученые считают краснокнижных пеликанов с помощью машинного обучения

Компания

Проект «Сохранение кудрявого и розового пеликанов»

Отрасль

«Сохранение кудрявого и розового пеликанов» — программа по изучению и защите редких птиц в дикой природе. Чтобы сохранить российскую популяцию пеликанов, особенно ту ее часть, которая обитает вне заповедников, ученым нужно вести мониторинг, оценивать численность птиц и следить за их перемещениями, благополучием гнездовых колоний.

До недавнего времени пеликанов считали вручную — на это уходила неделя, а оценка получалась приблизительной. О том, как с помощью нейросети это время сократили до 30 миллисекунд, рассказала команда проекта — инициатор и координатор программы, ученый секретарь Московского зоопарка Роман Аношин, инженер-исследователь Владимир Валеев и специалист по данным Ольга Рудакова.

Для сохранения пеликанов ученым важно вести постоянный мониторинг

Одна из задач программы — мониторинг гнездовых колоний, кормовых и сезонных скоплений кудрявых и розовых пеликанов, особенно за пределами заповедников. В Предкавказье птицы в основном обитают на искусственных водоемах — рукотворных озерах, прудах.

Мы пытаемся понять, почему большие колонии птиц стали появляться там, где раньше не водились. Например, на акватории озера Маныч-Гудило, водоемах Центральной Калмыкии, причем они продвигаются дальше на север. Возможно, изменения климата вынуждают птиц покидать привычные места и искать новые, подвергая себя риску остаться без пропитания или оказаться в неблагоприятных условиях.

Часто пеликаны живут на территориях охотничьих хозяйств, кормятся на рыбоводных прудах. Режим их использования — дополнительный фактор беспокойства, который вынуждает пеликанов покидать освоенные места.

Проблема в том, что к западу от Урала пригодных для обитания мест все меньше. Дальнейшему продвижению на север препятствует слишком короткое, чтобы успеть вырастить птенцов, лето. На юге слишком сухо, мало пригодных для пеликанов водоемов, а те немногие территории, что остались, используются человеком.

Единственный путь сохранения популяции пеликанов — баланс хозяйственных и природоохранных интересов на основе системы мониторинга. Причем следить за популяцией нужно практически в реальном времени: только так можно эффективно корректировать систему природопользования и добиваться результатов.

Мы начали работу с самого крупного поселения пеликанов, расположенного на границе Ставропольского края и Республики Калмыкия. В гнездовых колониях на двух соседних островах в 2020 году проживало 2214 розовых пеликанов и 380 кудрявых. Количество птиц определили «булавочным методом». Для этого брали аэрофотоснимок, например с квадрокоптера, и в буквальном смысле булавкой отмечали на нем каждую попавшую в кадр птицу.

Булавочный метод — сложный и трудозатратный, к тому же он дает только приблизительные данные. В последний раз птиц пересчитывали семь раз, и каждый раз получали новый результат. О временных затратах и говорить страшно: на пересчет 2100–2200 особей уходила неделя.

Остров, где живут розовые и кудрявые пеликаны

Наша задача — автоматизировать подсчет пеликанов

Мы решили разработать модель для автоматизации подсчета пеликанов, чтобы сэкономить время и получать точные данные, которые легли бы в основу мониторинга. Нам требовались инструменты, которые позволили бы работать с моделями. Проект некоммерческий, а потенциальные пользователи решения — ученые-орнитологи.

Для проекта мы искали технологии с низким порогом входа и минимальными затратами на администрирование. Выбрали Cloud ML Platform, состоящую из компонентов на базе популярного JupyterHub и MLflow и благодаря гранту от VK Cloud смогли быстро приступить к разработке моделей.

Учим нейросеть считать пеликанов, отличать их от чаек и бакланов

Для первичного анализа данных использовали JupyterHub, входящий в Cloud ML Platform. Для того чтобы орнитологи могли просто взаимодействовать с системой, сделали телеграм-бот. Он выступает интерфейсом для общения с нейросетью.

На старте использовали алгоритм Watershed. Он позволил получить цифру, зафиксированную по итогам предыдущих оценок. Но результат требовал доработки: классическая модель компьютерного зрения плохо сегментировала объекты. Пеликаны гнездятся на островах, где также обитают чайки и бакланы. Для успешного мониторинга модель должна была научиться различать птиц и исключать из подсчета другие виды.

Пример алгоритма Watershed

Вторая версия модели позволила решить эту проблему. Для модели использовали нейросеть YOLOv5, реализованную на фреймворке Pytorch с архитектурой One-Stage Detector. Она предсказывает координаты ограничивающих рамок с объектами, а также выдает данные по классификации и вероятности нахождения объекта.

Для модели на YOLOv5 написали алгоритм постобработки, совмещающий NMS, метод скользящего окна и агрегации предсказаний, для того чтобы распараллелить вычисления на облаке. Управляя пороговыми значениями для NMS, удалось сделать плавающую точность. Дообучившись на дополнительных данных, модель сможет не только увеличить точность распознавания пеликанов, игнорировать чаек и бакланов, но и отличать розовых пеликанов от кудрявых.

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

Ключевая задача сейчас — перейти от MVP в виде первой модели к полноценному инструменту. Мы очень надеемся, что вскоре сможем применить его на практике и начать непрерывный мониторинг пеликанов на территории юга России, Калмыкии и Западной Сибири.

Иллюстрация: результат работы YOLOv5 (июль 2023)

Итоги: сократили время подсчета пеликанов с 7 дней до 30 миллисекунд

Нам удалось создать работоспособную модель, которая на этапе теста продемонстрировала хорошие результаты. Вручную на пересчет колонии в 2000 пеликанов уходило примерно 7 дней. Нейросеть получает тот же результат за 30 миллисекунд. Благодаря такой скорости можно оперативно оценивать численность птиц и их территориальное распределение в онлайн-режиме.

Модель, которую мы создаем в облаке VK Cloud, важна не только для орнитологов. У него есть глобальная цель. Пеликан — индикаторный вид, по поведению этих птиц можно судить об изменениях в окружающей среде. Отслеживая состояние колоний, мы сможем точнее оценивать экологическую ситуацию и прогнозировать изменения климата.

Решение для проекта «Сохранение кудрявого и розового пеликанов» разработали по программе грантов VK Cloud для стартапов. Инициатива направлена на поддержку проектов разных масштабов: от MVP до уже работающих на рынке стартапов.

Ваша команда может в течение 6 месяцев пользоваться облачными решениями VK Cloud со скидкой от 50 до 100%. Ознакомиться с условиями программы и подать заявку на участие можно на странице программы.

Попробуйте наши сервисы

После активации аккаунта мы свяжемся с вами и начислим 3 000 рублей на ваш счет VK Cloud, чтобы вы смогли протестировать сервис в течение 60 дней.

Или оставьте с индивидуальным расчетом

40+ готовых сервисов