CN112348884B - 一种定位方法、终端设备和服务器 - Google Patents
一种定位方法、终端设备和服务器 Download PDFInfo
- Publication number
- CN112348884B CN112348884B CN201910736088.6A CN201910736088A CN112348884B CN 112348884 B CN112348884 B CN 112348884B CN 201910736088 A CN201910736088 A CN 201910736088A CN 112348884 B CN112348884 B CN 112348884B
- Authority
- CN
- China
- Prior art keywords
- angle
- view
- vertical
- vertical line
- horizontal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 60
- 238000009826 distribution Methods 0.000 claims abstract description 210
- 230000000007 visual effect Effects 0.000 claims description 57
- 230000003287 optical effect Effects 0.000 claims description 40
- 230000008859 change Effects 0.000 claims description 34
- 238000012545 processing Methods 0.000 claims description 33
- 230000009466 transformation Effects 0.000 claims description 20
- 239000000284 extract Substances 0.000 claims description 18
- 230000001154 acute effect Effects 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 11
- 238000003860 storage Methods 0.000 description 26
- 238000013461 design Methods 0.000 description 24
- 238000010586 diagram Methods 0.000 description 24
- 230000006870 function Effects 0.000 description 17
- 238000004891 communication Methods 0.000 description 10
- 239000011159 matrix material Substances 0.000 description 10
- 238000001514 detection method Methods 0.000 description 7
- 238000004422 calculation algorithm Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000011218 segmentation Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000003384 imaging method Methods 0.000 description 3
- 238000005259 measurement Methods 0.000 description 3
- 239000007787 solid Substances 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000005484 gravity Effects 0.000 description 2
- 238000003702 image correction Methods 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 238000013519 translation Methods 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 239000013078 crystal Substances 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000000605 extraction Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000035515 penetration Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/12—Edge-based segmentation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/10—Segmentation; Edge detection
- G06T7/13—Edge detection
Landscapes
- Engineering & Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Image Analysis (AREA)
Abstract
本申请实施例提供了一种定位方法、终端设备及服务器,使得即使终端设备的GPS信号很弱,也可以实现精确的定位。其中,定位方法包括:获取目标对象的目标图像;从所述目标图像中提取多条竖线;确定所述多条竖线的第一水平视场角分布;获取多个第一定位点,每个第一定位点对应于一个第二水平视场角分布;确定所述多个第二视场角分布中与所述第一视场角分布重合度最高的第二视场角分布对应的第一定位点为目标定位点。
Description
技术领域
本申请涉及计算机领域,尤其涉及一种定位方法、终端设备和服务器。
背景技术
随着用户对网络需求的不断提高,为满足用户需求的各种应用软件也应运而生,当前装载在终端设备上的各种应用软件大多需要获得移动终端的当前位置,以实现特定的功能,从而满足用户的需求。而在获取用户位置坐标时,该位置坐标的精确程度会很大程度地影响到用户对上述应用软件的体验。
在现有技术中,在对移动终端进行定位时,普遍通过使用GPS(globalpositioning system,全球定位系统)对终端设备进行定位。
而通过GPS进行定位时,是通过终端设备的GPS模块,接收同步卫星发送的定位信号,根据多颗卫星的空间位置和信号到达终端设备的时间,求解出当前终端设备的坐标。但是由于卫星发送的微波信号穿透能力很弱,所以必须在室外进行。
但在城市环境下,由于受到建筑物的遮挡,影响微波信号的传送,进而会导致对终端设备的定位不够精确。
发明内容
本申请实施例提供了一种定位方法、终端设备和服务器,使得即使终端设备的GPS信号很弱,也可以实现精确的定位。
本申请实施例提供了一种定位方法,包括:终端设备获取目标对象的目标图像;所述终端设备从所述目标图像中提取多条竖线,其中,所述目标对象包括多个竖直棱线,每个竖直棱线对应于所述目标图像中的一条竖线;所述终端设备确定所述多条竖线的第一水平视场角分布,其中,所述第一水平视场角分布的视点为拍摄所述目标对象的光心;所述终端设备获取多个第一定位点,每个第一定位点对应于一个第二水平视场角分布,所述第二水平视场角分布表示以对应的第一定位点为视点,所述多个竖直棱线的视场角分布;所述终端设备确定所述多个第二视场角分布中与所述第一视场角分布重合度最高的第二视场角分布对应的第一定位点为目标定位点。
在第一方面的一种可选设计中,所述目标图像包括多个特征线,所述终端设备从所述目标图像中提取多条竖线,包括:
所述终端设备从所述目标图像中提取多个特征线;
所述终端设备通过对所述目标图像进行视角变换调整所述多个特征线的斜率,得到多条竖线。
在第一方面的一种可选设计中,所述第一水平视场角分布包括多个第一视场角,每个第一视场角对应一条竖线,第一视场角表示以拍摄所述目标对象的光心为视点,水平视线由所述目标图像的中心点移动到对应的竖线的视角变化量;
所述第二水平视场角分布包括多个第二视场角,每个第二视场角对应一个竖直棱线,第二视场角表示以对应的第一定位点为视点,水平视线由正北方向移动到对应的竖直棱线的视角变化量。
在第一方面的一种可选设计中,所述终端设备确定所述多条竖线的第一水平视场角分布,包括:
所述终端设备获取所述目标图像上的中心点到多条竖线的多个水平像素距离,其中,每个竖线对应一个水平像素距离;
所述终端设备以水平像素距离为第一直角边,拍摄所述目标对象的焦距为第二直角边,构建目标直角三角形,确定所述目标直角三角形中所述第一直角边对应的锐角为对应的竖线的第一视场角。
在第一方面的一种可选设计中,所述多条竖线包括第一竖线,所述多个竖直棱线包括第一竖直棱线,所述第一竖线对应于所述第一竖直棱线,以所述目标定位点为视点,水平视线由正北方向移动到所述第一竖直棱线的视角变化量为目标第二视场角,所述方法还包括:
所述终端设备确定所述第一竖线对应的第三视场角为所述目标第二视场角,所述第三视场角表示以拍摄所述目标对象的光心为视点,水平视线由正北方向移动到所述第一竖线的视角变化量;
所述终端设备基于所述第一竖线的第三视场角和所述第一竖线对应的第一视场角确定拍摄所述目标对象的偏航角。
在第一方面的一种可选设计中,所述多条竖线还包括至少一个第二竖线,所述第一竖线包含的像素点数量大于任意一个第二竖线包含的像素点数量。
在第一方面的一种可选设计中,所述多条竖线还包括至少一个第二竖线,所述第一竖线与所述目标图像中相邻的第二竖线之间的水平像素距离大于第一预设值。
第二方面,本申请提供了一种定位方法,所述方法包括:
服务器接收终端设备发送的目标对象的目标图像;
所述服务器从所述目标图像中提取多条竖线,其中,所述目标对象包括多个竖直棱线,每个竖直棱线对应于所述目标图像中的一条竖线;
所述服务器确定所述多条竖线的第一水平视场角分布,其中,所述第一水平视场角分布的视点为拍摄所述目标对象的光心;
所述服务器获取多个第一定位点,每个第一定位点对应于一个第二水平视场角分布,所述第二水平视场角分布表示以对应的第一定位点为视点,所述多个竖直棱线的视场角分布;
所述服务器确定所述多个第二视场角分布中与所述第一视场角分布重合度最高的第二视场角分布对应的第一定位点为目标定位点;
所述服务器将所述目标定位点发送至所述终端设备。
在第二方面的一种可选设计中,所述目标图像包括多个特征线,所述服务器从所述目标图像中提取多条竖线,包括:
所述服务器从所述目标图像中提取多个特征线;
所述服务器通过对所述目标图像进行视角变换调整所述多个特征线的斜率,得到多条竖线。
在第二方面的一种可选设计中,所述第一水平视场角分布包括多个第一视场角,每个第一视场角对应一条竖线,第一视场角表示以拍摄所述目标对象的光心为视点,水平视线由所述目标图像的中心点移动到对应的竖线的视角变化量;
所述第二水平视场角分布包括多个第二视场角,每个第二视场角对应一个竖直棱线,第二视场角表示以对应的第一定位点为视点,水平视线由正北方向移动到对应的竖直棱线的视角变化量。
在第二方面的一种可选设计中,所述服务器确定所述多条竖线的第一水平视场角分布,包括:
所述服务器获取所述目标图像上的中心点到多条竖线的多个水平像素距离,其中,每个竖线对应一个水平像素距离;
所述服务器以水平像素距离为第一直角边,拍摄所述目标对象的焦距为第二直角边,构建目标直角三角形,确定所述目标直角三角形中所述第一直角边对应的锐角为对应的竖线的第一视场角。
在第二方面的一种可选设计中,所述多条竖线包括第一竖线,所述多个竖直棱线包括第一竖直棱线,所述第一竖线对应于所述第一竖直棱线,以所述目标定位点为视点,水平视线由正北方向移动到所述第一竖直棱线的视角变化量为目标第二视场角,所述方法还包括:
所述服务器确定所述第一竖线对应的第三视场角为所述目标第二视场角,所述第三视场角表示以拍摄所述目标对象的光心为视点,水平视线由正北方向移动到所述第一竖线的视角变化量;
所述服务器基于所述第一竖线的第三视场角和所述第一竖线对应的第一视场角确定拍摄所述目标对象的偏航角。
在第二方面的一种可选设计中,所述多条竖线还包括至少一个第二竖线,所述第一竖线包含的像素点数量大于任意一个第二竖线包含的像素点数量。
在第二方面的一种可选设计中,所述多条竖线还包括至少一个第二竖线,所述第一竖线与所述目标图像中相邻的第二竖线之间的水平像素距离大于第一预设值。
第三方面,本申请提供了一种终端设备,包括:
获取单元,用于获取目标对象的目标图像;
处理单元,用于从所述目标图像中提取多条竖线,其中,所述目标对象包括多个竖直棱线,每个竖直棱线对应于所述目标图像中的一条竖线;确定所述多条竖线的第一水平视场角分布,其中,所述第一水平视场角分布的视点为拍摄所述目标对象的光心;获取多个第一定位点,每个第一定位点对应于一个第二水平视场角分布,所述第二水平视场角分布表示以对应的第一定位点为视点,所述多个竖直棱线的视场角分布;确定所述多个第二视场角分布中与所述第一视场角分布重合度最高的第二视场角分布对应的第一定位点为目标定位点。
在第三方面的一种可选设计中,所述处理单元,具体用于:
从所述目标图像中提取多个特征线;通过对所述目标图像进行视角变换调整所述多个特征线的斜率,得到多条竖线。
在第三方面的一种可选设计中,所述第一水平视场角分布包括多个第一视场角,每个第一视场角对应一条竖线,第一视场角表示以拍摄所述目标对象的光心为视点,水平视线由所述目标图像的中心点移动到对应的竖线的视角变化量;
所述第二水平视场角分布包括多个第二视场角,每个第二视场角对应一个竖直棱线,第二视场角表示以对应的第一定位点为视点,水平视线由正北方向移动到对应的竖直棱线的视角变化量。
在第三方面的一种可选设计中,所述处理单元,具体用于:
获取所述目标图像上的中心点到多条竖线的多个水平像素距离,其中,每个竖线对应一个水平像素距离;以水平像素距离为第一直角边,拍摄所述目标对象的焦距为第二直角边,构建目标直角三角形,确定所述目标直角三角形中所述第一直角边对应的锐角为对应的竖线的第一视场角。
在第三方面的一种可选设计中,所述多条竖线包括第一竖线,所述多个竖直棱线包括第一竖直棱线,所述第一竖线对应于所述第一竖直棱线,以所述目标定位点为视点,水平视线由正北方向移动到所述第一竖直棱线的视角变化量为目标第二视场角,所述处理单元,还用于:
确定所述第一竖线对应的第三视场角为所述目标第二视场角,所述第三视场角表示以拍摄所述目标对象的光心为视点,水平视线由正北方向移动到所述第一竖线的视角变化量;基于所述第一竖线的第三视场角和所述第一竖线对应的第一视场角确定拍摄所述目标对象的偏航角。
在第三方面的一种可选设计中,所述多条竖线还包括至少一个第二竖线,所述第一竖线包含的像素点数量大于任意一个第二竖线包含的像素点数量。
在第三方面的一种可选设计中,所述多条竖线还包括至少一个第二竖线,所述第一竖线与所述目标图像中相邻的第二竖线之间的水平像素距离大于第一预设值。
第四方面,本申请提供了一种服务器,包括:
收发单元,用于接收终端设备发送的目标对象的目标图像;
处理单元,用于从所述目标图像中提取多条竖线,其中,所述目标对象包括多个竖直棱线,每个竖直棱线对应于所述目标图像中的一条竖线;确定所述多条竖线的第一水平视场角分布,其中,所述第一水平视场角分布的视点为拍摄所述目标对象的光心;获取多个第一定位点,每个第一定位点对应于一个第二水平视场角分布,所述第二水平视场角分布表示以对应的第一定位点为视点,所述多个竖直棱线的视场角分布;确定所述多个第二视场角分布中与所述第一视场角分布重合度最高的第二视场角分布对应的第一定位点为目标定位点;
所述收发单元,还用于将所述目标定位点发送至所述终端设备。
在第四方面的一种可选设计中,所述处理单元,具体用于:
从所述目标图像中提取多个特征线;通过对所述目标图像进行视角变换调整所述多个特征线的斜率,得到多条竖线。
在第四方面的一种可选设计中,所述第一水平视场角分布包括多个第一视场角,每个第一视场角对应一条竖线,第一视场角表示以拍摄所述目标对象的光心为视点,水平视线由所述目标图像的中心点移动到对应的竖线的视角变化量;
所述第二水平视场角分布包括多个第二视场角,每个第二视场角对应一个竖直棱线,第二视场角表示以对应的第一定位点为视点,水平视线由正北方向移动到对应的竖直棱线的视角变化量。
在第四方面的一种可选设计中,处理单元,具体用于:
获取所述目标图像上的中心点到多条竖线的多个水平像素距离,其中,每个竖线对应一个水平像素距离;
以水平像素距离为第一直角边,拍摄所述目标对象的焦距为第二直角边,构建目标直角三角形,确定所述目标直角三角形中所述第一直角边对应的锐角为对应的竖线的第一视场角。
在第四方面的一种可选设计中,所述多条竖线包括第一竖线,所述多个竖直棱线包括第一竖直棱线,所述第一竖线对应于所述第一竖直棱线,以所述目标定位点为视点,水平视线由正北方向移动到所述第一竖直棱线的视角变化量为目标第二视场角,所述处理单元,还用于:
确定所述第一竖线对应的第三视场角为所述目标第二视场角,所述第三视场角表示以拍摄所述目标对象的光心为视点,水平视线由正北方向移动到所述第一竖线的视角变化量;
基于所述第一竖线的第三视场角和所述第一竖线对应的第一视场角确定拍摄所述目标对象的偏航角。
在第四方面的一种可选设计中,所述多条竖线还包括至少一个第二竖线,所述第一竖线包含的像素点数量大于任意一个第二竖线包含的像素点数量。
在第四方面的一种可选设计中,所述多条竖线还包括至少一个第二竖线,所述第一竖线与所述目标图像中相邻的第二竖线之间的水平像素距离大于第一预设值。
第五方面,本申请提供了一种终端设备,所述终端设备包含存储器、处理器和总线;所述存储器、以及所述处理器通过所述总线相连;
所述存储器用于存储计算机程序和指令;
所述处理器用于调用所述存储器中存储的所述计算机程序和指令,用于执行上述第一方面所述的方法。
第六方面,本申请提供了一种服务器,其特征在于,所述服务器包含收发器、存储器、处理器和总线;所述收发器、所述存储器、以及所述处理器通过所述总线相连;
所述存储器用于存储计算机程序和指令;
所述处理器用于调用所述存储器中存储的所述计算机程序和指令,用于执行上述第二方面所述的方法。
本申请实施例中,终端设备获取目标对象的目标图像;所述终端设备从所述目标图像中提取多条竖线,其中,所述目标对象包括多个竖直棱线,每个竖直棱线对应于所述目标图像中的一条竖线;所述终端设备确定所述多条竖线的第一水平视场角分布,其中,所述第一水平视场角分布的视点为拍摄所述目标对象的光心;所述终端设备获取多个第一定位点,每个第一定位点对应于一个第二水平视场角分布,所述第二水平视场角分布表示以对应的第一定位点为视点,所述多个竖直棱线的视场角分布;所述终端设备确定所述多个第二视场角分布中与所述第一视场角分布重合度最高的第二视场角分布对应的第一定位点为目标定位点。通过上述方式,基于从目标图像中获取到的针对于目标图像的视场角分布和预设的多个定位点的针对于目标图像的视场角分布的重合度比对,来确定拍摄的定位点,使得即使终端设备的GPS信号很弱,也可以实现精确的定位。
附图说明
图1a为本申请实施例提供的一种定位方法的流程示意图;
图1b为一种建筑物的结构示意图;
图2a为本申请实施例提供的一种建筑物分布示意图;
图2b为本申请实施例提供的一种目标图像的示意图;
图2c为本申请实施例提供的一种建筑物分布示意图;
图2d为本申请实施例提供的一种进行语义分割处理的目标图像的示意图;
图2e为本申请实施例中获取建筑物的竖线的示意图;
图2f为一种目标图像的示意图;
图2g为一种目标图像的示意图;
图2h为一种目标图像的示意图;
图3a为一种目标图像的示意图;
图3b为一种视场角分布的示意图;
图4a为本申请实施例中选取备选点的一个实施例示意图;
图4b为本申请实施例中一种第一定位点的分布示意图;
图4c为本申请实施例中根据LOD模型进行圆柱投影的示意图;
图4d为本申请实施例中的一种数据结构示意图;
图5为本申请实施例提供的一种定位方法的流程示意图;
图6为本申请实施例提供的一种终端设备的结构示意图;
图7为本申请实施例提供的一种服务器的结构示意图;
图8为本申请实施例提供的一种终端设备的结构示意图;
图9是本发明实施例公开的一种AR设备的结构示意图;
图10是本发明实施例提供的一种服务器结构示意图。
具体实施方式
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例例如能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包括,例如,包括了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
参照图1,图1为本申请实施例提供的一种定位方法的流程示意图,如图1中示出的那样,本申请提供的定位方法包括:
101、终端设备获取目标对象的目标图像。
本申请实施例中,目标对象可以为建筑物。具体的,当用户需要获取当前所在的精确位置信息时,可以首先通过图像采集设备拍摄周围的建筑物。相应的,终端设备可以获取到图像采集设备拍摄建筑物得到的目标图像。
需要说明的是,获取目标图像的图像采集设备可以是单目相机、双目相机、深度相机或激光雷达等,此处对于图像采集设备的具体类型不做限定。该图像采集设备可以是设置在所述终端内的相机部件,还可以是外置于该终端且可与该终端通信的设备,图像采集设备的设置形式具体此处不做限定。
终端设备获取的目标图像,可以是一张图像,也可以是多张图像,此处对于获取的图像的数量不做限定。需要说明的是,在某些场景下,单张图像视场角较小,无法拍摄到一栋完整的建筑物,提供的信息有限,终端设备可以通过获取多张图像扩大视场角,增加图像的信息量。该多张图片为在同一位置进行拍摄得到。例如,用户通过终端设备拍摄建筑物并旋转该终端设备,通过等间隔抓取,或者智能识别等方式获取多张有重叠度的照片,通过图像拼接算法将多张图片进行拼接,可以得到包含建筑物的目标图像。
本申请实施例中,建筑物可以为棱柱形,其包括顶面的水平天际线、地面的水平地线和侧面的竖直棱线,参照图1b,图1b为一种建筑物的结构示意图,如图1b中示出的那样,建筑物为四棱柱,其包括4条水平天际线(天际线1,天际线2,天际线3,天际线4)、4条竖直棱线(竖直棱线1,竖直棱线2,竖直棱线3,竖直棱线4)和4条水平地线(地线1,地线2,地线3,地线4)。
参照图2a,图2a为本申请实施例提供的一种建筑物分布示意图,图2a的视角为竖直向下,如图2a示出的那样,图2a中包括建筑物1和建筑物2,需要说明的是,尽管图2a中未示出,目标图像还可以包括其他对象,例如植被和其他物体等。以图2a中示出的定位点1为拍摄点,按照图2a中示出的视角进行拍摄。拍摄得到的目标图像可以参照图2b,图2b为本申请实施例提供的一种目标图像的示意图,如图2b示出的那样,目标图像包括建筑物1和建筑物2,需要说明的是,尽管图2b中未示出,目标图像还可以包括其他对象,例如植被和其他物体等。
102、终端设备从所述目标图像中提取多条竖线,其中,所述目标对象包括多个竖直棱线,每个竖直棱线对应于所述目标图像中的一条竖线。
本申请实施例中,所述目标图像包括多条竖线,建筑物包括多个竖直棱线,每个竖直棱线对应于所述目标图像中的一条竖线。
本申请实施例中,终端设备在获取目标图像之后,可以从所述目标图像中提取多条竖线。
可选的,在一种实施例中,可以使用语义分割算法,识别目标图像中的不同类型物体的图像信息并进行区分。示例性的,可以参照图2c,图2c为本申请实施例提供的一种建筑物分布示意图,图2c的视角为竖直向下,如图2c示出的那样,图2c中包括建筑物1、建筑物2、建筑物3和建筑物4,需要说明的是,尽管图2a中未示出,目标图像还可以包括其他对象,例如植被和其他物体等。建筑物1包括四个竖直棱线(棱线a1、棱线a2、棱线a3、棱线a4),建筑物2包括四个竖直棱线(棱线b1、棱线b2、棱线b3、棱线b4),建筑物3包括四个竖直棱线(棱线c1、棱线c2、棱线c3、棱线c4),建筑物4包括四个竖直棱线(棱线d1、棱线d2、棱线d3、棱线d4),以图2c中示出的定位点1为拍摄点,按照图2c中示出的视角进行拍摄,其中,在建筑物1、建筑物2、建筑物3和建筑物4的竖直棱线没有被完全遮挡时,可以观察到的竖直棱线包括棱线a1、棱线a2、棱线b1、棱线b2、棱线c1和棱线d1,拍摄得到目标图像。
参照图2d,图2d为本申请实施例提供的一种进行语义分割处理的目标图像的示意图,如图2d示出的那样,目标图像包括语义分割后划分得到的建筑物1、建筑物2、建筑物3、建筑物4、以及其他对象(例如图2d中示出的植被、地面和天空)。然后,可以提取建筑物的轮廓线中的竖线作为目标图像的竖线,请参阅图2e,图2e为本申请实施例中获取建筑物的竖线的示意图,图中加粗的线段指示获取的轮廓竖线。
可选地,在另一种实施例中,可以使用线段检测算法(line segment detector,LSD)等直线提取算法获得图片中的规则化线段信息。接着,可以利用语义分割得到的分类结果掩模作为约束条件,剔除建筑物范围内部和外部的杂线段,只保留建筑物和天空交界处的多个线段。
本申请实施例中,需要说明的是,因为有一定的俯仰角和滚转角的存在,使得目标图像中的特征线(对应于目标对象的竖直棱线)会有一定的倾斜,然而,特征线的斜率并不会很小,如果上述获取到的线段中存在斜率过小的线段,可以确定该线段不对应于建筑物的竖直棱线。同时,目标图像中可能存在非建筑物的对象,该对象也可以包括相对竖直的特征线,然而该特征线并不对应于建筑物的竖直棱线,也需要剔除,由非建筑物的竖直特征线的长度不会很大,因此,可以剔除掉上述获取的多个线段中,长度较短的线段。
因此,基于建筑物轮廓具有一定的长度,特征线在用户拍摄时的俯仰角和滚转角的约束下,特征线的斜率应该在一定范围内。基于上述两点假设,可以预先设定特征线线段长度、特征线斜率两个参数,过滤掉上述获取的多个线段中,线段长度小于的预先设定特征线线段长度和斜率绝对值小于预设的特征线斜率的线段。
此外,需要说明的是,从目标图像中提取多个特征线的方式有多种,本申请对此具体不做限定。
基于上述可知,在拍摄时,图像采集设备可能存在一定的俯仰角和翻转角的偏移(俯仰角不为0、偏转角不为0、俯仰角和偏转角都不为0),为了准确获取到各个特征线在水平面上的视角分布,需要对目标图像进行视角变换,以使得目标图像中的多个特征线的斜率在第一预设范围内,进行视角变换后的目标图像包括多条竖线。换一种表述方式,可以对目标图像进行视角变换,使得进行视角变换后的目标图像相当于在俯仰角和偏转角都为0的情况下对目标对象进行拍摄得到的。
示例性的,把从任意视角拍摄的目标图片转换到俯仰角为0且滚转角为0的情况,只需按照透视投影的规则,计算按照相应投影矩阵到成像面的图像像素坐标。其中,从像平面坐标系到世界坐标系的投影公式可以如公式(1)所示:
其中,Xw,Yw,Zw表示世界坐标系中的坐标,x,y表示Xw,Yw在像平面坐标系中的成像坐标,z为1,fx、fy表示x、y方向的焦距,cx,cy表示像主点偏移,t为平移矩阵,R表示旋转矩阵,由俯仰角滚转角θ、偏航角φ三个姿态角构建,如公式(2)所示:
由于进行图像校正时,世界坐标不变,相机内参不变,平移矩阵不变,只有姿态角的变化上,通过公式(3)实现:
其中,x、y是进行视角变换前的像素坐标,x’、y’是校正后的坐标,R1是用俯仰角滚转角θ=0、偏航角φ=0构建的初始旋转平面,R2是步长跌点的旋转矩阵,是在R1上的增量。例如从/>开始,按步长0.1增加,直到到达某个阈值或者迭代次数停止。先调整俯仰角,俯仰为主,滚转角在俯仰角确定后进行微调。
可选地,在一种实施例中,终端设备的惯性测量单元(inertial measurementunit,IMU)可以用来估计终端设备的姿态,即终端设备可以基于惯性测量单元获取拍摄目标对象时终端设备的俯仰角和滚转角,然而由于终端设备的传感器的精度较差,可能会形成10°左右的误差,无法直接作为旋转矩阵用于图像校正。因此,可以将基于IMU获取到的俯仰角和滚转角作为初始旋转矩阵R,将与水平面垂直的竖线经过R变换投影到图片上,在俯仰方向和滚转方向上分别以一段步长进行迭代,并计算多个特征线的重投影误差,直到达到误差阈值,并将当前旋转矩阵作为最优旋转矩阵。基于最优旋转矩阵,可以讲目标图像进行视角变换,以使得目标图像中的多个特征线的斜率在第一预设范围内。
示例性的,参照图2f,图2f为一种目标图像的示意图,如图2f中示出的那样,目标图像包括特征线1和特征线2,然而由于拍摄时,俯仰角和滚转角不为0,因此,特征线1和特征线2并不是严格的竖线。本实施例中,可以基于一定的步长,对目标图像的进行视角变换(减小俯仰角和滚转角),并在每次变换后,获取到特征线1和特征线2的斜率。参照图2g,图2g为一种目标图像的示意图,如图2g中示出的那样,目标图像包括特征线1和特征线2,特征线1和特征线2的斜率相比于图2f中特征线1和特征线2的斜率分别变大。参照图2g,图2g为一种目标图像的示意图,如图2g中示出的那样,目标图像包括竖线1和竖线2,此时,基于对目标图像的视角变换,可以认为图2f和图2g中的特征线1和特征线2的斜率满足要求(在第一预设范围内),即变为图2h中的竖线1和竖线2。
103、终端设备确定所述多条竖线的第一水平视场角分布,其中,所述第一水平视场角分布的视点为以拍摄所述目标对象的光心。
本申请实施例中,所述第一水平视场角分布包括多个第一视场角,每个第一视场角对应一条竖线,第一视场角表示以拍摄所述目标对象的光心为视点,水平视线由所述目标图像的中心点移动到对应的竖线的视角变化量。
本申请实施例中,可以确定各个竖线的水平像素位置,并基于各个竖线的水平像素位置和拍摄目标对象的焦距,确定竖线对应的第一视场角。其中,目标图像的像素点的像素坐标为(x,y),水平像素位置可以为竖线上的像素点的像素坐标中的x坐标。
在一种实施例中,由于目标图像的竖线是竖直的,因此竖线上的任意一个像素点的x坐标相同,只需要选择特征线上的任意一个像素点的x坐标就可以确定该竖线在目标图像中的水平像素位置。在一种实施例中,可以通过竖线与目标图像中心点的像素位置关系确定该竖线在目标图像中的水平像素位置。
示例性的,请参阅图3a,图3a为一种目标图像的示意图,如图3a中示出的那样,目标图像包括竖线1、竖线2和竖线3。其中,F0表示中心点到竖线2之间的水平像素坐标的差值;A0表示中心点到竖线1之间的水平像素坐标的差值;B0表示中心点到竖线3之间的水平像素坐标的差值。
请参阅图3b,图3b为一种视场角分布的示意图,其中,A点、B点连成的直线段代表目标图像的成像面。C点为线段AB的中点,即代表目标图像的中心点,线段OC表示拍摄目标对象的焦距。
由图3b所示,A点、F点和B点各代表建筑物的一条竖线(竖线1、竖线2和竖线3)在目标图像上的水平像素位置,连接A点与O点,B点与O点,F点与O点,其中线段AC的长度表示竖线1与目标图像中心点之间的水平像素坐标的差值,FC表示中心点到竖线2之间的水平像素坐标的差值;BC表示中心点到竖线3之间的水平像素坐标的差值。
相应的,竖线1、竖线2和竖线3在水平面上的第一视场角分布可以包括多个第一视场角(角1,角2和角3),角1表示以拍摄所述目标对象的光心为视点,水平视线由所述目标图像的中心点移动到竖线1的视角变化量,角2表示以拍摄所述目标对象的光心为视点,水平视线由所述目标图像的中心点移动到竖线2的视角变化量,角3表示以拍摄所述目标对象的光心为视点,水平视线由所述目标图像的中心点移动到竖线3的视角变化量。
可选地,在一种实施例中,可以通过如下方式进行第一视场角的计算:
获取所述目标图像上的中心点到多条竖线的多个水平像素距离,其中,每个竖线对应一个水平像素距离,以水平像素距离为第一直角边,拍摄所述目标对象的焦距为第二直角边,构建目标直角三角形,确定所述目标直角三角形中所述第一直角边对应的锐角为对应的竖线的第一视场角。
例如,针对于图3a中的竖线1,中心点到竖线1的水平像素距离为图3b中示出的线段AC,以线段AC为第一直角边,拍摄所述目标对象的焦距0C为第二直角边,确定所述目标直角三角形中所述第一直角边(线段AC)对应的锐角(角1)为竖线1的第一视场角,其中,角1=arctan(AC/OC)。
针对于图3a中的竖线2,中心点到竖线2的水平像素距离为图3b中示出的线段FC,以线段FC为第一直角边,拍摄所述目标对象的焦距0C为第二直角边,确定所述目标直角三角形中所述第一直角边(线段FC)对应的锐角(角2)为竖线2的第一视场角,其中,角2=arctan(FC/OC)。
针对于图3a中的竖线3,中心点到竖线3的水平像素距离为图3b中示出的线段BC,以线段BC为第一直角边,拍摄所述目标对象的焦距0C为第二直角边,确定所述目标直角三角形中所述第一直角边(线段BC)对应的锐角(角3)为竖线3的第一视场角,其中,角3=arctan(BC/OC)。
本申请实施例中,多条竖线的第一水平视场角分布可以表示为{角1,角2,角3}。
本申请实施例中,由于目标对象(建筑物)包括的多个竖直棱线与目标图像中的多条竖线一一对应,因此,获取到了多条竖线的第一水平视场角分布,相当于获取到了以拍摄所述目标对象的光心为视点,目标对象的多个竖直棱线在水平面上的视场角分布。
104、终端设备获取多个第一定位点,每个第一定位点对应于一个第二水平视场角分布,所述第二水平视场角分布表示以对应的第一定位点为视点,所述多个竖直棱线的视场角分布。
本申请实施例中,基于卫星图片,终端设备可以根据网格简化算法,生成不同细节层次(level of detail,LOD)模型,示例性的,LOD0为建筑物俯视平面轮廓,LOD1为带有高度信息的建筑物立体轮廓,LOD2带有建筑物屋顶信息。
本申请实施例中,终端设备可以基于卫星图片生成LOD0模型,提取道路层,在道路上每隔一定间隔选取备选点,该间隔例如可以为一米,具体间隔数值此处不做限定。请参阅图4a,图4a为本申请实施例中选取备选点的一个实施例示意图,图中道路上的点即为备选点。
本申请实施例中,终端设备可以基于GPS获取到拍摄目标对象所在的第二定位点,然而在一些场景中,由于建筑物的遮挡,会使得基于GPS获取到的第二定位点的精度较低。
本申请实施例中,可以基于GPS获取到的第二定位点确定预设范围内的备选点为第一定位点,请参阅图4b,图4b为本申请实施例中一种第一定位点的分布示意图,如图4b中示出的那样,实心圆为第二点位点,即终端设备基于GPS获取到的定位点,而空心圆则表示多个第一定位点。需要说明的是,预设范围的形状可以为矩形或圆形,此处并不限定。
本申请实施例中,在LOD0模型中,针对于每一个第一定位点,可以以第一定位点为视点,构建圆柱投影,获取360度展开的投影结果,其中,0度和360度可以表示正北方向。示例性的,请参阅图4c,图4c为本申请实施例中根据LOD模型进行圆柱投影的示意图,横轴为角度,纵轴是周边建筑物的透视投影高度。构建圆柱投影时可设置不同的采集精度,例如,精度可以设置为1度、0.1度等,具体此处不做限定。
本申请实施例中,可以提取圆柱投影中建筑物的竖线,请参阅图4c中加粗的线段,为LOD模型中建筑物的竖直棱线进行圆柱投影,获取的竖线。
基于进行圆柱投影后得到的竖直棱线在水平面上的角度分布,可以确定第一定位点对的第二水平视场角分布,可选的,所述第二水平视场角分布包括多个第二视场角,每个第二视场角对应一个竖直棱线,第二视场角表示以对应的第一定位点为视点,水平视线由正北方向移动到对应的竖直棱线的视角变化量。
以图4c示出的第二水平视场角分布为例,此时,0度表示正北方向,因此可以确定第一定位点对应的第二水平视场角分布包括多个第二视场角{40,85,175,265,320}。
在计算机存储中,采用键值(key-value)结构存储第一定位点以及对应的多个第二视场角,其中key表示第一定位点的坐标,value表示第二视场角的大小。
结构存储第一定位点以及对应的多个第二视场角的数据结构可能有多种,可选的,请参阅图4d,图4d为本申请实施例中的一种数据结构示意图,图4d中,按照的1度精度,将360度循环数组展开成长度为360的一维数组,数字“1”的位置代表当前坐标系下可以获取到图像中竖直棱线的角度。
例如第4位的“1”是指以当前对应的第一定位点为视点,水平视线由正北方向移动4度可以移动到一个竖直棱线,数字为“0”的位置表示当前朝向上未检测到或者没有建筑物的竖直棱线。
105、所述终端设备确定所述多个第二视场角分布中与所述第一视场角分布重合度最高的第二视场角分布对应的第一定位点为目标定位点。
本申请实施例中,第一水平视场角分布可以表示以拍摄目标对象的光心为视点,目标对象的各个竖直棱线在水平面上的分布。而第二水平视场角可以表示以对应的第一定位点为视点,目标对象的各个竖直棱线在水平面上的分布,第一定位点的坐标可以基于LOD0图像信息得到,因此,可以通过将第一水平视场角分布与第二水平视场角分布进行重合度匹配,根据重合度的大小,从多个第一定位中确定目标定位点,该目标定位点为多个第一定位点中最可能是终端设备所在的定位点。
具体的,终端设备在获取到多个第一定位点后,可以获取到每个第一定位点对应的第二水平视场角分布,相应的,可以进行第一水平视场角分布与第二水平视场角分布的比对。
示例性的,在一种实施例中,第一水平视场角分布可以表示为{a1,a2,a3,a4},其中第一水平视场角分布包括四个第一视场角,其中,视场角a1对应于竖线1,视场角a2对应于竖线2,视场角a3对应于竖线3,视场角a4对应于竖线4。
然而,第一水平视场角分布只能表示各个竖线之间的相对视场角关系,并不能表示每个竖线的绝对视场角位置关系。
终端设备可以选择竖线1、竖线2、竖线3和竖线4中的一条竖线,以选择竖线1为例,可以通过从磁力计获取拍摄目标对象时的航偏角,该航偏角由于磁力计的精度问题,并不准确,终端设备可以确定一个预设误差角度范围,并将该竖线1在该预设误差角度范围确定出对应的竖直棱线,由于竖直棱线的航偏角(第二视场角)是确定的,因此,可以确定竖线1对应的航偏角为第三视场角,其中,第三视场角等于竖直棱线1对应的第二视场角,基于第一水平角度分布,多条竖线中除了竖线1之外的竖线(竖线2、竖线3和竖线4)的航偏角也相应可以确定,例如为{b2,b3,b4}。相应的,竖线2对应于竖直棱线2,竖线3对应于竖直棱线3,竖线4对应于竖直棱线4。
竖直棱线2对应的第二视场角为c2,竖直棱线3对应的第二视场角为c3,竖直棱线4对应的第二视场角为c4,此时,可以将b2与c2进行比对,b3和c3进行比对,b4和c4进行比对,例如,可以将b2与c2相减,得到偏差角1,将b3与c3相减,得到偏差角2,将b4与c4相减,得到偏差角3。
通过偏差角1、偏差角2和偏差角3的大小,可以评估第一水平角度分布和第二水平角度分布的差异,例如可以通过计算偏差角1、偏差角2和偏差角3的平均值来评估第一水平角度分布和第二水平角度分布的差异,或者通过计算偏差角1、偏差角2和偏差角3的欧氏距离来评估第一水平角度分布和第二水平角度分布的差异,此处并不限定。
此时,针对于每个第一定位点,终端设备都可以得到一个差异,差异越大,对应的第一定位点的第二水平角度分布和第一水平角度分布的重合度越低。
本申请实施例中,终端设备可以选择与第一水平角度分布重合度最高的第二角度分布对应的第一定位点为目标定位点,该目标定位点的坐标位置,即为拍摄目标对象的终端设备所在的位置。
接下来论述在确定了目标定位点之后,终端设备如何确定图像采集设备拍摄目标对象时的航偏角。
本申请实施例中,目标图像中的竖线的数量为多个,终端设备可以从多条竖线中选择一个(第一竖线),并获取到对应的基于磁力计获取终端设备拍摄目标对象时的航偏角,该航偏角由于磁力计的精度问题,并不准确,终端设备可以确定一个预设误差角度范围,并将该第一竖线在该预设误差角度范围确定出对应的第一竖直棱线,由于第一竖直棱线的航偏角(第二视场角)是确定的,因此,可以确定第一特征线对应的航偏角为第三视场角,其中,第三视场角等于第一竖直棱线对应的第二视场角,基于第一水平角度分布,多条竖线中除了第一竖线之外的竖线的航偏角也相应可以确定。进而终端设备可以基于所述第一竖线的第三视场角和所述第一竖线对应的第一视场角确定拍摄所述目标对象的偏航角(即拍摄目标对象的光轴对应的航偏角)。
需要说明的是,在一种实施例中,所述多条竖线还包括至少一个第二竖线,所述第一竖线包含的像素点数量大于任意一个第二竖线包含的像素点数量。即,第一竖线为多条竖线中像素长度最大的。
需要说明的是,在一种实施例中,所述多条竖线还包括至少一个第二竖线,所述第一竖线与所述目标图像中相邻的第二竖线之间的水平像素距离大于第一预设值。
本申请实施例中,终端设备获取目标对象的目标图像;所述终端设备从所述目标图像中提取多条竖线,其中,所述目标对象包括多个竖直棱线,每个竖直棱线对应于所述目标图像中的一条竖线;所述终端设备确定所述多条竖线的第一水平视场角分布,其中,所述第一水平视场角分布的视点为拍摄所述目标对象的光心;所述终端设备获取多个第一定位点,每个第一定位点对应于一个第二水平视场角分布,所述第二水平视场角分布表示以对应的第一定位点为视点,所述多个竖直棱线的视场角分布;所述终端设备确定所述多个第二视场角分布中与所述第一视场角分布重合度最高的第二视场角分布对应的第一定位点为目标定位点。通过上述方式,基于从目标图像中获取到的针对于目标图像的视场角分布和预设的多个定位点的针对于目标图像的视场角分布的重合度比对,来确定拍摄的定位点,使得即使终端设备的GPS信号很弱,也可以实现精确的定位。
参照图5,图5为本申请实施例提供的一种定位方法的流程示意图,所述方法包括:
501、服务器接收终端设备发送的目标对象的目标图像。
502、所述服务器从所述目标图像中提取多条竖线,其中,所述目标对象包括多个竖直棱线,每个竖直棱线对应于所述目标图像中的一条竖线。
503、所述服务器确定所述多条竖线的第一水平视场角分布,其中,所述第一水平视场角分布的视点为拍摄所述目标对象的光心。
504、所述服务器获取多个第一定位点,每个第一定位点对应于一个第二水平视场角分布,所述第二水平视场角分布表示以对应的第一定位点为视点,所述多个竖直棱线的视场角分布。
505、所述服务器确定所述多个第二视场角分布中与所述第一视场角分布重合度最高的第二视场角分布对应的第一定位点为目标定位点。
506、所述服务器将所述目标定位点发送至所述终端设备。
本申请实施例中,关于服务器如何确定目标定位点可以参照上述实施例中终端确定目标定位点的描述,这里不再赘述。
本申请实施例中,服务器接收终端设备发送的目标对象的目标图像;所述服务器从所述目标图像中提取多条竖线,其中,所述目标对象包括多个竖直棱线,每个竖直棱线对应于所述目标图像中的一条竖线;所述服务器确定所述多条竖线的第一水平视场角分布,其中,所述第一水平视场角分布的视点为拍摄所述目标对象的光心;所述服务器获取多个第一定位点,每个第一定位点对应于一个第二水平视场角分布,所述第二水平视场角分布表示以对应的第一定位点为视点,所述多个竖直棱线的视场角分布;所述服务器确定所述多个第二视场角分布中与所述第一视场角分布重合度最高的第二视场角分布对应的第一定位点为目标定位点;所述服务器将所述目标定位点发送至所述终端设备。通过上述方式,基于从目标图像中获取到的针对于目标图像的视场角分布和预设的多个定位点的针对于目标图像的视场角分布的重合度比对,来确定拍摄的定位点,使得即使终端设备的GPS信号很弱,也可以实现精确的定位。
参照图6,图6为本申请实施例提供的一种终端设备的结构示意图,如图6中示出的那样,终端设备包括:
获取单元601,用于获取目标对象的目标图像;
处理单元602,用于从所述目标图像中提取多条竖线,其中,所述目标对象包括多个竖直棱线,每个竖直棱线对应于所述目标图像中的一条竖线;确定所述多条竖线的第一水平视场角分布,其中,所述第一水平视场角分布的视点为拍摄所述目标对象的光心;获取多个第一定位点,每个第一定位点对应于一个第二水平视场角分布,所述第二水平视场角分布表示以对应的第一定位点为视点,所述多个竖直棱线的视场角分布;确定所述多个第二视场角分布中与所述第一视场角分布重合度最高的第二视场角分布对应的第一定位点为目标定位点。
可选的,在一种实施例中,所述处理单元602,具体用于:
从所述目标图像中提取多个特征线;通过对所述目标图像进行视角变换调整所述多个特征线的斜率,得到多条竖线。
可选的,在一种实施例中,所述第一水平视场角分布包括多个第一视场角,每个第一视场角对应一条竖线,第一视场角表示以拍摄所述目标对象的光心为视点,水平视线由所述目标图像的中心点移动到对应的竖线的视角变化量;
所述第二水平视场角分布包括多个第二视场角,每个第二视场角对应一个竖直棱线,第二视场角表示以对应的第一定位点为视点,水平视线由正北方向移动到对应的竖直棱线的视角变化量。
可选的,在一种实施例中,所述处理单元602,具体用于:
获取所述目标图像上的中心点到多条竖线的多个水平像素距离,其中,每个竖线对应一个水平像素距离;以水平像素距离为第一直角边,拍摄所述目标对象的焦距为第二直角边,构建目标直角三角形,确定所述目标直角三角形中所述第一直角边对应的锐角为对应的竖线的第一视场角。
可选的,在一种实施例中,所述多条竖线包括第一竖线,所述多个竖直棱线包括第一竖直棱线,所述第一竖线对应于所述第一竖直棱线,以所述目标定位点为视点,水平视线由正北方向移动到所述第一竖直棱线的视角变化量为目标第二视场角,所述处理单元602,还用于:
确定所述第一竖线对应的第三视场角为所述目标第二视场角,所述第三视场角表示以拍摄所述目标对象的光心为视点,水平视线由正北方向移动到所述第一竖线的视角变化量;基于所述第一竖线的第三视场角和所述第一竖线对应的第一视场角确定拍摄所述目标对象的偏航角。
可选的,在一种实施例中,所述多条竖线还包括至少一个第二竖线,所述第一竖线包含的像素点数量大于任意一个第二竖线包含的像素点数量。
可选的,在一种实施例中,所述多条竖线还包括至少一个第二竖线,所述第一竖线与所述目标图像中相邻的第二竖线之间的水平像素距离大于第一预设值。
参照图7,图7为本申请实施例提供的一种服务器的结构示意图,如图7中示出的那样,服务器包括:
收发单元701,用于接收终端设备发送的目标对象的目标图像;
处理单元702,用于从所述目标图像中提取多条竖线,其中,所述目标对象包括多个竖直棱线,每个竖直棱线对应于所述目标图像中的一条竖线;确定所述多条竖线的第一水平视场角分布,其中,所述第一水平视场角分布的视点为拍摄所述目标对象的光心;获取多个第一定位点,每个第一定位点对应于一个第二水平视场角分布,所述第二水平视场角分布表示以对应的第一定位点为视点,所述多个竖直棱线的视场角分布;确定所述多个第二视场角分布中与所述第一视场角分布重合度最高的第二视场角分布对应的第一定位点为目标定位点;
所述收发单元701,还用于将所述目标定位点发送至所述终端设备。
可选的,在一种实施例中,所述处理单元702,具体用于:
从所述目标图像中提取多个特征线;通过对所述目标图像进行视角变换调整所述多个特征线的斜率,得到多条竖线。
可选的,在一种实施例中,所述第一水平视场角分布包括多个第一视场角,每个第一视场角对应一条竖线,第一视场角表示以拍摄所述目标对象的光心为视点,水平视线由所述目标图像的中心点移动到对应的竖线的视角变化量;
所述第二水平视场角分布包括多个第二视场角,每个第二视场角对应一个竖直棱线,第二视场角表示以对应的第一定位点为视点,水平视线由正北方向移动到对应的竖直棱线的视角变化量。
可选的,在一种实施例中,所述处理单元702,具体用于:
所述服务器获取所述目标图像上的中心点到多条竖线的多个水平像素距离,其中,每个竖线对应一个水平像素距离;
所述服务器以水平像素距离为第一直角边,拍摄所述目标对象的焦距为第二直角边,构建目标直角三角形,确定所述目标直角三角形中所述第一直角边对应的锐角为对应的竖线的第一视场角。
可选的,在一种实施例中,所述多条竖线包括第一竖线,所述多个竖直棱线包括第一竖直棱线,所述第一竖线对应于所述第一竖直棱线,以所述目标定位点为视点,水平视线由正北方向移动到所述第一竖直棱线的视角变化量为目标第二视场角,所述处理单元702,还用于:
所述服务器确定所述第一竖线对应的第三视场角为所述目标第二视场角,所述第三视场角表示以拍摄所述目标对象的光心为视点,水平视线由正北方向移动到所述第一竖线的视角变化量;
所述服务器基于所述第一竖线的第三视场角和所述第一竖线对应的第一视场角确定拍摄所述目标对象的偏航角。
可选的,在一种实施例中,所述多条竖线还包括至少一个第二竖线,所述第一竖线包含的像素点数量大于任意一个第二竖线包含的像素点数量。
可选的,在一种实施例中,所述多条竖线还包括至少一个第二竖线,所述第一竖线与所述目标图像中相邻的第二竖线之间的水平像素距离大于第一预设值。
参照图8,图8为本申请实施例提供的一种终端设备的结构示意图。该终端设备可以用于实施上述实施例所示出的定位方法中的终端设备所执行的功能,以终端设备为手机为例。具体来讲:
终端设备可以包括射频(Radio Frequency,以下简称:RF)电路810、包括有一个或一个以上计算机可读存储介质的存储器820、输入单元830、显示单元840、传感器850、音频电路860、传输模块870、包括有一个或者一个以上处理核心的处理器880、以及电源890等部件。本领域技术人员可以理解,图8中示出的终端结构并不构成对终端设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
RF电路810可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器880处理;另外,将涉及上行的数据发送给基站。通常,RF电路810包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM)卡、收发信机、耦合器、低噪声放大器(low noise amplifier,LNA)、双工器等。此外,RF电路810还可以通过无线通信与网络和其他终端通信。该无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(global system ofmobilecommunication,GSM)、通用分组无线服务(general packet radio service,GPRS)、码分多址(code division multiple access,CDMA)、宽带码分多址(wideband codedivision multiple access,WCDMA)、长期演进(long term evolution,LTE)、电子邮件、短消息服务(short messaging service,SMS)等。
存储器820可用于存储软件程序以及模块,如上述示例性实施例所示出的终端所对应的软件程序以及模块,处理器880通过运行存储在存储器820的软件程序以及模块,从而执行各种功能应用以及数据处理,如实现基于视频的交互等。存储器820可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据终端设备的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器820可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器820还可以包括存储器控制器,以提供处理器880和输入单元830对存储器820的访问。
输入单元830可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,输入单元830可包括触敏表面831以及其他输入终端832。触敏表面831,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面831上或在触敏表面831附近的操作),并根据预先设定的程式驱动相应的链接装置。可选的,触敏表面831可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器880,并能接收处理器880发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面831。除了触敏表面831,输入单元830还可以包括其他输入终端832。具体地,其他输入终端832可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元840可用于显示由用户输入的信息或提供给用户的信息以及终端设备的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。
显示单元840可包括显示面板841,可选的,可以采用液晶显示器(liquid crystaldisplay,LCD)、有机发光二极管(organic light-emitting diode,OLED)等形式来配置显示面板841。进一步的,触敏表面831可覆盖显示面板841,当触敏表面831检测到在其上或附近的触摸操作后,传送给处理器880以确定触摸事件的类型,随后处理器880根据触摸事件的类型在显示面板841上提供相应的视觉输出。虽然在图8中,触敏表面831与显示面板841是作为两个独立的部件来实现输入和输出功能,但是在某些实施例中,可以将触敏表面831与显示面板841集成而实现输入和输出功能。
终端设备还可包括至少一种传感器850,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板841的亮度,接近传感器可在终端设备移动到耳边时,关闭显示面板841和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;终端设备还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器。
音频电路860、扬声器861,传声器862可提供用户与终端设备之间的音频接口。音频电路860可将接收到的音频数据转换后的电信号,传输到扬声器861,由扬声器861转换为声音信号输出;另一方面,传声器862将收集的声音信号转换为电信号,由音频电路860接收后转换为音频数据,再将音频数据输出处理器880处理后,经RF电路810以发送给比如另一终端,或者将音频数据输出至存储器820以便进一步处理。音频电路860还可能包括耳塞插孔,以提供外设耳机与终端设备的通信。
终端设备通过传输模块870可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线或有线的宽带互联网访问。虽然图8示出了传输模块870,但是可以理解的是,其并不属于终端设备的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器880是终端设备的控制中心,利用各种接口和线路链接整个手机的各个部分,通过运行或执行存储在存储器820内的软件程序和/或模块,以及调用存储在存储器820内的数据,执行终端设备的各种功能和处理数据,从而对手机进行整体监控。可选的,处理器880可包括一个或多个处理核心;优选的,处理器880可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器880中。
终端设备还包括给各个部件供电的电源890(比如电池),优选的,电源可以通过电源管理系统与处理器880逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源890还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管未示出,终端设备还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,终端设备的显示单元是触摸屏显示器,终端设备还包括有存储器,以及一个或者一个以上的程序,其中一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器执行上述一个或者一个以上程序包含用于实施下述实施例中终端所执行操作的指令。
在本发明实施例中,该终端所包括的处理器880还具有以下功能:
获取目标对象的目标图像;
从所述目标图像中提取多条竖线,其中,所述目标对象包括多个竖直棱线,每个竖直棱线对应于所述目标图像中的一条竖线;
确定所述多条竖线的第一水平视场角分布,其中,所述第一水平视场角分布的视点为拍摄所述目标对象的光心;
获取多个第一定位点,每个第一定位点对应于一个第二水平视场角分布,所述第二水平视场角分布表示以对应的第一定位点为视点,所述多个竖直棱线的视场角分布;
确定所述多个第二视场角分布中与所述第一视场角分布重合度最高的第二视场角分布对应的第一定位点为目标定位点。
本发明实施例中,该终端所包括的处理器880还可以控制RF模块810向服务器发送目标图像,并接收到服务器发送的目标定位点。
进一步地,上述终端设备还可以为增强现实(augmented reality,AR)设备,请参阅图9,图9是本发明实施例公开的一种AR设备的结构示意图。
如图9所示,所述AR设备包括处理器901,所述处理器901可以耦合一个或多个存储介质。该存储介质包括存储媒介911和至少一个存储器902。所述存储媒介911可以是只读的,如只读存储器(read-only memory,ROM),或者可读/可写的硬盘或闪存。存储器902例如可以是随机存取存储器(random access memory,RAM)。所述存储器902可以与处理器901结合,或者,集成于处理器901中,或者,由一个独立单元或多个单元构成。所述处理器901是所述AR设备的控制中心,具体提供用于执行指令、完成中断事件、提供时间功能以及其他诸多功能的时间序列及工艺设备。可选的,该处理器901包括一个或多个中央处理单元CPU,如图2中的CPU0和CPU1。可选的,所述AR设备还可以包括多个处理器,每一个处理器可以是单核或多核。除非特别说明,本发明所描述的处理器或存储器的具体实现方式包括通用组件或专用组件,该通用组件在特定时刻被配置用于执行某一任务,该专用组件被生产用于执行专用任务。本发明实施例所描述的处理器至少包括一个电子设备、电路、和/或被配置为处理数据(如计算机程序指令)的处理器芯片。所述处理器901,和/或,所述处理器912,或,所述处理器901和/或所述处理器912中的单个CPU所执行的程序代码可以存储在所述存储器902或所述存储介质911中。
进一步地,所述AR设备还包括前置摄像头903、前置测距仪904、后置摄像头905、后置测距仪906,输出模块907(如光学投影仪或激光投影仪等)和/或通信接口908。其中,所述前置摄像头903、所述前置测距仪904、所述后置摄像头905、所述后置测距仪906以及所述输出模块907与所述处理器901耦合。此外,所述AR设备还可以包括接收/发送电路909和天线910。所述接收/发送电路909和天线910用于实现AR设备与外部网络的连接。所述AR设备的组成单元可以通过通信总线相互耦合,所述通信总线至少包括以下任意一种:数据总线、地址总线、控制总线、扩展总线和局部总线。需要注意的是,所述AR设备仅仅是本发明实施例公开的一种示例实体装置形态,本发明实施例对AR设备的具体形态不做唯一限定。
所述AR设备的处理器901能够耦合所述至少一个存储器902,所述存储器902中预存有程序代码,所述程序代码具体包括图像获取模块、参数检测模块、系数确定模块、图像裁剪模块、影像生成模块、影像显示模块,所述存储器902还进一步存储有内核模块,所述内核模块包括操作系统(如WINDOWSTM,ANDROIDTM,IOSTM等)。
所述AR设备的处理器901被配置用于调用所述程序代码,以执行本发明实施例中的定位方法。
图10是本发明实施例提供的一种服务器结构示意图,该服务器可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上中央处理器(central processingunits,CPU)1022(例如,一个或一个以上处理器)和存储器1032,一个或一个以上存储应用程序1042或数据1044的存储介质1030(例如一个或一个以上海量存储设备)。其中,存储器1032和存储介质1030可以是短暂存储或持久存储。存储在存储介质1030的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对服务器中的一系列指令操作。更进一步地,中央处理器1022可以设置为与存储介质1030通信,在服务器上执行存储介质1030中的一系列指令操作。
服务器还可以包括一个或一个以上电源1026,一个或一个以上有线或无线网络接口1050,一个或一个以上输入输出接口1058,和/或,一个或一个以上操作系统1041。
上述实施例中由服务器所执行的步骤可以基于该图10所示的服务器结构。
该服务器所包括的CPU 1022还具有以下功能:
接收终端设备发送的目标对象的目标图像;
从所述目标图像中提取多条竖线,其中,所述目标对象包括多个竖直棱线,每个竖直棱线对应于所述目标图像中的一条竖线;
确定所述多条竖线的第一水平视场角分布,其中,所述第一水平视场角分布的视点为拍摄所述目标对象的光心;
获取多个第一定位点,每个第一定位点对应于一个第二水平视场角分布,所述第二水平视场角分布表示以对应的第一定位点为视点,所述多个竖直棱线的视场角分布;
确定所述多个第二视场角分布中与所述第一视场角分布重合度最高的第二视场角分布对应的第一定位点为目标定位点;
将所述目标定位点发送至所述终端设备。
在示例性实施例中,还提供了一种计算机可读存储介质,例如包括指令的存储器,上述指令可由终端中的处理器执行以完成下述实施例中的界面显示方法。例如,所述计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。
所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质(例如固态硬盘solid state disk(SSD))等。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围。
Claims (30)
1.一种定位方法,其特征在于,包括:
终端设备获取目标对象的目标图像;
所述终端设备从所述目标图像中提取多条竖线,其中,所述目标对象包括多个竖直棱线,每个竖直棱线对应于所述目标图像中的一条竖线;
所述终端设备确定所述多条竖线的第一水平视场角分布,其中,所述第一水平视场角分布的视点为拍摄所述目标对象的光心;
所述终端设备获取多个第一定位点,每个第一定位点对应于一个第二水平视场角分布,所述第二水平视场角分布表示以对应的第一定位点为视点,所述多个竖直棱线的视场角分布;
所述终端设备确定所述多个第二水平视场角分布中与所述第一水平视场角分布重合度最高的第二水平视场角分布对应的第一定位点为目标定位点。
2.根据权利要求1所述的方法,其特征在于,所述目标图像包括多个特征线,所述终端设备从所述目标图像中提取多条竖线,包括:
所述终端设备从所述目标图像中提取多个特征线;
所述终端设备通过对所述目标图像进行视角变换调整所述多个特征线的斜率,得到多条竖线。
3.根据权利要求1或2所述的方法,其特征在于,所述第一水平视场角分布包括多个第一视场角,每个第一视场角对应一条竖线,第一视场角表示以拍摄所述目标对象的光心为视点,水平视线由所述目标图像的中心点移动到对应的竖线的视角变化量;
所述第二水平视场角分布包括多个第二视场角,每个第二视场角对应一个竖直棱线,第二视场角表示以对应的第一定位点为视点,水平视线由正北方向移动到对应的竖直棱线的视角变化量。
4.根据权利要求1至2任一所述的方法,其特征在于,所述终端设备确定所述多条竖线的第一水平视场角分布,包括:
所述终端设备获取所述目标图像上的中心点到多条竖线的多个水平像素距离,其中,每个竖线对应一个水平像素距离;
所述终端设备以水平像素距离为第一直角边,拍摄所述目标对象的焦距为第二直角边,构建目标直角三角形,确定所述目标直角三角形中所述第一直角边对应的锐角为对应的竖线的第一视场角。
5.根据权利要求3所述的方法,其特征在于,所述多条竖线包括第一竖线,所述多个竖直棱线包括第一竖直棱线,所述第一竖线对应于所述第一竖直棱线,以所述目标定位点为视点,水平视线由正北方向移动到所述第一竖直棱线的视角变化量为目标第二视场角,所述方法还包括:
所述终端设备确定所述第一竖线对应的第三视场角为所述目标第二视场角,所述第三视场角表示以拍摄所述目标对象的光心为视点,水平视线由正北方向移动到所述第一竖线的视角变化量;
所述终端设备基于所述第一竖线的第三视场角和所述第一竖线对应的第一视场角确定拍摄所述目标对象的偏航角。
6.根据权利要求5所述的方法,其特征在于,所述多条竖线还包括至少一个第二竖线,所述第一竖线包含的像素点数量大于任意一个第二竖线包含的像素点数量。
7.根据权利要求5所述的方法,其特征在于,所述多条竖线还包括至少一个第二竖线,所述第一竖线与所述目标图像中相邻的第二竖线之间的水平像素距离大于第一预设值。
8.一种定位方法,其特征在于,所述方法包括:
服务器接收终端设备发送的目标对象的目标图像;
所述服务器从所述目标图像中提取多条竖线,其中,所述目标对象包括多个竖直棱线,每个竖直棱线对应于所述目标图像中的一条竖线;
所述服务器确定所述多条竖线的第一水平视场角分布,其中,所述第一水平视场角分布的视点为拍摄所述目标对象的光心;
所述服务器获取多个第一定位点,每个第一定位点对应于一个第二水平视场角分布,所述第二水平视场角分布表示以对应的第一定位点为视点,所述多个竖直棱线的视场角分布;
所述服务器确定所述多个第二水平视场角分布中与所述第一水平视场角分布重合度最高的第二水平视场角分布对应的第一定位点为目标定位点;
所述服务器将所述目标定位点发送至所述终端设备。
9.根据权利要求8所述的方法,其特征在于,所述目标图像包括多个特征线,所述服务器从所述目标图像中提取多条竖线,包括:
所述服务器从所述目标图像中提取多个特征线;
所述服务器通过对所述目标图像进行视角变换调整所述多个特征线的斜率,得到多条竖线。
10.根据权利要求8或9所述的方法,其特征在于,所述第一水平视场角分布包括多个第一视场角,每个第一视场角对应一条竖线,第一视场角表示以拍摄所述目标对象的光心为视点,水平视线由所述目标图像的中心点移动到对应的竖线的视角变化量;
所述第二水平视场角分布包括多个第二视场角,每个第二视场角对应一个竖直棱线,第二视场角表示以对应的第一定位点为视点,水平视线由正北方向移动到对应的竖直棱线的视角变化量。
11.根据权利要求8至9任一所述的方法,其特征在于,所述服务器确定所述多条竖线的第一水平视场角分布,包括:
所述服务器获取所述目标图像上的中心点到多条竖线的多个水平像素距离,其中,每个竖线对应一个水平像素距离;
所述服务器以水平像素距离为第一直角边,拍摄所述目标对象的焦距为第二直角边,构建目标直角三角形,确定所述目标直角三角形中所述第一直角边对应的锐角为对应的竖线的第一视场角。
12.根据权利要求10所述的方法,其特征在于,所述多条竖线包括第一竖线,所述多个竖直棱线包括第一竖直棱线,所述第一竖线对应于所述第一竖直棱线,以所述目标定位点为视点,水平视线由正北方向移动到所述第一竖直棱线的视角变化量为目标第二视场角,所述方法还包括:
所述服务器确定所述第一竖线对应的第三视场角为所述目标第二视场角,所述第三视场角表示以拍摄所述目标对象的光心为视点,水平视线由正北方向移动到所述第一竖线的视角变化量;
所述服务器基于所述第一竖线的第三视场角和所述第一竖线对应的第一视场角确定拍摄所述目标对象的偏航角。
13.根据权利要求12所述的方法,其特征在于,所述多条竖线还包括至少一个第二竖线,所述第一竖线包含的像素点数量大于任意一个第二竖线包含的像素点数量。
14.根据权利要求12所述的方法,其特征在于,所述多条竖线还包括至少一个第二竖线,所述第一竖线与所述目标图像中相邻的第二竖线之间的水平像素距离大于第一预设值。
15.一种终端设备,其特征在于,包括:
获取单元,用于获取目标对象的目标图像;
处理单元,用于从所述目标图像中提取多条竖线,其中,所述目标对象包括多个竖直棱线,每个竖直棱线对应于所述目标图像中的一条竖线;确定所述多条竖线的第一水平视场角分布,其中,所述第一水平视场角分布的视点为拍摄所述目标对象的光心;获取多个第一定位点,每个第一定位点对应于一个第二水平视场角分布,所述第二水平视场角分布表示以对应的第一定位点为视点,所述多个竖直棱线的视场角分布;确定所述多个第二水平视场角分布中与所述第一水平视场角分布重合度最高的第二水平视场角分布对应的第一定位点为目标定位点。
16.根据权利要求15所述的终端设备,其特征在于,所述处理单元,具体用于:
从所述目标图像中提取多个特征线;通过对所述目标图像进行视角变换调整所述多个特征线的斜率,得到多条竖线。
17.根据权利要求15或16所述的终端设备,其特征在于,所述第一水平视场角分布包括多个第一视场角,每个第一视场角对应一条竖线,第一视场角表示以拍摄所述目标对象的光心为视点,水平视线由所述目标图像的中心点移动到对应的竖线的视角变化量;
所述第二水平视场角分布包括多个第二视场角,每个第二视场角对应一个竖直棱线,第二视场角表示以对应的第一定位点为视点,水平视线由正北方向移动到对应的竖直棱线的视角变化量。
18.根据权利要求15至16任一所述的终端设备,其特征在于,所述处理单元,具体用于:
获取所述目标图像上的中心点到多条竖线的多个水平像素距离,其中,每个竖线对应一个水平像素距离;以水平像素距离为第一直角边,拍摄所述目标对象的焦距为第二直角边,构建目标直角三角形,确定所述目标直角三角形中所述第一直角边对应的锐角为对应的竖线的第一视场角。
19.根据权利要求17所述的终端设备,其特征在于,所述多条竖线包括第一竖线,所述多个竖直棱线包括第一竖直棱线,所述第一竖线对应于所述第一竖直棱线,以所述目标定位点为视点,水平视线由正北方向移动到所述第一竖直棱线的视角变化量为目标第二视场角,所述处理单元,还用于:
确定所述第一竖线对应的第三视场角为所述目标第二视场角,所述第三视场角表示以拍摄所述目标对象的光心为视点,水平视线由正北方向移动到所述第一竖线的视角变化量;基于所述第一竖线的第三视场角和所述第一竖线对应的第一视场角确定拍摄所述目标对象的偏航角。
20.根据权利要求19所述的终端设备,其特征在于,所述多条竖线还包括至少一个第二竖线,所述第一竖线包含的像素点数量大于任意一个第二竖线包含的像素点数量。
21.根据权利要求19所述的终端设备,其特征在于,所述多条竖线还包括至少一个第二竖线,所述第一竖线与所述目标图像中相邻的第二竖线之间的水平像素距离大于第一预设值。
22.一种服务器,其特征在于,包括:
收发单元,用于接收终端设备发送的目标对象的目标图像;
处理单元,用于从所述目标图像中提取多条竖线,其中,所述目标对象包括多个竖直棱线,每个竖直棱线对应于所述目标图像中的一条竖线;确定所述多条竖线的第一水平视场角分布,其中,所述第一水平视场角分布的视点为拍摄所述目标对象的光心;获取多个第一定位点,每个第一定位点对应于一个第二水平视场角分布,所述第二水平视场角分布表示以对应的第一定位点为视点,所述多个竖直棱线的视场角分布;确定所述多个第二水平视场角分布中与所述第一水平视场角分布重合度最高的第二水平视场角分布对应的第一定位点为目标定位点;
所述收发单元,还用于将所述目标定位点发送至所述终端设备。
23.根据权利要求22所述的服务器,其特征在于,所述处理单元,具体用于:
从所述目标图像中提取多个特征线;通过对所述目标图像进行视角变换调整所述多个特征线的斜率,得到多条竖线。
24.根据权利要求22或23所述的服务器,其特征在于,所述第一水平视场角分布包括多个第一视场角,每个第一视场角对应一条竖线,第一视场角表示以拍摄所述目标对象的光心为视点,水平视线由所述目标图像的中心点移动到对应的竖线的视角变化量;
所述第二水平视场角分布包括多个第二视场角,每个第二视场角对应一个竖直棱线,第二视场角表示以对应的第一定位点为视点,水平视线由正北方向移动到对应的竖直棱线的视角变化量。
25.根据权利要求22至23任一所述的服务器,其特征在于,所述处理单元,具体用于:
获取所述目标图像上的中心点到多条竖线的多个水平像素距离,其中,每个竖线对应一个水平像素距离;
以水平像素距离为第一直角边,拍摄所述目标对象的焦距为第二直角边,构建目标直角三角形,确定所述目标直角三角形中所述第一直角边对应的锐角为对应的竖线的第一视场角。
26.根据权利要求24所述的服务器,其特征在于,所述多条竖线包括第一竖线,所述多个竖直棱线包括第一竖直棱线,所述第一竖线对应于所述第一竖直棱线,以所述目标定位点为视点,水平视线由正北方向移动到所述第一竖直棱线的视角变化量为目标第二视场角,所述处理单元,还用于:
确定所述第一竖线对应的第三视场角为所述目标第二视场角,所述第三视场角表示以拍摄所述目标对象的光心为视点,水平视线由正北方向移动到所述第一竖线的视角变化量;
基于所述第一竖线的第三视场角和所述第一竖线对应的第一视场角确定拍摄所述目标对象的偏航角。
27.根据权利要求26所述的服务器,其特征在于,所述多条竖线还包括至少一个第二竖线,所述第一竖线包含的像素点数量大于任意一个第二竖线包含的像素点数量。
28.根据权利要求26所述的服务器,其特征在于,所述多条竖线还包括至少一个第二竖线,所述第一竖线与所述目标图像中相邻的第二竖线之间的水平像素距离大于第一预设值。
29.一种终端设备,其特征在于,所述终端设备包含存储器、处理器和总线;所述存储器、以及所述处理器通过所述总线相连;
所述存储器用于存储计算机程序和指令;
所述处理器用于调用所述存储器中存储的所述计算机程序和指令,用于执行如权利要求1-7中任一项所述的方法。
30.一种服务器,其特征在于,所述服务器包含收发器、存储器、处理器和总线;所述收发器、所述存储器、以及所述处理器通过所述总线相连;
所述存储器用于存储计算机程序和指令;
所述处理器用于调用所述存储器中存储的所述计算机程序和指令,用于执行如权利要求8-14中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910736088.6A CN112348884B (zh) | 2019-08-09 | 2019-08-09 | 一种定位方法、终端设备和服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910736088.6A CN112348884B (zh) | 2019-08-09 | 2019-08-09 | 一种定位方法、终端设备和服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112348884A CN112348884A (zh) | 2021-02-09 |
CN112348884B true CN112348884B (zh) | 2024-06-04 |
Family
ID=74367053
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910736088.6A Active CN112348884B (zh) | 2019-08-09 | 2019-08-09 | 一种定位方法、终端设备和服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112348884B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006242731A (ja) * | 2005-03-03 | 2006-09-14 | Mitsubishi Electric Corp | 測位装置および測位方法 |
CN101114337A (zh) * | 2007-08-08 | 2008-01-30 | 华中科技大学 | 一种地面建筑物识别定位方法 |
CN103119611A (zh) * | 2010-06-25 | 2013-05-22 | 天宝导航有限公司 | 基于图像的定位的方法和设备 |
CN105989354A (zh) * | 2015-05-25 | 2016-10-05 | 乐视移动智能信息技术(北京)有限公司 | 一种定位方法与系统 |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2506411B (en) * | 2012-09-28 | 2020-03-11 | 2D3 Ltd | Determination of position from images and associated camera positions |
US10127685B2 (en) * | 2015-12-16 | 2018-11-13 | Objectvideo Labs, Llc | Profile matching of buildings and urban structures |
-
2019
- 2019-08-09 CN CN201910736088.6A patent/CN112348884B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2006242731A (ja) * | 2005-03-03 | 2006-09-14 | Mitsubishi Electric Corp | 測位装置および測位方法 |
CN101114337A (zh) * | 2007-08-08 | 2008-01-30 | 华中科技大学 | 一种地面建筑物识别定位方法 |
CN103119611A (zh) * | 2010-06-25 | 2013-05-22 | 天宝导航有限公司 | 基于图像的定位的方法和设备 |
CN105989354A (zh) * | 2015-05-25 | 2016-10-05 | 乐视移动智能信息技术(北京)有限公司 | 一种定位方法与系统 |
Also Published As
Publication number | Publication date |
---|---|
CN112348884A (zh) | 2021-02-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11189037B2 (en) | Repositioning method and apparatus in camera pose tracking process, device, and storage medium | |
US11798190B2 (en) | Position and pose determining method, apparatus, smart device, and storage medium | |
CN108924737B (zh) | 定位方法、装置、设备及计算机可读存储介质 | |
CN110967024A (zh) | 可行驶区域的检测方法、装置、设备及存储介质 | |
CN109165606B (zh) | 一种车辆信息的获取方法、装置以及存储介质 | |
KR101900873B1 (ko) | 안테나 엔지니어링 파라미터를 획득하는 방법, 장치 및 시스템 | |
CN110784651B (zh) | 一种防抖方法及电子设备 | |
WO2014169692A1 (en) | Method,device and storage medium for implementing augmented reality | |
CN112348886B (zh) | 视觉定位方法、终端和服务器 | |
CN113280752B (zh) | 一种凹槽深度测量方法、装置、系统及激光测量设备 | |
CN112150560B (zh) | 确定消失点的方法、装置及计算机存储介质 | |
CN107193820B (zh) | 位置信息获取方法、装置及设备 | |
CN110738185B (zh) | 表单对象的识别方法、装置及存储介质 | |
CN111127541B (zh) | 车辆尺寸的确定方法、装置及存储介质 | |
CN111093266B (zh) | 一种导航校准方法及电子设备 | |
CN112053360B (zh) | 图像分割方法、装置、计算机设备及存储介质 | |
CN112348884B (zh) | 一种定位方法、终端设备和服务器 | |
CN110095792B (zh) | 定位终端的方法及装置 | |
CN110990728A (zh) | 兴趣点信息的管理方法、装置、设备及存储介质 | |
CN113808209B (zh) | 定位识别方法、装置、计算机设备及可读存储介质 | |
CN112163062A (zh) | 数据处理方法、装置、计算机设备及存储介质 | |
CN111738282A (zh) | 一种基于人工智能的图像识别方法和相关设备 | |
CN112184543B (zh) | 一种用于鱼眼摄像头的数据展示方法和装置 | |
CN113689484B (zh) | 深度信息的确定方法、装置、终端及存储介质 | |
CN117635786A (zh) | 点云处理方法、装置、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |