Patent Description:
A CT scanner generally includes an x-ray tube mounted on a rotatable gantry opposite a detector array located across an examination region. The rotatable gantry, and hence the x-ray tube, rotates around the examination region, and the x-ray tube emits radiation that traverses the examination region and a portion of a subject therein. The detector array detects the radiation and generates projection data indicative thereof. A reconstructor reconstructs the projection data and generates 3D volumetric image data representative of the scanned portion of the subject.

Suitable reconstruction algorithms include iterative reconstruction algorithms such as a maximum likelihood iterative reconstruction (MLIR) algorithm, etc., and non-iterative reconstruction algorithms such as filtered back projection (FBP), etc. The 3D volumetric image data includes voxels that are represented in terms of gray scale intensity values corresponding to relative radiodensity for CT (and other material qualities for MR, PET, SPECT, US, respectively). The gray scale values (intensities) reflect the attenuation characteristics of the scanned subject and/or object, and generally show structure such as anatomical structures within the scanned patient or object.

The 3D volumetric image data can be processed to create a 2D projection of the 3D volumetric image data. One such approach is direct volume rendering (DVR). With DVR, each voxel value of the 3D volumetric image data is mapped to a color value, an opacity value, and a gradient value. Once mapped, these properties are then projected from 3D volume space into 2D image space, such as the pixels of a display monitor, by combining them along view rays into rendering pixels. In another application, the 3D volumetric image data from two different image data sets can be processed to register (or spatially align) the data sets. Both applications, volume rendering and registration, are dependent on a noise estimate for the image volume(s). Unfortunately, global noise parameters may not accurately reflect the local voxel noise level, which may degrade the resulting image quality for volume rendering, and the resulting spatial accuracy for registration.

<NPL> disclose the use of transfer for reliable detection of boundaries in CT imagens when hampered by blurring and noise, in particular a method to identify materials that form boundaries and the use of these materials for interactive and semiautomatic design of appropriate transfer functions.

Aspects described herein address the above-referenced problems and others.

The following describes an image data processing approach that takes into account both voxel gray scale intensity values and individual local voxel noise estimates of a 3D volumetric image data set(s). Such processing includes at least one of DVR and image data registration. By taking into account the individual local voxel noise estimates, the approach described herein may improve DVR and/or registration quality, relative to a configuration in which a global noise estimate is instead utilized.

In one aspect, a method for processing image data includes obtaining a first set of 3D volumetric image data. The 3D volumetric image data includes a volume of voxels. Each voxel has an intensity. The method further includes obtaining a local voxel noise estimate for each of the voxels of the volume. The method further includes processing the volume of voxels based at least on the intensity of the voxels and the local voxel noise estimates of the voxels.

In another aspect, an image system comprises a computer processor and memory that stores image data processing instructions. The computer processor executes the image data processing instructions, which causes the computer processor to at least one of: generate a 2D direct volume rendering from first 3D volumetric image data based on voxel intensity and individual local voxel noise estimates of the first 3D volumetric image data, or register second 3D volumetric image data and first 3D volumetric image data based at least one individual local voxel noise estimates of second and first 3D volumetric image data sets.

In another aspect, a computer readable storage medium is encoded with computer readable instructions, which, when executed by a processer, causes the processor to: generate a 2D direct volume rendering from first 3D volumetric image data based on voxel intensity and individual local voxel noise estimates of the first 3D volumetric image.

data, or register second 3D volumetric image data and first 3D volumetric image data based at least one individual local voxel noise estimates of second and first 3D volumetric image data sets.

<FIG> illustrates an imaging system <NUM> such as a computed tomography (CT) scanner. In another embodiments, the imaging system <NUM> includes as positron emission tomography (PET), single photon emission computed tomography (SPECT) and/or other scanner. The illustrated imaging system <NUM> includes a stationary gantry <NUM> and a rotating gantry <NUM>, which is rotatably supported by the stationary gantry <NUM>. The rotating gantry <NUM> rotates around an examination region <NUM> about a longitudinal or z-axis.

A radiation source <NUM>, such as an x-ray tube, is supported by the rotating gantry <NUM> and rotates with the rotating gantry <NUM> about the examination region <NUM>, and emits radiation that traverses the examination region <NUM>. A one or two dimensional radiation sensitive detector array <NUM>, located opposite the radiation source <NUM> across the examination region <NUM>, includes one or more rows of detector pixels arranged along the z-axis. The detector pixels detect radiation traversing the examination region <NUM> and generate a signal or projection data indicative thereof.

