摘要太阳影子定位技术是确定视频拍摄地点和日期的一种有效方法,也是视频数据分析的重要方面。本文对该技术的实现及在视频中的应用问题进行了探讨。针对问题一,由几何规则,得到影长、坐标、杆高、与太阳高度角的关系。再引入时间角公式、太阳高度与太阳方位角公式,与上述方程构成太阳时刻位置、直杆影子端点时刻位置确定的模型。然后对建立的模型,根据控制变量法,分析影子长度对各参数的变化规律。最后利用matlab绘制目标地点、已知时间段的影子长度变化曲线。针对问题二,建立初始模型,变换问题一中的方程组,得到涉及影子坐标、经纬度、日期的综合方程。对这含两个未知参量的非线性方程,利用得到所得解受初值影响较大且空间分布较广。因此,为提高精确度,建立改进模型。首先对附件1的数据进行预处理,得到影子长度与时间关系式。通过求导取极值,得当地正午对应的北京时间,从而确定直杆经度值。再代入原方程组,得到只含一个参未知量的非线性一元方程。结合附件一的数据,再聚类分析即可得到可能若干点可能地点的经纬度。(附结果)针对问题三,在日期未知的条件下,综合问题二中的两个模型进行研究。首先由改进模型中影长-时间的关系确定时角,减少综合方程的未知参量。为提高模型精确度,同时防止解的丢失,引入遗传算法的种群和适应度概念来筛选确定函数初值。将所得初值再代入原方程组,求出可能的地点及日期:(81.88E,35.809N,6月21日)、(110.79E,32.635N,12月22日)。针对问题四,按固定步长截取视频,将图片灰度网格化,并构建视频坐标系。通过灰度值区分影子与非阴影处。遍历每个带有灰度值的小格,求出此刻影子顶点坐标。通过坐标转换,则转换为问题二和问题三情形,分别求得已知拍摄日期和未知拍摄日期下的结果为:(112°10E,40°55N)关键词:1.问题重述如何确定视频的拍摄地点和拍摄日期是视频数据分析的重要方面。太阳影子定位技术是通过分析视频中物体的太阳影子变化,确定视频拍摄的地点和日期的一种方法。我们首先需要建立影子长度变化的数学模型,分析各参数变化对影长的影响,并将此模型应用到实例中得到影长的变化曲线。然后需要针对已知若干太阳影子顶点坐标,有、无测量时的日期的两种情况,分别建立数学模型求解出直杆若干个可能的地点与日期。最后,我们需要根据一已知杆高的直杆影子变化的视频,建立数学模型,求出可能的拍摄地点,并探讨是否能据此也求出拍摄日期。2.模型假设1.准确性假设:假设视频中视场固定不动,可根据对视频处理,得到真实数据集相应的影长等物理量信息;2.排他性假设:不考虑其他天体影响;忽略大气对太阳光的折射;忽略海拔对太阳高度角的影响;3.合理性假设:假设直杆周围无建筑物阻挡太阳光的照射;假设太阳系为一个近似球体,且地球与近似球体为同一球心;假设太阳绕地球在近圆形的椭圆轨道上运行。3.符号系统符号:时角t时间数A方位角(h)太阳高度角α:赤纬角β:太阳高度角γ:太阳方向角δ:纬度:经度X0,Yo:影子顶点位置n:24h制的时间数t:太阳某位置的方位时间直杆所在地的地理纬度L:根据视角公式:5.问题一的建模与求解假设:1.假设太阳系为一个近似球体,且地球与近似球体为同一球心;2.假设太阳绕地球在近圆形的椭圆轨道上运行;3.(需说明X-Y坐标对应的方向,且说明其的方向设置对结果没有影响)5.1模型准备直杆影子形成原理一根直杆,其影子的位置在一天中随太阳的位置不断变化。假设某天某时刻的太阳位置如图1所示,。直杆垂直于地面立于地面上的杆高为H,太阳光线通过杆顶P点,在地面上形成一个影子点P‘,影子的长度OP‘为L。定义直杆影子端点P’的坐标为(X0,Y0),地面的夹角为(),则其数学关系式为【1】:又据勾股定理,L=开根号(X0^2+Y0^2),二式联立得,说明:坐标系以直杆底端为原点,水平地面为xy平面。在未特别说明的情况下,默认为y轴对应正北方向,x轴对应正东方向。(图需改进)天球坐标系统的统一建立又杆所受的日照变化情况,是由地球自转及绕太阳公转引起的。以杆顶在阳光下产生的影子端点移动的轨迹,代替太阳运行轨迹。运用相对运动原理,将地球自转及绕太阳公转的运动简化为地球不动,太阳绕地球转动的系统。各角度参数的关系可由图(2)反映。赤道坐标系——赤纬角和时角地平坐标系——太阳高度角和太阳方向角5.3模型的建立由文献可知,太阳位置点L在天体中相对地球位置0上某一点的相对位置,由该点的地理纬度、季节(月、日)和时间3个因素决定。通常用以太阳高度角h、方位角、赤纬角以及时角来表示太阳的相对位置参数。故我们可用太阳位置参数以及式(1)来表示直杆影子的顶点坐标轨迹。我们可得到如下的计算公式:赤纬角计算公式:【2】时角公式【3】为方便计算处理,在建模过程中全部用弧度表示,因此将上式改写为:太阳高度角公式:【3】太阳方位角公式:【3】从图一我们可列出直杆影子端点P’(,)与太阳方向角()的数学关系式:据此,联立()~()式,我们可以建立由太阳位置坐标(),直杆高度H与直杆影子端点坐标构成的数学模型:5.4模型的求解5.4.1影子长度变化与相关参数的分析为探究直杆的影子长度关于各个参数的变化规律,我们利用控制变量法,分别讨论当其他参数一定的情况下,得到影子关于该参数的变化情况。现在假设经度()=,纬度()=,杆高H=3m,本文观测日期为10月22日,时间为正午12点。经度与影子长度变化的关系:保证其他变量一定,结合问题一中的数学模型。改变地方经度的取值,使其在东经30度至西经150度之间变化。用matlab进行计算,根据计算结果绘制出地方经度与影子长度的变化规律如图()结论:可知在该地理位置的经度处影长最大,往东西两边都逐渐减小。纬度与影子长度变化的关系:保证其他变量一定,结合问题一中的数学模型。改变地方纬度的值,使其在南极点到北极点之间变化。利用matlab进行计算,根据计算结果绘制出地方纬度与影子长度的变化规律如图()结论:由于日期选定的影响,可知在南半球某处的太阳直射点处影长最小,以点为基准往南、往北影长逐渐增加。日期与影子长度变化的关系:保证其他变量一定,结合问题一中的数学模型。改变地方日期的取值,使其在1月1日至12月31日之间变化。用matlab进行计算,根据计算结果绘制出日期与影子长度的变化规律如图(),图中横坐标的0代表取的是一年中的第一天。结论:杆高与影子长度变化的关系:保证其他变量一定,结合问题一中的数学模型。改变杆高的取值,使其在1m至10m间变化。用matlab进行计算,根据计算结果绘制出杆高与影子长度的变化规律如图(),图中横坐标的0代表取的是一年中的第一天。结论:可得出杆高与影长成线性增大关系。5.4.2模型应用利用所建立的直杆影子短点的轨迹模型,我们将求得2015年10月22日北京时间9:00-15:00之间天安门广场(北纬39度54分26秒,东经116度23分29秒)3米高的直杆的太阳影子长度的变化曲线。确定相关参数由题意可得,经度()=,纬度()=,杆高H=3m,t的取值为:9.0h~15.0h,将日期带入公式()~(),算得当天的赤纬角()=-11.1182度。模型求解利用matlab软件,可绘制出太阳影子端点的轨迹图以及太阳影子长度的变化曲线,如图(2)所示:结论:1.太阳影子变化曲线关于t=12h对称;2.随着时间的推移,在上午9时到下午15时之间,影子长度由长变短,达到最小值时,再逐渐变长;3.影子长度的变化范围为:3.7m~6.7m,且分别在t=12时处取得影长最小值,t=9h,12h处取得最大值。【1】基于影子轨迹线反求采光效果的技术研究【2】太阳直射点纬度的数学推导和分析_蒋洪力【3】6.问题二的建模与求解6.1模型一:构建影子的顶点非线性方程组6.1.1模型的建立由题意,现在已知太阳影子顶点坐标以及测量日期,因此我们对问题一中的所建立的模型中的方程进行选取和处理:对模型一中的(5)式子进行变换,得再联立(2)、(7)式,有(8)本文将式(8)定义为经纬度综合方程,这是该模型的核心。附件一中提供了21组太阳影子顶点的坐标值。又由于该方程式含有两个未知参数,因此随机选取附件1两个坐标数据构成一个由两个非线性方程构成的二维非线性方程组。6.1.2模型的求解由于是对21组坐标数据的随机选取构成的方程组,又需保证每组数据对于模型的有效性。因此,据排列组合原理,可得到C212=210个非线性方程组。利用matlab的fsolve函数,对这210组方程进行求解。再考虑到X-Y坐标系方向与实际地理方向的对应关系,可得到再原来基础上一倍数量的解。利用matlab,将所求的经纬地理坐标的可能解都在图()上显示出来。就某一个非线性方程组而言,所选取的函数初值与其对应结果关系的部分如下表:Fsolve函数初值对应结果(0.1,0.5)(75.22E,14.23N)(70.35E,16.68N)(-0.1,-0.5)(117.68E,8.38N)(113.17E,6.03N)(-0.1,0.5)(72.31,9.54N)(76.21E,7.83N)(做成表)结论:1.从上图可反映所有可能解的分布空间范围比较广泛,无法得到具有代表性的可能解;2.从上表可反映求解非线性方程组时,所求解受初值影响较大。综上所述,该模型的可调性较差,所求解准确度较低。因此,为更加精确地求出直杆所在的地理位置,我们在下文将引进纬度联合求解模型。6.2模型二:经纬度联合求解模型6.2.1模型的建立数据的预处理对附件1的时刻,以14:42为记录起点换算成时间。对太阳影子顶点的坐标值,利用勾股定理,转换成对应时刻的长度Z(T)。利用matlab参数求解,得到趋势曲线:(图)结合文献【1】可求得该趋势曲线的数学表达式为:Z(T)=0.1489T^2-3.752T+24.13直杆经度的确定直杆影子最短时间t当可认为是北京时间,即东经120度的地方。根据公式:-=120-4当(t12:00)当地经度。对上式求极值,可得t当=12.5991(h)。因此利用公式算得该地点时间上落后北京时间0.5991小时,则该点经度为:W-0.5991*Ω=110.014度其中,W为东经120°经线的地方平太阳时。直杆纬度的确定将得到的经度值代入式(8)经纬度综合方程,即可将非线性二元方程组转变为,只含一个未知参量的非线性方程。再考虑到X-Y坐标系方向与实际地理方向的对应关系。6.2.2模型的求解(改)经过聚类分析,得出可能的解印尼(110.01E,4.85S)屯昌(110.01E,19.38N)琼海(110.01E,19.28N)7.问题三的建模与求解7.1问题分析问题三与问题二的区别,即在于缺少了测量日期的条件。又问题二中的初始模型建立了一个二元非线性方程组,问题二中的改进模型通过结合影子长度与时间关系式,使方程组转化为了一个二元非线性的方程组。又因问题三缺少了一个已知量,故问题三模型的建立与求解即又转化成了一个二元非线性方程组。因此我们可继续利用问题二求解的思想,将问题二中建立的两个模型统一结合起来。7.2非线性方程组的求解7.2.1数据预处理与问题二中的数据预处理方法一致,对附件2的顶点坐标数据,利用影长-时间关系,确定时角Ω以减少综合方程的未知参量。即同理得,Z1(T)=0.09814T^2-2.985T+23.32同样由Z1求导取极值,得到北京时间t当=15.2079(h)进而算得经度为81.88E度。7.2.2结合遗传算法的初值确定算法描述由于问题二中的模型一受初值影响大,为提高精确度,同时考虑不漏解,引入遗传算法的种群和适应度概念,确定函数初值。种群【1】种群是非线性方程组合理初值和多解求解的基础。它由在非线性方程组解空间内随机生成的N组数值构成,种群大小(即N的大小)由具体问题的解空间决定,它既要保证数值解的多样性又要适量。在本模型中,将解空间设置为[-10^6,10^6],N值通过试算决定为1000。适应度【1】适应度是衡量非线性方程组合理迭代初值的标准,它通过自定义的适值函数来体