Designing patient-specific surgical items
By eliminating protrusion artifacts and adding fillets to discontinuous corners in 3D models, the computing system enhances the structural integrity and manufacturability of patient-specific surgical items, addressing breakage issues and ensuring reliable surgical outcomes.
Patent Information
- Application Number
- PCT/IB2025/060119
- Authority / Receiving Office
- WO · WO
- Patent Type
- Applications
- Current Assignee / Owner
- Priority Date
- 2024-10-08
- Filing Date
- 2025-10-07
- Publication Date
- 2026-04-16
AI Technical Summary
Existing techniques for designing patient-specific surgical items, such as surgical guides and orthopedic prostheses, often result in 3D models with protrusion artifacts and discontinuous interior corners, which are prone to breakage and difficult to manufacture, leading to potential surgical complications.
A computing system modifies 3D item models by eliminating protrusion artifacts using 3D primitive shapes and adding fillets at discontinuous interior corners to enhance structural integrity and manufacturability.
The modifications reduce the susceptibility to breakage and improve the reliability and safety of patient-specific surgical items by ensuring they can be accurately manufactured without geometric errors.
Smart Images

Figure IB2025060119_16042026_PF_FP_ABST
Abstract
Description
1262-203WO01 / TRAU1631PCT DESIGNING PATIENT-SPECIFIC SURGICAL ITEMS
[0001] This application claims priority to U.S. Provisional Patent Application 63 / 704,879, filed October 8, 2024, the entire content of which is incorporated by reference. BACKGROUND
[0002] Patient-specific surgical guides may be used in many different types of orthopedic surgeries. For example, a patient-specific surgical guide may be used in a total shoulder arthroplasty (TSA) to insert a guide pin into a patient’s glenoid fossa. In this example, the patient-specific surgical guide may have structures that conform to the unique shape of the patient’s anatomy so that that the patient-specific surgical guide can only be properly positioned on the patient’s anatomy in one way. Thus, if the patient-specific surgical guide is properly positioned on the patient’s anatomy, the patient-specific surgical guide will direct the guide pin into the patient’s glenoid fossa at the correct location and orientation.
[0003] In another example, total ankle replacement (TAR) surgery involves resecting a portion of a patient’s distal tibia and an articulating portion of the patient’s talus and replacing the resected bone with prostheses. A patient-specific surgical guide may be used for guiding the resection of bone and inserting pins that guide other steps of the TAR surgery. For example, a guide block may include a slot that aligns with a planned cut plane for a sawblade for resecting the portions of the tibia or talus.
[0004] Patient-specific orthopedic prostheses have also been developed. For example, a patient-specific orthopedic prosthesis may have a bone-facing surface that is shaped to conform to a native, unmodified shape of a bone of a patient. Patient-specific orthopedic prostheses may be especially useful in situations where the patient has severe bone erosion. SUMMARY
[0005] This disclosure describes techniques for designing patient-specific items for use in orthopedic surgeries. As described herein, a computing system enables a user to design a patient-specific surgical item, such as a patient-specific surgical guide or patient- specific orthopedic prosthesis. In accordance with some techniques of this disclosure, the1262-203WO01 / TRAU1631PCT computing system may obtain an initial 3-dimensional (3D) item model that represents a patient-specific surgical item. The computing system may identify one or more discontinuous interior corners of the 3D item model and modify the interior corners to include fillets. The patient-specific surgical item may be manufactured based on the 3D item model. Modifying the interior corners of the 3D item model to include the fillets may decrease the susceptibility of the patient-specific surgical items to breakage. Additionally or alternatively, in accordance with one or more examples of this disclosure, the computing system may identify and remove protrusion artifacts of the 3D item model.
[0006] In one example, this disclosure describes a computer-implemented method of designing a patient-specific surgical item comprising: obtaining, by one or more processors, a 3-dimensional (3D) item model representing at least a surface of a patient- specific surgical item that is shaped to conform to one or more anatomical structures of a patient; determining, by the one or more processors, a size of a 3D primitive shape and a position of the 3D primitive shape such that the 3D primitive shape is collocated with a protrusion artifact of the 3D item model; modifying, by the one or more processors, the 3D item model to exclude portions of the 3D item model collocated with the 3D primitive shape; and generating, by the one or more processors, output data based on the modified 3D item model.
[0007] In another example, this disclosure describes a computer-implemented method comprising: obtaining, by one or more processors, a 3-dimensional (3D) item model representing a patient-specific surgical item that has at least one surface shaped to conform to one or more anatomical structures of a patient; obtaining, by the one or more processors, a 3D anatomy model representing the one or more anatomical structures of the patient; identifying, by the one or more processors, a discontinuous interior corner of the 3D item model; determining, by the one or more processors, a radius of curvature of a fillet at the discontinuous interior corner such that the radius of curvature of the fillet is a largest radius of curvature in a predefined series of radii of curvature that does not cause a collision of the 3D item model and the 3D anatomy model when a position of the 3D item model relative to the 3D anatomy model corresponds to a position at which the patient-specific surgical item will be used with respect to the one or more anatomical structures; and modifying, by the one or more processors, the 3D item model to include the fillet.1262-203WO01 / TRAU1631PCT
[0008] The details of various examples of the disclosure are set forth in the accompanying drawings and the description below. Various features, objects, and advantages will be apparent from the description, drawings, and claims. BRIEF DESCRIPTION OF DRAWINGS
[0009] FIG. 1 is a block diagram illustrating an example system in which one or more techniques of this disclosure may be performed.
[0010] FIG. 2 is a conceptual diagram illustrating an example patient-specific glenoid guide.
[0011] FIG.3A is a conceptual diagram illustrating an example oblique view of a patient- specific tibial resection guide.
[0012] FIG. 3B is a conceptual diagram illustrating an example anterior view of the patient-specific tibial resection guide.
[0013] FIG. 3C is a conceptual diagram illustrating an example oblique view of the patient-specific tibial resection guide with a conversion instrument and saw guide.
[0014] FIG. 4 is a flowchart of an example process for designing a patient-specific surgical guide for a total ankle replacement surgery, in accordance with one or more techniques of this disclosure.
[0015] FIG.5 is a flowchart illustrating an example process for positioning a Total Ankle Replacement (TAR) guide model, in accordance with one or more techniques of this disclosure.
[0016] FIG. 6A is a conceptual diagram illustrating an example TAR guide having features usable for defining a lack of bone reference condition, in accordance with one or more techniques of this disclosure.
[0017] FIG. 6B is a conceptual diagram illustrating example bone reference lines, in accordance with one or more techniques of this disclosure.
[0018] FIG. 7 is a flowchart illustrating an example process for generating fillets of patient-specific surgical items, in accordance with one or more techniques of this disclosure.
[0019] FIG. 8A is a conceptual diagram illustrating an example patient-specific tibial resection guide with protrusion artifacts, in accordance with one or more techniques of this disclosure.1262-203WO01 / TRAU1631PCT
[0020] FIG. 8B is a conceptual diagram illustrating an example patient-specific tibial resection guide without protrusion artifacts, in accordance with one or more techniques of this disclosure.
[0021] FIG. 9 is a flowchart illustrating an example operation to remove protrusion artifacts, in accordance with one or more techniques of this disclosure.
[0022] FIG.10 is a block diagram illustrating example components of an artifact removal system, in accordance with one or more techniques of this disclosure.
[0023] FIG. 11 is a conceptual diagram illustrating an example point cloud learning model in accordance with one or more techniques of this disclosure.
[0024] FIG.12 is a block diagram illustrating an example architecture of a T-Net model in accordance with one or more techniques of this disclosure.
[0025] FIG. 13 is a conceptual diagram illustrating an example mesh-based neural network model, in accordance with one or more techniques of this disclosure. DETAILED DESCRIPTION
[0026] Patient-specific surgical items, such as patient-specific surgical guides and patient-specific orthopedic prostheses, have surfaces shaped to fit specific patients. For example, a patient-specific surgical guide may have one or more surfaces that are shaped to conform to specific areas on a surface of a bone of a patient and may include slots or holes to guide sawblades or pins. A patient-specific orthopedic prosthesis may have a surface shaped to conform to a bone of a patient. For instance, a patient-specific glenoid prosthesis may have a medial, bone-facing surface shaped to conform to a glenoid fossa and surrounding areas of a patient’s scapula.
[0027] Patient-specific surgical items may be designed using computer-implemented surgical planning systems during a preoperative planning period. A surgical planning system may use computer-assisted design (CAD) systems to determine a shape of a patient-specific surgical item. For instance, the surgical planning system may obtain a 3- dimensional (3D) anatomic model of one or more anatomical structures of a patient, such as one or more bones and / or soft tissue structures. The surgical planning system may generate a 3D item model based on the 3D anatomic model. The 3D item model represents a patient-specific surgical item. A manufacturing system may manufacture the patient- specific surgical item based on data that represent the 3D item model.
[0028] There are several shortcomings associated with existing techniques for designing and manufacturing patient-specific surgical items. For example, existing techniques for designing patient-specific surgical items can lead to 3D item models that include protrusion artifacts. A protrusion artifact of a 3D item model is a portion of the 3D item model that is excessively thin. If a patient-specific surgical item were manufactured with a protrusion artifact, the protrusion artifact may easily break off, which could lead to surgical complications. Additionally, it may not be possible to manufacture a patient- specific surgical item with a protrusion artifact because a manufacturing device, such as a 3D printer, may not be able to produce the protrusion artifact because the resolution of the manufacturing device is not small enough to produce the protrusion artifact. For example, some 3D printers, such as 3D printers that use a sintering process, are required to have a minimum wall thickness of 0.7mm. Being unable to produce all portions of a patient-specific surgical item may lead to unpredictable results.
[0029] In another example of the shortcomings associated with existing techniques for designing and manufacturing patient-specific surgical items, a 3D item model may include discontinuous interior corners. A discontinuous interior corner is an interior corner at which an abrupt change of surface direction occurs. An interior corner is a corner with a concave profile. Discontinuous interior corners are vulnerable to breakage because mechanical stress can accumulate at discontinuous interior corners.
[0030] This disclosure describes techniques that address one or more of the shortcomings associated with the existing techniques for designing and manufacturing patient-specific surgical items. For example, this disclosure describes techniques for eliminating protrusion artifacts in 3D item models of patient-specific surgical items. In this example, a computing system that includes one or more processors may obtain a 3D item model representing at least a surface of a patient-specific surgical item that is shaped to conform to one or more anatomical structures of a patient. The computing system may determine a size of a 3D primitive shape and a position of the 3D primitive shape such that the 3D primitive shape is collocated with a protrusion artifact of the 3D item model. The computing system may modify the 3D item model to exclude portions of the 3D item model collocated with the 3D primitive shape. The computing system may generate output data based on the modified 3D item model. Eliminating protrusion artifacts in this way improves the safety and reliability of the patient-specific surgical items.
[0031] Additionally, the use of a 3D primitive shape for modifying the 3D item model is computationally efficient. Using simple shapes like cylinders, cubes or spheres to modify1262-203WO01 / TRAU1631PCT a complex 3D part may offer several advantages. These primitive geometric forms are computationally efficient and straightforward to manipulate, making them ideal for precise, predictable modifications. Their simplicity reduces the risk of introducing geometric errors or complexities that can arise with more intricate shapes. By employing these basic shapes, users can leverage robust Boolean operations to perform cuts or extrusions effectively, ensuring accurate results and maintaining the integrity of the complex part.
[0032] In another example, this disclosure describes techniques of modifying 3D item models to include fillets at discontinuous interior corners. In this example, a computing system that includes one or more processors may obtain a 3D item model representing a patient-specific surgical item. The patient-specific surgical item has at least one surface shaped to conform to one or more anatomical structures of a patient. Additionally, the computing system may obtain a 3D anatomy model representing the one or more anatomical structures of the patient. The computing system may identify a discontinuous interior corner of the 3D item model and determine a radius of curvature of a fillet at the discontinuous interior corner such that the radius of curvature of the fillet is a largest radius of curvature in a predefined series of radii of curvature that does not cause a collision of the 3D item model and the 3D anatomy model when a position of the 3D item model relative to the 3D anatomy model corresponds to a position at which the patient- specific surgical item will be used with respect to the one or more anatomical structures. The computing system may modify the 3D item model to include the fillet.
[0033] Modifying 3D item models to include fillets in this way may resolve certain computational issues associated with existing techniques for modeling of 3D items. For example, applying fillets to complex shapes can sometimes fail or cause application crashes due to the geometric complexity involved. When adding fillets, conventional software calculates the precise curvature at intersections, which can become problematic with intricate or tightly intersecting geometries. The challenges include dealing with very small or irregular faces, intersecting edges that do not align neatly, or edges that are too close together, which complicates the fillet computation. Additionally, the algorithms of conventional software may need to manage the transition between different surfaces smoothly, and any errors or ambiguities in the geometry can cause the operation to fail or strain system resources. Furthermore, if a fillet or round cannot be applied to a specific part of the geometry (for example, due to a space that is too tight between two entities), it can cause crashes. These issues can lead to stability problems or crashes if the1262-203WO01 / TRAU1631PCT calculations exceed the software’s capabilities or if the geometry is not well-defined. The process of determining a radius of curvature of a fillet at the discontinuous interior corner such that the radius of curvature of the fillet is the largest radius of curvature in a predefined series of radii of curvature that does not cause a collision of the 3D item model and 3D anatomy model may alleviate this issue through simpler calculations.
[0034] FIG. 1 is a conceptual diagram illustrating an example system 100 in which one or more techniques of this disclosure may be performed. System 100 includes a computer system 102 and a manufacturing system 104. Computing system 102 includes one or more computing devices. In the example of FIG.1, computing system 102 includes one or more processors 106, a communication interface 108, a display 110, and a storage system 112. In other examples, computing system 102 may include more, fewer, or different components. The components of computing system 102 may be in one or more computing devices. For example, processors 106 may be in a single computing device or may be distributed among multiple computing devices of computing system 102, storage system 112 may be in a single computing device or may be distributed among multiple computing devices of computing system 102, and so on. In some examples, computing system 102 is a personal computer, a system of computing devices, one or more server devices, or a system comprising one or more other types of computing devices.
[0035] Processors 106 may be implemented in circuitry and include one or more microprocessors, digital signal processors (DSPs), application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), hardware, or any combinations thereof. In general, processors 106 may be implemented as fixed-function circuits, programmable circuits, or a combination thereof. Fixed-function circuits refer to circuits that provide particular functionality and are preset on the operations that can be performed. Programmable circuits refer to circuits that can be programmed to perform various tasks and provide flexible functionality in the operations that can be performed. For instance, programmable circuits may execute software or firmware that cause the programmable circuits to operate in the manner defined by instructions of the software or firmware. Fixed-function circuits may execute software instructions (e.g., to receive parameters or output parameters), but the types of operations that the fixed-function circuits perform are generally immutable. In some examples, one or more of the units may be distinct circuit blocks (fixed-function or programmable), and in some examples, the one or more units may be integrated circuits.
[0036] Processors 106 may include arithmetic logic units (ALUs), elementary function units (EFUs), digital circuits, analog circuits, and / or programmable cores, formed from programmable circuits. In examples where the operations of processors 106 are performed using software executed by the programmable circuits, storage system 112 may store the object code of the software that processors 106 receive and execute, or another memory within processors 106 (not shown) may store such instructions. Examples of the software include software designed for surgical planning. Processors 106 may perform the actions ascribed in this disclosure to sets of such instructions.
[0037] Storage system 112 may store various types of data used by processors 106. Storage system 112 may include any of a variety of memory devices, such as dynamic random access memory (DRAM), including synchronous DRAM (SDRAM), magnetoresistive RAM (MRAM), resistive RAM (RRAM), or other types of memory devices. Examples of display 110 include a liquid crystal display (LCD), a plasma display, an organic light emitting diode (OLED) display, or another type of display device.
[0038] Communication interface 108 may include hardware circuitry that enables computing system 102 to communicate (e.g., wirelessly or using wires) to other computing systems and devices. Example networks may include various types of communication networks including one or more wide-area networks, such as the Internet, local area networks, and so on. In some examples, the network may include wired and / or wireless communication links.
[0039] In the example of FIG. 1, storage system 112 stores instructions and data associated with a planning system 118, a 3D item model 122, and a 3D anatomy model 124. In other examples, storage system 112 may store more, fewer, or different types of instructions and data. Moreover, the instructions and data illustrated in the example of FIG. 1 are provided for purposes of explanation and may not represent how data is actually stored or how software is actually implemented. Planning system 118 may comprise instructions that are executable by processors 106. For ease of explanation, this disclosure may describe planning system 118, or components thereof, as performing various actions when processors 106 execute instructions of planning system 118.
[0040] Planning system 118 is a system that may help a surgeon plan an orthopedic surgery, either as part of a pre-operative planning process or an intra-operative planning process. More specifically, planning system 118 may help the surgeon select an orthopedic prosthesis for implantation into a patient when there are multiple available1262-203WO01 / TRAU1631PCT orthopedic prostheses. For ease of explanation, this disclosure may refer to orthopedic prostheses as simply prostheses.
[0041] Planning system 118 may be applicable in helping a user select a prosthesis in the context of a variety of orthopedic surgeries. For example, in an ankle arthroplasty, planning system 118 may help the user select a tibial prosthesis and / or a talar prosthesis. In a shoulder arthroplasty, planning system 118 may help the user select a glenoid prosthesis and / or a humeral prosthesis. In a knee arthroplasty, planning system 118 may help the user select a femoral prosthesis and / or a tibial prosthesis. In a hip arthroplasty, planning system 118 may help the user select an acetabular prosthesis and / or a femoral prosthesis. Other examples may apply with respect to other bones and / or joints.
[0042] In some examples, planning system 118 generates one or more user interfaces that display one or more 3D anatomical models of one or more anatomical structures of a patient, such as 3D anatomy model 124. The anatomical structures may include bones, such as the scapula, tibia, talus, etc., and / or soft tissue structures. Additionally, the user interfaces of planning system 118 may allow the user to provide input for virtually positioning a 3D model of a surgical item with respect to the 3D anatomy model. For instance, the user interfaces of planning system 118 may allow the user to provide input for virtually positioning a 3D model of an orthopedic prosthesis with respect to the one or more 3D anatomical models. In an example where the patient-specific item is a glenoid prosthesis, the user interfaces of planning system 118 may allow the user to provide input specifying an inclination, version, medialization, prosthesis size, offset, and other parameters of the glenoid prothesis. In a similar example, the user interfaces of planning system 118 may allow the user to provide input specifying a position and type of a tibial prosthesis and talar prosthesis with respect to a 3D model of the patient’s tibia and a 3D model of the patient’s talus. In some examples, planning system 118 includes tools for recommending positions and types of prostheses.
[0043] Furthermore, in the example of FIG. 1, planning system 118 includes a design system 130. Design system 130 is configured to design patient-specific surgical items, such as patient-specific surgical guides and / or patient-specific orthopedic prostheses. In some examples, design system 130 enables a user to design patient-specific surgical guides. For instance, design system 130 may provide a user interface that enables the user to view 3D anatomy model 124, determine a position of one or more components of a patient-specific surgical guide, and so on. In an example where the patient-specific surgical guide is a guide for installing a guide pin in a glenoid fossa of a scapula of apatient, planning system 130 may receive indications of, or may determine, an axis of the guide pin and an entry point on the glenoid fossa. In the example, design system 130 may generate a 3D model of a patient-specific glenoid guide that has surfaces that conform to corresponding surfaces of the 3D anatomic model and defines a lumen that guides the pin along the axis to the entry point on the glenoid fossa. FIG.4, which is described in greater detail below, describes a process for designing a patient-specific resection guide for TAR.
[0044] Design system 130 may generate output data based on 3D item model 122. In some examples, the output data includes an STL file or a Standard for the Exchange of Product Data (STEP) CAD file containing a representation of the one or more components of the patient-specific surgical item. In some examples, the 3D item model may be represented in a boundary format while the 3D item model is being designed, and design system 130 may then confirm the boundary format data to an STL file.
[0045] Manufacturing system 104 is configured to manufacture patient-specific surgical items or patient-specific components thereof. In some examples, manufacturing system 104 includes an additive manufacturing system, such as a 3D printing system, configured to manufacture patient-specific surgical items or components thereof. Manufacturing system 104 may manufacture the patient-specific surgical items or patient-specific components thereof from materials such as various plastics or metals (e.g., titanium, stainless steel, and various alloys).
[0046] In some examples, computing system 102 configures manufacturing system 104 to manufacture one or more patient-specific components of a patient-specific surgical item. In some examples, the one or more patient-specific components of the patient- specific surgical item are the entire patient-specific surgical item.
[0047] Design system 130 may include one or more of a fillet system 132, a guide placement system 134, and an artifact removal system 136. Fillet system 132 is configured to modify models of patient-specific surgical items to include fillets at discontinuous interior corners. A fillet is a concave strip of material that rounds off an interior angle between two surfaces. Modifying the models of patient-specific surgical items to include such fillets may reinforce the surgical items, making the surgical items less susceptible to breaking at interior angles between surfaces.
[0048] Placement system 134 is configured to determine a recommended placement of a patient-specific surgical guide for a TAR. Placement system 134 may determine the recommended placement of the patient-specific surgical guide such that one or more clearance distances and other design requirements are respected. Example clearance1262-203WO01 / TRAU1631PCT distances may include a distance from a posterior tip of the patient-specific surgical guide to a fibula, a distance from a saw guide insert of the patient-specific surgical guide to an anterior surface of a tibia, and so on.
[0049] Artifact removal system 136 is configured to remove protrusion artifacts from 3D item models. For instance, artifact removal system 136 may obtain 3D item model 122 representing at least a surface of a patient-specific surgical item that is shaped to conform to one or more anatomical structures of a patient. Artifact removal system 136 may determine a size of a 3D primitive shape and a position of the 3D primitive shape such that the 3D primitive shape is collocated with a protrusion artifact of 3D item model 122. Artifact removal system 136 may then modify 3D item model 122 to exclude portions of 3D item model 122 collocated with the 3D primitive shape. Artifact removal system 136 may generate output data based on the modified 3D item model 122.
[0050] FIG. 2 is a conceptual diagram illustrating an example patient-specific glenoid guide 200, in accordance with one or more techniques of this disclosure. Patient-specific glenoid guide 200 is positioned at a glenoid fossa of a scapula 202. In the example of FIG. 2, patient-specific glenoid guide 200 includes a cannulated central element 204, a plurality of legs 206, and a plurality of feet 208. In other examples, there may be one or more legs and one or more feet. The lengths and angles of legs may be specific to scapula 202. Each of feet 208 may have a circular cross-section, a square cross-section, or another shaped cross-section. Additionally, bone-facing surfaces of feet 208 may be specific to scapula 202. Thus, patient-specific glenoid guide 200 may only be positioned correctly on scapula 202 in one way. After patient-specific glenoid guide 200 has been positioned on scapula 202, a drill bit or guide pin may be inserted through cannulated central element 204 so that the drill bit or guide pin enters scapula 202 at a preplanned insertion location with a preplanned insertion orientation.
[0051] As shown in the example of FIG. 2, junctions of legs 206 and feet 208 include discontinuous interior corners, such as discontinuous interior corners 210. Similarly, junctions of legs 206 and cannulated central element 204 include discontinuous interior corners 210. Mechanical stress may accumulate in discontinuous interior corners, which may lead to partial or complete breakage at the discontinuous interior corners. Breakage of a patient-specific surgical guide during a surgery could have serious negative consequences for the surgery. For instance, a surgeon may be unable to continue the surgery if the patient-specific surgical guide breaks. This situation is made worse because the patient-specific surgical guide is most likely to break after the joint is exposed while1262-203WO01 / TRAU1631PCT the surgeon is positioning the patient-specific surgical guide. Additionally, discontinuous interior corners may be more difficult to sterilize than continuous, rounded corners.
[0052] FIG. 3A is a conceptual diagram illustrating an example oblique view of a total ankle replacement (TAR) guide 300. FIG. 3B is a conceptual diagram illustrating an example anterior view of TAR guide 300. As shown in the examples of FIG.3A and FIG. 3B, TAR guide 300 includes guide arms 302, instrument hole towers 304, an anterior finger 306, a saw guide housing 308, and talus hole towers 310. Instrument hole towers 304 direct guide pins into a patient’s tibia 312. The guide pins directed into the patient’s tibia 312 may help to stabilize TAR guide 300 to tibia 312 and may also align a conversion instrument with TAR guide 300. The conversion instrument may allow switching from one tool to another while staying in place on the patient's anatomy. For example, a user can attach a device called a coronal sizing guide, as well as a saw guide to the conversion instrument. A saw guide is attached to the conversion instrument and is inserted into saw guide housing 308. A blade of an oscillating saw may slide within the saw guide as part of the process to resect a portion of the patient’s tibia. The saw guide may also define bore holes at the corners of the three cutting surfaces. A surgeon may direct a drill bit through the bore holes prior to using the oscillating saw.
[0053] Talus hole towers 310 direct guide pins into a patient’s talus 314. A bridge element 316 connects talus hole towers 310. Like glenoid guide 200, TAR guide 300 may have discontinuous interior corners. For example, discontinuous interior corners may be present at the intersection of anterior finger 306 and saw guide housing 308, at the intersections of arms 302 and anterior finger 306, and so on.
[0054] FIG. 3C is a conceptual diagram illustrating an example oblique view of the patient-specific TAR guide 300 with a conversion instrument 350 and saw guide 352. Pins 354 that pass through instrument towers 304 and into tibia 312 hold conversion instrument 350 in place with respect to tibia 312. Additional pins 356 pass through saw guide 352 to secure saw guide 352 with respect to a fragment of tibia 312 that will be resected. Saw guide 352 includes slots through which an oscillating saw blade may pass for resecting the fragment of tibia 312.
[0055] FIG. 4 is a flowchart of an example process for designing a patient-specific surgical guide for a total ankle replacement surgery, in accordance with one or more techniques of this disclosure. In the example of FIG. 4, design system 130 may generate a design of guide arms 302 of the patient-specific surgical guide (400). In some examples, in a first step of a process to generate the design of guide arms 302, design system 1301262-203WO01 / TRAU1631PCT may identify a plane that will enclose arms 302 in the proximal-distal direction. For instance, a distal plane may be a first distance (e.g., 36 mm) from a guide origin point and a proximal plane may be a second distance (e.g., 42 mm) from the guide origin point. The guide origin point may be a predetermined point, such as a landmark on or near a distal surface of the patient’s tibia). Next, in a second step, design system 130 may determine a curve created by an intersection of a tibia model and the distal plane.
[0056] In a third step of the process to generate the design of guide arms 302, design system 130 may define medial points of the final arm shape. In some examples, the medial arm must extend around the tibia until it reaches a third of the distance (33%) between the anterior and posterior ends of tibia silhouette. Accordingly, design system 130 may search for the intersection (i.e., point A) between the defined tibia contour and a line located at this antero-posterior distance. Design system 130 may define another point (i.e., point B) at 1mm from the tibia contour at point A and perpendicular to the tibia silhouette. Design system 130 may add an arm thickness value (e.g., 5mm) in the antero-posterior direction to point B location to define a medial point (i.e., point C).
[0057] In a fourth step of the process to generate the design of guide arms 302, design system 130 may define the lateral points of the final arm shape. In some examples, the lateral arm must extend around the tibia such that the distance between the most sagittal point of the lateral arm and the guide origin is 13mm (in the medial-lateral direction). So, design system 130 may search for an intersection (i.e., point D) between the tibia contour defined and a frontal line located at this distance. Design system 130 may define another point (i.e., point E) at 1mm from the tibia contour at point D and perpendicular to the tibia silhouette. Design system 130 may add the arm thickness value (e.g., 5mm) in the antero- posterior direction to point E location to define the final medial point (i.e., point F).
[0058] In a fifth step of the process to generate the design of guide arms 302, design system 130 may define others points of guide arms 302 using the contour of the tibia generated in step 2, contour extracted and offset by 5mm. In a sixth step of the process to generate the design of guide arms 302, design system 130 may reunite every point of the arm (e.g., Points A, B, C, D, and E), create a face and extrude this face in the proximal direction by an arm height value (e.g., 6mm) to obtain the final shape of guide arms 302.
[0059] Design system 130 may then determine a patient-specific bone-facing surface of the guide arms 302. Since the bone-facing surface of guide arms 302 is patient-specific, protrusion artifacts may be present on the bone-facing surface of the extruded shape.1262-203WO01 / TRAU1631PCT
[0060] Design system 130 may then generate a design of instrument hole towers 304 (402). Design system 130 may design instrument hole towers 304 such that bone-facing surfaces of instrument hole towers 304 are shaped to conform to the shape of the patient’s tibia. When designing instrument hole towers 304, design system 130 may follow specific rules. These rules may include rules that anterior faces of instrument hole towers 304 are coplanar, that holes defined through instrument hole towers 304 being continuous lengths and be completely surrounded by material, that the hole length be between specific lengths (e.g., 10 mm and 25.4 mm), and so on. In some examples, design system 130 may design instrument hole towers 304 such that centers of the holes are predefined distances from the guide origin point and a predetermined distance laterally from one another. Since the bone-facing surfaces of instrument hole towers 304 are patient-specific, protrusion artifacts may be present on the bone-facing surfaces of instrument towers 304.
[0061] Design system 130 may then generate a design of anterior finger 306 of the patient-specific surgical guide (404). In some examples, design system 130 may generate the design of anterior finger 306 such that a bone-facing surface (i.e., a posterior surface) of anterior finger 306 is shaped to conform to a shape of the patient’s tibia. Since the bone-facing surfaces of anterior finger 306 is patient-specific, protrusion artifacts may be present on the bone-facing surface of anterior finger 306. Design system 130 may combine the designs of arms 302, instrument hole towers 304, and anterior finger 306 to form an upper body of the patient-specific surgical guide (406).
[0062] Additionally, design system 130 may generate a design of a saw guide housing 308 (408). In some examples, design system 130 designs saw guide housing 308 such that a proximal surface of saw guide housing 308 is a predetermined distance in the proximal direction from the guide origin point. A bone-facing surface of saw guide housing 308 may conform to a shape of the patient’s tibia. Since the bone-facing surfaces of saw guide housing 308 are patient-specific, protrusion artifacts may be present on the bone-facing surface of saw guide housing 308. Saw guide housing 308 may be shaped to accommodate a metal saw guide used for resecting a portion of tibia 312.
[0063] Design system 130 may determine positions of talus hole towers 310 and bridge 312 (410). In some examples, the anterior faces of talus hole towers 310 must be coplanar. In some examples, a length of holes defined by talus hole towers 310 must be continuous and completely surrounded by material. In some examples, a hole length must be at least a specific length (e.g., 12 mm). A proximal-distal distance of the center points of the holes from a guide origin point may depend on sizes of planned tibia and talar implants, and1262-203WO01 / TRAU1631PCT whether a flat or chamfered cut is planned. The guide origin point used for the talus hole towers 310 may be the same as or different from the guide origin point used for other components of TAR guide 300. Bridge 316 may have a flat or a curved profile depending on whether a flat or a chamfered cut is planned. Design system 130 may then combine the designs of upper body (arms 302, instrument hole towers 304, anterior finger 306) and lower body (saw guide housing 308, talus hole towers 310, and bridge element 316) (412).
[0064] In some examples, there may be design requirements related to specific guide-to- bone clearance distances. Some of the design requirements may relate to clearance distances between the guide and specific bones. When a CT scan is performed on a patient’s ankle, the patient is typically lying down. However, the bones of the ankle have different positions relative to one another when the patient is lying down and standing up. Accordingly, planning system 118 may simulate the positions of the bones when the patient is standing. This disclosure may refer to bones at their simulated positions as being “corrected” bones. Bones at their positions as measured while the patient is lying down may be referred to as “uncorrected” bones.”
[0065] In one example, it may be a design requirement that a clearance distance between the guide and the patient’s fibula must be at least 4 mm. Other example design requirements may include: - The minimum clearance distance between the inserted saw guide 352 and tibia 312 must be at least 3.5 mm (and this distance must be minimized while meeting all other constraints). - The maximum clearance distance between the inserted saw guide 352 and a planned position of a tibia prostheses is 15 mm. - The minimum clearance distance between saw guide 352 and an uncorrected talus and uncorrected navicular bone must each be at least 1.5 mm. If these are not met, saw guide 352 must be moved anteriorly, without exceeding the 15 mm maximum distance rule from the previous slide. If all conditions cannot be met at the same time, then TAR guide 300 cannot be designed, and an alternative pin-alignment guide may be used instead. For example, if one or more of the conditions cannot be met, a pin alignment guide may be used. The pin alignment guide aligns pins into the tibia. The user then removes the pin alignment guide, and a separate resection guide is positioned on the bone using1262-203WO01 / TRAU1631PCT the pins. The resection guide may then be used for resection of a distal portion of the patient’s tibia. - The minimum clearance distance between saw guide 352 and the corrected talus and corrected navicular bone must each be at least 1.5 mm. If these minimum clearance distances are not met, saw guide 352 must be moved anteriorly, without exceeding the 15 mm max distance rule from the first slide. If all conditions cannot be met at the same time, then the talus pin hole towers 310 and bridge 316 must not be added, and the saw guide 352 must be returned to the posterior-most position that satisfies the constraints regarding the uncorrected talus and navicular and minimum distance from the tibia.
[0066] These positioning rules may manage conflicts between instruments used intraoperatively and the patient’s bone morphology. Maintaining minimum clearance distances between the instruments and the patient’s bone morphology, as well as maximum distances to ensure that the saw is long enough to properly perform the bone cuts, may help avoid adverse effects. Moreover, these conditions are to be verified for bones in the weight-bearing position, which may be simulated intraoperatively by the surgeon. TAR guide 300 may allow both tibial and talar cuts (i.e., combined cuts). In the case of a combined cut, it may be important to ensure that the distances between the instruments and the bones are viable in the corrected position of the bones during surgery. If the distances cannot be maintained in the simulated weight-bearing position, the resect- through guide will not be coupled, meaning there will be no talus tower or bridge between the towers, as the talar cut may need to be performed using a dedicated talus guide. If the distances cannot be maintained in the non-corrected position (scanner position), then the resect-through guide cannot be used and a pin alignment guide may be use instead.
[0067] FIG.5 is a flowchart illustrating an example process for positioning a TAR guide model, in accordance with one or more techniques of this disclosure. The TAR guide model is a model of a TAR guide. In general, planning system 118 determines a position of the tibial resection guide model such that a saw guide inserted into the TAR guide is placed as posterior as possible with respect to the patient’s tibia, while respecting all necessary clearance distances. Planning system 118 may receive user input to specify the position of a tibial prosthesis model with respect to the 3D anatomy model or planning system 118 may automatically generate a recommended position of the tibial prosthesis model with respect to the 3D anatomy model.1262-203WO01 / TRAU1631PCT
[0068] Design system 130 may determine an anterior-most point of the tibia prosthesis model along an anterior-posterior axis (500). Design system 130 also determines a posterior-most point of a saw guide model along the anterior-posterior axis (502). The saw guide model is a model of a saw guide (e.g., saw guide 352). Design system 130 may determine a distance between the saw guide model and the tibia prosthesis model based on the anterior-most point of the tibia prosthesis model and the posterior-most point of the saw guide model. The default antero-posterior translation of the saw guide model, and thus the saw guide, is defined with this distance and the minimum clearance distance with the tibia.
[0069] In the example of FIG. 5, design system 130 may set a position of the saw guide model to a default position with respect to a 3D anatomy model and a tibial prosthesis model (504). The 3D anatomy model may represent at least a distal tibia, distal fibular, talus, and navicular bone. Positions within each of the tibial resection guide model, the 3D anatomy model, and a tibial prosthesis model are defined within a respective coordinate system. A resection guide transformation matrix may define a function for transforming coordinates in the coordinate system of the tibial resection guide model to coordinates in the coordinate system of the 3D anatomy model. A tibial prosthesis transformation matrix may define a function for transforming coordinates in the coordinate system of the tibial prosthesis model to coordinates in the coordinate system of the 3D anatomy model. In some examples, design system 130 may set the position of the tibial resection guide model such that the posterior-most point of the tibial resection guide model is a predefined distance (e.g., 3.5 mm) from the anterior-most point of the tibial prosthesis model.
[0070] Next, design system 130 may determine whether clearance distances for the tibia, talus, and navicular bone are respected (508). Example clearance distances are described elsewhere in this disclosure. If the clearance distances for the tibia, talus, and navicular bone are not respected (“NO” branch of 508), design system 130 may determine whether a maximum allowed position of the tibial resection guide model along the anterior- posterior axis has been exceeded (510). A clearance distance is not respected if a design requirement involving the clearance distance is not satisfied. The maximum allowed anterior position may be a predefined distance (e.g., 15 mm) between the posterior-most point of the saw guide model and anterior-most point of the tibia prosthesis model. If the maximum allowed position of the saw guide model along the anterior-posterior axis has been exceeded, it may not be possible to design a TAR guide that is usable for resectingareas of both the distal tibial and proximal talus. Accordingly, if the maximum allowed position of the tibial resection guide model along the anterior-posterior axis has been exceeded (“YES” branch of 510), design system 130 may switch to planning the TAR with an alternative alignment guide, such as a pin alignment guide (514). The pin alignment guide may include two talus pin towers, an anterior finger, arms, a handle, and legs. The pin alignment guide may be positioned on the anterior tibia and pins may be inserted through the talus pin towers into the tibia. The pin alignment guide may then be removed, a drill guide may be positioned on the tibia using the pins for drilling holes at proximal corners of the area of the distal tibia to be resected, the drill guide may then be removed and a resection guide may be positioned on the tibia using the same pins. The resection guide may then be used to guide an oscillating saw to resect the portion of the distal tibia.
[0071] On the other hand, if the maximum allowed position of the tibial resection guide model along the anterior-posterior axis has not been exceeded (“NO” branch of 510), design system 130 may translate the saw guide model anteriorly along the anterior- posterior axis with respect to the 3D anatomic model and tibial prosthesis model (512). Design system 130 may translate the saw guide model by a predetermined distance, such as 0.5 mm. Design system 130 may then determine again whether the clearance distances for the tibia, talus, and navicular bones are respected (508). Design system 130 may iteratively continue to translate the saw guide model until either the clearance distances are respected or the maximum allowed position is exceeded.
[0072] If the clearance distances for the tibia, talus, and navicular bones are respected (“YES” branch of 508), design system 130 may determine whether clearance distances with respect to a corrected talus model and a corrected navicular bone model are respected (516). The corrected talus model is a model of the talus at a corrected position for simulating the position of the talus while the patient is standing. Similarly, the corrected navicular bone model is a model of the navicular bone at a corrected position for simulating the position of the navicular bone while the patient is standing.
[0073] If design system 130 determines that the clearance distances for the corrected talus and the corrected navicular bone are not respected (“NO” branch of 516), design system 130 may determine whether a maximum allowed position of the saw guide model along the anterior-posterior axis has been exceeded (520). If the maximum allowed position of the saw guide model along the anterior-posterior axis has been exceeded, it may not be possible to design a TAR guide that is usable for resecting areas of both the distal tibial1262-203WO01 / TRAU1631PCT and proximal talus. Accordingly, if the maximum allowed position of the saw guide model has been exceeded (“YES” branch of 520), design system 130 may design the TAR guide model without talus towers and the bridge between the talus towers (522). Design system 130 may design the TAR guide model without the talus towers and without the bridge between the talus towers because, if the clearance distance criteria cannot be met, a talus resection guide for resecting a portion of the talus cannot be placed correctly due to the talus towers. In that case, a separate talus guide may be needed to place a resection guide for resecting the portion of the talus.
[0074] On the other hand, if the maximum allowed anterior position of the saw guide model in the anterior-posterior axis has not been exceeded (“NO” branch of 520), design system 130 may translate the saw guide model anteriorly along the anterior-posterior axis with respect to the 3D anatomic model and tibial prosthesis model (524). Design system 130 may translate the saw guide model by a predetermined distance, such as 0.5 mm.
[0075] If design system 130 determines that the clearance distances for the corrected talus and the corrected navicular bone are respected (“YES” branch of 516), the process of determining the position of the tibial resection guide model may be complete (518). Design system 130 may design saw guide housing 308 such that the saw guide housing holds the saw guide at the determined position along the anterior-posterior axis.
[0076] FIG. 6A is a conceptual diagram illustrating an example TAR guide 600 having features 602 usable for defining a lack of bone reference condition, in accordance with one or more techniques of this disclosure. Features 602 are reference point that allow a user to define a condition called “lack of bone reference.” If there is no bony material (e.g., no tibia bone) at the height of features 602 on both sides, this means that if the profile of the distal part of tibia 604 goes beyond features 602 in the proximal direction, TAR guide 600 cannot be used, as there will not be enough material of TAR guide 600 in contact with tibia 604 to hold TAR guide 600 properly during surgery. Thus, when designing a TAR guide, design system 130 may ensure that there is bony material at the height of features 602 on both sides. If a user or design system 130 cannot ensure that there is bony material at the height of features 602, it may not be possible to design a TAR guide for the patient.
[0077] FIG. 6B is a conceptual diagram illustrating example bone reference lines 620, 622, and 624, in accordance with one or more techniques of this disclosure. As mentioned above, there may be another design requirement with respect to the TAR guide called the lack of bone reference requirement. The design requirement is to have a surface match1262-203WO01 / TRAU1631PCT that reaches down to the joint line indicator arrows at least on one side. If there is not enough material of the TAR guide touching the tibia, then an alternative alignment guide (e.g., a pin alignment guide) may be used instead. In the example of FIG.6B, arrows 626 point to two points where features 602 would be located relative to tibia 604. Lines 620, 622, and 624 represent the profile of a distal part of the tibia in three different cases. Line 624 does not go beyond the reference points (represented here by arrows 626), so a TAR guide can be designed. Line 622 goes beyond the reference points only on one side, so the guide can be designed. Line 620 goes beyond both reference points, so a TAR guide cannot be designed because there is not enough tibia bone to hold the TAR guide.
[0078] FIG. 7 is a flowchart illustrating an example process for generating fillets of patient-specific surgical items, in accordance with one or more techniques of this disclosure. As discussed above, design system 130 may generate a 3D item model that has filleted corners instead of discontinuous interior corners. In the example of FIG. 7, design system 130 may obtain a 3D anatomy model representing the one or more anatomical structures of the patient (700). For instance, design system 130 may obtain the 3D anatomy model from storage system 112 or another computing system. In some examples, design system 130 obtains the 3D anatomy model by generating the 3D anatomy model. Design system 130 may generate the 3D anatomy model based on medical imaging data, such as CT imaging data.
[0079] Additionally, design system 130 may obtain a 3D item model representing a patient-specific surgical item that has at least one surface shaped to conform to one or more anatomical structures of a patient (702). For example, design system 130 may obtain the 3D item model from storage system 112 or another computing system. In some examples, design system 130 obtains the 3D item model based in part on the 3D anatomy model. For instance, in an example where the patient-specific surgical item is a TAR guide, design system 130 may perform the process described above with respect to FIG. 4 to generate the TAR guide. The 3D item model may be formatted as a boundary representation. When the 3D item model is formatted as a boundary representation, the boundary representation represents the 3D item model as a set of topological components, wherein the topological components include one or more smooth curves.
[0080] In some examples, the patient-specific surgical item is a patient-specific surgical guide. For instance, in an example where the patient-specific surgical guide is a glenoid pin guide, a user interface of design system 130 may display a 3D model of a patient’s scapula, receive indications of user input specifying a glenoid center, a version and1262-203WO01 / TRAU1631PCT inclination of a plane, and points on the 3D model of the patient’s scapula corresponding to locations on a rim of a glenoid fossa of the patient’s scapula. In this example, design system 130 may generate the 3D item model of the glenoid pin guide such that the 3D item model has a central cylindrical element orthogonal to the plane and aligned with the glenoid center. Additionally, the 3D item model may have cylindrical elements (i.e., feet) extending orthogonally from the plane toward the scapula. Bone-contacting surfaces of the feet may conform to the intersected areas of the 3D model of the patient’s scapula. Legs may connect the central cylindrical element to the feet. In some examples, the legs connect to a ring-shape element that surrounds the central cylindrical element. A bone- contacting surface of the ring-shaped element may conform to an intersected area of the 3D model of the patient’s scapula.
[0081] Design system 130 may identify a discontinuous interior corner of the 3D item model (704). In some examples, such as examples where the 3D item model is a mesh representation or a boundary representation, to identify a discontinuous interior corner, design system 130 may perform an iterative process that determines whether an angle between two adjacent faces of the 3D item model is greater than a threshold angle. In some examples where the 3D item model is a boundary representation, design system 130 may determine a derivative function of an edge, and then identify locations at which a value of the derivative function is greater than a first threshold or is less a second threshold.
[0082] Additionally, design system 130 may determine a radius of curvature of a fillet at the discontinuous interior corner such that the radius of curvature of the fillet is the largest radius of curvature in a predefined series of radii of curvature that does not cause a collision of the 3D item model and the 3D anatomy model when a position of the 3D item model relative to the 3D anatomy model corresponds to a position at which the patient- specific surgical item will be used with respect to the one or more anatomical structures (706). In some examples, as part of a process to determine the radius of curvature of the fillet, design system 130 performs an iterative process that tests a series of radii of curvature, ordered from larger to smaller. The series of radii of curvature may start at given radius and decrease by a predetermined interval amount. For instance, the series of radii of curvature may start at 4 millimeters (mm), followed by 3.9 mm, and so on with a predetermined interval amount of 0.1 mm. For each iteration of the iterative process, design system 130 may determine whether the 3D item model collides with the 3D anatomy model when the bone model is modified to have a fillet having a current radius1262-203WO01 / TRAU1631PCT of curvature of the series of radii of curvature at the discontinuous interior corner. Design system 130 may select the current radius of curvature based on a determination that the 3D item model does not collide with the 3D anatomy model when the 3D item model is modified to have the fillet having the current radius of curvature. In this way, design system 130 may select the largest available radius of curvature that does not cause the 3D item model to collide with the 3D anatomy model. Selecting the largest available radius of curvature that does not cause the 3D item model to collide with the 3D anatomy model may minimize the chances of the 3D item experiencing a structural failure.
[0083] Adjusting the radius of curvature while the 3D item model is formatted in a boundary representation is computationally more efficient than adjusting the radius of curvature while the 3D item model is formatted as a polygonal mesh because design system 130 does not need to recalculate the positions of large numbers of vertices in order to adjust and test different radii of curvature. Additionally, Boolean operations are often needed while designing CAD models and are better supported because of the precise underlying mathematical representation of the curves and lines. On the other hand, triangular meshes can often be corrupted (non-watertight, self-intersecting faces, missing triangles, …), which leads to Boolean operation failures and non-generation of the 3D model to print. Moreover, the boundary representation automatically generates a 3D item model as an intermediate format (before generating an STL to be 3D printed) STEP CAD exchange format file, which may allow manual adjustments by a technician within third- party 3D CAD software such as SolidWorks. Indeed, if some part of the 3D item model needs some modifications (e.g., larger leg width, material removal, fillets radius increase, …), such modifications can be made in such 3D CAD software unlike STLs which cannot be modified as easily.
[0084] Design system 130 may modify the 3D item model to include the fillet (708). For instance, design system 130 may modify one or more edges of a boundary representation of the 3D item model so that the 3D item model includes the fillet. Furthermore, in some examples, design system 130 may output output data to configure manufacturing system 104 to manufacture one or more components of the patient-specific surgical item. In some examples, the output data comprises 3D mesh data, such as an STL file. In some examples, the output data includes a rendered version of the modified 3D item model suitable for display. Manufacturing system 104 may manufacture the one or more components of the patient-specific surgical item based on the output data.1262-203WO01 / TRAU1631PCT
[0085] In some examples, use of a boundary representation format enables design system 130 to generate a 3D item model part-by-part. Accordingly, it may not be necessary to load a preexisting template model before personalization of the model to a patient. Rather, the boundary representation format may allow a user to have a full control over the generated shape on every single part of the guide. Example parts may include models of the individual feet, legs, and central element of glenoid guide 200. This generation of the parts may be performed using a geometric modeling kernel, such as the Open CASCADE Technology C++ library. This way, the representation of the whole 3D item model as a boundary representation is fully parametric. In other words, every part of the 3D item model is defined by a set of parameters (height, thickness, location, etc.). The use of a boundary representation to represent 3D item model is therefore versatile and can handle natively guide specifications’ modifications. The following table illustrates an example set of parameters. Parts of TAR guide Parameter Example parameter value Talus towers Length Between 10 and 25.4mm Inner diameter 2.45mm Outer diameter 6.0mm Sagittal location 9.652mm Horizontal location 35.794mm Arms Height 6.0mm Thickness Between 4 and 8mm Horizontal location 36.0mm Lateral arm location 13.0mm Medial arm ratio 0.33 Oblique offset 1.0mm Surface flat area >15mm2 Anterior finger Follow tibia curve 2-5-5-7 mm Location 4 points cf. figure Housing Anterior posterior location cf. distance saw guide No thin parts on cavity side Wall thickness > 1mm Talus towers Length Between 10 and 25.4mm Inner diameter 2.45mmOuter diameter 5.5mm Minimum thickness >1mm for 10mm length Horizontal location {2.157,2.157,1.467,0.832} {5.330,5.305,4.305,3.670] Sagittal location 9.525mm Distance between housing <10mm and frontal plane of towers Bridge Horizontal location 4.76mm or 5.75mm Sagittal location cf. talus towers location Height 2.5mm Global parameters Fillets radius (for each Between 0.5 and 1.0mm part) Fillets radius (talus 0.5mm towers / arms) Fillets radius arms / anterior 1.5mm and 4.0mm finger Fillets radius anterior 4.0mm finger / housing Fillets radius between 0.5mm housing, talus towers, and bridge Distance with >1.5mm talus / navicular Distance with corrected >1.0mm talus / navicular Distance with fibula >4.0mm Engraving location >1mm with fillets Engraving size 12pt, Arial black Engraving depth 1mm Distance between saw Between 5 and 15mm guide and tibia The engraving parameters relate to an engraved identifier of the guide and / or the patient.1262-203WO01 / TRAU1631PCT
[0086] Additionally, the use of a boundary representation and the process of FIG.7 may improve the robustness of generating 3D item models. Indeed, fillets may be difficult to obtain even with worldwide-used 3D software such as SolidWorks and can lead to a software breakdown, which means the technician may need to restart the software to keep on designing the 3D item model by hand. On the other hand, the use of an iterative loop (e.g., as described above) to ensure fillet creation by testing different radii of curvature of fillets to apply. Thus, if a fillet with a radius of curvature of 4mm is not possible (e.g. lack of space to apply inner fillets) because of the patient’s anatomy at specific location of the guide, design system 130 may reduce the radius of curvature of the fillet to 3.9mm (0.1mm step) and so on until the fillet can be formed without a collision with the patient’s anatomy. This approach may avoid restarting a CAD software system such as SolidWorks to redesign the 3D item model. Thus, the techniques of this disclosure may improve the guide generation robustness.
[0087] FIG. 8A is a conceptual diagram illustrating an example patient-specific TAR guide 800 with protrusion artifacts 802, in accordance with one or more techniques of this disclosure. Protrusion artifacts include portions of 3D item models in which a distance between opposing walls of the portion is less than a minimum distance threshold. In some examples, the minimum distance threshold is a distance beneath which there is an excessive chance of the protrusion artifact breaking off from a remainder of the patient- specific surgical guide. In some examples, manufacturing system 104 cannot produce a portion of a patient-specific surgical guide when a distance between opposing walls of the portion is less than the minimum distance threshold.
[0088] Protrusion artifacts may occur in 3D item models for a variety of reasons. For example, in a glenoid guide, such as glenoid guide 200 (FIG.2), design system 130 may determine the patient-specific bone-facing surfaces of feet 208 by projecting (e.g., extruding) circular forms of feet 208 from a plane toward a model of scapula 202. In this example, the bone-facing surfaces of feet 208 are the intersection between the resulting cylindrical volumes and the model of scapula 202. If scapula 202 slopes sharply away from the plane where a cylindrical volume intersects the model of scapula 202, the bone- facing surface of the foot corresponding to the cylindrical volume may have a thin tapered protrusion.
[0089] A similar process may generate protrusion artifacts in tibial resection guides. For instance, in the example of FIG. 8A, protrusion artifacts 802 occur at the distal edge of a patient-specific bone-facing surface of a saw guide housing 804. Protrusion artifacts 8021262-203WO01 / TRAU1631PCT may occur at this location because at this location, the tibia curves sharply in a posterior direction. In accordance with one or more techniques of this disclosure, design system 130 modifies 3D item models to remove protrusion artifacts. FIG. 8B is a conceptual diagram illustrating example patient-specific tibial resection guide 800 without protrusion artifacts 802, in accordance with one or more techniques of this disclosure.
[0090] FIG. 9 is a flowchart illustrating an example operation to remove protrusion artifacts, in accordance with one or more techniques of this disclosure. In the example of FIG.9, design system 130 may obtain a 3D item model representing at least a surface of a patient-specific surgical item (900). The patient-specific surgical item may be a patient- specific orthopedic prosthesis, a patient-specific surgical guide for guiding one or more surgical instruments with respect to a bone during an orthopedic surgery, or another type of patient-specific item used in surgery. The surgical instruments may include pins, drill bits, saw blades, or other types of items or tools that may be used in the orthopedic surgery.
[0091] In some examples, design system 130 obtains a 3D bone model representing the bone and generates the 3D item model at least in part such that one or more components of the 3D item model occupy a space between a reference plane (which may be flat or curved) and the 3D bone model. For instance, with respect to FIG. 2, a user of planning system 118 may determine the reference plane where an axis of a pin or drill passing through central cannulated element 204 is orthogonal to the reference plane. Design system 130 may extrude 3D volumes (e.g., feet 208) from one or more 2D areas on the reference plane toward the 3D bone model until the extruded 3D volumes intersect the 3D bone model. Discontinuous interior corners may occur at junctions of the reference plane and the 3D volumes. In this example, the bone may be a scapula and the reference plane may be orthogonal to an axis of insertion of a pin into a glenoid fossa of the scapula.
[0092] Additionally, design system 130 may determine a size of a 3D primitive shape and a position of the 3D primitive shape such that the 3D primitive shape is collocated with a protrusion artifact of the 3D item model (902). In some examples, the protrusion artifact is a portion of the 3D item model in which a distance between opposing walls of the portion is less than a minimum distance threshold. The 3D primitive shape may be a sphere, cube, or other type of 3D shape.
[0093] Design system 130 may determine the size and position of the 3D primitive shape in one of a variety of ways. For example, design system 130 may apply a ML model (e.g., a segmentation ML model) to the 3D item model to segment the 3D item model to identify1262-203WO01 / TRAU1631PCT topological components (e.g., vertices, faces, edges, etc.) of the 3D item model that are part of the protrusion artifact. For instance, by segmenting the 3D item model, design system 130 may assign labels to topological components of the 3D item model (e.g., faces, vertices, or edges) indicating whether the topological components correspond to protrusion artifacts or do not correspond to protrusion artifacts. The segmentation ML model may be implemented using a point-cloud based ML model, a mesh-based ML model, or another type of ML model. Example types of ML models are described in greater detail below.
[0094] Design system 130 may determine a centroid of the identified topological components of the 3D item model (i.e., the portions of the 3D item model identified as being part of a protrusion artifact). Design system 130 may determine the position of the 3D primitive shape based on the centroid. For example, the 3D primitive shape may be a sphere and design system 130 may determine that the sphere is centered on the centroid. In some examples, design system 130 may determine the size of the 3D primitive shape based on a distance between two of the identified topological components. For instance, in an example where the 3D primitive shape is a sphere, design system 130 may determine that the sphere has a diameter equal to (or otherwise based on) a distance between the two most distant topological components identified as being part of the protrusion artifact.
[0095] In some examples, design system 130 may apply a ML model (e.g., a primitive positioning ML model) to the 3D item model to generate data indicating the size of the 3D primitive shape and the position of the 3D primitive shape. In other words, primitive positioning ML model may directly output data indicating the size of the 3D primitive shape and the position of the 3D primitive shape. The primitive positioning ML model may be implemented using a point-cloud based ML model, a mesh-based ML model, or another type of ML model. Example types of ML models are described in greater detail below.
[0096] Design system 130 may modify the 3D item model to exclude portions of the 3D item model collocated with the 3D primitive shape (904). The portions of the 3D item model collocated with the 3D primitive shape may include topological components on the surface or contained within the 3D primitive shape. For example, design system 130 may perform a Boolean difference operation to remove the portions collocated with the 3D primitive shape. For example, if the 3D item model is formatted in a mesh representation, design system 130 may remove vertices, and edges connected to such vertices, that are within the 3D primitive shape. In some examples where the 3D item1262-203WO01 / TRAU1631PCT model is formatted in a boundary representation, design system 130 may modify curves and vertices of the boundary representation to conform to the boundary of the 3D primitive shape. If there are multiple protrusion artifacts, design system 130 may repeat actions 902 and 904 for each of the protrusion artifacts.
[0097] Design system 130 may generate output data based on the modified 3D item model (906). In some examples, the output data may include a STL file containing mesh- based data. In some examples, the output data includes a rendered version of the modified 3D item model suitable for display. In some examples, the output data may configure manufacturing system 106 to manufacture the patient-specific surgical guide. In some examples, manufacturing system 106 manufactures the patient-specific surgical guide based on the output data. As discussed elsewhere in this disclosure, manufacturing system 106 may include a 3D printing system.
[0098] FIG. 10 is a block diagram illustrating example components of artifact removal system 136, in accordance with one or more techniques of this disclosure. In the example of FIG. 10, artifact removal system 136 includes a segmentation ML model 1000, a primitive positioning ML model 1002, a modification unit 1004, and a training unit 1006. Artifact removal system 136 may include more or fewer components. For instance, training unit 1006 may not be present in some instances of artifact removal system 136. Furthermore, in some examples, artifact removal system 136 includes segmentation ML model 1000 and not primitive positioning ML model 1002, or vice versa.
[0099] Segmentation ML model 1000 is a machine-learning (ML) model that has been trained to segment a 3D item model to identify protrusion artifacts. Primitive positioning ML model 1002 is a ML model that has been trained to determine a size of a 3D primitive shape and a position of the 3D primitive shape such that the 3D primitive shape is collocated with a protrusion artifact of 3D item model 122. Modification unit 1004 may apply segmentation ML model to 3D item model to identify protrusion artifacts. Modification unit 1004 may determine a size of the 3D primitive shape and a position of the 3D primitive shape based on the identified protrusion artifacts. For example, modification unit 1004 may determine a centroid of the identified topological components of the 3D item model. In this example, modification unit 1004 may determine the position of the 3D primitive shape based on the centroid. Modification unit 1004 may also determine the size of the 3D primitive shape based on a distance between two of the identified topological components. Modification unit 1004 may modify 3D item model 122 to exclude topological components of 3D item model 122 collocated with the 3D1262-203WO01 / TRAU1631PCT primitive shape. Modification unit 1004 may generate output data based on the modified 3D item model 122.
[0100] In some examples, instead of using segmentation ML model 1000 to identify protrusion artifacts, modification unit 1004 may use primitive position ML model 1002 to directly determine a size and position of the 3D primitive shape. In other words, modification unit 1004 may apply primitive positioning ML model 1002 to 3D item model 122 to generate data indicating the size of the 3D primitive shape and the position of the 3D primitive shape. Modification unit 1004 may modify 3D item model 122 to exclude topological components of 3D item model 122 collocated with the 3D primitive shape. Modification unit 1004 may generate output data based on the modified 3D item model 122.
[0101] Segmentation ML model 1000 may be implemented in one of a variety of ways. For example, segmentation ML model 1000 may be implemented as a point cloud-based neural network model. In such examples, modification unit 1004 may generate a point cloud representation of 3D item model and provide the point cloud representation as input to segmentation ML model 1000. In another example, segmentation ML model 1000 may be implemented as a MeshNet model.
[0102] In examples where segmentation ML model 100 is implemented as a point cloud- based neural network model, modification unit 1004 may apply segmentation ML model 1000 to generate an output point cloud based on an input point cloud. The input point cloud represents a patient-specific surgical item. In some examples, the output point cloud includes labels indicating whether locations are or are not associated with protrusion artifacts. That is, the output point cloud includes a plurality of points that represent the shape of the patient-specific surgical item, where each of the points may be associated with a label indicating whether the point is or is not associated with a protrusion artifact. Example point cloud learning models include PointNet, PointTransformer, and so on. An example point cloud learning model-based architecture based on PointNet is described below with respect to FIG.11.
[0103] Segmentation ML model 1000 may include an input layer, an output layer, and one or more hidden layers between the input layer and the output layer. Segmentation ML model 1000 may also include one or more other types of layers, such as pooling layers. Each layer may include a set of artificial neurons, which are frequently referred to simply as “neurons.” Each neuron in the input layer receives an input value from an input vector. Outputs of the neurons in the input layer are provided as inputs to a next layer in thenetwork. Each neuron of a layer after the input layer may apply a propagation function to the output of one or more neurons of the previous layer to generate an input value to the neuron. The neuron may then apply an activation function to the input to compute an activation value. The neuron may then apply an output function to the activation value to generate an output value for the neuron. An output vector of the network includes the output values of the output layer of the network.
[0104] Each output layer neuron in the plurality of output layer neurons corresponds to a different output element in a plurality of output elements. Each output element in the plurality of output elements corresponds to a different classification (e.g., associated with a protrusion artifact or not associated with a protrusion artifact).
[0105] In this example, a computing system, such as computing system 102 may receive a plurality of training datasets that include annotated 3D representations (e.g., point clouds or 3D images) of a patient’s bone(s). The annotated representations may include points that are manually labeled as being associated with protrusion artifacts. Each respective training dataset corresponds to a different training data patient in a plurality of training data patients and comprises a respective training input vector and a respective target output vector.
[0106] For each respective training dataset, the training input vector of the respective training dataset comprises a value for each element of the plurality of input elements. For each respective training dataset, the target output vector of the respective training dataset comprises a value for each element of the plurality of output elements. In this example, computing system 102 may use the plurality of training datasets to train segmentation ML model 1000. As will be explained in more detail below, training segmentation ML model 1000 may include determining parameters of segmentation ML model 1000 by minimizing a loss function. The parameters of segmentation ML model 1000 may include weights applied to the output layers of the neural network and / or output functions for the layers of the neural network.
[0107] In one example, to process point cloud data, segmentation ML model 1000 may be a neural network with a plurality of layers configured to classify (e.g., segment) three- dimensional point cloud input data. As mentioned above, one example of such a neural network is PointNet. PointNet, or other similarly configured convolutional neural networks, may have a fully connected network structure using one or more pooling layers (e.g., global or local pooling layers). Convolutional neural networks convolve the input of a layer and pass the result to the next layer. A network structure has fully connected1262-203WO01 / TRAU1631PCT layers if every neuron in one layer is connected to every neuron in another layer. A network with fully connected layers may also be called a multi-layer perceptron (MLP) neural network.
[0108] In some examples, a pooling layer reduces the dimensions of data by combining the outputs of neurons at one layer into a single neuron in the next layer. Local pooling combines small data clusters. Global pooling involves all the neurons of the network. Two common types of pooling include max pooling and average pooling. As one example, PointNet uses max pooling. Max pooling uses the maximum value of each local cluster of neurons in the network.
[0109] In some examples, each neuron in segmentation ML model 1000 computes an output value by applying a specific function to the input values received from the previous layer. The function that is applied to the input values is determined by a vector of weights and bias values. The weights and bias values for segmentation ML model 1000 may be included in a set of parameters. As will be explained below, training segmentation ML model 1000 may include iteratively adjusting these weights and bias values. The vector of weights and a bias value is sometimes called a filter and may represent particular features to be segmented.
[0110] Training unit 1006 may train segmentation ML model 1000. For instance, training unit 1006 may generate a plurality of training datasets. Each of the training datasets may correspond to a different historic patient in a plurality of historic patients. The historic patients may include patients for whom surgical plans have been developed. The training dataset for a historic patient may include training input data and expected output data. The training input data may include a point cloud representing a patient-specific surgical item. In examples where segmentation ML model 1000 generates output point clouds indicating protrusion artifacts, the expected output data comprises a point cloud that includes points indicating locations of protrusion artifacts.
[0111] In some examples, as part of training segmentation ML model 1000, training unit 1006 may perform a forward pass on segmentation ML model 1000 using the input point cloud of a training dataset as input to segmentation ML model 1000. Training unit 1006 may then perform a process that compares the resulting output point cloud generated by segmentation ML model 1000 to the corresponding expected output point cloud. In other words, training unit 1006 may use a loss function to calculate a loss value based on the output point cloud generated by segmentation ML model 1000 and the corresponding expected output point cloud. In some examples, the loss function is targeted at minimizinga difference between the output point cloud generated by segmentation ML model 1000 and the corresponding expected output point cloud. Examples of the loss function may include a Chamfer Distance (CD) and the Earth Mover’s Distance (EMD). The CD may be given by the average of a first average and a second average. The first average is an average of distances between each point in the output point cloud generated by segmentation ML model 1000 and its closest point in the expected output point cloud. The second average is an average of distances between each point in the expected output point cloud and its closest point in the output point cloud generated by segmentation ML model 1000. The CD may be defined as:In the equation above, S1 is the output point cloud generated by segmentation ML model 1000, S2 is the expected output point cloud, |..| is an element indicating number of elements, and ||..|| indicates absolute value.
[0112] Training unit 1006 may then perform a backpropagation process based on the loss value to adjust parameters of segmentation ML model 1000 (e.g., weights of neurons of segmentation ML model 1000). In some examples, training unit 1006 may determine an average loss value based on loss values calculated from output point clouds generated by performing multiple forward passes through segmentation ML model 1000 using different input point clouds of the training data. In such examples, training unit 1006 may perform the backpropagation process using the average loss value to adjust the parameters of segmentation ML model 1000. Training unit 1006 may repeat this process during multiple training epochs.
[0113] In some examples, artifact removal system 136 additionally includes a classification model 1008. Prior to determining the size and 3D primitive shape and the position of the 3D primitive shape, artifact removal system 136 may apply classification model 1008 to the 3D item model to determine whether the 3D item model includes one or more protrusion artifacts. In other words, modification unit 1004 may determine, based on the output of classification model 1008, whether or not the 3D item model includes any protrusion artifacts. In some examples, modification unit 1004 applies classification model 1008 to a 3D item model to check whether the 3D item model includes any1262-203WO01 / TRAU1631PCT protrusion artifacts. In such examples, modification unit 1004 may apply segmentation ML model 1000 and / or primitive positioning ML model 1002 to the 3D item model if the 3D item model includes any protrusion artifacts. This may reduce the chances of modification unit 1004 incorrectly removing portions of the 3D item model that were not actually protrusion artifacts. In some examples, training unit 1006 applies classification model 1008 to 3D item models in training data to confirm that the training data includes example 3D item models that include protrusion artifacts and 3D item models that do not include protrusion artifacts. Training segmentation ML model 1000 and / or primitive positioning ML model 1002 based on training data that include both 3D item models with protrusion artifacts and 3D item models without protrusion artifacts may reduce the chances of training segmentation ML model 1000 falsely identifying a protrusion artifact and / or primitive positioning ML model 1002 positioning a primitive shape when none should be positioned. Classification model 1008 may be implemented based on a PointNet or MeshCNN architecture.
[0114] FIG. 11 is a conceptual diagram illustrating an example point cloud learning model 1100 in accordance with one or more techniques of this disclosure. Point cloud learning model 1100 may receive an input point cloud. The input point cloud is a collection of points. The points in the collection of points are not necessarily arranged in any specific order. Thus, the input point cloud may have an unstructured representation.
[0115] In the example of FIG.11, point cloud learning model 1100 includes an encoder network 1101 and a decoder network 1102. Encoder network 1101 receives an array 1103 of n points. The points in array 1103 may be the input point cloud of point cloud learning model 1100. In the example of FIG. 11, each of the points in array 1103 has a dimensionality of 3. For instance, in a Cartesian coordinate system, each of the points may have an x coordinate, a y coordinate, and a z coordinate.
[0116] Encoder network 1101 may apply an input transform 1104 to the points in array 1103 to generate an array 1105. Encoder network 1101 may then use a first shared multi- layer perceptron (MLP) 1106 to map each of the n points in array 1105 from three dimensions to a larger number of dimensions a (e.g., a = 64 in the example of FIG. 11), thereby generating an array 1107 of n x a (e.g., n x 64 values). For ease of explanation, the following description of FIG. 11 assumes that a is equal to 64 but in other examples other values of a may be used. Encoder network 1101 may then apply a feature transform 1108 to the values in array 1107 to generate an array 1109 of n x 64 values. For each of the n points in array 1109, encoder network 1101 uses a second shared MLP 1110 to map1262-203WO01 / TRAU1631PCT the n points from a dimension to b dimensions (e.g., b = 1024 in the example of FIG.11), thereby generating an array 1111 of n x b (e.g., n x 1024 values). For ease of explanation, the following description of FIG.11 assumes that b is equal to 1024 but in other examples other values of b may be used. Encoder network 1101 applies a max pooling layer 1112 to generate a global feature vector 1113. In the example of FIG. 11, each of points n in global feature vector 1113 has 1024 dimensions.
[0117] Thus, as part of applying a segmentation ML model 1000, computing system 102 may apply an input transform (e.g., input transform 1104) to a first array (e.g., array 1103) that comprises the point cloud to generate a second array (e.g., array 1105), wherein the input transform is implemented using a first T-Net model (e.g., T-Net Model 1126), apply a first MLP (e.g., MLP 1106) to the second array to generate a third array (e.g., array 1107), apply a feature transform (e.g., feature transform 1108) to the third array to generate a fourth array (e.g., array 1109), wherein the input transform is implemented using a second T-Net model (e.g., T-Net model 1130), apply a second MLP (e.g., MLP 1110) to the fourth array to generate a fifth array (e.g., array 1111); and apply a max pooling layer (e.g., max pooling layer 1112) to the fifth array to generate the global feature vector (e.g., global feature vector 1113).
[0118] A fully-connected network 1114 may map global feature vector 1113 to k output classification scores. The value k is an integer indicating a number of classes. Each of the output classification scores corresponds to a different class. An output classification score corresponding to a class may indicate a level of confidence that the input point cloud as a whole corresponds to the class. Fully-connected network 1114 includes a neural network having two or more layers of neurons in which each neuron in a layer is connected to each neuron in a subsequent layer. In the example of FIG. 11, fully- connected network 1114 includes an input layer having 512 neurons, a middle layer having 256 neurons, and an output layer having k neurons. In some examples, fully- connected network 1114 may be omitted from encoder network 1101.
[0119] Input to decoder network 1102 may be formed by concatenating the n 64- dimensional points of array 1109 with global feature vector 1113. In other words, for each point of the n points in array 1109, the corresponding 64 dimensions of the point are concatenated with the 1024 features in global feature vector 1113.
[0120] Decoder network 1102 may sample N points in a unit square in 2-dimensions. Thus, decoder network 1102 may randomly determine N points having x-coordinates in a range of [0,1] and y-coordinates in the range of [0,1]. Decoder network 1102 mayconcatenate the sampled points with global feature vector 1113 to obtain a combined vector 1116. Decoder network 1102 may apply K MLPs 1118 (where K is an integer greater than or equal to 1) to the combined vector to generate points in output point cloud 1120. Each of the K MLPs 1118 may generate points in a different patch (e.g., area) of output point cloud 1120. Each of the MLPs 1118 may reduce the number of features from 1026 to a vector that may include 3 features that correspond to the 3 coordinates of a point of the output point cloud, and one or more features that correspond to whether the point is or is not part of a protrusion artifact. For instance, for each sampled point n in N, the MLPs 1118 may reduce the features from 1026 to 512 to 256 to 128 to 64 to a vector that includes the 3 coordinates of a point and a feature indicating whether the point is or is not part of a protrusion artifact. In this way, planning system 118 may apply point cloud learning model 1100 to an input point cloud in array 1103 to segment the input point cloud.
[0121] In some examples, as part of training the MLPs of decoder network 1102, decoder network 1102 may calculate a chamfer loss of an output point cloud relative to a ground- truth point cloud. Decoder network 1102 may use the chamfer loss in a backpropagation process to adjust parameters of the MLPs.
[0122] Input transform 1104 and feature transform 1108 in encoder network 1101 may provide transformation invariance. In other words, point cloud learning model 1100 may be able to generate output point clouds (e.g., output bone models with labeled landmarks) in the same way, regardless of how the input point cloud (e.g., input bone model) is rotated, scaled, or translated. The fact that point cloud learning model 1100 provides transform invariance may be advantageous because it may reduce the susceptibility of point cloud learning model 1100 to errors based on positioning / scaling in morbid bone models. As shown in the example of FIG.11, input transform 1104 may be implemented using a T-Net Model 1126 and a matrix multiplication operation 1128. T-Net Model 1126 generates a 3x3 transform matrix based on array 1103. Matrix multiplication operation 1128 multiplies array 1103 by the 3x3 transform matrix. Similarly, feature transform 1108 may be implemented using a T-Net model 1130 and a matrix multiplication operation 1132. T-Net model 1130 may generate a 64x64 transform matrix based on array 1107. Matrix multiplication operation 1128 multiplies array 1107 by the 64x64 transform matrix.
[0123] FIG.12 is a block diagram illustrating an example architecture of a T-Net model 1200 in accordance with one or more techniques of this disclosure. T-Net model 1200may implement T-Net Model 1226 used in the input transform 1104. In the example of FIG.12, T-Net model 1200 receives an array 1202 as input. Array 1202 includes n points. Each of the points has a dimensionality of 3. A first shared MLP maps each of the n points in array 1202 from 3 dimensions to 64 dimensions, thereby generating an array 1204. A second shared MLP maps each of the n points in array 1204 from 64 dimensions to 128 dimensions, thereby generating an array 1206. A third shared MLP maps each of the n points in array 1206 from 128 dimensions to 1024 dimensions, thereby generating an array 1208. T-Net model 1200 then applies a max pooling operation to array 1208, resulting in an array 1210 of 1024 values. A first fully-connected neural network maps array 1210 to an array 1212 of 512 values. A second fully-connected neural network maps array 1212 to an array 1214 of 256 values. T-Net model 1200 applies a matrix multiplication operation 1216 to a matrix of trainable weights 1218. The matrix of trainable weights 1218 has dimensions of 256x9. Thus, multiplying array 1214 by the matrix of trainable weights 1218 results in an array 1220 of size 1x9. T-Net model 1200 may then add trainable biases 1222 to the values in array 1220. A reshaping operation 1224 may remap the values resulting from adding trainable biases 1222 into a 3x3 transform matrix. In other examples, the sizes of the matrixes and arrays may be different.
[0124] T-Net model 1130 (FIG.11) may be implemented in a similar way as T-Net model 1200 in order to perform feature transform 1108. However, in this example, the matrix of trainable weights 1218 is 256x4096 and the trainable biases 1222 has size 1x4096 bias values instead of 9. Thus, the T-Net model for performing feature transform 1108 may generate a transform matrix of size 64x64. In other examples, the sizes of the matrixes and arrays may be different.
[0125] In some examples, primitive positioning ML model 1002 is implemented in a similar manner as segmentation ML model 1000. However, the out of an additional MLP may be added to the end of the process. Output neurons of the MLP may include output neurons that correspond to different potential primitive shape locations. In other words, the output of primitive positioning ML model 1002 may include an array of values that correspond to different potential primitive shape locations. Primitive positioning ML model 1002 may determine which of the outputs exceed a threshold and then map the determined outputs back to the corresponding locations. The output neurons of the MLP may also include an output neuron that corresponds to a size of the primitive shape. A process to train primitive positioning ML model 1002 may be similar to the process for training segmentation ML model 1000. However, the ground truth data may indicate anarray of values that correspond to locations of primitive shaped usable to remove protrusion artifacts from 3D item models.
[0126] FIG. 13 is a conceptual diagram illustrating an example mesh-based neural network model 1300, in accordance with one or more techniques of this disclosure. Unlike the point cloud-based neural network models described above, mesh-based neural network model 1300 takes a 3D triangular mesh as input. Mesh-based neural network model 1300 may be based on the MeshCNN architecture described in Hanocka et al., “MeshCNN: A Network with an Edge”, arXiv:1809.05910v2 [cs.LG] 13 Feb 2019. Mesh-based neural network model 1300 includes a convolution layer 1302, a pooling layer 1304, and a segmentation network 1306.
[0127] Convolution layer 1302 applies a convolution function to generate a respective edge feature for each edge of an input mesh. In some examples, the input mesh is 3D item model 122. Modification unit 1004 preprocesses 3D item model 122, e.g., to re-mesh 3D item model, reduce the number of faces, and so on, to generate the input mesh. Convolution layer 1302 may use the following equation to generate a convolved edge feature vector for an edge of the input mesh:where:, , , | |, , | |,In the equations above, e is a feature vector associated with the edge, e1, e2, e3, e4arefeature vectors associated with the four edges adjacent to the edge and 0… 4 are trainedweights. A feature vector associated with an edge may be defined as set forth below:| | | |, , ,| | ,| |where is a dihedral angle between the two faces incident to the edge,1andareangles of vertices opposite the edge, and ||represented the ratios between the lengthof the edge and the triangle height (h1, h2) for the two faces incident to the edge.
[0128] Pooling layer 1304 simplifies the edges of the input mesh to a target number of edges. In other words, pooling layer 1304 reduces the number of edges so that a total number of the edges is equal to the target number of edges. For example, for each of the edges, pooling layer 1304 may determine a feature norm of the convolved feature vector of the edge. For instance, pooling layer 1304 may calculate a z-score for each feature of1262-203WO01 / TRAU1631PCT a convolved feature vector of an edge. Pooling layer 1304 may sum the z-scores for the features of the convolved feature vector. Pooling layer 1304 may then iteratively select and collapse edges having lowest feature norms until the number of edges remaining in the mesh is equal to the target number of edges. To collapse an edge, pooling layer 1304 may calculate a first average feature edge and a second average feature vector. The first average feature vector is a vector of features generated by averaging the features of the feature vector of the edge and the corresponding features of the feature vectors of the two edges that, along with the edge, form a first face incident to the edge. The second average feature vector is a vector of features generated by averaging the features of the feature vector of the edge and the corresponding features of the feature vectors of the two edges that, along with the edge, form a second face incident to the edge. Pooling layer 1304 replaces the edge and the edges adjacent to the edge with edges defined by the first average feature vector and the second average feature vector. Thus, five edges are reduced to two edges. Information specifying a correspondence between the original edges and the reduced edges is stored. In this way, pooling layer 1304 generates a simplified mesh.
[0129] Segmentation network 1306 uses the feature vectors of the simplified mesh to assign labels to edges. For example, segmentation network 1306 may include a ResUNet architecture. The ResUNet architecture includes a contractive path (i.e., an encoder) and an expansive path (i.e., a decoder). The contractive path convolves the feature vectors into encoded features with progressively smaller resolutions. The expansive path unpools the encoded features to their original resolutions and adds segmentation labels for edges, thereby generating a reconstructed mesh. The ResUNet architecture includes skip connections include the ResUNet architecture convolves feature vectors of the same resolution from the contractive path with feature vectors from lower-resolution layers of the expansive path. An example of the ResUNet architecture is described in Diakogiannis et al., “ResUNet-a: A deep learning framework for semantic segmentation of remotely sensed data”, ISPRS Journal of Photogrammetry and Remote Sensing, 162, 94-114. The segmentation label for an edge in the reconstructed mesh may indicate whether the edge is or is not associated with a protrusion artifact.
[0130] Modification unit 1004 may determine the size and shape of one or more 3D primitive shapes such that the one or more 3D primitive shapes are collocated with protrusion artifacts, as described above. In some examples, mesh-based neural network model 1300 may include an additional MLP that determines the size and shape of one or1262-203WO01 / TRAU1631PCT more 3D primitive shapes such that the one or more 3D primitive shapes are collocated with protrusion artifacts.
[0131] The following is a non-limiting list of clauses that are in accordance with one or more techniques of this disclosure.
[0132] Clause 1. A computer-implemented method of designing a patient-specific surgical item comprising: obtaining, by one or more processors, a 3-dimensional (3D) item model representing at least a surface of a patient-specific surgical item that is shaped to conform to one or more anatomical structures of a patient; determining, by the one or more processors, a size of a 3D primitive shape and a position of the 3D primitive shape such that the 3D primitive shape is collocated with a protrusion artifact of the 3D item model; modifying, by the one or more processors, the 3D item model to exclude portions of the 3D item model collocated with the 3D primitive shape; and generating, by the one or more processors, output data based on the modified 3D item model.
[0133] Clause 2. The computer-implemented method of clause 1, wherein the protrusion artifact is a portion of the 3D item model in which a distance between opposing walls of the portion is less than a minimum distance threshold.
[0134] Clause 3. The computer-implemented method of any of clauses 1-2, wherein the output data configures a manufacturing system to manufacture one or more patient-specific components of the patient-specific surgical item.
[0135] Clause 4. The computer-implemented method of any of clauses 1-3, further comprising manufacturing, by a manufacturing system, one or more components of the patient-specific surgical item based on the output data.
[0136] Clause 5. The computer-implemented method of clauses 3 or 4, wherein the manufacturing system includes a 3D printing system.
[0137] Clause 6. The computer-implemented method of any of clauses 1-5, further comprising: prior to determining the size and 3D primitive shape and the position of the 3D primitive shape, applying, by the one or more processors, a classifier to the 3D item model to determine whether the 3D item model includes one or more protrusion artifacts.
[0138] Clause 7. The computer-implemented method of any of clauses 1-6, wherein: the method further comprises applying, by the one or more processors, a ML model to the 3D item model to segment the 3D item model to identify topological components of the 3D item model that are part of the protrusion artifact.1262-203WO01 / TRAU1631PCT
[0139] Clause 8. The computer-implemented method of clause 7, wherein determining the size of the 3D primitive shape and the position of the 3D primitive shape comprises: determining, by the one or more processors, a centroid of the identified topological components of the 3D item model; determining, by the one or more processors, the position of the 3D primitive shape based on the centroid; and determining, by the one or more processors, the size of the 3D primitive shape based on a distance between two of the identified topological components.
[0140] Clause 9. The computer-implemented method of any of clauses 1-8, wherein determining the size of the 3D primitive shape and the position of the 3D primitive shape comprises applying, by the one or more processors, a ML model to the 3D item model to generate data indicating the size of the 3D primitive shape and the position of the 3D primitive shape.
[0141] Clause 10. The computer-implemented method of any of clauses 1-9, wherein the 3D item model is a point cloud model.
[0142] Clause 11. The computer-implemented method of any of clauses 1-9, wherein the 3D item model is a 3D mesh.
[0143] Clause 12. The computer-implemented method of any of clauses 1-11, wherein the patient-specific surgical item is a patient-specific surgical guide.
[0144] Clause 13. The computer-implemented method of any of clauses 1-11, wherein the patient-specific surgical item is a patient-specific orthopedic prosthesis.
[0145] Clause 14. The computer-implemented method of any of clauses 1-13, wherein obtaining the 3D item model comprises: obtaining, by the one or more processors, a 3D bone model representing a bone, the bone being one of the one of more anatomical structures; and generating, by the one or more processors, the 3D item model at least in part such that one or more components of the 3D item model occupy a space between a reference plane and the 3D bone model.
[0146] Clause 15. The computer-implemented method of clause 14, wherein the bone is a scapula and the reference plane is orthogonal to an axis of insertion of a pin into a glenoid fossa of the scapula.
[0147] Clause 16. A computing system comprising: a storage system; and one or more processors implemented in circuitry and communicatively coupled to the storage system, the one or more processors configured to perform the methods of any of clauses 1-15.1262-203WO01 / TRAU1631PCT
[0148] Clause 17. One or more non-transitory computer-readable storage media comprising instructions stored thereon that, when executed by one or more processors, cause the one of more processors to perform the methods of any of clauses 1-15.
[0149] Clause 18. A computer-implemented method comprising: obtaining, by one or more processors, a 3-dimensional (3D) item model representing a patient-specific surgical item that has at least one surface shaped to conform to one or more anatomical structures of a patient; obtaining, by the one or more processors, a 3D anatomy model representing the one or more anatomical structures of the patient; identifying, by the one or more processors, a discontinuous interior corner of the 3D item model; determining, by the one or more processors, a radius of curvature of a fillet at the discontinuous interior corner such that the radius of curvature of the fillet is a largest radius of curvature in a predefined series of radii of curvature that does not cause a collision of the 3D item model and the 3D anatomy model when a position of the 3D item model relative to the 3D anatomy model corresponds to a position at which the patient-specific surgical item will be used with respect to the one or more anatomical structures; and modifying, by the one or more processors, the 3D item model to include the fillet.
[0150] Clause 19. The computer-implemented method of clause 18, wherein determining the radius comprises: performing an iterative process that tests a series of radii of curvature, ordered from larger to smaller, wherein each iteration of the iterative process comprises: determining whether the 3D item model collides with the 3D anatomy model when the 3D anatomy model is modified to have a fillet having a current radius of curvature of the series of radii of curvature at the discontinuous interior corner; and selecting the current radii of curvature based on a determination that the 3D item model does not collide with the 3D anatomy model when the 3D item model is modified to have the fillet having the current radius of curvature.
[0151] Clause 20. The computer-implemented method of any of clauses 18-19, wherein the 3D item model is formatted using a boundary representation.
[0152] Clause 21. The computer-implemented method of clause 20, wherein the boundary representation represents the 3D item model as a set of topological components, wherein the topological components include one or more smooth curves.
[0153] Clause 22. The computer-implemented method of any of clauses 18-21, further comprising outputting, by the one or more processors, output data to configure a manufacturing system to manufacture one or more components of the patient-specific surgical item.1262-203WO01 / TRAU1631PCT
[0154] Clause 23. The computer-implemented method of clause 22, further comprising manufacturing, by the manufacturing system, the one or more components of the patient-specific surgical item based on the output data.
[0155] Clause 24. The computer-implemented method of any of clauses 18-23, wherein the patient-specific surgical item is a patient-specific surgical guide.
[0156] Clause 25. The computer-implemented method of clause 24, wherein: the patient-specific surgical guide is a patient-specific glenoid guide that comprises a cannulated central element, one or more legs, and one or more feet connected to the one or more legs, and the cannulated central element is configured to guide a pin or drill bit into a scapula of the patient at a preplanned insertion location and with a preplanned insertion orientation.
[0157] Clause 26. The computer-implemented method of clause 25, wherein the discontinuous interior corner is at one of: a junction of one of the feet and one of the legs, a junction of one of the legs and the cannulated central element.
[0158] Clause 27. The computer-implemented method of any of clauses 24-26, wherein the patient-specific surgical guide is configured to guide at least one of: a pin or a sawblade to a preplanned position on a tibia of the patient.
[0159] Clause 28. The computer-implemented method of any of clauses 18-27, wherein the patient-specific surgical item is a patient-specific orthopedic prosthesis.
[0160] Clause 29. The computer-implemented method of any of clauses 18-28, wherein obtaining the 3D item model comprises extruding, by the one or more processors, a 3D volume from a 2-dimensional (2D) area on a reference plane toward the 3D anatomy model until the 3D volume intersects the 3D anatomy model, and wherein the discontinuous interior corner occurs at a junction of the reference plane and the 3D volume.
[0161] Clause 30. A computing system comprising: a storage system; and one or more processors implemented in circuitry and communicatively coupled to the storage system, the one or more processors configured to perform the methods of any of clauses 18-29.
[0162] Clause 31. One or more non-transitory computer-readable storage media comprising instructions stored thereon that, when executed by one or more processors, cause the one of more processors to perform the methods of any of clauses 18-29.
[0163] While the techniques been disclosed with respect to a limited number of examples, those skilled in the art, having the benefit of this disclosure, will appreciate numerous1262-203WO01 / TRAU1631PCT modifications and variations there from. For instance, it is contemplated that any reasonable combination of the described examples may be performed. It is intended that the appended claims cover such modifications and variations as fall within the true spirit and scope of the invention.
[0164] It is to be recognized that depending on the example, certain acts or events of any of the techniques described herein can be performed in a different sequence, may be added, merged, or left out altogether (e.g., not all described acts or events are necessary for the practice of the techniques). Moreover, in certain examples, acts or events may be performed concurrently, e.g., through multi-threaded processing, interrupt processing, or multiple processors, rather than sequentially.
[0165] In one or more examples, the functions described may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored on or transmitted over as one or more instructions or code on a computer-readable medium and executed by a hardware-based processing unit. Computer-readable media may include computer-readable storage media, which corresponds to a tangible medium such as data storage media, or communication media including any medium that facilitates transfer of a computer program from one place to another, e.g., according to a communication protocol. In this manner, computer-readable media generally may correspond to (1) tangible computer-readable storage media which is non-transitory or (2) a communication medium such as a signal or carrier wave. Data storage media may be any available media that can be accessed by one or more computers or one or more processors to retrieve instructions, code and / or data structures for implementation of the techniques described in this disclosure. A computer program product may include a computer-readable medium.
[0166] By way of example, and not limitation, such computer-readable storage media can comprise RAM, ROM, EEPROM, CD-ROM or other optical disk storage, magnetic disk storage, or other magnetic storage devices, flash memory, or any other medium that can be used to store desired program code in the form of instructions or data structures and that can be accessed by a computer. Also, any connection is properly termed a computer- readable medium. For example, if instructions are transmitted from a website, server, or other remote source using a coaxial cable, fiber optic cable, twisted pair, digital subscriber line (DSL), or wireless technologies such as infrared, radio, and microwave, then the coaxial cable, fiber optic cable, twisted pair, DSL, or wireless technologies such as infrared, radio, and microwave are included in the definition of medium. It should be1262-203WO01 / TRAU1631PCT understood, however, that computer-readable storage media and data storage media do not include connections, carrier waves, signals, or other transitory media, but are instead directed to non-transitory, tangible storage media. Disk and disc, as used herein, includes compact disc (CD), laser disc, optical disc, digital versatile disc (DVD), floppy disk and Blu-ray disc, where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer-readable media.
[0167] Unless specifically stated otherwise, the present disclosure uses the term “some” to refer to one or more. A phrase referring to “at least one of” a list of items refers to any combination of those items, including single members. As an example, “at least one of: a, b, or c” is intended to cover: a; b; c; a and b; a and c; b and c; a, b and c; and so on. Discussion of one or more processors (or other components) performing specific actions may refer to one or more processors that each individually perform the specific actions or a set of one or more processors that together perform the specific actions even if not all of the processors perform all of the actions on their own.
[0168] Operations described in this disclosure may be performed by one or more processors, which may be implemented as fixed-function processing circuits, programmable circuits, or combinations thereof, such as one or more digital signal processors (DSPs), general purpose microprocessors, application specific integrated circuits (ASICs), field programmable gate arrays (FPGAs), or other equivalent integrated or discrete logic circuitry. Fixed-function circuits refer to circuits that provide particular functionality and are preset on the operations that can be performed. Programmable circuits refer to circuits that can programmed to perform various tasks and provide flexible functionality in the operations that can be performed. For instance, programmable circuits may execute instructions specified by software or firmware that cause the programmable circuits to operate in the manner defined by instructions of the software or firmware. Fixed-function circuits may execute software instructions (e.g., to receive parameters or output parameters), but the types of operations that the fixed-function circuits perform are generally immutable. Accordingly, the terms “processor” and “processing circuity,” as used herein may refer to any of the foregoing structures or any other structure suitable for implementation of the techniques described herein.
Claims
1262-203WO01 / TRAU1631PCT What is claimed is:
1. A computer-implemented method of designing a patient-specific surgical item comprising: obtaining, by one or more processors, a 3-dimensional (3D) item model representing at least a surface of a patient-specific surgical item that is shaped to conform to one or more anatomical structures of a patient; determining, by the one or more processors, a size of a 3D primitive shape and a position of the 3D primitive shape such that the 3D primitive shape is collocated with a protrusion artifact of the 3D item model; modifying, by the one or more processors, the 3D item model to exclude portions of the 3D item model collocated with the 3D primitive shape; and generating, by the one or more processors, output data based on the modified 3D item model.
2. The computer-implemented method of claim 1, wherein the protrusion artifact is a portion of the 3D item model in which a distance between opposing walls of the portion is less than a minimum distance threshold.
3. The computer-implemented method of any of claims 1-2, wherein the output data configures a manufacturing system to manufacture one or more patient-specific components of the patient-specific surgical item.
4. The computer-implemented method of any of claims 1-3, further comprising manufacturing, by a manufacturing system, one or more components of the patient- specific surgical item based on the output data.
5. The computer-implemented method of claims 3 or 4, wherein the manufacturing system includes a 3D printing system.
6. The computer-implemented method of any of claims 1-5, further comprising: prior to determining the size and 3D primitive shape and the position of the 3D primitive shape, applying, by the one or more processors, a classifier to the 3D item1262-203WO01 / TRAU1631PCT model to determine whether the 3D item model includes one or more protrusion artifacts.
7. The computer-implemented method of any of claims 1-6, wherein: the method further comprises applying, by the one or more processors, a ML model to the 3D item model to segment the 3D item model to identify topological components of the 3D item model that are part of the protrusion artifact.
8. The computer-implemented method of claim 7, wherein determining the size of the 3D primitive shape and the position of the 3D primitive shape comprises: determining, by the one or more processors, a centroid of the identified topological components of the 3D item model; determining, by the one or more processors, the position of the 3D primitive shape based on the centroid; and determining, by the one or more processors, the size of the 3D primitive shape based on a distance between two of the identified topological components.
9. The computer-implemented method of any of claims 1-8, wherein determining the size of the 3D primitive shape and the position of the 3D primitive shape comprises applying, by the one or more processors, a ML model to the 3D item model to generate data indicating the size of the 3D primitive shape and the position of the 3D primitive shape.
10. The computer-implemented method of any of claims 1-9, wherein the 3D item model is a point cloud model.
11. The computer-implemented method of any of claims 1-9, wherein the 3D item model is a 3D mesh.
12. The computer-implemented method of any of claims 1-11, wherein the patient- specific surgical item is a patient-specific surgical guide.
13. The computer-implemented method of any of claims 1-11, wherein the patient- specific surgical item is a patient-specific orthopedic prosthesis.1262-203WO01 / TRAU1631PCT 14. The computer-implemented method of any of claims 1-13, wherein obtaining the 3D item model comprises: obtaining, by the one or more processors, a 3D bone model representing a bone, the bone being one of the one of more anatomical structures; and generating, by the one or more processors, the 3D item model at least in part such that one or more components of the 3D item model occupy a space between a reference plane and the 3D bone model.
15. The computer-implemented method of claim 14, wherein the bone is a scapula and the reference plane is orthogonal to an axis of insertion of a pin into a glenoid fossa of the scapula.
16. A computing system comprising: a storage system; and one or more processors implemented in circuitry and communicatively coupled to the storage system, the one or more processors configured to perform the methods of any of claims 1-15.
17. One or more non-transitory computer-readable storage media comprising instructions stored thereon that, when executed by one or more processors, cause the one of more processors to perform the methods of any of claims 1-15.
18. A computer-implemented method comprising: obtaining, by one or more processors, a 3-dimensional (3D) item model representing a patient-specific surgical item that has at least one surface shaped to conform to one or more anatomical structures of a patient; obtaining, by the one or more processors, a 3D anatomy model representing the one or more anatomical structures of the patient; identifying, by the one or more processors, a discontinuous interior corner of the 3D item model; determining, by the one or more processors, a radius of curvature of a fillet at the discontinuous interior corner such that the radius of curvature of the fillet is a largest radius of curvature in a predefined series of radii of curvature that does not cause a1262-203WO01 / TRAU1631PCT collision of the 3D item model and the 3D anatomy model when a position of the 3D item model relative to the 3D anatomy model corresponds to a position at which the patient-specific surgical item will be used with respect to the one or more anatomical structures; and modifying, by the one or more processors, the 3D item model to include the fillet.
19. The computer-implemented method of claim 18, wherein determining the radius comprises: performing an iterative process that tests a series of radii of curvature, ordered from larger to smaller, wherein each iteration of the iterative process comprises: determining whether the 3D item model collides with the 3D anatomy model when the 3D anatomy model is modified to have a fillet having a current radius of curvature of the series of radii of curvature at the discontinuous interior corner; and selecting the current radii of curvature based on a determination that the 3D item model does not collide with the 3D anatomy model when the 3D item model is modified to have the fillet having the current radius of curvature.
20. The computer-implemented method of any of claims 18-19, wherein the 3D item model is formatted using a boundary representation.
21. The computer-implemented method of claim 20, wherein the boundary representation represents the 3D item model as a set of topological components, wherein the topological components include one or more smooth curves.
22. The computer-implemented method of any of claims 18-21, further comprising outputting, by the one or more processors, output data to configure a manufacturing system to manufacture one or more components of the patient-specific surgical item.
23. The computer-implemented method of claim 22, further comprising manufacturing, by the manufacturing system, the one or more components of the patient-specific surgical item based on the output data.1262-203WO01 / TRAU1631PCT 24. The computer-implemented method of any of claims 18-23, wherein the patient- specific surgical item is a patient-specific surgical guide.
25. The computer-implemented method of claim 24, wherein: the patient-specific surgical guide is a patient-specific glenoid guide that comprises a cannulated central element, one or more legs, and one or more feet connected to the one or more legs, and the cannulated central element is configured to guide a pin or drill bit into a scapula of the patient at a preplanned insertion location and with a preplanned insertion orientation.
26. The computer-implemented method of claim 25, wherein the discontinuous interior corner is at one of: a junction of one of the feet and one of the legs, a junction of one of the legs and the cannulated central element.
27. The computer-implemented method of any of claims 24-26, wherein the patient- specific surgical guide is configured to guide at least one of: a pin or a sawblade to a preplanned position on a tibia of the patient.
28. The computer-implemented method of any of claims 18-27, wherein the patient- specific surgical item is a patient-specific orthopedic prosthesis.
29. The computer-implemented method of any of claims 18-28, wherein obtaining the 3D item model comprises extruding, by the one or more processors, a 3D volume from a 2-dimensional (2D) area on a reference plane toward the 3D anatomy model until the 3D volume intersects the 3D anatomy model, and wherein the discontinuous interior corner occurs at a junction of the reference plane and the 3D volume.
30. A computing system comprising: a storage system; and one or more processors implemented in circuitry and communicatively coupled to the storage system, the one or more processors configured to perform the methods of any of claims 18-29.1262-203WO01 / TRAU1631PCT 31. One or more non-transitory computer-readable storage media comprising instructions stored thereon that, when executed by one or more processors, cause the one of more processors to perform the methods of any of claims 18-29.
Citation Information
Patent Citations
Devices and Methods for Additive Manufacturing of Implant Components
US20150093283A1
Methods, systems and devices for pre-operatively planned shoulder surgery guides and implants
US20200330161A1
Patient-adapted and improved articular implants, designs and related guide tools
US9020788B2
Additive smoothing of sharp concave edges on designed 3D printable polygonal mesh models
WO2015200114A1
Method and system for DESI GNI NG and fabr icati NG a customi SED device
WO2017127887A1