一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种定位方法、装置及系统与流程

2022-02-24 17:43:14 来源:中国专利 TAG:


1.本技术实施例涉及通信领域,尤其涉及一种定位方法、装置及系统。


背景技术:

2.摄像头在城市的动态信息获取中占据重要的地位,其通过视觉定位技术从视频影像中提取行人、车辆等目标的位置信息。而城市中目标的位置信息是构建城市动态信息库的基础。摄像头可以广泛应用于智慧交通、平安城市、智慧园区等场景。目前,采用摄像头对城市中目标进行定位的定位方法可以采用以下两种方式:
3.第一种,make3d定位方法,该make3d方法是利用聚类算法将图像中属性(如着色和纹理等)相似的部分分割出来,将图像划分为很多极小的区域,该区域成为超像素块。再根据各个超像素块的深度信息及超像素块之间的联系,将各个超像素块所在的平面构成了3d模型的基本单元,得到一个反映实景的图像模型。在通过将图像输入图像模型,输出图像中目标物的位置信息,从而实现定位。
4.第二种,逐像素交汇定位,该定位方法是从不同位置出获取物理空间中的目标物的两幅图像,通过对两个图像进行特征提取和比对,在该两幅图像上找出目标物。再根据摄像头的参数、及摄像头成像的线性理论对目标物进行空间定位。
5.但是,第一种定位方法需要预先获取大量的样本数据,样本数据获取难度大,而且采用逐像素估计,计算量大;第二种定位方法需要实时对图像的特征进行提取和匹配,运算量较大。因此,现有的定位方法实时定位消耗资源较多。


技术实现要素:

