當前位置:首頁 » 操作系統 » 圖像平滑演算法

圖像平滑演算法

發布時間: 2023-02-09 22:18:15

1. 在數字圖像處理中什麼是圖像平滑什麼是圖像銳化

(圖象平滑)①目的:降低圖像銳度,同時也會去除部分雜訊,處理後導致圖象模糊;②處理方法:鄰域平均法、中值濾波法、多圖象平均法,採用取平均值或中值的方法來模糊雜訊;③圖象邊緣及雜訊頻率都在高頻區,用低通濾波法來去雜訊。
(圖象銳化)①目的:增強圖像輪廓和細節,使圖象清晰,處理後雜訊也會增強;②處理方法:梯度法、拉普拉斯演算法、Robert演算法,採用微分運算求信號變化率,加強高頻分量,使圖象輪廓清晰;③圖象邊緣或線條等細節部分在高頻區,用高通濾波讓高頻分量通過。

2. 圖像平滑處理的原理

這個可以使用均值濾波處理,它也叫圖像的平滑。均值濾波是典型的線性濾波演算法,它是指在圖像上對目標像素給一個模板,該模板包括了其周圍的臨近像素(以目標象素為中心的周圍8個象素,構成一個濾波模板,即去掉目標象素本身)。再用模板中的全體像素的平均值來代替原來像素值。

3. 圖像處理的演算法有哪些

圖像處理基本演算法操作從處理對象的多少可以有如下劃分:
一)點運算:處理點單元信息的運算
二)群運算:處理群單元 (若干個相鄰點的集合)的運算
1.二值化操作
圖像二值化是圖像處理中十分常見且重要的操作,它是將灰度圖像轉換為二值圖像或灰度圖像的過程。二值化操作有很多種,例如一般二值化、翻轉二值化、截斷二值化、置零二值化、置零翻轉二值化。
2.直方圖處理
直方圖是圖像處理中另一重要處理過程,它反映圖像中不同像素值的統計信息。從這句話我們可以了解到直方圖信息僅反映灰度統計信息,與像素具體位置沒有關系。這一重要特性在許多識別類演算法中直方圖處理起到關鍵作用。
3.模板卷積運算
模板運算是圖像處理中使用頻率相當高的一種運算,很多操作可以歸結為模板運算,例如平滑處理,濾波處理以及邊緣特徵提取處理等。這里需要說明的是模板運算所使用的模板通常說來就是NXN的矩陣(N一般為奇數如3,5,7,...),如果這個矩陣是對稱矩陣那麼這個模板也稱為卷積模板,如果不對稱則是一般的運算模板。我們通常使用的模板一般都是卷積模板。如邊緣提取中的Sobel運算元模板。

4. 平滑濾波的3×3演算法原理

平滑濾波
低頻增強的空間域濾波技術
平滑濾波是低頻增強的空間域濾波技術。它的目的有兩類:一類是模糊;另一類是消除噪音。空間域的平滑濾波一般採用簡單平均法進行,就是求鄰近像元點的平均亮度值。鄰域的大小與平滑的效果直接相關,鄰域越大平滑的效果越好,但鄰域過大,平滑會使邊緣信息損失的越大,從而使輸出的圖像變得模糊,因此需合理選擇鄰域的大小。
中文名
平滑濾波
外文名
Smoothing
拼音
píng huá lǜ bō
注音
ㄆㄧㄥˊ ㄏㄨㄚˊㄌㄩˋ ㄅㄛ
濾波目的處理要求濾波原因濾波方法其他方式TA說
濾波目的
濾波的本義是指信號有各種頻率的成分,濾掉不想要的成分,即為濾掉常說的雜訊,留下想要的成分.這即是濾波的過程,也是目的.
一是抽出對象的特徵作為圖像識別的特徵模式;另一個是為適應圖像處理的要求,消除圖像數字化時所混入的雜訊。
處理要求
一是不能損壞圖像的輪廓及邊緣等重要信息;二是使圖像清晰視覺效果好。
濾波原因
各類圖像處理系統在圖像的採集、獲取、傳送和轉換(如成像、復制掃描、傳輸以及顯示等)過程中,均處在復雜的環境中,光照、電磁多變,所有的圖像均不同程度地被可見或不可見的雜訊干擾。雜訊源包括電子雜訊、光子雜訊、斑點雜訊和量化雜訊。如果信噪比低於一定的水平,雜訊逐漸變成可見的顆粒形狀,導致圖像質量的下降。除了視覺上質量下降,雜訊同樣可能掩蓋重要的圖像細節,在對採集到的原始圖像做進一步的分割處理時,我們發現有一些分布不規律的椒鹽雜訊,為此採取相應的對策就是對圖像進行必要的濾波降噪處理。
濾波方法
圖像的雜訊濾波器有很多種,常用的有線性濾波器,非線性濾波器。採用線性濾波如鄰域平滑濾波,對受到雜訊污染而退化的圖像復原,在很多情況下是有效的。但大多數線性濾波器具有低通特性,去除雜訊的同時也使圖像的邊緣變模糊了。而另一種非線性濾波器如中值濾波,在一定程度上可以克服線性濾波器所帶來的圖像模糊問題,在濾除雜訊的同時,較好地保留了圖像的邊緣信息。
鄰域平滑濾波原理
鄰域平均法[2]是一種利用Box模版對圖像進行模版操作(卷積運算)的圖像平滑方法,所謂Box模版是指模版中所有系數都取相同值的模版,常用的3×3和5×5模版如下:
鄰域平均法的數學含義是:
(式4-1)
式中:x,y=0,1,…,N-1;S是以(x,y)為中心的鄰域的集合,M是S內的點數。
鄰域平均法的思想是通過一點和鄰域內像素點求平均來去除突變的像素點,從而濾掉一定雜訊,其優點是演算法簡單,計算速度快,其代價會造成圖像在一定程度上的模糊。
中值濾波原理
中值濾波[2]就是用一個奇數點的移動窗口,將窗口的中心點的值用窗口內的各點中值代替。假設窗口內有五點,其值為80、90、200、110和120,那麼此窗口內各點的中值及為110。
設有一個一維序列f1,f2,…,fn,取窗口長度(點數)為m(m為奇數),對其進行中值濾波,就是從輸入序列中相繼抽出m個數fi-v,…,fi-1,fi,fi+1,…,fi+v(其中fi為窗口中心值,v=(m-1)/2),再將這m個點按其數值大小順序排序,取其序號的中心點的那個數作為濾波輸出。數學公式表示為:
Yi=Med{fi-v,…,fi-1,fi,fi+1,…,fi+v} i∈N v=(m-1)/2 (式4-2)
Yi稱為序列fi-v,…,fi-1,fi,fi+1,…,fi+v的中值
例如,有一序列{0,3,4,0,7},重新排序後為{0,0,3,4,7}則Med{0,0,3,4,7}=3。此列若用平滑濾波,窗口也取5,那麼平滑濾波輸出為(0+3+4+0+7)/5=2.8。
把一個點的特定長度或形狀的鄰域稱作窗口。在一維情況下,中值濾波器是一個含有奇數個像素的滑動窗口。中值濾波很容易推廣到二維,此時可以利用二維形式的窗口。
對於平面圖像採用的二維中值濾波可以由下式表示:
(式4-3)
式中:A為窗口,{fij}為二維數據序列,即數字圖像各點的灰度值。
對於本系統,由於採集到的是24位真彩色圖像,每個像素點分別有R、G、B三個灰度分量,故要在窗口內分別找到這三個分量的中值,分別用這三個中值去代替窗口中心像素點的R、G、B三個灰度分量的值。

5. MATLAB中怎樣讓一個圖像的邊緣變平滑

平滑就是要模糊。非黑即白的沒法平滑。看樣子你的高斯模糊參數已經固定了,不然沒法找到邊界,對嗎?你可以多寫幾個判斷。這個判斷的本質是增強了對比度。所以造成鋸齒的願意就是你的判據,也就是那個數字240。這個判據是突變的,不可能沒有鋸齒。我建議你修改顏色的密度分布,而不是簡單的在240一刀切。給你舉個例子。演算法可以是rgb的數值先開根號再乘以根號下255。這樣的結果是rgb數值越來越趨近於255,但是黑色部分保持不變。你體會下。具體演算法要看你到底啥需求了

6. 平滑濾波的濾波方法

