Python 从具有索引的数组创建新数组

Python 从具有索引的数组创建新数组,python,arrays,numpy,opencv,Python,Arrays,Numpy,Opencv,我有一个bw图像,其中a有一条线的坐标,假设这是图像: 0 0 0 1 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 100 0 0 0 0 这些是我的坐标:粗体显示 [0,1],[1,1],[2,2],[3,2],[4,3],[5,2] 现在我想要一个数组,在每个坐标的左右各看一步,然后检查是否有一个1。如果是这种情况,则返回1。像这样: 0 0 1. 1. 0 0 有没有一种不使用循环的奇特方法?您尝试过什么?numpy是一个处理线性代数

我有一个bw图像,其中a有一条线的坐标,假设这是图像:

0 0 0 1 0 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 100 0 0 0 0

这些是我的坐标:粗体显示 [0,1],[1,1],[2,2],[3,2],[4,3],[5,2]

现在我想要一个数组,在每个坐标的左右各看一步,然后检查是否有一个1。如果是这种情况,则返回1。像这样:

0 0 1. 1. 0 0


有没有一种不使用循环的奇特方法?

您尝试过什么?numpy是一个处理线性代数运算的常用软件包,我会先从那里开始查找。是的,我尝试过numpy,但我无法让它工作。我试着这样做:a=np.数组[1,0,0,0,0,1,0,0,1,0,0,0,0,0]。重塑5,4 I=np.数组[0,1,1,1,2,2,3,2,4,2]。重塑5,2其中a是数组,I是索引,行是第一列,列是第二列,然后我试着这样做,以获得每个索引的左右各一个:a[I[:,0],I[0]-1:I[0]:+2]