最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

OpenCV平滑處理的實(shí)現(xiàn)示例

 更新時(shí)間:2024年02月02日 10:55:55   作者:KAIs32  
本文主要介紹了OpenCV平滑處理的實(shí)現(xiàn)示例,Opencv中濾波方式可分為均值濾波、高斯濾波和中值濾波,具有一定的參考價(jià)值,感興趣的可以了解一下

前言

當(dāng)我們用樹莓派進(jìn)行opencv圖像處理時(shí),攝像頭所獲取的圖像質(zhì)量通常會(huì)有所下降,此時(shí),需要多種手段來優(yōu)化圖像的質(zhì)量,提高圖像識(shí)別的準(zhǔn)度。今天所記錄的是當(dāng)圖片經(jīng)過傳輸?shù)冗^程后出現(xiàn)的圖像噪聲現(xiàn)象及對(duì)應(yīng)解決方法——平滑

一、圖像噪聲

在數(shù)字圖像的采集、處理和傳輸過程中,可能會(huì)受到各種噪聲干擾,這會(huì)導(dǎo)致圖像質(zhì)量下降、圖像變得模糊,甚至使圖像的特征難以辨認(rèn)。為了增強(qiáng)圖像的質(zhì)量,我們需要對(duì)圖像進(jìn)行平滑處理,以去除這些噪聲的影響。常見的圖像噪聲包括椒鹽噪聲高斯噪聲等。

(1)椒鹽噪聲

椒鹽噪聲也稱為脈沖噪聲,是一種隨機(jī)出現(xiàn)的白點(diǎn)或黑點(diǎn),具體表現(xiàn)為亮的區(qū)域有黑色像素,或是暗的區(qū)域有白色像素,又或是兩者皆有

下圖中,左圖為原圖像右圖為添加椒鹽噪聲的圖像

(2)高斯噪聲

高斯噪聲是指概率密度函數(shù)服從高斯分布(正態(tài)分布)的一類噪聲

下圖中,左圖為原圖像,右圖為添加高斯噪聲的圖像

二、圖像平滑處理

從信號(hào)處理的角度分析,圖像平滑就是去除其中的高頻信息保留低頻信息,即可以通過低通濾波來去除圖像中的噪聲,實(shí)現(xiàn)對(duì)圖像的平滑處理。 根據(jù)濾波器的不同,濾波方式可分為均值濾波、高斯濾波和中值濾波

(一)均值濾波

均值濾波就是對(duì)圖像的所有像素點(diǎn)進(jìn)行取均值,即以一個(gè)方形區(qū)域?yàn)閱挝?,將該區(qū)域的中心像素點(diǎn)賦值為區(qū)域內(nèi)所有像素點(diǎn)的平均值。如圖所示3*3矩形,中心值為235,這個(gè)值由于過大,會(huì)形成黑點(diǎn),即噪聲圖像,為了消除噪聲,將這個(gè)點(diǎn)重新設(shè)置為以它為中心的九個(gè)點(diǎn)的平均值,即:

(23+98+168+46+235+2+67+55+211)\div 9 = 100.5

均值濾波是一種簡(jiǎn)單的濾波方法,尤其對(duì)高斯噪聲的消除有較好的作用,但通常會(huì)使圖像的細(xì)節(jié)變的稍微模糊,在需要觀察圖像細(xì)節(jié)時(shí)不建議使用均值濾波

均值濾波處理函數(shù)如下:

cv2.blur(scr, ksize)

其中的兩個(gè)參數(shù)分別為:

(1)“scr”, 要處理的圖像

(2) “ksize”, 濾波核的大小,它是一個(gè)表示寬度和高度的元組。例如,(3, 3)表示一個(gè)3*3的濾波核

(二)高斯濾波

