黄梦妍,张轩,刘鑫四川理工学院
太阳影子定位技术
黄梦妍,张轩,刘鑫
四川理工学院
摘要:本文主要讨论了杆的影子坐标与日期时间和经纬度的关系,将太阳和地球的系统作为天球系统处理,利用了穷举法、粒子群优化算法、参数拟合等算法,建立了影子长短模型、经纬度判断模型解决了如何利用影子进行定位的问题。
关键词:天球;穷举法;粒子群优化算法;参数拟合
太阳影子定位技术是一种通过分析视频中物体的太阳影子变化,确定视频拍摄的地点和日期的一种技术。
如何确定视频的拍摄地点和拍摄日期是视频数据分析的重要的方面,太阳影子定位技术就是通过分析视频中物体的太阳影子变化,确定视频拍摄的地点和日期的一种的方法。该技术分析影子长度关于各参数的变化规律。根据某一时段太阳影子的顶点坐标,判断杆的若干个可能的地点。根据影子坐标数据判断若干个可能拍摄的日期。
1.地球沿着地轴均匀转动。
2.假设赤纬角不会随年份的变化而变化。
3.将太阳光视为平行光。
4.杆为竖直放置。
天球系统的建立
假设存在一个以观察者为中心,以无限长为半径的球体,天空中的所有星体,都在该球体上绕地轴转动,这个假想的球即为天球。以地球的赤道水平后,将太阳和地球做为质点,做出的天球模型。
Step1.赤纬角、高度角、方向角的判断
Step2建立杆高度H与影子端点坐标数学模型
由于本文中使用的是北京时间,那么需要进一步计算得出当地的与东八区中央经线的经度差,进而得到当地的地方时和北京时间的时差,然后得到当地的地方时,通过查阅资料可以得到时角,太阳高度角公式:sin h=sin φsin ξ+cos φcos ξcos Ω(其中φ表示杆所在地的纬度)。
太阳方位角公式:
此时,不妨设影子端点P的坐标为(x,y),根据以上公式可以得出:
又因为太阳方位角满足方程:
结合方程组(2)与方程(3)可以得到影子端点坐标:
因为在式中方向角A于高度角h随时间的变化而变化,那么可以得到影子端点坐标x、y是随时间变化而变化。那么可以建立x与y之间的坐标系。
又因为影子长度为
根据公式(8)(9)可以得出影子在不同时间点的长度。
穷举法,是指在一个有穷的可能的解集合中,搜索出集合中的每一个元素,用问题给定的解的检验条件去判断其是否符合条件,若满足条件,该元素即为该问题的一个解,若不满足问题解的检验条件,该元素就不是这个问题的解。
那么将使各个因素依次变化取杆高度、经度和纬度的每一个分度值在题中所给时间的影子坐标求出,与附件一进行对比。
问题中所作模型以及穷举法思想,可以作出以下步骤。
由于杆的经纬度满足上面模型中的公式,所以在经度范围内先任取一值,带入求其维度和高度角,若其误差值在一定范围内,则确定若干解。
5.1粒子群算法
粒子群算法是基于群智能的并行全局搜索算法,采用简单的速度——位置搜索模型实现对整个空间的寻优操作,每个例子代表解空间的一个候选解,例子在搜索空间以一定的速度飞行,飞行速度根据飞行经验进行动态调整。
设在一个m维目标的搜索空间当中,由n个粒子组成粒子群落,同时采用下列公式进行粒子的更新:
较大的惯性权重ω有利于全局搜索,而较小的惯性权重有利于局部搜索。因此,采用动态自适应改变惯性权重策略。
接着计算粒子群在第k次迭代时的群里适应度方差sum,适应度函数
则
其中σ的取值为,若在第k次迭代目标函数减去目标的函数平均值只差z,当|z|>1时,σ为z的最大值,当z<0时,σ=1,若在连续10代没有得到优化,那么全局优化粒子将会按照Pgm=pgm×(1+(rang(1)-0.5)÷30)进行变异。
根据上述公式,算法流程如下:
(1)对粒子群体的位置向量、速度向量、全局最优值和个体最优化进行初始化,初始惯性权重ω=0.729,取c1=c2=2,q=0,并限制搜索的速度和范围。
(2)根据目标函数计算各个粒子的适应度。对每个微粒将其适应度与经历过的最优位置Pi作比较,如果较好,则将其作为新的全局最优位置。
(3)若算法收敛则满足或达到最大迭代次数,执行步骤(9),否则执行步骤(4)。
(4)若全局最优粒子的适应度大于正常数,则对整个粒子群重新进行初始化,然后执行步骤(5)。粒子群初始化的位置和速度的范围根据全局最优粒子的位置和速度信息来确定。否则,若当前代数为第一代时执行步骤(6),若当前代数不为第一代时,执行步骤(8)。
(5)k=k+1,根据公式(8)和(9)计算ωk的值,在根据式(3)和式(4)对粒子群中的所有粒子相继执行更新粒子速度和位置的操作。然后,返回步骤(2)。
(6)如果sum<ε执行步骤(7)。否则返回步骤(5)。
(7)把全局最优值的信息赋给全局最差的那个粒子,并把全局最优值的信息另外保存下来。然后对全局最优粒子进行变异,并计算粒子变异后的适应度。如果变异后的粒子优于当前全局最优值,则其信息代替原来保存的全局最优值,否则使已经保存的最优粒子的信息不变。再用变异后的粒子替换原来的最优粒子组成新的粒子群,执行步骤(5)。
(8)如果当代最优值和上代最优值相同,则q=q+1,否则q仍未0当q等于9时,执行步骤(7)并令q为0否则执行步骤(5)。
(9)根据保存最优粒子信息,输出全局最优值的位置和适应度函数值,此时算法结束。输入相应的值,进行上述步骤,即可得出经纬度,以及相应的时间。
参考文献:
[1]王国安,米洪涛,邓天宏等,太阳高度角和日出日落时刻太阳方位角一年变化范围的计算[J].气象与环境科学,2007(9):161-164.
[2]Cooper PI.The absorption of radiation in solar stills[J].Solar Energy[Internet],1969(12):333-346.
[3]黄晓东,王玉洁,石恒华,杨焱,数木树冠阴影面积与种植间距的编程计算分析研究[J].北京农学院学报,2013(1):50-52.
[4]郑鹏飞,林大钧,刘小羊,吴志庭,基于影子轨迹线反求采光效果的技术研究[J].华东理工大学学报,2010(03):458-463.
[5]孙义欣,冯娜,穷举法在程序设计中的应用[J].计算机时代, 2012(08):50-52.
[6]杨朝霞,方建文,李佳荣,曾胜财,粒子群优化算法在多参数拟合中的应用[J].浙江师范大学学报,2008(6):173-177.
[7]李爱国,谭征,粒子群优化算法[J].计算机工程与应用,2002 (21):1-3.
[8]刘智勇,刘迎建,车牌识别(LPR)中的图像提取及分割[J].中文信息学报,2000(04):29-34.
张轩(1994-),男,汉,四川眉山市人,本科,单位:四川理工学院通信工程专业,研究方向:通信工程;
刘鑫(1994-),男,汉,四川武胜市人,本科,单位:四川理工学院通信工程专业,研究方向:通信工程师。
作者简介:黄梦妍(1996-),女,汉,江苏连云港人,本科,单位:四川理工学院通信工程专业,研究方向:智能算法研究;