A reconstructor <NUM> reconstructs the projection data and generates 3D volumetric image data indicative of the examination region <NUM>. In the illustrated example, the reconstructor <NUM> can employ one or more reconstruction algorithms <NUM>, including, but not limited to an iterative reconstruction algorithm(s) <NUM> and a non-iterative reconstruction algorithm(s) <NUM>. The iterative reconstruction algorithm(s) <NUM> includes algebraic, statistical, and/or other iterative reconstruction algorithm(s). Furthermore, the iterative reconstruction algorithm(s) <NUM> may determine and/or utilize a projection domain and/or an image domain individual local voxel noise estimate for a reconstruction.

By way of example, an iterative image reconstruction algorithm has been based on a cost function with a data comparison term and an image noise penalty term. A general formulation of such a cost function is: Ψ(x) = -L(Ax | y) + β · R(x), where Ψ(x) represents the cost function, L(Ax | y) represents a likelihood term that compares a forward projected image (Ax, where A is a forward projection operator and x is the image) to measured data (y), R(x) represents a roughness penalty term that penalizes noise (or "roughness") in the reconstructed image (x), and β represents a regularization term that controls a strength of the regularization.

With the above iterative image reconstruction approach, individual local voxel noise estimates are determined. An example of such an algorithm is described in Goshen et al. , serial number <CIT>, and entitled "Enhanced image data/dose reduction," the entirety of which is incorporated herein by reference. Other iterative image reconstruction algorithms are also contemplated herein.

A support <NUM>, such as a couch, supports a subject in the examination region <NUM> and can be used to position the subject with respect to x, y, and/or z axes before, during and/or after scanning. A computing system serves as an operator console <NUM>, and includes an output device such as a display and an input device such as a keyboard, mouse, and/or the like. Software resident on the operator console <NUM> allows the operator to control the operation of the system <NUM>. Such control includes selecting an acquisition protocol, initiation scanning, identifying a reconstruction algorithm, etc..

An image data processor <NUM> is configured to process the image data. In one instance, this at least includes reformatting the image data to project the 3D volumetric image data (voxels) into 2D space such as the pixels of a display monitor and/or registering image data sets (e.g., 3D and/or 2D). As described in greater detail below, in one instance, the image data processor <NUM> employs individual local voxel noise estimates with such processing. The individual local voxel noise estimates can be determined by the reconstructor (e.g., during an iterative reconstruction using noise estimates), the image data processor <NUM>, and/or other device.

It is to be appreciated that the image data processor <NUM> can be implemented via one or more computer processors (e.g., a central processing unit (CPU), a microprocessor, etc.) executing one or more computer executable instructions embedded or encoded on computer readable storage medium (which excludes transitory medium) such as physical memory. However, at least one of the computer executable instructions can alternatively be carried by a carrier wave, signal, and other transitory medium and implemented via the one or more computer processors.

<FIG> schematically illustrates a non-limiting example of the image data processor <NUM>. With this example, the image data processor <NUM> receives image data, but no individual local voxel noise estimates, and estimates the individual local voxel noise estimates. The illustrated image data processor <NUM> includes a DVR processor <NUM>, a registration component <NUM>, and a local voxel noise estimator <NUM>.

<FIG> illustrates a variation of <FIG> in which the image data processor <NUM> also receives the individual local voxel noise estimates. With the example, the local voxel noise estimator <NUM> is omitted from the image data processor <NUM> and is located in a device remote and distinct from the image data processor. The local voxel noise estimator <NUM> can be part of the reconstructor <NUM> (<FIG>) and/or other apparatus.

With reference to <FIG>, the DVR processor <NUM>, for each pixel in the 2D projection image, casts a view ray through the 3D volumetric image data. At each step along the view ray, a local color (e.g., a vector), a local opacity (e.g., a scalar), and a local gradient (e.g., a vector) is computed. These three magnitudes are then combined along the view ray into a rendered pixel of the 2D rendering image. A non-limiting example of a suitable combination approach is discussed in <NPL>). Other approaches are contemplated therein.

Briefly turning to <FIG>, a non-limiting example of the DVR processor <NUM> is illustrated. The DVR processor <NUM> includes at least a color determiner <NUM>, an opacity determiner <NUM>, and a gradient determiner <NUM>. Optionally, the DVR processor <NUM> includes another optical property(s) determiner <NUM>. In comparison with conventional approaches, the DVR processor <NUM> computes the local voxel color in the same way as in standard DVR, but a local voxel opacity and a local voxel gradient, in contrast, take into account the individual local voxel noise estimate for each voxel. This is described in greater detail next.

