網(wǎng)站首頁 編程語言 正文
高斯衰減python實現(xiàn)
def get_score_time_weight(original, offset,scale,current_data):
diff = current_data-original
if math.fabs(diff) < offset:
return 1
else:
var_sqr = scale**2/(2*math.log(2))
return math.pow(math.e,-(math.fabs(diff)-offset)**2/(2*var_sqr))
效果如下:
對應的實際計算公式正態(tài)分布概率密度函數(shù)去掉常數(shù)項為:
高斯濾波學習筆記
在圖像處理中,高斯濾波一般有兩種實現(xiàn)方式,一是用離散化窗口滑窗卷積,另一種通過傅里葉變換。最常見的就是第一種滑窗實現(xiàn),只有當離散化的窗口非常大,用滑窗計算量非常大(即使用可分離濾波器的實現(xiàn))的情況下,可能會考慮基于傅里葉變化的實現(xiàn)方法。
原理
圖像大多數(shù)噪聲均屬于高斯噪聲,因此高斯濾波器應用也較廣泛。高斯濾波是一種線性平滑濾波,適用于消除高斯噪聲,廣泛應用于圖像去噪。
可以簡單地理解為,高斯濾波去噪就是對整幅圖像像素值進行加權平均,針對每一個像素點的值,都由其本身值和鄰域內的其他像素值經過加權平均后得到。
高斯濾波的具體操作是:用一個用戶指定的模板(或稱卷積、掩膜)去掃描圖像中的每一個像素,用模板確定的鄰域內像素的加權平均灰度值去替代模板中心像素點的值。
一維高斯分布:
二維高斯分布:
高斯模糊:
我們常說的高斯模糊就是使用高斯濾波器完成的,高斯模糊是低通濾波的一種,也就是濾波函數(shù)是低通高斯函數(shù),但是高斯濾波是指用高斯函數(shù)作為濾波函數(shù),至于是不是模糊,要看是高斯低通還是高斯高通,低通就是模糊,高通就是銳化。
濾波器是建立的一個數(shù)學模型,通過它來將圖像數(shù)據(jù)進行能量轉化,能量低的就排除掉,噪聲屬于低能量部分。編程運算的話就是一個模板運算,拿圖像的八連通區(qū)域來說,中間點的像素值就等于八連通區(qū)的像素值的均值,這樣達到平滑的效果。假如使用理想濾波器,則會在圖像中產生振鈴現(xiàn)象。如果采用高斯濾波器,系統(tǒng)函數(shù)為平滑的,避免了振鈴現(xiàn)象(圖像處理中,對一幅圖像進行濾波處理,若選用的頻域濾波器具有陡峭的變化,則會使濾波圖像產生“振鈴”,所謂“振鈴”,就是指輸出圖像的灰度劇烈變化處產生的震蕩,就好像鐘被敲擊后產生的空氣震蕩。).
理想濾波器是指能使通帶內信號的幅值和相位都不失真,阻帶內的頻率成分都衰減為零的濾波器,其通帶和阻帶之間有明顯的分界線。也就是說,理想濾波器在通帶內的幅頻特性應為常數(shù),相頻特性的斜率為常值;在通帶外的幅頻特性應為零。
由于高斯函數(shù)的傅立葉變換仍是高斯函數(shù), 因此高斯函數(shù)能構成一個在頻域具有平滑性能的低通濾波器。可以通過在頻域做乘積來實現(xiàn)高斯濾波。均值濾波是對信號進行局部平均, 以平均值來代表該像素點的灰度值。矩形濾波器(Averaging Box Filter)對這個二維矢量的每一個分量進行獨立的平滑處理。通過計算和轉化 ,得到一幅單位矢量圖。這個 512×512的矢量圖被劃分成一個 8×8的小區(qū)域 ,再在每一個小區(qū)域中 ,統(tǒng)計這個區(qū)域內的主要方向 ,亦即將對該區(qū)域內點方向數(shù)進行統(tǒng)計,最多的方向作為區(qū)域的主方向。于是就得到了一個新的64×64的矢量圖。這個新的矢量圖還可以采用一個 3×3模板進行進一步的平滑。
總結
原文鏈接:https://blog.csdn.net/sslfk/article/details/127268672
相關推薦
- 2024-02-29 UNI-APP頁面跳轉時(uni.navigateTo),參數(shù)傳遞
- 2022-10-10 基于?Spring?Aop?環(huán)繞通知實現(xiàn)?Redis?緩存雙刪功能(示例代碼)_Redis
- 2021-12-06 Flutter多項選擇彈窗實現(xiàn)詳解_Android
- 2022-01-30 Unknown custom element: <router-view> - did you re
- 2022-08-02 C#?HttpClient?Post參數(shù)同時上傳文件的實現(xiàn)_C#教程
- 2022-04-14 詳解Redis?鍵和字符串常用命令_Redis
- 2023-07-29 koa2+sequelize中websocket的使用
- 2022-09-22 vite alias配置路徑地址別名
- 最近更新
-
- window11 系統(tǒng)安裝 yarn
- 超詳細win安裝深度學習環(huán)境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實現(xiàn)加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發(fā)現(xiàn)-Nac
- Spring Security之基于HttpR
- Redis 底層數(shù)據(jù)結構-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支