利用投影算法来计算系统矩阵左乘和右乘

采用distance driven投影模型
mode 1: 左乘得图像向量

% 参数设置
para.ht_orig = 0; %切片初始高度,即第一(下层)切片与探测器的间距,单位是切片个数。
para.pv_ind = 14; %投影角序号,如1、3、14等。
para.nvx = 1080; %x轴方向体素个数1080
para.nvy = 2304; %y轴方向体素个数2304
para.nvz = 1;  %z轴方向体素个数
% mode = 1; % 右乘
% img_mat = ones(para.nvx*para.nvy*para.nvz,1);
mode = 2; % 左乘
img_mat = ones(1,2580480);
[sps_sys_mat,myproj_vectori] = voxel_based_ddp2_fun2(img_mat,para,mode);

利用系统矩阵进行验证

>> vector2 = ones(1,2580480);
>> rslt2 = vector2*sps_sys_mat;
>> isequal(rslt2,myproj_vectori)
ans =

     1

说明正确!

mode2: 右乘得投影向量

>> vector1 = ones(2488320,1);
>> rslt1 = sps_sys_mat*vector1;
>> isequal(rslt1,myproj_vectori)

ans =

     0

结果不一致,但差异非常小。
这里写图片描述
这里写图片描述

>> sub=abs(rslt1-myproj_vectori);
>> max(sub)
ans =
   7.1054e-15
>> min(sub)
ans =
     0

这种差异,我实在不知道是怎么造成的。

猜你喜欢

转载自blog.csdn.net/lyc_daniel/article/details/53780265