内容发布更新时间 : 2024/11/8 14:46:07星期一 下面是文章的全部内容请认真阅读。
标准
利用影子确定视频拍摄地点和日期的
建模和算法
摘要
本文研究的问题是如何通过分析视频中物体的太阳影子变化,确定视频拍摄的地点和日期。
建模整体思路是,先建立一系列分析用到的物理量,设定一些假设和约束条件,使得问题求解有可行性,之后对这些物理量进行演绎。
建模使用的软件平台主要是matlab,分析用到的主要参量是太阳赤纬、时角、高度角、方位角、纬度,分析过程当中用到的方法有,建立物理概念,明确物理意义,比如引用天球坐标系的概念,在天球坐标系的基础上进行物理分析,通过对建立的参变量进行物理关系的推导,形成公式体系进行求解,对题目所给予的影子坐标数据进行适当变换处理,使用matlab进行合理的拟合,对于用公式法和方程法没法顺利解决的问题使用穷举法作为解题的补充,对于视频中坐标的取法用到了坐标转换的思想。
cos?sin?其中主要公式有 1.sinA?
coshH2.?tanh L3. cosA?sinhsin??sin?
coshcos?4. sinh=cosΩcosφcosδ+sinφsinδ
第一问,通过物理量变换,先求出高度角,进而得到影子长度与时间变化关系。 第二问,拟合点求经度,取点套公式求纬度。
第三问,方程思想,过程复杂,采用穷举法近似实现求解。
第四问,难点在于通过视频分析,得到影子端点的变化坐标,进而将问题转化成第二问,已知日期(太阳赤纬),时间(时角),求解经度纬度。
关键词:天球坐标系 物理量演绎分析 matlab数据拟合分析 二元方程组近似穷举法
坐标转换思想
文案
标准
1.问题重述与分析
如何确定视频的拍摄地点和拍摄日期是视频数据分析的重要方面,太阳影子定位技术就是通过分析视频中物体的太阳影子变化,确定视频拍摄的地点和日期的一种方法。
1. 建立影子长度变化的数学模型,分析影子长度关于各个参数的变化规律,并应用你们建立的模型画出2015年10月22日北京时间9:00-15:00之间天安门广场(北纬39度54分26秒,东经116度23分29秒)3米高的直杆的太阳影子长度的变化曲线。
分析:模型的参数有经度(地方时),纬度,日期(太阳赤纬)
如果能够根据这三个变量建立相关模型,则地球上任意地点任意时刻的物体影子的形状和方位都能够确定
2. 根据某固定直杆在水平地面上的太阳影子顶点坐标数据,建立数学模型确定直杆所处的地点。将你们的模型应用于附件1的影子顶点坐标数据,给出若干个可能的地点。
分析:这属于一个模型的逆过程,根据已经得到的影子的轨迹形状、日期来推断地点
3. 根据某固定直杆在水平地面上的太阳影子顶点坐标数据,建立数学模型确定直杆所处的地点和日期。将你们的模型分别应用于附件2和附件3的影子顶点坐标数据,给出若干个可能的地点与日期。
分析:第三问与第二问的不同在于第二问有具体的日期,而第三问中并没有具体的日期这就为求解带来了一定的不确定性和难度 4.
(1)附件4为一根直杆在太阳下的影子变化的视频,并且已通过某种方式估计出直杆的高度为2米。请建立确定视频拍摄地点的数学模型,并应用你们的模型给出若干个可能的拍摄地点。
(2)如果拍摄日期未知,你能否根据视频确定出拍摄地点与日期?
分析:根据视频提取某一时刻的影子的长度,视角之间的转换关系,方向的确定都是值得分析的地方
2.模型约定与假设
本文采用如下假定: 1.太阳光线视为平行光
文案
标准
2.研究地面上的杆子的时候地面视为平的
3.一年365天 一天24h 南北回归线纬度为23°26′ 4.本文采用天球坐标系
5.宏观上设地球为光滑标准球体 不考虑大气层折射影响 6.数据中的时间在处理的时候都应该处理成当地的地方时
7.地球的自转和公转都是匀速运动,其中,公转为圆形轨道
3.总体模型及相关概念建立
1)地平坐标系(天球坐标系之一) 过观测者O (天球中心)的铅垂线﹐延伸后与天球交于两点﹐朝上的一点Z 称为天顶﹐朝下的一点Z ’称为天底(右下图)
过天顶Z 和天体作一垂直圈﹐
它与地平圈交于垂足D 点﹐则天体 在地平坐标系中的第一坐标就是大圆弧D 或极距 Z 。D =h 称为地平纬度﹐又称地平高度﹐简称高度﹔而Z= 称为天顶距。地平高度也可以用平面角OD 来量度﹐而天顶距也可以用平面角OZ 来量度。天球上与地平圈相平行的小圆称为地平纬圈﹐也称平行圈。同一地平纬圈上任意点的地平高度都是相同的﹐因此可以称为等高圈。南点S 与垂足D 之间的大圆弧SD =a ﹐是地平坐标系中的第二坐标﹐称为地平经度或天文方位角﹐简称方位角。方位角也可以用平面角SOD 来量度﹐天文学中习惯从南点起按顺时针方向量度。以地平圈为基圈﹑子午圈为主圈﹑南点为主点的坐标系称为地平坐标系。由于周日视运动﹐天体的地平坐标不断发生变化。另一方面﹐对不同的观测者﹐由于铅垂线方向的不同﹐就有不同的地平坐标系﹐同一天体也就有不同的地平坐标。 【1】 2)首先为了定义阐释诸多物理量,我们可以建立一个以观测者为原点的空间直角坐标系,将地球视为一个完美的球体,在观察者的位置我们可以做一个切面,记为H,y轴经过此面,y轴亦即东西方向,而在此平面内的过观察者的与y轴垂直的直线方向即正南正北,正北方向可以记为p,XOY平面为与赤道面平行的平面,太阳光的方向用l来表示,l与xoy平面的交角记为δ,而O-Z轴的方向,正是地球极轴指向。由地理概念易知,Ω(ω)是时角。以上都是为了求解太阳的高度角和方位角设置的参变量。 【2】 3)δ(太阳赤纬)的计算
文案
标准
选取12月22日为基准点,从这一天起到以后某一天,地球在其公转轨道上上走过一个转角,这个转角的大小记为α。其中由地理学知识容易知道,12月22日这一天太阳赤纬为南纬23°26′
将360° 365等分,易得α的计算公式α=0.9863(d2-d1)其中d1是12月22日的日期数,d2-d1的整体含义是待求日期与冬至日的日期差。 【3】 4)查资料得太阳赤纬δ
sinδ=0.39795cos[0.98563(n-173)](n为此时与1月1日距离的天数) 【4】 5)时角
由地理学知识,Ω=15*T+k(其中T为格林尼治时间,二十四小时制,k为观测点的时间,东经为正,西经为负) 【5】 6)太阳高度角
由图片易知,太阳高度角即为向量n和向量l的夹角的余角,地理意义上即为太阳光线与地平面的夹角。
如图平面过y轴,平面与oz轴的夹角为φ,由解析几何的知识可以知道平面H在空间中的单位法向量的表达式为n=(cosφ,0,sinφ),根据太阳的直射纬度(太阳赤纬)以及视角Ω可以得到单位向量l=(cosΩcosδ,sinΩsinδ,sinδ),设太阳高度角为h由余弦公式可以知道sinh=cos
n,l,综合可以知道
sinh=cosΩcosφcosδ+sinφsinδ
【6】
7)方位角的定义:太阳光的单位向量在地平面上的投影线与正南方向的射线,按照从正南方向顺时针到投影线的顺序所构成的角成为方位角。逆时针为负数,顺时针为正. 太阳的方位角A公式经过推导可知是
cos?sin?sinA?
cosh cosA?sinhsin??sin? 【7】
coshcos?
文案
标准
若规定东西方向为x方向则,南北方向为y方向,则tanA=x/y
从而,太阳下,竹竿影子的端点关于一系列参数的方程就得到了,为接下来的一些工作奠定了基础。
4.具体模型建立与求解
4.1第一问建模与求解
分析:第一问当中,确定太阳长度的变化曲线即确定太阳影子长度和时间的函数关系,利用高度角、杆长、影子长度的关系,将求解影子长度转化成求高度角,通过太阳赤纬,地理纬度换算,时角换算来得到太阳高度角随时间的变化关系,进而求出影长的变化,同时给出了,影子变化的实际轨迹图,非常直观。
如图,在被投影物体长度一定的情况下,影子长度的变化主要取决于夹角A的值,而夹角A与太阳高度角B相等,于是,决定影子长度的唯一因素就是太阳高度角。而太阳高度角主要由三个因素影响。1.太阳赤纬。2.地理纬度。3.地方时。
三个因素的求解方法:
1.太阳赤纬。太阳赤纬的变化是由于地球公转所引起的,因此,将公转的一周365等分,并得到此时与12月22日的差值天数,可以计算出此时的公转角?=0.9863?d,在通过三角关系,可得到太阳赤纬与公转角之间的关系为:sin?=-sin23.5cos?=-0.39795cos?,以上是我们的初步想法。而为了方便起见,我们引用他人的资料得:sinδ=0.39795cos[0.98563(n-173)](n为此时与1月1日距离的天数)
2.地理纬度。给定的坐标,无须计算。
3.地方时与北京时间的换算。由于经度的不同,每个地区的地方时有差异,而北京时间较为普遍,因此,我们需要通过给定的北京时间来进行当地地方时的换算。地球自转平均1度需要4分钟,因此,换算成地方时只需要计算与120度地区相差的度数即可。通过地方时,我们可以确定时角,即以12时为0时角,每小时变化360/24=15度。
已知上述的三个因素,我们可以通过空间向量中夹角公式,得出太阳高度角的表达式:
sinh = costcosφcosδ + sinφsinδ(h为太阳高度角,t为时角,δ为太阳赤纬,φ为地理纬度),通过太阳高度角,我们可以进而通过三角函数求解影子的长度。
通过上述分析,我们可以用matlab实现此问题,并得到实现此类问题的程序,以题目中要求的数据为例,
文案