Fare, derinlik görüntüsünden elde ettiğim belirli koordinatları temel alarak kinect'ten hareket ettirmek için bir yazılım geliştiriyorum. ama 30 kare/saniye (resim/saniye) var ve bu koordinatlar her karede değişiyor, böylece fare hareket etmeye devam ediyor. Sorum şu: Farenin hareketini düzeltmenin bir yolu var mı?Fare hareketini yumuşatır
cevap
Evet, daha pürüzsüz hareket etmenizi sağlayan bazı parametrelerle izlemeyi başlatabilirsiniz. Sen Smoothing
, Correction
, Prediction
, JitterRadius
ve MaxDeviationRadius
istersen numaralara değiştirebilir
var parameters = new TransformSmoothParameters
{
Smoothing = 0.2f,
Correction = 0.0f,
Prediction = 0.0f,
JitterRadius = 1.0f,
MaxDeviationRadius = 0.5f
};
this._sensor.SkeletonStream.Enable(parameters);
:
Aşağıda bir örnek kodudur.
Fixus, bu sadece OP, iskeleti izliyorsa çalışacaktır - Fare konumunu hesaplamak için doğrudan derinlik görüntüsünü kullanıyorsa değil. – Ani
@ananthonline true. Bunu ben yazmalıyım. Ama her iki akışın birleştirilmesi zor değildir, bu yüzden bu yazmanın iyi bir şey olduğunu düşündüm :) – Fixus
Cevabınız için teşekkürler, bu konuda emin değilim ama derinlik koordinatlarını bir iskelet noktasına eşlemek ve izlemek için bir yol var. bir ? eğer evet ise lütfen bana bir örnek kod verin. Şimdiden teşekkürler –
yaklaşık "mapping depth coordinates to skeleton points" bilmek istediğiniz beri, DepthImageFrame
'ın derinlik verilerinin X ve Y değerlerini alır MapToSkeletonPoint()
ve daha sonra SkeletonPoint
oluşturmak kullanabilirsiniz. Örnek:
SkeletonPoint point = depthFrame.MapToSkeletonPoint(x, y);
Bu yardımcı olur umarız!
Daha fazla bilgi verebilir misiniz? Titizlik hareketi (büyük/küçük) ne kadar? Küçükse - bir çeşit basit zamansal filtreleme yardımcı olabilir. Büyükse, muhtemelen veri/algoritma ile ilgili sorunlara işaret eder ve sorunu yeniden düşünmeden düzeltilemez. – Ani
As @ananthonline'ın dediği gibi - çok daha fazla bağlama ihtiyacımız var ve kuşkusuz bazı örnek kodlar. Kulağa ilginç geliyor - Bu gibi problemleri seviyorum, biraz kod al. –
Jitter küçük ama istediğim şey, fareyi bir konumdan diğerine gitmesi gerektiği gibi, hareketi düzeltmektir. Bazı süreksizlik gösterir. Normal fare gibi onu hareket ettirmek için bir yol istiyorum (normal fare çok daha yüksek bir frekansa sahip olduğunu biliyorum ama imleci benzer şekilde taşımak için herhangi bir yol var mı?) –