Table des matières
0. chatgpt
1. Reconnaissance du corps humain
2. Reconnaissance des points osseux
3. Reconnaissance d'action
Maison Périphériques technologiques IA Détection de chute, basée sur la reconnaissance de l'action humaine au point squelettique, une partie du code est complétée avec Chatgpt

Détection de chute, basée sur la reconnaissance de l'action humaine au point squelettique, une partie du code est complétée avec Chatgpt

Apr 12, 2023 am 08:19 AM
chatgpt 检测 骨骼点

Bonjour à tous.

Aujourd'hui j'aimerais partager avec vous un projet de détection de chute, pour être précis, il s'agit de reconnaissance de mouvements humains basée sur des points squelettiques.

Détection de chute, basée sur la reconnaissance de laction humaine au point squelettique, une partie du code est complétée avec Chatgpt

Détection de chute, basée sur la reconnaissance de laction humaine au point squelettique, une partie du code est complétée avec Chatgpt

est grossièrement divisé en trois étapes

  • Reconnaître le corps humain
  • Reconnaître les points du squelette humain
  • Classification des actions

Le code source du projet a été empaqueté, voir la fin de l'article pour savoir comment obtenez-le.

0. chatgpt

Tout d'abord, nous devons obtenir le flux vidéo surveillé. Ce code est relativement fixe, on peut directement laisser chatgpt le compléter

Détection de chute, basée sur la reconnaissance de laction humaine au point squelettique, une partie du code est complétée avec Chatgpt

Ce code écrit par chatgpt n'a aucun problème et peut être utilisé directement.

Mais lorsqu'il s'agit de tâches commerciales, telles que l'utilisation de Mediapipe pour identifier les points du squelette humain, le code donné par chatgpt est incorrect.

Je pense que chatgpt​ peut être utilisé comme une boîte à outils, qui peut être indépendante de la logique métier. Vous pouvez essayer de laisser chatgpt le terminer.

Donc, je pense que les exigences des programmeurs à l'avenir se concentreront davantage sur les capacités d'abstraction métier. Sans plus attendre, revenons au sujet.

1. Reconnaissance du corps humain

La reconnaissance du corps humain peut utiliser des modèles de détection de cibles, tels que : YOLOv5​. Nous avons également partagé de nombreux articles sur la formation des modèles YOLOv5.

Mais ici je n'utilise pas YOLOv5​, mais mediapipe​. Parce que Mediapipe fonctionne plus rapidement et fonctionne correctement sur le processeur.

2. Reconnaissance des points osseux

Il existe de nombreux modèles pour identifier les points osseux, tels que l'alphapose et l'openpose. Le nombre et la position des points osseux reconnus par chaque modèle sont différents. Par exemple, les deux types suivants :

Détection de chute, basée sur la reconnaissance de laction humaine au point squelettique, une partie du code est complétée avec Chatgpt

mediapipe 32 points d'os

Détection de chute, basée sur la reconnaissance de laction humaine au point squelettique, une partie du code est complétée avec Chatgpt

coco 17 points d'os

J'utilise toujours mediapipe pour la reconnaissance des points d'os En plus de la rapidité, un autre avantage est les os reconnus par. mediapipe. Il y a 32 points qui peuvent répondre à nos besoins. Parce que la classification des mouvements du corps humain qui sera utilisée ci-dessous repose en grande partie sur des points squelettiques.

image = cv2.cvtColor(image, cv2.COLOR_BGR2RGB)
results = pose.process(image)

if not results.pose_landmarks:
continue

# 识别人体骨骼点
image.flags.writeable = True
image = cv2.cvtColor(image, cv2.COLOR_RGB2BGR)

mp_drawing.draw_landmarks(
image,
results.pose_landmarks,
mp_pose.POSE_CONNECTIONS,
landmark_drawing_spec=mp_drawing_styles.get_default_pose_landmarks_style()
)
Copier après la connexion

3. Reconnaissance d'action

La reconnaissance d'action utilise un réseau convolutionnel de graphes spatio-temporels basé sur la reconnaissance d'actions squelettes. La solution open source est STGCN (Skeleton-Based Graph Convolutional Networks)

