opencv笔记十七(解决图像外围边缘3*3矩阵无法计算问题)BORDER

 

BORDER_REPLICATE:复制法,也就是复制最边缘像素。

如上图,红色区域为src的最边界像素,蓝色区域是扩充的边界,我们将边缘扩大了5个像素(right=5),蓝色区域的宽度就是5,复制了5次红色区域的值

这种方式也就是OpenCV中的中值滤波medianBlur采用的边界处理方式

 

BORDER_REFLECT_101:对称法,也就是以最边缘像素为轴,对称。

下面我们看图

绿色区域是src最边界的像素,蓝色区域是我们扩充的5个像素的扩充边界,而红色区域就是蓝色区域在src的对称部分

 这种方式也是OpenCV边界处理的默认方式(BORDER_DEFAULT=BORDER_REFLECT_101)

也是filter2D,blur,GaussianBlur,bilateralFilter的默认处理方式,所以这种方式在边界处理中应用还是非常广泛的

BORDER_CONSTANT:常量法。

常量法就是以一个常量像素值(由参数 value给定)填充扩充的边界值,这种方式在仿射变换,透视变换中非常常见

如下图,

我们使用了默认的value,黑色填充了边界,所以红色区域的扩充的5个像素宽的边界是黑色的

 

 

 

给图像添加边缘API:

copyMakeBorder(     Mat src, // 输入图像 

                                    Mat dst, // 添加边缘图像 - 

                                    int top, // 边缘长度,一般上下左右都取相同值, 

                                    int bottom, 

                                    int left, 

                                    int right, 

                                    int borderType // 边缘类型 

                                    Scalar value //颜色)

 

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值