УСТРОЙСТВО И СПОСОБ РАСПОЗНАВАНИЯ КОНТУРОВ СЕЛЬСКОХОЗЯЙСТВЕННЫХ ПОЛЕЙ С ПРИМЕНЕНИЕМ ГЛУБИННОГО ОБУЧЕНИЯ ПО ДАННЫМ ДИСТАНЦИОННОГО ЗОНДИРОВАНИЯ ЗЕМЛИ
DEVICE AND METHOD FOR RECOGNIZING CONTOURS OF AGRICULTURAL FIELDS USING DEEP LEARNING BASED ON REMOTE SENSING DATA

ОБЛАСТЬ ТЕХНИКИ
[0001] Представленное техническое решение относится, в общем, к области вычислительной техники, а в частности к способу и устройству определения контуров сельскохозяйственных полей с применением глубинного обучения по данным дистанционного зондирования Земли (ДЗЗ), в том числе, группировки Sentinel-2. Sentinel-2 - семейство спутников Европейского космического агентства, созданное в рамках проекта глобального мониторинга окружающей среды и безопасности «Коперник», предназначенное для мониторинга использования земель, растительности, лесных и водных ресурсов, также могут применяться при ликвидации последствий стихийных бедствий.
УРОВЕНЬ ТЕХНИКИ
[0002] В настоящее время получили широкое распространение технологии мониторинга состояния сельскохозяйственных полей по данным ДЗЗ. При этом все расчеты ведутся по заданным ручным способом контурам поля. Под контуром поля понимается набор опорных точек с их координатами, формирующих геометрию поля. Пример контура сельскохозяйственного поля представлен на Фиг. 1.
[0003] Представленное техническое решение направлено на решение задачи автоматического определения контуров полей, основываясь на обработке данных ДЗЗ. При этом используются данные группировки спутников Sentinel-2 и методы глубинного обучения. Внедрение представленного решения значительно снижает трудозатраты по оцифровыванию контуров полей, повышая при этом их точность и качество.
[0004] Наиболее близким решением к представленному техническому решению, являются способ и система совместного определения земельного покрова и классификаций землепользования на основе изображений, полученных с помощью дистанционного зондирования, раскрытые в заявке ЕР3614308 А1, опубл. 26.02.2020. В данном документе описывается алгоритм выделения нескольких классов земель по способу их использования, в том числе класс «земли сельскохозяйственного назначения».
[0005] Недостатком известного решения является отсутствие возможности определения контуров отдельных полей в рамках единого класса «земли сельскохозяйственного назначения». Практически всегда отдельные поля граничат между собой, что не позволяет их отделить друг от друга как отдельные части класса «земли сельскохозяйственного назначения». Именно отдельные поля пашни представляют интерес, так как на них различаются условия возделывания: культуры, владельцы, сорта семян, способ обработки, удобрения и прочее.
[0006] Также представленное техническое решение обеспечивает возможность разделения поля на отдельные поля с учетом ряда доступных снимков ДЗЗ и двух моделей сегментации для получения точных контуров. Структурные изменения между отдельными полями могут прослеживаться только в определенный момент времени, поэтому проводить классификацию только по одному снимку ДЗЗ некорректно. Для повышения качества предсказаний в представленном техническом решении используется ряд снимков ДЗЗ с фильтрацией облачных пикселей, а в качестве снимков ДЗЗ используются данные конкретной группировки спутников - Sentinel-2 в коррекции L2A, при этом используются не только оптические спектры, но и не оптические спектры с диапазоном волны от 443 до 2190 нанометров.
[0007] Так же известна система обработки изображений для мультиспектрального и гиперспектрального анализа, применяемая в сельском хозяйстве, раскрытая в заявке WO2017105177 A1, опубл. 22.06.2017. В известной системе данные изображений, полученных с воздуха, используются для определения состояния растений. Недостатком известной системы является отсутствие возможности определения контура поля. В данном документе упоминается только определение состояния растительности по заданному контуру для ведения точного земледелия, что отличается от задачи, решаемой представленным техническим решением.
[0008] Проблема определения контуров полей рассмотрена в рамках заявки US20200226375 A1, опубл. 16.07.2020. Однако механизм получения контуров полей, описанный в данной заявке, не использует методы глубинного обучения и в принципе машинного обучения. В частности, для получения контуров полей используется алгоритм-эвристика, основанный на сравнении нормализованного индекса вегетации в разные периоды времени для соседних пикселей. Такой подход не обеспечивает достаточного качества разделения, потому что учитывает только линейные факторы.
РАСКРЫТИЕ ИЗОБРЕТЕНИЯ
[0009] Технической проблемой или задачей, поставленной в данном техническом решении, является создание нового эффективного, простого и надежного метода определения контуров сельскохозяйственных полей.
[0010] Техническим результатом является повышение точности при определении контура сельскохозяйственного поля.
[0011] Указанный технический результат достигается благодаря осуществлению способа распознавания контуров сельскохозяйственных (с/х) полей, выполняемого по меньшей мере одним вычислительным устройством, содержащего этапы, на которых:
- получают по меньшей мере один исходный мультиспектральный снимок;
- определяют для полученного снимка маску сегментации для класса пашня, маску сегментации для класса граница отдельного с/х поля и маску расстояний от центра с/х поля до ближайшей границы этого поля, причем маска сегментации представляет собой матрицу, элементами которой являются значения, характеризующие вероятность принадлежности пикселя исходного мультиспектрального снимка, соответствующего элементу матрицы, к определенному классу;
- на основе значений упомянутых масок сегментаций формируют топологическую маску, которая определяет наличие пашни на мультиспектральном снимке;
- на основе значений маски расстояний от центра с/х поля до ближайшей границы этого поля определяют начальные точки;
- помечают связанные кластеры начальных точек отдельными идентификаторами;
- распределяют точки мультиспектрального снимка по определенным выше кластерам в рамках определенной ранее топологической маски от определенных выше связных кластеров начальных точек с использованием значений маски расстояний от центра с/х поля до ближайшей границы этого же поля, причем идентификатор копируется каждый раз соседним пикселям от связных кластеров начальных точек;
- получают отдельно связанные единым идентификатором кластеры точек, которые являются отдельными с/х полями;
- определяют контуры с/х полей как координаты опорных точек полигонов, формирующих геометрию отдельных с/х полей.
[0012] В одном из частных примеров осуществления способа в качестве мультиспектральных снимков используют снимки, полученные при помощи группировки спутников Sentinel-2 в корректировке L2A.
[0013] В другом частном примере осуществления способа значения элементов матрицы находятся в интервале [0,1].
[0014] В другом частном примере осуществления способа маски сегментации определяются посредством последовательного применения двух обученных сверточных нейронных сетей.
[0015] В другом частном примере осуществления способа в качестве начальных точек выбираются регионы мультиспектрального снимка, где значение маски расстояний от центра с/х поля до ближайшей границы этого же поля больше, чем значение параметра min_peak_distance - порогового значения расстояния от центра с/х поля до ближайшей границы.
[0016] В другом частном примере осуществления способа элементы топологической маски определяются по формуле:
ij
Е - матрица, элементами которой являются вероятности e in [0,1] того, что пиксель ij в изначальном изображении является пашней;
ij
В - матрица, элементами которой являются вероятности b in [0,1] того, что пиксель ij в изначальном изображении является границей пашней;
extent_threshold - пороговое значение вероятности после которого пиксель считается пашней;
boundaries_threshold - пороговое значение вероятности после которого пиксель считается границей отдельного сельскохозяйственного;
ij
Т - топологическая маска, по которой определяется пашня, матрица, каждый элемент t in {0,1} является индикатором того, что там находится пашня.
[0017] В другом частном примере осуществления способа дополнительно выполняют этапы, на которых:
- разделяют исходный мультиспектральный снимок на множество снимков в зависимости от количества определенных промежуточных контуров с/х полей, причем каждое изображение содержит пиксели, относящиеся к пашне, расположенной внутри отдельного промежуточного контура с/х поля, а остальная часть изображения имеет черный цвет;
- определяют для каждого снимка, полученного на предыдущем этапе, контуры с/х полей для каждого мультиспектрального снимка;
- получают конечные контура с/х полей, путем выбора разделения на отдельном мультиспектральном снимке с максимальным числом контуров.
[0018] В другом предпочтительном варианте осуществления заявленного решения представлено устройство распознавания контуров сельскохозяйственных полей, содержащее по меньшей мере одно вычислительное устройство и по меньшей мере одно устройство памяти, содержащее машиночитаемые инструкции, которые при их исполнении по меньшей мере одним вычислительным устройством выполняют вышеуказанный способ.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
[0019] Признаки и преимущества настоящего технического решения станут очевидными из приводимого ниже подробного описания изобретения и прилагаемых чертежей, на которых:
[0020] На Фиг. 1 - представлен пример контура с/х поля.
[0021] На Фиг. 2 - представлены примеры исходного изображения, масок сегментации и маски расстояний от центра с/х поля до ближайшей границы.
[0022] На Фиг. 3 - представлен пример с/х поля внутри определенного промежуточного контура на черном фоне, которое будет разделено на отдельные контуры.
[0023] На Фиг. 4 - представлен пример разделения одного с/х поля внутри определенного промежуточного контура на отдельные контуры.
[0024] На Фиг. 5 - представлен пример изображения контуров с/х полей, полученных в результате работы Устройства определения контуров с/х полей.
[0025] На Фиг. 6 - представлен пример изображения начальных точек.
[0026] На Фиг. 7 - представлен пример изображения кластеров начальных точек.
[0027] На Фиг. 8 - представлен пример изображения контуров с/х полей.
[0028] Фиг. 9 - представлена общая схема взаимодействия элементов устройства определения контуров сельскохозяйственных полей.
[0029] На Фиг. 10 - подставлен пример диаграммы потоков данных.
[0030] на Фиг. 11 - представлен пример общего вида вычислительного устройства.
ОСУЩЕСТВЛЕНИЕ ИЗОБРЕТЕНИЯ
[0031] Ниже будут описаны понятия и термины, необходимые для понимания данного технического решения.
[0032] В данном техническом решении под системой подразумевается, в том числе компьютерная система, ЭВМ (электронно-вычислительная машина), ЧПУ (числовое программное управление), ПЛК (программируемый логический контроллер), компьютеризированные системы управления и любые другие устройства, способные выполнять заданную, четко определенную последовательность операций (действий, инструкций).
[0033] Под устройством обработки команд подразумевается электронный блок, вычислительное устройство, либо интегральная схема (микропроцессор), исполняющая машинные инструкции (программы).
[0034] Устройство обработки команд считывает и выполняет машинные инструкции (программы) с одного или более устройств хранения данных. В роли устройства хранения данных могут выступать, но не ограничиваясь, жесткие диски (HDD), флеш-память, ПЗУ (постоянное запоминающее устройство), твердотельные накопители (SSD), оптические приводы.
[0035] Вычислительное устройство - счетно-решающее устройство, автоматически выполняющее одну какую-либо математическую операцию или последовательность их с целью решения одной задачи или класса однотипных задач (Большая советская энциклопедия. - М.: Советская энциклопедия. 1969 - 1978.).
[0036] Программа - последовательность инструкций, предназначенных для исполнения устройством управления вычислительной машины или устройством обработки команд.
[0037] Программный модуль - программа или отдельная ее функциональная часть, рассматриваемая как единое целое в контекстах хранения, замены, трансляции, объединения с другими программными модулями и ее загрузки в оперативную память ЭВМ.
[0038] База данных (БД) - совокупность данных, организованных в соответствии с концептуальной структурой, описывающей характеристики этих данных и взаимоотношения между ними, причем такое собрание данных, которое поддерживает одну или более областей применения (ISO/IEC 2382:2015, 2121423 «database»).
[0039] Сигнал - материальное воплощение сообщения для использования при передаче, переработке и хранении информации.
[0040] Пашня - сельскохозяйственные угодья, ежегодно обрабатываемые и используемые под посев сельскохозяйственных культур, многолетние травы
[0041] Область разметки - географическая область, заданная набором геокоординат, в которой необходимо провести выделение контуров сельскохозяйственных полей по данным ДЗЗ.
[0042] Гео-слой - совокупность пространственных (географических) данных единого формата с привязкой к географическим координатам.
[0043] Мультиспектральный снимок - снимок полученный при одновременной съемке одного и того же участка Земли в разных спектральных каналах.
[0044] В соответствии со схемой, приведенной на Фиг. 9, устройство определения контуров с/х полей содержит:
1. Модуль 11 подготовки данных. Модуль 11 выполнен с возможностью получения данных ДЗЗ. В качестве данных ДЗЗ используются данные группировки спутников Sentinel-2 в корректировке L2A. Оператор задает область разметки посредством устройств Ввода/Вывода, таких как экран, клавиатура, мышь, интерфейс командной строки. По заданной оператором области разметки, данные ДЗЗ автоматически скачиваются Модулем 11 с сайта миссии Европейского союза по мониторингу Земли (Copernicus Open Access Hub, см. https://scihub.copernicus.eu/) в результате исполнения программы. Скачанные данные хранятся в БД Устройства.
2. Модуль 12 получения контуров с/х полей. Модуль 12 выполнен с возможностью последовательного использования двух обученных нейронных сетей и получения контуров с/х полей.
3. Модуль 13 объединения контуров с/х полей. Модуль 13 выполнен с возможностью объединения результатов предсказаний по отдельным секторам в единый гео-слой.
4. Модуль 14 фильтрации контуров полей по заданной области разметки. Модуль 14 выполнен с возможностью фильтрации контуров с/х полей только по заданной области разметки.
[0045] Каждый модуль может быть реализован на базе программно-аппаратных средств вычислительного устройства и оснащен соответствующими интерфейсами Ввода/Вывода для обмена сигналами с целью получения и передачи информации. По результатам работы устройства формируется гео-слой, содержащий информацию о контурах с/х полей в заданной области разметки.
[0046] В общем виде (см. Фиг. 11) вычислительное устройство (200) содержит объединенные общей шиной информационного обмена один или несколько процессоров (201), средства памяти, такие как ОЗУ (202) и ПЗУ (203), интерфейсы ввода/вывода (204), устройства ввода/вывода (205), и устройство для сетевого взаимодействия (206).
[0047] Процессор (201) (или несколько процессоров, многоядерный процессор и т.п.) может выбираться из ассортимента устройств, широко применяемых в настоящее время, например, таких производителей, как: Intel™, AMD™, Apple™, Samsung Exynos™, MediaTEK™, Qualcomm Snapdragon™ и т.п. Под процессором или одним из используемых процессоров в системе (200) также необходимо учитывать графический процессор, например, GPU NVIDIA с программной моделью, совместимой с CUDA, или Graphcore, тип которых также является пригодным для полного или частичного выполнения способа, а также может применяться для обучения и применения моделей машинного обучения в различных информационных системах.
[0048] ОЗУ (202) представляет собой оперативную память и предназначено для хранения исполняемых процессором (201) машиночитаемых инструкций для выполнения необходимых операций по логической обработке данных. ОЗУ (202), как правило, содержит исполняемые инструкции операционной системы и соответствующих программных компонент (приложения, программные модули и т.п.). При этом, в качестве ОЗУ (202) может выступать доступный объем памяти графической карты или графического процессора.
[0049] ПЗУ (203) представляет собой одно или более устройств постоянного хранения данных, например, жесткий диск (HDD), твердотельный накопитель данных (SSD), флэш-память (EEPROM, NAND и т.п.), оптические носители информации (CD-R/RW, DVD-R/RW, BlueRay Disc, MD) и др.
[0050] Для организации работы компонентов системы (200) и организации работы внешних подключаемых устройств применяются различные виды интерфейсов В/В (204). Выбор соответствующих интерфейсов зависит от конкретного исполнения вычислительного устройства, которые могут представлять собой, не ограничиваясь: PCI, AGP, PS/2, IrDa, FireWire, LPT, COM, SATA, IDE, Lightning, USB (2.0, 3.0, 3.1, micro, mini, type C), TRS/Audio jack (2.5, 3.5, 6.35), HDMI, DVI, VGA, Display Port, RJ45, RS232 и т.п.
[0051] Для обеспечения взаимодействия пользователя с вычислительным устройством (200) применяются различные средства (205) В/В информации, например, клавиатура, дисплей (монитор), сенсорный дисплей, тач-пад, джойстик, манипулятор мышь, световое перо, стилус, сенсорная панель, трекбол, динамики, микрофон, средства дополненной реальности, оптические сенсоры, планшет, световые индикаторы, проектор, камера, средства биометрической идентификации (сканер сетчатки глаза, сканер отпечатков пальцев, модуль распознавания голоса) и т.п.
[0052] Средство сетевого взаимодействия (206) обеспечивает передачу данных посредством внутренней или внешней вычислительной сети, например, Интранет, Интернет, ЛВС и т.п. В качестве одного или более средств (206) может использоваться, но не ограничиваться: Ethernet карта, GSM модем, GPRS модем, LTE модем, 5G модем, модуль спутниковой связи, NFC модуль, Bluetooth и/или BLE модуль, Wi-Fi модуль и др.
[0053] Дополнительно могут применяться также средства спутниковой навигации в составе устройства (200), например, GPS, ГЛОНАСС, BeiDou, Galileo.
[0054] Конкретный выбор элементов устройства (200) для реализации различных программно-аппаратных архитектурных решений может варьироваться с сохранением обеспечиваемого требуемого функционала.
[0055] МОДУЛЬ 11
Модуль 11 исполняет последовательно следующие операции.
[0056] Определение карты скачивания спутниковых снимков группировки Sentinel-2. Группировка спутников Sentinel-2 проводит мультиспектральную съемку по установленной сетке. Вся площадь планеты разбита на квадратные сектора - 100 на 100 километров. Каждый сектор имеет числобуквенный индекс, например, 47UFX, при этом индексы для заданного сектора не меняются от пролета к пролету. Таким образом, один и тот же числобуквенный индекс покрывает каждый раз одну и ту же территорию. Оператор задает область разметки посредством устройств Ввода/Вывода, таких как экран, клавиатура, мышь, интерфейс командной строки. По заданной области разметки Модулем 11 определяются все числобуквенные индексы, которые покрывают эту область с перекрытием.
[0057] Скачивание данных. Модулем 11 последовательно проводится скачивание мультиспектральных снимков ДЗЗ с требуемыми числобуквенными индексами по протоколу https с сайта миссии Европейского союза по мониторингу Земли https://scihub.copernicus.eu/. Мультиспектральные снимки скачиваются за требуемый год, при этом Модулем 11 производится фильтрация снимков по времени и облачности. Информация о дате снимка, проценте облачности мультиспектрального снимка является частью метаинформации этого снимка. Таким образом, Модуль 11 исключает мультиспектральные снимки, не попадающие в заданный оператором интервал по времени и облачности. Это позволяет исключить мультиспектральные снимки с высокой облачностью.
[0058] МОДУЛЬ 12
Модуль 12 получает от Модуля 11 один или несколько мультиспектральных снимков по заданной оператором области разметки. После получения Модулем 12 упомянутых данных, Модуль 12 исполняет последовательно следующие операции.
[0059] Определение маски сегментации. Маска сегментации - это матрица, элементами которой являются значения в интервале [0, 1], как правило характеризующие вероятность принадлежности пикселя исходного мультиспектрального снимка, соответствующего элементу матрицы, к определенному классу. Значение близкое к 1 указывает на то, что пиксель относится к классу, например, с/х поле или граница отдельного с/х поля, а значение близкое к 0 указывает на то, что пиксель не относится к упомянутому классу.
[0060] Модуль 12 по мультиспектральным снимкам, поступившим от Модуля 11, определяет маску сегментации для трех основных классов: пашня, граница отдельного с/х поля и маска расстояний от центра с/х поля до ближайшей границы этого поля. Каждый мультиспектральный снимок подается Модулем 12 на вход нейронной сети, заранее обученной на размеченных данных контуров с/х полей. Размеченные данные, предназначенные для обучения нейронных сетей в Модуле 12, сформированы разработчиками при разработке Устройства. В размеченных данных маска расстояний от центра с/х поля до ближайшей границы определяется следующим образом:
1. определяется центр с/х поля, как среднее значение координат опорных точек, составляющих контур этого поля.
2. Каждая точка внутри контура с/х поля имеет расстояние до ближайшей точки на контуре. Это расстояние отнормировано относительно максимального расстояния. Таким образом, для каждого с/х поля выбирается точка с наибольшим расстоянием до контура этого поля, все остальные значения делятся на это - максимальное - расстояние. Все значения маски расстояний от центра с/х поля до ближайшей границы лежат в интервале [0, 1].
[0061] Примеры исходного изображения и масок сегментаций приведены на Фиг. 2.
[0062] Ключевой технологией на данном этапе является использование обученной сверточной нейронной сети архитектуры U-net с помощью которой удается получить описанные маски сегментации. U-net архитектура построена по принципу энкодер - декодер. В качестве энкодера нейронной сети используется нейронная сеть efficientnet-b4. Подход к получению масок сегментации, а также функция потерь нейронной сети основаны на работе "Deep learning on edge: Extracting field boundaries from satellite images with a convolutional neural network", F Waldner, Fl Diakogiannis - Remote Sensing of Environment, 2020 - Elsevier.
[0063] Нейронная сеть обучена на корпусе данных, включающем в себя все регионы Российской Федерации, где ведется пропашное земледелие. Корпус данных подготовлен путем ручной разметки с привлечением экспертов в области агротехники и обработки земли. Процесс обучения нейронной сети включал в себя применение аугментаций для ускорения процесса и снижение требуемого объема обучающих данных.
[0064] Модуль 12, использует нейронную сеть для определения отдельных масок сегментации для каждого мультиспектрального снимка, полученного Модулем 11. Мультиспектральные снимки одного и того же сектора осуществляются группировкой спутников Sentinel с периодичностью, например, в 2 - 5 дней. Таким образом, с учетом фильтра по облачности получается около 30 снимков за сезон -с мая по сентябрь. Конечные маски сегментации для каждого сектора получаются путем усреднения отдельных масок сегментации, полученных для каждого мультиспектрального снимка отдельно. Таким образом, каждый элемент конечной маски сегментации - это среднее значение элементов всех доступных, с учетом облачности, масок сегментации для определенного сектора. При усреднении учитывается облачность снимков - пиксели с облачными данными не учитываются при формировании усредненных масок сегментации. Информация по облачности отдельных пикселей может быть определена напрямую Модулем 12, а может содержаться изначально в самом мультиспектральном снимке.
[0065] Получение промежуточных контуров полей. Маска сегментации для класса пашня (Е) и маска сегментации для класса граница отдельного с/х поля (В) используются для получения топологической маски (Т), которая определяет наличие пашни. Топологическая маска получается по следующей формуле:
ij
Е - матрица, элементами которой являются вероятности e in [0, 1] того, что пиксель ij в изначальном изображении является пашней;
ij
В - матрица, элементами которой являются вероятности b in [0, 1] того, что пиксель ij в изначальном изображении является границей пашней;
extent_threshold - пороговое значение вероятности после которого пиксель считается пашней;
boundaries_threshold - пороговое значение вероятности после которого пиксель считается границей отдельного сельскохозяйственного;
ij
Т - топологическая маска по которой определяется пашня, матрица, каждый элемент t in {0,1} является индикатором того, что там находится пашня.
ij
ij
[0066] Пусть дан элемент матрицы Е - e и элемент матрицы В - b, рассмотрим все возможные случаи на примерах:
ij
ij
ij
1. если e>extent threshold & b≤boundaries threshold, то t=1
ij
ij
ij
2. если e>extent threshold & b>boundaries threshold, то t=0
ij
ij
ij
3. если e≤extent threshold & b≤boundaries threshold, то t=0
ij
ij
ij
4. если e≤extent threshold & b>boundaries threshold, то t=0
[0067] Наличие топологической маски (T) не является полным решением задачи, так как необходимо корректно отделить контуры отдельных с/х полей друг от друга. Для решения этой задачи в рамках Устройства Модулем 12 используется алгоритм Watershed (см., например, статью «Watershed (image processing)», размещенную в Интернет по адресу: https://en.wikipedia.org/wiki/Watershed_(image_processing)) модификации Мэйера (см. "Meyer's flooding algorithm"). В качестве начальных точек для алгоритма Модулем 12 выбираются регионы мультиспектрального снимка, где значение маски расстояний от центра с/х поля до ближайшей границы этого же поля больше, чем значение параметра min_peak_distance. Параметр min_peak_distance - это пороговое значение расстояния от центра с/х поля до ближайшей границы, после которого пиксель считается начальной точкой для алгоритма Watershed. Параметры extent_threshold, boundaries_threshold и min_peak_distance подобраны единовременно при разработке Устройства, основываясь на достижении оптимальной точности контуров с/х полей. По результатам работы алгоритма получаются контуры полей как показано на Фиг. 4.
[0068] Модулем 12 алгоритм выполняется следующим образом. Начальные точки, определенные Модулем 12 на предыдущем этапе, объединяются Модулем 12 в кластеры, помеченные уникальными идентификаторами. Объединение происходит по принципу связности, то есть, если отдельные точки расположены непосредственно друг с другом, то они входят в один кластер. Таким образом, все точки внутри одного кластера граничат либо с точками из того же кластера, либо с регионами мультиспектрального снимка, не помеченными в качестве начальных точек. Далее, с использованием значений маски расстояний от центра с/х поля до ближайшей границы этого же поля в качестве приоритета, происходит распределение Модулем 12 точек по определенным выше кластерам в рамках определенной выше топологической маски (Т) от определенных выше связных кластеров начальных точек, например, посредством алгоритма Watershed. Алгоритм Watershed выполняется Модулем 12 итеративно с использованием очереди с приоритетом. В каждой итерации уникальный идентификатор кластера копируется соседним пикселям от связных кластеров начальных точек. Основные шаги каждой итерации описаны, например, в статье «Watershed (image processing)", размещенной в Интернет по адресу: https://en.wikipedia.org/wiki/Watershed_(image_processing)), раздел "Meyer s flooding algorithm". В качестве приоритета используется маска расстояний от центра с/х поля до ближайшей границы этого же поля. Таким образом, для каждого пикселя используется соответствующее значение из указанной маски как значение приоритета при добавлении в очередь с приоритетом. Каждый пиксель попадает в очередь с приоритетом при условии, если соответствующее значение в топологической маске (Т) равно 1, то есть там находится пашня. По результатам применения Модулем 12 алгоритма Watershed, каждый пиксель с соответствующим значением равным 1 в топологической маске (Т) приписывается к отдельному связанному единым идентификатором кластеру точек. Результатом работы являются отдельные связанные единым идентификатором кластеры точек, которые и являются отдельными с/х полями.
[0069] Основные этапы применения алгоритма Watershed указаны ниже:
1. Поиск начальных точек с помощью параметра min_peak_distance показан на Фиг. 6, начальные точки показаны белым цветом.
2. Пример применения алгоритма Watershed показан на Фиг. 7, отдельные связанные единым идентификатором кластеры точек помечены разными цветами.
3. Пример результата определенных контуров с/х полей показан на Фиг. 8.
[0070] Получение промежуточных контуров с/х полей - это получение Модулем 12 координат опорных точек полигонов, формирующих геометрию, найденных на предыдущем шаге отдельных с/х полей. Модуль 12 определяет опорные точки, которые соединяют линии контура отдельных с/х полей.
[0071] Получение контуров с/х полей. В рамках Устройства используются две стадии в рамках которых определяются контуры полей. Это делается для того, чтобы повысить качество разделения отдельных полей. Проблема заключается в том, что отдельное поле может быть засажено двумя разными культурами, при этом различие в культурах видно только в определенные моменты вегетации и/или при определенных полевых работах. Для более детального разделения Модулем 12 используется вторая нейронная сеть, которая обучена разделять каждый выделенный ранее промежуточный контур с/х поля на необходимое количество подконтуров.
[0072] Нейронная сеть архитектуры U-net оперирует отдельными промежуточными контурами с/х полей, определенными ранее Модулем 12. Исходный мультиспектральный снимок разделяется Модулем 12 на множество снимков в зависимости от количества определенных на предыдущем этапе промежуточных контуров с/х полей, причем каждое изображение содержит пиксели, относящиеся к пашне, расположенной внутри отдельного промежуточного контура с/х поля, а остальная часть изображения имеет черный цвет. Таким образом, информация, характеризующая расположение на мультиспектральном снимке отдельного промежуточного контура с/х поля, на черном фоне подается во вторую нейронную сеть для получения трех масок сегментации, аналогично тому, как описано в абзацах [0060] - [0064] - маски пашни, маски границ отдельного с/х поля и маски расстояний от центра с/х поля до ближайшей границы этого поля. При этом нейронная сеть имеют свою оптимальную параметризацию по параметрам extent_threshold, boundaries_threshold и min_peak_distance подобранную единовременно при разработке Устройства. Получение Модулем 12 детальных контуров с/х полей, внутри найденных ранее промежуточных контуров полей, аналогична процедуре, описанной в абзацах [0065]-[0070], за тем исключением, что контура определяются для каждого мультиспектрального снимка, полученного Модулем 11, отдельно, а не через усреднение масок сегментации. Конечные контура полей получаются путем выбора Модулем 12 результата с большим разделением. Таким образом, выбирается результат, когда промежуточный контур с/х поля разделился на максимальное число контуров, что соответствует периоду, когда наблюдалось различие по вегетации и/или проведенным агротехническим работам.
1. Нейронная сеть обучена на корпусе примеров, на которых видны значимые различия внутри одного поля, например, различия в цвете отдельных подполей внутри одного поля. Пример показан на Фиг. 4. При этом обучение проводилось следующим образом: в качестве начального состояния использовались веса модели из пункта 2.1. Такое дообучение позволило сократить объем обучающего корпуса и повысить качество финального результата.
2. По результатам применения Модулем 12 второй нейронной сети удается получить более детальное разделение контуров на отдельные подконтура. Пример результата работы показан на Фиг. 5.
[0073] МОДУЛЬ 13
В рамках Устройства размечаются отдельные сектора группировки спутников Sentinel-2. Для получения единого слоя гео-данных реализован Модуль 13 соединения отдельных секторов. Модуль 13 производит соединение путем наложения с перекрытием отдельных секторов. Контуры полей, имеющие пересечения, объединяются в единый контур. Таким образом, удается получить единый гео-слой данных.
[0074] МОДУЛЬ 14
Для получения требуемой области из объединенного гео-слоя в рамках Устройства реализован модуль фильтрации. Мультиспектральные снимки покрывают с перекрытием требуемую область разметки. Модуль 14 оставляет только те контуры полей, которые попадают в требуемую область разметки.
ДИАГРАММА ПОТОКОВ ДАННЫХ
[0075] Диаграмма потоков данных с описанием формата и типа информации на каждом шаге приведена на Фиг. 10. Пошагово используются следующие форматы и типы данных:
1. шаг 100: Оператором задается в файле необходимая область для разметки в формате kml (см., например, статью «Обзор документации по KML», размещенную в Интернет по адресу: https://developers.google.com/kml/documentation). Файл описывает требуемую геометрию разметки.
2. шаг 101: Модуль подготовки данных формирует корпус из файлов формата jp2 (см., например, статью «JPEG 2000», размещенную в Интернет по адресу: https://ru.wikipedia.org/wiki/JPEG_2000). Файлы являются результатом мультиспектральной съемки планеты спутниками группировки Sentinel-2. Корпус формируется по заданной области разметки.
3. шаг 102: Модуль получения контуров полей формирует на основе корпуса спутниковых снимков Sentinel-2 kml-файл с размеченными контурами полей. В файле содержится информация о всех размеченных полях.
4. шаг 103: Модуль объединения контуров полей по нескольким kml-файлам с разметкой отдельных секторов формирует единый гео-слой данных. Информации записывается в файл формата kml.
5. шаг 104: Модуль фильтрации контуров полей, оперируя рассчитанным гео-слоем в формате kml и заданной областью разметки в формате kml, формирует новый kml-файл с контурами полей требуемого региона.
[0076] Модификации и улучшения вышеописанных вариантов осуществления настоящего технического решения будут ясны специалистам в данной области техники. Предшествующее описание представлено только в качестве примера и не несет никаких ограничений. Таким образом, объем настоящего технического решения ограничен только объемом прилагаемой формулы изобретения.