您好,登錄后才能下訂單哦!
本篇文章給大家分享的是有關如何進行cv2.copyMakeBorder(),小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
如果你想給你的圖片設置邊界框,就像一個相框一樣的東西,你就可以使用cv2.copyMakeBorder()
函數。但其在卷積操作、零填充等也得到了應用,并且可以用于一些數據增廣操作。
src : 輸入的圖片
top, bottom, left, right :相應方向上的邊框寬度
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
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(),小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。