Extension of virtual models for surgical navigation
By linking and smoothing virtual models of adjacent vertebrae to fill discontinuities, the method addresses the challenge of unclear boundaries in the central canal, improving surgical navigation accuracy.
Patent Information
- Application Number
- PCT/IB2025/055628
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-05-31
- Filing Date
- 2025-05-31
- Publication Date
- 2025-12-04
AI Technical Summary
Conventional segmentation-based methods struggle to create accurate virtual models of anatomical structures with unclear boundaries, such as the central canal of the spine, due to the presence of soft tissues and gaps that lack clear boundaries in medical images.
A method for generating a unified virtual model of the central canal by linking points from adjacent vertebrae's virtual models, using segmentation to identify edges and connecting them in a known coordinate system to fill discontinuities, and smoothing the resulting model.
The method creates a more comprehensive virtual model of the central canal, enhancing the accuracy of surgical navigation by addressing gaps and soft tissue boundaries, thereby improving the tracking and guidance of surgical instruments.
Smart Images

Figure IB2025055628_04122025_PF_FP_ABST
Abstract
Description
EXTENSION OF VIRTUAL MODELS FOR SURGICAL NAVIGATIONRELATED APPLICATIONS
[0001] The present application claims priority to and all the benefits of U.S. Provisional Patent Application No. 63 / 654,889, filed on May 31, 2024, the entire contents of which is expressly incorporated herein by reference.BACKGROUND
[0002] Surgical navigation systems assist in surgical procedures by tracking the poses of surgical instruments relative to anatomical structures of interest, including anatomical structures to be avoided. Such systems often function by positioning virtual models associated with the anatomy of interest in a known coordinate system in which the poses of the surgical instruments are also tracked. When tracking data indicates a surgical instrument is approaching the virtual model associated with an anatomical structure to be avoided in the known coordinate system, the surgical navigation system triggers an action intended to reduce or prevent contact between the associated anatomical structure and the surgical instrument.
[0003] The virtual models of anatomical structures are frequently developed from medical images of the structures using segmentation. Segmentation functions to identify boundaries of anatomical structures depicted in the medical images, such as bones, organs, tumors, nerves, and vascular structures. Virtual models of the structures are then generated from the medical images according to the identified boundaries. While segmentation works reasonably well for creating virtual models of anatomical structures with well-defined boundaries, certain anatomical structures include portions that lack clear boundaries and are thus difficult to model using conventional segmentation-based methods.SUMMARY
[0004] This Summary introduces a selection of concepts in a simplified form that are further described in the Detailed Description below. This Summary is notintended to limit the scope of the claimed subject matter nor identify key features or essential features of the claimed subject matter.
[0005] According to a first aspect, a surgical navigation system for tracking a surgical instrument relative to a central canal of a spine of a patient is provided. The surgical navigation system includes a localizer configured generate data indicative of a pose of the surgical instrument relative first and second vertebra of the spine of the patient in a known coordinate system, and a controller in communication with the localizer. The controller is configured to receive a first virtual model representing an inferior edge of a first central canal portion defined by the first vertebra, receive a second virtual model representing a superior edge of a second central canal portion defined by the second vertebra based on the image data, link first points of the first virtual model with second points of the second virtual model, define a virtual boundary in the known coordinate system that is representative of a portion of the central canal of the spine of the patient disposed between the first and second vertebra based on the linked points, and track a pose of the surgical instrument relative to the virtual boundary in the known coordinate system based on the localizer data.
[0006] According to a second aspect, a method of tracking a surgical instrument relative to a virtual model representative of a central canal of a spine of a patient is provided. The method includes receiving a first virtual model representing an inferior edge of a first central canal portion defined by a first vertebra of the spine, and receiving a second virtual model representing a superior edge of a second central canal portion defined by a second vertebra of the spine. The method further includes linking first points of the first virtual model with second points of the second virtual model, and defining a virtual boundary in a known coordinate system, the virtual boundary being associated with a portion of the central canal of the spine of the patient disposed between the first and second vertebra based on the linked points. Finally, the method includes tracking a pose of the surgical instrument relative to the virtual boundary, such as in the known coordinate system and / or based on data generated by and / or received from a localizer, the data indicative of a pose of the surgical instrument relative the first and second vertebra of the spine of the patient in the known coordinate system.
[0007] According to a third aspect, a method of creating a virtual model representative of a central canal of a spine of a patient is provided. The method includes receiving a first virtual model representing an inferior edge of a first central canalportion defined by a first vertebra of the spine, receiving a second virtual model representing a superior edge of a second central canal portion defined by a second vertebra of the spine, identifying first points of the first virtual model that define the inferior edge of the first central canal portion, identifying second points of the second virtual model that define the superior edge of the second central canal portion, and generating a unified virtual model representative of a portion of the central canal of the spine of the patient disposed between the first and second vertebra by linking the first points of the first virtual model with the second points of the second virtual model.
[0008] According to a fourth aspect, a system for creating a virtual model representative of a central canal of a spine of a patient is provided. The system includes at least one memory device storing computer-executable instructions and one or more processors configured to execute the instructions. The instructions, when executed by the one or more processors, are configured to cause the one or more processors to receive a first virtual model representing an inferior edge of a first central canal portion defined by a first vertebra of the spine, and receive a second virtual model representing a superior edge of a second central canal portion defined by a second vertebra of the spine. The instructions are further configured upon execution to cause the one or more processors to identify first points of the first virtual model that define the inferior edge of the first central canal portion, identify second points of the second virtual model that define the superior edge of the second central canal portion, and generate a unified virtual model representative of a portion of the central canal of the spine of the patient disposed between the first and second vertebra by linking the first points of the first virtual model with the second points of the second virtual model.
[0009] According to a sixth aspect, a surgical navigation system for tracking a surgical instrument relative to an anatomical feature defined at least in part by first and second adjacent anatomical structures of a patient is provided. The surgical navigation system includes a localizer configured generate data indicative of a pose of the surgical instrument relative the first and second anatomical structures in a known coordinate system, and a controller in communication with the localizer. The controller is configured to receive a first virtual model representing an edge of the first anatomical structure that defines a first portion of the anatomical feature, receive a second virtual model representing an edge of the second anatomical structure that defines a second portion of the anatomical feature, link first points of the first virtual model with secondpoints of the second virtual model, define a virtual boundary in the known coordinate system that is representative of a portion of the anatomical feature disposed between the first and second anatomical structures based on the linked points, and track a pose of the surgical instrument relative to the virtual boundary in the known coordinate system based on the localizer data.
[0010] According to a seventh aspect, a method of tracking a surgical instrument relative to an anatomical feature defined at least in part by first and second adjacent anatomical structures of a patient is provided. The method includes receiving a first virtual model representing an edge of the first anatomical structure that defines a first portion of the anatomical feature, receiving a second virtual model representing an edge of the second anatomical structure that defines a second portion of the anatomical feature, linking the first points of the first virtual model with second points of the second virtual model, defining a virtual boundary in a known coordinate system that is representative of a portion of the anatomical feature disposed between the first and second anatomical structures based on the linked points, and tracking a pose of the surgical instrument relative to the virtual boundary, such as in the known coordinate system and / or based on data generated by and / or received from a localizer, the data indicative of a pose of the surgical instrument relative the first and second anatomical structures in the known coordinate system.
[0011] According to an eighth aspect, a system for creating a virtual model of an anatomical feature defined at least in part by first and second adjacent anatomical structures of a patient is provided. The system includes at least one memory device storing computer-executable instructions and one or more processors configured to execute the instructions. The instructions, when executed by the one or more processors, are configured to cause the one or more processors to receive a first virtual model representing an edge of the first anatomical structure that defines a first portion of the anatomical feature, receive a second virtual model representing an edge of the second anatomical structure that defines a second portion of the anatomical feature, identify first points of the first virtual model that define the edge of the first anatomical structure, identify second points of the second virtual model that define the edge of the second anatomical structure, and generate a unified virtual model representative of the anatomical feature by linking the first points of the first virtual model with the second points of the second virtual model.
[0012] According to a ninth aspect, a method of creating a virtual model of an anatomical feature defined at least in part by first and second adjacent anatomical structures of a patient is provided. The method includes receiving a first virtual model representing an edge of the first anatomical structure that defines a first portion of the anatomical feature, receiving a second virtual model representing an edge of the second anatomical structure that defines a second portion of the anatomical feature, identifying first points of the first virtual model that define the edge of the first anatomical structure, identifying second points of the second virtual model that define the edge of the second anatomical structure, and generating a unified virtual model representative of the anatomical feature by linking the first points of the first virtual model with the second points of the second virtual model.
[0013] Any of the above aspects can be combined in part or in whole with any other aspect. Any of the above aspects, whether combined in part or in whole, can be further combined with any of the following implementations, in full or in part.
[0014] In some implementations, the surgical navigation system may include additional elements to assist a user in tracking the surgical instrument relative to the patient. For example, the surgical navigation system may further include an alert module in communication with the controller. The controller may be configured to control the alert module based on the tracked pose of the surgical instrument relative to the virtual boundary. Additionally, the surgical navigation system may include a display in communication with the controller. The controller may be configured to cause the display to show the tracked pose of the surgical instrument relative to the virtual boundary.
[0015] In some implementations, the method may include segmenting received image data of the anatomical structures or spine to generate the virtual models. As such, in these implementations, the method may include classifying a first group of voxels of the image data as including bone and corresponding to the first central canal portion, and classifying a second group of voxels of the image data as including bone and corresponding to the second central canal portion. In such implementations, the first and second virtual models may be generated based on the classification of the first and second groups of voxels, respectively. In some implementations, the controller of the navigation system or the one or more processors of the system may be configured, such as upon execution of the computer-executable instructions, to generate the virtualmodels from received image data of the anatomical structures or spine by being configured to implement segmentation of the image data, such as described above.
[0016] In some implementations, linking the first points of the first virtual model with the second points of the second virtual model may include determining a distance between the points of each possible pair of one of the first points and one of the second points, and linking the points of the pair with the shortest distance to create a first link.
[0017] In some implementations, linking the first points of the first virtual model with the second points of the second virtual model may include locating a center of a shape defined by the first points, determining a radial position of each of the first points relative to the center of the shape, determining a radial position of each of the second points relative to the center of the shape, and linking the first points to the second points based on the radial positions of the first and second points. In some implementations, linking the first points to the second points based on the radial positions of the first and second points may include, for each of the first points, determining a difference between the radial position of the first point and the radial position of each of the second points, and linking the first point with the second point having the lowest difference relative to the first point. In some implementations, linking the first points of the first virtual model with the second points of the second virtual model may include determining a distance between each of the first points and each of the second points, and linking the first points with the second points based on the radial positions of the first and second points and the distances.
[0018] In some implementations, linking the first points of the first virtual model with the second points of the second virtual model may include identifying, as the first points, a plurality of points of the first virtual model that define the inferior edge of the first central canal portion, identifying, as the second points, a plurality of points of the second virtual model that define the superior edge of the second central canal portion, locating a center of a first shape defined by the first points, locating a center of a second shape defined by the second points, generating as a central axis a line passing through the center of the first shape and the center of the second shape, determining a radial position of each of the first points relative to the central axis, determining a radial position of each of the second points relative to the central axis,and linking the first points to the second points based on the radial positions of the first and second points relative to the central axis.
[0019] In some implementations, linking the first points to the second points based on the radial positions of the first and second points relative to the central axis may include creating a first link between a first of the first points and a first of the second points, identifying a first possible second link extending between a second of the first points and the first of the second points, defining a first plane representing the radial position of the first of the second points, the first plane passing through the center of the first shape, the center of the second shape, and the first of the second points, determining a first angle between the first possible second link and the first plane, identifying a second possible second link extending between the first of the first points and a second of the second points, defining a second plane representing the radial position of the first of the first points, the second plane passing through the center of the first shape, the center of the second shape, and the first of the first points, determining a second angle between the second possible second link and the second plane, and creating a second link between the first points and the second points by selecting one of the first possible second link and the second possible second link based on which the first angle and second angle is smallest. In some implementations, creating the first link may include determining from the possible pairs of one of the first points and one of the second points the pair in which the points of the pair are closest to one another, and linking the points of this pair to create the first link.
[0020] In some implementations, the first virtual model may be realized as a first mesh including a plurality of first vertices, the second virtual model may be realized as a second mesh including a plurality of second vertices, and each of the first and second points may correspond to a different one of the first and second vertices respectively. In such implementations, linking the first points of the first virtual model with the second points of the second virtual model may include matching each of the first vertices with one or more of the second vertices based on a positional relationship between the first vertices and the second vertices, and generating a third mesh that includes, for each of the first vertices, at least one edge extending from the first vertex to the one or more second vertices matched with the first vertex.
[0021] In some implementations, the steps of any of the methods described above may be performed by a system having one or more computers,controllers, or processors, which may be configured to perform operations or actions by virtue of having software, firmware, hardware, or a combination of thereof that in operation causes or cause the one or more computers, controllers, or processors to perform the operations or actions.
[0022] According to further aspects, a non-transitory computer readable medium having instructions stored thereon is provided. The instructions are configured to be executed by one or more processors to cause the one or more processors to perform at least a portion of any of the methods described above.BRIEF DESCRIPTION OF THE DRAWINGS
[0023] Advantages of the present invention will be readily appreciated as the same becomes better understood by reference to the following detailed description when considered in connection with the accompanying drawings.
[0024] Figure 1 is a perspective view of an exemplary layout of an operating room including at least one surgical instrument assembly and a surgical navigation system for performing a surgical procedure on a patient.
[0025] Figure 2 is a perspective view of an exemplary vertebra.
[0026] Figure 3A illustrates a cross section of an exemplary spine and a plurality of line segments representing honey anatomy bounding a central canal of the spine.
[0027] Figure 3B is a view of the line segments representing the honey anatomy bounding the central canal of the spine of Figure 3A.
[0028] Figure 4 is a perspective view of linked virtual models representing a portion of a central canal of a spine.
[0029] Figure 5A is a perspective view of virtual models representing portions of a central canal of a spine with a discontinuity therebetween.
[0030] Figure 5B is a perspective view of a unified virtual model created using the virtual models of Figure 5 A.
[0031] Figure 6 is a flowchart illustrating method of creating a virtual model representative of a central canal of a spine according to one implementation.
[0032] Figures 7A-7G illustrate one implementation of linking virtual models to generate a unified virtual model.DETAILED DESCRIPTIONI. Example System Overview
[0033] Referring to the Figures, wherein like numerals indicate like or corresponding parts throughout the several views, Figure 1 illustrates an exemplary surgical system 100 for performing a surgical procedure on a patient. The surgical system 100 may include a surgical navigation system 110 for tracking a pose of various objects involved in the surgical procedure, such as a surgical instrument assembly 170. The surgical navigation system 110 may include a navigation computer 140, user input devices 130, a display unit 120, and a tracking unit 112.
[0034] The navigation computer 140, which may also be referred to as a navigation controller, may be realized by a personal computer, laptop computer, tablet computer or any other suitable computing device. In one example, the navigation computer 140 includes a processor 141. The processor 141 may include one or more devices selected from microprocessors, micro-controllers, digital signal processors, microcomputers, central processing units, field programmable gate arrays, programmable logic devices, state machines, logic circuits, analog circuits, digital circuits, and / or any other devices that manipulate signals (analog or digital) based on operational instructions read into a memory from a non-volatile storage. The memory, which may also be included in the navigation computer 140, may include a single memory device or a plurality of memory devices including, but not limited to, readonly memory (ROM), random access memory (RAM), volatile memory, non-volatile memory, static random access memory (SRAM), dynamic random access memory (DRAM), flash memory, cache memory, and / or any other device capable of storing information. The non-volatile storage, which likewise may be included in the navigation computer 140, may include one or more persistent data storage devices such as a hard drive, optical drive, tape drive, non-volatile solid state device, and / or any other device capable of persistently storing information.
[0035] The navigation computer 140 may be configured to implement the functions, features, and processes of the navigation system 110 described herein. More specifically, the navigation computer 140 operate under control of surgical navigation software, such as embodied by computer-executable instructions residing in the non-volatile storage, including one or more modules and / or operating instructions. The surgical navigation software, upon execution by navigation computer 140, or more particularly by the processor 141, may be configured to cause the navigation computer 140, or more particularly the processor 141, to implement the various functions, features, and processes of the navigation system 110 disclosed herein.
[0036] The navigation computer 140 may be configured to operate the display unit 120 to provide information to a user. In this way, the display unit 120 may be configured to display various graphical user interfaces (GUIs) 150 and patient images (e.g., pre-operative patient images and / or intraoperative patient images). The pre-operative patient images may be uploaded to the navigation computer 140 prior to the surgical procedure, and may be obtained by means of Magnetic Resonance Imaging (MRI), Computed Tomography (CT), Ultrasound (US), or any other imaging modality. A user such as a medical professional may interact with the various GUIs 150 via user input devices 130 coupled to the navigation computer 140. The user input devices 130 may include a touch screen interface integral with the display unit 120. The display unit 120 may be configured to display various elements, such as buttons or data entry boxes, for interaction by the user to input information to the navigation computer 140. For example, the display unit 120 may be configured to display a text box or prompt that allows the user to manually enter or select the type of surgical procedure to be performed.
[0037] The display unit 120 may be configured to display a surgical plan for a surgical procedure, such as overlaid on patient data. The patient data may include preoperative and / or intraoperative patient images depicting anatomical structures of interest. The anatomical structures of interest may include anatomical structures to be treated and anatomical structures to be avoided. The patient data may also include virtual models representative of the anatomy of interest.
[0038] The surgical plan may include a planned trajectory for a surgical instrument and / or implant relative to the anatomical structures of interest during the surgical procedure. The surgical plan may also include a target pose for an implant or other medical device to be implanted during the surgical procedure relative to the anatomical structures of interest. The display unit 120 may be configured to display the planned trajectory and / or target pose on the patient images of the anatomical structuresof interest and / or relative to virtual models representative of the anatomical structures of interest so as to assist the surgeon to visualize and / or implement the surgical plan.
[0039] It is contemplated that the surgical navigation system 110 may also be configured to display and / or project at least a portion of the surgical plan on a surface or device during the surgical procedure other than the display unit 120. This may include projecting the planned trajectory and / or target pose onto the patient or other surface in the operating room. It may also include displaying or projecting the planned trajectory and / or target pose on a head unit worn by the user, such as a lens, shield, or glasses of the head unit. An exemplary configuration of a surgical navigation system 110 including a display unit worn by the user to display at least part of the surgical plan is disclosed in International Publication No. WO / 2018 / 203304 Al , the entirety of which is hereby incorporated by reference.
[0040] In addition to the planned trajectory and / or target pose, the surgical plan may include information related to the type of surgical procedure being performed, the patient's anatomical structures to be treated, the types of surgical instruments and / or medical devices to be used during the surgical procedure, and / or operating settings for the surgical navigation system 110.
[0041] The GUIs 150 may be configured to allow the user to input or modify the surgical plan. As an example, the user may interact with the GUIs 150 via the user devices 130 to select anatomical features in medical images of the patient that define a surgical site for the surgical procedure. For instance, in preparation of performing a spinal fusion procedure, a user may interact with the GUIs 150 to select at least one vertebra from the medical images and / or select specific area(s) of the at least one vertebra where a surgical procedure is to be performed. The user may also interact with the GUIs 150 to select surgical instrument(s) to be used in the surgical procedure, to select implant(s) to be inserted during the surgical procedure, to select target pose(s) where the implant(s) are to be placed within the patient, and the parameters of the implant(s) to be inserted, such as the length and / or diameter of a screw to be inserted.
[0042] The GUIs 150 may also be configured to allow the user to input or modify patient data. As an example, the user may interact with the GUIs 150 to identify and / or adjust boundaries of anatomical structures of interest within the medical images. The user may also interact with the GUIs 150 to identify and / or adjust the dimensionsof anatomical structures of interest, and / or create and / or adjust virtual models representative of such anatomical structures.
[0043] The tracking unit 112 of the navigation system 110 may be configured to cooperate with tracking devices, also referred to as trackers, fixed to objects in the surgical environment to generate tracking data indicative of the poses of the objects in a known coordinate system. The known coordinate system may be a coordinate system of the tracking unit 112. In the illustrated example, the surgical instrument assembly 170 includes a surgical instrument 172 having an end-effector 174 and coupled a tracking device 176. For example and without limitation, the end effector 174 may be a drill chuck, a tap for creating threads on an interior surface of a hole or aperture, or a driver for driving or inserting a screw within a borehole or aperture of the bone.
[0044] The tracking unit 112 may include one or more sensors 114 adapted to detect the pose of the tracking device 176 in a known coordinate system, such as that of the tracking unit 112. In some implementations, the tracking device 176 may include a plurality of markers, and the sensor(s) 114 may include one or more cameras, such as CCD cameras or CMOS cameras, configured to image the markers. Alternatively, the sensor(s) 114 may include one or more magnetic sensors, radio frequency sensors, or any other sensors adapted to detect and / or sense the pose of the tracking device 176 in the known coordinate system. Descriptions of the various types of tracking units 112 (also referred to as localizers) that can be utilized may be found in U.S. Patent Publication No. 2017 / 0333137, which is hereby incorporated by reference in its entirety.
[0045] The tracking unit 112 may be configured to communicate tracking data to the navigation computer 140 that is indicative of the pose of the tracking device 176 in the known coordinate. The navigation computer 140 may have previously received registration data indicating the pose of the surgical instrument 172 relative to the pose of the tracking device 176, and may be configured to apply such registration data to the tracking data to determine a pose of the surgical instrument 172 relative to the known coordinate system.
[0046] While only one surgical instrument assembly 170 is illustrated in Figure 1, it is contemplated that any number of surgical instrument assemblies may be included in the surgical system 100. The surgical instrument assembly 170 may be likeany of those described in Inti. Patent Publication No. 2021 / 062373, which is hereby incorporated by reference in its entirety. The surgical system 100 may, in addition or as an alternative to the surgical instrument assembly 170, may also include a surgical robot, such as the robotic manipulator described in U.S. Patent No. 11,033,341, which is hereby incorporated. In some implementations, the surgical instrument assembly 170 may be coupled to the robotic manipulator as an end effector, and may be guided by the robotic manipulator, such as at the direction of the navigation computer 140, to perform the surgical procedure.
[0047] As previously described, prior to the start of the procedure, the navigation computer 140 may receive pre-operative medical images of the anatomical structures of interest, such as pre-operative images of the spine of the patient (or of other tissues or structures in other embodiments). These images may be based on MRI scans, radiological scans or computed tomography (CT) scans of the patient's anatomy. These images may be used to develop virtual models of the anatomical structures of interest, such as virtual models of vertebra and / or other anatomical structures to be treated, and also anatomical structures to be avoided. Anatomical structures to be avoided may include cortical walls, nerves, blood vessels and similar critical anatomical structures.
[0048] In some implementations, the navigation computer 140 may be configured to generate these virtual models by applying segmentation tools to the medical images, which may identify boundaries of anatomical structures present in such images. The navigation computer 140 may then be configured to generate the virtual models of the anatomical structures from the medical images based on the identified boundaries. The GUIs 150 may allow a user, such as using the input devices 130, to adjust the identified boundaries and / or virtual models as desired via interaction with such items relative to the patient images. Exemplary GUIs and segmentation tools for this purpose are described in U.S. Patent Publication No. 2019 / 0340765, which is hereby incorporated by reference.
[0049] During the surgical procedure, the navigation computer 140 may be configured to track the pose of the surgical instrument assembly 170 relative to the virtual models of the anatomy of interest in the known coordinate system. In some implementations, tracking devices, such as similar to the tracking device 176, may be disposed relative to the anatomy of interest and registered to the virtual models suchthat, by determining a pose of such tracking devices in the known coordinate system based on tracker data generated by the tracking unit 112, the navigation computer 140 may determine a pose of the virtual models in the known coordinate system based on the registrations.
[0050] Additionally or alternatively, the surgical system 100 may include an imaging system 160 for tracking the virtual models in the known coordinate system. The imaging system 160 may be in communication with the surgical navigation system 110, and may be configured to generate and forward intraoperative medical images of the anatomy of interest to the navigation computer 140 for the purpose of determining a pose of the virtual models for the anatomical structures of interest in the known coordinate system.
[0051] The imaging system 160 may include a scanner 162 and a display unit 164. The scanner 162 may be utilized to take an image of the patient and display it on the display unit 164. For example, the scanner 162 may include a C-arm configured to be rotated about the patient to produce a plurality of images of the patient. The imaging system 160 may also include an imaging controller including software that, upon execution by the controller, is configured to operate the scanner 162 to take the plurality of images, and produce a 3D image of at least a portion of the patient based on the images. The imaging controller may then be configured to provide the resulting 3D image on display unit 164.
[0052] Medical images generated by the imaging system 160 may have a known relationship with the known coordinate system such that components of the medical images, such as pixels or voxels, may be transformed to the known coordinate system. Similar to as described above relative to the pre-operative images, the navigation computer 140 may be configured to apply segmentation to the received images to identify boundaries associated with the depicted anatomical structures of interest, and then use the known relationship to transform such boundaries to the known coordinate system, which in turn may indicate the poses of the virtual models for the anatomical structures in the known coordinate system. In some implementations, the imaging system 160 may be positioned relative to the tracking unit 112 according to a predefined relationship that corresponds to the known relationship. Alternatively, the imaging system 160 may include a tracking device, similar to the tracking device 176, the pose of which may be registered to the medical images. The tracking data generatedby tracking unit 112 may indicate a pose of this tracking device relative to the known coordinate system, and the navigation computer 140 may thus be configured to determine the known relationship between the medical images and the known coordinate system based on the tracking data and the registration between the tracking device and medical images.
[0053] The navigation computer 140 may include an alert module configured to trigger one or more actions responsive to the navigation computer 140 determining that a tracked surgical object, such as the surgical instrument 172, makes contact or is near contacting a virtual model corresponding to an anatomical structure to be avoided in the known coordinate system. To this end, the navigation computer 140 may be configured to position one or more virtual objects in the known coordinate system based on the tracked pose of the virtual model. The navigation computer 140 may then be configured to track the pose of the surgical instrument 172 relative to the virtual object in the known coordinate system, and guide movement of the surgical instrument 172 relative to the anatomical structure based on the tracked pose.
[0054] In some implementations, the virtual object(s) may include a virtual boundary spaced from the tracked pose of the virtual model, and the virtual boundary may define an alert zone around the anatomical structure to be avoided. Responsive to the navigation computer 140 determining that a tracked surgical object crosses the virtual boundary defining the alert zone, the navigation computer 140, such as via the alert module, may be configured to provide a corresponding alert. For instance, the navigation computer 140 may be configured to trigger an audible warning and / or a visual warning on the display unit 120. Additionally or alternatively, the navigation computer 140 may be configured to generate a tactile warning, such as by reducing or ceasing actuation of the surgical instrument 172. Additionally or alternatively, assuming the tracked surgical object is coupled to a robotic manipulator, the alert module may be configured to control the robotic manipulator to prevent further movement of the surgical object into the alert zone.II. Methods of Creating a Virtual Model of a Central Canal
[0055] As described in Section I above, the surgical navigation system 110 may be configured to generate virtual models for anatomical structures of interest by identifying the boundaries of such structures, such as in a medical image. During navigated spinal surgery, which may involve tracking the surgical instrument 172relative to a spine of the patient, the spine (or a portion thereof) may be represented by such a virtual model, and the pose of the surgical instrument 172 may be tracked relative to a pose of the virtual model representing the spine in the known coordinate system. The navigation computer 140 may be configured to trigger an action as described above responsive to determining that the surgical instrument 172 collides or enters an alert zone associated with the virtual model.
[0056] It will be appreciated that virtual models are most effective when they completely cover the anatomical structures that they are meant to represent. However, if an anatomical structure includes a void or hole that lacks a clear boundary, and / or includes certain tissues (e.g., soft tissues) that are not well defined in certain types of medical images, a virtual model developed from medical images of the anatomical structure using segmentation may not adequately represent such portions of the anatomical structure. As a result, the virtual objects generated by the navigation computer 140 for guiding movement of the surgical instrument 172 relative to the anatomical structure may be less optimal.
[0057] Referring to Figure 2, an exemplary vertebra 200 is illustrated. The vertebra 200 includes a central canal portion 202 defined by a honey anatomy of the vertebra 200. The central canal portion 202 forms part of the central canal of the spine, which carries the spinal cord and other soft tissue. For a surgical operation involving the spine of the patient, it is usually desired to avoid soft tissue running through the central canal, especially the spinal cord. Because the boundaries of such soft tissue are not sufficiently identifiable in certain types of medical images and may change through a surgical procedure, and also because portions of the central canal are not surrounded by honey tissue, the virtual models of a patient’s spine developed from segmented medical images may lack boundaries adequately representative of such tissue or the central canal. The present disclosure provides a method of creating virtual models which compensate for this deficiency.
[0058] Figures 3A and 3B exemplify the lack of honey anatomy surrounding portions of the central canal of the spine. A cross section of an exemplary patient spine 204 is shown along with a plurality of line segments 206 bounding the central canal of the spine. In these figures, the central canal and the associated line segments 206 are represented in two dimensions for clarity - three-dimensional representations are shown later in the figures. In Figure 3A, the line segments 206 areshown along contours of individual vertebra which define portions of the central canal. In Figure 3B, the line segments 206 are shown without the spine 204. As will be appreciated from Figures 3 A and 3B, the honey anatomy of each vertebra surrounds a portion of the central canal of the spine, but there also exists discontinuities 208 between each adjacent vertebrae where honey anatomy is not present. The method disclosed herein assists to address these discontinuities 208 in virtual models of the spine 204.
[0059] Referring to Figure 4, multiple virtual models representing at least portions of the central canal of the spine are shown. In the illustrated example, the virtual models include a first virtual model 210, a second virtual model 220, and a unified virtual model 230 which includes the first and second virtual models 210, 220. The first virtual model 210 represents a first central canal portion 202 A defined by a first vertebra of the spine, and the second virtual model 220 represents a second central canal portion 202B defined by a second vertebra adjacent to the first vertebra. The first virtual model 210 includes an edge 212 representative of an inferior edge of the first central canal portion 202A, and the second virtual model 220 includes an edge 222 representative of a superior edge of the second central canal portion 202B. Each edge 212, 222 includes a plurality of points, which may correspond to vertices of the edges 212, 222. Since the models 210, 220 were generated based on segmentation of medical images of the spine, the discontinuity 208 shown in Figure 3B is also present between the models 210, 220. As described in more detail below, the methods described herein may include linking the edges 212, 222 to close the discontinuity 208 present between the first model 210 and the second model 220 to create the model 230, herein referred to as a unified virtual model 230.
[0060] Referring to Figures 5 A and 5B, the first and second virtual models210, 220 are shown in comparison to the unified virtual model 230. Like in Figure 4, the discontinuity 208 between the two models 210, 220 exists due to the nature of segmenting vertebral anatomical structures. For example, the left side of the discontinuity 208 is caused by an intervertebral disk, which is present between each vertebra of the spine. The rest of the discontinuity 208 is caused by other soft tissues and gaps present around each vertebra. The intervertebral disk and other soft tissues permit adjacent vertebra to move slightly relative to one another such that the entire spine may bend. By generating the unified virtual model 230, the discontinuity 208 isfilled. Further, although only two adjacent vertebrae are shown in the figures, the unified virtual model 230 may include as many as all of the vertebrae of the spine. In such an implementation, each discontinuity 208 may be filled to create the unified virtual model 230.
[0061] Referring to Figure 6, a method 300 of creating a virtual model representative of the central canal of the spine of the patient according to one implementation is shown. The method 300 may be carried out, in part or in whole, by one or more computing devices. For example, the navigation computer 140 may implement the method 300 upon execution of the navigation software. In some implementations, a cloud computing system may be configured to carry out at least a portion of the method, and part of the surgical system 100, such as the navigation computer 140, may be configured to execute the rest of the method. In the forthcoming description, the method 300 is described as being carried out by the navigation computer 140 for simplicity.
[0062] At 304, the navigation computer 140 receives images data of the spine, such as from the imaging system 160. The image data includes at least a first vertebra and a second vertebra of the spine. The step 304 may include segmenting the image data to convert the image data into segmented image data. In this case, the segmented image data may be created by classifying voxels of the image data into a group of bone voxels and a group of non-bone voxels.
[0063] At 308, the navigation computer 140 generates various virtual models in order to begin generating a model of the central canal of the spine. The virtual models may be generated with boundaries corresponding to the bone voxels. The virtual models may include a virtual model representing an inferior edge of a first central canal portion defined by the first vertebra, and a virtual model representing a superior edge of a second central canal portion defined by the second vertebra. The virtual models may represent more of the vertebrae as well.
[0064] For example, the virtual models may be like the virtual models 210, 220 shown in Figures 4-5B and represent the honey anatomy defining the central canal portion of each of the vertebrae. Like the models 210, 220 shown in Figure 4, the virtual models may include an edge representative of the inferior edge of the central canal portion of the first vertebra, and an edge representative of the superior edge of the central canal portion of the second vertebra. In the example shown in Figure 4, theseedges include the edge 212 representative of the inferior edge of the first central canal portion 202A, and the edge 222 representative of the superior edge of the second central canal portion 202B. As mentioned above, a discontinuity (e.g., the discontinuity 208 shown in Figure 4) may exist between these edges 212, 222, because there is soft tissue and / or gaps between each adjacent vertebrae, and the virtual models may be representative of the honey anatomy defining the central canal of the spine. Further, if the image data includes more than two vertebrae, the method 300 may include generating a virtual model for each vertebra included in the image data.
[0065] At 312, the navigation computer 140 identifies points on the edges representative of the inferior and superior edges of the central canal portions of the first and second vertebrae, respectively. For example, in the illustrated implementation of Figure 4, the step 312 includes identifying first points present on the edge 212 of the first virtual model 210, and second points present on the edge 222 of the second virtual model 220. The first and second points may correspond to vertices of the edges 212, 222 respectively.
[0066] Using these points, at 316, the navigation computer 140 generates a unified virtual model representative of the portion of the central canal of the spine of the patient disposed between the first and second vertebra by linking the points on the inferior edge of the central canal portion of the first vertebra to the points on the superior edge of the central canal portion of the second vertebra. This process may link the virtual models together to create a unified model by adding edges extending between the first virtual model and the second virtual model.
[0067] For instance, in the example illustrated in Figures 5 A and 5B, the first and second virtual models 210, 220 are used to generate the unified virtual model 230. The unified virtual model 230 includes the first virtual model 210, the second virtual model 220, and the edges created by linking the points on the inferior / superior edges of these models 210, 220. Once the unified model 230 has been created by linking the first model 210 to the second model 220, the unified model 230 may be smoothed and subdivided. For example, in the illustrated implementation shown in Figure 4, the first, second, and unified models 210, 220 230 are each three-dimensional meshes. As such, the first and second models 210, 220 include a plurality of faces (e.g., shown as triangles on the surface of the first model 210 in Figure 4), which are defined by the edges of the first model 210. Although not shown, the same is true for the second model220. The linked points create the newly created edges, shown as a plurality of lines extending between the inferior and superior edges 212, 222. That said, as shown in Figure 4, the new edges are much longer than the edges shown on the surface of the first model 210, which causes new faces of the unified model 230 to also be larger than the faces of the first and second models 210, 220. Thus, the unified model 230 is subdivided by subdividing the new faces, as defined by the links added between the inferior and superior edges 212, 222, so that a length of each new faces is equal to the average length of the edges of the first and second models 210, 220. An exemplary approach is described by Botsch et al in "A Remeshing Approach to Multiresolution Modeling", Eurographics Symposium on Geometry Processing (2004), which is hereby incorporated by reference. Afterwards, the unified model 230 may be smoothed by a smoothing algorithm / technique, such as Laplacian smoothing.
[0068] The edges of the virtual models may be linked in multiple ways depending on the implementation. According to one implementation, step 316 may include linking the first points of the first virtual model with the second points of the second virtual model based on distances between the first points and the second points. In this example, the navigation computer 140 may determine which of the second points is closest to one of the first points, such as according to the image coordinate system or the known coordinate system, and then link the one of the first points to the second point that is determined to be closest to the one of the first points. This process may then be repeated for each of the first points until all first points are linked to at least one of the second points. If there are more points in the second points than in the first points, then step 316 may link each of the first points to one of the second points and then switch to linking the remaining points of the second points based on the distance between the first points and the second points like how the first points were linked with the second points. As will be appreciated from Figure 4, one of the first points may be linked to more than one of the second points, and vice versa.
[0069] Additionally or alternatively, the first points on the inferior edge (of the first model) may be linked to the second points on the superior edge (of the second model) based on radial distance. More specifically, the step 316 may include locating a center of a first shape defined by the first points, such as the irregular shape defined by the inferior edge 212 of the first virtual model 210 shown in Figure 4. In some implementations, with the center of the shape located, a radial position relative tothe center of the shape may be assigned / determined for each of the first and / or second points. For example, a starting position corresponding to a radial position of 0 degrees may be determined, such as arbitrarily or according to a pose of the shape relative to the image coordinate system. Then, a direction of rotation may be determined, and the radial position may increase for points that have a higher degree of rotation about the center of the shape relative to the starting position. Put simply, an initial point residing at the starting position would have a radial position of 0 degrees, and another point residing on the opposite side of the shape relative to the initial point would have a radial position of 180 degrees about the center of the shape.
[0070] In addition to locating the center of the first shape, the step 316 may include locating a center of a second shape defined by the second points, such as the irregular shape defined by the superior edge 222 of the second virtual model 220 of Figure 4. Once the centers of the shapes have been located, an axis of rotation may be defined as a line which passes through the center of the first shape and the center of the second shape. With this axis of rotation defined, the step 316 may include determining a radial position of each of the first points relative to the axis, as well as determining a radial position of each of the second points relative to the axis. Finally, each of the first points may be linked to the second points based on the radial positions of the first and second points. For example, the navigation computer 140 may determine a difference between the radial position of each of the first points and the radial positions of each of the second points. Subsequently, each of the first points may be linked with the one of the second points which has the lowest difference in radial position relative to the radial position of the first point.
[0071] In some implementations, the step 316 may include a synthesis of the distance and radial position calculations described above. For example, the navigation computer 140 may create an initial linking relationship between each of the first points and one of the second points based on whichever one of the second points is closest to the first point. Each initial linking relationship may thus include a pair of points including one of the first points and one of the second points. The navigation computer 140 may then adjust the initial linking relationships by determining the difference in radial positions of the points included in each pair of points, and updating any of the linking relationships that have a difference in radial positions that is above a threshold difference. For example, the navigation computer 140 may change which ofthe second points is paired with the first point of the given linking relationship according to which of the second points has a radial difference relative to the first point that is lower than the threshold difference and closest to the first point.
[0072] Referring to Figures 7A-7G, an implementation of linking edges to generate the unified virtual model is shown. These figures include abstract representations of virtual models of two adjacent vertebrae, such as the first and second models 210, 220 shown in Figures 4 and 5 A. More specifically, the inferior edge 212 of the first central canal portion 202 A is shown as an oval near the top of the figures, and the superior edge 222 of the second central canal portion 202B is shown as an oval near the bottom of the figures. The remainder of the virtual models 210, 220 have been omitted from these figures.
[0073] Referring specifically to Figure 7A, a portion of the edge points identified during step 312 are shown as first through seventh points P1-P7. The first through fourth points P1-P4 are inferior edge points which (among other points) define the inferior edge 212. The fifth through seventh points P5-P7 are superior edge points which (among other points) define the superior edge 222. It will thus be appreciated that the first through fourth points P1-P4 are merely a subset of the points of the model which define the inferior edge 212, and that the fifth through seventh points P5-P7 are a subset of the points of the model which define the superior edge 222. The remaining points have been omitted from the figures for simplicity.
[0074] After the points P1-P7 are identified, the illustrated implementation of step 316 includes adding edges extending between the inferior edge 212 and the superior edge 222. In other words, the step 316 includes adding edges between each one of the points P1-P4 of the inferior edge 212 and at least one of the points P5-P7 of the superior edge 222. As mentioned above, this can be done by linking the first point Pl to the closest of the fifth through seventh points P5-P7, linking the second point P2 to the closest of the fifth through seventh points P5-P7, and so on. However, where the edges 212, 222 are more irregularly shaped, like in Figure 4, this may have a higher likelihood of resulting in the unified model 230 which has nonmanifold geometry. For example, links created based on distance alone may intersect with other links, create intersecting faces, and / or leave holes in the final virtual model. To overcome such drawbacks and provide an improved model, such as one consisting entirely of manifold geometry, the step 316 may create an initial link as the shortestpossible link, and create the remaining links based on angle / radial distance relative to the virtual models 210, 220 as described below.
[0075] In order to determine the angle of links being created between the inferior and superior edges 212, 222, a central axis AC may be defined relative to the models 210, 220. For example, the central axis AC may be generated by defining a center Cl of the shape formed by the inferior edge 212 (herein, the first center Cl), defining a center C2 of the shape formed by the superior edge 222 (herein, the second center C2), and generating the central axis AC as a line which passes through both centers Cl, C2. The shapes of the adjacent vertebrae are usually irregularly shaped such as shown in Figure 4, but each of the inferior and superior edges 212, 222 are shown as ovals in the illustrated implementation for simplicity.
[0076] In Figure 7B, the creation of a first link LI is shown. Once the central axis AC has been defined, the first link LI is created between a point on the inferior edge 212 and a point on the superior edge 222. The first link LI may be created based on which pair of points (i.e., one point on each edge 212, 222) is closest to one another. In other words, the first link LI may be created by creating the shortest possible link between points on the edges 212, 222 as possible. For example, the navigation computer 140 may determine a distance between each possible pair of points, each pair including one point on the inferior edge 212 and one point on the superior edge 222, and link the pair with the shortest distance to create the first link. In Figure 7B, the first link LI extends between the first point Pl and the fifth point P5. After the first link LI is created, the step 316 continues to create links for the remaining points P2-P4, P6, P7. In the illustrated implementation, a second link L2 is created by linking one of the points Pl, P5 defining the first link LI to one of the other points P2-P4, P6, P7. When creating the second link L2, the navigation computer 140 may select between two possible second links, namely one link L2A starting at the fifth point P5 and another link L2B starting at the first point PL
[0077] An illustration of determining which link to create from these two possible second links L2A, L2B is shown in Figures 7C and 7D. First, in Figure 7C, the first possible second link L2A is identified by determining which of the remaining points P2-P4 on the inferior edge 212 is closest to the fifth point P5. In this case, the second point P2 is the closest of the remaining points P2-P4. The first possible second line L2A is thus defined between the fifth point P5 and the second point P2. Todetermine the angle of the first possible second link L2A relative to the central axis AC, a plane 250 representing the radial position of the fifth point P5 is created. The plane 250 is defined by the first center Cl, the second center C2, and the fifth point P5. Once the plane 250 has been defined, an angle 252 between the first possible second link L2A and the plane 250 is calculated. The angle 252 represents the angle of the first possible link L2A relative to the central axis AC.
[0078] Further, as shown in Figure 7D, a second possible second link L2B is identified by determining which of the remaining points P6, P7 on the superior edge 222 is closest to the first point Pl. In this case, the sixth point P6 is the closest of the remaining points P6, P7, and the second possible second link L2B is thus defined between the first point Pl and the sixth point P6. After the second possible second link L2B is created, a plane 260 representing the radial position of the first point Pl is generated. Similar to the plane 250 described above, the plane 260 is defined by the centers Cl, C2 and the first point Pl, and an angle 262 between the second possible second link L2B and the plane 260 is calculated. The angle 262 represents the angle of the second possible link L2B relative to the central axis AC.
[0079] The angles 252, 262 are then compared to determine which of the two possible second links L2A, L2B should be created. Specifically, the navigation computer 140 may select the possible second links L2A, L2B with the smaller angle, and discard the other. In the illustrated implementation, the angle 252 of the first possible second link L2A is smaller than the angle 262 of the second possible second link L2B, so the first possible second link L2A is retained as the second link L2.
[0080] As shown in Figures 7E and 7F, after the second link L2 is created, a third link L3 is created by comparing first and second possible third links L3A, L3B, each extending from a different one of the points of the last created link, namely the second link L2. The process of determining which of the possible third links L3A, L3B should be created as the third line L2 is similar to the process described above for the possible second links L2A, L2B. Since the closest of the remaining points P6, P7 on the superior edge 222 to the second point P2 is the sixth point P6, the first possible third link L3A is established between the second and sixth points P2, P6. Further, as the closest of the remaining points P3, P4 on the inferior edge 212 to the fifth point P5 is the third point P3, the second possible third link L3B is created between the fifth and third points P5, P3. For the first possible third link L3A, a plane 270 is created todetermine the radial position of the second point P2. For the second possible third link L3B, a plane 280 is created to determine the radial position of the fifth point P5. The plane 270 associated with the first possible third link L3A is defined by the first and second centers Cl, C2, and the second point P2, while the plane 280 associated with the second possible third link L3B is defined by the first and second centers Cl, C2, and the fifth point P5. Subsequently, an angle 272 between the first possible third link L3A and the plane 270 is calculated, and an angle 282 between the second possible third link L3B and the plane 280 is calculated. Since the angle 272 associated with the first possible third link L3A is smaller than the angle 282 associated with the second possible third link L3B, the first possible third link L3A may be chosen as the third link L3, and the second possible link third link L3B may be discarded.
[0081] Referring now to Figure 7G, the first, second, and third links LI, L2, L3 have been created between the inferior and superior edges 212, 222 of the models 210, 220. Although not described here, additional links L4, L5, L6 may then be created until all of the points defining the inferior edge 212 have been linked to at least one of the points defining the superior edge 222 (and vice versa). Although only seven links L1-L6 are shown in the figures, this is simply for clarity of illustration. Like the unified model 230 shown in Figure 4, a great deal more than seven links may be formed between the inferior and superior edges 212, 222 of the virtual models 210, 220.
[0082] The virtual models described above, such as the first, second, and unified virtual models 210, 220, 230, may be of various types of computer-generated model. For example, the virtual models may be realized as meshes, point clouds, or other suitable alternatives. If the models are meshes, then the points on the inferior and superior edges 212, 222 described above (e.g., the points P1-P7) may be vertices of the meshes, and the links created between the inferior and superior edges 212, 222 (e.g., the links L1-L7) may be edges added the mesh. Alternatively, if the models are point clouds, then the points on the inferior and superior edges 212, 222 described above (e.g., the points P1-P7) may be points of the point cloud, and the links created between the inferior and superior edges 212, 222 (e.g., the links L1-L7) may be lines of points added to the point clouds.
[0083] Regardless of the type of virtual models utilized during the method 300, the unified virtual model, such as the unified virtual model 230 shown in Figure 5B, may be used by the surgical navigation system 110 to facilitate the tracking of thesurgical instrument 172 relative to the anatomical structures of interest. The navigation computer 140 may define virtual objects for constraining movement of the surgical instrument 172 in the known coordinate system, such as a coordinate system associated with the tracking unit 112, based on the output of the method 300. For example, the navigation computer 140 may create the unified virtual model 230 based on the linking carried out during step 316 of the method 300, and define at least one virtual object associated with the portion of the central canal of the spine of the patient that is disposed between adjacent vertebrae and / or not bounded by bone. The navigation computer 140 may then track the pose of the surgical instrument 172 relative to the virtual object(s) to help avoid the central canal of the spine, even where bone is not present. For instance, if the navigation computer 140 determines that the surgical instrument 172 has crossed a virtual boundary defined by such virtual object(s), the navigation computer 140 may trigger an action described above. The display unit 120 may also be controlled to show the pose of the surgical instrument 172 relative to the virtual model and / or virtual object(s).
[0084] It will be appreciated that although the above disclosure is primarily provided with reference to the spine of the patient, the processes described herein may also be applied to other anatomic structures / features of the patient. For example, the above processes may be used to develop a virtual model of another joint of the patient, such as a knee joint or a hip joint. In such an example, a first virtual model may be created to represent at least an edge of a first anatomical structure, such as a first bone, and a second virtual model may be created to represent at least an edge of a second anatomical structure, such as a second bone, adjacent the first anatomical structure. The first and second edges may define first and second portions of an anatomical feature disposed between and / or at least partly defined by the first and second adjacent anatomical structures, respectively. After the virtual models are created, first points which define the edge of the first anatomical structure, and second points which define the edge of the second anatomical structure, may be identified. A unified virtual model representative of the anatomical feature defined between and / or by the first and second anatomical structures may then be generated by linking the first points of the first virtual model with the second points of the second virtual model as described herein. In one case, the anatomical feature may include a void defined by and / or between the first and second bones. Additionally or alternatively, the anatomicalfeature may include soft tissue which is disposed between the first and second bones. Other anatomical structures and features are contemplated. Other alterations to the method are also contemplated. For example, the described systems and methods may be useful for a variety of orthopedic joint procedures (for example replacement of hip, knee, shoulder, ankle and elbow joints), peri-acetabular osteotomy, tibial osteotomy, distal radius osteotomy, anterior cruciate ligament reconstruction, osteoid osteoma excision, bone tumor resection, spinal procedures (for example in the placement of pedicle screws), and fracture surgery.
[0085] The systems and methods described herein may be partially or fully implemented as instructions stored on a non-transitory computer readable medium. The term computer-readable medium, as used herein, does not encompass transitory electrical or electromagnetic signals propagating through a medium (such as on a carrier wave); the term computer-readable medium may therefore be considered tangible and non-transitory. Non-limiting examples of a non-transitory computer- readable medium are nonvolatile memory circuits (such as a flash memory circuit, an erasable programmable read-only memory circuit, or a mask read-only memory circuit), volatile memory circuits (such as a static random access memory circuit or a dynamic random access memory circuit), magnetic storage media (such as an analog or digital magnetic tape or a hard disk drive), and optical storage media (such as a CD, a DVD, or a Blu-ray Disc).
[0086] The systems and methods described herein may be partially or fully implemented as computer program products. The computer program products may include processor-executable instructions that are stored on at least one non-transitory computer-readable medium. The computer program products may also include or rely on stored data. The computer program products may encompass a basic input / output system (BIOS) that interacts with hardware of the special purpose computer, device drivers that interact with particular devices of the special purpose computer, one or more operating systems, user applications, background services, background applications, etc. The computer program products may include: (i) descriptive text to be parsed, such as HTML (hypertext markup language), XML (extensible markup language), or JSON (JavaScript Object Notation), (ii) assembly code, (iii) object code generated from source code by a compiler, (iv) source code for execution by an interpreter, (v) source code for compilation and execution by a just-in-time compiler,etc. As examples only, source code may be written using syntax from languages including C, C++, C#, Objective C, Swift, Haskell, Go, SQL, R, Lisp, Java®, Fortran, Perl, Pascal, Curl, OCaml, JavaScript®, HTML5 (Hypertext Markup Language 5th revision), Ada, ASP (Active Server Pages), PHP (PHP: Hypertext Preprocessor), Scala, Eiffel, Smalltalk, Erlang, Ruby, Flash®, Visual Basic®, Lua, MATLAB, SIMULINK, and Python®.
[0087] Several implementations have been discussed in the foregoing description. However, the implementations discussed herein are not intended to be exhaustive or limit the invention to any particular form. The terminology which has been used is intended to be in the nature of words of description rather than of limitation. Many modifications and variations are possible in light of the above teachings and the invention may be practiced otherwise than as specifically described.
Claims
CLAIMSWhat is claimed is:
1. A surgical navigation system for tracking a surgical instrument relative to a central canal of a spine of a patient, the surgical navigation system comprising: a localizer configured generate data indicative of a pose of the surgical instrument relative first and second vertebra of the spine of the patient in a known coordinate system; and a controller in communication with the localizer, the controller configured to: receive image data of the spine, the image data including the first vertebra and the second vertebra; generate a first virtual model representing an inferior edge of a first central canal portion defined by the first vertebra based on the image data; generate a second virtual model representing a superior edge of a second central canal portion defined by the second vertebra based on the image data; link first points of the first virtual model with second points of the second virtual model; define a virtual boundary in the known coordinate system that is associated with a portion of the central canal of the spine of the patient disposed between the first and second vertebra based on the linked points; and track a pose of the surgical instrument relative to the virtual boundary in the known coordinate system based on the localizer data.
2. The surgical navigation system of claim 1, further comprising an alert module in communication with the controller, wherein the controller is configured to control the alert module based on the tracked pose of the surgical instrument relative to the virtual boundary.
3. The surgical navigation system of claim 1 or 2, further comprising a display in communication with the controller, wherein the controller is configured to cause the display to show the tracked pose of the surgical instrument relative to the virtual boundary.
4. The surgical navigation system of any one of the preceding claims, wherein the controller is configured to link the first points of the first virtual model with the second points of the second virtual model by being configured to: identify as the first points a plurality of points of the first virtual model that define the inferior edge of the first central canal portion; identify as the second points a plurality of points of the second virtual model that define the superior edge of the second central canal portion; and for each of the first points: determine which of the second points is closest to the first point; and link the first point to the second point that is determined to be closest to the first point.
5. The surgical navigation system of any one of claims 1 to 3, wherein the controller is configured to link the first points of the first virtual model with the second points of the second virtual model by being configured to: identify as the first points a plurality of points of the first virtual model that define the inferior edge of the first central canal portion; identify as the second points a plurality of points of the second virtual model that define the superior edge of the second central canal portion; locate a center of a shape defined by the first points; determine a radial position of each of the first points relative to the center of the shape; determine a radial position of each of the second points relative to the center of the shape; and link the first points to the second points based on the radial positions of the first and second points relative to the center of the shape.
6. The surgical navigation system of any one of claims 1 to 3, wherein the controller is configured to link the first points of the first virtual model with the second points of the second virtual model by being configured to: identify as the first points a plurality of points of the first virtual model that define the inferior edge of the first central canal portion;identify as the second points a plurality of points of the second virtual model that define the superior edge of the second central canal portion; locate a center of a first shape defined by the first points; locate a center of a second shape defined by the second points; generate a central axis as a line passing through the center of the first shape and the center of the second shape; and link the first points to the second points based on radial positions of the first and second points relative to the central axis.
7. The surgical navigation system of claim 5 or 6, wherein the controller is configured to: determine a distance between each of the first points and each of the second points; and link the first points with the second points based on the radial positions of the first and second points and the distances.
8. The surgical navigation system of any one of claims 6 and 7 as far as dependent on claim 6, wherein the controller is configured to link the first points to the second points based on radial positions of the first and second points relative to the central axis by being configured to: create a first link between a first of the first points and a first of the second points; identify a first possible second link extending between a second of the first points and the first of the second points; determine a first angle between the first possible second link and a first plane defined by the center of the first shape, the center of the second shape, and the first of the second points; identify a second possible second link extending between the first of the first points and a second of the second points; determine a second angle between the second possible second link and a second plane defined by the center of the first shape, the center of the second shape, and the first of the first points; andcreate a second link between the first points and the second points by selecting one of the first possible second link and the second possible second link based on which of the first angle and second angle is smallest.
9. The surgical navigation system of claim 8, wherein the controller is configured to create the first link by being configured to: determine a distance between the points of each possible pair of one of the first points and one of the second points; and link the points of the pair with the shortest distance to create the first link.
10. The surgical navigation system of claim 5 or 6, wherein the controller is configured to: determine a difference between the radial position of the first point and the radial position of each of the second points; and link the first point with the second point having the lowest difference relative to the first point.
11. The surgical navigation system of any one of the preceding claims, wherein: the first virtual model is realized as a first mesh including a plurality of first vertices; the second virtual model is realized as a second mesh including a plurality of second vertices; each of the first and second points corresponds to a different one of the first and second vertices respectively; and the controller is configured to link the first points of the first virtual model with the second points of the second virtual model by being configured to: match each of the first vertices with one or more of the second vertices based on a positional relationship between the first vertices and the second vertices, and generate a third mesh that includes, for each one of the first vertices, one or more edges extending from the one of the first vertices to the one or more second vertices matched with the one of the first vertices.
12. A method of creating a virtual model representative of a central canal of a spine of a patient based on image data of the spine of the patient, the method comprising: receiving the image data of the spine, the image data including a first vertebra and a second vertebra; generating a first virtual model representing an inferior edge of a first central canal portion defined by the first vertebra based on the image data; generating a second virtual model representing a superior edge of a second central canal portion defined by the second vertebra based on the image data; identifying first points of the first virtual model that define the inferior edge of the first central canal portion; identifying second points of the second virtual model that define the superior edge of the second central canal portion; and generating a unified virtual model representative of a portion of the central canal of the spine of the patient disposed between the first and second vertebra by linking the first points of the first virtual model with the second points of the second virtual model.
13. The method of claim 12, further comprising: classifying a first group of voxels of the image data as including bone and corresponding to the first central canal portion; and classifying a second group of voxels of the image data as including bone and corresponding to the second central canal portion, wherein the first and second virtual models are generated based on the classification of the first and second groups of voxels, respectively.
14. The method of claim 12 or 13, wherein linking the first points of the first virtual model with the second points of the second virtual model includes, for each of the first points: determining which of the second points is closest to the first point; and linking the first point to the second point that is determined to be closest to the first point.
15. The method of any one of claim 12 or 13, wherein linking the first points of the first virtual model with the second points of the second virtual model includes: locating a center of a shape defined by the first points; and determining a radial position of each of the first points relative to the center of the shape; determining a radial position of each of the second points relative to the center of the shape; and linking the first points to the second points based on the radial positions of the first points and the second points relative to the center of the shape.
16. The method of claim 12 or 13, wherein linking the first points of the first virtual model with the second points of the second virtual model includes: locating a center of a first shape defined by the first points; locating a center of a second shape defined by the second points; generating a central axis as a line passing through the center of the first shape and the center of the second shape; and linking the first points to the second points based on radial positions of the first points and the second points relative to the central axis.
17. The method of claim 15 or 16, comprising: determining a distance between each of the first points and each of the second points; and linking the first points with the second points based on the radial positions of the first points and the second points and the distances.
18. The method of any one of claims 16 and 17 as far as dependent on claim 16, wherein linking the first points of the first virtual model to the second points of the second virtual model based on the radial positions of the first points and the second points relative to the central axis includes: creating a first link between a first of the first points and a first of the second points; identifying a first possible second link extending between a second of the first points and the first of the second points;determining a first angle between the first possible second link and a first plane defined by the center of the first shape, the center of the second shape, and the first of the second points; identifying a second possible second link extending between the first of the first points and a second of the second points; determining a second angle between the second possible second link and a second plane defined by the center of the first shape, the center of the second shape, and the first of the first points; and creating a second link between the first points and the second points by selecting one of the first possible second link and the second possible second link based on which the first angle and second angle is smallest.
19. The method of claim 18, wherein creating the first link includes: determining a distance between each possible pair of one of the first points and one of the second points; and linking the pair with the shortest distance to create the first link.
20. The method of claim 15 or 16, wherein linking the first points to the second points based on the radial positions of the first points and the second points includes, for each of the first points: determining a difference between the radial position of the first point and the radial position of each of the second points; and linking the first point with the second point having the lowest difference relative to the first point.
21. The method of any one of claims 12 to 20, wherein the first virtual model is realized as a first mesh including a plurality of first vertices, the second virtual model is realized as a second mesh including a plurality of second vertices, each of the first points and the second points corresponds to a different one of the first and second vertices respectively, and linking the first points of the first virtual model with the second points of the second virtual model comprises: matching each of the first vertices with corresponding second vertices based on a positional relationship between each of the first vertices and the second vertices, andgenerating a third mesh that includes, for each of the first vertices, an edge extending from each of the first vertices to the corresponding second vertices.
22. A non-transitory computer readable storage medium having stored thereon data representing instructions executable by a programmed processor for creating a virtual model representative of a central canal of a spine of a patient based on image data of the spine of the patient, wherein the instructions upon execution by the processor cause the processor to: receive the image data of the spine, the image data including a first vertebra and a second vertebra; generate a first virtual model representing an inferior edge of a first central canal portion defined by the first vertebra based on the image data; generate a second virtual model representing a superior edge of a second central canal portion defined by the second vertebra based on the image data; identify first points of the first virtual model that define the inferior edge of the first central canal portion; identify second points of the second virtual model that define the superior edge of the second central canal portion; and generate a unified virtual model representative of a portion of the central canal of the spine of the patient disposed between the first and second vertebra by linking the first points of the first virtual model with the second points of the second virtual model.
23. A method of creating a virtual model of an anatomical feature disposed between and defined at least in part by first and second adjacent anatomical structures of a patient, the method comprising: receiving a first virtual model representing an edge of the first anatomical structure that defines a first portion of the anatomical feature; receiving a second virtual model representing an edge of the second anatomical structure that defines a second portion of the anatomical feature; identifying first points of the first virtual model that define the edge of the first anatomical structure; identifying second points of the second virtual model that define the edge of the second anatomical structure; andgenerating a unified virtual model representative of the anatomical feature by linking the first points of the first virtual model with the second points of the second virtual model.
24. A surgical navigation system for tracking a surgical instrument relative to a central canal of a spine of a patient, the surgical navigation system comprising: a localizer configured generate data indicative of a pose of the surgical instrument relative first and second vertebra of the spine of the patient in a known coordinate system; a controller in communication with the localizer, the controller configured to: receive a first virtual model representing an inferior edge of a first central canal portion defined by the first vertebra; receive a second virtual model representing a superior edge of a second central canal portion defined by the second vertebra; identify a plurality of first points of the first virtual model that define the inferior edge of the first central canal portion; identify a plurality of second points of the second virtual model that define the superior edge of the second central canal portion; link the first points of the first virtual model with second points of the second virtual model; define a virtual boundary in the known coordinate system that is associated with a portion of the central canal of the spine of the patient disposed between the first and second vertebra based on the linked points; and track a pose of the surgical instrument relative to the virtual boundary in the known coordinate system based on the localizer data.
25. The surgical navigation system of claim 24, wherein the controller is configured to link the first points to the second points by being configured to: locate a center of a first shape defined by the first points; locate a center of a second shape defined by the second points; generate a central axis as a line passing through the center of the first shape and the center of the second shape; and link first points of the first virtual model with second points of the second virtual model by:creating a first link between a first of the first points and a first of the second points; identifying a first possible second link extending between a second of the first points and the first of the second points; determining a first angle between the first possible second link and a first plane defined by the center of the first shape, the center of the second shape, and the first of the second points; identifying a second possible second link extending between the first of the first points and a second of the second points; determining a second angle between the second possible second link and a second plane defined by the center of the first shape, the center of the second shape, and the first of the first points; and creating a second link between the first points and the second points by selecting one of the first possible second link and the second possible second link based on which the first angle and second angle is smallest.
26. The surgical navigation system of claim 25, wherein the controller is configured to create the first link by being configured to: determine a distance between each possible pair of one of the first points and one of the second points; and link the pair with the shortest distance to create the first link.
27. A method of creating a virtual model representative of a central canal of a spine of a patient, the method comprising: receiving a first virtual model representing an inferior edge of a first central canal portion defined by a first vertebra; receiving a second virtual model representing a superior edge of a second central canal portion defined by a second vertebra; identifying first points of the first virtual model that define the inferior edge of the first central canal portion; identifying second points of the second virtual model that define the superior edge of the second central canal portion; andgenerating a unified virtual model representative of a portion of the central canal of the spine of the patient disposed between the first and second vertebra by linking the first points of the first virtual model with the second points of the second virtual model.
28. The method of claim 27, wherein linking the first points of the first virtual model with the second points of the second virtual model includes: locating a center of a first shape defined by the first points; locating a center of a second shape defined by the second points; generating a central axis as a line passing through the center of the first shape and the center of the second shape; and linking the first points to the second points by: creating a first link between a first of the first points and a first of the second points; identifying a first possible second link extending between a second of the first points and the first of the second points; determining a first angle between the first possible second link and a first plane defined by the center of the first shape, the center of the second shape, and the first of the second points; identifying a second possible second link extending between the first of the first points and a second of the second points; determining a second angle between the second possible second link and a second plane defined by the center of the first shape, the center of the second shape, and the first of the first points; and creating a second link between the first points and the second points by selecting one of the first possible second link and the second possible second link based on which the first angle and second angle is smallest.
29. The method of claim 28, wherein creating the first link includes: determining a distance between each possible pair of one of the first points and one of the second points; and linking the pair with the shortest distance to create the first link.
30. A non-transitory computer readable storage medium having stored thereon data representing instructions executable by a programmed processor for creating a virtual model representative of a central canal of a spine of a patient, wherein the instructions upon execution by the processor cause the processor to: receive a first virtual model representing an inferior edge of a first central canal portion defined by a first vertebra; receive a second virtual model representing a superior edge of a second central canal portion defined by a second vertebra; identify first points of the first virtual model that define the inferior edge of the first central canal portion; identify second points of the second virtual model that define the superior edge of the second central canal portion; and generate a unified virtual model representative of a portion of the central canal of the spine of the patient disposed between the first and second vertebra by linking the first points of the first virtual model with the second points of the second virtual model.
Citation Information
Patent Citations
Robotic spine surgery system and methods
US11033341B2
Systems And Methods For Identifying And Tracking Physical Objects During A Robotic Surgical Procedure
US20170333137A1
Image Segmentation
US20190340765A1
Surgical navigation system
WO2018203304A1
Surgical navigation systems and methods
WO2021062373A2