In this section we present a set of results obtained with the methods presented in Sections 7.5-7.8. The main application context is medical images.

Now, we demonstrated the utility of image diffusion methods in our work. We take a synthetic 150 x 150 x 150 image volume composed of a sphere with a radius of 30 and an ellipsoid with axes 45, 60, and 30 inside a uniform noise specified by the image intensity range 0-150.

Figure 7.13 shows the result for steps (1)-(4) in Section 7.5, applied to this volume after Gaussian diffusion (Fig. 7.13(a)), and anisotropic diffusion

Figure 7.13: (a) Result for steps (1)-(4) with Gaussian diffusion. (b) Cross sections of (a) for slice 40. (c) Cross section of final solution for slice 40. (d) Result for steps (1)-(4) with anisotropic diffusion. (e) Cross sections of (d) for slice 40. (f) Cross section of final solution when using anisotropic diffusion (slice 40).

Figure 7.13: (a) Result for steps (1)-(4) with Gaussian diffusion. (b) Cross sections of (a) for slice 40. (c) Cross section of final solution for slice 40. (d) Result for steps (1)-(4) with anisotropic diffusion. (e) Cross sections of (d) for slice 40. (f) Cross section of final solution when using anisotropic diffusion (slice 40).

where the threshold K can be determined by a histogram of the gradient magnitude. It was set to K = 300 in this example. The number of interactions of the numerical scheme used [52] to solve this equation was 4.

Figures 7.13(b) and (e) show the cross section corresponding to the slice 40. We observe that with anisotropic diffusion (Fig. 7.13(e)), the result is closer to the boundary than with the Gaussian one (Fig. 7.13(b)).

Also, the final result is more precise when preprocessing with anisotropic diffusion (Fig. 7.13(f)). This is expected because, according to Section 7.8, Eq. (7.45) enables the blurring of small discontinuities (gradient magnitude below K) as well as enhancement of edges (gradient magnitude above K).

Another point becomes clear in this example: The topological abilities of T-surfaces enable the correction of the defects observed in the surface extracted through steps (1)-(4). We observed that, after few interactions, the method gives two closed components. Thus, the reconstruction becomes better.

The T-surface parameters used are: c = 0.65, k = 1.32, and y = 0.01. The grid resolution is 5 x 5 x 5, freezing point is set to 15, and threshold T e (120, 134) in Eq. (7.12). The number of deformation steps for T-surfaces was 17. The model evolution can be visualized in http://virtual01.lncc.br/ rodrigo/tese/elipse.html.

This section demonstrates the advantages of applying T-surfaces plus isosurface methods. Firstly, we segment an artery from an 80 x 86 x 72 image volume obtained from the Visible Human project. This is an interesting example because the intensity pattern inside the artery is not homogeneous.

Figure 7.14(a) shows the result of steps (1)-(4) when using T e (28, 32) to define the object characteristic function (Eq. (7.27)). The extracted topology is too different from that of the target. However, when applying T-surfaces the obtained geometry is improved.

Figure 7.14(b) shows the result after the first step of evolution. The merges among components improve the result. After four interactions of the

Figure 7.14: (a) Result of steps (1)-(4) with grid 3 x 3 x 3. (b) T-surfaces evolution (step 1). (c) Solution for initial grid. (d) Final solution for grid 1 x 1 x 1.

Figure 7.14: (a) Result of steps (1)-(4) with grid 3 x 3 x 3. (b) T-surfaces evolution (step 1). (c) Solution for initial grid. (d) Final solution for grid 1 x 1 x 1.

T-surfaces algorithm, the extracted geometry becomes closer to that of the target (Fig. 7.14(c)).

However, the topology remains different. The problem in this case is that the used grid resolution is too coarse if compared with the separation between branches of the structure. Thus, the flexibility of the model was not enough to correctly perform the surface reconstruction.

The solution is to increase the resolution and to take the partial result of Fig. 7.14(c) to initialize the model in the finer resolution. In this case, the correct result is obtained only with the finest grid (1 x 1 x 1). Figure 7.14(d) shows the desired result obtained after nine interactions. We also observe that new portions of the branches were reconstructed due to the increase of T-surfaces flexibility obtained through the finer grid. We should emphasize that an advantage of m

Figure 7.15: (a) Example showing an incorrect result. (b) Anisotropic diffusion in a preprocessing phase improving final result.

the multiresolution approach is that at the lower resolution, small background artifacts become less significant relative to the object(s) of interest. Besides, it avoids the computational cost of using a finer grid resolution to get closer to the target (see Section 7.4).

The T-surfaces parameters are y = 0.01, k = 1.222, and c = 0.750. The total number of evolution is 13. The number of triangular elements is 10 104 for the highest resolution and the clock time was of the order of 3 min.

Sometimes, even the finest resolution may not be enough to get the correct result. Figure 7.15(a) pictures such an example.

In this case, we segment an artery from a 155 x 170 x 165 image volume obtained from the visible human project. The T-surfaces parameters are: c = 0.75, k = 1.12, y = 0.3, grid resolution is 4 x 4 x 4, and freezing point is set to 10. The result of steps (1)-(6) is pictured in Fig. 7.15(a).

Among the proposals to address this problem (relax the threshold, mathematical morphology [59], etc.), we tested anisotropic diffusion [52]. The properties of this method (Section 7.8) enable smoothing within regions in preference to smoothing across boundaries. Figure 7.15(b) shows the correct result obtained when preprocessing the image with anisotropic diffusion and then applying steps (1)-(6).

