View License

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video

Highlights from

4.8 | 5 ratings Rate this file 38 Downloads (last 30 days) File Size: 3.15 KB File ID: #30525 Version: 1.1
image thumbnail



Dirk-Jan Kroon (view profile)


24 Feb 2011 (Updated )

Find ISO-contour geometry in a 2D image using marching-squares, and sort the contour objects

| Watch this File

File Information

This function ISOCONTOUR computes the isocontour geometry for a certain 2D image and isovalue. To Extract the isocontour geometry it uses Marching Squares and linear interpolation. Followed by sorting the contour geometry into separate contour-objects.
This function is the 2D equivalent of Isosurface extraction using Marching Cubes in 3D.
    I : An 2D image (grey-scale)
    isovalue : The Iso-value of the contour
    Lines : An array describing all the Line-pieces of the isocontour
            geomtery, with a N x 2 index list of vertices
    Vertices : Vertices (Corners) of the lines M x 2 list of X,Y
    Objects : A 1 x K cell array with in every cell a list of indices
            corresponding to one connect isocontour. If the isocontour
            is closed then the last index value is equal to first index

MATLAB release MATLAB 7.11 (R2010b)
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (9)
12 Feb 2017 Jack Chen

Hello,what do you mean by saying "base-edges"?

02 Jan 2016 Chris Loizou

Can you add the paper with I have to cite when I use this method. Thank you very much

31 Jul 2015 Zeyu Wang

Very useful! I cannot find the paper to cite, so I put you into acknowledgment. Cheers.

24 Jun 2015 Hiroyuki Goto

Very useful and easy to use!
But I think the last segment (point) lacks if a contour is open. Should lines 121 and 123-125 be commented out?

24 Dec 2014 Feten

Feten (view profile)

Could you please explain to me the aim of the two function implemented in the isocontour function.
For exemple matrices I, E, IE. What are representing?

Comment only
04 Oct 2012 Tushar Athawale

I am trying to compute line and vertices for a 2x2 cell. It is throwing an error.
Can somebody tell me how to do it?

Comment only
01 Mar 2012 Reja Rabbi

Is it possible to compute the area above a gray scale value?

Comment only
04 Apr 2011 Ken Campbell

Could you give an example of how to extract the indices for the pixels that a given contour passes through? I have been struggling to get this to work myself. Thank you for submitting this to the FileExchange.

Comment only
04 Mar 2011 Bas Boom

Can you add the paper with I have to cite when I use this method. Nice method by the way, already might have solved two problems with it. Cheers Bas

10 Mar 2011 1.1

Line normals now always point to the inside of the object.

Contact us