算法用 VC++ 6.0 编:
假设 6 个控制点的的(XYZ)坐标为
DataType control[7][4]=
{
{0,0,0,0},
{0,1.311,1.751,1.951},
{0,5.121,5.531,5.941},
{0,10.511,10.751,10.191},
{0,15.311,15.551,15.971},
{0,20.711,20.551,20.981},
{0,25.311,25.541,25.951},
};
并且 6 个控制点在图像内的坐标(XY)
DataType photo_control[7][3] =
{
{0,0,0},
{0,1.211,1.531},
{0,5.141,5.551},
{0,10.161,10.751},
{0,15.181,15.591},
{0,20.121,20.541},
{0,25.151,25.561},
};
将坐标代入下式,用高斯消元法,代入下式,可解得各 L 系数
0
00001
10000
00001
10000
00001
6
2
2
1
1
11
10
9
8
7
6
5
4
3
2
1
666666666
222222222
222222222
111111111
111111111
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
x
y
x
y
x
l
l
l
l
l
l
l
l
l
l
l
ZxYxXxZYX
ZyYyXyZYX
ZxYxXxZYX
ZyYyXyZYX
ZxYxXxZYX
������������
(方程 1)
同样,己知两张像片的
l
系数分别为
),,,(
1121
lll �
及
),,(
'
11
'
2
'
1
lll �
,当略去一个方程式
时,有以下解
),,( ZYX
的方程组: