
Jedes Pose-Modell protokolliert 15 gute Kniebeugen an einem einknickenden Knie. Ich baute die KI, die Wiederholung 9 erwischt.
Ich habe die erste Version dieser Demo gebaut, um zu beweisen, dass ein Pose-Modell Kniebeugen zählen kann – und innerhalb eines Tages hatte ich das Falsche bewiesen. Ich fütterte es mit einer synthetischen Patientin nach Kreuzband-OP, die ich Maria nannte, 62 Jahre alt, acht Wochen nach Knierekonstruktion, fünfzehn verordnete Kniebeugen mit dem eigenen Körpergewicht. Die kostenlose Pose-Bibliothek tat genau das, was kostenlose Pose-Bibliotheken tun. Sie protokollierte fünfzehn Wiederholungen, zählte sie alle und machte weiter. Fünfzehn von fünfzehn. Eine saubere Sitzung.
Das Problem war Wiederholung 9. Bei Wiederholung 9 knickt Marias Knie nach innen ein und sie verlangsamt sich zum Ausgleich – genau die Bewegung, auf die ein Physiotherapeut nach einer Kreuzband-Rekonstruktion achtet, weil so Menschen das Transplantat wieder einreißen. Das Pose-Modell sah eine Kniebeuge. Es sah kein Wiederverletzungsrisiko, denn das zu sehen ist nicht der Zweck eines Pose-Modells. Die Wiederholung, die es hätte markieren sollen, war die, die es zählte.
Das war der Moment, in dem mir das eigentliche Produkt klar wurde. Ich hatte die Pose-Schätzung für den schwierigen Teil gehalten. Sie ist nicht mehr der schwierige Teil. Sie ist kostenlos.
Pose-Schätzung ist kostenlos, also hörte ich auf, damit zu konkurrieren
Ich verbrachte die erste Woche damit, einen besseren Schlüsselpunkt-Tracker zu bauen, und es war die am meisten verschwendete Woche des Projekts. BlazePose und MoveNet laufen bereits auf einem Handy, mit 30 Bildern pro Sekunde, und liefern Ihnen ein 33-Schlüsselpunkt-Skelett umsonst. Jede PT-Plattform und Corporate-Wellness-App hat das bereits oder kann es morgen einbauen. Dort zu konkurrieren heißt, darum zu konkurrieren, etwas zu verschenken, das bereits verschenkt wird.
Was Ihnen niemand in die Hand gibt, ist die Schicht nach den Schlüsselpunkten. Einen rohen Pose-Stream zu nehmen und ihn in etwas zu verwandeln, womit ein Kliniker arbeiten und was ein Kostenträger erstatten kann. Das ist die Schicht, von der ich entschied, dass Kinetiq sie von Ende zu Ende bauen würde, und die These, zu der ich immer wieder zurückkam, lautet so.
Pose-Schätzung ist kostenlos. Der Wert ist das Gehirn darüber – und der abrechenbare Beweis.
Also warf ich den Tracker weg und baute stattdessen die Interpretations-Engine. Sie nimmt den Schlüsselpunkt-Stream (synthetisch für drei meiner Testpatienten und für einen vierten offline aus einem real aufgenommenen Kniebeugen-Clip extrahiert, damit ich beweisen konnte, dass die Pipeline auf echtem Filmmaterial läuft), glättet ihn mit einem 1-Euro-Filter, filtert ihn nach Konfidenz, segmentiert Wiederholungen über zeitliche Selbstähnlichkeit und berechnet die Merkmale, mit denen ein Kliniker tatsächlich argumentiert: Gelenkwinkel und Bewegungsumfang, einen Knievalgus-Index, ein Tempo-Verhältnis Absenken-zu-Hochkommen, Bewegungsgleichmäßigkeit als Log Dimensionless Jerk und einen Links-Rechts-Symmetrie-Index. Schlichtes, unit-getestetes NumPy. Kein Modell im Bewertungspfad. Sie können das Ganze nachbauen unter veriprajna.com/de/demos/ki-biomechanik-ubungsverifikation-und-rtm-nachweis und zusehen, wie es eine Sitzung bewertet.
Als ich Maria erneut durch diese Engine laufen ließ, kam Wiederholung 9 so zurück, wie sie es beim ersten Mal hätte sein sollen.

