Приспособленность – одно из ключевых понятий теории естественного отбора и эволюции. В полевых биологических исследованиях часто возникает необходимость оценить приспособленность или сравнить ее у нескольких групп животных. Нередко при определении приспособленности используют репродуктивный успех – количество жизнеспособных потомков и способных к размножению потомков. Однако в ряде случаев такого измерения недостаточно. Например, если объект исследования – перелетные мелкие воробьиные птицы, то высокая смертность слетков в первый год жизни сильно влияет на оценку гнездового успеха пары.
За хорошую оценку репродуктивного успеха и приспособленности можно принять количество потомков, успешно завершивших два миграционных перелета – с места рождения на место зимовки и обратно, с места зимовки на место летнего размножения. Однако сделать такую оценку сложно – это потребует значительного расширения района работ, а также увеличит длительность исследования.
При работе с мелкими воробьеобразными птицами можно использовать вес птенца перед вылетом, однако и этот показатель имеет ряд ограничений. Вес птенца перед вылетом может стабилизироваться, если выводок долго не вылетает, например из-за плохой погоды или наличия в выводке позднего птенца. Также вес птенца перед вылетом можно измерить только в день вылета, что усложняет сбор материала. Возникает закономерная идея – использовать характеристики яйца (объем, вес) для оценки приспособленности пары. Этот подход имеет свои ограничения – многие виды проявляют беспокойство, если яйца достают из гнезда. Яйцо всегда можно повредить при измерении веса и тем более линейных размеров. Снять эти ограничения может разработка программного обеспечения для оценки объема яйца по фотографии. В таком случае в качестве первичных данных нужно будет собирать только фотографию гнезда вместе с объектом для масштаба. Кроме описанных преимуществ, это минимизирует время нахождения около гнезда и (в случае открыто гнездящихся видов или работы с дуплянками) необходимость доставать яйца из гнезда.
В нашей статье алгоритм распознавания и вычисления объема яиц разработан для Ficedula hypoleuca (мухоловки-пеструшки). Это популярный объект орнитологических исследований, удобный для работы и предпочитающий искусственные гнездовья естественным дуплам. Известны несколько работ, посвященных измерению объема яиц мухоловки-пеструшки [1, 2]. В дальнейшем алгоритм может быть адаптирован и для других видов птиц, в частности для изучения экологии дуплогнездников в естественных дуплах.
Цель исследования: разработка метода бесконтактного определения линейных размеров и объема яиц мелких воробьеобразных птиц на примере мухоловки-пеструшки.
Материалы и методы исследования
Работа проводилась в 2019 г. на территории Приобской лесостепной провинции в 30 км от г. Новосибирска в березовом лесу с березово-осиновыми, осиново-березовыми участками, посадками ели, сосны и лиственницы, с обильным подлеском черемухи. Ближайшие населенные пункты – пос. Железнодородный, с. Гусиный брод.
Весь компьютерный анализ фотоизображений производился с использованием языка программирования Python 3 и таких пакетов, как: SciPy [3], Numpy [4], OpenCV [5s]. Для оценки реальных размеров использовался контрастный объект (зажигалка) известных размеров (22*47 мм).
Для анализа фотоизображений важным этапом является наличие фотографий, полученных в максимально схожих условиях. Чтобы минимизировать влияние посторонних факторов, был разработан свод правил, которым должен был следовать фотограф:
1) фотография должна делаться с одинакового расстояния, к примеру с высоты дуплянки;
2) фотография должна иметь достаточно высокое качество: разрешение не менее 12 мегапикселей, при этом гнездо с яйцами находится в центре и занимает не менее 30 % кадра. Изображения яиц и объекта, используемого для масштаба, должны быть резкими;
3) для измерения реального объема яиц необходимо наличие заранее измеренного объекта, который сильно отличался бы по цветовой гамме от остального изображения;
4) фотография не должна быть затемнена или, наоборот, засвечена.
Полученные фотографии сортировались по географическим точками, на которых они были сделаны.
Кроме учета параметров при создании фотографии, важным этапом является предобработка изображения. Для предобработки фотографий использовалась библиотека из OpenCV perMeanShift, которая усредняет все оттенки для каждого цвета, что увеличивает точность распознавания, а затем библиотека GaussianBlur которая сглаживает объекты на фотографиях, устраняя шум. Также фотографии были преобразованы из RGB (аддитивной цветовой модели, описывающей способ кодирования цвета) в HSV (цветовую модель, описывающую альтернативный способ кодировки цвета, основанный на передаче тона, насыщенности и яркости) для более точного определения необходимых цветовых гамм.
Получив предобработанные изображения, мы разработали поэтапный план работ. Мы произвели изменение размера изображения для ускорения работы алгоритма. Следующим этапом было выделение по цвету: от светло-синего до темно-синего (от (175, 0, 80) до (210, 40, 100) в RGB), наложение маски определенных по цвету объектов. Это позволило получить только участки изображения, на которых находятся яйца. Затем, уже на только выделенных изображениях яиц, нами был использован перевод в серый, применена бинаризация Отсу для перевода изображения в монохромный спектр в целях упрощения работы с изображениями. Следующим этапом следовало разделить границы у близко лежащих объектов. Для этого использовался алгоритм из OpenCV – Watershed. После разделения границ производилось заполнение регионов с объектами – яйцами – разными маркерами (цветами), для того чтобы была возможность работать с каждым объектом по отдельности. Для определения объема объектов (яиц) необходимо было выбрать способ его расчета. Наиболее подходящей формулой исходя из анализа литературы стало вычисление объема эллипсоида V = (4πabc)/3, где a, b, c – длина полуосей эллипсоида [6].
Для определения полуосей эллипсоида был использован алгоритм fitEllipse из OpenCV, который описывает эллипс вокруг центра объекта с минимальными потерями площади.
После получения данных полуосей эллипса по формуле расчета объема были получены данные для каждого объекта. Так как для расчета объема необходимы 3 полуоси, то было сделано допущение, что обе малые полуоси объекта (яйца) равны.
Схожий анализ был повторен для объекта, используемого для определения реальных масштабов, за исключением цветовой гаммы объекта, которая лежала в спектре RGB от (330, 30, 60) до (360, 100, 100), а также производилось определение размеров объекта. Так как объект имел вытянутую форму, для его расчета использовалась функция minAreaRect, которая рисует прямоугольник вокруг центра объекта с минимальной потерей площади.
Полученные данные о размерах яиц в кубических пикселях необходимо было преобразовать в кубические миллиметры. Расчет производился путем вычисления длины известного объекта в пикселях, соотнесения пикселя к миллиметру для каждой фотографии и перевода в фактические размеры.
Результаты исследования и их обсуждение
В ходе работы было получено 79 фотографий (по одной из каждой исследованной дуплянки), 67 из которых соответствовали необходимым условиям для анализа (рис. 1).
Рис. 1. Пример исходного изображения
Рис. 2. Пример объектов, полученных в результате анализа
В совокупности на всех фотографиях было определено 216 объектов, 135 из которых соответствовали критериям достоверности и были подвергнуты дальнейшему анализу (рис. 2).
Выборка была проверена на нормальность с помощью критерия согласия Колмогорова–Смирнова (0,97, pval = 10-263). Минимальный и максимальный размер яйца был установлен в 700 и 2400 мм3 соответственно исходя из литературных данных и поправки на возможные погрешности алгоритма. Гистограмма распределения установленных размеров яиц приведена на рис. 3.
Рис. 3. Распределение количества яиц в зависимости от объема
Выявленные проблемы
В ходе исследования был определен ряд проблем, связанных с процессом получения фотоизображений и их последующей обработкой.
1. Процесс фотографирования происходил без жесткой фиксации оборудования в определенном положении над гнездом, что привело к уменьшению единообразия выборки изображений.
2. Различные характеристики цвето- и светочувствительности у камер используемых телефонов также могли быть причиной уменьшения схожести, что привело к ухудшению эффективности алгоритма распознавания.
3. Необходимость наличия объекта с известным размером для вычисления фактического размера яиц привела к добавлению посторонних предметов в гнездо (в кладку был помещен объект для определения масштаба) и к увеличению ресурсоемкости алгоритма.
4. Разработанный нами алгоритм ограничен определенным спектром цвета (или подходит только для мухоловки-пеструшки).
Решения
Аппаратное – создание полноценной автономной платформы на базе микропроцессорных систем с возможностью фотосъемки, геотаргетирования, определения размеров яиц и использования тепловой карты.
Программное – учет разнообразия характеристик модулей камер современных телефонов, выведение дополнительных коэффициентов, позволяющих создавать единообразные снимки для последующей их обработки одним алгоритмом.
Возможные улучшения
В случае аппаратного решения возникает ряд дополнительных возможностей и вместе с тем задач. Так, ультразвуковые датчики расстояния позволят избавиться от необходимости использовать объект с известным размером для масштаба путем применения несложных расчетов для вычисления фактического размера фотографий; тепловизионные сенсоры предоставят возможность бесконтактного отслеживания температуры яиц и кладки, а также дополнительные изображения для алгоритма распознавания яиц, улучшая эффективность его работы. Идентичная модель камеры упростит работу математической части алгоритма, поскольку отпадает вариативность параметров цвето- и светочувствительности.
Для программного варианта разрешения возникших в ходе исследования проблем представляется в корне новое относительно использованных нами ранее методов решение – разработка и обучение нейросетевых алгоритмов – нейросети. Данная работа позволит не только глобально расширить спектр возможных вариантов использования программы (определение характеристик различных типов яиц), но и может привнести качественно новую информацию: при достаточно большой и богатой видами выборке фотографий, алгоритм позволит определять не только непосредственные характеристики размеров и принадлежности к виду, но и косвенно рассчитывать массу яиц, что существенно облегчит и упростит работу исследователя.
Заключение
Данный алгоритм позволяет бесконтактно определять размеры и объем яйца. Большую перспективу имеет его адаптация под яйца других видов птиц, в том числе имеющих покровительственную окраску. Использование мобильного приложения на основе данного алгоритма даст возможность расширить спектр данных, получаемых исследователями при проверке гнезд, в том числе гнезд крупных хищников.
Часто при массовой проверке искусственных гнездовий (например, сов) исследователи ограничиваются изучением лотка гнезда с помощью видеокамеры. Повысив качество изображения и выполнив ряд требований, они смогут измерять не только размер кладки и сроки гнездования, но и объем яиц.
Работа поддержана грантом РФФИ, проект 18-34-00444 мол_а.