suchen
HeimWeb-Frontendjs-TutorialSkelettverfolgung mit JavaScript und The Leap Motion

Skelettverfolgung mit JavaScript und The Leap Motion

Wenn es um die Verwendung von JavaScript mit Technologie der nächsten Generation geht, ist die Leap -Bewegung eines meiner Lieblingsgeräte, mit denen ich arbeiten kann. Mit der Leap -Bewegung ist JavaScript kein Nachdenken. Es ist kein Drittanbietermodul, das von Enthusiasten miteinander gehackt wurde - es wird mit jeder neuen API -Veröffentlichung mit Sorgfalt und Überlegung durch das Leap -Bewegungsteam entwickelt. Die neueste Veröffentlichung von V2.1, derzeit in Beta, ist verdammt aufregend. In diesem Artikel gebe ich einen Überblick über die neuen Funktionen, die JavaScript -Entwicklern zur Verfügung stehen.

Key Takeaways

  • Die Leap -Motion -API v2.1, derzeit in Beta, bietet JavaScript -Entwicklern neue Funktionen für die Skelettverfolgung, einschließlich zusätzlicher Hand- und Fingerdaten.
  • Die API enthält "Hand.Confidence", das einen Wert liefert, um anzuzeigen, wie sicher das Leap -Bewegungsgerät der Daten ist. Es enthält auch 'Hand.type', um festzustellen, ob es sich um eine linke oder rechte Hand handelt, "Hand.pinchstrength", um zu messen, wie nahe der Daumen und der Finger und die Hand sind und "Hand.GrabStrength" darstellen, um darzustellen, ob die Hand geöffnet oder geschlossen ist.
  • Die Leap -Motion -API enthält detaillierte Fingerdaten, einschließlich der Art eines jeden Fingers und der Frage, ob sie erweitert ist oder nicht. Es liefert auch Daten zu den vier Fingerknochen in jedem Finger, die vom Handgelenk bis zur Spitze jedes Fingers bestellt werden.
  • Während die V2 -Leap -Bewegung -API auch VR -Headsets wie die Oculus VR unterstützt und Zugriff auf die tatsächlichen Bilddaten aus der Leap -Bewegung bietet. Diese Funktionen sind in der JavaScript -API noch nicht verfügbar.

Verfolgen Sie diese Hände mit größerem Vertrauen

Die API liefert zusätzliche Daten für jede Gesamthand. Handdaten sind in Frame.Hands genauso verfügbar wie in der vorherigen API. In den Updates erhalten wir jedoch eine wunderbare Sammlung neuer Daten, die Leap Motion Devs das Leben erleichtern.

Handvertrauen

Eine meiner Lieblingseinschlüsse in der neuen API ist die Fähigkeit zu wissen, wie sicher die Leap -Bewegung der Daten ist. Hand.Confidence bietet einen Wert von 0 bis 1, mit dem Sie wissen können, wie sicher es ist, wie es sieht, wie es dem Modell einer Hand entspricht, die sie versteht. Niedrige Werte könnten bedeuten, dass es sich nicht sicher ist, dass die Handdaten im Gesamthandwerk sichergestellt werden, oder es ist sicher, dass sich die Finger-/Knochenpositionen nicht sicher sind. Auf diese Weise können Sie überprüfen, wie sicher die Leap -Bewegung ist, bevor Sie eine Aktion ergreifen. Ich würde gerne sehen, dass dies zu viel reibungsloseren Interaktionen führt und hoffentlich die Benutzer dazu ermutigen, in ihren Gesten sehr klar zu sein.

Handtyp

Hand.typ funktioniert heraus, ob die Leap -Bewegung glaubt, dass sie eine linke oder eine rechte Hand sieht. Wenn Ihre Hand in einer Faust ist, wird sie mit dieser Unterscheidung ein wenig kämpfen.

Pinchstärke

Hand.PinchStrength ist eine wundervolle neue Eigenschaft, die einen Wert von 0 bis 1 gibt, der darstellt, wie nahe der Daumen und der Finger für einander sind. Dies könnte einige interessante Möglichkeiten für Gesten und die Kontrolle von Apps als Prise eröffnen, die eine schöne und natürliche menschliche Geste ist.

