坐标系中,一个刚体的状态可用位置和姿态来描述,位置即为该刚体在坐标系中的空间位置,用一个坐标向量即可表达。而要描述刚体的姿态,有很多种表示方法,以下列出常用的:

1 旋转矩阵(Rotation matrix)

旋转矩阵是在乘以一个向量的时候有改变向量的方向但不改变大小的效果的矩阵,旋转矩阵可以直接运算,它是用9个量来表达一个旋转,但实际上一次旋转只有3个自由度。因此旋转矩阵表达式是冗余的。同时,对于旋转矩阵自身也有约束,它必须是正交矩阵,且行列式为1,这些约束会使求解变得困难。
旋转矩阵比较好理解,这里不多说,可见:坐标变换及旋转矩阵

2 欧拉角(Euler angles)

2.1 欧拉角

欧拉角是描述刚体姿态的一组3个角值的参量,同时需要指定三个角度转动时分别围绕的坐标轴,以及旋转的顺序,一旦确定了这些,那么这个欧拉角的描述就可以分解为三个基本的旋转,三个基本旋转的旋转矩阵为:
绕X轴旋转θ的旋转矩阵: R X ( θ ) = [ 1 0 0 0 c o s θ − s i n θ 0 s i n θ c o s θ ] R_X(θ)=\left[\begin{matrix} 1&0&0\\ 0&cosθ&-sinθ\\ 0&sinθ&cosθ\\ \end{matrix}\right] RX​(θ)=⎣⎡​100​0cosθsinθ​0−sinθcosθ​⎦⎤​
绕Y轴旋转θ的旋转矩阵: R Y ( θ ) = [ c o s θ 0 s i n θ 0 1 0 − s i n θ 0 c o s θ ] R_Y(θ)=\left[\begin{matrix} cosθ&0&sinθ\\ 0&1&0\\ -sinθ&0&cosθ\\ \end{matrix}\right] RY​(θ)=⎣⎡​cosθ0−sinθ​010​sinθ0cosθ​⎦⎤​
绕Z轴旋转θ的旋转矩阵: R Z ( θ ) = [ c o s θ − s i n θ 0 s i n θ c o s θ 0 0 0 1 ] R_Z(θ)=\left[\begin{matrix} cosθ&-sinθ&0\\ sinθ&cosθ&0\\ 0&0&1\\ \end{matrix}\right] RZ​(θ)=⎣⎡​cosθsinθ0​−sinθcosθ0​001​⎦⎤​
欧拉角的个人理解

2.1 欧拉角与旋转矩阵

任何关于刚体旋转的旋转矩阵均可以由三个基本旋转矩阵复合而成。但要考虑到欧拉角分为内旋和外旋,内旋和外旋的三个基本旋转组合顺序是有区别的,内旋时三个基本旋转矩阵需右乘,外旋时三个基本旋转矩阵需左乘。

外旋欧拉角计算

设三个轴x,y,z的欧拉角分别为α,β,γ,外旋,那么旋转矩阵为(为了简洁,以下sin和cos分别用s和c表达)
R ( α , β , γ ) = R z ( γ ) R y ( β ) R x ( α ) = [ c β c γ c γ s α s β − c α s γ s α s γ + c α c γ s β c β s γ c α c γ + s α s β s γ c α s β s γ − c γ s γ − s β c β s α c α c β ] R(α,β,γ)=R_z(γ)R_y(β)R_x(α)=\left[\begin{matrix} cβcγ&cγsαsβ-cαsγ&sαsγ+cαcγsβ\\ cβsγ&cαcγ+sαsβsγ&cαsβsγ-cγsγ\\ -sβ&cβsα&cαcβ \end{matrix}\right] R(α,β,γ)=Rz​(γ)Ry​(β)Rx​(α)=⎣⎡​cβcγcβsγ−sβ​cγsαsβ−cαsγcαcγ+sαsβsγcβsα​sαsγ+cαcγsβcαsβsγ−cγsγcαcβ​⎦⎤​
反之,对应这个旋转,已知旋转矩阵 [ r 11 r 12 r 13 r 21 r 22 r 23 r 31 r 32 r 33 ] \left[\begin{matrix} r_{11}&r_{12}&r_{13} \\ r_{21}&r_{22}&r_{23} \\ r_{31}&r_{32}&r_{33} \end{matrix}\right] ⎣⎡​r11​r21​r31​​r12​r22​r32​​r13​r23​r33​​⎦⎤​,欧拉角可解得
α = a r c t g ( r 32 r 33 ) β = a r c t g ( − r 31 r 32 2 + r 33 2 ) γ = a r c t g ( r 21 r 11 ) α=arctg(\frac{r_{32}}{r_{33}})\\ β=arctg(\frac{-r_{31}}{\sqrt{r_{32}^2+r_{33}^2}})\\ γ=arctg(\frac{r_{21}}{r_{11}}) α=arctg(r33​r32​​)β=arctg(r322​+r332​ ​−r31​​)γ=arctg(r11​r21​​)