高斯濾波就是對(duì)圖像的所有像素點(diǎn)進(jìn)行加權(quán)平均,即以一個(gè)方形區(qū)域?yàn)閱挝唬瑢⑵渲行南袼攸c(diǎn)賦值為該區(qū)域的加權(quán)平均值:

23*0.05+98*0.1+168*0.05+46*0.1+235*0.4+2*0.1+67*0.5+55*0.1+211*0.05 = 137

高斯濾波考慮了像素周圍鄰域的距離,使得離中心像素更近的像素具有更高的權(quán)重,可以有效地去除噪聲,同時(shí)保留圖像的邊緣和細(xì)節(jié)

高斯濾波處理函數(shù)如下:

cv2.GaussianBlur(src, ksize, sigmaX, sigmaY, borderType)

其中的五個(gè)參數(shù)分別為:

(1)“src”, 要處理的圖像

(2)“ksize”, 高斯濾波核的大小,它是一個(gè)表示寬度和高度的元組。例如,(3, 3)表示一個(gè)3*3的濾波核

(3)“sigmaX”, X方向的高斯核標(biāo)準(zhǔn)差,通常可以寫為0或者不寫

(4)“sigmaY”, Y方向的高斯核標(biāo)準(zhǔn)差,如果sigmaY為0,則默認(rèn)與sigmaX相同

(5)“borderType”, 邊界處理類型,用于處理濾波核超出圖像邊界的情況

(三)中值濾波

中值濾波就是對(duì)圖像的所有像素點(diǎn)進(jìn)行取中值,即以一個(gè)方形區(qū)域?yàn)閱挝?,將其中心像素點(diǎn)賦值為該區(qū)域的中值。例如下圖所示3*3矩形中:2、23、46、55、67、98、168、211、235,其中67為中值,所以將中心設(shè)置為67

中值濾波是一種非線性濾波方法,對(duì)于去除椒鹽噪聲等椒鹽噪聲非常有效,但可能會(huì)導(dǎo)致圖像細(xì)節(jié)模糊

中值濾波處理函數(shù)如下:

cv2.medianBlur(src, ksize)

(1)“scr”, 要處理的圖像

(2) “ksize”, 濾波核的大小,它是一個(gè)表示寬度和高度的元組。例如,(3, 3)表示一個(gè)3*3的濾波核

三、完整應(yīng)用代碼

三種濾波方法的具體應(yīng)用代碼如下:

import cv2

# 圖像讀取
img = cv2.imread('noise.jpg')

# 圖像平滑
blur1 = cv2.blur(img, (5, 5))               # 均值濾波
blur2 = cv2.GaussianBlur(img, (5, 5), 1)    # 高斯濾波
blur3 = cv2.medianBlur(img, 5)              # 中值濾波

# 圖像顯示
cv2.imshow('image1', img)
cv2.imshow('image2', blur1)
cv2.imshow('image3', blur2)
cv2.imshow('image4', blur3)
cv2.waitKey(0)
cv2.destroyAllWindows()

