Somatosensory game method based on throwing action

By using only acceleration data for throwing motion-sensing games, this method solves the problem of high hardware requirements in traditional motion-sensing games, achieving low-cost, low-power, realistic experience, and motion-sensing games suitable for mobile devices.

CN116251343BActive Publication Date: 2026-05-12SHENZHEN HULE TECHNOLOGY CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
SHENZHEN HULE TECHNOLOGY CO LTD
Filing Date
2023-02-28
Publication Date
2026-05-12

AI Technical Summary

Technical Problem

Traditional motion-sensing games require multiple sensors to acquire complex acceleration and gyroscope data, resulting in high hardware requirements and high computational resource consumption, thus raising the barrier to entry for players.

Method used

It adopts a motion-sensing game method based on throwing motion, obtains the throwing direction and initial velocity only through acceleration data, selects motion trajectories from a preset database, and controls the movement of game objects.

Benefits of technology

It reduces hardware requirements and power consumption, provides a more realistic user experience, increases game playability, is suitable for mobile devices, and simplifies development costs and difficulty.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116251343B_ABST
    Figure CN116251343B_ABST
Patent Text Reader

Abstract

The application discloses a somatosensory game method and device based on a throwing action, equipment and a computer readable storage medium. The somatosensory game method based on the throwing action comprises the following steps: obtaining acceleration data from a bound somatosensory device when a somatosensory game is started; obtaining a throwing direction and a throwing initial speed according to the acceleration data; screening a motion track matched with the throwing initial speed and the throwing direction from a preset database as a throwing track; and controlling a throwing object in the somatosensory game to move along the throwing track according to the throwing track. The somatosensory game method based on the throwing action has the advantages of lower hardware requirement, lower power consumption, simpler operation, more real game experience and better suitability for mobile terminals.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of motion-sensing game technology, and in particular to a motion-sensing game method, apparatus, device, and computer-readable storage medium based on throwing motions. Background Technology

[0002] Traditional motion-sensing games typically require multiple sensors to acquire the player's motion data, including accelerometers and gyroscopes. Accelerometers primarily measure the player's linear acceleration, while gyroscopes measure angular velocity and angular displacement.

[0003] When using accelerometer and gyroscope data for motion detection, complex data processing and analysis are usually required to accurately determine the player's movement state. For example, some action games require precise motion tracking of the player's arms, legs, and other body parts to accurately recreate the player's movements in the game.

[0004] However, due to the complexity of acquiring, processing, and analyzing acceleration and gyroscope data, traditional motion-sensing game methods often require a large amount of computing resources and time. This results in high hardware requirements for motion-sensing devices and terminals, thereby raising the barrier for players to experience motion-sensing games. Summary of the Invention

[0005] This application provides a motion-sensing game method based on throwing motions, which reduces the hardware requirements for motion-sensing games.

[0006] To achieve the above objectives, embodiments of this application provide a motion-sensing game method based on throwing actions, including:

[0007] When a motion-sensing game is launched, acceleration data is obtained from the paired motion-sensing device;

[0008] The throwing direction and initial velocity are obtained based on the acceleration data.

[0009] The motion trajectory that matches the initial velocity and direction of the throw is selected from the preset database and used as the throwing trajectory.

[0010] The motion-sensing game controls the movement of the thrown object along the throwing trajectory based on the throwing trajectory.

[0011] In one embodiment, obtaining the throwing direction based on the acceleration data includes:

[0012] The acceleration data is subjected to noise reduction and filtering.

[0013] The processed triaxial acceleration data are merged into a three-dimensional acceleration vector, and the three-dimensional acceleration vector is then normalized.

[0014] The throwing direction is obtained from the normalized three-dimensional acceleration vector.

[0015] In one embodiment, obtaining the initial velocity of the throw based on the acceleration data includes:

[0016] The throwing time interval is determined based on the acceleration data after noise reduction and smoothing.

[0017] The initial velocity of the throw is calculated based on the acceleration data during the throwing time interval.

[0018] In one embodiment, calculating the initial velocity based on acceleration data within the throwing time interval includes:

[0019] Calculate the rate of change of acceleration over the throwing time interval;

[0020] The two moments when the rate of change of acceleration reaches its maximum value are taken as the target moments;

[0021] The initial velocity of the throw is calculated based on the acceleration data at the two target moments.

[0022] In one embodiment, the rate of change of acceleration is calculated based on the second-order difference, the expression of which is as follows:

[0023]

[0024] in, Let a represent the rate of change of acceleration at time i. i Let a represent the acceleration value at time i. i+1 Let a represent the acceleration value at time i+1. i-1 Δt represents the acceleration value at time i-1, and Δt represents the sampling time interval.