内旋欧拉角计算

设内旋顺序为Z-X-Y(Z轴向上,Y轴向前),旋转角分别为yaw、pitch、roll,则旋转矩阵为
R ( y a w , p i t c h , r o l l ) = R z ( y a w ) R x ( p i t c h ) R y ( r o l l ) R(yaw,pitch,roll)=R_z(yaw)R_x(pitch)R_y(roll) R(yaw,pitch,roll)=Rz​(yaw)Rx​(pitch)Ry​(roll)
反之,对应这个旋转,已知旋转矩阵 [ r 11 r 12 r 13 r 21 r 22 r 23 r 31 r 32 r 33 ] \left[\begin{matrix} r_{11}&r_{12}&r_{13} \\ r_{21}&r_{22}&r_{23} \\ r_{31}&r_{32}&r_{33} \end{matrix}\right] ⎣⎡​r11​r21​r31​​r12​r22​r32​​r13​r23​r33​​⎦⎤​,内旋欧拉角可解得
y a w = − a r c t g ( r 12 r 22 ) p i t c h = a r c s i n ( r 32 ) r o l l = − a r c t g ( r 31 r 33 ) yaw=-arctg(\frac{r_{12}}{r_{22}})\\ pitch=arcsin(r_{32})\\ roll=-arctg(\frac{r_{31}}{r_{33}}) yaw=−arctg(r22​r12​​)pitch=arcsin(r32​)roll=−arctg(r33​r31​​)

3 轴角(Axial angle)

3.1 轴角

轴角是用两个参数表示旋转: 一个轴或直线,和绕这个轴的旋转的角度。它也叫做旋转的指数坐标。
给定一个向量 K ^ = ( k x , k y , k z ) \hat K=(k_x,k_y,k_z) K^=(kx​,ky​,kz​),以这个向量 K ^ \hat K K^为旋转轴,旋转 θ θ θ角,这样我们用一个四维向量 ( k x , k y , k z , θ ) (k_x,k_y,k_z,θ) (kx​,ky​,kz​,θ)就可以来表示这个旋转。

3.2 旋转向量

轴角有时候也用旋转向量表示,以上说轴角是用一个四维向量来表达一个旋转,而更紧凑的表示方式是用一个单位向量来表示轴,而用该三维向量的长度来表示角度值θ。这样一来,就可以简化到用一个三维向量来表示这个旋转,这就是旋转向量。
即:将以上的轴向量 K ^ = ( k x , k y , k z ) \hat K=(k_x,k_y,k_z) K^=(kx​,ky​,kz​)取为单位向量 K ^ 0 = ( k x 0 , k y 0 , k z 0 ) \hat K_0=(k_{x0},k_{y0},k_{z0}) K^0​=(kx0​,ky0​,kz0​),得到旋转向量即为:
R = [ R x R y R z ] = [ θ ⋅ k x 0 θ ⋅ k y 0 θ ⋅ k z 0 ] \mathbf R=\left[\begin{matrix}R_x\\R_y\\R_z\end{matrix}\right]=\left[\begin{matrix}θ\cdot k_{x0}\\θ\cdot k_{y0}\\θ\cdot k_{z0}\end{matrix}\right] R=⎣⎡​Rx​Ry​Rz​​⎦⎤​=⎣⎡​θ⋅kx0​θ⋅ky0​θ⋅kz0​​⎦⎤​
同样,通过旋转向量也可得到轴角参数
θ = R x 2 + R y 2 + R z 2 k x 0 = R x / θ , k y 0 = R y / θ , k z 0 = R z / θ θ=\sqrt{R_x^2+R_y^2+R_z^2}\\ k_{x0}=R_x/θ, k_{y0}=R_y/θ, k_{z0}=R_z/θ θ=Rx2​+Ry2​+Rz2​ ​kx0​=Rx​/θ,ky0​=Ry​/θ,kz0​=Rz​/θ

