IP Library › Granted Patent US 12,436,602
Granted Patent B2
US 12,436,602 · App. 18/409,807 · Granted Oct 7, 2025

Hand tracking device, system, and method

Inventors: Chien-Min Wu (Taoyuan, TW); Min Chia Wei (Taoyuan, TW)
Assignee: HTC Corporation
G06F3/011G06T7/20G06T13/40G06T15/00G06T2207/30196
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,436,602
App. No.
18/409,807
Granted
Oct 7, 2025
Kind
B2
Abstract

This disclosure provides a hand tracking device. The hand tracking device includes a storage circuit and a processor. The storage circuit stores a program code. The processor is coupled to the storage circuit and accesses the program code. The processor is configured to obtain a hand motion curve of a hand during a period of time. The processor is configured to obtain an object motion curve of an object during the period of time. The processor is configured to determine whether the hand is holding the object based on the hand motion curve and the object motion curve.

Claims (72)

1. A hand tracking device, comprising:

a storage circuit, storing a program code; and

a processor, coupled to the storage circuit and accessing the program code to execute:

receiving sensor data from a sensor, wherein the sensor is placed close to an object;

obtaining a hand motion curve of a hand during a period of time;

determining whether the object is moving away from the sensor based on the sensor data;

obtaining an object motion curve of the object during the period of time; and

in response to the object being moving away from the sensor, determining whether the hand is holding the object based on the hand motion curve and the object motion curve.

2. The hand tracking device according to claim 1 , wherein the processor is further configured to access the program code to execute:

determining a similarity between the hand motion curve and the object motion curve; and

determining whether the hand is holding the object based on the similarity.

3. The hand tracking device according to claim 2 , wherein the processor is further configured to access the program code to execute:

in response to the similarity being higher than a predetermined threshold value, determining that the hand is holding the object.

4. The hand tracking device according to claim 2 , wherein the processor is further configured to access the program code to execute:

in response to the similarity not being higher than a predetermined threshold value, determining that the hand is not holding the object.

5. The hand tracking device according to claim 1 , wherein the processor is further configured to access the program code to execute:

obtaining an additional hand motion curve of an additional hand during the period of time;

determining whether the hand or the additional hand is holding the object based on the hand motion curve, the additional hand motion curve, and the object motion curve.

6. The hand tracking device according to claim 1 , wherein the processor is further configured to access the program code to execute:

receiving image data from a camera;

determining the hand motion curve based on the image data;

receiving tracker data from a tracker, wherein the tracker is adapted to be placed on the object; and

determining the object motion curve based on the tracker data.

7. The hand tracking device according to claim 1 , wherein the processor is further configured to access the program code to execute:

displaying a virtual hand and a virtual object in a virtual world;

moving the virtual hand based on the hand motion curve; and

moving the virtual object based on the object motion curve.

8. The hand tracking device according to claim 1 , wherein the processor is further configured to access the program code to execute:

pairing a tracker to the object, wherein the tracker is adapted to be placed on the object;

in response to the tracker being paired to the object, generating pairing information, wherein the pairing information comprises an object type of the object; and

determining the object type of the object based on the pairing information.

9. The hand tracking device according to claim 1 , wherein the processor is further configured to access the program code to execute:

obtaining a user motion curve of a user during the period of time;

obtaining an additional object motion curve of an additional object during the period of time, wherein the additional object is placed on the user; and

in response to the user being walking, the user motion curve being similar as the additional object motion curve, and the user motion curve being not similar as the object motion curve,

determining the object is held by the hand and the additional object is not held by the hand.

10. The hand tracking device according to claim 1 , wherein the processor is further configured to access the program code to execute:

in response to the hand being holding the object being determined, providing a hint message to a user.

11. The hand tracking device according to claim 1 , wherein the processor is further configured to access the program code to execute:

in response to the hand being in a field of view of a camera, performing a hand tracking of the hand based on the hand motion curve; and

in response to the hand not being in the field of view of the camera, performing the hand tracking of the hand based on the object motion curve.

12. The hand tracking device according to claim 1 , wherein the processor is further configured to access the program code to execute:

in response to the hand being close to the object, determining whether the hand is holding the object based on the hand motion curve and the object motion curve.

13. The hand tracking device according to claim 1 , wherein the processor is further configured to access the program code to execute:

in response to the hand not being close to the object, determining the hand is not holding the object.

14. The hand tracking device according to claim 1 , wherein the processor is further configured to access the program code to execute:

displaying a virtual hand and a virtual object in a virtual world; and

in response to the hand being holding the object being determined, displaying the virtual hand being holding the virtual object in the virtual world.

15. A hand tracking system, comprising:

a camera, configured to provide image data;

a tracker, configured to provide tracker data, wherein the tracker is adapted to be placed on an object;

a storage circuit, storing a program code; and

a processor, coupled to the storage circuit and accessing the program code to execute:

receiving sensor data from a sensor, wherein the sensor is placed close to an object;

receiving the image data from the camera;

determining a hand motion curve of a hand during a period of time based on the image data;

determining whether the object is moving away from the sensor based on the sensor data;

obtaining an object motion curve of the object during the period of time; and

in response to the object being moving away from the sensor, determining whether the hand is holding the object based on the hand motion curve and the object motion curve.

16. The hand tracking system according to claim 15 , wherein the processor is further configured to access the program code to execute:

determining a similarity between the hand motion curve and the object motion curve; and

determining whether the hand is holding the object based on the similarity.

17. The hand tracking system according to claim 16 , wherein the processor is further configured to access the program code to execute:

in response to the similarity being higher than a predetermined threshold value, determining that the hand is holding the object.

18. The hand tracking system according to claim 16 , wherein the processor is further configured to access the program code to execute:

in response to the similarity not being higher than a predetermined threshold value, determining that the hand is not holding the object.

19. A hand tracking method, comprising:

receiving sensor data from a sensor, wherein the sensor is placed close to an object;

obtaining a hand motion curve of a hand during a period of time;

determining whether the object is moving away from the sensor based on the sensor data;

obtaining an object motion curve of the object during the period of time; and

in response to the object being moving away from the sensor, determining whether the hand is holding the object based on the hand motion curve and the object motion curve.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 15, 2024
From: WU, CHIEN-MIN; WEI, MIN CHIA
To: HTC CORPORATION
Reel/Frame 066122/0373 →
Continuity (2)
Provisional Application 63523649 · Jun 28, 2023
Related Publication 20250004541A1 · Jan 2, 2025
References Cited (8)
US 9870056B1 · Yao · 2018 [cited by applicant]
US 10656721B2 · Song et al. · 2020 [cited by applicant]
US 20170235372A1 · Song et al. · 2017 [cited by applicant]
US 20180285636A1 · Fei · 2018 [cited by examiner]
US 20200097071A1 · Johnston · 2020 [cited by examiner]
US 20210055793A1 · Lin · 2021 [cited by applicant]
“Office Action of Taiwan Counterpart Application”, issued on Sep. 30, 2024, p. 1-p. 5. [cited by applicant]
“Search Report of Europe Counterpart Application”, issued on Oct. 24, 2024, p. 1-p. 5. [cited by applicant]