Kraft Grab Stärke

Hand.GrabStrength gibt einen Wert von 0 bis 1 zurück, genau wie die Prise -Festigkeit, aber es stellt fest, ob Ihre Hand flach geöffnet oder in eine Faust geschlossen ist. Die Möglichkeiten hier sind genauso aufregend - lassen Sie Ihre Benutzer einen virtuellen Stressball drücken oder etwas über einen virtuellen Raum werfen.

Neue Fingerdaten

In den neuen Skelett -API -Änderungen hat jede Hand immer fünf Finger und Sie können für jeden Finger eine ganz neue Datenmenge erhalten. Die Leap -Bewegung kann sehen.

Finger Typ

Sie können lesen, in welcher Art von Finger jedes Datenbit mit Finger.typ darstellt. Dieses Objekt ist ein Wert von Null bis vier:

  • 0 ist ein Daumen
  • 1 ist ein Indexfinger
  • 2 ist ein Mittelfinger
  • 3 ist ein Ringfinger
  • 4 ist ein kleiner Finger

Jedes Mal, wenn Leap Motion in Hand -Daten liest, liest es es mit allen fünf Fingern.

Finger erweitert

Wenn einige Finger nicht über die LEAP -Bewegung hinweisen, zeichnet das Gerät sie nicht mit Finger.utheddended = false.

als nicht erweitert.

gemäß dem Namen „Skelett“ erhalten wir Daten auf den Knochen

Ich bin mit der Knochenstruktur der Hand nicht gut vertraut, also hatte ich die Chance, hier etwas Neues zu lernen. Mein Arzt wäre stolz auf mein erweitertes Wissen. Wir hoffen, dass der Metacarpus eines Tages gelegentlich in Gespräche gerät.

Die LEAP -Bewegung liefert Daten zu den vier Fingerknochen in jedem Finger, die vom Handgelenk bis zur Spitze jedes Fingers bestellt wurden: Metacarpal, proximale Phalangen, Zwischenphalangen und distale Phalangen. Das macht für den größten Teil der Gesellschaft keinen Sinn. Hier ist ein schönes Diagramm, das ich in Wikipedia Commons gefunden habe:

Skelettverfolgung mit JavaScript und The Leap Motion

Fingerknochendetails

Es geht mit jedem Knochen detaillierter ein (ich habe diese vom Handgelenk bis zur Spitze des Fingers angeordnet):
  • Finger.Carpposition - Die X-, Y- und Z -Position der Basis des Metacarpalknochens.
  • finger.mcpposition - die Position des Fingerknöchels - die Stelle zwischen dem metakarpalen und dem proximalen Phalanxknochen.
  • finger.pipposition - Die Position des Flecks zwischen der proximalen und den Zwischenphalangen.
  • Finger.DIPPOSION - Die Position der Basis des distalen Knochens, wo es mit dem Zwischenphalanx verbunden ist.

Es hat auch Objekte für jeden Fingerknochen mit mehr Details - Finger.Metacarpal, Finger.proximal, Finger.Intermediate und Finger.Distal. Jede davon wird in der Leap -Motion -API als Knochen mit den folgenden Details dargestellt:
  • bone.typ - Ein Wert von 0 bis 4, der den Knochentyp darstellt:

  • 0 - Metacarpal

  • 1 - proximaler Phalanx
  • 2 - Zwischenphalanx
  • 3 - distaler Phalanx
  • 4 - Unterarm

  • bone.base - liefert ein zweidimensionales Array, das den Vektor des Knochens darstellt. Sie können ziemlich verrückte Mathe machen, um bestimmte Fingerpositionen zu erkennen. Ich muss in eine Mathematikpraxis passen, bevor ich versuche, diese Werte zu verwenden, aber es ist brillant, dass das Potenzial da ist!

  • bone.prevjoint und bone
  • bone.länge - Die Länge dieses Knochens in Millimetern.
  • bone.width - Leap Motion beschreibt dies in ihren Dokumenten als „die durchschnittliche Breite des fleischigen Teils, der diesen Knochen umgibt“.
  • bone
  • bone.center - Der Mittelpunkt des Knochens
  • Knochen.Direktion - Der Richtungsvektor, dass sich der Knochen in
  • befindet
  • im Grunde ist das genau dort eine gute Datenmenge.

