You are on page 1of 7

VLSI based Histogram Peak climbing Data clustering algorithm for Image segmentation

M.Papayee* M.Subadra** * - M.Papayee, PG Student (II Year M.E. (Optical Communication)), ACCET, Karaikudi. 623 001, Tamilnadu, India. ** - M.Subadra M.E.(PhD), Lecturer, ECE department, ACCET, Karaikudi 623 001, Tamilnadu, India.

Abstract- Image feature separation is a crucial step for image segmentation in computer vision systems. One efficient and powerful approach is the unsupervised clustering of the resulting data set; however, it is a very computationally intensive task. This paper presents a high-performance architecture for unsupervised data clustering. This architecture is suitable for VLSI implementations. It exploits paradigms of massive connectivity like those inspired by neural networks, and parallelism and functionality integration that can be afforded by emerging nanometer semiconductor technologies. The architecture is a realization of the histogram peak-climbing clustering algorithm, and it is the first special-purpose architecture that has been proposed for this important problem. The architecture has also been realized in field programmable gate array (FPGA) environment. I. INTRODUCTION As new algorithms are developed using a paradigm of offline non-real-time implementation, often there is a need to adapt and advance the state of the art of hardware architectures to implement such algorithms in a real-time manner if they are to truly serve a useful purpose in industry and defense, and beyond an academic setting. Such is the case with many underlying algorithms used in computer vision. Image feature separation is an important step for image segmentation in computer vision systems. One efficient and powerful approach to solving this problem is the unsupervised clustering of the resulting data set; however, it is a very computationally intensive task.

The paper presents the mapping of the unsupervised histogram peak-climbing clustering algorithm to a novel high-speed architecture suitable for VLSI implementation. Specifically, this architecture exploits paradigms of massive connectivity like those inspired by neural networks, and parallelism and functionality integration that can be afforded by emerging nanometer semiconductor technologies. Special attention is paid to the clustering of high-dimensional sparse data sets like those found in the clustering of information-rich features used for color texture-based image segmentation. The architecture has also been prototyped using a Xilinx field-programmable gate array (FPGA) development environment. Although this paper discusses a computer vision application, the architecture presented can be utilized in the acceleration of the clustering process of any type of high-volume data, such as in the analysis of gene expression, genomes, genetic sequences, and data mining. II HISTOGRAM BASED DATA CLUSTERING This methodology uses a two dimensional gray level images with the feature can be extracted from the image as the pixel intensity. Color images the features like texture, color, depth are considered as features. Each image in gray level results will from a cluster belonging to the same texture having the same gray level or some what identical to the certain predefined criteria. The images with identical pixel intensity are grouped through this method. The input frame used for this architecture is image of size 128 X 128, if any image with high dimensionality can be reduced to 128 X 128.

Each image contains a feature value of 0 to 255, when the gray scale image is a uint8. According to the dimensionality of the image this gray level values are scattered in the two dimensional space depending on the image intensity and the background. The first step in the algorithm is to compute the amount of feature

values and their respective count. When for a color image, the three different planes are used to represent the coordinates of the red, green and blue values of the image intensity.

Figure 1: Histogram based clustering overall architecture

Once the pixel counts are completed the resulting 256 values (when the image is a uint8 representation) and their respective counts are stored in a register bank for the further processing. III. IMPLEMENTATION OF HISTOGRAM BASED DATA CLUSTERING This new algorithm developed for the off-line non real time implementation. This architecture is suitable for VLSI implementation of massive connectivity like those inspired by neural networks and parallelism and functionality integration. The gray level data clustering uses only single processing element, whereas the color frame uses three dimensional histogram for red, green and blue. This chapter deals with the architectural implementation of the gray level image of size 128 X 128. Computer vision technology to deliver on its promise of real-time data processing and information generation, and these are solutions of special interest to industry and defence. Clustering algorithms can be

implemented in conventional compute platforms, but while these can have high degree of flexibility. The histogram of a digital image with gray levels in the range [0, L-1] is a discrete function h(rk)=nk, where rk is the kth gray level and nk is the number of pixel in the image having the gray level rk. The histogram can be normalized by dividing each of its values by the total number of pixels in the image denoted by n. The normalized histogram is given by P(rk)=nk/n, for k=0,1,.L-1. The histogram manipulation can be effectively used for image enhancement. In the histogram plots, the horizontal axis of each histogram plot corresponds to gray level values rk. The vertical axis corresponds to values of h(rk)= nk or p(rk)= nk/n if the values are normalized. The dark image that the components of the histogram are concentrated on the low (dark) side of the gray scale. The components of the histogram of the bright image are biased towards the high side of the gray scale.

