Muscle output identification method, identification device and rehabilitation robot

By calculating the user's real-time and accurate muscle output by using two models, and by optimizing the backend model, the problem of insufficient computing real-time and accuracy in the existing technology is solved, and the recognition of muscle output is achieved with higher real-time and accuracy, which is suitable for robot motion control.

CN115005827BActive Publication Date: 2025-03-04SHANGHAI FOURIER INTELLIGENCE CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202210478648.4
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2022-05-05
Publication Date
2025-03-04
Estimated Expiration
2042-05-05

AI Technical Summary

Technical Problem

In the identification of muscle output in the prior art, professional human musculoskeletal dynamics model has high calculation requirements and poor real-time performance, while the simple version model has low accuracy, making it difficult to meet the real-time and accuracy requirements of robot motion control signals.

Method used

By obtaining the user's current bone geometric data and the stress at the end of the robot, two models (the first model with better real-time performance and the second model with higher accuracy) are used to calculate real-time and accurate muscle output, and by optimizing the background model, a third model with high calculation accuracy is obtained, replacing the first model, so as to improve the real-time and accuracy of the recognition results of muscle output.

Benefits of technology

It realizes that the recognition of muscle output is improved, and the accuracy is improved, so that the recognition results can be better applied to the robot's motion control process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN115005827B_ABST
    Figure CN115005827B_ABST
Patent Text Reader

Abstract

The present application relates to the technical field of muscle strength training, and discloses a method for identifying muscle output. The identification method includes: obtaining the current skeletal geometry data of the user at the current moment and the current force detected by the end of the robot; inputting the current skeletal geometry data and the current force into the first model to obtain the current real-time muscle output; inputting the current skeletal geometry data and the current force into the second model to obtain the current accurate muscle output; optimizing the background model according to the current skeletal geometry data, the current force and the current accurate muscle output to obtain the third model; replacing the first model with the third model; the calculation accuracy of the second model is higher than the calculation accuracy of the first model and the third model, and the calculation complexity of the second model is higher than the calculation complexity of the first model and the third model. The use of this identification method can simultaneously improve the real-time and accuracy of the identification results of muscle output. The present application also discloses a muscle output identification device and a rehabilitation robot.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of muscle strength training, for example, to a muscle output identification method, an identification device and a rehabilitation robot. Background Art

[0002] At present, rehabilitation robots can play a great auxiliary role in the rehabilitation training process of users. However, most rehabilitation robots cannot evaluate the rehabilitation effect of users. Usually, professional rehabilitation trainers use manual measurement to complete the evaluation of the user's rehabilitation effect. This manual evaluation of the user's rehabilitation effect is more dependent on the experience of the rehabilitation trainer, and requires a high level of skills or knowledge reserves of the rehabilitation trainer, and the labor cost of the rehabilitation trainer is high.

[0003] In order to realize the identification of muscle output, some existing technologies use an observer to observe the driver to evaluate the joint torque of the robot generated by the driver, and then use a motion capture system to obtain the real-time motion state information of the human body. Based on the human musculoskeletal dynamics model, the real-time muscle output of the human body is calculated from the joint torque estimation value and the real-time motion state information of the human body, thereby realizing the identification of muscle output.

[0004] In the process of implementing the embodiments of the present application, it is found that there are at least the following problems in the related technology:

[0005] Using a professional human musculoskeletal dynamics model can obtain a relatively accurate human muscle output, but the professional human musculoskeletal dynamics model has high computational requirements, takes a long time to calculate, and has poor real-time performance; while using a simplified human musculoskeletal dynamics model, the calculated human muscle output has better real-time performance, but poor accuracy. In the process of robot motion control, the real-time and accuracy requirements of the signal are relatively high, which makes it difficult to apply the muscle output identified by the existing technology to the robot motion control process. Summary of the invention

[0006] In order to provide a basic understanding of some aspects of the disclosed embodiments, a brief summary is given below. The summary is not an extensive review, nor is it intended to identify key / critical components or delineate the scope of protection of these embodiments, but rather serves as a prelude to the detailed description that follows.

[0007] The embodiments of the present application provide a muscle output identification method, an identification device, and a rehabilitation robot to obtain a user's muscle output identification result with high real-time performance and accuracy, so as to facilitate the application of the muscle output identification result to the robot's motion control process.

[0008] In some embodiments, the method for identifying muscle output includes: obtaining the current skeletal geometry data of the user at the current moment and the current force detected by the robot end; inputting the current skeletal geometry data and the current force into a first model to obtain the current real-time muscle output output by the first model; inputting the current skeletal geometry data and the current force into a second model to obtain the current accurate muscle output output by the second model; optimizing the background model according to the current skeletal geometry data, the current force and the current accurate muscle output to obtain a third model; replacing the first model with the third model; wherein the calculation accuracy of the second model is higher than the calculation accuracy of the first model and the third model, and the calculation complexity of the second model is higher than the calculation complexity of the first model and the third model.

[0009] Optionally, the background model is optimized according to the current skeletal geometry data, the current force and the current accurate muscle output to obtain a third model, including: inputting the current skeletal geometry data and the current force into the background model to obtain the current first muscle output output by the background model; obtaining the current first output difference between the current accurate muscle output and the current real-time muscle output, and the current second output difference between the current accurate muscle output and the current first muscle output; when the current second output difference is greater than the current first output difference, optimizing the background model according to the current skeletal geometry data, the current force and the current accurate muscle output; and determining the optimized background model as the third model.

[0010] Optionally, after optimizing the background model this time, the skeletal geometry parameters of the user and the forces on the robot end are obtained, and the background model is optimized for the next time based on the obtained skeletal geometry data of the user and the forces on the robot end.

[0011] Optionally, replacing the first model with the third model includes: inputting the current bone geometry data and the current force into the third model to obtain the current second muscle output output by the third model; obtaining the current first output difference between the current accurate muscle output and the current real-time muscle output and the current third output difference between the current accurate muscle output and the current second muscle output; and replacing the first model with the third model when the current third output difference is less than the current first output difference.

