The present disclosure relates to a method and system using inertial sensors in computer-assisted surgery.
Computer-assisted surgery has been developed in order to help the operator in performing alterations to a bone. Among the various tracking technologies used in computer-assisted surgery, optical navigation, C-arm validation and manual reference guides have been used. The optical navigation requires the use of a navigation system, which adds operative time. It is also bound to line-of-sight constraints that hamper the normal surgical flow. C-arm validation requires the use of bulky equipment and the validation is not cost-effective. Moreover, it is generally used post-operatively as opposed to intra-operatively. Accordingly, inertial sensors are used for their cost-effectiveness and the valuable information they provide. Since inertial sensors have no need for an external reference, they may be immune to environmental factors such as magnetic fields and operate under a wide range of conditions. However, inertial sensor units are primarily used to provide orientation data, as opposed to positional data.
In accordance with a first embodiment of the present disclosure, there is provided a method for calculating a distance between at least two points on a bone, comprising: obtaining, using one or more processors within a computing system, first acceleration data from a first accelerometer unit located at a first fixed location relative to the bone, during a movement of the bone; simultaneously obtaining, using the one or more processors within the computing system, second acceleration data from at least a second accelerometer unit at a second fixed location relative to the bone, during said movement; simultaneously obtaining, using the one or more processors within the computing system, angular rates of change from at least one gyroscope unit fixed to the bone, during said movement; and calculating and outputting, using the one or more processors within the computing system, a distance value of a distance vector between the first fixed position and the second fixed position using the angular rates of change of the at least one gyroscope unit and the acceleration data of the accelerometer units.
In accordance with a second embodiment of the present disclosure, there is provided a computer-assisted surgery system for obtaining a distance between at least two fixed points relative to a bone, comprising: a first accelerometer unit located at a first fixed location on the bone, and producing first acceleration data during a movement of the bone; at least a second accelerometer unit located at a second fixed location on the bone, and simultaneously producing second acceleration data during said movement; at least one gyroscope unit fixed to the bone and simultaneously producing angular rates of change of said movement; a processor unit obtaining the acceleration data and the angular rates of change for calculating the distance between the first fixed position and the second fixed position on the bone using a distance value of a distance vector between the accelerometer units; and an interface to output the distance between the first fixed position and the second fixed position relative to the bone.
In accordance with a third embodiment of the present disclosure, there is provided a system for obtaining a distance between at least two fixed points relative to a bone, the system comprising: a processor unit; and a non-transitory computer-readable memory communicatively coupled to the processing unit and comprising computer-readable program instructions executable by the processing unit for: obtaining first acceleration data from a first accelerometer unit located at a first fixed location relative to the bone, during a movement of the bone; simultaneously obtaining second acceleration data from at least a second accelerometer unit at a second fixed location relative to the bone, during said movement; simultaneously obtaining angular rates of change from at least one gyroscope unit fixed to the bone, during said movement; calculating and outputting a distance value of a distance vector between the first fixed position and the second fixed position using the angular rates of change of the at least one gyroscope unit and the acceleration data of the accelerometer units.
Referring to the drawings and more particularly to
As observed in
The second accelerometer unit 30B is located at a second fixed location on the bone B, and simultaneously produces second acceleration data during the movements of the bone B. The gyroscope unit 40 is also fixed to the bone B and simultaneously produces angular rates of change for the movements of the bone B. As shown the first accelerometer unit 30A and the gyroscope unit 40 may be packaged into a single sensor device C, for practicality, i.e., in a common casing. However, the gyroscope may be secured at its own location on the bone B, provided it is in a fixed relation on the bone B. Although not shown, n additional accelerometer units 30n may be fixed at other locations on the bone B. As the system 10 measures distances between the accelerometer units 30 (i.e., 30A, 30B, 30n), more distance values may be obtained by having more accelerometer units.
In the exemplary set-up of
The accelerometer unit 30B is attached to the malleoli, with a self-centering mechanism 31B, so that the accelerometer unit 30B is aligned with the ankle center. This is one possible arrangement. The self-centering mechanism 31B is for instance described in U.S. Pat. No. 8,551,108, incorporated herein by reference. Other types of supports may be used. This includes for example brackets pinned or attached/connected to the bone in any appropriate way provided the accelerometer units 30 are fixed, and even connecting the sensor device C directly to the bone. The present method and system are not limited to specific support brackets.
The CAS processor unit 20 is of the type having processing means with the computing capacity for the equations described below, and including a non-transitory computer-readable memory communicatively coupled to the processing unit 20 and comprising computer-readable program instructions, for instance in the form of modules, executable by the processing unit 20 for performing steps as described below. The CAS processor unit 20 may be a stand-alone computer connected to the various sensors, by wired or wireless communication, with the various sensors having the wired or wireless communication capability as well. It is however pointed out that the CAS processor unit 20 may be partially or integrally integrated into one of the sensor units (a.k.a., pod) used, such as the sensor device C integrating both the first accelerometer unit 30A and the gyroscope unit 40. The sensor device C, when incorporating the CAS processor unit 20, may thus be equipped with user interfaces 50 to provide the navigation data, whether it be in the form of LED displays, screens, numerical displays, etc. However, as the computer-assisted knee surgery system described herein may use more than one of the inertial sensor units, it is considered to have a stand-alone CAS processor unit to receive data from all inertial sensors and give the operator centralized guidance. This may also include local guidance by having data indicators on the inertial sensors, such as indicator lights or displays for given parameters (flexion/extension, varus/valgus, anteversion, inclination, cut length, etc, depending on the nature of the application).
The processor unit 20 receives the acceleration data from the accelerometer units 30 fixed to the single rigid body, i.e., the bone B in
At any moment t, during unconstrained movements of the bone including a rotational component of movement other than about an axis passing through a pair of the accelerometer units (i.e., multiple motions about multiple non parallel axes), the acceleration data perceived by the accelerometer units 30 can be divided into four components: a translation component, a rotation component (i.e. the centripetal acceleration), a tangential component and a gravity component.
{right arrow over (a)}total={right arrow over (a)}gravity+{right arrow over (a)}translation+{right arrow over (a)}centripetal+{right arrow over (a)}tangential
At the same moment t, the gyroscope output, i.e., the angular rates of change, can be decomposed into an instantaneous rotation axis {right arrow over (A)}=(Ax,Ay,Az) and a rotational velocity magnitude w. As the accelerometer units 30 and the gyroscope unit 40 are all rigidly fixed to the same body, e.g., the bone B, the accelerometer units 30 and the gyroscope unit 40 generally perceive the same rotational velocity.
For the accelerometer units 30, the translation and gravity components in the bone coordinate system are the same. Therefore, the processor unit 20 has a comparator module 21 for isolating a centripetal acceleration value and a tangential acceleration value for each of the accelerometer units 30 by comparing the first acceleration data with the second acceleration data, as the difference between the acceleration data output by the accelerometer units is only due to the rotational and tangential components, namely:
{right arrow over (a)}total
A distance calculating module 22 of the processor unit 20 may use the centripetal acceleration value and the tangential acceleration value of each said accelerometer unit 30, along with the angular rates of change of the gyroscope unit 40, to calculate a distance between each accelerometer unit 30. By definition, the centripetal acceleration is:
|{right arrow over (a)}centripetal
Also by definition of the centripetal acceleration, the centripetal acceleration is towards the center of rotation. Let {right arrow over (v)}i be {right arrow over (a)}centripetal
Let {right arrow over (d)}12=(dx, dy, dz) be the vector between the positions of two accelerometer units 30. If both centripetal acceleration vectors are projected in the plane normal to the instantaneous rotation axis, the following is obtained:
where
Δ{right arrow over (a)}tangential={right arrow over (a)}tangential
and
Δ{right arrow over (a)}total={right arrow over (a)}total
The {right arrow over (a)}total term of each accelerometer unit 30 is fully known, while the tangential acceleration has to be evaluated from the known data. By the definition of tangential acceleration,
where rt
To know the tangential acceleration of a point in space, this equation may be extended to the vector form and perform the cross product of these two values.
The Δ{right arrow over (a)}tangential term may be computed from the previous equation,
By extending the cross product calculation, the angular acceleration coefficients may be decomposed to isolate {right arrow over (d)}12 terms, where {right arrow over (d)}12=(dx, dy, dz)
The term {right arrow over (d)}12
Based on the definition of projection,
where {right arrow over (d)}12=(dx, dy, dz) is unknown and Δ{right arrow over (a)}total=(Δax, Δay, Δaz) is known.
By regrouping the coefficients of the three unknowns (dx, dy, dz),
Thus, for every instantaneous movement, three equations are obtained and three unknowns (dx, dy, dz), namely the distance value of the distance vectors. This may be solved as a linear system of equations, by the distance calculating module 22 of the processor unit 20.
To reduce the impact of sensor errors, several instantaneous acquisitions, i.e., acquisitions at different time periods, may be obtained and compiled, averaged, analyzed to calculate the distance with one or more of the acquisitions. In an embodiment, the several instantaneous acquisitions are combined to a value of {right arrow over (d)}12 which minimizes the overall error. This can be done by the distance calculating module 22 of the processor unit 20 by solving the following linear system with singular value decomposition (SVD).
Hence, the distance value of the vector (dx, dy, dz) between the fixed positions of the accelerometer units 30 on the bone is obtained. An anatomy locator module 23 may factor in additional geometrical data obtained from the database 24, such as the distance of the accelerometer units 30 from the bone. For example, the anatomy locator module 23 may take into account the geometry of the support bracket 31A and/or of the self-centering mechanism 31B, in determining the distance between the fixed points on the bone B. The support bracket 31A and the self-centering mechanism 31B offset the accelerometer units 30 from the bone. The anatomy locator module 23 may remove this offset when calculating the position on the bone.
There are conditions to respect in a practical setup in order for the distance calculation to be accurate. The sensors are fixed to a body, i.e., the bone B, and their positions relative to the bone B do not change during their data acquisition. Also, the relative orientation between the sensors must be known and must not change during the acquisition.
The interface 50 then outputs the distance between the first fixed position and the second fixed position on the bone B, among other information. The distance may be in the form of a confirmation that the distal cut is at the adequate planned distance, etc. For example, the system 10 may benefit from an operative planning data file that is specific to the patient, and featuring planning data, such as distal cut depth, tibial length, implant size, etc. The processor unit 20 may include or access this information. Accordingly, the processor unit 20 may verify, using the operative planning data, that the distal cut is at a predetermined distance from a midpoint of the malleoli, taking into consideration for example a thickness of bone resected from the tibial (e.g., as a function of a tibial plateau implant), and the method may calculate this distance. The tibial cut may thus be validated by comparing the calculated distance value with the planned distance value. While the system 10 is described above as outputting a distance between fixed positions on the bone, the system 10 may add some functionalities, for instance if the accelerometers units 30 and the gyroscope 40 add the feature of determining orientations as well. For example, if the relative position and relative orientation of the sensors is known, the varus/valgus and flexion/extension angles of the distal cut may be calculated in the embodiment of
Referring to
According to 61, at a moment t, first acceleration data is obtained from the first accelerometer unit 30A located at a first fixed location on the bone, during a movement of the bone. Second acceleration data is simultaneously obtaining from the second accelerometer unit 30B, at a second fixed location relative to the bone, during the movement. The acceleration data of other accelerometer units 30 may be obtained if applicable.
According to 62, angular rates of change are simultaneously obtained from the gyroscope unit(s) 40 fixed to the bone, during the movement. In 61 and 62, instant values are obtained. However, several instantaneous acquisitions may be combined, for example at different time periods.
According to 63, a centripetal acceleration value and a tangential acceleration value are isolated for the accelerometer units 30 by comparing the first acceleration data with the second acceleration data. Other approaches may be taken to compare the comparing the first acceleration data with the second acceleration data.
According to 64, the distance between the first fixed position and the second fixed position on the bone B is calculated using the angular rates of change of the gyroscope unit 40, and the centripetal acceleration value and the tangential acceleration value of the accelerometer units as in 63. The orientation between the first fixed position and the second fixed position may also be calculated using the readings of the numerous gyroscope units 40, if more than one is provided. Singular value decomposition may be used in the calculations if numerous instantaneous acquisitions have been combined. Other geometrical data may be used in the calculation, such as a geometry of a sensor support.
Among contemplated applications, in addition to the tibial cut validation as exemplified by
The present application claims the priority of U.S. patent application Ser. No. 62/401,424, filed on Sep. 29, 2016 and incorporated herein by reference.
Number | Name | Date | Kind |
---|---|---|---|
9167989 | Odermatt | Oct 2015 | B2 |
20090247863 | Proulx | Oct 2009 | A1 |
20120277634 | Proulx | Nov 2012 | A1 |
20130172906 | Olson | Jul 2013 | A1 |
20160007909 | Singh | Jan 2016 | A1 |
20190201155 | Gupta | Jul 2019 | A1 |
Number | Date | Country |
---|---|---|
2 542 177 | Jan 2013 | EP |
2 957 249 | Dec 2015 | EP |
2012012863 | Feb 2012 | WO |
Number | Date | Country | |
---|---|---|---|
20180085171 A1 | Mar 2018 | US |
Number | Date | Country | |
---|---|---|---|
62401424 | Sep 2016 | US |