opencv 扩大区域_python-----opencv图像边界扩充

本文介绍了在使用OpenCV进行图像处理时如何避免因卷积导致的图像尺寸严重失真,重点讲解了不同类型的边界扩充方法,如BORDER_REPLICATE、BORDER_REFLECT、BORDER_REFLECT_101和BORDER_CONSTANT,并通过示例代码说明了它们的应用。
摘要由CSDN通过智能技术生成

在对图片进行卷积处理的时候,如果卷积模版(卷积内核)过大,且不对原图的边界进行扩充,会导致处理之后得到的图片尺寸变的很小,也就是严重失真。

而扩充边界有多种方法,本文就介绍一下这些填充方法。

这是原始图像。

根据图像的边界的像素值,向外扩充图片,每个方向扩充50个像素。

a = cv2.copyMakeBorder(img,50,50,50,50,cv2.BORDER_REPLICATE)

把靠近边界的50个像素翻折出去(轴对称):

a = cv2.copyMakeBorder(img,50,50,50,50,cv2.BORDER_REFLECT)

这是另一种折射:

a = cv2.copyMakeBorder(img,50,50,50,50,cv2.BORDER_REFLECT_101)

不知道有什么区别。

常数填充:

a = cv2.copyMakeBorder(img,50,50,50,50,cv2.BORDER_CONSTANT,value=[0,255,0])

a = cv2.copyMakeBorder(img,50,50,50,50,cv2.BORDER_WRAP)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值