


Die Sturzerkennung basiert auf der Erkennung menschlicher Skelettpunkte. Ein Teil des Codes wird mit Chatgpt vervollständigt
Hallo zusammen.
Heute möchte ich ein Projekt zur Sturzerkennung mit Ihnen teilen, genauer gesagt, es handelt sich um die Erkennung menschlicher Bewegungen basierend auf Skelettpunkten.
ist grob in drei Schritte unterteilt:
- Erkennen Sie den menschlichen Körper erhalten Sie es.
- 0. chatgpt
- Zuerst müssen wir den überwachten Videostream abrufen. Dieser Code ist relativ fest. Wir können ihn direkt von chatgpt vervollständigen lassen.
Aber hier verwende ich nicht YOLOv5, sondern mediapipe. Denn Mediapipe läuft schneller und läuft flüssig auf der CPU.
2. Knochenpunkterkennung
Es gibt viele Modelle zur Identifizierung von Knochenpunkten, wie z. B. Alphapose und Openpose. Die Anzahl und Position der von jedem Modell erkannten Knochenpunkte ist unterschiedlich. Zum Beispiel die folgenden zwei Typen:
Mediapipe 32 Bone-PunkteCoco 17 Bone-Punkte
Für die Erkennung von Bone-Punkten verwende ich noch Mediapipe. Ein weiterer Vorteil sind neben der Geschwindigkeit die Bones Von mediapipe anerkannt Es gibt 32 Punkte, die unsere Bedürfnisse erfüllen können. Denn die nachfolgend verwendete Klassifizierung menschlicher Körperbewegungen basiert stark auf Skelettpunkten.
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() )
3. Die Aktionserkennung verwendet ein räumlich-zeitliches Graph-Faltungsnetzwerk, das auf der Skelett-Aktionserkennung basiert. Die Open-Source-Lösung ist STGCN (Skeleton-Based Graph Convolutional Networks)
Raum-Zeit-Diagramm
Führen Sie mehrschichtige Diagrammfaltungsoperationen für das Raum-Zeit-Diagramm durch, um Feature-Maps höherer Ebene zu generieren. Anschließend wird es zur Aktionsklassifizierung (Aktionsklassifizierung) in den SoftMax-Klassifikator eingegeben.
GraphfaltungUrsprünglich hatte ich vor, das STGCN-Modell zu trainieren, bin aber auf zu viele Fallstricke gestoßen, sodass ich am Ende ein von anderen trainiertes Modell verwendet habe.
Pit 1. STGCN unterstützt von OpenPose erkannte Skelettpunkte und es gibt einen Datensatz „Kinetics-skeleton“, der direkt verwendet werden kann. Die Gefahr besteht darin, dass die Installation von OpenPose zu umständlich ist und viele Schritte erfordert. Nach dem Kampf geben Sie auf.
Pit 2. STGCN unterstützt auch den NTU RGB+D-Datensatz, der 60 Aktionskategorien enthält, wie zum Beispiel: Aufstehen, Gehen, Fallen usw. Der menschliche Körper in diesem Datensatz enthält 25 Skelettpunkte, nur Koordinatendaten, und das Originalvideo ist grundsätzlich nicht verfügbar. Daher gibt es keine Möglichkeit zu wissen, welchen Positionen diese 25 Skelettpunkte entsprechen und welches Modell zur Identifizierung dieser 25 verwendet werden kann Skelettpunkte. Dann aufgeben.
https://github.com/GajuuzZ/Human-Falling-Detect-Tracks
我看了下mediapipe包含了这 14 个骨骼点,所以可以用mediapipe识别的骨骼点输入他的模型,实现动作分类。
mediapipe 32个骨骼点
选出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])
STGCN原始方案构造的空间图只支持openpose18个骨骼点和NTU RGB+D数据集25个骨骼点
修改这部分源码,以支持自定义的14个骨骼点
模型直接使用Human-Falling-Detect-Tracks项目已经训练好的,实际运行发现识别效果很差,因为没有看到模型训练过程,不确定问题出在哪。
有能力的朋友可以自己训练模型试试,另外,百度的Paddle也基于STGCN开发了一个跌倒检测模型,只支持摔倒这一种行为的识别。
当然大家也可以试试Transformer的方式,不需要提取骨骼点特征,直接将 N 帧Die Sturzerkennung basiert auf der Erkennung menschlicher Skelettpunkte. Ein Teil des Codes wird mit Chatgpt vervollständigt送入模型分类。
关于STGCN的原理,大家可以参考文章:https://www.jianshu.com/p/be85114006e3 总结的非常好。
需要源码的朋友留言区回复即可。
如果大家觉得本文对你有用就点个 在看 鼓励一下吧,后续我会持续分享优秀的 Python+AI 项目。
Das obige ist der detaillierte Inhalt vonDie Sturzerkennung basiert auf der Erkennung menschlicher Skelettpunkte. Ein Teil des Codes wird mit Chatgpt vervollständigt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



DALL-E 3 wurde im September 2023 offiziell als deutlich verbessertes Modell gegenüber seinem Vorgänger eingeführt. Er gilt als einer der bisher besten KI-Bildgeneratoren und ist in der Lage, Bilder mit komplexen Details zu erstellen. Zum Start war es jedoch exklusiv

