matlab傅里叶变换处理图像,MATLAB数字图像处理(1)基本操作和傅里叶变换
數字圖像處理是一門綜合了計算機科學,光學,數學,物理等學科的綜合科學. 隨著計算機科學的發展,數字圖像處理技術取得了長足的進步,顯示出強大的生命力,并取得了巨大的成就. 在各個領域的應用,促進了社會的發展. 其中,在遙感領域,圖像數據的處理是基于數字圖像處理技術的. 遙感圖像數據是地理信息科學的重要數據源,如何從中獲取有用信息是地理信息數據處理的重要內容.
MATLAB是數學領域中使用最廣泛的軟件,它集成了用于圖像處理的功能和功能,并已成為處理數字圖像問題的領導者. 其出色的計算能力和簡單的繪圖功能可以有效地轉換和操作數字圖像. 本文探討了在MATLAB(R2014a)軟件下實現數字圖像處理的簡單內容方法的實現,包括圖像轉換,圖像增強等.
由于時間限制和級別不足,請指出本文中存在的問題.
這里首先介紹基本操作.
1數字圖像處理基礎
1.1 MATLAB圖像處理的基本操作
對于本文中的大多數操作,將執行數字圖像處理領域中最著名的“ lena”圖片. 原始圖片如下(圖1):
圖1
首先,在MATLAB中顯示此圖片:
I=imread('lena.jpg');
imfinfo('lena.jpg')
imshow(I);
其中,imread()可以讀取圖片,imfinfo()可以獲取圖片信息(圖2),并且imshow()可以顯示圖片.
圖2
從圖2可以看出,圖像格式為png,長度和寬度均為512px,顏色類型為純色.
處理后的圖片仍然需要保存:
imwrite(I,'lenaSave.jpg');
1.2圖像數字化
使用imread()讀取圖像后,您可以看到我讀取的圖像保存在512 * 512 * 3矩陣中,即RGB顏色的數字圖像. 為了方便起見,在本文中,作者將lena圖像轉換為灰度圖像,并將其保存為512 * 512 * 1矩陣.
為了完成這一步驟,MATLAB提供了相應的功能:
I1=rgb2gray(I);
imshow(I1);
I1存儲在512 * 512 * 1的矩陣中. 效果如下(圖3):
圖3
1.3直方圖
為了顯示圖像的灰度分布,還需要灰度直方圖. 您可以使用以下代碼:
figure,imhist(I1);
效果如下(圖4):
圖4
1.4添加圖像噪波
為了完成各種圖像處理操作和實驗,還可以在圖像中添加噪點. 使用的函數是無噪的(I,類型),此函數中的類型可以是5種噪聲參數,即: “高斯”(高斯白噪聲),“局部變量”(零均值高斯白與圖像灰度值相關)噪聲),“泊松”(泊松噪聲),“鹽和胡椒”(鹽和胡椒噪聲)和“斑點”(斑點噪聲).
以下是高斯噪聲(圖5)以及鹽和胡椒噪聲(圖6)的代碼和影響:
I2=imnoise(I1,'gaussian');
figure,imshow(I2);
圖5
I3=imnoise(I1,'salt & pepper');
figure,imshow(I3);
圖6
2圖像變換
2.1傅立葉變換
傅里葉變換可以將圖像從空間域轉換到頻域,然后執行相應的處理. MATLAB中具有傅立葉變換的功能.
原始圖片:
圖7
傅立葉變換
F=fft2(I1);
S=abs(F);
figure,imshow(S,[]);
效果:
圖8
它看起來是黑色的,但實際上在整個圖片的左上角可以看到一個白點(也就是說,左上角不見了).
Pan:
Fc=fftshift(F);
figure,imshow(abs(Fc),[]);
效果:
圖9
將頻率移到中間.
頻譜圖:
figure,imshow(uint8(abs(Fc/256)));
效果:
圖10
在此示例中未使用lena圖片的原因是因為傅立葉光譜圖沒有特征.
傅立葉逆變換:
f=real(ifft2(F)/255);
figure,imshow(f);
效果:
圖11
逆變換后,它仍然是原始圖像.
有關具體代碼,請參閱kyh_One.m和kyh_Two1.m的內容.
本文來自電腦雜談,轉載請注明本文網址:
http://www.pc-fly.com/a/shumachanpin/article-290056-1.html
總結
以上是生活随笔為你收集整理的matlab傅里叶变换处理图像,MATLAB数字图像处理(1)基本操作和傅里叶变换的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: [转]大量正版软件下载链接
- 下一篇: 修复Cydia红字 flAbsPath