Methods and systems to control a cutting tool
A method and system for providing control that include providing a workpiece that includes a target shape, providing a cutting tool, providing a 3-D image associated with the workpiece, identifying the target shape within the workpiece image, providing a 3-D image associated with the cutting tool, registering the workpiece with the workpiece image, registering the cutting tool with the cutting tool image, tracking at least one of the workpiece and the cutting tool, transforming the tracking data based on image coordinates to determine a relationship between the workpiece and the cutting tool, and, based on the relationship, providing a control to the cutting tool. In one embodiment, the workpiece image can be represented as volume pixels (voxels) that can be classified and/or reclassified based on target shape, waste, and/or workpiece.
Latest Carnegie Mellon University Patents:
This application is a continuation of U.S. Pat. No. 6,757,582, filed on Apr. 30, 2003, which claims benefit of priority to U.S. Provisional Patent Application Ser. No. 60/377,695, filed May 3, 2002, where the contents of all foregoing patent applications are herein incorporated by reference in their entirety.
FIELDThis disclosure relates generally to controls, and more specifically to controlling a tool for shaping a workpiece.
BACKGROUNDA wide variety of applications call for objects to be formed from general workpieces, where the object formation can include cutting the object from the workpiece. The precision required of the cut may depend on the particular application.
One application that can call for high precision is the shaping of bone during surgery. For example, in a surgery such as a total knee replacement (TKR), the bones to which a prosthetic knee may be attached, typically the femur and the tibia, can be shaped to facilitate stable and effective implantation of the prosthesis.
Some cutting systems achieve increased accuracy by fixating the workpiece, such as bone. Bone fixation can be accomplished using a screw(s) and/or a clamp(s) to secure the bone to a secure positioning brace. Fixation can be used for many robotic orthopedic surgery systems because such systems depend on a fixed target and cannot or do not track the target. Fixation may be used in robotic systems despite the risks to the patient that can include pain, infection, and increased recovery and rehabilitation periods caused by the invasive nature of fixation.
Robotic and other surgical systems may be susceptible to failure that can occur suddenly and can cause damage or injury to the subject. Controllable or detectible failure may be detected before harm is done. Undetectable failure may cause damage when the system appears to be functioning normally. If a robot provides power drive or power assistance to an operator, failure may result when the robot malfunctions because the operator may be unable to react in time or with sufficient force to prevent the robot components from injuring the subject. Robotic systems may also be undetectable failures, since the operator may not be in full or even partial physical control of the robot.
SUMMARYThe disclosed methods and systems include a control method that includes providing a workpiece that includes a target shape, providing a cutting tool, providing a 3-D image associated with the workpiece, identifying the target shape within the workpiece image, providing a 3-D image associated with the cutting tool, registering the workpiece with the workpiece image, registering the cutting tool with the cutting tool image, tracking the workpiece and/or the cutting tool, transforming the tracking data based on image coordinates to determine a relationship between the workpiece and the cutting tool, and based on the relationship, providing a control to the cutting tool. The control can include an analog signal, a digital signal, a control to at least partially retract a cutting element associated with the cutting tool, a control to reduce the speed of a cutting element associated with the cutting tool, a control to stop a cutting element associated with a cutting tool, or another control.
The methods and systems can include representing the workpiece image using volume pixels (voxels), and classifying the workpiece image voxels based on the target shape. Accordingly, based on the relationship between the cutting tool and the workpiece, the methods and systems can include re-classifying the voxels based on the relationship.
The methods and systems can include providing an image based on CT scan data, X-ray data, MRI data, fluoroscopy data, and/or ultrasound data. The methods and systems can also include classifying such image data, represented as three dimensional volume pixels or “voxels,” where classifying the image voxels based on the target shape includes distinguishing target shape voxels and workpiece voxels. In an embodiment, distinguishing target and workpiece voxels includes associating target shape voxels with the target shape and associating non-target shape voxels as waste. Color-coding voxels, such as target shape voxels associated with the target shape, can also be performed to distinguish voxels. The images and/or voxels can be displayed to a user to enable a user to view relative positions of the cutting tool and workpiece and/or target shape. In one embodiment, the methods and systems can include re-classifying the voxels based on the relationship.
Classifying and/or re-classifying voxels can include identifying mixture voxels that include part workpiece and part target shape, subdividing the mixture voxels, and iteratively identifying and subdividing mixture voxels to a predetermined voxel resolution. In one embodiment, mixture voxels can be understood to be voxels that can be associated with more than one classification, where exemplary voxel classifications can include target, workpiece, waste, empty, cutting tool, cutting element, or other classifications. Subdividing the mixture voxels can be performed based on an octree data structure. Further, the methods and systems can include recombining voxels having the same classification, where such recombining can generally be performed based on neighboring voxels of the same classification.
The methods and systems can also include a probe that can be calibrated and employed to register the workpiece and/or the cutting tool to the workpiece image and the cutting tool image, respectively. The disclosed tracker can include a tracking method and system based on providing one or more markers on or otherwise associated with the workpiece and/or the cutting tool. The tracker can measure and/or determine at least one position and at least one angle associated with the workpiece and/or the cutting tool, where in one embodiment, the tracker can track in three positions and three angles to provide six degrees of freedom. The tracked data can thus be transformed to an image coordinate system to allow an updating of the respective image positions, angles, etc.
The image updating can also include (re)classifying voxels associated with the workpiece, where the reclassification can be based on the tracking data associated with the workpiece and/or the cutting tool. Such classifying and/or reclassifying can include identifying voxels associated with the workpiece that are eliminated by the cutting tool. The classifying and/or reclassifying can also include identifying mixture voxels, subdividing the mixture voxels, and, iteratively identifying and subdividing mixture voxels until reaching a predetermined voxel resolution. As provided previously, identifying mixture voxels includes identifying voxels having more than one classification. The subdividing can be based on an octree data structure. Voxel recombination of voxels having the same classification can also be performed.
Accordingly, the methods and systems include providing a control based on determining a distance between the cutting tool image and the voxels classified based on the target shape. In one embodiment, the control can be based on increasing the size of the cutting tool image to determine whether the increased size cutting tool intersects with the target image. The cutting tool image can be increased by a fixed amount, and/or based on tracking data associated with the cutting tool. The control provided to the cutting tool can thus be based on the relationship between a cutting element associated with the cutting tool image, and voxels classified based on the target shape.
In an embodiment, the control provided to the cutting tool can be based on the relationship between the cutting tool image and the voxels classified and/or associated with the target shape, where the relationship can be based on collision detection and/or intersection detection between at least part of the cutting tool and voxels associated with the target shape.
In one embodiment, the workpiece image can be understood to be associated with voxels that can be further associated with a three-dimensional grid of voxels, where an image associated with the workpiece can be incorporated into the grid, and grid voxels can be identified as being associated with the workpiece. Some of the workpiece voxels can thus further be associated with the target shape.
The methods and systems include providing a control to the cutting tool by performing at least one of collision detection and intersection detection. Such control can performing at least one of collision detection and intersection detection between at least part of the cutting tool and the target shape of the workpiece image.
In the disclosed methods and systems, identifying the target shape includes classifying voxels associated with the workpiece image as at least one of workpiece and target shape. Accordingly, providing control to the cutting tool can include performing at least one of collision detection and intersection detection between at least part of the cutting tool and the target shape voxels. Providing control can also include providing a control based on a threshold distance between the workpiece image and the cutting tool image.
Also disclosed is a system that includes a cutting tool, a workpiece that includes a target shape, a tracker to provide tracking data associated with the cutting tool and the workpiece, and a controller to control the cutting tool based on the tracking data associated with the cutting tool and the tracking data associated with the workpiece. The cutting tool can include one or more cutting elements that can include one or more blade(s), one or more rotatable blade(s), one or more retractable blade(s), one or more water jet(s), one or more particulate jet(s), one or more lithotriptor(s) and/or one or more ultrasonic lithotriptor(s). The controller can control the cutting tool by providing a control to at least partially retract the cutting element(s), and/or at least partially reduce a rotation rate and/or change a cutting rate of the cutting element(s). The controller can transmit a control signal to the cutting tool, where the control signal includes an analog signal, a digital signal, and no signal.
The systems can include a tracker that includes or otherwise provides tracking data based on at least three positions and at least three angles. The tracker can include one or more first markers associated with the workpiece, and one or more second markers associated with the cutting tool. The markers or some of the markers can be one or more infrared sources, Radio Frequency (RF) sources, ultrasound sources, and/or transmitters. The tracker can thus be an infrared tracking system, an optical tracking system, an ultrasound tracking system, an inertial tracking system, a wired system, and/or a RF tracking system.
The systems also include one or more images associated with the workpiece and at least one image associated with the cutting tool. The workpiece image(s) can be registered to the workpiece, and the cutting tool image(s) can be registered to the cutting tool. Accordingly, the systems include a means to register the workpiece to the image(s) associated with the workpiece, and a means to register the cutting tool to the image(s) associated with the cutting tool. The registration means can include a probe that can be calibrated prior to registration. Registration can be performed by contacting locations on the workpiece and/or cutting tool with the calibrated probe.
The systems thus also include means to provide at least one image associated with the workpiece, and means to provide at least one image associated with the cutting tool. Such means can include Computer Aided Design (CAD), CT scan, MRI data, X-ray, fluoroscopy, and/or ultrasound, although other means can be used. The systems can update the images with tracking data using means to transform the tracking data between different coordinate systems. Such transformations can be mathematically effectuated.
The systems and methods can be applied to a workpiece that includes bone, cartilage, tendon, ligament, muscle, connective tissue, fat, neuron, hair, skin, a tumor, and an organ. The cutting tool can include an endoscopic instrument.
The controller can also include a collision detection module and/or an intersection detection module that can determine a relationship between the cutting tool and at least part of the workpiece.
Disclosed is a system that includes a workpiece having a target shape included therein, a tracker to track at least one of a cutting tool and the workpiece, and, a control system, the control system including instructions to cause a processor to track the cutting tool and the workpiece, to determine a relationship between the cutting tool and at least one of the workpiece and the target shape, and to provide a control to the cutting tool based on at least one of the relationship of the cutting tool and the workpiece, and the relationship of the cutting tool and the target shape. The control system can also include an image associated with the workpiece and an image associated with the cutting tool. The image associated with the workpiece can includes an image associated with the target shape, and/or at least part of the workpiece image can be designated and/or otherwise classified as being associated with the target shape.
The system also includes an image registration means, where the image registration means registers the workpiece to an image associated with the workpiece, and the image registration means registers the cutting tool to an image associated with the cutting tool, and wherein the control system includes instructions to update at least positions of the workpiece image and the cutting tool image based on data from the tracker; and, where at least one of the relationship of the cutting tool and the workpiece, and the relationship of the cutting tool and the target shape, are based on the updated image positions.
In the disclosed systems, the relationship between the cutting tool and the workpiece can be based on position data and/or angle data associated with the cutting tool(s) and/or the workpiece, where the position data and angle data can be based on the tracker. The relationship between the cutting tool and the target shape can thus be based on position data and/or angle data associated with the cutting tool and/or the target shape, where the position data and angle data are based on the tracker. The instructions to determine a relationship between the cutting tool and the target shape and/or workpiece can also include instructions to represent the workpiece as a group of volume pixels (voxels), classify voxels corresponding to the target shape, represent the cutting tool as a group of voxels, a surface model, and/or using constructive solid geometry or other geometric modeling, and, based on the tracker data, classify and/or update the voxels. The instructions to classify voxels corresponding to the target shape can include classifying voxels as target shape and classifying voxels as waste, and/or instructions to color-code voxels corresponding to the target shape. In an embodiment, the workpiece can be represented as a surface model
The disclosed methods and systems can include a control for a shaping tool that can be referred to herein as a cutting tool, and in one embodiment, is a freehand shape cutter, but can be understood to be a tool that can cut, shave, and/or grind. References herein to a shaping tool or cutting tool can accordingly be understood to represent a tool that can cut, shave, and/or grind.
The disclosed methods and systems include a freehand shape cutter that includes a handheld cutting tool having a cutting element and a first marker. A second marker can be affixable to a workpiece that includes a target shape. A tracker can track a position of the cutting tool based on a position of the first marker, and also track a position of the workpiece based on a position of the second marker. A controller can control the cutting element based on the position of the cutting tool and the position of the workpiece to prevent the cutting element from invading the target shape.
In one exemplary embodiment, the methods and systems include a method of shaping a bone by determining a target shape of the bone, aligning the target shape with the bone, providing a handheld cutting tool having a cutting element, tracking the bone and the cutting tool, cutting the bone with the cutting tool, and controlling the cutting element to prevent invasion of the cutting tool on the target shape. In such an embodiment, the target shape of the bone can be determined by creating a bone model based on geometrical data of the bone, and establishing the target shape based on the bone model.
In one embodiment, the cutting tool can have six degrees of freedom, and the tracker can track with six degrees of freedom.
The cutting element can include at least one of a blade, a rotatable blade, a retractable blade, a water jet, a particulate jet, a lithotriptor, and an ultrasonic lithotriptor. The controller can control the cutting element by at least one of stopping the cutting element, retracting the cutting element, progressively retracting the cutting element, switching off the cutting element, and interrupting power to the cutting element. The tracked and/or determined positions can be three-dimensional positions that can be tracked substantially simultaneously. Additionally and optionally, the positions can be tracked continuously.
The target shape may be represented in the controller as a virtual template. The workpiece can include, for example, at least one of bone, cartilage, tendon, ligament, muscle, connective tissue, fat, neuron, hair, skin, tumor, and an organ that can include skin, brain, meninges, palate, tongue, esophagus, stomach, duodenum, jejunum, ileum, colon, liver, kidney, spleen, pancreas, ganglion, heart, artery, vein, arteriole, venule, capillary, lung, trachea, bronchus, bronchiole, alveolus, blood, extremity, and a reproductive organ. A tumor can include a neoplasm, a benign tumor, a hyperplasia, a hypertropy, a dysplasia, an anaplasia, a metaplasia, a metastasis, and a malignant tumor.
BRIEF DESCRIPTION OF THE FIGURES
FIGS. 8 depicts an embodiment of a handheld cutting tool;
To provide an overall understanding, certain illustrative embodiments will now be described; however, it will be understood by one of ordinary skill in the art that the systems and methods described herein can be adapted and modified to provide systems and methods for other suitable applications and that other additions and modifications can be made without departing from the scope of the systems and methods described herein.
Unless otherwise specified, the illustrated embodiments can be understood as providing exemplary features of varying detail of certain embodiments, and therefore, unless otherwise specified, features, components, modules, and/or aspects of the illustrations can be otherwise combined, separated, interchanged, and/or rearranged without departing from the disclosed systems or methods.
The disclosed systems and methods include a methods and systems for controlling a cutting tool. In one embodiment, the cutting tool can be controlled relative to a workpiece and/or an object (target) that can be derived from the workpiece. Although the illustrated embodiments and other examples provided herein relate to surgical applications where the workpiece can be, for example, a bone, those of ordinary skill in the art will recognize that the disclosed methods and systems relate to a system and method where a target shape can be developed from other workpieces, where the workpiece can include a material including, for example, wood, plastic, living tissue, ceramic, plaster, or other non-living materials. For surgical applications, workpieces can include, for example, living tissue including bone, cadaveric grafts, or engineered tissue grafts.
The disclosed methods and systems thus include and/or can be associated with a workpiece from which a target shape can be formed using a cutting tool to cut, grind away, or otherwise eliminate pieces or portions of the workpiece. When appropriate cuts are made and pieces or portions appropriately eliminated, the remaining workpiece can be substantially similar to the desired target shape. Accordingly, the workpiece can be understood to include a target shape and waste, wherein the cutting tool can be used to eliminate the waste from the workpiece to leave the target shape. The disclosed methods and systems can thus include generating one or more computer models and/or a workpiece image that includes the target shape and a cutting tool image, registering the workpiece and the cutting tool to the respective computer models and/or images, and facilitating target shape formation by tracking the cutting tool (and/or the cutting element) and the workpiece relative to the computer models and/or images to enable the cutting tool (and/or cutting element) to cut and/or eliminate those portions of the workpiece that are not part of the target shape. A 2D representation of the 3D images can be provided on a display.
A block diagram describing the features of a method and system as disclosed herein can be as provided in
As
Once the workpiece image is provided 100, a target shape can be integrated into the workpiece image 102. In some embodiments, the target shape can also be a 3-D image that can be integrated with the workpiece image, or the workpiece image may merely be modified to include designations of those image portions that are target shape, and those portions which are not target shape. For the purposes of the present disclosure, non-target shape areas of the workpiece can be referred to herein as “waste.” One method of generating an integrated workpiece/target shape is provided in U.S. Pat. No. 6,205,411, the contents of which are herein incorporated by reference.
Once the integrated workpiece/target image exists 102, the integrated image can be “voxellated.” The term “voxellated” as provided herein, can include a method for subdividing an image into three-dimensional (3-D) pixels, or “voxels,” where initially, the integrated image can be divided into voxels having resolution of, for example, 0.3 millimeters in each of three dimensions, although such resolution is merely for illustration and not limitation, and voxel resolution can depend on the embodiment and can depend, for example, on resolutions provided by a tracker for the disclosed methods and systems.
In some embodiments, the voxel size and/or dimensions can match the cutting tool tracking system accuracy, while in other embodiments, the voxel size can be an integer or fractional multiple of the tracking system accuracy and/or resolution. Accordingly, workpiece image data may be resampled to provide voxels having a desired dimension for compatibility with a tracking system.
In one illustrative embodiment, a CT scanner may provide a workpiece image having a resolution of 1 mm×1 mm×1 mm, while a tracking system may have a tracking accuracy of 0.3 mm×0.3 mm×0.3 mm. Accordingly, in one embodiment where the voxel size is the same as the tracking system accuracy and/or resolution, the integrated workpiece image can resampled to provide voxels of size 0.3 mm×0.3 mm×0.3 mm. One illustrative tracking system can be the OPTOTRAK® 3-D motion and position measurement and tracking system described herein, although those of ordinary skill in the art will recognize that other tracking systems of other accuracies and/or resolutions can be used.
Voxellation can also provide a uniformity to an integrated image of non-uniform resolution. For example, a CT image from which an integrated image may be based, may have varying resolution and can be resampled through voxellation to provide uniformity. Such uniformity can reduce the computational burden of manipulating images because the voxels have a known and unvarying size.
Those of ordinary skill in the art will recognize that disclosed methods and systems also can also include, as provided herein, interchanging the integration and voxellation of
Referring again to
For an embodiment according to
In one embodiment, the point probe can be calibrated using a tracking system such as the commercially available OPTOTRAK® 3-D motion and position measurement and tracking system that can be integrated with a computer such as the computer provided herein, and can provide 3-D tracking data for rigid bodies such as the workpiece, cutting tool, and probe by utilizing one or more cameras to track light-emitting diode (LED) markers located on the rigid body(s), where the LEDs can provide infrared signals that can be, in some embodiments, provided in a pattern associated with the rigid body to which the LEDs are associated. Those of ordinary skill in the art will recognize that such a tracking system is merely one illustrative tracking system, and other tracking systems and mechanisms capable of tracking a rigid body can be used without departing from the scope of the methods and systems herein.
For the OPTOTRAK® embodiment, the LED sensors can provide measurements at a rate of sixty times per second, although such measurement rate is dependent upon the application, processing power, desired tracking accuracy, anticipated refinement of computation, and other concerns. Accordingly, such sensor update rate is merely illustrative. Furthermore, other sensors besides the LED sensors can be used.
LED or other markers can be associated with or otherwise affixed to the workpiece and the cutting tool 110, and the calibrated probe can be used to measure discrete positions along the surfaces of the actual cutting tool and the workpiece (i.e., a probe user can touch the probe to the surfaces). The discrete point positions can be expressed relative to the marker and registered with the (integrated) workpiece image and cutting tool image, respectively 112. Accordingly, the methods and systems herein can thereafter relate and/or associate the workpiece to the workpiece image, the cutting tool to the cutting tool image, and by tracking the workpiece and the cutting tool, transform the tracked positions of the cutting tool and the workpiece to the images of the cutting tool and the workpiece, respectively, to allow the processor to determine whether the cutting tool is impinging upon or otherwise invading the target shape.
In an embodiment, the cutting tool and workpiece tracking can be performed independently, with independent sensors. In other embodiments, a single sensor may be used to assist tracking of the two objects. Furthermore, although the OPTOTRAK system includes an embodiment where the LED markers can be affixed to the rigid bodies to be tracked, other markers (and/or sensors) can be used that may not required such affixing. Those with ordinary skill in the art will recognize that the markers, calibration methods, and tracking methods provided herein are merely illustrative, and other methods of finding coordinates on the workpiece and/or cutting tool surface can be used, including for example, ultrasound, fluoroscopic imaging, optical range sensors, mechanical arms, etc.. Furthermore, registration techniques including fiducial markers can be used.
Returning to
For one embodiment of the methods and systems that employs voxels to represent the workpiece and/or the cutting tool, updating the image 126 as provided according to
For example, in one embodiment, voxels corresponding to the integrated workpiece image can be categorized as “waste”, “target”, or “mixture”. Voxels can also be characterized as “empty”. An “empty” voxel could be designated where there is no workpiece material. This could occur, for example, where no material was ever present. A voxel previously designated other than “empty” could be redesignated “empty” once the material in the region corresponding to the voxel was removed during shaping. In an embodiment, where voxels can be used to represent the cutting tool, and in one embodiment, may be designated and/or classified as “tool”, “free”, or “mixture.”
In one embodiment, voxel updating 126 can include an octree methodology that can be used to subdivide and/or otherwise manage “mixture” voxels (e.g., cutting tool and/or workpiece) until such voxels are classified as something other than “mixture.” Accordingly, one voxel can be subdivided into eight sub-voxels, where the sub-voxels may be the same size.
In an embodiment, voxels can be used to designate the cutting element portion of the cutting tool, and may have classifications accordingly.
In some embodiments, the cutting tool image may not be voxellated but may be provided as an image with certain dimensions, where such dimensions may be known relative to the tracked positions on the cutting tool.
Those of ordinary skill will thus recognize that other “mixture” type voxels can be provided by the disclosed systems and methods. For example, a mixture voxel can be part-workpiece and part empty, or part-target and part-empty. Other variations of voxel classifications can be developed based on the embodiment, and accordingly, those of ordinary skill will recognize that the subdivision and recombining processes provided herein can be applied to other such types of mixture voxels until the mixture voxels are subdivided to a predetermined voxel resolution. In one embodiment, mixture voxels at the predetermined resolution can be classified based on the majority of the voxel.
Additionally and/or optionally to the subdivision of “mixture” voxels, a recombination or merging of non-mixture (e.g., “waste” and “target”) voxels based on an octree and/or other management scheme can be performed with commonly designated neighbors to define larger-dimensioned voxels that encompass like-classified voxels. One of ordinary skill in the art will recognize that a process of forming progressively larger “target” and “waste” voxels can simplify an image representation of the integrated workpiece image, thereby reducing the storage space and/or computation time associated with storing and/or manipulating the integrated workpiece image.
In some embodiments, additional categorizations for voxels may be provided. In one embodiment, voxels can be categorized as “near-waste” or “near-target” to indicate voxels in a given proximity of “waste” or “target” voxels, respectively. In some embodiments, a “mixture” voxel can include mixtures of target and waste, mixtures of target and near-target, mixtures of waste and near-waste, mixtures of target and empty, mixtures of waste and empty, mixtures of near-waste and empty, mixtures of near-target and empty, and mixtures of more than two designations. In an embodiment, a “mixture” voxel may be subdivided into sub-voxels of different designations. For example, a mixture of waste and target could be subdivided into voxels of “near-waste” and/or “near-target” in place of or in addition to sub-voxels designated “waste” and/or “target”.
One of ordinary skill in the art will also thus recognize that in embodiments that voxellate the cutting tool, the cutting tool voxels can also be classified as provided previously herein, where such “mixture” voxels can be further subdivided and/or combined as provided herein relative to the integrated workpiece image voxels.
Accordingly, referring back to
Accordingly, when the cutting tool and/or element is about to or does impinge or otherwise invade a voxel categorized as target, a control signal may be transmitted to the cutting element controller to cause the cutting element to retract and/or be inactivated. Similarly, as the cutting element is moved to areas that can be associated with a voxel categorized as waste, a control signal can be transmitted to the cutting element controller to allow operation of the cutting element.
Those of ordinary skill in the art will recognize that the methods and systems disclosed herein can include a method and system of collision detection through the use of voxels and the octree. Such collision or interference detection can allow the processor to compare the relative positions of the cutter and workpiece to the integrated workpiece image/classified voxels, to compute a control signal that prevents or otherwise reduce the probability of invasion of the cutting element to the target shape. Accordingly, such control can be based on the relative and/or predicted positions of the workpiece to the cutting element/tool, a measured and/or predicted velocity of the cutting element/tool and/or workpiece, angles of rotation, voxel sizes, voxel classifications, sampling rate, and other data.
Collision detection and/or interference detection can be performed 124, where such detection can be based on computed distances between the cutting tool (and/or cutting element) and the waste/good elements of the workpiece. For example, in one embodiment, if the 3D position of the cutting element is not within a specified distance of the workpiece, it may be understood that the cutting tool is sufficiently distant from the workpiece such that it may be desirable to disable the cutting tool with a corresponding control command.
Based on respective sizes of voxels, for example, a distance can be computed between the cutting tool/element and the workpiece.
In one embodiment, interference detection can be performed in addition to or alternative to a distance computation. For example, in one embodiment, to determine whether the cutting tool and/or element may intersect with “good” voxels of the workpiece, the cutting tool image can be artificially increased and voxellated based on an increased size. Such increased size can be constant throughout in some embodiments, while in other embodiments, the cutting tool and/or element size can be artificially increased based on an iteration of the systems and methods of
In one embodiment, a control may be provided to the cutting tool/element based on the distance and a user-designated cutting precision. For example, a user may designate or otherwise input relative precisions of cutting precision at different times. In an embodiment, cutting precision may be automatically computed based on voxel sizes in the vicinity of the cutting tool and the “good” voxels.
In some embodiments, to aid the user or operator of the cutting tool, classified voxels can be color coded. For example, waste voxels can be translucent and/or clear, while target (e.g., “good”) voxels may be solid. Alternatively, target shape voxels can be transparent, while waste voxels can be solid to facilitate visualization of material to be removed. Other systems for classifying and/or designating voxels can be used. Similarly, other methods and system for providing collision detection can also be implemented without departing from the scope of the disclosed methods and systems. For example, collision detection can include a KD-tree, an AABB-tree, a bounding box technique, a closest-point calculation, a voxel-based bounding box, and other techniques.
In an embodiment, the control signal provided by the computer to the cutting tool/element can be an analog signal that can be received by a driver box, although in other embodiments, the signal may be digital. The driver box can thereafter transmit a signal to a motor or other component of the cutting tool/element, to provide cutting tool/element control. Furthermore, in some systems and methods, the cutting tool can include an ultrasonic motor that can transmit an encoder signal to allow the computer to track the motor characteristics (e.g., speed, rotation, etc.).
Illustrative image feedback systems that can provide guidance to a user of a cutting tool, where such feedback systems are described in U.S. Pat. Nos. 5,880,976 and 6,205,411, the contents of which are incorporated herein by reference.
In some embodiments, a robot can control the cutting tool and can be programmed to cut a predetermined shape from the workpiece. In other embodiments, manual control can be used to used to facilitate fine control of the cutting. Combinations of manual and robotic control can be used. The disclosed systems and methods can thus be utilized regardless of whether the cutting tool user is human or non-human.
As provided previously herein, multiple cutting elements can be used, wherein the different cutting elements can be characterized in the computer for proper tracking and registration (and voxellation). For example, one cutting element can include different types of attachments. A user can change the computer profile (e.g., image) of the cutting element based on the attachment. One attachment can be used to cut while another attachment may grind waste material. Additionally and optionally, the surface characteristics of the cutting element can be considered and provided to the computer for more accurate tracking and registration (and voxellation).
The cutting tool can be a freehand instrument, although in some embodiments, the cutting tool can be restricted in movement as is well known in some robotic applications.
Those of ordinary skill in the art will recognize that the tracker as provided herein can include a predictive tracker that can utilize, for example, a Kalman filter or other predictive or estimation module to control the cutting element by predicting position, at least, of the cutting tool/element in a next measurement interval. In a predictive tracking embodiment, the tracker/controller can predict position, velocity, and/or acceleration of the cutting tool/element, for example. In some embodiments, the tracker can vary the speed of the cutting element. The tracker can determine the position of the cutting tool/element based on a known prior position and on velocity and/or acceleration data. The tracker may also predict a future position of the cutting tool/element based on a known prior position and on velocity and/or acceleration data. Position prediction can help prevent or otherwise reduce the likelihood of invasion of target or near-target material by the cutting tool/element as future invasion can be predicted and a signal sent or interrupted to the cutting tool/element to alter its interaction with the workpiece, as described herein.
The tracking, control, registration, calibration, image generation and updating, voxellation, and other processes, provided herein as residing on a computer or other processor-controlled device, can be understood to be processes that can be implemented on one or more processors that can be one or more like or dissimilar devices that can be communicatively connected via wired or wireless communications. Additionally and optionally, the processes can be implemented in hardware or software, and combinations thereof.
Accordingly,
As
A sensor collection module 5130 can collect data from the sensors that can include infrared data, ultrasound data, or other data based on sensors 5124, 5128 associated with the cutting tool 5122 and workpiece 5128. The sensors 5124, 5128 can be the same or distinct, can be affixed to the cutting tool 5122 and/or workpiece 5126, and/or may be located separately from the cutting tool 5122 and workpiece 5126. The sensor collection module 5130 can thus include a receiver and/or detector to receive signals or other data from the sensors 5124, 5128, and signal conditioning modules including filters, amplifiers, and/or analog-to-digital converters, for example. In one embodiment provided herein, the sensor collection module includes an optical device to sense LEDs.
A sensor tracking module 5132 can receive the signal data from the sensor collection module 5130 and process the data to provide measurements that can include coordinates of the cutting tool 5122 and workpiece 5126 in x, y, z coordinates, and angles of yaw, pitch, and roll, although other coordinates can be used, and fewer or more degrees of freedom, or combinations thereof, can be used. For one embodiment provided herein that tracks marker positions (e.g., sensors) on the cutting tool 5122 and workpiece 5126, the second x, y, z and roll, pitch, and yaw can be related to the marker. Such positions and angles can thus be transformed 5134 to a coordinate system compatible with the coordinate system of the images that also include the positions of the markers. Based on the computed positions of the two markers and the known respective geometries of the cutting tool 5122 and workpiece 5126, a collision detection module 5136 can compute the intersection of the cutting tool 5122 and workpiece 5126 to determine whether the cutting tool 5122 is invading target voxels of the workpiece 5126. Accordingly, the collision detection module can include a voxellation module to update the voxellated workpiece based on the cutting tool position. Based on the collision detection module determination, a command or other measurement can be provided to a cutter control module 5142 that can generate or otherwise provide a signal for delivery to the cutting tool and/or cutting element 5122. As provided herein, such command can include data to stop the cutting element, to retract the cutting element, or to change the speed of the cutting element, for example. The cutter control module 5142 can thus include or otherwise interface to an antenna, output port, bus, relay, switch, or other means to transport data to the cutting tool/element 5122.
One of ordinary skill in the art will recognize that the methods and systems disclosed herein can utilize wired or wireless communications, or a combination thereof, as desired.
As provided previously herein, the tracker 20 and markers 36, 46 can be, for example, as described in U.S. Pat. Nos. 5,828,770; 5,923,417; 6,061,644; and 6,288,785, the contents of which are incorporated herein by reference. Other tracking systems may be employed, such as radio-frequency (RF) tracking, ultrasound tracking, electromagnetic tracking, including “Flock of Birds” tracking, as those described in U.S. Pat. Nos. 4,849,692; 5,600,330; 5,742,394; 5,744,953; 5,767,669; and 6,188,355, the contents of which are incorporated herein by reference. Connections 56, 58, may be provided between the tracker 20 and controller 50, and between the controller 50 and the tool 30, respectively. The connections may include an electrical connection, a fluid connection, or a light connection such as an optical fiber. The connections 56, 58, may also include RF or other wireless connections that may not require a physical connection, as is depicted by way of example in
The user may shape the workpiece 40 by applying the cutting element 34 of the cutting tool 30 to the workpiece 40. Waste material 42 can be removed if the cutting element 34 is in an orientation or condition for cutting. An orientation or condition for cutting can depend on what type of cutting element 34 is employed. For example, if the cutting element 34 is a rotating blade, then a cutting condition can be rotation of the blade. In this example, waste material 42 can be removed if the blade is rotating. Cutting can be modulated by slowing or stopping the blade. In another example, the cutting element 34 can be a retractable blade. In this example, a cutting condition can be rotation of the retractable blade, and another cutting condition can be extension of the retractable blade. In yet another example, the cutting element 34 can include a jet of a material such as water, or a particulate such as sand. In this example, a cutting condition can be delivery of the material through the jet. Cutting can be modulated by slowing or stopping the delivery of material by at least partially closing a valve, stopping or slowing a pump, diverting the material. In another example, the cutting element 34 can include a lithotriptor. A lithotriptor can, for example, disrupt at least a part of the workpiece 40 by delivering a shock wave to the workpiece 40. The cutting element 34 can include an ultrasonic generator to deliver the shock wave. Other embodiments of cutting element 34 may include heater, chipper, cautery, electrocautery, abraiser (such as sandpaper), suction, screw, scissors, and scalpel, and other devices known in the art for eliminating, excising, wearing, or cutting material.
Retraction and extension of the retractable blade may be accomplished with an adjustment system. An adjustment motor 432 may be in communication with a controller as described above. In an embodiment, the adjustment motor 423 can be an ultrasonic motor. Ultrasonic motors may be preferred due to fast response time. The adjustment motor 432 may be connected to a top adjustment pulley 424, which can drive a timing belt (not shown) that may couple to a lower adjustment pulley 426. A cam 436 can be connected to the lower adjustment pulley 426. The cam 436 can convert the rotational motion of the lower adjustment pulley 426 into linear motion of the retractable blade by pushing on an arm 438 of the cutter head 430. In response to a signal from a controller, the adjustment motor 432 can drive the adjustment system to effect retraction or extension of the blade.
In an embodiment, an ultrasonic motor can be driven by a high frequency signal which may be generated by a driver box and can be tuned to the ultrasonic motor. In an embodiment, a tool can return a digital raw quadrature signal.
Those or ordinary skill in the art will recognize that the methods and systems disclosed herein have wide applicability to surgical and non-surgical techniques. For example, the disclosed methods and systems can be applied to embodiments and/or applications that may employ stereo lithography, fused deposition machine (FDM), architecture, sculpting, and other areas.
The disclosed methods and systems thus include methods and systems to track a workpiece and a cutting tool, transform the tracked coordinates to the image coordinates, update the images accordingly based on the workpiece and/or cutting tool characteristics (i.e., cutting element size, dimensions, physical characteristics, etc.), and compute a control signal for transmission to the cutting tool.
The methods and systems described herein are not limited to a particular hardware or software configuration, and may find applicability in many computing or processing environments. The methods and systems can be implemented in hardware or software, or a combination of hardware and software. The methods and systems can be implemented in one or more computer programs, where a computer program can be understood to include one or more processor executable instructions. The computer program(s) can execute on one or more programmable processors, and can be stored on one or more storage medium readable by the processor (including volatile and non-volatile memory and/or storage elements), one or more input devices, and/or one or more output devices. The processor thus can access one or more input devices to obtain input data, and can access one or more output devices to communicate output data. The input and/or output devices can include one or more of the following: Random Access Memory (RAM), Redundant Array of Independent Disks (RAID), floppy drive, CD, DVD, magnetic disk, internal hard drive, external hard drive, memory stick, or other storage device capable of being accessed by a processor as provided herein, where such aforementioned examples are not exhaustive, and are for illustration and not limitation.
The computer program(s) is preferably implemented using one or more high level procedural or object-oriented programming languages to communicate with a computer system; however, the program(s) can be implemented in assembly or machine language, if desired. The language can be compiled or interpreted.
The processor(s) can thus be embedded in one or more devices that can be operated independently or together in a networked environment, where the network can include, for example, a Local Area Network (LAN), wide area network (WAN), and/or can include an intranet and/or the internet and/or another network. The network(s) can be wired or wireless or a combination thereof and can use one or more communications protocols to facilitate communications between the different processors. The processors can be configured for distributed processing and can utilize, in some embodiments, a client-server model as needed. Accordingly, the methods and systems can utilize multiple processors and/or processor devices, and the processor instructions can be divided amongst such single or multiple processor/devices.
The device(s) or computer systems that integrate with the processor(s) can include, for example, a personal computer(s), workstation (e.g., Sun, HP), personal digital assistant (PDA), handheld device such as cellular telephone, or another device capable of being integrated with a processor(s) that can operate as provided herein. Accordingly, the devices provided herein are not exhaustive and are provided for illustration and not limitation.
Many additional changes in the details, materials, and arrangement of parts, herein described and illustrated, can be made by those skilled in the art. Accordingly, it will be understood that the following claims are not to be limited to the embodiments disclosed herein, can include practices otherwise than specifically described, and are to be interpreted as broadly as allowed under the law.
Claims
1. A control method, the method comprising,
- providing a workpiece that includes a target shape,
- providing a cutting tool,
- providing a 3-D image associated with the workpiece,
- identifying the target shape within the workpiece image,
- providing a 3-D image associated with the cutting tool,
- registering the workpiece with the workpiece image,
- registering the cutting tool with the cutting tool image,
- tracking at least one of the workpiece and the cutting tool,
- transforming the tracking data based on image coordinates to determine a relationship between the workpiece and the cutting tool, and,
- based on the relationship, providing a control to the cutting tool.
2. A method according to claim 1, where the workpiece image is comprised of volume pixels (voxels).
3. A method according to claim 1, further comprising representing the workpiece image using volume pixels (voxels), and classifying the workpiece image voxels based on the target shape.
4. A method according to claim 3, further comprising re-classifying the voxels based on the relationship.
5. A method according to claim 1, where providing an image associated with the workpiece includes providing at least one of: CT scan data, X-ray data, MRI data, fluoroscopy data, and ultrasound data.
6. A method according to claim 3, where classifying includes distinguishing between target shape voxels and workpiece voxels.
7. A method according to claim 6, where distinguishing includes associating target shape voxels with the target shape and associating non-target shape voxels as waste.
8. A method according to claim 6, where distinguishing includes color-coding at least target shape voxels associated with the target shape.
9. A method according to claim 3, where classifying includes,
- identifying mixture voxels that include part workpiece and part target shape,
- subdividing the mixture voxels, and,
- iteratively returning to identifying mixture voxels to a predetermined voxel resolution.
10. A method according to claim 9, where subdividing the mixture voxels includes subdividing based on an octree.
11. A method according to claim 9, further comprising recombining voxels having the same classification.
12. A method according to claim 1, further including calibrating a probe.
13. A method according to claim 12, where at least one of registering the workpiece and registering the cutting tool includes employing the calibrated probe to identify at least one location on at least one of the workpiece and the cutting tool.
14. A method according to claim 1, where tracking includes providing at least one marker on at least one of the workpiece and the cutting tool.
15. A method according to claim 1, where tracking includes determining at least one position and at least one angle associated with at least one of the workpiece and the cutting tool.
16. A method according to claim 1, where transforming the tracking data includes performing at least one of collision detection and interference detection.
17. A method according to claim 1, where identifying includes classifying voxels associated with the workpiece based on the tracking data.
18. A method according to claim 17, where classifying includes re-classifying voxels based on the tracking data.
19. A method according to claim 18, where re-classifying includes identifying voxels associated with the workpiece that are eliminated by the cutting tool.
20. A method according to claim 18, where at least one of classifying and re-classifying includes,
- identifying mixture voxels,
- subdividing the mixture voxels, and,
- iteratively returning to identifying mixture voxels, until reaching a predetermined voxel resolution.
21. A method according to claim 20, where identifying mixture voxels includes identifying voxels having more than one classification.
22. A method according to claim 20, where subdividing the mixture voxels includes subdividing based on an octree.
23. A method according to claim 20, further comprising recombining voxels having the same classification.
24. A method according to claim 1, where providing a control includes determining a distance between the cutting tool image and the target shape.
25. A method according to claim 1, where providing a control includes increasing the size of the cutting tool image to determine whether the increased size cutting tool image intersects with the target shape in the workpiece image.
26. A method according to claim 25, where increasing the size includes at least one of increasing the size by a fixed amount, and increasing the size based on tracking data associated with the cutting tool.
27. A method according to claim 1, where providing a control includes providing a control based on the relationship between a cutting element associated with the cutting tool image, and voxels classified based on the target shape.
28. A method according to claim 1, where providing a workpiece image comprises,
- providing a three-dimensional grid of voxels,
- incorporating the workpiece image into the grid, and,
- identifying grid voxels associated with the workpiece.
29. A method according to claim 28, where identifying grid voxels associated with the workpiece includes associating at least one of the grid voxels with at least one of the workpiece and the target shape.
30. A method according to claim 1, where providing a control includes at least one of: providing an analog signal, providing a digital signal, providing a control to at least partially retract a cutting element associated with the cutting tool, providing a control to reduce the speed of a cutting element associated with the cutting tool, and providing a control to stop a cutting element associated with a cutting tool.
31. A method according to claim 1, where providing a control to the cutting tool, includes performing at least one of collision detection and intersection detection.
32. A method according to claim 1, where providing a control to the cutting tool includes performing at least one of collision detection and intersection detection between at least part of the cutting tool and the target shape of the workpiece image.
33. A method according to claim 1, where identifying the target shape includes classifying voxels associated with the workpiece image as at least one of workpiece and target shape.
34. A method according to claim 33, where providing control to the cutting tool includes performing at least one of collision detection and intersection detection between at least part of the cutting tool and the target shape voxels.
35. A method according to claim 1, where providing a control includes providing a control based on a threshold distance between the workpiece image and the cutting tool image.
Type: Application
Filed: Jun 24, 2004
Publication Date: Jun 2, 2005
Applicant: Carnegie Mellon University (Pittsburgh, PA)
Inventors: Gabriel Brisson (Pittsburgh, PA), Takeo Kanade (Pittsburgh, PA), Anthony DiGioia (Pittsburgh, PA), Branislav Jaramaz (Pittsburgh, PA)
Application Number: 10/876,204