[0012] Optionally, when the current third output difference is smaller than the current first output difference, the first model is replaced by the third model, including: obtaining one-to-one corresponding historical third output difference and historical first output difference within a set number of optimization cycles before the current moment; dividing the set number of one-to-one corresponding historical third output difference and historical first output difference into a first category in which the historical third output difference is smaller than the historical first output difference, and a second category in which the historical third output difference is greater than or equal to the historical first output difference; when the total amount of data contained in the first category is greater than or equal to the total amount of data contained in the second category, and the current third output difference is smaller than the current first output difference, the first model is replaced by the third model.

[0013] Optionally, after replacing the first model with the third model, the muscle output identification method also includes: determining the first model as the background model, and optimizing the background model based on multiple bone geometry data of the user obtained after the current moment and the force detected by the robot end to obtain a fourth model for replacing the third model.

[0014] Optionally, the background model is optimized according to the current bone geometry data, the current force and the current accurate muscle output, including: when the background model is a neural network model, the current bone geometry data, the current force and the current accurate muscle output are determined as a current training set, and the neural network model is trained using the current training set.

[0015] Optionally, the background model is optimized according to the current bone geometry data, the current force and the current accurate muscle output, including: when the background model is a constructed human musculoskeletal dynamics model, the current bone geometry data and the current force are input into the constructed human musculoskeletal dynamics model, the difference between the output of the constructed human musculoskeletal dynamics model and the current accurate muscle output is minimized, determined as the optimization target, and the constructed human musculoskeletal dynamics model is optimized.

[0016] In some embodiments, the muscle output identification device includes a first acquisition module, a second acquisition module, a third acquisition module, an optimization module and an upgrade module; the first acquisition module is used to obtain the current skeletal geometry data of the user at the current moment and the current force detected by the robot end; the second acquisition module is used to input the current skeletal geometry data and the current force into the first model to obtain the current real-time muscle output output by the first model; the third acquisition module is used to input the current skeletal geometry data and the current force into the second model to obtain the current accurate muscle output output by the second model; the optimization module is used to optimize the background model according to the current skeletal geometry data, the current force and the current accurate muscle output to obtain the third model; the upgrade module is used to replace the first model with the third model; wherein the calculation accuracy of the second model is higher than the calculation accuracy of the first model and the third model, and the calculation complexity of the second model is higher than the calculation complexity of the first model and the third model.

[0017] In some embodiments, a muscle output identification device includes a processor and a memory storing program instructions, and the processor is configured to execute the muscle output identification method provided in the above embodiments when executing the program instructions.

[0018] In some embodiments, the rehabilitation robot includes the muscle output identification device provided in the aforementioned embodiments.

[0019] The muscle output identification method, identification device and rehabilitation robot provided in the embodiments of the present application can achieve the following technical effects:

[0020] The calculation complexity of the first model is relatively low, so it can obtain real-time muscle output identification results with better performance. The calculation accuracy of the second model is relatively high, so it can calculate relatively accurate muscle output. The background model is optimized according to the real-time bone geometry data, force and accurate muscle output to obtain a third model with relatively high calculation accuracy, and then the third model is used to replace the first model, that is, at the next moment, the third model is used to calculate the real-time muscle output, so that a muscle output identification result with relatively high accuracy can be obtained. Through the above method, the real-time and accuracy of the muscle output identification results are improved at the same time.

[0021] The above general description and the following description are exemplary and explanatory only and are not intended to limit the present application. BRIEF DESCRIPTION OF THE DRAWINGS

[0022] One or more embodiments are exemplarily described by corresponding drawings, and these exemplary descriptions and drawings do not limit the embodiments. Elements with the same reference numerals in the drawings are regarded as similar elements, and wherein:

[0023] Figure 1 is a schematic diagram of an interaction scenario between a user and a robot provided in an embodiment of the present application;

[0024] Figure 2 It is a flowchart of a muscle output identification method provided in an embodiment of the present application;

[0025] Figure 3 It is a flowchart of a muscle output identification method provided in an embodiment of the present application;

[0026] Figure 4 It is a flowchart of a muscle output identification method provided in an embodiment of the present application;

[0027] Figure 5 and Figure 6 is a schematic diagram of an upgraded method for identifying muscle output provided in an embodiment of the present application;

[0028] Figure 7 is a schematic diagram of a muscle output identification device provided in an embodiment of the present application;

[0029] Figure 8 It is a schematic diagram of a muscle output identification device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0030] In order to be able to understand the features and technical contents of the embodiments of the present application in more detail, the implementation of the embodiments of the present application is described in detail below in conjunction with the accompanying drawings. The attached drawings are for reference only and are not used to limit the embodiments of the present application. In the following technical description, for the convenience of explanation, a full understanding of the disclosed embodiments is provided through multiple details. However, in the absence of these details, one or more embodiments can still be implemented. In other cases, to simplify the drawings, well-known structures and devices can be simplified for display.

[0031] The terms "first", "second", etc. in the specification and claims of the embodiments of the present application and the above-mentioned drawings are used to distinguish similar objects, and are not necessarily used to describe a specific order or sequence. It should be understood that the numbers used in this way can be interchanged where appropriate, so that the embodiments of the embodiments of the present application described here. In addition, the terms "including" and "having" and any variations thereof are intended to cover non-exclusive inclusions.

[0032] Unless otherwise stated, the term "plurality" means more than two.

[0033] In the embodiment of the present application, the character " / " indicates that the preceding and following objects are in an "or" relationship. For example, A / B means: A or B.

[0034] The term "and / or" is a description of the association relationship between objects, indicating that three relationships can exist. For example, A and / or B means: A or B, or, A and B.

