如何利用filter2D函数进行图像卷积

2025-05-09 01:17:26

1、在OpenCV说明文档中可以看到函数的定义及参数意义七个参数分别表示:(原图,目标图,图像深度,核函数,模板中心点,delta,边界类型)一般卷积操作只涉及到前五个参数。

如何利用filter2D函数进行图像卷积

2、首先需要载入进行卷积操作的图像并所它转换为浮点类型g_srcImage = imread(".\\sourcePicture\\3.bmp");g_srcImage.艘早祓胂convertTo(g_srcImage, CV_32F);

如何利用filter2D函数进行图像卷积

3、根据需要定义自己的卷积核函数,下面定义了一个3*3的核函数,中心点为5Mat myKnernel = (Mat_<double>(3, 3) << 0, -1, 0, -1, 5, -1, 0, -1, 0);

如何利用filter2D函数进行图像卷积

4、编写卷积函数,并填写相应参数filter2D(g_srcImage, dstImage, -1, myKnernel, Point(-1, -1), 0, BORDER_DEFAULT);其中-1表示通道数与原图通道数相同

如何利用filter2D函数进行图像卷积

5、将目标图像转换为无符号字符型并显示经过卷积后的图像dstImage.convertTo(dstImage, CV_8UC3);imshow("after convolution", dstImage);

如何利用filter2D函数进行图像卷积

6、上面的全部代码如下图所示

如何利用filter2D函数进行图像卷积
声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