旋转矩阵,欧拉角,四元数,旋转向量(轴-角)

参考:http://www.cppblog.com/Tongy0/archive/2012/09/10/190126.html

转载自:http://blog.csdn.net/shenxiaolu1984/article/details/50639298    http://blog.csdn.net/tanmengwen/article/details/8477556

使用matlab中Aerospace工具箱函数进行变换:http://www.mamicode.com/info-detail-1308422.html

旋转矩阵


欧拉角


四元数


旋转向量(轴-角)

旋转向量的长度(模)表示绕轴逆时针旋转的角度(弧度)。

旋转向量与旋转矩阵可以通过罗德里格斯(Rodrigues)变换进行转换。

   Matlab中旋转向量到旋转矩阵的转换为:
   rotationMartrix=rotationVectorToMatrix([rotationVector])
<span style="font-size:14px;">#include <stdio.h>  
#include <cv.h>  
  
void main()  
{  
    int i;  
    double r_vec[3]={-2.100418,-2.167796,0.273330};  
    double R_matrix[9];  
    CvMat pr_vec;  
    CvMat pR_matrix;  
  
    cvInitMatHeader(&pr_vec,1,3,CV_64FC1,r_vec,CV_AUTOSTEP);  
    cvInitMatHeader(&pR_matrix,3,3,CV_64FC1,R_matrix,CV_AUTOSTEP);  
    cvRodrigues2(&pr_vec, &pR_matrix,0);  
  
    for(i=0; i<9; i++)  
    {  
        printf("%f\n",R_matrix[i]);  
    }  
}  
  
</span>  



猜你喜欢

转载自blog.csdn.net/wjdexz/article/details/78409808