matlab代码记录

由于matlab入门不久,好多命令容易忘记,所以记录一下

常用命令:

数据类型

三种括号

[ ]  中括号用来构建向量(Vectors)或者是矩阵(Matrices)  [11 12 13; 21 22 23] 是一个二乘三的矩阵. 分号(;)用来结束一行。

{ } 大括号,用于cell型的数组的分配或引用。比如 A(2,1) = {[1 2 3; 4 5 6]}, or A{2,2} = ('str')

( ) 小括号,用于引用数组的元素。如 X(3)就是X的第三个元素。 X([1 2 3])就是X的头三个元素。

结构体

https://blog.csdn.net/jxlijunhao/article/details/18048359

其他一些命令

matlab中要取一个矩阵的一部分命令:

a=zeros(5,5) 

b=a(3:5,4:5)%取a的(3-5行,4-5列) 

matlab中setdiff()函数作用:判断2个数组中不同元素

c = setdiff(A, B) 
返回在A中有,而B中没有的值,结果向量将以升序排序返回。在集合论中,c = A - B。A和B也可以是字符串细胞数组。
c = setdiff(A, B, 'rows')
当A和B是具有相同列数的矩阵时,返回A中有而B中没有的那些行。
 

点云参考

 calib_roi = [0, 15.0, -5, 5, -0.5, 5.0];
 frame_pc = pcread(frameName);
 roi_index = findPointsInROI(frame_pc, calib_roi);
 roi_pc = select(frame_pc, roi_index);
 projCloud3d = zeros(roi_pc.Count,3);
for i=1:roi_pc.Count
  projCloud3d(i,:)= (R*roi_pc.Location(i,:)'+t);
end
 roi_pc = pointCloud(projCloud3d);
 pointscolor=uint8(zeros(roi_pc.Count,3));
 pointscolor(:,1)=255;
 pointscolor(:,2)=0;
 pointscolor(:,3)=0;
 roi_pc.Color=pointscolor;
 pcshow(roi_pc,'MarkerSize', 20);
 axis([-10,10,0,10,0,10]);
 hold on;

作图参考:

%x=1810:10:1880;%x轴上的数据,第一个值代表数据开始,第二个值代表间隔,第三个值代表终止
x=1:1:4;
%   a1=mean(fx');
%  b1=mean(fy');
%  a2=var(D1');
%  b2=var(D2');
 plot(x,D1','-*b',x,D2','-or');
%plot(x,D1','-*b',x,D2','-or',x,D3','-xr',x,D4','-+k');
title("相机去畸变后的内参")
%  axis([0,12,1800,1920]) ; %确定x轴与y轴框图大小
%  set(gca,'XTick',[0:1:12]) %x轴范围0-12,间隔1
%  set(gca,'YTick',[1800:100:1920]) %y轴范围1800-1920,间隔100
%   xlabel('number')  %x轴坐标描述
%   ylabel('value') %y轴坐标描
 grid on;%grid
 set(gca,'GridLineStyle',':','GridColor','k','GridAlpha',1)
% hold off
legend( 'd1','d2');
%legend( 'D-value');
%grid minor
%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
% %x=1810:10:1880;%x轴上的数据,第一个值代表数据开始,第二个值代表间隔,第三个值代表终止
% x=1:1:8;
% % dr=R1-R2;
% % dt=T1-T2;
% %  a1=mean(dt);
% % b1=mean(b);
% % a2=var(dt);
% % b2=var(b);
% hold on
% h1=plot(x,T1(:,1),'-*b');
% h1=plot(x,T1(:,2),'-*b');
% h1=plot(x,T1(:,3),'-*b');
% h2=plot(x,T2(:,1),'-or');
% h2=plot(x,T2(:,2),'-or');
% h2=plot(x,T2(:,3),'-or');
% % plot(x,a,'-*b',x,b,'-or',x,c,'-xr',x,d,'-+k');
% axis([0,9,5000,15000]) ; %确定x轴与y轴框图大小
% set(gca,'XTick',[0:1:9]) %x轴范围0-9,间隔1
% set(gca,'YTick',[5000:1000:12000]) %y轴范围5000-12000,间隔1000
% xlabel('number')  %x轴坐标描述
% ylabel('value') %y轴坐标描
% grid on;%grid
% set(gca,'GridLineStyle',':','GridColor','k','GridAlpha',1)
% hold off
% legend([h1,h2], 'T1','T2');
% %legend( 'D-value');
% %grid minor

 

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
随机攻击 Matlab 代码指的是对 Matlab 程序进行未经授权的恶意操作。这种攻击可能会导致程序的功能异常或数据的泄露。 首先,攻击者可能会尝试通过输入非法数据来对 Matlab 代码进行随机攻击,例如输入超出变量范围的值、非法字符串或特殊字符。这可能导致代码运行错误、内存溢出或数据类型转换错误。 其次,攻击者可以试图通过注入恶意代码来攻击 Matlab 程序。这种攻击可能通过修改程序中的关键变量、函数或逻辑来导致程序执行不正确。攻击者可以利用此漏洞来获取敏感信息、修改数据或执行非法操作。 此外,攻击者还可以利用 Matlab 的漏洞或未经修补的版本来攻击程序。他们可能会利用已知的漏洞或进行零日攻击来绕过 Matlab 的安全机制,并在操作系统中执行恶意代码。 为了防止随机攻击,我们可以采取以下措施: 1. 更新 Matlab:及时安装 Matlab 的最新版本和补丁程序,以避免已知的漏洞。 2. 输入验证:对用户输入的数据进行验证和过滤,确保输入的数据符合预期,避免非法输入。 3. 限制访问权限:在部署 Matlab 应用程序时,限制对敏感数据和关键功能的访问权限,只授权合法用户访问。 4. 安全编程原则:在编写 Matlab 代码时,遵循安全编程原则,避免使用不安全的函数或操作。 5. 日志记录和监测:实施日志记录和监测机制,及时发现异常行为和攻击尝试,并采取相应的应对措施。 总之,为了确保 Matlab 代码的安全性,我们需要采取多种防护措施,包括更新软件、输入验证、限制访问权限、安全编码和监测机制。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值