From 5f3984e36c427818fe0e59ea3ffdcee483d5a652 Mon Sep 17 00:00:00 2001 From: fpa Date: Tue, 25 Apr 2017 08:55:24 +0200 Subject: [PATCH] replaced function normr() of Neural Network Toolbox by manual code --- .../Hardware/Tracking/Optitrack/ita_vu2quat.m | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/applications/Hardware/Tracking/Optitrack/ita_vu2quat.m b/applications/Hardware/Tracking/Optitrack/ita_vu2quat.m index 206803b..2f64ce1 100644 --- a/applications/Hardware/Tracking/Optitrack/ita_vu2quat.m +++ b/applications/Hardware/Tracking/Optitrack/ita_vu2quat.m @@ -52,8 +52,15 @@ if abs(dot(v,u,2)) > 1e-5 end % normalize view/up vectors -v = normr(v); -u = normr(u); +[~,colv]=size(v); +[~,colu]=size(u); +if (colv == 1) + v(~isnan(v(:,1)),:) = v(~isnan(v(:,1)),:) ./ abs(v(~isnan(v(:,1)),:)); + u(~isnan(u(:,1)),:) = u(~isnan(u(:,1)),:) ./ abs(u(~isnan(u(:,1)),:)); +else + v = sqrt( ones ./ (sum((v(~isnan(v(:,1)),:).*v(~isnan(v(:,1)),:))')) )' * ones(1,colv).*v(~isnan(v(:,1)),:); + u = sqrt( ones ./ (sum((u(~isnan(u(:,1)),:).*u(~isnan(u(:,1)),:))')) )' * ones(1,colu).*u(~isnan(u(:,1)),:); +end % calculate side vector s = cross(v, u); -- 2.22.0