[0035] Figure 1 It is a schematic diagram of a user-robot interaction scenario provided by an embodiment of the present application. The hardware equipment in this implementation scenario includes a camera 11 and a robot 12. The user can operate the end of the robot 12 to achieve certain training purposes. The end of the robot 11 is provided with a force sensor, which can detect the force applied by the user to the end of the robot 11, that is, the force on the end of the robot 11; the camera 11 can collect pictures or videos of the user and the robot during the interaction, and then use image recognition technology to recognize the pictures or videos collected by the camera 11, and obtain the user's bone geometry data, which may include the user's bone size and bone posture.

[0036] Based on the first model with lower calculation accuracy but lower calculation complexity, the user's real-time muscle output is calculated from the user's skeletal geometry data and the force at the end of the robot 11, so as to obtain the muscle output identification result relatively quickly. In addition, using the second model with higher calculation accuracy but higher calculation complexity, a relatively accurate muscle output is calculated from the user's skeletal geometry data and the force at the end of the robot 11, and the calculation result is used to optimize the background model to obtain a third model, and the third model is used to replace the first model to optimize and upgrade the first model, so as to obtain a relatively accurate real-time muscle output in the subsequent muscle output identification process, thereby improving the accuracy and real-time performance of the identified real-time muscle output.

[0037] In the embodiment of the present application, the robot 12 is only exemplified as an upper limb training robot, and the type of the robot 12 is not specifically limited. For example, the robot 12 can also be a lower limb training robot, a wrist joint training robot, or an ankle joint training robot.

[0038] In the actual training scenario, a display device 13 may also be included, and the display device 13 may display the operation instructions of the robot 12, so that the user can operate the end of the robot 12 under the prompt of the display device 13, so as to achieve the expected training effect. Figure 1 In the figure, only a display is used as the display device 13 for exemplary description, and no limitation is imposed on the specific type of the display device 13. In actual application, the display device 13 may also be a virtual display (Virtual Reality, VR) device, or the display device 13 may also be an augmented reality (Augmented Reality, AR) device.

[0039] The muscle output identification method in the embodiment of the present application can be applied to the patient's rehabilitation training process, and can identify the patient's real-time muscle output, thereby facilitating the rehabilitation trainer to grasp the patient's rehabilitation level; or, the identified real-time muscle output can be used in the control process of the robot 12 to facilitate on-demand assistance and assist the user to complete the established training movements arranged by the rehabilitation trainer.

[0040] It should be understood that the muscle output identification method provided in the embodiment of the present application can be applied to the rehabilitation training process. Its function is only to identify the user's real-time muscle output, and it is not the rehabilitation training process itself. It will not have a promoting effect on the user's health status. The patient's rehabilitation effect depends on the scientific training plan formulated by the rehabilitation trainer and the patient's strict implementation of the training plan.

[0041] The muscle output identification method in the embodiment of the present application can also be applied to the training process of athletes, and can identify the real-time muscle output of athletes, thereby facilitating athletes or coaches to grasp the degree of training and formulate more scientific training plans.

[0042] Figure 2 1 is a flow chart of a muscle output identification method provided in an embodiment of the present application. The muscle output identification method can be executed by a robot controller or by a server.

[0043] Combination Figure 2 As shown, the methods for identifying muscle output include:

[0044] S201, obtaining the current skeleton geometry data of the user at the current moment and the current force detected by the robot end.

[0045] The current bone geometry data includes the current bone size and bone posture of the user. The current bone geometry data of the user can be obtained by: obtaining the current picture or current video of the user; and using image recognition technology to identify the current bone geometry data in the current picture or current video.

[0046] A force sensor can be set at the end of the robot to obtain the current force through force sensor detection.

[0047] S202: Input the current bone geometry data and the current force into the first model to obtain the current real-time muscle output output by the first model.

[0048] The first model is a real-time identification model.

[0049] In the process of executing the muscle output identification method for the first time, the first model can be a pre-trained neural network model, or it can be a pre-optimized human musculoskeletal dynamics model, and the constructed human musculoskeletal dynamics model is a simplified version of the human musculoskeletal dynamics model. Compared with the scientific human musculoskeletal dynamics model (such as the existing professional human musculoskeletal dynamics model calculation software), the constructed human musculoskeletal dynamics model contains fewer muscles and bones. In this way, the real-time performance of the current real-time muscle output obtained by the first model is better.

[0050] In the process of executing the muscle output identification scheme for a non-first time, the first model can be optimized or unoptimized. The first model is optimized, which means that before the current moment, historical skeletal geometry data and historical forces of the robot end are obtained, and historical accurate muscle output is calculated based on the historical skeletal geometry data and historical forces, such as the historical accurate muscle output calculated by calculation software of a professional human musculoskeletal dynamics model. The first model is optimized based on historical skeletal geometry data, historical forces and historical accurate muscle output. In this way, the accuracy of the current real-time muscle output obtained by the first model is relatively high.

[0051] The current real-time muscle output can be used in the muscle status assessment process, such as assessing the degree of muscle recovery of a patient, or assessing the muscle strength of an athlete.

[0052] The current real-time muscle output can also be used in the control process of the robot. For example, at the current moment, the force required for the robot to complete the current action is subtracted from the current real-time output to obtain the assistance required by the robot to achieve on-demand assistance.

[0053] S203, inputting the current bone geometry data and the current force into the second model to obtain the current accurate muscle output output by the second model.

[0054] The calculation accuracy of the second model is higher than that of the first model, and the calculation complexity of the second model is higher than that of the first model, which makes the second model have the characteristics of high accuracy and low real-time performance.

[0055] The calculation accuracy in the embodiment of the present application is used to indicate the degree of deviation between the calculated muscle output and the user's actual muscle output: the higher the calculation accuracy, the smaller the deviation between the calculated muscle output and the user's actual muscle output; the lower the calculation accuracy, the greater the deviation between the calculated muscle output and the user's actual muscle output.