6.本技术实施例提供一种定位方法、装置及系统,以实现对目标物进行实时定位时运算量较小,减少资源消耗,提高定位效率。
7.为达到上述目的,本技术实施例采用如下技术方案。
8.本技术实施例的第一方面,提供一种定位方法,方法包括:确定图像中目标物的定位像素,定位像素用于表征目标物在图像中的位置。根据定位像素对应的目标像素集合,及目标像素集合与物理空间的网格的映射关系,确定定位像素对应物理空间的网格。根据定位像素对应物理空间的网格对应的地理位置信息,确定定位像素的地理位置信息。目标像素集合为根据物理空间的网格及采集图像的摄像头的参数信息,对图像进行划分获得。其中,映射关系根据目标像素集合中的像素所属的物理空间的网格确定。本技术实施例通过物理空间网格覆盖区域在摄像头成像平面的像素集合,确定图像像素与物理空间的对应关系。再确定图像中目标物的定位像素,该定位像素对应的物理空间网格表示的地理位置信息,即为目标物的定位像素的地理位置信息,即可实现对目标物的定位,从而实现对目标物进行实时定位时运算量较小,减少资源消耗,提高定位效率。
9.基于第一方面所述的方法,根据物理空间的网格和摄像头的参数信息,确定图像中的各个像素集合,具体为:根据物理空间中网格的多个角点的地理位置坐标、投影矩阵、
摄像头的焦距和视点中心的地理位置坐标,确定图像中与多个角点中每个角点对应的像素坐标,投影矩阵用于表征图像中像素的像素坐标与物理空间中网格上角点的地理位置坐标的转换关系。根据图像中各个像素的像素坐标和多个角点间的关联关系,确定图像中由各个像素围成的目标多边形;其中,目标多边形包围的像素,或者,目标多边形包围的像素及目标多边形的边上的像素用于构建像素集合。
10.基于第一方面所述的方法,若摄像头采集的图像畸变,则在根据物理空间中网格的多个角点的地理位置坐标、投影矩阵、摄像头的焦距和视点中心的地理位置坐标,确定图像中各个像素的像素坐标之后,具体为:根据图像中各个像素的像素坐标,及径向形变系数和/或切向形变系数,确定图像中的各个像素的矫正像素坐标,矫正像素坐标用于确定图像中各个像素所属的像素集合。本技术实施例通过对摄像头采集的图像的各个像素的像素坐标进行校正,可以有效防止采用发生畸变的图像中的目标物的定位像素对该目标物进行定位,提高目标物定位的准确性。
11.基于第一方面所述的方法,根据物理空间中网格的多个角点的地理位置坐标、投影矩阵、摄像头的焦距和视点中心的地理位置坐标,确定图像中的各个像素的像素坐标,具体为:根据物理空间中网格的各边上的至少一个采样点及多个角点的地理位置坐标、投影矩阵、摄像头的焦距和视点中心的地理位置坐标,确定图像中的各个像素的像素坐标。本技术实施例通过在物理空间的网格的边上增加至少一个采样点,再通过至少一个采样点及网格的角点确定图像中的各个像素,使得物理空间的网格在图像上映射的区域更贴近自身,从而实现物理空间的网格在图像上更为精细的投影表达。另外,建立物理空间的网格的角点和/或采样点与图像的像素的映射关系,有效精确物理空间的网格投影表达,降低地形对定位精度的影响,有利于提高大尺度网格定位精度。
12.一种可能的设计中,摄像头的参数信息是根据样本图像中的特征点及其对应的地理位置坐标确定的。
13.一种可能的设计中,摄像头的参数信息包括:焦距、主像点位置、视频ccd尺寸和位姿参数,位姿参数包括摄像头的地理位置坐标,摄像头的俯仰角、横滚角和侧视角。
14.一种可能的设计中,地理位置信息包括:全球位置编码或地理位置坐标。
15.基于第一方面所述的方法,确定第一图像中目标物的第一定位像素的像素坐标,具体为:根据目标物的类型,确定第一图像中目标物的参考像素的像素坐标,参考像素用于确定第一图像中目标物的第一定位像素的像素坐标。需要说明的是,基于目标物的类型不同,第一图像中目标物的第一定位像素的确定方式不同。
16.基于第一方面所述的方法,确定第一图像中目标物的第一定位像素的像素坐标,具体为:若目标物的类型为车辆,则确定第一图像中车辆的参考像素的像素坐标、高度值和宽度值。根据参考像素的像素坐标、高度值和宽度值,确定第一图像中车辆的第一定位像素的像素坐标。
17.基于第一方面所述的方法,确定第一图像中目标物的第一定位像素的像素坐标,具体为:若所述目标物的类型为行人,则确定所述第一图像中所述行人的双脚对应的像素为所述参考像素。根据两个参考像素的像素坐标,确定第一图像中行人的第一定位像素的像素坐标。
18.基于第一方面所述的方法,确定第一图像中目标物的第一定位像素的像素坐标,
具体为:若所述目标物的类型为行人,则确定所述第一图像中所述行人的重心对应的像素为第一定位像素。
19.本技术实施例的第二方面,提供一种定位装置,包括:定位像素确定单元,用于确定图像中目标物的定位像素,定位像素用于表征目标物在图像中的位置。网格确定单元,用于根据定位像素对应的目标像素集合,及目标像素集合与物理空间的网格的映射关系,确定定位像素对应物理空间的网格。地理位置信息确定单元,用于根据定位像素对应物理空间的网格对应的地理位置信息,确定定位像素的地理位置信息。目标像素集合为根据物理空间的网格及采集图像的摄像头的参数信息,对图像进行划分获得。其中,映射关系根据目标像素集合中的像素所属的物理空间的网格确定。
20.基于第二方面所述的定位装置,该定位装置包括:第一像素坐标确定单元,用于根据物理空间中网格的多个角点的地理位置坐标、投影矩阵、摄像头的焦距和视点中心的地理位置坐标,确定图像中与多个角点中每个角点对应的像素坐标,投影矩阵用于表征图像中像素的像素坐标与物理空间中网格上角点的地理位置坐标的转换关系。目标多边形确定单元,用于根据图像中各个像素的像素坐标和多个角点间的关联关系,确定图像中由各个像素围成的目标多边形;其中,目标多边形包围的像素,或者,目标多边形包围的像素及目标多边形的边上的像素用于构建像素集合。
21.基于第二方面所述的定位装置,若摄像头采集的图像畸变,则定位装置包括:第二像素坐标确定单元,用于根据图像中各个像素的像素坐标,及径向形变系数和/或切向形变系数,确定图像中的各个像素的矫正像素坐标,矫正像素坐标用于确定图像中各个像素所属的像素集合。本技术实施例通过对摄像头采集的图像的各个像素的像素坐标进行校正,可以有效防止采用发生畸变的图像中的目标物的定位像素对该目标物进行定位,提高目标物定位的准确性。
22.基于第二方面所述的定位装置,第一像素坐标确定单元包括:第一像素坐标确定子单元,用于根据物理空间中网格的各边上的至少一个采样点及多个角点的地理位置坐标、投影矩阵、摄像头的焦距和视点中心的地理位置坐标,确定图像中的各个像素的像素坐标。本技术实施例通过在物理空间的网格的边上增加至少一个采样点,再通过至少一个采样点及网格的角点确定图像中的各个像素,使得物理空间的网格在图像上映射的区域更贴近自身,从而实现物理空间的网格在图像上更为精细的投影表达。另外,建立物理空间的网格的角点和/或采样点与图像的像素的映射关系,有效精确物理空间的网格投影表达,降低地形对定位精度的影响,有利于提高大尺度网格定位精度。
23.一种可能的设计中,摄像头的参数信息是根据样本图像中的特征点及其对应的地理位置坐标确定的。
24.一种可能的设计中,摄像头的参数信息包括:焦距、主像点位置、视频ccd尺寸和位姿参数,位姿参数包括摄像头的地理位置坐标,摄像头的俯仰角、横滚角和侧视角。
25.一种可能的设计中,地理位置信息包括:全球位置编码或地理位置坐标。
26.基于第二方面所述的定位装置,第一定位像素确定单元包括:第一确定子单元,用于若目标物的类型为车辆,则确定第一图像中车辆的参考像素的像素坐标、高度值和宽度值。第二确定子单元,用于根据参考像素的像素坐标、高度值和宽度值,确定第一图像中车辆的第一定位像素的像素坐标。
27.基于第二方面所述的定位装置,确定第一图像中目标物的第一定位像素的像素坐标,具体为:若所述目标物的类型为行人,则确定所述第一图像中所述行人的双脚对应的像素为所述参考像素。根据两个参考像素的像素坐标,确定第一图像中行人的第一定位像素的像素坐标。
28.基于第二方面所述的定位装置,确定第一图像中目标物的第一定位像素的像素坐标,具体为:若所述目标物的类型为行人,则确定所述第一图像中所述行人的重心对应的像素为第一定位像素。
29.本技术实施例的第三方面,提供一种定位系统,包括:至少一个摄像头和定位装置;其中,摄像头用于采集图像,并将图像发送给定位装置。定位装置用于接收摄像头采集的图像,并执行上述第一方面或者上述方面的任一种可能的设计的定位方法。
30.本技术实施例的第四方面,提供一种电子设备,该电子设备包括:处理器和存储器,存储器与处理器耦合,存储器用于存储计算机程序代码,计算机程序代码包括计算机指令,当处理器从存储器中读取计算机指令,以使得电子设备执行上述第一方面或者上述方面的任一种可能的设计所述的定位方法。
31.本技术实施例的第五方面,提供一种计算机程序产品,计算机程序产品包括计算机指令,当计算机指令在计算机上运行时,使得计算机执行上述第一方面或者上述方面的任一种可能的设计所述的定位方法。
32.本技术实施例的第六方面,提供一种计算机可读存储介质,计算机可读存储介质包括计算机指令,当计算机指令在计算机上运行时,使得计算机执行上述第一方面或者上述方面的任一种可能的设计所述的定位方法。
33.本技术实施例的第七方面,提供一种芯片系统,芯片系统包括一个或多个处理器,当一个或多个处理器执行指令时,一个或多个处理器执行上述第一方面或者上述方面的任一种可能的设计所述的定位方法。
附图说明
34.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
35.图1为本技术实施例提供的一种电子设备的架构示意图;
36.图2为本技术实施例提供的又一种定位系统的架构示意图;
37.图3为本技术实施例提供的另一种定位系统的架构示意图;
38.图4为本技术实施例提供的一种定位方法的流程图;
39.图5为本技术实施例提供的一种定位方法的应用场景示意图一;
40.图6为本技术实施例提供的一种定位方法的应用场景示意图二;
41.图7为本技术实施例提供的一种定位方法的应用场景示意图三;
42.图8为本技术实施例提供的一种定位方法的应用场景示意图四;
43.图9为本技术实施例提供的一种定位方法的应用场景示意图五;
44.图10为本技术实施例提供的一种世界地图的示意图;
45.图11为本技术实施例提供的一种定位方法的应用场景示意图六;
46.图12为本技术实施例提供的一种定位方法的应用场景示意图七;
47.图13为本技术实施例提供的一种定位方法的应用场景示意图八;
48.图14为本技术实施例提供的一种定位装置的组成示意图;
49.图15为本技术实施例提供的一种定位系统的组成示意图。
具体实施方式
50.摄像头在城市的动态信息获取中占据重要的地位,其通过视觉定位技术从视频影像中提取行人、车辆等目标的位置信息。而城市中目标的位置信息是构建城市动态信息库的基础。摄像头可以广泛应用于智慧交通、平安城市、智慧园区等场景。目前,采用摄像头对城市中目标进行定位的定位方法可以采用以下两种方式:
51.第一种,make3d定位方法,该make3d方法是利用聚类算法将图像中属性(如着色和纹理等)相似的部分分割出来,将图像划分为很多极小的区域,该区域称为超像素块。再根据各个超像素块的深度信息及超像素块之间的联系,将各个超像素块所在的平面构成了3d模型的基本单元,得到一个反映实景的图像模型。在通过将图像输入图像模型,输出图像中目标物的位置信息,从而实现定位。
52.第二种,逐像素交汇定位,该定位方法是从不同位置出获取物理空间中的目标物的两幅图像,通过对两个图像进行特征提取和比对,在该两幅图像上找出目标物。再根据摄像头的参数、及摄像头成像的线性理论对目标物进行空间定位。
53.但是,第一种定位方法需要预先获取大量的样本数据,样本数据获取难度大,而且采用逐像素估计,计算量大;第二种定位方法需要实时对图像的特征进行提取和匹配,运算量较大。因此,现有的定位方法实时定位消耗资源较多。
54.为解决该技术问题,本技术实施例提供一种定位方法,该方法包括:确定通过图像中目标物的定位像素,并确定目标物的定位像素对应的目标像素集合;再根据目标像素集合与物理空间的网格的映射关系,可查找到定位像素对应物理空间的网格,该网格表示的地理位置信息即为目标物的定位像素的地理位置信息,即可实现对目标物的定位,通过表定位替代逐像素交汇定位,有效减少计算量,减少资源损耗,提高定位效率。
55.下面结合本技术实施例中的附图,对本技术实施例提供的定位方法进行描述。
56.本技术实施例提供的定位方法可以应用于图1所示的电子设备(该电子设备可以包括摄像头),也可以应用于图2所示的电子设备(该电子设备可以不包括摄像头)和摄像头组成的定位系统,还可以应用于图3所示的服务器、摄像头及电子设备(该电子设备可以包括显示屏)组成的定位系统。
57.如图1所示,该电子设备100可以包括处理器110,摄像头120,通用串行总线(universal serial bus,usb)接口130,存储器140,传感器模块150,显示屏160等。其中,传感器模块150可以包括压力传感器150a和触摸传感器150b。
58.可以理解的是,本技术实施例示意的结构并不构成对电子设备100的具体限定。在本技术另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
59.处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,ap),调制解调处理器,图形处理器(graphics processing unit,gpu),图像信号处理器(image signal processor,isp),控制器,视频编解码器,数字信号处理器(digital signal processor,dsp),基带处理器,和/或神经网络处理器(neural-network processing unit,npu)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
60.控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
61.处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
62.在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,i2c)接口,移动产业处理器接口(mobile industry processor interface,mipi),通用输入输出(general-purpose input/output,gpio)接口等。i2c接口是一种双向同步串行总线,包括一根串行数据线(serial data line,sda)和一根串行时钟线(derail clock line,scl)。在一些实施例中,处理器110可以包含多组i2c总线。处理器110可以通过i2c总线接口耦合摄像头120等。
63.mipi接口可以被用于连接处理器110与摄像头120等外围器件。mipi接口包括摄像头串行接口(camera serial interface,csi),显示屏串行接口(display serial interface,dsi)等。在一些实施例中,处理器110和摄像头120通过csi接口通信,实现电子设备100的拍摄功能。
64.gpio接口可以通过软件配置。gpio接口可以被配置为控制信号,也可被配置为数据信号。在一些实施例中,gpio接口可以用于连接处理器110与摄像头120等。gpio接口还可以被配置为i2c接口,mipi接口等。
65.usb接口130是符合usb标准规范的接口,具体可以是mini usb接口,micro usb接口,usb type c接口等。usb接口130可以用于连接充电器为电子设备100充电,也可以用于电子设备100与外围设备之间传输数据。
66.可以理解的是,本技术实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备100的结构限定。在本技术另一些实施例中,电子设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
67.电子设备100可以通过isp,摄像头120,压力传感器150a,触摸传感器150b,视频编解码器,gpu,显示屏160以及应用处理器等实现定目标位物的功能。
68.isp用于处理摄像头120反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给isp处理,转化为肉眼可见的图像。isp还可以对图像的噪点,亮度,肤色进行算法优化。isp还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,isp可以设置在摄像头120中。
69.摄像头120用于捕获采集区域的静态图像或视频,及目标物在采集区域的静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件
(charge coupled device,ccd)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,cmos)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给isp转换成数字图像信号。isp将数字图像信号输出到dsp加工处理。dsp将数字图像信号转换成标准的rgb,yuv等格式的图像信号。在一些实施例中,电子设备100可以包括1个或n个摄像头120,n为大于1的正整数。
70.在本技术的一些实施例中,摄像头120用于采集图像,该图像中目标物的定位像素用于表征目标物在物理空间的位置。
71.处理器110用于根据摄像头120采集的图像确定图像中目标物的定位像素,并确定定位像素的像素坐标对应的目标像素集合。再根据目标像素集合与物理空间的网格的映射关系,确定定位像素对应的物理空间的网格的地理位置信息,并将定位像素对应的地理位置信息发送给显示屏160进行显示,以实现对目标物的定位。
72.视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,mpeg)1,mpeg2,mpeg3,mpeg4等。
73.npu为神经网络(neural-network,nn)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过npu可以实现电子设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
74.存储器140可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。存储器140可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,存储器140可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,ufs)等。处理器110通过运行存储在存储器140的指令,和/或存储在设置于处理器中的存储器的指令,执行电子设备100的各种功能应用以及数据处理。
75.压力传感器150a用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器150a可以设置于显示屏160。压力传感器150a的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器150a,电极之间的电容改变。电子设备110根据电容的变化确定压力的强度。当有触摸操作作用于显示屏160,电子设备110根据压力传感器150a检测所述触摸操作强度。电子设备110也可以根据压力传感器150a的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如:当有触摸操作强度小于第一压力阈值的触摸操作作用于第一图像中的目标物时,执行目标物选取操作指令。
76.触摸传感器150b,也称“触控器件”。触摸传感器150b可以设置于显示屏160,由触摸传感器150b与显示屏160组成触摸屏,也称“触控屏”。触摸传感器150b用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏160提供与触摸操作相关的视觉输出。例如:触摸传感器检测
到在第一图像中的目标物的触摸操作时,应用处理器响应触摸操作,执行对目标物的识别操作,在另一些实施例中,触摸传感器150b也可以设置于电子设备110的表面,与显示屏160所处的位置不同。
77.显示屏160用于显示图像,视频,及目标物的地理位置信息等。显示屏160包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,lcd),有机发光二极管(organic light-emitting diode,oled),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrix organic light emitting diode的,amoled),柔性发光二极管(flex light-emitting diode,fled),miniled,microled,micro-oled,量子点发光二极管(quantum dot light emitting diodes,qled)等。在一些实施例中,电子设备110可以包括1个或n个,显示屏160,n为大于1的正整数。
78.需要说明的是,电子设备100可以是台式机、便携式电脑、移动手机、平板电脑、无线终端、嵌入式设备、芯片系统或有图1中类似结构的设备。此外,图1中示出的组成结构并不构成对该电子设备的限定,除图1所示部件之外,该电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
79.本技术实施例中,芯片系统可以由芯片构成,也可以包括芯片和其他分立器件。
80.如图2所示,该定位系统200可以包括电子设备210和至少一个摄像头220。其中,摄像头220可以为上述实施例中摄像头120,其实现功能不再赘述。电子设备210可以包括上述实施例中的处理器110,通用串行总线(universal serial bus,usb)接口130,存储器140,传感器模块150,显示屏160等,各个部件的相关内容详见上述实施例,在此不再赘述。
81.另外,在本技术的一些实施例中,电子设备210还可以包括:无线通信模块,天线等。
82.无线通信模块可以提供应用在电子设备210上的包括无线局域网(wireless local area networks,wlan)(如无线保真(wireless fidelity,wi-fi)网络),蓝牙(bluetooth,bt),全球导航卫星系统(global navigation satellite system,gnss),调频(frequency modulation,fm),近距离无线通信技术(near field communication,nfc),红外技术(infrared,ir)等无线通信的解决方案。无线通信模块可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块经由天线接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到电子设备210。无线通信模块还可以从处理器接收待发送的信号,对其进行调频,放大,经天线转为电磁波辐射出去。
83.在一些实施例中,天线和无线通信模块耦合,使得电子设备210可以通过无线通信技术与网络以及其他设备(如摄像头220)通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,gsm),通用分组无线服务(general packet radio service,gprs),码分多址接入(code division multiple access,cdma),宽带码分多址(wideband code division multiple access,wcdma),时分码分多址(time-division code division multiple access,td-scdma),长期演进(long term evolution,lte),bt,gnss,wlan,nfc,fm,和/或ir技术等。所述gnss可以包括全球卫星定位系统(global positioning system,gps),全球导航卫星系统(global navigation satellite system,glonass),北斗卫星导航系统(beidou navigation satellite system,bds),准天顶卫星系统(quasi-zenith satellite system,qzss)和/或星基增强系
统(satellite based augmentation systems,sbas)。
84.可以理解的是,本技术实施例示意的结构并不构成对电子设备210的具体限定。在本技术另一些实施例中,电子设备210可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
85.如图3所示,该定位系统300可以包括至少一个摄像头310、服务器320和电子设备330。其中,摄像头310可以为上述实施例中摄像头120,其实现功能不再赘述。服务器320可以包括上述实施例中的处理器110,通用串行总线(universal serial bus,usb)接口130,存储器140等,各个部件的相关内容详见上述实施例,在此不再赘述。
86.电子设备330可以包括上述实施例中的显示屏160和传感器模块150。电子设备330可以用于响应针对第一图像中的目标物的点击操作,执行目标物的选取操作。电子设备330还可以用于根据服务器320得到的第一定位像素对应的地理位置信息,显示目标物的地理位置信息,如“目标物位于xx国家xx省xx市xx区xxx街道”。
87.当然,在本技术的一些实施例中,服务器320可以包括上述实施例中的处理器110,通用串行总线(universal serial bus,usb)接口130,存储器140,显示屏160和传感器模块150等。其中,服务器320可以用于响应针对第一图像中的目标物的点击操作,执行目标物的选取操作。服务器320中各个部件的相关内容详见上述实施例,在此不再赘述。
88.电子设备330可以包括上述实施例中的显示屏160。电子设备330可以用于根据服务器320得到的第一定位像素对应的地理位置信息,显示目标物的地理位置信息,如“目标物位于xx国家xx省xx市xx区xxx街道”。
89.另外,在本技术的一些实施例中,服务器320还可以包括:无线通信模块,天线等。
90.无线通信模块可以提供应用在服务器320上的包括无线局域网(wireless local area networks,wlan)(如无线保真(wireless fidelity,wi-fi)网络),蓝牙(bluetooth,bt),全球导航卫星系统(global navigation satellite system,gnss),调频(frequency modulation,fm),近距离无线通信技术(near field communication,nfc),红外技术(infrared,ir)等无线通信的解决方案。无线通信模块可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块经由天线接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到服务器320。无线通信模块还可以从处理器接收待发送的信号,对其进行调频,放大,经天线转为电磁波辐射出去。
91.在一些实施例中,天线和无线通信模块耦合,使得服务器320可以通过无线通信技术与网络以及其他设备(如摄像头310和电子设备330)通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,gsm),通用分组无线服务(general packet radio service,gprs),码分多址接入(code division multiple access,cdma),宽带码分多址(wideband code division multiple access,wcdma),时分码分多址(time-division code division multiple access,td-scdma),长期演进(long term evolution,lte),bt,gnss,wlan,nfc,fm,和/或ir技术等。所述gnss可以包括全球卫星定位系统(global positioning system,gps),全球导航卫星系统(global navigation satellite system,glonass),北斗卫星导航系统(beidou navigation satellite system,bds),准天顶卫星系统(quasi-zenith satellite system,qzss)和/或星基增强系
统(satellite based augmentation systems,sbas)。
92.需要说明的是,电子设备330可以是台式机、便携式电脑、移动手机、平板电脑、无线终端系统。此外,图3中示出的组成结构并不构成对该定位系统的限定,除图3所示部件之外,该定位系统可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
93.下面以图3所示架构为例,对本技术实施例提供的定位方法进行描述。下述实施例中的各网元可以具备图3所示部件,不予赘述。需要说明的是,本技术的实施例中各个设备之间交互的消息名称或消息中的参数名称等只是一个示例,具体实现中也可以采用其他的名称。例如本技术实施例所述的定位像素可以替换为锚点、定位点等术语。本技术实施例中的确定也可以理解为创建(create)或者生成(generate),本技术实施例中的“包括”也可以理解为“携带”,在此统一说明,本技术实施例对此不作具体限定。
94.图4为本技术实施例提供的一种定位方法的流程图,如图4所示,所述方法可以包括:
95.步骤401、服务器确定图像中目标物的定位像素。
96.该图像可以是摄像头对其采集区域中的目标物进行图像采集得到的。该图像可以为照片,也可以为视频。
97.该定位像素用于表征目标物在图像中的位置。换句话说,该定位像素为图像中目标物的像素。示例性的,该定位像素可以为图像中目标物的包围盒的中心像素,该中心像素可以理解为目标物的包围盒的几何中心点对应的像素。该定位像素也可以为图像中目标物的包围盒上的任一像素。
98.在一种具体的实现方式中,本步骤具体可实现为:步骤4011、服务器根据目标物的类型,确定图像中目标物的参考像素的像素坐标,参考像素用于确定图像中目标物的定位像素的像素坐标。其中,目标物的类型可以指目标物的类别,用于指明目标物为哪种物体。如,目标物的类型可以为行人或车辆。
99.示例性的,摄像头1采集图像并发送给服务器2。服务器2接收摄像头1采集的图像,并由电子设备3的显示屏显示图像。当电子设备3检测到针对图像上的目标物a的点击操作,或者电子设备3检测到光标(如图5中所示的箭头)位于图像上的目标物a上时,电子设备3响应于针对第一图像上的目标物a操作,执行选取目标物a的操作,并显示目标物a的选取区域(如图6所示的目标物a的轮廓)。电子设备3将选取的目标物a的信息发送给服务器2,服务器2根据目标物a的信息确定目标物a的类型,并确定图像中目标物a的参考像素的像素坐标。服务器2根据参考像素的像素坐标确定目标物a的定位像素的像素坐标。
100.示例1,若目标物的类型为车辆,则服务器确定图像中车辆的参考像素的像素坐标、高度值和宽度值;根据参考像素的像素坐标、高度值和宽度值,确定图像中车辆的定位像素的像素坐标。
101.假设,如图7所示,定位像素q0的像素坐标为(xc,yc),宽度值为w,高度值为h。
102.由于车辆为长方体结构,可确定车辆的左上角点q1为第一参考像素,其像素坐标为(topx,topy);车辆的右下角点q2为第二参考像素,其的像素坐标为(bottomx,bottomy)。
103.服务器根据车辆的第一参考像素的像素坐标(topx,topy),车辆的第二参考像素的像素坐标(bottomx,bottomy),车辆的宽度值w,及车辆的高度值h,确定定位像素的像素
坐标(xc,yc)。具体实现时可以满足以下关系式:topx=xc-0.5*w,topy=yc-0.5*h,bottomx=xc 0.5*w,bottomy=yc 0.5*h。
104.当然,上述实施例仅表示为一种实现方式,还可以存在其他实现方式,本技术实施例不再一一列举。
105.示例2,若目标物的类型为行人,则服务器确定图像中行人的双脚对应的像素为参考像素,并根据图像中行人的双脚对应的像素确定定位像素。
106.例如,如图8所示,服务器可以确定行人的右脚在图像上对应的像素为第一参考像素,行人的左脚在图像上对应的像素为第二参考像素。假设,第一参考像素p1的像素坐标为(x1,y1),第二参考像素p2的像素坐标为(x2,y2)。服务器可以确定行人的定位像素p0为(x0,y0)。该定位像素p0可以为左脚和右脚与地面的接触点连线的中间点,具体实现时可以满足以下关系式:x0=0.5*(x
2-x1),y0=0.5*(y
2-y1)。
107.当然,服务器也可以确定图像中行人从头部到脚部的中心像素为参考像素,该中心像素的像素坐标可以为定位像素的像素坐标,也可以根据其他算法计算得到定位像素的像素坐标。
108.当然,由于行人的姿态多种多样,所以上述实施例仅表示为一种实现方式,根据不同的行人姿态还可以存在其他实现方式,本技术实施例不再一一列举。
109.在一些实施例中,在根据目标物的类型,确定图像中目标物的参考像素的像素坐标之前,本技术实施例提供的定位方法还包括:服务器确定目标物的类型。在一种具体的实现方式中,确定目标物的类型具体可实现为:服务器将图像和第一实物的样本图像输入深度学习模型,输出图像中的目标物为第一实物的置信度,在置信度大于等于阈值的情况下,确定目标物为第一实物,即确定目标物的类型。该置信度用于表征图像中的目标物为第一实物的可信程度。其中,深度学习模型是根据图像和第一实物的样本图像训练得到的。该阈值可以根据需求设定,如阈值可以为96%、85%、92%。
110.步骤402、服务器根据定位像素对应的目标像素集合,及目标像素集合与物理空间的网格的映射关系,确定定位像素对应物理空间的网格。
111.该物理空间可以为摄像头在第一地理位置坐标上且位于第一位姿时拍摄的图像对应的采集区域。其中,摄像头的位姿参数可以包括摄像头的地理位置坐标、摄像头的俯仰角、横滚角和侧视角。该摄像头的第一地理位置坐标和第一位姿可以根据图像中的特征点及其对应的地理位置坐标确定的。而根据图像中的特征点及其对应的地理位置坐标确定摄像头的第一位姿,可以采用多种方法,如直接线性变换方法或pnp方法等。
112.在一种可实现的方式中,服务器提取样本图像中的特征点,并确定该特征点对应的像素坐标和地理位置坐标。服务器根据特征点对应的像素坐标和地理位置坐标,确定摄像头的第一位姿,以直接线性变换方法计算摄像头的第一位姿为例:
113.假设物理空间中目标物p的地理位置坐标为p=(x,y,z,1)
t
,在样本图像中目标物对应的特征点的像素坐标为x1=(u1,v1,1)
t
(以归一化平面齐次坐标表示),假设摄像头的第一位姿为r与t,由r与t组成的旋转与平移矩阵记为[r|t],其为一个3
×
4的矩阵,则物理空间中目标物的地理位置坐标、样本图像中目标物的像素坐标和摄像头的第一位姿满足以下关系式:
[0114][0115]
其中,s为p点距离摄像头光心的深度信息,为[r|t]的行列式展开表示。
[0116]
消除s,上述表达式(1)变形后得到以下两个表达式:
[0117][0118][0119]
假设共有n个特征点,可以列出线性方程组:
[0120][0121]
由于公式(2)共有12个未知数,因此,服务器确定样本图像中最少六个特征点对应的像素坐标和地理位置坐标,即可实现矩阵[r|t]的线性求解,从而确定摄像头的第一位姿。当匹配点大于六对时,可以使用奇异值分解(svd)等方法对超定方程求最小二乘解,在此不再赘述。
[0122]
以pnp(如p3p)方法计算摄像头的第一位姿为例,其中,p3p方法是利用点的空间分布关系在不同摄像头的坐标系下保持不变,以及相似三角形原理。p3p方法的特点是需要服务器提取三组特征点的像素坐标和地理位置坐标进行计算,服务器再提取一组特征点的像素坐标和地理位置坐标进行验证,以选择正确的解。具体如下:
[0123]
如图9所示,假设摄像头的光心点为o,物理空间中的目标物a、目标物b和目标物c,其对应的样本图像中的特征点分别为特征点a、特征点b和特征点c,可以得到三组相似三角形:δoab~δoab,δoac~δoac,δobc~δobc。
[0124]
利用余弦定理可以得到如下关系式:
[0125]
oa2 ob
2-2oa*ob*cos(a,b)=ab2[0126]
oa2 oc
2-2oa*oc*cos(b,c)=ac2[0127]
ob2 oc
2-2ob*oc*cos(c,a)=bc2[0128]
假设令x=oa/oc,y=ob/oc,u=bc2/ab2,w=ac/ab,上述关系式可以变形为:
[0129]
(1-u)y
2-ux
2-ycos(b,c) 2uxycos(a,b) 1=0
[0130]
(1-w)x
2-wy
2-xcos(a,c) 2wxycos(a,b) 1=0
[0131]
该方程组是关于x,y的一个二元二次方程,可以通过消元法求解。再使用服务器提取的一组特征点的像素坐标和地理位置坐标进行验证,从而得到摄像头的第一位姿。
[0132]
通过上述实施例中所述的方法得到摄像头的第一位姿之后,服务器根据摄像头的
第一位姿即可确定摄像头的俯仰角、横滚角和侧视角,以及摄像头的视点中心相对地面的高度,视点中心的地理位置坐标。如图11所示,假设摄像头的参数为c={x,y,z,ω,θ,γ},其中,(x,y,z)代表摄像头的地理位置坐标,ω代表摄像头的俯仰角,θ代表摄像头的横滚角,γ代表摄像头的侧视角。服务器根据摄像头的参数即可确定摄像头位于第一位姿时采集区域a的大小。
[0133]
在本技术的一些实施例中,本技术实施例提供的定位方法还可以包括:步骤403、服务器对物理空间进行网格化以得到物理空间的各个网格。也就是说,服务器对摄像头位于第一位姿时采集区域(如图11所示的区域a)进行网格化以得到采集区域的各个网格。在一种具体的实现方式中,该物理空间可以根据实际需求,按照全球离散格网(discrete global grid,dgg)剖分规则任意划分等级,从而得到物理空间的各个网格。例如,物理空间可以划分到第20级,每个网格的边长为2.26m。由于dgg是根据球面(或椭球体)的一种可以无限细分、但又不改变其形状的地球体拟合格网,当细分到一定程度时,可以达到模拟地球表面的目的。并且,dgg具有层次性和全球连续性等特征。因此,本技术实施例中的物理空间采用dgg剖分规则划分网格,既避免了投影带来的角度、长度和面积变形及空间数据的不连续性,又克服了许多限制地理信息系统(geographic information system或geo-information system,gis)应用的约束和不确定性,使得在地球上任何位置获取的任何分辨率(不同精度)的空间数据都可以规范地表达和分析,并能用确定的精度进行多尺度操作,可以精确模拟地球表面。
[0134]
其中,网格可以为三角形网格、四边形网格、六边形网格、退化四叉树网格、球面经纬度剖分网格geosot等均可。
[0135]
其中,物理空间的网格用于表示地理位置信息,该地理位置信息可以包括地理位置坐标或全球位置编码。在一种具体的实现方式中,以地理位置信息包括全球位置编码为例,确定物理空间的各个网格的全球位置编码,具体可实现为:
[0136]
步骤1、确定物理空间的各个网格的中心点的经纬度坐标,中心点的经纬度坐标表示为度、分、秒和秒小数。示例性的,中心点的经纬度坐标表示为a
°b′
c.d


