import cv2
import matplotlib.pyplot as plt
import numpy as np
img=cv2.imread('C:/Users/xpp/Desktop/Lena.png')
top_size,bottom_size,left_size,right_size=(50,50,50,50)
replicate=cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,borderType=cv2.BORDER_REPLICATE)#边界填充图像
reflect=cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,cv2.BORDER_REFLECT)#边界填充图像
reflect101=cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,cv2.BORDER_REFLECT_101)#边界填充图像
wrap=cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,cv2.BORDER_WRAP)#边界填充图像
constant=cv2.copyMakeBorder(img,top_size,bottom_size,left_size,right_size,cv2.BORDER_CONSTANT,value=0)#边界填充图像
plt.figure(1)
plt.clf()
plt.title('ORIGINAL')
plt.imshow(img)
plt.figure(2)
plt.clf()
plt.title('REPLICATE')
plt.imshow(replicate)
plt.figure(3)
plt.clf()
plt.title('REFLECT')
plt.imshow(reflect)
plt.figure(4)
plt.clf()
plt.title('REFLECT_101')
plt.imshow(reflect101)
plt.figure(5)
plt.clf()
plt.title('WRAP')
plt.imshow(wrap)
plt.figure(6)
plt.clf()
plt.title('constant')
plt.imshow(constant)
plt.show()
算法:图像填充边界是为了便于进行滤波,卷积等有关图像边界处理的操作。
dst=cv.copyMakeBorder(img, top, bottom, left, right, borderType)
本文分享自 图像处理与模式识别研究所 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!