x=imread('greyleveal.bmp');
figure;
imshow(x);
X=abs(fftshift(fft2(x)));
figure;
imshow(X);
temp1=min(min(X))
X=X-temp1;
X=X./(max(max(X))/256);
figure;
imshow(X);
如果想知道相位,就把上面的abs換成angle
---------------------------
#I=imread('11.jpg');
O=rgb2gray(I);
f1=abs(fftshift(fft2(O)));
temp1=min(min(f1));
f1=f1-temp1;
f1=f1./(max(max(f1))/256);
figure;
imshow(f1);
輸出這個圖像已經夠了。 。 。 。 。 。
作了fft變換,得出的是複矩陣。
[1 2i 3 4i
5 6i 7 8i]
可以把"單獨一個點"顯示在極座標上。或同時所有點顯示在一個極座標上(那樣只能是混亂的點,誰是誰你根本不知道)。我覺得這樣一點意義都沒有。
複矩陣其實只提供了兩個資訊:一是幅直,二是相位。我給的程式已經可以顯示幅值了。一般做到這個程度就夠了。如果你要顯示相位,就把abs改稱為angle。
1.繪製二維曲線的最基本函數plot
2.雙縱座標函數plotyy
##3.
座標控制
函數的呼叫格式為:
axis([xmin xmax ymin ymax zmin zmax])
axis函數功能豐富,常用的用法還有:
axis equal 縱、橫座標軸採用等長刻度
axis square 產生正方形座標系(缺省為矩形)
axis auto 使用預設設定
axis off 取消座標軸
axis on 顯示座標軸
grid on/off指令控制是畫還是不畫網格線,不帶參數的grid指令在兩種狀態之間進行切換。
box on/off指令控制是加或不加邊框線,不帶參數的box指令在兩種狀態之間進行切換。
4.圖形視窗的分割
subplot函數的呼叫格式為:
subplot(m,n,p)
5.繪製二維圖形的其他函數
1. 其他形式的線性直角座標圖
在線性直角座標系中,其他形式的圖形有長條圖、階梯圖、桿圖和填充圖等,所採用的函數分別是:
bar(x,y,選項)
stairs(x,y,選項)
stem(x,y,選項)
fill(x1,y1,選項1,x2,y2,選項2,…)
6.極座標圖
polar函數用來繪製極座標圖,其呼叫格式為:
polar(theta,rho,選項)
其中theta為極座標極角,rho為極座標矢徑,選項的內容與plot函數相似。
7.對數座標圖形
MATLAB提供了繪製對數和半對數座標曲線的函數,呼叫格式為:
semilogx(x1,y1,選項1,x2,y2,選項2,…)
semilogy(x1,y1,選項1,x2,y2,選項2,…)
loglog(x1,y1,選項1,x2,y2,選項2,…)
8.對函數自適應取樣的繪圖函數
fplot函數的呼叫格式為:
fplot(fname,lims,tol,選項)
9.繪製三維曲線的最基本函數
plot3函數與plot函數用法十分相似,其呼叫格式為:
plot3(x1,y1,z1,選項1,x2,y2,z2,選項2,…,xn,yn,zn,選項n)
10.三維曲面
1.平面網格座標矩陣的生成
(1)利用矩陣運算產生。
x=a:dx:b; y=(c:dy:d)';
X=ones(size(y))*x;
Y=y*ones(size(x));
(2)利用meshgrid函數產生。
x=a:dx:b; y=c:dy:d;
#[X,Y]=meshgrid(x,y);
10.繪製三維曲面的函數
surf函數和mesh函數的呼叫格式為:
mesh(x,y,z,c)
surf(x,y,z,c)
標準三維曲面
sphere函數的呼叫格式為:
[x,y,z]=sphere(n)
cylinder函數的呼叫格式為:
[x,y,z]=sphere(R,n)
MATLAB還有一個peaks 函數,稱為多峰函數,常用於三維曲面的示範。
11.其他三維圖形
長條圖、圓餅圖和填滿圖等特殊圖形,它們也可以以三維形式出現,使用的函數分別是bar3、pie3和fill3。此外,還有立體曲面的等高線圖。等高線圖分二維和三維兩種形式,分別使用函數contour和contour3繪製。
付費內容限時免費查看
回答
您好,我正在查詢相關的信息,馬上回覆您!
您好,很榮幸幫您解答--1、先開啟matla軟體,準備好要做三維圖的數據,有XYZ和屬性數據。 2.根據資料分佈確定各點之間的間隔,並使用griddata指令將屬性資料也進行插值,這裡僅作為例子,我們使用預設的插值方法。 3.然後可以嘗試使用plot3指令,可以看到圖形以列為單位繪製出了多條線。當然,如果這不是想要的圖形,接下來可以使用其他指令。 4.先試試contour3指令,這與contour指令相同,不過產生的等值線是三維分佈。 5.下面說明surf和surfc指令,預設的指令如下:surf(xx,yy,zz),figure,surfc(xx,yy,zz)。 6.當然,我們也可以對影像稍加處理。我們以surf產生的圖像為例。可以在裡面加入圖名,xyz座標屬性:title('水深圖');xlabel('經度');ylabel('緯度');zlabel('深度')。 7.去掉影像中的線:surf(xx,yy,zz,'linestyle','none'),同樣也可以使用下列指令確定其色條的多寡。這裡可以參考如下鏈接,其屬性基本上是相通的。 8.去掉座標軸之後,可以最終得到如下圖形,當然也可以使用旋轉指令調整到適當的角度來展示。 【希望回答對您有幫助,親愛的】
以上是用Matlab實現矩陣的極座標表示的詳細內容。更多資訊請關注PHP中文網其他相關文章!