CN1711968A - Rapid progressive three-dimensional reconstructing method of CT image from direct volume rendering - Google Patents

Rapid progressive three-dimensional reconstructing method of CT image from direct volume rendering Download PDF

Info

Publication number
CN1711968A
CN1711968A CNA2005100427347A CN200510042734A CN1711968A CN 1711968 A CN1711968 A CN 1711968A CN A2005100427347 A CNA2005100427347 A CN A2005100427347A CN 200510042734 A CN200510042734 A CN 200510042734A CN 1711968 A CN1711968 A CN 1711968A
Authority
CN
China
Prior art keywords
data
projection
msub
mtd
dimensional
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.)
Granted
Application number
CNA2005100427347A
Other languages
Chinese (zh)
Other versions
CN100348158C (en
Inventor
朱虹
邓杰航
马湘旺
楚勇
张波
刘磊
曹艳艳
叶丽丽
王子玉
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.)
Xian University of Technology
Original Assignee
Xian University of Technology
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 Xian University of Technology filed Critical Xian University of Technology
Priority to CNB2005100427347A priority Critical patent/CN100348158C/en
Publication of CN1711968A publication Critical patent/CN1711968A/en
Application granted granted Critical
Publication of CN100348158C publication Critical patent/CN100348158C/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Image Generation (AREA)
  • Image Processing (AREA)
  • Apparatus For Radiation Diagnosis (AREA)

Abstract

A high-speed progressive 3D reconstruction method for CT images includes such steps as dividing the data about the 2D laminagraphic images of an organ, interpolating to generate isotropic 3D data body, calculating the sizes of target data body after rotation, coordinate transplanting of said data body, initializing the projected data region and projection template, rotational assigning, projecting and reinforcing the projected result.

Description

