Billiard training auxiliary system capable of customizing training ball shape

CN120876598APending Publication Date: 2025-10-31梁栋
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510751060.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-06-06
Publication Date
2025-10-31

Smart Images

  • Figure CN120876598A_ABST
    Figure CN120876598A_ABST
Patent Text Reader

Abstract

The embodiment of the invention discloses a billiard training auxiliary system capable of customizing a training ball shape, and the system comprises a training data module which is used for storing a training knowledge base and a user training database; the image acquisition module is used for acquiring image data including a billiard table in a billiard training process and sending the image data to the data processing module; the data processing module is used for receiving the image data sent by the image acquisition module, analyzing the received image data based on a training knowledge base and a user training database, determining position information and billiard feature information of billiard balls on a billiard table, and determining auxiliary data in the billiard training process, the auxiliary data comprises ball hitting auxiliary data; and the training auxiliary module comprises a display device and is used for displaying the auxiliary data so as to assist the user to perform billiard training based on the auxiliary data. The intelligent billiard training device can assist an athlete in billiard training, and the training efficiency of billiard training of the athlete is improved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the fields of billiards technology and computer vision technology, and in particular to an auxiliary system for billiards training that allows for customizable training ball patterns. Background Technology

[0002] Billiards, as a popular recreational sport and competitive activity, possesses both leisure and entertainment value, while also demanding a high level of professionalism in competitive play. It requires athletes to have a high level of technical skill, necessitating continuous training to improve their billiards abilities. Current technical solutions primarily rely on coaching guidance and self-practice by athletes, but this approach suffers from low training efficiency and difficulty in quantifying training results. Therefore, a billiards training system that can assist athletes in conducting efficient training is needed. Summary of the Invention

[0003] Based on this, this invention proposes an auxiliary system for billiards training with customizable training ball shapes, realizing an intelligent auxiliary system for billiards training based on machine vision, achieving intelligent billiards training, and improving the efficiency of billiards training.

[0004] This invention provides an auxiliary system for billiards training with customizable training ball shapes, comprising:

[0005] The training data module is used to store the training knowledge base and the user training database;

[0006] The image acquisition module includes at least one camera module installed on the billiard table, used to acquire image data including the billiard table during billiard training, and send the acquired image data to the data processing module;

[0007] The data processing module receives image data sent by the image acquisition module, and analyzes the received image data based on the training knowledge base and the user training database to determine the position information and feature information of the billiard balls on the billiard table, and determines auxiliary data in the billiard training process based on the position information of the billiard balls, wherein the auxiliary data includes shot assist data;

[0008] The training assistance module includes a display device for displaying the assistance data to assist the user in billiards training based on the assistance data.

[0009] The data processing module is used to determine the target training ball type, determine the training data corresponding to the target training ball type based on the training knowledge base, and send it to the training assistance module so that the training assistance module can display the training data; wherein, the target training ball type includes one or more of the following: billiard ball type, cueing method type, ball placement rules, and pocketing requirements; the target training ball type is customized by the user;

[0010] The training data is displayed in the training assistance module, and during the user's billiards training, image data is collected by the image acquisition module and sent to the data processing module. The data processing module analyzes the received image data to obtain the user's training data during the billiards training and generates auxiliary data based on the training data.

[0011] The auxiliary data includes one or more of the following: the target ball placement position and shot suggestion during the ball placement phase; one or more of the following during the shot phase: reference shot path, shot point, shot force, shot pocket, shot technique, etc.; and / or, shot result data during the shot completion phase.

[0012] Optionally, during the ball-setting phase, the training assistance module is further configured to display the target ball-setting position and striking suggestions, enabling the user to set the ball according to the target ball-setting position and striking suggestions; the image acquisition module is configured to acquire image data, including the actual ball-setting position, of the user's ball-setting actions; the data processing module is further configured to analyze the image data, including the actual ball-setting position, to obtain the actual ball-setting position; and to compare the actual ball-setting position with the target ball-setting position. If the actual ball-setting position and the target ball-setting position are consistent, a first prompt is generated and sent to the training assistance module for display; if the actual ball-setting position and the target ball-setting position are inconsistent, a second prompt is generated and sent to the training assistance module for display; wherein, the first prompt is used to indicate that the actual ball-setting position is consistent with the target ball-setting position; and the second prompt is used to indicate that the actual ball-setting position and the target ball-setting position are inconsistent.

