⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main_cir_30.m

📁 IR scanner view code for 30 degree
💻 M
字号:
clear;
S_MM = load('circle_30.dat');
E_MM = load('error.txt');
[row col]=size(S_MM);
% Z_MM=zeros(1,col);
% for i=1:row,
%     for j=1:col,
%         Z_MM(1,j)=Z_MM(1,j)+S_MM(i,j);
%     end
% end
% for i=1:col,
%     Z_MM(1,i)=Z_MM(1,i)/row;%(row+1);
% end
T_MM = S_MM(1:row, 10:(col-11));
[row col]=size(T_MM);
Z_MM=zeros(1,col);
ZS_MM=zeros(row,1);
ZSQ_MM=zeros(row,1);
for i=1:row,
    for j=1:col,
        Z_MM(1,j)=Z_MM(1,j)+T_MM(i,j);
        ZS_MM(i,1)=ZS_MM(i,1)+T_MM(i,j); 
        ZSQ_MM(i,1)=ZSQ_MM(i,1)+T_MM(i,j)^2;  
    end
end
StDevP = sqrt((col*ZSQ_MM(22,1)-ZS_MM(22,1)^2)/col^2);
fid = fopen('std.txt','a+t');
fprintf(fid, '%6.2f\n',StDevP);
fclose(fid);

for i=1:col,
    Z_MM(1,i)=Z_MM(1,i)/row;%(row+1);
end
M_MM=S_MM(1:row,10:(col-11));
[m_row m_col]=size(M_MM);
% MM=Z_MM(1,10:(col-11));
MM=Z_MM;
% MM=M_MM(25,1:m_col);
[row col]=size(MM);
radius_f = 300.;
init_angle = 0.;
% for k=1:1,
%     figure(k);clf;
% end
for k=1:101,
    theta=init_angle*pi/180;
    x_f(k)=radius_f*cos(theta);
    y_f(k)=radius_f*sin(theta);        
    init_angle = init_angle + 1.8;    
end

% plot(x_f,y_f,'-r');  
% hold on;
% figure(4);
% m_row=50;
% for i=1:m_row,
%     init_angle=0.;
%     hold on;
%     for j=1:m_col,
%         radius=M_MM(i,j);%-E_MM(j);
%         theta=init_angle*pi/180;
%         x=radius*cos(theta);
%         y=radius*sin(theta);
%         plot(x,y,'O','MarkerEdgeColor','k','MarkerFaceColor','g','MarkerSize',3);
%         hold on;
%         init_angle = init_angle + 1.8;
%     end
%     axis equal;
% end
% title('The View that overlaps 50 scan data');
% xlabel('[degree]');
% ylabel('[mm]');
% grid on;

% figure(1);
plot(x_f,y_f,'-r');
hold on;
row=1;
for j=1:row,
    init_angle=0.;
    radius = MM(1,1);%-E_MM(i);
    tx=radius*cos(init_angle*pi/180);
    ty=radius*sin(init_angle*pi/180);             
    for i=1:col,
%         radius = M_MM(j,i);%-E_MM(i);
        radius = MM(1,i);%-E_MM(i);        
        theta = init_angle*pi/180;
        x=radius*cos(theta);
        y=radius*sin(theta);
%         plot(x,y,'O','MarkerEdgeColor','k','MarkerFaceColor','w','MarkerSize',3);
        plot([x tx],[y ty],'--ok','MarkerEdgeColor','k','MarkerFaceColor','w','MarkerSize',1.5);        
        hold on;
        init_angle = init_angle + 1.8;  
        tx=x;
        ty=y;                end
end
axis equal;
grid on;
text(-180,360,'30','HorizontalAlignment','left','FontSize',8);

  
% figure(1);
% plot(x_f,y_f,'-r');
% hold on;
% init_angle=0.;
% for i=1:col,
%     radius = MM(1,i);%-E_MM(i);
%     theta = init_angle*pi/180;
%     x=radius*cos(theta);
%     y=radius*sin(theta);
%     plot(x,y,'O','MarkerEdgeColor','k','MarkerFaceColor','b','MarkerSize',3);
%     hold on;
%     init_angle = init_angle + 1.8;  
% end
% axis equal;
% grid on;

% figure(1);
% hold on;
% init_angle=0.;
% for i=1:col,
%     radius = MM(1,i)-E_MM(i);
%     theta = init_angle*pi/180;
%     x=radius*cos(theta);
%     y=radius*sin(theta);
%     plot(x,y,'O','MarkerEdgeColor','k','MarkerFaceColor','r','MarkerSize',3);
%     hold on;
%     init_angle = init_angle + 1.8;  
% end
% axis equal;
% grid on;

% fid = fopen('error.txt','wt');
% figure(2);
% D_MM=MM;
% init_angle=0;
% for i=1:col,
%     D_MM(1,i)= D_MM(1,i) - 800.;
%     fprintf(fid, '%6.2f\n',D_MM(1,i));
%     plot(init_angle,D_MM(1,i),'O','MarkerEdgeColor','k','MarkerFaceColor','g','MarkerSize',3);
%     init_angle=init_angle+1.8;
%     hold on;
% end
% axis([0 180 -200 200]); 
% grid on;
% fclose(fid);


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -