当前位置: 首页 > news >正文

网站建设与管理教学计划/互联网优化

网站建设与管理教学计划,互联网优化,台州网站建设推广,公司电商网站开发0、简介: 主要介绍常用李代数和李群的转化方法,具体公式参考《slam入门-李群和李代数-第2讲》 李代数:so(3),se(3) 李 群:SO(3),SE(3) 1.1指数映射:so(3)->SO(3) function RMatrixExp(so) %so:Li_algebra,3-dime…

0、简介:

主要介绍常用李代数和李群的转化方法,具体公式参考《slam入门-李群和李代数-第2讲》
李代数:so(3),se(3)
李 群:SO(3),SE(3)

1.1指数映射:so(3)->SO(3)

function RMatrix=Exp(so)
%so:Li_algebra,3-dimension column vector;
%RMatrix:li_group,3x3 matrix;
%Exp mapping
angle=norm(so);
axis=so/angle;
RMatrix=AAToRMatrix(axis,angle);
end

1.2指数映射:se(3)->SE(3)

function TMatrix=Exp_se(se)
%se:se(3),Li_algebra,6-dimension column vector,first 3 are rotate,last 3 are pretranslate;
%TMatrix:li_group,4x4 matrix;
%Exp mapping
RMatrix=Exp(se(1:3));
angle=norm(se(1:3));
axis=se(1:3)/angle;
J=sin(angle)/angle*eye(3)+(1-sin(angle)/angle)*axis*axis'+(1-cos(angle))/angle*getSkewSym(axis);
t=J*se(4:6);
TMatrix(1:3,1:3)=RMatrix;
TMatrix(1:3,4)=t;
TMatrix(4,1:4)=[0 0 0 1];
end

1.3对数映射:SO(3)->so(3)

function so=Log(RMatrix)
%so:Li_algebra,3-dimension column vector;
%RMatrix:li_group,3x3 matrix;
%Log mapping
[axis,angle]=RMatrixToAA(RMatrix);;
so=angle*axis;
end

1.4对数映射:SE(3)->se(3)

function se=Log_se(TMatrix)
%se:se(3),Li_algebra,6-dimension column vector,first 3 are rotate,last 3 are pretranslate;
%TMatrix:li_group,4x4 matrix;
%Log mapping
RMatrix=TMatrix(1:3,1:3);
[axis,angle]=RMatrixToAA(RMatrix);
so=angle*axis;
J=sin(angle)/angle*eye(3)+(1-sin(angle)/angle)*axis*axis'+(1-cos(angle))/angle*getSkewSym(axis);
rou=inv(J)*TMatrix(1:3,4);
se=[so;rou];
end

1.5辅助函数:向量->反对称矩阵

function Matrix=getSkewSym(v)
%v:column vector,is a point
%Matrix:is the skew symmetric matrix of vector
[rows,cols]=size(v);
if rows~=3error("It must be a column vector"); 
end
Matrix=[0, -v(3), v(2);v(3), 0, -v(1);-v(2), v(1), 0];
end

1.6辅助函数:反对称矩阵->向量

function [v1,v2,v3]=getUnSkewSym(matrix)
%v:column vector,is a point
%Matrix:is the skew symmetric matrix of vector
[rows,cols]=size(matrix);
if rows~=3 || cols~=3error("It must be 3x3 matrix"); 
end
if matrix(1,1)~=0 || matrix(2,2)~=0 || matrix(3,3)~=0error("Diag must be 0"); 
end
if matrix(1,2)~=-1*matrix(2,1) || matrix(1,3)~=-1*matrix(3,1) ||  matrix(2,3)~=-1*matrix(3,2) error("It must be SkewSymMatrix"); 
end
v1=-1*matrix(2,3);
v2=matrix(1,3);
v3=-1*matrix(1,2);

1.7 轴角->旋转矩阵

function RMatrix=AAToRMatrix(axis,angle)
RMatrix=cos(angle)*eye(3)+(1-cos(angle))*axis*axis.'+sin(angle)*getSkewSym(axis);
end

1.8 旋转矩阵->轴角

function [axis,angle] = RMatrixToAA(Rmatrix)
angle=acos((trace(Rmatrix)-1)/2);
[v,~]=eig(Rmatrix);
axis=v(:,1);
end
http://www.whsansanxincailiao.cn/news/32012688.html

相关文章:

  • js 网站客服代码/搜索词热度查询
  • 如何修改asp网站栏目/收录入口在线提交
  • 中华住房和城乡建设厅网站/优化营商环境心得体会
  • 河北建设执业信息网站/推广咨询服务公司
  • 怎么建设一个自己的网站首页/网站制作公司官网
  • 做网站的模版/电商沙盘seo裤子关键词
  • 网站做进一步优化/seo怎么发外链的
  • 四站合一网站制作/网盘资源免费观看
  • dede后台删了 网站还有/东莞优化seo
  • 网站后期维护怎么做/深圳英文网站推广
  • 网站开发进入腾信职位/sem账户托管公司
  • 电子商务网站建设table/优化网站的意思
  • 哪些网站可以做任务赚钱/清远新闻最新消息
  • 小程序开发合同范本/seo是什么职业做什么的
  • ui设计师是做网站吗/2023搜索最多的关键词
  • 网站建设能/2023第二波疫情已经到来了吗
  • wordpress 测试数据包/win优化大师怎么样
  • 豆瓣网网站建设/seo推广培训班
  • 360易托管建站工具/视频网站推广
  • sns网站建设/2022百度指数排名
  • 怎么可以做网站/手机优化器
  • 党政机关网站建设情况汇报/网上代写文章一般多少钱
  • 如何做行业网站/推广网站制作
  • 设计师对网站的意义/win10最强性能优化设置
  • 个人可以做几个网站吗/b站推广网站入口2023的推广形式
  • frontpage怎么做网站/seo关键词排名优化系统源码
  • 淘宝上做网站排名的是真的吗/搜收录网
  • 符合网络营销的网站/网站免费推广软件
  • 子目录网站/地推团队去哪里找
  • 山东定制网页建站/搜索引擎市场份额2023