[0013] Optionally, during the hitting phase, the image acquisition module is further used to acquire image data of the user during the hitting process and send it to the data processing module; the data processing module is further used to analyze the image data of the user during the hitting process to obtain the actual hitting trajectory of the user; and to analyze one or more of the data such as the actual hitting trajectory, hitting point, hitting force, hitting pocket, and hitting club technique in the auxiliary data to determine whether the actual hitting trajectory and the reference hitting trajectory are consistent. If the actual hitting trajectory and the reference hitting trajectory are consistent, a third prompt is generated and sent to the training assistance module for display; if the actual hitting trajectory and the reference hitting trajectory are inconsistent, a fourth prompt is generated and sent to the training assistance module for display; wherein, the third prompt is used to indicate that the actual hitting trajectory and the reference hitting trajectory are consistent, and the fourth prompt is used to indicate that the actual hitting trajectory and the reference hitting trajectory are inconsistent.

[0014] Optionally, during the completion phase of the shot, the shot result data includes the shot score; the data processing module is further configured to calculate the shot score based on the actual shot trajectory and send it to the training assistance module; the training assistance module is further configured to display the shot score.

[0015] Optionally, the training assistance module further includes a microphone device and a speaker device, wherein the microphone device is used to collect voice commands input by the user, and the speaker device is used to display interactive commands with the user; and / or, the speaker device is used to display the assistance data; and / or, the speaker device and the display device are used to display training courses in the training knowledge base, and to display data playback in the user's training database; and / or, the display device is a touch screen display device, and the display device is also used to receive touch commands input by the user.

[0016] Optionally, the target training sphere is determined based on one of the user's voice input, the user's touch input, or the user's training database.

[0017] Optionally, the at least one camera module includes one or more of the following devices: a camera module positioned directly above the center of the billiard table, and a camera module positioned above the side of the billiard table; wherein the angle between the side-mounted camera module and the plane of the billiard table is 45°.

[0018] Optionally, the training data module is further configured to store the training data related to billiards training into the user training database after the billiards training is completed, wherein the training data related to billiards training includes the raw data during the billiards training process and the indicator data corresponding to the training results.

[0019] Optionally, the training assistance module is further configured to receive user information, which is used to determine the user training database corresponding to the user information; wherein, the user information is obtained by capturing the user's head image through the image acquisition module and analyzing the captured head image through the data processing module, or by inputting it through a microphone device or a touch-enabled display module.

[0020] Optionally, the data processing module is further configured to analyze the user's historical hitting data in the user training database to obtain the user's training indicator data during the hitting training process. The training indicator data includes data corresponding to one or more training indicators such as hitting success rate, average hitting speed, and trajectory deviation rate.

[0021] Optionally, the data processing module is further configured to: determine the center coordinate position information of the billiard ball on the billiard table in the image data acquired by the image acquisition module based on the reference template image; use YOLO detection to determine the detection area in the image data and extract the single-channel feature map of each detection area; determine the candidate area of ​​the billiard ball in the image data corresponding to the next frame according to the position information and movement speed of the billiard ball in the image data corresponding to the current frame, and match the position information of the billiard ball in the candidate area to determine the position information of the billiard ball.

[0022] The embodiments of the present invention have the following beneficial effects:

[0023] After adopting the aforementioned billiards training assistance system with customizable training ball patterns, an image acquisition module is installed on the billiard table and is communicatively connected to a training data module, data processing module, and training assistance module in a computer device. Through the cooperation of these modules, intelligent assistance is provided to athletes during billiards training. Specifically, the training data module stores a billiards training knowledge base and a user training database. During billiards training, the image acquisition module collects image data, including that of the billiard table, and the data processing module analyzes this image data to obtain information such as the color, type, and position of the balls on the table, as well as data related to the athlete's shot trajectory. Based on this, auxiliary data to assist the athlete in billiards training is calculated and displayed to the athlete through the training assistance module, allowing the athlete to train based on the displayed auxiliary data and improving the efficiency of their billiards training. Furthermore, during the billiards auxiliary training process, users can customize the target training ball type. The system then determines and displays the training data corresponding to the user-defined target training ball type based on the training knowledge base. The target training ball type includes one or more of the following: billiard ball type, cueing method type, ball placement rules, shot training, and pocketing requirements. This allows users to customize the training type of the training process, enabling more targeted training and improving the training efficiency of billiards athletes. Attached Figure Description

[0024] 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 these drawings without creative effort.

[0025] in:

[0026] Figure 1 This is a schematic diagram of the components of an auxiliary system for billiards training with customizable training ball types, as shown in one embodiment.

[0027] Figure 2 This is a schematic diagram showing the location of the camera module in one embodiment;

[0028] Figure 3 This is a schematic diagram of the structure of a computer device that runs the above-described auxiliary system for billiards training with customizable training ball types, as shown in one embodiment. Detailed Implementation

