Пример обнаружения объектов в сельском хозяйстве: расчет зерен кукурузы

Мотивация: как автоматизация ферм может помочь развитию бизнеса

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

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

Задача: создать инструмент обнаружения объектов для распознавания кукурузных зерен (PoC)

Партнер сельскохозяйственной компании обратился к MindCraft с просьбой разработать модель автоматизации машинного обучения, которая могла бы подсчитывать зерна кукурузы на кукурузе с помощью 2D-фотографии. Расчет зерен в настоящее время выполняется вручную с использованием определенного алгоритма, позволяющего работникам подсчитывать количество зерен на кукурузе. кукурузные зерна. Автоматическое решение для расчета кукурузы поможет нашему клиенту автоматизировать утомительную ручную работу отдельных отделов.

Клиент обратился к нам, чтобы понять выполнимость этой задачи и изучить показатели качества в этом случае. Интересным фактом было то, что у клиента была всего 1 неделя на это исследование, затем он должен был представить результаты своим заинтересованным сторонам.

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

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

Анализ набора данных

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

Ниже мы приведем несколько примеров похожих фотографий, так как мы решили не делиться материалами нашего заказчика.

Решение: один день для одной модели машинного обучения

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

Модель 1. Расчет желтых точек

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

Модель 2: анализ Z-пересечения

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

Модель 3: расчет строк с использованием дифференциалов 2-го порядка

Усреднение отклонений цветового градиента дало хорошие результаты. Однако кукурузные зерна с дырками создали проблему, которую нельзя было решить с помощью этого метода:

Модель 4: Кластеризация

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

Модель 5: Сегментация изображения

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

Модель 6: Адаптационный анализ контуров

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

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

Вывод

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

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

Свяжитесь с нами, если у вас есть личные вопросы и если у вас есть потребности в ИИ или вам нужно создать группу консультантов по науке о данных
[email protected]

Также просмотрите нашу предыдущую тему Искусственный интеллект в электронной коммерции.

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

С уважением

Команда MindCraft.ai