当前位置: 首页 > 知识库问答 >
问题:

在序列中查找1的簇

喻高寒
2023-03-14

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

00000000000000001111111000000000000000000

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

00000000000000000001000000000000000000000

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

不过,这里有点棘手:

序列通常看起来更像:

0000100001000101000100000011110110111100000000001000101000000

即。有大量的“噪音”。

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

共有1个答案

姜经武
2023-03-14

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

 类似资料:
  • 问题内容: 我很新,我希望它不太明显,但是我似乎无法为以下问题找到一个简短而准确的答案。 我有两个清单: 我想查找第二个列表()的所有索引何时在第一个列表()中,以便得到如下内容: b在a中的索引:或 问题答案: 具有列表理解: 或使用for循环:

  • 本文向大家介绍在C ++中一键查找二进制表示形式的最长1序列,包括了在C ++中一键查找二进制表示形式的最长1序列的使用技巧和注意事项,需要的朋友参考一下 假设我们有一个整数n。在其中,我们可以进行一位翻转以生成最长的1s序列。假设数字为13,因此二进制表示形式为1101。如果将1翻转为make 0到1,则它将为1111。这是最长的1s序列 为了解决这个问题,我们将遍历给定数字的位。我们将跟踪当前

  • 我需要帮助确定R中观察组中最长的连续值序列(=1)。 我有城镇月降雨量的数据。我需要确定每年月降雨量高于年平均值的最长时期(rain_above = 1)。如果每年有两个等长的时期,我想确定总降雨量最大的时期。 一些示例数据: 在df,A镇在2000年的第4个月到第8个月之间有一个雨季。这是rain_above=1的唯一时期。 B镇在2001年有一个雨季,在第1个月和第3个月之间。尽管有两个长度相

  • 问题内容: 关于你的第一个问题:该代码非常好,并且如果与其中的一个元素相等就可以正常工作。也许你尝试查找与其中一项不完全匹配的字符串,或者你使用的浮点值会导致不准确。 关于第二个问题:如果“查找”列表中的内容,实际上有几种可能的方法。 检查里面是否有东西 这是你描述的用例:检查列表中是否包含某些内容。如你所知,你可以使用in运算符: 过滤集合 即,找到满足特定条件的序列中的所有元素。你可以为此使用

  • 如何找到python列表的中间位置? 这只是一个函数的例子,它可以找到任何列表的中间,你可以用列表理解来做这件事吗? 编辑:这与去掉中间点不同,因为我只想打印出中间值,如果列表是奇数,我想返回两个中间值,就像接受的答案一样。没有像另一个问题那样得到中值,而是得到两个值的平均值。

  • 如何在Python中找到列表的中值?列表可以是任何大小,并且不能保证数字按任何特定顺序排列。 如果列表包含偶数个元素,则函数应返回中间两个元素的平均值。 以下是一些示例(出于显示目的进行了分类):