Quad-Tree segmentation - MEX

Version 1.2.0.0 (8.67 KB) by Ahmad
Segments an input image using Quad-trees
2.1K Downloads
Updated 13 Jul 2010

View License

QUADTREESEG - mex implementation (compile by mex quadtreeseg.cpp). Also an equivalent MATLAB implementation is present in zip file.

Segments an image by recursively dividing it into four equal blocks if the variability in its pixels is greater than a certain amount. The image input is usually square, or the segments output are proportional to the aspect ratio of the input image. This function gives you a choice on the variability function: the std. dev. in pixel values; the range of pixel values. If given a color image, the average of these measures is used across the 3 layers.

@args:
im: the input image (RGB or Grayscale) which needs to be segmented; could be uint8, uint16, or double
(variance_mode): 0 for range of pixel values; 1 for std. dev. of pixel values. Default 0
(thresh_std): maximum allowed standard deviation or range inside a segment. Value needs to be between 0 and 1. If using uint8 images the value is scaled by 255, and for uint16 it is scaled by 65535. if variance_mode=0, Default 0.2; variance_mode=1, Default 0.05
(min_block_size): Size 2 vector for minimum segment size
(min_block_size): Size 2 vector for maximum segment size

Example:
i = imread('josh-brolin.jpg');
seg_map = quadtreeseg(i, 0.05, [1 1], [60 60]);
imagesc(i);

Cite As

Ahmad (2024). Quad-Tree segmentation - MEX (https://www.mathworks.com/matlabcentral/fileexchange/27993-quad-tree-segmentation-mex), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2009b
Compatible with any release
Platform Compatibility
Windows macOS Linux

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes
1.2.0.0

updated general info

1.1.0.0

Corrected a mistake in the example given in the .m file

1.0.0.0