Take the 2-minute tour ×
Geographic Information Systems Stack Exchange is a question and answer site for cartographers, geographers and GIS professionals. It's 100% free, no registration required.

I'm using MaxEnt to produce a species presence / absence raster layer. It works fine but I have to choose a cut off point for what constitutes presence or absence. As a result I end up with a lot of single cell polygons. Using the "simplify polygons" check box in the raster to polygon tool helps a little but I still have a lot of single cell polygons (that come as triangles left).

I've tried using the exclude and dissolve tools but they seem to leave the outlines there. Really I want to change all polygons under a certain area from 0 (absence) to 1 (presence) and then dissolve those boundaries and finally smooth out the boundaries of the polygons I have left.

Any help appreciated.

share|improve this question

1 Answer 1

up vote 4 down vote accepted

One technique you could use to remove noise from a binary raster is to use Expand and then Shrink from the Spatial Analyst toolbox. By expanding by n you will fill any holes of less than n * 2 cells wide (holes are filled from every edge), and then the shrink will return your boundaries to (mostly) original values (you'll lose noise around the edge of the regions).

Alternately you could use a Region Group to count the cells in contiguous groups, and set any groups smaller than n cells to 1. This would preserve your boundaries but is likely to take longer than the Expand/Shrink.

Lastly you could try a Majority Filter on the raster which will do much the same in removing noise as Expand/Shrink but should allow you to keep more of the definition of the edges.

Note that these raster methods will almost certainly be faster than trying to dissolve the polygons as dissolve tends to be a very expensive operation time-wise.

share|improve this answer
+1 Good suggestions all around. –  Aaron Dec 21 '12 at 0:49
Thanks Om_Henners. As usual with Arc it's a case of getting the right toolbox! I've been using boundary clean which runs expand and shrink twice over and this has helped enormously. I've then created the polygons from the raster, calculated the area of the polygons in the attribute table (calculate geometry). Selected those under a certain size and then used the eliminate tool on the selected polygons to merge them with surrounding polygons of a larger area. This has filled in the holes and smoothed the edges. Thanks again! –  Oliver Burdekin Dec 21 '12 at 19:51

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.