3

医療画像から推定される2つの「ほぼ」垂直なベクトルに基づいて、直交座標系を作成しようとしています。たとえば、次の 2 つのベクトルがあります。

Z=[-1.02,1.53,-1.63];
Y=[2.39,-1.39,-2.8];

これらは内積が 5e-4 に等しいため、ほぼ垂直です。

次に、それらの外積を見つけて、3 番目の基底を作成します。

X=cross(Y,Z);

この 3 番目のベクトルでさえ、ZYに完全に直交しているわけではありません。これらの内積は -15 と -16 のオーダーになっていますが、ほぼゼロであると思います。この一連のベクトルをローカル座標系の直交基準として使用するには、それらがほぼ完全に垂直である必要があると想定します。ベクトルを小数点以下に丸めることでこれを行うことができると最初に考えましたが、役に立ちませんでした。初期ベクトルを少し変更してより垂直にする方法を見つける必要があると思いますが、その方法がわかりません。

提案をいただければ幸いです。

4

2 に答える 2

3

上で指摘したように、グラム-シュミットは正しい。

基本的に、Y から Z の方向にある Y のコンポーネントを減算します (注: Y の代わりに Z を操作することもできます)。

Y の Z 方向の成分は、次の式で与えられます。

   dot(Y,Z)*Z/(norm(Z)^2)

(Z への Y の射影)

Y が Z に直交する場合、これは 0 であることに注意してください。

そう:

   Y = Y - dot(Y,Z)*Z/(norm(Z)^2)

Z は変更されません。

于 2013-02-01T03:23:25.943 に答える
0

V=Y+aZ Z dot V = 0 とすると、a を解いて V を得ることができます V と Z を基礎として使用します

目的の精度を得るには、ベクトルを正規化し、double 型を使用する必要がある場合があります。

于 2013-02-01T03:16:17.643 に答える