diese Daten in einer Demo mit vielen Zahlen

Ich habe eine kurze Demo zusammengetan, um zu zeigen, wie viel Koordinaten durch diese API streamen. Die folgende Demo zeigt die Koordinaten für jeden der Finger. Es ist nur ein kleiner Teil der verfügbaren Daten!

Die Demo sieht ein bisschen so aus:

Skelettverfolgung mit JavaScript und The Leap Motion Sie können es hier in Aktion mit Ihrer Sprungbewegung ausprobieren.

Es wird noch mehr kommen!

Die V2 Leap Motion -API hat mehr als nur diese Funktionen. Sie unterstützt auch VR -Headsets wie die Oculus VR und bietet auch Zugriff auf die tatsächlichen Bilddaten aus der Leap -Bewegung. Leider sind diese Funktionen in der JavaScript -API noch nicht verfügbar, aber hoffentlich sehen wir sie kurz bevor die API Beta verlässt!

Andere Ressourcen

Wenn Sie nach weiteren Details zum Einstieg mit diesen APIs suchen, ist der beste Ort der LEAP Motion Developer -Site:

  • JavaScript SDK -Dokumentation
  • Eine Galerie von Leap Motion JavaScript -Demos, schauen Sie sich den Quellcode für einen guten Einblick an!

häufig gestellte Fragen zur Skelettverfolgung mit JavaScript und Leap Motion

Wie funktioniert Leap Motion mit JavaScript für die Skelettverfolgung? Es arbeitet mit JavaScript über die Leapjs -Bibliothek, die eine einfache und intuitive API für den Zugriff auf die Leap -Bewegungsdaten bietet. Auf diese Weise können Entwickler interaktive Anwendungen erstellen, die Handbewegungen verfolgen und reagieren können. Die Leapjs -Bibliothek bietet Methoden zur Verfolgung der Position, Geschwindigkeit und Ausrichtung der Hände, Finger und Werkzeuge sowie zum Erkennen von Gesten wie Swipes, Kreisen und Häken. Verwenden Sie Leap Motion mit JavaScript?

Um Leap Motion mit JavaScript zu verwenden X 10.7 oder höher oder Linux. Sie benötigen auch die Leap -Motion -Software, die die LEAPJS -Bibliothek enthält. Die Software kann von der Leap Motion -Website heruntergeladen werden. Darüber hinaus benötigen Sie einen Webbrowser, der WebGL unterstützt, z. B. Chrome, Firefox oder Safari. Richten Sie Leap Motion zur Verwendung mit JavaScript ein, laden Sie zuerst die Leap -Motion -Software von der Leap -Motion -Website herunter und installieren Sie ihn zuerst. Schließen Sie dann den Leap -Motion -Controller mit einem USB -Kabel an Ihren Computer an. Die Leap -Motion -Software erkennt automatisch den Controller und beginnt mit der Verfolgung. Um Leap Motion mit JavaScript zu verwenden, geben Sie die LeapJS -Bibliothek in Ihre HTML -Datei mit einem Skript -Tag ein. Seien Sie verwendet, um eine breite Palette von Anwendungen zu entwickeln, von Spielen und virtuellen Realitätserfahrungen bis hin zu Bildungsinstrumenten und wissenschaftlichen Visualisierungen. Die Möglichkeit, Handbewegungen im 3D -Raum zu verfolgen, eröffnet die Benutzerinteraktion neue Möglichkeiten und ermöglicht es Benutzern, Anwendungen auf natürlichere und intuitivere Weise zu steuern. 🎜>

LEAP Motion bietet eine hoch genaue Skelettverfolgung mit einer Präzision von bis zu 0,01 mm. Es kann die Position und Orientierung jedes Fingers und der Handfläche verfolgen und Gesten wie Swipes, Kreise und Wasserhähne erkennen. Die LEAPJS -Bibliothek bietet eine einfache und intuitive API für den Zugriff auf diese Daten und erleichtert die Einbeziehung von JavaScript -Anwendungen.

