圖像處理復習整理(1.數字空間域加強)


只有期末考試那一段時間,才敢說自己真正的學了這門課

圖像增強(圖像增強是指按特定的需要突出一幅圖像中的某些信息,同時削弱或去除某些不需要的信息的處理方法。其主要目的是使處理后的圖像對某種特定的應用來說比原始圖像更適用。處理的結果使圖像更適合於人的視覺特性。由於缺少客觀質量測量標准,所以圖像增強並不存在通用理論。)

空間域:

灰度變化方法:

線性灰度變換

非線性灰度變化經典的方式有:
對數變換:

 

冪律變換:

 

 

 冪律變換matlab代碼:

clear all 
x=double(imread('3.png'));
figure, imshow(x/255);
H=x/255;
% y=log(1+x)*255;
n=1/2;
c=1;
y=255*c*H.^n;
figure, imshow(y/255);
分段線性變換:

最簡單的分段線性變換之一是對比度拉伸變換(constrast stretching), 用於擴展灰度級范圍。

剛開始看博客居然沒看懂,最后發現原來就是設置最小灰度值,最大灰度值,把圖片之中小於最小灰度值的像素點都設為最小灰度值,大於最大灰度值的像素點都設置為最大灰度值。這樣剛開始覺得無聊,但是壓縮了圖像的灰度區間。雖然覺得沒啥用,但是提出來了就提出來了

這是matlab官方的參考代碼:

I = imread('pout.tif');
J = imadjust(I,[0.3;0.7],[])
imshow(I), figure, imshow(J)

直方圖均衡化

全局方式

matlab有imhist看一個圖像的灰度直方圖分布,但是自己實現的話就是:不過說實話,確實丑

I=double(rgb2gray(imread('1.png')));
M=reshape(I,1,size(I,1)*size(I,2));
hist(M,256)

如果直方圖灰度值低的集中,表明曝光不充分,灰度值在高位集中表明曝光過分,最好的就是使得圖片的灰度值能夠在成均勻分布。

 

圖片是離散的像素點,所以說r是從0-255的灰度值,pr(r)就是像素點在圖片中出現的頻數/圖片像素點數目。

所以說圖像的均質化的數學形式是:

x=double(rgb2gray(imread('1.png')));
[M,N]=size(x);
figure,imshow(x/255,[])
for i=1:256
    h(i)=sum(sum(x==i-1));
end
y=x;
s=sum(h);
for i=1:256
    I=find(x==i-1);
    y(I)=255*sum(h(1:i))/s;
end
figure,imshow(y/255,[])
局部直方圖均值化:

自適應直方圖均衡化方法(AHE):

直方圖均衡化是整體的均衡化,但是這樣在很大程度上是忽略了必要的細節的,這個就設置了閾值,從而對圖像細節進行保留

matlab官方參考代碼:

% Demo
I = imread('tire.tif');
J = histeq(I);
A = adapthisteq(I,‘clipLimit’,0.02,'Distribution','rayleigh'); 
figure, imshow(I); figure, imshow(J);
figure, imshow(A); 

卷積方式:

 作為沒有學信號處理的孩紙,理解卷積可以參考贊最多的那個,知乎

一維卷積,例題是以化簡的方式寫的,所以剛開始看看不懂意義,是正常的,但是,一定要在之后對其進行理解。

卷積要定義是0邊界、反射邊界還是循環邊界

0邊界會生成Toeplitz矩陣,張這樣:

循環邊界會生成這樣的矩陣:

又因為循環邊界矩陣能進行奇異值(SVD)分解,能夠減小計算度,所以說,很多時候會選擇使用循環邊界,隨着計算機的性能的提高,以后一般都會選擇更加好的邊界,而計算度的權重會相應地減小。

二維卷積,看公式太過於麻煩,所以說我直接上圖,簡單明了。就是一個一個套,最終套出濾波處理后的圖像。


                 

0邊界會有block Toeplitz Toeplitz block 矩陣

周期邊界會生成block Circulant Circulant block 矩陣

有了濾波,接下來就是對圖像的處理了:

對圖像進行光滑處理的算子:

點操作,鄰域操作

點操作,即只考慮那個像素點的信息,通過現有的像素點的灰度值,再使用函數得出轉換后的該像素點所有的灰度值。(灰度變換應該算是)

鄰域操作,由於圖像由於是表示的是一個事務的征途,所以像素點灰度值存在連貫性,所以可以通過某一像素點的領域像素點的灰度值,得出該點應有的灰度值(卷積濾波)

空間濾波器:由一個領域及其對該領域包圍的圖像像素執行的預定操作組成。我們稱其為濾波器(filter)、 掩模(mask)、核(kernel)、模板(template)或窗口(window)。

平滑算子用於模糊處理和降低噪聲,去掉圖像之中的細節,使得圖像之中的細節能夠連接在一起。領域算子進行統計的時候也一樣會把本身給算進去

鄰域平均算子:

用周邊的灰度值代替該點的灰度值

統計排序算子:

基於領域中像素灰度值的排序,由排序結果決定代替中心像素的值

對圖像進行銳化的算子

銳化是使圖像的邊緣得到加強的處理,使圖像能夠更好地被人眼識別

 Taylor公式:

在離散的圖像之中x-x0就是表示的是步長:

當n=1時,直接可以使用,前向差分公式或后向差分公式。

當n=2時,x=x0+1,x=x0-1得出兩點中心差分公式。

由於圖像是二維的,我們假設x方向,y方向都是相互獨立的,於是在這個點fxy=fyx與積分順序無關。所以該點的像素的梯度大小,等於fxy的模。而模的近似大小為:

直接差分算子:

 

Roberts算子:

交叉算子能用的原因,是因為我們假設x,y是線性不相關的,所以旋轉x,y坐標系,得到的兩個方向的梯度任然是互不線性相關的。

 

Prewitt算子:

 

Sobel算子:

當n=3時,x=x0+1,x=x0-1得出二階兩點中心差分公式。

拉普拉斯算子

反銳化掩模:

找出圖像的高通像素點,然后在原圖像的基礎之上,加上高通圖像信號,從而對圖像進行銳化處理


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM