如何确定是否可以构造具有给定行和列总和的二进制矩阵.
输入:
第一行输入包含两个数字1≤m,n≤1000,矩阵的行数和列数.下一行包含m个数字0≤ri≤n - 矩阵中每行的总和.第三行包含n个数字0≤cj≤m - 矩阵中每列的总和.
输出:
如果存在m-by-n矩阵A,则输出"YES",每个元素为0或1.否则为"否".
我尝试阅读有关断层扫描算法但无法找到答案,因为所有与断层扫描算法相关的论文都非常复杂.
有人可以帮帮我吗..
我想找到代数重建方法的权重矩阵.为此,我必须找到与网格的线交点.我可以找到直线与线的交点,但我必须存储相交的线段网格数.所以假设如果在网格第一个方格中不与网格相交,则将零置于权重矩阵的第一个元素上.这里为线路交叉尝试的代码:
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来实现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