python pycharm OpenCV cv.filter2D函数

dst=cv.filter2D(src, ddepth, kernel[, dst[, anchor[, delta[, borderType]]]])
参数 描述
src 原图像
dst 目标图像,与原图像尺寸和通过数相同
ddepth 目标图像的所需深度
kernel 卷积核(或相当于相关核),单通道浮点矩阵;如果要将不同的内核应用于不同的通道,请使用拆分将图像拆分为单独的颜色平面,然后单独处理它们。
anchor 内核的锚点,指示内核中过滤点的相对位置;锚应位于内核中;默认值(-1,-1)表示锚位于内核中心。
detal 在将它们存储在dst中之前,将可选值添加到已过滤的像素中。类似于偏置。
borderType 像素外推法,参见BorderType

cv.filter2D,dst与src大小相同,卷积核采用的 边缘复制
python pycharm OpenCV cv.filter2D函数
python pycharm OpenCV cv.filter2D函数
比如,某一图像像素为
python pycharm OpenCV cv.filter2D函数
卷积核(均值滤波)
python pycharm OpenCV cv.filter2D函数
计算过程:
python pycharm OpenCV cv.filter2D函数
卷积核与像素矩阵元素相乘在求和,其结果覆盖卷积核中心的像素值(标红的位置)。
而问号“?”则是需要考虑的填充方法。

当ddepth=-1时,表示输出图像与原图像有相同的深度。
图像深度是指存储每个像素所用的位数,他也是用来度量图像的色彩分辨率的。
例如,一幅彩色图像的每个像素用R,G,B三个分量表示,若每个分量用8位,那么一个像素共用24位表示,就说像素的深度为24,每个像素可以是16 777 216(2的24次方)种颜色中的一种。

其他的滤波器及卷积核: