File Exchange

image thumbnail

SegmentTool: An Interactive GUI for Segmenting Images

version (464 KB) by Brett Shoelson
Interactively find the best approach to segmenting (masking) your image


Updated 01 Sep 2016

View License

SegmentTool launches a UI-driven tool for trying different approaches to masking your image.
IMPORTANT: This version is being maintained only to support usage in R14a and earlier. For R14b+, please use this version instead:

Try different edge detection algorithms, modifying all possible parameters; implement global or local thresholds; detect regional or extended minima or maxima; find lines or circles. See the results of different approaches and inputs immediately.

Import new images from file or workspace; export segmentation masks; generate reproduction code; visualize segmentation on your original image; change colorspace representaions; lots more!

edge; threshold; Hough line/circle; Regional/Extended Min/Max, Color-Based.

A tab to manage manual segmentation approaches!

Suggestion: Use SegmentTool in conjunction with MorphTool to increase your image processing productivity!

See also: MorphTool

Cite As

Brett Shoelson (2020). SegmentTool: An Interactive GUI for Segmenting Images (, MATLAB Central File Exchange. Retrieved .

Comments and Ratings (31)


morling qin

How to use the segmentation tool?

tasian LEE

Disregard the error I found below. I found the note that this version supports the older versions.

Great App, thank you!

When I try to install the tool, it gives me a message saying that the app requires the Control Systems Toolbox, and the Computer Vision System Toolbox. I install anyway and the app gives me several errors and will not run. Any tips? (I am running MATLAB R2016a)

Aldo Zaimi

would love to have the manual segmentation tool in this GUI, would be great for people who want to produce ground truths to validate their segmentations strategies.

@Sven: Thanks for the note--I hope you find the app useful. I'm not sure why the new version didn't work for you in R2015b, though. (It absolutely does not require the Control Systems Toolbox.)

Loaded R2016a and it works perfectly

I installed this app (newer version) under R2015b (I have image processing toolbox but not control systems toolbox). Can't seem to properly import an image into the app for display and later segmentation -- shows blank. Any suggestions?

Sachin J

hello, could you please tell us how to segment text and picture from screen content image.
pls provide source code
Thanks and regards;

hello Brett Shoelson,

can u tell me how to execute this file. I'm using matlab 2012a version.

IMPORTANT NOTE: This version may not work properly in R2014b or newer MATLAB installations. If you use a current version of MATLAB, please GET THIS VERSION INSTEAD:


Atif Anwer



Lim, I provided the mlappinstaller, but I also provided all of the MATLAB code files. On the right, there's a "Download App" button, but there's also a "Download Submission" one. Try the second, see if you get the files you need.


Hi. I try to download the GUI but it is in .mlappinstall format, it cannot be opened/run as I have a R2011a (MATLAB 7.12.0). Please help.


Good example for GUI of IP application.


Great example for understanding techniques!

Can you send me the getNewImage function?. Thanks

Ciaran Robb


A great tool. I too am getting the error Error in SegmentTool/getFile (line 414)
[img,cmap,original.fname,~,userCanceled] = getNewImage(true);
Can you send me the fix for this



I get the same error when I click on FILE --> import. Can you pls send me the file too asap.

there is an error:

Error in SegmentTool/getFile (line 414)
[img,cmap,original.fname,~,userCanceled] = getNewImage(true);

Error while evaluating uimenu Callback

Did I make a mistake?

I'm on:

MATLAB Version 8.0 (R2012b)
Image Processing Toolbox Version 8.1 (R2012b)


'opengl software' fixed the title problem.

Thank you for all and I'm gonna wait your further release.

Again, I have the FindCirclesGUI in a state of "waiting for update." I'm sending you a newer version of that, too--should address the problems with that command.

The inverted text problem is, I believe, an openGL rendering issue. Try ecxecuting the command "openGL software" (without the quotes) before you call SegmentTool, and see if that corrects the problem. (What version of MATLAB and of openGL are you using?)

The mistake was mine. I made a change, but neglected to include the "getNewImage" function. I expect the corrected version to be available soon. In the meantime, I sent the file to you directly. Thank you for the notification!


When I click on FILE --> import

there is an error:

Error in SegmentTool/getFile (line 414)
[img,cmap,original.fname,~,userCanceled] = getNewImage(true);

Error while evaluating uimenu Callback

Did I make a mistake?

I'm on:

MATLAB Version 8.0 (R2012b)
Image Processing Toolbox Version 8.1 (R2012b)

Can any one tell me the execution process.......please.


Updated license

Adding a usage note for segmentImage (R14b+).

Provides a missing function that enables loading of new data from file or workspace.

Provides a missing subfunction, better image input, better default tabPanel and expandAxes behavior.

Improved expandAxes capabilities, better default tabPanel behavior, better import of images...lots of little stuff.

Better support of SegmentTool as an App, and incorporation of the improved ExpandAxes (which now allows right-click exporting of images!).

Missing function for loading images provided. (Important if you want to load from the file menu!)

Included Color-Based segmentation tab.

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