[0025] In one embodiment, the rate of change of acceleration is calculated based on acceleration data along the acceleration axis in the forward and backward directions.

[0026] In one embodiment, the method further includes:

[0027] The game result is generated based on the throwing trajectory.

[0028] To achieve the above objectives, this application also proposes a motion-sensing game device based on throwing motions, comprising:

[0029] The acquisition module is used to acquire acceleration data from the bound motion-sensing device when the motion-sensing game is launched;

[0030] The calculation module is used to obtain the throwing direction and initial throwing velocity based on the acceleration data;

[0031] The filtering module is used to select motion trajectories that match the initial velocity and direction of the throw from a preset database as the throwing trajectory.

[0032] A throwing module is used to control the throwing object in the motion-sensing game to move along the throwing trajectory according to the throwing trajectory.

[0033] To achieve the above objectives, this application also proposes a motion-sensing game device based on throwing motions, including a memory, a processor, and a motion-sensing game program based on throwing motions stored in the memory and executable on the processor. When the processor executes the motion-sensing game program based on throwing motions, it implements the motion-sensing game method based on throwing motions as described in any of the above claims.

[0034] To achieve the above objectives, embodiments of this application also propose a computer-readable storage medium storing a motion-sensing game program based on throwing actions, wherein the motion-sensing game program based on throwing actions, when executed by a processor, implements the motion-sensing game method based on throwing actions as described in any of the preceding claims.

[0035] The motion-sensing game method of this application can realize motion-sensing throwing games using only acceleration data. Compared with traditional motion-sensing game methods that require the simultaneous use of acceleration and angular velocity data for action judgment, the motion-sensing game method of this application has the following advantages:

[0036] 1. Simpler hardware requirements: Since this method only relies on acceleration data, it is simpler than traditional methods and does not require the use of other sensors such as gyroscopes, thus reducing hardware costs and complexity.

[0037] 2. Reduced power consumption: Traditional motion-sensing games need to acquire multiple data simultaneously, which generates high power consumption. However, the method in this application only needs to acquire acceleration data, resulting in relatively low power consumption.

[0038] 3. More realistic user experience: This method can more accurately simulate the user's throwing action and control the throwing object in the game according to the force and direction of the throw, which increases the game's playability and user experience.

[0039] 4. Easier to implement: Compared with the traditional method of using multiple sensors for data acquisition and processing, this method is simpler and clearer to implement, which can reduce development costs and development difficulty.

[0040] 5. More suitable for mobile devices: This method does not require a large amount of sensor data processing, and can better adapt to the resource constraints and performance requirements of mobile devices.

[0041] In summary, the motion-sensing game method of this application has advantages over traditional motion-sensing game methods, including lower hardware requirements, lower power consumption, simpler operation, more realistic gaming experience, and greater suitability for mobile terminals. Attached Figure Description

[0042] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on the structures shown in these drawings without creative effort.

[0043] Figure 1 This is a modular structure diagram of an embodiment of the motion-sensing game device based on throwing motions according to the present invention;

[0044] Figure 2 This is a flowchart illustrating an embodiment of the motion-sensing game method based on throwing motions according to the present invention.

[0045] Figure 3 This is a block diagram of a module structure of an embodiment of the motion-sensing game device based on throwing motion of the present invention.

[0046] The realization of the objective, functional features and advantages of the present invention will be further explained in conjunction with the embodiments and with reference to the accompanying drawings. Detailed Implementation

[0047] It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention.

[0048] To better understand the above technical solutions, exemplary embodiments of this disclosure will be described in more detail below with reference to the accompanying drawings. While exemplary embodiments of this disclosure are shown in the drawings, it should be understood that this disclosure can be implemented in various forms and should not be limited to the embodiments set forth herein. Rather, these embodiments are provided so that this disclosure will be thorough and complete, and will fully convey the scope of this disclosure to those skilled in the art.

[0049] It should be noted that any reference signs placed between parentheses in the claims should not be construed as limiting the claims. The word "comprising" does not exclude the presence of components or steps not listed in the claims. The quantifier "a" or "an" preceding a component does not exclude the presence of a plurality of such components. The invention can be implemented by means of hardware comprising several different components and by means of a suitably programmed computer. In a unit claim enumerating several means, several of these means may be embodied by the same item of hardware. The use of "first," "second," and "third," etc., does not indicate any order and can be interpreted as names.

[0050] like Figure 1 As shown, Figure 1 This is a schematic diagram of the hardware operating environment server 1 (also called a motion-sensing game device based on throwing action) involved in the embodiment of the present invention.

[0051] The server in this embodiment of the invention includes devices with display functions such as "Internet of Things devices", smart air conditioners, smart lights, smart power supplies with network connectivity, AR / VR devices with network connectivity, smart speakers, autonomous vehicles, PCs, smartphones, tablets, e-book readers, and portable computers.