[0029] In the following description, specific details such as particular system architectures and techniques are set forth for illustrative purposes and not for limitation, in order to provide a thorough understanding of the embodiments of the invention. However, those skilled in the art will understand that the invention can be implemented in other embodiments without these specific details. In other instances, detailed descriptions of well-known systems, apparatuses, circuits, and methods are omitted so as not to obscure the description of the invention with unnecessary detail.

[0030] It should be understood that, when used in this specification and the appended claims, the term "comprising" indicates the presence of the described features, integrals, steps, operations, elements and / or components, but does not exclude the presence or addition of one or more other features, integrals, steps, operations, elements, components and / or collections thereof.

[0031] It should also be understood that the terminology used in this specification is for the purpose of describing particular embodiments only and is not intended to limit the invention. As used in this specification and the appended claims, the singular forms “a,” “one,” and “the” are intended to include the plural forms unless the context clearly indicates otherwise.

[0032] It should also be further understood that the term "and / or" as used in this specification and the appended claims refers to any combination of one or more of the associated listed items and all possible combinations, and includes such combinations.

[0033] As used in this specification and the appended claims, the term "if" may be interpreted, depending on the context, as "when," "once," "in response to determination," or "in response to detection." Similarly, the phrase "if determined" or "if [the described condition or event] is detected" may be interpreted, depending on the context, as "once determined," "in response to determination," "once [the described condition or event] is detected," or "in response to detection of [the described condition or event]."

[0034] The technical solutions of the embodiments of the present invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of the present invention, and not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of the present invention.

[0035] In this embodiment, a billiards training auxiliary system with customizable training ball types is provided, which can assist athletes in conducting intelligent billiards training. It realizes the intelligence of billiards auxiliary training, improves the efficiency of billiards training, and effectively helps athletes improve their basic billiards skills and technical level.

[0036] For details, please see Figure 1 A billiards training auxiliary system 10 with customizable training ball patterns is presented. The system includes a training data module 101, an image acquisition module 102, a data processing module 103, and a training auxiliary module 104, all connected by communication. The training data module 101 stores a training knowledge base and a user training database. The image acquisition module 102 includes at least one camera module mounted on the billiard table, used to acquire image data including the billiard table during training and send the acquired image data to the data processing module. The data processing module 103 receives the image data sent by the image acquisition module and analyzes the received image data based on the training knowledge base and the user training database to determine the position information and feature information of the billiard balls on the table, and to determine auxiliary data during training based on the position information of the billiard balls, including shot-assistance data. The training auxiliary module 104 includes a display device for displaying the auxiliary data to assist the user in billiards training.

[0037] In one specific embodiment, an image acquisition module 102 is disposed above the billiard table, and a training assistance module (display device) is disposed at a certain distance from the side of the billiard table. Furthermore, a microphone and a speaker may also be disposed on the display device. The training data module 101 and the data processing module 103 may be integrated into a computer device on the image acquisition module 102, or into a computer device on the display device, or may be disposed on an external computer device, server, or cloud platform that is communicatively connected to the image acquisition module 102 and the training assistance module 104; no limitation is made here.

[0038] The following sections will describe each module included in the aforementioned billiards training auxiliary system with customizable training ball types.

[0039] The image acquisition module includes one or more camera modules located above the pool table, typically in a position such as directly above or slightly above the side, to comprehensively acquire information about the table surface. Alternatively, the camera modules can be located on the side of the pool table to capture the actions of the player striking the ball. In another embodiment, there may be one or more camera modules positioned above or to the side of the pool table to capture video footage including the pool table and / or the player striking the ball from different angles. For example, as... Figure 2As shown, when there are two camera modules, one is positioned directly above the pool table, and the other is positioned to the side of the pool table. Furthermore, when the camera module is positioned to the side of the pool table, the angle between the camera module and the plane of the pool table can be 45 degrees, but other angles such as 30 degrees, 60 degrees, and 75 degrees can also be used; no limitation is made here.

[0040] The camera module is used to acquire image data, including the user (athlete or other player) striking the ball and / or the billiard ball on the table, during billiards training. This image data can be a video of the striking action or one or more frames of the striking action. In a specific embodiment, the camera module may have a parameter value of 1080P@60Hz.

