实验 用立体镜观察立体像片试验报告
发布时间:2024-08-30
发布时间:2024-08-30
摄影测量技术专业课实验报告
实验 用立体镜观察立体像片
实验目的
理解人造立体观察的原理和方法,了解人造立体视觉的条件,学会使用立体镜观察立体像对。
实验仪器与材料
桥式立体镜 两对立体像片
实验原理
用双眼观察空间物体时,可以容易地判定物体的远近,这种现象叫做天然立体观察。 借助空间物体的构像信息而在视觉上感受出空间物体的存在,称为人造立体视觉。 人造立体视觉的过程:空间景物在感光材料上构像,人眼观察构像的像 片而产生生理视差,重建空间景物立体视觉。
人造立体视觉的条件:
1.两张像片必须是在两个不同位置对同一景物的立体像对; 2.每只眼睛必须只能观察像对的一张像片(分像条件);
3.两像片上的相同景物(同名像点)的连线与眼睛基线大致平行; 4.两像片的比例尺相近(<15 %)。
实验过程
1.理解人造立体观察的原理和方法,了解人造立体视觉的条件,学会使用立体镜观察立体像对;
2.区分立体像对的左片和右片;
3.找出立体像对的同名像点,将左右两片分别放在立体镜下观察,并调整相片,使同名像点的连线方向与眼睛基线大致平行,同名像点重合,按照以下方式观察立体影像: ①左眼看左片,右眼看右片;结果:正立体效应 ②左眼看右片,右眼看左片;结果:②反立体效应
③左片逆时针旋转90度,右片顺时针旋转90度,左眼看左片,右眼看右片;结果:③零立体效应
空间后方交会和前方交会实验报告
1 实习目的:
用matlab6.0编写一个完整的单像空间后方交会和双像前方交会程序,通过对提供的试验数据进行计算,输出像片外方位元素和像片上的点坐标所对应的地面点坐标,并评定精度。深入理解双像空间后方交会和单片空间前方交会的原理,体会在有多余观测情况下,用最小二乘平差方法编程实现解求加密点坐标的过程。通过上机调试程序加强动手能力的培养,通过对实验结果的分析,增强综合运用所学知识解决实际问题的能力。 2实习环境:
2.1硬件环境:window操作系统 2.2软件环境:matlab 6.0 3实习内容:
利用一定数量的地面控制点,根据共线条件方程求解像片外方位元素:
摄影测量技术专业课实验报告
4.1 已知航摄仪内方位元素f=153.24mm,Xo=-0.180,Yo=0。
5实习过程:
5.1学习单张像片空间后方交会的基本理论,掌握其基本思想。 5.2在纸上绘出空间后方交会的计算机程序框图。
为了能够在宏观上指导我们编写程序,我们需要在草稿纸上绘出程序框图。框图如下:
↓
↓
↓
︱ 小 ↓完
于 限 ↓
差 否 否 ↓
否︱ ↓是
︱输出中间结果和出错信息 ↓ ︱ 非正常结束
摄影测量技术专业课实验报告
5.3. 按照程序框图编写程序。
程序代码如下:必须有注释 clear;clc; f=153.24/1000; x0=-0.180; y0=0.0;
x=([-86.15,-53.40,-14.78,10.46]-x0)./1000; y=([-68.99,82.21,-76.63,67.43]-y0)./1000; X=[36589.41,37631.08,39100.97,40426.54]; Y=[25273.32,31324.51,24934.98,30319.81]; Z=[2195.17,728.69,2386.50,757.31]; X0=mean(X); Y0=mean(Y); fai=0;w=0;k=0; scale=0; for i=2:4
dX=X(i)-X(1);dY=Y(i)-Y(1); dx=x(i)-x(1);dy=y(i)-y(1);
scale=scale+sqrt(dX*dX+dY*dY)/sqrt(dx*dx+dy*dy); end
scale=scale/3;
Z0=mean(Z)+f*scale;
M0=[X0 Y0 Z0 fai w k]'; count=0; M1=999;
while(max(abs(M1))>0.000001&&count<50) A=[];L=[];
a1=cos(fai)*cos(k)-sin(fai)*sin(w)*sin(k); a2=-cos(fai)*sin(k)-sin(fai)*sin(w)*cos(k); a3=-sin(fai)*cos(w); b1=cos(w)*sin(k); b2=cos(w)*cos(k); b3=-sin(w);
c1=sin(fai)*cos(k)+cos(fai)*sin(w)*sin(k); c2=-sin(fai)*sin(k)+cos(fai)*sin(w)*cos(k); c3=cos(fai)*cos(w); for i=1:4
XX=a1*(X(i)-X0)+b1*(Y(i)-Y0)+c1*(Z(i)-Z0); YY=a2*(X(i)-X0)+b2*(Y(i)-Y0)+c2*(Z(i)-Z0); ZZ=a3*(X(i)-X0)+b3*(Y(i)-Y0)+c3*(Z(i)-Z0); a11=1/ZZ*(a1*f+a3*(x(i))); a12=1/ZZ*(b1*f+b3*(x(i)));
摄影测量技术专业课实验报告
a13=1/ZZ*(c1*f+c3*(x(i))); a21=1/ZZ*(a2*f+a3*(y(i))); a22=1/ZZ*(b2*f+b3*(y(i))); a23=1/ZZ*(c2*f+c3*(y(i)));
a14=(y(i))*sin(w)-((x(i))/f*((x(i))*cos(k)-(y(i))*sin(k))+f*cos(k))*cos(w);
a15=-f*sin(k)-(x(i))/f*((x(i))*sin(k)+(y(i))*cos(k)); a16=(y(i));
a24=-(x(i))*sin(w)-((y(i))/f*((x(i))*cos(k)-(y(i))*sin(k))-f*sin(k))*cos(w);
a25=-f*cos(k)-(y(i))/f*((x(i))*sin(k)+y((i))*cos(k)); a26=-(x(i));
T1=[a11,a12,a13,a14,a15,a16;a21,a22,a23,a24,a25,a26]; T2=[x(i)+f*XX/ZZ;y(i)+f*YY/ZZ]; A=[A;T1]; L=[L;T2];
end
M1=inv(A'*A)*(A'*L); M0=M0+M1; X0=M0(1); Y0=M0(2); Z0=M0(3); fai=M0(4); w=M0(5); k=M0(6);
count=count+1; end
5.4程序结果显示 M0 =
40056.838157237 27253.8798105554 7398.85531491011 -0.0530417357787924 0.0262411921086106 -0.0873096697774202
count = 6
摄影测量技术专业课实验报告
5.6学习双像片空间前方交会的基本理论,掌握其基本思想。 5.7在纸上绘出空间前方交会的计算机程序框图。
为了能够在宏观上指导我们编写程序,我们需要在草稿纸上绘出程序框图。框图如下:
↓
↓
︱ ↓完
︱
5.8按照程序框图编写程序。
程序代码如下:必须有注释 clc
x0=-0.180; y0=0.00;f=0.101400; X1=1596.070789584793100; Y1=727.985181253588280; Z1=2757.816945770138800; fai1=-0.003583353403106; w1=-0.008945322105745; k1=-0.002050593799908; XYZ1=[X1;Y1;Z1];
X2=2152.643085482715400; Y2=711.380277616443550;
摄影测量技术专业课实验报告
Z2=2753.805719037688000; fai2=0.008401232256185; w2=0.016493163167405; k2=0.00806047485843;
XYZ2=[X2;Y2;Z2];
R1=[cos(fai1)*cos(k1)-sin(fai1)*sin(w1)*sin(k1)
-cos(fai1)*sin(k1)-sin(fai1)*sin(w1)*cos(k1) -sin(fai1)*cos(w1) cos(w1)*sin(k1) cos(w1)*cos(k1) -sin(w1) sin(fai1)*cos(k1)+cos(fai1)*sin(w1)*sin(k1)
-sin(fai1)*sin(k1)+cos(fai1)*sin(w1)*cos(k1) cos(fai1)*cos(w1)];
R2=[cos(fai2)*cos(k2)-sin(fai2)*sin(w2)*sin(k2)
-cos(fai2)*sin(k2)-sin(fai2)*sin(w2)*cos(k2) -sin(fai2)*cos(w2) cos(w2)*sin(k2) cos(w2)*cos(k2) -sin(w2) sin(fai2)*cos(k2)+cos(fai2)*sin(w2)*sin(k2)
-sin(fai2)*sin(k2)+cos(fai2)*sin(w2)*cos(k2) cos(fai2)*cos(w2)];
load xy12;
n=length(xy1(:,1));
xyf1=[xy1(:,1)-x0 xy1(:,2)-y0 -f.*ones(n,1)]'; xyf2=[xy2(:,1)-x0 xy2(:,2)-y0 -f.*ones(n,1)]';
uvw1=R1*xyf1; uvw2=R2*xyf2;
bu=X2-X1; bv=Y2-Y1 ;bw=Z2-Z1; XYZ=zeros(3,n); for i=1:n
N1=(bu*uvw2(3,i)-bw*uvw2(1,i))/(uvw1(1,i)*uvw2(3,i)-uvw1(3,i)*uvw2(1,i));
N2=(bu*uvw1(3,i)-bw*uvw1(1,i))/(uvw1(1,i)*uvw2(3,i)-uvw1(3,i)*uvw2(1,i));
UVW1=N1*uvw1(:,i); UVW2=N2*uvw2(:,i);
XYZ(:,i)=(XYZ1+UVW1+UVW2+XYZ2)/2; end
XYZ=XYZ'
5.9 程序结果显示
摄影测量技术专业课实验报告
6.0 实习心得与总结:
1、在实验《用立体镜观察立体像片》中,学习使用桥式立体镜观测两对立体像片,学会了使用立体镜观察立体像对,理解人造立体观察的原理和方法,了解人造立体视觉的条件。
2、在实验《空间后方交会和前方交会》中,用matlab6.0编写一个完整的单像空间后方交会和双像前方交会程序,通过对提供的试验数据进行计算,输出像片外方位元素和像片上的点坐标所对应的地面点坐标,并评定精度。
3、深入理解双像空间后方交会和单片空间前方交会的原理,体会在有多余观测情况下,用最小二乘平差方法编程实现解求加密点坐标的过程。通过上机调试程序加强动手能力的培养,通过对实验结果的分析,增强综合运用所学知识解决实际问题的能力。
4、通过两次实验,使我对课本的知识有了更深固的了解,增强了解决实际问题的能力,讲理论用于实践,加强了对知识的认识。