Я пытаюсь создать ортогональную систему координат на основе двух «почти» перпендикулярных векторов, которые выводятся из медицинских изображений. У меня есть два вектора, например:
Z=[-1.02,1.53,-1.63];
Y=[2.39,-1.39,-2.8];
которые почти перпендикулярны, так как их внутренний продукт равен 5e-4.
Затем я нахожу их векторное произведение, чтобы создать третью основу:
X=cross(Y,Z);
Даже этот третий вектор не полностью ортогонален Z
и Y
, так как их внутренние произведения имеют порядок -15 и -16, но я думаю, что это почти нуль. Чтобы использовать этот набор векторов в качестве ортогональной основы для локальной системы координат, я предполагаю, что они должны быть почти полностью перпендикулярны. Сначала я подумал, что могу сделать это, округлив свои векторы до менее десятичных цифр, но не помогло. Думаю, мне нужно найти способ немного изменить исходные векторы, чтобы сделать их более перпендикулярными, но я не знаю, как это сделать.
Буду признателен за любые предложения.