3.3 轴角与旋转矩阵

已知轴角矢量 ( k x , k y , k z , θ ) (k_x,k_y,k_z,θ) (kx​,ky​,kz​,θ),根据Rodrigues旋转公式,可求得旋转矩阵为
R K ^ ( θ ) = c θ I + ( 1 − c θ ) r r T + s θ [ 0 − k z k y k z 0 − k x − k y k x 0 ] R_{\hat K}(θ)=cθI+(1-cθ)rr^T+sθ\left[\begin{matrix} 0&-k_z&k_y\\ k_z&0&-k_x\\ -k_y&k_x&0 \end{matrix}\right] RK^​(θ)=cθI+(1−cθ)rrT+sθ⎣⎡​0kz​−ky​​−kz​0kx​​ky​−kx​0​⎦⎤​
其中 r = ( k x , k y , k z ) T r=(k_x,k_y,k_z)^T r=(kx​,ky​,kz​)T,即: R K ^ ( θ ) = [ c θ + k x 2 ( 1 − c θ ) k x k y ( 1 − c θ ) − k z s θ k x k z ( 1 − c θ ) + k y s θ k y k x ( 1 − c θ ) + k z s θ c θ + k y 2 ( 1 − c θ ) k y k z ( 1 − c θ ) − k x s θ k z k x ( 1 − c θ ) − k y s θ k z k y ( 1 − c θ ) + k x s θ c θ + k z 2 ( 1 − c θ ) ] R_{\hat K}(θ)=\left[\begin{matrix} cθ+k_x^2(1-cθ)&k_xk_y(1-cθ)-k_zsθ&k_xk_z(1-cθ)+k_ysθ\\ k_yk_x(1-cθ)+k_zsθ&cθ+k_y^2(1-cθ)&k_yk_z(1-cθ)-k_xsθ\\ k_zk_x(1-cθ)-k_ysθ&k_zk_y(1-cθ)+k_xsθ&cθ+k_z^2(1-cθ)\\ \end{matrix}\right] RK^​(θ)=⎣⎡​cθ+kx2​(1−cθ)ky​kx​(1−cθ)+kz​sθkz​kx​(1−cθ)−ky​sθ​kx​ky​(1−cθ)−kz​sθcθ+ky2​(1−cθ)kz​ky​(1−cθ)+kx​sθ​kx​kz​(1−cθ)+ky​sθky​kz​(1−cθ)−kx​sθcθ+kz2​(1−cθ)​⎦⎤​
以上转换公式在Opencv中有相关的实现函数:Rodrigues2()。
反之,已知旋转矩阵 R = [ r 11 r 12 r 13 r 21 r 22 r 23 r 31 r 32 r 33 ] R=\left[\begin{matrix} r_{11}&r_{12}&r_{13} \\ r_{21}&r_{22}&r_{23} \\ r_{31}&r_{32}&r_{33} \\ \end{matrix}\right] R=⎣⎡​r11​r21​r31​​r12​r22​r32​​r13​r23​r33​​⎦⎤​,也可以求出轴角参数
s θ [ 0 − k z k y k z 0 − k x − k y k x 0 ] = R − R T 2 sθ\left[\begin{matrix} 0&-k_z&k_y\\ k_z&0&-k_x\\ -k_y&k_x&0 \end{matrix}\right]=\frac{R-R^T}{2} sθ⎣⎡​0kz​−ky​​−kz​0kx​​ky​−kx​0​⎦⎤​=2R−RT​

