欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python OpenCV對圖像進行模糊處理詳解流程

 更新時間:2021年10月22日 11:33:25   作者:Hong_Youth  
OpenCV是一個基于BSD許可(開源)發(fā)行的跨平臺計算機視覺庫,可以運行在Linux、Windows、Android和Mac OS操作系統(tǒng)上。它輕量級而且高效——由一系列 C 函數(shù)和少量 C++ 類構(gòu)成,同時提供了Python、Ruby、MATLAB等語言的接口,實現(xiàn)了圖像處理和計算機視覺方面很多通用算法

其實我們平時在深度學習中所說的卷積操作,在 opencv 中也可以進行,或者說是類似操作。那么它是什么操作呢?它就是圖像的模糊(濾波)處理。

均值濾波

使用 opencv 中的cv2.blur(src, ksize)函數(shù)。其參數(shù)說明是:

  • src: 原圖像
  • ksize: 模糊核大小

原理:它只取內(nèi)核區(qū)域下所有像素的平均值并替換中心元素。3x3 標準化的盒式過濾器如下所示:

3×3標準過濾器

  • 特征:核中區(qū)域貢獻率相同。
  • 作用:對于椒鹽噪聲的濾除效果比較好。
# -*-coding:utf-8-*-
"""
File Name: image_deeplearning.py
Program IDE: PyCharm
Date: 2021/10/17
Create File By Author: Hong
"""
import cv2 as cv


def image_blur(image_path: str):
    """
    圖像卷積操作:設置卷積核大小,步距
    :param image_path:
    :return:
    """
    img = cv.imread(image_path, cv.IMREAD_COLOR)
    cv.imshow('input', img)
    # 模糊操作(類似卷積),第二個參數(shù)ksize是設置模糊內(nèi)核大小
    result = cv.blur(img, (5, 5))
    cv.imshow('result', result)

    cv.waitKey(0)
    cv.destroyAllWindows()


if __name__ == '__main__':
    path = 'images/2.png'
    image_blur(path)

結(jié)果展示:

均值濾波

高斯濾波

高斯濾波使用的是cv2.GuassianBlur(img, ksize,sigmaX,sigmaY)函數(shù)。

說明:sigmaX,sigmaY分別表示 X,Y 方向的標準偏差。如果僅指定了sigmaX,則sigmaYsigmaX相同;如果兩者都為零,則根據(jù)內(nèi)核大小計算它們。

  • 特征:核中區(qū)域貢獻率與距離區(qū)域中心成正比,權重與高斯分布相關。
  • 作用:高斯模糊在從圖像中去除高斯噪聲方面非常有效。
def image_conv(image_path: str):
    """
    高斯模糊
    :param image_path:
    :return:
    """
    img = cv.imread(image_path, cv.IMREAD_COLOR)
    cv.imshow('img', img)
    # 高斯卷積(高斯濾波), 可以設置ksize,必須為奇數(shù),不為0時,后面的步驟不起作用;也可以設置成(0,0),然后通過sigmaX和sigmaY計算標準偏差
    result = cv.GaussianBlur(img, (0, 0), 15)
    cv.imshow('result', result)

    cv.waitKey(0)
    cv.destroyAllWindows()


if __name__ == '__main__':
    path = 'images/2.png'
    image_conv(path)

結(jié)果展示:

高斯濾波

高斯雙邊濾波

雙邊濾波(模糊)使用的是cv2.bilateralFilter(img,d, sigmaColor, sigmaSpace)函數(shù)。

說明:d為鄰域直徑,sigmaColor為空間高斯函數(shù)標準差,參數(shù)越大,臨近像素將會在越遠的地方越小。

sigmaSpace灰度值相似性高斯函數(shù)標準差,參數(shù)越大,那些顏色足夠相近的的顏色的影響越大。

雙邊濾波是一種非線性的濾波方法,是結(jié)合圖像的空間鄰近度和像素值相似度的一種折衷處理,同時考慮空間與信息和灰度相似性,達到保邊去噪的目的,具有簡單、非迭代、局部處理的特點。之所以能夠達到保邊去噪的濾波效果是因為濾波器由兩個函數(shù)構(gòu)成:一個函數(shù)是由幾何空間距離決定濾波器系數(shù),另一個是由像素差值決定濾波器系數(shù)。

  • 特征:處理耗時。
  • 作用:在濾波的同時能保證一定的邊緣信息。
