Jump to content

 
Photo

Image Reclass by Proportion

- - - - -

  • Please log in to reply
4 replies to this topic

#1
ChristopherG

ChristopherG

    Newbie

  • New Member
  • Pip
  • 3 posts
  • No Country Selected

Hi All,

I am a GIS guy hacking at image interpretation with GRASS and I hope someone can point me in the right direction.

Is there a way to perform a reclassification of an image based on the class 'mix' in a moving window?

I have a raster of vegetation cover which was probably too finely sampled. The result is that what I can visually see as a the vegetation class for an area (eg forest), is composed of up to 3 classes.

Some classes occur throughout the image and it is the proportional mix that would determine the group class.

I have tried a few mathematical solutions such as aggregate statistics, but the output is poor as I have not found a satisfactory way to number the classes so that the averages are distinct.

Thank you.

Regards
Chris

#2
Esther Mandeno

Esther Mandeno

    Master Contributor

  • Validated Member
  • PipPipPipPip
  • 198 posts
  • Gender:Female
  • Location:Santa Rosa, CA
  • United States

Is there a way to perform a reclassification of an image based on the class 'mix' in a moving window?

I have a raster of vegetation cover which was probably too finely sampled. The result is that what I can visually see as a the vegetation class for an area (eg forest), is composed of up to 3 classes.

Some classes occur throughout the image and it is the proportional mix that would determine the group class.


Hey Chris,

I'm not sure I understand the question. You have three classes that you want to join as one? Couldn't you just reclass?
------
Esther Mandeno
Life is like riding a bicycle. To keep your balance you must keep moving. - Albert Einstein

#3
ChristopherG

ChristopherG

    Newbie

  • New Member
  • Pip
  • 3 posts
  • No Country Selected

Is there a way to perform a reclassification of an image based on the class 'mix' in a moving window?

I have a raster of vegetation cover which was probably too finely sampled. The result is that what I can visually see as a the vegetation class for an area (eg forest), is composed of up to 3 classes.

Some classes occur throughout the image and it is the proportional mix that would determine the group class.


Hey Chris,

I'm not sure I understand the question. You have three classes that you want to join as one? Couldn't you just reclass?


Hi,

In principal yes, but the proportional mix of the 3 classes will determine the output class. For instance, if I have a higher proportion of bare land class in amongst the forest class, I need to reclass this as 'highly disturbed forest' whereas a lower proportion may indicate an 'lightly disturbed' class.

I have presumed this type reclassification requires analysis of the relative frequency/ proportion of each class in the neighborhood.

Is the assumption correct? I am sure this is bread and butter reclassification for an expert but I am unsure how to go about it.

Regards
Chris

#4
Gretchen Peterson

Gretchen Peterson

    Master Contributor

  • Validated Member
  • PipPipPipPip
  • 238 posts
  • United States

You might want to do a Focal Median operation. This is where you specify a neighborhood - such as a 3x3 rectangle - that "roams" around and finds the median value within that neighborhood and then writes it to an output raster. Try looking at r.neighbors: http://grass.itc.it/....neighbors.html.

There's also Majority Filter, which uses the contiguous surrounding cells, figures out the majority, then outputs that to a raster. I can't find where you'd do this in GRASS, but here's a description of it in Arc and then maybe you can find a similar function in GRASS: http://webhelp.esri....Majority_Filter.

#5
ChristopherG

ChristopherG

    Newbie

  • New Member
  • Pip
  • 3 posts
  • No Country Selected

You might want to do a Focal Median operation. This is where you specify a neighborhood - such as a 3x3 rectangle - that "roams" around and finds the median value within that neighborhood and then writes it to an output raster. Try looking at r.neighbors: http://grass.itc.it/....neighbors.html.

There's also Majority Filter, which uses the contiguous surrounding cells, figures out the majority, then outputs that to a raster. I can't find where you'd do this in GRASS, but here's a description of it in Arc and then maybe you can find a similar function in GRASS: http://webhelp.esri....Majority_Filter.


Hi,

Thank you all for the suggestions.

I had to find a solution quickly so I classified the image myself (the original was from a 3rd party) in GRASS and then imported the raster into Manifold Gis where, partially with raster math and partially with vector aggregation and manual digitising, I squeezed out a new simplified analysis that was both spatially and class wise correct. In Manifold GIS I used a ‘majority value’ function, but tightly constrained by a selection mask. When unconstrained, the results were poor on the class fringes.

I also got some tips from a friend of mine who suggests the following to improve the raster side workflow:

1. I would spend some time on pre-filtering the image. A simple mean filter would blur the boundaries between crowns, crown gaps and shadows. The size of the filter is really the key here as too small a filter wont smooth out these three classes enough and too large a filter will make the things you are trying to separate appear too similar. Ideally filter size should incorporate multiple trees within the forested areas and be of a similar size or smaller than the the smallest cleared area you are trying to detect.

2. As you are probably aware, the different classification algorithms tendencies towards different levels of generality. It is worth experimenting with a few if you haven't exhausted that avenue. If you have pre-filtered the image it is sometimes possible to use a supervised classification by picking out areas of the image that you know to the the classes you are interested in. I like this because you have a little more control over what you end up with.

3. I don't know about GRASS but there are post classification functions in ENVI that can be used to make a classification more general. You can find them under Classification>post classification> Majority/Minority Analysis etc. There are also erosion and dilation functions in IDL which we have found useful but they require some coding rather than using the ENVI GUI.

It does appear that there is no quick fix to this form of classification and that experimentation with a few techniques and sequences is required.

Thanks again.

Regards
Chris

Edited by ChristopherG, 28 September 2009 - 07:46 PM.





0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

-->