【发布时间】:2016-08-13 19:25:36
【问题描述】:
我正在处理图像,一个像素可以具有的最大值是 255,但是在旋转图像后进行卷积时,该值急剧增加,达到 1000 秒,因此给了我一个白色的图像。这背后的原因是什么?
代码如下:
h.extend([scipy.misc.imrotate(h[0], 15*i, 'bicubic') for i in range(1, 12)])
h = np.asarray(h)
print h.shape
R = []
for i in range(0, 12):
R.append(scipy.signal.convolve2d(self.img, h[i], mode = 'same'))
R = np.asarray(R)
rt = np.zeros(self.img.shape)
x, y = self.img.shape
print (x,y)
for i in range(0, x):
for j in range(0, y):
for k in range(0, 12):
if k == 0:
max_er = R[k][i, j]
#print max_er
if(R[k][i, j]>max_er):
max_er = R[k][i, j]
rt[i, j] = max_er
【问题讨论】:
-
要清楚,你是说 1000 是在 rt 数组中吗?
-
在
R数组中也是如此。 -
嗯,你可以将图像缩放回 256,但我首先想到的是卷积核没有归一化,也就是说它的积分不是 1。
-
如何标准化?
-
归一化这个意思是你找到所有元素的总和然后将每个元素除以总和,所以现在总和=1。