一副数字图像可以看作一个二维空间的离散函数可以表示为f(x, y), 假设有对于二维卷积操
作函数C(u, v) ,则会产生输出图像g(x, y) = f(x, y) *C(u,v), 利用卷积可以实现对图像模糊处理,边缘检测,产生轧花效果的图像。
一个简单的数字图像卷积处理流程可以如下:
1. 读取源图像像素
2. 应用卷积操作数矩阵产生目标图像
3. 对目标图像进行归一化处理
4. 处理边界像素
例子:
#python 3.5.3
#2017-03-09 蔡军生 http://blog.csdn.net/caimouse
#
import cv2
import numpy as np
#读取图片并显示
image = cv2.imread('./me21.jpg');
cv2.imshow('image', image)
#构造卷积核
kernel = np.array([[-1,-1,-1],[-1,8,-1],[-1,-1,-1]])
#卷积计算
dst = cv2.filter2D(image, -1, kernel);
#显示计算之后的图片
cv2.imshow('dst', dst)
#保存图片
cv2.imwrite('./me22.jpg', dst)
结果比较如下: