一种测量经纬度的方法、装置和相机与流程

文档序号:11771002阅读:426来源:国知局
一种测量经纬度的方法、装置和相机与流程

本发明涉及计算机技术领域,具体涉及一种测量经纬度的方法、装置和相机。



背景技术:

目前,定位技术有两种,一种是基于gps的定位,一种是基于移动运营网的基站的定位。对这两种定位技术的优缺点分析如下:

(一)基于gps的定位方式是利用手机上的gps定位模块将自己的位置信号发送到定位后台来实现手机定位的,其定位精度较高,但gps卫星信号穿透能力弱,因此在室内无法使用而且耗电量高。

(二)基站定位方式是利用基站对手机的距离的测算距离来确定手机位置的,其不需要手机具有gps定位能力,但是精度很大程度依赖于基站的分布及覆盖范围的大小,有时误差会超过一公里。



技术实现要素:

本发明提供了一种测量经纬度的方法、装置和相机,以解决现有的定位设备通过gps定位时存在的应用空间局限性大、耗电量高以及基站进行定位时由于覆盖范围有限导致的误差较大的问题。

根据本发明的一个方面,提供了一种测量经纬度的方法,所述方法包括:

使用相机拍摄包含太阳的图像,同时使用传感器获取拍摄时刻所述相机的姿态;

根据所述相机拍摄的包含太阳的图像,确定拍摄时刻太阳相对于所述相机的方向;

根据拍摄时刻所述相机的姿态以及拍摄时刻太阳相对于所述相机的方向,确定出拍摄地太阳的高度角和方位角;

根据所述确定出的拍摄地太阳的高度角和方位角以及所述拍摄时刻确定相机拍摄地的经纬度。

根据本发明的另一个方面,提供了一种测量经纬度的装置,所述装置包括:

图像获取单元,用于使用相机拍摄包含太阳的图像;

姿态获取单元,用于获取拍摄时刻所述相机的姿态;

方向确定单元,用于根据所述相机拍摄的包含太阳的图像,确定拍摄时刻太阳相对于所述相机的方向;

高度角和方位角确定单元,用于根据拍摄时刻所述相机的姿态以及拍摄时刻太阳相对于所述相机的方向,确定出拍摄地太阳的高度角和方位角;

经纬度确定单元,用于根据所述确定出的拍摄地太阳的高度角和方位角以及所述拍摄时刻确定相机拍摄地的经纬度。

根据本发明的再一个方面,提供了一种测量经纬度的装置,所述装置包括存储器和处理器,所述存储器和所述处理器之间通过内部总线通讯连接,所述存储器存储有能够被所述处理器执行的计算机程序,所述计算机程序被所述处理器执行时能够实现上述的方法步骤。

根据本发明的又一个方面,提供了一种相机,所述相机包括上述的测量经纬度的装置。

本发明的有益效果是:本发明的技术方案,通过使用相机拍摄太阳的图像,同时使用传感器获取拍摄时刻所述相机的姿态;根据所述相机拍摄的太阳的图像,确定太阳相对于所述相机的方向,使得相机无需对准特定的方向,操作便捷;根据拍摄时刻所述相机的姿态以及所述太阳相对于相机的方向,确定出拍摄地太阳的高度角和方位角;根据所述拍摄地太阳的高度角和方位角以及所述拍摄时刻确定相机拍摄地的经纬度,简化测量经纬度的方法,使得普通设备无需借助gps或者基站即可精确获取经纬度信息。

附图说明

图1是本发明一个实施例的一种测量经纬度方法的流程图;

图2是本发明一个实施例的另一种测量经纬度方法的流程图;

图3是本发明一个实施例的一种测量经纬度装置的结构示意图;

图4是本发明一个实施例的另一种测量经纬度装置的结构示意图;

图5是本发明一个实施例的一种相机的结构示意图。

具体实施方式

本发明的设计构思是:为了简化测量经纬度的方法,使得普通设备无需借助gps或者基站即可精确获取经纬度信息,通过获取相机拍摄太阳的图像,确定太阳相对于相机的方向;同时获取拍摄时刻相机自身的姿态,确定出拍摄地太阳的高度角和方位角,根据拍摄地太阳的高度角和方位角以及拍摄时刻确定相机拍摄地的经纬度。

实施例一

图1是本发明一个实施例的一种测量经纬度方法的流程图,如图1所示,所述方法包括:

步骤s110,使用相机拍摄太阳的图像,获取拍摄时刻所述相机的姿态;

在本发明的一个实施例中,利用九轴惯性测量单元imu获取所述相机的姿态。需要说明的是,九轴是指用重力加速传感器(空间3个自由度),磁场传感器(空间3个自由度)和三轴陀螺仪(空间三个自由度)进行数据融合后得到的九轴的数据。也就是说,九轴惯性测量单元由三个方向的磁传感器、三个方向的角速率传感器和三个方向的加速度传感器组成,通过磁传感器和加速度传感器解算相机的三维静态角度,利用角速度值滤波处理静态角度,同时运用静态角度数据抑制陀螺漂移,实时准确的输出在地球坐标系下相机在空间中的姿态角。

步骤s120,根据所述相机拍摄的太阳的图像,确定太阳相对于所述相机的方向;

步骤s130,根据拍摄时刻所述相机的姿态以及所述太阳相对于相机的方向,确定出拍摄地太阳的高度角和方位角;

在本发明的一个实施例中,根据公式[altitude,azimuth]=t×v计算拍摄地太阳的高度角和方位角,其中,altitude为太阳相对于所述相机的高度角,azimuth为太阳相对于所述相机的方位角,t为拍摄时刻所述相机的姿态,v为太阳相对于所述相机的方向。

步骤s140,根据所述拍摄地太阳的高度角和方位角以及所述拍摄时刻确定相机拍摄地的经纬度。

在本发明的一个实施例中,所述根据所述确定出的拍摄地太阳的高度角和方位角以及所述拍摄时刻确定相机拍摄地的经纬度包括:根据预先确定的每个时区的基准经纬度值,并计算所述每个时区基准经纬度值在所述拍摄时刻的太阳的高度角和方位角;

计算所述确定的拍摄地太阳的高度角和方位角与所述每个时区基准经纬度值在所述拍摄时刻的太阳的高度角和方位角的差值,并确定所述差值中的最小值,确定所述最小值对应的时区为所述相机拍摄地参考时区;

根据所述相机拍摄地参考时区对应的基准经纬度值以及经纬度步长进行迭代搜索,确定迭代经纬度值;

根据所述迭代经纬度值以及所述拍摄时刻计算所述迭代经纬度对应的太阳的高度角和方位角;

判断所述迭代经纬度值对应的太阳的高度角和方位角与所述确定出的拍摄地太阳的高度角和方位角是否相等,若是,则将述迭代经纬度值输出;若否,重复上述操作。

通过图1所述的方法,可知,本发明的技术方案简化了测量经纬度的方法,使得普通设备无需借助gps或者基站即可精确获取经纬度信息。

为了使得本发明的方案更加清楚,下面举一个具体的实施例进行解释说明。图2是本发明一个实施例的另一种测量经纬度方法的流程图,如图2所示,

s21、用户通过相机拍摄包含太阳的图像。需要说明的是,相机无需对准特定的方向,只要相机的拍摄的图像中包含太阳即可,操作更加便捷。根据包含太阳的图像,即可确定太阳相对相机的方向v。

s22、利用九轴惯性测量单元获取拍照时刻相机自身的姿态t。

s23、拍摄时间指的就是用户利用相机拍摄包含太阳图像的时刻。

s24、利用经纬度算法根据获取到的相机自身的姿态、包含太阳的图像以及拍摄时刻计算相机拍摄地的经纬度。经纬度算法的计算过程主要分为以下两步:

第一步,根据s21步骤中的确定出的太阳相对相机的方向v以及s22获取到的相机自身的姿态t即可计算出拍摄地太阳的高度角和方位角。具体地,根据公式[altitude,azimuth]=t×v计算拍摄地太阳的高度角和方位角,其中,altitude为拍摄地太阳的高度角,azimuth为拍摄地太阳的方位角,t为拍摄时刻所述相机的姿态,v为太阳相对于所述相机的方向。

第二步,首先,获取每个时区的基准经纬度,(需要说明的是,基准经纬度可以根据实际情况自行定义,在本实施例中,基准经纬度为每个时区的中心经纬度)。然后利用太阳定位算法,计算在拍摄时刻每个时区的基准经纬度对应的太阳的高度角和方位角;由于地球有24个时区,所以此时利用太阳定位算法计算出24个太阳的高度角和方位角,计算第一步计算出的太阳的高度角和方位角与24个太阳的高度角和方位角的差值,并计算24个差值中的最小值,将最小值对应的时区作为拍摄地的参考时区。

在确定出相机拍摄地参考时区后,将相机拍摄地参考时区对应的基准经纬度作为参考经纬度[longitude,latitude]reference,同时确定一经纬度步长δ[longitude,latitude],根据如下公式:

[longitude,latitude]iteration=[longitude,latitude]reference±nδ[longitude,latitude](公式1)计算迭代经纬度值。

需要说明的是,每计算出一个迭代经纬度值,就需要根据太阳定位算法计算出在拍摄时刻相应的迭代经纬度值对应的太阳的高度角和方位角,将相应的迭代经纬度值对应的太阳的高度角和方位角与第一步计算出的太阳的高度角和方位角进行比较,若相应的迭代经纬度值对应的太阳的高度角和方位角与第一步计算出的太阳的高度角和方位角相等,将相应的迭代经纬度值输出(s25),相应的迭代经纬度值即是拍摄地的经纬度。若相应的迭代经纬度值对应的太阳的高度角和方位角与第一步计算出的太阳的高度角和方位角不相等,则将(公式1)中的n进行赋值得到n=n+1,重复上述操作,直到获取到与第一步计算出的太阳的高度角和方位角相等的值为止。

