1. 程式人生 > 實用技巧 >halcon影象濾波:均值濾波&中值濾波&高斯濾波

halcon影象濾波:均值濾波&中值濾波&高斯濾波

影象濾波,即在儘量保留影象細節特徵的條件下對目標影象的噪聲進行抑制,是影象預處理中不可缺少的操作,其處理效果的好壞將直接影響到後續影象處理和分析的有效性和可靠性。

影象濾波的主要目的:為了消除影象中混入的噪聲,並且為影象識別抽取出影象特徵。 濾波處理的要求:一是不能損壞影象的輪廓及邊緣等重要資訊;二是使影象清晰視覺效果好。

Halcon運算元與演算法原理

平滑濾波器用於模糊處理和降低噪聲。模糊處理經常用於預處理任務中,如在提取大型目標前去除影象中的一些瑣碎細節,以及橋接直線或曲線的縫隙。

(1)均值濾波: mean_image

均值濾波是一種線性濾波器,即將一個視窗區域中的畫素計算平均值,然後將視窗中計算得到的均值設定為錨點上的畫素值。 均值濾波是對所有輸入影象(影象)的灰度值進行線性平滑。過濾器矩陣由1(計算相等)和大小Mask Height x Mask Width。卷積的結果除以掩碼高度x掩碼寬度。對於邊界處理,將灰度值反射到影象邊緣。 均值濾波中的任意一點的畫素值,都是周圍N/times M個畫素的均值。

在這裡插入圖片描述

在這裡插入圖片描述

優點:對影象內部的噪聲及模糊影象有很好的作用。

缺點:使用均值濾波計算均值會將影象中的邊緣資訊與特徵資訊“模糊”掉,丟失很多特徵。

(2)中值濾波:median_image

中值濾波是一種非線性濾波,在處理脈衝噪聲以及椒鹽噪聲時效果極佳,能夠有效的保護好影象的邊緣資訊。

中值濾波的基本原理是讓影象中某點臨近的畫素按照大小排序,取排序畫素集中位於中間位置的值作為中值濾波後的畫素值。換句話說,可以理解為一個視窗沿著影象移動,然後將把視窗中所含的畫素點按灰度級的升或降序排列,用位於中間的灰度值來代替該點的灰度值。

在這裡插入圖片描述

優點:對單個噪聲有很好的平滑作用,尤其是椒鹽噪聲。
(3)高斯濾波:gauss_image

高斯濾波就是對整幅影象進行加權平均的過程,每一個畫素點的值,都由其本身和鄰域內的其他畫素值經過加權平均後得到。 高斯濾波的具體操作是:用一個模板(或稱卷積、掩模)掃描影象中的每一個畫素,用模板確定的鄰域內畫素的加權平均灰度值去替代模板中心畫素點的值。 影象高斯平滑也是鄰域平均的思想對影象進行平滑的一種方法,在影象高斯平滑中,對影象進行平均時,不同位置的畫素被賦予了不同的權重。高斯平滑與簡單平滑不同,它在對鄰域內畫素進行平均時,給予不同位置的畫素不同的權值。
在這裡插入圖片描述

優點:可以消除高斯噪聲