how to find pixel coordinate?

1 visualizzazione (ultimi 30 giorni)
Hi all, can help how to fing the max pixel coordinate? image as attached.
i try below command, row and column is 1. not correct answer. and the slice is 2823 that is max pixel value.
i = dicomread('MLEMITR2SUB24.dcm');
m = max(max(max(i)));
[r, c, slice] = find (m)
r =
1
c =
1
slice =
uint16
2823
anyone can help me?

Risposta accettata

KALYAN ACHARJYA
KALYAN ACHARJYA il 3 Gen 2021
Modificato: KALYAN ACHARJYA il 3 Gen 2021
Note: Suggested to avoid "i" as a vaiable name, as it may conflict with inbuilt "i"
>> i
ans =
0.0000 + 1.0000i
Lets consider image_data as input data, in 2D case, you can directly used the find function, as
[r,c]=find(image_data==max(image_data));
In 3D or higher multidimentional case (Add more variable in LHS, as per dimension of the array), you may use ind2sub to get the desired result
idx=find(image_data==max(image_data(:)));
[rows,colm,sl_num]=ind2sub(size(image_data),idx)
It gives the indices of rows, columns and slice numbers of all maximum pixels elements.
  5 Commenti
mohd akmal masud
mohd akmal masud il 4 Gen 2021
if i want to pixel value in slice number 50, is it like below the command?
pix_val=image_data(58,79, 50)
mohd akmal masud
mohd akmal masud il 4 Gen 2021
yes, it work

Accedi per commentare.

Più risposte (0)

Community Treasure Hunt

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

Start Hunting!

Translated by