2015-03-03 5 views
5

मैं एंड्रॉइड मोबाइल फोन पर गति के एक विशिष्ट पैटर्न का पता लगाना चाहता हूं, उदा। अगर मैं पांच बैठता हूं।एंड्रॉइड डिवाइस पर गति के पैटर्न का पता लगाएं

[ध्यान दें:। मैं वर्तमान में गति का पता लगाने कर रहा हूँ, लेकिन सभी दिशा में गति ही है]

मैं क्या जरूरत है:

  1. मैं नीचे गति में अंतर करने की जरूरत है, ऊपर की ओर, आगे और पिछड़ा।
  2. मुझे जमीन के स्तर से मोबाइल फोन की ऊंचाई (और इसे रखने वाले व्यक्ति की ऊंचाई) की आवश्यकता है।

क्या कोई नमूना परियोजना है जिसमें पैटर्न गति का पता लगाया गया है?

+1

@ NSQuamber.java –

उत्तर

2

यह असंभव है। आप मुख्य गुरुत्वाकर्षण बल के साथ त्वरण की तुलना में नीचे और ऊपर की पहचान कर सकते हैं, लेकिन आप कैसे जानते हैं कि आपका फोन पिछली जेब में है जब आप उठते हैं या बस अपने लहराते हाथ में जब आप नमस्ते कहते हैं? क्या 5 स्टैंड अप या 5 नरक थे? आगे और पीछे भी अधिक अप्रत्याशित हैं। उल्टा फोन के लिए आगे क्या है? फ़ोन बिंदु के दृष्टिकोण से आगे क्या होगा? और जमीन के स्तर के साथ ही ऊंचाई पूरी तरह से माप से बाहर हैं। फोन चलेगा और बौने या विशालकाय के लिए सटीक तरीके से त्वरण का उत्पादन करेगा - यह व्यक्ति पर व्यवहार या गतिहीन पर निर्भर करता है।

+1

मैं असहमत हूं। यह सही नहीं है - लेकिन यह सीएस के कई क्षेत्रों के लिए सच है। आजकल सेंसर की शुद्धता को देखते हुए, यह अनुमान लगाने के लिए मॉडलों का निर्माण करना अनुचित नहीं है कि पहनने वाला क्या कर रहा है। उदाहरण के लिए, वायरलेस स्वास्थ्य का उभरता हुआ क्षेत्र/उद्योग इस तरह के मुद्दों पर केंद्रित है। मैंने एक प्रोफेसर के साथ एक बार काम किया जो सेंसर का इस्तेमाल करता था - ओपीएस फोन के लोगों के विपरीत नहीं - स्ट्रोक पीड़ितों पर, जो चलने वाली चाल से संभावित समस्याओं का निदान करने में मदद कर सकता है। ओपी के मामले में, निश्चित रूप से, आपको झूठी सकारात्मक मिलेगी, लेकिन सेंसर डेटा को देखकर लहर और स्टैंड-अप के बीच बताना मुश्किल नहीं होगा। –

6

यह असंभव नहीं है, लेकिन यह बेहद सटीक नहीं हो सकता है, यह देखते हुए कि फोन में एक्सेलेरोमीटर और जीरोस्कोप की सटीकता में काफी सुधार हुआ है।

क्या अपने अनुप्रयोग कर जाएगा सेंसर डाटा) ले जा रहा है, और एक regression analysis.

1 कर आप डेटा का एक मॉडल है कि आप पाँच बैठ के रूप में वर्गीकृत और खड़ा है का निर्माण करने की आवश्यकता होगी। यह उपयोगकर्ता को पांच बैठने और खड़े होने के लिए, या ऐप को पहले से एकत्र किए गए डेटा से अधिक सुदृढ़ मॉडल के साथ लोड करके किया जा सकता है। ऐसी कई चीजें हो सकती हैं जो आप कर सकते हैं, जैसे विभिन्न ऊंचाइयों वाले लोगों के कई मॉडल लोड करना, और उपयोगकर्ता को सर्वश्रेष्ठ मॉडल का उपयोग करने के लिए ऐप में अपनी ऊंचाई सबमिट करने के लिए कहना।

