1樓:木生子識時務
這個命令就是從矩陣i中取出一個n階行列式,就是到i的第1行到第n行加上第1行到第n列的資料。
下面是一個例子:
a = rand(4,5)%產生隨機陣列,每次執行結果不一定相同
i = 4;
b = a(1:i,1:i)
結果為:
a =0.6557 0.6787 0.6555 0.2769 0.6948
0.0357 0.7577 0.1712 0.0462 0.3171
0.8491 0.7431 0.7060 0.0971 0.9502
0.9340 0.3922 0.0318 0.8235 0.0344
b =0.6557 0.6787 0.6555 0.2769
0.0357 0.7577 0.1712 0.0462
0.8491 0.7431 0.7060 0.0971
0.9340 0.3922 0.0318 0.8235
matlab數字影象處理,要求詳細解釋**,每個函式都要解釋.這個是對影象求幅值譜和相位譜,並對其進行重構.
2樓:匿名使用者
>> i=imread('辣椒bmp.bmp'); % 從當前目錄讀取影象
>> figure(1) % 建立一個檢視,取名1
>> imshow(real(i)); % 將影象i只取實部(如果是虛數的話),並顯示在檢視1中
>> i=i(:,:,3); % 取影象i的藍色分量,1為紅色,2為綠色,3為藍色。
??? index exceeds matrix dimensions.
>> ffti=fft2(i); % 獲取2維離散傅立葉變化後的影象,儲存到ffti
>> sffti=fftshift(ffti); % 將傅立葉變化的中心移到影象中心,儲存到sffti
>> rrfdp1=real(sffti); % 取實部
>> iifdp1=imag(sffti); % 取虛部
>> a=sqrt( rrfdp1.^2+iifdp1.^2); % 取模,即實部於虛部的平方和再開方
>> a=(a-min(min(a)))/(max(max(a))-min(min(a)))*225; % 灰度拉昇,將變換後的影象拉昇到0~255區間
>> figure(2) % 建立一個檢視,取名2
>> imshow(real(a)); % 將影象a只取實部(如果是虛數的話),並顯示在檢視2中
>> b=angle(ffti); % 取虛數ffti的弧度
>> figure(3) % 建立一個檢視,取名3
>> imshow(real(b)); % 將影象b只取實部(如果是虛數的話),並顯示在檢視3中
>> theta=30; % 角度常量
>> rr1=a*cos(theta); % rr1 = a*cos(30),注意,這裡可能有錯誤,30度角沒有轉到弧度,本意可能是cos(theta/180*pi);
>> ii1=a*sin(theta); % ii1 = a*sin(30),注意,這裡可能有錯誤,30度角沒有轉到弧度,本意可能是sin(theta/180*pi);
>> ffti1=rr1+i.*ii1; % 得到的實部rr1和虛部ii1組合成虛數ffti1
>> c=ifft2(ffti1)*255; % 2維傅立葉反變化後*255儲存到c
>> figure(4) % 建立一個檢視,取名4
>> imshow(real(c)); % 將影象c只取實部(如果是虛數的話),並顯示在檢視4中
>> mm=150; % 常量
>> rr2=mm*cos(angle(ffti)); % 常量*cos(虛數ffti的弧度)
>> ii2=mm*sin(angle(ffti)); % 常量*sin(虛數ffti的弧度)
>> ffti2=rr2+i.*ii2; % 得到新的虛數ffti2
>> d=ifft2(ffti2); % 2維傅立葉反變化
>> figure(5) % 建立一個檢視,取名5
>> imshow(real(d)); % 將影象d只取實部(如果是虛數的話),並顯示在檢視5中
3樓:嵇爾容
image=imread('原影象');
subplot(2,2,1)
imshow(image);
title('原圖');
spectrum=fft2(image);
subplot(2,2,2)
imshow(spectrum);
title('fft 變換結果');
subplot(2,2,3)
spectrum=fftshift(spectrum);
imshow(spectrum);
title('零點平移');
subplot(2,2,4)
imshow(log(abs(spectrum)),);
title('係數分佈圖');
%低通濾波
figure; %建立一張空白圖紙
subplot(2,2,1)
imshow(log(abs(spectrum)),);
title('係數分佈圖');
filter=zeros(180,240); %濾波陣列賦初值,全零;自己根據影象的解析度來確定,如180*240
r=50; %濾波視窗半徑,從中心到半徑視窗內濾波陣列賦值1for i=(180/2-r+1):(180/2+r);
for j=(240/2-r+1):(240/2+r);
filter(i,j)=1;
end;
end;
subplot(2,2,2)
imshow(filter,);
title('濾波視窗');
spectrumn=filter.*spectrum; %頻譜與濾波模板卷積
subplot(2,2,3)
imshow(log(abs(spectrumn)),);
title('濾波後頻譜');
spectrumn=ifftshift(spectrumn);
i2=ifft2(spectrumn);
subplot(2,2,4)
imshow(abs(i2),);
title('反變換影象');
這是我們以前做實驗時用的程式,用的傅立葉變換,你稍微改動下應該就行了~
4樓:
影象的時域分佈具有隨機性,而頻域分佈具有集中性,傅立葉變換後,影象的主要能量集中在直流和低頻部分。大概就是這麼個理。
5樓:冬屁
每個函式都要講清楚?
只有10分?
遙感數字影象處理問題,謝謝,遙感數字影象處理的文章
此影象濾波,平滑處理。光滑的一般使用的模板,因為模板本身的大小,所以處理的邊緣小於。通常被忽略的邊緣線柱。如3 3模板,5 5加兩行新增一行。請注意,新增行和列時,沒有同時增加,訂單總額,因此成為6 5 5加一排,加1變為6 6,就是這樣,我希望你能有所幫助。遙感數字影象處理的文章 遙感影象的統計引...
數字影象處理與機器視覺什麼關係,數字影象處理和影象處理分析與機器視覺哪本書好
將數字影象處理學好再來學機器視覺會感到很簡單。可以理解為數字影象處理是機器視覺的基礎課程之一。數字影象處理和影象處理分析與機器視覺哪本書好 從字面意思來看 數字影象處理,側重於計算機視覺 機器視覺演算法的開發影象處理分析側重於視覺軟體的學習 機器視覺主講機器視覺構成,含硬體 軟體現場使用 推薦清華大...
數字影象處理對於灰度影象得區域掩膜的程式怎麼寫
1 首先你要知道你要掩蓋的區域位置。掩膜就是一張二值影象,用這張二值影象與你要處理的影象相乘,掩膜中為1的部分是你要看見的,為0的部分是你想遮擋住的。2 知道要掩蓋區域的位置後,建立一個與待處理影象相同的矩陣,0和1的設定參照上一條。3 掩膜與待處理影象相乘。4 後續處理,如 傅立葉反變換 數字影象...