ホームページ > 記事 > コンピューターのチュートリアル > Matlab を使用して行列の極座標表現を実現する
x=imread('greyleveal.bmp');
###形;###imshow(x);
XX=abs(fftshift(fft2(x)));
###形;###imshow(X);
temp1=min(min(X))
XX=X-temp1;
XX=X./(最大(最大(X))/256);
###形;###imshow(X);
位相を知りたい場合は、上のabsを角度に置き換えてください
------------------------------------------
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);
###形;###imshow(f1);
この画像を出力するだけで十分です。 。 。 。 。 。
fft 変換を実行すると、結果は複素行列になります。
[1 2i 3 4i
5 6i 7 8i]
極座標上の「一点」を表示できます。または、すべての点が極座標上に同時に表示されます (これでは点が混乱するだけで、誰が誰であるかわかりません)。これはまったく意味がないと思います。
複素行列は実際には 2 つの情報のみを提供します。1 つは振幅、もう 1 つは位相です。私が与えたプログラムはすでに振幅を表示できます。通常はこのレベルで十分です。位相を表示したい場合は、abs の名前を angle に変更します。
matlab で立体的な長方形を描きたい X 座標 2 2 Y 座標 2 2 Z 座標
1. 2次元曲線を描くための最も基本的な関数plot
2. 二重縦座標関数plotyy
3.
関数の呼び出し形式は次のとおりです:
axis([xmin xmax ymin ymax zmin zmax])
軸関数は機能が豊富で、一般的に使用される用途は次のとおりです。
軸が等しい 縦軸と横軸は同じ長さのスケールを使用します
axis square は正方形の座標系を生成します (デフォルトは長方形です)
axis auto デフォルト設定を使用
axis off 座標軸をキャンセルします
表示上の座標軸
グリッド オン/オフ コマンドは、グリッド線を描画するかどうかを制御します。パラメータを指定しないグリッド コマンドは、2 つの状態を切り替えます。
box on/off コマンドは境界線を追加するかどうかを制御します。パラメータを指定しない box コマンドは 2 つの状態を切り替えます。
4. グラフィックスウィンドウの分割
サブプロット関数の呼び出し形式は次のとおりです:
サブプロット(m,n,p)
5. 2次元グラフィックスを描画するためのその他の機能
1. 他の形式の線形直交座標図
線形直交座標系では、他の形式のグラフィックスとして、棒グラフ、ラダー グラフ、棒グラフ、塗りつぶしグラフなどが含まれます。使用される関数は次のとおりです。
バー(x,y,オプション)
階段(x,y,オプション)
ステム(x,y,オプション)
fill(x1,y1,オプション 1,x2,y2,オプション 2,…)
6.極座標チャート
polar 関数は極座標を描画するために使用され、その呼び出し形式は次のとおりです:
極(θ,ρ,オプション)
Theta は極座標での極角、rho は極座標でのベクトル直径で、オプションの内容はプロット関数と同様です。
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,options)
9. 3次元曲線を描くための最も基本的な機能
plot3 関数は、plot 関数とよく似ており、その呼び出し形式は次のとおりです:
plot3(x1,y1,z1, オプション 1,x2,y2,z2, オプション 2,…,xn,yn,zn, オプション n)
10. 3次元表面
1. 平面グリッド座標行列の生成
(1) 行列演算を使用して生成されます。
x=a:dx:b; y=(c:dy:d)';
XX=ones(サイズ(y))*x;
Y=y*ones(サイズ(x));
(2) Meshgrid関数を使用して生成します。
x=a:dx:b; y=c:dy:d;
[X,Y]=メッシュグリッド(x,y);
10. 3次元面を描画する関数
surf 関数と Mesh 関数の呼び出し形式は次のとおりです。
メッシュ(x,y,z,c)
サーフ(x,y,z,c)
標準三次元曲面
Sphere 関数の呼び出し形式は次のとおりです:
[x,y,z]=球(n)
シリンダー関数の呼び出し形式は次のとおりです:
[x,y,z]=球(R,n)
MATLAB には、マルチモーダル関数と呼ばれる Peaks 関数もあり、3 次元表面のデモンストレーションによく使用されます。
11.その他の3次元グラフィックス
棒グラフ、円グラフ、塗りつぶしグラフなどの特殊なグラフィックも 3 次元形式で表示できます。使用される関数はそれぞれ bar3、pie3、fill3 です。さらに、3 次元表面の等高線図もあります。等高線図は 2 次元形式と 3 次元形式に分けられ、それぞれ関数 contour と contour3 を使用して描画されます。
MATLAB を使用してランダムな 3 次元座標を生成する方法
有料コンテンツは期間限定で無料で閲覧できます
###答え###こんにちは。関連情報についてお問い合わせ中です。すぐにご返信させていただきます。
こんにちは、ご回答をお手伝いできることを光栄に思います - 1. まず matla ソフトウェアを開き、XYZ および属性データを含む 3 次元ダイアグラムのデータを準備します。 2. データ分布に従って各ポイント間の間隔を決定し、griddata コマンドを使用して属性データを補間します (これは単なる例であり、デフォルトの補間方法を使用します)。 3. 次に、plot3 コマンドを使用してみると、グラフが列単位で複数の線を描画していることがわかります。もちろん、これが目的のグラフィックでない場合は、次に使用できる他のコマンドがあります。 4. 最初に contour3 コマンドを試してください。これは contour コマンドと同じですが、生成される等高線は 3 次元分布になります。 5. 以下では、surf および Surfc コマンドについて説明します。デフォルトのコマンドは次のとおりです:surf(xx,yy,zz),figure,surfc(xx,yy,zz)。 6. もちろん、画像を少し加工することもできます。例としてサーフィンによって生成された画像を見てみましょう。マップ名と xyz 座標属性を追加できます: title ('深度マップ'); xlabel ('経度'); ylabel ('緯度'); zlabel ('深さ')。 7. 画像内の線を削除します:surf(xx,yy,zz,'linestyle','none') 次のコマンドを使用して、カラー バーの数を決定することもできます。ここで次のリンクを参照してください。プロパティは基本的に同じです。 8. 座標軸を削除すると、最終的に次の図が得られますが、もちろん回転コマンドを使用して適切な角度に調整して表示することもできます。 [回答がお役に立てば幸いです、親愛なる]
以上がMatlab を使用して行列の極座標表現を実現するの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。