Is it possible to remove 2-3 endmember spectral lines from a spectral plot, and how?
3 ビュー (過去 30 日間)
古いコメントを表示
I plotted a spectral plot of 9 endmembers, from this I need to remove spectral lines 2, 4 and 5 or select other lines.
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/1770465/image.png)
4 件のコメント
Shivam
2024 年 9 月 11 日
If you can provide requirements which decides the spectral plot along with the script and data you are using, we would be able to assist.
採用された回答
Vinayak Choyyan
2024 年 9 月 12 日
編集済み: Vinayak Choyyan
2024 年 9 月 12 日
Hi Anju,
I assume your code currently looks something like this
hcube = hypercube('paviaU.hdr');% your data here
endmembers = fippi(hcube.DataCube,8);%find 8 end member signatures using fippi
legendNames=["Endmember 1","Endmember 2","Endmember 3","Endmember 4","Endmember 5","Endmember 6","Endmember 7","Endmember 8"];
figure
plot(endmembers)%plot the 8 end member signatures.
xlabel('Band Number')
ylabel('Pixel Values')
ylim([0 9000])
legend(legendNames)
If your goal is the just remove a few predetermined endmember signatures, then you can simply delete them from the signature array like so:
hcube = hypercube('paviaU.hdr');% your data here
endmembers = fippi(hcube.DataCube,8);%find 8 end member signatures using fippi
legendNames=["Endmember 1","Endmember 2","Endmember 3","Endmember 4","Endmember 5","Endmember 6","Endmember 7","Endmember 8"];
%remove predetermined signatures, here signature 2, 4 5
signaturesForRemoval=[2,4,5];
endmembers(:,signaturesForRemoval)=[];
legendNames(signaturesForRemoval)=[];
figure
plot(endmembers)%plot the remaining end member signatures.
xlabel('Band Number')
ylabel('Pixel Values')
ylim([0 9000])
legend(legendNames)
Hope this helps. You will need the Hyperspectral Imaging Library for Image Processing Toolbox to use functions like hypercube and fippi I used in the above example.
その他の回答 (0 件)
参考
カテゴリ
Help Center および File Exchange で Hyperspectral Image Processing についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!