<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
方法 : cv2.copyMakeBorder
BORDER_REPLICATE:複製法,也就是複製最邊緣畫素。
BORDER_REFLECT:反射法,對感興趣的影象中的畫素在兩邊進行復制例如:fedcba|abcdefgh|hgfedcb
BORDER_REFLECT_101:反射法,也就是以最邊緣畫素為軸,對稱,gfedcb|abcdefgh|gfedcba
BORDER_WRAP:外包裝法cdefgh|abcdefgh|abcdefg
BORDER_CONSTANT:常數法,常數值填充。
import cv2 import matplotlib.pyplot as plt img = cv2.imread('cat.png') img = cv2.cvtColor(img, cv2.COLOR_RGB2BGR) 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(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()
其效果如下:
cat.png原圖下載:
dog.png原圖下載:
方法 : cv2.addWeighted(src1, alpha, src2, beta, gamma)
import cv2 import matplotlib.pyplot as plt img_cat = cv2.imread('cat.png') img_cat = cv2.cvtColor(img_cat, cv2.COLOR_RGB2BGR) cat_shape = [img_cat.shape[1], img_cat.shape[0]] # 因為cv2讀取通道數是最後一位 img_dog = cv2.imread('dog.png') img_dog = cv2.cvtColor(img_dog, cv2.COLOR_RGB2BGR) img_dog = cv2.resize(img_dog, cat_shape) mixup = cv2.addWeighted(img_cat, 0.55, img_dog, 0.45, 0) plt.imshow(mixup) plt.show()
其效果如下:
ret, dst = cv2.threshold(src, thresh, maxval, type)
其效果如下:
import cv2 import numpy as np img = cv2.imread('lenaNoise.png') cv2.imshow('blur', img) cv2.waitKey(0) cv2.destroyAllWindows() # 均值濾波 # 簡單的平均折積操作 blur = cv2.blur(img, (3, 3))
lenaNoise.png原圖展示:
白色為圖片,黃色區域為濾波器視窗:
# 方框濾波 # 基本和均值一樣,可以選擇歸一化 box = cv2.boxFilter(img, -1, (3, 3), normalize=True)
總結: 均值濾波器是取濾波器中的平均值,然後繼續滑動下一個視窗。
# 高斯濾波 # 高斯模糊的折積核裡的數值是滿足高斯分佈,相當於更重視中間的 aussian = cv2.GaussianBlur(img, (5, 5), 1)
總結: 高斯濾波器是濾波器視窗中離中心值近的權值大,用高斯分佈增加一個權重,然後繼續滑動下一個視窗。
# 中值濾波 # 相當於用中值代替 median = cv2.medianBlur(img, 5) # 中值濾波
總結: 中值濾波器是濾波器視窗中所有數位的中間值,如黃色框中9個數的中間值為113,然後繼續滑動下一個視窗。
# 展示所有的 res = np.hstack((blur, aussian, median)) # print (res) cv2.imshow('median vs average', res) cv2.waitKey(0) cv2.destroyAllWindows()
總結:中值濾波器的圖效果最好,可以解決一些椒鹽噪聲。
以上就是Python OpenCV實現圖片預處理的方法詳解的詳細內容,更多關於Python OpenCV圖片預處理的資料請關注it145.com其它相關文章!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45