[0137]
步骤2、将所述中心点的经纬度坐标按照度、分、秒和秒小数依次转换为二进制数,以得到经度二进制数和纬度二进制数。
[0138]
具体为,将度|a|由十进制数转换成8bit定长二进制数(a)2,将分b由十进制数转换成6bit定长二进制数(b)2,将秒c由十进制数转换成6bit定长二进制数(c)2,将秒小数d由十进制数转换成11bit定长二进制数(d)2。
[0139]
步骤3、将经度二进制数前置,纬度二进制数后置,并采用莫顿交叉算法,得到二进制混合代码,并将二进制混合代码转换成四进制编码。
[0140]
具体可实现为:首先,分别将得到的(a)2、(b)2、(c)2、(d)2按照顺序直接拼接成31bit定长二进制数(e)2,即(e)2=(a)2(b)2(c)2(d)2,分别得到两个31bit定长数经度(el)2和纬度(eb)2;其次,将纬度(eb)2前置、经度(el)2后置,采用莫顿交叉算法生成62bit的混合代码(f)2,例如若(eb)2为100111,(el)2为011010,则(eb)2在前,(el)2在后,经莫顿交叉算法得到二进制混合代码(f)2为100101101110;最后,将二进制混合代码(f)2转成四进制编码(f)4,并根据待求网格的级别m,将(f)4中后32m位四进制的码元去掉得到(f

)4。
[0141]
步骤4、根据所述物理空间的各个网格的中心点所在坐标系中所属区域的编码,所
述物理空间的各个网格的级别及所述四进制编码,确定所述物理空间的各个网格的全球位置编码。
[0142]
具体可实现为,根据经度和纬度,按照图10中所示的箭头方向,在(f

)4前加上g0、g1、g2或g3即可得到各个网格的全球位置编码。
[0143]
当然也可以采用其他的实现方式,本技术实施例不做具体限定。
[0144]
在服务器对区域a进行网格化以得到物理空间的各个网格之后,服务器根据区域a的平面位置和地理地形数据,确定物理空间的各个网格的角点的地理位置信息。
[0145]
示例3,在服务器根据摄像头的参数确定摄像头位于第一位姿时的采集区域(如图11所示的区域a)之后,服务器对该区域a采用上述实施例中所述的按照全球离散格网剖分得到多个网格{a1,a2,

,an},其中,每个网格的dgg编码为a
codei
,角点为{a
i1
,a
i2
,

,a
im
}(m≥3,角点a
i1
,a
i2
,

,a
im
按照网格的顺时针或者逆时钟顺序排列)。假设令{a
i1
,a
i2
,

,a
im
}表示第i个网格的角点集,则c表示区域a的所有网格角点集,记c={c1,c2,

,ck}。服务器根据区域a的平面位置和地理地形数据获得c中所有网格角点的三维坐标位置,记为p={p
c1
,p
c2
,

,p
ck
}。其中,p
cj
={x
cj
,y
cj
,z
cj
}(j=1,....,k)。
[0146]
在本技术的一些实施例中,在服务器对物理空间进行网格化以得到物理空间的各个网格之后,本技术实施例提供的定位方法还可以包括:步骤404、服务器根据物理空间的网格和摄像头的参数信息,确定图像中的各个像素集合,其中,各个像素集合中的像素与物理空间的网格上的点对应,摄像头用于采集图像。摄像头的参数信息可以包括焦距、主像点位置、视频ccd尺寸和位姿参数。而该摄像头的参数信息可以根据图像中的特征点及其对应的地理位置坐标确定。具体实现方式详见上述实施例中的相关内容,本技术实施例不再赘述。
[0147]
在一种可实现的方式中,步骤404具体可实现为:
[0148]
步骤4041、服务器根据物理空间中网格的多个角点的地理位置坐标、投影矩阵、摄像头的焦距和视点中心的地理位置坐标,确定图像中与多个角点中每个角点对应的像素坐标。
[0149]
该投影矩阵用于表征图像中像素的像素坐标与物理空间中网格上角点的地理位置坐标的转换关系。该投影矩阵可以根据世界坐标系及摄像头在世界坐标系上的角度确定的,也可以通过多次验证,将多个样本点在局部区域的地理位置坐标经过平移旋转后转换成世界坐标系下的地理位置坐标,在此转换过程中所采用的同一转换关系矩阵即为投影矩阵。本技术实施例中的投影矩阵与上述实施例中所述的摄像头的第一位姿相同,故投影矩阵的获取方法同上所述,在此不再赘述。
[0150]
示例4,步骤4041可以采用以下表达式实现:沿用示例3,假设,区域a的角点集c中所有网格角点的三维位置坐标为p
cj
={x
cj
,y
cj
,z
cj
}(j=1,

,k),摄像头的视点中心的地理位置坐标为(c
x
,cy),其可以根据摄像头的参数信息确定。
[0151]
而摄像头的焦距为fx(摄像头x方向的焦距)和fy(摄像头y方向的焦距),投影矩阵为则服务器根据上述参数可得到图像上与网格角点对应的像素坐
[0152]
标为其表达式可以为:
[0153][0154]
由于摄像头的镜头通常存在一些形变,另外考虑了摄像头可能为特殊摄像头,如鱼眼摄像头等。因此,摄像头采集的图像与理想图像比较会发生畸变。而采用发生畸变的图像中的目标物的定位像素对该目标物进行定位时,会导致定位不准确。
[0155]
为了解决此问题,在一种实现方式中,在执行步骤4041之后,本技术实施例提供的定位方法还可以包括:步骤4043、服务器根据图像中各个像素的像素坐标,及径向形变系数和/或切向形变系数,确定图像中的各个像素的矫正像素坐标,该矫正像素坐标用于确定图像中各个像素所属的像素集合。
[0156]
具体实现可以为,在服务器得到图像中的多个畸变像素的像素坐标之后,服务器根据摄像头的参数矩阵和形变系数向量,并采用计算形变和非形变图像的对应(map),即cvinitundistortmap函数预先计算非形变对应-正确图像的每个像素在形变图像里的像素坐标,然后对输出图像的畸变像素的像素坐标通过双线性插值来计算,通过对图像进行变换来抵消径向和切向镜头变形。
[0157]
其中,摄像头的参数矩阵和形变系数向量可以通过函数cvcalibratecamera2取得。
[0158]
示例5,沿用示例4中服务器得到的图像上与网格角点对应的像素坐标为该像素坐标为该像素发生畸变后的像素坐标。
[0159]
假设,以径向形变为例,径向形变系数组成的向量为[k1,k2,k3],修正后的像素的像素坐标为(u
cj
,v
cj
),则畸变像素的像素坐标和修正后的像素的像素坐标可以满足以下表达式:
[0160][0161][0162][0163]
本技术实施例通过对摄像头采集的图像的各个像素的像素坐标进行校正,可以有效防止采用发生畸变的图像中的目标物的定位像素对该目标物进行定位,提高目标物定位的准确性。
[0164]
由于物理空间的网格上的角点数量有限,通过网格的角点与图像上的像素建立映射关系,使得物理空间的网格向图像映射形成的区域不精准,为了使得物理空间的网格能够精准的映射到图像上,在一种实现方式中,本技术实施中的步骤4041可实现为:根据物理空间中一个网格的各边上的至少一个采样点及多个角点的地理位置坐标、投影矩阵、摄像头的焦距和视点中心的地理位置坐标,确定图像中的各个像素的像素坐标。
[0165]
其中,该采样点的选取可以是在第一角点和第二角点的连线上的任一点,且该采样点的坐标满足第一角点与第二角点的线性方程,其中,第一角点和第二角点为两个相邻
角点。
[0166]
示例6,沿用示例3中服务器根据dgg的规则对区域a划分成多个网格{a1,a2,

,an},其中每个网格的dgg编码为a
codei
,角点为{a
i1
,a
i2
,

,a
im
}(m≥3,角点a
i1
,a
i2
,

,a
im
按照网格的顺时针或者逆时钟顺序排列)。
[0167]
在上述基础上,每个网格的边记为{edge
i1-i2
,edge
i2-i3
,

,edge
im-i1
},针对每个边进行插值采样,获得该边上更多的点。
[0168]
不失一般性以edge
i1-i2
为例,服务器可以根据该边的第一角点a
i1
,其位置坐标(x
c1
,y
c1
)。第二角点a
i2
,其位置坐标(x
c2
,y
c2
),确定由(x
c1
,y
c1
)和(x
c2
,y
c2
)两角点点所确定的线性方程为y=f(x)。服务器在[x
c1
,x
c2
]区间采样n(n≥1)个采样点,并根据y=f(x)计算n个采样点的y值。由于每条边增加n个采样点{b1,b2,

,bn},所以每个网格增加n*n个采样点。服务器再将每个网格增加的n*n个采样点按照角点相同的方法进行处理(可见上述实施例中相应的内容),确定图像中与n*n个采样点对应的各个像素的像素坐标。
[0169]
服务器得到n*n个采样点对应的各个像素的像素坐标,及各个角点对应的各个像素的像素坐标,即可得到图像中的各个像素的像素坐标。
[0170]
本技术实施例通过在物理空间的网格的边上增加至少一个采样点,再通过至少一个采样点及网格的角点确定图像中的各个像素,使得物理空间的网格在图像上映射的区域更贴近自身,从而实现物理空间的网格在图像上更为精细的投影表达。另外,建立物理空间的网格的角点和/或采样点与图像的像素的映射关系,有效精确物理空间的网格投影表达,降低地形对定位精度的影响,有利于提高大尺度网格定位精度。
[0171]
步骤4042、服务器根据图像中各个像素的像素坐标和多个角点间的关联关系,确定图像中由各个像素围成的目标多边形。其中,目标多边形包围的像素,或者,目标多边形包围的像素及目标多边形的边线上边上的像素用于构建像素集合。
[0172]
若摄像头采集的图像畸变,则服务器根据图像中各个像素的像素坐标,及径向形变系数和/或切向形变系数,确定图像中的各个像素的矫正像素坐标。服务器根据图像中各个像素的矫正像素坐标和多个角点间的关联关系,确定图像中由各个像素围成的目标多边形。
[0173]
本步骤具体可实现为,服务器根据多个角点中每个角点与各个像素中每个像素一一对应,即一个网格的多个角点按照网格的顺时针或者逆时钟顺序排列,可以按照多个角点的排列顺序排列连接各个像素,以得到目标多边形。其中,该目标多边形包围的像素可以用于构建像素集合。该目标多边形包围的像素及目标多边形的边上的像素可以用于构建像素集合。
[0174]
在一种实现方式中,若图像中的各个像素的像素坐标是基于物理空间中一个网格的各边上的至少一个采样点及多个角点的地理位置坐标、投影矩阵、摄像头的焦距和视点中心的地理位置坐标确定的,则本步骤具体可实现为,服务器根据角点和采样点与像素的对应关系,及一个网格的多个角点和多个采样点按照网格的顺时针或者逆时钟顺序排列,可以按照多个角点和多个采样点的排列顺序排列连接各个像素,以得到目标多边形。其中,该目标多边形包围的像素可以用于构建像素集合。该目标多边形包围的像素及目标多边形的边上的像素可以用于构建像素集合。
[0175]
这里需要说明的是,对于两个相邻目标多边形的同一边上的像素,可以采用随机
分配的方式分配给任一目标多边形对应的像素集合。对于两个相邻目标多边形的同一边上的像素,也可以按照优先级规则进行分配,该优先级规则可以为左边优先于右边,上边优先于下边。
[0176]
示例性的,以按照优先级规则进行分配为例,如图12所示,假设第一目标多边形1与第二目标多边形2相邻,且第一目标多边形1位于第二目标多边形2的左边。第二目标多边形2与第三目标多边形3相邻,且第二目标多边形2位于第三目标多边形3的上边。其中,第一边l1为第一目标多边形1与第二目标多边形2的共有边,该边上的像素a可以按照左边优先于右边的分配规则分配给第一目标多边形1对应的像素集合。第二边l2为第二目标多边形2与第三目标多边形3的共有边,该边上的像素b可以按照上边优先于下边的分配规则分配给第二目标多边形2对应的像素集合。
[0177]
按照上述实施例所述的方法得到物理空间的网格在图像上映射的像素集合,服务器将物理空间的网格表示的地理位置信息,赋给该网格对应的像素集合。在服务器得到像素集合与地理位置信息的对应关系之后,服务器构建以像素为索引的地理位置索引表。
[0178]
示例7,沿用示例3,服务器得到物理空间的网格ai的角点投影到图像上的像素坐标为{p
i1
,p
i2
,

,p
im
},其中,由p
i1
,p
i2
,

