Embodiments of the invention relate to a radiation therapy imaging and treatment system. More specifically, embodiments of the invention relate to methods and systems for performing non-voxel-based broad-beam dose calculation for intensity modulated radiation therapy optimization.
Medical equipment for radiation therapy treats tumorous tissue with high energy radiation. In external source radiation therapy, a radiation source external to the patient treats internal tumors. The external source is normally collimated to direct a beam only to the tumor location. Typically, the radiation source consists of either high-energy X-rays, electrons from certain linear accelerators, or gamma rays from highly focused radioisotopes.
The dose and the placement of the dose must be accurately controlled to insure both that the tumor receives sufficient radiation to be destroyed and that damage to the surrounding and adjacent non-tumorous tissue is minimized. To properly plan and perform a radiation therapy treatment session, tumors and adjacent normal structures can be delineated in three-dimensions using specialized hardware and software. For example, intensity modulated radiation therapy (“IMRT”) treats a patient with multiple rays of radiation each of which may be independently controlled in intensity and/or energy. The rays are directed from different angles about the patient and combine to provide a desired dose pattern. The desired dose pattern is determined and optimized based on the three-dimensional shape of the tumorous tissue.
Conventional IMRT optimization, however, has some costs. For example, IMRT optimization generally requires the use of sophisticated, expensive hardware and software. In addition, the computer processing required for IMRT optimization can be time-consuming, such that full treatment planning and optimization cannot be performed under time constraints. Approximations may be used to increase the processing time of IMRT optimization, but these can reduce the accuracy of the optimization. Furthermore, conventional IMRT optimization only accounts for beamlet parameters or voxel parameters and fails to take other parameters, such as machine parameters, into account.
Accordingly, embodiments of the invention provide systems and methods for non-voxel, broad-beam based dose calculation for IMRT optimization. The method enables direct optimization of machine parameters, such as dynamic jaw optimization, leaf position, and angle selections, by using continuous viewpoint and functional formulation. The method also adopts non-voxel-based representation, which makes the optimization flexible and efficient. The systems and methods can also use graphics processing units to further increase optimization processing time and accuracy.
In particular, embodiments of the invention provide a method of calculating a dose distribution for a patient for use in a radiation therapy treatment plan. The method includes acquiring an image of a volume within the patient, defining a radiation source, and defining a reference plane oriented between the radiation source and the patient. The method also includes generating a radiation therapy treatment plan that includes a plurality of rays that extend between the radiation source and the patient volume and calculating a three-dimensional dose volume for the patient volume from the plurality of rays that intersect the reference plane without first having to independently calculate a dose distribution on each of the plurality of rays. The method can also include displaying the three-dimensional dose volume.
Embodiments of the invention also provide a method of optimizing a dose distribution for a patient for use in a radiation therapy treatment plan. The method includes (a) acquiring an image of a volume within the patient, (b) generating a radiation therapy treatment plan, the plan including a plurality of rays that extend between a radiation source and the patient volume, (c) generating an initial set of machine parameters, and (d) calculating a three-dimensional dose volume based on the initial set of machine parameters and the patient volume, the calculation further based on the plurality of rays that intersect the reference plane without first having to independently calculate a dose distribution on each of the plurality of rays. Furthermore, the method includes (e) evaluating an objective functional based on the three-dimensional dose volume, (f) calculating a first derivative of the objective functional, and (g) updating the initial set of machine parameters based on the objective functional. The method also includes (h) repeating acts (d) through (g) at least one time.
Other aspects of the invention will become apparent by consideration of the detailed description and accompanying drawings.
Before any embodiments of the invention are explained in detail, it is to be understood that the invention is not limited in its application to the details of construction and the arrangement of components set forth in the following description or illustrated in the following drawings. The invention is capable of other embodiments and of being practiced or of being carried out in various ways. Also, it is to be understood that the phraseology and terminology used herein are for the purpose of description and should not be regarded as limiting. The use of “including,” “comprising,” or “having” and variations thereof herein are meant to encompass the items listed thereafter and equivalents thereof as well as additional items. Unless specified or limited otherwise, the terms “mounted,” “connected,” “supported,” and “coupled” and variations thereof are used broadly and encompass both direct and indirect mountings, connections, supports, and couplings.
Although directional references, such as upper, lower, downward, upward, rearward, bottom, front, rear, etc., may be made herein in describing the drawings, these references are made relative to the drawings (as normally viewed) for convenience. These directions are not intended to be taken literally or limit the present invention in any form. In addition, terms such as “first,” “second,” and “third” are used herein for purposes of description and are not intended to indicate or imply relative importance or significance.
In addition, it should be understood that embodiments of the invention may include hardware, software, and electronic components or modules that, for purposes of discussion, may be illustrated and described as if the majority of the components were implemented solely in hardware. However, one of ordinary skill in the art, and based on a reading of this detailed description, would recognize that, in at least one embodiment, the electronic based aspects of the invention may be implemented in software (e.g., stored on non-transitory computer-readable medium). As such, it should be noted that a plurality of hardware and software based devices, as well as a plurality of different structural components may be utilized to implement the invention. Furthermore, and as described in subsequent paragraphs, the specific mechanical configurations illustrated in the drawings are intended to exemplify embodiments of the invention and that other alternative mechanical configurations are possible.
The radiation module 22 also includes a modulation device 34 operable to modify or modulate the radiation beam 30. The modulation device 34 modulates the radiation beam 30 and directs the radiation beam 30 toward the patient 14. Specifically, the radiation beam 30 is directed toward a portion 38 of the patient 14. The portion 38 may include the patient's entire body, but is generally smaller than the patient's entire body and can be defined by a two-dimensional area and/or a three-dimensional volume. A portion may include one or more regions of interest. For example, a region desired to receive the radiation, which may be referred to as a target or target region, is an example of a region of interest. Another type of region of interest is a region at risk. If a portion includes a region at risk, the radiation beam is preferably diverted from the region at risk. The patient 14 may also have more than one target region that needs to receive radiation therapy. Such modulation is sometimes referred to as intensity modulated radiation therapy (“IMRT”).
The portion 38 may include or be referred to as a target or target region or a region of risk. If the portion 38 includes a region at risk, the radiation beam 30 is preferably diverted from the region at risk. Such modulation is sometimes referred to as intensity modulated radiation therapy (“IMRT”).
The modulation device 34 includes a collimation device 42 as illustrated in
In one embodiment, as illustrated in
The radiation therapy treatment system 10 can also include a detector 78 (e.g., a kilovoltage or a megavoltage detector), as illustrated in
The system 10 can also include a patient support device, shown as a couch 82 in
The computer 74, illustrated in
As shown in
The network 94 can be built according to any networking technology or topology or combinations of technologies and topologies and can include multiple sub-networks. Connections between the computers 74 and systems 10 shown in
Communication between the computers 74 and systems 10 illustrated in
The two-way arrows in the drawings generally represent two-way communication and information transfer between the network 94 and any one of the computers 74, the radiation therapy treatment systems 10, and other components shown in
The software program 90 can include a plurality of modules that communicate with one another to perform functions of the radiation therapy treatment process. For example, as shown in
Existing optimization modules and applications use a voxel-based beamlet-superposition (“VBS”) framework that requires pre-calculation and storage of a large amount of beamlet data, which results in large temporal and spatial complexity. However, as described in more detail below, the optimization module 132 uses a non-voxel-based broad-beam (“NVBB”) framework for performing IMRT optimization, which allows it to perform direct treatment parameter optimization (“DTPO”). In the NVBB framework, both the objective functional and the derivatives are evaluated based on a continuous viewpoint of a target volume. Therefore, the NVBB framework abandons “voxel” and “beamlet” representations used in the VBS framework. Thus, pre-calculation and storage of beamlets is no longer needed. As a consequence, the NVBB framework has linear complexities of (O(N3)) in both space and time. Furthermore, when implemented on a graphics processing unit (“GPU”), the low-memory, full computation, and data parallel nature of the NVBB framework is even more efficient.
The NVBB framework can be incorporated with a treatment planning system (“TPS”), such as the Tomotherapy® TPS. The Tomotherapy® TPS using the NVBB framework can run on a single workstation with one GPU card (the “NVBB-GPU implementation”). As described in more detail below with respect to Table 8, extensive verification/validation tests were performed in house and via third parties. Benchmarks on dose accuracy, plan quality, and throughput were compared with a TPS based on the VBS framework using a computer cluster with 14 nodes (the “VBS-cluster implementation”). For all tests, the dose accuracy of the two TPS implementations were comparable (i.e., within 1%). In addition, plan qualities were comparable with no clinically significant difference for most cases except that superior target uniformity was seen in the NVBB-GPU implementation for some cases (see, e.g.,
Therefore, the NVBB framework for IMRT optimization provides many advantages. For example, by taking a continuous viewpoint of a target volume, the flexibility of the objective functional formulation (described below) is increased, which provides derivative evaluations and enables direct optimization of various treatment parameters. This flexible model easily accounts for non-linear effects, such as tongue and grove (“T&G”), leakage, different leaf latencies, etc.
The NVBB framework also discards the beamlet model and does not require pre-calculation nor large memory storage. Without the voxel and beamlet representations, voxel size effect that contributes to dose calculation errors is also reduced. In addition, the NVBB framework implements dose and derivative calculation with linear spatial and temporal complexity. This reduces the problem size, lessens memory demand, and increases speed. This feature also enables dose calculation and IMRT optimization in a much finer grid, thus providing better spatial resolution than what is currently affordable. The full parallelization and low memory nature of the framework also enables the NVBB framework to be implemented in a GPU instead of a computer cluster. Thus, a single personal computer, even a laptop, can efficiently perform optimization. In addition, with the elimination of beamlet calculation, the addition of efficient dose and derivative calculation, and the use of a GPU, treatment planning time for the NVBB framework is reduced many folds compared with the conventional VBS framework running on a computer cluster even when the NVBB framework is run on a single workstation.
Furthermore, as described in more detail below, the NVBB framework adopts an “adaptive full dose correction” approach that combines the advantages of full dose (accuracy) and approximate dose (efficiency), which makes the “iteration dose” approach the full dose and the “optimization dose” approach the final dose with a high level of accuracy. Further still, the beam's eye view (“BEV”) coordinate system and the associated NVBB ray-tracing provide efficient solutions for applications related to divergent beams, such as dose calculation, CT image reconstruction, etc.
Before the NVBB framework is disclosed in more detail, it should be noted that the following notations will be used throughout this document:
In addition, for the reader's convenience, some abbreviations used in this document are listed below:
As noted above, treatment planning for IMRT, including fixed-beam IMRT, volumetric modulated arc therapy (“VMAT”), and Tomotherapy® IMRT, involves a large scale (LS) or very large scale (VLS) optimization problem. The optimization problem can generally be categorized into two groups: fluence map optimization (“FMO”) and direct aperture optimization (“DAO”) (which is sometimes referenced to direct machine parameter optimization (“DMPO”) when a gradient-based approach is used instead of a stimulated annealing method).
FMO is completed in two steps. The first step includes optimizing the fluence map to meet clinical objectives, and the second step includes making the fluence map deliverable through segmentation or leaf sequencing procedures. One advantage of FMO is that it includes simple mathematical formulation including derivatives, which makes it easy to implement. However, by decoupling FMO from treatment plan optimization, the MLC leaf-sequencing problem still must be solved, which causes a potential loss of treatment quality. In addition, the optimized fluence map is not always deliverable in a reasonable amount of time and a tradeoff has to be made between delivery time and conformity to the optimized fluence map.
DAO, on the contrary, makes an initial guess of deliverable apertures and optimizes the leaf position (aperture shape) directly. One advantage of DAO is that the optimized plan is generally always deliverable and usually results in fewer segments than FMO approaches. One disadvantage, however, is its complexity in mathematical formulation and solving. Therefore, heuristic approaches are generally applied to determine apertures, which results in longer computation time than FMO.
Both FMO and DAO approaches are based on the VBS framework described above. The VBS framework is based on two discrete representations: the voxel representation and beamlet (bixel, or pencil beam) representation. In this document, the terms “beamlet,” “(finite size) pencil beam,” “pixel,” and “bixel” are treated as synonyms and each describe the result of geometrically dividing a broad beam into a finite number of finite-sized smaller beams. The term “broad beam” is generally the antonym of “beamlet.” In a “broad beam” model, each projection of the radiation beam is regarded as a whole, without geometrical pixelization into finite-sized smaller beams.
In the VBS framework, the three-dimensional space is partitioned into (e.g., usually evenly spaced) volumetric pixels (“voxels”) and the two-dimensional fluence map is partitioned into rectangular or hexagonal “bixels.” The dose distribution of each bixel with unit intensity (a.k.a., beamlet) is pre-calculated and saved before optimization is performed. Therefore, in conventional IMRT optimization approaches based on the VBS framework, the voxel and beamlet representations are essential in formulating the objective functional (mainly for dose calculation) and derivative evaluations.
In particular, although the physical world is continuous, space is often discretized for computational purposes. For example, in conventional IMRT planning using the VBS framework, voxel and bixel discretizations are applied at the problem definition phase. The optimization problem is then defined as:
where {right arrow over (d)}=B{right arrow over (w)}. ℑ(.) is the objective functional defined over dose values {right arrow over (d)} of certain voxels of interest. {right arrow over (d)} is a vector of dose values of length N (number of voxels), and {right arrow over (w)} is a vector of beamlet weights of length M (number of beamlets). The pre-calculated doses of each beamlet with unit intensity are organized into a matrix B with each column representing one beamlet and each row corresponding to one voxel. In conventional FMO or DAO approaches, dose at each voxel is a linear superposition of beamlet doses by different weights. Equation (1) holds for both FMO and DAO approaches with differences between FMO and DAO being present only in the constraint C2 ({right arrow over (w)}). For FMO approaches, the non-negativity constraint {right arrow over (w)}≧0 is sufficient. However, for DAO approaches, the constraints must include consecutiveness, inter-digitization, etc., which makes the DAO approach generally more complex than the FMO approach from a computational point of view.
The linear and discrete models in the VBS framework for IMRT optimization have the advantages of simplifying dose calculation and providing derivative evaluation in matrix form. For example, let di denote the dose value at the ith voxel, Bi,j the dose value of the jth beamlet at the ith voxel, and wj the weight of the jth beamlet. This yields:
di=ΣBi,jwj (2)
Or in matrix form,
{right arrow over (d)}=B{right arrow over (w)} (3)
Similarly, the derivative of the dose vector with respect to the beamlet weight vector {right arrow over (w)} is ∂di/∂wj=Bi,j, or in matrix form:
The derivative of the objective function with respect to beamlet weights can also be written in matrix form:
Due to its mathematical simplicity in dose and derivative formulations, the conventional VBS framework is appealing and is used in virtually all TPSs. In general, iterative methods that involve both dose calculation (Equation (3)) and derivative calculation (Equation (5)) in each iteration are used to solve the optimization problem in Equation (1).
is calculated (at 158). Next, {right arrow over (w)} is updated using an update scheme (at 160). If the resulting {right arrow over (w)} converges or satisfies clinical goals (at 162), the optimization is complete. Otherwise, the method is repeated starting with the dose calculation {right arrow over (d)}=B{right arrow over (w)} (at 154).
As mentioned above, there are several drawbacks with using the VBS framework. First, the linear model {right arrow over (d)}=B{right arrow over (w)} is only an approximation. Therefore, the VBS framework ignores many effects that are highly non-linear and hence hard to incorporate into the model, such as transmission, T&G leakage, different leaf latencies, etc. Consequently, the optimized dose deviates from what is actually delivered. There are some approaches that modify the linear model {right arrow over (d)}=B{right arrow over (w)} to incorporate some of these effects, such as transmission. However, these modifications are very limited and lack flexibility.
The finite bixel resolution used in the VBS framework also limits the spatial resolution of the delivery system. Because of computation and storage limitations, the resolution of a beamlet is typically 5 to 10 millimeters. However, although the jaw and/or leaf of an MLC can move continuously to any position, the optimizer only instructs it to stay at discrete positions in accordance with the bixel resolution, which could significantly affect plan quality for some clinical cases when fine spatial resolution is in demand. The beamlet representation also lacks the flexibility for dynamic delivery. For example, because the beamlets in matrix B are pre-calculated, it is impossible to change the beam configuration (e.g. beam angle, jaw width, etc.) during optimization. This limitation also encumbers real-time optimization that accounts for patient motion and machine changes.
Furthermore, pre-calculation of thousands or even hundred of thousands of beamlets is very time consuming. Also, to make the iteration dose calculation {right arrow over (d)}=B{right arrow over (w)} accurate enough for plan evaluation, the pre-calculated beamlet matrix B needs to be sufficiently accurate, which requires a significant amount of computation time. For example, a plan may take tens of minutes to hours to pre-calculate beamlets even with a 14-node computer cluster. The resulting beamlet matrix B is also huge. For example, in some systems, the number of voxels and the number of beamlets involved are on the order of 10 M and 100 K, respectively. Therefore, the matrix B, if saved in full, can be as large as 1 T (=10 M×100 K) in the number of elements, which requires computer memory that is too large to be handled by even a state-of-the-art workstation. It also takes a long time just to visit all voxels. Therefore, a distributed memory system, such as a computer cluster, and/or a heavy lossy compression/approximation of the beamlet matrix must be used to make the problem manageable. Currently, some systems use a computer cluster of 7 to 14 blades in addition to lossy compression of the beamlet matrix. The cluster solution, however, involves high capital and service cost demands, and the lossy compression/approximation may affect the dose accuracy and plan quality.
Calculation and validation of dose associated with a narrow beam (e.g., as small as approximately 5 millimeters) is also tricky due to a lack of electron equilibrium. Furthermore, there are conflicts between the bixel and voxel resolutions. Ideally, the bixel size should be as small as possible to approach the spatial resolution achievable by the MLC. On the other hand, the voxel size should be consistent with the CT resolution. However, to accurately calculate a beamlet dose, the voxel size needs to be much smaller than the bixel size. Otherwise dose calculation by ray-tracing through a small field is subject to large computation errors (sampling artifacts) because the voxel resolution is insufficient to capture the sharp transition of the dose. In practice, due to limitations of computer power, the voxel resolution (e.g., 2 to 5 millimeters) is comparable to the bixel resolution, which makes sampling artifacts unavoidable in the beamlet matrix B.
Therefore, as described in the previous paragraphs, the VBS framework for IMRT optimization has many problems, which significantly affect the plan quality and planning throughput. Moreover, recent development of general purpose GPUs with data-parallel stream processors enables an innovative approach of handling massive computation and makes high-performance computation affordable for general users. Compared with a central-processing-unit (“CPU”) cluster, a single GPU card contains more processors (hundreds) but less memory, typically 1 gigabyte (“GB”) or less. The enhanced computational power of GPUs make them suitable for computation-intensive applications, such as deformable registration, cone beam CT reconstruction, dose calculation, IMRT optimization, etc. However, because of its relatively small memory, a GPU is only suitable for applications with small data. Therefore, because the VBS framework is considered a very large scale (VLS) problem, it is difficult to implement in a GPU unless the underlying representations are fundamentally changed.
As previously noted, the NVBB framework does change the underlying representations used in IMRT optimization. Therefore, the NVBB framework is a low-memory framework for IMRT treatment planning. The NVBB framework replaces the VBS framework, which suffers from limited modeling powers, long pre-calculation time, and large spatial complexity, as described above. Rather than starting from voxel and bixel discretizations as in Equation (1), the NVBB framework starts with functional formulation of DTPO in a continuous format, which abandons voxel and beamlet representations. Based on this modification, both objective and derivative evaluations are in the continuous broad-beam framework, which eliminates beamlet pre-calculation and storage. Furthermore, using NVBB ray tracing makes dose calculation flexible and efficient. Also, the low memory, full computation, and data parallelization nature of the NVBB framework allows it to be efficiently implemented on a GPU, unlike conventional VBS frameworks.
The NVBB framework generally includes the following key techniques, which will each be described in more detail below.
1. The BEV coordinate system and NVBB ray-tracing
2. DTPO fluence map modeling
3. Adaptive full dose correction
4. FCBB method for approximate dose calculation
5. Efficient CCCS for full and final dose calculation
6. On the fly derivative calculation via accumulative NVBB ray tracing
7. Full GPU implementation
BEV Coordinate System and NVBB Ray-Tracing
In radiotherapy, three-dimensional volumes, such as density and dose, are usually defined in Cartesian coordinates, and so are the contour points and plan evaluation. A patient volume coordinate system (“PV-CS”) can also be used, which is a Cartesian coordinate system (“Cartesian-CS”) referenced to the patient. In PV-CS, assuming the patient is in the supine position, the positive X is from right to left, the positive Y is from posterior to anterior, and the positive Z is from superior to inferior. PV-CS is convenient for plan evaluation because it is in the patient's viewpoint. However, for applications that model machine delivery, it is convenient to adopt a machine viewpoint, such as the BEV coordinate system (“BEV-CS”). BEV-CS is useful in computation for point-source ray tracing. This is apparent because the geometry of BEV coincides with the physics modeling of the radiation beam path. Therefore, embodiments of the present invention alternate between the PV-CS and the BEV-CS.
In radiotherapy, the point source S can revolve about the isocenter. For the sake of example only, assume the origin O of the PV-CS is at the isocenter. The source position in PV-CS can be written as S=−ses, where es is the unit vector from S to O and s is the source-to-axis distance (“SAD”). The BEV plane is defined as the plane that passes through O and is orthogonal to es. Two unit vectors eu and ev on the BEV plane are chosen so that {eu,ev,es} form the basis of a right hand coordinate system. The BEV coordinates consist of Cartesian components from the BEV plane and a radial component, which is the distance from the source S. More precisely, for any point P, let P0=ueu+vev denote the intersection of SP and the BEV plane. Then the BEV coordinate of P is (u,v,r), where r=∥P−S∥.
i. Transformation Between BEV and Cartesian Coordinates
BEV coordinates can be transformed into Cartesian coordinates and vice versa. For example, given the BEV coordinates (u,v,r) of P, then, in PV-CS, P can be written as:
P=ueu+vev+(r−r0)er, (6)
where
Note that r0 is the distance from the source to P0, which is on the BEV plane. Conversely, given any point P in PV-CS, its BEV coordinates (u,v,r) can be obtained by:
r=∥P−S∥, u=P0·eu and v=P0·ev (8)
where
Equations (6) and (7) give the conversion from BEV coordinates to Cartesian coordinates, and Equations (8) and (9) give the conversion from Cartesian coordinates to BEV coordinates. There are no trigonometric functions involved in the transformations between BEV and Cartesian coordinates. Therefore, such transformations can be efficiently implemented in computer programs.
ii. Differential Volume for Infinitesimal Divergent Beam
The differential volume for an infinitesimal divergent beam in the BEV-CS is used to connect the continuous space with the discrete implementation and for describing NVBB ray tracing.
Thus, the area of the spherical cap of the differential cone at radius r is:
And the differential volume can be written as:
Furthermore, defining:
Then, the following equation can be used:
Note that J(u,v,r)=1/a(r) is the Jacobian from BEV-CS to Cartesian-CS. For an algebraic derivation of the Jacobian J(u,v,r), see Appendix A. Also, note that a(r) and the Jacobian J(u,v,r) are used in NVBB ray tracing for dose calculation, derivative calculation, and inverse square correction in fluence transportation.
Direct Treatment Parameter Optimization
As noted above, the NVBB framework also uses DTPO fluence map modeling. Again, as previously described, instead of partitioning three-dimensional space into voxels and two-dimensional fluence maps into bixels, the NVBB framework adopts the continuous viewpoint and functional formulation. Using this representation, the DTPO performed by the NVBB framework can be generally described in continuous space as:
where ℑ is the objective functional, and D is a dose distribution defined on the patient volume in R3 and is a function of {right arrow over (p)}, which is a vector of treatment parameters to be optimized. C1(D) are patient dose constraints (e.g. minimal or maximal dose constraints, dose-volume histogram (“DVH”) constraints, etc) and C2({right arrow over (p)}) are parameter constraints (e.g. non-negative leaf open time constraints, leaf position and velocity constraints, etc). The objective functional ℑ is a dose-based functional, which may include biological objectives that can be expressed as functionals of dose distributions. Note that the term “treatment parameters” used here has a broader sense than what is usually meant by the term “machine parameters.” For example, treatment parameters refer to gantry speed, couch speed, projection angles, jaw angles, leaf open time, etc. Machine parameters, however, generally refers only to MLC apertures.
In general, the objective functional can be expressed as the integration of contribution from the whole space R3:
ℑ(D)=∫∫∫FD(x)dx (16)
where F is another functional of D and the integration is over the three-dimensional volume. For example, a commonly used objective functional is:
FD(x)=A(x)·(D(x)−P(x))2
where A(x) is a position-dependent weight and P(x) is the desired dose at x. P is usually the prescription dose on the tumor and zero elsewhere.
In general, like other optimization problems, an iterative scheme is used in IMRT optimization. In each iteration, both the objective functional ℑ(D) and its derivative ∂ℑ/∂pm are evaluated, including verification of the constraints C1(D) and C2({right arrow over (p)}). For simplicity, the constraint part will be omitted hereinafter.
There are numerical methods that solve the optimization problem in Equation (15). Some methods require only objective functional evaluation, such as the down hill simplex, direction set, and simulated annealing method. Other methods require additional calculation of derivatives (gradient) of the objective functional, such as the conjugate gradient method, the Newton and quasi-Newton method, and the Levenberg-Marquardt method. Algorithms using derivatives (gradient-based) are usually much more efficient than those with function evaluation only. In this document, gradient-based optimization schemes are focused on. However, in general, regardless of what search method is used, evaluations of the objective functional and its derivatives are still important parts of optimization. Therefore, if function evaluation and partial derivatives can be provided by a particular method, then optimization can be regarded as a black box algorithm. Many open-source or commercial software can also be used to solve Equation (15).
A typical workflow for the gradient-based optimization scheme for the DTPO problem of Equation (15) is illustrated in
is calculated (at 186). Next, {right arrow over (p)} is updated using an update scheme (at 188). If the resulting {right arrow over (p)} converges or satisfies clinical goals (at 190), the optimization is complete. Otherwise, the method is repeated starting with the dose calculation D=D{right arrow over (p)}(x) (at 182). Note that, in each iteration, dose is calculated (at 182) and partial derivatives are generated (at 186) to update the treatment parameters.
As illustrated in
Fluence Map Modeling
The fluence map is an important component in IMRT dose calculation and optimization, and, therefore, it needs to be accurately modeled. In general, does calculation is modeled as steps:
The first step calculates the two-dimensional fluence map f=f(u,v) based on the treatment parameters {right arrow over (p)}. The second step then uses the fluence map to calculate the three-dimensional dose. Note that only the does of one projection angle is considered. For multiple projections, the dose from each projection is added up.
The fluence map is usually defined on a reference plane that is perpendicular to the central axis of the radiation beam (i.e., the BEV plane). If the Monte Carlo dose calculation method is used, then the fluence map is replaced by the phase space defined on the entrance plane.
The first step, where accurate machine modeling, such as the penumbra, T&G effect and leakage are taken into account, is highly nonlinear. Fortunately, it involves only a two-dimensional fluence map f, and, thus, it has a computational demand that is lower than the second step that involves a three-dimensional volume. The second step, from the two-dimensional fluence map f to the three-dimensional dose distribution D, is linear but is more time-consuming. In particular, its linearity can be expressed as:
Daf
In principle, for DTPO, f=f{right arrow over (p)} and ∂f/∂{right arrow over (p)} need to be calculated for any treatment parameter to be optimized. For example, in dynamic jaw modeling, the treatment parameters to be optimized are the positions of left and right jaws. Similarly, in binary MLC modeling, the treatment parameters to be optimized are individual leaf open time. Other physical properties, such as cone effects, leakage, and T&G can also be included in the modeling as well. A description of two-dimensional MLC modeling, which consists of individual leaf pairs that can be modeled like dynamic jaws, is provided below.
i. Dynamic Jaw Modeling
In dynamic jaw modeling, the fluence map and its derivatives are described with respect to the jaw positions. Therefore, the question is, for a fixed projection, how does the jaw position affect the fluence map f. Because jaws move in one dimension and fluence can be approximately regarded as a one-dimensional function of jaw positions with both the jaw and fluence defined on the same axis, the problem is essentially a one-dimensional problem. For example, consider a fixed projection. Let l and r denote the left and right jaw positions, respectively. More explicitly, if jaw moves are in the “v” direction on the BEV plane, then the one-dimensional fluence map fjaw can be written as:
fjaw(v)=O(l,r)C(v)·(L(l,v)+R(r,v)−1) (19)
where C(v) is the cone shape (for the non-flattening-filtered field), O(l,r) is a jaw position dependant output factor, and L(l,v) and R(r,v) are the jaw profiles of the left and right jaws at position l and r, respectively. Assuming that the jaw profile L(l,v)(R(r,v)) can be approximated by the shift of Ll
fjaw(v)≈O(l,r)·C(v)·(Ll
Based on Equation (20), the derivatives can be written as:
ii. Binary MLC Modeling
IMRT that uses a binary MLC (such as axial and helical radiation therapy) is different from IMRT that uses a two-dimensional MLC. Specifically, such a IMRT should model intra-leaf leakage (i.e., leakage through a leaf itself), interleaf leakage (i.e., T&G, leakage through leaf edge), and penumbra of the open field. In addition, the treatment parameters are individual leaf open times {tj}.
Also, for this portion of the document, let the following symbols be defined as indicated:
tj: open time of leaf j, {tj} denotes a leaf pattern which is one row of the sinogram.
T: time of one projection
φj(u): fluence profile when leaf j is open and all others are closed
Φj-1,j(u): fluence profile when both leaf j−1 and j are open and all others are closed
φb: intra-leaf background leakage profile (all leaves closed, baseline)
Note that {tj} and T are treatment planning parameters while the other parameters are from machine commissioning data.
Furthermore, let φi denote the discrepancy between simultaneous and individual opening of leaf i and i−1 with baseline removed:
Then, the fluence profile of a given leaf pattern {tj} is:
where J is the total number of leaves. The first term is the background radiation when all leaves are closed. The second term is the increase of radiation caused by opening each leaf according to the leaf pattern {tj}. The third term is the correction for the discrepancy of simultaneous and individual opening of adjacent leaves caused by interleaf leakage and the T&G effect.
For the gradient-based optimization, the derivative of fleaf with respect to tj also needs to be calculated:
where H is the step function
By combining the jaw and leaf modeling, for any given projection, the two-dimensional fluence map for a radiation treatment delivery with dynamic jaw and leaf motion is provided:
f=fl,r,{t
And the derivatives with respect to the treatment parameters l,r,{tj} can be calculated using Equations (21), (22) and (24).
iii. Two-Dimensional MLC Modeling
For the case of two-dimensional MLC, if only one leaf pair is focused on, then the problem is effectively a one-dimensional problem and can be similarly modeled like dynamic jaw motion. Therefore, Equations (20) to (22) are sufficient to describe one-dimensional fluence map modeling. However, unlike the dynamic jaw modeling, two-dimensional MLC needs special attention on the leaf edge and T&G modeling. Detailed descriptions of two-dimensional MLC modeling can be found in: Bortfeld T., Kahler D., Waldron T., and Boyer A., X-ray Field Compensation with Multileaf Collimators, I
Dose Calculation
A dose engine is an important part of any TPS. The dose engine generally consists of two components: machine modeling and dose calculation. Machine modeling is a patient-independent commissioning procedure, and the dose calculation component is the component that is actively utilized during treatment planning. In fact, for IMRT, physicists and physicians rely heavily on dose calculation to define plans. There are typically two places where dose calculation is needed. First, during IMRT optimization, the dose is calculated whenever the plan is updated, which is used as the driving force for the next iteration to reach a desirable plan. After a plan is optimized, the dose is re-calculated with all machine constraints modeled for final plan evaluation and for comparison with the measurement. The dose calculated during plan optimization is called the “iteration dose,” the dose from the last optimization iteration is called the “optimization dose,” and the dose for final evaluation is called the “final dose.” Ideally, the optimization dose should match the final dose and the final dose should match the measurement.
IMRT optimization involves hundreds of iterations to reach a plan. A new three-dimensional dose volume needs to be calculated whenever the plan is updated (e.g., usually during each iteration). Therefore, on one hand, dose calculation must be fast enough to finish hundreds of iterations in a reasonable amount of time. However, on the other hand, the calculated dose must be accurate enough to make plan evaluation meaningful. Accordingly, there are tradeoffs between accuracy and computation time among various dose calculation algorithms. For example, the Monte Carlo (“MC”) and full convolution/superposition (“C/S”) methods are regarded as accurate, but they are very time-consuming. Similarly, some approximate dose engines, such as the finite size pencil beam (“FSPB”), are much faster than MC and C/S but have limited accuracy, especially when there are significant heterogeneities. Accurate but slow dose calculation is often called “full dose calculation,” and less accurate but faster dose calculation is often called “approximate dose calculation.”
Full dose calculation may take minutes to hours of CPU time for a complex IMRT plan. Therefore, full dose calculation is often not affordable for every iteration and an alternative scheme may be employed to reduce calculation time without sacrificing too much of accuracy.
A tradeoff between speed and accuracy is undertaken to some extent in the VBS framework via pre-calculation of the beamlet matrix B, an off-line process that utilizes a slow full dose engine. During the optimization iteration, dose is calculated as a simple matrix product D=B{right arrow over (w)}. However, there are drawbacks in the VBs framework as discussed in the previous section. Therefore, embodiments of the present invention use an “adaptive full dose correction” scheme that combines advantages of the approximate dose engine (e.g., speed) and the full dose engine (e.g., accuracy).
Adaptive Full Dose Correction
To take advantage of the accuracy of full dose calculation (e.g. MC or CCCS methods) and the efficiency of approximate dose calculation (e.g. FSPB methods), hybrid methods are proposed by various investigators. The NVBB framework adopts the “additive correction matrix” method proposed by Siebers et al. (see, e.g., Siebers J. V., Lauterbach M., Tong S., Wu Q. and Mohan R., Reducing Dose Calculation Time for Accurate Iterative IMRT Planning, M
For example, let denote the full dose, {tilde over (D)} the approximate dose, and ΔDf
ΔDf−{tilde over (D)}f
For the fluence map f that is close to f0, a correction-based dose Df can then be defined:
Df={tilde over (D)}f+ΔDf
The idea behind the updated approximation is illustrated in much better than the approximate dose {tilde over (D)}f does. Appendix B also provides a proof that the dose Df approximates the full dose
with second order accuracy provided that {tilde over (D)}f approximates
with first order accuracy. More precisely, if |f−f0|≦ε1f and |
(x)−{tilde over (D)}f(x)|≦ε2
(x), then |
(x)−Df(x)|≦ε1ε2
(x). The second order accuracy of iteration dose Df greatly reduces the accuracy demand on the approximate dose {tilde over (D)}f and the frequency of full dose calculation. For example, if {tilde over (D)}f approximates the full dose
within 10% and the difference between f and f0 is also 10%, then the difference between the iteration dose Df and full dose
is within 1% (=10%×10%).
To account for the scale difference that may exist between f and f0 during optimization iteration, a slight variation is used to scale the correction term ΔDf
Df={tilde over (D)}f+λ1·ΔDf
by the scale factor λ1=∥f∥/∥f0∥.
Moreover, to account for the systematic scaling difference between the full and approximate dose engines, the approximate dose {tilde over (D)} can be replaced by λ2{tilde over (D)}, where λ2=∥∥/∥{tilde over (D)}f
Note that the approximate dose engine {tilde over (D)}f is invoked whenever f changes. Therefore, the approximate dose is calculated once every iteration. On the other hand, the full dose engine is only called when the fluence f deviates from f0 by a preset threshold ∥f−f0∥>ε∥f0∥. Then f replaces f0, and the process continues. As optimization converges, the full dose will be calculated less and less frequently.
Also note that the derivative of iteration dose Df with respect to the fluence map is determined by the approximate dose only and is independent of the full dose. That is:
Such a feature makes the derivative calculation relatively easy, provided that the approximate dose Df has a simple formulation, which will be demonstrated below.
Although the MC method is regarded as being accurate in principle, its long computation time limits its use in routine clinical applications. C/S dose calculation is the standard dose engine in most TPSs and its accuracy for photon beam has been validated over the last decade. Some embodiments of the NVBB framework use CCCS as the as the full dose engine and the FCBB algorithm as the approximate dose engine. The full and approximate dose engines have the same first step {right arrow over (p)}→f but differ in the second step f→D, which is the more time-consuming part. For example, in CCCS dose calculation, the second step is further divided into total energy release per unit mass (“TERMA”) calculation and Convolution/Superposition. In FCBB dose calculation, this step is done by a simple distributive NVBB ray tracing, as will be described below.
i. Full Dose Calculation
C/S dose calculation consists of two independent parts: TERMA calculation and C/S energy deposition. TERMA calculation includes fluence phase space modeling, primary photon ray-tracing and modeling of the interaction with material, and TERMA sampling. C/S energy deposition is a means of spreading the released energy to the media by the pre-calculated MC kernels.
a. TERMA Calculation
With respect to TERMA calculation, recall the differential divergent beam shown in
Ψ0=f(u,v)dudv (35)
When the infinitesimal beam travels distance r through the media with energy dependent linear attenuation coefficient μ(E,t), the beam is attenuated and the spectrum becomes:
φ(E)=φ0(E)exp(−∫0rμ(E,t)dt) (36)
Let ρe(t) be the electron density and define
as the (electron) mass attenuation coefficient. Note that for the range of energy in IMRT, the Compton effect dominates and μ(E,t)∝ρe(t). That is, the (electron) mass attenuation coefficient has little material dependence U(E,t)≈U(E). Therefore, Equation (36) becomes:
where {circumflex over (r)} is the radiological distance defined as the integration of election density along the path of radiation beam:
{circumflex over (r)}(r)=∫0rρe(t)dt (38)
The total energy of that beam becomes:
Ψ(r)=Ψ0∫0E
With the fact that d{circumflex over (r)}/dr=ρe, this makes the differential of Ψ with respect to r:
where
A({circumflex over (r)})=∫0E
Note that A({circumflex over (r)}) defines a material-independent lookup table for energy fluence attenuation with beam hardening correction. It can be calculated using the spectrum data {φ0(E)} and the (electron) mass attenuation coefficients of water or fitted by dose commissioning procedures.
Recall that in the divergent beam geometry of
Therefore, in BEV-CS, Equation (42) becomes:
With the approximation that electron density equals mass density ρe≈ρ, Equation (43) becomes:
T*(u,v,r)=f(u,v)A({circumflex over (r)})a(r) (44)
Accordingly, Equation (44) shows that the TERMA value at BEV-CS point (u,v,r) can be decomposed into three factors: fluence f(u,v), divergence correction term a(r), and beam hardening corrected attenuation term A({circumflex over (r)}). Such decomposition makes TERMA easily calculated via ray tracing, as will be discussed below.
b. C/S Energy Deposition
The concept of cumulative-cumulative kernel (“CCK”) can be adopted in the NVBB framework because of its implicit sampling accuracy. Therefore, instead of using tabulated kernels, the NVBB framework can use analytical kernels with two exponential components (exponential kernels). A separate optimization process can then be used to find the parameters of exponential kernels by fitting the tabulated kernels. A recursive formula can then be used for the CCK convolution. This reduces the complexity of C/S from O(LN4) to O(LN3), where L is the number of collapsed-cone directions and N is the number of spatial samples in each dimension. With exponential CCK kernels and high performance GPU implementation, the CCCS in NVBB framework is hundreds to thousands faster than its single thread CPU counterpart using tabulated CCK kernels.
ii. Approximate Dose Calculation
As discussed earlier, model-based dose calculation can be decomposed into two independent steps:
The first step is machine-dependent and requires accurate machine modeling, such as T&G, leakage, latency, etc. The first step is highly non-linear and sensitive to any modeling and calculation errors. In fact, errors in the first step propagate to the second step. Therefore, special attention should be paid to the first step to make the calculated dose match measurement regardless of how machine parameters change.
In addition, the fluence map also needs to be calculated using a grid fine enough to reduce sampling errors. Fortunately, the first step only involves one-dimensional or two-dimensional data, and, therefore, it has lower computation demands than the second step, which involves three-dimensional data. Because of its high importance and marginal computation demand, the NVBB framework can use accurate modeling and fine grids in the first step calculation. However, the second step, which models energy transportation in the patient body, is patient dependent. Therefore, the second step involves three-dimensional data and its computation demand is high such that special attention should be paid throughput. Full convolution/superposition is an accurate algorithm but is too time consuming to be used in every iteration. Therefore, the NVBB framework uses an approximate dose engine based on the FCBB algorithm that uses the same “fluence map calculation” as in the full C/S dose engine, but uses approximation in the second step.
In particular, given a fluence map, there are three main components that determine dose to the patient: beam divergence, fluence attenuation, and body scatter. Recall that full C/S dose calculation consists of two steps: TERMA calculation and C/S energy deposition. TERMA calculation models beam divergence and fluence attenuation. C/S energy deposition mainly models body scatter. Beam divergence is patient-independent, whereas both fluence attenuation and body scatter are patient (i.e., density) dependent. For the photon beam commonly used in radiotherapy, the heterogeneity correction is generally more important in the primary beam (fluence attenuation and forward/backward scatter) modeling than that in the secondary beam (lateral scatter) modeling. Based on the above analysis, the FCBB algorithm used in the NVBB framework decouples the three components (divergence, primary beam attenuation and scatter, and lateral scatter), applies heterogeneity correction only along the primary beam (analogous to fluence attenuation in TERMA calculation), and ignores the heterogeneity correction for lateral scatter contribution.
For example, the FCBB dose engine included in the NVBB framework is based on the fluence map without resorting to finite size pencil beams (“FSPB”). To describe FCBB, it is more expedient to use the BEV-CS.
As stated above, dose D(x) is linear with respect to the fluence map f. More precisely, the dose and the fluence map are related by the following integral:
D(x)=∫∫f(u′)B(x,u′)du′ (45)
where B(x,u′) is the dose distribution of the unit fluence irradiating on a infinitesimal area at u′. If (u,r) denotes the BEV coordinates of x, then the dose distribution B(x,u′) can be decomposed approximately as a product of three dominant factors: the central axis contribution c({circumflex over (r)}(u′, r)), divergence correction a(r), and lateral spread function k(u−u′) as follows:
B(x,u′)≈c({circumflex over (r)}(u′,r))·a(r)·k(u−u′) (46)
where {circumflex over (r)}(u′,r) is the radiological distance from the source to (u′,r):
{circumflex over (r)}(u′,r)=∫0rρe(u′,r′)dr′ (47)
and ρe is the electron density function defined using the BEV coordinates. The central axis contribution c({circumflex over (r)}(u′,r)) can be approximated by c({circumflex over (r)}(u,r)) for u close to u′, and the lateral correction k(u−u′) has fast fall-off. The divergence correction a(r)=r03/(r2s) is the Jacobian that accounts for the change of volume from the Cartesian-CS to the BEV-CS.
Substituting the approximation (46) into Equation (45), dose can be approximated as:
Here the tilda (“{tilde over ( )}”) stands for approximate dose and the superscript * stands for the BEV-CS.
Defining g to be the convolution of f and k yields:
g(u)=∫∫f(u′)k(u−u′)du′ (49)
or simply g=fk, which makes the Equation (48):
{tilde over (D)}*(u,r)=g(u)·c({circumflex over (r)}(u,r))·a(r) (50)
Note that Equation (50) has the same format as Equation (44) for TERMA calculation. Therefore, the same TERMA calculation routine can also be used to calculate FCBB dose.
NVBB Derivative Calculation
Now that all of the tools used to derive formulas for derivative calculation have been described, given the objective functional ℑ(D)=∫∫∫FD(x)dx, the partial derivative of the objective with respect to the machine parameter pm can be calculated via the chain rule:
where GD=∂FD/∂D, which is relatively easy to calculate from the definition of the objective functional. However, the term ∂D/∂pm could be very complicated if explicitly calculated via the chain rule: D=D{right arrow over (p)}, {right arrow over (p)}=pf
where fu=f(u,v).
If brute force is used, the calculation of the partial derivatives ∂D/∂fu,v(x) will be extremely time consuming since it involves five-dimensional data (three-dimensions in x and two-dimensions in u). However, instead of explicitly calculating
can be directly calculated. In particular, with the NVBB ray tracing in the BEV-CS,
can be calculated in linear time (O(N3)) per projection.
In particular, recall the iteration dose is calculated via adaptive full dose correction based on the following:
D{right arrow over (p)}(x)={tilde over (D)}{right arrow over (p)}(x)+((x)−{tilde over (D)}{right arrow over (p)}
where {tilde over (D)} stands for approximate dose and stands for full dose. Accordingly, this yields:
Using the dose calculation formula in Equation (49) (i.e., {tilde over (D)}*(u,r)=c({circumflex over (r)}(u,r))·a(r)·g(u)), the derivatives with respect to the parameters pm can be derived as:
Letting:
where ∂f/∂pm is the derivative of fluence map with respect to the machine parameters (see equation definition above under “Fluence Map Modeling” section), yields:
Substituting Equation (57) in Equation (51) and switching to BEV coordinates, provides partial derivatives of the objective function with respect to the treatment parameters {right arrow over (p)}:
Furthermore, defining:
eD(u)=∫G*D(u,r)·c({circumflex over (r)}(u,r))dr (59)
allows Equation (58) to be further simplified as:
Note that the complex derivative computation ∂ℑ/∂pm is reduced to simple line integral (Equation (59)) and two-dimensional integral (Equation (60)). The line integral can be calculated by accumulative ray tracing and the two-dimensional integral can be calculated via simple summation, as will be described below.
Implementation
i. Volume Discretization
In the previous sections about the NVBB framework, all functions, including the objective functional, fluence map, density, TERMA, dose, approximate dose, etc, are described in the continuous space. For the purpose of implementation, however, both inputs and outputs need to have finite, discrete representations.
There are two viewpoints for representing continuous images discretely: the voxel representation and grid representation. As described above, the voxel representation is commonly used in radiotherapy to discretize continuous space, and is used in the conventional VBS framework because of its analogy to pixels displayed in the screen. In voxel representation, a space is partitioned into cuboids of finite volume called voxels, and functions are constant within each voxel. That is, any point inside a voxel takes the same value:
f(x,y,z)=I(i,j,k), where i=[x], j=[y], k=[z] (61)
where f(.) is a physical property, I is a discrete image, and [.] is the round operation.
In grid representation, as illustrated in
It can be seen that the voxel representation is a special case of the grid representation where the grid point is the voxel center and the weights are the coefficients for nearest neighbor interpolation. In this document, grid representation is adopted for its flexibility in modeling. Specifically, tri-linear interpolation is used to define ai,j,k in Equation (62):
f(x,y,z)=Σi=└x┘└x┘+1Σj=└y┘└y┘+1Σk=└z┘└z┘+1ai,j,kIi,j,k
where ai,j,k=(1−x+i)(1−y+j)(1−z+k) (63)
Note that └.┘ stands for the “floor” operation. Also note that the interpolation given in Equation (63) is not limited to Cartesian grids. It can be applied to the BEV-CS as well. Linear interpolation can also used for conversion between Cartesian coordinates and BEV coordinates.
i. Ray Tracing
Ray tracing is widely used in physics to analyze optical or similar systems. The ray refers to a particle path. Ray tracing refers to a method that calculates and records the activity along a path followed by an advancing particle through regions of various characteristics that cause various particle reactions. In general, the rays can come from multiple sources and may change directions due to refraction, reflection, etc. As used in this document, the rays come from a single point source without direction changes. TERMA calculation is an example of point source ray tracing.
In TERMA calculation, the rays start from the source, go through a two-dimensional fluence map, and end with a three-dimensional TERMA distribution. Another type of ray tracing operation goes through a three-dimensional distribution and ends with a two-dimensional map. For example, the forward projection calculation (radon transform) in algebraic cone beam CT image reconstruction starts with a three-dimensional volume of attenuation coefficients and ends with two-dimensional projection data (detector signal). Generally, ray tracing can be divided into two groups according to its operation type: distributive ray-tracing and accumulative ray-tracing. Distributive ray-tracing, such as TERMA calculation, goes from a lower dimension to higher dimension, e.g. from two-dimensional (input) to three-dimensional (output). On the other hand, accumulative ray-tracing, such as projection calculation, goes from a higher dimension to lower dimension, e.g. from three-dimensional (input) to two-dimensional (output). Distributive ray tracing, as the name suggests, distributes physical properties, such as energy, along the ray into the medium, while accumulative ray tracing accumulates physical properties of the medium along the ray to the reference plane.
ii. Voxel-Based Ray Tracing
Distributive-ray-tracing can be used in TERMA calculation. In voxel-based TERMA calculation, the radiation energy is transported from a point source to patient volume that is cut into voxels of finite size. Similar to that in CT image reconstruction, there are generally two categories of ray tracing for voxel-based geometry: ray-driven tracing and voxel-driven tracing.
In ray-driven tracing, every voxel that is visited (intersected) by the tracing ray gets some share. For example, ray 1 illustrated in
To overcome the normalization artifacts and the write-write conflict issues of ray-driven tracing, the voxel-driven method (see
iii. NVBB Ray Tracing
Unlike voxel-based ray tracing, where the space discretized as stacked voxels and ray tracing is defined and operated in Cartesian coordinates, NVBB ray tracing regards the three-dimensional space as continuous and ray tracing is operated in BEV coordinates. In voxel-based ray tracing, the tracing ray is an infinitesimally narrow line, while its physical counterpart is divergent in nature. Therefore, beam divergence must be additionally accounted for during voxel-based ray tracing. Furthermore, because each ray comes from only one sample of the fluence map, special care is needed to maintain energy conservation of the fluence map in the sampling operation, especially when the fluence map is non-evenly sampled. On the other hand, in NVBB ray tracing, the tracing ray is represented by a narrow pyramid with the source being the vertex, which naturally depicts a physical divergent beam of finite size, as illustrated in
For NVBB ray tracing, only u and r need to be sampled. The sampling of u defines the cross sections of the ray pyramids by the reference plane and can be evenly or unevenly spaced. For a continuous two-dimensional function f(u,v) (e.g. fluence map), the sample
For ease of implementation, a regular Cartesian grid is recommended for sampling u. If uneven sampling is preferred, the sampling steps should mainly be determined by the gradient of the fluence map. Sampling should be fine in the high gradient region and coarse in the flat region. Furthermore, u sampling should also consider the gradient of the three-dimensional volume to better account for heterogeneous regions. However, no matter what kind of sampling methods are used, the nature of NVBB ray tracing eliminates systematic errors from normalization and point missing artifacts. The r sampling is along the central axis of the ray pyramid. Equal-distant sampling of r, comparable to the original CT resolution, is recommended to avoid missing heterogeneity.
In this document, distributive-ray-tracing is used for TERMA calculation and FCBB dose calculation, and accumulative-ray-tracing is used to calculate partial derivatives of the objective functional in the NVBB framework.
Recall that the TERMA calculation formula T*(u,v,r)=f(u,v)A({circumflex over (r)}(u,v,r))a(r) and the FCBB dose formula {tilde over (D)}*(u,v,r)=g(u,v)c({circumflex over (r)}(u,v,r))a(r) can be generally implemented as distributive-ray-tracing as described below in Table 1.
The calculation of derivative eD(u)=∫G*D(u,r)·c({circumflex over (r)}(u,r))dr can also be implemented as accumulative-ray-tracing as described below in Table 2.
Note that in general, the inputs of three-dimensional distributions are defined on the Cartesian grid. Therefore, to evaluate ρ*(u,r) (and G*(u,r) in accumulative operation), a BEV to Cartesian coordinate conversion is needed using tri-linear interpolation. That is:
ρ*(u,r)=ρ(P) (65)
where P=ueu+vev+(r−r0)er as defined in Equation (6) and described below in Table 3.
Note that in the accumulative operation, the results of accumulation g(u) are defined on the reference plane (i.e. the fluence map plane) and samples are in Cartesian grid. Therefore, no further coordinate conversion is needed for g. In the distributive operation, the results of distribution F*(u,r) are in the BEV-CS. However, because many evaluations, e.g. dose volume histogram (DVH) calculation, are done in the three-dimensional Cartesian-CS, a conversion involving tri-linear interpolation from the BEV-CS to the Cartesian-CS as given in Equation (6) may be used.
Although evenly spaced sampling is proposed for both u and r in NVBB ray tracing, in principle, sampling can be arbitrarily spaced, provided that the samples are fine enough for high gradient regions of the input data. There are no missing voxel artifacts nor normalization requirements, as every spatial point is covered by one and only one ray pyramid, and energy conversion is always maintained.
iv. Implementation of the NVBB Framework
Now that the building blocks for the NVBB framework have been described, the methods for the NVBB framework are summarized in this section. In particular, the NVBB framework for IMRT optimization is illustrated in
The approximate dose {tilde over (D)}f used in the above code is the FCBB dose described above. The implementation of approximate dose calculation (in pseudo code) is also described below in Table 5.
k
The full dose is the CCCS dose calculation method described above. The same distributive-ray-tracing as FCBB dose calculation can be used for TERMA calculation. That is, TERMA is first calculated in the BEV-CS via NVBB ray tracing and then converted to the Cartesian-CS with tri-linear interpolation. The implementation of the full dose calculation (in pseudo code) is described below in Table 6.
: three-dimensional accurate dose distribution in Cartesian grid
= CCCS_Dose({right arrow over (p)}, ρ,A, K)
=CCCS(T, ρ, K)
Implementation of CCCS energy deposition (the last function call in Table 6) using cumulative-cumulative tabulated and exponential kernels and parallelization using CPUs and GPUs were described in Lu W., Olivera G. H., Chen M., Reckwerdt P. J., and Mackie T. R., Accurate Convolution/Superposition for Multi-Resolution Dose Calculation Using Cumulative Tabulated Kernels, P
As for the partial derivative calculation, the calculation of eD(u)=∫G*D(u,r)·c({circumflex over (r)}(u,r))dr is done by the “AccumulativeRayTracing” function as described in Table 2, and the calculation of ∂ℑ/∂pm=∫∫hm(u)eD(u)du is done by the following two-dimensional summation:
The pseudo code for calculating partial derivates is also described below in Table 7.
Complexity Analysis
The problem size of the conventional VBS framework is determined by the product of the number of voxels and the number of beamlets. Let the number of samples along any direction be N and assume the bixel size is comparable to the voxel size. Then the number of voxels is M=O(N3) and the number of beamlets is K=O(N2) for every beam angle. Therefore, the size of the B matrix is MK=O(N5). Therefore, the VBS framework has a spatial complexity of approximately O(N5).
In the VBS framework, two time-consuming operations in every iteration are the dose calculation {right arrow over (d)}=B{right arrow over (w)} and the derivative calculation
where the vector {right arrow over (w)} has a length of K,
has a length of M, and both matrix multiplications have complexity of O(MK)=O(N5). Therefore, in the VBS framework, both spatial and temporal complexities of the system are O(N5). Various compression techniques can be used to reduce the problem size to O(N5/R), where R is the compression ratio. However, this O(N5) complexity limits the usage of the VBS framework in applications that require fine resolution (i.e., large N, such as N=256 or 512).
In the NVBB framework, since both dose and derivatives are calculated on the fly through distributive or accumulative ray tracing, no B matrix is required. Therefore, the spatial complexity is O(N3) to store the three-dimensional volume such as density, TERMA, dose, etc. In every iteration of NVBB optimization, there are two NVBB ray-tracing operations that are time consuming. The first operation is calculating approximate dose in the BEV coordinate system via distributive ray tracing (i.e., D*(u,r)=c({circumflex over (r)}(u,r))·a(r)·g(u)), and the second operation is calculating derivatives via accumulative ray tracing (i.e., eD(u)=∫G*D(u,r)·c({circumflex over (r)}(u,r))dr).
Suppose that the fluence map sampling and ray sampling have the same resolution as the three-dimensional volume. Then the number of rays is O(N2) and the number of samples per ray is O(N), and, therefore, the complexity of both ray-tracing operations is O(N)*O(N2)=O(N3).
There are several other three-dimensional operations, including calculation of GD(x), converting the approximate dose in BEV-CS to Cartesian-CS {tilde over (D)}(x)={tilde over (D)}*(u,r), and full dose correction D(x)={tilde over (D)}(x)+ΔD0(x). All of these operations have a complexity proportional to the number of dose samples (i.e., O(N3)).
In the NVBB framework, full CCCS calculations are performed every few iterations when the difference between f and f0 is above a certain threshold. Typically, the CCCS dose calculation happens more frequently at the beginning and less frequently as the solution converges. The TERMA part of CCCS uses distributive-ray-tracing, and thus it also has complexity of O(N3). The convolution/superposition part typically takes 5-10 longer than TERMA calculation. That is, a full dose iteration is about an order of magnitude more expensive than other iterations. However, the frequency of full dose iteration is an order of magnitude less than that of approximate dose and derivative calculation. Therefore, in general, including full dose correction at most doubles the total iteration time as compared to using approximation dose for iteration.
Other operations in the NVBB framework involve one-dimensional or two-dimensional data with complexity of O(N)or O(N2), which can be omitted compared with the O(N3) complexity.
In summary, both the temporal complexity and spatial complexity for the NVBB framework in IMRT optimization are linear with respect to dose samples (O(N3) for N3 spatial samples), and linear complexity makes it easier to handle large systems (e.g., N≧256).
Note that the NVBB framework as described in Tables 1 to 7 or portions thereof can be implemented in parallel. For example, the parallelized parts of the algorithm are indicated as “do in parallel” in the pseudo code. The parallelized parts can be efficiently implemented in GPUs for various reasons. First, the linear spatial complexity O(N3) allows the problem to fit in the small memory of GPU, even for a large case (N>=256). For example, for a large dose grid of 256×256×256, the amount of memory needed for every three-dimensional volume is 64 megabytes (“MB”). Suppose up to ten three-dimensional volumes (density, TERMA, full dose, derivatives, . . . ) need to be internally stored. Then the memory requirement is only 640 MB, which can still fit in a modern GPU card with global memory around 1 GB. In addition, the fully parallelizable nature of NVBB ray tracing makes it easy to maintain instruction and data alignment. Also, there is no data write-write-conflict in any part of the parallelized code, and tri-linear interpolations are inherently implemented via texture structures in modern GPUs with little cost.
Results
An example NVBB framework was implemented in the C++ programming language on both CPU and GPU architectures. The CPU implementation used a message passing interface (“MPI”) for parallelization. The GPU implementation used the NVIDIA CUDA™ architecture for intra-GPU parallelization and used MPI for inter-GPU communication. Both the CPU and GPU implementations were incorporated into the TomoTherapy® TPS. The CPU version ran on a computer cluster and the GPU version ran on a single workstation with a NVIDIA GeForce GTX 295 graphic card.
Verification and validation tests were performed both internally and externally. Benchmarks on dose accuracy, planning quality, and throughput were also collected and compared with the current cluster-based TomoTherapy® TPS that uses a VBS framework. Table 8 summarizes comparisons between the NVBB framework on a workstation with a 2.66 GHz CPU and one NVIDIA GeForce GTX 295 card (the “NVBB-GPU” implementation) and the VBS framework on a TomoTherapy® 14-node cluster (14×4=56 2.66 GHz CPUs) (the “VBS-cluster” implementation). All times indicated in Table 8 are in seconds.
As illustrated above, Table 8 summarizes performance comparisons between the VBS-cluster and the NVBB-GPU for various clinical cases. The reported times are the preprocessing time, the time for performing 100 iterations, and the time for calculating the full dose and the final dose. The total time is the summation of the previous four times. With the current VBS-cluster, a typical TomoTherapy® planning took 10 to 100 minutes to pre-calculate beamlet doses. The pre-processing times were reduced to about 10 seconds with the NVBB-GPU. Excluding the preprocessing time, the NVBB-GPU took only about 30% to 90% of the iteration time of the VBS-cluster for the same number of iterations. As for the full dose and the final dose calculation, the NVBB-GPU has a speedup of about 8 to 16 times over the VBS-cluster.
Both the VBS-cluster and the NVBB-GPU used CCCS as the full and final dose engine. The number of collapsed-cone directions are 24 (zenith)×16 (azimuth)=384. The VBS-cluster used tabulated CCK, while the NVBB-GPU uses exponential CCK. For the same delivery plans, the differences of final dose between the VBS-cluster and the NVBB-GPU are within 1% (e.g., 1 millimeter for all test cases), while the doses of the VBS-cluster were well commissioned to match the measurements.
For most cases, after the same number of iterations, the plan quality under these two TPS implementations had no clinically significant differences, except for some cases where the NVBB-GPU showed superior plan quality over the VBS-cluster.
IMRT optimizes a radiation dose distribution to the patient body in a continuous three-dimensional space. However, space needs to be discretized for the purpose of computation and quality assessment. Conventional approaches apply discretization at the problem definition phase. That is, the space is discretized into voxels and radiation beams are discretized into beamlets. A simple linear model {right arrow over (d)}=B{right arrow over (w)} is then used throughout the optimization for both objective and derivative evaluations. Voxel and beamlet discretization and the linear model simplify the mathematical formulation for the optimization problem, but do so at the cost of limited modeling power, limited spatial resolution, huge pre-computation demand, and huge memory requirements. In the NVBB framework, IMRT optimization is formulated as a DTPO problem and both dose calculation and derivative evaluation are derived in the continuous space. Flexible discretization is only applied in the final implementation phase. Ray discretization in BEV is a natural representation to its physical counterpart with inherent energy conservation and beam divergence and without any missing points. The NVBB ray tracing method performs both dose calculation and derivative calculation with linear spatial and temporal complexity and with no large pre-computation. “Adaptive full dose correction” combines the advantages of CCCS dose accuracy and FCBB dose efficiency, making the iteration dose approach the full dose and the optimization dose approach the final dose with high fidelity.
Although the examples presented in this document used TomoTherapy® systems and applications to illustrate the NVBB framework, the framework itself is directly applicable to other IMRT modalities, including conventional fixed-beam IMRT and volumetric modulated arc therapy (“VMAT”). In fact, conventional IMRT and VMAT, which each have a larger field size than TomoTherapy®, could take even more advantage of the NVBB framework than TomoTherapy®, where the field size is limited by the jaw width. Therefore, more planning throughput and plan quality gains of conventional IMRT and VMAT would be expected using the NVBB framework instead of the VBS framework.
For simplicity, a single source model was also used for the description of the NVBB framework. While the single source model is sufficient for the flattening-filter-free TomoTherapy® system, it could be less accurate for the conventional linac due to significant head scatters. Therefore, a dual source model could be used in full and final dose calculation, while keeping the single source model only in approximate dose and derivative calculation. Such a scheme would improve the accuracy with a marginal increase in complexity and a marginal change in workflow.
Therefore, a NVBB framework for IMRT optimization has been disclosed. The continuous viewpoint and DTPO nature of the NVBB framework eliminate the need for beamlets, as well as the artifacts associated with voxel and beamlet partitions. The low linear temporal and spatial complexity of the framework enable efficient handling of very large scale IMRT optimization problems by a single workstation without a computer cluster, which saves significantly on hardware and service costs. The GPU implementation of the NVBB framework results in better plan qualities and many-fold improved throughputs, compared with the conventional VBS framework on a computer cluster. In addition, the framework itself is directly applicable to most IMRT modalities. The disclosed NVBB ray tracing can also be used in other applications, such as cone beam CT image reconstruction.
Thus, embodiments of the invention provide, among other things, a non-voxel, broad-beam based algorithm for performing ray tracing and related applications within a radiation treatment environment. Various features and advantages of the invention are set forth in the following claims.
i. Jacobian of the Transformation from the BEV-CS to the Cartesian CS
As one example, the following can be assumed:
eu=ex, ev=ey and es=ez (67)
because {eu,ev,es} and {ex,ey,ez} are congruent by a rotation. The assumption of Equation (67) yields:
where r0=√{square root over (u2+v2+s2)}. The partial derivatives of x can be calculated as:
Similarly, the partial derivatives of y and z are:
Hence, the Jacobian is:
ii. Proof of Accuracy of the Correction-Based Dose Calculation Scheme
Let denote the accurate dose and {tilde over (D)}f denote the approximate dose. Both
and {tilde over (D)}f are linear with respect to the fluence map f (f≧0), and, therefore, can be written as:
(x)=(
)(x)=∫f(u)
(x,u)du (75)
and
{tilde over (D)}f(x)=({tilde over (B)}f)(x)=∫f(u){tilde over (b)}(x,u)du (76)
Suppose that {tilde over (D)}f approximates with first order accuracy. Therefore, there is a small number ε2 such that for any fluence map f and x the following inequality holds:
|(x)−{tilde over (D)}f(x)|=|((
−{tilde over (B)})f)(x)|≦ε2
(x) (77)
For given fluence maps f0 and f satisfying:
|f(u)−f0(u)|=|λ(u)f(u)|≦ε1f(u) (78)
for a small number ε1, the “iteration dose” Df(x) is defined based on {tilde over (D)}f(x) and the correction term ΔDf−{tilde over (D)}f
Df(x)={tilde over (D)}f(x)+ΔDf
Proposition
Df(x) approximates (x) with second order accuracy; that is:
|(x)−Df(x)|≦ε1ε2
(x) (80)
Proof:
This application is a non-provisional application of and claims priority to U.S. Provisional Patent Application Ser. No. 61/256,593, filed on Oct. 30, 2009, and U.S. Provisional Patent Application Ser. No. 61/295,462, filed on Jan. 15, 2010, the entire contents of which are both incorporated herein by reference.
Number | Name | Date | Kind |
---|---|---|---|
4149081 | Seppi | Apr 1979 | A |
4455609 | Inamura et al. | Jun 1984 | A |
4998268 | Winter | Mar 1991 | A |
5008907 | Norman et al. | Apr 1991 | A |
5044354 | Goldhorn et al. | Sep 1991 | A |
5065315 | Garcia | Nov 1991 | A |
5117829 | Miller et al. | Jun 1992 | A |
5317616 | Swerdloff et al. | May 1994 | A |
5332908 | Weidlich | Jul 1994 | A |
5335255 | Seppi et al. | Aug 1994 | A |
5351280 | Swerdloff et al. | Sep 1994 | A |
5391139 | Edmundson | Feb 1995 | A |
5394452 | Swerdloff et al. | Feb 1995 | A |
5405309 | Carden, Jr. | Apr 1995 | A |
5442675 | Swerdloff et al. | Aug 1995 | A |
5446548 | Gerig et al. | Aug 1995 | A |
5471516 | Nunan | Nov 1995 | A |
5511549 | Legg et al. | Apr 1996 | A |
5528650 | Swerdloff et al. | Jun 1996 | A |
5548627 | Swerdloff et al. | Aug 1996 | A |
5552605 | Arata | Sep 1996 | A |
5579358 | Lin | Nov 1996 | A |
5596619 | Carol | Jan 1997 | A |
5596653 | Kurokawa | Jan 1997 | A |
5621779 | Hughes et al. | Apr 1997 | A |
5622187 | Carol | Apr 1997 | A |
5625663 | Swerdloff et al. | Apr 1997 | A |
5647663 | Holmes | Jul 1997 | A |
5651043 | Tsuyuki et al. | Jul 1997 | A |
5661773 | Swerdloff et al. | Aug 1997 | A |
5668371 | Deasy et al. | Sep 1997 | A |
5673300 | Reckwerdt et al. | Sep 1997 | A |
5692507 | Seppi et al. | Dec 1997 | A |
5712482 | Gaiser et al. | Jan 1998 | A |
5724400 | Swerdloff et al. | Mar 1998 | A |
5751781 | Brown et al. | May 1998 | A |
5754622 | Hughes | May 1998 | A |
5754623 | Seki | May 1998 | A |
5760395 | Johnstone | Jun 1998 | A |
5802136 | Carol | Sep 1998 | A |
5818902 | Yu | Oct 1998 | A |
5823192 | Kalend et al. | Oct 1998 | A |
5835562 | Ramsdell et al. | Nov 1998 | A |
6038283 | Carol et al. | Mar 2000 | A |
6049587 | Leksell et al. | Apr 2000 | A |
6222905 | Yoda et al. | Apr 2001 | B1 |
6241670 | Nambu | Jun 2001 | B1 |
6260005 | Yang et al. | Jul 2001 | B1 |
6301329 | Surridge | Oct 2001 | B1 |
6360116 | Jackson, Jr. et al. | Mar 2002 | B1 |
6385286 | Fitchard et al. | May 2002 | B1 |
6385288 | Kanematsu | May 2002 | B1 |
6393096 | Carol et al. | May 2002 | B1 |
6438202 | Olivera et al. | Aug 2002 | B1 |
6473490 | Siochi | Oct 2002 | B1 |
6527443 | Vilsmeier et al. | Mar 2003 | B1 |
6539247 | Spetz | Mar 2003 | B2 |
6560311 | Shepard et al. | May 2003 | B1 |
6661870 | Kapatoes et al. | Dec 2003 | B2 |
6697452 | Feb 2004 | B2 | |
6714620 | Caflisch et al. | Mar 2004 | B2 |
6719683 | Frohlich | Apr 2004 | B2 |
6741674 | Lee | May 2004 | B2 |
6757355 | Siochi | Jun 2004 | B1 |
6792073 | Deasy et al. | Sep 2004 | B2 |
6792074 | Erbel et al. | Sep 2004 | B2 |
6853702 | Renner | Feb 2005 | B2 |
6882702 | Luo | Apr 2005 | B2 |
6904125 | Van Dyk et al. | Jun 2005 | B2 |
6961405 | Scherch | Nov 2005 | B2 |
6984835 | Harada | Jan 2006 | B2 |
7043058 | Cornog et al. | May 2006 | B2 |
7046762 | Lee | May 2006 | B2 |
7187752 | Kotler et al. | Mar 2007 | B2 |
7221733 | Takai et al. | May 2007 | B1 |
7289599 | Seppi et al. | Oct 2007 | B2 |
7367955 | Zhang et al. | May 2008 | B2 |
7369645 | Lane | May 2008 | B2 |
7391026 | Trinkaus et al. | Jun 2008 | B2 |
7450687 | Yeo et al. | Nov 2008 | B2 |
7492858 | Partain et al. | Feb 2009 | B2 |
7496173 | Goldman et al. | Feb 2009 | B2 |
7505559 | Kuduvalli | Mar 2009 | B2 |
7508967 | Harari et al. | Mar 2009 | B2 |
7513861 | Klein et al. | Apr 2009 | B2 |
7519150 | Romesberg et al. | Apr 2009 | B2 |
7551717 | Tome et al. | Jun 2009 | B2 |
7590440 | Lu et al. | Sep 2009 | B2 |
7620144 | Bodduluri | Nov 2009 | B2 |
7639853 | Olivera et al. | Dec 2009 | B2 |
7639854 | Schnarr et al. | Dec 2009 | B2 |
7643661 | Ruchala et al. | Jan 2010 | B2 |
7693257 | Allison | Apr 2010 | B2 |
7708682 | Pekar et al. | May 2010 | B2 |
7773788 | Lu et al. | Aug 2010 | B2 |
7831289 | Riker et al. | Nov 2010 | B2 |
7945022 | Nelms et al. | May 2011 | B2 |
8085899 | Nord et al. | Dec 2011 | B2 |
8125813 | Nizin et al. | Feb 2012 | B2 |
20030212325 | Cotrutz et al. | Nov 2003 | A1 |
20040068182 | Misra | Apr 2004 | A1 |
20050096515 | Geng | May 2005 | A1 |
20050143965 | Failla et al. | Jun 2005 | A1 |
20050201516 | Ruchala et al. | Sep 2005 | A1 |
20070041496 | Olivera et al. | Feb 2007 | A1 |
20070041498 | Olivera et al. | Feb 2007 | A1 |
20070041500 | Olivera et al. | Feb 2007 | A1 |
20070197908 | Ruchala et al. | Aug 2007 | A1 |
20080008291 | Alakuijala et al. | Jan 2008 | A1 |
20080031406 | Yan et al. | Feb 2008 | A1 |
20080049898 | Romesberg et al. | Feb 2008 | A1 |
20080193006 | Udupa et al. | Aug 2008 | A1 |
20080279328 | Zeitler et al. | Nov 2008 | A1 |
20090041200 | Lu et al. | Feb 2009 | A1 |
20090116616 | Lu et al. | May 2009 | A1 |
20090252291 | Lu et al. | Oct 2009 | A1 |
20100053208 | Menningen et al. | Mar 2010 | A1 |
20100054413 | Sobering et al. | Mar 2010 | A1 |
20110019889 | Gering et al. | Jan 2011 | A1 |
Number | Date | Country |
---|---|---|
10052421 | Feb 1998 | JP |
10501151 | Feb 1998 | JP |
10146395 | Jun 1998 | JP |
11169471 | Jun 1999 | JP |
2002210029 | Jul 2002 | JP |
2002522128 | Jul 2002 | JP |
2002522129 | Jul 2002 | JP |
2004166975 | Jun 2004 | JP |
2005160804 | Jun 2005 | JP |
2005518908 | Jun 2005 | JP |
2007509644 | Apr 2007 | JP |
2007516743 | Jun 2007 | JP |
300853 | Mar 1997 | TW |
0007669 | Feb 2000 | WO |
03076003 | Sep 2003 | WO |
03092789 | Nov 2003 | WO |
2004080522 | Sep 2004 | WO |
2004098712 | Nov 2004 | WO |
2005031629 | Apr 2005 | WO |
2005057463 | Jun 2005 | WO |
2005062790 | Jul 2005 | WO |
Entry |
---|
Purdy, James, “3D Treatment Planning and Intensity-Modulated Radiation Therapy,” Oncology, vol. 13, No. 10, suppl. 5 (Oct. 1999). |
Yu, Cedric X., et al., “A Method for Implementing Dynamic Photon Beam Intensity Modulation using Independent Jaws and a Multileaf Collimator,” Phys. Med. Biol. 40. 1995: 769-787. |
Lee, Jason et al., “Intensity Modulated Radiation Therapy; An Introduction for Patients and Clinicians,” www.oncolink.com/templates/treatment/article.cfm?c=45&s=33&id=182; Jun. 16, 2001. |
Keall, Paul, “4-Dimensional Computed Tomography Imaging and Treatment Planning,” Seminars in Radiation Oncology, vol. 14, No. 1, Jan. 2004; pp. 81-90. |
Rueckert, D.et al., “Nonrigid Registration Using Free-Form Deformations: Application to Breast MR Images”, IEEE Transactions on Medical Imaging, vol. 18, No. 8, pp. 712-721, Aug. 1999. |
Gu et al. GPU-based ultra-fast dose calculation using a finite size pencil beam model. Physics in Medicine and Biology. Oct. 1, 2009, vol. 54, No. 20, pp. 6287-6297. |
Mackie, T. Rockwell et al., “Tomotherapy: Rethinking the Processes of Radiotherapy,” XIIth ICCR, May 27-30, 1997. |
Fang, Guang Y. et al., “Software system for the UW/GE tomotherapy prototype,” Xiith ICCR, May 27-30, 1997. |
PCT/US2010/054758 International Search Report and Written Opinion dated Aug. 2, 2011. |
Number | Date | Country | |
---|---|---|---|
20110122997 A1 | May 2011 | US |
Number | Date | Country | |
---|---|---|---|
61256593 | Oct 2009 | US | |
61295462 | Jan 2010 | US |