[0041] After acquiring image data during billiards training, the image acquisition module sends the acquired image data to the data processing module 103. The data processing module 103 further analyzes the image data and calculates auxiliary data for the billiards training process according to requirements, and then sends the auxiliary data to the training assistance module 104 for display to the user. In this embodiment, the data processing module includes two sub-modules: a data processing unit and an intelligent analysis unit. The data processing unit is used to preprocess or extract features from the received raw image data to output the data required by the intelligent analysis unit. For example, it can be data in a preset data format defined in the intelligent analysis unit. The intelligent analysis unit can be one or more models, each model being used to calculate one or more required auxiliary data. Here, the intelligent analysis unit includes models that can be machine learning models, deep network models, digital twin models, or a combination thereof. It can also be a model built based on specific algorithms, such as regression analysis algorithms, clustering analysis algorithms, and object detection algorithms. These models are used to calculate information such as the position of the billiard ball, the ball's motion state during training, and to analyze the shot trajectory and speed in real time. They also statistically analyze various training indicators such as the athlete's shot success rate, average shot speed, and trajectory deviation rate. In a specific embodiment, the intelligent analysis unit calculates the position of the billiard ball for further analysis, such as analyzing the shot trajectory and speed, and statistically analyzing various training indicators such as the athlete's shot success rate, average shot speed, and trajectory deviation rate. It is necessary to improve the accuracy of billiard ball position and corresponding table number recognition during the calculation process to avoid insufficient accuracy in subsequent analysis due to inaccurate billiard ball position recognition and tracking.

[0042] In one specific embodiment, the data processing module is a module linked to the camera module, wherein the GPU server (NVIDIA Tesla T4) deploys the algorithm.

[0043] The training data module 101 stores a training knowledge base and a user training database. The training knowledge base contains fundamental knowledge of billiards training, and the training database is the foundation for intelligent billiards training. It stores a rich variety of training balls, using different ball types as the smallest unit of knowledge, covering all levels from beginner-level balls to advanced competitive skills. Each ball type includes at least the cue ball and one object ball, and may also include multiple object balls or other auxiliary balls. Each ball type stores one or more guidance data points, including but not limited to recommended shot pockets, shot positions, cue techniques, and shot trajectories. The user training database refers to the training data generated by athletes during training, such as course progress, completion status, and scores. It can include all historical training data and corresponding analysis results from the user's current billiards training using the system.

[0044] As mentioned earlier, the training assistance module 104 includes a display device, a microphone device, and a speaker device. It can display training lessons and system-calculated auxiliary data to help the user hit the ball during training.

[0045] Furthermore, the display device can also be a touch-screen display, allowing users to interact with it. Users can also interact via a microphone or speaker. In other words, users can input corresponding commands to the auxiliary system through a touch-screen display or microphone, such as commands to select the current training course or training type, or any other commands to interact with the auxiliary system.

[0046] It should be noted that, in this embodiment, the billiards training auxiliary system with customizable training ball shapes may also include a terminal-side application, such as an APP installed on the user's mobile phone. The user can remotely connect and interact with the system on their mobile phone and view their training data, progress, and other related data.

[0047] The following section explains how the billiards training assistance system, which allows for customizable training ball patterns, performs auxiliary training in different stages of billiards training. Specifically, this includes the system setup stage, the training knowledge base selection stage, the ball placement stage, the shot hitting stage, and the shot completion stage.

[0048] System setup phase

[0049] When billiards training is required, the billiards training assistance system, which allows for customizable training ball patterns, is activated. This system then performs a self-check to ensure all modules are functioning correctly, including verifying camera clarity and data transmission. Simultaneously, the user logs in or registers, entering user information (such as name, age, and billiards skill level) so the system can provide personalized services based on the athlete's specific needs. User information can be entered via a mobile app, a touch-screen display, or by analyzing the user's image captured by the image acquisition module. There are no restrictions; users can choose any method that is convenient for them.

[0050] Furthermore, after obtaining user information, a corresponding user training database can be determined. This database contains historical training data. Once user information is identified, the user's historical training progress can be determined based on this data, allowing the user to directly challenge themselves to the corresponding progress level and continue billiards training. Alternatively, data related to user personalization can be retrieved from the user training database, and personalized services can be provided through this auxiliary system based on this data, improving the user experience and training effectiveness in billiards training.

[0051] Training knowledge base selection phase

[0052] The selection of the training knowledge base refers to determining the target training ball type for training. This target training ball type includes one or more of the following: billiard ball type, cueing technique type, ball placement rules, striking power, and pocketing requirements. Here, the target training ball type is customized by the user. For example, the target training ball type can be determined by the user through a touch display device, a mobile app, or based on the user's historical training data; no limitation is imposed here. In one embodiment, the target training ball type also includes the currently selected training course, such as the training course or training stage currently selected by the user.

[0053] Billiards types include the types of balls, such as eight-ball, snooker, etc.

[0054] The target training ball types not only include the types of balls used in billiards training, but also other types of billiards training, such as types of cueing techniques (high cue, middle cue, low cue, left spin, right spin), which allows users to train more effectively.

