python+opencv边界填充

参考具体网站:https://www.cnblogs.com/cyt99/p/12457384.html

边缘填充:因为对于图像的卷积操作,最边缘的像素一般无法处理,所以卷积核中心到不了最边缘像素。这就需要先将图像的边界填充,再根据不同的填充算法进行卷积操作,得到的新图像就是填充后的图像。
函数原型:cv2.copyMakeBorder(src,top, bottom, left, right ,borderType,value)

import cv2
import numpy as ny
import matplotlib.pyplot as plt

image=cv2.imread('F:\opencv\image\gang.jpg')

def cv2_imshow(name,img):
    cv2.imshow(name,img)
    cv2.waitKey()
    cv2.destroyAllWindows()
    top_size,bottom_size,left_size,right_size=(100,100,100,100)
replicate=cv2.copyMakeBorder(image,top_size,bottom_size,left_size,right_size,borderType=cv2.BORDER_REPLICATE)#bordertype是边界类型#复制法

reflect=cv2.copyMakeBorder(image,top_size,bottom_size,left_size,right_size,borderType=cv2.BORDER_REFLECT)#反射法

reflect101=cv2.copyMakeBorder(image,top_size,bottom_size,left_size,right_size,borderType=cv2.BORDER_REFLECT101)

warp=cv2.copyMakeBorder(image,top_size,bottom_size,left_size,right_size,borderType=cv2.BORDER_WRAP)#外包装法

constant=cv2.copyMakeBorder(image,top_size,bottom_size,left_size,right_size,borderType=cv2.BORDER_CONSTANT,value=(0,255,0))#常量法



cv2_imshow('replicate',replicate)
cv2_imshow('reflect',reflect)
cv2_imshow('warp',warp)
cv2_imshow('reflect101',reflect101)
cv2_imshow('constant',constant)

REPLICATE在这里插入图片描述
REFLECT
在这里插入图片描述

WARP在这里插入图片描述
REFLECT101在这里插入图片描述

CONSTANT在这里插入图片描述
在matplotlib.pyplot显示
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值