
 
Further on, image processing techniques are used 
to quantify gene expression levels present in the 
captured microarray image, in order to identify a 
gene in a biological sequence and to predict the 
function of the identified gene. The flow of 
processing a microarray image (Yang, 2001) is 
generally separated in the following tasks: 
addressing, segmentation, intensity extraction and 
pre-processing to improve image quality and 
enhance weakly expressed spots. The first step 
associates an address to each spot of the image. In 
the second one, pixels are classified either as 
foreground, representing the cDNA spots, or as 
background. The last step calculates spot intensities 
and estimates background intensity values. 
The major tasks of microarray image processing, 
which contributes in fulfilling the last mentioned 
steps, are to identify the array format including the 
array layout, spot size and shape, spot intensities and 
distances between spots. The main parameters taken 
into consideration in microarray image processing 
are accuracy and time. The accuracy is given by the 
quality of image processing techniques. The second 
parameter, time, is critical due to the large amount of 
data contained in a microarray image. A regular 
microarray image has up to hundreds of MB, and it 
can be divided in independent sub-images, which 
consists in a compact group of spots as it can be seen 
in figure 1. Sophisticated computational tools are 
available for microarray image processing but, their 
main disadvantages are the increased computational 
time and the user intervention needed in processing. 
To overcome the previous disadvantages, 
microarray images are analyzed and processed using 
FPGA technology. The hardware implementations 
of microarray image processing techniques make use 
of the features of FPGA, which allow accessing at 
the same time hundreds of memory addresses. In this 
way, calculations specific to microarray image 
processing are made in parallel, increasing the 
processing speed.  For this kind of processing, image 
acquisition is mandatory and its description is 
presented in the following papers (Belean, 2008).  
This paper proposes hardware strategies for 
microarray image processing (paragraph 2), and also 
an implementation of spot border detection 
algorithm using the Canny filter. 
2  FPGA & MICROARRAYS  
FPGA technology uses pre-built logic blocks and 
programmable routing resources to configure these 
chips and to implement custom hardware 
functionality. Their main benefits are the low cost, 
the short time to market and also the increased 
performance due to their structure which is able to 
exploit spatial and temporal parallelism. These 
advantages will be used to develop a system on a 
chip in order to process the microarray images in a 
manner that does not need user intervention. Also, 
time being critical in microarray image processing, 
using FPGA technology will decrease the 
computational time due to its parallel computation 
capabilities. The main goal of this approach for 
microarray image processing is to obtain a device 
which will be able to extract and quantify gene 
expression  a lot more faster than existing 
computational tools, so that microarray analyses to 
be easily performed on a large number of subjects 
(thousands of patients and different diseases). This 
task can hardly be achieved with the existing tools 
which are time consuming and which also need user 
intervention. 
2.1  Hardware Implementation for 
Microarray Image Processing 
The hardware implementation strategies for 
microarray image processing techniques presented in 
this paper takes advantage of the structure size and 
shape of a microarray image. As in figure 1, a piece 
of the microarray image is delimited, and represents 
an independent microarray sub-image. Taking into 
account that the microarray image composed by 
independent sub-images is written in a RAM 
memory after the acquisition, a first step in 
processing is to crop the image by determining the 
address and dimension of each sub-image. Once 
these parameters are known, the independent sub-
images are copied one by one in the Block RAM 
memory inside the FPGA for further processing 
which consists in addressing each spot of the image. 
This type of memory offers multi-port and high 
speed access needed for the next step of processing 
which aims to determine the spot contour and extract 
the spot intensity for quantifying gene expression. 
The image being cropped and copied into the 
Block RAM memory, hardware design techniques 
such as parallelism and pipelining can be developed 
using FPGA technology. These techniques will be 
presented in the next subchapters. 
2.1.1 Hardware Algorithms 
Image processing operations like median filters and 
gradient calculation are based on the convolution, 
which is included in a class of algorithms called 
BIODEVICES 2009 - International Conference on Biomedical Electronics and Devices
360