在实际应用中,会得到对应南北半球的两个结果,用户可以自行判断选取其中的一个结果作为拍摄地的经纬度。

实施例二

图3是本发明一个实施例的一种测量经纬度装置的结构示意图,如图3所示,所述装置300包括:

图像获取单元310,用于使用相机拍摄包含太阳的图像;

姿态获取单元320,用于获取拍摄时刻所述相机的姿态;

方向确定单元330,用于根据所述相机拍摄的包含太阳的图像,确定拍摄时刻太阳相对于所述相机的方向;

高度角和方位角确定单元340,用于根据拍摄时刻所述相机的姿态以及拍摄时刻太阳相对于所述相机的方向,确定出拍摄地太阳的高度角和方位角;

经纬度确定单元350,用于根据确定出的拍摄地太阳的高度角和方位角以及所述拍摄时刻确定相机拍摄地的经纬度。

通过图3所述的装置,可知,本发明的技术方案简化了测量经纬度的方法,使得普通设备无需借助gps或者基站即可精确获取经纬度信息。

在本发明的一个实施例中,所述姿态获取单元320,具体用于利用九轴惯性测量单元获取所述相机的姿态。

在本发明的一个实施例中,所述方向确定单元330,具体用于根据公式[altitude,azimuth]=t×v计算拍摄地太阳的高度角和方位角,其中,altitude为太阳相对于所述相机的高度角,azimuth为太阳相对于所述相机的方位角,t为拍摄时刻所述相机的姿态,v为太阳相对于所述相机的方向。

在本发明的一个实施例中,所述经纬度确定单元350,具体用于根据预先确定的每个时区的基准经纬度值,计算每个时区在所述拍摄时刻对应的太阳的高度角和方位角;

计算所述确定出的拍摄地太阳的高度角和方位角与所述计算出的每个时区在所述拍摄时刻的太阳的高度角和方位角的差值,确定所述差值中的最小值对应的时区为所述相机拍摄地的参考时区;

根据所述相机拍摄地参考时区对应的基准经纬度值以及预设的经纬度步长进行迭代搜索,确定迭代后的经纬度值;

根据所述迭代后的经纬度值以及所述拍摄时刻计算所述迭代后的经纬度对应的太阳的高度角和方位角;

判断所述迭代后的经纬度值对应的太阳的高度角和方位角与所述确定出的拍摄地太阳的高度角和方位角是否小于预设值,若是,则将述迭代后的经纬度值输出;若否,重复迭代搜索操作。

需要说明的是,本实施例中请求保护的测量经纬度的装置300的工作过程与图1所示的方法的各实施例的实现步骤对应相同,相同的部分不再赘述。

图4是本发明一个实施例的一种测量经纬度装置的结构示意图,如图4所示,所述装置400包括存储器420和处理器410,存储器420和处理器410之间通过内部总线430通讯连接,存储器420存储有能够被处理器410执行的计算机程序,在本发明的一个实施例中,存储器420存储的是测量经纬度的计算机程序421。该测量经纬度的计算机程序421被处理器410执行时能够实现图1所示的方法步骤。

在不同的实施例中,存储器420可以是内存或者非易失性存储器。其中非易失性存储器可以是:存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、dvd等),或者类似的存储介质,或者它们的组合。内存可以是:ram(radomaccessmemory,随机存取存储器)、易失存储器、非易失性存储器、闪存。进一步,非易失性存储器和内存作为机器可读存储介质,其上可存储由处理器410执行的测量经纬度的计算机程序421。

需要说明的是,本实施例中请求保护的测量经纬度的装置400的工作过程与图1所示的方法的各实施例的实现步骤对应相同,相同的部分不再赘述。

实施例三

图5是本发明一个实施例的一种相机的结构示意图,如图5所示,所述相机500包括上述的测量经纬度的装置300或者上述的测量经纬度的装置400。需要说明的是,本实施例中请求保护的测量经纬度的装置300或者400的工作过程与图1所示的方法的各实施例的实现步骤对应相同,相同的部分不再赘述。

综上所述,本发明的技术方案,通过使用相机拍摄太阳的图像,使用传感器获取拍摄时刻所述相机的姿态;根据所述相机拍摄的太阳的图像,确定太阳相对于所述相机的方向,使得相机无需对准特定的方向,操作便捷;根据拍摄时刻所述相机的姿态以及所述太阳相对于相机的方向,确定出拍摄地太阳的高度角和方位角;根据所述拍摄地太阳的高度角和方位角以及所述拍摄时刻确定相机拍摄地的经纬度,简化测量经纬度的方法,使得普通设备无需借助gps或者基站即可精确获取经纬度信息。

以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1