İnsan Eylemlerini Tahmin Etme

Projenin GitHub Repo

skr

Detaylar

Bu proje, Colorado Maden Okulu’ndaki Dr. Zhang’ın İnsan Merkezli Robotik (CSCI473) dersi için 2020 Bahar döneminde proje #3 olarak gerçekleştirilmiştir. Destek Vektör Makineleri (SVM) kullanarak robotikte makine öğrenimine bir giriş sağlamak amacıyla tasarlanmıştır. Orijinal proje teslimatları/tanımı buradan görüntülenebilir.

skr

Bu projede, bazı değişikliklerle birlikte MSR Günlük Aktivite 3D Veri Seti (Şekil 2) kullanılmıştır. Bu veri seti, bir Xbox Kinetik sensöründen toplanan 16 insan aktivitesini içermekte ve iskeletler olarak saklanmaktadır. İskeletler, bir çerçevede kaydedilen bir insanın 20 ekleminin gerçek dünya (x, y, z) koordinatlarının bir dizisidir. İşte bir iskeletin ne olduğunu gösteren bir şekil:

skr

İnsan eylemi tahmini yapmak için, ham verilerin SVM tarafından işlenebilecek bir biçimde temsil edilmesi gerekmektedir. Bu projede, aşağıdaki temsiller kullanılmıştır:

  • Göreli Açı ve Mesafeler (RAD) temsili
  • Eklem Pozisyon Farkları Histogramı (HJPD) temsili

Sınıflandırma için, temsil(ler) bir SVM’ye gönderilir ve LIBSVM ile desteklenen bir model oluşturulur. Bir RAD kullanan ve diğeri HJPD kullanan iki model oluşturulacaktır. Amaç, bu modelleri mümkün olduğunca doğru hale getirmek ve hangi temsilin en iyi performansı gösterdiğini görmektir.

Bunu bilerek, işte kodun ne yaptığının bir özeti:

  1. Değiştirilmiş veri setinden ham verileri yükle
  2. Yüklenen veri setinden herhangi bir aykırı ve/veya hata verisini çıkar
  3. Nihai ham veriyi RAD ve HJPD temsillerine dönüştür
  4. Temsiller, iki model oluşturmak için ayarlanmış SVM(ler)e gönderilir
  5. İki model, test ham verileri ile beslenir ve model(ler)in nasıl performans gösterdiğini ölçmek için bir karmaşa matrisi oluşturulur.

Sonuçlar

Kodu çalıştırdıktan ve modelleri elimden gelenin en iyisiyle ayarladıktan sonra, işte hem RAD hem de HJPD modelleri için nihai karmaşa matrisi:

Temsil: RAD
Doğruluk: %62.5
LIBSVM Sınıflandırması   8.0   10.0  12.0  13.0  15.0  16.0
Gerçek Aktivite Numarası
8.0                        8     0     0     0     0     0
10.0                       1     5     0     0     1     1
12.0                       0     1     1     0     3     3
13.0                       0     0     0     6     1     1
15.0                       0     0     0     1     5     2
16.0                       0     0     0     0     3     5
Temsil: HJPD
Doğruluk: %70.83
LIBSVM Sınıflandırması   8.0   10.0  12.0  13.0  15.0  16.0
Gerçek Aktivite Numarası
8.0                        7     1     0     0     0     0
10.0                       1     5     0     0     0     2
12.0                       0     0     7     0     1     0
13.0                       2     0     1     5     0     0
15.0                       0     0     0     0     7     1
16.0                       0     2     0     0     3     3

Sonuç

Her iki doğruluk %50’nin üzerinde olduğundan, bu proje bir başarıydı. Ayrıca, HJPD temsili bu sınıflandırmalar için daha doğru bir temsil gibi görünmektedir. Bununla, iskelet verilerini kullanarak insan eylemlerini tahmin eden bir model(ler) bulunmaktadır. Buradaki model(ler) mükemmel olmaktan uzaktır ama rastgeleden daha iyidir. Bu proje, daha sonra Hareketli Poz projesinin doğmasına neden olmuştur.

Ek Notlar: