How to mask pixels of certain ndvi values?
조회 수: 2 (최근 30일)
이전 댓글 표시
I am using following matlab code to divide the parcels into cropland and non cropland
if mean(parcel_ndvi(idx == 1)) > mean(parcel_ndvi(idx == 2))
cropland = 1;
noncropland = 2;
else
cropland = 2;
noncropland = 1;
end
mask = idx == cropland;
now I want to mask only those pixels within cropland whose ndvi values are greater than 0.4. I request you to please suggest me how to create the said mask. I would appreciate your kind help.
Devendra
댓글 수: 0
채택된 답변
DGM
2024년 4월 15일
Here's my guess.
% idx is apparently some sort of label array where the labels are unknown
% so this simply figures out which label corresponds to which class
if mean(parcel_ndvi(idx == 1)) > mean(parcel_ndvi(idx == 2))
croplandidx = 1;
noncroplandidx = 2;
else
croplandidx = 2;
noncroplandidx = 1;
end
% a logical mask of cropland
cropmask = idx == croplandidx;
% a logical mask of cropland with NDVI > 0.4
hi_ndvi_cropmask = cropmask & (parcel_ndvi > 0.4);
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Author Block Masks에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!