[0052] like Figure 1 As shown, the server 1 includes: a memory 11, a processor 12, and a network interface 13.

[0053] The memory 11 includes at least one type of readable storage medium, such as flash memory, hard disk, multimedia card, card-type memory (e.g., SD or DX memory), magnetic memory, magnetic disk, optical disk, etc. In some embodiments, the memory 11 can be an internal storage unit of the server 1, such as the hard disk of the server 1. In other embodiments, the memory 11 can also be an external storage device of the server 1, such as a plug-in hard disk, smart media card (SMC), secure digital (SD) card, flash card, etc., equipped on the server 1.

[0054] Furthermore, the memory 11 may include both internal storage units of the server 1 and external storage devices. The memory 11 can be used not only to store application software and various types of data installed on the server 1, such as the code of the motion-sensing game program 10 based on throwing actions, but also to temporarily store data that has been output or will be output.

[0055] In some embodiments, processor 12 may be a central processing unit (CPU), controller, microcontroller, microprocessor or other data processing chip, used to run program code stored in memory 11 or process data, such as executing motion-sensing game program 10 based on throwing motions.

[0056] The network interface 13 may optionally include a standard wired interface or a wireless interface (such as a Wi-Fi interface), which is typically used to establish communication connections between the server 1 and other electronic devices.

[0057] The network can be the Internet, a cloud network, a Wi-Fi network, a Personal Area Network (PAN), a Local Area Network (LAN), and / or a Metropolitan Area Network (MAN). Various devices in the network environment can be configured to connect to the communication network according to various wired and wireless communication protocols. Examples of such wired and wireless communication protocols may include, but are not limited to, at least one of the following: Transmission Control Protocol and Internet Protocol (TCP / IP), User Datagram Protocol (UDP), Hypertext Transfer Protocol (HTTP), File Transfer Protocol (FTP), ZigBee, EDGE, IEEE 802.11, Li-Fi, 802.16, IEEE 802.11s, IEEE 802.11g, multi-hop communication, wireless access points (APs), device-to-device communication, cellular communication protocols, and / or Bluetooth communication protocols, or combinations thereof.

[0058] Optionally, the server may also include a user interface, which may include a display, an input unit such as a keyboard, and optionally, a standard wired interface or a wireless interface. Optionally, in some embodiments, the display may be an LED display, a liquid crystal display, a touch-sensitive liquid crystal display, or an OLED (Organic Light-Emitting Diode) touchscreen, etc. The display may also be referred to as a screen or display unit, used to display information processed in server 1 and to display a visual user interface.

[0059] Figure 1 Only a server 1 with components 11-13 and a motion-sensing game program 10 based on throwing actions is shown. Those skilled in the art will understand that... Figure 1 The structure shown does not constitute a limitation on server 1 and may include fewer or more components than shown, or combine certain components, or have different component arrangements.

[0060] In this embodiment, the processor 12 can be used to call the motion-sensing game program based on throwing actions stored in the memory 11 and perform the following operations:

[0061] When a motion-sensing game is launched, acceleration data is obtained from the paired motion-sensing device;

[0062] The throwing direction and initial velocity are obtained based on the acceleration data.

[0063] The motion trajectory that matches the initial velocity and direction of the throw is selected from the preset database and used as the throwing trajectory.

[0064] The motion-sensing game controls the movement of the thrown object along the throwing trajectory based on the throwing trajectory.

[0065] In one embodiment, the processor 12 can be used to invoke a motion-sensing game program based on throwing motions stored in the memory 11, and perform the following operations:

[0066] The throwing direction is obtained based on the acceleration data, including:

[0067] The acceleration data is subjected to noise reduction and filtering.

[0068] The processed triaxial acceleration data are merged into a three-dimensional acceleration vector, and the three-dimensional acceleration vector is then normalized.

[0069] The throwing direction is obtained from the normalized three-dimensional acceleration vector.

[0070] In one embodiment, the processor 12 can be used to invoke a motion-sensing game program based on throwing motions stored in the memory 11, and perform the following operations:

[0071] The initial velocity of the throw is obtained based on the acceleration data, including:

[0072] The throwing time interval is determined based on the acceleration data after noise reduction and smoothing.

[0073] The initial velocity of the throw is calculated based on the acceleration data during the throwing time interval.

[0074] In one embodiment, the processor 12 can be used to invoke a motion-sensing game program based on throwing motions stored in the memory 11, and perform the following operations:

[0075] The initial velocity of the throw is calculated based on the acceleration data within the throwing time interval, including:

[0076] Calculate the rate of change of acceleration over the throwing time interval;

[0077] The two moments when the rate of change of acceleration reaches its maximum value are taken as the target moments;

