Bernhard Petersch | Semester project |
Section Physique, EPFL | February 1999 |
The goal of the project was to implement the Dynamic Programming Algorithm (DPA) to detect open contours in biomedical images. The algorithm itself has been written in C and IDL (Interactive Data Language by Research Systems) has been used as an input/output interface.
The DPA is a very powerful and fast algorithm which optimises an energy function in order to find the optimum approximation of the contour. A big advantage of the DPA is that it considers a big ensemble of possible paths and then takes a final decision about which is the best one using a backtracking procedure.
The DPA is capable of completely automated contour extraction, fact that makes it interesting for tasks where big volumes of similar images have to be processed.
Figure 1 shows a picture of a piece of an artery which has been taken by means of microscopy at the Biomedical Engineering Laboratory at EPFL. The DPA has detected the outer artery walls (red lines). Filming the artery while pulsating due to a flow of some liquid within it (e.g. blood like in the bodies of humans and animals) generates a sequence of images which can be used with the DPA to detect the artery walls and - for example - trace the temporal evolution of the artery's diameter.
Figure 2 shows a so-called Mmode (or TimeMode) Echocardiogram. The vertical axis represents the depth of the tissue (heart) while the horizontal axis represents time. White areas are regions where the ultrasonic beam has been reflected. Here the DPA has been used to track the intraventricular septum (red line).