opencv學習筆記(三) 幾種去噪濾波器的實現

2021-12-29 19:48:06 字數 546 閱讀 1724

現在在上數字影象處理的課程,最近的一次作業要求不用opencv自帶的濾波器函式來實現幾種濾波器,以實現對加入椒鹽雜訊的影象的去噪。也是對markdown編輯器的一次練習。

椒鹽雜訊是一種很簡單的雜訊,即隨機將影象中一定數量的畫素點設定為0(黑)或255(白)。由於看起來好像在影象上撒了椒鹽一樣,故被稱為椒鹽雜訊。

下面是椒鹽雜訊的處理**(假定輸入影象為3通道)

void salt(mat &image, float salt_ratio)

else

}}

以經典的lena圖為例,加入10%的椒鹽雜訊後:

首先介紹一些通用的設定:令sxy表示中心在(x,y)的點,尺寸為mn的矩形子影象視窗的座標集。mn為濾波器模板的大小。f^(x,y)為濾波器得到的結果,賦值給(x,y)處的畫素。g(s,t)為(s,t)位置的畫素值。

算術均值濾波器

f^(x,y)=1mn∑(s,t)∈sxyg(s,t)

三次樣條去噪

1.繪製原始圖形曲線 from pandas import read csv import pandas as pd 匯入pandas import numpy as np import matplotlib.pyplot as plt from scipy.interpolate import m...

opencv 應用 提取水平與垂直直線 去噪

include include includeusing namespace std using namespace cv int main int argc,char ar char input win input image char output win output image namedw...

OpenCV學習筆記(三) 鄰域操作

核矩陣描述了牽扯到的畫素在計算過程中是如何組合從而獲得目標值的。乙個核定義了乙個影象濾波器。核在每個畫素上的輸出等於各個畫素與對應因子乘積紙盒。如 表示4個水平和豎直鄰居畫素乘以 1,加上當前畫素乘以5。以矩陣的方式定義乙個核,之後使用opencv中的函式cv filter2d完成鄰域操作。void...