2011 Eighth International Joint Conference on Computer Science and Software Engineering (JCSSE)
Medical Image Blob Detection with Feature Stability and KNN Classification 2 i Krit Inthajak , Cattleya Duanggate , Bunyarit 3 4 Uyyanonvara , and Stanislav S. Makhanov l234 . . . Department of Information, Computer and
5 Sarah Barman
5
Faculty of Computing, Information Systems and Mathematics, Kingston University
Communication Technology,
Penrhyn Road, Kingston upon Thames, Surrey,
Sirindhorn International Institute of Technology (SIlT),
KTI2EE, UK
Thammasat University, Pathumthani , Thailand 2 i E-mail:
[email protected] [email protected] , 4 3
[email protected] ,
[email protected]
E-mail:
[email protected]
stability
K-Nearest Neighbor algorithm (KNN) is a simple yet
along with the use of KNN algorithm are proposed within this
efficient method of classifying objects based on the closest
paper.
training sample within the feature space. The simplicity and
Abstract-Object
detection
methods
with
feature
A scale-space tree is constructed based on the blobs
that were created from a series of images after blurring. Features and spatial information provides the role in scale space tree construction. After the process of blob extraction, users determine the type of blobs that were detected within the image by distinguishing classes to create ground truth images. Within
the
same
process,
KNN
algorithm
is
applied
to
distinguish classes of the image's blob to demonstrate its
simultaneous
processing
considerably
an
distributed
within
advantage.
computation
of
the
KNN
Erion the
algorithm
is
proposed
a
Plaku
KNN
graph
for
large
dimensional point sets. [15]Performance in object detection is evaluated by demonstrating if blobs can only be linked when their features are stable over scales. The evolution of linked blobs over scales using feature stability presents how
performance.
stable structures are in scale-space. Classes are analyzed and
Keywords: Scale-space; Object detection; Feature stability; K
distinguished
by
Nearest Neighbor
accuracy
determined
is
the
process
of
to
KNN
evaluate
algorithm the
and
algorithm's
efficiency. [16-17] Such processes could lead to a promising I.
and reliable image segmentation and processing procedures.
INTRODUCTION
Pattern recognition and classifications has been one of the crucial
subjects
in
computer
VISIon.
Successfully
implementing them could provide a huge benefit towards the reliability of the system.
The purpose of this task is
Demonstrations of feature stability and KNN algorithm process is introduced in this paper.
KNN's performance is
evaluated by comparing the results with the ground truth data to determine its accuracy.
applying a segmentation of objects to locate the object of interest within an image.
recognition and classification are used after the object of interest has been segmented.
Performance of the output in
object recognition and classification usually depends on the quality
and
accurate
distinguish
objects
after
the
segmentation is applied to the image. Two algorithms were used in the image segmentation; region-based
II.
Consecutive tasks such as object
[1-3] and edge-based segmentations
[4-7].
A.
PROPOSED METHODS
Scale-Space Tree Scale-space theory is a multi-scale representation of a
two-dimension
image,
f (x, y)
,
which
convolution with the Gaussian kernel
is
defined
f(x,y,O")
by
a
0" is a set
of output images in various scales generated by a successive smoothing process.
In addition, parameter
a
moderately
Region of interests such as color, size or shape is required
changes in order to create a series of smooth images. Details
for prior knowledge in order to provide formidable results.
of the image are suppressed noticeable structures
The following features will then be used to specify other
existed during the blurring process.
parameters in order to improve the image's segmentation such as intensity thresholds, entropy, etc. Proposed
by Witkin
and
still
The purpose of scale space construction is to analyze the characteristics of the image's structure from different
Koenderink,
scale
space
aspects. Light blobs are created due to the scale parameter
technique is a framework on a multi-scale representation
results
which has been developed for computer vision in order to
structures. [18] As a scale space tree constructs to its limit,
handle
image
structures
at
different
scales
[14].
Applications for detecting image features such as blobs,
we
can
during
determine
lalba et al. [10] presented a method in
multiscaling for shape recognition which bases on a two morphological
scale-space
representations
and
hat
transforms. Carvalho et al. [I 1-13] proposed the method to segment yeast cells based on watershed and scale space analysis.
128
process the
areas
depending on the blob lifetime.
edges, ridges and corners are widely used along with scale space techniques.
the
978-1-4577-0687-5/11/$26.00 ©2011 IEEE
of of
suppressing the
object
the of
image interest
merge together when are closed together, creating a new blob. The second case occurs when a lower scale share the same spatial location and have feature stability between them, resulting in a strong link. For the third case, if a blob expands too quickly within the next scale, resulting in an object possibly merges with a background. Blob "b22" and ''b26'' provides an example in merging with the background. C.
Figure I Cross sectional scale-space blob tree.
After the tree is formed, each blob is represented as a node and will be evaluated for its significance. Assuming that our object of interest is clearly visible towards our object detection, the object of interest should stay longer over scales. Figure I illustrates the scale-space blob tree representing the relation of blobs across adjacent scales.
B. Feature Stability Feature stability provides a conventional blob linking process based on additional information such as color or texture. Blobs from adjacent scales that have spatial intersection will be considered as a pair candidate. Feature stability can be characterized by the following equation;
Scale-space Blob Linking and Blnb Life Time
After the process of a scale space tree construction, all blobs are represented as a node and will be evaluated for its significance. The blob lifetime is defined as a discrete value measured from number of scales which the structures exist. Figure 3 illustrates the process of feature stability in a scale space tree construction. As lifetime increases, the blob gains more significance. The lifetime can be defined by the time when a certain blob at a specific scale appears or disappears. After a scale-space tree is formed, it is traversed to calculate the lifetime of each blob. The blobs with a maximum amount of lifetime in each branch will be selected as object candidates. The threshold for lifetime can also be applied and adjusted in this candidate selection process. If the blob stays longer at a certain threshold, the blob will be chosen as the object of interest.
1
( 1)
distel, g) Where f
�
Lt;, fz' k, fn] and
g
�
[gp gz, g3 .... ' gn ] are
feature vectors corresponding to two candidate blobs simplified with Euclidean distance. Additionally, the significance of the blob features may vary depending on the blob's lifetime. Figure 2 demonstrates the blob linking process based on feature stability. One feature is presented for each feature f in the scale space blob tree which is color. Characters R, G, B and Y represent the color of red, green, blue and yellow to each blob respectively.
Figure 2 Blob classification based on feature stability
Relationships within the scale space blob tree may occur at a different scenario. Covering most situations, 3 cases can occur during the process. In the first case, two blobs from a lower scale may merge into a new blob within the next scale only if the features of the blob are the same objects that might be separated by noise. The merge of blob ''b20'' and ''b21'' in Figure 2 provides an example of two blobs merging with each other. To put it simply, blobs
Figure 3 Blob classitication based on feature stability on a synthesis image where (a) is the original test image while (b) is the result based on blob detection.
Focusing on one group object of interest, such as the green blots in Figure 4, assume that the important structures in the image should stay longer over scales.
Figure 4 Blob classification based on feature a marked ground truth data based on a retinal image where (a) is the original test image while (b) is the result based on blob detection. D.
KNN Algorithm
After the process of blob extraction, two classifications are processed; by hand and by KNN algorithm. Users will identify each blob's significance manually. Once all blobs have been identified, a training set is created for each class. Once the ground truth image and the training set is complete, a KNN algorithm will be processed based on the training set.
129
Given an image and features to be classified, the algorithm searches for the
k
channel and the standard deviation of the G channel.
nearest neighbors among the
Texture, color and color distribution represents the three
training data based on similar measures. Training examples
values for the blob respectively. All features are normalized
-
0 to 1. Other specific features were
are vectors in a multidimensional feature space, each with a
to values range from
class label. Neighbors are taken from the training data to
implemented for particular applications such as compactness.
determine the classes of each type. Within the classification
k is a user-defined constant and a query which is
phase,
classified by assigning the data which is most frequent among the
k training samples nearest to the query point.
The data of KNN algorithm consist of attributes the output Y.
Xi
Figure 6 An example of retinal images including bright exudates shown in (a). Feature stability is processed,creating blobs within the image and general features are recorded shown in (b).
Xi and
is the proximity of neighboring input
observations in the training data while their corresponding output values Y are used to predict the output value of classes.
To demonstrate the algorithm's procedure, assume
that the query distance have a value of training sample value of
(X/, X/).
(X/, X/)
and a
The output can be
determined by using the Euclidean distance which can be defined by
Training sample parameters in KNN algorithm can also be extended for further developments. more than
By assigning
2 features, the equation can be calculated as
follow
d�t
=
Five retinal images were used to evaluate the algorithm
(Xi - xD2
+
(xi - xD2
+
. . .
+
(X? - xD2
(3 )
Given that the KNN method is dependent on distance
which is demonstrated in Figure
5. Blobs were created from
the process of feature stability, providing the object of interest.
measures, the input data has to be standardized before Figure 4 illustrates a 2 classes based on a training
proceeding to the KNN process. diagram of a KNN model with
set; a blue and red dot and a target which is a green dot. The inner dashed circle has a value of K
=
I which the final
result of the target to be considered as the blue class since
2
blue classes existed within the area. The outer dashed circle has a value of K
=
3 which results as a red class (6 versus 4).
Figure 7 Images providing an example of an individual blob being assigned to each of the three classes in order to create a ground truth data where (a) is an optic disc (I), (b) is a drusen exudate (2) and (c) is a non-related class (3)
Each picture's blob will be analyzed by hand and to be indicated from the three following classes; optic disc drusen exudate
(2) and non-related class (3 ).
(1),
During this
50% of 2. Features of the blob
process, we assume that blobs that cover more than the exduates are considered as class
(Entropy, average value and the standard deviation of G channel) will be used as the main reference between the KNN implementation process. Once all blobs have been identified, three blobs will be Figure 4 A representation of a KNN algorithm. A green dot represents the target whereas the red and blue dot represents 2 different classes based on the training set. 2 dashed circles represent the value of K which the inner circle is equal to I and the outer dashed circle is 3.
chosen as a training set for each class based on the previous mentioned general features in order to initiate the KNN program using the value of K
=
1. Once the process is
completed, results of a ground truth image and KNN image will be evaluated to determine its accuracy.
III.
RESULTS
Three general features were used as a blob descriptor vector; the blob's entropy, the average value of the G
130
TABLE I DETECTION RATE
Image No
Ground Truth result
Total amount of blobs
REFERENCES
KNN result Accuracy
Class
1
2
3
1
2
3
#1
40
4
8
28
7
7
26
77.50%
#2
40
5
1
34
8
3
29
85.71%
#3
42
5
25
12
5
27
10
88.55%
#4
25
5
25
12
5
27
10
95.83%
#5
42
4
7
31
5
8
29
90.48%
1 illustrates the overall results of the detection rates #2 and #3 is based from the retinal image provided in Figure 6. Accuracy is determined
[1]
[2]
[3]
[4]
[5]
Table
from all five images. Image
on how many results on each blob that the KNN has processed matches with the ground truth data.
All images
[6]
[7]
resulted in an overall above average accuracy in detecting each class for each blob.
[8] [9]
IV. CONCLUSIONS AND DISCUSSION An implementation of blob detection with feature
stability and the use of KNN classification have been proposed in this paper.
[10]
The object of interest can be
detected effectively due to the robustness of the algorithm for detecting variable size and variable shape objects.
[11]
Gaussian filters provide the purpose in extracting feature vectors of each blob by convoluting the original image. Blobs taking account of their feature stability constructs a
[12]
scale space tree. While traversing on the tree, a lifetime of each blob can be calculated to notify its significance.
All
[13]
blobs are contained and extracted to analyze its significance in order to create a ground truth image. KNN classification
Signal Processing, 2005 Fifth International Conference on,
is processed and compared for the algorithm's effectiveness. All methods are able to perform in blob detection and classification effectively.
[14]
within a certain lifetime can be considered chosen as an
[15]
object of interest rather than the blob with the longest [16]
lifetime depending on the target classification. Proposed algorithms could lead to an ideal outcome towards various applications that may require precision in such as medical applications for diagnosing symptoms and pinpointing interests.
[17]
Processes of pinpointing the feature
may still require human analysis in order to fully enhance the results of the output along with the improvements of the algorithm.
Developments of classification accuracy may
lead to major benefits in computer analysis such as less human analysis and better performance.
2005,pp. 683-687. T. Lindeberg, "Scale-Space Theory in Computer Vision," The Kluwer International Series in Engineering and Computer
Feature vectors can be extended
or modified to suit different applications and images. Blobs
S. Wang,X. Ma,X. Zhang,and L. Jiao, "Watershed-Based Textural huage Segmentation," Intelligent Signal Processing and Communication Systems, pp. 312 - 315,2007. D. Gatica-Perez,C. Gu,M. Sun,and S. Ruiz-Correa, "Extensive partition operators,gray-level connected operators,and region merging/classification segmentation algorithms: theoretical links," IEEE Transactions on Image Processing, vol. 10,pp. 1332 - 1345,2001. S. Manay and A. Yezzi, "Anti-geometric diffusion for adaptive thresholding and fast segmentation," IEEE Transactions on Image Processing, vol. Vol. 12,pp. 1310 - 1323,Apr 2003. L. A. Forbes and B. A. Draper, "Inconsistencies in edge detector evaluation," Computer Vision and Pattern Recognition, pp. 398 -404,2000. S. Konishi,A. Yuille,and J. Coughlan, "Statistical edge detection: Learning and evaluating edge cues," IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 25,pp. 57 - 74,2003. K. Bowyer,C. Kranenburg,and S. Dougherty, "Edge detectorevaluation using empirical roc curves," Computer Vision and Image Understanding, vol. 84,pp. 77 -103,2001. H. Gomez-Moreno,S. Maldonado-Bascon,and F. Lopez Ferreras, "Edge detection in noisy images using the support vector machines," pp. 685 - 692,2001. A. P. Witkin, "Scale-space filtering," Proc. 8th Int. Joint Con! Art. Intell., pp. 1019 - 1022,1983. T. Lindeberg, "Feature detection with automatic scale selection," International Journal of Computer Vision, vol. 30, pp. 79 -116,1998. M. A. G. Carvalho,R. A. Lotufo,and M. Couprie, "Segmentation of huages of Yeast Cells by Scale-Space Analysis," XVI Brazilian Symposium on Computer Graphics and Image Processing (SIBGRAPI'03), p. 376,2003. A. C. Jalba,M. H. F. Wilkinson,and J. B. T. M. Roerdink, "Shape representation and recognition through morphological curvature scale spaces," Image Processing, IEEE Transactions on, vol. 15,pp. 331-341,2006. T. Lindeberg, "Edge Detection and Ridge Detection with Automatic Scale Selection," Int. J. Comput. Vision, vol. 30,pp. 117-156,1998. G. Xinting,Z. Wenbo, F. Sattar,R. Venkateswarlu,and E. Sung, "Scale-space Based Corner Detection of Gray Level Images Using Plessey Operator," in Information, Communications and
[18]
Science, 1994. ErionPlaku,Lydia E. Kavraki "Distributed computation of the knn graph for large high-dimensional point sets,"Journal of Parallel and Distributed Computing 200 7, 2007,pp. 346 - 359 Ming Yang Su, "Using clustering to improve the KNN-based classifiers for online anomaly network traffic identification" Journal of Network and Computer Applications, 2011,pp. 722730 Prof. Thomas B. Fomby, "K-Nearest Neighbors Algorithm: Prediction and Classification" http://faculty.smu.edu/tfomby/ec05385IlecturelK NN%20Method.pdf KritInthajak,Cattleya Duanggate,,Bunyarit Uyyanonvara, Stanislav S. Makhanov,Sarah Barman,Tom Williamson "Variable Size Blob Detection with Feature Stability" Proceedings of the 3rd Biomedical Engineering International Conference on Medical Imaging, Image and Signal Processing"
2010,pp. 133 - 137
V.
ACKNOWLEDGEMENTS
This project is funded by National Research University Project
of
Thailand
Office
of
Higher
Education
Commission.
131