[0078] The initial velocity of the throw is calculated based on the acceleration data at the two target moments.

[0079] In one embodiment, the processor 12 can be used to invoke a motion-sensing game program based on throwing motions stored in the memory 11, and perform the following operations:

[0080] The rate of change of acceleration is calculated using the second-order difference. The expression for the second-order difference is as follows:

[0081]

[0082] in, Let a represent the rate of change of acceleration at time i. i Let a represent the acceleration value at time i. i+1 Let a represent the acceleration value at time i+1. i-1 Δt represents the acceleration value at time i-1, and Δt represents the sampling time interval.

[0083] In one embodiment, the processor 12 can be used to invoke a motion-sensing game program based on throwing motions stored in the memory 11, and perform the following operations:

[0084] The rate of change of acceleration is calculated based on the acceleration data along the acceleration axis in the forward and backward directions.

[0085] In one embodiment, the processor 12 can be used to invoke a motion-sensing game program based on throwing motions stored in the memory 11, and perform the following operations:

[0086] The method further includes:

[0087] The game result is generated based on the throwing trajectory.

[0088] Based on the aforementioned hardware architecture of a motion-sensing game device based on throwing motions, an embodiment of the motion-sensing game method based on throwing motions of the present invention is proposed. The motion-sensing game method based on throwing motions of the present invention aims to reduce the hardware requirements for motion-sensing games.

[0089] Reference Figure 2 , Figure 2 This is an embodiment of the motion-sensing game method based on throwing motion of the present invention, which includes the following steps:

[0090] S10. When a motion-sensing game is launched, acceleration data is obtained from the bound motion-sensing device.

[0091] This particular motion-sensing game is related to throwing actions, requiring players to use motion-sensing devices to perform throwing motions to engage in the game. Through this game, players can control their characters to swing weapons, rackets, and other objects to perform corresponding attacks and hits. This allows players to experience the fun of throwing games more realistically.

[0092] For example, darts is a classic motion-sensing game associated with the action of throwing.

[0093] It's worth noting that this motion-sensing game can be a local application, or it can be an HTML5-based app or web application. Specifically, the motion-sensing game runs on a terminal, which can be a desktop computer, laptop, game console, portable game console, smartphone, tablet, smartwatch, smart TV, etc.

[0094] Motion-sensing devices are devices that can detect a player's motion data. Typically, motion-sensing devices are configured to include a six-axis IMU sensor, which includes a three-axis accelerometer and a three-axis gyroscope. The six-axis IMU sensor detects the player's motion data by detecting changes in the player's three-axis acceleration and three-axis angular velocity.

[0095] In the technical solution of this application, the acceleration data obtained by the terminal from the motion-sensing device is triaxial acceleration data directly collected by the accelerometer (also known as a gravity sensor). This triaxial acceleration data includes x-axis acceleration data, y-axis acceleration data, and z-axis acceleration data. The x-axis is the acceleration axis in the forward / backward direction, the z-axis is the vertical acceleration axis, and the y-axis is the acceleration axis in the left / right direction. Thus, even if the motion-sensing device only has a gravity sensor, it can still input throwing commands through motion sensing.

[0096] Alternatively, the motion-sensing device can be configured as a wearable device, and its form may include, but is not limited to, the following: wristband, watch, game controller, smartphone, etc.

[0097] Furthermore, before playing the game, the motion-sensing device needs to establish a communication connection with the terminal (i.e., be bound to the terminal). This connection can be wired or wireless. For example, when the motion-sensing device establishes a wired connection with the terminal, it can be based on at least one of the following protocols: USB 2.0, USB 3.0, Thunderbolt 3, and Thunderbolt 4. When the motion-sensing device establishes a wireless connection with the terminal, it can be based on at least one of the following protocols: Bluetooth, WiFi, infrared, 2.4G, and NFC.

[0098] S20. Obtain the throwing direction and initial throwing velocity based on the acceleration data.

[0099] Specifically, the system first determines whether the player has completed a valid throwing motion based on acceleration data. For example, it can determine whether the player has completed a valid throwing motion based on characteristics such as acceleration value, acceleration change curve, and acceleration change rate.

[0100] After determining that the player has completed a valid throwing motion, the throwing direction and initial velocity can be calculated based on acceleration data. Initial velocity refers to the magnitude and direction of the velocity of the thrown object at the start of the throwing motion. In motion-sensing games, the initial velocity of the thrown object can be calculated by acquiring the acceleration data generated by the player's throwing motion. The magnitude and direction of the initial velocity have a significant impact on the trajectory and landing point of the thrown object; therefore, in motion-sensing games, accurately calculating and controlling the initial velocity can enhance the realism and challenge of the game.

