⚠️ Alpha内测版本警告:此为早期内部构建版本,尚不完整且可能存在错误,欢迎大家提Issue反馈问题或建议。
Skip to content

4.4 Metrics: PSNR & SSIM

PSNR and SSIM are common baselines for measuring similarity between a reconstruction and a reference.


python
import numpy as np
from skimage.data import shepp_logan_phantom
from skimage.transform import radon, iradon
from skimage.metrics import peak_signal_noise_ratio, structural_similarity

img = shepp_logan_phantom()
angles = np.linspace(0., 180., max(img.shape), endpoint=False)
sino = radon(img, theta=angles, circle=True)
recon = iradon(sino, theta=angles, filter_name="ramp", circle=True)

psnr = peak_signal_noise_ratio(img, recon, data_range=img.max() - img.min())
ssim = structural_similarity(img, recon, data_range=img.max() - img.min())

print("PSNR:", psnr)
print("SSIM:", ssim)

⚠️ Don’t optimize metrics blindly

In medical imaging, better PSNR/SSIM does not always mean better clinical utility. Combine metrics with visual checks and downstream task performance where possible.

Released under the MIT License.