[0056] The computational complexity in the embodiments of the present application is used to represent the computational workload required to calculate muscle output from skeletal geometry data and force. Under the condition that the time consumption remains unchanged, the higher the computational complexity, the greater the demand for computing resources, and the lower the computational complexity, the smaller the demand for computing resources; under the condition that the computing resources remain unchanged, the higher the computational complexity, the longer the computational time, and the lower the computational complexity, the shorter the computational time.

[0057] In specific applications, the second model may be a calculation software of a professional human musculoskeletal dynamics model, which has high calculation complexity and takes a long time, but the calculated muscle output is highly consistent with the user's actual muscle output, that is, the second model has high calculation accuracy.

[0058] S204, optimizing the background model according to the current bone geometry data, the current force and the current accurate muscle output to obtain a third model.

[0059] First, the background model is explained.

[0060] The background model is relative to the real-time identification model. For example, the calculation result of the first model (current real-time muscle output) can be directly output, while the calculation result of the background model is not directly output.

[0061] The background model and the real-time identification model may be different models, for example, the real-time identification model is a neural network model, and the background model is a constructed human musculoskeletal dynamics model; or, the real-time identification model is a constructed human musculoskeletal dynamics model, and the background model is a neural network model; or, the background model and the real-time identification model may be the same model, for example, both the real-time identification model and the background model are neural network models, or both the real-time identification model and the background model are constructed human musculoskeletal dynamics models.

[0062] The following describes the optimization process of the background model.

[0063] When the background model is a neural network model, the current bone geometry data, current force and current accurate muscle output are determined as the current training set, and the neural network model is trained using the current training set. Through training, the parameters in the background model are further adjusted to make the background model more in line with the user's actual situation.

[0064] In the case where the background model is a constructed human musculoskeletal dynamics model, the current bone geometry data and the current force are input into the constructed human musculoskeletal dynamics model, and the difference between the output of the constructed human musculoskeletal dynamics model and the current accurate muscle output is minimized, which is determined as the optimization target, and the constructed human musculoskeletal dynamics model is optimized. Here, the optimization calculation method is used to adjust the parameters in the background model to make the background model more in line with the actual situation of the user.

[0065] In the process of optimizing the background model, the current bone geometry data, current force and current accurate muscle output can be directly used to optimize the background model.

[0066] Alternatively, if the current bone geometry data, the current force and the current accurate muscle output meet the optimization conditions, the background model is optimized according to the current bone geometry data, the current force and the current accurate muscle output, otherwise the background model is not optimized.

[0067] For example, optimizing the background model according to the current bone geometry data, the current force and the current accurate muscle output to obtain the third model may include: inputting the current bone geometry data and the current force into the background model to obtain the current first muscle output output by the background model; obtaining the current first output difference between the current accurate muscle output and the current real-time muscle output, and the current second output difference between the current accurate muscle output and the current first muscle output; when the current second output difference is greater than the current first output difference, optimizing the background model according to the current bone geometry data, the current force and the current accurate muscle output; and determining the optimized background model as the third model.

[0068] This technical solution screens the data used to optimize the background model. If the current second output difference is greater than the current first output difference, it means that the accuracy of the background model's current calculation is lower than the calculation accuracy of the real-time identification model (such as the first model), that is, the background model has poor compatibility with the current skeletal geometry data, the current force, and the current accurate muscle output, or the background model has a low learning degree of the current skeletal geometry data, the current force, and the current accurate muscle output. In this case, the current skeletal geometry data, the current force, and the current accurate muscle output are used to optimize the background model to more accurately improve the background model's compatibility or learning degree with such data, and improve the calculation accuracy of the background model. After that, the third model is used to optimize and upgrade the first model, so that a more accurate real-time muscle output can be calculated to improve the accuracy of the muscle output identification method.

[0069] Correspondingly, when the current second output difference is less than or equal to the current first output difference, the background model is maintained unchanged and the background model is determined as the third model. The current second output is less than or equal to the current first output difference, indicating that the accuracy of the background model's current calculation is not lower than the calculation accuracy of the real-time identification model, that is, the background model has good compatibility with the current bone geometry data, the current force, and the current accurate muscle output, or the background model has a high degree of learning of the current bone geometry data, the current force, and the current accurate muscle output. In this case, these data are no longer used to optimize the background model.

[0070] In addition, in the muscle output identification method provided in the embodiment of the present application, the time required to calculate the current muscle output using the first model is the shortest, and the time required to calculate the current accurate muscle output using the second model is longer, plus the time required to optimize the background model. This means that in the process of optimizing the background model based on the current bone geometry data and the current force, the first model has output multiple real-time muscle outputs.

[0071] In the muscle output identification method provided in the embodiment of the present application, two parallel processes are included: a process of real-time identification and output of real-time muscle output, and a process of optimizing the background model to obtain a third model. The skeletal geometry data of the user and the force of the robot end collected at each moment can be identified to obtain real-time muscle output; while the process of optimizing the background model to obtain the third model is time-consuming, and the skeletal geometry data of the user and the force of the robot end can be periodically collected, and the background model can be optimized according to the collected skeletal geometry data and the force of the robot end.

[0072] Alternatively, after optimizing the background model this time, the user's skeletal geometry data and the forces on the robot's end may be obtained, and the background model may be optimized for the next time based on the obtained user's skeletal geometry data and the forces on the robot's end.

[0073] The amount of calculation required for the optimization process of the background model is large. Only typical data that is beneficial to improving the accuracy of the background model is used to optimize the background. This can reduce the time required to optimize the background model. More data that is beneficial to improving the accuracy of the background model can also be collected to optimize the background model and improve the calculation accuracy of the background model. After that, the third model is used to optimize and upgrade the first model, which can further calculate more accurate real-time muscle output to further improve the accuracy of the muscle output identification method.

[0074] Through the above technical solution, a third model can be obtained. The calculation accuracy of the third model is lower than that of the second model, and the calculation complexity of the third model is lower than that of the second model.

[0075] S205: Use the third model to replace the first model.