Die Leistung des i77700 reicht völlig aus, um Win11 auszuführen, aber Benutzer stellen fest, dass ihr i77700 nicht auf Win11 aktualisiert werden kann. Dies ist hauptsächlich auf die von Microsoft auferlegten Einschränkungen zurückzuführen, sodass sie es installieren können, solange sie diese Einschränkung überspringen. i77700 kann nicht auf win11 aktualisiert werden: 1. Weil Microsoft die CPU-Version begrenzt. 2. Nur die Intel-Versionen der achten Generation und höher können direkt auf Win11 aktualisiert werden. 3. Als 7. Generation kann der i77700 die Upgrade-Anforderungen von Win11 nicht erfüllen. 4. Der i77700 ist jedoch hinsichtlich der Leistung durchaus in der Lage, Win11 reibungslos zu nutzen. 5. Sie können also das Win11-Direktinstallationssystem dieser Site verwenden. 6. Nachdem der Download abgeschlossen ist, klicken Sie mit der rechten Maustaste auf die Datei und „laden“ sie. 7. Doppelklicken Sie, um den „One-Click“-Vorgang auszuführen

Die perfekte Kombination aus ChatGPT und Python: Erstellen eines intelligenten Kundenservice-Chatbots Einführung: Im heutigen Informationszeitalter sind intelligente Kundenservicesysteme zu einem wichtigen Kommunikationsinstrument zwischen Unternehmen und Kunden geworden. Um den Kundenservice zu verbessern, greifen viele Unternehmen auf Chatbots zurück, um Aufgaben wie Kundenberatung und Beantwortung von Fragen zu erledigen. In diesem Artikel stellen wir vor, wie Sie mithilfe des leistungsstarken ChatGPT-Modells und der Python-Sprache von OpenAI einen intelligenten Kundenservice-Chatbot erstellen und verbessern können

Installationsschritte: 1. Laden Sie die ChatGTP-Software von der offiziellen ChatGTP-Website oder dem mobilen Store herunter. 2. Wählen Sie nach dem Öffnen in der Einstellungsoberfläche die Sprache aus. 3. Wählen Sie in der Spieloberfläche das Mensch-Maschine-Spiel aus 4. Geben Sie nach dem Start Befehle in das Chatfenster ein, um mit der Software zu interagieren.

Heute möchte ich Ihnen einen letzte Woche vom MIT veröffentlichten Artikel vorstellen, in dem GPT-3.5-turbo verwendet wird, um das Problem der Erkennung von Zeitreihenanomalien zu lösen, und zunächst die Wirksamkeit von LLM bei der Erkennung von Zeitreihenanomalien überprüft wird. Im gesamten Prozess gibt es keine Feinabstimmung, und GPT-3.5-Turbo wird direkt zur Anomalieerkennung verwendet. Der Kern dieses Artikels besteht darin, wie man Zeitreihen in Eingaben umwandelt, die von GPT-3.5-Turbo erkannt werden können, und wie man sie entwirft Eingabeaufforderungen oder Pipelines, damit LLM die Anomalieerkennungsaufgabe lösen kann. Lassen Sie mich Ihnen diese Arbeit im Detail vorstellen. Titel des Bildpapiers: Largelingualmodelscanbezero-shotanomalydete

In diesem Artikel stellen wir vor, wie man intelligente Chatbots mit ChatGPT und Java entwickelt, und stellen einige spezifische Codebeispiele bereit. ChatGPT ist die neueste Version des von OpenAI entwickelten Generative Pre-Training Transformer, einer auf neuronalen Netzwerken basierenden Technologie für künstliche Intelligenz, die natürliche Sprache verstehen und menschenähnlichen Text generieren kann. Mit ChatGPT können wir ganz einfach adaptive Chats erstellen

01Ausblicksübersicht Derzeit ist es schwierig, ein angemessenes Gleichgewicht zwischen Detektionseffizienz und Detektionsergebnissen zu erreichen. Wir haben einen verbesserten YOLOv5-Algorithmus zur Zielerkennung in hochauflösenden optischen Fernerkundungsbildern entwickelt, der mehrschichtige Merkmalspyramiden, Multierkennungskopfstrategien und hybride Aufmerksamkeitsmodule verwendet, um die Wirkung des Zielerkennungsnetzwerks in optischen Fernerkundungsbildern zu verbessern. Laut SIMD-Datensatz ist der mAP des neuen Algorithmus 2,2 % besser als YOLOv5 und 8,48 % besser als YOLOX, wodurch ein besseres Gleichgewicht zwischen Erkennungsergebnissen und Geschwindigkeit erreicht wird. 02 Hintergrund und Motivation Mit der rasanten Entwicklung der Fernerkundungstechnologie wurden hochauflösende optische Fernerkundungsbilder verwendet, um viele Objekte auf der Erdoberfläche zu beschreiben, darunter Flugzeuge, Autos, Gebäude usw. Objekterkennung bei der Interpretation von Fernerkundungsbildern

chatgpt kann in China verwendet werden, kann jedoch nicht registriert werden. Wenn Benutzer sich registrieren möchten, können sie zur Registrierung eine ausländische Mobiltelefonnummer verwenden. Beachten Sie, dass während des Registrierungsprozesses auf die Netzwerkumgebung umgestellt werden muss eine fremde IP.
