You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm currently trying to do some spectral unmixing with Landsat 4-8 Data. For this, i am using the mesma() function, developed by jakob schwalb-willmann. Apart from some vegetational Endmember/spectra, for e. g. floodplain areas and wetlands, i also tried to run the unmixing function with a shade-spectrum for calculating the percentage of shade in each pixel. For this, i added the value 0.000001 for each band of the raster layer (in my Sources, the calculation of the shade-percentage is done with setting the values to 0, but then the results of mesma() are completely trash).
Normally, the expected values/percentage of the Endmember spectra in each pixel after the unmixing should be between 0 and 1. But this time, the mesma function calculates values from 0 to 364649.8, which in my opinion can't be right.
Has anybody an idea, why?
Mesma uses a non-negative least squares solver, maybe this is a reason for the problem?
Part of the code i'm using:
Em_pos = st_read("path") # reading the table with the geographic position of the Endmember in the Data
s_05_07_19 = stack("path") # raster, from which the Endmember should be extracted
EM_L7 = extract(s_05_07_19, Em_pos) # extracting the Endmember from the Raster
EM_L7.df = as.data.frame(EM_L7)
EM_L7.df [8,] = c(0.000001,0.000001,0.000001,0.000001,0.000001,0.000001,0.000001) # adding the shade-class to the Frame
Data = stack ("path") # raster, for which the unmix-function should be applied
unmix = mesma(Data,EM_L7.df,method = "NNLS",verbose = T)
The text was updated successfully, but these errors were encountered:
Please update to the most recent github version, as mesma has been updated in the meantime, implementing a sum to one constraint. Please reopen of this issue persists.
Hello There!
I'm currently trying to do some spectral unmixing with Landsat 4-8 Data. For this, i am using the mesma() function, developed by jakob schwalb-willmann. Apart from some vegetational Endmember/spectra, for e. g. floodplain areas and wetlands, i also tried to run the unmixing function with a shade-spectrum for calculating the percentage of shade in each pixel. For this, i added the value 0.000001 for each band of the raster layer (in my Sources, the calculation of the shade-percentage is done with setting the values to 0, but then the results of mesma() are completely trash).
Normally, the expected values/percentage of the Endmember spectra in each pixel after the unmixing should be between 0 and 1. But this time, the mesma function calculates values from 0 to 364649.8, which in my opinion can't be right.
Has anybody an idea, why?
Mesma uses a non-negative least squares solver, maybe this is a reason for the problem?
Part of the code i'm using:
Em_pos = st_read("path") # reading the table with the geographic position of the Endmember in the Data
s_05_07_19 = stack("path") # raster, from which the Endmember should be extracted
EM_L7 = extract(s_05_07_19, Em_pos) # extracting the Endmember from the Raster
EM_L7.df = as.data.frame(EM_L7)
EM_L7.df [8,] = c(0.000001,0.000001,0.000001,0.000001,0.000001,0.000001,0.000001) # adding the shade-class to the Frame
Data = stack ("path") # raster, for which the unmix-function should be applied
unmix = mesma(Data,EM_L7.df,method = "NNLS",verbose = T)
The text was updated successfully, but these errors were encountered: