このページの内容は最新ではありません。最新版の英語を参照するには、ここをクリックします。
fan2para
ファンビーム投影をパラレルビームに変換
説明
は、データ変換の特性を制御する名前と値の引数を使用します。P
= fan2para(F
,D
,Name,Value
)
[
は、パラレルビーム センサーの位置を P
,paraSensorPos
,paraRotAngles
] = fan2para(___)paraSensorPos
で、回転角を paraRotAngles
で返します。
例
ファン ビーム データからパラレル ビーム データを復元
合成パラレル ビーム データを作成します。
ph = phantom(128);
パラレル ビーム変換を計算して表示します。
theta = 0:179; [Psynthetic,xp] = radon(ph,theta); imshow(Psynthetic,[],... 'XData',theta,'YData',xp,'InitialMagnification','fit') axis normal title('Synthetic Parallel-Beam Data') xlabel('\theta (degrees)') ylabel('x''') colormap(gca,hot), colorbar
パラレル ビーム データをファン ビーム データに変換します。
Fsynthetic = para2fan(Psynthetic,100,'FanSensorSpacing',1);
元のパラレルビーム データを復元します。
[Precovered,Ploc,Pangles] = fan2para(Fsynthetic,100,... 'FanSensorSpacing',1,... 'ParallelSensorSpacing',1); figure imshow(Precovered,[],... 'XData',Pangles,'YData',Ploc,'InitialMagnification','fit') axis normal title('Recovered Parallel-Beam Data') xlabel('Rotation Angles (degrees)') ylabel('Parallel Sensor Locations (pixels)') colormap(gca,hot), colorbar
入力引数
F
— ファンビーム投影データ
数値行列
ファンビーム投影データ。数値行列として指定します。F
の各列には、ある回転角でのファンビーム データが格納されます。列数はファンビーム回転角の数を示し、行数はファンビーム センサーの数を示します。
データ型: double
| single
D
— ファン ビーム頂点から回転中心までの距離
正の数値
ファン ビーム頂点から回転中心までの距離 (ピクセル単位)。正の数値として指定します。fan2para
は、回転の中心が投影の中心点であると仮定し、ceil(size(F,1)/2)
として定義します。図は、あるファンビーム投影のファンビーム頂点に関する D
を示しています。
データ型: double
| single
名前と値の引数
オプションの引数のペアを Name1=Value1,...,NameN=ValueN
として指定します。ここで、Name
は引数名で、Value
は対応する値です。名前と値の引数は他の引数の後に指定しなければなりませんが、ペアの順序は重要ではありません。
例: P = fan2para(F,D,FanRotationIncrement=5)
は 5 度のファン回転角増分を指定します。
R2021a より前では、コンマを使用して名前と値をそれぞれ区切り、Name
を引用符で囲みます。
例: P = fan2para(F,D,"FanRotationIncrement",5)
は 5 度のファン回転角増分を指定します。
FanCoverage
— ファンビームの回転範囲
"cycle"
(既定値) | "minimal"
ファンビームの回転範囲。"cycle"
または "minimal"
として指定します。
"cycle"
— 全範囲 [0, 360) 度にわたり回転します。"minimal"
— オブジェクトを表すために必要な最小範囲を回転します。
FanRotationIncrement
— ファンビーム回転角の増分
1
(既定値) | 正のスカラー
ファンビーム回転角の増分 (度単位)。正のスカラーとして指定します。
データ型: double
FanSensorGeometry
— ファンビーム センサーの配置
"arc"
(既定値) | "line"
ファンビーム センサーの配置。"arc"
または "line"
として指定します。
値 | 意味 | 図 |
---|---|---|
| センサーは、円弧状に等角度で配置されます。弧の中心はファンビーム頂点です。
|
|
| センサーは、x' 軸に平行なラインに沿って等間隔に配置されます。最も近いセンサーは回転中心から距離
|
|
FanSensorSpacing
— ファンビーム センサーの間隔
1
(既定値) | 正のスカラー
ファンビーム センサーの間隔。正のスカラーとして指定します。
FanSensorGeometry
が"arc"
の場合、FanSensorSpacing
は角度の間隔を度単位で定義します。FanSensorGeometry
が"line"
の場合、FanSensorSpacing
はファンビーム間の線形距離をピクセル単位で定義します。線形間隔は、x' 軸上で測定されます。
データ型: double
Interpolation
— 内挿タイプ
"Linear"
(既定値) | "nearest"
| "spline"
| "pchip"
パラレルビーム データとファンビーム データの間で使用される内挿のタイプ。次のいずれかの値として指定します。
"nearest"
- 最近傍点
"linear"
— 線形 (既定の設定)
"spline"
— 区分的 3 次スプライン
"pchip"
— 区分的 3 次エルミート (PCHIP)
ParallelCoverage
— パラレルビームの回転範囲
"halfcycle"
(既定値) | "cycle"
パラレルビームの回転範囲。"halfcycle"
または "cycle"
として指定します。
"cycle"
— パラレル データの範囲は全範囲 [0, 360) 度です。"halfcycle"
— パラレル データの範囲は [0, 180) 度です。
ParallelRotationIncrement
— パラレルビーム回転角の増分
正のスカラー
パラレルビーム回転角の増分 (度単位)。180/
k が整数になる正のスカラー k として指定します。ParallelRotationIncrement
を指定しない場合、既定値は FanRotationIncrement
に等しくなります。
データ型: double
ParallelSensorSpacing
— パラレルビーム センサーの間隔
正のスカラー
パラレルビーム センサーの間隔 (ピクセル単位)。正のスカラーとして指定します。パラレルビーム センサーの位置の範囲は、ファン角度の範囲 fanAngles から [
に従って計算されます。D
*sin(min(fanAngles)) D*sin(max(fanAngles))]
ParallelSensorSpacing
を指定しない場合、間隔は等間隔であると見なされ、ファン角度によって暗黙的に決まる最小間隔に設定され、ファン角度によって暗黙的に決まる範囲でサンプリングされます。
データ型: double
出力引数
P
— パラレル ビーム投影データ
数値行列
パラレルビーム投影データ。数値行列として返されます。P
の各列には、ある回転角でのパラレルビーム データが格納されます。列数はパラレルビーム回転角の合計数を示し、paraRotAngles
の長さに等しくなります。行数はパラレルビーム センサーの合計数を示し、paraSensorPos
の長さに等しくなります。
データ型: double
paraSensorPos
— パラレルビーム センサーの位置
数値列ベクトル
パラレルビーム センサーの位置。数値列ベクトルとして返されます。
データ型: double
paraRotAngles
— パラレルビーム回転角
数値行ベクトル
パラレルビーム回転角。数値行ベクトルとして返されます。
データ型: double
バージョン履歴
R2006a より前に導入
MATLAB コマンド
次の MATLAB コマンドに対応するリンクがクリックされました。
コマンドを MATLAB コマンド ウィンドウに入力して実行してください。Web ブラウザーは MATLAB コマンドをサポートしていません。
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)