[0101] In some embodiments, obtaining the throwing direction based on the acceleration data includes:

[0102] S21. The acceleration data is subjected to noise reduction and filtering.

[0103] Specifically, since the acceleration data collected by motion sensing devices may contain some noise or interference signals, the data needs to be filtered and denoised to improve its accuracy and stability. Digital filters, smoothing filters, and other methods can typically be used to process the data. For example, low-pass filters can be used to remove high-frequency noise, median filters to remove sudden interference, or Kalman filters can be used to filter the acceleration data.

[0104] S22. The processed triaxial acceleration data are merged into a three-dimensional acceleration vector, and the three-dimensional acceleration vector is normalized.

[0105] Specifically, the acceleration vector is a three-dimensional vector calculated from acceleration data, which includes acceleration components in the horizontal and vertical directions as well as the component of gravitational acceleration. The magnitude and direction of the acceleration vector determine the movement direction and speed of the motion-sensing device, and thus the movement path of the game object.

[0106] For example, triaxial acceleration data can be processed in the following ways:

[0107] 1. Calculate the X-axis component of the acceleration vector: Project the acceleration data along the X-axis into a three-dimensional coordinate system, i.e., X = Ax / g, where Ax represents the component of the acceleration data in the X-axis direction, and g is the gravitational acceleration.

[0108] 2. Calculate the Y-axis component of the acceleration vector: Project the acceleration data along the Y-axis into the three-dimensional coordinate system, i.e., Y = Ay / g, where Ay represents the component of the acceleration data in the Y-axis direction.

[0109] 3. Calculate the Z-axis component of the acceleration vector: Project the acceleration data along the Z-axis into the three-dimensional coordinate system, i.e., Z = Az / g-1, where Az represents the component of the acceleration data in the Z-axis direction. Subtracting 1 is to remove the influence of gravitational acceleration.

[0110] 4. The three components obtained form the acceleration vector, namely A = (X, Y, Z).

[0111] 5. Normalize the acceleration vector:

[0112] 5.1 Calculate the magnitude of the acceleration vector: that is, the magnitude of A, i.e., |A| = sqrt(X^2 + Y^2 + Z^2).

[0113] 5.2 Calculate the normalized acceleration vector: that is, divide each component by the magnitude of the vector to obtain A'=(X / |A|,Y / |A|,Z / |A|).

[0114] S23. Obtain the throwing direction based on the normalized three-dimensional acceleration vector.

[0115] Specifically, the desired throwing direction can be obtained from the normalized three-dimensional acceleration vector.

[0116] Understandably, the normalized acceleration vector can better reflect the direction and speed of movement of the motion sensing device, making it easier to determine the motion path of the thrown object.

[0117] In some embodiments, obtaining the initial velocity of the throw based on the acceleration data includes:

[0118] S24. Determine the throwing time interval based on the acceleration data after noise reduction and smoothing.

[0119] The throwing time interval refers to a time period determined from acceleration data used to calculate the initial velocity. Within this interval, changes in acceleration data are related to the throwing motion. By processing the acceleration data within this time period, the initial velocity and direction of the throw can be determined. Generally, the throwing time interval should include both the start and end points of the throwing motion to ensure that the calculated initial velocity accurately reflects the actual throwing situation.

[0120] Specifically, the throwing time interval can be determined by the following steps:

[0121] 1. Detect the rate of change of acceleration value, find the point at which the acceleration value begins to change significantly, and use this as the starting point of the throwing time interval, or use the moment when the acceleration value is greater than a set threshold as the starting point of the throwing time interval.

[0122] 2. Based on the starting point of the time, search backward for a preset duration as the end point of the throwing time interval, or, take the point when the acceleration value returns to rest as the end point of the throwing time interval.

[0123] S25. Calculate the initial velocity of the throw based on the acceleration data of the throwing time interval.

[0124] Specifically, the initial velocity can be calculated using an integral method, which involves integrating the acceleration data over time to obtain a velocity curve, from which the initial velocity value can be extracted. Other methods, such as linear fitting, can also be used.

[0125] In some embodiments, calculating the initial velocity of the throw based on acceleration data within the throwing time interval includes:

[0126] S251. Calculate the rate of change of acceleration during the throwing time interval.

[0127] In some embodiments, the rate of change of acceleration is calculated based on the second-order difference, the expression for which is as follows:

[0128]

[0129] in, Let a represent the rate of change of acceleration at time i. i Let a represent the acceleration value at time i. i+1 Let a represent the acceleration value at time i+1. i-1 Δt represents the acceleration value at time i-1, and Δt represents the sampling time interval.

[0130] It is worth noting that the time interval Δt is introduced in the calculation of the rate of change of acceleration because acceleration is a physical quantity that represents the rate of change of velocity, and its unit is meters per second squared, representing the amount of velocity change per second. Therefore, the value of acceleration, in addition to representing the rate of change of velocity, also needs to take into account the factor of time.