https://github.com. /yysijie /st-gcn

Détection de chute, basée sur la reconnaissance de laction humaine au point squelettique, une partie du code est complétée avec Chatgpt

Un ensemble d'actions, telles que la chute, se compose de N images. Chaque image peut construire un graphique spatial composé de coordonnées de points squelettiques. Les points squelettiques sont connectés entre les images pour former un graphique temporel. , la connexion des points osseux et la connexion des délais peuvent construire un graphique espace-temps.

Détection de chute, basée sur la reconnaissance de laction humaine au point squelettique, une partie du code est complétée avec Chatgpt

Graphique espace-temps

Effectuez des opérations de convolution de graphique multicouche sur le graphique espace-temps pour générer des cartes de caractéristiques de niveau supérieur. Ensuite, il est entré dans le classificateur SoftMax pour la classification des actions (Classification des actions).

Détection de chute, basée sur la reconnaissance de laction humaine au point squelettique, une partie du code est complétée avec Chatgpt

Convolution graphique

À l'origine, j'avais prévu d'entraîner le modèle STGCN, mais j'ai rencontré trop d'embûches, j'ai donc fini par utiliser un modèle entraîné par d'autres.

Pit 1. STGCN​ prend en charge les points squelettes reconnus par OpenPose​, et il existe un ensemble de données Kinetics-skeleton​ qui peut être utilisé directement. Le piège est que l’installation d’OpenPose est trop lourde et nécessite beaucoup d’étapes. Après avoir galéré, on abandonne.

Pit 2. STGCN​ prend également en charge l'ensemble de données NTU RGB+D, qui comporte 60 catégories d'actions, telles que : se lever, marcher, tomber, etc. Le corps humain dans cet ensemble de données contient 25 points squelettiques, uniquement des données de coordonnées, et la vidéo originale est pratiquement indisponible, il n'y a donc aucun moyen de savoir à quelles positions correspondent ces 25 points squelettiques, et quel modèle peut être utilisé pour identifier ces 25 points squelettiques. Lutte Puis abandonnez.

Les deux gros pièges ci-dessus ont rendu impossible l'entraînement direct du modèle STGCN. J'ai trouvé une solution open source, qui utilisait alphapose pour identifier 14 points d'os, et modifié le code source STGCN pour prendre en charge les points d'os personnalisés.

https://github.com/GajuuzZ/Human-Falling-Detect-Tracks

我看了下mediapipe包含了这 14 个骨骼点,所以可以用mediapipe识别的骨骼点输入他的模型,实现动作分类。

Détection de chute, basée sur la reconnaissance de laction humaine au point squelettique, une partie du code est complétée avec Chatgpt

mediapipe 32个骨骼点

Détection de chute, basée sur la reconnaissance de laction humaine au point squelettique, une partie du code est complétée avec Chatgpt

选出14个关键骨骼点

14个骨骼点提取代码:

KEY_JOINTS = [
mp_pose.PoseLandmark.NOSE,
mp_pose.PoseLandmark.LEFT_SHOULDER,
mp_pose.PoseLandmark.RIGHT_SHOULDER,
mp_pose.PoseLandmark.LEFT_ELBOW,
mp_pose.PoseLandmark.RIGHT_ELBOW,
mp_pose.PoseLandmark.LEFT_WRIST,
mp_pose.PoseLandmark.RIGHT_WRIST,
mp_pose.PoseLandmark.LEFT_HIP,
mp_pose.PoseLandmark.RIGHT_HIP,
mp_pose.PoseLandmark.LEFT_KNEE,
mp_pose.PoseLandmark.RIGHT_KNEE,
mp_pose.PoseLandmark.LEFT_ANKLE,
mp_pose.PoseLandmark.RIGHT_ANKLE
]

landmarks = results.pose_landmarks.landmark
joints = np.array([[landmarks[joint].x * image_w,
landmarks[joint].y * image_h,
landmarks[joint].visibility]
 for joint in KEY_JOINTS])
Copier après la connexion

