Method and system for positioning a robotic surgical system
By using an improved mesh generation method in a virtual environment to simulate the movement and rotation of the robotic arm components of a robotic surgical system, the collision problem in traditional positioning methods is solved, achieving more efficient positioning of the robotic surgical system and reducing collisions, thereby improving surgical efficiency.
Patent Information
- Application Number
- CN202580017288.X
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Priority Date
- 2024-08-02
- Filing Date
- 2025-07-24
- Publication Date
- 2026-11-06
AI Technical Summary
Traditional methods for locating robotic surgical systems in the operating room suffer from inaccuracies that lead to collisions between robotic arm components, requiring multiple repositioning attempts and wasting time and resources.
By using an improved mesh generation method in a simulated or virtual environment, a uniform surface mesh model is generated to simulate the movement and rotation of robotic arm components, predict potential collisions, and optimize the localization process.
This improves the positioning accuracy of robotic surgical systems in the operating room, reduces collisions, and increases the efficiency and success rate of surgical procedures.
Smart Images

Figure CN123056786A_ABST
Abstract
Description
[0001] Cross-references to related applications
[0002] This application claims priority to U.S. Application No. 18 / 793,669, filed August 2, 2024, the entire contents of which are incorporated herein by reference. Technical Field
[0003] Specific embodiments of the present invention generally relate to methods and systems for positioning a robotic surgical system in an operating room. Background Technology
[0004] Unless otherwise indicated herein, the methods described in this section are not prior art to the claims of this application, and are not acknowledged as prior art by virtue of their inclusion in this section.
[0005] Robotic surgical systems provide precise control for a variety of complex surgical procedures. A robotic surgical system may include a console and a patient carriage. The console and patient carriage may be integrated or separate. The console includes a control interface for the surgeon to control components of the robotic surgical system. By moving the patient carriage, the robotic surgical system is configured to be positioned adjacent to an operating table configured to support the patient in the operating room. The patient carriage may also support cameras, robotic arm assemblies, and surgical instruments. The patient carriage may be movable, allowing the robotic surgical system to be positioned in different locations within the operating room according to different surgical procedures and / or the requirements of different patients. Effective and accurate positioning of the robotic surgical system in the operating room is necessary before performing a specific surgical procedure on a specific patient. Attached Figure Description
[0006] Figure 1 An illustrative diagram is provided to show an example robotic surgical system 100 configured according to some embodiments of the present disclosure; Figure 2A A typical mesh 201 is shown, configured to represent a three-dimensional (3D) model of a patient carriage of a robotic surgical system; Figure 2B Example of a typical mesh 202 configured to represent a 3D model of the shoulder of a robotic surgical system; Figure 2C Example of a typical mesh 203 configured to represent a 3D model of the first arm of a robotic surgical system; Figure 2D Example of a typical mesh 204 configured to represent a 3D model of the elbow of a robotic surgical system; Figure 2E Example of a typical mesh 205 configured to represent a 3D model of the second arm of a robotic surgical system; Figure 2FExample of a typical mesh 206 configured to represent a 3D model of the wrist of a robotic surgical system; Figure 3 This illustrates a process 300 for generating a mesh representing the surface of a component of a robotic surgical system configured according to some embodiments of the present disclosure; Figure 4A This illustration shows a 3D model 410 of the first arm of a robotic surgical system configured according to some embodiments of the present disclosure; Figure 4B An example of an original spherical mesh 420 provided according to some embodiments of this disclosure; Figure 4C An example of an adjusted spherical grid 430 provided according to some embodiments of this disclosure; Figure 4D This illustrates a resampled mesh 440 that substantially matches the surface of a 3D model, as set according to some embodiments of the present disclosure; Figure 4E An enlarged perspective view 460 of a portion of a resampled grid provided according to some embodiments of the present disclosure, and an enlarged perspective view 470 of a simplified grid corresponding to the same portion; Figure 5A This illustrates a mesh 501 configured to represent a surface of a 3D model of a patient cart, according to some embodiments of the present disclosure; Figure 5B Example 502 is provided according to some embodiments of the present disclosure, which is configured to represent the surface of a 3D model of a shoulder. Figure 5C This illustrates a mesh 503 configured to represent the surface of a 3D model of a first arm 123, according to some embodiments of the present disclosure; Figure 5D This illustrates a mesh 504 configured to represent a surface of a 3D model of an elbow, according to some embodiments of the present disclosure; Figure 5E This illustrates a mesh 505 configured to represent the surface of a 3D model of a second arm, according to some embodiments of the present disclosure; Figure 5F Example 506 is provided according to some embodiments of the present disclosure, configured to represent a surface of a 3D model of a wrist; Figure 5G Examples include additional meshes 507, 508, and 509 configured to represent surfaces of a 3D model associated with a robotic surgical system, according to some embodiments of the present disclosure; Figure 6 This illustrates a process 600 for positioning a robotic surgical system according to some embodiments of the present disclosure; Figure 7AThis illustrates a virtual environment 700 comprising various loaded models set up according to some embodiments of the present disclosure; Figure 7B Example user interface 701 of a virtual environment 700 configured according to some embodiments of the present disclosure; and Figure 7C An example user interface 770 is shown for a virtual environment 700 set up according to some embodiments of the present disclosure. Detailed Implementation
[0007] In the following detailed description, reference is made to the accompanying drawings that form part of this document. In these drawings, similar symbols generally identify similar parts unless the context otherwise requires. The exemplary embodiments described in the detailed description, drawings, and claims are not intended to be limiting. Other embodiments may be utilized, and other changes may be made without departing from the spirit or scope of the subject matter presented herein. It will be readily understood that, as described throughout and illustrated in these drawings, these aspects of the disclosure can be arranged, replaced, combined, and designed in a wide variety of different configurations, all of which are explicitly contemplated herein.
[0008] In this disclosure, the term "three-dimensional (3D) model" refers to a virtual object configured to represent a physical object using a set of points distributed in a three-dimensional virtual environment, wherein these points are connected by various geometries, such as triangles, lines, or curved surfaces. The term "polygonal mesh" refers to a mesh type having a set of vertices, edges, and faces that define the shape of the 3D model and also explicitly represent the surfaces of the 3D model. The term "volume mesh" refers to a mesh type having a set of vertices, edges, and faces that represents the internal volume of a 3D model. The term "original mesh" refers to a mesh configured to describe the basic shape used to design and create a 3D model. In some embodiments, the "original mesh" in this disclosure may be a polygonal mesh. The term "uniform face" refers to a face having the same length and width, and therefore these faces are geometrically identical. The term "virtual environment" refers to a digital environment created to mimic the operation of a physical robotic surgical system.
[0009] Figure 1 This is an example diagram illustrating a robotic surgical system 100 configured to perform surgical procedures on a patient 101 on an operating table 103, according to some embodiments of the present disclosure. In some embodiments, the robotic surgical system 100 includes a patient cart 110, a robotic arm assembly 120, and a console 130.
[0010] In some embodiments, the patient carriage 110 is configured to move so that the robotic surgical system 100 is positioned at a location 105 adjacent to the operating table 103 in the operating room. Furthermore, in some embodiments, the patient carriage 110 is configured to support the robotic arm assembly 120 and the console 130.
[0011] In some embodiments, the robotic arm assembly 120 includes, but is not limited to, a shoulder 122, a first arm 123, an elbow 124, a second arm 125, a wrist 126, a terminal module 127, and surgical instruments 128. In some embodiments, the terminal module 127 is an optical module including a camera. The terminal module 127 may be configured to capture one or more images of the patient 101 and / or the patient cart 110.
[0012] In some embodiments, the console 130 includes a control interface 132. The control interface 132 is configured to interact with a surgeon 107 so that the surgeon 107 can control the robotic arm assembly 120 to perform surgical procedures on the patient 101. More specifically, in order to perform surgical procedures, the surgeon 107 can interact with the control interface 132 to control rotation of the shoulder 122, elbow 124, and wrist 126, thereby actuating the movement and / or rotation of the first arm 123, second arm 125, terminal module 127, and surgical instruments 128, such that the surgical instruments 128 move into the patient 101 along the planned surgical path of the surgical procedure.
[0013] Traditionally, in the operating room, operating room staff can position the robotic surgical system 100 by moving the patient trolley 110 to a location based on their experience and the type of surgical procedure to be performed on patient 101. For example, based on their experience with previous patients, staff can select location 105 for placing the robotic surgical system 100 for deep brain stimulation procedures on patient 101, location 108 for craniotomy on patient 101, and location 109 for biopsy on patient 101.
[0014] However, such positioning can be imprecise and may result in the robotic surgical system 100 being placed in a position where the intended surgical procedure cannot be performed. For example, as these components of the robotic arm assembly 120 move along the planned surgical path of the surgical procedure, improper positioning will cause unwanted collisions between these components of the robotic surgical system 100, such as collisions between any two of the patient carriage 110, shoulder 122, first arm 123, elbow 124, second arm 125, wrist 126, terminal module 127, and surgical instruments 128. The surgical procedure can then be unable to be completed due to these collisions. Traditionally, the patient carriage 110 can be repositioned to another location to resolve these collisions. However, repositioning requires time and effort and does not guarantee that different collisions will not recur. To address the above technical problems, methods and systems for properly positioning the robotic surgical system 100 are described in more detail below.
[0015] In some embodiments, methods for properly positioning a robotic surgical system include performing simulations of movement and / or rotation of components of the robotic surgical system in a simulated or virtual environment. Such simulations can indicate whether a collision of components of the robotic surgical system will occur if the robotic arm assembly of the robotic surgical system is actuated to move along a planned surgical path along which a surgical procedure will be performed on the patient.
[0016] In some embodiments, the simulation can be performed based on a three-dimensional (3D) model of the components of the robotic surgical system. The 3D model can be represented by a mesh.
[0017] Figures 2A to 2F Each element in the model represents a typical mesh of a 3D model that defines a component of a robotic surgical system (such as robotic surgical system 100). More specifically, combined with... Figure 1 , Figure 2A A typical mesh 201 configured to represent a 3D model of a patient cart 110 is illustrated. Figure 2B A typical mesh 202 is shown, configured to represent a 3D model of shoulder 122; Figure 2C A typical mesh 203 configured to represent a 3D model of the first arm 123 is illustrated. Figure 2D A typical mesh 204 is shown, configured to represent a 3D model of an elbow 124; Figure 2E A typical mesh 205 configured to represent a 3D model of the second arm 125 is illustrated; and Figure 2FA typical mesh 206 configured to represent a 3D model of the wrist 126 is illustrated. Typical meshes 201, 202, 203, 204, 205, and 206 can be obtained from the manufacturer of the robotic surgical system 100. For example, mesh 201 may include a polygonal mesh representing the surface of the 3D model of the patient carriage 110, and a volumetric mesh representing the internal volume of the 3D model of the patient carriage 110. Similarly, each of the other typical meshes 202, 203, 204, 205, and 206 may also include polygonal meshes and volumetric meshes representing the surface and internal volume of the 3D model of the various components of the robotic surgical system.
[0018] However, there are many challenges in performing simulations based on typical meshes 201, 202, 203, 204, 205, and 206. For example, the number of vertices, edges, and faces included in any of the typical meshes 201, 202, 203, 204, 205, and 206 is typically large in order to more accurately represent the 3D models of the surface and internal volumes of the patient trolley 110, shoulder 122, first arm 123, elbow 124, second arm 125, and wrist 126, respectively. Such a large number of vertices, edges, and faces can introduce unnecessary computational delays in the simulation.
[0019] In addition to including a large number of vertices, edges, and faces in typical meshes 201, 202, 203, 204, 205, and 206, handling different types of vertices, edges, and faces in typical meshes 201, 202, 203, 204, 205, and 206 in the simulation further increases computational latency. For example, any one of typical meshes 201, 202, 203, 204, 205, and 206 can include triangles of different sizes.
[0020] Furthermore, in order to simulate collisions of components of a robotic surgical system, the volumetric meshes in typical meshes 201, 202, 203, 204, 205, and 206 may be unnecessary, since collisions can be determined solely based on polygonal meshes that define the surfaces of components of the robotic surgical system.
[0021] To address the drawbacks of using typical meshes 201, 202, 203, 204, 205, and 206 in simulations, in some embodiments, Figure 3A process 300 for generating a mesh representing the surfaces of components of a robotic surgical system is illustrated. In some embodiments, simulating collisions of components of the robotic surgical system can be effectively performed based on the generated mesh. Process 300 may include one or more operations, functions, or actions, as illustrated by blocks 310, 320, 330, 340, 350, and / or 360, which may be performed by hardware, software, and / or firmware. The various blocks are not intended to be limited to the specific embodiments described. The steps and operations outlined are provided only as examples, and some of the steps and operations may be optional, combined into fewer steps and operations, or extended into additional steps and operations without diminishing the essence of the specific embodiments disclosed. Although the blocks are illustrated in sequential order, these blocks may also be performed in parallel and / or in a different order than that described herein.
[0022] Process 300 can begin with box 310, "Load 3D Model". (The last part is incomplete and likely refers to a different process.) Figure 1 Combine, Figure 4A An example of a 3D model 410 of the first arm 123 is shown. In some embodiments, the 3D model 410 is provided by the manufacturer of the first arm 123 and loaded into a virtual environment. Figure 2C In combination, 3D model 410 can be represented by a typical mesh 203.
[0023] Box 310 can then "generate an original mesh to surround the 3D model" for box 320. In some embodiments, the original mesh is configured to surround the 3D model. In other words, the original mesh is configured to surround or contain the 3D model in a three-dimensional manner. In some embodiments, the original mesh is generated in a virtual environment to surround the 3D model loaded in box 310. The original mesh may include basic shape meshes. For example, some basic shape meshes include, but are not limited to, cube meshes, sphere meshes, cylinder meshes, cone meshes, and toroidal meshes. In some embodiments, Figure 4B Example of an original sphere mesh of 420. (And...) Figure 4B In conjunction with this, in box 320, in some embodiments, a spherical mesh 420 is generated to enclose the 3D model loaded in box 310. More specifically, the radius of the spherical mesh 420 is set such that the spherical mesh 420 is configured to enclose the 3D model loaded in box 310. In some embodiments, the spherical mesh 420 includes a standard set of vertices, edges, and faces describing the surface of a sphere.
[0024] Box 320 can then "adjust the original mesh" for box 330. In some embodiments, the original mesh generated in box 320 is adjusted to match the surface of the 3D model loaded in box 310. In some embodiments, Figure 4C Example of an adjusted sphere mesh 430. (And...) Figure 4CIn combination, box 330 may include, but is not limited to, operations that adjust the relationships between the vertices, edges, and faces of the spherical mesh 420 to generate an adjusted spherical mesh 430 to match the surface of the 3D model loaded in box 310.
[0025] Box 330 can then be replaced by box 340, which is a “resampled adjusted mesh.” In some embodiments, the adjusted mesh in box 330 is resampled to generate a resampled mesh that includes uniform faces. In some embodiments, the two uniform faces generally have the same shape because they each have the same length and width. In box 340, downsampling and upsampling can be used. The larger face in the adjusted mesh can be upsampled, while the smaller face in the adjusted mesh can be downsampled.
[0026] Box 340 can then be box 350 "Threshold reached?". In some embodiments, the threshold can be a preset number of iterations of boxes 320, 330, and 340. In response to the number of iterations of boxes 320, 330, and 340 not reaching the threshold (e.g., less than the preset number), box 350 can then be box 320, where the resampled mesh in box 340 is to be the original mesh in box 320. In response to the number of iterations of boxes 320, 330, and 340 reaching the threshold (e.g., equal to or greater than the preset number), box 350 can then be box 360 "Simplified resampled mesh".
[0027] In some other embodiments, in box 350 "Threshold reached?", the threshold can be a preset average distance from points in the resampled mesh to points in the 3D model. In response to the average distance failing to reach the threshold (e.g., greater than the preset average distance), box 350 can then be box 320, where the resampled mesh in box 340 will be the original mesh in box 320. In response to the average distance reaching the threshold (e.g., equal to or less than the preset average distance), box 350 can then be box 360 "Simplify resampled mesh".
[0028] In some embodiments, by performing iterations of boxes 320, 330, and 340, the finally resampled mesh can substantially match the surface of the 3D model generated in box 310. Figure 4D An example is a resampled mesh 440 that substantially matches the surface of the 3D model generated in box 310. In some embodiments, the resampled mesh 440 may include a uniform surface. Figure 4D The magnified perspective view in section 450 shows some examples of uniform surfaces of the resampled grid 440.
[0029] To further illustrate the "simplified resampling grid" in box 360, in some embodiments... Figure 4E Example Figure 4DA magnified perspective view 460 of a portion of the resampled grid 440, and a magnified perspective view 470 of a simplified grid corresponding to the same portion. Combined Figure 4D It is worth noting that the operations performed in “Adjusting the Original Mesh” in box 330 and “Resampling the Adjusted Mesh” in box 340 can result in high-density vertices and faces in the resampled mesh 440, which may lead to unnecessary computational delays. Therefore, in some embodiments, a mesh simplification operation can be performed on the resampled mesh 440 in box 360. In some embodiments, the mesh simplification operation may include, but is not limited to, clustering reduction or quadratic edge collapse reduction operations. For example, a mesh simplification operation may include grouping vertices into clusters and then collapsing these clusters into a single representative vertex to reduce the number of uniform faces in the resampled mesh 440. Therefore, in some embodiments, the dense mesh illustrated in magnified perspective 460 can be simplified to the corresponding sparse mesh illustrated in magnified perspective 470. In some embodiments, the simplified and sparse mesh shown in magnified perspective 470 may include a polygonal mesh representing the surface of the first 3D model generated in box 310, but not a volumetric mesh representing the internal volume of the first 3D model generated in box 310.
[0030] In some embodiments, similar meshes defining the surfaces of other components of the robotic surgical system may also be generated based on process 300. Figures 5A to 5F Each of these represents a mesh generated based on process 300 and indicates the surface of a 3D model of a component of the robotic surgical system. Specifically, combined with Figure 1 , Figure 5A An example configuration is shown as a mesh 501 representing the surface of a 3D model of a patient cart 110; Figure 5B Example configuration: mesh 502 representing the surface of a 3D model of shoulder 122; Figure 5C An example configuration is shown as a mesh 503 representing the surface of a 3D model of the first arm 123; Figure 5D Example configuration: mesh 504 representing the surface of a 3D model of elbow 124; Figure 5E An example configuration is shown as mesh 505 representing the surface of a 3D model of the second arm 125; and Figure 5F Example configuration is a mesh 506 representing the surface of a 3D model of the wrist 126.
[0031] Figures 5A to 5F Each element in the model represents a surface of a 3D model of a component of a robotic surgical system, rather than a mesh representing the internal volume of the component. Furthermore, Figures 5A to 5F Each of them comprises a uniform surface. In contrast, Figures 2A to 2FThe grid shown includes non-uniform surfaces. These non-uniform surfaces all have different shapes.
[0032] In some embodiments, Figure 5G Example configurations show additional meshes 507, 508, and 509 representing the surfaces of a 3D model associated with a robotic surgical system. More specifically, combined with... Figure 1 , Figure 5G Examples include mesh 507 configured to represent the surface of a 3D model of terminal module 127, and mesh 508 configured to represent the surface of a 3D model of surgical instrument 128. Meshes 507 and 508 are generated based on process 300 as detailed above.
[0033] In some embodiments, Figure 5G A further example of mesh 509 is provided. In some embodiments, mesh 509 is a cylindrical polygonal mesh. It is important to note that mesh 509 does not correspond to any component of the robotic surgical system. Rather, mesh 509 may represent a workspace available for a surgeon to perform surgical procedures. For example, a surgeon may require a workspace to insert additional or replacement surgical instruments. In another example, a surgeon may require a workspace to drill through a patient's skull. In some embodiments, mesh 509 may correspond to a physical workspace in the operating room having a diameter between 50 mm and 200 mm and a length between 50 mm and 1000 mm. In some embodiments, with Figure 1 In combination, the workspace can be positioned near (e.g., at the rear) the surgical instruments 128 of the robotic surgical system 100. In some embodiments, similar to grids 501 to 508, grid 509 also includes uniform surfaces. In some embodiments, the density of the uniform surfaces of grid 509 can be similar to or the same as the density of the uniform surfaces of grids 507 and 508.
[0034] In some embodiments, Figure 6 A process 600 for locating a robotic surgical system is illustrated. Process 600 may include one or more operations, functions, or actions, as illustrated by boxes 610, 620, 630, 640, 650, 660, and / or 670, which may be performed by hardware, software, and / or firmware. The various boxes are not intended to limit them to the specific embodiments described. The steps and operations outlined are provided as examples only, and some of the steps and operations may be optional, combined into fewer steps and operations, or extended into additional steps and operations without diminishing the essence of the specific embodiments disclosed. Although the boxes are illustrated in sequential order, these boxes may also be performed in parallel and / or in a different order than that described herein.
[0035] Process 600 may begin at box 610, "Generate the first 3D model and the second 3D model". In some embodiments, with Figures 5A to 5GCombined, in box 610, a first 3D model of the robotic surgical system is generated based on meshes 501, 502, 503, 504, 505, 506, 507, 508, and 509 in a virtual environment. In some embodiments, Figure 7A Example 700: A virtual environment including various 3D models. Specifically, with a collection of meshes (such as...) Figure 7A The 3D model 710 of the robotic surgical system associated with the grids 501, 502, 503, 504, 505, 506, 507, 508 and 509 shown is generated in box 610.
[0036] In some embodiments, a second 3D model of the patient and the planned surgical path is also generated in box 610. For example, prior to performing a surgical procedure, some medical imaging techniques can be used to capture a snapshot of the patient's condition, allowing for the development of a surgical procedure plan. The surgical procedure plan may include the planned surgical path. For example, the surgeon may request medical image scans (such as CT or MRI) of the target area where the patient will undergo a surgical procedure. Such medical image scans may be performed several days (e.g., 3 to 5 days) before the surgical procedure. A 3D model of the patient's target area can be generated based on the medical image scan data using some known methods. In some embodiments, with Figure 7A Combined, in frame 610, a 3D model 720 of the patient and the planned surgical path 721 based on the established operation plan is generated in the virtual environment 700.
[0037] In some embodiments, box 610 can then "select candidate locations" for box 620. Figure 7B An example user interface 701 of the virtual environment 700 is illustrated. In some embodiments, a candidate location 744 is selected to position the 3D model of the robotic surgical system generated in the virtual environment 700 within box 610. In some embodiments, the candidate location 744 corresponds to the physical location of the physical robotic surgical system in a physical operating room. For illustrative purposes only, for example, the candidate location 744 may correspond to the physical location of the physical robotic surgical system in the operating room, having a distance of 80 cm from the patient's head and forming a 90-degree angle with the patient's left and right ears.
[0038] In some embodiments, multiple candidate locations can be set and displayed in the user interface 701 of the virtual environment 700. For example, candidate locations can be set along a line at a first degree relative to the patient's left ear, but spaced apart from each other. As illustrated, in some embodiments, candidate position 751 may correspond to the physical position of the robotic surgical system in the operating room, having a distance of 50 cm from the patient's head and forming a 0-degree angle with the patient's left ear; candidate position 752 may correspond to the physical position of the robotic surgical system in the operating room, having a distance of 60 cm from the patient's head and forming a 0-degree angle with the patient's left ear; candidate position 753 may correspond to the physical position of the robotic surgical system in the operating room, having a distance of 70 cm from the patient's head and forming a 0-degree angle with the patient's left ear; candidate position 754 may correspond to the physical position of the robotic surgical system in the operating room, having a distance of 80 cm from the patient's head and forming a 0-degree angle with the patient's left ear; candidate position 755 may correspond to the physical position of the robotic surgical system in the operating room, having a distance of 90 cm from the patient's head and forming a 0-degree angle with the patient's left ear; and candidate position 756 may correspond to the physical position of the robotic surgical system in the operating room, having a distance of 100 cm from the patient's head and forming a 0-degree angle with the patient's left ear.
[0039] Similarly, in some embodiments, candidate locations may be set at a second degree relative to the patient's left ear, but spaced apart from each other. As an illustration, in some embodiments, candidate position 761 may correspond to the physical position of the robotic surgical system in the operating room, having a distance of 50 cm from the patient's head and an angle of 10 degrees with the patient's left ear; candidate position 762 may correspond to the physical position of the robotic surgical system in the operating room, having a distance of 60 cm from the patient's head and an angle of 10 degrees with the patient's left ear; candidate position 763 may correspond to the physical position of the robotic surgical system in the operating room, having a distance of 70 cm from the patient's head and an angle of 10 degrees with the patient's left ear; candidate position 764 may correspond to the physical position of the robotic surgical system in the operating room, having a distance of 80 cm from the patient's head and an angle of 10 degrees with the patient's left ear; candidate position 765 may correspond to the physical position of the robotic surgical system in the operating room, having a distance of 90 cm from the patient's head and an angle of 10 degrees with the patient's left ear; and candidate position 766 may correspond to the physical position of the robotic surgical system in the operating room, having a distance of 100 cm from the patient's head and an angle of 10 degrees with the patient's left ear.
[0040] Similarly, in some embodiments, additional candidate positions can be, for example... Figure 7B The user interface 701 shown is used for setting and displaying. In other embodiments, candidate locations can be set at a relatively high density, such as a heatmap, rather than... Figure 7BThese discrete points, currently shown, are displayed in user interface 701. Although Figure 7B Different shades of gray are displayed in the user interface 701, but those skilled in the art should understand that colors can be used.
[0041] In some embodiments, block 620 may then be block 630 “simulate the movement / rotation of the first 3D model based on the selected candidate positions and the planned surgical path.” In some embodiments, such simulation may be performed based on kinematic modeling of the robotic surgical system. Kinematic modeling describes the relationship or transformation between (a) the joint settings (e.g., joint angle configuration of the robotic surgical system) and kinematic settings (e.g., arm length, selected candidate positions that will be the origin of the robotic surgical system) associated with the robotic surgical system and (b) the pose of the surgical instruments of the robotic surgical system. That is, in order for the surgical instruments to reach the target area of the surgical procedure along the planned surgical path in the virtual environment 700 in the desired pose of the surgical instruments, each joint (e.g., in…) Figure 5B , Figure 5D , Figure 5F The meshes 502, 504, and 506 in the model can be rotated in the manner that the pose has already been reached. Combined with... Figure 1 , Figure 5C , Figure 5E and Figure 5G The rotation of grids 502 (e.g., corresponding to shoulder 122), 504 (e.g., corresponding to elbow 124), and 506 (e.g., corresponding to wrist 126) can respectively actuate the movement / rotation of grids 503 (e.g., corresponding to first arm 123), 505 (e.g., corresponding to second arm 125), 507 (e.g., corresponding to terminal module 127), 508 (e.g., corresponding to surgical instrument 128), and 509 (e.g., corresponding to workspace).
[0042] In some embodiments, box 630 may subsequently be box 640, "Determining whether a collision will occur in the default pose." In some embodiments, with Figure 5A , Figure 5C , Figure 5E , Figure 5G and Figure 7B In response to grid 508 being in a default pose, it is determined whether (1) any of grids 503, 505, 507, 508, and 509 will collide with each other, (2) any of grids 503, 505, 507, 508, and 509 will collide with grid 501, or (3) any of grids 503, 505, 507, 508, and 509 will collide with the patient's head at the candidate location 744 selected in box 620. In some embodiments, the default pose may form a default angle between grids 508 and 507.
[0043] In some embodiments, a collision between any of the grids 501, 503, 505, 507, and 508 can refer to a collision between components of the physical robotic surgical system and a failure of the physical robotic surgical system to reach the patient's target area along the planned surgical path.
[0044] In some other embodiments, a collision between any of grids 501, 503, and 505 and grid 509 can refer to the obstruction of the physical workspace within which the surgeon can operate.
[0045] In some other embodiments, the collision between any of the grids 501, 503, 505, 507, and 508 and the patient's head can refer to the collision between a component of the physical robotic surgical system and the patient's head.
[0046] In some embodiments, if no collision occurs between meshes of the default pose at candidate location 744, then box 640 may subsequently be box 660 “Generate state information for the selected candidate location”. Here, based on the determination in box 640, process 600 generates state information for candidate location 744 in box 660. For example, with Figure 7B In conjunction with this, the generated state information may include, but is not limited to, coloring candidate position 744 green in the user interface 701 to reflect the absence of collisions between grids in the default pose at candidate position 744. The green indicator serves to remind operating room staff or surgeons that the physical robotic surgical system can be positioned in the operating room at the physical location corresponding to candidate position 744 in the virtual environment 700, and that the surgical instruments 128 can maintain their default pose. In this configuration, to perform the surgical procedure, the physical robotic surgical system can be positioned in the operating room at a distance of 80 cm from the patient's head and at a 90-degree angle to the patient's left and right ears, and the surgical instruments 128 can maintain their default pose.
[0047] On the other hand, if a collision occurs between meshes in the default pose at candidate position 744, then box 640 can subsequently be box 650 “rotating the first 3D model in different poses and determining the collision.” Specifically, in box 650, process 600 also includes performing a circular rotation, wherein the default angle of the meshes (i.e., meshes 502, 503, 504, 505, 506, 507, 508, and 509) defining the robotic arm assembly 120 around the axial direction of mesh 508 is set to 0 degrees when the tip of mesh 508 is held at a point (e.g., entry point 722) on the planned surgical path 721. For each of the different poses, another determination is made as to whether a collision has occurred between these meshes. Figure 7CAn example user interface 770 is shown for a virtual environment 700. In some embodiments, the user interface 770 is configured to display collision results between meshes in different orientations during circular rotation. Similar to... Figure 7B ,although Figure 7C Different shades of gray are displayed in the user interface 770, but those skilled in the art will understand that colors can be used.
[0048] In some embodiments, the user interface 770 may include different regions 771, 772, 773, 774, and 775. Any of regions 771, 772, 773, 774, and 775 may include one or more slices. For example, region 771 may represent the collision result in the default pose. In some embodiments, region 771 may be colored red in the user interface 770 because box 640 has determined that there is a collision between meshes in the default pose at candidate location 744.
[0049] In some embodiments, with Figure 1 and Figures 5A to 5F In conjunction with this, in block 650, the mesh defining the robotic arm assembly 120 (i.e., meshes 502, 503, 504, 505, 506, 507, 508, and 509) is rotated about the axial direction of mesh 508. Furthermore, in block 650, process 600 also includes determining whether there is a collision between meshes in different orientations of mesh 508 at candidate position 744.
[0050] In some embodiments, region 772 may represent the collision result of a first pose of mesh 508 that is 10 degrees clockwise from the default pose, while region 773 may represent the collision result of a second pose of mesh 508 that is 20 degrees clockwise from the default pose. For example, in response to no collision between meshes in the first pose of mesh 508, region 772 may be colored green in the user interface 770. On the other hand, in response to one or more collisions between meshes in the second pose of mesh 508, region 773 may be colored red in the user interface 770. For illustrative purposes only, region 774 may be colored green to indicate that no collision occurs between meshes in the pose corresponding to region 774, while region 775 may be colored red in the user interface 770 to indicate that one or more collisions occur between meshes in the pose corresponding to region 775.
[0051] In some embodiments, block 650 may subsequently be block 660 "generating state information for the selected candidate location". In one case, at candidate location 744, one or more collisions occur in the default pose (as determined in block 640), but no collisions occur in some poses (as determined in block 650), and process 600 generates some state information for candidate location 744 in block 660. For example, with Figure 7B In this context, the generated state information may include, but is not limited to, coloring the candidate location 744 yellow in the user interface 701. The yellow indicator serves to remind operating room staff or surgeons that the physical robotic surgical system can be positioned in the operating room at a physical location corresponding to the candidate location 744 in the virtual environment 700, and that the surgical instrument 128 can maintain a posture different from its default posture (such as the first posture discussed above) to perform the surgical procedure. In this scenario, to perform the surgical procedure, the physical robotic surgical system can be positioned in the operating room at a distance of 80 cm from the patient's head and at a 90-degree angle to the patient's left and right ears, and the surgical instrument 128 can maintain a posture different from its default posture (such as any posture corresponding to the green-colored area in the user interface 770).
[0052] In another case, in response to one or more collisions occurring between meshes of all poses at mesh 508 at candidate location 744 (as determined in box 650), with Figure 7C Combined, all regions 771, 772, 773, 774, and 775 are colored red. Specifically, based on the determination made in box 650, generating state information in box 660 may include, but is not limited to, […]. Figure 7B In the user interface 701, candidate location 744 is colored red. This red indicator serves to alert operating room staff or surgeons that the physical robotic surgical system cannot be positioned in the operating room at the physical location corresponding to candidate location 744 in the virtual environment 700 to perform the surgical procedure. In this case, if the physical robotic surgical system is positioned in the operating room at a distance of 80 cm from the patient's head and at a 90-degree angle to the patient's left and right ears, the surgical procedure cannot be performed.
[0053] In some embodiments, box 660 may subsequently be box 670 “All candidate positions have been selected?”. If not all candidate positions have been selected, box 670 may loop back to box 620 to select new candidate positions (e.g., ...). Figure 7B Candidate positions 751 are selected, and boxes 630, 640, 650, and 660 will be repeated based on the newly selected candidate positions. If all candidate positions have been selected, process 600 will end at box 670.
[0054] This disclosure provides methods and systems for properly positioning a robotic surgical system in an operating room. Unlike traditional methods that rely on the experience of the staff and often result in multiple repositionings of the robotic surgical system before the procedure can be performed, this disclosure provides an improved and efficient method for positioning the robotic surgical system. Furthermore, this disclosure provides a novel mesh generation method that allows numerous candidate locations in the operating room to be effectively evaluated and considered.
[0055] The foregoing detailed embodiments have illustrated various specific examples of these apparatuses and / or processes using block diagrams, flowcharts, and / or examples. As long as such block diagrams, flowcharts, and / or examples contain one or more functions and / or operations, those skilled in the art will understand that each function and / or operation within such block diagrams, flowcharts, or examples can be implemented individually and / or collectively by a wide variety of hardware, software, firmware, or virtually any combination thereof. In some embodiments, several portions of the subject matter described herein may be implemented using an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), a digital signal processor (DSP), or other integrated formats. However, those skilled in the art will recognize that some aspects (in whole or in part) of these embodiments disclosed herein can be equivalently implemented in an integrated circuit, as one or more computer programs running on one or more computers, as one or more programs running on one or more general-purpose or special-purpose programmable processors, as firmware, or as virtually any combination thereof, and that designing the circuit system and / or writing code for the software and / or firmware will be feasible for those skilled in the art within the skill level of this disclosure. Furthermore, those skilled in the art will understand that these mechanisms of the subject matter described herein can be distributed as program products in various forms, and that exemplary embodiments of the subject matter described herein apply regardless of the specific type of non-transitory computer-readable storage medium used for actual distribution. Examples of computer-readable storage media may include, but are not limited to, recordable / non-recordable media (such as read-only memory (ROM), random access memory (RAM), magnetic or optical storage media, flash memory devices, etc.).
[0056] From the foregoing, it will be understood that various specific embodiments of this disclosure have been described herein for illustrative purposes, and various modifications may be made without departing from the scope and spirit of this disclosure. Therefore, the various specific embodiments disclosed herein are not intended to be limiting.
Claims
1. A method for positioning a robotic surgical system, comprising: Generate a first three-dimensional (3D) model associated with the robotic surgical system, a second 3D model associated with the patient, and a planned surgical path in a virtual environment, wherein the first 3D model is represented by a collection of polygonal meshes rather than any volumetric mesh; In the virtual environment, a first candidate location is selected for the first 3D model, where the first candidate location corresponds to the first physical candidate location of the robotic surgical system in the physical operating room; Based on the first candidate location and the planned surgical path, the first 3D model is simulated to move or rotate in the virtual environment; Based on simulated movement or rotation, determine whether a collision associated with the first 3D model occurs in the virtual environment; and Based on the state information used to determine the first candidate position.
2. The method of claim 1, further comprising: A set of polygonal meshes is generated before generating the first 3D model, wherein the set of polygonal meshes represents the surface of the first 3D model.
3. The method of claim 2, wherein generating the set of polygonal meshes comprises: Load a third 3D model associated with a component of the robotic surgical system, wherein a first polygonal mesh is configured to represent the surface of the third 3D model, and a first volumetric mesh is configured to represent the internal volume of the third 3D model; as well as Create an original mesh to surround the third 3D model.
4. The method of claim 3, wherein the original mesh is a spherical mesh.
5. The method of claim 3, wherein generating the set of polygonal meshes further comprises: Adjust the original mesh to match the surface of the part; Resampling adjusted grid; as well as Simplify the grid for resampling.
6. The method of claim 5, wherein the resampled grid comprises a first uniform surface having a first identical shape.
7. The method of claim 3, wherein generating the set of polygonal meshes further includes generating a second polygonal mesh corresponding to the surgeon's physical workspace.
8. The method of claim 7, wherein the second polygonal mesh is a cylindrical polygonal mesh and includes a second uniform surface having a second identical shape.
9. The method of claim 1, wherein the determination further includes determining whether a collision occurs when the first 3D model is in a default pose.
10. The method of claim 9, in response to determining that a collision occurs when the first 3D model is in a default pose, the method further includes determining whether a collision occurs when the first 3D model is in another pose different from the default pose.
11. A system for positioning a robotic surgical system, comprising: processor; as well as A non-transitory computer-readable storage medium, the non-transitory computer-readable storage medium comprising a set of executable instructions, wherein, in response to execution of the set of executable instructions by a processor, the processor: Generate a first three-dimensional (3D) model associated with the robotic surgical system, a second 3D model associated with the patient, and a planned surgical path in a virtual environment, wherein the first 3D model is represented by a collection of polygonal meshes rather than any volumetric mesh; In the virtual environment, a first candidate location is selected for the first 3D model, where the first candidate location corresponds to the first physical candidate location of the robotic surgical system in the physical operating room; Based on the first candidate location and the planned surgical path, the first 3D model is simulated to move or rotate in the virtual environment; Based on simulated movement or rotation, determine whether a collision associated with the first 3D model occurs in the virtual environment; and Generate the status information of the first candidate position.
12. The system of claim 11, wherein the non-transitory computer-readable storage medium includes an additional set of executable instructions, which, in response to the processor executing the additional set of executable instructions, causes the processor to: A set of polygonal meshes is generated before the first 3D model is generated, where the set of polygonal meshes represents the surface of the first 3D model.
13. The system of claim 12, wherein the non-transitory computer-readable storage medium includes an additional set of executable instructions, which, in response to the processor executing the additional set of executable instructions, causes the processor to: Load a third 3D model associated with the components of the robotic surgical system. The first polygonal mesh is configured to represent the surface of the third 3D model, and the first volume mesh is configured to represent the internal volume of the third 3D model; and Create an original mesh to surround the third 3D model.
14. The system of claim 13, wherein the original mesh is a spherical mesh.
15. The system of claim 13, wherein the non-transitory computer-readable storage medium includes an additional set of executable instructions, which, in response to the processor executing the additional set of executable instructions, cause the processor to: Adjust the original mesh to match the surface of the part; Resampling adjusted grid; and Simplify the grid for resampling.
16. The system of claim 15, wherein the resampled grid comprises a first uniform surface having a first identical shape.
17. The system of claim 13, wherein the non-transitory computer-readable storage medium includes an additional set of executable instructions, which, in response to the processor executing the additional set of executable instructions, causes the processor to: Generate a second polygonal mesh corresponding to the surgeon's physical workspace.
18. The system of claim 17, wherein the second polygonal mesh is a cylindrical polygonal mesh and includes a second uniform surface having a second identical shape.
19. The system of claim 11, wherein the non-transitory computer-readable storage medium includes an additional set of executable instructions, which, in response to the processor executing the additional set of executable instructions, causes the processor to: Determine whether the collision occurs when the first 3D model is in the default pose.
20. The system of claim 19, wherein the non-transitory computer-readable storage medium includes an additional set of executable instructions, which, in response to the processor executing the additional set of executable instructions, cause the processor to: In response to determining that a collision occurs when the first 3D model is in the default pose, determine whether the collision occurs when the first 3D model is in a different pose than the default pose.
