使用C++、opencv创建自定义内核(卷积核),使用内核给图像做卷积操作
关于图像卷积的原理及知识可参考博客https://www.cnblogs.com/bithuaning/p/6924978.html,说的非常详细。
opencv中的相关API:
void filter2D( InputArray src, OutputArray dst, int ddepth,
InputArray kernel, Point anchor=Point(-1,-1),
double delta=0, int borderType=BORDER_DEFAULT );
InputArray src: 输入图像
OutputArray dst: 输出图像,和输入图像具有相同的尺寸和通道数量
int ddepth: 目标图像深度,如果没写将生成与原图像深度相同的图像。原图像和目标图像支持的图像深度如下:
src.depth() = CV_8U, ddepth = -1/CV_16S/CV_32F/CV_64F
src.depth() = CV_16U/CV_16S, ddepth

本文介绍了如何使用C++与OpenCV库创建自定义卷积核,并应用到图像上进行卷积操作。通过调用filter2D函数,传入输入图像、输出图像、卷积核参数、锚点位置、delta值和边界处理方式来实现。详细阐述了卷积操作的原理和OpenCV中filter2D函数的参数含义。
最低0.47元/天 解锁文章
489

被折叠的 条评论
为什么被折叠?



