⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mirrorposfocalpperr.m

📁 Matlab程序
💻 M
字号:
function [resVec, viewVecCell, allViews, normalAngle, RR_Rec, wSolnVec] = MirrorPosFocalPpErr( vec, vecScl, polyBoundaryVecCell )

vec = vec .* vecScl;

numImages = length(polyBoundaryVecCell);

ensure('numImages*5+4==length(vec)')

normalAngle = vec(end-3);
efl = vec(end-2);
p0 = [vec(end-1);vec(end)];

R = [cos(normalAngle) -sin(normalAngle) 0; sin(normalAngle) cos(normalAngle) 0; 0 0 1]; %rotate about Z-axis

m1Base =     [1;0;0];
m2Base = R * [1;0;0];

allViews.camera.efl = efl;
allViews.camera.u0 = p0(1);
allViews.camera.v0 = p0(2);
allViews.camera.kappa1 = 0;

for imgLoop = 1:numImages,    
    
    wSoln = vec(imgLoop);
    
    wSolnVec(imgLoop) = wSoln;
    quat  = vec( numImages + 4*(imgLoop-1) + (1:4) );    
    RR = QuaternionToRotationMatrix(quat);
    
   %if any( not(isreal(RR)) )
    %RR = eye(3);
    %end
    
    RR_Rec{imgLoop} = RR;
    
    %RR
    
    m1Hat = RR * m1Base;       
    m2Hat = RR * m2Base;
    
    M1_pos = -m1Hat;
    M2_pos = -m2Hat * wSoln;
    
    for viewLoop = 1:5,
        viewVecCell{imgLoop}(viewLoop).camera = allViews.camera;
        viewVecCell{imgLoop}(viewLoop).boundary = polyBoundaryVecCell{imgLoop}{viewLoop};
    end
    
    viewVecCell{imgLoop}(1).camera.pose = eye(4);
%    norm(m1Hat)
    viewVecCell{imgLoop}(2).camera.pose = ReflectionMatrixFromVecPoint( m1Hat, M1_pos ) * viewVecCell{imgLoop}(1).camera.pose ;
    viewVecCell{imgLoop}(3).camera.pose = ReflectionMatrixFromVecPoint( m2Hat, M2_pos ) * viewVecCell{imgLoop}(1).camera.pose ;
    viewVecCell{imgLoop}(4).camera.pose = ReflectionMatrixFromVecPoint( m1Hat, M1_pos ) * viewVecCell{imgLoop}(3).camera.pose ;
    viewVecCell{imgLoop}(5).camera.pose = ReflectionMatrixFromVecPoint( m2Hat, M2_pos ) * viewVecCell{imgLoop}(2).camera.pose ;
    
end


resVec = [];
%save
for imgLoop = 1:numImages,  
    
  %  resVec = [ resVec; PixelEtcErrForImageSet( viewVecCell{imgLoop} )  ];
    resVec = [ resVec; PixelEtErrMex( viewVecCell{imgLoop} )  ];

end

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -