WO2023133390A1 - Data optimization methods for dynamic cut boundary - Google Patents
Data optimization methods for dynamic cut boundary Download PDFInfo
- Publication number
- WO2023133390A1 WO2023133390A1 PCT/US2023/060066 US2023060066W WO2023133390A1 WO 2023133390 A1 WO2023133390 A1 WO 2023133390A1 US 2023060066 W US2023060066 W US 2023060066W WO 2023133390 A1 WO2023133390 A1 WO 2023133390A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- points
- model
- periphery
- point
- ordering
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Classifications
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B34/00—Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
- A61B34/10—Computer-aided planning, simulation or modelling of surgical operations
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating three-dimensional [3D] models or images for computer graphics
- G06T19/003—Navigation within 3D models or images
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B34/00—Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
- A61B34/25—User interfaces for surgical systems
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—Three-dimensional [3D] image rendering
- G06T15/10—Geometric effects
- G06T15/30—Clipping
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating three-dimensional [3D] models or images for computer graphics
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H20/00—ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance
- G16H20/40—ICT specially adapted for therapies or health-improving plans, e.g. for handling prescriptions, for steering therapy or for monitoring patient compliance relating to mechanical, radiation or invasive therapies, e.g. surgery, laser therapy, dialysis or acupuncture
-
- G—PHYSICS
- G16—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
- G16H—HEALTHCARE INFORMATICS, i.e. INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR THE HANDLING OR PROCESSING OF MEDICAL OR HEALTHCARE DATA
- G16H50/00—ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics
- G16H50/50—ICT specially adapted for medical diagnosis, medical simulation or medical data mining; ICT specially adapted for detecting, monitoring or modelling epidemics or pandemics for simulation or modelling of medical disorders
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B34/00—Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
- A61B34/10—Computer-aided planning, simulation or modelling of surgical operations
- A61B2034/101—Computer-aided simulation of surgical operations
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B34/00—Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
- A61B34/10—Computer-aided planning, simulation or modelling of surgical operations
- A61B2034/101—Computer-aided simulation of surgical operations
- A61B2034/102—Modelling of surgical devices, implants or prosthesis
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B34/00—Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
- A61B34/10—Computer-aided planning, simulation or modelling of surgical operations
- A61B2034/101—Computer-aided simulation of surgical operations
- A61B2034/102—Modelling of surgical devices, implants or prosthesis
- A61B2034/104—Modelling the effect of the tool, e.g. the effect of an implanted prosthesis or for predicting the effect of ablation or burring
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B34/00—Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
- A61B34/10—Computer-aided planning, simulation or modelling of surgical operations
- A61B2034/101—Computer-aided simulation of surgical operations
- A61B2034/105—Modelling of the patient, e.g. for ligaments or bones
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B34/00—Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
- A61B34/10—Computer-aided planning, simulation or modelling of surgical operations
- A61B2034/107—Visualisation of planned trajectories or target regions
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B34/00—Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
- A61B34/10—Computer-aided planning, simulation or modelling of surgical operations
- A61B2034/108—Computer aided selection or customisation of medical implants or cutting guides
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B34/00—Computer-aided surgery; Manipulators or robots specially adapted for use in surgery
- A61B34/25—User interfaces for surgical systems
- A61B2034/252—User interfaces for surgical systems indicating steps of a surgical procedure
-
- A—HUMAN NECESSITIES
- A61—MEDICAL OR VETERINARY SCIENCE; HYGIENE
- A61B—DIAGNOSIS; SURGERY; IDENTIFICATION
- A61B90/00—Instruments, implements or accessories specially adapted for surgery or diagnosis and not covered by any of the groups A61B1/00 - A61B50/00, e.g. for luxation treatment or for protecting wound edges
- A61B90/36—Image-producing devices or illumination devices not otherwise provided for
- A61B90/37—Surgical systems with images on a monitor during operation
- A61B2090/376—Surgical systems with images on a monitor during operation using X-rays, e.g. fluoroscopy
- A61B2090/3762—Surgical systems with images on a monitor during operation using X-rays, e.g. fluoroscopy using computed tomography systems [CT]
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2210/00—Indexing scheme for image generation or computer graphics
- G06T2210/41—Medical
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/008—Cut plane or projection plane definition
Definitions
- Some surgical workflows require manipulations of rendered three- dimensional (3D) objects, specifically, patient anatomical (e.g. bone) models, reconstructed from a CT scan or other medical imaging.
- Such manipulations may include, by way of non-limiting example, planning resections to accommodate implant placement for joint reconstruction.
- planning resections to accommodate implant placement for joint reconstruction.
- it may be desirable to command a robot to execute these resections or to have a user perform them but to constrain such execution (for example, with a robot imposing virtual boundaries).
- the method includes obtaining a three-dimensional (3D) model of a patient anatomy, the 3D model comprising a collection of points defining a periphery of the 3D model, the periphery of the 3D model representing a periphery of the patient anatomy; based on clipping the 3D model, the clipping forming at least one clipped surface of the 3D model that intersects the periphery of the 3D model, obtaining a set of points, of the collection of points, that are on or adjacent one or more intersections of the at least one clipped surface and the periphery of the 3D model, the set of points forming a path along the periphery of the 3D model and corresponding to points on the patient anatomy; determining an ordering of the set of points, the ordering specifying a sequence of the points, of the set of points, from a first point of the set of points to a last point of
- a computer system includes a memory and a processor in communication with the memory, wherein the computer system is configured to perform a method.
- the method includes obtaining a three-dimensional (3D) model of a patient anatomy, the 3D model comprising a collection of points defining a periphery of the 3D model, the periphery of the 3D model representing a periphery of the patient anatomy; based on clipping the 3D model, the clipping forming at least one clipped surface of the 3D model that intersects the periphery of the 3D model, obtaining a set of points, of the collection of points, that are on or adjacent one or more intersections of the at least one clipped surface and the periphery of the 3D model, the set of points forming a path along the periphery of the 3D model and corresponding to points on the patient anatomy; determining an ordering of the set of points, the ordering specifying a sequence of the points, of the set of points, from a first point of the
- a computer program product including a computer readable storage medium readable by a processing circuit and storing instructions for execution by the processing circuit is provided for performing a method.
- the method includes obtaining a three-dimensional (3D) model of a patient anatomy, the 3D model comprising a collection of points defining a periphery of the 3D model, the periphery of the 3D model representing a periphery of the patient anatomy; based on clipping the 3D model, the clipping forming at least one clipped surface of the 3D model that intersects the periphery of the 3D model, obtaining a set of points, of the collection of points, that are on or adjacent one or more intersections of the at least one clipped surface and the periphery of the 3D model, the set of points forming a path along the periphery of the 3D model and corresponding to points on the patient anatomy; determining an ordering of the set of points, the ordering specifying a sequence of the points, of the set of points, from
- the obtained set of points comprises the points, of the set of points, with no ordering specified in terms of the sequence from the first point to the last point in the continuous path.
- the obtained set of points is obtained without a specified ordering of the points.
- the obtained set of points is obtained with an order that indicates two points of the set, having one or more other points of the set between the two points along the periphery of the 3D model by being sequentially-prior, in the order, to the one or more other points.
- the ordering of the set of points identifies a contiguous path on the periphery of the patient anatomy identifying step-wise traversal around the patient anatomy in a direction.
- the method further includes receiving from a user a definition of one or more clips to clip the 3D model. In embodiments, the method further includes obtaining a definition of one or more clips to clip the 3D model and determining the set of points by clipping the 3D model with the defined one or more clips. In embodiments, the clipping is defined by one or more clips defined by a user.
- the set of points comprises at least 5 points.
- the performing processing comprise outputting the ordering of the set of points as, or to facilitate generation of, a cut path along the periphery of the patient anatomy.
- FIG. 1 depicts an example showing flat surfaces of patient bone represented as cross-sections of a three-dimensional (3D) model
- FIG. 2A depicts virtual boundaries and corresponding implants used in conventional approaches that pre-define cut plans
- FIG. 2B depicts a planning screen for virtual implant placement
- FIG. 2C depicts an example of necessary clips to remove bone to properly fit an implant
- FIG. 3 depicts an example illustrating critical soft tissue that may be encountered intraoperatively that the cutting tool must avoid during cutting
- FIG. 4 illustrates deficiencies of generic implants achieving perfect coverage of resected anatomy
- FIG. 5 depicts an example of CT scan output generation
- FIG. 6 depicts an example of a 3D rendered model and a polygon mesh for 3D representation thereof
- FIG. 7 depicts an example continuous path around an object
- FIGS. 8A-8B conceptually depict examples of point misordering when clipping a model
- FIG. 9 depicts an example computer system to incorporate and use aspects described herein.
- FIGS. 10-16 depict examples to illustrate aspects described herein.
- Commanding a robot (or other actor) to execute or assist with surgical cuts may require, by way of non-limiting example, generating a cut path (or “toolpath”) for a tool (e.g. cutting instrument) to follow.
- a toolpath represents a series of ordered coordinates through which the tool (for example, a cutting tool like a sagittal saw) may travel to perform a function, like cutting.
- the tool executes its intended task at or around each ordered coordinate on the toolpath.
- the coordinates are ordered so that the cutting tool can, starting from a starting point, cut to the sequentially-next point in the series, then the sequentially-next point in the series, and so on, to reach an ending point (which may be the same as the starting point or a different point) and thereby form a continuous path along a surface of the anatomy.
- Described herein are approaches for cut path boundary generation, for instance, by way of sorting points on the boundary of a 3D model so that their sorted order provides data that is useful to a cut path generating algorithm.
- one approach is to clip the 3D model to simulate the desired outcome after cutting and then solve for the cut paths required to obtain this outcome.
- the cutting tool is a sagittal saw with a planar saw blade that extends distally from a drive mechanism that moves in an oscillatory, back-and-forth pattern in a plane in which the blade is aligned
- the software could represent the cuts as a sequence of planes that intersect the 3D model.
- the resultant cross-sections of the clipped model can be used to assess how the cutting tool (sagittal saw here) should be controlled/commanded to produce such outcomes.
- the desired outcome may be flat surfaces represented as cross-sections of the 3D model, as shown in FIG. 1.
- a series of clips may be desired to remove anatomy (bone), for instance a desired resection could be executed with one or more separate planar clips.
- clips need not be planer; they could be curved, etc. Therefore, cut paths need not be straight lines per se, they could be curved line(s), formed by two straight or curved lines that intersect/touch to form an abrupt change in direction at a vertex, etc.
- CT scan imaging does not generally capture soft-tissue structures like ligaments, making pre-operative cut planning difficult, for example to avoid the soft tissue area.
- soft-tissue manipulations may be needed, and the position of resultant cuts may differ than those originally anticipated.
- a surgeon may find that anatomy (such as a knee) is improperly tensioned during trialing after the planned cuts have been executed, requiring new cuts that have not been pre-planned.
- the pre-planned cut area has no knowledge of the bone geometry, which can be obtained only after an implant is virtually placed on the bone.
- Dynamic planning to address this situation can include defining a clip, reordering surface points, creating a cut boundary, and generating the new cut path, for instance.
- FIG. 2A depicts example virtual boundaries (202, 204, 206, 208, 210, 212) that correspond to selected implants (214). The boundaries are not patient-specific or dynamic but programmed offline.
- FIG. 2B depicts a planning screen for virtual implant placement. The surgeon is able to manipulate the position of the implants (220, 222, 224, 226, 228, 230) on the one model as shown.
- FIG. 2A depicts example virtual boundaries (202, 204, 206, 208, 210, 212) that correspond to selected implants (214). The boundaries are not patient-specific or dynamic but programmed offline.
- FIG. 2B depicts a planning screen for virtual implant placement. The surgeon is able to manipulate the position of the implants (220, 222, 224, 226, 228, 230) on the one model as shown.
- FIG. 2C depicts an example of necessary clips (240, 242, 244) to remove bone to properly fit an implant 246.
- a generic implant does not fit perfectly and there are some areas (240, 242, 244) adjacent to the implant 246 that may also need to be clipped.
- FIG. 3 depicts an example illustrating critical soft tissue (a patellar tendon in this example) that may be encountered intraoperatively that the cutting tool must avoid during cutting. Boundaries protect patient anatomy by managing the proximity of the cutting tool to such structures.
- a boundary in practice represents the furthest bone extremity beyond which it is generally not desired for the blade to cut. In the noted practice, the boundary is determined by the surgeon virtually placing an implant on the bone model - the implant can in theory have any shape.
- a limitation to the current state of the art is that implants are poor approximations of actual patient anatomy.
- the implant periphery for example, does not represent the actual patient-specific bone boundary.
- generic implants do not achieve perfect coverage of the resected bone, and therefore using them to define cut path boundaries is not optimal.
- a challenge of creating dynamic cut path boundaries relates to how 3D shapes are rendered by image processing software.
- 3D computer graphics and image processing software providers use a mesh of flat, multi-sided shapes (such as triangles or other polygons) placed together to represent 3D images.
- Graphics rendering software often adds colors and textures to these polygons to give the final image a realistic appearance.
- the size and number of polygons used to represent a curved object will dictate how smooth and accurate it appears; the smaller and more numerous the polygons, then the more smooth and realistic the object will appear to a viewer.
- many of these rendering tools are designed for optimal 3D rendering rather than, for example, data manipulations such as those for operative planning. FIG.
- FIG. 6 depicts an example of a 3D rendered model of a head.
- 602 depicts a front view of the head
- 604 depicts a front isometric view of the head
- 606 depicts a close-up of a region 608 of the head at the bridge of the nose.
- Polygons (triangles in this example) used in rendering the head are clearly shown in 606. These are relatively small compared to the polygons used in rendering the head as shown in 602.
- a problem with off-the-shelf 3D image rendering software is that it is not well suited for data manipulations required for many surgical applications, specifically, and by way of non-limiting example, dynamically defining bone boundaries for cut path generating algorithms.
- 3D rendering software does not carry useful information when converting 3D image data into a two-dimensional (2D) space. Such conversion may be desired for defining bone boundaries for cut path generation algorithms in which a 3D rendering of a bone (or other anatomy) to be resected is to be processed to provide an accurate 2D cross-section of the bone in a desired plane. This cross-section, and particularly the periphery thereof, is important for clinical and other reasons, for instance to provide a boundary for cut path generation determination. It is not intuitive that 3D rendering software provide a 2D rendering of the 3D object based on an arbitrarily positioned plane through the 3D model.
- a computed tomography (CT) scan (or other advanced imaging output) is one of the pre-operative inputs to an example surgical workflow to incorporate aspects described herein.
- CT imaging by way of example, a series of 2D images is constructed into a 3D representation/model, as shown in FIG. 5 in which a CT environment captures scan slices (cross-sections) 502.
- Example operative planning software renders 3D objects as described above using a polygon mesh.
- a 3D model is conceptually clipped with one or more clips (e.g. plane(s) in examples discussed herein but the clips need not be planer) to render resected surface(s).
- Clipping with a plane is analogous to planar cutting with a sagittal saw.
- the periphery of such a resected surface is the 3D model boundary or edge, which represents the periphery of the anatomy. The features of this periphery are critical for generating tool paths.
- the head is a 2D presentation of the 3D object. Because it is a 2D presentation, depth information is not captured when moving in a direction (say horizontally left or right) away from a current point on the surface of the head. For instance, if moving horizontally across the periphery of the 3D rendered model, the next ordered point, or “next-point” may not be the next closest surface point in proximity to the current point in the direction of interest.
- 3D rendering software displays 3D objects in a 2D plane (a display), so the next point in a given direction may be a point that is not the next closest point in that direction on the periphery.
- the image processing software prioritizes point ordering for rendering 3D objects rather than for manipulations of the boundaries of clipped models.
- the edge of the plane will first touch the nose at some initial point.
- the next point, of the model, that the plane touches as it travels into the model may be on the right side of the nose, followed by a next point on the left side of the nose.
- points, of those that define the model, on both sides of the starting point will be encountered the deeper into the image the plane extends.
- a model 702 with a continuous path around the periphery of the object shown is a model 702 with a continuous path around the periphery of the object.
- the continuous path 704 in this example circles all of the way around the object, though a continuous path need not extend all of the way around an object.
- the path 704 is important in that it identifies the periphery /boundary points of the model that sit on (or adjacent, for instance within some threshold distance) the plane if the plane is intersected with the model to define a clip.
- the path 704 can also delineate a cut path around the object. A surgeon could cut along this path around the exterior surface of the object, for instance to perform a resection.
- a virtual ‘plane’ may be passed through the model, i.e. to clip the model using image data rendering software.
- the image processing software might render the planar resection of the 3D object on a 2D display and identify the points around the periphery, but these are unlikely to be ordered in the order of a continuous path (e.g. clockwise or counterclockwise fashion) around the object, meaning ordered in a sequence that traces a continuous path in one direction around the periphery of the model. For example, one cell might render the front portion of the object and the next cell a rear portion.
- FIGS. 8A-8B conceptually depict examples of point misordering when clipping a model.
- 802 is a plane (simulating a cutting tool) to clip into a bone 804.
- a cross-section of bone 804 is shown from an overhead perspective and the bone 804 is a perfect cylinder at the cross-section, in this example.
- the plane is to clip in the direction shown by the arrow 806.
- the clip would be used to identify tens, hundreds, thousands, or millions of points, that define the model, on the periphery of the bone surface, though only seven points, 1-7, on the periphery of the bone surface are labeled in this illustration for ease of understanding.
- Point 1 is the initial point of contact.
- Point 2 is the next point encountered, followed by point 3, etc.
- Polygons can be formed from these vertices to present a 3D model. For instance, one cell might be a triangle defined by points ⁇ 4, 5, 6 ⁇ .
- 3D rendering software does not provide such useful information to identify the order of points in such a manner; looking at a 2D rendering (such as 602 of FIG. 6), the next pixel rendered when moving left or right from a point might be farther in the background than a next point. Additionally or alternatively, each next-closest point in a depth direction might be on another side of the object (compare point 4 with point 5 in FIG. 8A for example). If a surgeon were cutting with a list of these points in the order shown, the surgeon would cut a little at point 1, then point 2, then point 3, etc. Eventually the cuts would connect but this is not ideal as the cuts are separate cuts rather than a continuous cut between consecutively, adjacent points.
- FIG. 8B a similar situation is presented except that the bone 812 is no longer perfectly cylindrical. Again, the plane 810 is to move in the direction indicated by arrow 814. The labeled points 1, . . ., 6 are encountered in the order labeled. It is seen that because of notch 816, point 5 is ordered before point 6 even though a cutting tool moving along the periphery from point 4 to point 5 would encounter point 6 before point 5. In this example, defining the cut to start at point 3 and end at point 5 should properly order the points ⁇ 3, 2, 1, 4, 6, 5 ⁇ to form a continuous path.
- the labeled points would need to be ordered such that they form a sequential progression that travels (at least partially) around the object, however image rendering software does not provide that functionality. While it might provide a collection of the points that are along the periphery, the order of those would be arbitrary and would not indicate a proper order in terms of walk along/around the object in a sequence of consecutive points to form a continuous path in which each next point to travel to is the next point ahead in the path.
- a sorting algorithm is used to order the points on the periphery of a 3D model.
- the sorted elements may be ordered such that if we sample points in one direction or another (e.g. clockwise or counter-clockwise in the example of FIGS. 8 A, 8B) along the periphery, they are ordered in ascending or descending increments.
- a toolpath represents a series of ordered coordinates through which a tool (for example, a cutting tool like a sagittal saw) may travel to perform a function - it is intuitive that ordering the anatomical model points would simplify the challenge of developing an algorithm that generates toolpaths.
- a data manipulation is therefore provided to order a collection of surface points of the 3D model so that their order is informative to a cut path generating algorithm.
- the sorting algorithm when considering a current point can look at each of one or more candidate next points that are on the periphery of the model and determine a true next point (to travel to from the current point) by considering which next point shares an edge with the current point. Unless the current point is the starting point, it was reached from one vertex with which it shares an edge, and it shares another edge with another vertex of the collection. At the starting point, the direction of travel could be in one direction or another (e.g.
- the cut is a partial cut - from a starting point to an ending point that is not the starting point, then there are two candidate starting points - the two ‘end’ vertices, i.e. those that share an edge with just one other point on the periphery line of the model identified from the clip.
- an algorithm that dynamically solves for the actual anatomy boundary as an input to a cut path or boundary algorithm, while conventional approaches associate the boundary with implants pre-operatively.
- Current approaches rely on predefined geometries based on the implant, and can therefore be improved according to aspects described herein to generate patient-specific geometries.
- FIGS. 10-16 depict additional examples to illustrate aspects described herein.
- the examples use a perfect sphere as the 3D model though it is understood that the model of patient anatomy would likely never be perfectly spherical.
- the model may be of a bone or portion thereof, for instance.
- the examples also use planar clips for simplicity though it is understood that clips need not be planer; they could be any desired shape.
- a top portion of the model 1002 is to be clipped.
- a virtual plane 1004 that defines the clip into the sphere is shown that may be moved toward the model 1002 and intersected with the model 1002 partially or completely through the model. In this example, the resection is to remove completely a top portion of the object 1002.
- the 3D model 1002 has a surface/periphery to it, which is defined by a collection of points/coordinates.
- the surface/periphery /boundary of the model 1002 represents the surface/periphery /boundary of the patient anatomy.
- the plane 1004 represents a blade that will slice around the anatomy (e.g. into the sphere to remove the top).
- An edge 1008 (forming a circle in the figure) represents the periphery of that clipped surface, which are points on the surface/boundary/periphery of the 3D model.
- the edge can be defined by a set of points on the 3D model’s surface that form a path along the periphery of the 3D model and correspond to points on the patient anatomy. That set of points is a subset of the collection of points that define the entire surface of the model.
- 3D rendering software may produce the set of points along that path, but the points will not be in any meaningful order. Aspects described herein order them.
- the edge 1008 representing a path in FIG. 11 is what a surgeon/robot could follow to make a proper cut.
- the portion of clipped surface 1006 contained within the edge 1008 represents bone interior, for instance.
- FIG. 12 depicts another example, this time with two clips (both planer).
- the two clips are made virtually by planes 1004, 1005 to define two clipped surfaces, 1006 and 1010.
- the edges 1008 and 1012 are the cut paths.
- 3D rendering software can produce sets of points along those paths but not in a particular, useful order. Aspects described herein can order them. In an example, this is done in two sets of ordered points - one for the cut path 1008 and one for the cut path 1012. In practice, either path 1012 or 1008 may be the first cut and the path will be longer than depicted and circle back to itself.
- the second of the cuts (to form the second surface) would therefore define an edge 1014 shared by both surfaces, which is the intersection of the clips.
- FIG. 13 depicts yet another example of two clips 1304, 1306 that are cut into the model 1302 but neither of which pass completely through it.
- FIG. 14 depicts the corresponding clipped surface result, with two clipped surfaces (surface 1310 and surface 1312) formed by the clipping.
- the edges 1314, 1316 on the periphery/surface/boundary of the sphere 1302 form the cut paths.
- the intersection 1318 of the two clips is produced from the surgeon/robot cutting into the sphere.
- the clipping forms clipped surface(s) of the 3D model that intersect the surface/periphery /boundary of the 3D model.
- Each clipped surface intersects (e.g. ‘comprises at least one edge terminating at’) the surface of the 3D model.
- all of the clipped surfaces extend to the periphery/surface/boundary of the 3D model itself. In FIG. 15 discussed below, for instance, these intersections are the edges 1520, 1522, 1524, 1526.
- a process can obtain a set of points, of the collection of points that define the surface of the model, that are on or adjacent (within a threshold distance of) the intersection(s) of the clipped surface(s) and the surface/periphery /boundary of the 3D model.
- the software can take the two software-defined clip(s) and identify the points that form the edges. But the 3D model is not made of infinite points and so the software can find the points that are closest (e.g. ‘on or adjacent (within a threshold distance)’) to the true intersection of the model and clipped surfaces depicted as the edges. This produces the set of points that form the edges, though not in a convenient order.
- FIG. 15 shows an example involving three clips. Three clipped surfaces are formed - surface 1528, surface 1530, and a third that is not visible in this view.
- the edges 1520, 1522, 1524, 1526 on the periphery of the 3D model 1502 are the intersections of the clips with the periphery/ surf ace of the model 1502 and are formed by the points that aspects described herein will obtain and order into a cut path.
- Edge 1532 is an interface between the clipped surfaces 1528 and 1530.
- FIG. 16 depicts a virtual plane (1604) that simulates a blade coming generally downward to shave bone 1603 so that an implant 1602 fits.
- the portion/surface 1605 is bone interior that is being exposed as a result of the clip. Aspects described herein can order the points along the edges 1606 and 1608 in FIG. 16 to define the cut paths to form the two surfaces (one below the implant and surface 1605 adjacent the implant).
- the method includes obtaining a three-dimensional (3D) model of a patient anatomy, the 3D model comprising a collection of points defining a surface/periphery /boundary of the 3D model, the surface/periphery /boundary of the 3D model representing a periphery /boundary/surface of the patient anatomy; based on clipping the 3D model, the clipping forming clipped surface(s) of the 3D model that intersect the surface/periphery /boundary of the 3D model, obtaining a set of points, of the collection of points, that are on or adjacent (within a threshold distance of) the intersection(s) of the clipped surface(s) and the surface/periphery /boundary of the 3D model, the set of points forming a path along the surface/periphery /boundary of the 3D model and corresponding to points on the patient anatomy; determining an ordering of the set of points, the ordering specify
- the obtained set of points comprises the points, of the set of points, with no ordering specified in terms of the sequence from the first point to the last point in the continuous path.
- the obtained set of points is obtained without a specified ordering of the points.
- the obtained set of points is obtained with an order that indicates two points of the set, having one or more other points of the set between the two points along the periphery of the 3D model by, being sequentially-prior, in the order, to the one or more other points.
- the ordering of the set of points identifies a contiguous path on the periphery of the patient anatomy identifying step-wise traversal around the patient anatomy in a direction.
- the method further includes receiving from a user a definition of one or more clips to clip the 3D model. In embodiments, the method further includes obtaining a definition of one or more clips to clip the 3D model and determining the set of points by clipping the 3D model with the defined one or more clips. In embodiments, the clipping is defined by one or more clips defined by a user.
- the set of points comprises at least 5 points.
- the performing processing comprise outputting the ordering of the set of points as (or to facilitate generation of) a toolpath/cut path along the periphery of the patient anatomy.
- Processes described herein may be performed singly or collectively by one or more computer systems, such as one or more systems that are, or are in communication with, a 3D graphics rendering system/computer, a medical imaging system, a camera system, and/or a tracking system for tracking patient anatomy, as examples.
- FIG. 9 depicts one example of such a computer system and associated devices to incorporate and/or use aspects described herein.
- a computer system may also be referred to herein as a data processing device/system, computing device/system/node, or simply a computer.
- the computer system may be based on one or more of various system architectures and/or instruction set architectures, such as those offered by Intel Corporation (Santa Clara, California, USA) or ARM Holdings pic (Cambridge, England, United Kingdom), as examples.
- FIG. 9 shows a computer system 900 in communication with external device(s) 912.
- Computer system 900 includes one or more processor(s) 902, for instance central processing unit(s) (CPUs).
- a processor can include functional components used in the execution of instructions, such as functional components to fetch program instructions from locations such as cache or main memory, decode program instructions, and execute program instructions, access memory for instruction execution, and write results of the executed instructions.
- a processor 902 can also include register(s) to be used by one or more of the functional components.
- Computer system 900 also includes memory 904, input/output (VO) devices 908, and VO interfaces 910, which may be coupled to processor(s) 902 and each other via one or more buses and/or other connections.
- VO input/output
- Bus connections represent one or more of any of several types of bus structures, including a memory bus or memory controller, a peripheral bus, an accelerated graphics port, and a processor or local bus using any of a variety of bus architectures.
- bus architectures include the Industry Standard Architecture (ISA), the Micro Channel Architecture (MCA), the Enhanced ISA (EISA), the Video Electronics Standards Association (VESA) local bus, and the Peripheral Component Interconnect (PCI).
- Memory 904 can be or include main or system memory (e.g. Random Access Memory) used in the execution of program instructions, storage device(s) such as hard drive(s), flash media, or optical media as examples, and/or cache memory, as examples.
- Memory 904 can include, for instance, a cache, such as a shared cache, which may be coupled to local caches (examples include LI cache, L2 cache, etc.) of processor(s) 902.
- memory 904 may be or include at least one computer program product having a set (e.g., at least one) of program modules, instructions, code or the like that is/are configured to carry out functions of embodiments described herein when executed by one or more processors.
- Memory 904 can store an operating system 905 and other computer programs 906, such as one or more computer programs/applications that execute to perform aspects described herein.
- programs/applications can include computer readable program instructions that may be configured to carry out functions of embodiments of aspects described herein.
- Examples of EO devices 908 include but are not limited to microphones, speakers, Global Positioning System (GPS) devices, RGB and/or IR cameras, lights, accelerometers, gyroscopes, magnetometers, sensor devices configured to sense light, proximity, heart rate, body and/or ambient temperature, blood pressure, and/or skin resistance, registration probes and activity monitors.
- GPS Global Positioning System
- An I/O device may be incorporated into the computer system as shown, though in some embodiments an I/O device may be regarded as an external device (912) coupled to the computer system through one or more EO interfaces 910.
- Computer system 900 may communicate with one or more external devices 912 via one or more EO interfaces 910.
- Example external devices include a keyboard, a pointing device, a display, and/or any other devices that enable a user to interact with computer system 900.
- Other example external devices include any device that enables computer system 900 to communicate with one or more other computing systems or peripheral devices such as a printer.
- a network interface/ adapter is an example I/O interface that enables computer system 900 to communicate with one or more networks, such as a local area network (LAN), a general wide area network (WAN), and/or a public network (e.g., the Internet), providing communication with other computing devices or systems, storage devices, or the like.
- LAN local area network
- WAN wide area network
- public network e.g., the Internet
- Ethernet-based (such as Wi-Fi) interfaces and Bluetooth® adapters are just examples of the currently available types of network adapters used in computer systems (BLUETOOTH is a registered trademark of Bluetooth SIG, Inc., Kirkland, Washington, U.S.A.).
- the communication between I/O interfaces 910 and external devices 912 can occur across wired and/or wireless communications link(s) 911, such as Ethernet-based wired or wireless connections.
- Example wireless connections include cellular, Wi-Fi, Bluetooth®, proximity-based, near-field, or other types of wireless connections. More generally, communications link(s) 911 may be any appropriate wireless and/or wired communication link(s) for communicating data.
- Particular external device(s) 912 may include one or more data storage devices, which may store one or more programs, one or more computer readable program instructions, and/or data, etc.
- Computer system 900 may include and/or be coupled to and in communication with (e.g. as an external device of the computer system) removable/non -removable, volatile/non -volatile computer system storage media.
- a non-removable, non-volatile magnetic media typically called a “hard drive”
- a magnetic disk drive for reading from and writing to a removable, non-volatile magnetic disk (e.g., a “floppy disk”)
- an optical disk drive for reading from or writing to a removable, non-volatile optical disk, such as a CD-ROM, DVD-ROM or other optical media.
- Computer system 900 may be operational with numerous other general purpose or special purpose computing system environments or configurations.
- Computer system 900 may take any of various forms, well-known examples of which include, but are not limited to, personal computer (PC) system(s), server computer system(s), such as messaging server(s), thin client(s), thick client(s), workstation(s), laptop(s), handheld device(s), mobile device(s)/computer(s) such as smartphone(s), tablet(s), and wearable device(s), multiprocessor system(s), microprocessor-based system(s), telephony device(s), network appliance(s) (such as edge appliance(s)), virtualization device(s), storage controller(s), set top box(es), programmable consumer electronic(s), network PC(s), minicomputer system(s), mainframe computer system(s), and distributed cloud computing environment(s) that include any of the above systems or devices, and the like.
- PC personal computer
- server computer system(s) such as messaging server(s), thin client(s), thick client(
- aspects of the present invention may be a system, a method, and/or a computer program product, any of which may be configured to perform or facilitate aspects described herein.
- aspects of the present invention may take the form of a computer program product, which may be embodied as computer readable medium(s).
- a computer readable medium may be a tangible storage device/medium having computer readable program code/instructions stored thereon.
- Example computer readable medium(s) include, but are not limited to, electronic, magnetic, optical, or semiconductor storage devices or systems, or any combination of the foregoing.
- Example embodiments of a computer readable medium include a hard drive or other mass-storage device, an electrical connection having wires, random access memory (RAM), read-only memory (ROM), erasable-programmable read-only memory such as EPROM or flash memory, an optical fiber, a portable computer disk/diskette, such as a compact disc read-only memory (CD-ROM) or Digital Versatile Disc (DVD), an optical storage device, a magnetic storage device, or any combination of the foregoing.
- the computer readable medium may be readable by a processor, processing unit, or the like, to obtain data (e.g. instructions) from the medium for execution.
- a computer program product is or includes one or more computer readable media that includes/stores computer readable program code to provide and facilitate one or more aspects described herein.
- program instruction contained or stored in/on a computer readable medium can be obtained and executed by any of various suitable components such as a processor of a computer system to cause the computer system to behave and function in a particular manner.
- Such program instructions for carrying out operations to perform, achieve, or facilitate aspects described herein may be written in, or compiled from code written in, any desired programming language.
- such programming language includes object-oriented and/or procedural programming languages such as C, C++, C#, Java, etc.
- Program code can include one or more program instructions obtained for execution by one or more processors.
- Computer program instructions may be provided to one or more processors of, e.g., one or more computer systems, to produce a machine, such that the program instructions, when executed by the one or more processors, perform, achieve, or facilitate aspects of the present invention, such as actions or functions described in flowcharts and/or block diagrams described herein.
- each block, or combinations of blocks, of the flowchart illustrations and/or block diagrams depicted and described herein can be implemented, in some embodiments, by computer program instructions.
Landscapes
- Engineering & Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Surgery (AREA)
- Public Health (AREA)
- Life Sciences & Earth Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Physics & Mathematics (AREA)
- Nuclear Medicine, Radiotherapy & Molecular Imaging (AREA)
- Software Systems (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Heart & Thoracic Surgery (AREA)
- Molecular Biology (AREA)
- Veterinary Medicine (AREA)
- Animal Behavior & Ethology (AREA)
- Robotics (AREA)
- Epidemiology (AREA)
- General Engineering & Computer Science (AREA)
- Primary Health Care (AREA)
- Computer Hardware Design (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Pathology (AREA)
- Data Mining & Analysis (AREA)
- Urology & Nephrology (AREA)
- Geometry (AREA)
- Radar, Positioning & Navigation (AREA)
- Remote Sensing (AREA)
- Processing Or Creating Images (AREA)
- Apparatus For Radiation Diagnosis (AREA)
- Image Generation (AREA)
- Magnetic Resonance Imaging Apparatus (AREA)
Abstract
Description
Claims
Priority Applications (6)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CA3244635A CA3244635A1 (en) | 2022-01-06 | 2023-01-04 | Data optimization methods for dynamic cut boundary |
| EP23737703.1A EP4460254A4 (en) | 2022-01-06 | 2023-01-04 | DATA OPTIMIZATION METHOD FOR DYNAMIC INTERFACE LIMITS |
| JP2024540958A JP2025503621A (en) | 2022-01-06 | 2023-01-04 | Data optimization method for dynamic cutting boundaries |
| KR1020247026059A KR20240141258A (en) | 2022-01-06 | 2023-01-04 | Data optimization method for dynamic cutting boundaries |
| AU2023204773A AU2023204773A1 (en) | 2022-01-06 | 2023-01-04 | Data optimization methods for dynamic cut boundary |
| US18/763,095 US20240378816A1 (en) | 2022-01-06 | 2024-07-03 | Data optimization methods for dynamic cut boundary |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US202263266471P | 2022-01-06 | 2022-01-06 | |
| US63/266,471 | 2022-01-06 |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| US18/763,095 Continuation US20240378816A1 (en) | 2022-01-06 | 2024-07-03 | Data optimization methods for dynamic cut boundary |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2023133390A1 true WO2023133390A1 (en) | 2023-07-13 |
Family
ID=87074250
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/US2023/060066 Ceased WO2023133390A1 (en) | 2022-01-06 | 2023-01-04 | Data optimization methods for dynamic cut boundary |
Country Status (7)
| Country | Link |
|---|---|
| US (1) | US20240378816A1 (en) |
| EP (1) | EP4460254A4 (en) |
| JP (1) | JP2025503621A (en) |
| KR (1) | KR20240141258A (en) |
| AU (1) | AU2023204773A1 (en) |
| CA (1) | CA3244635A1 (en) |
| WO (1) | WO2023133390A1 (en) |
Cited By (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20250066935A (en) * | 2023-11-07 | 2025-05-14 | 큐렉소 주식회사 | Method for planning cutting path for surgical robot, and apparatus thereof |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20060094951A1 (en) * | 2003-06-11 | 2006-05-04 | David Dean | Computer-aided-design of skeletal implants |
| US20100153075A1 (en) * | 2005-05-20 | 2010-06-17 | Orametrix, Inc. | Method and system for finding tooth features on a virtual three-dimensional model |
| US20200138518A1 (en) * | 2017-01-16 | 2020-05-07 | Philipp K. Lang | Optical guidance for surgical, medical, and dental procedures |
| US20210192759A1 (en) * | 2018-01-29 | 2021-06-24 | Philipp K. Lang | Augmented Reality Guidance for Orthopedic and Other Surgical Procedures |
Family Cites Families (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8560047B2 (en) * | 2006-06-16 | 2013-10-15 | Board Of Regents Of The University Of Nebraska | Method and apparatus for computer aided surgery |
| EP3581121A1 (en) * | 2018-06-15 | 2019-12-18 | MAKO Surgical Corp. | Techniques for patient-specific milling path generation |
| US11759283B2 (en) * | 2019-12-30 | 2023-09-19 | Cilag Gmbh International | Surgical systems for generating three dimensional constructs of anatomical organs and coupling identified anatomical structures thereto |
| EP3886056B1 (en) * | 2020-03-16 | 2025-04-02 | Stryker Australia PTY LTD | Automated cut planning for removal of diseased regions |
-
2023
- 2023-01-04 EP EP23737703.1A patent/EP4460254A4/en active Pending
- 2023-01-04 AU AU2023204773A patent/AU2023204773A1/en active Pending
- 2023-01-04 KR KR1020247026059A patent/KR20240141258A/en active Pending
- 2023-01-04 WO PCT/US2023/060066 patent/WO2023133390A1/en not_active Ceased
- 2023-01-04 JP JP2024540958A patent/JP2025503621A/en active Pending
- 2023-01-04 CA CA3244635A patent/CA3244635A1/en active Pending
-
2024
- 2024-07-03 US US18/763,095 patent/US20240378816A1/en active Pending
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20060094951A1 (en) * | 2003-06-11 | 2006-05-04 | David Dean | Computer-aided-design of skeletal implants |
| US20100153075A1 (en) * | 2005-05-20 | 2010-06-17 | Orametrix, Inc. | Method and system for finding tooth features on a virtual three-dimensional model |
| US20200138518A1 (en) * | 2017-01-16 | 2020-05-07 | Philipp K. Lang | Optical guidance for surgical, medical, and dental procedures |
| US20210192759A1 (en) * | 2018-01-29 | 2021-06-24 | Philipp K. Lang | Augmented Reality Guidance for Orthopedic and Other Surgical Procedures |
Non-Patent Citations (1)
| Title |
|---|
| See also references of EP4460254A4 * |
Cited By (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR20250066935A (en) * | 2023-11-07 | 2025-05-14 | 큐렉소 주식회사 | Method for planning cutting path for surgical robot, and apparatus thereof |
| KR102807095B1 (en) * | 2023-11-07 | 2025-05-15 | 큐렉소 주식회사 | Method for planning cutting path for surgical robot, and apparatus thereof |
Also Published As
| Publication number | Publication date |
|---|---|
| AU2023204773A1 (en) | 2024-08-08 |
| US20240378816A1 (en) | 2024-11-14 |
| EP4460254A4 (en) | 2025-12-10 |
| EP4460254A1 (en) | 2024-11-13 |
| KR20240141258A (en) | 2024-09-26 |
| JP2025503621A (en) | 2025-02-04 |
| CA3244635A1 (en) | 2023-07-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US20240382261A1 (en) | Surgical Systems And Methods For Facilitating Ad-Hoc Intraoperative Planning Of Surgical Procedures | |
| US20260111096A1 (en) | Method and System for Planning Implant Component Position | |
| US12303207B2 (en) | Automated planning of shoulder stability enhancement surgeries | |
| AU2021267483B2 (en) | Mixed reality-based screw trajectory guidance | |
| US20240378816A1 (en) | Data optimization methods for dynamic cut boundary | |
| CN115222887A (en) | A design method for face-based craniofacial skeletal surgery planning | |
| EP2384714A1 (en) | A method for defining working space limits in robotic surgery | |
| Preim et al. | 3D-Interaction Techniques for Planning of Oncologic Soft Tissue Operations. | |
| Neubauer et al. | Advanced virtual corrective osteotomy | |
| JP7172086B2 (en) | Surgery simulation device and surgery simulation program | |
| US20240197401A1 (en) | Method for designing patient-specific implant and guidance, program and apparatus therefor | |
| Wang et al. | Improved simulation of virtual bone drilling surgery with a voxel-based model | |
| Pinto et al. | Haptic simulator for training of total knee replacement | |
| Leu et al. | Virtual Bone Surgery | |
| Elsamnah et al. | Medical navigation based on coloured markers for image-guided surgery | |
| CN118942646A (en) | Adjustable geometry controller for 3D surgical planning based on multi-planar reconstruction | |
| CN118453113A (en) | Surgical simulation method, device, computer equipment and storage medium | |
| Pintilie et al. | Interactive cutting of the skull for craniofacial surgical planning | |
| Leu et al. | Virtual Bone Surgery | |
| Rendering | monitor. The following sections detail the design and development of the bone-sawing simulator. A. Graphic Rendering For virtual surgery, high visualisation quality and real-time display are essential for a realistic simulation. This | |
| HK1259201A1 (en) | Ultra-wideband positioning for wireless ultrasound tracking and communication |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 23737703 Country of ref document: EP Kind code of ref document: A1 |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2024540958 Country of ref document: JP |
|
| WWE | Wipo information: entry into national phase |
Ref document number: AU23204773 Country of ref document: AU |
|
| ENP | Entry into the national phase |
Ref document number: 20247026059 Country of ref document: KR Kind code of ref document: A |
|
| WWE | Wipo information: entry into national phase |
Ref document number: 2023737703 Country of ref document: EP |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| ENP | Entry into the national phase |
Ref document number: 2023204773 Country of ref document: AU Date of ref document: 20230104 Kind code of ref document: A |
|
| ENP | Entry into the national phase |
Ref document number: 2023737703 Country of ref document: EP Effective date: 20240806 |