In this section, we attempt to experimentally demonstrate our out-of-core segmentation technique. We consider three gray-level data sets and a 3D color image (Table 7.1).

Data set |
Artery |
Artery2 |
Kidney |
ColorV |

Size (MB) |
3.37 |
20.97 |
4.57 |
63.08 |

No. of MC |
125 |
1000 |
7600 |
125 |

MC generation (sec) |
3 |
25 |
5 |
58 |

Gradient (sec) |
16 |
88 |
24 |
1740 |

IT (sec) |
0.5 |
0.5 |
0.5 |
1.5 |

Total (sec) |
20 |
114 |
30 |
1801 |

MC size (kB) |
343.04 |
285.696 |
8.2944 |
2718.72 |

IT size (kB) |
38.62 |
379.13 |
938.95 |
176.01 |

As we already said, T-surfaces uses auxiliary and very memory consuming data structures. We certainly can design optimizations. However, by now, we had to use a machine with enough memory to manage the T-surfaces structures. The machine used is Pentium III, 863 MHz with 512 MB of RAM and 768 MB of swap space.

There are three main steps to be considered: preprocessing, isosurfaces generation, and T-surfaces evolution. Preprocessing encompasses the gradient computation and meta-cell generation. Meta-cell generation is basically divided into two steps: (a) mapping data points into meta-cells and writing data information to the corresponding meta-cells; and (b) finding meta-intervals and computing the interval tree. As can be seen in Table 7.1, preprocessing step can be expensive due to the gradient computation. Also, we observe from this table that the interval tree size (last row) is very much smaller than the bound computed in Section 7.7 (8 MB).

Isosurfaces generation encompasses steps (1) and (2) of the algorithm in Section 7.7. Table 7.2 reports some performance statistics for this step. In this case, we use a data cache of 15 MB.

It is important to observe that, in general, the smaller the meta-cell size, the faster the isosurface search. This fact is verified in Table 7.2 in which we vary the number of meta-cells used for the kidney data set. For instance, when using 7600 meta-cells, the algorithm can fetch all the sets of active meta-cells from disk. Thus, there are no extra I/O operations during step (1) of the segmentation

No. of MC |
7600 |
1000 |
288 |
125 |

ActiveMC |
1140 |
474 |
256 |
125 |

IT size (kB) |
938.95 |
203.56 |
61.23 |
21.25 |

IT time (sec) |
1 |
1 |
1 |
1 |

IsoTime (sec) |
13 |
15 |
15 |
20 |

algorithm. Also, the meta-cell technique minimizes the effect of the I/O bottleneck by reading from disk only those portions of the data necessary for step (1). Besides, the time for an interval tree query was approximately 1 sec ("IT time" in Table 7.2). As a consequence, if compared with the traditional implementation, we observe a performance improvement of 2 sec when using 7600 meta-cells.

The final step, the T-surfaces evolution, is globally reported in Table 7.3 for the kidney data set, maintaining the same partitions of Table 7.2. The quantity "no. of I/O" reported in this table counts the number of times that the algorithm reads a meta-cell from disk.

Again, the smaller the meta-cell size, the faster the whole process. Despite the high number of I/O operations reported in row 2 of Table 7.3, we must highlight that the total time for T-surfaces evolution without using the meta-cell was 623 sec, against 600 sec for the worst case reported in Table 7.3. For the best case, we observe a performance improvement of 120 sec, which is an important result. The final surface (Fig. 7.16(c)) has 34 624 triangular elements.

Table 7.3: T-surfaces in the kidney data set. This table reports the number of meta-cells (no. of MC), of number I/O operations (no. of I/O), number of meta-cells that have been cut (CutMC), and the total clock time for evolution (time). The data cache size is 15 MB and the number of interactions is 16

No. ofMC 7600 1000 288 125

No. of I/O 1244 4780 1818 1458

CutMC 1074 325 125 70

Time (sec) 503 570 584 600

Figure 7.16: Extracted surfaces for: (a) artery data set; (b) artery2; and (c) kidney data set.

The number of I/O operations is a problem that we must address in future works. If we compare the "no. of I/O" with the number of meta-cells that the T-surfaces cuts during evolution (cutMC, in row 3), we observe that we should look for more efficient schemes for memory management.

The parameters used in the T-surfaces for the above experiments are: grid 4 x 4 x 4, freezing point = 10, y = 0.01, k = 1.222, c = 0.750. The intensity pattern of the targets is given by the following ranges: [10, 22] for data set, [195, 255] for kidney, and [15, 30] for artery2. Figure 7.16 shows the extracted surfaces.

The data set artery2 is a gray-level version of a volume obtained from the Visible Human project. The ColorV data set, mentioned in Table 7.1, is the same volume, but in its original color (RGB). We apply our method for this volume, just using one threshold for each color channel [7] and using the color edge definition given in Section 7.8.

The Visual Human project encompasses a huge color data set of human body. For 125 meta-cells, we found R, G, and B interval trees with 64.75 kB, 65.67 kB and 45.59 kB, respectively, given the total size of 176.01 kB reported in Table 7.1. The preprocessing time is much higher now (29 min) due to the number of operations required to compute the gradient.

Was this article helpful?

## Post a comment