Распознавание национальных танцевальных движений на основе opencv и mediapipe

Если вам нужен проект, пожалуйста, обратите внимание и личное сообщение

1. Принцип введения

1.1 ОпенЦВ

Opencv (Библиотека компьютерного зрения с открытым исходным кодом) — это кроссплатформенная библиотека компьютерного зрения, основанная на дистрибутиве с открытым исходным кодом, которая реализует множество общих алгоритмов обработки изображений и компьютерного зрения и стала самым мощным исследовательским инструментом в области компьютерного зрения. Здесь мы должны различать два понятия: разница между обработкой изображений и компьютерным зрением: обработка изображений фокусируется на «обработке» изображений — например, улучшении, восстановлении, шумоподавлении, сегментации и т. д.; в то время как компьютерное зрение фокусируется на использовании компьютеров для имитации человеческого зрения. , поэтому моделирование является конечной целью в области компьютерного зрения. Opencv в основном используется для чтения видео и отображения видео.

1.2 Медиапайп

Mediapipe — это проект Google с открытым исходным кодом, который может предоставлять общедоступные межплатформенные решения для машинного обучения (машинного обучения). Mediapipe на самом деле представляет собой библиотеку инструментов интегрированных алгоритмов машинного обучения, включая различные модели, такие как распознавание лиц, ключевые точки лица, распознавание жестов, сегментация аватара и распознавание позы. Можно получить координаты 33 ключевых точек человеческого тела. В этой статье будут использоваться соответствующие координаты человеческого тела для распознавания жестов.

2. Экспериментальные шаги

Этот эксперимент в основном разделен на две части: определение положения тела человека и дизайн интерфейса.

2.1 Инструментарий импорта

вставьте сюда описание изображения
Как показано на рисунке, это наборы инструментов PyQt5 для дизайна страниц, включая QTWidgets, QtCore и QtGui. QtGui содержит классы для различных основных графических функций, включая, помимо прочего: наборы окон, обработку событий, 2D-графику, основные изображения и интерфейсы, шрифты и текстовые классы. QtCore содержит основные неграфические функции Этот модуль используется для обработки таких объектов, как время, файлы, каталоги, типы данных, потоки, URL-адреса, типы MIME, процессы или потоки, задействованные в программе. QtWidgets содержит полный набор компонентов элементов пользовательского интерфейса для создания пользовательского интерфейса, соответствующего системному стилю. Также есть opencv и Mediapipe для распознавания жестов.

2.2 Китайский ввод

вставьте сюда описание изображения
Используйте инструмент PIL для создания функции, которая может печатать на китайском языке на изображении.

2.4 Создание базы данных с информацией о пространственном положении

вставьте сюда описание изображения
Создавайте инструменты рисования и собственную библиотеку информации о местонахождении.
вставьте сюда описание изображения
Прочитайте видео, прочитайте его кадр за кадром, измените канал для каждого кадра изображения и используйте встроенную библиотеку информации о положении, чтобы определить информацию о положении характерных точек на изображении.

2.5 Получение информации о местоположении

вставьте сюда описание изображения
Получите информацию о характеристиках положения и информацию о координатах положения, включая левое и правое плечо, левый и правый пролеты, левое и правое колено, левый и правый глаза, левую и правую лодыжки, левый и правый локти, а также левую и правую лодыжки.
Получить информацию об углах.
вставьте сюда описание изображения

2.6 Распознавание жестов

вставьте сюда описание изображения
Различные действия оцениваются по разным данным об углах и характеристикам каждой точки положения. И нарисуйте статус в реальном времени.
вставьте сюда описание изображения

3 Экспериментальные результаты и оценка

Этот эксперимент в основном выбирает одно видео народного танца, разлагает видео движения и определяет, какие движения к ним относятся. Поскольку видео включает в себя несколько движений, для распознавания в эксперименте выбираются только 10 типичных движений. Действия классифицируются, как показано на рисунке. в таблице ниже.
вставьте сюда описание изображения

Примеры каждого из этих действий показаны на рисунке:
вставьте сюда описание изображения
вставьте сюда описание изображения
вот два примера.
Конкретный процесс работы на основе интерфейса и интерфейс отображения следующие:
сначала запустите файл class_win.py и нажмите «Выполнить», чтобы сгенерировать интерфейс обнаружения, как показано на рисунке:
вставьте сюда описание изображения
две кнопки в правом верхнем углу интерфейса представляют выбор видеофайлов и операции обнаружения, сначала нажмите, чтобы выбрать видеофайл, откройте папку, выберите соответствующее видео, нажмите OK, а затем нажмите «Выполнить», результат будет таким, как показано на рисунке: экран слева
вставьте сюда описание изображения
направо экран исходного видео, экран результатов обнаружения в реальном времени и экран информационной статистики.
Фактические результаты обнаружения с использованием действий 1 и 2 в качестве примеров, как показано на рисунке:
вставьте сюда описание изображения
вставьте сюда описание изображения

Supongo que te gusta

Origin blog.csdn.net/weixin_51141489/article/details/131268301
Recomendado
Clasificación