[0055] The target training ball type not only includes the types of balls and cueing techniques mentioned above, but also allows users to further customize settings. The target training ball type here also includes the rules for ball placement (users can customize the placement or rules of the target ball, auxiliary ball, and cue ball, such as placing a certain number of target balls in a straight line at equal intervals), the order of hitting the target balls, the target pocket, the hitting power, the number of cushions the target ball needs to hit, etc. In this embodiment, any requirements or situations that can further clarify the user's billiards training can be included in the user-defined scope of the target training ball type.

[0056] Ball placement phase

[0057] Users need to place the billiard balls according to the ball patterns in the training course. First, the training assistance module displays the target ball placement position and shot suggestions, allowing users to place the balls accordingly. In one specific embodiment, the target ball placement position can be determined based on the target training ball pattern, which may include rules for ball placement, allowing users to train specifically. In other embodiments, the target ball placement position can also be determined based on the training course. During the user's ball placement process, at least one camera module in the image acquisition module captures image data of the billiard table in real time, including multiple billiard balls. The data processing module analyzes the image data to determine the actual ball placement position of each billiard ball on the table and compares the actual placement position with the target placement position to determine whether the user has placed the billiard balls in the corresponding positions. If the actual ball placement position and the target ball placement position are consistent, a first prompt is generated and sent to the training assistance module for display. If the actual ball placement position and the target ball placement position are inconsistent, a second prompt is generated and sent to the training assistance module for display. The first prompt indicates that the actual ball placement position is consistent with the target ball placement position; the second prompt indicates that the actual ball placement position and the target ball placement position are inconsistent. When the actual ball placement position and the target ball placement position are inconsistent, the user needs to adjust the ball placement position according to the second prompt. Here, the data processing module can also calculate specific adjustment suggestions for the ball placement position based on the actual ball placement position and the target ball placement position, and output these suggestions to the user through the training assistance module to guide the user in adjusting the ball placement position until the actual ball placement position and the target ball placement position are consistent.

[0058] Striking phase

[0059] After the ball placement is complete, the user can proceed with further shot training. During training, the image acquisition module collects relevant data on the user's shot execution to output auxiliary data to assist the user in shot execution (e.g., shot suggestions). The system also collects and stores relevant data for subsequent shot score calculations and training result calculations. In a specific embodiment, for example, the generation of auxiliary data for shot suggestions can be based on settings related to shot execution and potting, such as shot power and potting requirements for the target training ball type.

[0060] During the striking phase, before each shot, the system calculates striking assistance data based on the positions of the balls on the table and previous shots. This data includes one or more parameters such as reference shot trajectory, shot point, shot power, shot pocket, and cue technique.

[0061] Specifically, during the hitting phase, the image acquisition module collects image data of the user during the hitting process and sends it to the data processing module. The data processing module then analyzes the image data to obtain the actual hitting trajectory. It analyzes the actual hitting trajectory and one or more of the auxiliary data, such as the reference hitting trajectory, hitting point, hitting power, hitting pocket, and cue technique, to determine if the actual hitting trajectory and the reference hitting trajectory are consistent. If they are consistent, a third prompt is generated and sent to the training assistance module for display. If they are inconsistent, a fourth prompt is generated and sent to the training assistance module for display. The third prompt indicates that the actual hitting trajectory and the reference hitting trajectory are consistent, and the fourth prompt indicates that they are inconsistent.

[0062] In other words, after a user completes a shot, the system analyzes the user's actual shot trajectory and then checks if it matches the reference trajectory displayed by the assistance system. If they match, a third notification of a successful shot is generated and displayed to the user. If they do not match, a fourth notification is generated based on the difference between the actual and reference trajectories to alert the user to the discrepancy. Furthermore, in cases where the actual and reference trajectories do not match, the system further analyzes where the differences lie and sends this information to the training assistance module for display to the user. This allows the user to understand the discrepancies and make targeted adjustments and improvements to subsequent shot training.

[0063] Phase of the stroke

[0064] After the shot is completed, the data processing module needs to calculate the score based on the actual shot trajectory and send it to the training assistance module so that the training assistance module can display the score. In other words, after the user completes a shot, the score corresponding to that shot is calculated and displayed on the display device, allowing the user to check their shot score at any time.

[0065] In another specific embodiment, during the completion phase of the shot, the displayed data may include not only the score but also other shot result data, such as the current shot trajectory, the target ball, the target pocket, etc., without limitation here.

[0066] During the user's shot, the image acquisition module and data processing module monitor and analyze the user's shot. For example, they use preset image algorithms or machine learning models to analyze the user's shot, including data such as the shot trajectory, speed, target ball, and pocketing. This data is then compared with auxiliary data calculated by the data processing module to assist the user in billiards training. The results corresponding to the user's billiards training are calculated, and the score of the user's shot is calculated based on the training knowledge base. This comprehensive analysis of the user's training situation generates personalized training suggestions based on the auxiliary system, and determines specific training courses and ball types based on these personalized training suggestions.

