Причинно-следственная цепочка:
· Обнаружение пропажи скота
· Запуск БПЛА, дрона оборудованным камерой и запрограммированный програмным обеспечением, интегрированный с системой мониторинга (отправка информации о обнаружении скота в той или иной локации)
· Обнаружение дроном потерявшегося скота в два отрывка времени, отправка информации о его геолокации в систему мониторинга)
· Вычисление будущее направление миграции скота, зная скорость передвижения, местоположение в двух временных отрезков.
Процесс работы нейронной сети:
Система работы программы сделано на языке программирования python и нейронной модели YOLO v5. YOLOv5- это мощный алгоритм обнаружения объектов, разработанный Ultralytics. За один проход сеть YOLO прогнозирует для изображения положение ограничивающих прямоугольников и вероятности классификации.
предсказывает координаты определённого количества bounding box'ов с результатами классификации и вероятности нахождения объекта, и в дальнейшем корректируя их местоположение. В целом такую архитектуру можно представить в следующем виде:
Для использования нейросети ее с начала нужно натренировать.
Для тренировки нейросети нам понадобится:
Датасет должен быть разделен на две папки: train (тренировочная выборка) и val (валидационная).
Формат подразумевает, что каждая строка текстового файла представляется в виде:
n, x, y, w, h, где
n — номер класса объекта
x — относительная координата bounding box’а объекта по оси Ox
y — относительная координата bounding box’а объекта по оси Oy
w — относительная ширина bounding box’а объекта
h — относительная высота bounding box’а объекта
Перед запуском обучения обязательно надо запустить параметры:
1. —img — размер изображения.
2. —batch — размер батча.
3. —epoch — количество эпох для обучения.
4. —data — путь до .yaml файла.
5. —weights — путь до файла весов (нужны предобученные веса, чтобы не обучаться с нуля).
6. —name — куда сохраняем результаты обучения.
7. —workers — количество потоков, на которых запускаем.
Далее пишем программу запуска тренировки:
python yolov5/train.py --img 896 --batch 8 --epoch 300 --data ./dataset.yaml --weights ./yolov5x.pt --name result --workers 2
Использование:
Для запуска нейроной сети надо написать в терминал следующие команды:
Python neiron.py(название файла) –source 5(порядковый номер камеры)
После запуска программы запустится экран камеры где будут обнаруживаться объекты:
При обнаружении дроном объекта на систему мониторинга приходит информация о обнаружении объекта и его геолокация благодаря GPS трекеру на дроне.
После повторного обнаружение через промежуток времени можно определить направление и скорость передвижение потерявшегося скота по формуле Гаверсинуса:
Пример использования:
In our company, the CI/CD processes are very long (over 2 hours). Since this is a blocking step in the release flow it causes holdups of our fast-paced releases. Eventually, we are getting a backlog of unreleased features, which could be mitigated by releasing many things at once, but that comes with additional risks.
Проект "OrbiNet" - это уникальная инициатива, в которой участвуют ученики 10-го класса, целью которой является создание ассистента для геосервисов, интегрированного в телеграм-бота. Этот проект позволяет школьникам прикоснуться к передовым технологиям в области космического мониторинга и обработки данных, обучаясь и одновременно внося свой вклад в разработку инновационных решений. В рамках "OrbiNet", студенты исследуют, как с помощью ассистента можно эффективно работать с новейшими методами распознавания образов и потоковой обработкой данных. Они изучают, как данные с различных датчиков - мультиспектральных, гиперспектральных, радарных и лидарных - могут быть систематизированы и обработаны для решения реальных задач, таких как мониторинг окружающей среды и предотвращение природных катастроф. Ученики также занимаются разработкой алгоритмов для предварительной обработки данных на космических аппаратах и изучают, как технологии блокчейна могут быть применены в управлении космическими данными. Особое внимание уделяется возможностям ассистента в прогнозировании и распознавании лесных пожаров, а также в мониторинге землетрясений. Проект "OrbiNet" не только способствует развитию навыков учащихся в области науки и техники, но и позволяет им участвовать в создании реального продукта, который может быть масштабирован и использован для решения глобальных задач в будущем. Это отличный пример того, как обучение и практическая деятельность могут объединяться для достижения впечатляющих результатов в области геосервисов и космических технологий.