Image reconstruction from helical partial cone-beam data

Abstract: A two-dimensional radiation detector (30) receives divergent ray penetrating radiation along conical or pyramidal ray paths which converge at an apex. The radiation may emanate from one or both of an x-ray tube (16) or radionuclei injected into a human subject. As the radiation detector rotates around the subject, it is repeatedly sampled to generate two-dimensional data sets h t (u,v) at each of a plurality of samplings t. Each two-dimensional data array is weighted (44) and divided into two components. A first component processor (48) convolves a first component of each two-dimensional array with respect to u for each v. A second component processor (50) processes a second component of each two-dimensional array (FIGURE 6) including weighting each component with a geometrically dependent weighting function W from a weighting function computer (46) . The processed first and second components are combined (52) and backprojected (54) .

Description: The present invention relates to a diagnostic imaging method and apparatus. It finds particular application in conjunction with reconstructing x-ray transmission data from CT scanners which move a partial cone-beam radiation source along a helical trajectory and will be described with particular reference thereto. It is to be appreciated, however, that the present application will also find application in reconstructing information from other conical or other three-dimensional x-ray sources, such as reconstructing conical transmission or emission data in nuclear cameras. Conventionally, spiral CT scanners include an x-ray source which projects a thin slice or beam of radiation. The x-ray source is mounted for rotational movement about a subject who is moving along the axis of rotation. An arc or ring of radiation detectors receive radiation which has traversed the patient. Data from the x-ray detectors represents a single spiralling slice through the patient. The data from the detectors is reconstructed into a three-dimensional image representation. For faster processing, a pair or more of radiation detectors can be disposed next to each other. This enables two or more slices of data to be collected' concurrently. However, like the single slice scanner, only intraslice data is used in the reconstruction process. One of the difficulties with such prior art scanners is that they place major stress on the x-ray generator. When a solid geometric shape of x-rays, such as a cone, are generated, the x-rays pass through a volumetric region of the subject. In true cone beam reconstruction, truncation of the data is not permitted. These x-rays pass along known rays, both within traditional planes and at acute angles through several planes. The radiation passing through rays at an angle to the central plane were previously lost to collimation. By utilizing the radiation previously lost in collimation to generate useful diagnostic information, the load on the x-ray generator is reduced. However, images reconstructed from data collected along divergent beams tend to have artifacts. One way of minimizing the divergent ray artifacts is to minimize the number of rings, i.e., limit the width of the cone beam. Of course, limiting the width of the cone-beam partially defeats the original intent. Although the additional radiation supplied by the cone-beam is beneficial in imaging, it has the detrimental side effect of increasing patient dosage. On the other hand, the high dosage enables a volume to be constructed with fewer rotations of the cone-beam. In the article by H. Kudo and T. Saito: "Three-dimensional Helical-Scan Computed Tomography using Cone-Beam Projections" (Systems & Computers in Japan, vol. 23, no. 12, 1 January 1992, pages 75-82) an approximate algorithm for reconstructing volume images from cone-beam helical scanning with truncated projections is discussed. The presented approximate reconstruction algorithm is an extension to Feldkamp's reconstruction method for a one-rotation scan using cone-beam projections to a helical scan and consists of the three steps of multiplication by a weight function to correct the affect of a dispersed X-ray, convolution, and inverse projection. Feldkamp's reconstruction method is known to the person skilled in the art and does not address the general problem of truncated projections. The present invention provides a new and improved method and apparatus for reconstructing volumetric images from cone and other three-dimensional x-ray geometries. In accordance with the present invention, a method of diagnostic imaging is provided as described by claim 1. During the reconstructing, the views are reconstructed based on the defined plane and voxel locations such that the views contribute to multiple planes to generate the volumetric image representation. The views are backprojected during reconstruction. Each view is backprojected into a three-dimensional volumetric region of the volumetric image representation in such a manner that each backprojected view contributes to a plurality of parallel planes of the volumetric image representation. In accordance with another aspect of the present invention, an apparatus for diagnostic imaging is provided as described by claim 9. One advantage of the present invention is that it provides for faster reconstruction of images of volumetric regions. Another advantage of the present invention is that it enables volumetric images to be reconstructed with less than a full rotation of an x-ray source. Another advantage of the present invention resides in reduced image artifacts. The invention will now be further described, by way of example, with reference to the accompanying drawings in which: - FIGURE 1a is an illustration of an imaging system in accordance with the present invention; FIGURE 1b is an illustration of a detector element used in the present invention; FIGURE 2 illustrates a local coordinate plane (P 0 ) associated with vertex (t 0 ); FIGURE 3 further illustrates the local coordinate plane (P 0 ) associated with vertex (t 0 ) as shown in FIGURE 2; FIGURE 4 illustrates a partial cone-beam data at any instance t; FIGURE 5 illustrates a function h t (u,v) as an integral of a function f along the line from (t) to a point (u,v) in a plane defined by C(t) of the U and V axes; FIGURE 6 illustrates a block diagram of a reconstruction algorithm for determining Q 2 ; FIGURE 7 illustrates a graph of s(t)=2(1-cost)-tsint; FIGURE 8 illustrates the trace of the helix on a local coordinate plane in (u,v) space; FIGURE 9 illustrates M as the trace of x on (P 0 ) and D as the intersection of (Q) with (P 0 ); FIGURE 10 is illustrates the integral of the function H t along a line defined by polar parameter (s,ψ); FIGURE 11 illustrates a coordinate system ω,q,r,s; FIGURE 12 further illustrates the reconstruction algorithm as shown in FIGURE 6; FIGURE 13 illustrates the backprojection process; and, FIGURE 14 is a detailed view illustrating the processing of three-dimensional data for projection into a three-dimensional region of the volume image memory. With reference to FIGURES 1a and 1b, a medical diagnostic imaging apparatus 10 includes an x-ray detector 12 which receives radiation arriving from a subject on a subject support 14 . In the preferred CT scanner embodiment, radiation emanates from an x-ray tube 16 having a source collimator 18 that defines a cone-beam 20 of radiation. The cone-beam, as defined herein, can have a circular cross-section, a square or rectangular cross-section, a hexagonal cross-section, or the like. The radiation detector 12 of the preferred embodiment includes an array of detector elements mounted in a configuration which mimics the cross-section of the x-ray beam 20 . For example, a dozen square detector elements 22 may be mounted in a pattern which approximates a circle. When the beam is rectangular or square, the detector elements would be positioned in a corresponding square or rectangular pattern. As yet another alternate embodiment, a plurality of stationary rings of the detector elements can be mounted around the subject. Providing a plurality of stationary rings of the detector elements adds cost in the detectors, but removes the cost associated with rotating th e detector assembly. Each of the detector assemblies 22 includes a scintillation crystal 24 disposed toward the radiation source, an array of photodetectors 26 disposed to view the scintillation crystal, and an array of integrated circuits 28 connected with the array of photodetectors 26 . Preferably, the scintillation crystal, photodetector, and integrated circuit assembly is mounted on a common substrate. The scintillation crystal and photodetectors are etched or cut to define a larger number of light-sensitive elements, e.g., a 16x16 array. Optionally, a detector collimator 30 is mounted to the scintillation crystals to limit received radiation to radiation travelling along rays from an origin of the cone-beam collimator. In the CT scanner embodiment, the origin of the collimator is selected to match the focal point of the x-ray tube. Alternately, the medical diagnostic apparatus may be a nuclear camera. In the nuclear camera, the radiation source includes an emission radiation source in the form of a radiopharmaceutical that is injected into the subject. Because the cone-beam collimator limits received radiation to radiation travelling along a conical array of rays, the resultant data is again cone-beam data. Further, a transmission line source may be disposed opposite the patient from the radiation detector. In a nuclear camera, the transmission line source is commonly a radioisotope. As is known in the art, an appropriate means or mechanical mechanism is provided for rotating the radiation source and the detector around the subject and subject support. In a CT camera, the radiation source commonly rotates continuously at a relatively high rate of speed. In a nuclear camera, the detector and transmission radiation source, if any, commonly rotate in incremental steps. With continuing reference to FIGURES 1a-1b and further reference to FIGURES 2 and 3, the radiation detectors are all sampled concurrently to generate a current view which is stored in a current view memory or latch 40 . The memory or latch 40 also stores an indication of the origin of the cone, i.e., the location of the x-ray tube and/or the location of the detector assembly. In a CT scanner in which the cone is rotating rapidly, the detectors are sampled at very short time intervals. In a nuclear camera, the output of the detectors is commonly integrated over a dwell duration at each angular position. The data from the current view memory 40 is conveyed to a partial cone-beam data memory 42 which stores a source cone or fan of data h t (u,v). More specifically, the partial cone beam data h t represents the line integrals or projections onto the plane P 0 along the rays  from the origin or x-ray source. A weighting processor 44 weights each partial cone data value h t (u,v) to generate a weighted or data view H t (u,v). In a preferred embodiment, the weighting is cosine weighting of the form: H z (u,v) = h t (u,v) R R 2 +u 2 +v 2 where the weighting term is the cosine of the ray angle and is the radius of the circle that defines the scan helix. The object to be reconstructed is represented by a function f from 3 to , where is the radius of a circle that defines the scan helix, i.e., the distance from the z-axis at the origin Ω to the origin of the cone. The trajectory of the x-ray source is described by a curve  which is defined mathematically by a function  from an interval Λ of to 3 . In the case of helical scanning, such a function  is defined by three coordinate equations (t)=(Λ cos ωt, Λ sin ωt, σt) for t a subset of Λ. For any direction represented by a unit vector α in 3 , the positive half-line originated at (t) can be represented parametrically by {(t) + rα | r ∈ [0,∞]} so that h(α,t) is defined by: is the integral of the function f along the semi-line starting at (t) in the direction α. A partial cone-beam data at any instant t 0 may be represented by h(α,t), with α in the subset of 3 . (t) is the vertex of the partial cone at the particular instant t 0 . The definition of the function h can be extended for all α in 3 with ∥ α ∥ ≠ 0. Such an extended version of h is denoted hereinafter by g. The inner product of two vectors x,y in 3 is denoted by <x,y>. The Fourier transform of the function f is given by: or in spherical coordinates: where S denotes the unit sphere R 3 . The following equations give a relationship between the Fourier transform of a function f and that of a function g: G(ξ,t) = F(ξ,<(t),ξ>) where, and is the three-dimensional Fourier transform of g with respect to the first variable α. From the definition itself of the function F, it can be concluded that: If  is a unit vector in R 3 , the slice projection theorem which produces the relationship between the Fourier transform of f and the one-dimensional Fourier transform of its planar integrals R  f, it can be concluded that: F(,u)-F(-, -u) = 1 2iπ (R  f)'(u) Consequently, the expression F(,u) - F(-,-u) is 0 if |u|>A for A, because the integrals along planes perpendicular to  are 0 if the plane does not intersect the support of the function f. From this, it can be concluded that: In condition 1, it is assumed that for any point x in the support of the function f, where f(x) is to be reconstructed from the cone-beam data, there exists a sub-interval Λ x of Λ such that any plane going through the support of f intersects the subcurve  x of  associated with the sub-interval Λ x . From this condition and by making the change of variables defined by u = <(t),>, Equation (10) can be expressed as: where the redundancy weight function M(,t) satisfies the following multiplicity condition which pertains to the number of times that the plane going through (t) and perpendicular to  cuts the curve  x : If the plane perpendicular to a direction  and going through (t) intersects the sub-curve  x at (s 0 ), ..., (s t ), then the condition of Equation (12) can simply be expressed as: M(, s 0 ) + M(, s 1 ) + ... + M(,s t ) = 1 The term f(x) can be computed from its Fourier transform using the spherical coordinate system as follows: Substituting Equation (11) into Equation (14), one obtains: After interchanging the order of integration, one obtains: Observing that M(-,t) = M(,t), after the integration with respect to ρ, one has: Consequently, the computation of f(x) requires: Λ x = {t∈Λ|<x-(t),> = 0} that is, the set of t is such that (t) is the intersection of the plane going through f and perpendicular to the direction . The expression f(x) can also be written: Observe that g and G are both homogeneous functions with respect to their first variable, and that G(ρ,t) = G(,t)/ρ 2 , Equation (19) can be written as: The inner double integrals of the right hand side of Equation (20) is only the three-dimensional inverse Fourier transform of the product of two functions, namely: G(ξ,t) - G(-ξ,t), and |<'(t), ξ>|M(ξ/∥ξ∥, t). Consequently, the integrals are the three-dimensional convolution of their inverse Fourier transform. More precisely: with The above convolution backprojection is complex due to the redundancy of the weighting function M and is not appropriate for partial cone-beam data. For the weighting function M constant, and with such constant set equal to 1 for simplicity, the kernel of the convolution is given by: The expression α and ξ in the coordinate system (T,U,V) with the T axis going through (t), and the U axis parallel to the vector '(t): Hence, q(T,U,V,t) =- '(t) 2π 2 U 2 δ T δ V i.e., q is the product of the classical ramp filter for the two-dimensional reconstruction with the delta function with respect to the variable (T,V) weighted with ∥'(t)∥. Consequently, the expression Q(x,t) = (g(α,t)*q(α,t))(x-(t)) becomes: Note that the function g is homogeneous with respect to its first variable. The convolution expression is a one-dimensional convolution of weighted line integrals or projection data along the direction of the tangent '(t) of the trajectory . The kernel of the convolution is the classical ramp kernel which is used in two-dimensional slice reconstruction. Furthermore, the convolution of g(-α,t) is null since the object is of compact support. Thus, if M is constant, i.e., every plane goes through the point x at which f(x) is to be reconstructed cuts a sub-curve  x at the same number of points, then the convolution is a one-dimensional convolution in the direction of '(t). Consequently, data can be collected in a partial cone-beam, as long as the data are not truncated in the direction of '(t), for any instance t in Λ x . Although the exact reconstruction formula requires a non-constant weighting function M(,t) which satisfies the redundancy condition stated above, based on the simplicity of the convolution expression, the weighting function M can be written as the sum of a constant C and a non-constant function N, i.e.: M(, t) = C + N(,t) With this decomposition, the convolved data is the sum of two terms. The first term corresponds to C; and the second term corresponds to the weighting function N. Because the first term requires a one-dimensional convolution in the direction '(t), it can be assumed that the partial cone-beam data is collected within a rectangle with one side parallel to '(t). In condition 2, it is assumed that at any instant t, the data of the partial cone beam is not truncated in the direction '(t) and there exists a positive integer K. The integer K has the property that if at time t, the data is truncated along a direction Δ, then the plane defined by the line Δ and the vertex (t) either (i) intersects  x exactly K times or (ii) intersects  x at another vertex (t') for which the data along the line Δ' orthogonal to the plane is not truncated. Furthermore, it is assumed that along that side, the data is not truncated. The redundancy condition on the function M requires N to satisfy the following condition: Observe that if W(,t)≥0 and satisfies the condition: then the function N can be defined by: W is chosen such that the computation of the convolved data does not use the truncated data. Using the truncated data would allow N(,t) = 0. Thus, to simplify the reconstruction, the reconstruction formula is chosen to be: where Q 1 is the convolved data corresponding to C which is the one-dimensional convolution of the weighted data with the classical ramp function in the direction '(t) and the second term Q 2 is given by: Thus, it follows that: The right hand side of Equation (33) is only the product of -i/2π, with the integral of the directional derivative of propagation data along a line in the detector plane and orthogonal to the direction . Consequently, the computation of Q 2 does not require the data along that line with the truncated data. To insure that such choice is always possible, W is selected accordingly. For this reason, appropriate conditions are set on the curve  traversed by the x-ray source or origin of the cone-beam relative to the axis z. A spiral or a partial spiral extending from A to B satisfies the conditions. The weighting processor 44 performs the constant weighting component weighting of the data while a second factor processor 46 calculates the non-constant weighting factor. The weighted data from the processor 44 is conveyed to a first or Q 1 processor 48 which calculates the Q 1 component and to a second or Q 2 processor 50 which calculates the Q 2 component with the non-constant weighting function from the weighting function processor 46. A processor 52 computes the sum of Q 1 and Q 2 and the sum is backprojected by a three-dimensional backprojector 54, generally as described by Equations (19)-(21) and as described in greater detail below. With reference to FIGURES 4, 5, and 6, we start first in the (T,U,V) coordinate system. In this coordinate system Q 1 is evaluated as: To simplify the coordinate transformation, the center of the coordinate system (T,U,V) is chosen to be the orthogonal projection C(t) of (t) onto the z-axis. This coordinate system is simply the translation of the coordinate system of FIGURE 5, with the translation vector D τ , where τ is the unit vector along the T-axis. In this new coordinate system, the coordinates (T,U,V) of the reconstruction point x can be obtained from its original coordinates (X,Y,Z) by multiplying the column matrix (X,Y, Z-σt) t with the 3x3 rotation matrix A(t) which consists of the coordinates of the unit vectors τ,µ,ν along the T,U, and V-axes respectively. For (t)=(Rcosωt, Rsinωt, σt) : τ = [cosωt sinωt 0] µ = [-Rωsinωt Rωcosωt σ]/(R 2 ω 2 +σ 2 ) 1/2 and ν = [σsinωt -σcosωt Rω]/(R 2 ω 2 +σ 2 ) 1/2 It remains then to evaluate the integral expression of Q 1 using a sample from the set of line integrals h t which are estimated from the partial cone-beam projection data. Conforming to the choice of the new local coordinate system, h t (u,v) is defined as the integral of the function f along the line from (t) to the point (u,v) in the plane defined by C(t), the U and V-axes of the local coordinate system. For P as the point x-(0,u,0) as shown in FIGURE 3, by the homogeneity property of g, one can express g from the corresponding line integrals as follows: g(x-(0,u,0)-(t),t) = 1 P-(t) g( P-(t) P-(t) , t) For p as the intersection of the line from (t) to P with the (C(t),U,V) plane, the coordinates of the point p in the coordinate system are (0,w(U-u),wV) with w=R/(R-T). Because p=(t)+w(P-(t))=(R,0,0)+ w(T-R,U-u,V), and because w is the constant which makes the first coordinate of p null, then: p-(t) = w(P-(t)) Hence, 1 p-(t) = w p-(t) or: 1 p-(t) = w R 2 + w 2 (U-u) 2 + w 2 V 2 Substituting into Equation (36): g(x-(0,u,0)-(t),t) = w R 2 + w 2 (U-u) 2 + w 2 V 2 h t (w(U-u),wV) Accordingly, the expression of Q 1 becomes: When v is defined as equal to wV, and after a change of the variable of integration is made, Q 1 becomes: where H t (u,v) is defined by Equation (1), where R=∥'(t)∥/2π 2 . In other words, Q 1 (x,t) is obtained by convolving H t (u,v) with the classical ramp kernel with respect to the first variable u and evaluating it at wU, where U is the second coordinate of x in the local coordinate system. H t (u,v) is the projection data h t (u,v) weighted with the constant divided by the distance from (t) to the point (u,v) on the plane (C(t),U,V). Thus, the term Q 1 is essentially a one-dimensional convolution of the weighted data with the classical ramp 2D reconstruction filter. By contrast, the computation of Q 2 involves the computation of a weighting function N based on a knowledge of the number of intersection points of a plane with a portion of the helix , the trajectory of the vertex of the cones. Accordingly, before calculating Q 2 , one first establishes the number of intersection points. With reference again to FIGURES 1 and 2, and further reference to FIGURE 6, the equation for the local coordinate planes (cosωt 0 , sinωt 0 , 0) is: xcosωt 0 + ysinωt 0 =0 A plane (Q) containing (t 0 ) and a point x of the support of the object intersects  at another point (t) if and only if the intersection I of the line joining the two vertices (t) and (t 0 ) with the coordinate plane (P 0 ) associated with (t 0 ) belongs to the intersection line D of the plane (Q) with the plane (P 0 ). Note that I belongs to both planes (Q) and (P 0 ). Conversely, when the intersection line D of (Q) with (P 0 ) contains the point I which is the intersection of (t 0 ),(t) with the plane (P 0 ), then (t) belongs to (Q), i.e., (Q) intersects  at (t). To count the number of intersection points of the plane (Q) besides (t 0 ), the number of intersections points of the line D with the trace of the helix on (P 0 ) is counted. The trace of  on the local coordinate plane (P 0 ) associated with (t 0 ) is the set of intersection points I of the line (t 0 )(t) with the plane (P 0 ) as t varies in an interval containing t 0 . Similarly, the trace of a point x onto the local coordinate plane (P 0 ) is defined by the point of the intersection M at the line (t 0 ),x with the plane (P 0 ). The trace of  contains two branches of curves which intersect the u-axis at infinity, because the line (t 0 )(t) becomes tangent to  as t tends to t 0 . The coordinates of the intersection point I can be written as a point of the line (t 0 )(t) as: I = (Rcosωt 0 +rR(cosωt-cosωt 0 ), Rsinωt 0 +rR(sinωt-sinωt 0 ), σt 0 +rσ(t-t 0 )) where r is a real number. Because the point I belongs to the local coordinate plane, the coordinates of I must satisfy the above equation of the local coordinate plane. Accordingly, r=(1-cosω(t-t 0 )) -1 . The Equation (42) coordinates of I are with respect to the original coordinate system Oxyz. With reference to FIGURE 3, to obtain the coordinates (u,v) of I with respect to the local coordinate system, it suffices to compute the inner product of the vector ΩI with the unit vectors: µ= [-Rωsinωt 0 Rωcosωt 0 σ]/(R 2 ω 2 +σ 2 ) 1/2 and ν = [σsinωt 0 -σcosωt 0 Rω]/(R 2 ω 2 +σ 2 ) 1/2 More specifically, u=<ΩI,µ> and v=<ΩI,ν>. Because: ΩI = (Rcosωt 0 + rR (cosωt - cosωt 0 ), Rsinωt 0 + rR (sinωt - sinωt 0 ), rσ(t - t 0 )) it follows that: u = r R 2 ωsinω (t - t 0 ) + σ 2 (t - t 0 ) R 2 ω 2 + σ 2 and, v = Rσr sinω (t 0 - t) + ω (t - t 0 ) R 2 ω 2 + σ 2 as t→t 0 , u→±∞, and v→0, for t=t 0 ±π/ω, Equations (45a) and (45b) become: u = ± σ 2 π 2ω R 2 ω 2 + σ 2 v = ± Rσπ 2 R 2 ω 2 + σ 2 The derivatives of u and v with respect to t are: du dt = (σ 2 - R 2 ω 2 ) (1 - cosω (t- t 0 )) - σ 2 ω (t - t 0 ) sinω (t - t 0 ) R 2 ω 2 + σ 2 (1 - cosω (t - t 0 )) 2 dv dt = Rσω R 2 ω 2 + σ 2 (2 (1 - cosω (t- t 0 )) - ω (t - t 0 ) sinω (t - t 0 )) (1 - cosω (t - t 0 )) 2 For ω and σ>0, the derivative of u with respect to t is negative, and that the derivative of v is positive. Note FIGURE 7. This analysis of u and v shows that the trace of the helix on a local coordinate plane has a graph in the (u,v) space as illustrated in FIGURE 8. This analysis suggests the following practical criteria to count the number of intersection points of a plane going through a point of reconstruction with part of a helix. With reference to FIGURE 9, [t 1 , t 2 ] is an interval containing t 0 and I 1 , I 2 is the trace of (t 1 ) and (t 2 ) on the local coordinate planes (P 0 ) associated to t 0 , respectively. (Q) is a plane containing (t 0 ) and a point x on the support of the object. M is the trace of x on (P 0 ) and D is the intersection of (Q) with (P 0 ). Looking to the first criteria, (Q) intersects  at (t) with t in [t 1 , t 2 ] if and only if D intersects the portion of the branch of the trace of the helix from -∞ to I 1 . Practically, this is equivalent to the angle between the half lines Mu' and Md' being less than the angle between Mu' and MI 1 . Looking to the second criteria, (Q) intersects  at (t) with t in [t 0 , t 2 ] if and only if D intersects the portion of the branch of the trace of the helix from I 2 to ∞. Practically, this is equivalent to the angle between the half lines Mu and Md being less than the angle between Mu and MI 2 . Q 2 as defined in Equations (32) and (33) can be further quantified by splitting the unit sphere into the union of two disjoint sphere halves, namely S/2 and - S/2, the upper and lower half unit spheres. Equation (32) then reduces to: where: P(, t) = (G(,t)-G(-,t))|<'(t),>|N(,t) Substituting - for  in the second integral of Q 2 and because I(-,t)=-I(,t), Equation (48) becomes: Hence, Equation (32) becomes: Integrating with respect to the variable p and replacing G(,t)-G(-,t) by the above-expression, one obtains: Equation (51) is similar to Equation (11) of the Defrise and Clack reference of record, but with a different weighting function N(,t). The following notation is used in transposing their results: (u,v) is the local coordinates of the intersection of the local coordinate plane (P 0 ) with the line going through (t) and parallel to the direction α; (u x , v x ) is the local coordinates of the trace of the reconstruction point x; (s, ψ) is the polar parameters of the intersection of the local coordinate plane (P 0 ) with the plane perpendicular to the direction  and going through x, and (t); and, LH t (s,ψ) is the integral of the function H t along the line defined by the polar parameter (s,ψ), where s is the distance from Ω to the line, and ψ is the angle between the u-axis and the line, see FIGURE 10. With this notation, Q 2 can be carried out as follows : where: may be computed using Grangeat's fundamental relationship by multiplying |<'(t),>|N(,t) with the weighted partial derivatives of the line integrals of H t : with H t being a function defined on the local coordinate plane in a fashion similar to the one defined for computing Q 1 , except for a constant factor: H t (u, v) = Rg (α, t) R 2 + u 2 + v 2 In other words, Q 2 is obtained by two-dimensionally backprojecting at the trace of the reconstruction point, partial derivatives of weighted partial derivatives of line integrals of weighted partial cone-beam data. With reference to FIGURE 11, a coordinate system Ωqrs is defined with Ωq along Ω(t), Ωr parallel to the intersection line D of the color coordinate plane with the plane perpendicular to the unit vector , and Ωs perpendicular to D. In this coordinate system, the coordinates of the vector α are (ρ,σ,R)/(ρ 2 +σ 2 +R 2 ) 1/2 and those of the intersection point N of the line D with the axis Ωs are (0,s,0). Because the vector  is perpendicular to both vectors (0,s,0) and the vector N(t) with coordinates (0,-s,R), it follows that the coordinates of  are proportional to the exterior product of the two vectors. Consequently, the coordinates of  are (0,R,-s)/(s 2 +R 2 ) 1/2 , and hence: <α,> = R (σ-s) ρ 2 + σ 2 + R 2 s 2 + R 2 If a and b are the polar and azimuthal angles of the unit vectors α, see FIGURE 11, then: dα = sin (a) dadb Because: cos (a) = -R ρ 2 + σ 2 + R 2 and, b = tan -1 ( σ ρ ) it follows that the Jacobian is: ∂(cos(a), b) ∂(ρ, σ) = R(ρ 2 + σ 2 + R 2 ) -3/2 Hence, Equation (54) becomes: where h t (ρ,σ)=Rg(α,t). After integrating with respect to σ, this becomes: From this, a constructive form of Q 2 can be developed. In the local coordinate system in which integration is carried out with respect to  over S/2, the vector  can be obtained by multiplying its coordinates with respect to (r,s) coordinate system with the rotation matrix introduced by the angle (π/2-ψ). Consequently:  = 1 s 2 + R 2 (Rcosψ, Rsinψ, -s) With respect to the local coordinate system: x- (t) x- (t) = 1 u x 2 + v x 2 + R 2 (u x ,v x ,R) Consequently: <x-(t),> = R x- (t) u x 2 + v x 2 + R 2 s 2 + R 2 (u x cosψ+v x sinψ-s) Moreover, if a and b are the polar and the azimuthal angles of the vector , then: cos (a) = s s 2 + R 2 and b = ψ Hence, the Jacobian is: ∂ (cos (a), b) ∂ (s, ψ) = R 2 (s 2 + R 2 ) 3/2 Consequently: which becomes: After integrating with respect to s: With particular reference to FIGURE 6, the Q 2 calculation 50 is divided into four parts. First, a processor or means 60 computes line integrals of the weighted partial cone-beam data. This is followed by a processor or means 62 for estimating the partial derivative of the line integrals with respect to the variable s, which represents the distance from the origin Ω of the local coordinate system to the lines in accordance with Equation (54). The partial derivatives of the line integrals H t (s,ψ) are weighted by (R 2 +s 2 )/(4π 2 s 2 ). This weighting is inversely proportional to cos 2 (a), where a denotes the divergence angle between the line (t)Ω and the plane generated by the vertex (t) and the line parameterized by (s,ψ). For simplicity of computation, the parallel beam geometry described by the parameters (s,ψ) on the local coordinate plane is utilized throughout the computation of Q 2 . A second part 46 computes the weight W associated with each line (s,ψ) in order to insure the normalization of the 3D backprojection when reconstructing the images. To insure this normalization, the number of intersections of a plane with the portion of the helix in which the data are three-dimensionally backprojected for reconstruction are computed for each plane defined by (s,ψ). A processor or means 70 identifies the affected volume V t . More specifically, a processor or means 72 computes the traces A z and B z of the end points of the backprojection range for each slice, indexed by c, in the affected volume V t . A processor or means 74 computes the weighting function W t for each view t of each slice z in accordance with: W tz (s, ψ) = N tz (s, ψ) |<'(t), (s, ψ) >| Due to the fact that the truncated data is not used in backprojection, a count of the number of intersection vertices with non-truncated data along the plane is also counted. With reference to FIGURE 12 and continuing reference to FIGURE 6, without counting the current vertex (t), the number of intersections of a plane defined by the line (s,ψ) is equal to the number of intersections of the line (s,ψ) with the two branches of the trace of the portion of the helix in which the data are backprojected to create a slice of the reconstructed volume. This number is constant and equal to 1 when the line (s,ψ) cuts the line Δ outside the line segment defined by the orthogonal projections of Δ of the traces of the two extreme vertices of the portion of the helix. Inside this line segment, the number is either 0 or 2. That is, the line (s,ψ) either intersects the two branches of the trace or it does not have a common point with the trace at all. Second, because the weight is null for lines along which the data are truncated, it is not necessary to do any computation of line integrals or other related factors of these truncated lines. More specifically, it is predetermined into how many slices the data is to be reconstructed, the number of pixels per slice, and the like. For each view t, a determination is made which slices are affected by view t, K is set 76 accordingly to either 1 or 2 for the reconstruction process. Once K is set, C from Equation (27) is known as is the weight of Q 1 , which gives the range of each slice. At 78 a sufficient range [t 1z , t 2z ] which satisfies the condition 2, i.e., that the angle between the half lines Mu' and Md' is less than the angle between Mu' and MI 1 to reconstruct slice C in the reconstruction volume V. From the range, the weighting for Q 2 is determined. For each view t, a step or means 80 computes the traces A z and B z of (t 1z ) and (t 2z ) for each slice z in the affected volume v t . A step or means 82 computes orthogonal projections a z and b z of the traces A z and B z onto the line Δ which makes an angle ψ with the u-axis and goes through the origin Ω. With reference to FIGURES 6 and 12, a step or means 84 computes the number of intersections M tz (s,ψ) of the portion of the helix between ψ(t 1z ) and ψ(t 2z ) with the plane P(s,ψ) defined by ψ(t) and the line L(s,ψ), which is orthogonal to the line Δ at a distance s from Ω. Again, the helix can only intersect the plane at 1, 2, or 3 points. M tz (s,ψ)=1 or 3, if the line L of (s,ψ) cuts [a z ,b z ]. Otherwise, M tz (s,ψ)=2. The step or means 86 computes the number M' tz (s,ψ) of the vertices among the intersections with non-truncated data along the plane P(s,ψ). A step or means 88 computes the number N tz (s,ψ) which is supplied to the step or means 74 to compute the weighting function W tz (s,ψ). The number of intersections is calculated in accordance with: N tz (s,ψ) = 0 if data along L(s,ψ) is truncated, and N tz (s, ψ) = (1- M tz (s, ψ) K ) 1 M ' tz (s, ψ) otherwise. With reference again to FIGURE 6, a processor 90 determines a partial derivative with respect to s and weights it. More specifically, a step or means 92 computes I tz (s,ψ)=W tz (s,ψ)P t (s,ψ). A step or means 94 determines the Jacobian J tz (s,ψ) as follows: J tz (s, ψ) = ∂ ∂s I tz (s, ψ) s 2 + R 2 A processor 96 multiplies, at each pixel (u,v) in the local coordinate plane, the backprojection of (u,v) from the processor 90 with the square of the distance from the vertex (t) to the pixel. More specifically, a step or means 98 adds up 180° of parallel beam backprojections. It performs a parallel beam two-dimensional backprojection of J tz at each (u,v) to compute B tz (u,v). A step or means 100 computes Q 2tz (u,v)=(u 2 +v 2 +R 2 )B tz (u,v). These values of Q 2 are supplied to the summation means 52 to be combined with the corresponding values of Q 1 . With reference to FIGURES 13 and 14, the three-dimensional backprojector 54 is a processor which computes the final reconstruction from the processed data, such as the above-described convolved data. The backprojector is an estimator of: where Q represents the processed data. Because the data are collected at only a finite number of instances, the integral can be approximated by the finite sum: f(x) = ΔtΣQ(x,t i ) Further, the continuous volume can be represented by a finite number of voxels of size ΔXΔYΔZ, that is x= (lΔX, mΔY, nΔZ)+(X 0 ,Y 0 ,Z 0 ) for some 1=0, 1, ..., L-1, m=0, 1, ... , M-1, n=0, 1, ..., N-1. (X 0 ,Y 0 ,Z 0 ) is a corner of the represented volume. When Q is reduced to Q 1 , then Q is estimated by appropriately weighting the convolved data H t . Due to the fact that at each instance t, data are collected only along a finite number of rays within a partial cone-beam, H t (u,v) must be approximated from a sample {H t (iΔu+u 0 , jΔv+v 0 ) | i=0, 1, ... , I-1, and j=0, 1, ..., J-1}. It should further be noted that because there is data within a partial cone geometry, the backprojection of the processed data does not affect the whole represented volume, but only a portion of it. Another important point is that the backprojection is conveniently carried out in a new coordinate system defined by (C(t),U,V). With particular reference to FIGURE 13, a three-dimensional image memory 110 receives the backprojected views. As each view t is received, an affected volume determining means or step 112 determines the part of the volume of memory 110 which is affected by the processed view t. A voxel generator 114 sweeps through all of the voxels in the affected part of the volume. A coordinate transform processor 116 converts the absolute coordinate system (X,Y,Z) of the voxel address generator into the local coordinate system (T,U,V). With continuing reference to FIGURE 13 and further reference to FIGURE 14, a weight generating system includes a first weight generator 118 which generates a first weighting value w which is equal to R/(R-T). A two-dimensional input generator 120 which generates local coordinates of a voxel given by the voxel generator, the local address being (u,v) and generates weighting factors u and w, where u=wU and v=wV. The u and v addresses address a two-dimensional memory 122 in which the two-dimensional view H t *RAM is stored. An input interpolator 124 uses the input data retrieved from the input memory 122 and fractional parts of the new coordinates calculated by the two-dimensional input generator 120 to estimate the input data corresponding to a ray going through the voxel given by the voxel generator. A multiplier 126 multiplies the weighting factor w by itself to form a weighting factor w 2 . A multiplier 128 multiplies the interpolated input data H t *RAM(u,v) by the squared weighting function w 2 . An adder 130 retrieves the current values B(l,m,n) retrieved from the volumetric memory 110 with the product from the multiplier 128 . In this manner, the values stored in each voxel is updated with each two-dimensional set of processed data. Initially, the three-dimensional output memory 110 has each pixel value assigned a nominal, non-zero starting value, e.g., 1. In this manner, the value at each voxel is iteratively updated until an accurate reconstruction is obtained.

Claims: A method of diagnostic imaging, including the steps of moving a vertex of a cone-beam of radiation along a helical trajectory, irradiating a subject with the cone-beam of radiation, converting the passed radiation into a plurality of partial cone-beam views, whereby the partial cone-beam views are untruncated in a direction parallel to a tangent to the trajectory at the vertex and are truncated in another direction, and reconstructing the partial cone-beam views into a volumetric image representation, the reconstruction including the steps of o processing each of the partial cone-beam views to create a weighted view, o computing a first two-dimensional component (Q1), which is proportional to a constant part of a redundancy weight function, essentially by one-dimensionally convolving the weighted view along the direction of the tangent to the helical trajectory at the vertex with a reconstruction filter, o computing a second two-dimensional component (Q2), which is corresponding to a non-constant part of the redundancy weight function, essentially by two-dimensionally backprojecting at the trace of the reconstruction point a partial derivative of a weighted partial derivative of line integrals of the weighted view, the weighted view being multiplied with the non-constant part of the redundancy weight function, the non-constant part of the redundancy weight function being computed on basis of intersection points of a plane with a portion of the helical trajectory, and o backprojecting the first component and the second component into an affected portion of the volumetric image representation. A method as claimed in claim 1 further comprising the steps of: defining planes and voxel locations of the volumetric image representation; and reconstructing the partial cone-beam views based on the defined planes and voxel locations such that the partial cone-beam views contribute to at least two of the planes to generate the volumetric image representation. A method as claimed in claim 1, wherein the steps include: receiving the radiation with a radiation detector having a two-dimensional array of detector elements; rotating the vertex along at least an helical arc segment of the helical trajectory; sampling the radiation detector at a plurality of angular increments along the helical arc segment to generate a plurality of two-dimensional data value arrays, each of the data values corresponding to a detector element and each of the arrays corresponding to a partial cone-beam view; and the reconstructing steps include: weighting the data values of each two-dimensional array in accordance with a cosine of an angle between a ray originating from the vertex and corresponding to the detector elements and a ray originating from the vertex and being normal to a local coordinate plane at the radiation detector; multiplying each value of the second components in accordance with a square of a distance from the vertex to the detector element corresponding to the value of the second component; adding the first component and the second component; and three-dimensionally backprojecting the sum into a volumetric image memory. A method as claimed in claim 1, wherein the reconstruction steps include: computing a cosine weighted partial derivative of the line integrals. A method as claimed in claim 1 further comprising the step of computing a weighting function, which includes: determining a sub-volume of the volumetric image representation affected by each of the partial cone-beam views; and computing traces of end points of a backprojection range for each slice within the volumetric image representation, and a means for multiplying by a weighting value based on the trace to generate the weighting function. A method as claimed in claim 5 further comprising the step of generating the weighting value, which includes: computing orthogonal projections of the traces; computing a number of the intersection points between the portion of the helical trajectory and the plane that is defined by the partial derivative of the line integrals; determining a number of times that the plane intersects the portion of the helical trajectory; determining intersection points of vertices with non-truncated data along the plane; and setting the weighting function to zero for truncated data and for setting the weighting function equal to a value which is proportional to 1 minus the number of intersection points divided by a constant and weighted by an inverse of a number of vertices among the intersection points with non-truncated data to generate the weighting value. A method as claimed in claim 2, wherein the reconstructing steps include backprojecting each of the sums into a three-dimensional volumetric region of the volumetric image representation such that each backprojected sum contributes to a plurality of parallel planes of the volumetric image representation. A method as claimed in claim 7, wherein the backprojecting step includes: determining a volumetric segment of the volumetric image representation affected by each two-dimensional backprojected data set; generating voxel addresses for the three-dimensional volumetric image representation corresponding to the affected volume; coordinating a coordinate system of the volumetric image representation and each two-dimensional data set; addressing the two-dimensional data set to retrieve data values corresponding to each voxel address generated; weighting each retrieved data value from the two-dimensional data set; and retrieving a stored data value from the volumetric image representation corresponding to each voxel address generated and adding the corresponding weighted data value from the two-dimensional data set thereto. A diagnostic imaging apparatus that comprises a radiation source (16) provided for generating a cone-beam (20) of radiation, means provided for moving the radiation source and a subject relative to each other such that a vertex of the cone-beam (20) of radiation moves along a helical trajectory, a radiation detector (30) provided for converting radiation that has passed through the subject into a plurality of two-dimensional partial cone-beam views, each partial cone-beam view being untruncated in a direction parallel to a tangent to the helical trajectory at the vertex and being truncated in another direction, and reconstruction means (44, 46, 48, 50, 52, 54) provided for processing the partial cone-beam views and for backprojecting the processed partial cone-beam views into an volumetric image representation, the reconstruction means comprising o processor means (44) provided for computing a weighted view for each of the partial cone-beam views, o processor means (48) provided for computing a first two-dimensional component (Q1), which is proportional to a constant part of a redundancy weight function, essentially by one-dimensionally convolving the weighted view along the direction of the tangent to the helical trajectory at the vertex with a reconstruction filter, o processor means (46, 50) provided for computing a second two-dimensional component (Q2), which is corresponding to a non-constant part of the redundancy weight function, essentially by two-dimensionally backprojecting at the trace of the reconstruction point a partial derivative of a weighted partial derivative of line integrals of the weighted view, the weighted view being multiplied with the non-constant part of the redundancy weight function, the non-constant part of the redundancy weight function being computed on basis of intersection points of a plane with a portion of the helical trajectory, and o backprojector means (52, 54) for backprojecting the first component and the second component into an affected portion of the volumetric image representation. Apparatus as claimed in claim 9, wherein the reconstruction means are arranged to reconstruct the partial cone-beam views based on defined planes and voxel locations of the volumetric image representation such that the partial cone-beam views contribute to multiple planes to generate the volumetric image representation. Apparatus as claimed in one of claims 9 or 11, wherein the radiation detector is arranged to receive the radiation on an two-dimensional array of detector elements; and to being sampled at a plurality of angular increments along an helical arc segment of the helical trajectory moved by the vertex to generate a plurality of two-dimensional data value arrays, each of the data values corresponding to a detector element and each of the arrays corresponding to one of the partial cone-beam views; and the reconstructing means being arranged to weight the data values of each two-dimensional array in accordance with a cosine of an angle between a ray originating from the vertex and corresponding to the detector element and a ray originating from the vertex and being normal to a local coordinate plane at the radiation detector; to multiply each value of the second components in accordance with a square of a distance from the vertex to the detector element corresponding to the data value; to add the first component and the second component, and the backprojector means being arranged for three-dimensionally backprojecting the sum into a volumetric image memory. Apparatus as claimed in claim 9, wherein the reconstruction means being arranged to compute a cosine weighted partial derivative of the line integrals. Apparatus as claimed in claim 9, wherein the reconstruction means include processor means (70, 72, 74, 82, 84, 86, 88) to compute a weighting function and which processor means are being arranged to determine a sub-volume of the volumetric image representation affected by each of the partial cone-beam views; and to compute traces of end points of the backprojection range for each slice within the volumetric image representation, and a means for multiplying by a weighting value based on the trace to generate the weighting function. Apparatus as claimed in claim 13, wherein the processor means (70, 72, 74, 82, 84, 86, 88) for computing the weighting value are further arranged to compute orthogonal projections of the traces; to compute a number of intersections between the helical arc segment and a plane defined by the first derivative of the line integrals; to determine a number of times that the plane intersects the helical arc segment; to determine intersections of vertices with non-truncated data along the plane; and to set the weighting function to zero for truncated data and to set the weighting function equal to a value which is proportional to 1 minus the number of intersections divided by a constant and weighted by an inverse of a number of vertices among the intersections with non-truncated data to generate the weighting value. Apparatus as claimed in any one of claims 9 to 14, wherein the reconstruction processor is arranged to backproject each of the partial cone-beam views into a three-dimensional volumetric region of the volumetric image representation such that each backprojected view contributes to a plurality of parallel planes of the volumetric image representation. Apparatus as claimed in claim 15, wherein the reconstruction processor is arranged to determine a volumetric segment of the volumetric image representation affected by each two-dimensional backprojected data set; to generate voxel addresses for the three-dimensional volumetric image representation corresponding to the affected volume; to coordinate a coordinate system of the volumetric image representation and each two-dimensional data set; to address the two-dimensional data set to retrieve data values corresponding to each voxel address generated; to weight each retrieved data value from the two-dimensional data set; and to retrieve a stored data value from the volumetric image representation corresponding to each voxel address generated and adding the corresponding weighted data value from the two-dimensional data set thereto.

Inventors: TUY HEANG K, TUY, HEANG K.
Applicants: KONINKL PHILIPS ELECTRONICS NV, KONINKLIJKE PHILIPS ELECTRONICS N.V.
Application year: 1996
Main classification: G06T11
IPC codes: G06T1, A61B6, G06T11