[0067] In this embodiment, training progress feedback can be displayed to the user via a display device or a speaker device. The display device can also be a touchscreen, allowing the user to interact with the assistance system. Alternatively, the feedback can be displayed via a mobile app. Users can also interact with the assistance system using voice, graphics, or other interactive methods.

[0068] In this embodiment, after the billiards training is completed, the training data related to the billiards training is stored in the user training database to be stored in the training data module. The training data related to the billiards training includes the raw data during the billiards training process and the indicator data corresponding to the training results.

[0069] Based on the user training data in the user training database, the data processing module is further used to analyze the user's historical hitting data in the user training database to obtain training indicator data of the user during the hitting training process. The training indicator data includes data corresponding to one or more training indicators such as hitting success rate, average hitting speed, and trajectory deviation rate. The training indicator data can be displayed to the user on a mobile app or through a display device.

[0070] In another embodiment, the user can also choose to send the corresponding user training data to a professional coach. The professional coach can also log in to the corresponding auxiliary system to view and analyze the user's training data, and then provide the user with more professional training suggestions based on the analysis results. Alternatively, the professional coach can directly set up the user's training knowledge base, for example, to determine the target training ball type for the user's subsequent training, in order to assist the user in conducting more targeted training.

[0071] Furthermore, in this embodiment, after the user completes a round of training (such as completing a certain number of shots or completing a specific training task), the data processing module will further conduct a comprehensive evaluation of the training data corresponding to that round of training, calculate the training index results corresponding to that round of training, such as the success rate of the shot, the improvement of the average shot power, the degree of optimization of the club trajectory, and the degree of improvement of the shot posture, and then display them to the user on the mobile APP or through a display device.

[0072] After a training session, or after completing one or more training sessions, the assistance system presents the training results, evaluation data, or analysis data to the user in the form of charts, text, etc., through the training assistance module. It also generates new training suggestions to help the user understand their training progress and clarify the next training direction. Here, based on the determined training direction, the user can set the target training sphere themselves. That is, the target training sphere can be generated based on the user's settings, the coach's suggestions, and relevant data from previous training history (the user's training database), making the user's training more targeted.

[0073] As mentioned earlier, the intelligent analysis unit needs to accurately calculate the position of the billiard ball and the billiard table number to ensure that subsequent calculations and analyses based on the position of the billiard ball can accurately assist in the better implementation of the function.

[0074] The steps by which the intelligent analysis unit calculates the position of the billiard ball and the number of the billiard table can be divided into the following steps S1-S4:

[0075] S1: Based on the reference template image, determine the center coordinates of the billiard balls on the billiard table from the image data acquired by the image acquisition module. Specifically, input the image data acquired by the image acquisition module into the reference template image (15-ball triangular stack), segment the billiard table area using the mean shift algorithm and binarize it to locate the center coordinates of each ball. Then, based on the template's geometric rules (such as ball number arrangement), extract the color distribution features of the ball stack, where the feature map size is 48×48.

[0076] S2: Billiard ball color classification initialization. Perform KMeans segmentation on the template image, dividing the image into color clusters for balls x and x+8 (excluding white and black balls). Construct 256... 3 The color space is initialized by mapping each pixel to a predefined category (0-9) using a KDTREE with 11 neighbors through nearest neighbor search (11-neighbor voting). This step is optional.

[0077] S3: Use YOLO detection to determine the detection regions in the image data and extract single-channel feature maps for each detection region. Use YOLO to detect the bounding boxes of billiard balls in real-time video, normalize the detection regions to 48×48 pixels, query KDTREE for each pixel to obtain the category code, generate a single-channel feature map (value range 0-9), and eliminate interference from differences in lighting and billiard ball material.

[0078] S4: Based on the position and velocity of the billiard ball in the current frame's image data, determine the candidate region for the billiard ball in the next frame's image data, and match the billiard ball's position information within the candidate region to determine the billiard ball's position. Specifically, based on the ball's position and velocity in the current frame (using Kalman filtering), predict the candidate region for the next frame (e.g., a circular area with a radius of 20 pixels). Within the predicted candidate region for the next frame, use Normalized Cross-Correlation (NCC) and feature map similarity calculations to match the optimal ball position and update the trajectory coordinates. If the matching confidence falls below a threshold during the calculation process, trigger local re-detection or rely on trajectory interpolation from adjacent frames for completion.

[0079] S5: Trajectory-Classification Fusion Model Calculation. For each tracked bounding box, input it into a pre-trained CNN classifier (input is a 48×48 feature map, output is a probability distribution of ball numbers 0-15). Calculate the historical classification results for each trajectory (c0 to c...). 15 ), calculate the cumulative probability using time decay weights: Among them, w t The time decay coefficient (e.g., w) t =0.9 T-t Prioritize the most recent classification result. If the ball number with the highest probability conflicts with the trajectory direction (e.g., a stationary ball is assigned a high-speed moving ball number), reassign it based on physics rules.