Rapid progressive direct volume rendering three-dimensional reconstruction method of CT image
Technical Field
The invention belongs to the technical field of three-dimensional reconstruction visualization of CT images, relates to a three-dimensional reconstruction method of a CT image, and particularly relates to a three-dimensional reconstruction method of rapid progressive direct volume rendering of a CT image.
Background
For the three-dimensional reconstruction of the CT tomographic image, the direct volume rendering method can more truly represent the three-dimensional effect compared with the surface rendering method, the direct volume rendering takes the voxel as a basic unit, and the three-dimensional volume image is directly generated by the two-dimensional tomographic image data set.
Disclosure of Invention
In order to solve the defects of large volume rendering calculation amount and low speed of the prior art, the invention aims to provide a fast progressive direct volume rendering method, which greatly reduces the calculation amount and obviously improves the speed when the method is used for carrying out three-dimensional reconstruction on a CT image.
The invention adopts the technical scheme that a CT image fast progressive direct volume rendering three-dimensional reconstruction method comprises the steps of firstly collecting two-dimensional sectional image data of an organ by CT equipment, carrying out image segmentation in the two-dimensional sectional image to obtain the two-dimensional sectional CT image data of the organ needing three-dimensional reconstruction and the organ associated with the organ, then carrying out three-dimensional data interpolation on the two-dimensional sectional images of different organs to form an isotropic three-dimensional data volume, and further carrying out the following steps,
1) calculating the size of the rotated target data volume
Calculating the size of the rotated target data volume according to the isotropic three-dimensional data volume value;
2) data volume coordinate translation
Translating the original data volume and the rotated coordinate origin of the target data volume to respective geometric centers;
3) initialization of x-axis and y-axis coordinates
For the x-axis, determining the first projection point on the x-axis, and setting other projection points with the interval of m, namely x (k) is 0, x (k) is 8, x (k) is 16, …, m is the power of 2,
setting a first pair of reconstructed images on a y axis, wherein when the number of total tomograms is an odd number, y0 is n, y1 is-n, and when the number of total tomograms is an even number, y0 is n-1, and y1 is-n;
4) initializing a projection data field and a projection template
Initializing the projection data area to a minimum CT value, and initializing the projection template to '0';
5) performing rotation assignment on data body
Traversing the data body of a first quadrant for the data body of original data at the same time, two pieces of two-dimensional fault data containing eight symmetrical points in the rotated data body, a projection plane data body and a projection template, calculating corresponding coordinates of the data of the rotated data body in the original data body, assigning the data to the voxel value of the corresponding coordinate of the rotated data body if the calculated coordinates do not exceed the original data space and the voxel value of the corresponding coordinate is not empty, correspondingly completing the traversal of the data of other seven quadrants after the voxel of the first quadrant is traversed, and setting the corresponding position of the projection template to be '1' when a non-empty voxel value appears in the Z-axis direction, or not changing;
6) projection processing
Performing ray tracing on the two obtained data along the Z axis, when the template value of the current point is 0, not processing, and when the template value is 1, performing ray tracing, and filling the value obtained by ray tracing to a corresponding pixel point in the projected image;
7) after the two images are processed, the plane is shifted by one unit along the Y axis, namely Y0 is Y0-1, Y1 is Y1+1, and the other two images in the data volume are taken to be processed in the 5 th image) and the 6 th image until Y0 is 0;
8) performing projection display
Refreshing a screen, and displaying a projection result;
9) then let x (k +1) ═ x (k) +1, return to above-mentioned 4) and repeat the process, until all points on the x axis have traversed, the projection of fast progressive three-dimensional reconstruction ends.
The present invention is also characterized in that the ray tracing along the Z-axis is performed as follows,
a, emitting rays from a projection surface, and traversing voxel points in the ray direction;
b, if the value of the coordinate point corresponding to the projection template is '0', setting the pixel as a background color, turning to a, and otherwise, turning to c;
c, recording a subscript for finding a first pixel point containing information;
d, calculating the opacity from the found subscript, and performing illumination mapping and depth modulation;
e, drawing the pixel of the point;
f, turning to a until all data processing is completed.
The method of the invention reduces the calculation amount of the data volume when rotating according to the inherent geometric symmetry of the three-dimensional data volume; and then, according to the fact that a large number of redundant voxels do not contribute to the projection value in the three-dimensional data volume, data which do not contribute to the projection are identified, and background pixel values are directly assigned to the voxels which do not contribute to the projection without processing during ray tracing iteration. And according to the ray tracing principle, the pixel value on the projection surface is only related to the voxel passed by the ray emitted from the point, and the voxel can be subjected to block iteration to realize progressive direct volume rendering. Therefore, the method greatly reduces the steps of three-dimensional reconstruction and improves the speed of three-dimensional reconstruction.
Drawings
FIG. 1 is a flow chart of the method of the present invention;
FIG. 2 is a schematic diagram of rotation, where a is the original data volume and b is the rotated data volume;
FIG. 3 is a three-dimensional data volume voxel value redundancy illustration;
fig. 4 is a fast progressive direct gray scale volume rendering effect diagram of the present invention, where a-e are the progressive process of lung imaging and f is the result of bone imaging.
Detailed Description
The invention is explained in further detail below by means of figures and examples.
The basic concept of the invention is that in the process of direct volume rendering, after obtaining the isotropic three-dimensional data volume after interpolation, the geometric symmetry of the three-dimensional data volume is utilized, and simple addition and subtraction method is used for replacing multiplication operation in rotation, so that the rotation calculation speed is accelerated; secondly, a large number of points with empty voxel values exist in the three-dimensional data volume, the points do not contribute to the final projection surface, the points can be omitted in the projection iteration process, and the iteration calculation amount is reduced; thirdly, according to the ray tracing principle, the pixel value on the projection surface is only related to the voxel passed by the ray emitted from the point, so that the voxel can be subjected to block iteration, progressive direct volume rendering is realized, and finally a three-dimensional projection image of the required organ is generated.
1. Geometric symmetry of three-dimensional data volume
Assuming that the resolution of each two-dimensional tomographic image is 512 × 512, a square is formed on a two-dimensional plane and is a centrosymmetric pattern, so that three-dimensional volume data forms a rectangular parallelepiped after three-dimensional reconstruction of the two-dimensional tomographic image. According to the solid geometry knowledge, the cuboid is an axisymmetric figure. As shown in fig. 2, in the rectangular parallelepiped ABCDEFGH, the point A, B, C, D is symmetric about the axes X and Y, and the points A, B, C, D and E, F, G, H are symmetric about the center O, respectively, with the geometric center O of the rectangular parallelepiped as the origin.
Assuming that the three-dimensional coordinates of point B are (X, Y, Z) and according to symmetry, A, C, D, E, F, G, H have coordinates (X, -Y, Z), (-X, Y, Z), (-X, -Y, Z), (X, -Y, -Z), (X, Y, -Z), (-X, Y, -Z), (-X, -Y, -Z), and (X, -Y, -Z), assuming that the rotation matrix from FIG. 2a to FIG. 2B is T, the volume data is rotated α degrees around the X axis, β around the Y axis, and γ degrees around the Z axis, and
T=Tx·Ty·Tz
wherein,
<math> <mrow> <msub> <mi>T</mi> <mi>x</mi> </msub> <mo>=</mo> <mfenced open='[' close=']'> <mtable> <mtr> <mtd> <mn>1</mn> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <mn>0</mn> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mi>cos</mi> <mi>&alpha;</mi> </mtd> <mtd> <mi>sin</mi> <mi>&alpha;</mi> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mo>-</mo> <mi>sin</mi> <mi>&alpha;</mi> </mtd> <mtd> <mi>cos</mi> <mi>&alpha;</mi> </mtd> </mtr> </mtable> </mfenced> </mrow> </math> <math> <mrow> <msub> <mi>T</mi> <mi>y</mi> </msub> <mo>=</mo> <mfenced open='[' close=']'> <mtable> <mtr> <mtd> <mi>cos</mi> <mi>&beta;</mi> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <mi>sin</mi> <mi>&beta;</mi> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mn>1</mn> </mtd> <mtd> <mn>0</mn> </mtd> </mtr> <mtr> <mtd> <mo>-</mo> <mi>sin</mi> <mi>&beta;</mi> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <mi>cos</mi> <mi>&beta;</mi> </mtd> </mtr> </mtable> </mfenced> </mrow> </math> <math> <mrow> <msub> <mi>T</mi> <mi>z</mi> </msub> <mfenced open='[' close=']'> <mtable> <mtr> <mtd> <mi>cos</mi> <mi>&gamma;</mi> </mtd> <mtd> <mi>sin</mi> <mi>&gamma;</mi> </mtd> <mtd> <mn>0</mn> </mtd> </mtr> <mtr> <mtd> <mo>-</mo> <mi>sin</mi> <mi>&gamma;</mi> </mtd> <mtd> <mi>cos</mi> <mi>&gamma;</mi> </mtd> <mtd> <mn>0</mn> </mtd> </mtr> <mtr> <mtd> <mn>0</mn> </mtd> <mtd> <mn>0</mn> </mtd> <mtd> <mn>1</mn> </mtd> </mtr> </mtable> </mfenced> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>1</mn> <mo>)</mo> </mrow> </mrow> </math>
namely, it is
<math> <mrow> <mi>T</mi> <mo>=</mo> <mfenced open='[' close=']'> <mtable> <mtr> <mtd> <mi>cos</mi> <mi></mi> <mi>&beta;</mi> <mi>cos</mi> <mi>&gamma;</mi> </mtd> <mtd> <mi>cos</mi> <mi></mi> <mi>&beta;</mi> <mi>sin</mi> <mi>&gamma;</mi> </mtd> <mtd> <mi>sin</mi> <mi>&beta;</mi> </mtd> </mtr> <mtr> <mtd> <mo>-</mo> <mi>sin</mi> <mi></mi> <mi>&alpha;</mi> <mi>sin</mi> <mi></mi> <mi>&beta;</mi> <mi>cos</mi> <mi>&gamma;</mi> <mo>-</mo> <mi>cos</mi> <mi></mi> <mi>&alpha;</mi> <mi>sin</mi> <mi>&gamma;</mi> </mtd> <mtd> <mo>-</mo> <mi>sin</mi> <mi></mi> <mi>&alpha;</mi> <mi>sin</mi> <mi></mi> <mi>&beta;</mi> <mi>sin</mi> <mi>&gamma;</mi> <mo>+</mo> <mi>cos</mi> <mi></mi> <mi>&alpha;</mi> <mi>cos</mi> <mi>&gamma;</mi> </mtd> <mtd> <mi>sin</mi> <mi></mi> <mi>&alpha;</mi> <mi>cos</mi> <mi>&beta;</mi> </mtd> </mtr> <mtr> <mtd> <mo>-</mo> <mi>cos</mi> <mi></mi> <mi>&alpha;</mi> <mi>sin</mi> <mi></mi> <mi>&beta;</mi> <mi>cos</mi> <mi>&gamma;</mi> <mo>+</mo> <mi>sin</mi> <mi></mi> <mi>&alpha;</mi> <mi>sin</mi> <mi>&gamma;</mi> </mtd> <mtd> <mo>-</mo> <mi>cos</mi> <mi></mi> <mi>&alpha;</mi> <mi>sin</mi> <mi></mi> <mi>&beta;</mi> <mi>sin</mi> <mi>&gamma;</mi> <mo>-</mo> <mi>sin</mi> <mi></mi> <mi>&alpha;</mi> <mi>cos</mi> <mi>&gamma;</mi> </mtd> <mtd> <mi>cos</mi> <mi></mi> <mi>&alpha;</mi> <mi>cos</mi> <mi>&beta;</mi> </mtd> </mtr> </mtable> </mfenced> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>2</mn> <mo>)</mo> </mrow> </mrow> </math>
Let A11=cosβcosγ,A12=-sinαsinβcosγ-cosαsinγ,
A13=-cosαsinβcosγ+sinαsinγ,B11=cosβsinγ,
B12=-sinαsinβsinγ+cosαcosγ,B13=-cosαsinβsinγ-sinαcosγ,
C11=sinβ,C12=sinαcosβ,C13=cosαcosβ,
Then
T = A 11 B 11 C 11 A 12 B 12 C 12 A 13 B 13 C 13 - - - ( 3 )
The reconstructed point A 'transformed by the rotation matrix T is denoted by A', and the coordinates of A 'are denoted by (x'A,y′A,z′A) Then, then
<math> <mrow> <mo>[</mo> <msup> <msub> <mi>x</mi> <mi>A</mi> </msub> <mo>&prime;</mo> </msup> <mo>,</mo> <msup> <msub> <mi>y</mi> <mi>A</mi> </msub> <mo>&prime;</mo> </msup> <msup> <mrow> <mo>,</mo> <msub> <mi>z</mi> <mi>A</mi> </msub> </mrow> <mo>&prime;</mo> </msup> <mo>]</mo> <mo>=</mo> <mo>[</mo> <msub> <mi>x</mi> <mi>A</mi> </msub> <mo>,</mo> <msub> <mi>y</mi> <mi>A</mi> </msub> <mo>,</mo> <msub> <mi>z</mi> <mi>A</mi> </msub> <mo>]</mo> <mo>&CenterDot;</mo> <mfenced open='[' close=']'> <mtable> <mtr> <mtd> <msub> <mi>A</mi> <mn>11</mn> </msub> </mtd> <mtd> <msub> <mi>B</mi> <mn>11</mn> </msub> </mtd> <mtd> <msub> <mi>C</mi> <mn>11</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>A</mi> <mn>12</mn> </msub> </mtd> <mtd> <msub> <mi>B</mi> <mn>12</mn> </msub> </mtd> <mtd> <msub> <mi>C</mi> <mn>12</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <mi>A</mi> <mn>13</mn> </msub> </mtd> <mtd> <msub> <mi>B</mi> <mn>13</mn> </msub> </mtd> <mtd> <msub> <mi>C</mi> <mn>13</mn> </msub> </mtd> </mtr> </mtable> </mfenced> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>4</mn> <mo>)</mo> </mrow> </mrow> </math>
Because of [ xA yA zA]=[x -y z]So the system of equations can be obtained
<math> <mrow> <mfenced open='{' close=''> <mtable> <mtr> <mtd> <msub> <msup> <mi>x</mi> <mo>&prime;</mo> </msup> <mi>A</mi> </msub> <mo>=</mo> <msub> <mi>xA</mi> <mn>11</mn> </msub> <mo>+</mo> <mrow> <mo>(</mo> <mo>-</mo> <mi>y</mi> <mo>)</mo> </mrow> <msub> <mi>A</mi> <mn>12</mn> </msub> <mo>+</mo> <mi>z</mi> <msub> <mi>A</mi> <mn>13</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <msup> <mi>y</mi> <mo>&prime;</mo> </msup> <mi>A</mi> </msub> <mo>=</mo> <msub> <mi>xB</mi> <mn>11</mn> </msub> <mo>+</mo> <mrow> <mo>(</mo> <mo>-</mo> <mi>y</mi> <mo>)</mo> </mrow> <msub> <mi>B</mi> <mn>12</mn> </msub> <mo>+</mo> <mi>z</mi> <msub> <mi>B</mi> <mn>13</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <msup> <mi>z</mi> <mo>&prime;</mo> </msup> <mi>A</mi> </msub> <mo>=</mo> <msub> <mi>xC</mi> <mn>11</mn> </msub> <mo>+</mo> <mrow> <mo>(</mo> <mo>-</mo> <mi>y</mi> <mo>)</mo> </mrow> <msub> <mi>C</mi> <mn>12</mn> </msub> <mo>+</mo> <mi>z</mi> <msub> <mi>C</mi> <mn>13</mn> </msub> </mtd> </mtr> </mtable> </mfenced> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>5</mn> <mo>)</mo> </mrow> </mrow> </math>
Similarly, point B, C, D is rotated to be B '(x'B,y′B,z′B)、C′(x′C,y′C,z′C)、D′(x′D,y′D,z′D) The system of equations, have
<math> <mrow> <mfenced open='{' close=''> <mtable> <mtr> <mtd> <msub> <msup> <mi>x</mi> <mo>&prime;</mo> </msup> <mi>B</mi> </msub> <mo>=</mo> <msub> <mi>xA</mi> <mn>11</mn> </msub> <mo>+</mo> <msub> <mi>yA</mi> <mn>12</mn> </msub> <mo>+</mo> <mi>z</mi> <msub> <mi>A</mi> <mn>13</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <msup> <mi>y</mi> <mo>&prime;</mo> </msup> <mi>B</mi> </msub> <mo>=</mo> <msub> <mi>xB</mi> <mn>11</mn> </msub> <mo>+</mo> <msub> <mi>yB</mi> <mn>12</mn> </msub> <mo>+</mo> <mi>z</mi> <msub> <mi>B</mi> <mn>13</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <msup> <mi>z</mi> <mo>&prime;</mo> </msup> <mi>B</mi> </msub> <mo>=</mo> <msub> <mi>xC</mi> <mn>11</mn> </msub> <mo>+</mo> <msub> <mi>yC</mi> <mn>12</mn> </msub> <mo>+</mo> <mi>z</mi> <msub> <mi>C</mi> <mn>13</mn> </msub> </mtd> </mtr> </mtable> </mfenced> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>6</mn> <mo>)</mo> </mrow> </mrow> </math>
<math> <mrow> <mfenced open='{' close=''> <mtable> <mtr> <mtd> <msub> <msup> <mi>x</mi> <mo>&prime;</mo> </msup> <mi>C</mi> </msub> <mo>=</mo> <mrow> <mo>(</mo> <mo>-</mo> <mi>x</mi> <mo>)</mo> </mrow> <msub> <mi>A</mi> <mn>11</mn> </msub> <mo>+</mo> <mi>y</mi> <msub> <mi>A</mi> <mn>12</mn> </msub> <mo>+</mo> <mi>z</mi> <msub> <mi>A</mi> <mn>13</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <msup> <mi>y</mi> <mo>&prime;</mo> </msup> <mi>C</mi> </msub> <mo>=</mo> <msub> <mrow> <mrow> <mo>(</mo> <mo>-</mo> <mi>x</mi> <mo>)</mo> </mrow> <mi>B</mi> </mrow> <mn>11</mn> </msub> <mo>+</mo> <mi>y</mi> <msub> <mi>B</mi> <mn>12</mn> </msub> <mo>+</mo> <mi>z</mi> <msub> <mi>B</mi> <mn>13</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <msup> <mi>z</mi> <mo>&prime;</mo> </msup> <mi>C</mi> </msub> <mo>=</mo> <msub> <mrow> <mrow> <mo>(</mo> <mo>-</mo> <mi>x</mi> <mo>)</mo> </mrow> <mi>C</mi> </mrow> <mn>11</mn> </msub> <mo>+</mo> <mi>y</mi> <msub> <mi>C</mi> <mn>12</mn> </msub> <mo>+</mo> <mi>z</mi> <msub> <mi>C</mi> <mn>13</mn> </msub> </mtd> </mtr> </mtable> </mfenced> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>7</mn> <mo>)</mo> </mrow> </mrow> </math>
<math> <mrow> <mfenced open='{' close=''> <mtable> <mtr> <mtd> <msub> <msup> <mi>x</mi> <mo>&prime;</mo> </msup> <mi>D</mi> </msub> <mo>=</mo> <msub> <mrow> <mrow> <mo>(</mo> <mo>-</mo> <mi>x</mi> <mo>)</mo> </mrow> <mi>A</mi> </mrow> <mn>11</mn> </msub> <mo>+</mo> <mrow> <mo>(</mo> <mo>-</mo> <mi>y</mi> <mo>)</mo> </mrow> <msub> <mi>A</mi> <mn>12</mn> </msub> <mo>+</mo> <mi>z</mi> <msub> <mi>A</mi> <mn>13</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <msup> <mi>y</mi> <mo>&prime;</mo> </msup> <mi>D</mi> </msub> <mo>=</mo> <msub> <mrow> <mrow> <mo>(</mo> <mo>-</mo> <mi>x</mi> <mo>)</mo> </mrow> <mi>B</mi> </mrow> <mn>11</mn> </msub> <mo>+</mo> <mrow> <mo>(</mo> <mo>-</mo> <mi>y</mi> <mo>)</mo> </mrow> <msub> <mi>B</mi> <mn>12</mn> </msub> <mo>+</mo> <mi>z</mi> <msub> <mi>B</mi> <mn>13</mn> </msub> </mtd> </mtr> <mtr> <mtd> <msub> <msup> <mi>z</mi> <mo>&prime;</mo> </msup> <mi>D</mi> </msub> <mo>=</mo> <msub> <mrow> <mrow> <mo>(</mo> <mo>-</mo> <mi>x</mi> <mo>)</mo> </mrow> <mi>C</mi> </mrow> <mn>11</mn> </msub> <mo>+</mo> <mrow> <mo>(</mo> <mo>-</mo> <mi>y</mi> <mo>)</mo> </mrow> <msub> <mi>C</mi> <mn>12</mn> </msub> <mo>+</mo> <mi>z</mi> <msub> <mi>C</mi> <mn>13</mn> </msub> </mtd> </mtr> </mtable> </mfenced> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>8</mn> <mo>)</mo> </mrow> </mrow> </math>
Obviously, point a 'does not have a linear relationship with point B', point C ', and point D', respectively.
And because this is four points on the three-dimensional space, these four points are linearly related, and of the points a ', B', C ', D', the coordinates of one point can be linearly represented by three more points, k1,k2,k3Are respectively real numbers other than zero, then
[xA′,yA′,zA′]=k1·[xB′,yB′,zB′]+k2·[xC′,yC′,zC′]+k3·[xD′,yD′,zD′](9) Substituting the above formulae (5), (6), (7) and (8) can give:
k 1 - k 2 - k 3 = 1 k 1 + k 2 - k 3 = - 1 k 1 + k 2 + k 3 = 1 - - - ( 10 )
solving the equation set to k1=1,k2=-1,k 31. The formula (9) is abbreviated as
A′=B′-C′+D′ (11)
In addition, since the points A, B, C, D are respectively symmetrical to the points G, H, E, F about the center O, the
A = - G B = - H C = - E D = - F - - - ( 12 )
Rotational transformation of E
E′=E·T (13)
By substituting formula (12) for formula (13)
E′=E·T=-C·T=-C′ (14)
By the same way, obtain
F′=F·T=-D·T=-D′ (15)
G′=G·T=-A·T=-A′ (16)
H′=H·T=-B·T=-B′ (17)
Therefore, the eight points A, B, C, D, E, F, G, H of the data volume are subjected to rotation transformation to obtain the points a ', B', C ', D', E ', F', G ', H', without eight rotation transformations, only three rotation transformations and three additions are needed, and four negations are needed.
2. Redundancy of three-dimensional data volumes
The three-dimensional data volume has great redundancy and a plurality of empty voxels with the voxel value of 0 according to the iterative formula of ray tracing
sumn=αn·vn(x)+(1-αn)·sumn-1 (18)
Wherein, SumnFor the iteration value (projection value) of the first n sampling points, alphanOpacity of voxel value, v, for the nth sample pointn(x) For the depth-modulated voxel value of the current voxel, Sum0=v0(x)。
As shown in fig. 3, in the two-dimensional tomographic image, except for the region of interest (lung region), there are null pixels, and these null pixels are necessarily null pixels even after the three-dimensional data volume is formed by interpolation of the three-dimensional data, and if these pixels are also subjected to iterative processing without resolution, the computation time is wasted. It can be seen that the voxel values of the three-dimensional data volume have a large degree of redundancy.
3. According to the relation of pixel value and voxel
According to the ray tracing principle, the pixel value on the projection surface is only related to the voxel passed by the ray emitted from the point, so that the voxel can be subjected to block iteration to realize progressive direct volume rendering.
As shown in fig. 1, firstly, two-dimensional tomographic image data of a certain organ is acquired by a CT device, image segmentation is performed in the two-dimensional tomographic image to obtain two-dimensional tomographic CT image data of the certain organ and organs related to the certain organ which need to be three-dimensionally reconstructed, for example, data of parts such as skin, muscle, bone, lung, mediastinum and the like are respectively obtained for a chest film, then three-dimensional data interpolation is performed on the two-dimensional tomographic images of different organs to form an isotropic three-dimensional data body, the x-axis direction of the data body is a horizontal direction, the y-axis direction is a position direction of the two-dimensional tomographic image, and the z-axis direction is a direction far away from a projection plane, and then the following steps are performed according to the method of the present invention:
1) calculating the size of the rotated target data volume
Calculating a rotated target data volume from an isotropic three-dimensional data volume, wherein the length, width and height of the original data volume are M, N, H respectively, the rotation matrix is T, T is required to be a reversible matrix, the inverse matrix of T is T-1, and the length, width and height of the rotated target data volume are M ', N ' and H ', so that
[M′,N′,H′]=[M,N,H]·abs(T)
Where abs (T) represents the absolute value of each element within matrix T.
2) Data volume coordinate translation
The origin of coordinates of the original data volume and the rotated target data volume are translated to the respective geometric centers, and are represented as coordinates of the data volume as shown in fig. 2.
3) Initialization of x-axis and y-axis coordinates
In order to increase the display speed, the invention adopts a mode of interval display every time, namely, projection points with the interval of m (m is a power of 2, as shown in fig. 2, m is 8) are arranged on an x axis, only one point is displayed in each iteration, and after eight times of iteration refreshing display, the complete projection display of the target object can be completed. For this purpose, during initialization, first, the first number of projection points on the x-axis is determined, i.e., x (k) is 0, x (k) is 8, and x (k) is 16, …;
in the y-axis direction, after the coordinate origin translation, if the total number of tomographic images after the interpolation is an odd number (set to 2n +1), the value of y is an integer between [ -n, n ]. If the total tomographic image number is an even number (set to 2n), y takes an integer value between [ -n, n-1 ]. In order to reduce the consumption of the memory and improve the processing speed, the invention only projects at most two images at each time during the three-dimensional reconstruction. For this reason, when initializing, the first reconstructed image is set to y0 ═ n, y1 ═ n (when the total number of tomograms is an odd number), or y0 ═ n-1, and y1 ═ n (when the total number of tomograms is an even number).
4) Initializing a projection data field and a projection template
The projection data area is used for storing the projected image data and initializing the projected image data to a minimum CT value (which is a minimum value provided by a CT equipment manufacturer, and is-2048 in general).
The projection template is used for storing '0' and '1' values, wherein '1' indicates that the ray emitted from the corresponding position of the projection surface meets a voxel point with a volume value which is not empty after passing through a rotated voxel, and otherwise, the ray is '0', and the projection template is initialized to be '0';
5) carrying out rotation assignment and projection processing on data volume
In consideration of the problem of processing speed, the data volume is converted from the rotated data volume to the data volume before rotation to realize rotation operation, and the assignment of the data volume is realized by adopting a nearest neighbor interpolation method.
As shown in fig. 2, in order to save memory, only two pieces of two-dimensional tomographic data including eight symmetric points in the original data volume and the rotated data volume, i.e., the plane a 'B' C 'D' and the plane E 'F' G 'H', as well as the projection plane data volume and the projection template, exist in the memory at the same time. Assuming that the coordinates of the first quadrant point B 'are (x, y, z), the coordinates of the second and third quadrants C', D 'are (-x, y, z), (-x, -y, z), and assuming that the coordinates of the rotated data volume at points a', B ', C', D ', E', F ', G', H 'correspond to the coordinates of the original data volume at points a, B, C, D, E, F, G, H, the following processes are performed for points B', C ', D':
B=B′·T-1,C=C′·T-1,D=D′·T-1
since the rotation is reversible, it follows from the above formula
A = B - C + D E = - C F = - D G = - A H = - B
The coordinates of the corresponding points of the other seven quadrants can be obtained by only traversing the data volume of the first quadrant.
After the corresponding coordinates of the data of the rotated data volume in the original data volume are calculated, if the calculated coordinates do not exceed the original data space and the voxel value of the corresponding coordinates is not null, the point data is assigned to the voxel value of the corresponding coordinates of the rotated data volume, and the data is searched at intervals of m data on the X axis during traversal, wherein m is usually the integral power of 2.
When the voxel of the first quadrant of the plane A 'B' C 'D' is traversed, the data of other seven quadrants of the two corresponding pieces of data are also traversed, and in the process of traversing assignment, when a non-empty voxel value appears in the Z-axis direction, the corresponding (x, y) position of the projection template is set as '1', otherwise, the initial value is still unchanged as '0'.
6) Projection processing
And performing ray tracing on the two obtained data along the Z axis, and determining whether the ray tracing is performed or not according to the value of the projection template. If the template value of the current point is 0, it indicates that the light is not shielded by the target object, and no processing is performed, if the template value is 1, the light tracking is performed, and the value obtained by the light tracking is filled in the corresponding pixel point in the projected image.
Ray tracing iteration is carried out on the two pieces of data along the Z axis, and the specific steps are as follows:
a, emitting rays from a projection surface, and traversing voxel points in the ray direction (Z-axis direction);
b, if the value of the coordinate point corresponding to the projection template is '0', setting the pixel as a background color, turning to a, and otherwise, turning to c;
c, recording a subscript for finding a first pixel point containing information;
d, calculating the opacity from the found subscript, and performing illumination mapping and depth modulation;
e, drawing the pixel of the point;
f, turning to a until all data processing is completed.
7) After the two images are processed, the plane is moved by one unit along the Y axis (i.e. Y0 is Y0-1, Y1 is Y1+1), and the other two images in the data volume are taken for processing of 5 th and 6 th images until Y0 is 0;
8) performing projection display
After the processing of 4), 5), 6), 7), refreshing a screen, wherein the refreshing aims to overlap the current projection result and the previous projection result and then display the projection result;
9) then let x (k +1) ═ x (k) +1, return to 4) repeat the process until after all points on the x-axis have traversed, the fast progressive projection ends.
The following is a comparison of the results of the tests:
the test hardware is configured to: CPU, p42.4g; a memory 768M; a display memory, a shadowless tyrant 128M; hard disk, Xijie 60G, 7200rpm.
30 two-dimensional tomographic images (88 images after interpolation) are read in, and the space occupied by the two-dimensional tomographic images is 512 × 512 × 88, which is 230,686,762 bytes of data. The time spent in the projection of the rotation (X: 50 degrees, Y: 0 degrees, Z: 340 degrees) is:
the traditional algorithm is as follows: 41 seconds, the algorithm of the method: for 12 seconds.
Generally, volume rendering is performed on about 80 frames of two-dimensional tomographic images by the method, and under the above hardware conditions, about 15 seconds are required.
As can be seen from the comparative experiment result, the method of the invention can greatly reduce the time of rotation and projection, thereby accelerating the three-dimensional reconstruction of the CT image.
Fig. 4 shows an example of the processing by the method, which shows the process and effect of three-dimensional imaging of lung tissue in a chest film and the effect of three-dimensional imaging of bone tissue at the same position. In this example, the coordinate interval on the x-axis is set to m-8, and fig. a is the superimposed projection effect when x-3, that is, fig. a is a value 0, 1, 2, 3 on the x-axis; as a result of performing four iterative projections 0+8, 1+8, 2+8, 3+8, …, when x is 7, all eight iterative projections of 0, 1, 2, 3, 4, 5, 6,7, 0+8, 1+8, 2+8, 3+8, 4+8, 5+8, 6+8, 7+8, … are completed, because m is 8, and as shown in fig. e, a clear three-dimensional display of the lung organ tissue can be obtained.
The figure f is the result of three-dimensional imaging of bone tissues of the same group of CT tomograms by adopting the method of the invention. The time required from the reading of the raw data to the obtaining of the graph e is about 12 seconds, and the time required from the reading of the raw data to the obtaining of the graph f is about 13 seconds.

