[go: up one dir, main page]

WO2008065586A2 - Improved manipulation of a transfer function for volume rending - Google Patents

Improved manipulation of a transfer function for volume rending Download PDF

Info

Publication number
WO2008065586A2
WO2008065586A2 PCT/IB2007/054741 IB2007054741W WO2008065586A2 WO 2008065586 A2 WO2008065586 A2 WO 2008065586A2 IB 2007054741 W IB2007054741 W IB 2007054741W WO 2008065586 A2 WO2008065586 A2 WO 2008065586A2
Authority
WO
WIPO (PCT)
Prior art keywords
control points
transfer function
editing
multiple control
unit
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
PCT/IB2007/054741
Other languages
French (fr)
Other versions
WO2008065586A3 (en
Inventor
Cornelis P. Visser
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Koninklijke Philips NV
Original Assignee
Koninklijke Philips Electronics NV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Koninklijke Philips Electronics NV filed Critical Koninklijke Philips Electronics NV
Publication of WO2008065586A2 publication Critical patent/WO2008065586A2/en
Publication of WO2008065586A3 publication Critical patent/WO2008065586A3/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T11/002D [Two Dimensional] image generation
    • G06T11/20Drawing from basic elements, e.g. lines or circles
    • G06T11/203Drawing of straight lines or curves
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/08Volume rendering
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/90Dynamic range modification of images or parts thereof
    • G06T5/92Dynamic range modification of images or parts thereof based on global image properties
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20092Interactive image processing based on input by user

Definitions

  • the invention relates to the field of direct volume rendering and more specifically to manipulating a transfer function for direct volume rendering.
  • DVR direct volume rendering
  • Ref. 1 A method for defining and manipulating a transfer function for direct volume rendering (DVR) is described in published patent application document WO 2006/048796 entitled "Visualization of a rendered multi-dimensional dataset", hereinafter referred to as Ref. 1.
  • DVR uses a transfer function, also known as a lookup table, to assign a renderable optical property, e.g. color, opacity (or, equivalently, translucency), and/or emittance, to voxel intensity.
  • the transfer function described in Ref. 1 assigns color values and opacity values to voxel intensities of a multi-dimensional, e.g. three-dimensional (3-D), image dataset.
  • the graph TF is a polyline defined by multiple control points.
  • the horizontal coordinate of each point of the graph represents an intensity value of a range of intensity values.
  • the vertical coordinate of each point of the graph defines an opacity value of a range of opacity values assigned to the intensity value represented by the horizontal coordinate of the point.
  • the color displayed in the background BG at each point of the graph defines the color assigned to the intensity value represented by the horizontal coordinate of the point.
  • the manipulation of the transfer function is done by editing a control point, for example, by moving the control point left, right, up, or down. When a control point is moved, the transfer function graph is changed accordingly. For example, if the transfer function graph is a polyline, the two line segments, whose one end is the moved control point, are modified.
  • a system for editing a transfer function for direct volume rendering comprises: an interaction window unit for creating an interaction window for displaying the multiple control points; a control point unit for defining the multiple control points; a transfer function unit for computing the transfer function based on the multiple control points; a selection unit for selecting a plurality of control points from the multiple control points; and an editing unit for editing the plurality of control points, thereby editing the transfer function computed based on the multiple control points.
  • a user may draw an object in the interaction window.
  • the plurality of control points may be defined based on the object.
  • the user may then transform, e.g. translate or deform, the object.
  • the selected plurality of control points may be translated as a group and/or relative to each other based on the transformation of the object.
  • the object may be a drag-box, drawn by a user in the interaction window.
  • Control points comprised inside the drag-box may be selected as the plurality of control points.
  • the user may reposition the plurality of control points by modifying the drag-box, e.g. by changing the location, width and/or height of the drag-box.
  • the new positions of the plurality of control points may be computed based on the new location and dimensions of the drag- box.
  • any number of control points of the multiple control points may be repositioned by changing the dimension and/or location of the drag-box.
  • the displacement of the control points, based on editing the drag-box may be defined to optimize editing the transfer function for rendering an image of a certain object, e.g. the vertebrae or the heart.
  • a similar set of operations may be defined for an object other than a drag-box.
  • the system of the invention simplifies editing the transfer function.
  • editing the transfer function using the system of the invention, may require relatively fewer user interactions.
  • using the method of the invention it is possible to change opacity values in a sub-range of opacity values while preserving the local shape of the graph of the transfer function.
  • the editing unit comprises a plurality of editing modes for editing the plurality of control points. Each mode may be suitable for editing the transfer function for rendering an image of a different object, e.g. the heart or the vertebrae.
  • selecting and editing the plurality of control points is based on a drag-box. Selecting and editing the control points by using a drag-box is very intuitive.
  • selecting and editing the plurality of control points is based on a line segment between two control points of the multiple control points. All control points in the interaction window, which are comprised between the two ends of the line segment, belong to the plurality of control points. Editing the transfer function may be performed by dragging an end of the line segment.
  • the transfer function is defined as a polyline defined by the multiple control points; or a curve fitted to the multiple control points.
  • a polyline defined by multiple control points comprises line segments, whose ends are two neighboring control points.
  • the polyline defines a graph of a transfer function and thus, the transfer function.
  • Polylines are simple to implement, but are not smooth.
  • a smooth graph of a transfer function may be obtained by fitting a smooth curve to the control points, e.g. a Bezier curve or a B-spline curve.
  • system further comprises a rendering unit for rendering a view of a volumetric image dataset based on the edited transfer function. Rendering a view of a volumetric image dataset based on the edited transfer function provides the user with a feedback on the edited transfer function.
  • system further comprises a histogram unit for computing a histogram for displaying in the interaction window, based on the volumetric image dataset. Visualizing the histogram based on the volumetric image dataset provides the user with clues for editing the transfer function.
  • system according to the invention is comprised in an image acquisition apparatus.
  • system according to the invention is comprised in a workstation.
  • a method of editing a transfer function for direct volume rendering comprises: an interaction window step for obtaining a window input and for creating an interaction window for displaying the multiple control points, based on the window input; a control point step for obtaining multiple control point inputs and for defining the multiple control points, based on the multiple control point inputs; a transfer function step for computing the transfer function, based on the multiple control points; a selection step for obtaining a selection input and for selecting a plurality of control points from the multiple control points, based on the selection input; and an editing step for obtaining an edit input and for editing the plurality of control points, based on the edit input, thereby editing the transfer function computed based on the multiple control points.
  • a computer program product to be loaded by a computer arrangement comprises instructions for editing a transfer function for direct volume rendering, the transfer function being based on multiple control points, the computer arrangement comprising a processing unit and a memory, the computer program product, after being loaded, providing said processing unit with the capability to carry out the following tasks: creating an interaction window for displaying the multiple control points; defining the multiple control points; computing the transfer function, based on the multiple control points; selecting a plurality of control points from the multiple control points; and editing the plurality of control points, thereby editing the transfer function computed based on the multiple control points.
  • Fig. 1 schematically shows a block diagram of an exemplary embodiment of the system
  • Fig. 2 shows an example of a window displaying a graph of the transfer function in the form of a color and opacity map
  • Fig. 3 illustrates a first embodiment of the system, wherein selecting and editing the plurality of control points is based on a drag-box;
  • Fig. 4 illustrates a second embodiment of the system, wherein selecting and editing the plurality of control points is based on a line segment
  • Fig. 5 shows a flowchart of an exemplary implementation of the method
  • Fig. 6 schematically shows an exemplary embodiment of the image acquisition apparatus
  • Fig. 7 schematically shows an exemplary embodiment of the workstation.
  • Fig. 1 schematically shows a block diagram of an exemplary embodiment of the system 100 for editing a transfer function for direct volume rendering, wherein the transfer function is based on multiple control points, the system comprising: an interaction window unit 110 for creating an interaction window for displaying the multiple control points; a control point unit 112 for defining the multiple control points; a transfer function unit 115 for computing the transfer function, based on the multiple control points; a selection unit 120 for selecting a plurality of control points from the multiple control points; and an editing unit 130 for editing the plurality of control points, thereby editing the transfer function computed based on the multiple control points.
  • the exemplary embodiment of the system 100 further comprises the following optional units: a rendering unit 140 for rendering a view of a volumetric image dataset based on the edited transfer function; a histogram unit 150 for computing a histogram for displaying in the interaction window, based on the volumetric image dataset; a control unit 160 for controlling the workflow in the system 100; an input unit 165 for receiving and distributing inputs to the units of the system 100; a memory unit 170 for storing data.
  • a rendering unit 140 for rendering a view of a volumetric image dataset based on the edited transfer function
  • a histogram unit 150 for computing a histogram for displaying in the interaction window, based on the volumetric image dataset
  • a control unit 160 for controlling the workflow in the system 100
  • an input unit 165 for receiving and distributing inputs to the units of the system 100
  • a memory unit 170 for storing data.
  • the first input connector 181 is arranged to receive data coming in from data storage means such as, but not limited to, a hard disk, a magnetic tape, a flash memory, or an optical disk.
  • the second input connector 182 is arranged to receive data coming in from a user input device such as, but not limited to, a mouse or a touch screen.
  • the third input connector 183 is arranged to receive data coming in from a user input device such as a keyboard.
  • the input connectors 181, 182 and 183 are connected to an input control unit 180.
  • the first output connector 191 is arranged to output the data to a data storage means such as a hard disk, a magnetic tape, a flash memory, or an optical disk.
  • the second output connector 192 is arranged to output the data to a display device.
  • the output connectors 191 and 192 receive the respective data via an output control unit 190.
  • the system 100 comprises a memory unit 170.
  • the system 100 is arranged to receive input data from external devices via any of the input connectors 181, 182, and 183 and to store the received input data in the memory unit 170. Loading the input data into the memory unit 170 allows quick access to relevant data portions by the units of the system 100.
  • the input data may comprise, for example, the volumetric image data set.
  • the memory unit 170 may be implemented by devices such as, but not limited to, a Random Access Memory (RAM) chip, a Read Only Memory (ROM) chip, and/or a hard disk drive and a hard disk.
  • the memory unit 170 may be further arranged to store the output data.
  • the output data may comprise, for example, the transfer function data and the rendered image data.
  • the memory unit 170 is also arranged to receive data from and deliver data to the units of the system 100 comprising the interaction window unit 110, the control point unit 112, the transfer function unit 115, the selection unit 120, the editing unit 130, the rendering unit 140, the histogram unit 150, the control unit 160, and the input unit 165, via a memory bus 175.
  • the memory unit 170 is further arranged to make the output data available to external devices via any of the output connectors 191 and 192. Storing the data from the units of the system 100 in the memory unit 170 may advantageously improve the performance of the units of the system 100 as well as the rate of transfer of the output data from the units of the system 100 to external devices.
  • the system 100 may not comprise the memory unit 170 and the memory bus 175.
  • the input data used by the system 100 may be supplied by at least one external device, such as an external memory or a processor, connected to the units of the system 100.
  • the output data produced by the system 100 may be supplied to at least one external device, such as an external memory or a processor, connected to the units of the system 100.
  • the units of the system 100 may be arranged to receive the data from each other via internal connections or via a data bus.
  • the system 100 comprises a control unit 160 for controlling the workflow in the system 100.
  • the control unit may be arranged to receive control data from and provide control data to the units of the system 100.
  • the editing unit 130 may be arranged to send a control data "a plurality of control points are edited" to the control unit 160 and the control unit 160 may be arranged to provide a control data "compute the transfer function" to the transfer function unit 115, requesting the transfer function unit 115 to compute the transfer function.
  • a control function may be implemented in another unit of the system 100.
  • the system 100 comprises an input unit 165 for receiving inputs and distributing them to the units of the system 100.
  • the inputs may comprise a window input to the interaction window unit 110 for creating the interaction window, multiple control point inputs to the control point unit 112 for defining the multiple control points, a selection input to the selection unit 120 for selecting the plurality of control points from the multiple control points, and an edit input to the editing unit 130 for editing the plurality of control points.
  • Fig. 3 illustrates a first embodiment of the system 100, wherein selecting and editing the plurality of control points is based on a drag-box.
  • Fig. 4 illustrates a second embodiment of the system 100, wherein selecting and editing the plurality of control points is based on a line segment.
  • Each Figure shows an interaction window W, a color background BG, and a transfer function graph TF defined by multiple control points.
  • the renderable properties assigned by a transfer function to a voxel are color and opacity.
  • the skilled person will understand, however, that the system of the invention may be used for editing a transfer function which defines other combinations of renderable optical properties, for example, only opacity, or color, opacity and emittance.
  • the interaction window unit 110 of the system 100 is arranged for creating an interaction window.
  • the interaction window is arranged for displaying the multiple control points.
  • Figs. 3 and 4 show an example of an interaction window W for displaying a graph TF of the transfer function in the form of a color and opacity map.
  • the transfer function graph TF is a polyline defined by multiple control points.
  • the transfer function may be a curve fitted to the control points using any useful fitting method, e.g. an interpolation method. Each control point is represented by a small square.
  • the control point unit 112 is arranged for defining the multiple control points.
  • the multiple control points may be defined based on the multiple control point inputs provided by the user of the system 100 by means of a user input device such as a mouse or a trackball.
  • the transfer function unit 115 is arranged for computing the transfer function, based on the multiple control points.
  • the transfer function may be a polyline defined by the multiple control points.
  • a polyline is defined as a linear interpolation of the multiple control points.
  • the transfer function may be a curve fitted to the multiple control points by the transfer function unit 115, using any useful fitting method, e.g. an interpolation method such as a polynomial or spline interpolation method.
  • the graph TF of the transfer function may be displayed in the interaction window W, as illustrated in Figs. 3 and 4.
  • the selection unit 120 of the system 100 is arranged for selecting a plurality of control points from the multiple control points W.
  • the editing unit 130 of the system 100 is arranged for editing the plurality of control points, thereby editing the transfer function computed based on the multiple control points.
  • the selection input and the edit input may be provided by the user of the system 100 by means of a user input device such as a mouse or a trackball.
  • Fig. 3 illustrates a first embodiment of the system 100, wherein selecting and editing the plurality of control points is based on a drag-box B.
  • the drag-box B may be drawn around some control points of the multiple control points as shown in the first picture 31.
  • the points inside the drag-box are grouped to form the selected plurality of control points e.g. on a mouse-button-release event.
  • the control points in the drag-box B may be visualized using e.g. a specific color or shape.
  • the user may now translate the drag-box B by a translation vector in any direction.
  • the plurality of control points inside the drag-box B are translated with the drag- box by the same translation vector.
  • the plurality of control points inside the drag-box B are not displaced relative to each other.
  • the drag-box B cannot be translated beyond the location of any control point outside the drag-box B.
  • the drag-box B and the plurality of control points inside the drag-box are translated to the left. Only two line segments of the graph TF are modified - the segments whose one end is inside the drag-box B and whose other end is outside the drag-box B.
  • the drag-box may be resized.
  • the user has picked a handle H at the top-left corner of the drag-box B and dragged the handle H downwards and to the right.
  • the plurality of control points inside the drag-box B are displaced with the drag-box B in such a way that the ratio between the distance from each control point to each edge of the drag-box B and the length of the other edge of the drag-box B is substantially constant.
  • the drag-box B cannot be expanded beyond the location of any control point outside the drag-box B. Only two line segments of the graph TF are modified - the segments whose one end is inside the drag-box B and whose other end is outside the drag-box B. Fig.
  • FIG. 4 illustrates a second embodiment of the system 100 wherein selecting and editing the plurality of control points is based on a line segment between two control points of the multiple control points.
  • the user may draw a line segment L between two control points.
  • the left end El of the line segment L, the right end E2 of the line segment and all control points having their horizontal coordinate between the horizontal coordinates of the line segment L ends El and E2 are grouped into the plurality of control points.
  • the line segment L is shown in the first picture 41.
  • the line segment L is drawn based on a user input obtained from a user input device such as a mouse or a trackball, for example.
  • the points may be grouped on a mouse-button-release event, for example.
  • the plurality of control points may be visualized using e.g. a specific color or shape.
  • the user may now drag the line segment L in any direction. This results in a translation of the plurality of control points defined by the line segment L.
  • the line segment L cannot be translated beyond the location of any control not comprised in the selected plurality of control points, i.e. the horizontal coordinate of the left end El must be greater than the horizontal coordinate of each control point to the left of the left end El, and the horizontal coordinate of the right end E2 must be smaller than the horizontal coordinate of each control point to the right of the right end E2.
  • the line segment L is translated downwards by a translation vector.
  • the plurality of control points are translated with the line segment L by the same translation vector. Only two line segments of the graph TF are modified - the segment whose one end is the left end El or the right end E2 of the line segment L.
  • the line segment L may be resized and/or rotated.
  • the user has picked the left end El of the line segment L and dragged it upwards.
  • the left end El is moved up.
  • the right end E2 of the line segment L is not moved.
  • the remaining control points of the plurality of control points are weight-translated.
  • the translation vector of each control point of the plurality of control points may be substantially identical to the translation vector of the orthogonal projection of the control point on the line segment L, which line segment is extended (or contracted, for another displacement of an end of the line segment L) linearly.
  • the angle between two polyline segments at each control point may be assigned a bending energy dependent on the angle value, and each line segment of the polyline may be assigned a stretch-contraction energy dependent on the length value of the line segment.
  • the displacement of the angles with vertices at non-end control points of the plurality of control points may be defined by their positions at which the total energy of the plurality of control points is the minimum energy.
  • the total energy of the plurality of control points may comprise the sum of all bending energies of the non-end control points of the plurality of control points plus the sum of all stretch-contraction energies of line segments between the control points of the plurality of control points.
  • the control points cannot be translated in such a way that the resulting polyline is not a function graph in the mathematical sense. This may require adding additional energy terms to the total energy.
  • the editing unit 130 comprises a plurality of editing modes for editing the plurality of control points. Each mode may be optimized for editing a transfer function for rendering an image of an anatomical structure, e.g. the heart or vertebrae.
  • the system 100 further comprises a rendering unit 140 for rendering a view of a volumetric image dataset, based on the edited transfer function.
  • a rendering unit 140 for rendering a view of a volumetric image dataset, based on the edited transfer function.
  • an image may be rendered based on the edited transfer function.
  • the image may be rendered e.g. on an event such as a mouse button release, indicating that the plurality of control points have been edited.
  • the rendered image may be periodically updated based on the edited transfer function.
  • the system 100 further comprises a histogram unit 150 for computing a histogram for displaying in the interaction window W, based on the volumetric image dataset.
  • the histogram HS may be displayed in the interaction widow, as illustrated in Figs. 3 and 4.
  • the units of the system 100 may be implemented using a processor. Normally, their functions are performed under control of a computer program product. During the execution process, the computer program product is normally loaded into a memory, like a RAM, and executed from there. The program may be loaded from a background memory, like a ROM, hard disk, or magnetic and/or optical storage, or may be loaded via a network like the Internet. Optionally, an application-specific integrated circuit may provide the described functionality.
  • Fig. 5 shows a flowchart of an exemplary implementation of the method 500 of editing a transfer function for direct volume rendering, wherein the transfer function is based on multiple control points.
  • the method 500 begins with an interaction window step 510 for obtaining a window input and for creating an interaction window for displaying the multiple control points, based on the window input.
  • the method 500 continues to a control point step 512 for obtaining multiple control point inputs and for defining the multiple control points, based on the multiple control point inputs.
  • the method 500 continues to a transfer function step 515 for computing the transfer function, based on the multiple control points.
  • the method 500 continues to a selection step 520 for obtaining a selection input and for selecting a plurality of control points from the multiple control points, based on the selection input.
  • the method 500 continues to an editing step 530 for obtaining an edit input and for editing the plurality of control points, based on the edit input, thereby editing the transfer function computed based on the multiple control points.
  • the method 500 may terminate. The skilled person will understand that more useful steps may be advantageously implemented and executed by the method 500.
  • Fig. 6 schematically shows an exemplary embodiment of the image acquisition apparatus 600 employing the system 100, said image acquisition apparatus 600 comprising an image acquisition unit 610 connected via an internal connection with the system 100, an input connector 601, and an output connector 602.
  • This arrangement advantageously increases the capabilities of the image acquisition apparatus 600, providing said image acquisition apparatus 600 with advantageous capabilities of the system 100 for editing a transfer function for direct volume rendering.
  • Examples of image acquisition apparatus comprise, but are not limited to, a CT system, an X-ray system, an MRI system, an US system, a PET system, a SPECT system, and a NM system.
  • Fig. 7 schematically shows an exemplary embodiment of the workstation 700.
  • the workstation comprises a system bus 701.
  • a processor 710, a memory 720, a disk input/output (I/O) adapter 730, and a user interface (UI) 740 are operatively connected to the system bus 701.
  • a disk storage device 731 is operatively coupled to the disk I/O adapter 730.
  • a keyboard 741, a mouse 742, and a display 743 are operatively coupled to the UI 740.
  • the system 100 of the invention, implemented as a computer program, is stored in the disk storage device 731.
  • the workstation 700 is arranged to load the program and input data into memory 720 and execute the program on the processor 710.
  • the user can input information to the workstation 700, using the keyboard 741 and/or the mouse 742.
  • the workstation is arranged to output information to the display device 743 and/or to the disk 731.
  • the skilled person will understand that there are numerous other embodiments of the workstation 700 known in the art and that the present embodiment serves the purpose of illustrating the invention and must not be interpreted as limiting the invention to this particular embodiment.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Graphics (AREA)
  • Processing Or Creating Images (AREA)

Abstract

The invention relates to a system (100) for editing a transfer function for direct volume rendering, wherein the transfer function is based on multiple control points, the system comprising: an interaction window unit (110) for creating an interaction window for displaying the multiple control points; a control point unit (112) for defining the multiple control points; a transfer function unit (115) for computing the transfer function based on the multiple control points; a selection unit (120) for selecting a plurality of control points from the multiple control points; and an editing unit (130) for editing the plurality of control points, thereby editing the transfer function computed based on the multiple control points. For example, a user may draw an object into the interaction window. The plurality of control points may be defined based on the object. The user may then transform, e.g. translate or deform the object. The selected plurality of control points may be translated as a group and/or relative to each other based on the transformation of the object. For example, the object may be a drag-box, drawn into the interaction window by a user. Control points comprised inside the drag-box may be selected as the plurality of control points. The user may translate each point of the plurality of control points by translating or by changing the width and/or the height of the drag-box. Thus, the system of the invention simplifies editing the transfer function. Advantageously, editing the transfer function using the system of the invention may require relatively fewer user interactions.

Description

Improved manipulation of a transfer function for volume rending
FIELD OF THE INVENTION
The invention relates to the field of direct volume rendering and more specifically to manipulating a transfer function for direct volume rendering.
BACKGROUND OF THE INVENTION
A method for defining and manipulating a transfer function for direct volume rendering (DVR) is described in published patent application document WO 2006/048796 entitled "Visualization of a rendered multi-dimensional dataset", hereinafter referred to as Ref. 1. DVR uses a transfer function, also known as a lookup table, to assign a renderable optical property, e.g. color, opacity (or, equivalently, translucency), and/or emittance, to voxel intensity. The transfer function described in Ref. 1 assigns color values and opacity values to voxel intensities of a multi-dimensional, e.g. three-dimensional (3-D), image dataset. Fig. 2 shows an example of an interaction window W displaying a graph TF of the transfer function in the form of a color and opacity map. The graph TF is a polyline defined by multiple control points. The horizontal coordinate of each point of the graph represents an intensity value of a range of intensity values. The vertical coordinate of each point of the graph defines an opacity value of a range of opacity values assigned to the intensity value represented by the horizontal coordinate of the point. The color displayed in the background BG at each point of the graph defines the color assigned to the intensity value represented by the horizontal coordinate of the point. The manipulation of the transfer function is done by editing a control point, for example, by moving the control point left, right, up, or down. When a control point is moved, the transfer function graph is changed accordingly. For example, if the transfer function graph is a polyline, the two line segments, whose one end is the moved control point, are modified.
SUMMARY OF THE INVENTION
Although the method described in Ref. 1 allows to arbitrarily modify the transfer function, modifications of the transfer function require editing many control points one by one, and hence, may require many user interactions for editing the control points. It would be advantageous to have a system which simplifies editing a transfer function for direct volume rendering.
To address this concern, in an aspect of the invention, a system for editing a transfer function for direct volume rendering, wherein the transfer function is based on multiple control points, comprises: an interaction window unit for creating an interaction window for displaying the multiple control points; a control point unit for defining the multiple control points; a transfer function unit for computing the transfer function based on the multiple control points; a selection unit for selecting a plurality of control points from the multiple control points; and an editing unit for editing the plurality of control points, thereby editing the transfer function computed based on the multiple control points.
For example, a user may draw an object in the interaction window. The plurality of control points may be defined based on the object. The user may then transform, e.g. translate or deform, the object. The selected plurality of control points may be translated as a group and/or relative to each other based on the transformation of the object. For example, the object may be a drag-box, drawn by a user in the interaction window. Control points comprised inside the drag-box may be selected as the plurality of control points. The user may reposition the plurality of control points by modifying the drag-box, e.g. by changing the location, width and/or height of the drag-box. The new positions of the plurality of control points may be computed based on the new location and dimensions of the drag- box. Any number of control points of the multiple control points may be repositioned by changing the dimension and/or location of the drag-box. The displacement of the control points, based on editing the drag-box, may be defined to optimize editing the transfer function for rendering an image of a certain object, e.g. the vertebrae or the heart. A similar set of operations may be defined for an object other than a drag-box. Thus, the system of the invention simplifies editing the transfer function. Advantageously, editing the transfer function, using the system of the invention, may require relatively fewer user interactions. Furthermore, using the method of the invention it is possible to change opacity values in a sub-range of opacity values while preserving the local shape of the graph of the transfer function. In an embodiment of the system, the editing unit comprises a plurality of editing modes for editing the plurality of control points. Each mode may be suitable for editing the transfer function for rendering an image of a different object, e.g. the heart or the vertebrae.
In an embodiment of the system, selecting and editing the plurality of control points is based on a drag-box. Selecting and editing the control points by using a drag-box is very intuitive.
In an embodiment of the system, selecting and editing the plurality of control points is based on a line segment between two control points of the multiple control points. All control points in the interaction window, which are comprised between the two ends of the line segment, belong to the plurality of control points. Editing the transfer function may be performed by dragging an end of the line segment.
In an embodiment of the system, the transfer function is defined as a polyline defined by the multiple control points; or a curve fitted to the multiple control points.
A polyline defined by multiple control points comprises line segments, whose ends are two neighboring control points. The polyline defines a graph of a transfer function and thus, the transfer function. Polylines are simple to implement, but are not smooth. A smooth graph of a transfer function may be obtained by fitting a smooth curve to the control points, e.g. a Bezier curve or a B-spline curve.
In an embodiment, the system further comprises a rendering unit for rendering a view of a volumetric image dataset based on the edited transfer function. Rendering a view of a volumetric image dataset based on the edited transfer function provides the user with a feedback on the edited transfer function.
In an embodiment, the system further comprises a histogram unit for computing a histogram for displaying in the interaction window, based on the volumetric image dataset. Visualizing the histogram based on the volumetric image dataset provides the user with clues for editing the transfer function.
It is appreciated that any two or more of the above-mentioned embodiments of the system may be combined in any useful way.
In a further aspect of the invention, the system according to the invention is comprised in an image acquisition apparatus. In a further aspect of the invention, the system according to the invention is comprised in a workstation.
In a further aspect of the invention, a method of editing a transfer function for direct volume rendering, wherein the transfer function is based on multiple control points, comprises: an interaction window step for obtaining a window input and for creating an interaction window for displaying the multiple control points, based on the window input; a control point step for obtaining multiple control point inputs and for defining the multiple control points, based on the multiple control point inputs; a transfer function step for computing the transfer function, based on the multiple control points; a selection step for obtaining a selection input and for selecting a plurality of control points from the multiple control points, based on the selection input; and an editing step for obtaining an edit input and for editing the plurality of control points, based on the edit input, thereby editing the transfer function computed based on the multiple control points.
In a further aspect of the invention, a computer program product to be loaded by a computer arrangement comprises instructions for editing a transfer function for direct volume rendering, the transfer function being based on multiple control points, the computer arrangement comprising a processing unit and a memory, the computer program product, after being loaded, providing said processing unit with the capability to carry out the following tasks: creating an interaction window for displaying the multiple control points; defining the multiple control points; computing the transfer function, based on the multiple control points; selecting a plurality of control points from the multiple control points; and editing the plurality of control points, thereby editing the transfer function computed based on the multiple control points.
Modifications and variations thereof, of the image acquisition apparatus, of the workstation, of the method, and/or of the computer program product, which correspond to the described modifications of the system and variations thereof, can be carried out by a skilled person on the basis of the present description. The skilled person will appreciate that the system may be applied to direct volume rendering based on volumetric, i.e. three-dimensional and four-dimensional, image data acquired by various acquisition modalities such as, but not limited to, Computed Tomography (CT), Magnetic Resonance Imaging (MRI), Ultrasound (US), Positron Emission Tomography (PET), Single Photon Emission Computed Tomography (SPECT), and Nuclear Medicine (NM).
BRIEF DESCRIPTION OF THE DRAWINGS
These and other aspects of the invention will become apparent from and will be elucidated with respect to the implementations and embodiments described hereinafter and with reference to the accompanying drawings, wherein:
Fig. 1 schematically shows a block diagram of an exemplary embodiment of the system;
Fig. 2 shows an example of a window displaying a graph of the transfer function in the form of a color and opacity map;
Fig. 3 illustrates a first embodiment of the system, wherein selecting and editing the plurality of control points is based on a drag-box;
Fig. 4 illustrates a second embodiment of the system, wherein selecting and editing the plurality of control points is based on a line segment;
Fig. 5 shows a flowchart of an exemplary implementation of the method;
Fig. 6 schematically shows an exemplary embodiment of the image acquisition apparatus; and
Fig. 7 schematically shows an exemplary embodiment of the workstation.
The same reference numerals are used to denote similar parts throughout the Figures.
DETAILED DESCRIPTION OF EMBODIMENTS
Fig. 1 schematically shows a block diagram of an exemplary embodiment of the system 100 for editing a transfer function for direct volume rendering, wherein the transfer function is based on multiple control points, the system comprising: an interaction window unit 110 for creating an interaction window for displaying the multiple control points; a control point unit 112 for defining the multiple control points; a transfer function unit 115 for computing the transfer function, based on the multiple control points; a selection unit 120 for selecting a plurality of control points from the multiple control points; and an editing unit 130 for editing the plurality of control points, thereby editing the transfer function computed based on the multiple control points.
The exemplary embodiment of the system 100 further comprises the following optional units: a rendering unit 140 for rendering a view of a volumetric image dataset based on the edited transfer function; a histogram unit 150 for computing a histogram for displaying in the interaction window, based on the volumetric image dataset; a control unit 160 for controlling the workflow in the system 100; an input unit 165 for receiving and distributing inputs to the units of the system 100; a memory unit 170 for storing data.
In an embodiment of the system 100, there are three input connectors 181, 182 and 183 for the incoming data. The first input connector 181 is arranged to receive data coming in from data storage means such as, but not limited to, a hard disk, a magnetic tape, a flash memory, or an optical disk. The second input connector 182 is arranged to receive data coming in from a user input device such as, but not limited to, a mouse or a touch screen. The third input connector 183 is arranged to receive data coming in from a user input device such as a keyboard. The input connectors 181, 182 and 183 are connected to an input control unit 180.
In an embodiment of the system 100, there are two output connectors 191 and 192 for the outgoing data. The first output connector 191 is arranged to output the data to a data storage means such as a hard disk, a magnetic tape, a flash memory, or an optical disk. The second output connector 192 is arranged to output the data to a display device. The output connectors 191 and 192 receive the respective data via an output control unit 190.
The skilled person will understand that there are many ways to connect input devices to the input connectors 181, 182 and 183 and the output devices to the output connectors 191 and 192 of the system 100. These ways comprise, but are not limited to, a wired and a wireless connection, a digital network such as, but not limited to, a Local Area Network (LAN) and a Wide Area Network (WAN), the Internet, a digital telephone network, and an analogue telephone network.
In an embodiment, the system 100 comprises a memory unit 170. The system 100 is arranged to receive input data from external devices via any of the input connectors 181, 182, and 183 and to store the received input data in the memory unit 170. Loading the input data into the memory unit 170 allows quick access to relevant data portions by the units of the system 100. The input data may comprise, for example, the volumetric image data set. The memory unit 170 may be implemented by devices such as, but not limited to, a Random Access Memory (RAM) chip, a Read Only Memory (ROM) chip, and/or a hard disk drive and a hard disk. The memory unit 170 may be further arranged to store the output data. The output data may comprise, for example, the transfer function data and the rendered image data. The memory unit 170 is also arranged to receive data from and deliver data to the units of the system 100 comprising the interaction window unit 110, the control point unit 112, the transfer function unit 115, the selection unit 120, the editing unit 130, the rendering unit 140, the histogram unit 150, the control unit 160, and the input unit 165, via a memory bus 175. The memory unit 170 is further arranged to make the output data available to external devices via any of the output connectors 191 and 192. Storing the data from the units of the system 100 in the memory unit 170 may advantageously improve the performance of the units of the system 100 as well as the rate of transfer of the output data from the units of the system 100 to external devices.
Alternatively, the system 100 may not comprise the memory unit 170 and the memory bus 175. The input data used by the system 100 may be supplied by at least one external device, such as an external memory or a processor, connected to the units of the system 100. Similarly, the output data produced by the system 100 may be supplied to at least one external device, such as an external memory or a processor, connected to the units of the system 100. The units of the system 100 may be arranged to receive the data from each other via internal connections or via a data bus.
In an embodiment, the system 100 comprises a control unit 160 for controlling the workflow in the system 100. The control unit may be arranged to receive control data from and provide control data to the units of the system 100. For example, after editing the plurality of control points, the editing unit 130 may be arranged to send a control data "a plurality of control points are edited" to the control unit 160 and the control unit 160 may be arranged to provide a control data "compute the transfer function" to the transfer function unit 115, requesting the transfer function unit 115 to compute the transfer function. Alternatively, a control function may be implemented in another unit of the system 100.
In an embodiment, the system 100 comprises an input unit 165 for receiving inputs and distributing them to the units of the system 100. The inputs may comprise a window input to the interaction window unit 110 for creating the interaction window, multiple control point inputs to the control point unit 112 for defining the multiple control points, a selection input to the selection unit 120 for selecting the plurality of control points from the multiple control points, and an edit input to the editing unit 130 for editing the plurality of control points.
The invention will now be described with reference to Figs. 3 and 4. Fig. 3 illustrates a first embodiment of the system 100, wherein selecting and editing the plurality of control points is based on a drag-box. Fig. 4 illustrates a second embodiment of the system 100, wherein selecting and editing the plurality of control points is based on a line segment. Each Figure shows an interaction window W, a color background BG, and a transfer function graph TF defined by multiple control points.
In the exemplary embodiments of the system illustrated in Figs. 3 and 4, the renderable properties assigned by a transfer function to a voxel are color and opacity. The skilled person will understand, however, that the system of the invention may be used for editing a transfer function which defines other combinations of renderable optical properties, for example, only opacity, or color, opacity and emittance.
The interaction window unit 110 of the system 100 is arranged for creating an interaction window. The interaction window is arranged for displaying the multiple control points. Figs. 3 and 4 show an example of an interaction window W for displaying a graph TF of the transfer function in the form of a color and opacity map. The transfer function graph TF is a polyline defined by multiple control points. Alternatively, the transfer function may be a curve fitted to the control points using any useful fitting method, e.g. an interpolation method. Each control point is represented by a small square.
The control point unit 112 is arranged for defining the multiple control points. The multiple control points may be defined based on the multiple control point inputs provided by the user of the system 100 by means of a user input device such as a mouse or a trackball.
The transfer function unit 115 is arranged for computing the transfer function, based on the multiple control points. The transfer function may be a polyline defined by the multiple control points. A polyline is defined as a linear interpolation of the multiple control points. Alternatively, the transfer function may be a curve fitted to the multiple control points by the transfer function unit 115, using any useful fitting method, e.g. an interpolation method such as a polynomial or spline interpolation method. The graph TF of the transfer function may be displayed in the interaction window W, as illustrated in Figs. 3 and 4.
The selection unit 120 of the system 100 is arranged for selecting a plurality of control points from the multiple control points W. The editing unit 130 of the system 100 is arranged for editing the plurality of control points, thereby editing the transfer function computed based on the multiple control points. The selection input and the edit input may be provided by the user of the system 100 by means of a user input device such as a mouse or a trackball.
Fig. 3 illustrates a first embodiment of the system 100, wherein selecting and editing the plurality of control points is based on a drag-box B. The drag-box B may be drawn around some control points of the multiple control points as shown in the first picture 31. The points inside the drag-box are grouped to form the selected plurality of control points e.g. on a mouse-button-release event. Optionally, the control points in the drag-box B may be visualized using e.g. a specific color or shape.
The user may now translate the drag-box B by a translation vector in any direction. The plurality of control points inside the drag-box B are translated with the drag- box by the same translation vector. The plurality of control points inside the drag-box B are not displaced relative to each other. The drag-box B cannot be translated beyond the location of any control point outside the drag-box B. In the second picture 32, the drag-box B and the plurality of control points inside the drag-box are translated to the left. Only two line segments of the graph TF are modified - the segments whose one end is inside the drag-box B and whose other end is outside the drag-box B.
If the user drags a handle of the drag-box, the drag-box may be resized. In the third picture 33, the user has picked a handle H at the top-left corner of the drag-box B and dragged the handle H downwards and to the right. The plurality of control points inside the drag-box B are displaced with the drag-box B in such a way that the ratio between the distance from each control point to each edge of the drag-box B and the length of the other edge of the drag-box B is substantially constant. The drag-box B cannot be expanded beyond the location of any control point outside the drag-box B. Only two line segments of the graph TF are modified - the segments whose one end is inside the drag-box B and whose other end is outside the drag-box B. Fig. 4 illustrates a second embodiment of the system 100 wherein selecting and editing the plurality of control points is based on a line segment between two control points of the multiple control points. The user may draw a line segment L between two control points. The left end El of the line segment L, the right end E2 of the line segment and all control points having their horizontal coordinate between the horizontal coordinates of the line segment L ends El and E2 are grouped into the plurality of control points. The line segment L is shown in the first picture 41. The line segment L is drawn based on a user input obtained from a user input device such as a mouse or a trackball, for example. Once the line segment L is drawn, the points may be grouped on a mouse-button-release event, for example. Optionally, the plurality of control points may be visualized using e.g. a specific color or shape.
The user may now drag the line segment L in any direction. This results in a translation of the plurality of control points defined by the line segment L. The line segment L cannot be translated beyond the location of any control not comprised in the selected plurality of control points, i.e. the horizontal coordinate of the left end El must be greater than the horizontal coordinate of each control point to the left of the left end El, and the horizontal coordinate of the right end E2 must be smaller than the horizontal coordinate of each control point to the right of the right end E2. In the second picture 42, the line segment L is translated downwards by a translation vector. The plurality of control points are translated with the line segment L by the same translation vector. Only two line segments of the graph TF are modified - the segment whose one end is the left end El or the right end E2 of the line segment L.
If the user drags an end of the line segment L, the line segment L may be resized and/or rotated. In the third picture 43, the user has picked the left end El of the line segment L and dragged it upwards. Thus, the left end El is moved up. The right end E2 of the line segment L is not moved. The remaining control points of the plurality of control points are weight-translated. The translation vector of each control point of the plurality of control points may be substantially identical to the translation vector of the orthogonal projection of the control point on the line segment L, which line segment is extended (or contracted, for another displacement of an end of the line segment L) linearly. Alternatively, the angle between two polyline segments at each control point may be assigned a bending energy dependent on the angle value, and each line segment of the polyline may be assigned a stretch-contraction energy dependent on the length value of the line segment. The displacement of the angles with vertices at non-end control points of the plurality of control points may be defined by their positions at which the total energy of the plurality of control points is the minimum energy. The total energy of the plurality of control points may comprise the sum of all bending energies of the non-end control points of the plurality of control points plus the sum of all stretch-contraction energies of line segments between the control points of the plurality of control points. However, the control points cannot be translated in such a way that the resulting polyline is not a function graph in the mathematical sense. This may require adding additional energy terms to the total energy.
The skilled person will understand that other embodiments of the system 100 are also possible. It is possible, among other things, to implement alternative methods for selecting the plurality of control points or for editing the plurality of control points. The described embodiments illustrate the invention and should not be construed as limiting the scope of the claims. In an embodiment of the system 100, the editing unit 130 comprises a plurality of editing modes for editing the plurality of control points. Each mode may be optimized for editing a transfer function for rendering an image of an anatomical structure, e.g. the heart or vertebrae.
In an embodiment, the system 100 further comprises a rendering unit 140 for rendering a view of a volumetric image dataset, based on the edited transfer function. During editing of the plurality of control points, an image may be rendered based on the edited transfer function. Thus, the user may be provided with a feedback on the edited plurality of control points. The image may be rendered e.g. on an event such as a mouse button release, indicating that the plurality of control points have been edited. Alternatively, the rendered image may be periodically updated based on the edited transfer function.
In an embodiment, the system 100 further comprises a histogram unit 150 for computing a histogram for displaying in the interaction window W, based on the volumetric image dataset. The histogram HS may be displayed in the interaction widow, as illustrated in Figs. 3 and 4.
The units of the system 100 may be implemented using a processor. Normally, their functions are performed under control of a computer program product. During the execution process, the computer program product is normally loaded into a memory, like a RAM, and executed from there. The program may be loaded from a background memory, like a ROM, hard disk, or magnetic and/or optical storage, or may be loaded via a network like the Internet. Optionally, an application-specific integrated circuit may provide the described functionality. Fig. 5 shows a flowchart of an exemplary implementation of the method 500 of editing a transfer function for direct volume rendering, wherein the transfer function is based on multiple control points. The method 500 begins with an interaction window step 510 for obtaining a window input and for creating an interaction window for displaying the multiple control points, based on the window input. After the interaction window step 510, the method 500 continues to a control point step 512 for obtaining multiple control point inputs and for defining the multiple control points, based on the multiple control point inputs. After the control point step 512, the method 500 continues to a transfer function step 515 for computing the transfer function, based on the multiple control points. After the transfer function step 515, the method 500 continues to a selection step 520 for obtaining a selection input and for selecting a plurality of control points from the multiple control points, based on the selection input. After the selection step 520, the method 500 continues to an editing step 530 for obtaining an edit input and for editing the plurality of control points, based on the edit input, thereby editing the transfer function computed based on the multiple control points. After the editing step 530, the method 500 may terminate. The skilled person will understand that more useful steps may be advantageously implemented and executed by the method 500.
Fig. 6 schematically shows an exemplary embodiment of the image acquisition apparatus 600 employing the system 100, said image acquisition apparatus 600 comprising an image acquisition unit 610 connected via an internal connection with the system 100, an input connector 601, and an output connector 602. This arrangement advantageously increases the capabilities of the image acquisition apparatus 600, providing said image acquisition apparatus 600 with advantageous capabilities of the system 100 for editing a transfer function for direct volume rendering. Examples of image acquisition apparatus comprise, but are not limited to, a CT system, an X-ray system, an MRI system, an US system, a PET system, a SPECT system, and a NM system.
Fig. 7 schematically shows an exemplary embodiment of the workstation 700. The workstation comprises a system bus 701. A processor 710, a memory 720, a disk input/output (I/O) adapter 730, and a user interface (UI) 740 are operatively connected to the system bus 701. A disk storage device 731 is operatively coupled to the disk I/O adapter 730. A keyboard 741, a mouse 742, and a display 743 are operatively coupled to the UI 740. The system 100 of the invention, implemented as a computer program, is stored in the disk storage device 731. The workstation 700 is arranged to load the program and input data into memory 720 and execute the program on the processor 710. The user can input information to the workstation 700, using the keyboard 741 and/or the mouse 742. The workstation is arranged to output information to the display device 743 and/or to the disk 731. The skilled person will understand that there are numerous other embodiments of the workstation 700 known in the art and that the present embodiment serves the purpose of illustrating the invention and must not be interpreted as limiting the invention to this particular embodiment.
It should be noted that the above-mentioned embodiments illustrate rather than limit the invention and that those skilled in the art will be able to design alternative embodiments without departing from the scope of the appended claims. In the claims, any reference signs placed between parentheses shall not be construed as limiting the claim. The word "comprising" does not exclude the presence of elements or steps not listed in a claim or in the description. The word "a" or "an" preceding an element does not exclude the presence of a plurality of such elements. The invention can be implemented by means of hardware comprising several distinct elements and by means of a programmed computer. In the system claims enumerating several units, several of these units can be embodied by one and the same item of hardware or software. The usage of the words first, second and third, et cetera does not indicate any ordering. These words are to be interpreted as names.

Claims

CLAIMS:
1. A system (100) for editing a transfer function for direct volume rendering, wherein the transfer function is based on multiple control points, the system comprising: an interaction window unit (110) for creating an interaction window for displaying the multiple control points; a control point unit (112) for defining the multiple control points; a transfer function unit (115) for computing the transfer function, based on the multiple control points; a selection unit (120) for selecting a plurality of control points from the multiple control points; and an editing unit (130) for editing the plurality of control points, thereby editing the transfer function computed based on the multiple control points.
2. A system as claimed in claim 1, wherein the editing unit (130) comprises a plurality of editing modes for editing the plurality of control points.
3. A system (100) as claimed in claim 1, wherein selecting and editing the plurality of control points is based on a drag-box.
4. A system (100) as claimed in claim 1, wherein selecting and editing the plurality of control points is based on a line segment between two control points of the multiple control points.
5. A system (100) as claimed in claim 1, wherein the transfer function is defined as: a polyline defined by the multiple control points; or a curve fitted to the multiple control points.
6. A system (100) as claimed in claim 1, further comprising a rendering unit (140) for rendering a view of a volumetric image dataset, based on the edited transfer function.
7. A system (100) as claimed in claim 6, further comprising a histogram unit (150) for computing a histogram for displaying in the interaction window, based on the volumetric image dataset.
8. An image acquisition apparatus (600) comprising the system (100) as claimed in claim 1.
9. A workstation (700) comprising the system (100) as claimed in claim 1.
10. A method (500) of editing a transfer function for direct volume rendering, wherein the transfer function is based on multiple control points, the method comprising: an interaction window step (510) for obtaining a window input and for creating an interaction window for displaying the multiple control points, based on the window input; a control point step (512) for obtaining multiple control point inputs and for defining the multiple control points, based on the multiple control point inputs; a transfer function step (515) for computing the transfer function, based on the multiple control points; a selection step (520) for obtaining a selection input and for selecting a plurality of control points from the multiple control points, based on the selection input; and an editing step (530) for obtaining an edit input and for editing the plurality of control points, based on the edit input, thereby editing the transfer function computed based on the multiple control points.
11. A computer program product to be loaded by a computer arrangement, comprising instructions for editing a transfer function for direct volume rendering, wherein the transfer function is based on multiple control points, the computer arrangement comprising a processing unit and a memory, the computer program product, after being loaded, providing said processing unit with the capability to carry out the tasks of: creating an interaction window for displaying the multiple control points; defining the multiple control points; computing the transfer function, based on the multiple control points; selecting a plurality of control points from the multiple control points; and editing the plurality of control points, thereby editing the transfer function computed based on the multiple control points.
PCT/IB2007/054741 2006-11-29 2007-11-22 Improved manipulation of a transfer function for volume rending Ceased WO2008065586A2 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP06124980.1 2006-11-29
EP06124980 2006-11-29

Publications (2)

Publication Number Publication Date
WO2008065586A2 true WO2008065586A2 (en) 2008-06-05
WO2008065586A3 WO2008065586A3 (en) 2009-04-30

Family

ID=39468338

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/IB2007/054741 Ceased WO2008065586A2 (en) 2006-11-29 2007-11-22 Improved manipulation of a transfer function for volume rending

Country Status (1)

Country Link
WO (1) WO2008065586A2 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107016228A (en) * 2016-11-25 2017-08-04 斯图尔特平李 A Medical Imaging System Based on HMDS
US10062200B2 (en) 2015-04-03 2018-08-28 Dental Imaging Technologies Corporation System and method for displaying volumetric images

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
"corelDraw 101: basic toolbox. Shape Tool Overview"[Online] 26 January 2001 (2001-01-26), pages 1-4, XP002515815 Retrieved from the Internet: URL:http://www.webreference.com/graphics/corel101/4/3.html> [retrieved on 2009-02-18] *
FRANCISCO DE MOURA PINTO ET AL: "Two-Level Interaction Transfer Function Design Combining Boundary Emphasis, Manual Specification and Evolutive Generation" COMPUTER GRAPHICS AND IMAGE PROCESSING, 2006. SIBGRAPI '06. 19TH BRAZILIAN SYMPOSIUM ON, IEEE, PI, 1 October 2006 (2006-10-01), pages 281-288, XP031036021 ISBN: 978-0-7695-2686-7 *
MUSTAFA ALPER SELVER: "an object oriented transfer function editor for interactive medical volume visualization" [Online] August 2005 (2005-08), , IZMIR, TURKEY , XP002515816 Retrieved from the Internet: URL:http://www.eee.deu.edu.tr/cislab/eksayfalar/personal%20pages/malpersel.htm> [retrieved on 2009-02-16] page 33, paragraph 4.2 - page 44, paragraph 4.4; figure 4.1 page 67, line 25 - page 68, line 4 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10062200B2 (en) 2015-04-03 2018-08-28 Dental Imaging Technologies Corporation System and method for displaying volumetric images
CN107016228A (en) * 2016-11-25 2017-08-04 斯图尔特平李 A Medical Imaging System Based on HMDS
CN107016228B (en) * 2016-11-25 2023-08-18 斯图尔特平李 A Medical Imaging System Based on HMDS

Also Published As

Publication number Publication date
WO2008065586A3 (en) 2009-04-30

Similar Documents

Publication Publication Date Title
EP2074499B1 (en) 3d connected shadow mouse pointer
US10275930B2 (en) Combined intensity projection
US9384592B2 (en) Image processing method and apparatus performing slab multi-planar reformatting rendering of volume data
CN101405764A (en) Systems and methods for interactive definition of regions and volumes of interest
JP6560745B2 (en) Visualizing volumetric images of anatomy
US10540745B2 (en) Zooming of medical images
JP6532863B2 (en) Image Volume Rendering by Multiple Classification
WO2009101577A2 (en) Interactive selection of a region of interest and segmentation of image data
US9754411B2 (en) Path proximity rendering
US11360636B2 (en) Dynamic dimension switch for 3D content based on viewport resizing
WO2008065586A2 (en) Improved manipulation of a transfer function for volume rending
US20100265252A1 (en) Rendering using multiple intensity redistribution functions
WO2007034424A1 (en) A priori information encoding for manual adaptation of geometric models
WO2008007344A2 (en) Locally optimized transfer functions for volume visualization

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 07849215

Country of ref document: EP

Kind code of ref document: A2

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 07849215

Country of ref document: EP

Kind code of ref document: A2