图像平滑之二维离散卷积

本文介绍了二维离散卷积的概念,通过举例展示了卷积的计算过程,并详细解释了full、same和valid三种不同的卷积类型。卷积在图像处理中扮演重要角色,理解其原理对于深度学习和计算机视觉至关重要。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

学习资料参考:

张平.《OpenCV算法精解:基于Python与C++》.[Z].北京.电子工业出版社.2017.


基础概念

二维离散卷积是在两个矩阵的基础上的一种计算方式,如下所示:
I=(1234)I=\begin{pmatrix} 1 & 2 \\ 3 & 4 \\ \end{pmatrix}I=(1324),K=(−1−221)K=\begin{pmatrix} -1 & -2 \\ 2 & 1 \\ \end{pmatrix}K=(1221).

计算方式为:

  1. KKK进行逆时针旋转180o180^o180o,则K=(12−2−1)K=\begin{pmatrix} 1 & 2 \\ -2 & -1 \\ \end{pmatrix}K=(1221).
  2. 将矩阵KKK沿着III按照先行后列的顺序移动,每移动一个位置,就进行对应位相乘求和。演示过程如下所示:
    在这里插入图片描述
    得到矩阵C=(−1−4−4−1−5−66114)C = \begin{pmatrix} -1 &-4 & -4 \\ -1 & -5 & -6 \\ 6 & 11 & 4\end{pmatrix}C=1164511464,矩阵CCC的高与宽满足:
    矩阵C的高 = 矩阵I的高 + 矩阵K的高 - 1; 矩阵C的宽 = 矩阵I的宽 + 矩阵K的宽 - 1;
    而矩阵KKK就称为卷积核,或者卷积算子。

卷积种类

  1. full卷积
    在这里插入图片描述
    full卷积形式橙色部分为卷积算子。
    边界扩充方式:
  • 在红色矩阵边界外填充常数,通常进行的是0扩充。
  • 重复红色矩阵边界处的行和列,对输入矩阵进行扩充。
  • 以矩阵边界为中心,令矩阵外某位置上未定义的灰度值等于图像内其镜像位置的灰度值,该种方式会产生最小的影响。
  1. same卷积
    在这里插入图片描述

same卷积形式橙色部分为卷积算子,相比较于ful形式重合部分更多,即卷积算子的中心处于红色部分中时开始计算,在合适的步长情况可保证输入与输出图像大小一致。很明显same卷积是full卷积的子集。
3. valid卷积
在这里插入图片描述
卷积算子只存在于原图中。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值