最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

圖像處理與RTL硬件實現(xiàn)|第2章:高斯濾波

2023-07-15 17:56 作者:大凝的IC進階之路  | 我要投稿

1. 高斯濾波原理

高斯濾波器的本質(zhì)是一個二維低通系統(tǒng),它通常是以一個矩陣的形式出現(xiàn),比如式(1)這個5×5高斯核(又稱為kernel),用它對圖像做卷積,圖像的高頻分量會被打到低頻,最終呈現(xiàn)的效果就是圖像變模糊了。

gaus%7B%5C_%7Dkenal%20%3D%20%5Cbegin%7Bbmatrix%7D%204%26%206%20%2612%20%26%206%20%26%204%5C%5C%206%26%209%20%26%2018%20%26%209%20%266%20%5C%5C%2012%26%2018%20%26%2036%20%26%2018%20%2612%20%5C%5C%206%26%209%20%26%2018%20%26%209%20%266%20%5C%5C%204%26%206%20%2612%20%26%206%20%26%204%20%5Cend%7Bbmatrix%7D%20%5Cqquad%20%20%5Cqquad%20%20%20%5Cqquad%5Cqquad%20%20%5Cqquad%20%20%5Cqquad%20%5Cquad(1)

生成它的是一個以e為底的指數(shù)函數(shù),通常用exp來標識,如(2)所示:

f(x%2Cy)%3D%5Cfrac%7B1%7D%7B2%5Cpi%5Csigma%5E2%7Dexp%7B(%7D-%5Cfrac%7Bx%5E2%2By%5E2%7D%7B2%5Csigma%5E2%7D)%3D%5Cfrac%7B1%7D%7B2%5Cpi%5Csigma%5E2%7De%5E%7B(-%5Cfrac%7Bx%5E2%2By%5E2%7D%7B2%5Csigma%5E2%7D)%7D%20%5Cqquad%20%20%5Cqquad%20%20%5Cqquad%20%20%5Cqquad%20%5Cquad(2)

公式(2)就是常見的二維高斯函數(shù),它是一個和距離有關(guān)的函數(shù),以5×5的窗口大小為例,中心點作為坐標原點,x和y分別代表橫縱坐標,其坐標如下圖1(a)所示,x2+y2是當前坐標到圓心的歐式距離(高斯核的旋轉(zhuǎn)對稱性由此而來),x2+y2的結(jié)果如下圖1(b)所示,離中心點越遠,x2+y2的值越大。

圖1 高斯公式x,y的含義


f(x%2Cy)%3D%5Cfrac%7B1%7D%7B2%5Cpi%5Csigma%5E2%7Dexp%7B(%7D-%5Cfrac%7Bx%5E2%2By%5E2%7D%7B2%5Csigma%5E2%7D)%3D%5Cfrac%7B1%7D%7B2%5Cpi%5Csigma%5E2%7D(%5Cfrac%7B1%7De)%5E%7B(%5Cfrac%7Bx%5E2%2By%5E2%7D%7B2%CF%83%5E2%7D)%7D%20%5Cquad%20%20%5Cqquad%20%20%5Cqquad%20%20%5Cqquad%20%5Cquad(3)

0<1/e<1,所以f(x,y)是個單調(diào)減函數(shù),那么x2+y2的值越大,求出的值就會越小,所以高斯核呈現(xiàn)出中心點權(quán)重最大,依次向四周遞減的形狀。

公式里還有一個變量σ(方差),方差的物理意義是描述一組數(shù)據(jù)的分散程度,方差越小,數(shù)據(jù)就越聚攏;方差越大,數(shù)據(jù)就越分散。對高斯公式來說,σ越小,窗口內(nèi)權(quán)重越聚攏,得到的圖像就越清晰;σ越大,窗口內(nèi)權(quán)重越分散,得到的圖像就越模糊??梢該Q個角度來理解它,如果窗口內(nèi)的能量值固定為1,分配的越集中,每個位置能分到的能量就越多,高斯的波峰就會越高;分配的越分散,每個位置能分到的能量就越少,高斯的波峰就會越低,所以高斯的極限情況就是均值,所有的位置分配到了相同的能量。

為了進一步觀察窗口大小和σ之間的關(guān)系,用matlab寫一段代碼做個實驗,分別配置不同的窗口大小win_m、win_n和sigma,顯示出16個gauss kernel的三維分布圖,如圖2所示:

圖2 高斯kernel三維分布圖

圖2有一個需要注意的地方,以sigma=1這列的三維圖為例,直觀感受會覺得窗口越小,高斯權(quán)重越分散,窗口越大,高斯權(quán)重越集中,好像在sigma一樣的情況下,5×5窗口對圖像的模糊力度似乎要比17×17的更佳?其實不是的,這里要注意三維圖的坐標,把sigma=1時5×5和17×17的三維圖單獨放大一下,如下圖3所示,右圖的17×17其實也只顯示了5×5的范圍,超過5×5的部分差不多被抑制為0了,所以理論上這兩個窗口的模糊力度應(yīng)該差不多。

圖3 sigma=1時5×5(左)和17×17(右)高斯kernel三維分布圖

