问题描述
我有一些灰度图像:
我正在使用matlab来处理它。接下来的步骤我将用伪色绘制它。
我想检测并解决这张图片中的山丘。我尝试了两种方法。 首先,我正在寻找扩展的最大值:
I = double(imread('test.tif'))/255;
imagesc(I)
hold all
contour(imextendedmax(I,0.1),'-r')
但是,这不是我需要的 100%。仅部分检测到小的清晰可分离的峰,但我需要对每个点进行分类。此外,右上角的配对峰比可能的要窄。换句话说,每个非零点都应该属于某个峰值。我也不喜欢 'imextendedmax' 函数的相对阈值,因为我有很多这样的图像。为了解决这个问题,我尝试了分水岭算法。
contour((watershed(-I)==0),[1,1],'-r');
检测右上角的 2 个高峰之间的边界是一项不错的工作,但它看起来过于敏感并且会破坏较小的峰。
你能给我建议我可以尝试哪些算法吗?
绝对不应该是 Matlab。
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)