今天簡單介紹一下在處理二維圖片中算是偶爾會用到的工具——填充資料
這邊以2d-array為例,不同尺寸會有不同結果
np.pad(tmp1,1,'constant',constant_values=100)
np.pad(tmp1,(0,3),'constant',constant_values=100)
np.pad(tmp1,((0,0),(1,1)),'constant',constant_values=100)
M = np.array([
[11, 12, 13, 14],
[21, 22, 23, 24],
[31, 32, 33, 34]
])
seam = np.array([
[0, 1, 0, 0],
[0, 0, 1, 0],
[0, 0, 0, 1]
])
m, n = seam.shape
output = np.empty((m, n+1), input.dtype)
mask = np.ones((m, n+1), dtype=bool)
output
這邊那個神奇的數字是因為np.empty()
產生出來的是沒有初始化的數字
np.where()
找到seam的每個位置nz = np.where(seam)
nz
mask[nz] = False
output[mask]=input.ravel()
output
output[nz] = 1