ВВЕДЕНИЕ:
Социальное дистанцирование намеренно расширяет реальное пространство между людьми, чтобы попытаться не распространять болезнь. Во всяком случае, если вы остаетесь в шести футах от других, ваши шансы заразиться COVID-19 уменьшаются. Мы можем использовать OpenCV и YOLO для проверки/обнаружения, если люди продолжают удалять социальные сети.
OpenCV:
OpenCV — это библиотека возможностей программирования, в основном ориентированная на постоянное зрение ПК. Ее разрешено использовать для задач компьютерного зрения. OpenCV (Библиотека компьютерного зрения с открытым исходным кодом) — это библиотека с открытым исходным кодом для компьютерного зрения на питоне. Он имеет разные возможности для управления и работы с изображениями и записями на языке программирования python.
Он имеет много очень улучшенных вычислений, которые включают в себя многочисленные расчеты компьютерного зрения и искусственного интеллекта. В основном он сосредоточен на обработке изображений, захвате видео и расследовании, включая такие основные моменты, как обнаружение лиц и местоположение предметов.
ЙОЛО :
YOLO (You Just Look Once) — это непрерывный расчет обнаружения предметов для компьютерного зрения. YOLO — это мощная сверточная нейронная сеть (CNN) для постепенного обнаружения протестов. Расчет применяет одиночную нейронную организацию к полной картине, а затем изолирует картинку на области и предсказывает прыгающие ящики и вероятности для каждого района.
YOLO чрезвычайно популярен из-за его высокой точности, а Solitary LOOK ONCE подразумевает, что для получения ожиданий требуется всего один прямой проход через нейронную организацию.
Шаги:
- Импорт библиотечных функций
- Написание функции «detect_people» для идентификации людей
- Разбор аргументов и доступ к входному файлу
- Работа с yolo, доступ к веб-камере и прогнозирование
- Вывод
1. Импорт библиотечной функции:
Импортируйте эту библиотеку и модули
2. Написание функции «detect_people» для идентификации людей
Вот функция под названием «detect_people», которая будет принимать такие состязания, как edge, net и ln (имя слоя). Сконцентрируйте измерения от кожуха видео и сделайте массу кожуха.
Здесь Масса представляет Параллельный Огромный Предмет и намекает на собрание связанных пикселей в парном изображении. Эта масса перейдет в организацию CNN и потом даст прогноз. В настоящее время установите эту массу в качестве вклада нейронной сети и переместите один проход вперед. Введите изложение контейнеров, центроидов и определенности.
Теперь извлеките из выходных данных все достоверности, classID и центроиды. отфильтровать обнаружение класса людей из вывода. затем извлеките размер окна. Добавить все к приведенному выше списку.
Примените немаксимальное подавление для слабых прыгающих ящиков и верните результат
3. Разбор аргументов и доступ к входному файлу:
Библиотека анализа данных — это набор команд, которые сообщают сборщику, что делать — как получить необходимые данные и преобразовать их в удобный, удобочитаемый формат.
4.Работа с YOLO, доступ к веб-камере и прогнозирование:
- Загрузите веса YOLO из каталога YOLO
- Начать захват видео…
- Получить результат от функции detectPeople
- Получите центроиды и измерьте евклидово расстояние
- Узнайте, меньше ли расстояние, чем какое-то значение, затем поместите их в список небезопасных людей.
- Теперь поместите ограничивающую рамку красного цвета, если человек в небезопасном списке, в противном случае зеленый.
- Теперь отобразите обнаружение с помощью метода cv2.imshow().
5. Выход:
ИСПОЛЬЗОВАННАЯ ЛИТЕРАТУРА:
social_distance_detector_people_detections.jpg (600×336) (pyimagesearch.com)
https://favtutor.com/blog-details/social-distancing-tool-using-tensorflow
https://www.sciencedirect.com/science/article/pii/S2210670720307897
Обнаружение социальной дистанции с использованием OpenCV и YOLO | Analytics Vidhya (medium.com)