圖像的雜訊濾波器有很多種,常用的有線性濾波器,非線性濾波器。採用線性濾波如鄰域平滑濾波,對受到雜訊污染而退化的圖像復原,在很多情況下是有效的。但大多數線性濾波器具有低通特性,去除雜訊的同時也使圖像的邊緣變模糊了。而另一種非線性濾波器如中值濾波,在一定程度上可以克服線性濾波器所帶來的圖像模糊問題,在濾除雜訊的同時,較好地保留了圖像的邊緣信息。
鄰域平滑濾波原理
鄰域平均法[2]是一種利用Box模版對圖像進行模版操作(卷積運算)的圖像平滑方法,所謂Box模版是指模版中所有系數都取相同值的模版,常用的3×3和5×5模版如下:
鄰域平均法的數學含義是:
(式4-1)
式中:x,y=0,1,…,N-1;S是以(x,y)為中心的鄰域的集合,M是S內的點數。
鄰域平均法的思想是通過一點和鄰域內像素點求平均來去除突變的像素點,從而濾掉一定雜訊,其優點是演算法簡單,計算速度快,其代價會造成圖像在一定程度上的模糊。

中值濾波原理
中值濾波[2]就是用一個奇數點的移動窗口,將窗口的中心點的值用窗口內的各點中值代替。假設窗口內有五點,其值為80、90、200、110和120,那麼此窗口內各點的中值及為110。
設有一個一維序列f1,f2,…,fn,取窗口長度(點數)為m(m為奇數),對其進行中值濾波,就是從輸入序列中相繼抽出m個數fi-v,…,fi-1,fi,fi+1,…,fi+v(其中fi為窗口中心值,v=(m-1)/2),再將這m個點按其數值大小順序排序,取其序號的中心點的那個數作為濾波輸出。數學公式表示為:
Yi=Med{fi-v,…,fi-1,fi,fi+1,…,fi+v} i∈N v=(m-1)/2 (式4-2)
Yi稱為序列fi-v,…,fi-1,fi,fi+1,…,fi+v的中值
例如,有一序列{0,3,4,0,7},重新排序後為{0,0,3,4,7}則Med{0,0,3,4,7}=3。此列若用平滑濾波,窗口也取5,那麼平滑濾波輸出為(0+3+4+0+7)/5=2.8。
把一個點的特定長度或形狀的鄰域稱作窗口。在一維情況下,中值濾波器是一個含有奇數個像素的滑動窗口。中值濾波很容易推廣到二維,此時可以利用二維形式的窗口。
對於平面圖像採用的二維中值濾波可以由下式表示:
(式4-3)
式中:A為窗口,{fij}為二維數據序列,即數字圖像各點的灰度值。
對於本系統,由於採集到的是24位真彩色圖像,每個像素點分別有R、G、B三個灰度分量,故要在窗口內分別找到這三個分量的中值,分別用這三個中值去代替窗口中心像素點的R、G、B三個灰度分量的值。

7. 拉普拉斯運算元為何能增強圖像的邊緣

1圖像銳化1.1圖像銳化的概念在圖像增強過程中,通常利用各類圖像平滑演算法消除雜訊,圖像的常見雜訊主要有加性雜訊、乘性雜訊和量化雜訊等。一般來說,圖像的能量主要集中在其低頻部分,雜訊所在的頻段主要在高頻段,同時圖像邊緣信息也主要集中在其高頻部分[1]。這將導致原始圖像在平滑處理之後,圖像邊緣和圖像輪廓模糊的情況出現。為了減少這類不利效果的影響,就需要利用圖像銳化技術,使圖像的邊緣變得清晰。圖像銳化處理的目的是為了使圖像的邊緣、輪廓線以及圖像的細節變得清晰,經過平滑的圖像變得模糊的根本原因是因為圖像受到了平均或積分運算,因此可以對其進行逆運算(如微分運算)就可以使圖像變得清晰。從頻率域來考慮,圖像模糊的實質是因為其高頻分量被衰減,因此可以用高通濾波器來使圖像清晰。1.2拉普拉斯運算元拉普拉斯運算元是一種在圖像銳化處理中很重要的演算法。拉普拉斯運算元是與一個邊緣方向無關的邊緣點檢測運算元。它對孤立像素的響應要比對邊緣或線的響應更強烈,因此使用該運算元進行圖像銳化之前需要對圖像作平滑處理[2,3]。拉普拉斯運算元是一種二階微分運算元。一個連續的二元函數f(x,y),其拉普拉斯運算定義為2f=2f x2+2f

