A题 太阳影子定位
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
A题太阳影子定位
摘要
一.问题重述
如何确定视频的拍摄地点和拍摄日期是视频数据分析的重要方面,太阳影子定位技术就是通过分析视频中物体的太阳影子变化,确定视频拍摄的地点和日期的一种方法。
1.建立影子长度变化的数学模型,分析影子长度关于各个参数的变化规律,并应用你们建立的模型画出2015年10月22日北京时间9:00-15:00之间天安门广场(北纬39度54分26秒,东经116度23分29秒)3米高的直杆的太阳影子长度的变化曲线。
2.根据某固定直杆在水平地面上的太阳影子顶点坐标数据,建立数学模型确定直杆所处的地点。将你们的模型应用于附件1的影子顶点坐标数据,给出若干个可能的地点。
3. 根据某固定直杆在水平地面上的太阳影子顶点坐标数据,建立数学模型确定直杆所处的地点和日期。将你们的模型分别应用于附件2和附件3的影子顶点坐标数据,给出若干个可能的地点与日期。
4.附件4为一根直杆在太阳下的影子变化的视频,并且已通过某种方式估计出直杆的高度为2米。请建立确定视频拍摄地点的数学模型,并应用你们的模型给出若干个可能的拍摄地点。
如果拍摄日期未知,你能否根据视频确定出拍摄地点与日期?
二.问题分析
本题第一问是研究太阳影子长度随各个参数的变化规律,影响太阳影子长度的因素主要有时间以及地点,也就是当地的经纬度和时间来影响太阳高度角来影响太阳影子长度。
太阳高度角:对于地球上的某个地点,太阳高度角是指太阳光的入射方向和地平面之间的夹角,专业上讲太阳高度角是指某地太阳光线与通过该地与地心相连的地表切线的夹角。根据太阳高度角的计算公式:
sin h=sin φ sin δ+cos φ cosδ cos t
即求出太阳高度角就能算出太阳影子长度。
本题第二问是根据第一问的模型通过最小二乘法拟合来判断大致的经纬度,从而确定地点。
三.模型的建立与求解
第一问,求出太阳高度角就可以求出太阳影子长度。太阳高度角随着地方时和太阳的赤纬的变化而变化。太阳赤纬(与太阳直射点纬度相等)以δ表示,观测地地理纬度用φ表示(太阳赤纬与地理纬度都是北纬为正,南纬为负),地方时(时角)以t表示,有太阳高度角的计算公式:
sin h=sin φ sin δ+cos φ cosδ cos t
即一般时间的太阳高度角,由日期可求出太阳直射点,即太阳赤纬角。这样就可以求出太阳高度角,再有l/tan h求出影长即可。
通过matlab软件,编程如下:
T=9:0.1:15;
t=(T-12)*15/180*pi;
a=0.2217*pi;
b=-10.4/180*pi;
H=sin(a)*sin(b)+cos(a)*cos(b)*cos(t);
h=asin(H);
L=3;
l=L./tan(h);
plot(T,l)
得到如下曲线:
即为长度L为3米的直杆随时间t的变化曲线,时间区间为9:00-15:00。
第二问,因为已知太阳影子的顶点坐标数据,即可根据第一问的函数确定此刻的时间和所处的经纬度,再通过matlab,利用最小二乘法做出拟合曲线,即可大致判断出当地的经纬度,从而确定可能的地点。利用matlab编程如下:
x=[1.0365
1.0699
1.1038
1.1383
1.1732
1.2087
1.2448
1.2815
1.3189
1.3568
1.3955
1.4349
1.4751
1.516
1.5577
1.6003
1.6438
1.6882
1.7337
1.7801
1.8277
];
>> y=0.4973
0.5029
0.5085
0.5142
0.5198
0.5255
0.5311
0.5368
0.5426
0.5483
0.5541
0.5598
0.5657
0.5715
0.5774
0.5833
0.5892
0.5952
0.6013
0.6074
0.6135
17:21:34
>> plot(x,y)
>> l=(x.^2+y.^2).^(1/2) l =
1.1496
1.1822
1.2153
1.2491
1.2832
1.3180
1.3534
1.3894
1.4262
1.4634
1.5015
1.5402
1.5799
1.6201
1.6613
1.7033
1.7462
1.7901
1.8350
1.8809
1.9279
>> t=[42:3:102]
t =
Columns 1 through 14
42 45 48 51 54 57 60 63 66 69 72 75 78 81 Columns 15 through 21
84 87 90 93 96 99 102
>> plot(t,l)
>> [p,s]=polyfit(x,y,1); % 调用命令polyfit计算回归参数
y1=polyval(p,x); % 计算回归模型的函数值
hold on
plot(x,y1) % 作回归方程的图形,结果如图3.15
p % 显示参数的最小二乘估计结果
p=582.1850
21.7122
可以得到如下的拟合曲线: