码迷,mamicode.com
首页 > 其他好文 > 详细

opencv —— copyMakeBorder 扩充图像边界

时间:2020-02-14 10:28:51      阅读:116      评论:0      收藏:0      [点我收藏+]

标签:replica   log   nbsp   参数表   gaussian   scalar   top   复制   输出   

扩充图像边界:copyMakeBorder 函数

在图像处理过程中,因为卷积算子有一定大小,所以就会导致图像一定范围的边界不能被处理,这时就需要将边界进行适当扩充。

void copyMakeBorder(InputArray src, OutputArray dst, int top, int bottom, int left, int right, int borderType, const Scalar& value=Scalar());
  • src,输入图像,即原图像,填 Mat 类的对象即可。
  • dst,输出图像,和原图像有一样的深度,size = Size(src.cols + left +right, src.rows + top + bottom);
  • top,bottom,left,right,分别表示在原图像的四个方向上扩充多少像素。
  • borderType,边界类型。

BORDER_REPLICATE:复制法,复制最边缘像素,填充扩充的边界。中值滤波就采用这种方法。

aaaaaa | abcdefgh | hhhhhhh

 

BORDER_REFLECT_101:对称法,以最边缘像素为轴,对称填充。filter2D, blur, GaussianBlur, bilateralFilter 边界处理的默认方法。

gfedcb | abcdefgh | gfedcba

 

BORDER_CONSTANT:以一个常量像素值【参数 value 】填充扩充的边界。这种方式在仿射变换,透视变换中非常常见。

iiiiii | abcdefgh | iiiiiii  

 

BORDER_REFLECT: 和对称法原理一致,不过连最边缘像素也要对称过去。

fedcba | abcdefgh | hgfedcb 

 

BORDER_WRAP:用另一侧元素来填充这一侧的扩充边界。

cdefgh | abcdefgh | abcdefg

 

  • value,默认值为 0,当 borderType 取值为 BORDER_CONSTANT 时,这个参数表示边界值。

 

借鉴博客:https://blog.csdn.net/chezhai/article/details/53229699

 

opencv —— copyMakeBorder 扩充图像边界

标签:replica   log   nbsp   参数表   gaussian   scalar   top   复制   输出   

原文地址:https://www.cnblogs.com/bjxqmy/p/12306276.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!