θ = a r c c o s ( r 11 + r 22 + r 33 − 1 2 ) K ^ = [ k x k y k z ] = 1 2 s i n θ [ r 32 − r 23 r 13 − r 31 r 21 − r 12 ] θ=arccos(\frac{r_{11}+r_{22}+r_{33}-1}{2})\\ \hat K=\left[\begin{matrix}k_x\\k_y\\k_z\end{matrix}\right]= \frac{1}{2sinθ}\left[\begin{matrix}r_{32}-r_{23}\\r_{13}-r_{31}\\r_{21}-r_{12}\end{matrix}\right] θ=arccos(2r11​+r22​+r33​−1​)K^=⎣⎡​kx​ky​kz​​⎦⎤​=2sinθ1​⎣⎡​r32​−r23​r13​−r31​r21​−r12​​⎦⎤​
可以看到,当 θ θ θ为0或 2 Π 2Π 2Π时,旋转轴不能确定,是奇异的。

4 四元数(Quaternions)

4.1 四元数

引入四元数以解决欧拉角、轴角、旋转矩阵等的不足:

  • 欧拉角的万向节锁问题;
  • 轴角的奇异问题;
  • 旋转矩阵的9个数值不相互独立。

四元数是简单的超复数。 复数是由实数加上虚数单位 i i i 组成,其中 i 2 = − 1 i^2 = -1 i2=−1。 相似地,四元数是由实数加上三个虚数单位 i i i、 j j j、 k k k组成,而且它们有如下的关系: i 2 = j 2 = k 2 = − 1 , i 0 = j 0 = k 0 = 1 i^2 = j^2 = k^2 = -1, i^0 = j^0 = k^0 = 1 i2=j2=k2=−1,i0=j0=k0=1,每个四元数都是1、 i i i、 j j j和 k k k 的线性组合,即是四元数一般可表示为 a + b i + c j + d k a + bi+ cj + dk a+bi+cj+dk,其中 a a a、 b b b、 c c c、 d d d是实数。
设单位四元数 q = ( q 0 , q 1 , q 2 , q 3 ) \mathbf q=(q_0,q_1,q_2,q_3) q=(q0​,q1​,q2​,q3​),有 q 0 2 + q 1 2 + q 2 2 + q 3 2 = 1 q_0^2+q_1^2+q_2^2+q_3^2=1 q02​+q12​+q22​+q32​=1,如有单位向量 ( x , y , z ) (x,y,z) (x,y,z)为旋转轴,旋转角度 θ θ θ,则对应的四元数为: q = ( c o s θ 2 , x s i n θ 2 , y s i n θ 2 , z s i n θ 2 ) \mathbf q=(cos\frac{θ}{2},xsin\frac{θ}{2},ysin\frac{θ}{2},zsin\frac{θ}{2}) q=(cos2θ​,xsin2θ​,ysin2θ​,zsin2θ​)
设有一个点 P 1 = ( p x , p y , p z ) \mathbf P_1=(p_x,p_y,p_z) P1​=(px​,py​,pz​),我们要用以上这个旋转四元数将其旋转变换到 P 1 ′ = ( p x ′ , p y ′ , p z ′ ) \mathbf P_1'=(p_x',p_y',p_z') P1′​=(px′​,py′​,pz′​),计算过程如下:

  • 1 定义纯四元数: q p = ( 0 , p x , p y , p z ) = 0 + p x ∗ i + p y ∗ j + p z ∗ k \mathbf q_p=(0,p_x,p_y,p_z)=0+p_x*i+p_y*j+p_z*k qp​=(0,px​,py​,pz​)=0+px​∗i+py​∗j+pz​∗k
  • 2 进行四元数运算: q p ′ = q q p q − 1 \mathbf q_p'=\mathbf q\mathbf q_p\mathbf q^{-1} qp′​=qqp​q−1,其中 q − 1 \mathbf q^{-1} q−1为 q \mathbf q q的共轭: q − 1 = ( c o s θ 2 , − x s i n θ 2 , − y s i n θ 2 , − z s i n θ 2 ) \mathbf q^{-1}=(cos\frac{θ}{2},-xsin\frac{θ}{2},-ysin\frac{θ}{2},-zsin\frac{θ}{2}) q−1=(cos2θ​,−xsin2θ​,−ysin2θ​,−zsin2θ​)
  • 3 产生的 q p ′ \mathbf q_p' qp′​一定是纯四元数,也就是说它的第一项为0,有如下形式: q p ′ = ( 0 , p x ′ , p y ′ , p z ′ ) = 0 + p x ′ ∗ i + p y ′ ∗ j + p z ′ ∗ k \mathbf q_p'=(0,p_x',p_y',p_z')=0+p_x'*i+p_y'*j+p_z'*k qp′​=(0,px′​,py′​,pz′​)=0+px′​∗i+py′​∗j+pz′​∗k
    后三项 ( p x ′ , p y ′ , p z ′ ) (p_x',p_y',p_z') (px′​,py′​,pz′​)就是旋转变换后的坐标向量。

因此,引入四元数后,对于三维坐标的旋转,可以通过四元数乘法直接操作,与旋转矩阵操作可以等价,没有轴角计算的奇点现象,表示方式更加紧凑,计算量也可以小一些。
同理,如果你有一个四元数: q = ( q 0 , q 1 , q 2 , q 3 ) = ( c o s θ 2 , x s i n θ 2 , y s i n θ 2 , z s i n θ 2 ) \mathbf q=(q_0,q_1,q_2,q_3)=(cos\frac{θ}{2},xsin\frac{θ}{2},ysin\frac{θ}{2},zsin\frac{θ}{2}) q=(q0​,q1​,q2​,q3​)=(cos2θ​,xsin2θ​,ysin2θ​,zsin2θ​),那么,它对应一个以向量 ( x , y , z ) (x,y,z) (x,y,z)为轴旋转θ角度的旋转操作。

4.2 四元数与旋转矩阵

已知四元数 q = ( q 0 , q 1 , q 2 , q 3 ) \mathbf q=(q_0,q_1,q_2,q_3) q=(q0​,q1​,q2​,q3​),可求得旋转矩阵
R = [ 2 q 0 2 + 2 q 1 2 − 1 2 q 1 q 2 + 2 q 0 q 3 2 q 1 q 3 − 2 q 0 q 2 2 q 1 q 2 − 2 q 0 q 3 2 q 0 2 + 2 q 2 2 − 1 2 q 2 q 3 + 2 q 0 q 1 2 q 1 q 3 + 2 q 0 q 2 2 q 2 q 3 − 2 q 0 q 1 2 q 0 2 + 2 q 3 2 − 1 ] R=\left[\begin{matrix} 2q_0^2+2q_1^2-1&2q_1q_2+2q_0q_3&2q_1q_3-2q_0q_2\\ 2q_1q_2-2q_0q_3&2q_0^2+2q_2^2-1&2q_2q_3+2q_0q_1\\ 2q_1q_3+2q_0q_2&2q_2q_3-2q_0q_1&2q_0^2+2q_3^2-1\\ \end{matrix}\right] R=⎣⎡​2q02​+2q12​−12q1​q2​−2q0​q3​2q1​q3​+2q0​q2​​2q1​q2​+2q0​q3​2q02​+2q22​−12q2​q3​−2q0​q1​​2q1​q3​−2q0​q2​2q2​q3​+2q0​q1​2q02​+2q32​−1​⎦⎤​
反之,已知旋转矩阵 [ r 11 r 12 r 13 r 21 r 22 r 23 r 31 r 32 r 33 ] \left[\begin{matrix} r_{11}&r_{12}&r_{13} \\ r_{21}&r_{22}&r_{23} \\ r_{31}&r_{32}&r_{33} \end{matrix}\right] ⎣⎡​r11​r21​r31​​r12​r22​r32​​r13​r23​r33​​⎦⎤​,求四元数,分为两种情况:
情况1:
q 0 = 1 + r 11 + r 22 + r 33 2 q 1 = r 32 − r 23 4 q 0 , q 2 = r 13 − r 31 4 q 0 , q 3 = r 21 − r 12 4 q 0 , q_0=\frac{\sqrt{1+r_{11}+r_{22}+r_{33}}}{2}\\ q_1=\frac{r_{32}-r_{23}}{4q_0},q_2=\frac{r_{13}-r_{31}}{4q_0},q_3=\frac{r_{21}-r_{12}}{4q_0}, q0​=21+r11​+r22​+r33​ ​​q1​=4q0​r32​−r23​​,q2​=4q0​r13​−r31​​,q3​=4q0​r21​−r12​​,
情况2:如果 q 0 q_0 q0​趋近于0,则求解四元数过程为:
2.1 如果 m a x ( r 11 , r 22 , r 33 ) = r 11 max(r_{11},r_{22},r_{33})=r_{11} max(r11​,r22​,r33​)=r11​,
t = 1 + r 11 − r 22 − r 33 q 0 = r 32 − r 23 t , q 1 = t / 4 , q 2 = r 13 + r 31 t , q 3 = r 12 + r 21 t t=\sqrt{1+r_{11}-r_{22}-r_{33}}\\ q_0=\frac{r_{32}-r_{23}}{t},q_1=t/4,q_2=\frac{r_{13}+r_{31}}{t},q_3=\frac{r_{12}+r_{21}}{t} t=1+r11​−r22​−r33​ ​q0​=tr32​−r23​​,q1​=t/4,q2​=tr13​+r31​​,q3​=tr12​+r21​​
2.2 如果 m a x ( r 11 , r 22 , r 33 ) = r 22 max(r_{11},r_{22},r_{33})=r_{22} max(r11​,r22​,r33​)=r22​,
t = 1 − r 11 + r 22 − r 33 q 0 = r 13 − r 31 t , q 1 = r 12 + r 21 t , q 2 = t / 4 , q 3 = r 32 + r 23 t t=\sqrt{1-r_{11}+r_{22}-r_{33}}\\ q_0=\frac{r_{13}-r_{31}}{t},q_1=\frac{r_{12}+r_{21}}{t},q_2=t/4,q_3=\frac{r_{32}+r_{23}}{t} t=1−r11​+r22​−r33​ ​q0​=tr13​−r31​​,q1​=tr12​+r21​​,q2​=t/4,q3​=tr32​+r23​​
2.3 如果 m a x ( r 11 , r 22 , r 33 ) = r 33 max(r_{11},r_{22},r_{33})=r_{33} max(r11​,r22​,r33​)=r33​,
t = 1 − r 11 − r 22 + r 33 q 0 = r 21 − r 12 t , q 1 = r 13 + r 31 t , q 2 = r 23 − r 32 t , q 3 = t / 4 t=\sqrt{1-r_{11}-r_{22}+r_{33}}\\ q_0=\frac{r_{21}-r_{12}}{t},q_1=\frac{r_{13}+r_{31}}{t},q_2=\frac{r_{23}-r_{32}}{t},q_3=t/4 t=1−r11​−r22​+r33​ ​q0​=tr21​−r12​​,q1​=tr13​+r31​​,q2​=tr23​−r32​​,q3​=t/4

参考

简书:姿态描述—四元数,旋转矩阵以欧拉角
知乎:如何形象地理解四元数?
旋转矩阵、欧拉角、四元数理论及其转换关系
三维重建学习(1):基础知识:旋转矩阵与旋转向量

刚体姿态及旋转的表示方法相关推荐

  1. 刚体姿态运动学(二)旋转的微分形式——角速度、欧拉角速度、四元数导数、旋转矩阵导数

    刚体姿态运动学(二)姿态的微分形式--角速度.欧拉角导数.四元数导数.旋转矩阵导数 上一篇我们讲了姿态的表达方式及其转换,可以说还是比较简单的.接下来面临的问题是,我们不仅想知道刚体的姿态,还想知道姿 ...

  2. 【Nokov】关于动捕系统获取刚体姿态的说明

    动作捕捉系统Nokov获取刚体的姿态信息 前言:对于动捕系统软件Seeker的基本使用以及获取单个Marker的位置操作已经比较熟悉了,对于机械臂而言,接下来就是获取它的姿态信息,经过昨天下午的操作后 ...

  3. 旋转框检测方法综述:RotateAnchor系列

    ↑ 点击蓝字 关注极市平台 作者丨emiya@知乎 来源丨https://zhuanlan.zhihu.com/p/105881332 极市导读 本文主要介绍了RRPN.R3Det.ROITransf ...

  4. ai如何旋转画布_ai中怎么使用旋转工具制作旋转对称图?ai中使用旋转工具制作旋转对称图的方法...

    ai是一款可以在线编辑的位图软件,你知道ai中怎么使用旋转工具制作旋转对称图的吗?接下来我们一起往下看看ai中使用旋转工具制作旋转对称图的方法吧. 方法步骤 1.我们需要先打开ai软件,按ctrl+N ...

  5. SCRDet:Towards More Robust Detection for Small, Cluttered and Rotated Objects(摇杆旋转目标检测方法)

    文章目录 SCRDet:Towards More Robust Detection for Small, Cluttered and Rotated Objects(遥感旋转目标检测方法) 一.论文摘 ...

  6. python动态旋转图片_python简单实现旋转图片的方法

    本文实例讲述了python简单实现旋转图片的方法.分享给大家供大家参考.具体实现方法如下: # rotate an image counter-clockwise using the PIL imag ...

  7. CAD中怎么旋转光标?CAD旋转光标的方法步骤

    CAD中怎么旋转光标?浩辰CAD软件作为一款拥有自主核心技术的CAD平台软件产品,提供了CAD旋转光标命令,本节课程就和小编一起来了解一下浩辰CAD软件中CAD旋转光标的方法步骤吧! CAD旋转光标命 ...

  8. 物体姿态表示的几种方法总结

    遇到了配准中物体姿态旋转的问题,书上指出了用了欧拉角和四元数法,查询相关博客,发现很多博客加上轴角法和旋转矩阵方法,对于旋转矩阵特别困惑,参考了csdn,知乎,维基做一个总结,如下: 1.常用方法:欧 ...

  9. ICLR 2019 | 基于复杂空间关系旋转的知识表示方法

    作者丨王金梦 学校丨东南大学硕士生 研究方向丨知识图谱.表示学习 动机 知识图谱通常是不完全的,因此预测缺失的链路是一项基本问题,在链路预测任务上,已有大量的研究学习实体和关系的低维表示,这些方法的普 ...

最新文章

  1. 芯片植入:“增强人类”的生物黑科技
  2. 面向连接的Socket Server的简单实现
  3. python与php8-python和php对比
  4. 有时间看下这个,分布式缓存,提高并发的
  5. Oracle与MySQL性能比较
  6. 李安的电影梦by李安
  7. 网管必杀技之VLAN的网络管理
  8. 如何将zipoutputstream返回_嫦娥五号返回器要“跳”一下再回地球!这一“跳”大有讲究...
  9. [转]SQL Server 安全性概論與無法刪除資料庫使用者的解決辦法
  10. 基于改进蜂群算法和灰色模型的管道腐蚀预测 - 附代码
  11. 国家级精品课程 电子资源 网址
  12. 这有10款好玩游戏,游戏迷速来围观
  13. pairing-friendly曲线家族
  14. Log4j的基本应用
  15. flutter gridview item 有空隙
  16. JSP招标投标管理系统JSP企业招标管理系统JSP网上招标管理系统JSP招标系统JSP投标系统
  17. nginx 异常长连接快速断开
  18. 场内交易基金实时数据 API 数据接口
  19. 吉林考研计算机专业,2017计算机专业学校考研难度排行榜,计算机考研难度排名(2)...
  20. 【UEFI基础】UEFI变量基础

热门文章

  1. 04.一语详解SpringBoot全局配置文件
  2. Schema简单的类型
  3. 2019武科大校赛游记
  4. mysql 批量插入300万条测试数据
  5. NetNewsWire 6.0b3 (最好用的RSS新闻订阅客户端)
  6. 超详细的pxe实现系统自动安装的图文说明————设置主机名和静态IP
  7. 关于学完黑马小程序的反思:
  8. iOS企业开发者计划注册流程,诸多埋伏~
  9. 网站前端设计中解决不同分辨率电脑测量尺寸不同的问题
  10. 阿里云服务器宝塔phpstudyIIS建站