# 邊緣保留濾波器——高斯雙邊模糊
def image_bifilter(image_path: str):
    """
    高斯雙邊模糊
    :param image_path: 圖片文件
    :return: 無返回值
    """
    img = cv.imread(image_path, cv.IMREAD_COLOR)
    cv.imshow('input', img)
    # 第三個參數(shù)是設置色彩、第四個參數(shù)是設置圖像坐標
    result = cv.bilateralFilter(img, 0, 50, 10)
    cv.imshow('result', result)

    cv.waitKey(0)
    cv.destroyAllWindows()


if __name__ == '__main__':
    path = 'images/2.png'
    image_bifilter(path)

結(jié)果展示:

雙邊濾波

到此這篇關于Python OpenCV對圖像進行模糊處理詳解流程的文章就介紹到這了,更多相關Python 圖像模糊處理內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • python中requests庫安裝與使用詳解

    python中requests庫安裝與使用詳解

    requests是一個很實用的Python HTTP客戶端庫,爬蟲和測試服務器響應數(shù)據(jù)時經(jīng)常會用到,下面這篇文章主要給大家介紹了關于python中requests庫安裝與使用的相關資料,需要的朋友可以參考下
    2022-07-07
  • 3分鐘學會一個Python小技巧

    3分鐘學會一個Python小技巧

    Python時間日期轉(zhuǎn)換在開發(fā)中是非常高頻的一個操作,你經(jīng)常會遇到需要將字符串轉(zhuǎn)換成 datetime 或者是反過來將 datetime 轉(zhuǎn)換成字符串,今天小編給大家?guī)砹艘粋€Python小技巧,感興趣的朋友一起看看吧
    2018-11-11
  • python將txt文件讀取為字典的示例

    python將txt文件讀取為字典的示例

    今天小編就為大家分享一篇python將txt文件讀取為字典的示例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-12-12
  • Python實現(xiàn)倉庫管理系統(tǒng)

    Python實現(xiàn)倉庫管理系統(tǒng)

    這篇文章主要為大家詳細介紹了Python實現(xiàn)倉庫管理系統(tǒng),文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-05-05
  • 如何搭建pytorch環(huán)境的方法步驟

    如何搭建pytorch環(huán)境的方法步驟

    這篇文章主要介紹了如何搭建pytorch環(huán)境的方法步驟,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2020-05-05
  • Python中字典及遍歷常用函數(shù)的使用詳解

    Python中字典及遍歷常用函數(shù)的使用詳解

    這篇文章主要為大家介紹了Python中字典有關的常見函數(shù)的使用方法,以及字典遍歷的方法。文中通過示例代碼為我們進行了詳細介紹,對學習Python字典有一定幫助,需要的可以參考一下
    2022-06-06
  • python?如何使用requests下載文件

    python?如何使用requests下載文件

    這篇文章主要介紹了python?如何使用requests下載文件,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-02-02
  • 基于Linux系統(tǒng)中python matplotlib畫圖的中文顯示問題的解決方法

    基于Linux系統(tǒng)中python matplotlib畫圖的中文顯示問題的解決方法

    下面小編就為大家?guī)硪黄贚inux系統(tǒng)中python matplotlib畫圖的中文顯示問題的解決方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-06-06
  • Python中類的初始化特殊方法

    Python中類的初始化特殊方法

    本文給大家介紹一下Python中類才初始化時候的特殊方法,通過實例給大家做了分析,一起來學習下。
    2017-12-12
  • python使用multiprocessing的詳細方法

    python使用multiprocessing的詳細方法

    multiprocessing是Python標準庫中的一個模塊,用于實現(xiàn)多進程編程,它提供了一種簡單而高效的方式來利用多核處理器的能力,通過在多個進程中同時執(zhí)行任務,加快程序的執(zhí)行速度和提高系統(tǒng)的吞吐量,這篇文章主要介紹了python使用multiprocessing,需要的朋友可以參考下
    2024-03-03

最新評論