温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何进行cv2.copyMakeBorder()

发布时间:2021-12-24 10:38:42 来源:亿速云 阅读:283 作者:柒染 栏目:大数据

本篇文章给大家分享的是有关如何进行cv2.copyMakeBorder(),小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。

如果你想给你的图片设置边界框,就像一个相框一样的东西,你就可以使用cv2.copyMakeBorder()函数。但其在卷积操作、零填充等也得到了应用,并且可以用于一些数据增广操作。

参数

如何进行cv2.copyMakeBorder()

  1. src : 输入的图片

  2. top, bottom, left, right :相应方向上的边框宽度

  3. borderType:定义要添加边框的类型,它可以是以下的一种:

  • cv2.BORDER_CONSTANT:添加的边界框像素值为常数(需要额外再给定一个参数)

  • cv2.BORDER_REFLECT:添加的边框像素将是边界元素的镜面反射,类似于gfedcb|abcdefgh|gfedcba

  • cv2.BORDER_REFLECT_101 or cv2.BORDER_DEFAULT:和上面类似,但是有一些细微的不同,类似于gfedcb|abcdefgh|gfedcba

  • cv2.BORDER_REPLICATE:使用最边界的像素值代替,类似于aaaaaa|abcdefgh|hhhhhhh

  • cv2.BORDER_WRAP:不知道怎么解释,直接看吧,cdefgh|abcdefgh|abcdefg

  1. value:如果borderType为cv2.BORDER_CONSTANT时需要填充的常数值。

实例

img = cv2.imread('testimg.png')
img = cv2.resize(img,(256,256))
cv2.imshow('origin',img),cv2.waitKey(0),cv2.destroyAllWindows()

replicate = cv2.copyMakeBorder(img,20,20,20,20,cv2.BORDER_REPLICATE)
cv2.imshow('replicate',replicate),cv2.waitKey(0),cv2.destroyAllWindows()

constant = cv2.copyMakeBorder(img,20,20,20,20,cv2.BORDER_CONSTANT,value=(255,255,255))
cv2.imshow('constant',constant),cv2.waitKey(0),cv2.destroyAllWindows()

reflect = cv2.copyMakeBorder(img,20,20,20,20,cv2.BORDER_REFLECT)
cv2.imshow('reflect',reflect),cv2.waitKey(0),cv2.destroyAllWindows()

reflect101 = cv2.copyMakeBorder(img,20,20,20,20,cv2.BORDER_REFLECT_101)
cv2.imshow('reflect101',reflect101),cv2.waitKey(0),cv2.destroyAllWindows()

wrap = cv2.copyMakeBorder(img,20,20,20,20,cv2.BORDER_WRAP)
cv2.imshow('wrap',wrap),cv2.waitKey(0),cv2.destroyAllWindows()


如何进行cv2.copyMakeBorder()

如何进行cv2.copyMakeBorder()
如何进行cv2.copyMakeBorder()

以上就是如何进行cv2.copyMakeBorder(),小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注亿速云行业资讯频道。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

cv2
AI