,p
im
点连成目标多边形(如图11所示),图像包含在该目标多边形包含的像素构成的像素集合为{p
i1
,p
i2
,

,p
il
}。由于物理空间的网格用于表示的全球位置编码为a
codei
。所以,服务器确定该像素集合对应的全球位置编码为a
codei
。在服务器得到像素集合与全球位置编码的对应关系之后,服务器构建以像素为索引的地理位置索引表,如index(p
i1
)=a
codei
,index(p
i2
)=a
codei


,index(p
il
)=a
codei
。如表1所示。
[0179]
表1
[0180][0181]
步骤405、服务器根据定位像素对应物理空间的网格对应的地理位置信息,确定定位像素的地理位置信息。
[0182]
在实际应用中,如图13所示,假设:目标物在区域a的网格ai的角点a
i2
上,而在图像1中目标物的定位像素为p
i2
,角点a
i2
与定位像素为p
i2
的关系如表1所示。
[0183]
结合图3所示的定位系统进行详细说明,摄像头310采集图像1,并将图像1发送给服务器320,服务器320接收摄像头310采集的图像1,并将图像1发送给电子设备330进行显示。当电子设备330检测到针对图像上的目标物的点击操作时,电子设备330响应于针对图像上的目标物操作,执行选取目标物的操作,并显示目标物的选取区域。电子设备330将选取的目标物的信息发送给服务器320,服务器320根据目标物的信息确定目标物的类型,并确定图像1中目标物的定位像素p
i2
。服务器根据定位像素p
i2
确定定位像素所属的像素集合pi,即为目标像素集合,服务器根据目标像素集合pi对应的全球位置编码,确定定位像素p
i2
对应该全球位置编码a
codei
。服务器将定位像素p
i2
及其对应的全球位置编码a
codei
发送给电子设备330,电子设备330的显示屏显示目标物的地理位置信息(如图3中电子设备的显示屏的显示结果)。
[0184]
因此,采用本技术实施例提供的定位方法对目标物进行定位时,服务器根据图像中目标物的定位像素对应的目标像素集合,查询目标像素集合与物理空间的网格的映射关系,即可确定定位像素对应的物理空间的网格,该网格表示的地理位置信息即为目标物的定位像素的地理位置信息,即可实现对目标物的定位,以表格查询替代逐像素匹配交会,减少运算量,减少资源消耗,提高定位效率。
[0185]
图14为本技术实施例提供的一种定位装置,该定位装置1400可以包括:
[0186]
定位像素确定单元1401,用于确定图像中目标物的定位像素,所述定位像素用于表征所述目标物在图像中的位置;
[0187]
网格确定单元1402,用于根据所述定位像素对应的目标像素集合,及所述目标像素集合与所述物理空间的网格的映射关系,确定所述定位像素对应所述物理空间的网格;
[0188]
地理位置信息确定单元1403,用于根据所述定位像素对应所述物理空间的网格对应的地理位置信息,确定所述定位像素的地理位置信息;
[0189]
所述目标像素集合为根据所述物理空间的网格及采集所述图像的摄像头的参数信息,对所述图像进行划分获得;
[0190]
其中,所述映射关系根据所述目标像素集合中的像素所属的物理空间的网格确定。
[0191]
需要说明的是,需要预先对物理空间进行网格化,故该定位装置1400可以包括:物理空间网格化单元1407,用于对物理空间进行网格划分,得到物理空间网格。
[0192]
进一步的,定位装置1400包括像素集合确定单元,该像素集合确定单元包括:
[0193]
第一像素坐标确定单元1404,用于根据所述物理空间中网格的多个角点的地理位置坐标、投影矩阵、所述摄像头的焦距和视点中心的地理位置坐标,确定所述图像中与多个角点中每个角点对应的像素坐标,所述投影矩阵用于表征所述图像中像素的像素坐标与所述物理空间中网格上角点的地理位置坐标的转换关系;
[0194]
目标多边形确定单元1405,用于根据所述图像中各个像素的像素坐标和所述多个角点间的关联关系,确定所述图像中由所述各个像素围成的目标多边形;其中,所述目标多边形包围的像素,或者,所述目标多边形包围的像素及所述目标多边形的边上的像素用于构建像素集合。
[0195]
进一步的,若所述摄像头采集的图像畸变,则定位装置1400包括:
[0196]
第二像素坐标确定单元1406,用于根据所述图像中各个像素的像素坐标,及径向形变系数和/或切向形变系数,确定所述图像中的各个像素的矫正像素坐标,所述矫正像素坐标用于确定所述图像中各个像素所属的像素集合。
[0197]
进一步的,所述第一像素坐标确定单元1404包括:
[0198]
第一像素坐标确定子单元,用于根据所述物理空间中网格的各边上的至少一个采样点及多个角点的地理位置坐标、所述投影矩阵、所述摄像头的焦距和视点中心的地理位置坐标,确定所述图像中的各个像素的像素坐标。
[0199]
进一步的,所述摄像头的参数信息是根据样本图像中的特征点及其对应的地理位
置坐标确定的。
[0200]
进一步的,所述摄像头的参数信息包括:焦距、主像点位置、视频ccd尺寸和位姿参数,所述位姿参数包括摄像头的地理位置坐标,摄像头的俯仰角、横滚角和侧视角。
[0201]
进一步的,所述地理位置信息包括:全球位置编码或地理位置坐标。
[0202]
进一步的,所述定位像素确定单元1401,包括:
[0203]
第三像素坐标确定子单元,用于若所述目标物的类型为车辆,则确定所述图像中所述车辆的参考像素的像素坐标、高度值和宽度值;
[0204]
第四像素坐标确定子单元,用于根据所述参考像素的像素坐标、高度值和宽度值,确定所述图像中所述车辆的定位像素的像素坐标。
[0205]
具体的,该可能的设计中,上述图1~图13所示方法实施例中涉及电子设备的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。该可能的设计中所述的电子设备用于执行图1~图13所示定位方法中电子设备的功能,因此可以达到与上述定位方法相同的效果。
[0206]
图15为本技术实施例提供的一种定位系统,该定位系统1500可以包括:至少一个摄像头1501和定位装置1502;其中,摄像头1501用于采集目标物位于采集区域内的第一图像和采集区域的第二图像,并将第一图像和第二图像发送给所述定位装置1502。定位装置1502用于接收摄像头1501采集的第一图像和第二图像,并执行图1~图13所示定位方法。
[0207]
具体的,该可能的设计中,上述图1~图13所示方法实施例中涉及定位装置的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。该可能的设计中所述的电子设备用于执行图1~图13所示定位方法中定位装置的功能,因此可以达到与上述定位方法相同的效果。
[0208]
本技术实施例提供的一种电子设备,包括:处理器和存储器,存储器与处理器耦合,存储器用于存储计算机程序代码,计算机程序代码包括计算机指令,当处理器从存储器中读取计算机指令,以使得电子设备执行图1~图13所示定位方法。
[0209]
本技术实施例提供的一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行图1~图13所示定位方法。
[0210]
本技术实施例提供的一种计算机可读存储介质,包括计算机指令,当计算机指令在终端上运行时,使得网络设备执行图1~图13所示定位方法。
[0211]
本技术实施例提供的一种芯片系统,包括一个或多个处理器,当一个或多个处理器执行指令时,一个或多个处理器执行图1~图13所示定位方法。
[0212]
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
[0213]
在本技术所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦
合或通信连接,可以是电性,机械或其它的形式。
[0214]
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
[0215]
另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
[0216]
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。根据这样的理解,本技术实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。
[0217]
以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何在本技术揭露的技术范围内的变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献