📄 h.m
字号:
function H=H(x1,x2,k,n)
%计算单应的函数x2=H*x1;x1,x2为3xn矩阵
%x1,x2分别为两幅图像的匹配点矩阵
%n为匹配对的个数(n>=4),k为维数
if k==2
for i=1:n
A(2*(i-1)+1,:)=[zeros(1,3) -x2(3,i)*x1(:,i)' x2(2,i)*x1(:,i)'];
A(2*(i-1)+2,:)=[x2(3,i)*x1(:,i)' zeros(1,3) -x2(1,i)*x1(:,i)'];
end
end
if k==3
for i=1:n
A(3*(i-1)+1,:)=[x1(:,i)'*x2(4,i) zeros(1,8) -x1(:,i)'*x2(1,i)];
A(3*(i-1)+2,:)=[zeros(1,4) x1(:,i)'*x2(4,i) zeros(1,4) -x1(:,i)'*x2(2,i) ];
A(3*(i-1)+3,:)=[zeros(1,8) x1(:,i)'*x2(4,i) -x1(:,i)'*x2(3,i)];
end
end
[U,D,V]=svd(A);
h=V(:,(k+1)^2)/V((k+1)^2,(k+1)^2);
H=reshape(h,k+1,k+1)';
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -