我正在使用图像处理工具箱在 MATLAB 中编写一段代码,其中我使用 Skel=bwmorph(BM,'skel') 来获取河流的骨架。我想使用 BP=bwmorph(Skel,'branchpoints') 来获取汇合点和支流存在的点。每当骨架看起来像时,我都会在 BP 中得到很多误报
oQo
Q
o
它将 Q 像素与实际的预期分支点一起标记为分支点。有很多这样的误报。
我注意到一个真正的分支点作为一个孤立的像素出现在 BP 中,而 fals 分支点总是成对形成。
谁能告诉我分支点算法如何找到这些点? 如果我知道这一点,我可以满意的是,误报是成对出现的,而真正的肯定是单独的,而不是幸运的巧合,这是有实际原因的。
我有一种感觉,它着眼于像素周围的 8 连接,但我认为这还不是全部。
为了澄清,我标记了输出的裁剪图像。它给出的积极因素以红色显示。可以看出,这些像素中只有一个实际上是一个分支点。我想知道该算法是如何工作的,以便我可以给出一个逻辑上的原因来解释为什么误报成对出现(如果它们确实如此的话)。