再看一下sigma=10的情況,同樣是5×5和17×17的對比,把圖放大如下圖4所示,這個就更明顯了,直觀上好像5×5比17×17更分散,但是看坐標軸就能發(fā)現(xiàn),17×17的范圍顯然更大,而且z軸顯示出的歸一化權(quán)重也說明了這個問題,和5×5相比,17×17的權(quán)重更小一些,在窗口能量為1的情況下,窗口越大,每個位置能分到的能量也就越少,所以17×17的波峰要比5×5低。

圖4 sigma=10時5×5(左)和17×17(右)高斯kernel三維分布圖

從以上的分析可以看出,如果選擇了一個較大的窗口,要把sigma配置的大一些,才能發(fā)揮出大窗口的模糊效果,而且大窗口相對小窗口的調(diào)試范圍更大,可以滿足多種需求。

2. 圖像處理效果與對比

更進一步的,用以上16個kernel分別對下面的Lena圖進行高斯濾波(代碼在附錄中,需要可自行下載),做個濾波效果的對比。從圖5上看,sigma=10且窗口17×17的模糊效果最好;sigma=1時,受sigma分散度的限制,即使是大一些的窗口,也沒能發(fā)揮出更模糊的濾波效果,這很符合上面對高斯公式的分析。由此也能看出,如果對kernel的性質(zhì)掌握的足夠,是可以通過配置直接判斷圖像處理效果的。

進一步解釋圖像高斯濾波,其本質(zhì)是圖像和高斯核的二維卷積,以5×5高斯核為例,按照從上到下從左到右的順序,每次取圖像中一個5×5的窗口數(shù)據(jù)與高斯核進行卷積(乘加計算),得到的最終結(jié)果就是當前中心點的高斯濾波結(jié)果。圖像四周的邊界上會存在缺數(shù)據(jù)的情況,一般的做法是復(fù)制最邊界的圖像,如果窗口是5×5,那就是圖像的上下左右邊界各擴邊2次。

圖5 高斯濾波效果圖

高斯核給中心點像素分配最大權(quán)重,周圍的權(quán)重離中心點的距離越遠其值越小,對于圖像細節(jié)來說,可以更好的被保留下來,而不是像均值濾波那樣被一視同仁的全部抹平。另外,高斯卷積核是實現(xiàn)尺度變換的唯一變換核,并且是唯一的線性核,這個后面如果有需要可以拿出來再詳細解釋一下。

3. 高斯kernel定點化

用公式(2)生成的5×5高斯核是一堆浮點數(shù)據(jù),假設(shè)生成的高斯kernel如式(4)所示(已歸一化)。

gaus%7B%5C_%7Dkenel%3D%5Cleft%5B%5Cbegin%7Bmatrix%7D0.0156%260.0234%260.0469%260.0234%260.0156%5C%5C0.0234%260.0352%260.0703%260.0352%260.0234%5C%5C0.0469%260.0703%260.1406%260.0703%260.0469%5C%5C0.0234%260.0352%260.0703%260.0352%260.0234%5C%5C0.0156%260.0234%260.0469%260.0234%260.0156%5C%5C%5Cend%7Bmatrix%7D%5Cright%5D%20%5Cqquad%20%20%20%5Cqquad%20%20(4)

但是硬件是不能直接處理浮點數(shù)據(jù)的,需要對式(4)做個定點化,也就是給它乘以一個整數(shù),然后四舍五入取整。為了保證輸出圖像和輸入圖像的位寬一致,最后這個乘進來的整數(shù)是要在濾波后除掉的(歸一化),所以這個整數(shù)取2的n次方最合適,此時濾波后只要對結(jié)果右移n位就可以了。選擇n=8,也就是2^8=256對gaus_kernel做定點,就可以得到式(1)的結(jié)果。

另外二維高斯核還能拆成兩個一維高斯核相乘的樣子,如式(5)所示,這是個非常優(yōu)良的性質(zhì),在RTL硬件實現(xiàn)的時候可以節(jié)省功耗和面積,先寫在這里,后面再詳細介紹。

gaus_kenel%3D%5Cleft%5B%5Cbegin%7Bmatrix%7D4%266%2612%266%264%5C%5C6%269%2618%269%266%5C%5C12%2618%2636%2618%2612%5C%5C6%269%2618%269%266%5C%5C4%266%2612%266%264%5C%5C%5Cend%7Bmatrix%7D%5Cright%5D%3D%5Cleft%5B%5Cbegin%7Bmatrix%7D2%5C%5C3%5C%5C6%5C%5C3%5C%5C2%5C%5C%5Cend%7Bmatrix%7D%5Cright%5D%5Ctimes%5Cleft%5B%5Cbegin%7Bmatrix%7D2%263%266%263%262%5C%5C%5Cend%7Bmatrix%7D%5Cright%5D%20%5Cqquad%20%20(5)

附錄:


圖像處理與RTL硬件實現(xiàn)|第2章:高斯濾波的評論 (共 條)

分享到微博請遵守國家法律
建德市| 民丰县| 福海县| 海丰县| 文昌市| 肥城市| 宝清县| 武平县| 定兴县| 昂仁县| 安顺市| 济宁市| 讷河市| 黔南| 东兰县| 颍上县| 清徐县| 错那县| 万年县| 蒙阴县| 上栗县| 营山县| 玉林市| 个旧市| 峨山| 衢州市| 青阳县| 古田县| 蕉岭县| 偏关县| 德兴市| 梅河口市| 岚皋县| 山阳县| 海南省| 招远市| 桦南县| 搜索| 连平县| 麟游县| 边坝县|