This application is based on application No. 2004-237511 filed in Japan, the contents of which are hereby incorporated by reference.
1. Field of the Invention
The present invention relates to a technique of generating an image to be displayed on the basis of volume data.
2. Description of the Background Art
One of methods of visualizing and displaying data showing a three-dimensional structure is volume rendering. The volume rendering is often used for displaying a three-dimensional image that is an image for medical use for the purpose of making a diagnosis in the medical field or the like.
In the image display by the volume rendering, at the time of displaying a region of interest (ROI), conventionally, the ROI and the other region are simultaneously displayed or only the ROI is displayed and the other region is not displayed (for example, Japanese Patent Application Laid-Open No. 2001-52195).
In the case of simultaneously displaying the ROI and the other region, although the relative position of the ROI can be recognized by checking an image of a wide range corresponding to all of volume data, a data computation amount for displaying an image is excessive and long time is required to display an image. On the other hand, when the region other than the ROI is not displayed, an image can be displayed promptly. However, it becomes difficult to grasp the relative position of the ROI in an image of a wide range corresponding to all of the volume data. That is, the technique disclosed in the above publication cannot realize excellent operationality.
The present invention is directed to an image processing device for generating an image for display by volume rendering based on volume data.
According to the present invention, the image processing device comprises: a computing method setting part for setting a first computing method of performing volume rendering with a relatively large computation amount per unit volume and a second computing method of performing volume rendering with a relatively small computation amount; a reading part for storing volume data in a three-dimensional region to be processed into a predetermined storage; a designating part for designating a part of the three-dimensional region as a first region, thereby dividing the three-dimensional region into the first region and a second region as the other region; and a generating part for generating a first display image portion by executing the first computing method on a first data portion corresponding to the first region in the volume data and, also, generating a second display image portion by executing the second computing method on a second data portion corresponding to the second region in the volume data.
Since the region other than the ROI can be also visualized with a small computation amount, the relative position of the ROI can be easily grasped in an image display by volume rendering, and an image can be displayed promptly.
The present invention is also directed to a computer software product including a recording medium on which a computer-readable software program is recorded.
Therefore, an object of the present invention is to provide a technique capable of making a user easily grasp a relative position of an ROI in an image display by volume rendering and capable of displaying an image promptly.
These and other objects, features, aspects and advantages of the present invention will become more apparent from the following detailed description of the present invention when taken in conjunction with the accompanying drawings.
Hereinafter, preferred embodiments of the present invention will be described with reference to the drawings.
(Outline of Image Processing System)
The image processing system 1 comprises a personal computer (hereinafter, simply referred to as “PC”) 2, a monitor 3 and an attachment part 5 which are connected to the PC 2 so as to be able to transmit/receive data, and an operation part 4 by which a user enters various selected articles and the like to the PC 2.
The personal computer 2 comprises a controller 20, an input/output I/F 21, and a storage 22.
The input/output I/F 21 is an interface (I/F) for transmitting/receiving data to/from monitor 3, operation part 4 and attachment part 5, and transmits/receives data to/from the controller 20.
The storage 22 takes the form of, for example, a hard disk, and stores an image processing program PG for realizing volume rendering which will be described later, and the like.
The controller 20 mainly includes a CPU, a ROM 20a and a RAM 20b, and is a part for controlling the components of the PC 2 in a centralized manner. The controller 20 reads the image processing program PG stored in the storage 22 and executes it by the CPU, thereby generating image data to be displayed (also referred to as “display image”) by the volume rendering (which will be described later) and outputting the display image to the monitor 3 via the input/output I/F 21. In such a manner, the PC 2 operates as an image processing device for executing the volume rendering which will be described later, and the like.
The monitor 3 takes the form of, for example, a CRT and visibly outputs the display image generated by the controller 20.
The operation part 4 is constructed by a keyboard, a mouse and the like, and transmits various electric signals to the input/output I/F 21 in accordance with various operations of the user. The attachment part 5 can detachably attach a storage medium such as a memory card 51. Various data, programs and the like stored in the memory card 51 attached to the attachment part 5 can be loaded to the controller 20 and the storage 22 via the input/output I/F 21.
(Method of Volume Rendering)
The image processing system 1 according to the preferred embodiment performs the volume rendering by using ray casting, and uses a special computing method for reducing the computation amount.
First, volume rendering performed by using general ray casting will be described. After that, a special computing method of the volume rendering according to the preferred embodiment will be described.
(Volume Rendering Performed by Using General Ray Casting)
A method called “voxel expression” of expressing an object by a set of very small cubes (or rectangular parallelepipeds) as elements is employed here. The cube (or rectangular parallelepiped) as an element is called a voxel.
Generally, by employing CT (Computer Tomography) scan using X rays, an image of a slice of a human body can be obtained. By shifting the position of the slice and changing the slicing direction in the vertical, horizontal and depth directions, data of an X-ray absorption amount included in voxel data is obtained. The data indicative of distribution of concentration or density in a three-dimensional space is called “volume data”. The volume data is data obtained by dividing a three-dimensional region of an object to be expressed by volume data, that is, a three-dimensional region corresponding to volume data into a plurality of voxels and giving one voxel value (in this case, a value indicative of an X-ray absorption amount) for each of the voxels. The three-dimensional region corresponding to the volume data is to be subjected to the computing process in the volume rendering.
In the volume rendering performed by using the ray casting, for example, as shown in
In the volume rendering performed by using the ray casting, a product between the luminance value and the opacity α in respect to each voxel is added up from the viewpoint SP side along the ray RY. When the sum total of α becomes 1 or the ray RY goes out from the target volume, a process on the target pixel (the pixel correspondence point CP corresponding to the target pixel) is finished, and the result of addition is employed as the value (pixel value) of the target pixel.
When the luminance value and the opacity at the present sampling point are set as c and α, respectively, the relation between an integrated luminance value Cin at the sampling point in the visual line and an integrated luminance value Cout after the sampling point is obtained by the following equation (1).
Cout=Cin(1−α)+Ca (1)
As shown in
As shown in
A method of calculating the luminance “c” and the opacity α of each voxel will now be described.
The luminance value “c” of each voxel is calculated by the following equation (2) based on the Phone shading model by using a normal vector N estimated from the gradient of values of neighboring voxels.
Herein, cp denotes intensity of a light source, and ka, kd, and ks indicate ratios of environment light, diffusion light and specular reflection light components. “d” indicates distance from the plane of projection to a voxel, and k1 and k2 are parameters of depth coding of displaying an image with brightness that decreases with distance from the plane of projection. L denotes a unit direction vector from a voxel to the light source, and H denotes a vector for obtaining regular reflection light and is obtained by the following equation (3) by using a visual line direction vector V indicative of the direction of the ray.
H=(V+L)/|V+L| (3)
The normal vector N of a voxel value f(i, j, k) is obtained by the following equation (4). The voxel value f(i, j, k) is a voxel value in coordinates of x=i, y=j, and z=k of the case where the voxel value f(i, j, k) is expressed in a three-dimensional orthogonal coordinate system of x, y and z.
N=∇f(i, j, k)/|∇f(i, j, k)| (4)
Herein, ∇f(i, j, k) is obtained by the following equation (5) as gradients in the x, y and z directions of the voxel values.
In the case of obtaining a color image as the display image obtained by the rendering, for example, by executing similar calculations using the equations (2) to (5) on the components of R (red), G (green) and B (blue) of the light source, pixel values of R, G and B of the target pixel can be obtained.
In the equations (2) to (5), the light source intensity cp, the ratio ka of the environment light component, the ratio kd of the diffusion light component, the ratio ks of the specular reflection light component, and the parameters k1 and k2 of the depth coding are set to proper values by the user. The unit direction vector L is determined by the positional relation between the position setting of the light source and the position of the voxel, and the visual line direction vector V indicative of the direction of the ray is obtained by the position setting of the viewpoint SP. Since all of values of the right side of the equation (2) are obtained, the luminance value “c” of each voxel can be calculated.
On the other hand, the opacity α can be calculated by the following equation (6).
α=αn+1(f−fn)/(fn+1−fn)+αn(fn+1−f)/(fn+1−fn) (6)
Herein, f(i, j, k) is simply indicated as “f”, fn denotes the minimum value of the voxel value in the range of voxel values to which opacity is given and fn+1 denotes the maximum value of the voxel value in the range of the voxel values to which opacity is given. In addition, αn denotes opacity when the voxel value is fn, and αn+1 denotes opacity when the voxel value is fn+1. The opacity is obtained by the equation (6) when the relation of “fn<f<fn+1” is satisfied. When the relation of “fn<f<fn+1” is not satisfied, α is set to zero (α=0).
(Volume Rendering According to the Preferred Embodiment)
In step S11, a preparing operation is performed and the program advances to step S12. In the preparing operation, operations similar to the operations shown in step S1 to S3 in
In step S12, a region of interest (ROI) is projected on the plane of projection to generate an ROI map. The program advances to step S13.
The plane of projection has pixel correspondence points corresponding to pixels of the display image finally generated, and is set according to various operations on the operation part 4 by the user, the image processing program PG, or the like. The viewpoint of emission of the ray is similarly set according to various operations on the operation part 4 by the user, the image processing program PG, or the like.
The region of interest (ROI) is a region the user particularly wishes to observe with attention and a region of a part which is desired to be displayed more vivid than the other region in an image displayed on the basis of the finally generated display image in the three-dimensional region corresponding to the volume data. The ROI is designated by the controller 20 in accordance with various operations on the operation part 4 by the user, the image processing program PG, or the like.
When a ray is emitted from a viewpoint so as to pass through the pixel correspondence points on the plane of projection, the ROI map is data indicative of coordinates of the pixel correspondence points through which the ray incident on the ROI passes (hereinafter, also referred to as “ROI correspondence points”) among all of pixel correspondence points on the plane of projection.
In step S13, one target pixel, that is, one pixel correspondence point on the plane of projection is designated, and the program advances to step S14. In step S13, the pixel correspondence point at which a pixel value is calculated for generating a display image is designated as a target pixel. Each time program returns to step S13 from step S17 which will be described later, one pixel correspondence point is designated. For example, the pixel correspondence point is designated sequentially from the pixel correspondence point in the upper left position of the plane SC of projection shown in
In step S14, by referring to the ROI map generated in step S12, whether the pixel correspondence point designated in step S13 is an ROI correspondence point or not. If the pixel correspondence point is an ROI correspondence point, the program advances to step S15. If the pixel correspondence point is not an ROI correspondence point, the program advances to step S16.
In step S15, the pixel value of the target pixel presently designated is calculated by the above-described volume rendering performed by using general ray casting, and the program advances to step S17. At this time, only sampling points at predetermined intervals along a ray, which are included in the ROI are sampled. That is, regions on the front and rear sides of the ROI (that is, the region out of the ROI) along the ray passing the ROI in a three-dimensional region corresponding to volume data are not sampled.
As described above, in step S15, with respect to all of designated target pixels (pixel correspondence points corresponding to target pixels), the pixel values of the target pixels corresponding to the ROI are calculated on the basis of the volume data (also referred to as “first data portion”) of the ROI by a computing method (hereinafter, also referred to as “normal computing method”) for sampling volume data at predetermined intervals along a predetermined visual line. As a result, a display image of the ROI (also referred to as “first display image portion”) is generated.
In step S16, the pixel values of the target pixels presently designated are calculated by a simplified computing method, and the program advances to step S17. The simplified computing method herein is a computing method for calculating a pixel value in accordance with the volume rendering performed by general ray casting for each fixed pixel intervals (for example, every four pixels and the like).
More concretely, for example, with respect to a region constructed by pixel correspondence points other than ROI correspondence points on the plane of projection, when the pixel value of one pixel correspondence point (that is, target pixel) is calculated in accordance with the volume rendering performed by using general ray casting, the same pixel value is employed for total 16 pixels of four pixels on the right side of the target pixel as the upper left reference whose pixel value is calculated by four pixels below the target pixel. In other words, pixel values are calculated in accordance with the volume rendering performed by using general ray casting every four pixels in the vertical and horizontal directions. For skipped pixels between the pixels, the calculated pixel value of the neighboring pixel is employed. That is, as the pixel value of a target pixel (also referred to as “pixel not to be rendered”) other than a target pixel (also referred to as “pixel to be rendered”) having a pixel value calculated in accordance with the volume rendering performed by using general ray casting, the calculated pixel value of the pixel to be rendered in the vicinity of the pixel not to be rendered is employed.
On the basis of volume data (also referred to as “second data portion”) of a region out of the ROI (also referred to as “ROI outside region”) in the three-dimensional region corresponding to volume data, the pixel values of pixels corresponding to the ROI outside region are calculated by the simplified computing method. As a result, a display image outside of the ROI region (referred to as “second display image portion”) is generated.
As described above, in the simplified computing method, a small number of target pixels obtained by reducing the number of all of pixels (that is, a pixel region) corresponding to a display image except for the ROI in accordance with a predetermined rule (rule of picking up one pixel out of the total 16 pixels of 4 pixels in the vertical direction by 4 pixels in the horizontal direction) are subjected to sampling at predetermined intervals along a predetermined visual line on volume data, thereby calculating the pixel values of the resultant small number of target pixels. Consequently, the sampling on volume data is performed on target pixels (pixels to be rendered) which exist at relatively low density in a display image in the simplified computing method as compared with the normal computing method. That is, the computation amount on a three-dimensional region corresponding to the volume data in the simplified computing method employed in step S16 is relatively smaller than that in the normal computing method employed in step S15 of the operation flow. In other words, the simplified computing method performs volume rendering per unit volume with a computation amount smaller than that of the normal computing method.
In step S17, whether all of pixel correspondence points on the plane of projection have been designated or not is determined. If NO, the program returns to step S13 and repeats the processes from step S13 to step S17 until all of pixel correspondence points are designated. If YES, the program advances to step S18.
In step S18, display image data (image for display) is generated on the basis of the pixel values calculated in steps S15 and S16 and output to the monitor 3. After that, the program advances to step S19. By outputting the display image data to the monitor 3, a display image based on the display image data is visibly output (displayed) on the monitor 3.
Therefore, in the operation flow, the computing method is switched and selected between the normal computing method and the simplified computing method. In accordance with the computing method selected at each of the stages and a designated ROI, an image for display is generated on the basis of volume data by volume rendering.
As described above, the pixel value of an ROI correspondence point is calculated in accordance with the volume rendering performed by using the general ray casting, and the pixel values of the other pixel correspondence points are calculated by the simplified method. Consequently, as shown in
Referring again to
In step S19, whether the next ROI is determined by various operations on the operation part 4 by the user or not is determined. Until the next ROI is designated, determination in step S19 is repeated. When the next ROI is designated, the program returns to step S12. By the processes of steps S12 to S19, an image for display is generated on the basis of the next ROI, and a display image is displayed on the monitor 3.
Although not shown, when end of the volume rendering operation in the image processing system 1 is selected by various operations of the user on the operation part 4, the operation flow shown in
As described above, in the image processing system 1 according to the preferred embodiment of the present invention, at the time of generating an image for display on the basis of volume data by the volume rendering, the ROI as a part of the three-dimensional region corresponding to the volume data is designated. The normal computing method of generating an image for display of the ROI and the simplified computing method of generating an image for display of the region out of the ROI are set so that the computation amount of the simplified computing method is relatively smaller than that of the normal computing method. Consequently, volume data in the region out of the ROI can be visualized with a small computation amount. As a result, in an image display by volume rendering, the relative position of the ROI in the three-dimensional region corresponding to the volume data can be easily visually grasped by the user, and prompt image display can be also achieved.
In the simplified computing method of generating an image for display of the region out of the ROI, at the time of performing sampling at predetermined intervals along a predetermined visual line on the volume data, pixel values of pixels which exist at relatively low density in the image for display as compared with that in the normal computing method for generating an image for display of the ROI are calculated. By employing such a configuration, although an image of the region out of the ROI becomes rough, an image for display in the wide region also including the region out of the ROI can be generated with a small computation amount. As a result, an image for display in which the relative position of the ROI in the three-dimensional region corresponding to the volume data can be easily visually grasped by the user can be displayed promptly.
Further, for the region out of the ROI, as pixel values other than the pixels to be rendered, pixel values calculated on pixels to be rendered around the ROI are employed. With such a configuration, although the picture quality deteriorates, a relatively natural image for display without a pixel drop can be generated. Consequently, the relative position of the ROI in the three-dimensional region corresponding to the volume data can be visually easily grasped by the user.
(Modifications)
Although the preferred embodiment of the present invention has been described above, the present invention is not limited to the above description.
For example, in the above preferred embodiment, pixel values are calculated in accordance with the volume rendering performed by using the general ray casting at predetermined pixel intervals such as every four pixels by the simplified computing method. The present invention is not limited to the computing method, but pixel values may be calculated in accordance with volume rendering performed by using the general ray casting at predetermined pixel intervals such as every two pixels.
The intervals of pixels having pixel values calculated by the method of volume rendering performed by using the general ray casting may be properly changed by various operations on the operation part 4 by the user. With such a configuration, the user can adjust the balance between the picture quality and the display speed of a display image in the region out of the ROI.
In the above preferred embodiment, by the setting of performing the sampling at predetermined intervals along a predetermined visual line on volume data on pixels provided at relatively low density in the region out of the ROI, the computation amount of the simplified computing method is relatively smaller than that of the normal computing method. However, the present invention is not limited to the setting. A setting may be made so that the computation amount of the simplified computing method for generating an image for display of the region out of the ROI becomes smaller than that of the normal computing method for generating an image for display of the ROI by employing another simplified computing method.
Three simplified computing methods will be described below as the other simplified computing methods.
(Example 1 of Simplified Computing Method)
In the case of performing sampling at sampling points at predetermined intervals H along a ray emitted via pixel correspondence points on a plane of projection from an arbitrary view point in a normal computing method on voxel data in an ROI, as a simplified computing method on the voxel data in the region out of the ROI, a computing method of performing sampling at sampling points at predetermined intervals H2 wider than the predetermined intervals H along the ray emitted via the pixel correspondence points on the plane of projection from the arbitrary view point may be employed.
Specifically, the normal computing method and the simplified computing method in this case are similar to each other with respect to the point that pixel values of an image for display are calculated by performing sampling at predetermined intervals along a predetermined visual line on volume data. However, the distance between neighboring sampling points (predetermined interval) of the simplified computing method is relatively longer than that of the normal computing method. By such a setting, the number of sampling points in the simplified computing method is relatively smaller than that of the normal computing method. Consequently, the computation amount of the three-dimensional region corresponding to the volume data of the simplified computing method becomes relatively smaller than that of the normal computing method.
As described above, the pixel value of an ROI correspondence point is calculated by the normal computing method, and the pixel values of the other pixel correspondence points are calculated by the simplified computing method. In the display image DG2 shown in
By such a display mode, in the region of the thick frame RF2, the picture quality is excellent, and a clear image is obtained. In the region out of the thick frame RF2, although the picture quality deteriorates, the user can also see wide around the ROI. That is, the user can grasp visually easily the relative position of the ROI in the three-dimensional region corresponding to the volume data. With respect to a region constructed by pixel correspondence points other than the ROI correspondence points, the calculation amount by volume rendering requiring a large calculation amount can be reduced by employing the simplified computing method. Thus, an image for display can be generated more quickly, and a display image based on the image for display can be displayed.
By employing the configuration, although the picture quality deteriorates in the region out of the ROI, computation for generating an image can be performed at high speed. As a result, an image in which the relative position of the ROI in the three-dimensional region corresponding to the volume data can be easily visually grasped by the user can be displayed promptly.
(Example 2 of Simplified Computing Method)
In the above preferred embodiment, when operation of volume rendering (operation of generating an image for display) starts, the luminance value and opacity of each voxel are determined in/out of the ROI. The present invention is not limited to the method. For example, in step S15, the luminance value and opacity of each voxel are not calculated in a preparing operation in step S11 in
For example, in step S16, a voxel value corresponding to each sampling point in the region out of the ROI is obtained by linear interpolation from voxel values given to voxels adjacent in eight directions. In the case where the voxel value corresponding to a sampling point lies in a predetermined value range, a predetermined luminance value and predetermined opacity are given to the sampling point. In such a manner, an image for display of the region out of the ROI may be generated.
The computation amount on the luminance value and opacity in any of the simplified computing methods is much smaller than that in the normal computing method. Consequently, the computation amount on a three-dimensional region corresponding to volume data in the simplified computing method is relatively smaller than that in the normal computing method.
With such a configuration, as the display image DG2 displayed on the basis of the generated image for display in an image region R11 of the thick frame RF2, a clear image is obtained by the volume rendering performed by using the general ray casting as shown in
(Example 3 of Simplified Computing Method)
In the above preferred embodiment, when the volume rendering operation (operation of generating an image for display) starts, the luminance value and opacity of each voxel are determined in/out of the ROI. The present invention, however, is not limited to the preferred embodiment. For example, the luminance value and opacity of each voxel are not calculated in the preparing operation in step S11 of
For example, by connecting voxels having voxel values in a predetermined value range on the surface of a triangle or the like, the surface of a predetermined object corresponding to the voxel values in the predetermined value range can be falsely generated. By obtaining the distance (depth value) between the surface of the predetermined object falsely generated and the plane of projection at each of all of pixel correspondence points on the plane of projection, a map indicative of the depth values (hereinafter, also referred to as “depth map”) from the plane of projection to the surface of the predetermined object can be generated. The depth map may be generated in, for example, step S12 in
As described above, by detecting the distance from the plane of projection to the point corresponding to the pseudo surface of an object corresponding to voxel values in the predetermined value range along each of visual lines passing the pixel corresponding points on the plane of projection, a depth map can be generated. In step S16 in
More concretely, for example, it is sufficient to designate a pixel value indicative of red to a pixel correspondence point (that is, a target pixel) having a depth value detected as the farthest (largest) one from the plane of projection, and designate a pixel value indicative of white to a pixel correspondence point (that is, a target pixel) having a depth value detected as the closest (smallest) one from the plane of projection. It is sufficient to designate a pixel value indicative of a color between red and white by linear interpolation to a depth value which is neither maximum nor minimum. In this case, for example, only a pixel value of red is given and the level of the pixel value of red may be properly changed according to the depth value.
With such a configuration, although a mode of displaying an object in the region out of the ROI in accordance with distances is extremely monotonous, the computation amount necessary for generating an image of the region out of the ROI can be largely reduced as compared with that in the normal computing method. As a result, the region out of the ROI can be also visualized with a small computation amount, and an image in which the relative position of the ROI in a three-dimensional region corresponding to volume data is easily visually grasped by the user can be displayed promptly.
Although the volume rendering by using the ray casting was performed in the above preferred embodiment, the present invention is not limited to the method. For example, other volume rendering such as splatting may be performed. That is, the present invention can be applied to cases of generating an image for display on the basis of volume data by volume rendering using various methods.
In the above preferred embodiment, volume data is obtained by using a CT scan with X-rays. The present invention is not limited to the CT scan but volume data may be obtained on the basis of a result of simulation of any of various physical quantity analyses of reflected waves of ultrasonic waves (echo) and the like.
While the invention has been shown and described in detail, the foregoing description is in all aspects illustrative and not restrictive. It is therefore understood that numerous modifications and variations can be devised without departing from the scope of the invention.
Number | Date | Country | Kind |
---|---|---|---|
JP2004-237511 | Aug 2004 | JP | national |