5.3 Performance Comparison
A drawback of the Judd’s apparent ridges compared to other lines is that they
tend to be slower to compute as they rely on the view-dependent curvature
and its derivative information. Our method improves the performance of
apparent ridges, leading them to be competitive in speed with other feature
lines, with the all the advantages of apparent ridges.
The code was implemented in C++ language for the main application
using the trimesh2 library [
20
,
19
]. Shaders were written in GLSL [
21
] and
the codes can be found in Appendix A. The original apparent ridges code
was incorporated and adapted to run inside our program for side-by-side and
performance comparisons. The 3D mesh models were collected from [
22
,
23
].
We tested our method and Judd’s on two computers: an ordinary laptop
with a regular graphics card and a high-end workstation with a powerful
graphics card. The laptop has an AMD Turion X2 processor with a 512MB
NVidia GeForce 8200M card while the workstation has a dual AMD Opteron
processor with a 1.5GB NVidia Quadro FX 5600 card. All the cards have
GPU support for vertex and fragment shaders.
The results in tables 5.1 and 5.2 show that our method provides significant
speedups compared to Judd’s, except from the particular cases of the two
smaller models on the laptop. However, the frame rate for these cases is still
high (over 80 FPS).
In the laptop results, it is possible to see that our method performs better
for larger models. Indeed, it can be seen that the speedups between the
methods grow with the mesh size. Another way of interpreting this result is
that the impact of the mesh size is different for the methods, and our method
takes advantage of the graphics card to minimize this impact.
In the workstation results, our method performs better both in absolute
frame rate and relative speedup to Judd’s method. However, it is not possible
to see a clear tendency of speedup growth with the mesh size.
A very interesting result is that, since Judd’s method is CPU-based, it
is expected a speedup from its results when comparing the laptop to the
workstation results. Although it indeed occurs, the frame rates of the larger
models are almost the same. These results show that CPU-based solutions
may not take much advantage of expensive hardware.
In general, the results are very encouraging and show that GPU-based
solutions for line extraction may be a good choice when performance matters.
35