STGCN​原始方案构造的空间图只支持openpose​18个骨骼点和NTU RGB+D数据集25个骨骼点

Détection de chute, basée sur la reconnaissance de laction humaine au point squelettique, une partie du code est complétée avec Chatgpt

修改这部分源码,以支持自定义的14个骨骼点

Détection de chute, basée sur la reconnaissance de laction humaine au point squelettique, une partie du code est complétée avec Chatgpt

模型直接使用Human-Falling-Detect-Tracks项目已经训练好的,实际运行发现识别效果很差,因为没有看到模型训练过程,不确定问题出在哪。

有能力的朋友可以自己训练模型试试,另外,百度的Paddle​也基于STGCN​开发了一个跌倒检测模型,只支持摔倒这一种行为的识别。

当然大家也可以试试Transformer的方式,不需要提取骨骼点特征,直接将 N 帧Détection de chute, basée sur la reconnaissance de laction humaine au point squelettique, une partie du code est complétée avec Chatgpt送入模型分类。

关于STGCN的原理,大家可以参考文章:https://www.jianshu.com/p/be85114006e3  总结的非常好。

需要源码的朋友留言区回复即可。

如果大家觉得本文对你有用就点个 在看 鼓励一下吧,后续我会持续分享优秀的 Python+AI 项目。

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

ChatGPT permet désormais aux utilisateurs gratuits de générer des images en utilisant DALL-E 3 avec une limite quotidienne ChatGPT permet désormais aux utilisateurs gratuits de générer des images en utilisant DALL-E 3 avec une limite quotidienne Aug 09, 2024 pm 09:37 PM

Le DALL-E 3 a été officiellement introduit en septembre 2023 en tant que modèle considérablement amélioré par rapport à son prédécesseur. Il est considéré comme l’un des meilleurs générateurs d’images IA à ce jour, capable de créer des images avec des détails complexes. Cependant, au lancement, c'était exclu

Solution au i7-7700 impossible de passer à Windows 11 Solution au i7-7700 impossible de passer à Windows 11 Dec 26, 2023 pm 06:52 PM

Les performances du i77700 sont tout à fait suffisantes pour exécuter Win11, mais les utilisateurs constatent que leur i77700 ne peut pas être mis à niveau vers Win11. Cela est principalement dû aux restrictions imposées par Microsoft, ils peuvent donc l'installer tant qu'ils ignorent cette restriction. Le i77700 ne peut pas être mis à niveau vers win11 : 1. Parce que Microsoft limite la version du processeur. 2. Seules les versions Intel de huitième génération et supérieures peuvent directement passer à Win11. 3. En tant que 7ème génération, i77700 ne peut pas répondre aux besoins de mise à niveau de Win11. 4. Cependant, le i77700 est tout à fait capable d'utiliser Win11 en douceur en termes de performances. 5. Vous pouvez donc utiliser le système d'installation directe win11 de ce site. 6. Une fois le téléchargement terminé, cliquez avec le bouton droit sur le fichier et « chargez-le ». 7. Double-cliquez pour exécuter l'opération "Un clic

La combinaison parfaite de ChatGPT et Python : créer un chatbot de service client intelligent La combinaison parfaite de ChatGPT et Python : créer un chatbot de service client intelligent Oct 27, 2023 pm 06:00 PM

La combinaison parfaite de ChatGPT et Python : Création d'un chatbot de service client intelligent Introduction : À l'ère de l'information d'aujourd'hui, les systèmes de service client intelligents sont devenus un outil de communication important entre les entreprises et les clients. Afin d'offrir une meilleure expérience de service client, de nombreuses entreprises ont commencé à se tourner vers les chatbots pour effectuer des tâches telles que la consultation des clients et la réponse aux questions. Dans cet article, nous présenterons comment utiliser le puissant modèle ChatGPT et le langage Python d'OpenAI pour créer un chatbot de service client intelligent afin d'améliorer

Comment installer chatgpt sur un téléphone mobile Comment installer chatgpt sur un téléphone mobile Mar 05, 2024 pm 02:31 PM

