function q = rv2q(rv)  % 等效旋转矢量转换为变换四元数
    nm2 = rv'*rv;  % 旋转矢量的模方
    if nm2<1.0e-8  % 如果模方很小，则可用泰勒展开前几项求三角函数
        q0 = 1-nm2*(1/8-nm2/384); 
        s = 1/2-nm2*(1/48-nm2/3840);
    else
        nm = sqrt(nm2);
        q0 = cos(nm/2); 
        s = sin(nm/2)/nm;
    end
    q = [q0; s*rv];