The opacity determiner <NUM> determines an opacity value for a voxel based on the intensity for that voxel and the individual local voxel noise estimate for that voxel. A non-limiting example is discussed next. A local opacity O(x) for a voxel is first computed as in standard-DVR (e.g., from an opacity transfer function). Then, the local opacity O(x) value is multiplied with a confidence value C(x) in the interval [<NUM>. C(x) is derived from the individual local voxel noise estimate σ(x) using a monotonous decreasing function.

According to the invention, such a function is the following Gaussian function: C = exp(- <NUM> * σ<NUM> / σo<NUM>), where σ<NUM> is the local voxel noise estimate and σo<NUM> is the global noise estimate.

The gradient determiner <NUM> determines a gradient value for a voxel based on the intensity of neighboring voxels and the individual local voxel noise estimate for the neighboring voxels. A non-limiting example is discussed next. The local gradient (conventionally computed from central differences in x, y, z) is computed as a weighted linear fit, with the weights given by the local confidence values C(x). The noise-weighted fit can optionally be a weighted line fit in x, y, z, direction separately (axis-parallel 1D-neighborhood), a weighted plane fit in the 3D neighborhood, and/or otherwise. The so-determined gradient vector is then used to control the shading of the rendering. The color determiner <NUM> determines the local color for a voxel without considering the local voxel noise estimate.

The basic underlying concept is that voxels with a high noise level become comparatively transparent in the rendering (i.e. are assigned a lower opacity value) and voxels with low noise level become comparatively opaque (i.e. are assigned a higher opacity value). Additionally, the local gradients are estimated taking into account the relative reliability of neighboring voxels, resulting in improved shading in the resulting rendering. Furthermore, the colors of the rendering are not changed by the local noise estimate.

This rendering technique processes two input volumes (the image data and the individual local voxel noise estimates), and cannot be achieved by simply multiplying the intensity volume with the confidence volume and providing the result as an input into the standard rendering engine.

Returning to <FIG>, the registration component <NUM> registers at least two sets of image data (in 3D and/or 2D space). Briefly turning to <FIG>, the illustrated registration component <NUM> includes at least one of an intensity difference minimization algorithm <NUM>, a mutual information maximization algorithm <NUM>, a local correlation maximization algorithm <NUM>, and/or other similarity measure(s) <NUM>.

With the intensity difference minimization algorithm <NUM>, the registration component <NUM> registers images based on minimization of intensity deviations, for example, using a sum of squared differences. However, instead of minimizing the simple sum of differences in intensities I<NUM> and I<NUM> for all spatial positions x: Σ(I<NUM> - I<NUM>)<NUM>, the registration component <NUM> minimizes the sum of error weighted differences Σ[(I<NUM> - I<NUM>)<NUM> / (σ<NUM><NUM> + σ<NUM><NUM>)], where σ<NUM> and σ<NUM> are the local voxel noise estimates of the two voxels from the two image data sets.

With the mutual information maximization algorithm <NUM>, the registration component <NUM> registers images based on a maximization of mutual information: The mutual information can be computed as a negative entropy ΣH log H of the bivariate histogram H(I1 , I2). For the standard algorithm, this histogram H is incremented by +<NUM> for every incidence of the intensities I1 and I2 at the corresponding locations in the two images. In contrast, the registration component <NUM> increments the bivariate histogram by a locally dependent confidence value c(x). In one instance, c(x) = exp(-<NUM> * (σ<NUM><NUM> + σ<NUM><NUM>) / σo<NUM>) , which weights in an inverse way to the local error estimates σ<NUM>(x) and σ<NUM>(x) of the voxels of the two image data sets, and where σo<NUM> is the global noise estimate.

With the local correlation maximization algorithm <NUM>, the registration component <NUM> registers images based on a maximization of a local correlation. A non-weighted linear correlation (LC) can be computed as shown in EQUATION <NUM>: <MAT> where covi(I<NUM>, I<NUM>) = Σl∈Si I'<NUM>i,lI'<NUM>i,l and l ∈ Si is a local neighborhood. The registration component <NUM> computes the covariance and variances using spatially varying weights w(x) such that covi(I<NUM>, I<NUM>) = Σi∈si w<NUM>,lI'<NUM>i,lw<NUM>,lI'<NUM>i,l / Σl∈Si w<NUM>,lw<NUM>,l. The weights are computed through exp(-<NUM> * r<NUM> / σr<NUM>), depending only on a radial Euclidean distance r = |x-xo| from the center point xo, and then multiplying the spatial weights w(x) with a confidence value c(x). In one non-limiting instance, c(x) = exp(-<NUM> * (σ<NUM><NUM> + σ<NUM><NUM>) / σo<NUM>), which is inverse to the local error estimates σ<NUM>(x) and σ<NUM>(x).

The algorithms <NUM>, <NUM>, <NUM>, and <NUM> operate in a manner as to vary the spatial displacement field until a certain similarity measure is maximized or minimized. The basic underlying concept is that voxels with a higher local noise level have comparatively less influence on the similarity measure and thus on the outcome of the registration, and the voxels with lower local noise level get comparatively more influence. Generally, the algorithms <NUM>, <NUM>, <NUM>, and <NUM> meaningfully accommodate the voxelwise noise level estimation σ(x) in addition to the standard image intensities I(x).

With continuing reference to <FIG>, the local voxel noise estimator <NUM> can employ known and/or other voxel noise estimation approaches. An example of a suitable noise estimation from image data is described in Goshen et al. , serial number <CIT>, and entitled "Enhanced image data/dose reduction. " Other voxel noise estimations are also contemplated herein. This also includes projection domain approaches.

<FIG> illustrates an example method for generating a DVR image based on 3D volumetric image data and noise estimates for the individual voxels.

It is to be appreciated that the ordering of the acts of these methods is not limiting. As such, other orderings are contemplated herein. In addition, one or more acts may be omitted and/or one or more additional acts may be included.

At <NUM>, 3D volumetric image data is obtained.

At <NUM>, optionally, an individual local voxel noise estimate, for each of at least a sub-set of the voxels of the 3D volumetric image data, is obtained.

At <NUM>, if act <NUM> is omitted, the individual local voxel noise estimates are estimated, as discussed herein and/or otherwise.

At <NUM>, a color value for each voxel of the image data is determined. As discussed herein, in one instance, a local color is determined for each voxel without considering the local voxel noise estimate.

At <NUM>, an opacity for each voxel is determined based on the intensity for the voxel and the individual local voxel noise estimate for the voxel, as described herein or otherwise.

At <NUM>, a gradient value for each voxel based on the intensity of neighboring voxels and the individual local voxel noise estimate for the voxel.

At <NUM>, the color value, the opacity value, and the gradient value for each voxel are combined to generate a contribution of the voxel to a projection view ray through the 3D volume.

At <NUM>, voxel-wise contributions along a view ray are combined to generate a rendering pixel for the view ray.

At <NUM>, the composite values are rendered, producing a 2D projection of the 3D volumetric image data.

The above may be implemented by way of computer readable instructions, encoded or embedded on computer readable storage medium, which, when executed by a computer processor(s), cause the processor(s) to carry out the described acts. Additionally or alternatively, at least one of the computer readable instructions is carried by a signal, carrier wave or other transitory medium.

<FIG> illustrates an example method for registering two different image data sets based on two 3D volumetric image data sets and noise estimates for the individual voxels of each of the two 3D volumetric image data sets.

At <NUM>, two 3D volumetric image data sets are obtained. As discussed herein, the two data sets can be from the same modality, but acquired at different points in time, or different modalities.

At <NUM>, optionally, an individual local voxel noise estimate, for each of at least a sub-set of the voxels of both of the 3D volumetric image data, is obtained.

At <NUM>, the two 3D volumetric image data sets obtained are spatially registered based on the individual local voxel noise estimates, as described herein and/or otherwise.

Claim 1:
A method for processing image data, comprising:
obtaining a first set of 3D volumetric image data, which includes a first volume of voxels, each voxel having an intensity;
obtaining a local voxel noise estimate for each of the voxels of the first volume;
processing the volume of voxels based at least on the intensity of the voxels and the local voxel noise estimates of the voxels;
determining a color value for each voxel of the 3D volumetric image data;
determining, for each voxel of the 3D volumetric image data, an opacity value based on the intensity of the voxel and the local voxel noise estimate of the voxel;
determining, for each voxel of the 3D volumetric image data, a gradient value based on intensity values of neighboring voxels and local voxel noise estimates of the neighboring voxels; and
combining, for each voxel, the color value, the opacity value and the gradient value, generating a noise-weighted rendering contribution for each voxel;
characterised in that wherein
determining the opacity value for a voxel includes multiplying an opacity transfer function by a confidence value,
wherein the confidence value is: <MAT>, where C is the confidence value, σ<NUM> is the local voxel noise estimate, and σo<NUM> is a global noise estimate, and C has a value in an interval of zero to one.