[0076] At this point, the replacement upgrade of the first model is completed. At this time, the real-time identification model is no longer the first model, but the third model. After obtaining the user's skeletal geometry data and the force on the robot end at the next moment, the real-time muscle output at the next moment is calculated based on the third model based on the user's skeletal geometry data and the force on the robot end at the next moment. Since the third model is optimized using the current accurate muscle output, the third model can obtain a more accurate real-time muscle output at the next moment.

[0077] The calculation complexity of the first model is relatively low, so it can obtain real-time muscle output identification results with better performance. The calculation accuracy of the second model is relatively high, so it can calculate relatively accurate muscle output. The background model is optimized according to the real-time bone geometry data, force and accurate muscle output to obtain a third model with relatively high calculation accuracy, and then the third model is used to replace the first model, that is, at the next moment, the third model is used to calculate the real-time muscle output, so that a muscle output identification result with relatively high accuracy can be obtained. Through the above method, the real-time and accuracy of the muscle output identification results are improved at the same time.

[0078] Figure 3 1 is a flow chart of a muscle output identification method provided in an embodiment of the present application. The muscle output identification method can be executed by a robot controller or by a server.

[0079] Combination Figure 3 As shown, the methods for identifying muscle output include:

[0080] S301, obtaining the current bone geometry data of the user at the current moment and the current force detected by the robot end.

[0081] S302: Input the current bone geometry data and the current force into the first model to obtain the current real-time muscle output output by the first model.

[0082] S303, inputting the current bone geometry data and the current force into the second model to obtain the current accurate muscle output output by the second model.

[0083] S304, optimizing the background model according to the current bone geometry data, the current force and the current accurate muscle output to obtain a third model.

[0084] S305: Input the current bone geometry data and the current force into the third model to obtain the current second muscle output output by the third model.

[0085] S306, obtaining a current first output difference between the current accurate muscle output and the current real-time muscle output, and a current third output difference between the current accurate muscle output and the current second muscle output.

[0086] S307: When the current third output difference is smaller than the current first output difference, the first model is replaced by the third model.

[0087] Correspondingly, when the current third output difference is greater than or equal to the current first output difference, the first model is maintained unchanged, that is, the third model is not used to replace the first model.

[0088] The current third output difference is smaller than the current first output difference, indicating that the calculation accuracy of the third model for the current bone geometry data and the current force is higher than the calculation accuracy of the first model. At this time, using the third model to replace the first model can ensure the accuracy of the real-time muscle output obtained by this muscle output identification method.

[0089] Furthermore, when the current third output difference is smaller than the current first output difference, the first model is replaced by the third model, including: obtaining one-to-one corresponding historical third output difference and historical first output difference within a set number of optimization cycles before the current moment; dividing the set number of one-to-one corresponding historical third output difference and historical first output difference into a first category in which the historical third output difference is smaller than the historical first output difference, and a second category in which the historical third output difference is greater than or equal to the historical first output difference; when the total amount of data contained in the first category is greater than or equal to the total amount of data contained in the second category, and the current third output difference is smaller than the current first output difference, the first model is replaced by the third model.

[0090] The above-mentioned optimization cycle may be a process of starting from obtaining the skeletal geometry parameters of the user and the forces on the end of the robot and ending with determining the third model; or, the above-mentioned optimization cycle may be a process of starting from obtaining the skeletal geometry parameters of the user and the forces on the end of the robot and ending with optimizing the background model and determining the optimized background model as the third model, that is, maintaining the background model unchanged and directly determining the background model as the third model does not constitute an independent optimization cycle.

[0091] The above-mentioned set number can be determined in a manner that: when the robot assists the user in completing an action, the number of optimization cycles contained in one or more action cycles is determined as the set number; or, the above-mentioned set number is set by a technician in this field based on experience.

[0092] The above-mentioned one-to-one corresponding third historical output difference and first historical output difference are both calculated based on the user's bone geometry parameters and the force detected by the robot end at the same time.

[0093] The total amount of data contained in the first category refers to the number of groups of historical third output difference and historical first output difference that satisfy the condition that the historical third output difference is less than the historical first output difference, and the number of groups of historical third output difference and historical first output difference that correspond one to one; the total amount of data contained in the second category refers to the number of groups of historical third output difference and historical first output difference that satisfy the condition that the historical third output difference is greater than or equal to the historical first output difference, and the number of groups of historical third output difference and historical first output difference that correspond one to one.

[0094] The total amount of data contained in the first category is greater than or equal to the total amount of data contained in the second category, and the current third output difference is less than the current first output difference, which means that the calculation accuracy of the third model is higher than the calculation accuracy of the first model. After confirming the calculation accuracy relationship, the third model is used to replace the first model to realize the upgrade of the real-time identification model, which is conducive to ensuring the accuracy of the real-time muscle output identified by this muscle output identification method.

[0095] Figure 4 1 is a flow chart of a muscle output identification method provided in an embodiment of the present application. The muscle output identification method can be executed by a robot controller or by a server.

[0096] Combination Figure 4 As shown, the methods for identifying muscle output include:

[0097] S401, obtaining the current skeleton geometry data of the user at the current moment and the current force detected by the robot end.

[0098] S402: Input the current bone geometry data and the current force into the first model to obtain the current real-time muscle output output by the first model.

[0099] S403, inputting the current bone geometry data and the current force into the second model to obtain the current accurate muscle output output by the second model.

[0100] S404, optimizing the background model according to the current bone geometry data, the current force and the current accurate muscle output to obtain a third model.

[0101] S405: Use the third model to replace the first model.

[0102] S406: Determine the first model as the background model, and optimize the background model according to multiple skeletal geometry data of the user obtained after the current moment and the force detected by the robot end.

[0103] The purpose of this optimization process is to obtain a fourth model to replace the third model.

[0104] Under normal circumstances, after the third model is used to replace the first model and the real-time identification model is upgraded, further optimization is performed on the basis of the current background model (i.e., the third model, the optimization times of the third model are higher than the optimization times of the first model) to obtain the background model (i.e., the fourth model) that replaces and upgrades the real-time identification model (i.e., the third model).

