In this paper, we propose a two-stage labeling method of large biomedical datasets through a parallel approach
in a single GPU. Diagnostic methods, structures volume measurements, and visualization systems are of major
importance for surgery planning, intra-operative imaging and image-guided surgery. In all cases, to provide
an automatic and interactive method to label or to tag different structures contained into input data becomes
imperative. Several approaches to label or segment biomedical datasets has been proposed to discriminate
different anatomical structures in an output tagged dataset. Among existing methods, supervised learning
methods for segmentation have been devised to easily analyze biomedical datasets by a non-expert user. However,
they still have some problems concerning practical application, such as slow learning and testing speeds. In
addition, recent technological developments have led to widespread availability of multi-core CPUs and GPUs,
as well as new software languages, such as NVIDIA's CUDA and OpenCL, allowing to apply parallel programming
paradigms in conventional personal computers.
Adaboost classifier is one of the most widely applied methods for labeling in the Machine Learning community.
In a first stage, Adaboost trains a binary classifier from a set of pre-labeled samples described by a set of
features. This binary classifier is defined as a weighted combination of weak classifiers. Each weak classifier is a
simple decision function estimated on a single feature value. Then, at the testing stage, each weak classifier is
independently applied on the features of a set of unlabeled samples.
In this work, we propose an alternative representation of the Adaboost binary classifier. We use this proposed
representation to define a new GPU-based parallelized Adaboost testing stage using OpenCL. We provide
numerical experiments based on large available data sets and we compare our results to CPU-based strategies
in terms of time and labeling speeds.