You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

关于单投影向量逆Radon变换中iradon结果除以2的疑问

单投影向量逆Radon变换中iradon结果是否需要除以2?

在对单投影向量执行逆Radon变换时,Matlab官方示例中对结果做了除以2的操作,但我对此存在疑问,具体情况如下:

官方示例说明

官方文档中的“检查单角度反投影”示例步骤如下:

  1. 创建测试图像:
P = phantom(128);
  1. 执行Radon变换并提取45度角的投影向量:
R = radon(P,0:179);
r45 = R(:,46);
  1. 由于iradon不支持直接传入标量角度(标量会被视为角度增量),官方通过传入两份相同的投影向量和角度,再将结果除以2来实现单角度逆变换:
I = iradon([r45 r45], [45 45])/2; % 疑问点:此处为何要除以2?
imshow(I, [])
title('Backprojection from 45 degrees')

我的实验验证

查看iradon.m源码后发现,函数内部存在归一化处理,结果应与输入的角度数量无关。为验证这一点,我进行了以下实验:

P = phantom(128);
R = radon(P,0:179);

I1 = iradon([R(:,46) R(:,46)],[45 45]);
I2 = iradon([R(:,46) R(:,46) R(:,46)],[45 45 45]);
D1 = max(I1, [], 'all')-max(I2, [], 'all');

I3 = iradon([R(:,46) R(:,46)],[45 45])/2;
I4 = iradon([R(:,46) R(:,46) R(:,46)],[45 45 45])/3;
D2 = max(I3, [], 'all')-max(I4, [], 'all');

实验结果显示:

  • D1=0,说明I1与I2完全相同,证明iradon的输出结果确实和输入的角度数量无关;
  • D2=0.804,说明对结果除以角度数量后,不同次数的输入得到的结果并不一致。

按照这个实验结果,如果官方示例的写法正确,D2应该为0,但实际并非如此。因此我认为单角度逆Radon变换应直接写成I1 = iradon([R(:,46) R(:,46)],[45 45]);,而非官方示例中的除以2的写法。请问我的理解是否有误?

内容的提问来源于stack exchange,提问作者En Lu

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.29 05:40:08