Claims (5)

  1. The fast progressive direct volume drawing three-dimensional reconstruction method of CT image includes the steps of firstly, collecting two-dimensional tomographic image data of organs by CT equipment, carrying out image segmentation in the two-dimensional tomographic image to obtain two-dimensional tomographic image data of organs needing three-dimensional reconstruction and organs related to the organs, and then carrying out three-dimensional data interpolation on the two-dimensional tomographic images of different organs to form isotropic three-dimensional data volume, and is characterized in that: the method is also carried out as follows,
    1) calculating the size of the rotated target data volume
    Calculating the size of the rotated target data volume according to the isotropic three-dimensional data volume value;
    2) data volume coordinate translation
    Translating the original data volume and the rotated coordinate origin of the target data volume to respective geometric centers;
    3) initialization of x-axis and y-axis coordinates
    For the x-axis, determining the first projection point on the x-axis, and setting other projection points with the interval of m, namely x (k) is 0, x (k) is 8, x (k) is 16, …, m is the power of 2,
    setting a first pair of reconstructed images on a y axis, wherein when the number of total tomograms is an odd number, y0 is n, y1 is-n, and when the number of total tomograms is an even number, y0 is n-1, and y1 is-n;
    4) initializing a projection data field and a projection template
    Initializing the projection data area to a minimum CT value, and initializing the projection template to '0';
    5) performing rotation assignment on data body
    Traversing the data body of a first quadrant for the data body of original data at the same time, two pieces of two-dimensional fault data containing eight symmetrical points in the rotated data body, a projection plane data body and a projection template, calculating corresponding coordinates of the data of the rotated data body in the original data body, assigning the data to the voxel value of the corresponding coordinate of the rotated data body if the calculated coordinates do not exceed the original data space and the voxel value of the corresponding coordinate is not empty, correspondingly completing the traversal of the data of other seven quadrants after the voxel of the first quadrant is traversed, and setting the corresponding position of the projection template to be '1' when a non-empty voxel value appears in the Z-axis direction, or not changing;
    6) projection processing
    Performing ray tracing on the two obtained data along the Z axis, when the template value of the current point is 0, not processing, and when the template value is 1, performing ray tracing, and filling the value obtained by ray tracing to a corresponding pixel point in the projected image;
    7) after the two images are processed, the plane is shifted by one unit along the Y axis, namely Y0 is equal to Y0-1, Y1 is equal to Y1+1, and the other two images in the data volume are taken to be processed in the 5 th image and the 6 th image until Y0 is equal to 0;
    8) performing projection display
    Refreshing a screen, and displaying a projection result;
    9) then let x (k +1) ═ x (k) +1, return to above-mentioned 4) and repeat the process, until all points on the x axis have traversed, the projection of fast progressive three-dimensional reconstruction ends.
  2. 2. The three-dimensional reconstruction method as claimed in claim 1, wherein the size of the rotated target data volume is calculated by assuming that the length, width and height of the original data volume are M, N, H respectively, the rotation matrix is T, T is a reversible matrix, the inverse of T is T-1, and the length, width and height of the rotated data volume are M ', N ', H ' respectively, and then
    [M′,N′,H′]=[M,N,H]·abs(T)
    Where abs (T) represents the absolute value of each element within matrix T.
  3. 3. A method of three-dimensional reconstruction as claimed in claim 1 wherein the data is searched on the X-axis every m data, m being an integer power of 2, during traversal.
  4. 4. The three-dimensional reconstruction method of claim 1, wherein the coordinates of the data of the rotated data volume in the original data volume are calculated, assuming that the coordinates of the first quadrant point B 'are (x, y, z), and the coordinates of the second and third quadrants C', D 'are (-x, y, z), -x, -y, z), and assuming that the coordinates of the rotated data volume points a', B ', C', D ', E', F ', G', H 'correspond to the coordinates of the original data volume points a, B, C, D, E, F, G, H, and the points B', C ', D' are processed as follows: b ═ B'. T-1,C=C′·T-1,D=D′·T-1
    Because the rotation is reversible, it is obtained
    A = B - C + D E = - C F = - D G = - A H = - B .
  5. 5. A three-dimensional reconstruction method as set forth in claim 1, wherein the step of ray tracing along the Z-axis is as follows,
    a, emitting rays from a projection surface, and traversing voxel points in the ray direction;
    b, if the value of the coordinate point corresponding to the projection template is '0', setting the pixel as a background color, turning to a, and otherwise, turning to c;
    c, recording a subscript for finding a first pixel point containing information;
    d, calculating the opacity from the found subscript, and performing illumination mapping and depth modulation;
    e, drawing the pixel of the point;
    f, turning to a until all data processing is completed.
