How to obtain and locate group of pixel value from .mat file

1 view (last 30 days)
Hi Folks,
I have extracted chlorophyll from nc file attached
chlor_a max value 93.9236, chlor_a min value 0.0373
To identify and locate the number of pixels and its values which falls in particular grid
For example - I need to classify with pixel value interval with respective Lat [0 30] , Lon[30 100] (row and column) as shown and save in .csv/ .xls
range
0 - 2
2 - 4
4 - 6
6 - 8
8 - 10
10 - to the max
Thanks in advance
Kindly help
regards

Accepted Answer

KSSV
KSSV on 1 Oct 2021
Edited: KSSV on 1 Oct 2021
Read about logical indexing. Let C be your data.
idx = C >= 0 & C < 2 ;
c02 = C(idx) ;
idx = C >= 2 & C < 4 ;
c24 = C(idx) ;
Also with the same indices you can get respective lon and lat.
  3 Comments
KSSV
KSSV on 1 Oct 2021
You need not to use ind2sub. Straight away use maxind.
Karthik M
Karthik M on 7 Oct 2021
Thanks in advance
I could get the indexed position of the rows and columns of max / index value data with the below code
maxval=max(data(:));
[xmax,ymax]=find(data==maxval);
[ii,jj]=find(data >= 0 & data < 2);
but I need only the exact x and y location coordinates
I have classify the the pixel range according to my requirement as below
idx = data >= 0 & data< 2 ;
pix1 = data(idx);
idx = data >= 2 & data < 4 ;
pix2 = data(idx) ;
idx = iwant >= 4 & iwant < 6 ;
pix3 = data(idx) ;
idx = data >= 6 & data < 8 ;
pix4 = data(idx) ;
idx = data >= 8 & data < 10;
pix5 = data(idx);
idx = data >= 10 & data < 15 ;
pix6 = data(idx) ;
idx = data >= 15 & data < 20 ;
pix7 = data(idx) ;
idx= data >= 20 & data < 95;
pix8 = data(idx);
Kindly help to get the exact x, y position of the group data

Sign in to comment.

More Answers (0)

Products


Release

R2018b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!