Kann ich neben JavaScript mit anderen Programmiersprachen Leap Motion verwenden? Dies macht es zu einem vielseitigen Werkzeug für Entwickler, sodass sie die Sprache auswählen können, die ihren Bedürfnissen und Fähigkeiten am besten entspricht. JavaScript bietet ein leistungsstarkes Tool für die Entwicklung interaktiver Anwendungen. Es gibt einige Einschränkungen, die sich bewusst sind. Der Leap -Motion -Controller benötigt eine klare Sichtlinie für die Hände und kann durch helles Licht oder reflektierende Oberflächen beeinflusst werden. Während die LEAPJS -Bibliothek eine einfache und intuitive API bietet, bietet sie möglicherweise nicht die gleiche Kontrolle und Flexibilität wie die SDKs für andere Sprachen. 🎜>

Wenn Sie Probleme mit Leap Motion und JavaScript haben, können Sie mehrere Schritte unternehmen. Stellen Sie zunächst sicher, dass der Leap -Motion -Controller verbunden ist und die Leap -Motion -Software ausgeführt wird. Wenn der Controller nicht erkannt wird, versuchen Sie es, ihn auszuziehen und wieder einzuschalten. Wenn Sie Probleme mit der LeapJS -Bibliothek haben, stellen Sie sicher, dass Sie einen kompatiblen Webbrowser verwenden und die JavaScript -Konsole auf Fehler überprüfen.

Kann ich Leap Motion mit JavaScript auf mobilen Geräten verwenden? Der Leap Motion Controller benötigt eine USB -Verbindung, die auf mobilen Geräten normalerweise nicht verfügbar ist. Leap Motion entwickelt und verbessert jedoch ihre Technologie kontinuierlich. Dies kann sich in Zukunft ändern. Ressourcen online verfügbar für das Erlernen, wie Sie Leap Motion mit JavaScript verwenden. Die Leap Motion -Website bietet eine Fülle von Informationen, einschließlich eines Entwicklerhandbuchs, einer API -Dokumentation und eines Community -Forums. Darüber hinaus gibt es auf Websites wie Github und Stapelüberlauf zahlreiche Tutorials und Beispiele zur Verfügung.

Das obige ist der detaillierte Inhalt vonSkelettverfolgung mit JavaScript und The Leap Motion. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Node.js Streams mit TypeScriptNode.js Streams mit TypeScriptApr 30, 2025 am 08:22 AM

Node.js zeichnet sich bei effizienten E/A aus, vor allem bei Streams. Streams verarbeiten Daten inkrementell und vermeiden Speicherüberladung-ideal für große Dateien, Netzwerkaufgaben und Echtzeitanwendungen. Die Kombination von Streams mit der TypeScript -Sicherheit erzeugt eine POWE

Python vs. JavaScript: Leistung und EffizienzüberlegungenPython vs. JavaScript: Leistung und EffizienzüberlegungenApr 30, 2025 am 12:08 AM

Die Unterschiede in der Leistung und der Effizienz zwischen Python und JavaScript spiegeln sich hauptsächlich in: 1 wider: 1) Als interpretierter Sprache läuft Python langsam, weist jedoch eine hohe Entwicklungseffizienz auf und ist für eine schnelle Prototypentwicklung geeignet. 2) JavaScript ist auf einen einzelnen Thread im Browser beschränkt, aber Multi-Threading- und Asynchronen-E/A können verwendet werden, um die Leistung in Node.js zu verbessern, und beide haben Vorteile in tatsächlichen Projekten.

Die Ursprünge von JavaScript: Erforschung seiner ImplementierungsspracheDie Ursprünge von JavaScript: Erforschung seiner ImplementierungsspracheApr 29, 2025 am 12:51 AM