[0131] Introducing a time interval Δt allows the unit of acceleration to be converted to meters per second squared divided by seconds squared, i.e., meters per second squared. This unit represents the amount of velocity change per second squared, providing a more intuitive reflection of the rate of change of acceleration. By dividing by the square of the time interval, the unit of the rate of change of acceleration can be converted into a time-independent physical quantity, facilitating subsequent processing and comparison.

[0132] Furthermore, since the collected acceleration data is typically sampled at fixed time intervals, the time interval Δt is also used to represent the sampling time interval, i.e., the time interval between two adjacent acceleration data points. When calculating the rate of change of acceleration, the time interval Δt needs to be substituted into the calculation to ensure that the calculation result matches the sampling time interval.

[0133] Of course, the design is not limited to this. In other embodiments, the rate of change of acceleration can also be calculated by first-order difference, multi-order difference, etc.

[0134] S252. Obtain the two moments when the rate of change of acceleration reaches its maximum value as the target moments.

[0135] Specifically, by iterating through and comparing the calculated rates of change of acceleration, the maximum rate of change of acceleration can be obtained. Based on the time index, the two moments when the rate of change of acceleration reaches its maximum value can be obtained as the target moments.

[0136] It is worth noting that since the rate of change of acceleration is the difference between the acceleration data at two moments, there should be two moments when the rate of change of acceleration reaches its maximum value, which should be recorded as the target moments.

[0137] S253. Calculate the initial velocity of the throw based on the acceleration data at the two target moments.

[0138] Specifically, by integrating the acceleration data corresponding to the two moments, the moving speed of the motion sensing device at those two moments can be obtained, which can then be used as the initial velocity of the thrown object.

[0139] It's understandable that the maximum rate of change of acceleration corresponds to the maximum acceleration of the throwing motion. Therefore, calculating the initial velocity using the acceleration data at this moment more accurately reflects the motion state and initial velocity during the throw, avoiding potential errors and interference at other times. Furthermore, calculating the initial velocity using acceleration data at the moment of maximum rate of change requires only simple processing and calculation of the acceleration data, without complex integration and simulation, making it simpler and more efficient.

[0140] In conclusion, using acceleration data at the point of maximum rate of change of acceleration to calculate the initial velocity of a throw is a simple, accurate, stable, and practical method that can meet the needs of most motion-sensing games and has a certain degree of versatility and scalability.

[0141] In some embodiments, the rate of change of acceleration is calculated based on acceleration data along the acceleration axis in the forward and backward directions.

[0142] Specifically, the acceleration in the forward and backward directions is the acceleration data along the x-axis.

[0143] It's understandable that choosing the acceleration axis in the forward / backward direction is beneficial because it's strongly correlated with the throwing direction. Acceleration data from this axis more reliably reflects the force and direction of the throw, leading to a more accurate calculation of the initial velocity. Furthermore, the acceleration axis in the forward / backward direction is generally stable, as the body adjusts and controls itself relative to this direction during a throw. Therefore, choosing this axis reduces interference and fluctuations from other factors. Additionally, the acceleration axis in the forward / backward direction is typically simple and intuitive, making the algorithm for calculating the rate of change of acceleration simpler and easier to implement.

[0144] In summary, calculating the rate of change of acceleration by selecting acceleration data from the acceleration axis in the forward and backward directions is a simple, reliable, and stable method that can meet the needs of most motion-sensing games and has a certain degree of versatility and scalability.

[0145] S30. Select the motion trajectory that matches the initial velocity and direction of the throw from the preset database as the throwing trajectory.

[0146] The process of selecting a motion trajectory from a preset database that matches the initial velocity and direction of the throw can be achieved by following these steps:

[0147] 1. Each trajectory in the pre-defined database should have corresponding motion parameters, such as initial velocity, direction, and time. First, the initial velocity and direction of the throw need to be converted into the corresponding motion parameters.

[0148] 2. Traverse each trajectory in the preset database and calculate the matching degree between each trajectory and the initial throwing velocity and throwing direction. The matching degree can be measured by calculating the angle, distance, or similarity between the two. Generally, the higher the matching degree, the more likely the trajectory is to match the initial throwing velocity and throwing direction.

[0149] 3. Sort all motion trajectories according to their matching degree, and select the trajectory with the highest matching degree as the preferred trajectory. It's worth noting that if the preferred trajectory deviates significantly from the actual throwing situation, the second-highest matching degree trajectory can be selected for throwing simulation until the trajectory most similar to the actual throwing situation is found.

[0150] 4. Apply the selected motion trajectory to the motion-sensing game and control the thrown object to move along that trajectory.

