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

比较两个旋转矩阵的误差

functioncompare_dcm(C1,C2,name1,name2)% COMPARE_DCM 比较两个方向余弦矩阵的误差% 输入:% C1 - 第一个DCM矩阵 (3x3)% C2 - 第二个DCM矩阵 (3x3)% name1 - 第一个矩阵的名称 (字符串)% name2 - 第二个矩阵的名称 (字符串)R2D=180/pi;% 计算相对旋转矩阵C_delta=C1*C2';% 等效旋转角[theta_deg,theta_rad]=dcm2angle_trace(C_delta);% 欧拉角 (ZYX 321顺序),rotm2eul 返回 [psi, theta, phi] 的 1×3 行向量eul=rotm2eul(C_delta,'ZYX');% 返回 1x3: [psi, theta, phi]psi_deg=eul(1)*R2D;% 方位theta_e=eul(2)*R2D;% 俯仰phi_deg=eul(3)*R2D;% 滚转fprintf('\n========== 矩阵误差分析: [%s] vs [%s] ==========\n',name1,name2);fprintf('等效旋转角: %.6f 度 (%.8f rad)\n',theta_deg,theta_rad);fprintf('方位角误差 ψ: %.6f 度\n',psi_deg);fprintf('俯仰角误差 θ: %.6f 度\n',theta_e);fprintf('滚转角误差 φ: %.6f 度\n',phi_deg);fprintf('================================================\n');end
importnumpyasnpdefrotation_matrix_angle_error(R1,R2):""" 计算两个3x3旋转矩阵之间的姿态夹角误差 :param R1: 基准旋转矩阵 (3x3 numpy array) :param R2: 待评估旋转矩阵 (3x3 numpy array) :return: 误差角 (度), 误差角 (角秒) """# 计算相对旋转矩阵R_rel=R2 @ R1.T# 计算矩阵迹tr=np.trace(R_rel)# 计算旋转角(弧度)theta_rad=np.arccos((tr-1)/2)# 转换为角度和角秒theta_deg=np.rad2deg(theta_rad)theta_arcsec=theta_deg*3600returntheta_deg,theta_arcsec# 基准矩阵R_base=np.array([[0.369570943258714,0.929183591370813,-0.005855345436375],[0.928725095037648,-0.369226681941889,0.025702187590948],[0.021718859664471,-0.014940172615175,-0.999411929307825]])# 计算误差deg_A,arcsec_A=rotation_matrix_angle_error(R_base,R_A)deg_B,arcsec_B=rotation_matrix_angle_error(R_base,R_B)deg_C,arcsec_C=rotation_matrix_angle_error(R_base,R_C)print(f"基准矩阵 vs 精测矩阵A:{deg_A:.3f}° ({arcsec_A:.1f}'')")print(f"基准矩阵 vs 精测矩阵B:{deg_B:.3f}° ({arcsec_B:.1f}'')")print(f"基准矩阵 vs 精测矩阵C:{deg_C:.3f}° ({arcsec_C:.1f}'')")
http://www.jsqmd.com/news/636884/

相关文章:

  • 优优推联系方式查询:关于数字营销服务提供商的联系途径与使用注意事项解析 - 品牌推荐
  • $Floyd$ 算法
  • Ubuntu22.04下编译与配置Mesa 22:从依赖解析到Wayland平台支持
  • 法大大:新一代合同管理数智化服务商
  • 文本聚类实战:从K均值到高斯混合模型的NLP应用探索
  • lvgl 8.3 触摸事件处理机制深度剖析:从驱动回调到控件响应的完整链路
  • 2026路灯蓄电池厂家名录:一体化太阳能路灯/一体化路灯锂电池/地埋灯/太阳能景观灯/太阳能蓄电池/庭院灯/景观灯定制/选择指南 - 优质品牌商家
  • 聚焦2026年4月:西双版纳地区高评价配电柜服务商推荐 - 2026年企业推荐榜
  • sdut编译原理第一次机测必背填空题
  • 国产大模型Agent架构:4种核心模式与产业落地指南
  • BiliTools终极指南:三分钟掌握B站视频下载全技巧
  • Spring AI 入门级学习 6:怎么构建 AI 智能体
  • 2026年室内墙面设计厂家电话查询推荐:五大优质厂家联系方式 - 品牌推荐
  • 电子爱好者DIY:用Multisim打造炫酷彩灯控制系统(含仿真+代码+报告)
  • 8行Prompt优化技巧:让大模型输出准确率提升60%
  • RexUniNLU从入门到应用:一个镜像搞定10种自然语言理解任务
  • 深度解析:GraphRAG与Agentic RAG
  • Qwen3-VL-WEBUI 成本优化指南:按需 GPU 节省 一半的费用,惊!!
  • 如何快速实现Figma中文界面:专业设计师的汉化插件终极指南
  • Vivado IP核归档避坑指南:为什么你的xci文件总是路径错误?
  • 实战指南:在Windows上构建YOLOv8+QT目标检测应用(从环境到部署)
  • EtherCAT FOE文件传输实战:用SSC工具包手把手实现从站固件读写(附完整代码)
  • 针对“单个功能操作数据库”要不要加 @Transactional,
  • 猫抓浏览器扩展终极指南:一键下载所有网页媒体资源
  • 企业级Agent架构:可观测性与监控设计
  • Joplin大纲插件终极指南:3分钟掌握智能文档导航
  • 从‘小白’到‘省流高手’:我是如何通过调整使用习惯,让Cursor免费额度多用一倍的
  • B 站超 5 亿播放、“高数救星”宋浩老师新作《微积分精选 850 题》终于来了!
  • 信号处理所有公式整理 第四章
  • 零代码部署 OpenClaw Windows 版详细步骤+避坑要点