2) चलाने पर, आपका ऐप आपके द्वारा बनाए गए मॉडल के लिए data from the sensors (एंड्रॉइड great libraries for this) फिट करने का प्रयास करेगा। उम्मीद है कि जब उपयोगकर्ता पांच सीट-स्टैंड करता है, तो वह पांच सीट-स्टैंड की आपकी परिभाषा के लिए पर्याप्त गति डेटा का एक सेट उत्पन्न करेगा जो आपके एल्गोरिदम इसे स्वीकार करता है।

यहां पर बहुत से काम आपके मॉडल को इकट्ठा और वर्गीकृत कर रहे हैं, और जब तक आप स्वीकार्य सटीकता प्राप्त नहीं करते हैं तब तक इसके साथ खेलना। इस बात पर फ़ोकस करें कि अन्य ऊपर और नीचे गति के लिए एक स्टैंड-सीट अद्वितीय क्यों है - उदाहरण के लिए, डेटा में पैरों को विस्तारित करने का एक बताने वाला संकेत हो सकता है, इसके बाद पूरी तरह से सीधा होने के लिए एक अलग आकार हो सकता है। या, यदि आप फोन को जेब में होने की उम्मीद करते हैं, तो आपके पास बहुत घूर्णन गति नहीं हो सकती है, इसलिए आप परीक्षण सेट को अस्वीकार कर सकते हैं जो कि जीरोस्कोप से बहुत सारे परिवर्तन पंजीकृत हैं।

1

मैं एलेक्स की प्रतिक्रिया से जरूरी नहीं हूं। एक्सेलेरोमीटर, डिवाइस रोटेशन और परीक्षण/त्रुटि और डेटा खनन के एएलओटी का उपयोग करके यह संभव है (हालांकि शायद आप जितना सटीक नहीं हो)।

जिस तरह से मैं देख सकता हूं कि यह काम कर सकता है वह एक विशिष्ट तरीके को परिभाषित करके है जिसमें उपयोगकर्ता डिवाइस रखता है (या डिवाइस लॉक और उपयोगकर्ताओं के शरीर पर स्थित है)। जैसे ही वे गति के माध्यम से जाते हैं त्वरण और समय के साथ संयुक्त अभिविन्यास निर्धारित करेगा कि किस तरह की गति का प्रदर्शन किया जा रहा है।आपको क्लास ऑब्जेक्ट्स जैसे ओरिएंटेशनइवेंट लिस्टनर, सेंसर इवेंट लिस्टनर, सेंसर मैनेजर, सेंसर और विभिन्न टाइमर आदि का उपयोग करना होगा। रननेबल्स या टाइमरटास्क।

वहां से, आपको बहुत सारे डेटा एकत्र करने की आवश्यकता है। संख्याओं को विशिष्ट क्रियाओं के लिए क्या करना है, देखें, रिकॉर्ड करें और अध्ययन करें, और उसके बाद प्रत्येक आंदोलन और उप-आंदोलनों को परिभाषित करने वाले मूल्यों की एक श्रृंखला के साथ आते हैं।

1) रेस्ट स्थिति जहां फोन उन्मुखीकरण समय में एक्स-मूल्य है x

2) situp शुरू कर दिया है, जहां फोन उन्मुखीकरण y- की सीमा है: क्या मैं उप-आंदोलनों से मतलब है, शायद एक situp पांच भागों है समय y (एक्स से अधिक) में मूल्यों

3) situp अंतिम स्थान पर है जहां फोन उन्मुखीकरण z-मानों की श्रेणी समय जेड (y से अधिक) में है

4) situp पलटाव में है (उपयोगकर्ता फर्श पर वापस गिर रहा है) जहां फ़ोन ओरिएंटेशन वाई-वैल्यू की सीमा समय v (z से अधिक)

पर है

5) situp बाकी स्थिति जहां फोन उन्मुखीकरण समय n (सबसे बड़ी और अंतिम समय)

