2

誰かがこの問題に遭遇したかどうか疑問に思っていました。

元の画像に似た matlab から画像を再構築できますが、実際の値は常に異なります。

たとえば、元の画像の行列の値は 0 から 1 の範囲ですが、再構築された画像の範囲はたとえば -0.2 から 0.4 です。

再構成された画像は元の画像と似ていますが、画像内のデータの縮尺が異なるだけです。

これは私が意味するサンプルコードです。

p=phantom(64);
theta=0:1:179;
r=radon(p,theta);
ir=iradon(r,theta);

figure
subplot(1,2,1);imagesc(p)
subplot(1,2,2);imagesc(ir)
4

1 に答える 1

0

これらの結果は、私が見つけたものとはまったく異なります。

>> min(min(ir))

-0.0583

>> max(max(ir))

0.9658

逆ラドン変換は、元の画像の再構成を近似することしかできないことに注意してください。わずか 180 回の視聴で、多少の違いはあるはずです。

ピクセルを新しい座標系に投影し、再ビン化する必要があるため、ラドン変換は本質的に一部の情報を失わせます (投影時と逆投影時の両方)。これにより、再構成された画像がわずかに劣化します。ラドン変換は、フーリエ変換と同じように可逆ではありません。

より良い結果を得るには、より大きな画像サイズとより広い視野角を使用してみてください。

p=phantom(256);
theta=0:0.01:179;

また、Shepp-Logan などの別のフィルター (FBP の F) を使用してみてください。これにより、高周波数が減少し、オーバーシュートが減少します。

ir=iradon(r,theta,'linear','Shepp-Logan');
于 2015-06-08T23:57:31.627 に答える