Java opencv3 2 0之高斯濾波

2021-08-04 17:45:10 字數 853 閱讀 4872

高斯濾波器是利用高斯核的乙個二維的卷積運算元,用於影象模糊去噪。它也是一種線性濾波器,其模板係數會隨著距離模板中心越遠而越小。高斯濾波的結果和高斯分布的標準差σ有關,σ越大,平滑效果越好。高斯濾波的具體操作是:用乙個模板掃瞄影象中的每乙個畫素,用模板確定的鄰域內畫素的加權平均值去替代模板中心畫素點的值。

如圖為高斯濾波器σ為0.8的高斯核心模板:

opencv3.2.0中提供了實現高斯濾波的方法:imgproc.gaussianblur(mat src, mat dst, size ksize, double sigmax, double sigmay, int bordertype)

引數說明:

src:輸入源影象

dst:輸出目標影象

ksize:核心模板大小

sigmax:高斯核心在x方向的標準偏差

sigmay:高斯核心在y方向的標準偏差。如果sigmay為0,他將和sigmax的值相同,如果他們都為0,那麼他們由ksize.width和ksize.height計算得出

bordertype: 用於判斷影象邊界的模式

例子:

public static void main(string args)
源影象:

目標影象:

Java opencv3 2 0之灰度化

灰度處理即是把彩色轉為灰度,目的是為了加快處理速度。24位彩色影象每個畫素用3個位元組表示,每個位元組對應著rgb分量的亮度。當rgb分量值不同時,為彩色影象 當rgb分量相同時,為灰度影象。opencv3.2.0中提供了影象彩色空間轉換方法 imgproc.cvtcolor mat src,mat...

Java opencv3 2 0之canny運算元

canny邊緣檢測運算元是john f.canny於1986年開發出來的乙個多級邊緣檢測演算法。canny邊緣檢測的步驟 1 消除雜訊,一般使用高斯平滑濾波器卷積降噪 2 計算梯度幅值和方向,此處按照sobel濾波器步驟來操作 3 非極大值抑制,排除非邊緣畫素 4 滯後閾值 高閾值和低閾值 若某一畫...

Java opencv3 2 0之重對映

通過重對映來表達每個畫素的位置 x,y g x,y f h x,y h x,y 是對映方法函式。當h x,y i.cols x,y 表示按照x軸方向發生偏轉。函式 imgproc.remap mat src,mat dst,mat map1,mat map2,int interpolation,in...