Die Engine sagt nicht nur „schlechte Wiederholung“. Sie schreibt die Klausel, die sie geprüft hat: Valgus 0,054 bei oder über 0,03, Tempo 1,4 über 1,25. Ein Kliniker kann das gegenprüfen. Eine Blackbox kann man nicht gegenprüfen – und nach einer Kreuzband-OP will man das ganz besonders.
Die Wiederholung, bei der ich fälschen wollte
Ich erinnere mich genau, wo ich gierig wurde, und es war Wiederholung 12. Bei Wiederholung 12 von Marias Sitzung fällt der Hüft-Schlüsselpunkt unter das Sichtbarkeits-Gate. Die Tracker-Konfidenz für dieses Gelenk sinkt zu tief, um vertrauenswürdig zu sein. Für einige Frames weiß die Engine schlicht nicht, wo ihre Hüfte ist.
Der verlockende Zug – der, der Ihren Benchmark besser aussehen lässt – ist zu interpolieren. Die Hüftposition aus den umliegenden Frames zu raten, trotzdem einen Winkel zu berechnen, die Wiederholung zu bewerten, die Zahl sauber zu halten. Ich habe diese Interpolation geschrieben. Sie funktionierte. Und dann las ich die Literatur zur monokularen Genauigkeit und löschte sie.
Der Einzelkamera-Fehler beim Kniebeugewinkel liegt bei einem mittleren absoluten Fehler von 9,3 bis 21,9 Grad (Nature Scientific Reports, 2025). Das ist die ehrliche Obergrenze für diese Art von Messung. Wenn ich auf einem Frame mit niedriger Konfidenz eine Hüftposition erfinde und dann einen Gelenkwinkel daraus melde, messe ich kein Knie – ich erzeuge eine plausibel wirkende Zahl und nenne sie klinisch. Für ein Unternehmen namens Veriprajna, was wahre Weisheit bedeutet, war das keine knappe Entscheidung.

Also enthält sich die Engine. Sie sagt auf dem Bildschirm: „Wiederholung nicht bewertet, Hüfte nicht sichtbar.“ Sie graut das Skelett aus. Sie täuscht nichts vor.
Wir raten niemals Gelenkwinkel aus Schlüsselpunkten mit niedriger Konfidenz.
Ich habe diesen Satz auf den Bildschirm gesetzt, weil ich wollte, dass die Disziplin sichtbar ist und nicht in einer Config-Datei vergraben. Über die verdeckten Wiederholungen in meinem gelabelten Set enthielten sich drei von drei und null Winkel wurden erfunden – und das ist keine Behauptung, die ich aufstelle, sondern eine unit-getestete Invariante. Eine verdeckte Wiederholung, die trotzdem bewertet würde, wäre definitionsgemäß ein erfundener Winkel. Der Test würde sie fangen. Sich zu weigern zu antworten ist ein Feature, das ich gegen meine eigenen Instinkte beibehalten musste.
Warum besteht dieselbe Kniebeuge bei einem Patienten und fällt beim nächsten Patienten durch?
Ich hätte beinahe einen einzigen globalen Schwellenwert ausgeliefert, und eine Physiotherapeutin, der ich einen frühen Build zeigte, redete mir das in etwa dreißig Sekunden aus. Ihr Punkt war einfach. Eine 80-Grad-Kniebeuge einer Frau acht Wochen nach Kreuzband-OP ist guter Fortschritt. Dieselbe 80-Grad-Kniebeuge eines gesunden 30-jährigen Wellness-Kunden ist eine faule Wiederholung. Wenn Ihre Engine beide gleich bewertet, versteht sie keine Rehabilitation – sie versteht Geometrie.
Also wurde die Regel-Engine populationsadaptiv. Schwellenwerte knüpfen an das Patientenprofil: Altersband, Zustand, Genesungswoche. Maria, nach Kreuzband-OP Woche 8, erhält ein Beugeziel von 75 Grad. Jordan, ein 30-jähriger Corporate-Wellness-Athlet mit gesunden Knien, erhält 95. Ich baute ein Steuerelement in die Demo, um den Punkt unbestreitbar zu machen: Profil-Dropdown umschalten, exakt dieselbe Bewegung behalten und zusehen, wie sich das Urteil ändert.

