0

我需要遍历图像中彼此相邻的所有(无序)像素对而不重复。我正在使用 8 点邻域。例如:

  x,y| 0   1   2   3   4
  ---+---+---+---+---+---+
   0 |   |   |   |   |   |
     +---+---+---+---+---+
   1 | a | b | c | d |   |
     +---+---+---+---+---+
   2 | e | f | g | h |   |
     +---+---+---+---+---+
   3 | i | j | k | l |   |
     +---+---+---+---+---+
   4 |   |   |   |   |   |
     +---+---+---+---+---+

像素f的邻居在它周围的 3x3 正方形中。因此,例如g与f形成一个 2 点团。如果我要遍历图像的所有行和列,这个团将被计算两次,一次是f是中心像素,一次是g是中心像素。其他派系也会出现类似的低效率。

所以我想做的是循环遍历所有的派系,而不是每个像素。如果我熟悉图论,我认为已经对类似问题给出的一些答案就足够了,但由于我不是,我真的很感激你可以用外行的有效算法提供的任何帮助。提前致谢!

4

1 回答 1

1

在所有点上循环第一个点。内循环第二个点越过右、左下、下和右下邻居(如果存在)。

于 2014-10-05T00:49:40.330 回答