OpenCV-扩充图像的边界

import cv2
import matplotlib.pyplot as plt

img = cv2.imread('C:\\Elag\\data\\kaggle\\landmark-recognition-challenge\\data\\test\\00b8b0b4a977c786.jpg')

# 填充固定像素值
img1 = cv2.copyMakeBorder(img,50,50,50,50,cv2.BORDER_CONSTANT,value=[255,255,255])
img2 = cv2.copyMakeBorder(img,50,50,50,50,cv2.BORDER_DEFAULT)
img3 = cv2.copyMakeBorder(img,50,50,50,50,cv2.BORDER_ISOLATED)
# 靠近边界的50个像素翻折出去(轴对称)
img4 = cv2.copyMakeBorder(img,50,50,50,50,cv2.BORDER_REFLECT)
img5 = cv2.copyMakeBorder(img,50,50,50,50,cv2.BORDER_REFLECT101)
img6 = cv2.copyMakeBorder(img,50,50,50,50,cv2.BORDER_REFLECT_101)
# 根据对边50像素填充
img7 = cv2.copyMakeBorder(img,50,50,50,50,cv2.BORDER_WRAP)
# 根据图像的边界的像素值,向外扩充图片,每个方向扩充50个像素。
img8  = cv2.copyMakeBorder(img,50,50,50,50,cv2.BORDER_REPLICATE)

cv2.imshow('BORDER_CONSTANT', img1)
cv2.imshow('BORDER_DEFAULT', img2)
cv2.imshow('BORDER_ISOLATED', img3)
cv2.imshow('BORDER_REFLECT', img4)
cv2.imshow('BORDER_REFLECT101', img5)
cv2.imshow('BORDER_REFLECT_101', img6)
cv2.imshow('BORDER_WRAP', img7)
cv2.imshow('BORDER_REPLICATE', img8)
cv2.waitKey(0)
cv2.destroyAllWindows()

BORDER_WRAP
BORDER_REFLECT_101
BORDER_REFLECT101
BORDER_REFLECT
BORDER_ISOLATED
BORDER_DEFAULT
BORDER_CONSTANT
BORDER_REPLICATE

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值