主頁 > 知識庫 > Python如何生成隨機高斯模糊圖片詳解

Python如何生成隨機高斯模糊圖片詳解

熱門標簽:沈陽外呼系統(tǒng)呼叫系統(tǒng) 武漢外呼系統(tǒng)平臺 如何申請400電話費用 池州外呼調(diào)研線路 外呼系統(tǒng)哪些好辦 富錦商家地圖標注 沈陽防封電銷卡品牌 沈陽人工外呼系統(tǒng)價格 江西省地圖標注

高斯模糊的介紹與原理

通常,圖像處理軟件會提供"模糊"(blur)濾鏡,使圖片產(chǎn)生模糊的效果。

"模糊"的算法有很多種,其中有一種叫做"高斯模糊"(Gaussian Blur)。它將正態(tài)分布(又名"高斯分布")用于圖像處理。

所謂"模糊",可以理解成每一個像素都取周邊像素的平均值。

上圖中,2是中間點,周邊點都是1。

"中間點"取"周圍點"的平均值,就會變成1。在數(shù)值上,這是一種"平滑化"。在圖形上,就相當于產(chǎn)生"模糊"效果,"中間點"失去細節(jié)。

顯然,計算平均值時,取值范圍越大,"模糊效果"越強烈。

上面分別是原圖、模糊半徑3像素、模糊半徑10像素的效果。模糊半徑越大,圖像就越模糊。從數(shù)值角度看,就是數(shù)值越平滑。

接下來的問題就是,既然每個點都要取周邊像素的平均值,那么應該如何分配權(quán)重呢?

如果使用簡單平均,顯然不是很合理,因為圖像都是連續(xù)的,越靠近的點關(guān)系越密切,越遠離的點關(guān)系越疏遠。因此,加權(quán)平均更合理,距離越近的點權(quán)重越大,距離越遠的點權(quán)重越小。

python生成高斯模糊

Python可以使用opencv庫很方便地生成模糊圖像,如果沒有安裝opencv的,可以用pip安裝:

pip install python-opencv

想了解高斯模糊是什么的話,可以看wiki百科-高斯模糊。對于一般人,只要知道這個操作可以生成模糊圖片就好了,一行代碼即可搞定:

import cv2
img = cv2.GaussianBlur(ori_img, (9, 9), 0)

這個函數(shù)的第一個參數(shù)是原圖像,第二個參數(shù)是高斯矩陣,要注意長和寬都必須為單數(shù),第三個參數(shù)是標準差,如果寫0,則函數(shù)會自行計算。

那怎么控制模糊程度呢?很簡單,高斯矩陣的尺寸越大,標準差越大,處理過的圖像模糊程度越大。

介紹完了簡單的高斯模糊操作,我們加一個隨機處理,來隨機生成模糊程度不同的幾張圖像,其實也很簡單,加一個隨機函數(shù)來生成高斯矩陣的尺寸就可以了:

import cv2
import random

imgName = "img.png"
min_size = 11

ori_img = cv2.imread(imgName)

for i in range(3):
    addition = random.choice((0, 2, 4, 6, 8, 10, 12))
    size = min_size + addition
    kernel_size = (size, size)
    img = cv2.GaussianBlur(ori_img, kernel_size, 0)
    new_imgName = "New_" + str(i) + "_" + str(kernel_size[0])  + "_" + imgName
    cv2.imwrite(new_imgName, img)

這里利用了random庫,來在一組數(shù)字中隨機選擇一個數(shù),加到最小尺寸上,作為每次生成的模糊圖片的高斯矩陣尺寸,這里我的尺寸最小值設為了11,大家可以根據(jù)需要自己嘗試看效果來設定。

總結(jié)

到此這篇關(guān)于Python如何生成隨機高斯模糊圖片的文章就介紹到這了,更多相關(guān)python生成高斯模糊內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • python 基于opencv實現(xiàn)高斯平滑
  • python繪制高斯曲線
  • Python OpenCV高斯金字塔與拉普拉斯金字塔的實現(xiàn)
  • python實現(xiàn)高斯投影正反算方式
  • Python 實現(xiàn)順序高斯消元法示例
  • python 多維高斯分布數(shù)據(jù)生成方式
  • OpenCV半小時掌握基本操作之高斯雙邊

標簽:銅川 潛江 阿里 常德 通遼 黑龍江 呂梁 株洲

巨人網(wǎng)絡通訊聲明:本文標題《Python如何生成隨機高斯模糊圖片詳解》,本文關(guān)鍵詞  Python,如何,生成,隨機,高斯,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《Python如何生成隨機高斯模糊圖片詳解》相關(guān)的同類信息!
  • 本頁收集關(guān)于Python如何生成隨機高斯模糊圖片詳解的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章