MATLAB Blob Detector Code:
Introduction:
A bottom-up image processing algorithm for extracting
regions which contain meaningful regions is proposed. The proposed algorithm extracts
busy convex blobs in an image which are distinct from their surrounding. In our
point of view meaningful regions are the ones which drive the attention of
human while he/she is trying to interpret a scene. We showed that the extracted
blobs significantly correlate with the regions which drive the attention of the
viewers while looking at an image investigatively.
For this we conducted a series of eye tracking experiments and compared our
results with that of the saliency model of Itti et al
[1]. This work is described in:
M.Jahangiri,
M.Petrou. An Attention Model for
Extracting Regions that Merit Identification. In Proceedings
of the IEEE International Conference on Image Processing (ICIP 2009). To appear.
and one of its possible application
in:
M.Jahangiri,
M.Petrou. Fully Bottom-Up Blob Detection in Building
Facades. In Proceedings of the 9th International Conference of Pattern Recognition
and Image Analysis: New Information Technologies (PRIA 2008),
Software:
This software is made publicly for research use only.
It may be modified and redistributed under the terms of the GNU General Public License.
Download the blob detector from here and follow the instructions for running the
programme:
1) Extract the zip file to a
directory, say “* /Blob-Detector”.
2) Launch MATLAB (The code was
successfully tested on MATLAB 7.6.0 (R2008) both on Windows and Linux operating
platforms).
3) Set
Paths so that it includes the “Blob-Detector” files and subdirectories. Some
functions of the LabelMe toolbox
are used. This toolbox is included in the “Blob-Detector” subdirectory and
downloading it is not required.
4) Set the current directory to
“Blob-Detector”.
5) Run the Blob-Detector in
command window using:
>> xml_file_name1='blobs1.xml';
>> xml_file_name2='blobs2.xml';
>> image_file_name='my_image.jpg';
>> find_blobs_in_image(image_file_name,xml_file_name1,xml_file_name2);
The identified blobs are stored
in two different xml files. xml_file_name1 contains
the blobs which may overlap with each other and xml_file_name2 contains
the blobs which do not have any overlap with each other. For visualizing the
results change line 50 of find_blobs_in_image.m as follow:
>> Parameters.Visualizing='enable';
and run the programme again. By enabling this parameter the bounding boxes of the detected blobs
will be overlaid on the original image.
References:
[1] L. Itti, C. Koch, and E. Niebur. A model of saliency-based visual attention for rapid scene
analysis. PAMI, 20(11):1254–1259, 1998.
Please address questions to “m.jahangiri”
“at” “ic.ac.uk”