【发布时间】:2021-02-21 23:56:57
【问题描述】:
我正在尝试在 matlab 中找到一系列 dicom 图像的像素中值。
我的图像数组的大小为 (256, 256, 20) - 其中 20 是 20 个图像。
我是 matlab 新手,我认为我做错了什么,因为我的代码已经运行了一个多小时。这里是:
med_img = []
for k = 1:size(Im_Orig,1)
for i = 1:size(Im_Orig,2)
med_img(k,i) = median(Im_Orig(k,i,:))
end
end
我知道尽可能避免嵌套 for 循环,但我无法找到更好的解决方案或在线任何地方找到好的函数。
任何帮助都会很棒!
【问题讨论】:
-
澄清一下,在这种情况下,您试图找到 20 张图像的中位数是否正确?
-
我试图找到每个像素的中值。然后,我将找到最接近这个像素中位数“图像”的图像。它几乎是在寻找中间图像。
-
通过在
med_img(k,i) = median(Im_Orig(k,i,:));行添加分号来抑制输出应该可以解决问题。此外,预先分配数组的大小也可能有助于提高速度。
标签: image matlab image-processing pixel