Программный конвейер «WeRecognizer» для автоматического фенотипирования колосьев пшеницы
Модуль «WERecognizer» распознает колосья пшеницы на цветных цифровых двумерных изображениях, полученных по двум стандартным протоколам, и извлекает из них такие характеристики колоса пшеницы, как его размеры, индексы формы и цветовые дескрипторы.
Алгоритм включает:
• распознавание образа колоса на изображениях;
• сегментацию остей от “тела” колоса на изображении;
• оценку количественных характеристик остистости колоса (площадь остей на изображении, количество и среднюю длину остей);
• построение осевой линии, аппроксимирующей членики стержня колоса;
• построение профиля колоса;
• выпрямление колоса относительно осевой линии;
• вычисление модели, представляющей форму колоса (модель четырехугольников);
• определение количественных характеристик формы колоса;
• определение цветовых характеристик колоса.
Описание входных данных
На вход программы подается фотографии колосьев, снятые по специальным протоколам: «на столе», «на прищепке». Колосья фотографируются на синем фоне. Колос располагается на предметном столе или закрепляется вертикально на штативе. Штатив, используемый в протоколе «на прищепке», позволяет закреплять колос под разным углом вращения относительно своей оси. В область каждого кадра помещается цветовая шкала ColorChecker Mini Classic target (https://xritephoto.com/camera), которая позволяет произвести цветовую коррекцию изображения.
Описание выходных данных
В качестве «выходных данных» программа создает 4 файла в простом табличном формате CSV, каждая строка в которых соответствует одному изображению на входе, а в столбцах хранятся значения соответствующих характеристик колоса.
• colorDescriptors.csv – цветовые характеристики колоса;
• commonResults.csv – общие характеристики формы и размера колоса;
• profileResults.csv – параметры профиля колоса;
• quadrangleResults.csv – параметры модели четырехугольника.
Также опционально программа создает дополнительные выходные изображения, такие как: маски сегментированных областей изображения, маски предварительно размеченных колосков, разметка распознанных колосьев, отмеченная на исходном изображении, схематические изображения модели колоса.
Программа реализована на ЯП Java (OpenJDK version “20.0.1” 2023-04-18) с использованием библиотеки компьютерного зрения OpenCV (v.3.4.2-0, https://docs.opencv.org/3.4/d9/d52/tutorial_java_dev_intro.html) и библиотек Apache Commons IO (v.2.6, https://commons.apache.org/proper/commons-io/), Apache Commons Math3 (v.3.6.1, https://commons.apache.org/proper/commons-math/), ImageJ (v. 1.52t, https://github.com/imagej/ImageJ).