Image processing is often very demanding on computer power. Most image processing algorithms are based on highly iterative loops, either due to the image's pixel spanning necessity or the nature of the algorithm itself. Thanks to this, image processing algorithms can easily be parallellized and take advantage of parallel computers, such as the Swiss-TX.
The parallelization of image processing routines may be achieved at various levels, starting at the level of the image itself and descending down to the level of the most inner loops of a specific base processing routine (such as convolution, morphologic erosion, extrema detection, etc...). Parallelizing at the top-most level - the image level - has nonetheless the advantage of being very simple to implement and leading generally to a very efficient parallelization, since the communication between the processing nodes is reduced at its minimum.
|

|
|
Parallellization through image tiling.
|
In order to demonstrate the appropriateness of parallel computers especially the Swiss-TX for parallel image processing, a typical bio-medical images analysis application has been ported to the Swiss-TX. This application was developed originally with the Institute of Cellular Biology and Morphology (IBCM), University of Lausanne (UNIL), and deals with analysis of electron microscopy images of neural cell internal structures (See the 'Microtubules' project).
|

|
|
Time gaine factor obtained through parallellization
on 2, 4 and 6 processing nodes.
|