X
PrevPrev Go to previous topic
NextNext Go to next topic
Last Post 19 Sep 2019 07:59 AM by  MariM
Extracting MTMF results for polygons or ROIs
 9 Replies
Sort:
You are not authorized to post a reply.
Author Messages

Valerie Buxton



New Member


Posts:4
New Member


--
10 Sep 2019 11:28 AM
    I have a vector file with 450 pond polygons for which I would like to perform spectral mixture analysis on. I ran the mixture tuned matched filtering and masked by my polygon layer. I now have mtmf output displaying for the mask only, but I am unsure how to actually extract the mtmf pixel values (2 values for each pixel based on 2 defined end members; wet and dry) for each polygon. I was hoping to perhaps merge the mtmf results with polygons but am not sure if this is possible. I did convert the polygon layer to individual ROIs but still am not sure how to proceed. I am also unclear what form this output would take--whether it is possible to have a datafile/text file with the values for each polygon. I saw a post on this topic from 2017 but did not fully understand the solution presented there.
    Thanks for any suggestions; I am new to ENVI and still figuring out how it works.

    MariM



    Veteran Member


    Posts:2396
    Veteran Member


    --
    10 Sep 2019 12:16 PM
    Can you describe what you are trying to accomplish with MTMF and your data?
    MTMF is a method of mapping the relative abundance of a material in a scene where you may not know where that material resides throughout your image.
    It sounds like you are specifically looking for ponds and you know where they reside. Are you trying to find a specific material/mineral in the ponds only that need to be 'unmixed' from other materials?

    Valerie Buxton



    New Member


    Posts:4
    New Member


    --
    10 Sep 2019 12:21 PM
    I am hoping to determine whether the pond is wet or dry, so I am only interested in % of water in the pixel. I defined two end members (wet and dry) based on a pond I knew to be wet and a pond I knew to be dry using aerial imagery from the same time period as the Landsat imagery. I was told MTMF would be the way to go since I don't necessarily care about vegetation, soil, etc. I realize I may need to define another end member for shallow water if my current methods don't classify correctly but for now I am just using two end members.

    MariM



    Veteran Member


    Posts:2396
    Veteran Member


    --
    10 Sep 2019 12:48 PM
    Are your endmembers derived from the image or from the aerial imagery? How many bands in the aerial imagery?
    I would say that finding an abundance of a material within a pixel *spectrally* usually requires data that has many bands (over-sampled data) but since finding water vs non-water should be easily distinguished spectrally, perhaps it may work.
    The idea is that you would plot the MF bands vs the infeasibility bands to find the pixels that are the most likely targets that match 'water'. You can do this in a 2-D scatterplot. Then in the plot, you draw a circle around the pixels that meet the criteria of high MF score but low infeasibility to create an ROI of the material of interest. Those pixel values show 'relative abundance' depending on the quality of the endmembers supplied that are the most 'feasible' and less likely to be a false positive. The values should run between 0-1.0. If they do not, then the endmembers supplied may not be the best examples of the material and you might try extracting them using the Spectral Hourglass Wizard.

    ENVI Classic has a tutorial called 'Advanced Hyperspectral Analysis' that runs through this workflow. It may be a good place to start with this tool. The data for this can be found on our website here: https://www.harrisgeospatial.com/Support/Self-Help-Tools/Tutorials (it is the classic data zip file)

    Valerie Buxton



    New Member


    Posts:4
    New Member


    --
    10 Sep 2019 01:08 PM
    My endmembers are based on the Landsat imagery. My real question is how to extract the mtmf values for each of my pond polygons. Is there a way to do this?

    MariM



    Veteran Member


    Posts:2396
    Veteran Member


    --
    10 Sep 2019 02:09 PM
    You would first convert them to ROIs, which it sounds like you have done. Do you want the mean MF values or each pixels MF values within each ROI? Remember, these are MF values - what makes it MTMF is the infeasibility image associated with it. To do this, you can export the ROIs to ASCII in the ROI Tool.
    What do you want to do with these values? Do you want to map those pixels within each pond polygon with a high MF value? I would use something like Raster Color Slices to create a quick classification based on thresholds of the highest MF, next range, etc.

    Valerie Buxton



    New Member


    Posts:4
    New Member


    --
    18 Sep 2019 12:14 PM
    Hi Mari--thanks for your responses and apologies for the delay in following-up. I am still unclear on how to proceed. Here is my process: 1. Import Landsat Image 2. Import polygon layer of all ponds (vector layer) 3. Convert polygons to individual ROIs 4. Create two ROIs for "wet" and "dry" endmembers 5. Perorm MTMF: create mask from individual ROIs of ponds; specify 2 ROI endmembers. I then get an image of the MTMF output. I would like to get the MF values for each pixel within each pond polygon (i.e. the values for the two endmembers and the infeasibility value). I can get values by placing my cursor over them but is there a way to specifically export these values for all of the ponds? In some sort of a table, with pixel values for each pond?

    MariM



    Veteran Member


    Posts:2396
    Veteran Member


    --
    18 Sep 2019 12:52 PM
    Yes overlay the ROIs on the MF results, Then from the ROI tool, export to ascii.

    Valerie Buxton



    New Member


    Posts:4
    New Member


    --
    18 Sep 2019 02:46 PM
    I am not sure how to overlay the ROIs on the MF results. The ROI layer of polygons which is nested under the landsat image (it seems that converting a vector to ROI requires it to be associated with a base raster) sits on top of the MF, but the two aren't connected. For example if I export the ROI layer as a CSV (ascii is not available) in ENVI 5.3, it does not show anything associated with the MTMF results.

    MariM



    Veteran Member


    Posts:2396
    Veteran Member


    --
    19 Sep 2019 07:59 AM
    You are using ENVI, not ENVI classic correct? Your ROIs are spatially aware so if the MF image has spatial reference and is generated from the original Landsat image, you can simply drag the ROIs over the MF layer. Just to make it more clear, you can close all images in the Layer Manager. Then load the MF image and ROIs.
    You are not authorized to post a reply.