[0080] Through testing the aforementioned billiards position recognition and tracking algorithms under 20 different lighting conditions, the ball number recognition accuracy is >98%, the trajectory tracking loss rate is <0.5%, and the real-time latency is <50ms. In other words, by utilizing these algorithms, a high-precision, robust intelligent billiards recognition system can be constructed, achieving full automation of ball number recognition, trajectory tracking, foul judgment, and data statistics. This system adapts to diverse scenarios, improves real-time performance, and better assists in improving the visual perception of billiards training.

[0081] After adopting the aforementioned billiards training assistance system with customizable training ball patterns, an image acquisition module is installed on the billiard table and is communicatively connected to a training data module, data processing module, and training assistance module in a computer device. Through the cooperation of these modules, intelligent assistance is provided to athletes during billiards training. Specifically, the training data module stores a billiards training knowledge base and a user training database. During billiards training, the image acquisition module collects image data, including that of the billiard table, and the data processing module analyzes this image data to obtain information such as the color, type, and position of the balls on the table, as well as data related to the athlete's shot trajectory. Based on this, auxiliary data to assist the athlete in billiards training is calculated and displayed to the athlete through the training assistance module, allowing the athlete to train based on the displayed auxiliary data and improving the efficiency of their billiards training. Furthermore, during the athlete's billiards auxiliary training, the user can set the target training ball type. The system then determines and displays the training data corresponding to the target training ball type based on the training knowledge base. The target training ball type includes one or more of the following: billiard ball type, cueing method type, ball placement rules, shot training, and pocketing requirements. This allows the user to set the training type for the training process, enabling more targeted training and improving the athlete's billiards training efficiency.

[0082] Figure 3 An internal structural diagram of a computer device corresponding to an auxiliary system for billiards training with customizable training ball shapes, as shown in one embodiment, is illustrated. This computer device can specifically be a terminal or a server. As shown, the computer device includes a processor, memory, and a network interface connected via a system bus. The memory includes a non-volatile storage medium and internal memory. The non-volatile storage medium stores an operating system and may also store a computer program, which, when executed by the processor, enables the processor to implement the aforementioned methods. The internal memory may also store a computer program, which, when executed by the processor, enables the processor to perform the aforementioned methods. Those skilled in the art will understand that… Figure 3The structure shown is merely a block diagram of a portion of the structure related to the present application and does not constitute a limitation on the computer device to which the present application is applied. Specific computer devices may include more or fewer components than those shown in the figure, or combine certain components, or have different component arrangements.

[0083] Those skilled in the art will understand that all or part of the processes in the above embodiments can be implemented by a computer program instructing related hardware. The program can be stored in a non-volatile computer-readable storage medium, and when executed, it can include the processes of the embodiments described above. Any references to memory, storage, databases, or other media used in the embodiments provided in this application can include non-volatile and / or volatile memory. Non-volatile memory can include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memory can include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in various forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), dual data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), RAMbus direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and RAMbus dynamic RAM (RDRAM), etc.

[0084] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0085] The embodiments described above are merely illustrative of several implementation methods of this application, and while the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of this patent application. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this patent application should be determined by the appended claims. Please enter the specific implementation details.

Claims

1. A billiards training auxiliary system with customizable training ball shapes, characterized in that, The system includes: The training data module is used to store the training knowledge base and the user training database; The image acquisition module includes at least one camera module installed on the billiard table, used to acquire image data including the billiard table during billiard training, and send the acquired image data to the data processing module; The data processing module receives image data sent by the image acquisition module, and analyzes the received image data based on the training knowledge base and the user training database to determine the position information and feature information of the billiard balls on the billiard table, and determines auxiliary data in the billiard training process based on the position information of the billiard balls, wherein the auxiliary data includes shot assist data; The training assistance module includes a display device for displaying the assistance data to assist the user in billiards training based on the assistance data. The data processing module is used to determine the target training ball type, determine the training data corresponding to the target training ball type based on the training knowledge base, and send it to the training assistance module so that the training assistance module can display the training data; wherein, the target training ball type includes one or more of the following: billiard ball type, cueing method type, ball placement rules, and pocketing requirements; the target training ball type is customized by the user; The training data is displayed in the training assistance module, and during the user's billiards training, image data is collected by the image acquisition module and sent to the data processing module. The data processing module analyzes the received image data to obtain the user's training data during the billiards training and generates auxiliary data based on the training data. The auxiliary data includes one or more of the following: the target ball placement position and shot suggestion during the ball placement phase; one or more of the following during the shot phase: reference shot path, shot point, shot force, shot pocket, shot technique, etc.; and / or, shot result data during the shot completion phase.

