copymakeborder函数详解c++
时间: 2023-04-27 14:03:44 浏览: 102
copyMakeBorder函数是OpenCV中的一个函数,用于在图像的边缘添加边框。该函数可以在图像的四个边缘添加不同类型和大小的边框,例如常见的黑边、白边、镜像边等。该函数的语法如下:
void cv::copyMakeBorder(
InputArray src, // 输入图像
OutputArray dst, // 输出图像
int top, // 上边框大小
int bottom, // 下边框大小
int left, // 左边框大小
int right, // 右边框大小
int borderType, // 边框类型
const Scalar& value = Scalar() // 边框颜色
);
其中,src是输入图像,dst是输出图像,top、bottom、left、right是分别指定上、下、左、右四个边框的大小,borderType是边框类型,value是边框颜色。
borderType可以取以下几种值:
- BORDER_CONSTANT:常数边框,用指定的颜色填充边框。
- BORDER_REPLICATE:复制边框,用图像边缘像素填充边框。
- BORDER_REFLECT:反射边框,用图像边缘像素的镜像填充边框。
- BORDER_WRAP:环绕边框,用图像另一侧的像素填充边框。
value是边框颜色,可以是Scalar类型的值,也可以是一个长度为通道数的数组,用于指定每个通道的颜色。
使用copyMakeBorder函数可以方便地为图像添加边框,常用于图像处理中的一些操作,例如卷积、滤波等。