我目前正在处理由一个堆栈组成的图像,每个堆栈18个图像。然后,我对这些图像进行去卷积,以生成更清晰、更清晰的图像。然而,在这样做的时候,我得到了边界伪像。我花了一些时间写代码,以便确定我需要多宽的垫来填充这些图像,但是我不确定如何使用np.pad来生成填充的图像。这是我到目前为止的代码:
xextra = pad_width_x / 2
yextra = pad_width_y / 2
print (xextra)
print (yextra)
其中xextra和yextra是我将使用的焊盘宽度。我知道我需要使用这行代码来填充数组:
no_borders = np.pad(sparsebeadmix_sheet_cubic_deconvolution, pad_width_x, mode='constant', constant_values=0)
但是,我如何处理我的图像堆栈(18个图像),并将它们保存为输出?
我希望这是有意义的!
发布于 2018-08-03 06:24:46
如果堆栈是nx*ny*18数组:
import numpy as np
image_stack = np.ones((2, 2, 18))
extra_left, extra_right = 1, 2
extra_top, extra_bottom = 3, 1
np.pad(image_stack, ((extra_left, extra_right), (extra_top, extra_bottom), (0, 0)),
mode='constant', constant_values=3)
https://stackoverflow.com/questions/51650325
复制相似问题