Matlab - 处理特定的感兴趣区域
Matlab - Working with specific region of interest
我有一张图像(见附件),我正在尝试使用 stdfilt 函数计算图像在感兴趣区域(暗区)内的方差。Image here.
阴暗面是我需要努力的地方。当我在此图像上使用 stdfilt 时,它显示了黑暗和明亮的边界。
我的想法是,我们可以对图像设置阈值以仅显示黑暗面,并告诉 Matlab 仅处理该感兴趣区域。到目前为止,没有找到合适的方法。
该区域不是一个完美的多边形,这会让事情变得更容易。那时,我不确定该怎么做,所以欢迎提出任何建议。
干杯
如果像素的空间位置不相关,你可以这样做:
datatoprocess=I(I<threshold);
阈值是将白色与黑色分开的值。 [graythresh][1]
是一个很棒的函数。 datatoprocess
将是一个包含像素值的 1xN 数组。
相反,如果像素的空间位置相关,则您需要修改您的函数以使其不适用于特定像素。最好的方法通常是以您不想考虑的像素为单位设置 NaN
值。
Itoprocess=I;
Itoprocess(I>threshold)=NaN;
在没有更多关于您对图像的具体用途的信息的情况下,这是任何人都可以获得的最佳信息。
我有一张图像(见附件),我正在尝试使用 stdfilt 函数计算图像在感兴趣区域(暗区)内的方差。Image here. 阴暗面是我需要努力的地方。当我在此图像上使用 stdfilt 时,它显示了黑暗和明亮的边界。
我的想法是,我们可以对图像设置阈值以仅显示黑暗面,并告诉 Matlab 仅处理该感兴趣区域。到目前为止,没有找到合适的方法。
该区域不是一个完美的多边形,这会让事情变得更容易。那时,我不确定该怎么做,所以欢迎提出任何建议。
干杯
如果像素的空间位置不相关,你可以这样做:
datatoprocess=I(I<threshold);
阈值是将白色与黑色分开的值。 [graythresh][1]
是一个很棒的函数。 datatoprocess
将是一个包含像素值的 1xN 数组。
相反,如果像素的空间位置相关,则您需要修改您的函数以使其不适用于特定像素。最好的方法通常是以您不想考虑的像素为单位设置 NaN
值。
Itoprocess=I;
Itoprocess(I>threshold)=NaN;
在没有更多关于您对图像的具体用途的信息的情况下,这是任何人都可以获得的最佳信息。