8. 兩個圖形相減怎樣更平滑

兩個圖形相減更平滑的方法:
1、用選區工具選取圖像。
2、點擊選擇,修改,平滑,可以讓邊緣平滑。兩個圖形相減不進行羽化處理,換背景後圖像邊緣會很生硬,不能融合到新的背景里,進行平滑處理後效果更好。圖像平滑方法演算法二維自適應維納濾波很不錯。

9. canny演算法的演算法的實現步驟

Canny邊緣檢測演算法可以分為以下5個步驟: 應用高斯濾波來平滑圖像,目的是去除雜訊 找尋圖像的強度梯度(intensity gradients) 應用非最大抑制(non-maximum suppression)技術來消除邊誤檢(本來不是但檢測出來是) 應用雙閾值的方法來決定可能的(潛在的)邊界 利用滯後技術來跟蹤邊界 1. 圖像平滑(去雜訊)
任何邊緣檢測演算法都不可能在未經處理的原始數據上很好地工作,所以第一步是對原始數據與高斯 mask 作卷積,得到的圖像與原始圖像相比有些輕微的模糊(blurred)。這樣,單獨的一個像素雜訊在經過高斯平滑的圖像上變得幾乎沒有影響。以下為一個5X5高斯濾波器(高斯核,標准差delta=1.4),其中A為原始圖像,B為平滑後的圖像。


2. 尋找圖像中的強度梯度
Canny演算法的基本思想是找尋一幅圖相中灰度強度變化最強的位置。所謂變化最強,即指梯度方向。平滑後的圖像中每個像素點的梯度可以由Sobel運算元(一種卷積運算)來獲得(opencv中有封裝好的函數,可以求圖像中每個像素點的n階導數)。首先,利用如下的核來分別求得沿水平(x)和垂直(y)方向的梯度G_X和G_Y。
K_{GX} = [-1 0 1 ; -2 0 2 ; -1 0 1], K_{GY} = {1 2 1 ; 0 0 0 ; -1 -2 -1}
之後便可利用公式來求得每一個像素點的梯度度量值(gradient magnitude,可能翻譯得不準確)。
,有時為了計算簡便,也會使用G_X和G_Y的無窮大范數來代替二范數。把平滑後的圖像中的每一個點用G代替,可以獲得如下圖像。從下圖可以看出,在變化劇烈的地方(邊界處),將獲得較大的梯度度量值G,對應的顏色為白色。然而,這些邊界通常非常粗,難以標定邊界的真正位置。為了做到這一點(參考非極大抑制Non-maximum suppression一節),還必須存儲梯度方向,其公式如下圖所示。也就是說在這一步我們會存數兩塊數據,一是梯度的強度信息,另一個是梯度的方向信息。

3. 非極大抑制Non-maximum suppression
這一步的目的是將模糊(blurred)的邊界變得清晰(sharp)。通俗的講,就是保留了每個像素點上梯度強度的極大值,而刪掉其他的值。對於每個像素點,進行如下操作:
a) 將其梯度方向近似為以下值中的一個(0,45,90,135,180,225,270,315)(即上下左右和45度方向)
b) 比較該像素點,和其梯度方向正負方向的像素點的梯度強度
c) 如果該像素點梯度強度最大則保留,否則抑制(刪除,即置為0)
為了更好的解釋這個概念,看下圖。

圖中的數字代表了像素點的梯度強度,箭頭方向代表了梯度方向。以第二排第三個像素點為例,由於梯度方向向上,則將這一點的強度(7)與其上下兩個像素點的強度(5和4)比較,由於這一點強度最大,則保留。處理後效果如下圖所示。

