halcon的hom_mat2d_to_affine_par算子详解

hom_mat2d_to_affine_par算子全网只有下面这个解释:


hom_mat2d_to_affine_par( : : HomMat2D : Sx, Sy, Phi, Theta, Tx, Ty)  
功能:根据仿射变换矩阵(齐次二维变换矩阵)计算仿射变换参数
 
   HomMat2D  (输入参数):仿射变换矩阵
  Sx          (输出参数):x方向的缩放因子(如果从图像空间变换到物理空间,就是x方向的像素单量)
  Sy          (输出参数):y方向的缩放因子(如果从图像空间变换到物理空间,就是y方向的像素单量)
  Phi         (输出参数):旋转角度
  Theta       (输出参数):斜切角度
  Tx          (输出参数):沿x方向平移的距离
   Ty (输出参数):沿y方向平移的距

 

看完上面的指令说明是不是一脸懵逼,之前勇哥还以为它是同时进行移位、旋转、斜切运算的算子,后来看了下传入的参数,是一个矩阵,就知道理解不对了。

一般产生旋转、余切或者位移结果的算子,都应该有输入矩阵,还有输入参数,最后是结果矩阵。

如下面的产生旋转矩阵的算子hom_mat2d_rotate,就有输入矩阵,输入参为旋转的中心和旋转的角度,最后的生成的旋转矩阵。


hom_mat2d_rotate( : : HomMat2D, Phi, Px, Py : HomMat2DRotate)
  //功能:把旋转角度添加到仿射变换矩阵
 
   HomMat2D :(输入参数)仿射变换矩阵
  Phi :旋转角度(单位弧度)
  Px  :变换的固定点行坐标。固定点是指以该点为支撑进行仿射变换  (这里是指围绕这点进行旋转)
  Py : 变换的固定点列坐标
 HomMat2DRotate:输出的旋转变换的二维矩阵


hom_mat2d_to_affine_par算子只有一个传入矩阵,其它的都是输出参数。


hom_mat2d_to_affine_par算子其实是用来检查输入矩阵的仿射变换参数的。

说得更狭隘一点,可以用它来检查标定完的矩阵是否精度足够好

空洞的描述总让人不明白,结合具体的应用是不是就能很好的了解了?


例如下面的代码进行九点标定

*标定数据
vector_to_hom_mat2d ([1863.074,1853.723,1858.503,1060.254,2654.917,2659.306,2650.395,1055.019,1064.807] ,
[1934.265,3530.841,2732.168,2724.893,2736.01,1938.346,3534.78,3523.122,1926.546],
[76398,66398,71398,71398,71398,76398,66398,66398,76398]
 ,[-40614,-40614,-40614,-35614,-45614,-45614,-45614,-35614,-35614], HomMat2D)

*查看qx,qy的值 是否和标定的数据差异太大
affine_trans_point_2d (HomMat2D, 1863, 1934, Qx, Qy)

hom_mat2d_to_affine_par (HomMat2D, Sx, Sy, Phi, Theta, Tx, Ty)


hom_mat2d_to_affine_par算子的结果见下图所示:

image.png

在康耐视软件中九宫格标定后的结果如下图,可以看到是一样的。

image.png



--------------------- 

作者:hackpig
来源:
www.skcircle.com
版权声明:本文为博主原创文章,转载请附上博文链接!

本文出自勇哥的网站《少有人走的路》wwww.skcircle.com,转载请注明出处!讨论可扫码加群:

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

会员中心
搜索
«    2024年4月    »
1234567
891011121314
15161718192021
22232425262728
2930
网站分类
标签列表
最新留言
    热门文章 | 热评文章 | 随机文章
文章归档
友情链接
  • 订阅本站的 RSS 2.0 新闻聚合
  • 扫描加本站机器视觉QQ群,验证答案为:halcon勇哥的机器视觉
  • 点击查阅微信群二维码
  • 扫描加勇哥的非标自动化群,验证答案:C#/C++/VB勇哥的非标自动化群
  • 扫描加站长微信:站长微信:abc496103864
  • 扫描加站长QQ:
  • 扫描赞赏本站:
  • 留言板:

Powered By Z-BlogPHP 1.7.2

Copyright Your skcircle.com Rights Reserved.

鄂ICP备18008319号


站长QQ:496103864 微信:abc496103864