Dein Körper als Tensor (Pose)
Deine Kamera oder ein Foto — und du siehst live, was eine Pose-KI wirklich von dir sieht: 17 Punkte, 51 Zahlen, ein [17, 3]-Tensor. Mit Skelett-Overlay und einem Hampelmann-Zähler, der nur aus diesen Zahlen gebaut ist.
👋 HerrKI hier — heute wirst du selbst zum Tensor
🧭 Einfach gesagt: Deine Kamera sieht dich als 17 Punkte an deinem Körper, nicht als Person — daraus zählt ein kurzes Stück Code deine Hampelmänner.
Deine Fitness-App zählt Kniebeugen und meckert, wenn der Rücken krumm ist. Eine Spielkonsole lässt dich ohne Controller Tennis spielen — dein Körper ist der Controller. Eine Physiotherapie-App prüft zu Hause, ob du die Übung wirklich richtig machst. Und in jedem Handy-Foto weiß die Galerie schon, wer da wie dasteht.
Das wirkt wie Zauberei: Die Software „sieht“ deinen Körper. Heute schauen wir nach, was da wirklich passiert — und die Antwort ist herrlich unspektakulär. Die KI sieht keinen Körper, keine Bewegung, keine Anstrengung. Sie sieht 51 Zahlen. Mehr nicht. Und du siehst sie gleich live neben deinem eigenen Bild.
- Wie aus einem Kamerabild [Höhe, Breite, 3] ein winziger [17, 3]-Tensor wird
- Was die 17 Zeilen und die 3 Spalten genau bedeuten — Gelenk, x, y, Sicherheit
- Warum
ynach unten größer wird (und warum dich das sonst dauernd verwirren würde) - Wie aus diesen Zahlen in drei Zeilen Logik ein Hampelmann-Zähler wird — ganz ohne neues Training
- Wo das Verfahren ehrlich an seine Grenzen stößt
🔒 Deine Daten bleiben auf deinem Gerät
Gleich siehst du dich selbst auf dem Bildschirm — deshalb vorweg, in aller Klarheit: Dein Kamerabild verlässt dein Gerät nicht. Kein Bild, kein Video, kein einzelnes Skelett wird irgendwohin hochgeladen. Es gibt in diesem Kapitel keine einzige Zeile Code, die etwas an einen Server schickt.
- Der Browser liefert das Kamerabild über
getUserMediadirekt an die Seite — wie bei einem Video-Chat, nur ohne Gegenstelle. - Das Pose-Modell (MoveNet, 4,8 MB) liegt auf diesem Server und rechnet danach in deinem Browser, auf deinem Prozessor bzw. deiner Grafikkarte.
- Nichts wird gespeichert. Tab schließen = alles weg. Der Kamera-Stream wird beim Stoppen sauber abgeschaltet (die Kamera-Leuchte geht aus).
Du willst die Kamera gar nicht anschalten? Völlig in Ordnung — der Foto-Weg unten funktioniert genauso gut, und auch dein Foto bleibt lokal.
🧰 Schritt 1: Das Werkzeug holen
📦 Erst das Modell laden
Das Pose-Modell heißt MoveNet („SinglePose Lightning“) und ist mit 4,8 MB ein echtes Leichtgewicht — gebaut, damit es auch auf einem Handy flüssig läuft. Wir laden es erst auf deinen Klick, damit niemand ungefragt Daten verbraucht.
🎬 Jetzt brauchen wir ein Bild von dir
Zwei Wege — such dir aus, was dir lieber ist:
🤳 Weg A: Live-Kamera
Am eindrucksvollsten: Du bewegst dich, die Zahlen tanzen mit.
Stell dich so hin, dass du ganz im Bild bist — Kopf bis Knie reicht.
🖼️ Weg B: Ein Foto
Ohne Kamera, ohne Publikum — funktioniert genauso.
🦴 Schritt 2: Das Skelett — und was wirklich dahintersteckt
Links siehst du dich (oder dein Foto) mit dem Skelett darüber: 17 Punkte und die Linien dazwischen. Rechts steht dasselbe als das, was es in Wahrheit ist — eine Tabelle aus Zahlen. Beides ist dieselbe Information. Nur die linke Seite ist für dich gemalt.
Bereit.
| # | Gelenk | x | y | Sicherheit |
|---|
x und y sind Pixel-Positionen im Originalbild, Sicherheit ist ein Wert zwischen 0 und 1. Zeilen unter 0,30 sind ausgegraut — die zeichnen wir gestrichelt oder gar nicht.
🔬 Runter zum Tensor: aus 6 Millionen Zahlen werden 51
Rechnen wir das einmal durch. Ein Kamerabild in Full-HD ist ein Tensor der Form [1080, 1920, 3] — Höhe mal Breite mal drei Farbkanäle (Rot/Grün/Blau, genau wie in „Bilder als Tensoren“). Das sind 6.220.800 Zahlen. Sechs Millionen. Pro Einzelbild.
🔑 Der Kernsatz des Kapitels: „Sehen“ heißt hier nichts anderes als 6 Millionen Pixel-Zahlen werden zu 51 Zahlen eingedampft — und mit 51 Zahlen kann ganz normale Programmlogik arbeiten. Kein Zauber, keine Magie: eine Kompression auf das, worauf es ankommt.
Genau das ist der Grund, warum eine Fitness-App auf deinem Handy flüssig läuft. Nicht das Netz macht die Kniebeugen-Zählung — das Netz liefert nur die 51 Zahlen. Gezählt wird danach, mit stinknormalem Code. Und den bauen wir jetzt.
🏃 Schritt 3: Vom Tensor zur Anwendung — der Hampelmann-Zähler
Ein Hampelmann (englisch: jumping jack) ist eine sehr einfache Bewegung: Arme hoch, Arme runter, hoch, runter. Wie zählt man die? Man braucht kein neues neuronales Netz, kein Training, keine Trainingsdaten. Man braucht drei Zeilen Logik auf dem Tensor, den wir schon haben:
⚠️ Moment — „über der Nase“ heißt kleiner?
Ja, und das ist die klassische Stolperfalle. In der Mathematik-Schule wächst y nach
oben. In Bildern wächst y nach unten: Zeile 0 ist die
oberste Bildzeile, danach zählt man abwärts. Der Grund ist uralt und banal — Bilder werden
seit jeher zeilenweise von oben nach unten gespeichert und übertragen, genau wie du diesen Text liest.
Für uns heißt das: weiter oben im Bild = kleineres y. Deshalb bedeutet
handgelenk.y < nase.y genau: „Die Hand ist höher als die Nase.“
Schau in der Tabelle oben nach — die Nase hat ein kleineres y als die Knöchel. Immer.
Warum überhaupt der Umweg über zwei Zustände (hoch / runter) und nicht
einfach „Hände oben = +1“? Weil du sonst pro Sekunde 15-mal weiterzählen würdest, solange die Arme
oben bleiben. Wir zählen deshalb nur den Wechsel — das ist der gleiche Trick, mit dem
eine Türklingel zwischen „gedrückt“ und „gerade eben gedrückt worden“ unterscheidet.
Funktioniert mit der Live-Kamera. Für ein Foto zeigt der Zähler nur den erkannten Zustand an — ein Standbild kann sich schlecht bewegen. 🙂
🧭 Ehrlich bleiben: was das hier NICHT kann
- Alles ist flach. Die 51 Zahlen enthalten keine Tiefe. Es gibt nur x und y — wo im Bild, nicht wie weit weg. Dreh dich seitlich zur Kamera, und das Modell rät: Die Schulter, die eigentlich hinten ist, bekommt trotzdem eine Bildposition. Für „ist der Rücken gerade?“ ist das oft zu wenig.
- Verdeckung verwirrt. Was das Modell nicht sieht, muss es erraten — Hand hinter dem Rücken, Beine hinter einem Tisch. Die Sicherheits-Spalte sinkt dann, aber sie sinkt nicht immer ehrlich genug.
- Licht und Kontrast entscheiden. Dunkler Raum, Gegenlicht, dunkle Kleidung vor dunklem Hintergrund: Die Sicherheiten brechen ein. Probier's aus — geh mal zwei Schritte in den Schatten und beobachte die rechte Spalte.
- Genau eine Person. Wir nutzen „SinglePose“ — das Modell sucht eine Person und liefert immer 17 Punkte, auch wenn zwei Leute im Bild sind (dann bastelt es gern ein Misch-Skelett). Für mehrere Personen gibt es größere Varianten, die auch mehr Rechenleistung kosten.
- Kein Verständnis von Bewegung. Das ist der wichtigste Punkt: Die KI weiß nicht, dass du Sport machst. Sie weiß nicht einmal, dass sie einen Menschen sieht. Sie ordnet einem Bildausschnitt 17 Koordinaten zu — der Rest ist Geometrie auf 51 Zahlen, geschrieben von einem Menschen, der weiß, was ein Hampelmann ist.
🔙 Zurück zur Anwendung
Zurück zur Fitness-App, die Kniebeugen zählt, zur Spielkonsole ohne Controller und zur Physio-App, die deine Haltung prüft: Keine davon „sieht“ dich. Alle bekommen dieselben 51 Zahlen wie du gerade — und was daraus eine Kniebeuge oder ein Hampelmann wird, hat ein Mensch als Geometrie darübergelegt. Genau das kannst du jetzt auch: Gelenkpunkte auslesen, die y-Achse richtig herum denken, die Sicherheits-Spalte prüfen und mit drei Zeilen Vergleichslogik eine eigene Übung zählen.
Und weil das Muster dahinter immer dasselbe ist, wechseln wir im nächsten Kapitel „Sprich mit deinem Browser (Audio)“ einfach den Sinn: Statt Bildpunkten kommt Klang herein — der erst zu einem Bild wird, bevor ihn dieselbe Art Netz erkennt.
📚 Zum Weiterlesen
- Cao u. a. 2018, „OpenPose: Realtime Multi-Person 2D Pose Estimation“ — arxiv.org/abs/1812.08008 — der Klassiker für mehrere Personen gleichzeitig, also genau die Grenze, an die wir hier gestoßen sind.
- Bazarevsky u. a. 2020, „BlazePose: On-device Real-time Body Pose Tracking“ — arxiv.org/abs/2006.10204 — wie man ein Pose-Netz so klein bekommt, dass es auf dem Handy in Echtzeit läuft.
- TensorFlow Blog 2021, Next-Generation Pose Detection with MoveNet and TensorFlow.js — blog.tensorflow.org — die Vorstellung genau des Modells, das dir hier gerade dein Skelett gezeichnet hat.
🧠 Kurzer Check — hast du es?
hand.y < nase.y.✅ Das nimmst du mit
- Aus Millionen Zahlen werden 51. Ein Full-HD-Bild ist ein [1080, 1920, 3]-Tensor mit 6.220.800 Werten — die Antwort des Netzes ist ein [17, 3]-Tensor.
- 17 Zeilen, 3 Spalten — mehr steht da nicht. Pro Gelenk eine Zeile, darin x, y und die Sicherheit des Modells.
- y wächst nach unten. Bilder werden von oben links gespeichert; „Hand höher als
Nase“ heißt im Code deshalb
hand.y < nase.y. - Der Hampelmann-Zähler ist Geometrie, kein Training. Ein paar Zeilen Logik auf 51 Zahlen — geschrieben von einem Menschen, der weiß, was ein Hampelmann ist.
- Alles ist flach, und Verdeckung verwirrt. Keine Tiefe, genau eine Person, und bei Gegenlicht oder dunkler Kleidung brechen die Sicherheiten ein.
📎 So zitierst du dieses Kapitel
HerrKI: Dein Körper als Tensor (Pose). herrki.de/440_koerper_als_tensor, ein privates Hobbyprojekt von Terragon.de, abgerufen am 4. November 2026.
Lizenz: CC BY 4.0 — frei nutzen, teilen, anpassen. Nennung: „HerrKI (herrki.de), ein privates Hobbyprojekt von Terragon.de“.