Clustering techniques are image segmentation methods by which individual elements are placed into groups. These groups are biased on some measure of similarity within the group. The major difference between these techniques and the region growing techniques is that domains other than the rc based image space may be considered as the primary domain for clustering. Some of these other domains include color spaces, histogram spaces or complex feature spaces. The simplest method is to divide the space of interest into regions by selecting the center or median along each dimension and splitting it there. This can be done

iteratively until the space is divided into the specific number of regions needed. The next level of complexity uses an adaptive and intelligent method to decide where to divide the space. These methods include histogram thresholding and other, more complex feature-space based statistical methods. Recursive region splitting is a clustering method that has become a standard technique. This method uses a thresholding of histograms technique to segment the image. A set of histograms is calculated for a specific set of features and then each of these histograms is searched for distinct peaks. The best peak is selected and the image is split into regions based on this thresholding of the histogram.

Figure 2: Histogram Thresholding for region splitting

The steps followed in histogram thresholding methods are 1. Consider the entire image as one region and compute histograms for each component of interest ( for example red, green and blue for a color image) 2. Apply a peak finding test to each histogram. Select the best peak and put thresholds on either side of the peak. Segment the image into two regions based on this peak. 3. Smooth the binary thresholded image so that only a single connected sub region is left.

4. Repeat steps 1-3 for each region until no new sub regions can be created, which is no histograms have significant peaks. Two thresholds are selected, one on each side of the best peak. The image is then split into two regions. Region 1 corresponds to those pixels with feature values between the selected thresholds known as those in the peak. Region 2 consists of those pixels with feature values outside the threshold.

IV.FLOW CHART & ALGORITHM

START

INPUT : IMAGE FILE IMAGE TO TEXT CONVERSION USING MATLAB COMPUTE HISTOGRAM & FIND BEST 6 PEAK

SET THRESHOLD ON EITHER SIDE OF EACH PEAK

IS FEATURE VALUE BETWEEN THRESHOLD X (X={0,5}

Th1 True
Segment 1

Th2 True
Segment 2

Th3 True
Segment 3

Th4 True
Segment 4

Th5 True
Segment 5

Th6 True
Segment 6

Outfile 1

Outfile 2

Outfile 3

Outfile 4

Outfile 5

Outfile 6

TEXT TO IMAGE CONVERSION USING MATLAB

SI 1

SI 2

SI 3

SI 4

SI 5

SI 6

END

V. SIMULATION RESULT When considering a 6464 pixel image, the following outputs are taken.

Figure 7: Output Text file 2 & Segmented Image 2

Third Cluster Output

Figure 8: Output Text file 3 & Segmented Image 3 Figure 4: Sample input Image

Resized Image

Fourth Cluster Output

Figure 5: Input Text file & Resized Image

Figure 9: Output Text file 4 & Segmented Image 4

First Cluster Output Fifth Cluster Output

Figure 6: Output Text file 1 & Segmented Image 1 Figure 10: Output Text file 5 & Segmented Image 5

Second Cluster Output

S ix th Clus ter O utput

Figure 11 : Output Text file 6 & Segmented Image 6

Figure 12: Simulation Waveform

VI. CONCLUSION This paper proposes a special-purpose VLSI architecture for the clustering of high-dimensional feature data extracted from images or video frames. We do not need any time consuming segmentation. It has been shown that processing speed is improved with respect to what can be achieved in a generic compute platform. Although this paper discusses a computer vision application, the architecture presented can be utilized in the acceleration of the clustering process of any type of high dimensionality data. This architecture can be used in many military, industrial, and commercial applications that require real-time intelligent machine vision processing of high-quality video. As a general clustering scheme this model can be extended to colour and motion segmentation. REFERENCES [1] Orlando J. Hernandez, A High-Performance VLSI Architecture for the Histogram Peak-Climbing Data Clustering Algorithm in IEEE Transactions on Very Large Scale Integration (VLSI) Systems, Vol. 14, No. 2, February 2006. [2] O. J. Hernandez, High performance VLSI architecture for data clustering targeted at computer vision, in Proc. IEEE SoutheastCon, Apr. 2005, pp. 99104. [3] L. Conde, A. Mateos, J. Herrero, and J. Dopazo, Improved class prediction in DNA microarray gene expression data by unsupervised reduction of the dimensionality followed by supervised learning with a perceptron, J. VLSI Signal Process. Syst. Signal,

Image, Video Technol., vol. 35, pp. 245253, Nov. 2003.

You might also like