到此這篇關(guān)于OpenCV平滑處理的實(shí)現(xiàn)示例的文章就介紹到這了,更多相關(guān)OpenCV平滑處理內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python使用ChainMap實(shí)現(xiàn)組合數(shù)據(jù)魔法實(shí)例探究

    Python使用ChainMap實(shí)現(xiàn)組合數(shù)據(jù)魔法實(shí)例探究

    這篇文章主要為大家介紹了Python使用ChainMap實(shí)現(xiàn)組合數(shù)據(jù)魔法實(shí)例探究,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2024-01-01
  • 使用優(yōu)化器來提升Python程序的執(zhí)行效率的教程

    使用優(yōu)化器來提升Python程序的執(zhí)行效率的教程

    這篇文章主要介紹了使用優(yōu)化器來提升Python程序的執(zhí)行效率的教程,包括編寫計(jì)時(shí)器和使用內(nèi)建的優(yōu)化器等,需要的朋友可以參考下
    2015-04-04
  • python使用ctypes調(diào)用第三方庫時(shí)出現(xiàn)undefined?symbol錯(cuò)誤詳解

    python使用ctypes調(diào)用第三方庫時(shí)出現(xiàn)undefined?symbol錯(cuò)誤詳解

    python中時(shí)間的庫有time和datetime,pandas也有提供相應(yīng)的時(shí)間處理函數(shù),下面這篇文章主要給大家介紹了關(guān)于python使用ctypes調(diào)用第三方庫時(shí)出現(xiàn)undefined?symbol錯(cuò)誤的相關(guān)資料,需要的朋友可以參考下
    2023-02-02
  • Python構(gòu)建簡(jiǎn)單線性回歸模型

    Python構(gòu)建簡(jiǎn)單線性回歸模型

    這篇文章主要介紹了Python構(gòu)建簡(jiǎn)單線性回歸模型,線性回歸表示發(fā)現(xiàn)函數(shù)使用線性組合表示輸入變量。簡(jiǎn)單線性回歸很容易理解,使用了基本的回歸技術(shù),一旦理解了這些基本概念,可以更好地學(xué)習(xí)其他類型的回歸模型
    2022-08-08
  • 為Python的Tornado框架配置使用Jinja2模板引擎的方法

    為Python的Tornado框架配置使用Jinja2模板引擎的方法

    Jinja2是人氣Web框架Flask中的內(nèi)置模板引擎,而且與Django的模板引擎比較類似,這里我們就來看一下為Python的Tornado框架配置使用Jinja2模板引擎的方法
    2016-06-06
  • Python wxPython創(chuàng)建文件復(fù)制工具

    Python wxPython創(chuàng)建文件復(fù)制工具

    wxPython是一個(gè)功能強(qiáng)大的 GUI 框架,它允許開發(fā)者通過 Python 輕松構(gòu)建跨平臺(tái)的桌面應(yīng)用,本文將使用wxPython創(chuàng)建一個(gè)文件復(fù)制工具,感興趣的可以了解下
    2025-02-02
  • Python游戲開發(fā)之Pygame使用的最全教程分享

    Python游戲開發(fā)之Pygame使用的最全教程分享

    Pygame庫是Python中一個(gè)專為游戲開發(fā)設(shè)計(jì)的庫,它提供了大量的功能來幫助開發(fā)者創(chuàng)建各種2D游戲,本文就來和大家分享一下Pygame的具體使用,希望對(duì)大家有所幫助
    2023-05-05
  • python selenium爬取斗魚所有直播房間信息過程詳解

    python selenium爬取斗魚所有直播房間信息過程詳解

    這篇文章主要介紹了python selenium爬取斗魚所有直播房間信息過程詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-08-08
  • python?unicodedata模塊用法

    python?unicodedata模塊用法

    這篇文章主要為大家介紹了python?unicodedata模塊用法示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-06-06
  • Python批量寫入ES索引數(shù)據(jù)的示例代碼

    Python批量寫入ES索引數(shù)據(jù)的示例代碼

    這篇文章主要為大家詳細(xì)介紹了如何使用python腳本批量寫ES數(shù)據(jù)(需要使用pip提前下載安裝es依賴庫),感興趣的小伙伴可以學(xué)習(xí)一下
    2024-02-02

最新評(píng)論

遂溪县| 海兴县| 江源县| 广西| 雷波县| 石河子市| 屯留县| 通榆县| 广州市| 博兴县| 江达县| 晴隆县| 应城市| 武宣县| 林周县| 新丰县| 锡林郭勒盟| 海兴县| 保康县| 巴林右旗| 康乐县| 达日县| 镇安县| 荥经县| 休宁县| 西充县| 临沭县| 诸暨市| 黔江区| 黄骅市| 临沭县| 绥阳县| 彰化市| 佛冈县| 遵化市| 江都市| 南溪县| 玛曲县| 渭源县| 桦川县| 东丰县|