算子作用:创建一个3D姿态

算子声明:

create_pose( : : TransX, TransY, TransZ, RotX, RotY, RotZ, OrderOfTransform, OrderOfRotation, ViewOfTransform : Pose)

举例:

create_pose (EndX - StartX, EndY - StartY, EndZ - StartZ, 0, 0, 0, 'Rp+T', 'gba', 'point', MovementPoseNSteps)

算子说明:

参数OrderOfRotation

选择'gba'的意义为:

注意:这里可以有两种读法,如果从右往左,这里的旋转是相对于原始(固定)坐标系旋转的,也即:先相对于原始的Z轴,再相对于原始的Y轴,最后相对于原始的X轴旋转。如果是从左往右读,这里的旋转就是相对于实时坐标系,也就是旋转完一个另外的坐标系也随着变化,也即:先绕着X轴,再绕着新的Y轴,最后绕着最新的Z轴旋转。

从右往左读的话,相当于下面的变换:

  hom_mat3d_identity (HomMat3DIdent)hom_mat3d_rotate (HomMat3DIdent, RotZ, 'z', 0, 0, 0, HomMat3DRotZ)hom_mat3d_rotate (HomMat3DRotZ, RotY, 'y', 0, 0, 0, HomMat3DRotYZ)hom_mat3d_rotate (HomMat3DRotYZ, RotX, 'x', 0, 0, 0, HomMat3DXYZ)

从左往右读的话相当于下面的变换:

hom_mat3d_identity (HomMat3DIdent)hom_mat3d_rotate_local (HomMat3DIdent, RotX, 'x', HomMat3DRotX)hom_mat3d_rotate_local (HomMat3DRotX, RotY, 'y', HomMat3DRotXY)hom_mat3d_rotate_local (HomMat3DRotXY, RotZ, 'z', HomMat3DXYZ)

上面这种是参考Yaw-Pitch-Roll转换规则。

下面还有一种选择Roll-Pitch-Yaw转换规则:

还可以选择'rodriguez'算法如下

注意:这种3D姿态有时候是模糊的,意味着一种姿态可能对应多种组合。下面举一个例子,特别是再b=90度的时候。

相应的同质转换矩阵:
Ht是平移矩阵,Hr是旋转矩阵

坐标的转换
下面演示了一个点怎么从一个坐标系转换到另一个坐标系:

这相当于下面的功能:

  pose_to_hom_mat3d(PoseOf1In2, HomMat3DFrom1In2)affine_trans_point_3d(HomMat3DFrom1In2, P1X, P1Y, P1Z, P2X, P2Y, P2Z)

参数 OrderOfTransform

先说标准姿势定义,想要生成标准姿态,OrderOfTransform需要选择'Rp+T'ViewOfTransform需要选择'point'

如果OrderOfTransform选择了'R(p-T)'
算法则会如下:

参数ViewOfTransform

如果选择'coordinate_system',算法如下:

返回值Pose类型

返回值为7个元素的数组,前六个是三方向平移和三方向旋转,最后一个是下面的Code,也即标志矩阵类型

create_pose算子说明相关推荐

  1. 线结构光平面标定矩阵变换算子

    这五个算子在线结构光的标定中用于矩阵变换,为了计算物体移动的距离 第一个 pose_to_hom_mat3d算子将 3D 姿势转换为均匀的转换矩阵,在线结构光平面标定中,这个算子把相机外参转为一个矩阵 ...

  2. 线结构光标定详细步骤与实现HALCON

    这部分是HALCON官方的一个例子,下面是对这个比较复杂的例子的一些理解,具体的每一句代码都对应相应的作用解释 具体的例子是这个: 此程序演示如何执行校准光片测量系统: 测量系统由区域扫描摄像机和光线 ...

  3. visualize_object_model_3d算子说明

    算子作用:交互式显示 3D 对象模型, 声明: visualize_object_model_3d( : : WindowHandle, ObjectModel3D, CamParam, PoseIn ...

  4. halcon算子中文对照

    Chapter 1 :Classification 1.1 Gaussian-Mixture-Models 1.add_sample_class_gmm 功能:把一个训练样本添加到一个高斯混合模型的训 ...

  5. Halcon20算子中文解释

    Chapter_1_:Classification 1.1 Gaussian-Mixture-Models 1.add_sample_class_gmm 功能:把一个训练样本添加到一个高斯混合模型的训 ...

  6. halcon算子中文解释

    halcon算子中文解释 comment ( : : Comment : )   注释语句 exit ( : : : )  退出函数 open_file ( : : FileName, FileTyp ...

  7. Halcon算子大全

    ##Halcon算子大全 Halcon算子大全 Chapter 1 :Classification 1.1 Gaussian-Mixture-Models 1.add_sample_class_gmm ...

  8. halcon编程入门七——halco算子大全

    傅里叶变换是得到信号在频域的分布,数字图像也是一种信号,对它进行傅里叶变换得到的也是它的频谱数据.对于数字图像这种离散的信号,频率大小表示信号变化的剧烈程度或者说是信号变化的快慢.频率越大,变化越剧烈 ...

  9. Halcon算子说明

    Chapter 1 :Classification 1.1 Gaussian-Mixture-Models 1.add_sample_class_gmm 功能:把一个训练样本添加到一个高斯混合模型的训 ...

最新文章

  1. SAP MM 特性设置问题导致PR审批策略不对之分析
  2. 用神经网络计算甲醛CH2O和亚硝酸HNO2的化学键的键能
  3. 使用SSL和Spring Security保护Tomcat应用程序的安全
  4. 希尔排序--Java
  5. CSDN博客标题和目录的一点思考
  6. eclipse建maven pom报错
  7. 大众eagit_试驾大众全新高尔夫GTI
  8. DockerKubernetes ❀ Kubernetes集群 - DashBoard服务(Web管理)安装部署
  9. shp系列(四)——利用C++进行Shx文件的读(打开)
  10. 51单片机程序存储器和数据存储器
  11. HTML5自学笔记上
  12. 苏嵌//张福辉//2018.7.27
  13. 一个屌丝程序猿的人生(八十三)
  14. Symantec赛门铁克官网下载地址
  15. 大数据基石-Hadoop3.x学习教程-大数据场景介绍
  16. VMwareFusion for mac 安装win10
  17. RocketMQ 入门必读
  18. mc服务器怎么传送到我位置,我的世界如何传送队友到自己身边
  19. PHP 模板引擎SMARTY 原理
  20. 店宝宝:拼多多用户量接近阿里 电商三巨头财报出炉

热门文章

  1. 一个菜鸟程序猿--再谈六月坚持英语学习
  2. hdu 1872(看病要排队)(优先队列)
  3. Codeforces 611D New Year and Ancient Prophecy DP
  4. jquery判断页面是否滑动到最底部
  5. 局域网通知系统(消息群发)
  6. 好东西和大家分享阿!
  7. Generator-ing Values
  8. pandas -表的横向合并 纵向合并
  9. Linux下安装Java(JDK8)
  10. Asp.net Mvc Post ID Bug