Als ich dieses Dropdown zum ersten Mal vor jemandem umschaltete und die ganze Spalte der Urteile unter einer Bewegung wechselte, die sich nicht änderte, sah ich, wie sie es verstanden. Dieselbe Bewegung verdient je nach Profil ein anderes Urteil – und das ist klinisches Urteilsvermögen, kein Bug. Das ist auch der Teil der These, der nicht veraltet. Wenn die Pose-Schätzung perfekt wird – und das wird sie – kann der Sensor Ihnen trotzdem nicht sagen, dass 80 Grad für ein heilendes Knie etwas anderes bedeuten als für ein gesundes. Dieses Verständnis lebt in der Schicht darüber.
Agenten beraten, Code entscheidet
Ich habe einmal einen KI-Agenten mich blamieren lassen, und das ist der Grund, warum die Architektur so aussieht, wie sie aussieht. Alle, denen ich es vorstellte, wollten die trendige Fähigkeit: einen Agenten, der die Sitzung liest und die klinische Notiz schreibt, einen Agenten, der den Trend beobachtet und eskaliert. In Ordnung. Ich verdrahtete einen Clinical Scribe und einen Longitudinal Monitor über einer anderen Patientin, Eleanor, 70, nach Knieersatz, deren Bewegungsumfang über ihre Sitzungshistorie still zurückgeht.
Der erste Entwurf, den der Scribe schrieb, war flüssig und selbstbewusst und enthielt eine Bewegungsumfangs-Zahl, die nicht in den Belegen stand. Er hatte gerundet oder geglättet oder schlicht eine Zahl erfunden, die gut klang. Hätte ich ihm vertraut, hätte ich eine klinische Notiz mit einer erfundenen Messung ausgeliefert. Das ist der gesamte Fehlermodus, wenn man ein Sprachmodell in eine medizinische Schleife setzt – und ich hatte gerade zugesehen, wie es auf meinem eigenen Bildschirm passierte.
Die Lösung war, die Agenten strukturell dazu unfähig zu machen. Jede Zahl, die ein Agent einführt, wird gegen die deterministischen Belege geprüft. Jede Zahl, die nicht in der Ausgabe der Engine steht, wird abgelehnt, und stattdessen wird die deterministische Vorlage gezeigt. Beide Agenten enthalten sich vollständig, wenn kein API-Schlüssel vorhanden ist. Sie interpretieren und kommunizieren. Sie entscheiden nicht.

Agenten beraten, Code entscheidet.
Dieser Satz ist die tragende Designentscheidung der gesamten Demo. Der Vertrauenskern – jedes Urteil pro Wiederholung und die Abrechnungsbestimmung – ist schlichter unit-getesteter Code ohne Sprachmodell irgendwo in der Nähe. Die Agenten sitzen darüber, begrenzt und grounding-geprüft, und tun das eine, worin sie wirklich gut sind: verifizierte Zahlen in klinikerfertige Prosa zu verwandeln. In dem Moment, in dem ein Agent eine Stimme beim Urteil bekommt, haben Sie die Prüfbarkeit verloren, die der ganze Punkt war.
Was ein Kostenträger tatsächlich erstattet, ist eine Quittung, keine Wiederholungszahl
Der kommerzielle Grund, warum ich überhaupt etwas davon gebaut habe, ist etwas, das ich beim Lesen der CMS-Abrechnungsregeln lernte – und das ist nicht die Art, wie ich erwartet hatte, einen Monat zu verbringen. Kliniker können Remote Therapeutic Monitoring unter CPT 98975–98981 abrechnen, plus die 2026er-Codes 98979 und 98985, und die Qualifizierungsschwelle 2026 sank auf nur noch 2 Tage und 10 Minuten Daten (Veriprajna WP29-Forschung, 2026). Aber CMS erstattet keine rohen Koordinaten. Es verlangt gerätegesammelte Daten, die an eine Behandlungsentscheidung gebunden sind. Ein Haufen Schlüsselpunkte ist nicht abrechenbar. Eine dokumentierte, prüfbare Bestimmung ist es.
Diese Lücke ist nicht klein, weil das zugrunde liegende Problem nicht klein ist. Die Adhärenz bei Heimübungen in der Physiotherapie liegt bei etwa 35 Prozent, und 65 Prozent der Patienten brechen ihr Programm innerhalb des ersten Monats ab (Veriprajna WP29-Forschung, 2026). Selbstbericht überzeichnet die Compliance, sodass der Kliniker oft auf Daten abrechnet und behandelt, denen er nicht trauen kann. Auf der Arbeitgeberseite kosten muskuloskelettale Beschwerden grob 3.591 Dollar pro Mitarbeiter und Jahr, geschätzte 36 Prozent der MSK-Operationen gelten als unnötig (90 Milliarden Dollar), und mehr als die Hälfte der Mitarbeiter weigert sich aus Datenschutzgründen, Gesundheitsdaten zu teilen (Veriprajna WP29-Forschung, 2026). Verifizierte, datenschutzsichere, abrechenbare Übungsdaten sind das, was jedem in dieser Kette fehlt.
Also entscheidet die Engine am Ende jeder Sitzung: abrechenbar, braucht Klinikerprüfung oder unzureichende Gerätedaten – und exportiert einen FHIR-förmigen Sitzungsbericht. Beobachtungen pro Wiederholung, die geprüfte Schwellenwert-Klausel für jede, der Sitzungs-Rollup, die RTM-Bestimmung und die Dokumentationsfelder, die CMS verlangt. Ich sage FHIR-förmig, niemals FHIR-validiert, denn es ist strukturiertes JSON, das die Feldformen von Observation und DocumentReference spiegelt – kein Payload, der an eine lebende EHR gepostet wird. Ich emittiere ihn. Ich tue nicht so, als würde ich ihn POSTEN.
Marias Sitzung mit der Valgus-Markierung bei Wiederholung 9 wird nicht automatisch abgerechnet. Sie geht zuerst an einen Kliniker, weil ein Wiederverletzungssignal von einem Menschen gesehen werden sollte, bevor es zur Gebühr wird. Das ist die ehrliche Nuance, auf der ich beharrte: abrechenbar heißt nicht alles-gut, es heißt gut genug dokumentiert, um dahinterzustehen.

