- 操作系统:ubuntu22.04
- OpenCV版本:OpenCV4.9
- IDE:Visual Studio Code
- 编程语言:C++11
算法描述
cv::filter2D() 函数用于对图像应用二维卷积滤波器。这个函数可以用来实现多种图像处理操作,如模糊、锐化、边缘检测等。它通过将一个二维核(也称为滤波器或掩模)与图像中的每个像素进行卷积来工作。
函数与核进行卷积操作。
此函数将任意线性滤波器应用于图像。支持原地操作。当核的部分超出图像范围时,函数会根据指定的边界模式插值处理边界外的像素值。
此函数实际上计算的是相关运算,而非卷积:
dst ( x , y ) = ∑ 0 ≤ x ′ < kernel.cols 0 ≤ y ′ < kernel.rows kernel ( x ′ , y ′ ) ∗ src ( x + x ′ − anchor.x , y + y ′ − anchor.y ) \texttt{dst} (x,y) = \sum _{ \substack{0\leq x' < \texttt{kernel.cols}\\{0\leq y' < \texttt{kernel.rows}}}} \texttt{kernel} (x',y')* \texttt{src} (x+x'- \texttt{anchor.x} ,y+y'- \texttt{anchor.y} ) dst(x,y)=