カメラ関節角度とカメラ姿勢の変換 ラムダの首関節構造は Rot(x,j1)・Rot(x,j2)・Rot(z,j3) である。胴体側からみて、tilt-pan となっているため、カメラロールが発生する。 このカメラロール角を求める。 カメラロールを分離するためには胴体側からpan-tilt-rollとする必要がある。 カメラロールを含んだカメラ姿勢は Rot(z,cp)・Rot(x,ct)・Rot(y,cr) と表す。 上記2式の回転行列を等価とし、整理することで求められる。 ラムダの首関節構造による回転行列m123は、 m123 = [c(j3)] [-s(j3)] [0] [c(j1+j2)s(j3)] [c(j1+j2)c(j3)] [-s(j1+j2)] [s(j1+j2)s(j3)] [s(j1+j2)c(j3)] [c(j1+j2)] カメラロールを含んだカメラ姿勢の回転行列mptrは、 mptr = [c(cp)c(cr)-s(cp)s(ct)s(cr)] [-s(cp)c(ct)] [c(cp)s(cr)+s(cp)s(ct)c(cr)] [s(cp)c(cr)+c(cp)s(ct)s(cr)] [c(cp)c(ct)] [s(cp)s(cr)-c(cp)s(ct)c(cr)] [-c(ct)s(cr)] [s(ct)] [c(ct)c(cr)] となる。 この2式より sin(ct) = s(j1+j2)c(j3) tan(cp) = -(-s(cp)c(ct)) / c(cp)c(ct) = -(-s(j3)) / c(j1+j2)c(j3) tan(cr) = -(-c(ct)s(cr)) / c(ct)c(cr) = -s(j1+j2)s(j3) / c(j1+j2) となる。 カメラ姿勢から関節角度への変換は、camera rollが与えられないため、crを含められない。 sin(j3) = s(cp)c(ct) tan(j1+j2) = sin(j1+j2)/cos(j1+j2) = s(j1+j2)c(j3)/c(j1+j2)c(j3) = s(ct) / c(cp)c(ct) となる。