2. The billiards training auxiliary system with customizable training ball shape according to claim 1, characterized in that, During the ball-setting phase, the training assistance module is also used to display the target ball-setting position and hitting suggestions, so that the user can set the ball according to the target ball-setting position and hitting suggestions; The image acquisition module is used to acquire image data, including the actual position of the ball, when the user is swiping it. The data processing module is also used to analyze image data including the actual ball position to obtain the actual ball position; compare the actual ball position with the target ball position, and if the actual ball position and the target ball position are consistent, generate a first prompt and send it to the training assistance module for display; if the actual ball position and the target ball position are inconsistent, generate a second prompt and send it to the training assistance module for display. The first prompt is used to indicate that the actual ball placement position is consistent with the target ball placement position; the second prompt is used to indicate that the actual ball placement position is inconsistent with the target ball placement position.

3. The billiards training auxiliary system with customizable training ball shape according to claim 1, characterized in that, During the hitting phase, the image acquisition module is also used to acquire image data of the user during the hitting process and send it to the data processing module; The data processing module is also used to analyze the image data of the user during the shot to obtain the actual shot path of the user; and to analyze the actual shot path and one or more of the data in the auxiliary data, such as the reference shot path, the point of impact, the force of impact, the pocket of impact, and the cueing method, to determine whether the actual shot path and the reference shot path are consistent. If the actual shot path and the reference shot path are consistent, a third prompt is generated and sent to the training assistance module for display; if the actual shot path and the reference shot path are inconsistent, a fourth prompt is generated and sent to the training assistance module for display. The third prompt indicates that the actual shot trajectory and the reference shot trajectory are consistent, while the fourth prompt indicates that the actual shot trajectory and the reference shot trajectory are inconsistent.

4. The billiards training auxiliary system with customizable training ball shape according to claim 3, characterized in that, During the completion phase of the shot, the shot result data includes the shot score; The data processing module is also used to calculate the score based on the actual shot trajectory and send it to the training assistance module. The training assistance module is also used to display the score of the shot.

5. The billiards training auxiliary system with customizable training ball shape according to claim 1, characterized in that, The training assistance module also includes a microphone and a speaker. The microphone device is used to collect voice commands input by the user, and the speaker device is used to display interactive commands between the user and the speaker. And / or, the speaker device is used to display the auxiliary data; And / or, the speaker device and display device are used to display training courses in the training knowledge base, and to display data playback in the user training database; And / or, the display device is a touch screen display device, and the display device is also used to receive touch commands input by the user.

6. The billiards training auxiliary system with customizable training ball shape according to claim 5, characterized in that, The target training sphere is determined based on one of the user's voice input, user's touch input, or the user's training database.

7. The billiards training auxiliary system with customizable training ball shape according to claim 1, characterized in that, The training data module is also used to store the training data related to billiards training into the user training database after the billiards training is completed. The training data related to billiards training includes the original data during the billiards training process and the indicator data corresponding to the training results.

8. The billiards training auxiliary system with customizable training ball shape according to claim 1, characterized in that, The training assistance module is also used to receive user information, which is used to determine the user training database corresponding to the user information. The user information is obtained by capturing the user's headshot through an image acquisition module and analyzing the captured headshot through a data processing module, or by inputting the information through a microphone device or a touch-screen display module.

9. The billiards training auxiliary system with customizable training ball shape according to claim 8, characterized in that, The data processing module is also used to analyze the user's historical hitting data in the user training database to obtain the user's training index data during the hitting training process. The training index data includes data corresponding to one or more training indicators such as hitting success rate, average hitting speed, and deviation rate of movement trajectory.

10. The billiards training auxiliary system with customizable training ball shape according to claim 1, characterized in that, The data processing module is also used for: Based on the reference template image, determine the center coordinate position information of the billiard ball on the billiard table in the image data acquired by the image acquisition module; YOLO detection is used to identify detection regions in the image data, and single-channel feature maps of each detection region are extracted. Based on the position information and movement speed of the billiard ball in the image data corresponding to the current frame, a candidate region for the billiard ball in the image data corresponding to the next frame is determined, and the position information of the billiard ball is matched within the candidate region to determine the position information of the billiard ball.