我需要计算我在 CT 图像上定义的感兴趣区域的平均像素值。我用 imfreehand 画了 ROI,但我不知道如何继续进行像素值计算。谁能帮帮我?
最佳答案
这个怎么样?
制作一些数据:
>> im = [rand(200,200),rand(200,200)*2];
显示它并使用 imfreehand
选择一个 ROI:
>> imagesc(im)
>> h = imfreehand;
根据 ROI 制作掩码:
>> mask = createMask(h);
只是为了显示发生了什么,使 ROI 之外的区域为 NaN,并显示:
>> im(~mask) = NaN;
>> figure; imagesc(im)
计算 ROI 内像素的平均值(大于 0.5,因为我选择了一个区域到中间的一侧):
>> mean(im(mask))
ans =
0.83782
希望对您有所帮助!
关于matlab - 在 MATLAB 中处理 ROI,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8323144/