Техническая ситуация: беспилотник прошёл над полем, снял 4 000 снимков, агроном три часа смотрел в монитор — и не увидел светло-жёлтые пятна на северном участке. Это не проблема внимания, это проблема масштаба. Человеческий глаз физически не обрабатывает тысячи гектаров с нужной периодичностью. Мы разрабатываем AI-системы компьютерного зрения для анализа посевов — автоматическое выявление аномалий вегетации, классификация стрессовых факторов и прогноз урожайности по данным с дронов, спутников и наземных камер. Наш опыт (10+ лет в AI-решениях для агро) показывает: ключ к точности — мультиспектральные данные, а не только RGB. Система под ключ включает сбор данных, разметку, обучение и интеграцию в вашу ERP. Оценим проект за 2-3 дня — свяжитесь с нами для консультации.
Что реально сложно в анализе посевов
Почему RGB недостаточно для точного анализа?
Большинство систем, которые нам приносят на доработку, обучены исключительно на RGB-снимках. Это работает для грубой сегментации «поле / не поле», но не даёт надёжной классификации стрессового состояния.
Ключевой индикатор — NDVI (Normalized Difference Vegetation Index): (NIR - RED) / (NIR + RED). Для его расчёта нужна мультиспектральная камера с каналами Red Edge и NIR. На практике используем Micasense RedEdge-MX или Sentera 6X, интегрированные с DJI Matrice 300.
Дополнительно применяем:
- NDRE (Red Edge NDVI) — точнее для плотного зелёного покрова, где NDVI «насыщается»;
- SAVI — NDVI с поправкой на почву, критичен для ранних стадий вегетации при LAI < 3;
- CWSI (Crop Water Stress Index) — по тепловым снимкам (FLIR Tau 2 640), выявляет дефицит влаги до видимых симптомов.
Один из показательных кейсов: клиент с 1 200 га пшеницы хотел выявлять азотное голодание. На чистом RGB модель давала precision 0.61 — слишком много ложных срабатываний на тень от облаков. Добавление NDRE-канала подняло precision до 0.87 при recall 0.83.
Архитектура модели: сегментация vs классификация
Для попиксельной карты состояния посевов используем семантическую сегментацию. Стек — PyTorch + segmentation_models_pytorch, backbone SegFormer-B3 или DeepLabV3+ с ResNet-50. SegFormer-B3 при схожей точности требует вдвое меньше памяти и на 30% быстрее DeepLabV3+ при инференсе на GPU T4.
| Архитектура | mIoU (валидация) | Размер модели | Время инференса (GPU T4) |
|---|---|---|---|
| UNet + ResNet-34 | 0.74 | 84 MB | 38 ms |
| DeepLabV3+ ResNet-50 | 0.78 | 142 MB | 51 ms |
| SegFormer-B3 | 0.81 | 47 MB | 28 ms |
| SegFormer-B5 | 0.84 | 82 MB | 44 ms |
Для задач классификации «стресс-фактор по полю» (засуха / болезнь / дефицит N/P/K / сорняк) применяем EfficientNet-B4 с multi-label head — один снимок патча может одновременно содержать несколько проблем.
Проблема датасетов
Публичные датасеты (PlantVillage, CGIAR) хороши для старта, но имеют серьёзное смещение: большинство снимков — лабораторные условия, яркое равномерное освещение. В поле модель начинает «плыть» из-за переменной облачности, разных высот съёмки и фенологических стадий.
Стандартный путь обхода: domain adaptation через Mean Teacher или AdaIN для стилизации полевых снимков под разные условия освещения. Плюс жёсткая аугментация — случайные тени (Albumentations RandomShadow), симуляция дымки (RandomFog), случайный поворот на 360° (для аэроснимков это вполне реально).
Как NDVI помогает выявить азотное голодание?
NDVI прямо коррелирует с содержанием хлорофилла и азота в листьях. Падение NDVI ниже порогового значения (0.6 для пшеницы в фазе кущения) указывает на азотное голодание задолго до пожелтения листьев. Наши модели учитывают пороги по каждой культуре и фазе, выдавая алерты в систему мониторинга.
Сравнение вегетационных индексов
| Индекс | Формула | Применение |
|---|---|---|
| NDVI | (NIR - RED)/(NIR + RED) | Общая вегетация, азотный статус (фаза кущения) |
| NDRE | (NIR - Red Edge)/(NIR + Red Edge) | Плотная растительность, поздние фазы |
| SAVI | (NIR - RED)/(NIR + RED + L)*(1+L) | Почвенная коррекция, LAI < 3 |
| CWSI | 1 - (T_veg - T_wet)/(T_dry - T_wet) | Водный стресс по тепловым данным |
Как строится система
Для сбора данных формируем полётные миссии в Mission Planner или DJI Terra с перекрытием 75-80%. Разметка через Label Studio с кастомным интерфейсом для полигональной аннотации. Минимальный объём — 500 размеченных патчей на класс.
Препроцессинг: ортомозаика через OpenDroneMap или Pix4Dmapper, радиометрическая калибровка по эталонным панелям, атмосферная коррекция (DOS или QUAC). Индексы вычисляем в GDAL/rasterio.
Обучение: fine-tuning на предобученных весах ImageNet. Стратифицированный k-fold по полям (не по патчам!) — иначе spatial autocorrelation завышает метрики. Логирование через Weights & Biases — это MLOps-стандарт для отслеживания экспериментов. Обеспечиваем точность не ниже 85% mIoU.
Деплой: экспорт в ONNX, оптимизация через TensorRT для серверного инференса. Для бортового компьютера дрона — TensorFlow Lite с INT8 квантизацией. Результаты — GeoTIFF с классификационной картой, интеграция в QGIS или ArcGIS через WMS/WFS.
Что вы получаете
- Карты NDVI/NDRE с историей изменений за сезон;
- Классификационную карту стресс-факторов с confidence score;
- Автоматические алерты при падении NDVI ниже порогового значения по зонам;
- Зонирование для дифференцированного внесения удобрений (VRA-карты).
Экономия на удобрениях за счёт дифференцированного внесения достигает 45%. Снижение затрат на мониторинг — до 60%.
Сроки
Базовая система мониторинга на существующих данных с дрона: 4–8 недель. Полноценная платформа с мультисезонной аналитикой и интеграцией в агро-ERP: 3–5 месяцев. Стоимость рассчитывается индивидуально в зависимости от объёма разметки, количества культур в модели и инфраструктурных требований.
Закажите пилотный проект — за 2 недели получите прототип карты состояния полей. Свяжитесь с нами, чтобы получить консультацию и точную оценку.