Die Zahlen auf diesem Panel sind die, die mir wichtig sind, und ich will über ihren Geltungsbereich präzise sein. Ground Truth hier ist das Urteil, das aus den vorgegebenen physikalischen Parametern gegenüber den Profil-Schwellenwerten folgt, unabhängig von der Engine berechnet; danach werden die Wiederholungen zu Schlüsselpunkten gerendert und Messrauschen nach dem Fixieren der Labels hinzugefügt, sodass die Engine das Urteil durch das Rauschen hindurch wiederfinden muss. Auf diesem Set liegt die Übereinstimmung bei 100 Prozent bei 25 klaren Fällen und 100 Prozent bei 10 Grenzfällen, die etwa innerhalb einer Standardabweichung eines Schwellenwerts sitzen. Das ist ein Unterscheidungsergebnis auf einem gelabelten synthetischen Set, keine Open-World-Garantie, und die Grenzfälle sind genau die, die unter naiver Schwellenwertsetzung umkippen würden – weshalb ich sie getrennt melde. Das sind dauerhafte Maße: Aufgabengenauigkeit, Automatisierungsdurchsatz und Ehrlichkeit. Sie veralten nicht, wenn das Pose-Modell besser wird, weil keines davon eine Fehlerrate des Pose-Modells ist.
Die Frage, die mir bleibt
Ich bin in dies hineingegangen und dachte, ich baue ein Computer-Vision-Produkt, und ich beende es überzeugt, dass ich ein Nachvollziehbarkeitsprodukt gebaut habe, das zufällig mit einer Kamera beginnt. Die interessante Arbeit war nie, die Schlüsselpunkte zu bekommen. Es war zu entscheiden, was das System behaupten darf, wann es sich enthalten muss, wessen Schwellenwerte gelten und hinter was ein Kliniker seine Zulassung stellen kann. Wenn Sie zusehen wollen, wie die Engine ein einknickendes Knie bewertet, eine verdeckte Wiederholung ablehnt und die Quittung exportiert, läuft sie ohne API-Schlüssel unter veriprajna.com/de/demos/ki-biomechanik-ubungsverifikation-und-rtm-nachweis.
Und wenn Sie lieber zusehen möchten, als mich zu lesen, wie ich es beschreibe – hier läuft das Ganze von Ende zu Ende.
Die Frage, die ich immer wieder wende und über die ich wirklich gerne mit anderen Buildern streiten würde, ist diese. Wenn die Sensoren asymptotisch perfekt werden, wird die Versuchung sein, das Modell mehr entscheiden zu lassen, weil es so selten falschliegen wird. Aber selten-falsch ist genau die Bedingung, unter der eine erfundene Zahl den meisten Schaden anrichtet – weil Sie aufgehört haben zu prüfen. Also wo, in Ihren eigenen Systemen, ist die Linie, die Sie das Modell nicht überschreiten lassen, und können Sie auf den Code zeigen, der sie durchsetzt?