JavaScript stammt aus dem Jahr 1995 und wurde von Brandon Ike erstellt und realisierte die Sprache in C. 1.C-Sprache bietet Programmierfunktionen auf hoher Leistung und Systemebene für JavaScript. 2. Die Speicherverwaltung und die Leistungsoptimierung von JavaScript basieren auf C -Sprache. 3. Die plattformübergreifende Funktion der C-Sprache hilft JavaScript, auf verschiedenen Betriebssystemen effizient zu laufen.

Hinter den Kulissen: Welche Sprache macht JavaScript?Hinter den Kulissen: Welche Sprache macht JavaScript?Apr 28, 2025 am 12:01 AM

JavaScript wird in Browsern und Node.js -Umgebungen ausgeführt und stützt sich auf die JavaScript -Engine, um Code zu analysieren und auszuführen. 1) abstrakter Syntaxbaum (AST) in der Parsenstufe erzeugen; 2) AST in die Kompilierungsphase in Bytecode oder Maschinencode umwandeln; 3) Führen Sie den kompilierten Code in der Ausführungsstufe aus.

Die Zukunft von Python und JavaScript: Trends und VorhersagenDie Zukunft von Python und JavaScript: Trends und VorhersagenApr 27, 2025 am 12:21 AM

Zu den zukünftigen Trends von Python und JavaScript gehören: 1. Python wird seine Position in den Bereichen wissenschaftlicher Computer und KI konsolidieren. JavaScript wird die Entwicklung der Web-Technologie fördern. Beide werden die Anwendungsszenarien in ihren jeweiligen Bereichen weiter erweitern und mehr Durchbrüche in der Leistung erzielen.

Python vs. JavaScript: Entwicklungsumgebungen und ToolsPython vs. JavaScript: Entwicklungsumgebungen und ToolsApr 26, 2025 am 12:09 AM

Sowohl Python als auch JavaScripts Entscheidungen in Entwicklungsumgebungen sind wichtig. 1) Die Entwicklungsumgebung von Python umfasst Pycharm, Jupyternotebook und Anaconda, die für Datenwissenschaft und schnelles Prototyping geeignet sind. 2) Die Entwicklungsumgebung von JavaScript umfasst Node.JS, VSCODE und WebPack, die für die Entwicklung von Front-End- und Back-End-Entwicklung geeignet sind. Durch die Auswahl der richtigen Tools nach den Projektbedürfnissen kann die Entwicklung der Entwicklung und die Erfolgsquote der Projekte verbessert werden.

Ist JavaScript in C geschrieben? Prüfung der BeweiseIst JavaScript in C geschrieben? Prüfung der BeweiseApr 25, 2025 am 12:15 AM

Ja, der Motorkern von JavaScript ist in C. 1) Die C -Sprache bietet eine effiziente Leistung und die zugrunde liegende Steuerung, die für die Entwicklung der JavaScript -Engine geeignet ist. 2) Die V8-Engine als Beispiel wird sein Kern in C geschrieben, wobei die Effizienz und objektorientierte Eigenschaften von C kombiniert werden.

JavaScripts Rolle: das Web interaktiv und dynamisch machenJavaScripts Rolle: das Web interaktiv und dynamisch machenApr 24, 2025 am 12:12 AM

JavaScript ist das Herzstück moderner Websites, da es die Interaktivität und Dynamik von Webseiten verbessert. 1) Es ermöglicht die Änderung von Inhalten, ohne die Seite zu aktualisieren, 2) Webseiten durch DOMAPI zu manipulieren, 3) Komplexe interaktive Effekte wie Animation und Drag & Drop, 4) die Leistung und Best Practices optimieren, um die Benutzererfahrung zu verbessern.

See all articles

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

Video Face Swap

Video Face Swap

Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heiße Werkzeuge

SublimeText3 Linux neue Version

SublimeText3 Linux neue Version

SublimeText3 Linux neueste Version

VSCode Windows 64-Bit-Download

VSCode Windows 64-Bit-Download

Ein kostenloser und leistungsstarker IDE-Editor von Microsoft

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

Dreamweaver Mac

Dreamweaver Mac

Visuelle Webentwicklungstools

WebStorm-Mac-Version

WebStorm-Mac-Version

Nützliche JavaScript-Entwicklungstools