[0105] In an embodiment of the present application, after the real-time identification model (i.e., the first model) is replaced and upgraded with the third model, the first model is determined as the background model, that is, further optimization is performed on the basis of the first model to obtain a fourth model for replacing the third model.

[0106] In order to improve the real-time calculation of the real-time recognition model (the first model or the third model) or the background model (the third model or the fourth model), the learning ability or compatibility of the real-time recognition model or the background model is reduced to a certain extent, that is, the real-time recognition model or the background model is prone to knowledge blind spots or recognition blind spots (that is, the calculation error of the data at the knowledge blind spots or recognition blind spots is larger).

[0107] This requires continuous upgrading of the real-time recognition model to improve the accuracy of the identified real-time muscle output. The above-mentioned upgrade scheme is adopted to make the upgrade method of the real-time recognition model more in line with the actual scenario that the user continuously performs repetitive actions, the user's fatigue level during each training process (different user fatigue, different user force posture) presents periodic changes, and the relative position between the user and the robot changes: on the basis of the first model, the fourth model is optimized to obtain the upgrade method of the real-time recognition model. Changes periodically to match the scenario where the user performs repetitive actions, the user's fatigue level changes periodically, and the relative position between the user and the robot changes. Compared with optimizing on the basis of the third model to obtain the fourth model, the probability that the time required to optimize on the basis of the first model to obtain the fourth model is shorter is higher, that is, the upgrade cycle of the real-time recognition model is shortened, and the accuracy of the real-time recognition model is improved to obtain more accurate real-time muscle output.

[0108] Figure 5 and Figure 6 It is a schematic diagram of an upgrade of a muscle output identification method provided in an embodiment of the present application, to further illustrate the upgrade process of the muscle output identification method.

[0109] Combination Figure 5As shown, the human skeleton geometry data and the force on the robot end are input into the real-time identification model to obtain the real-time muscle output; at the same time, the human skeleton geometry data and the force on the robot end are input into the second model to obtain the accurate muscle output, and then the human skeleton geometry data, the force on the robot end and the accurate muscle output are used to optimize the background model, and the optimized background model is used to replace the real-time identification model to achieve the upgrade of the real-time identification model, and at the same time, the replaced real-time identification model is converted into the background model to achieve model optimization.

[0110] Figure 6 The upgrade process of the muscle output identification method is described in terms of the order of version numbers: the initial real-time identification model is the identification model of version V1.0, and the optimized identification model of version V2.0 is used to replace the identification model of version V1.0, so that the identification model of version V2.0 is used as the real-time identification model; on the basis of the identification model of version V1.0, it is optimized to obtain the identification model of version V3.0, and then the identification model of version V3.0 is used to replace the identification model of version V2.0, so that the identification model of version V3.0 is used as the real-time identification model; on the basis of the identification model of version V2.0, it is optimized to obtain the identification model of version V4.0, and then the identification model of version V4.0 is used to replace the identification model of version V3.0, so that the identification model of version V4.0 is used as the real-time identification model; and so on, a higher version of the identification model is obtained.

[0111] Figure 7 Schematic diagram of a muscle output identification device provided in an embodiment of the present application. The muscle output identification device can be implemented in the form of software, hardware or a combination of software and hardware.

[0112] Combination Figure 7 As shown, the muscle output identification device includes a first acquisition module 71, a second acquisition module 72, a third acquisition module 73, an optimization module 74 and an upgrade module 75. The first acquisition module 71 is used to obtain the current bone geometry data of the user at the current moment and the current force detected by the robot end; the second acquisition module 72 is used to input the current bone geometry data and the current force into the first model to obtain the current real-time muscle output output by the first model; the third acquisition module 73 is used to input the current bone geometry data and the current force into the second model to obtain the current accurate muscle output output by the second model; the optimization module 74 is used to optimize the background model according to the current bone geometry data, the current force and the current accurate muscle output to obtain the third model; the upgrade module 75 is used to replace the first model with the third model; wherein the calculation accuracy of the second model is higher than the calculation accuracy of the first model and the third model, and the calculation complexity of the second model is higher than the calculation complexity of the first model and the third model.

[0113] Optionally, the optimization module 74 includes a first acquisition unit, a second acquisition unit, an optimization unit and a determination unit; the first acquisition unit is used to input the current bone geometry data and the current force into the background model to obtain the current first muscle output output by the background model; the second acquisition unit is used to obtain the current first output difference between the current accurate muscle output and the current real-time muscle output, and the current second output difference between the current accurate muscle output and the current first muscle output; the optimization unit is used to optimize the background model according to the current bone geometry data, the current force and the current accurate muscle output when the current second output difference is greater than the current first output difference; the determination unit is used to determine the optimized background model as the third model.

[0114] Optionally, after optimizing the background model this time, the user's skeletal geometry parameters and the forces on the robot's end are obtained, and the background model is optimized for the next time based on the obtained user's skeletal geometry data and the forces on the robot's end.

[0115] Optionally, the upgrade module 75 includes a third acquisition unit, a fourth acquisition unit and an upgrade unit; the third acquisition unit is used to input the current bone geometry data and the current force into the third model to obtain the current second muscle output output by the third model; the fourth acquisition unit is used to obtain the current first output difference between the current accurate muscle output and the current real-time muscle output and the current third output difference between the current accurate muscle output and the current second muscle output; the upgrade unit is used to replace the first model with the third model when the current third output difference is less than the current first output difference.

[0116] Optionally, the upgrading unit is specifically used to obtain the one-to-one corresponding historical third output difference and the historical first output difference within a set number of optimization cycles before the current moment; divide the set number of one-to-one corresponding historical third output difference and the historical first output difference into a first category in which the historical third output difference is less than the historical first output difference, and a second category in which the historical third output difference is greater than or equal to the historical first output difference; when the total amount of data contained in the first category is greater than or equal to the total amount of data contained in the second category, and the current third output difference is less than the current first output difference, the first model is replaced by the third model.

