High Speed Z-smoothing method and apparatus for CT imaging system
Summary by NHIP
CT Z-smoothing method
The method generates thick CT slice images by combining helical data using Z-smoothing scalars and weight functions. It sequentially multiplies scalars by functions, stores results in an intermediate array, and adds overlapping segment weights before outputting the final array.
Claim Score by NHIP
Abstract
A method and apparatus for quickly rendering thick CT slice images wherein the data corresponding to an optimal number of slice images to be combined to generate a thick image and the data set required to generate the thick image are determined as a function of an optimal Z-smoothing factor and wherein Z-smoothing is implemented in software that performs quickly and is useable with any helical weighting algorithm and Z-smoothing function.

Term
Term ended
Expired 1 October 2023, 3 years ago.
- Priority and filed
- Granted
- Expired
- Today
20 claims: 5 independent, 15 dependent
- 1A method to be used with a set of CT helical data corresponding to a thick slice of interest (TSOI), the method for generating a thick slice data weighting function w(β) by combining slice specific Z-smoothing scalars zw and helical slice image weight functions hw corresponding to first through N slice images to be combined to generate the thick slice image corresponding to the TSOI, the method comprising the steps of:(a) for the first slice, mathematically combining the helical weight function hw and an image specific scalar zw(n) to generate a scaled weighting function w n (β) corresponding to the first slice;(b) storing scaled weighting function w n (β) weights at the beginning of an intermediate weighting array w iti (β);(c) for the next adjacent slice, mathematically combining the helical weighting function hw and an image specific scalar zw(n) to generate a scaled weighting function w n (β);(d) identifying an overlapping segment of the scaled weighting function w n (β) that overlaps an overlapped segment of the intermediate weighting array w iti (β) and adding the overlapping segment weights to the overlapped segment weights;(e) storing the function w n (β) segment weights that do not overlap the intermediate weighting function array at the end of the intermediate weighting function array;(f) repeating steps (c) through (e) for each of the slice images to be combined to generate the thick image;and (g) outputting the intermediate weighting function array as a final weighting array w ti (β).
- 7A method to be used with a set of CT helical data corresponding to a thick slice of interest (TSOI), the method for generating a thick slice data weighting function w(β) by combining Z-smoothing functions zw and helical slice image weight functions hw, the thick slice data weighting function useable to generate a thick slice image corresponding to the TSOI, the method comprising the steps of, where a slice image quantity is identified as N:(a) setting a slice counter n to zero;(b) mathematically combining hw and zw(n) to generate a scaled weighting function w n (β);(c) storing function segment w n (βi, β full ) to intermediate function segment w(βi, β full );(d) incrementing counter n;(e) if n is equal to N, skipping to step (g), else: (1) mathematically combining hw and zw(n) to generate scaled weighting function w n (β);(2) adding w n (0,β lap ) to w iti (n(β full −β lap ), n(β full −b lap )+β lap ));(3) storing w n (β lap , β full ) to w iti (n(β full −β lap )+β lap , n(β full −b lap )+β full ));(f) repeating steps (d) through (e);and (g) outputting intermediate function w iti (β) as a final function w iti (β);where the first and second angles β 1 and β 2 in each function segment w n (β 1 , β 2 ) and w(β 1 , β 2 ) correspond to a first gantry angle in the corresponding function segment and the length of the function segment, respectively, βi corresponds to the first angle in a function, β full corresponds to the total length of a scaled function, and β lap corresponds to the segments of adjacent weighting functions that overlap.
- 13An apparatus to be used with a set of CT helical data corresponding to a thick slice of interest (TSOI), the apparatus for generating a thick slice data weighting function w(β) by combining Z-smoothing functions zw and helical slice image weight functions hw, the thick slice data weighting function useable to generate a thick slice image corresponding to the TSOI, the apparatus comprising, where a slice image quantity is identified as N:a processor running a pulse sequencing program to perform the steps of: (a) setting a slice counter n to zero;(b) mathematically combining hw and zw(n) to generate scaled weighting function w n (β);(c) storing function segment w n (βi, β full ) to intermediate function segment w iti (βi, β full );(d) incrementing counter n;(e) if n is equal to N, skipping to step (g), else: (1) mathematically combining hw and zw(n) to generate scaled weighting function w n (β);(2) adding w n (0,β lap ) to w(n(β full −β lap ), n(β full −b lap )+β lap ));(3) storing w n (β lap , β full ) to w(n(β full −β lap )+β lap , n(β full −b lap )+β full ));(f) repeating steps (d) through (e);and (g) outputting intermediate function w iti (β) as final function w ti (β);where the first and second angles β 1 and β 2 in each function segment w n (β 1 , β 2 ) and w(β 1 , β 2 ) correspond to a first gantry angle in the corresponding function segment and the length of the function segment, respectively, βi corresponds to the first angle in a function, β full corresponds to the total length of a scaled weighting function, and β lap corresponds to the segments of adjacent weighting functions that overlap.
- 19Broadest claimClaim Score 65, broad(NHIP)A method to be used with a set of CT helical data corresponding to a thick slice of interest (TSOI) and a CT system that provides an optimal Z-smoothing factor zsf, the method for identifying an optimal number zns of slice images through the TSOI to be combined to generate a thick image corresponding to the TSOI, the method comprising the step of solving the following equation:zns= 2 f ceil( zsf− 1)+1 where fceil is a ceiling function that rounds decimal values up to the next integer value.
- 20An apparatus to be used with a set of CT helical data corresponding to a thick slice of interest (TSOI), the apparatus for generating a thick slice data weighting function w(β) by combining slice specific Z-smoothing scalars zw and helical slice image weight functions hw corresponding to first through N slice images to be combined to generate the thick slice image corresponding to the TSOI, the apparatus comprising:a processor running a pulse sequencing program to perform the steps of: (a) for the first slice, mathematically combining the helical weight function hw and an image specific scalar zw(n) to generate a scaled weighting function w n (β) corresponding to the first slice;(b) storing weighting function w n (β) weights at the beginning of an intermediate weighting array w iti(β);(c) for the next adjacent slice, mathematically combining the helical weighting function hw and a slice specific scalar zw(n) to generate a scaled weighting function w n (β);(d) identifying an overlapping segment of the scaled weighting function that overlaps an overlapped segment of the intermediate weighting array and adding the overlapping segment weights to the overlapped segment weights;(e) storing the scaled function w n (β) segment weights that do not overlap the intermediate weighting function array at the end of the intermediate weighting function array;(f) repeating steps (c) through (e) for each of the slice images to be combined to generate the thick image;and (g) outputting the intermediate function as a final weighting array w ti (β).
Independent claims5
84 paragraphs in 7 sections, as filed
STATEMENT REGARDING FEDERALLY SPONSORED RESEARCH
0001Not applicable.
CROSS-REFERENCE TO RELATED APPLICATIONS
0002Not applicable.
CROSS-REFERENCE TO RELATED APPLICATIONS
0003Not applicable.
BACKGROUND OF THE INVENTION
0004The present invention relates to multi-slice helical computerized tomography and more particularly to an algorithm, method and apparatus for using the same which reduces the data acquisition time and data processing time required to generate an image.
0005In computerized tomography (CT) X-ray photon rays are directed through a region of interest (ROI) in a patient toward a detector. Attenuated rays are detected by the detector, the amount of attenuation indicative of the make up (e.g. bone, flesh, air pocket, etc.) of the ROI through which the rays traversed. The attenuation data is then processed and back-projected according to a reconstruction algorithm to generate an image of the ROI's internal anatomy. Generally, the “back projection” is performed in software but, as the name implies, is akin to physically projecting rays from many different angles within an image plane through the image plane, the values of rays passing through the same image voxels being combined in some manner to have a combined effect on the voxel in the resulting image. Hereinafter the data corresponding to rays which are back projected will be referred to as back projection rays.
0006During data acquisition, if a patient moves, artifacts can occur in the resulting image which often render images useless or difficult to use for diagnostics purposes. For this and other reasons, as in other imaging techniques, the CT industry is constantly trying to identify ways to reduce the duration of acquisition periods without reducing the quality of acquired data.
0007In addition, because huge amounts of data are acquired during an acquisition period and the processing methods for image reconstruction from the gathered data are relatively complex, a huge number of calculations are required to process data and reconstruct an image. Because of the huge number of required calculations, the time required to process collected data and reconstruct an image is appreciable. For this reason the CT industry is also constantly searching for new processing methods and algorithms which can speed up the reconstruction process.
0008Various CT system features and procedures have been developed to increase data acquisition speed and to speed up the reconstruction process. Some of the more popular features and procedures including fan beam acquisition, simultaneous multiple slice acquisition, helical scanning and half-scanning. In fan beam acquisition the source is collimated into a thin fan beam which is directed at a detector on a side opposite a patient. In this manner, a complete fan beam projection data set is instantaneously generated for a beam angle defined by a central ray of the source fan beam. The source and detector are rotated about an image plane to collect data from all (e.g., typically 360 degrees) beam angles. Thereafter the collected data is used to reconstruct an image in the image plane. Thus, fan beam acquisition reduces acquisition period duration.
0009With respect to half-scanning, assuming a patient remains still during a data acquisition period, conjugate data acquisitions (i.e., data acquired along the same path from opposite directions) should be identical. In addition, using a fan beam, at least one ray can be directed through an image plane from every possible beam angle without having to perform a complete rotation about the patient. As known in the industry, data corresponding to every beam angle corresponding to a single imaging plane can be collected after a (π+2γ)/2π rotation about the patient. Because less than an entire rotation about the imaging plane is required to acquire the imaging data these acquisition methods and systems are generally referred to as half-scan methods and systems. Thus, half-scan acquisition has been employed to reduce acquisition period duration in conjunction with single row detectors. In addition, because relatively less data has to be processed in the case of half-scan imaging methods and systems to generate an image, half-scan methods and systems also have the advantage of potentially reducing data processing and reconstruction times.
0010While fan beams and half-scans have several advantages, often, during a diagnostics session, a system operator will not know the precise location within a patient of an object, cavity, etc., of interest to be imaged. For this reason, it is advantageous for a system operator to be able to generate several cross sectional images in rapid succession by selecting different image/reconstruction planes. In these cases rapid data processing is extremely important to minimize delays between image generation so that a user does not lose her train of thought between image views.
0011Single slice detectors, fan beams and half-scans can be used to generate data in several different parallel image planes which, after data acquisition, can be used by a processor to generate an image anywhere between the image planes through interpolation/extrapolation procedures known in the art. While such systems work, unfortunately, the acquisition time required to generate data corresponding to many image planes is excessive and inevitable patient movement often causes image artifacts.
0012One way to speed up data acquisition corresponding to several image planes is by employing a multi-row detector with a fan beam. In multi-row detector systems, a relatively thick fan beam is collimated and directed at a multi-row detector with a patient there between, each detector row in effect gathering data for a separate “slice” of the thick fan beam along the Z or translation axis perpendicular to a fan beam width. Despite each detector row having a thickness, in these systems it is assumed that the detected signals in each row correspond to a plane centered within the row as projected onto the isocenter Z. Hereinafter the central plane through a row will be referred to as a row center.
0013After data acquisition an interface enables a system user to select an image plane from within the area corresponding to the collected data. The selected image plane is typically between the row centers of at least two adjacent detector rows. After image plane selection, a processor interpolates between data corresponding to adjacent rows to generate back projection rays corresponding to the selected image plane. When another image corresponding to a different image plane is desired, after selecting the plane, the processor again identifies an acquired data subset for interpolation, additional processing and back projection. Thus, multi-row detector systems further reduce data acquisition period duration where several image planes may be selected for reconstruction.
0014One limitation with multi-row detectors is that, during a single acquisition period, data can only be collected which corresponds to the detector thickness. To collect additional data corresponding to a ROI that is linger in the Z axis than the width of the detector, after one acquisition period corresponding to a first portion of the ROI, the patient has to be moved along the Z axis until a second portion of the ROI which is adjacent the first portion of the ROI is between the source and detector. Thereafter a second acquisition process has to be performed. Similarly, to collect additional data corresponding to a third portion of the ROI the patient has to be transported to another relative location with respect to the source and detector. Required translation without acquisition necessarily prolong the acquisition period and the additional acquisition time and aligning processes inevitably result in relative discomfort, additional patient movements and undesirable image artifacts.
0015Helical scanning systems have been developed so that data can be collected during a single acquisition period without halting patient translation during the acquisition period. In a helical scanning system, the source and detector array are mounted on opposing surfaces of an annular gantry and are rotated there around as a patient is transported at constant speed through the gantry. The X-ray beam sweeps a helical path through the ROI, hence the nomenclature “helical scanning system”. Data acquisition can be sped up by increasing operating pitch (i.e., table translation speed relative to gantry rotation rate).
0016Various combinations of the fan-beam, multi-slice and half scan and helical scanning features have been combined to realize synergies and have been somewhat successful. By combining various of the speed enhancing features, data acquisition period durations are appreciably reduced thereby increasing system throughput and increasing image quality by minimizing the likelihood of patient movement.
0017While systems that combine several speed enhancing features are fast becoming a standard, not surprisingly, because of the complex data acquisition cycles that take place in such systems, the algorithms needed to combine subsets of acquired data into images have become extremely complex. To this end, exemplary helical weighting algorithms are described in an article entitled “Multi-Slice Helical CT: Scan and Reconstruction” by Hui Hu which was published in the January 1999 issue of Medical Physics, vol. 26, No. 1, pages 1 through 14. In operation, after imaging data has been collected and archived for a specific three dimensional ROI, an imaging system operator selects a specific slice and slice thickness through the ROI for image reconstruction and display. When a slice is selected, the processor applies a weighting and filtering function to the data to generate the intended image. The weighting function is dependent upon which slice is selected for reconstruction and viewing and on the pitch at which the data was collected. Therefore, each time a new slice is selected, a completely different weighting function which is pitch and slice dependent, has to be determined and applied to the acquired data and the weighted projection data has to be re-filtered again to generate a desired image.
0018While helical weighting function may take any of several different forms, an exemplary helical weighting function corresponding to a single slice image at a Z axis location Z<b>1</b> typically includes a triangle having a value of one at a triangle apex Z<b>1</b> location and tapering off to either side thereof down to zero.
0019Complicating matters, according to some diagnostic techniques it is advantageous to generate a two dimensional image corresponding to a “thick slice” through a ROI or a thick slice of interest (TSOI). For instance, in some cases it may be advantageous to generate a two dimensional image of a 10 mm thick volume through a ROI. Algorithms to generate a “thick image” have to combine data from several different two dimensional slice images through the TSOI. Early algorithms that used helical data to generate a thick image first generated a plurality of separate thin slice images through the TSOI using standard weighting, combining, filtering and back projection techniques and then combined the separate slice images using one of several different “Z-smoothing” functions that weight data from each image generally as a function of distance from a central imaging plane that bisected the TSOI.
0020In addition to being extremely slow, these early techniques were cumbersome and difficult to use as several imaging parameters had to be selected by a system operator that affected final image quality and often the only way to determine if optimal parameters had been selected was to generate and observe various characteristics of resulting images. For instance, some important parameters include image artifacts, noise, the well known slice sensitivity profile (SSP: i.e., response of the detector to a small homogeneous object as a function of the object position along the Z axis) and related full width at half maximum measurement (FWHM: i.e., full width of the SSP at half the maximum amplitude of the SSP), etc. Where the resulting image characteristics were unacceptable (e.g., excessive noise occurred, etc.), the operator had to alter the imaging parameters, regenerate images corresponding to the new parameters and then observe the images to determine if acceptable characteristics resulted.
0021One of the most important thick image imaging parameters is the number N of slice images (i.e., TSOI slice images) through the TSOI that are combine to generate the thick image. Ideally the number N should be as small as possible so that the processing time required to generate the thick image is minimized. However, if the number of slice images combined to generate a thick image is to small, the shape of the SSP becomes irregular making it very difficult to measure slice thickness or the FWHM. In addition, if the number of combined images is to small the resulting image may have some irregularities and may not actually provide a true representation of the anatomical structures within the TSOI.
0022Two other well known system parameters that are important in the case of thick image generation include a Z-smoothing factor zsf and an image weighting factor kw that are typically set during a commissioning process by iterative adjustment and as a function of resulting image characteristics. Several optimization schemes have been developed to optimize factors zsf and kw and any of those schemes may be employed in conjunction with the present invention. See for instance, U.S. Pat. No. 6,295,331 entitled “Methods And Apparatus For Noise Compensation In Imaging Systems” which issued on Sep. 25, 2001 and U.S. Pat. No. 6,173,029 entitled “Higher Order Detector Z-Slope Correction For A Multislice Computed Tomography System” which issued on Jan. 9, 2001, and which are assigned to the assignee of the present invention.
0023Recently algorithms have been developed that skip the intermediate processes associated with generating separate slice images through a TSOI and instead, after a TSOI has been selected by an operator, weight and combine helical data to directly generate a thick image corresponding to the TSOI. To this end, after factors zsf and kw have been optimally set, a TSOI has been selected and the number N of slice images through the TSOI to be combined has been selected, a processor identifies Z-smoothing weights for each slice image and combines the Z-smoothing weights and helical weights for each image to generate a thick image weighting function corresponding to an entire helical data sub-set that is subsequently used to generate the thick image.
0024Because a typical slice image helical weighting function extends along the Z-axis and often the number of TSOI slice images to be combine to generate a thick image requires spatially close slice images, often the helical weighting functions corresponding to adjacent TSOI slice images overlap. Overlapping weighting functions along with hardware constraints have caused, prior processes of combining helical slice weighting functions to be relatively computationally complex requiring various reading, adding and writing steps.
0025To this end, exemplary hardware employed to apply z-smoothing weights and combine overlapping helical weighting functions to generate a thick image weighting function includes a processor having first and second blocks of internal memory where first and second functions to be added together have to be stored in the separate first and second blocks, respectively.
0026With the limited hardware architecture described above, assume that each two adjacent weighting functions corresponding to four adjacent slice images overlap along a range of gantry angles. In this case, prior algorithms to apply z-smoothing weights to each of the first and second functions and then add the functions together included applying the z-smoothing weight to the first helical weighting function and storing the resultant in the second block and then applying the z-smoothing weight to the second helical weighting function and storing the resultant in the first block. Thereafter, to add the first two helical weighting functions together included, for each gantry angle β corresponding to either the first or second helical weighting function, reading a first weight corresponding to the first weighting function from the second block, reading a second weight corresponding to the second weighting function from the first block, adding the first and second weights together and then writing the summed weight to a final weighting array. The final array is stored within the first block. This four step process had to be repeated for every gantry angle β corresponding to at least one of the first and second weighting functions.
0027Thereafter, to apply a z-smoothing weight to the third helical weighting function and add the resultant to the final (i.e., summed) weighting function a z-smoothing weight corresponding to the third image was applied to the function in the first block and the resultant was restored in the first block. Thereafter, for each gantry angle corresponding to either the original second weighting function or the third weighting function, the algorithm included reading a first weight corresponding to the final weighting function, reading a second weight corresponding to the third weighting function from the first block, adding the first and second weights together and then writing the summed weight to a final weighting array. Once again. this four step process had to be repeated for every gantry angle corresponding to at least one of the second and third weighting functions. A similar process had to be performed to apply z-smoothing weight to the fourth helical weighting function and add the resultant to the final weighting function.
0028While four process cycles may not, at first blush, appear to be extremely burdensome, when there are a massive number of such combinations, the combined periods have been known to cause delays as long as several seconds between thick slice selection and image presentation. While several seconds may not seem extremely time consuming where only a single thick slice image is required, often system operators prefer to select different thick images for display in rapid succession so that various portions of the ROI can be observed during an imaging session. In these cases even a few seconds can seem like an eternity to a system operator attempting to quickly cycle through images to identify a specific anatomical phenomenon.
0029Thus, it would be advantageous to have a system that could help a system operator optimize various system parameters associated with thick image processing thereby reducing the number of iterations required to generate an acceptable image and reducing uncertainty regarding whether or not a final image is the best possible image and that could speed up the processing time required to generate a thick image after a TSOI has been selected.
SUMMARY OF THE INVENTION
0030It has been recognized that the process performed by a reconstructor processor for combining a helical weighting algorithm and detector row specific Z-smoothing weights (i.e., scalars) can be streamlined to reduce the processing time and hence the time between TSOI selection and presentation of a corresponding image. More specifically, it has been recognized that often when two weighting functions are being added, only a sub-range of gantry angles between the two weighting functions overlap and therefore it is not necessary to perform the addition step of the process for the gantry angles that do not overlap. By simply eliminating the addition steps when not required, processing time is reduced appreciably.
0031Moreover, it has been recognized that after certain operating parameters have been optimally set during a commissioning procedure, other parameters may automatically be identified by a processor thereby reducing the guess work associated with complete optimization. More specifically, after optimal z-smoothing factor zsf has been set using any of several known algorithms, the optimal number of slice images that should be combined to generate a thick image may be determined as a function of the z-smoothing factor zsf.
0032These and other objects, advantages and aspects of the invention will become apparent from the following description. In the description, reference is made to the accompanying drawings which form a part hereof, and in which there is shown a preferred embodiment of the invention. Such embodiment does not necessarily represent the full scope of the invention and reference is made therefore, to the claims herein for interpreting the scope of the invention.
BRIEF DESCRIPTION OF THE DRAWINGS
0033<figref idref="DRAWINGS">FIG. 1</figref> is a perspective view of a CT apparatus used to practice the present invention which includes a detector array having rows and columns of detector elements and fan beam source;
0034<figref idref="DRAWINGS">FIG. 2</figref> is a block diagram of CT control system which may be used to control the CT apparatus of FIG. <b>1</b> and which is useful for the purposes of practicing the present invention;
0035<figref idref="DRAWINGS">FIG. 3</figref> is a graph illustrating two exemplary helical weighting functions and an exemplary overlapping range β<sub>lap </sub>corresponding to the two functions;
0036<figref idref="DRAWINGS">FIG. 4</figref><i>a </i>is a schematic illustrating processor data manipulation at one instant during a weight summation process and <figref idref="DRAWINGS">FIG. 4</figref><i>b </i>is a graph corresponding to the graph of <figref idref="DRAWINGS">FIG. 4</figref><i>a</i>, albeit illustrating the content of an intermediate thick image weighting function array w<sub>iti</sub>(β) at one instant during a weight summation process;
0037<figref idref="DRAWINGS">FIG. 5</figref><i>a </i>is similar to <figref idref="DRAWINGS">FIG. 4</figref><i>a</i>, albeit illustrating another instant during a summation process;
0038<figref idref="DRAWINGS">FIG. 6</figref><i>a </i>is similar to <figref idref="DRAWINGS">FIG. 4</figref><i>a</i>, albeit illustrating another instant during a summation process;
0039<figref idref="DRAWINGS">FIG. 7</figref><i>a </i>is similar to <figref idref="DRAWINGS">FIG. 4</figref><i>a</i>, albeit illustrating another instant during a summation process;
0040<figref idref="DRAWINGS">FIGS. 8</figref><i>a </i>and <b>8</b><i>b </i>are similar to <figref idref="DRAWINGS">FIGS. 4</figref><i>a </i>and <b>4</b><i>b, </i>albeit illustrating another instant during a summation process;
0041<figref idref="DRAWINGS">FIG. 9</figref><i>a </i>is similar to <figref idref="DRAWINGS">FIG. 4</figref><i>a</i>, albeit illustrating another instant during a summation process;
0042<figref idref="DRAWINGS">FIGS. 10</figref><i>a </i>and <b>10</b><i>b </i>are similar to <figref idref="DRAWINGS">FIGS. 4</figref><i>a </i>and <b>4</b><i>b, </i>albeit illustrating another instant during a summation process;
0043<figref idref="DRAWINGS">FIG. 11</figref> is a flow chart illustrating a general z-smoothing method;
0044<figref idref="DRAWINGS">FIG. 12</figref> is a schematic diagram illustrating a processor and other hardware employed to carry out the summing methods of the present invention;
0045<figref idref="DRAWINGS">FIG. 13</figref> is a flow chart illustrating a portion of the flow chart in <figref idref="DRAWINGS">FIG. 11</figref> in greater detail; and
0046<figref idref="DRAWINGS">FIG. 14</figref><i>a </i>is a schematic diagram illustrating a helical data subset corresponding to a gantry scan range for the center detector in a detector row during a half scan required to generate a single thin slice image while <figref idref="DRAWINGS">FIG. 14</figref><i>b </i>is a schematic diagram illustrating a data subset corresponding to a gantry scan range for the center detector in a detector during a scan required to generate a thick image using a z-smoothing function.
DESCRIPTION OF THE PREFERRED EMBODIMENTS
0047A. Hardware
0048Referring now to <figref idref="DRAWINGS">FIG. 1</figref>, a CT scanner for use with the present invention includes a gantry <b>20</b> having an opening (i.e., defining an imaging area) supporting an x-ray source <b>10</b> oriented to project a fan beam <b>40</b> of x-rays along the beam axis <b>41</b> through a patient <b>42</b> to a supported and opposed detector array <b>44</b>. The gantry <b>20</b> rotates to swing the beam axis within a gantry plane <b>38</b> defining the x-y plane of a Cartesian coordinate system. Rotation of the gantry <b>20</b> is measured by beam angle β from an arbitrary reference position within the gantry plane <b>38</b>.
0049A patient <b>42</b> resets on a table <b>46</b> which may be moved along a translation axis <b>48</b> aligned with the Z-axis of the Cartesian coordinate system. Table <b>46</b> crosses gantry plane <b>38</b> and is radio-translucent so as not to interfere with the imaging process.
0050The x-rays of the fan beam <b>40</b> diverge from the beam axis <b>41</b> within the gantry plane <b>38</b> across a transverse axis <b>50</b> generally orthogonal to both the beam axis <b>41</b> and the translation axis <b>48</b> at a fan beam angle γ. The x-rays of beam <b>40</b> also diverge slightly from the beam axis <b>41</b> and the gantry plane <b>38</b> across the translation axis <b>48</b>. Referring also to <figref idref="DRAWINGS">FIG. 3</figref>, a maximum beam angle γ is identified by symbol Γ.
0051After passing through patient <b>42</b>, the x-rays of the fan beam <b>40</b> are received by detector array <b>44</b> which has multiple columns of detector elements <b>18</b>′. The detector elements <b>18</b>′ in exemplary array <b>44</b> are arranged in eight rows (i.e., array <b>44</b> is an eight slice detector) extending along the traverse axis <b>50</b> that subdivide array <b>44</b> along the Z-axis and a plurality of columns extending along Z or translation axis <b>48</b>. The width of detector array <b>44</b> is measured along Z-axis <b>48</b>. The surface of detector array <b>44</b> may be planar or may follow a section of a sphere or cylinder having a center at focal spot <b>26</b> or alternatively at the system isocenter.
0052The detector elements <b>18</b>′ each receive x-rays and provide intensity measurements along separate rays of the fan beam <b>40</b>. Each intensity measurement describes the attenuation via a line integral of one fan beam ray passing through a portion of volume <b>43</b> of patient <b>42</b>. The dimension of volume <b>43</b> along Z-axis <b>48</b> is greater than the Z-axis width of eight slice array <b>44</b>.
0053Referring to <figref idref="DRAWINGS">FIGS. 1 and</figref>. <b>2</b>, an exemplary control system for controlling the CT imaging system of <figref idref="DRAWINGS">FIG. 1</figref> includes gantry associated control modules collectively identified by numeral <b>52</b>, a table motor control <b>58</b>, slip rings <b>64</b>, a central processing computer <b>60</b>, an operator's console <b>65</b> and a mass storage device <b>66</b>. Modules <b>52</b> include an x-ray control <b>54</b>, a gantry motor control <b>56</b>, a data acquisition system <b>62</b> and an image reconstructor <b>68</b>. X-ray control <b>54</b> provides power and timing signals to the x-ray source <b>10</b> to turn it on and off as required under the control of a computer <b>60</b>. Gantry motor control <b>56</b> controls the rotational speed and position of the gantry <b>20</b> and provides information to computer <b>60</b> regarding gantry position. Data acquisition system <b>62</b> samples and digitizes intensity signals from the detector elements <b>18</b>′ of detector array <b>44</b> provides the digitized signals in the form of helical data row views to computer <b>60</b> for storage in mass storage device <b>66</b>. Reconstructor <b>68</b> is linked to computer <b>60</b> for receiving slice image data there from and back projects the received data to, as its label implies, construct a slice image for viewing or that can be manipulated in some other manner.
0054Each of the above modules is connected to associated gantry mounted components via slip rings <b>64</b> and is also linked to computer <b>60</b> for control purposes Slip rings <b>64</b> permit gantry <b>20</b> to rotate continuously through angles greater than 360° to acquire projection data.
0055The speed and position of table <b>46</b> along translation axis <b>48</b> is controlled by computer <b>60</b> by means of table motor control <b>58</b>. In addition, computer <b>60</b> runs a pulse sequencing program to perform the inventive data processing method as described in more detail below. Computer <b>60</b> receives commands and scanning parameters via operator console <b>65</b> that generally includes some type of visual interface device (e.g., a CRT display) and one or more input devices (e.g., a keyboard, a mouse controlled display cursor, etc.). Console <b>65</b> allows an operator to enter parameters for controlling a data acquiring scan and to display constructed image and other information from computer <b>60</b>.
0056Mass storage device or memory <b>66</b> provides a means for storing operating programs for the CT imaging system, as well as image data for future reference by the operator. Both computer <b>60</b> and the image reconstructor <b>68</b> have associated electronic memory (not shown) for storing data and pulse sequencing programs.
0057In operation, gantry motor control <b>56</b> brings gantry <b>20</b> up to a rotational speed and table motor control <b>58</b> begins translation of table <b>46</b> along translation axis <b>48</b>. The x-ray control <b>54</b> turns on x-ray source <b>10</b> and projection data is acquired on a continuous basis. The table <b>46</b> translation speed relative to the gantry rotation rate is referred to as the operating “pitch” p. At each beam angle β, the projection data acquired comprises intensity signals corresponding to each detector element <b>18</b>′ at each particular column and row of array <b>44</b>. The collected data is stored in storage device <b>66</b> as helical data including row views correlated by gantry angle β.
0058Referring to <figref idref="DRAWINGS">FIG. 12</figref>, a typical hardware platform <b>200</b> employed to carry out the process of combining z-smoothing scalars and helical weight functions is illustrated and includes a processor <b>202</b> and an external memory <b>204</b> that are linked via a data bus <b>206</b>. Processor <b>202</b> includes a small amount of internal memory <b>208</b> including first and second memory blocks <b>210</b> and <b>212</b>, respectively. Generally, during operation, processor <b>202</b> moves a helical weighting function from external memory <b>204</b> to internal memory block <b>210</b> (i.e., block <b>0</b>) and z-smoothing scalars zw(n) are stored as a small array in block <b>212</b>. The helical weighting function is a function that is generally applicable to each image to be combined to generate a thick image while the z-smoothing scalars zw(n) are image specific. Importantly, block <b>210</b> is a relatively small memory bank which can only store a data array having a size similar to that of the helical weighting function (e.g., approximately 1000 weight values corresponding to different gantry angles β). Processor <b>202</b> manipulates the stored weights in a manner described in more detail below to generate a thick image weighting function w<sub>ti</sub>(β).
0059B. Theory
0060A z-smoothing factor zsf can be optimized during a commissioning process using any of several different optimization processes well known in the art. It has been recognized that an optimal z-smoothing factor zsf can also be expressed as an equation that relates the factor zsf to gantry rotation required to generate a single thin slice image and gantry rotation required to generate a thick image of a TSOI using a z-smoothing mode of operation. More specifically, factor zsf can be expressed as <maths id="MATH-US-00001" num="00001"><math overflow="scroll"><mtable><mtr><mtd><mrow><mi>zsf</mi><mo>=</mo><mrow><mfrac><msub><mi>β</mi><mi>z</mi></msub><msub><mi>β</mi><mi>n</mi></msub></mfrac><mo>-</mo><mn>1</mn></mrow></mrow></mtd><mtd><mrow><mi>Eq</mi><mo>.</mo><mstyle><mtext> </mtext></mstyle><mo></mo><mn>1</mn></mrow></mtd></mtr></mtable></math></maths><img file="US6885764B2_D0001.tif" /><br /> where, referring to <figref idref="DRAWINGS">FIGS. 14</figref><i>a </i>and <b>14</b><i>b, β</i><sub>n </sub>corresponds to half of the maximum gantry rotation angle range spanned by a center detector in any detector row during data acquisition required to generate a thin slice image and β<sub>z </sub>corresponds to the maximum gantry rotation angle range spanned by the center detector of the same row during data acquisition required to generate a thick slice image via z-smoothing. Equation 1 can be rewritten to solve for range β<sub>z </sub>as: <br />β<sub>z</sub>=(<i>zsf+</i>1)β<sub>n</sub> Eq. 2<br /> Angle range β<sub>n </sub>can be expressed as <maths id="MATH-US-00002" num="00002"><math overflow="scroll"><mtable><mtr><mtd><mrow><msub><mi>β</mi><mi>n</mi></msub><mo>=</mo><mrow><mi>k</mi><mo></mo><mfrac><mrow><mn>2</mn><mo></mo><mi>π</mi></mrow><mi>p</mi></mfrac></mrow></mrow></mtd><mtd><mrow><mi>Eq</mi><mo>.</mo><mstyle><mtext> </mtext></mstyle><mo></mo><mn>3</mn></mrow></mtd></mtr></mtable></math></maths><img file="US6885764B2_D0002.tif" /><br /> where k is a function of a z-smoothing algorithm (having a range between 0 and 1) and is set once the z-smoothing algorithm is selected while p is the system pitch used during data acquisition. Both factor k and pitch p are set and therefore known. Thus, where factor zsf can be determined through an optimization process, Equations 2 and 3 can be solved to identify the precise range β<sub>z </sub>over which data must be weighted and combined to generate a thick image.
0061Moreover after factor zsf has been determined, it has been recognized that an optimal number zsn of images to be combined in the z-smoothing mode to generate an image of a TSOI may be determined by solving the following equation: <br /><i>zsn=</i>2<i>f</i><sub>ceil</sub>(<i>zsf−</i>1)+1 Eq. 4<br /> where f<sub>ceil </sub>is a function that increases a decimal value in the parentheses to the next highest integer (e.g., 1.1 becomes 2, etc.). Function f<sub>ceil </sub>generally ensures that the optimal number zsn is odd.
0062Note that herein number zsn is referred to as the “optimal number” of images to be combined to generate a thick image. Nevertheless, according to the present invention zsn images are never generated. Instead, number zsn is used to manipulate weighting functions thereby generating a thick image weighting function w<sub>ti</sub>(β) to be applied to data range β<sub>z </sub>thereby skipping the step of generating zsn images but achieving an identical result.
0063In addition to optimizing the z-smoothing factor zsf during commissioning, a k weight factor kw is also typically adjusted for optimization via any of several different optimization processes known in the art. Thereafter, any of several different z-smoothing functions can be used to identify a separate z-smoothing scalar zw(n) to be applied to each of the zsn images. One exemplary linear z-smoothing weighting function can be expressed as: <br /><i>zw</i>(<i>n</i>)=<i>zw</i>(<i>zsn−</i>1<i>−n</i>)=<i>kw+</i>2<i>n</i>(1<i>−kw</i>)/<i>zsn−</i>1 Eq. 5<br /> where 0<n≦(zsn+1)/2.
0064Referring now to <figref idref="DRAWINGS">FIG. 3</figref>, two z-scaled helical weighting functions w<sub>0</sub>(β) and w<sub>1</sub>(β) are illustrated that correspond to first and second adjacent image. For the purposes of this explanation a full function scan angle range will be identified as β<sub>full</sub>. For example, in <figref idref="DRAWINGS">FIG. 3</figref>, full range β<sub>full </sub>corresponding to function w<sub>0</sub>(β) is identified. Although not separately identified, function w<sub>1</sub>(β) is also characterized by a full range β<sub>full</sub>. An overlapping range β<sub>lap </sub>is common to each function w<sub>0</sub>(β) and w<sub>1</sub>(β).
0065Herein, to simplify this explanation, to identify a specific range of any function, a range identifying convention will be adopted wherein the range will be referenced by two values in parentheses and separated by a comma. The first value identifies the beginning of the range within a corresponding weighting function and the second value identifies the range length in scan angle β. For instance, the overlapping range corresponding to function w<sub>0</sub>(β) in <figref idref="DRAWINGS">FIG. 3</figref> will be specified as w<sub>0</sub>(β<sub>full</sub>−β<sub>lap</sub>, β<sub>lap</sub>) where β<sub>full</sub>−β<sub>lap </sub>is the beginning of the range within function w<sub>0</sub>(β) and β<sub>lap </sub>is the length of the range. Similarly, the overlapping range corresponding to function w<sub>1</sub>(β) in <figref idref="DRAWINGS">FIG. 3</figref> is specified as w<sub>1</sub>(0,β<sub>lap</sub>) where 0 is the beginning of the range with respect to the specific function w<sub>1</sub>(β) and β<sub>lap </sub>is the range length and the non-overlapping range corresponding to function w<sub>1</sub>(β) is specified as w<sub>1</sub>(β<sub>lap</sub>, β<sub>full</sub>−β<sub>lap</sub>) where β<sub>lap </sub>is the beginning of the range within function w<sub>1</sub>(β) and β<sub>full</sub>−β<sub>lap </sub>is the length of the range.
0066Using the convention of specifying ranges described above, an example of how weights are combined according to the present invention is helpful to understanding the present invention. To this end, the present example will illustrate how functions w<sub>0</sub>(β) and w<sub>1</sub>(β) in <figref idref="DRAWINGS">FIG. 3</figref> are combined according to the inventive process. In FIG. <b>3</b> and the following figures, function w<sub>0</sub>(β) and w<sub>1</sub>(β) are shown after scaling by z-smoothing scalars zw(n) has already been performed. In the example that follows, however, scaling is included as part of the process in order to be complete.
0067Referring now to <figref idref="DRAWINGS">FIGS. 4</figref><i>a </i>through <b>10</b><i>b, </i>a series of graphs illustrate a scaling and function combining process consistent with the present invention. While observing the graphs in <figref idref="DRAWINGS">FIGS. 4</figref><i>a</i>-<b>10</b><i>b, </i>it should be recognized that the “a” series graphs (e.g., <figref idref="DRAWINGS">FIGS. 4</figref><i>a</i>, <b>5</b><i>a, </i><b>6</b><i>a, </i>etc.) are only indicative of the process performed by the z-smoothing processor and are not meant to be literal interpretations. For instance, the graph in <figref idref="DRAWINGS">FIG. 5</figref><i>a </i>indicates that data corresponding to a complete function w<sub>1</sub>(β) is accessed by the processor at a specific instant in time when, in reality, only one of the weight values corresponding to the illustrated function w<sub>1</sub>(β) is accessed during a processor cycle. Similarly, the series “b” graphs (e.g., <figref idref="DRAWINGS">FIGS. 4</figref><i>b</i>, <b>8</b><i>b, </i>etc.) illustrate the content of an intermediate memory (e.g., <b>212</b> in <figref idref="DRAWINGS">FIG. 12</figref>) after specific processing intervals and is constructed on a point by point basis as weights are added by processor <b>202</b>.
0068Referring still to <figref idref="DRAWINGS">FIGS. 4</figref><i>a </i>and <b>8</b><i>b, </i>each graph corresponding to the “a” series illustrates data accessed by processor <b>202</b> during a process corresponding to combining weights from functions w<sub>0</sub>(β) and w<sub>1</sub>(β). The “b” series graphs illustrate an intermediate thick image weighting function w<sub>iti</sub>(β) at different stages of the combining process illustrated in associated “a” series graphs. Where there is no b series graph corresponding to an a series graph, the b series intermediate weighting function remains unchanged from the previous b series graph.
0069Referring specifically to <figref idref="DRAWINGS">FIGS. 4</figref><i>a </i>and <b>4</b><i>b </i>and also to <figref idref="DRAWINGS">FIG. 12</figref>, initially, it is assumed a z-smoothing scalar has been applied to function w<sub>0</sub>(β) and the resultant function w<sub>0</sub>(β) is stored as intermediate thick image function w<sub>iti</sub>(β) in an intermediate array in memory block <b>212</b> and that the processor memory is blank. Helical weighting function w<sub>1</sub>(β) (see also <figref idref="DRAWINGS">FIG. 3</figref>) to which a z-smoothing weight has already been applied and to be combined with the intermediate function w<sub>iti</sub>(β) is stored in block <b>210</b>. Referring to <figref idref="DRAWINGS">FIG. 5</figref><i>a</i>, during a first processor cycle, processor <b>202</b> reads a first value of weighting function w<sub>1</sub>(β) from memory <b>210</b>. For instance, in <figref idref="DRAWINGS">FIG. 5</figref><i>a</i>, the first value corresponds to angle β1. Referring also to <figref idref="DRAWINGS">FIG. 6</figref><i>a</i>, during a second processor cycle processor <b>202</b> reads a first value of intermediate thick image function w<sub>iti</sub>(β) that corresponds to angle β<b>1</b>.
0070Referring to <figref idref="DRAWINGS">FIG. 7</figref><i>a</i>, during a third processor cycle, processor <b>202</b> adds the weight values from each of functions w<sub>1</sub>(β) and w<sub>iti</sub>(β) at angle β<b>1</b> to generate an added weight value at angle β<b>1</b>. Referring to <figref idref="DRAWINGS">FIG. 8</figref><i>b</i>, processor <b>202</b> stores the summed value to intermediate thick image function w<sub>iti</sub>(β) at angle β<b>1</b>. Thus, the process described above requires four processor cycles to combine two weight values including reading, reading, adding and storing cycles corresponding to <figref idref="DRAWINGS">FIGS. 5</figref><i>a</i>, <b>6</b><i>a, </i><b>7</b><i>a </i>and <b>8</b><i>b, </i>respectively. This four step process is repeated for each β value in the overlapping range β<sub>lap </sub>(see FIG. <b>3</b>). In an exemplary system, there may be nearly 1000 β values in the β<sub>full </sub>range so that the four step process often must be performed several hundreds of times for each overlapping range β<sub>lap </sub>(e.g., for the range Plap between β<b>1</b> and β<b>2</b> in <figref idref="DRAWINGS">FIG. 6</figref><i>a </i>the process may be performed several hundreds of times).
0071Referring now to <figref idref="DRAWINGS">FIG. 9</figref><i>a</i>, after the overlapping range β<sub>lap </sub>weighting values have been added and stored, processor <b>202</b> next transfers the non-overlapping weight values corresponding to function w<sub>1</sub>(β) from memory block <b>210</b> to block <b>212</b> and maintains the correlation between weight values and angle values. This transfer process requires two processor cycles for each weight value transferred. Thus, as illustrated in <figref idref="DRAWINGS">FIG. 9</figref><i>a</i>, each weight is first read from block <b>210</b> and as illustrated in <figref idref="DRAWINGS">FIG. 10</figref><i>b, </i>each weight is then stored or written to block <b>212</b> so that the weight and β angles are correlated. Once again the weight values are read and stored one at a time so that this two step process is performed several hundreds of time between angles β<b>2</b> and β<b>3</b>.
0072Referring still to <figref idref="DRAWINGS">FIGS. 4</figref><i>a </i>through <b>10</b><i>b, </i>the graph segments illustrated are labeled in a manner consistent with the labeling convention described above (i.e., a first value in parentheses identifies the beginning angle of a segment with respect to a corresponding weight and the second value indicates the length, in β, of the segment). Thus, for instance, in <figref idref="DRAWINGS">FIG. 5</figref><i>a</i>, the illustrated segment w<sub>1</sub>(0,β<sub>lap</sub>) includes the segment of function w<sub>1</sub>(β) starting at the beginning of the function (i.e., at angle 0) and has a length of β<sub>lap</sub>. <figref idref="DRAWINGS">FIG. 7</figref><i>a </i>illustrates that segment w<sub>1</sub>(0,β<sub>lap</sub>) values are added to segment w<sub>iti</sub>(β<sub>full</sub>−β<sub>lap</sub>, β<sub>lap</sub>) values and <figref idref="DRAWINGS">FIG. 8</figref><i>b </i>indicates that the added segments are then stored to complete a summation process. Thereafter, <figref idref="DRAWINGS">FIG. 9</figref><i>a </i>indicates that segment w<sub>1</sub>(β<sub>lap</sub>, β<sub>full</sub>−β<sub>lap</sub>) values are read by processor <b>202</b> and <figref idref="DRAWINGS">FIG. 10</figref><i>b </i>indicates that the segment values are then stored to complete the transfer process.
0073The process described above is repeated for additional images until weighting functions corresponding to all zsn images (i.e., the optimal number of images) have been combined to generate a complete thick image weighting function w<sub>ti</sub>(β) and then the function is applied to imaging data corresponding to optimal range β<sub>z</sub>, the weighted data is filtered and then back projected to generate the requested thick image.
0074C. Operation
0075In operation, referring now to <figref idref="DRAWINGS">FIG. 11</figref>, a general z-smoothing process <b>80</b> is illustrated. At block <b>82</b>, any of several well known optimization commissioning procedures are used to identify the z-smoothing factor zsf and the k-weighting factor kw. Thereafter, at block <b>84</b>, the optimal number of images to be combined to generate a thick slice image is identified by solving Equation 4. Continuing, at block <b>86</b>, the k-weight value kw and the optimal number zsn of images to be combined are plugged into a z-smoothing weighting function. For example, the values may be plugged into Equation 5 to generate the z-smoothing scaling factors zw(n), one scalar for each of the zsn images.
0076At block <b>88</b> the z-smoothing scalars zw(n) are applied to normal helical weights hw thereby generating scaled helical weight functions. Continuing, at block <b>89</b>, the weights corresponding to overlapping weighting functions are combined to generate the thick image weighting function w<sub>ti</sub>(β) and at block <b>91</b> the thick image weighting function w<sub>ti</sub>(β) is applied to the image data.
0077Importantly, memory limitations make it necessary that process steps <b>88</b> and <b>89</b> be performed in a cyclic fashion. To this end, referring again to <figref idref="DRAWINGS">FIG. 12</figref>, memory blocks <b>210</b> and <b>212</b> have limited sizes and therefore cannot accommodate all z-smooth scaled helical weighting functions and a final thick image weighting function w<sub>ti</sub>(β) and the same time. For example, block <b>210</b>, which stores the helical weighting functions, is only large enough to store a single weighting function at a time (i.e., block <b>210</b> can only store an array including less than 1000 weight values at a time and the helical function, at least in one exemplary system, includes 888 weight values). Thus, the scaling and summation processes are interleaved so that only one scaled weight function is stored in block <b>210</b> at a time and only two weight functions, the scaled function in block <b>210</b> and a portion of the intermediate thick image function in block <b>212</b>, are combined at one time and the resulting function is stored as an updated intermediate function w<sub>iti</sub>(β). Therefore, the scaled weighting function in block <b>210</b> is rescaled to reflect a z-smoothing scalar associated with the next image to be combined with the updated intermediate function w<sub>iti</sub>(β) and the newly scaled function in block <b>210</b> is again summed with the intermediate function w<sub>iti</sub>(β) to re-update function w<sub>iti</sub>(β).
0078To perform the scaling process described above, after z-smoothing scalars zw(n) for each image to be combined to generate the thick slice have been identified, the scalars zw(n) are modified so that each can be used to rescale as a function of previous scalars that, during the scaling process, will alter the scaled weighting function stored in block <b>210</b>. For instance, assume that a z-smoothing function is used to determine that an initial helical weighting function must be scaled two times, four times and six times for each of first, second and third images to be combined to generate a thick image, respectively. In this case, the scalars <b>2</b>, <b>4</b> and <b>6</b> are replaced with scalars <b>2</b>, <b>2</b> and <b>1</b>.<b>5</b>, respectively. Thereafter, upon the first scaling, the resulting scaled function in block <b>210</b> is two times the initial weight values. The second scaling scales the function in block <b>210</b> (i.e., the weights that are already scaled by a factor 2) by another factor two thereby storing a function in block <b>210</b> that is four times the initial weight values. The third scaling scales the function in block <b>210</b> (i.e., the weights that are already scaled by a factor of 4) by a factor of 1.5 thereby storing a function in block <b>210</b> that is six times the initial weight values. Thus, proper z-smooth scaling can be accomplished without having to maintain the initial helical weight function in block <b>210</b> every time a new scaling is required.
0079Referring to <figref idref="DRAWINGS">FIGS. 11 and 13</figref>, process steps <b>88</b> and <b>89</b> are illustrated in more detail in FIG. <b>13</b>. To this end, referring also to <figref idref="DRAWINGS">FIG. 12</figref>, after the z-smoothing scalars zw(n) have been calculated at block <b>86</b>, control passes to block <b>102</b> where a counter n is set equal to zero. Next, at block <b>104</b>, processor <b>202</b> moves the initial helical weighting function hw<sub>n</sub>(β) into the first internal memory block <b>210</b>. In addition, at block <b>104</b>, processor <b>202</b> moves the z-smoothing scalars zw(n) into second memory block <b>1</b>.
0080At block <b>106</b>, processor <b>202</b> retrieves the helical weighting function hw<sub>n</sub>(β) weighting values one at a time from within memory block <b>210</b> and scales each one of the values separately by multiplying the value by the corresponding z-smoothing scalar zw(n) and then stores each one of the scaled weighting values back in block <b>210</b> at the location from which the corresponding initial value was retrieved. After all of the weighting values corresponding to the function in block <b>210</b> have been scaled, control passes to block <b>108</b>. At block <b>108</b>, processor <b>202</b> moves the scaled weighting function from block <b>210</b> into the intermediate memory buffer earmarked for the intermediate thick image weighting function w<sub>iti</sub>(β) in block <b>211</b>. To this end, at block <b>108</b>, processor <b>202</b> stores the entire weighting segment w<sub>n</sub>(0, β<sub>full</sub>) to the intermediate function w<sub>iti</sub>(β) locations corresponding to w<sub>iti</sub>(0, β<sub>full</sub>).
0081At block <b>110</b>, counter n is incremented by one and control passes to block <b>112</b>. At block <b>112</b>, counter n is compared to the optimal number of images zns and, where counter n is equal to optimal number zns, control passes to block <b>120</b> where a final thick image weighting function w<sub>ti</sub>(β) is output after which the combining process ends at block <b>122</b>. However, where counter n is less than optimal number zns, control passes to block <b>114</b> where the weighting function in block <b>210</b> is again scaled by a corresponding z-smoothing scalar associated with a next image to be combined to generate the thick image. In the present example, because counter n is one at this juncture, processor <b>202</b> accesses the scaling factor corresponding to the second image to be combined and uses that scalar to scale the weighting function. Once again, as in the case of block <b>106</b>, the scaled weighting function is stored back into memory block <b>210</b> thereby over-writing the previously scaled function.
0082Continuing, at block <b>116</b>, processor <b>202</b> adds the overlapping portions of the intermediate function w<sub>iti</sub>(β) and the scaled second weighting function (i.e., the function stored in block <b>210</b>) and stores the results in the intermediate function w<sub>iti</sub>(β). To this end, referring once again to <figref idref="DRAWINGS">FIGS. 5</figref><i>a </i>through <b>8</b><i>b, </i>the four step process described above is performed for each β value within the overlapping range β<sub>lap</sub>. The adding and storing process in block <b>116</b> is represented by the relationship w<sub>n</sub>(0, β<sub>lap</sub>) to w<sub>iti</sub>(n(β<sub>full</sub>−β<sub>lap</sub>), n(β<sub>full</sub>−β<sub>lap</sub>)+β<sub>lap</sub>)). Next, at block <b>118</b>, processor <b>202</b> stores the non-overlapping portion of the second scaled weighting function in a corresponding range of the intermediate function w<sub>iti</sub>(β) as described above in the context of <figref idref="DRAWINGS">FIGS. 9</figref><i>a</i>, <b>10</b><i>a </i>and <b>10</b><i>b. </i>This storing process is represented in block <b>118</b> by the relationship wn(β<sub>lap</sub>, β<sub>full</sub>) to w<sub>n</sub>((β<sub>full</sub>−β<sub>lap</sub>)+β<sub>lap</sub>, n(β<sub>full</sub>−β<sub>lap</sub>)+β<sub>full</sub>)).
0083After block <b>118</b>, control again passes to block <b>110</b> where counter n is again incremented by 1. The process corresponding to blocks <b>110</b>, <b>112</b>, <b>114</b>, <b>116</b> and <b>118</b> is repeated until all of the helical weighting functions corresponding to the optimal number of images zsn have been scaled and the scaled functions have been added. Thereafter, control passes to block <b>120</b> and then the algorithm ends at block <b>122</b>.
0084It should be understood that the methods and apparatuses described above are only exemplary and do not limit the scope of the invention, and that various modifications could be made by those skilled in the art that would fall under the scope of the invention. For example, while the invention is described above as including identification of an optimal data range β<sub>z </sub>and an optimal number zns of images to be combined to generate a thick image as well as a process for reducing the time required to combine helical weighting functions, it should be appreciated that each of these three concepts is valuable in its own right. For instance, using the inventive process to determine optimal number zsn itself may be valuable in the context of other algorithms to add helical weights. As another instance, the weight adding process clearly is advantageous independent of the other concepts.
Contents7
14 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9 Sheet 10 Sheet 11 Sheet 12 Sheet 13 Sheet 14
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| US8373652B2 | Cited by | United States of America | Search report |
| US2011216956A1 | Cited by | United States of America | Pre-grant |
| US7515682B2 | Cited by | United States of America | Search report |
| US8160346B2 | Cited by | United States of America | Search report |
| US7623691B2 | Cited by | United States of America | Search report |
| US8744159B2 | Cited by | United States of America | Applicant |
| US2006228012A1 | Cited by | United States of America | Pre-grant |
| US10048057B2 | Cited by | United States of America | Applicant |
| US7646842B2 | Cited by | United States of America | Applicant |
| US2007025642A1 | Cited by | United States of America | Pre-grant |
| US2007183564A1 | Cited by | United States of America | Pre-grant |
| US8442356B2 | Cited by | United States of America | Search report |
| US2007071159A1 | Cited by | United States of America | Pre-grant |
| US2006029285A1 | Cited by | United States of America | Pre-grant |
| US7869663B2 | Cited by | United States of America | Search report |
| US2007211845A1 | Cited by | United States of America | Pre-grant |
| US5430783A | Cites | United States of America | Search report |
| US5907593A | Cites | United States of America | Search report |
| US6173029B1 | Cites | United States of America | Search report |
| US6253115B1 | Cites | United States of America | Search report |
| US6275562B1 | Cites | United States of America | Search report |
| US6295331B1 | Cites | United States of America | Search report |
| US6301325B1 | Cites | United States of America | Search report |
2 members in 1 office; this record represents the family
Members2
| Document | Office | Kind | |
|---|---|---|---|
| US2003097063A1 | United States of America | A1 | |
| US6885764B2This record | United States of America | B2 |
9 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Lapsed due to failure to pay maintenance feeLapsedFP | FP | |
| Information on status: patent discontinuationPATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362STCH | STCH | |
| Information on status: patent discontinuationPATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362STCH | STCH | |
| Lapse for failure to pay maintenance feesLapsedLAPS | LAPS | |
| Maintenance fee reminder mailedREMI | REMI | |
| Fee paymentFPAY | FPAY | |
| Fee paymentFPAY | FPAY | |
| Fee payment procedurePAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITYFEPP | FEPP | |
| AssignmentAS | AS |
Numbers
- Publication
- 6885764
- Application
- 9990979
Titles
- English
- High Speed Z-smoothing method and apparatus for CT imaging system
Classification
- CPC, 4
- A61B6/032
- A61B6/4085
- A61B6/027
- G06T12/10
- IPC, 2
- A61B6 03
- G06T11 00