在python中卷积图像

时间:2014-07-14 13:54:46

标签: python image convolution

我运行以下脚本     来自PIL导入图片     导入numpy为np     从scipy导入信号作为sg

from PIL import Image
import numpy as np
from scipy import signal as sg

def np_from_img(fname):
return np.asarray(Image.open(fname), dtype=np.float32)

def save_as_img(ar, fname):
Image.fromarray(ar.round().astype(np.uint8)).save(fname)

def norm(ar):
return 255.*np.absolute(ar)/np.max(ar)

img="src/img.png"
save_as_img(norm(sg.convolve(img, [[1.],[-1.]])), 'src/portal-h.png')

我遇到以下错误: ValueError:in1和in2应具有相同的维度

有谁知道为什么?

1 个答案:

答案 0 :(得分:0)

我猜你的输入是一个RGB图像,它被转换为3D数组而不是2D数组。

尝试将img替换为img.mean(axis=-1)