[0151] It is understandable that by matching the initial velocity and direction of the throw with the motion trajectory in the preset database, the computational burden on the terminal can be reduced, and the throwing trajectory of the object can be obtained more quickly.

[0152] S40. Control the throwing object in the motion-sensing game to move along the throwing trajectory according to the throwing trajectory.

[0153] Specifically, controlling the thrown object in the motion-sensing game to move along the throwing trajectory can be achieved through the following steps:

[0154] 1. When the game starts, create a throwable object in the game and set its initial position, initial velocity, mass, and other parameters. The throwable object should be able to simulate motion based on the given velocity and position information.

[0155] 2. Divide the selected trajectory into several short time intervals and calculate the speed and direction of the thrown object along the trajectory within each short time interval. The trajectory can generally be discretized using methods such as numerical integration.

[0156] 3. Apply the speed and direction of the thrown object's movement along the trajectory within each short time period to the game, and control the thrown object to move along the preset trajectory.

[0157] 4. When the thrown object reaches the end of the trajectory, perform the corresponding actions according to the game settings, such as scoring or triggering the next round of the game.

[0158] In some embodiments, the game method of this application further includes: generating a game result based on the throwing trajectory.

[0159] Specifically, game results refer to the achievements or rewards players receive after completing a motion-sensing game. Game results are typically evaluated based on game rules and player performance, which can include game time, score, level, rewards, unlocking new game levels, etc.

[0160] Specifically, after each throw, the trajectory of the thrown object is used to determine if it meets the conditions defined in the game rules. If the conditions are met, a score is calculated and displayed on the game interface. If the conditions are not met, appropriate actions are taken according to the game rules, such as re-throwing or deducting lives.

[0161] Furthermore, according to the game's settings, scores can be calculated and displayed in real-time during the throwing process. This can be achieved by adding a score statistics function to the game interface.

[0162] It is understood that the motion-sensing game method of this application can realize motion-sensing throwing games based solely on acceleration data. Compared with traditional motion-sensing game methods that require the simultaneous use of acceleration and angular velocity data for action judgment, the motion-sensing game method of this application has the following advantages:

[0163] 1. Simpler hardware requirements: Since this method only relies on acceleration data, it is simpler than traditional methods and does not require the use of other sensors such as gyroscopes, thus reducing hardware costs and complexity.

[0164] 2. Reduced power consumption: Traditional motion-sensing games need to acquire multiple data simultaneously, which generates high power consumption. However, the method in this application only needs to acquire acceleration data, resulting in relatively low power consumption.

[0165] 3. More realistic user experience: This method can more accurately simulate the user's throwing action and control the throwing object in the game according to the force and direction of the throw, which increases the game's playability and user experience.

[0166] 4. Easier to implement: Compared with the traditional method of using multiple sensors for data acquisition and processing, this method is simpler and clearer to implement, which can reduce development costs and development difficulty.

[0167] 5. More suitable for mobile devices: This method does not require a large amount of sensor data processing, and can better adapt to the resource constraints and performance requirements of mobile devices.

[0168] In summary, the motion-sensing game method of this application has advantages over traditional motion-sensing game methods, including lower hardware requirements, lower power consumption, simpler operation, more realistic gaming experience, and greater suitability for mobile terminals.

[0169] In addition, refer to Figure 3 The present invention also proposes a motion-sensing game device based on throwing motions, the motion-sensing game device based on throwing motions comprising:

[0170] The acquisition module 110 is used to acquire acceleration data from the bound motion-sensing device when the motion-sensing game is launched;

[0171] Calculation module 120 is used to obtain the throwing direction and initial throwing velocity based on the acceleration data;

[0172] The filtering module 130 is used to filter out motion trajectories that match the initial velocity and direction of the throw from a preset database as the throwing trajectory.

[0173] The throwing module 140 is used to control the throwing object in the motion-sensing game to move along the throwing trajectory according to the throwing trajectory.

[0174] The steps for implementing each functional module of the motion-sensing game device based on throwing motions can be referred to in the various embodiments of the motion-sensing game method based on throwing motions of the present invention, and will not be repeated here.

[0175] Furthermore, this invention also proposes a computer-readable storage medium, which can be any one or any combination of several of the following: hard disk, multimedia card, SD card, flash memory card, SMC, read-only memory (ROM), erasable programmable read-only memory (EPROM), portable compact disc read-only memory (CD-ROM), USB memory, etc. The computer-readable storage medium includes a motion-sensing game program 10 based on throwing actions. The specific implementation of the computer-readable storage medium of this invention is largely the same as the specific implementation of the motion-sensing game method based on throwing actions and the server 1 described above, and will not be repeated here.

