*3.4.3 Surface rendering*

The surface rendering produces a 3D surface based on the segmented boundary data points by generating the surface triangles or polygons associated with standard surface-rendering techniques being provided by interpolation [34]. The surface rendering can improve the interpretation of data sets [14]. The surface rendering technique can be classified into indirect surface rendering and direct surface rendering. The direct surface rendering is a special case of volume rendering technique, where the surface is rendered directly from the volume without intermediate geometric representations, setting thresholds or using object labels to define a range of voxel intensities to be viewed [35]. The transparency and colors are used for the better 3D visualization of the volume [36]. As for the indirect surface rendering, it requires that the surfaces of relevant structure boundaries within the volume be identified a priori by segmentation [35]. The example of indirect surface rendering is such as contour filtering and marching cubes. **Figure 10** shows the 3D visualization using surface rendering technique.

Contour filtering decides how contours of two successive slices to be connected where the vertices of the assigned contours should be connected to form triangular mesh [37]. This method is first introduced by Keppel [37] that used the triangulation for 3D surface rendering of contour lines from the medical data slices. The method is then optimized in the work of [38] using simplification algorithm to improve the level of detail as well as rendering speed.

Marching cubes algorithm is also one of the popular surface reconstruction algorithms introduced by Lorensen and Cline to display high-quality surface rendering for medical 3D volume data. The marching cubes algorithm uses a divideand-conquer method [39] in a 3D volume data where the 3D volume is divided into many voxel cubes that form a voxel array. Each cube is made from eight vertices, which represents a voxel value from the volume data. A user-specific parameter value known as isovalue is defined before reconstruction in order to create a surface, also known as isosurface, by determining how the surface intersects with the cube [39]. Therefore, the surface rendering of different parts of the medical data, such as the arteries and atrium of the heart, can be distinguished and visualized,

**Figure 10.**

*(a) The indirect surface rendering of cardiac structure [35] and (b) the direct surface rendering of an MR heart phantom [35].*

**85**

**Figure 11.**

*The 15 unique pattern configurations [39].*

*A Survey on 3D Ultrasound Reconstruction Techniques DOI: http://dx.doi.org/10.5772/intechopen.81628*

are 28

as shown in **Figure 10(b)**. Then, the marching cubes process is moved to the next cube by following the order from left to right, front to back, and top to bottom until the algorithm ends [24]. In the marching cubes algorithm process, each vertex is assigned to a binary number either 1 or 0, where 1 means that the vertex is outside the surface, while 0 means that the vertex is inside the surface. In general, there

= 256 cases on how surface intersects in a voxel cube, since eight vertices are

*Artificial Intelligence - Applications in Medicine and Biology*

tion using surface rendering technique.

improve the level of detail as well as rendering speed.

The surface rendering produces a 3D surface based on the segmented boundary data points by generating the surface triangles or polygons associated with standard surface-rendering techniques being provided by interpolation [34]. The surface rendering can improve the interpretation of data sets [14]. The surface rendering technique can be classified into indirect surface rendering and direct surface rendering. The direct surface rendering is a special case of volume rendering technique, where the surface is rendered directly from the volume without intermediate geometric representations, setting thresholds or using object labels to define a range of voxel intensities to be viewed [35]. The transparency and colors are used for the better 3D visualization of the volume [36]. As for the indirect surface rendering, it requires that the surfaces of relevant structure boundaries within the volume be identified a priori by segmentation [35]. The example of indirect surface rendering is such as contour filtering and marching cubes. **Figure 10** shows the 3D visualiza-

Contour filtering decides how contours of two successive slices to be connected where the vertices of the assigned contours should be connected to form triangular mesh [37]. This method is first introduced by Keppel [37] that used the triangulation for 3D surface rendering of contour lines from the medical data slices. The method is then optimized in the work of [38] using simplification algorithm to

Marching cubes algorithm is also one of the popular surface reconstruction algorithms introduced by Lorensen and Cline to display high-quality surface rendering for medical 3D volume data. The marching cubes algorithm uses a divideand-conquer method [39] in a 3D volume data where the 3D volume is divided into many voxel cubes that form a voxel array. Each cube is made from eight vertices, which represents a voxel value from the volume data. A user-specific parameter value known as isovalue is defined before reconstruction in order to create a surface, also known as isosurface, by determining how the surface intersects with the cube [39]. Therefore, the surface rendering of different parts of the medical data, such as the arteries and atrium of the heart, can be distinguished and visualized,

*3.4.3 Surface rendering*

**84**

**Figure 10.**

*heart phantom [35].*

*(a) The indirect surface rendering of cardiac structure [35] and (b) the direct surface rendering of an MR* 

as shown in **Figure 10(b)**. Then, the marching cubes process is moved to the next cube by following the order from left to right, front to back, and top to bottom until the algorithm ends [24]. In the marching cubes algorithm process, each vertex is assigned to a binary number either 1 or 0, where 1 means that the vertex is outside the surface, while 0 means that the vertex is inside the surface. In general, there are 28 = 256 cases on how surface intersects in a voxel cube, since eight vertices are

**Figure 11.** *The 15 unique pattern configurations [39].*

**Figure 12.** *The "hole problem" [40].*

contained in a cube and are represented as binary number. Due to the fact that some of the cases are the inverse or symmetry of each other, the 256 cases are reduced into 15 cases with unique pattern configuration [33] and are put in a lookup table. The 15 unique pattern configurations are as shown in **Figure 11**.

The marching cubes algorithm has been implemented in the 3D reconstruction of medical data, such as in medical imaging reconstruction and creating a 3D contour of a mathematical scalar field [40] and in CT reconstruction [24]. Because of the utilization of lookup table, the marching cubes algorithm is fast and simple to use. It is also capable to take full advantage of the graphical processing unit (GPU) acceleration function to create good 3D reconstruction result [24].

However, the original marching cubes algorithm suffers from the connectivity problems between triangle of adjacent cubes also known as the "hole problem" [40], which will cause the reconstruction result to be not smooth. **Figure 12** shows the "hole problem" found in the conventional marching cubes algorithm. In order to solve this issue, the efforts have been made by the past researchers, such as modifying the lookup table, extending the look-up table, etc. In [40] introduced the 21 unique pattern configurations that will always ensure the triangles of adjacent cubes will connect to each other.

By the comparison, Wan et al. [14] found out that the marching cubes algorithm can produce sharper 3D ultrasound reconstruction image when compared with the contour filtering algorithm. Besides that, the result using marching cubes algorithm is easier to detect the edges and inner part of the ROI. However, the conventional marching cubes algorithm can generate a very large number of triangles for the 3D visualization [38]. In summary, marching cubes algorithm trades off speed for higher level of detail, while contour filtering sacrifices some details for computational speed.
