已经知道了四组对应点的坐标,需要matlab求解矩阵C,哪位大神会列方程啊?求教

如题所述

不知为什么从(3-4)得到(3-5)这样的形式?
完全可以写成更简单的式子吧:
u = m0*x + m1*y + m2
v = m3*x + m4*y + m5
0 = m6*x + m7*y
改写成以mi为未知数的线性方程组 A*m=b,其中
m = [m0; m1; ... m7]
A = [ x y 1 0 0 0 0 0; 0 0 0 x y 1 0 0; 0 0 0 0 0 x y]
b = [u; v; 0]
对于4组x、y、u、v,构成12个方程,直接用 m=A\b 求解即可。追问

因为m6*x+m7*y=0;(3-5)两式后面的两项无论是乘u还是乘v,之后都是0,就这样写了。大神,我还不懂,具体的程序怎么写?怎么写出12个方程

追答

个人认为,写成(3-5)的形式没有任何好处。

具体程序,把4组x、y、u、v分别代入A、b,得到A1~A4,b1~b4,然后

m = [A1;A2;A3;A4] \ [b1;b2;b3;b4]

追问

大神,非常感谢

温馨提示:答案为网友推荐,仅供参考
相似回答