{"id":17436181,"url":"https://github.com/808vita/fingerpose-ext","last_synced_at":"2026-04-30T00:32:05.453Z","repository":{"id":199052144,"uuid":"702052422","full_name":"808vita/fingerpose-ext","owner":"808vita","description":"Tensorflowjs handpose gesture recognition - This package provides utility function to create \"landmark\" array from keypoints \u0026 keypoints3D arrays; for the latest model of handpose.","archived":false,"fork":false,"pushed_at":"2023-10-08T12:02:06.000Z","size":4,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-04T04:17:23.519Z","etag":null,"topics":["ai","gesture-recognition","hand-pose-estimation","hand-pose-recognition","handpose","javascript","tensorflow","tensorflowjs"],"latest_commit_sha":null,"homepage":"https://www.npmjs.com/package/fingerpose-ext","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/808vita.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-10-08T11:03:41.000Z","updated_at":"2023-12-28T11:17:22.000Z","dependencies_parsed_at":null,"dependency_job_id":"4f790e04-59e6-4ee6-88cb-7b92098906cc","html_url":"https://github.com/808vita/fingerpose-ext","commit_stats":null,"previous_names":["808vita/fingerpose-ext"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/808vita%2Ffingerpose-ext","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/808vita%2Ffingerpose-ext/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/808vita%2Ffingerpose-ext/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/808vita%2Ffingerpose-ext/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/808vita","download_url":"https://codeload.github.com/808vita/fingerpose-ext/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245950528,"owners_count":20699087,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","gesture-recognition","hand-pose-estimation","hand-pose-recognition","handpose","javascript","tensorflow","tensorflowjs"],"created_at":"2024-10-17T10:06:03.938Z","updated_at":"2026-04-30T00:32:05.357Z","avatar_url":"https://github.com/808vita.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# fingerpose-ext\n\nThis package provides utility function to create \"landmark\" array from keypoints \u0026 keypoints3D arrays.\n\nfingerpose \u0026 fingerpose-gestures npm packages both requires \"landmarks\" array to detect the gestures.\nThe newer improved version of hand pose \"@tensorflow-models/hand-pose-detection\": \"^2.0.1\" returns \"keypoints\" and \"keypoints3D\" instead of \"landmarks\".\n\n## Installation\n\nInstall the module via NPM:\n\n```sh\nnpm i fingerpose-ext\n```\n\nInstall the module via yarn:\n\n```sh\nyarn add fingerpose-ext\n```\n\n## Usage\n\n### Include \"handpose\" (newer version), \"tfjsWasm\",\"fingerpose\",etc. and this library\n\n```js\nimport * as fp from \"fingerpose\";\nimport createLandmarks from \"fingerpose-ext\";\n```\n\n### Use \"handpose\" to estimate the landmarks\n\n```js\nconst model = handPoseDetection.SupportedModels.MediaPipeHands;\nconst detectorConfig = {\n  runtime: \"mediapipe\", // or 'tfjs',\n  solutionPath: \"https://cdn.jsdelivr.net/npm/@mediapipe/hands\",\n  modelType: \"full\",\n};\nconst detector = await handPoseDetection.createDetector(model, detectorConfig);\n\nconst hands = await detector.estimateHands(image);\n```\n\n### Example output\n\n```json\n[\n  {\n    score: 0.8,\n    handedness: ‘Right’,\n    keypoints: [\n      {x: 105, y: 107, name: \"wrist\"},\n      {x: 108, y: 160, name: \"pinky_finger_tip\"},\n      ...\n    ],\n    keypoints3D: [\n      {x: 0.00388, y: -0.0205, z: 0.0217, name: \"wrist\"},\n      {x: -0.025138, y: -0.0255, z: -0.0051, name: \"pinky_finger_tip\"},\n      ...\n    ]\n  }\n]\n```\n\n### Estimate the gestures\n\n```js\nlet landmarks = createLandmarks(hands[0]);\nconst estimatedGestures = GE.estimate(landmarks, 8.5);\n```\n\nThe result is an object containing possible gestures and their confidence, for example:\n\n```json\n{\n    \"poseData\": [ ... ],\n    \"gestures\": [\n        { \"name\": \"thumbs_up\", \"confidence\": 9.25 },\n        { ... }\n    ]\n}\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F808vita%2Ffingerpose-ext","html_url":"https://awesome.ecosyste.ms/projects/github.com%2F808vita%2Ffingerpose-ext","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2F808vita%2Ffingerpose-ext/lists"}