CNB2005100427347A 2005-05-26 2005-05-26 Rapid progressive three-dimensional reconstructing method of CT image from direct volume rendering Expired - Fee Related CN100348158C (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CNB2005100427347A CN100348158C (en) 2005-05-26 2005-05-26 Rapid progressive three-dimensional reconstructing method of CT image from direct volume rendering

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CNB2005100427347A CN100348158C (en) 2005-05-26 2005-05-26 Rapid progressive three-dimensional reconstructing method of CT image from direct volume rendering

Publications (2)

Publication Number Publication Date
CN1711968A true CN1711968A (en) 2005-12-28
CN100348158C CN100348158C (en) 2007-11-14

Family

ID=35717883

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2005100427347A Expired - Fee Related CN100348158C (en) 2005-05-26 2005-05-26 Rapid progressive three-dimensional reconstructing method of CT image from direct volume rendering

Country Status (1)

Country Link
CN (1) CN100348158C (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101165721B (en) * 2006-10-17 2010-06-02 国际商业机器公司 Ray tracking method and system
CN101477677B (en) * 2008-12-25 2011-01-19 上海交通大学 Method for tubular object virtually out-turning based on central path
CN102074039A (en) * 2010-09-29 2011-05-25 深圳市蓝韵实业有限公司 Method for drawing volume rendering cutting surface
CN101425186B (en) * 2008-11-17 2012-03-28 华中科技大学 Liver subsection method based on CT image and system thereof
CN101290684B (en) * 2007-04-19 2012-07-18 深圳迈瑞生物医疗电子股份有限公司 Three-dimensional ultrasound pattern rapid plotting method and apparatus
CN103136786A (en) * 2013-02-06 2013-06-05 心医国际数字医疗***(大连)有限公司 Method and system for quickly generating three-dimensional view through captive test (CT) graph
CN111419399A (en) * 2020-03-17 2020-07-17 京东方科技集团股份有限公司 Positioning tracking piece, positioning ball identification method, storage medium and electronic device
CN112215953A (en) * 2020-11-10 2021-01-12 中国科学院高能物理研究所 Image reconstruction method and device and electronic equipment
CN116363247A (en) * 2023-03-29 2023-06-30 赛诺威盛医疗科技(扬州)有限公司 CT reconstruction method and device for high-pixel image and storage medium

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3748305B2 (en) * 1997-01-10 2006-02-22 株式会社東芝 X-ray CT apparatus and image processing apparatus
US7215734B2 (en) * 2004-06-30 2007-05-08 General Electric Company Method and system for three-dimensional reconstruction of images
CN1271572C (en) * 2004-08-05 2006-08-23 上海交通大学 Three dimension re-set-up method for two dimension image sequence

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101165721B (en) * 2006-10-17 2010-06-02 国际商业机器公司 Ray tracking method and system
CN101290684B (en) * 2007-04-19 2012-07-18 深圳迈瑞生物医疗电子股份有限公司 Three-dimensional ultrasound pattern rapid plotting method and apparatus
CN101425186B (en) * 2008-11-17 2012-03-28 华中科技大学 Liver subsection method based on CT image and system thereof
CN101477677B (en) * 2008-12-25 2011-01-19 上海交通大学 Method for tubular object virtually out-turning based on central path
CN102074039A (en) * 2010-09-29 2011-05-25 深圳市蓝韵实业有限公司 Method for drawing volume rendering cutting surface
CN102074039B (en) * 2010-09-29 2012-12-19 深圳市蓝韵网络有限公司 Method for drawing volume rendering cutting surface
CN103136786A (en) * 2013-02-06 2013-06-05 心医国际数字医疗***(大连)有限公司 Method and system for quickly generating three-dimensional view through captive test (CT) graph
CN103136786B (en) * 2013-02-06 2016-01-13 心医国际数字医疗***(大连)有限公司 A kind of CT figure generates the method and system of 3-D view fast
CN111419399A (en) * 2020-03-17 2020-07-17 京东方科技集团股份有限公司 Positioning tracking piece, positioning ball identification method, storage medium and electronic device
CN112215953A (en) * 2020-11-10 2021-01-12 中国科学院高能物理研究所 Image reconstruction method and device and electronic equipment
CN112215953B (en) * 2020-11-10 2023-11-17 中国科学院高能物理研究所 Image reconstruction method and device and electronic equipment
CN116363247A (en) * 2023-03-29 2023-06-30 赛诺威盛医疗科技(扬州)有限公司 CT reconstruction method and device for high-pixel image and storage medium
CN116363247B (en) * 2023-03-29 2023-10-20 赛诺威盛医疗科技(扬州)有限公司 CT reconstruction method and device for high-pixel image and storage medium

Also Published As

Publication number Publication date
CN100348158C (en) 2007-11-14

Similar Documents

Publication Publication Date Title
CN1711968A (en) Rapid progressive three-dimensional reconstructing method of CT image from direct volume rendering
CN1236729C (en) Image restructuring method, its software and used recording medium and radiation camera
CN100475146C (en) Methods and apparatus for divergent fast beam tomography
CN106815813B (en) Method for processing a multi-energy computed tomography image data set and image data processing device
Dai et al. Real-time visualized freehand 3D ultrasound reconstruction based on GPU
CN103180879B (en) For carrying out equipment and the method for hybrid reconstruction to object from data for projection
CN107767436B (en) Volume rendering with segmentation to prevent color bleed
CN1716317A (en) Sliding texture volume rendering
CN1918605A (en) Motion artifact compensation
CN1573321A (en) Radiographic apparatus
CN1739455A (en) Processing system and method for reconstructing 3D pyramidal CT image
EP1649421A2 (en) Metal artifact correction in computed tomography
CN1722177A (en) The device and the computer product that show cross-sectional image
CN110057847B (en) TR (transmitter-receiver) tomography projection rearrangement method and device
US20140016847A1 (en) Multi-phase computed tomography image reconstruction
CN1600273A (en) Operation method of fault radiography imaging checker and X-ray fault radiography appts.
CN1615801A (en) Computer aided image acquisition and diagnosis system
US20180286087A1 (en) Volume image reconstruction using projection decomposition
CN1916965A (en) Orthographic projection and back projection methods for body to be measured based on general image display card
US20170365076A1 (en) Virtual projection image method
US20060027749A1 (en) Image correction method, image correction apparatus, and image correction program
CN111476854B (en) Image reconstruction method, device, terminal and storage medium
US8379948B2 (en) Methods and systems for fast iterative reconstruction using separable system models
JP4032357B2 (en) Image information processing apparatus and method, and program
CN106097411A (en) CT Scanner pattern, image rebuilding method and high resolution ct scanner unit

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
C17 Cessation of patent right
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20071114

Termination date: 20100526