(a) Original image. (b) The area of focus.
(c) Original image. (d) The area of focus.
Figure 1: Test results on images with blurred background.
The present method is also based on the fact that lo-
cal contrast is weaker in blurred areas, but noise and
data corruption is considered on a graph theoretical
view-point. However, this procedure is different from
conventional morphology or correlation based image
corrections, like ones in (Licsar et al., 2010). The
main advantage of the present solution is to treat the
out-of-focus, noise and corruption problems in one
unified framework, by introducing a theoretically new
image segmentation method based on graph manipu-
lation.
2.1 Finding the Blurred Area in an
Image
The method of blurred area detection is to identify
the clusters of pixels corresponding to the blurred ar-
eas. The first phase of finding the clusters is to detect
the cluster cores (corresponding pixels), then the next
step is to classify the remaining pixels (blurred or fo-
cused area) depending on their similarities to cluster
cores. If a pixel is similar to any of the found cores, it
will belong to a blurred area in the image.
The mining of the cluster cores is an essential part
of numerous dense subgraph mining algorithms. A
core is a set of vertices that is sufficiently dense com-
pared to the average density of the graph. Especially
in a large graph it is a hard task to find a fast way of
recognizing the cores. In (Mishra et al., 2003) the
authors present a theoretical approach to solve this
problem for bipartite graphs in O(|V |) time, mining
ε-bicliques. |V | denotes the number of objects to be
clustered. Although the running time is linear in the
number of nodes, it is exponential in the parameter
showing how close we are to the complete bipartite
subgraphs. Another disadvantage is that it is only ap-
plicable if the size of a cluster is also O(|V |), and as it
is based on random sampling, it only finds the clusters
with a given probability.
In our solution, the running time of the core find-
ing FINDCORES() algorithm is O(|V |
2
) for an arbi-
trary graph. However, it is suitable for any cluster
size, and finds all cluster cores parallelly. Besides
this, if the input graph is sparse (E = O(V )), the run-
ning time is O(V ). Since in case of graphs of images,
where only the neighboring pixels are connected, we
have a sparse graph, we get a linear running time in
the number of pixels. We work with a modified mini-
mum weight spanning tree algorithm, and we use the
Kruskal-algorithm as a basis.
Since we do not need to have a subgraph without
circles, we only use the idea that the order of con-
necting vertices depends on how similar they are. An
obvious problem is to define the stopping conditions
of the algorithm. We will use d
limit
as a threshold to
ensure that in each cluster core the nodes are similar
enough. In each step, when the Kruskal-algorithm de-
cides whether an edge should be a part of the spanning
tree, we also check the diameter of the evolving com-
ponent. Let P be the pixel set of the image, and let M
be the feature matrix, where each µ
i
row is the corre-
sponding feature vector of pixel v
i
∈ V . The steps of
the algorithm are the following:
Algorithm [ClusterCores]=FINDCORES(M,
d
limit
).
1. Compute the distance between feature vectors
2. Increasing order of the distance values:
Dist
order
3. Inicialization: Let G = (V,E) be a graph,
E
′
={}; i = 1;
4. x = Dist
order
(i);
5. if x < d
limit
E = E ∪x; i = i + 1; else discard x;
6. If there are edges left, go to step 4.
7. ClusterCores = Connected components
The focused areas of the images are more de-
tailed than the blurred ones, hence differences be-
tween neighboring pixels tend to be higher. On the
other hand the components we get as an output (Clus-
terCores) contain the pixel-sets with the smallest dif-
ferences. These pixel-sets correspond to the blurred
areas of the image. Since we only need to make a dif-
ference between focused and blurred parts, as it was
mentioned before, the pixels corresponding to any of
the ClusterCores, will belong to the blurred area. The
d
limit
is the maximum weight of the edges we choose
GRAPH BASED SOLUTION FOR SEGMENTATION TASKS IN CASE OF OUT-OF-FOCUS, NOISY AND
CORRUPTED IMAGES
101