File Exchange

image thumbnail

JSEG - Unsupervised Segmentation of Color-Texture Regions in Images

version (5.95 MB) by ZHEN YU CHAN
JSEG - Unsupervised Segmentation of Color-Texture Regions in Images


Updated 14 Aug 2017

View License

A new method for unsupervised segmentation of color-texture regions in images is
presented. This method, which we refer to as JSEG, consists of two independent steps: color quantization
and spatial segmentation. In the first step, colors in the image are quantized to several representative
classes that can be used to differentiate regions in the image. The image pixels are then
replaced by their corresponding color class labels, thus forming a class-map of the image. The
focus of this work is on spatial segmentation, where a criterion for “good” segmentation using the
class-map is proposed. Applying the criterion to local windows in the class-map results in the “Jimage,”
in which high and low values correspond to possible boundaries and interiors of colortexture
regions. A region growing method is then used to segment the image based on the multiscale
J-images. A similar approach is applied to video sequences. An additional region tracking
scheme is embedded into the region growing process to achieve consistent segmentation and
tracking results, even for scenes with non-rigid object motion. Experiments show the robustness
of the JSEG algorithm on real images.
%% Main File : JSEG

Cite As

ZHEN YU CHAN (2021). JSEG - Unsupervised Segmentation of Color-Texture Regions in Images (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (7)

Heikki Astola

Why is the original paper by Deng and Manjunath (2001) not cited on this page? Especially as the abstract of the original paper has bee copied almost word by word in the overview above.

Original paper:
Deng, Y. and Manjunath, B.S. 2001, Unsupervised segmentation of color-texture regions in images and video. IEEE transactions on pattern analysis and machine intelligence 23, 800-810.

MA Tonima

Hi. How are you supposed to get an integrated region drawn segmented image?

Teshan Rezel

How do you run this please?

ilmare Qiu

Sorry,I don't know how to use 'JAverage'.J = JCalculation(TRegion, M, St); but there is no 'M' in 'JCalculation'.

Jonatha Varjão

Any work around for guys that doesn't have gpu, i see you use gpuArray.
BTW awesome job with this clean implementation.


@Rapic Do you mean that you wanna segment the object in video? High processing power is required to do this in every frame and I suggest to do this just in some meaningful frame.


How can we use it for video segmentation ?

MATLAB Release Compatibility
Created with R2017a
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!