[0117] Optionally, the muscle output identification device also includes a determination module; the determination module is used to determine the first model as the background model after replacing the first model with the third model, and optimize the background model based on multiple bone geometry data of the user obtained after the current moment and the force detected by the robot end to obtain a fourth model for replacing the third model.

[0118] Optionally, the optimization module 74 includes a neural network calculation unit or an optimization calculation unit; the neural network training unit is used to determine the current bone geometry data, the current force and the current accurate muscle output as the current training set when the background model is a neural network model, and train the neural network model using the current training set;

[0119] The optimization calculation unit is used to input the current bone geometry data and the current force into the constructed human musculoskeletal dynamics model when the background model is a constructed human musculoskeletal dynamics model, minimize the difference between the output of the constructed human musculoskeletal dynamics model and the current accurate muscle output, determine it as the optimization target, and optimize the constructed human musculoskeletal dynamics model.

[0120] In some embodiments, the muscle output identification device includes a processor and a memory storing program instructions, and the processor is configured to execute the muscle output identification method provided in the above embodiments when executing the program instructions.

[0121] Figure 8 Schematic diagram of a muscle output identification device provided in an embodiment of the present application. Figure 8 As shown, the muscle output identification device includes:

[0122] The processor 81 and the memory 82 may also include a communication interface 83 and a bus 84. The processor 81, the communication interface 83, and the memory 82 may communicate with each other through the bus 84. The communication interface 83 may be used for information transmission. The processor 81 may call the logic instructions in the memory 82 to execute the muscle output identification method provided in the above-mentioned embodiment.

[0123] In addition, the logic instructions in the memory 82 described above may be implemented in the form of software functional units and when sold or used as independent products, may be stored in a computer-readable storage medium.

[0124] The memory 82 is a computer-readable storage medium that can be used to store software programs and computer executable programs, such as program instructions / modules corresponding to the methods in the embodiments of the present application. The processor 81 executes functional applications and data processing by running the software programs, instructions, and modules stored in the memory 82, that is, implementing the methods in the above method embodiments.

[0125] The memory 82 may include a program storage area and a data storage area, wherein the program storage area may store an operating system and an application required for at least one function; the data storage area may store data created according to the use of the terminal device, etc. In addition, the memory 82 may include a high-speed random access memory and may also include a non-volatile memory.

[0126] An embodiment of the present application provides a rehabilitation robot, comprising the muscle output identification device provided in the aforementioned embodiment.

[0127] An embodiment of the present application provides a computer-readable storage medium storing computer-executable instructions, wherein the computer-executable instructions are configured to execute the muscle output identification method provided in the aforementioned embodiment.

[0128] An embodiment of the present application provides a computer program product, which includes a computer program stored on a computer-readable storage medium. The computer program includes program instructions. When the program instructions are executed by a computer, the computer executes the muscle output identification method provided by the aforementioned embodiment.

[0129] The computer-readable storage medium mentioned above may be a transient computer-readable storage medium or a non-transitory computer-readable storage medium.

