我有一个非常困难的时间向量,我似乎无法考虑数学那种方式呢。我现在有这个权利:迭代numpy数组
#!/usr/bin/env python
import numpy as np
import math
grid = np.zeros((2,2))
aList = np.arange(1,5).reshape(2,2)
i,j = np.indices((2,2))
iArray = (i - aList[:,0:1])
jArray = (j - aList[:,1:2])
print np.power(np.power(iArray, 2) + np.power(jArray, 2), .5)
我打印出来是这样的:
[[ 2.23606798 1.41421356]
[ 4.47213595 3.60555128]]
我所要做的就是把像素值,网格的二维数组,并说多远每个像素来自重要像素列表aList。
# # @
# # #
* # *
一个例子是,如果* S(0,2)和(2,2)是重要的像素和我目前在@(2,0)像素,我对@像素值会:
[(0-2)^2 + (2-0)^2]^.5 + [(2-2)^2 + (0-2)^2]^.5
所有网格的作用是保持的像素值,所以我需要得到每个像素值的指数距离相关联。然而,我的Alist数组拥有[x,y]坐标,所以这很容易。我想我现在我有两个问题:1。 我没有得到正确的indeces 2. 我不是循环遍历ALIST正确
请注意:如果您的示例使用数组索引,则* s的坐标为(2,0),(2,2),而@为((0,2))。 – wflynny
您可以尝试为每个“重要点”创建一个距离阵列。 (index_array [0] -i)** 2 +(index_array [1] -j)** 2',其中index_array = np.indices((N,N))''dist2 = lambda index_array,i,j: 。这产生了一个网格,其中每个点是距重要点'(i,j)'的距离^ 2。为每个重要点创建一个,然后'np.sqrt(sum(dist_arrays))'从所有重要点获得组合距离。 – wflynny