上圖中,可以想像,邊界處的梯度方向總是指向垂直於邊界的方向,即最後會保留一條邊界處最亮的一條細線。
4.雙閾值(Double Thresholding)
經過非極大抑制後圖像中仍然有很多雜訊點。Canny演算法中應用了一種叫雙閾值的技術。即設定一個閾值上界和閾值下界(opencv中通常由人為指定的),圖像中的像素點如果大於閾值上界則認為必然是邊界(稱為強邊界,strong edge),小於閾值下界則認為必然不是邊界,兩者之間的則認為是候選項(稱為弱邊界,weak edge),需進行進一步處理。經過雙閾值處理的圖像如下圖所示

上圖中右側強邊界用白色表示,弱邊界用灰色表示。
5.利用滯後的邊界跟蹤
這里就不細作解釋了。大體思想是,和強邊界相連的弱邊界認為是邊界,其他的弱邊界則被抑制。
以上內容均翻譯自參考文獻【4】
上一個網路版本:
圖像中的邊緣可能會指向不同的方向,所以 Canny 演算法使用 4 個 掩模(mask) 檢測水平、垂直以及對角線方向的邊緣。原始圖像與每個 mask 所作的卷積都存儲起來。對於每個點我們都標識在這個點上的最大值以及生成的邊緣的方向。這樣我們就從原始圖像生成了圖像中每個點亮度梯度圖以及亮度梯度的方向。以下兩個公式分別求取高斯濾波後圖像的梯度幅值及其方向的表達式。這一步,也叫稱為非極大抑制(Non-maximum suppression)。


3. 在圖像中跟蹤邊緣
較高的亮度梯度比較有可能是邊緣,但是沒有一個確切的值來限定多大的亮度梯度是邊緣多大又不是,所以 Canny 使用了滯後閾值。
滯後閾值(Hysteresis thresholding) 需要兩個閾值,即高閾值與低閾值。假設圖像中的重要邊緣都是連續的曲線,這樣我們就可以跟蹤給定曲線中模糊的部分,並且避免將沒有組成曲線 的雜訊像素當成邊緣。所以我們從一個較大的閾值開始,這將標識出我們比較確信的真實邊緣,使用前面導出的方向信息,我們從這些真正的邊緣開始在圖像中跟蹤 整個的邊緣。在跟蹤的時候,我們使用一個較小的閾值,這樣就可以跟蹤曲線的模糊部分直到我們回到起點。
一旦這個過程完成,我們就得到了一個二值圖像,每點表示是否是一個邊緣點。
一個獲得亞像素精度邊緣的改進實現是在梯度方向檢測二階方向導數的過零點,它在梯度方向的三階方向導數滿足符號條件。
滯後閾值也可以用於亞像素邊緣檢測。

10. 如何進行圖像進行直方圖平滑處理,請描述具體的演算法過程

width=dlg.m_width;
delta=dlg.m_delta;

sqdelta=delta*delta;
for(i=0;i<256;i++)
{
coef=1.0;
for(j=1;j<width;j++)
{
weight=(float)exp(-0.5*j*j*sqdelta);
if((i+j)<256)
{
coef+=weight;
m_Dib.probability[i]+=(prob[i+j]*weight);
}
if((i-j)>=0)
{
coef+=weight;
m_Dib.probability[i]+=(prob[i-j]*weight);
}
}
m_Dib.probability[i]/=coef;
}
sum=0;
for(i=0;i<256;i++)
sum+=m_Dib.probability[i];
for(i=0;i<256;i++)
m_Dib.probability[i]=(float)(m_Dib.probability[i]/sum);

熱點內容
linux監控tomcat 發布:2025-07-23 07:50:40 瀏覽:742
php文件上傳後綴名 發布:2025-07-23 07:44:57 瀏覽:560
市場配置失靈如何彌補 發布:2025-07-23 07:42:54 瀏覽:923
mysql允許內網訪問 發布:2025-07-23 07:42:51 瀏覽:688
電腦腳本信息錯誤 發布:2025-07-23 07:39:58 瀏覽:663
win還是linux 發布:2025-07-23 07:39:58 瀏覽:879
用氣球做解壓玩具小豬 發布:2025-07-23 07:39:10 瀏覽:895
微博自動訪問 發布:2025-07-23 07:32:36 瀏覽:645
電腦上出現腳本怎麼關閉 發布:2025-07-23 07:32:26 瀏覽:451
垃圾桶怎麼配置 發布:2025-07-23 07:31:36 瀏覽:15