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), Nizhny Novgorod, Russian Federation September 14-20, 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”