Внутри простого программного обеспечения для подсчета, которое немного облегчает работу биологов

Внутри простого программного обеспечения для подсчета, которое немного облегчает работу биологов
Внутри простого программного обеспечения для подсчета, которое немного облегчает работу биологов

DotDotGoose - это бесплатный инструмент с открытым исходным кодом, который помогает защитникам природы вручную подсчитывать объекты на изображениях.

Стая белых гусей в зеленом травянистом ландшафте Канады
Стая белых гусей в зеленом травянистом ландшафте Канады

Рошель Томас использует DotDotGoose для подсчета стай малых белых гусей, подобных тем, что изображены здесь. Роберт Роквелл / Американский музей естественной истории

Большинство осенних дней Дэвида Сопджеса можно найти в реке Угорь в северо-западной Калифорнии, считая рыбу. Будучи вышедшим на пенсию учителем естественных наук в старшей школе и ученым-энтузиастом, Сопьес провел последние 10 лет, наблюдая за популяцией чавычи в реке Угорь, которая, по его словам, является третьим по величине водоразделом в штате. Каждую осень Sopjes считает лососей, которые ждут зимних дождей, чтобы размножаться.

“Они больше не едят. У них на уме только одно - секс», - говорит Сопьес.

До того, как три года назад появился дрон, Сопьес и его коллеги считали лосося, ныряя с маской в реке и стоя на доске для весла, что сильно беспокоило рыбу и было не очень точным.

Дрон делал четкие фотографии лосося, но считать рыбу на снимках с помощью ручки и бумаги было утомительно. Обыскивая Интернет в поисках лучшего метода для подсчета и организации своих данных, он нашел программное обеспечение под названием DotDotGoose и с тех пор использует его.

DotDotGoose, разработанный Центром биоразнообразия и сохранения Американского музея естественной истории, представляет собой бесплатный инструмент с открытым исходным кодом, который помогает исследователям вручную подсчитывать объекты на изображениях. Питер Эрстс, старший разработчик программного обеспечения в центре, создал DotDotGoose в мае 2019 года. Идея пришла к нему в результате обсуждений с коллегами.

В то время самыми популярными способами подсчета различных категорий животных на фотографиях были практические методы. «Многие люди по-прежнему просто проецировали изображения на доску для сухого стирания, обводили животных и выключали проектор, а затем считали их, стирая [маркировку]», - говорит Эрстс. «Я увидел потребность в действительно простом инструменте, позволяющем быстро и легко расставлять точки на изображении».

Несмотря на то, что инструмент существует всего около двух с половиной лет, он уже помогает многим исследователям по всему миру. Соджес говорит, что после обнаружения DotDotGoose он насчитал тысячи рыб, и точность его данных «резко» улучшилась настолько, что Калифорнийский департамент рыбы и дикой природы заинтересовался использованием его наборов данных. Точная запись общего количества рыбы в сочетании с изображениями с дрона предоставила Sopjes полезный способ отслеживать каждую рыбу.

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

Как это работает

DotDotGoose имеет очень простой интерфейс, который позволяет пользователям импортировать изображения, которые они хотят проанализировать. Затем они могут разделить различные объекты на изображениях на «классы» или категории. Например, Sopjes определяет классы как разные стадии жизни лосося. Каждой категории соответствует цвет точки.

Чтобы подсчитать каждый класс, исследователи могут щелкнуть каждый объект на изображении, чтобы поставить точку. DotDotGoose подсчитывает количество точек по классам по мере их размещения. Пользователи могут добавлять собственные примечания, координаты широты и долготы или другие данные для описания изображения.

DotDotGoose изначально предназначался для подсчета животных в природоохранных исследованиях, но Эрстс видел, как пользователи перепрофилировали его для подсчета запасов на складах, компонентов на печатных платах и даже цветов на томатных растениях-кандидатах в Книгу рекордов Гиннеса.

Почему это полезно

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

С 1995 по 2019 год советник Томаса Роберт Роквелл делал аэрофотоснимки стай малых белых гусей в районе Гудзонова залива в Канаде. Томас говорит, что в первые годы проекта Рокуэлл распечатывал фотографии, чтобы считать гусей вручную.

Когда Томас присоединилась к проекту в 2018 году, она пыталась считать гусей с помощью Photoshop, но было сложно одновременно считать гусей по видам и возрасту. Она познакомилась с Эрстсом, когда он создавал DotDotGoose, и стала бета-тестером программы. Название программы отсылает к ее работе с белоснежными гусями.

«Я провел много дней, расставляя точки на гусях, и мне просто пришло в голову назвать это DotDotGoose», - говорит Эрстс.

По сравнению с аналогичными программами, такими как Photoshop и ImageJ, Томасу нравится, что DotDotGoose был создан с учетом интересов биологов-природоохранников и позволяет ей отмечать качество изображения или вставлять информацию, указывающую на присутствие воды на фотографии.

«Биологи и экологи сидят на тоннах и тоннах фотографических данных», - говорит Томас.

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

Будущее DotDotGoose

Эрстс с самого начала планировал полуавтоматизировать процесс.

«Если вы можете сохранить эти координаты своего местоположения на изображении, у вас, по сути, есть обучающий набор, который вы можете использовать [для питания] модели машинного обучения, чтобы помочь автоматизировать вещи в будущем», - говорит Эртс. «[Но] автоматизировать это довольно сложно, когда вы действительно начинаете думать обо всех существующих типах данных».

Эрстс предполагает, что исследователи могли бы тренировать его с помощью пары одинаково ориентированных фотографий, уникальных для их проекта, которые содержат одни и те же типы объектов.

Но даже у специализированного автоматизированного DotDotGoose есть свои ограничения. Изображения со множеством объектов, сгруппированных вместе, было бы очень сложно разобрать. И хотя автоматизированная версия программы могла бы высвободить время исследователей, Эрстс говорит, что человек по-прежнему должен быть частью процесса, по крайней мере, для проверки работы компьютера.