From 8929fd534f9776249fd498d8135efee993e4b25e Mon Sep 17 00:00:00 2001 From: mmkuznecov <43701555+mmkuznecov@users.noreply.github.com> Date: Sat, 4 May 2019 22:57:29 +0300 Subject: [PATCH] docs: article about object counting (#120) * Add files via upload * Add files via upload * Update SUMMARY.md * Update SUMMARY.md * Update object_counting.md * Update object_counting.md * Update object_counting.md * Update object_counting.md * Add files via upload * Update object_counting.md * Delete giff.gif * Delete people_static.gif * Update object_counting.md --- docs/assets/op.png | Bin 0 -> 30047 bytes docs/ru/SUMMARY.md | 1 + docs/ru/object_counting.md | 58 +++++++++++++++++++++++++++++++++++++ 3 files changed, 59 insertions(+) create mode 100644 docs/assets/op.png create mode 100644 docs/ru/object_counting.md diff --git a/docs/assets/op.png b/docs/assets/op.png new file mode 100644 index 0000000000000000000000000000000000000000..090241696b1ffa4e011ea6fa183393aff7f31500 GIT binary patch literal 30047 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 B{aye7 literal 0 HcmV?d00001 diff --git a/docs/ru/SUMMARY.md b/docs/ru/SUMMARY.md index 9abc668a..b0a1e243 100644 --- a/docs/ru/SUMMARY.md +++ b/docs/ru/SUMMARY.md @@ -58,6 +58,7 @@ * Проекты на базе Клевера * [Шаровая защита коптера](shield.md) * [Распознавание лиц](face_recognition.md) + * [Подсчет количества объектов c камеры](object_counting.md) * [Пульт на Андроид](android.md) * [Блочный конструктор полета](clever_blocks.md) * [CopterHack-2018](copterhack2018.md) diff --git a/docs/ru/object_counting.md b/docs/ru/object_counting.md new file mode 100644 index 00000000..b298b504 --- /dev/null +++ b/docs/ru/object_counting.md @@ -0,0 +1,58 @@ +# Система распознавания и подсчета количества объектов + +## Введение + +Системы компьютерного зрения все шире используются для решения повседневных задач в самых различных сферах, начиная от промышленности, заканчивая медициной. Алгоритмы распознавания образов позволяют идентифицировать объекты, определять их тип, предоставляют необходимую качественную и количественную информацию. Целью данного проекта было создание системы подсчета количества объектов (людей, машин), используя технологии компьютерного зрения. + +## Установка + +Для начала нужно установить все необходимые библиотеки: + +```bash +pip install opencv-contrib-python imutils matplotlib dlib +``` + +***Библиотека dlib устанавливается достаточно долго, так что не стоит пугаться того, что процесс зависает.*** + +Затем скачать программу из репозитория: + +```bash +git clone https://github.com/mmkuznecov/objects_counting_from_clever.git +``` + +## Примеры работы + +Система может быть адаптирована для разных условий, съёмка может производиться как из статичного положения, + + + +так и в динамическом полёте. + + + +## Использование + +Подключитесь к Клеверу и проверьте, передается ли изображение с камеры. Для использования скрипта просто перейдите в папку, куда был скачан скрипт и пропишите в консоли, где op - название выходного видео: + +```bash +python count.py -o op.avi +``` + +По умолчанию программа будет считать количество людей. Для того чтобы прописать распознавание только определенного объекта, нужно приписать в конце тип объекта для распознавания, например, следующая команда позволит распознавать машины: + +```bash +python count.py -o op.avi -t car +``` + +Полный список распознаваемых объектов приведен ниже: + +background, aeroplane, bicycle, bird, boat, +bottle, bus, car, cat, chair, cow, diningtable, +dog, horse, motorbike, person, pottedplant, sheep, +sofa, train, tvmonitor + +Итогом работы программы будет записанное видео с метками, отмечающими распознавание объектов и их номер, а также .png изображение, на котором показана информация о времени записи видео, количестве распознанных объектов в разное время. + + + +По вопросам пишите в Telegram @mmkuznecov.