[0130] The technical solution of the embodiment of the present application can be embodied in the form of a software product, which is stored in a storage medium and includes one or more instructions for enabling a computer device (which may be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the method in the embodiment of the present application. The aforementioned storage medium may be a non-transient storage medium, including: a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a disk or an optical disk, and other media that can store program codes, or a transient storage medium.

[0131] The above description and the accompanying drawings fully illustrate the embodiments of the present application so that those skilled in the art can practice them. Other embodiments may include structural, logical, electrical, process and other changes. The embodiments represent only possible changes. Unless explicitly required, individual components and functions are optional, and the order of operations may vary. Parts and features of some embodiments may be included in or replace parts and features of other embodiments. Moreover, the words used in this application are only used to describe the embodiments and are not used to limit the claims. As used in the description of the embodiments and the claims, unless the context clearly indicates otherwise, the singular forms of "a", "an" and "the" are intended to include plural forms as well. In addition, when used in this application, the term "comprise" and its variants "comprises" and / or including (comprising) refer to the existence of stated features, wholes, steps, operations, elements, and / or components, but do not exclude the existence or addition of one or more other features, wholes, steps, operations, elements, components and / or these groups. In the absence of further restrictions, the elements defined by the sentence "comprising a ..." do not exclude the existence of other identical elements in the process, method or device comprising the elements. In this article, each embodiment may focus on the differences from other embodiments, and the same or similar parts between the embodiments may refer to each other. For the methods, products, etc. disclosed in the embodiments, if they correspond to the method part disclosed in the embodiments, then the relevant parts can refer to the description of the method part.

[0132] Those skilled in the art will appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented with electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software may depend on the specific application and design constraints of the technical solution. Technicians can use different methods to implement the described functions for each specific application, but such implementation should not be considered to exceed the scope of the embodiments of the present application. Technicians can clearly understand that for the convenience and simplicity of description, the specific working process of the above-described system, device and unit can refer to the corresponding process in the aforementioned method embodiment, and will not be repeated here.

[0133] In the embodiments disclosed herein, the disclosed methods and products (including but not limited to devices, equipment, etc.) can be implemented in other ways. For example, the device embodiments described above are only schematic, for example, the division of units can be only a logical function division, and there can be other division methods in actual implementation, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the coupling or direct coupling or communication connection between each other shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or units, which can be electrical, mechanical or other forms. The units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, they may be located in one place, or they may be distributed on multiple network units. Some or all of the units can be selected according to actual needs to implement this embodiment. In addition, each functional unit in the embodiment of the present application can be integrated in a processing unit, or each unit can exist physically alone, or two or more units can be integrated in one unit.

[0134] The flow chart and block diagram in the accompanying drawings show the possible architecture, function and operation of the system, method and computer program product according to the embodiment of the present application. In this regard, each square box in the flow chart or block diagram can represent a part of a module, program segment or code, and a part of a module, program segment or code includes one or more executable instructions for realizing the logical function of the specification. In some implementations as replacements, the functions marked in the square box can also occur in a sequence different from that marked in the accompanying drawings. For example, two continuous square boxes can actually be executed substantially in parallel, and they can also be executed in the opposite order sometimes, which can depend on the functions involved. Each square box in the block diagram and / or flow chart, and the combination of the square boxes in the block diagram and / or flow chart can be realized by a dedicated hardware-based system that performs the function or action of the specification, or can be realized by a combination of special-purpose hardware and computer instructions.

Claims

1. A method for identifying muscle output, characterized in that: include: Obtain the current bone geometry data of the user at the current moment and the current force detected by the robot end; Inputting the current bone geometry data and the current force into a first model to obtain the current real-time muscle output output by the first model; Inputting the current bone geometry data and the current force into a second model to obtain the current accurate muscle output output by the second model; Optimize the background model according to the current bone geometry data, the current force and the current accurate muscle output to obtain a third model; Inputting the current bone geometry data and the current force into the third model to obtain the current second muscle output output by the third model; Obtaining a current first output difference between the current accurate muscle output and the current real-time muscle output and a current third output difference between the current accurate muscle output and the current second muscle output; In the case where the current third force difference is less than the current first force difference, the first model is replaced by the third model; after obtaining the user's skeletal geometry data and the force on the robot end at the next moment, the real-time muscle output at the next moment is calculated based on the third model from the user's skeletal geometry data and the force on the robot end at the next moment; The calculation accuracy of the second model is higher than that of the first model and the third model, and the calculation complexity of the second model is higher than that of the first model and the third model; The process of real-time identification and output of real-time muscle output and the process of optimizing the background model to obtain the third model are carried out in parallel.

2. The identification method according to claim 1, characterized in that: Optimizing the background model according to the current bone geometry data, the current force, and the current accurate muscle output to obtain a third model, including: Inputting the current bone geometry data and the current force into the background model to obtain the current first muscle output output by the background model; Obtaining a current first output difference between the current accurate muscle output and the current real-time muscle output, and a current second output difference between the current accurate muscle output and the current first muscle output; When the current second force difference is greater than the current first force difference, optimizing the background model according to the current bone geometry data, the current force and the current accurate muscle output; The optimized background model is determined as the third model.

3. The identification method according to claim 2, characterized in that: After optimizing the background model this time, the user's skeletal geometry parameters and the forces on the robot's end are obtained, and the background model is optimized for the next time based on the obtained user's skeletal geometry data and the forces on the robot's end.

4. The identification method according to claim 1, characterized in that: When the current third output difference is less than the current first output difference, replacing the first model with the third model includes: Obtaining a one-to-one correspondence between the third historical output difference value and the first historical output difference value within a set number of optimization cycles before the current moment; Divide the set number of one-to-one corresponding historical third output differences and historical first output differences into a first category where the historical third output difference is less than the historical first output difference, and a second category where the historical third output difference is greater than or equal to the historical first output difference; When the total amount of data included in the first category is greater than or equal to the total amount of data included in the second category, and the current third output difference is less than the current first output difference, the first model is replaced by the third model.

5. The identification method according to any one of claims 1 to 4, characterized in that: After replacing the first model with the third model, the method further includes: The first model is determined as the background model, and the background model is optimized according to multiple bone geometry data of the user obtained after the current moment and the force detected by the robot end, so as to obtain a fourth model for replacing the third model.

6. The identification method according to any one of claims 1 to 4, characterized in that: Optimizing the background model according to the current bone geometry data, the current force and the current accurate muscle output includes: In the case where the background model is a neural network model, the current bone geometry data, the current force and the current accurate muscle output are determined as a current training set, and the neural network model is trained using the current training set; or, In the case where the background model is a constructed human musculoskeletal dynamics model, the current bone geometry data and the current force are input into the constructed human musculoskeletal dynamics model, and the difference between the output of the constructed human musculoskeletal dynamics model and the current accurate muscle output is minimized, which is determined as the optimization target, and the constructed human musculoskeletal dynamics model is optimized.

7. A muscle output identification device, characterized in that: include: The first acquisition module is used to obtain the current bone geometry data of the user at the current moment and the current force detected by the robot end; A second acquisition module is used to input the current bone geometry data and the current force into the first model to obtain the current real-time muscle output output by the first model; A third acquisition module is used to input the current bone geometry data and the current force into a second model to obtain the current accurate muscle output output by the second model; An optimization module, configured to optimize the background model according to the current bone geometry data, the current force and the current accurate muscle output to obtain a third model; A third obtaining unit, used for inputting the current bone geometry data and the current force into the third model to obtain the current second muscle output output by the third model; A fourth obtaining unit, configured to obtain a current first output difference between the current accurate muscle output and the current real-time muscle output and a current third output difference between the current accurate muscle output and the current second muscle output; An upgrading unit, configured to replace the first model with the third model when the current third output difference is less than the current first output difference; After obtaining the user's skeletal geometry data and the force on the robot end at the next moment, based on the third model, the real-time muscle output at the next moment is calculated from the user's skeletal geometry data and the force on the robot end at the next moment; The calculation accuracy of the second model is higher than that of the first model and the third model, and the calculation complexity of the second model is higher than that of the first model and the third model; The process of real-time identification and output of real-time muscle output and the process of optimizing the background model to obtain the third model are carried out in parallel.

8. A muscle output identification device, comprising a processor and a memory storing program instructions, characterized in that: The processor is configured to perform the muscle output identification method as described in any one of claims 1 to 6 when executing the program instructions.

9. A rehabilitation robot, characterized in that: It comprises a muscle output identification device as described in claim 7 or 8.

Citation Information

Patent Citations

  • Model training method based on knowledge distillation and image processing method and device

    CN111242297A

  • Skeletal muscle stress estimation method based on posture recognition and human body biomechanics

    CN112069933A