1.投影矩阵
书中介绍了4种模型,常用的是模型4,用两个二维数组[M, 2N]分别存储射线(1~M)穿过的网格编号(1~N)以及在对应网格的线段长度(0~√2),如下面左图所示。
射线与网格只有四种相交情况,如图所画4条射线。 假设射线与第一格交点A,与第二格交点B,而交点A,B与第一个网格底边距离为d1和d2,该射线方程为y=mx+b,则可用d1,d2,m和b来表示该射线在该网格的长度;并依次往后推算(书P97页) 具体实现代码见medfuncSystemMatrix.m
输入:投影角度,矩阵大小,探测器通道数,网格大小
输出:投影矩阵(射线穿过网格的编号以及长度)
2.MLEM算法
遍历每条射线,即可得到该射线在所有网格的对应长度,再乘以权重,即为估计的投影值,与实际投影值比较后,得到比值向量;再将比值向量和真实全1向量进行反投影,得到修正因子,通过迭代,不断更新权重,已接近真实图像 具体实现代码见mlem.m