Étapes d'installation : 1. Téléchargez le logiciel ChatGTP depuis le site officiel ou la boutique mobile de ChatGTP ; 2. Après l'avoir ouvert, dans l'interface des paramètres, sélectionnez la langue chinoise 3. Dans l'interface de jeu, sélectionnez le jeu homme-machine et définissez la langue. Spectre chinois ; 4. Après avoir démarré, entrez les commandes dans la fenêtre de discussion pour interagir avec le logiciel.

Le dernier chef-d'œuvre du MIT : utiliser GPT-3.5 pour résoudre le problème de la détection des anomalies des séries chronologiques Le dernier chef-d'œuvre du MIT : utiliser GPT-3.5 pour résoudre le problème de la détection des anomalies des séries chronologiques Jun 08, 2024 pm 06:09 PM

Aujourd'hui, j'aimerais vous présenter un article publié par le MIT la semaine dernière, utilisant GPT-3.5-turbo pour résoudre le problème de la détection des anomalies des séries chronologiques et vérifiant dans un premier temps l'efficacité du LLM dans la détection des anomalies des séries chronologiques. Il n'y a pas de réglage fin dans l'ensemble du processus et GPT-3.5-turbo est utilisé directement pour la détection des anomalies. Le cœur de cet article est de savoir comment convertir des séries temporelles en entrées pouvant être reconnues par GPT-3.5-turbo et comment concevoir. des invites ou des pipelines pour laisser LLM résoudre la tâche de détection des anomalies. Permettez-moi de vous présenter une introduction détaillée à ce travail. Titre de l'article image : Largelangagemodelscanbezero-shotanomalydete

Comment développer un chatbot intelligent en utilisant ChatGPT et Java Comment développer un chatbot intelligent en utilisant ChatGPT et Java Oct 28, 2023 am 08:54 AM

Dans cet article, nous présenterons comment développer des chatbots intelligents à l'aide de ChatGPT et Java, et fournirons quelques exemples de code spécifiques. ChatGPT est la dernière version du Generative Pre-training Transformer développé par OpenAI, une technologie d'intelligence artificielle basée sur un réseau neuronal qui peut comprendre le langage naturel et générer du texte de type humain. En utilisant ChatGPT, nous pouvons facilement créer des discussions adaptatives

Algorithme de détection amélioré : pour la détection de cibles dans des images de télédétection optique haute résolution Algorithme de détection amélioré : pour la détection de cibles dans des images de télédétection optique haute résolution Jun 06, 2024 pm 12:33 PM

01Aperçu des perspectives Actuellement, il est difficile d'atteindre un équilibre approprié entre efficacité de détection et résultats de détection. Nous avons développé un algorithme YOLOv5 amélioré pour la détection de cibles dans des images de télédétection optique haute résolution, en utilisant des pyramides de caractéristiques multicouches, des stratégies de têtes de détection multiples et des modules d'attention hybrides pour améliorer l'effet du réseau de détection de cibles dans les images de télédétection optique. Selon l'ensemble de données SIMD, le mAP du nouvel algorithme est 2,2 % meilleur que YOLOv5 et 8,48 % meilleur que YOLOX, permettant ainsi d'obtenir un meilleur équilibre entre les résultats de détection et la vitesse. 02 Contexte et motivation Avec le développement rapide de la technologie de télédétection, les images de télédétection optique à haute résolution ont été utilisées pour décrire de nombreux objets à la surface de la Terre, notamment des avions, des voitures, des bâtiments, etc. Détection d'objets dans l'interprétation d'images de télédétection

Chatgpt peut-il être utilisé en Chine ? Chatgpt peut-il être utilisé en Chine ? Mar 05, 2024 pm 03:05 PM

chatgpt peut être utilisé en Chine, mais ne peut pas être enregistré, ni à Hong Kong et Macao. Si les utilisateurs souhaitent s'inscrire, ils peuvent utiliser un numéro de téléphone mobile étranger pour s'inscrire. Notez que lors du processus d'enregistrement, l'environnement réseau doit être basculé vers. une adresse IP étrangère.

See all articles