我想將一個數組複製到另一個具有不同大小的數組。 我想是這樣的函數:numpy blit(將數組的一部分複製到另一個不同大小的數組)
blit(destimg,src,dstlocation)
例如blit(zeros((7,7)),ones((3,3)),(4,4))
將導致
array([[ 0., 0., 0., 0., 0., 0., 0.],
[ 0., 0., 0., 0., 0., 0., 0.],
[ 0., 0., 0., 0., 0., 0., 0.],
[ 0., 0., 0., 0., 0., 0., 0.],
[ 0., 0., 0., 0., 1., 1., 1.],
[ 0., 0., 0., 0., 1., 1., 1.],
[ 0., 0., 0., 0., 1., 1., 1.]])
陣列src
的左上中央現在處於的位置處的陣列destimg
的(4,4)
。
如果我沒有blit(zeros((7,7)),ones((3,3)),(5,5))
我會得到:
array([[ 0., 0., 0., 0., 0., 0., 0.],
[ 0., 0., 0., 0., 0., 0., 0.],
[ 0., 0., 0., 0., 0., 0., 0.],
[ 0., 0., 0., 0., 0., 0., 0.],
[ 0., 0., 0., 0., 0., 0., 0.],
[ 0., 0., 0., 0., 0., 1., 1.],
[ 0., 0., 0., 0., 0., 1., 1.]])
數組src
不適合在destimg
,但其左上角仍然在正確的位置。
你不能達到你想要的東西用一個簡單的任務(即'='操作)並使用適當的索引? – 2015-02-23 14:39:05
@ Jan-PhilipGehrcke我可以,但對於src數組不適合的情況下,我將不得不做一些計算,找出適當的索引。我想知道numpy是否已經有了這個功能。 – 2015-02-23 14:41:18
爲什麼你的'''blit''函數不夠? – wwii 2015-02-23 14:56:20