解析灰度图像中的 2D 峰值ROI 检测任务

问题描述

我有一些灰度图像:

enter image description here

我正在使用matlab来处理它。接下来的步骤我将用伪色绘制它。

enter image description here

我想检测并解决这张图片中的山丘。我尝试了两种方法。 首先,我正在寻找扩展的最大值:

I = double(imread('test.tif'))/255;
imagesc(I)
hold all
contour(imextendedmax(I,0.1),'-r')

我有一个相当不错的结果:

enter image description here

但是,这不是我需要的 100%。仅部分检测到小的清晰可分离的峰,但我需要对每个点进行分类。此外,右上角的配对峰比可能的要窄。换句话说,每个非零点都应该属于某个峰值。我也不喜欢 'imextendedmax' 函数的相对阈值,因为我有很多这样的图像。为了解决这个问题,我尝试了分水岭算法。

contour((watershed(-I)==0),[1,1],'-r');

enter image description here

检测右上角的 2 个高峰之间的边界是一项不错的工作,但它看起来过于敏感并且会破坏较小的峰。

你能给我建议我可以尝试哪些算法吗?

绝对不应该是 Matlab。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)