Opencv的学习之边界填充(5)

Python代码显示如:

import cv2


img=cv2.imread(r"C:\Users\master\Desktop\sheep.jpg")

# 填充的范围
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.subplot(2, 3, 5) 和 plt.subplot(235) 是效果是一样的
#导入pyplot并将其命名为plt(导入包)
import matplotlib.pyplot as plt;

#plt.title()函数是设置图像标题
#subplot()函数它可以均等地划分画布
#plt.subplot(231)把画布分成2*3的格子,把Y1放在第一格
#imshow()括号里面第一个参数表示要显示的图片变量,第二个为颜色图谱,默认为RGB(A)颜色空间,也可以指定,gray是灰度图
plt.subplot(231), plt.imshow(img, 'gray'), plt.title('ORIGINAL')
plt.subplot(232), plt.imshow(replicate, 'gray'), plt.title("REPLICATE")
plt.subplot(233), plt.imshow(reflect, 'gray'), plt.title('REFLECT')
plt.subplot(234), plt.imshow(reflect101, 'gray'), plt.title("REFLECT_101")
plt.subplot(235), plt.imshow(wrap, 'gray'), plt.title('WRAP')
plt.subplot(236), plt.imshow(constant, 'gray'), plt.title("CONSTANT")

plt.show()

填充类型的区别:

Opencv的学习之边界填充(5)_第1张图片

Opencv的学习之边界填充(5)_第2张图片 

成果展示:Opencv的学习之边界填充(5)_第3张图片 

 

你可能感兴趣的:(opencv,学习,计算机视觉)