how to find pixel coordinate?

1 次查看(过去 30 天)
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?

采纳的回答

KALYAN ACHARJYA
KALYAN ACHARJYA 2021-1-3
编辑:KALYAN ACHARJYA 2021-1-3
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 个评论
mohd akmal masud
mohd akmal masud 2021-1-4
if i want to pixel value in slice number 50, is it like below the command?
pix_val=image_data(58,79, 50)

请先登录,再进行评论。

更多回答(0 个)

Community Treasure Hunt

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

Start Hunting!

Translated by