提问者:小点点

在序列中查找1的簇


从一个图像预处理工具,我得到一个0和1的序列,其中1表示预处理工具已经找到了我要找的东西。在一个理想的世界中,这看起来是这样的:

00000000000000001111111000000000000000000

我现在需要找到1的“中间”位置,即。

00000000000000000001000000000000000000000

这将相当简单(遍历列表,获得到1的转换和到0的转换,并从这两个位置计算中间。

不过,这里有点棘手:

序列通常看起来更像:

0000100001000101000100000011110110111100000000001000101000000

即。有大量的“噪音”。

我想我可以假设,任何“单独的”1或“单独的”0都可能是噪声并翻转它,但我想知道是否有一种更优雅和更稳健的方法来在随机序列中找到“最可能的1的簇”?


共1个答案

匿名用户

你可以取一个序列的正向和反向和。两个级数相等的地方将是你的中间。在本例中,两个序列在索引30处都等于9。