标签: tomography-reconstruction

给出行和列总和,查找二进制矩阵是否存在

如何确定是否可以构造具有给定行和列总和的二进制矩阵.

输入:

第一行输入包含两个数字1≤m,n≤1000,矩阵的行数和列数.下一行包含m个数字0≤ri≤n - 矩阵中每行的总和.第三行包含n个数字0≤cj≤m - 矩阵中每列的总和.

输出:

如果存在m-by-n矩阵A,则输出"YES",每个元素为0或1.否则为"否".

我尝试阅读有关断层扫描算法但无法找到答案,因为所有与断层扫描算法相关的论文都非常复杂.

有人可以帮帮我吗..

math tomography-reconstruction

5
推荐指数
1
解决办法
3643
查看次数

如何在matlab中获取线矩形交叉段

我想找到代数重建方法的权重矩阵.为此,我必须找到与网格的线交点.我可以找到直线与线的交点,但我必须存储相交的线段网格数.所以假设如果在网格第一个方格中不与网格相交,则将零置于权重矩阵的第一个元素上.这里为线路交叉尝试的代码:

ak = 3:6
aka = 3:6
x = zeros(size(aka))
y = zeros(size(ak))
for k = 1:length(ak)
  line([ak(1) ak(end)], [aka(k) aka(k)],'color','r')
end

% Vertical grid
for k = 1:length(aka)
  line([ak(k) ak(k)], [aka(1) aka(end)],'color','r')
end
hold on;
 X =[0 15.5]
 Y = [2.5 8.5] 
 m = (Y(2)-Y(1))/(X(2)-X(1)) ;
 c = 2.5 ; 
 plot(X,Y)
axis([0 10 0 10])
axis square
% plotting y intercept
for i = 1:4
    y(i) = m * ak(i) + c
    if y(i)<2 || y(i)>6
        y(i) = 0 …
Run Code Online (Sandbox Code Playgroud)

matlab line-intersection tomography-reconstruction

5
推荐指数
1
解决办法
751
查看次数

CT投影(距离驱动)算子实现?

我正在尝试使用MATLAB来实现CT(计算机断层扫描)投影算子A,我认为它经常被称为"系统矩阵".

基本上,对于N×N图像M,投影数据P可以通过将项目操作符与图像相乘来获得:

P = AM

并且可以通过将投影算子的(共轭)转置乘以投影数据来执行反投影过程:

M = A'P

任何人都有关于如何实现矩阵A的任何想法/示例/示例代码(例如:Radon变换)?我真的想从一个小尺寸的矩阵开始,比如8 x 8或16 x 16,如果可能的话.

我的问题是:如何实现投影算子,这样通过将运算符与图像相乘,我可以得到投影,并通过将运算符的(共轭)转置与投影相乘,我可以得到原始图像.

编辑:

特别是,我想实现距离驱动的投影仪,在这种情况下,光束轨迹(平行,风扇等)无关紧要.非常简单的例子(MATLAB首选)对我来说是最好的.

matlab projection image-processing medical tomography-reconstruction

1
推荐指数
2
解决办法
2696
查看次数