Skip to content
Kaputun altı

Ucuz bir kamerayı terapiye yetecek kadar iyi hale getirmek

Kullanıcılarımız evdeki yaşlı bireyler. Ellerinde 1080p kamera yok — loş bir salonda, iki metre uzakta, beş yıllık bir dizüstü var. ViMove AI, MediaPipe'ın üzerine kendi görüntü katmanını, LRD hattını ekler.

Kötü kamerada aslında ne bozulur

1. Kişi kadrajda küçücük

480p kamerada iki metre uzakta oturan biri birkaç yüz piksel boyundadır; modelin çalışacağı piksel neredeyse kalmaz.

2. Noktalar titrer

Eklem noktaları kareden kareye titrer; sayaç yapılmayan tekrarları sayar.

3. Kareler kaybolur

Loş ışıkta model üst üste birkaç kare hiçbir şey döndürmez ve sayaç mantığı bozulur.

LRD hattı, adım adım

Kamera 480p, loş 1 · ROI gövdeyi kırp ve büyüt (≈2x piksel) MediaPipe pose / hand / face landmark 2 · Kararlılık medyan + One Euro + boşluk doldurma 3 · Sayaç gürültüye uyarlanan eşik 4 · kare kalitesi

1 · Uyarlanır ROI — daha büyük model değil, daha iyi piksel

Tüm kareyi modele vermek yerine vücudun yerini takip edip etrafını kırpıyor ve büyütüyoruz; model kullanıcıyı yaklaşık iki kat büyük görüyor.

2 · Medyan + One Euro — iki farklı gürültü

Medyan büyük hataları, One Euro filtresi titremeyi temizler; kare kaybında son hız ile boşluk doldurulur.

3 · Kendi kamerasının ne kadar gürültülü olduğunu bilen sayaç

Hat kalan titreşimi ölçer ve eşikleri buna göre uyarlar; eşik asla sinyalin ulaşamayacağı yere itilmez.

4 · İki ray: biri saymak, biri ölçmek için

Sayım hızlı raydan, ölçüm pürüzsüz raydan yapılır; hareket açıklığı tek maksimum yerine en iyi birkaç örneğin medyanıdır.

Gerçekten işe yarıyor mu? Ölçtük.

Kaynak kodla birlikte tekrar üretilebilir bir kıyaslama geliyor: 20 temiz tekrar üretilip gerçek kamera bozulmaları uygulanıyor ve aynı akışı iki sayaç okuyor.

Senaryo Sayım doğruluğu — eski Sayım doğruluğu — LRD Hareket açıklığı hatası — eski Hareket açıklığı hatası — LRD
1280x720 · yakin %100 % %0.9 %
640x480 · yakin %100 % %1.4 %
640x480 · uzak %100 % %3.3 %
320x240 · yakin %100 % %3.3 %
320x240 · uzak %99 % %8.8 %
160x120 · uzak %95.8 % %28.1 %

Senaryo başına 60 rastgele tohum.

Dürüstçe okunmalı: bu sayılar bir simülasyondan geliyor, klinik denemeden değil.

Kodu oku

  • app/static/game/lowres.jshattın kendisi
  • app/static/game/game.js16 hareket dedektörü
  • bench/lowres_bench.mjskıyaslama betiği
GitHub'da kaynak kod