matlab数据矩阵图形的旋转平移。要是真的帮上忙了加100分。
matlab处理了一批数据,但这些数据出来的图不是很理想,想通过matlab旋转平移处理这批数据使之得到相对理想的图。请问这个程序应该怎么写。我的数据如下:程序如下:得出...
matlab处理了一批数据,但这些数据出来的图不是很理想,想通过matlab旋转平移处理这批数据使之得到相对理想的图。请问这个程序应该怎么写。
我的数据如下:
程序如下:
得出的图如下:
但是呢,因为数据的原因,这个图不是很理想。我需要将图中的每条线旋转2度,然后依次在x,y方向平移,得到理想的图大概样子如下 :
请高众人指教,程序应该怎么写呀。急。 展开
我的数据如下:
程序如下:
得出的图如下:
但是呢,因为数据的原因,这个图不是很理想。我需要将图中的每条线旋转2度,然后依次在x,y方向平移,得到理想的图大概样子如下 :
请高众人指教,程序应该怎么写呀。急。 展开
2个回答
展开全部
可以利用坐标变换公式来处理。1、移轴公式;2、转轴公式
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
其实你后面给的程序也能实现,下面我用写了一个function函数,如果数据多的话用这种方法简单点。
function g=myrotate(F,a)
[m,n]=size(F);
figure
imshow(F);
g=double(F);F=[];
for i=1:m
for j=1:n
i1=round(i*cos(a)-j*sin(a)+n*sin(a))+1;
j1=round(i*sin(a)+j*cos(a));
F(i1,j1)=g(i,j);
end
end
figure
imshow(uint8(F))
function g=myrotate(F,a)
[m,n]=size(F);
figure
imshow(F);
g=double(F);F=[];
for i=1:m
for j=1:n
i1=round(i*cos(a)-j*sin(a)+n*sin(a))+1;
j1=round(i*sin(a)+j*cos(a));
F(i1,j1)=g(i,j);
end
end
figure
imshow(uint8(F))
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询