马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?我要加入
x
我想用imrotate生成一个权重矩阵。首先令其中一列(光束)的元素均为1,其他列为零,然后用imrotate旋转图像一定的角度,生成一个新的矩阵,那么这个新矩阵就是该光束在该角度下的权重。 现在问题是,在有些角度,旋转后的光束只覆盖了其路径的中间部分,而两端没有赋值(就是还是0),请问该如何才能让这些地方也产生数值呢?
N=128;
theta=1:10:141;
w = sparse(N*length(theta),N*N);
I = 1;
for i=1:length(theta);
for p=1:N;
ray = zeros(N,N);
ray(p,:) = 1;
rotray = sparse(imrotate(ray,theta(i),'bilinear','crop'));
imagesc(rotray), colormap(gray), drawnow
w(I,:) = rotray(:);
I = I+1;
end
disp(['Calculating weight matrix: ' num2str(100*theta(i)/max(theta)) '%']);
end
w = sparse(w);
谢谢
[ 本帖最后由 george 于 2010-3-5 16:40 编辑 ] |