रूप में अच्छी तरह यह करने के लिए त्वरण जोड़े पर एक्स-मूल्य है पर वापस आ गया है, कुछ निश्चित परिस्थितियों जहां त्वरण माना जा सकता है देखते हैं क्योंकि। उदाहरण के लिए, मेरी परिकल्पना यह है कि लोग वास्तविक बैठने (मेरे उपरोक्त ब्रेकडाउन में चरण 1-3) को तेजी से त्वरण पर वापस करते समय तुलना करते हैं। आम तौर पर, ज्यादातर लोग धीमे पड़ते हैं क्योंकि वे नहीं देख सकते कि उनके पीछे क्या है। उपयोगकर्ता की दिशा निर्धारित करने के लिए इसका उपयोग अतिरिक्त शर्त के रूप में भी किया जा सकता है। यह संभवतः सभी मामलों के लिए सच नहीं है, इसलिए, आपका डेटा खनन आवश्यक है। क्योंकि मैं यह भी अनुमान लगा सकता हूं कि अगर किसी ने कई situps किया है, तो अंतिम साइटअप बहुत धीमा है और फिर वे थकावट के कारण बस स्थिति में वापस गिर जाते हैं। इस मामले में त्वरण मेरी प्रारंभिक परिकल्पना के विपरीत होगा।

अन्त में, मोशन सेंसर की जाँच: http://developer.android.com/guide/topics/sensors/sensors_motion.html

सभी सब में, यह वास्तव में अपने खुद के "guestimation" के साथ संयुक्त एक संख्या खेल है। लेकिन आप आश्चर्यचकित हो सकते हैं कि यह कितना अच्छा काम करता है। शायद (उम्मीद है) आपके उद्देश्यों के लिए पर्याप्त है।

शुभकामनाएं!

1

यह शोध का विषय है और शायद मैं इसे यहां पोस्ट करने में बहुत देर हो चुकी हूं, लेकिन मैं साहित्य को फिर भी तैयार कर रहा हूं, तो क्या?

इस मुद्दे पर सभी प्रकार के मशीन लर्निंग दृष्टिकोण निर्धारित किए गए हैं, मैं कुछ तरीकों का उल्लेख करूंगा। एंडी एनजी का MOOC on machine learning आपको क्षेत्र में और मैटलैब/ऑक्टेव में प्रवेश बिंदु देता है जिसे आप तत्काल अभ्यास कर सकते हैं, यह राक्षसों को भी नष्ट कर देता है ("सपोर्ट वेक्टर मशीन" ... wtf?)।

मैं यह जानना चाहता हूं कि कोई फोन त्वरण और शायद कोण से नशे में है, इसलिए मैं इस मुद्दे के लिए न्यूरोनल नेटवर्क के साथ छेड़छाड़ कर रहा हूं (यदि आप हार्डवेयर को बर्दाश्त कर सकते हैं तो वे every issue के लिए अच्छे हैं) मैं देखने के लिए पूर्व परिभाषित पैटर्न मानना ​​नहीं चाहता।

आपका काम से संपर्क किया जा सकता है पैटर्न आधारित ऐसा लगता है, एक दृष्टिकोण golf play motions, dancing, व्यवहार every day walking patterns, और दो बार drunk driving detection वर्गीकृत करने के लिए लागू किया जाता है, जहां one पतों क्या वास्तव में अनुदैर्ध्य गति के रूप में हर करने का विरोध किया है के लिए एक आधार रेखा को खोजने का मुद्दा दूसरी दिशा, जो शायद आपको आवश्यक बेसलाइनों को खोजने में योगदान दे सकती है, जैसे जमीन का स्तर क्या है।

यह कुछ और के नीचे पहलुओं और दृष्टिकोणों का घने झाड़ू है। Orwellian overkill, दोस्तों में आपका स्वागत है।

लिम ई.ए. 2009: Real-time End Point Detection Specialized for Acceleration Signal

वह & यिन 2009: Activity Recognition from acceleration data Based on Discrete Consine Transform and SVM

अजीब शीर्षक, बहुत ही तकनीकी और स्विस: धोबले e.a. 2012: Online Spatio-Temporal Pattern Recognition with Evolving Spiking Neural Networks utilising Address Event Representation, Rank Order, and Temporal Spike Learning

ए, यूनानी सुखवादी, कलात्मक और हास्यास्पद एक, शायद, मादकता का पता लगाने के लिए एक अच्छा दृष्टिकोण दे रही है अगर यह नृत्य की तरह के रूप में देखा जा सकता है:

Panagiotakis ईए: Temporal segmentation and seamless stitching of motion patterns for synthesizing novel animations of periodic dances

यह एक दृश्य डेटा का उपयोग करता है, लेकिन एक neuronal नेटवर्क वर्गीकारक की एक matlab कार्यान्वयन से अवगत:

Symeonidis 2000: Hand Gesture Recognition Using Neural Networks

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