Each cell in the human body contains the same basic code in the form of the genome, however cells have differentiated roles which come about through different cells ‘expressing’ different genes. Key insights into gene interactions can be studied through measuring the level of expression of each gene at different times. Gene expression levels can be obtained from cDNA microarray experiments through the extraction of pixel intensities from a scanned image of a slide. In this talk we will start by briefly reviewing cDNA microarray technology. We will then focus on one problem that arises when processing these images: human error in locating the position of the spots can lead to variabilities in the extracted expression levels. We will present a Bayesian approach to the image processing which alleviates this problem. Our approach makes use of a novel combination of importance sampling and variational approximations. Finally if there is time we will briefly show some examples of the variational importance sampler applied to visual tracking problems.