2012-05-25 10 views
5

मैं कुछ निर्देशांकों के आधार पर माउस को स्थानांतरित करने के लिए एक सॉफ्टवेयर विकसित कर रहा हूं जो मुझे किनेक्ट से गहराई से प्राप्त होता है। लेकिन मेरे पास 30 फ्रेम/सेकेंड (छवियां/सेकेंड) हैं और वे प्रत्येक फ्रेम के साथ परिवर्तन समन्वयित करते हैं ताकि माउस आगे बढ़ता रहता है। मेरा सवाल है, क्या माउस के आंदोलन को सुचारू बनाने का कोई तरीका है?चिकनाई माउस आंदोलन

+1

क्या आप अधिक जानकारी प्रदान कर सकते हैं? झटकेदार आंदोलन (बड़ा/छोटा) कितना है? यदि यह छोटा है - कुछ प्रकार के साधारण अस्थायी फ़िल्टरिंग में मदद मिल सकती है। यदि यह बड़ा है तो यह संभवतः आपके डेटा/एल्गोरिदम के साथ मुद्दों को इंगित करता है और समस्या को पुनर्विचार किए बिना चिकना नहीं किया जा सकता है। – Ani

+0

जैसा कि @ananthonline ने कहा - हमें बहुत अधिक संदर्भ की आवश्यकता होगी, और बिना किसी संदेह के कुछ नमूना कोड। हालांकि दिलचस्प लगता है - मुझे इस तरह की समस्याएं पसंद हैं, कुछ कोड प्राप्त करें। –

+0

जिटर छोटा है लेकिन मैं जो चाहता हूं वह आंदोलन को सुगम बनाना है, जैसे कि माउस को किसी स्थिति से दूसरे स्थान पर जाना चाहिए। यह कुछ असंतोष दिखाता है। मैं इसे सामान्य माउस की तरह ले जाने का एक तरीका चाहता हूं (मुझे पता है कि सामान्य माउस की आवृत्ति बहुत अधिक है लेकिन क्या मेरे कर्सर को समान रूप से स्थानांतरित करने का कोई तरीका है?) –

उत्तर

5

हाँ आप कुछ पैरामीटर के साथ ट्रैकिंग शुरू कर सकते हैं जो आपको आसान बनाने की अनुमति देता है।

 var parameters = new TransformSmoothParameters 
     { 
      Smoothing = 0.2f, 
      Correction = 0.0f, 
      Prediction = 0.0f, 
      JitterRadius = 1.0f, 
      MaxDeviationRadius = 0.5f 
     }; 

     this._sensor.SkeletonStream.Enable(parameters); 

आप Smoothing, Correction, Prediction, JitterRadius, और MaxDeviationRadius जो नंबर आप चाहते हैं बदल सकते हैं:
नीचे एक उदाहरण कोड है।

+1

फ़िक्सस, यह केवल तभी काम करेगा जब ओपी कंकाल को ट्रैक कर रहा हो - अगर वह सीधे माउस की स्थिति की गणना करने के लिए गहराई से छवि का उपयोग नहीं कर रहा है। – Ani

+1

@ananthonline सच है कि। मुझे यह लिखना चाहिए। लेकिन दोनों धाराओं को संयोजित करना मुश्किल नहीं है इसलिए मैंने सोचा कि यह लिखना एक अच्छी बात है :) – Fixus

+1

उत्तर के लिए धन्यवाद, मुझे इस बारे में निश्चित नहीं है, लेकिन एक कंकाल बिंदु पर गहराई निर्देशांक को मैप करने और ट्रैक करने का कोई तरीका है एक ? यदि हां कृपया मुझे एक नमूना कोड प्रदान करें। अग्रिम धन्यवाद –

3

के बाद से आप के बारे में "mapping depth coordinates to skeleton points" जानना चाहता था, आप का उपयोग DepthImageFrame के MapToSkeletonPoint() जो गहराई डेटा के एक्स और वाई मूल्यों लेता है और फिर एक SkeletonPoint बना सकते हैं। उदाहरण:

SkeletonPoint point = depthFrame.MapToSkeletonPoint(x, y); 

आशा है कि इससे मदद मिलती है!

संबंधित मुद्दे