问题标签 [neighbours]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
127 浏览

python - 如何在python中操作列表

我只是想问你一个基于在python中构建迷宫的学校练习。我们从一个已知的 (x,y) 点和 n*n 图开始。在每次递归中,我们应该为每一对 (x,y) 创建一个 neighbouring_list,其中将包含该点的最近元素。到目前为止,我已经编写了显示正确结果的代码,但我无法保存和操作从相邻列表中选择的新 x 和 y。它们的执行方式类似于 (8,8),我无法写出 x = 8 和 y = 8。你知道吗?先感谢您!

0 投票
1 回答
1063 浏览

python - 圆形邻域 - 最小 Numpy

我想在 2D numpy 数组上应用圆形邻域运算,其中每个像素值都替换为圆形邻域内的最小值(半径 = x)。

我可以应用基于内核的 generic_filter 并获得最小值,但该操作采用正方形邻域,因此输出不正确。

我尝试使用 for 循环并使用半径查找表执行操作,该查找表基本上是一个数组,它给出与第一个像素的距离并使用 if 条件来获得最小值。像这样的东西:

上面的构建是为了在半径 3 内获得最小值。

for 循环实现确实有效,但对于较大的数组来说速度很慢。我不倾向于使用 Cython 或 f2py。有没有办法优化这个?

0 投票
2 回答
990 浏览

c++ - 扫雷邻居计数

我正在尝试复制 Minesweeper,但在计算属于地雷的邻居时遇到了问题。这似乎是一件很容易实现的事情,但由于某种原因,我并没有在任何地方都得到想要的结果。我有一个表示每个图块的一维整数数组。考虑到它可能具有可变的网格大小,我想要一种方法来分别获取图块的每个邻居。这是我的代码的样子:

而且我没有得到我想要的最左边和最右边的瓷砖的结果。有时,最下面和最上面的瓷砖也会出现问题。我的代码使用了一个固定大小为 4x4(int[16]) 的网格(显然我称之为图形 :))。

提前致谢。

0 投票
0 回答
208 浏览

r - spdep (R) Queen Contiguity Neighborhood 中缺少链接

我对使用spdepR 中的库绘制 Queen Contiguity Neighbors 的以下结果感到困惑。

使用世界形状文件 wrld_simp 获取质心点(空间坐标)

为了得到女王的邻接邻居,我做

然后我绘制形状文件

和Queen Contiguity 邻居:

你绘制它(或者如果你只是运行summary(queen_nb)),你可以看到许多邻居没有连接(例如智利是一个孤立的)。

你有什么提示吗?

0 投票
3 回答
59 浏览

algorithm - 避免矩阵算法中的位置冲突

假设您有一个nxm 矩阵。在这个矩阵中,您将随机定位四个不同的对象,例如abcd。每个都会有很多。

现在什么是最好的算法,这样当它们被随机放置时,它们的位置不会发生冲突?

我的方法是:

  1. 随机放置它们
  2. 检查所有物体的位置,如果它们发生冲突,继续移动直到找到一个空白空间?

我只是想知道是否有任何其他有效的解决方案。

0 投票
2 回答
536 浏览

javascript - 检测二维阵列中的相干邻居/邻域

我有一个任意 2d 数组,每个字段都有一个 id 和一个 teamid (这里显示为颜色1)。

我希望每个社区都有一个包含 ID 的数组。

邻域由水平和垂直(非对角)具有相同 teamid 的邻居的字段组成

例如:这就是我所拥有的:

场地

这就是我要的:

场地

我不是在搜索图像,而是在搜索数组

提前致谢!

0 投票
0 回答
231 浏览

matrix - 矩阵边界中单元格的邻居

我在矩阵中寻找邻居时遇到了一些问题。我试图不在if代码中添加很多语句,因为我很确定有更好的方法可以做到这一点,但我不知道具体如何。

为简化起见,假设我们有以下矩阵:

考虑到单元格[2,2] = 3,邻居将是(i,j-1), (i-1,j), (i+1,j), (i,j+1), (i+1,j+1), (i-1,j-1). 我使用这样的方法为它创建了一个“掩码” for-loop,其中inicio[0]是我当前元素的 i 坐标(示例中为 2)和inicio[1]j 坐标(元素 3 也为 2)。另外,我正在考虑元素必须位于蒙版的中心。

但是,我不知道如何处理边框中的元素。例如,如果我想找到元素的邻居[0,0] = 1,考虑到元素必须位于掩码的中间,如下所示:

我该如何处理这些X元素?我想过将边界初始化为零,但我认为这不是正确的方法。因此,如果有人可以解释更好的方法或算法,我会很高兴。

0 投票
2 回答
1153 浏览

java - 矢量卷积 - 计算相邻元素的索引

我正在尝试实现采用两个向量的卷积方法:图像;和一个内核。我的问题是,当我将内核“滑动”到图像矢量上时,我不知道如何计算图像相邻元素的索引。例如,对于两个相同的向量 {0, 1, 2, 3, 4, 5, 6, 7, 8} 我想实现以下结果:

在此处输入图像描述

到目前为止,我的代码如下:

0 投票
2 回答
1354 浏览

algorithm - 如何找到二维矩阵中的斑点数?

如何找到二维矩阵中的 blob 数量?尺寸MxN

一个斑点是一块连续的X像素。其中矩阵包含XO

我想使用 8-neighbourship(见这里)。所以我希望在上面的例子中可以找到 2 个 blob。

0 投票
2 回答
794 浏览

python - 计算数组中的相邻值

给定一个元组列表,[(x1, y1), (x2, y2) ... (xm, ym)]例如[(1, 2), (3, 7), (5, 9)]我想编写一个函数,用相邻值 f(x - 1)、f(x + 1) 的平均值填充缺失的整数值 x。

在这种情况下,我们会得到:

[(1, 2), (2, ave(2, 7)), (3, 7), (4, ave(7, 9)), (5, 9)]

但是,对于诸如 的数组,这很快就会失败,xs = [1, 4, 7]因为这些值彼此相距不止一个。在这种情况下,给定相同的ys = [2, 7, 9],我们期望答案是:

[(1, 2), (2, ave(2, 7)), (3, ave(2,7)), (4, 7) ... ]

或者

有点复杂的东西:

[(1, 2), (2, ave(prev, next_that_exists)), (3, ave(just_created, next_that exists), ...]

我怎样才能实现,以便我们找到刚好低于缺失元素和高于缺失元素的元素,并计算它们的平均值?

另外,这与移动平均线不同吗?