[0176] Those skilled in the art will understand that embodiments of the present invention can be provided as methods, systems, or computer program products. Therefore, the present invention can take the form of a completely hardware embodiment, a completely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present invention can take the form of a computer program product embodied on one or more computer-usable storage media (including, but not limited to, disk storage, CD-ROM, optical storage, etc.) containing computer-usable program code.

[0177] This invention is described with reference to flowchart illustrations and / or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the invention. It will be understood that each block of the flowchart illustrations and / or block diagrams, and combinations of blocks in the flowchart illustrations and / or block diagrams, can be implemented by computer program instructions. These computer program instructions can be provided to a processor of a general-purpose computer, special-purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, generate instructions for implementing the flowchart illustrations and / or block diagrams. Figure 1 One or more processes and / or boxes Figure 1 A device that provides the functions specified in one or more boxes.

[0178] These computer program instructions may also be stored in a computer-readable storage medium that can direct a computer or other programmable data processing device to function in a particular manner, such that the instructions stored in the computer-readable storage medium produce an article of manufacture including instruction means, which are implemented in a process Figure 1 One or more processes and / or boxes Figure 1 The function specified in one or more boxes.

[0179] These computer program instructions may also be loaded onto a computer or other programmable data processing equipment to cause a series of operational steps to be performed on the computer or other programmable equipment to produce a computer-implemented process, thereby providing instructions that execute on the computer or other programmable equipment for implementing the process. Figure 1One or more processes and / or boxes Figure 1 The steps of the function specified in one or more boxes.

[0180] Although preferred embodiments of the invention have been described, those skilled in the art, upon learning the basic inventive concept, can make other changes and modifications to these embodiments. Therefore, the appended claims are intended to be interpreted as including both the preferred embodiments and all changes and modifications falling within the scope of the invention.

[0181] Obviously, those skilled in the art can make various modifications and variations to this invention without departing from its spirit and scope. Therefore, if these modifications and variations fall within the scope of the claims of this invention and their equivalents, this invention also intends to include these modifications and variations.

Claims

1. A motion-sensing game method based on throwing motions, characterized in that, include: When a motion-sensing game is launched, acceleration data is obtained from the paired motion-sensing device; The throwing direction and initial velocity are obtained based on the acceleration data. The motion trajectory that matches the initial velocity and direction of the throw is selected from the preset database and used as the throwing trajectory. The motion-sensing game controls the throwing object to move along the throwing trajectory according to the throwing trajectory; The process of obtaining the throwing direction based on the acceleration data includes: The acceleration data is subjected to noise reduction and filtering. The processed triaxial acceleration data are merged into a three-dimensional acceleration vector, and the three-dimensional acceleration vector is then normalized. The throwing direction is obtained from the normalized three-dimensional acceleration vector; The initial velocity of the throw is obtained based on the acceleration data, including: The throwing time interval is determined based on the acceleration data after noise reduction and smoothing. Calculate the rate of change of acceleration over the throwing time interval. The two moments when the rate of change of acceleration reaches its maximum value are taken as the target moments; The initial velocity of the throw is calculated based on the acceleration data at the two target moments; The rate of change of acceleration is calculated using the second-order difference. The expression for the second-order difference is as follows: ; in, Represents the rate of change of acceleration at time i. This represents the acceleration value at time i. This represents the acceleration value at time i+1. This represents the acceleration value at time i-1. Indicates the sampling time interval.

2. The motion-sensing game method based on throwing motions as described in claim 1, characterized in that, The rate of change of acceleration is calculated based on the acceleration data along the acceleration axis in the forward and backward directions.

3. The motion-sensing game method based on throwing motions as described in claim 1, characterized in that, The method further includes: The game result is generated based on the throwing trajectory.

4. A motion-sensing game device based on throwing motions, characterized in that, For implementing the motion-sensing game method as described in any one of claims 1 to 3, the motion-sensing game device comprises: The acquisition module is used to acquire acceleration data from the bound motion-sensing device when the motion-sensing game is launched; The calculation module is used to obtain the throwing direction and initial throwing velocity based on the acceleration data; The filtering module is used to select motion trajectories that match the initial velocity and direction of the throw from a preset database as the throwing trajectory. A throwing module is used to control the throwing object in the motion-sensing game to move along the throwing trajectory according to the throwing trajectory.

5. A motion-sensing game device based on throwing motions, characterized in that, The system includes a memory, a processor, and a motion-sensing game program based on throwing motions stored in the memory and executable on the processor. When the processor executes the motion-sensing game program based on throwing motions, it implements the motion-sensing game method based on throwing motions as described in any one of claims 1-3.

6. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a motion-sensing game program based on throwing motions, which, when executed by a processor, implements the motion-sensing game method based on throwing motions as described in any one of claims 1-3.