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

一种基于AIS的船舶高精度坐标映射方法与流程

2021-10-29 23:03:00 来源:中国专利 TAG:船舶 映射 坐标 方法 检测

一种基于ais的船舶高精度坐标映射方法
技术领域
1.本发明涉及船舶目标检测领域,具体涉及一种基于ais的船舶高精度坐标映射方法。


背景技术:

2.通过视频自动分析的方法,自动检测水面船舶,提取船舶的位置、大小、及外形特征,是作为船舶身份自动识别的必要阶段,因其具备实时、无须人工干预的特点,能极大程度降低海事管理人力成本,成为船舶交通、港口管理等领域重要的信息采集手段。
3.然而,基于视频图像的船舶目标检测方法容易受到光照、气象条件、遮挡等方面因素的影响,导致检测准确率下降,通常需要基于人工标注的方法,对部署现场的船只图像进行大量人工标注,并对图像检测算法进行增量训练来提升检测的准确率。且为了在视频上实现具体地理位置信息的应用,一般需要进行坐标映射,但是现有的坐标映射的准确度都较低。
4.近年来,提出了一些结合ais和监控视频的船舶检测方法,例如:
5.公开号为cn111914049a的发明专利公开了一种经纬度坐标与图像坐标映射方法,该发明选取场景中若干点,利用场景的已知测量数据或谷歌地图等工具对其在物理空间中的经纬度坐标与其在图像画面中的像素坐标进行标定,通过人工对图像像素坐标和物理坐标进行关联。但是该方法中由于实际应用中人工标定的坐标值含有误差,导致得到的图像坐标一般含有误差,且耗时耗力。


技术实现要素:

6.为了解决上述技术问题,本发明的目的在于提供一种基于ais的船舶高精度坐标映射方法,其包括对齐监控摄像头画面坐标和ais经纬度坐标建立低精度的坐标映射,建立监控摄像头画面坐标和ais经纬度坐标的低精度的映射关系;每隔δt时间获取一次摄像头视野中所有船只的ais信息,通过图像目标检测算法检测摄像头画面中所有船只的位置,得到所有船只的摄像头画面坐标集合ω={<x
i
,y
i
>},同时利用低精度的映射关系将船只的经纬度坐标转换为摄像头画面坐标,得到转换后的坐标集合k={<x
j
,y
j
>};通过设置一个阈值,将ω和k进行匹配,实现将准确的摄像头画面坐标与经纬度坐标一一对应,从而达到更高精度的坐标映射关系。
7.为实现上述发明目的,本发明采取的技术方案如下:
8.一种基于ais的船舶高精度坐标映射方法,包括以下步骤:
9.步骤s1:通过人工测定摄像头的外参,摄像头的外参就是摄像头坐标系在世界坐标系中的位置,及摄像头可视范围内的水面任意位置的粗标定,对齐摄像头画面坐标和ais经纬度坐标,建立摄像头画面坐标和ais经纬度坐标的低精度映射关系;由于该映射关系为低精度映射关系,因此需要进一步建立高精度映射关系;
10.步骤s2:通过图像目标检测算法检测摄像头画面中所有船只的位置,得到所有船
只的摄像头画面坐标集合ω={<x
i
,y
i
>},利用步骤s1中低精度映射关系将所有船只的经纬度坐标转换为船只的摄像头画面坐标,得到转换后的坐标集合k={<x
j
,y
j
>};
11.步骤s3:设置一个阈值,将步骤s2中通过图像目标检测算法获得的船只摄像头画面坐标集合ω和经低精度映射关系转换得到的船只摄像头画面坐标集合k进行匹配,筛选符合条件的船只的摄像头画面坐标,使船只的经纬度坐标和摄像头画面坐标形成一一对应的关系,确定船只的经纬度坐标和摄像头画面坐标集合m={<lon
i
,lat
i
,x
i
,y
i
>};
12.步骤s4:利用步骤s3中的位置信息集合m={<lon
i
,lat
i
,x
i
,y
i
>}建立船只的高精度坐标映射。
13.作为优选的,所述步骤s1中,所述摄像头画面坐标和ais经纬度坐标的低精度映射关系的建立过程具体如下:
14.步骤1.1:根据haversine公式,计算摄像头所在的位置在水平面上的垂直投影位置o

和摄像头可视范围内的水面任意位置a
i
的直线水平距离d
i
,单位为m,o

和a
i
的经度水平距离s
i
,单位为m:
[0015][0016][0017][0018][0019]
其中:a、b均为中间变量值,o

(λ0,ψ0)为摄像头所在的位置在水平面上的垂直投影位置,a
i

i
,ψ
i
)为摄像头可视范围内的水面任意位置,r为地球半径,单位为m;
[0020]
步骤1.2:由步骤1.1,计算o

和a
i
的连线和地理真北方向的夹角β
i

[0021][0022]
步骤1.3:由步骤1.1,计算o和a
i
的连线和垂直线的夹角θ
i

[0023][0024]
其中,h为摄像头距离水平面的高度,单位为m;
[0025]
步骤1.4:计算a
i
在监控摄像头画面坐标(x
i
,y
i
):
[0026][0027][0028]
其中,x为图像的像素宽度,y为像素高度,根据摄像头图像分辨率为x
×
y,可得x和y的参数值;
[0029]
θ为摄像头中心线与垂直线的夹角,β为摄像头中心线在水平面上的投影和地理真北方向的夹角,ω
x
为摄像头水平视场角,ω
y
为摄像头垂直视场角。
[0030]
作为优选的,所述步骤s2中,每隔δt时间获取一帧图像,获取该时刻下该帧的摄像头视野中所有船只的ais信息,并利用图像目标检测算法检测摄像头画面中所有船只的位置,总共获取n帧图像,得到船只的摄像头画面坐标集合ω={(x
i
,y
i
)},(x
i
,y
i
)表示第i只船只的摄像头画面坐标。
[0031]
作为优选的,通过步骤s1中的低精度映射关系将每帧图像中所有船只的经纬度坐标转换为摄像头画面坐标,得到转换后的船只的摄像头画面坐标集合k={(x

j
,y

j
)},其中(x

j
,y

j
)表示第j只船只由经纬度转换后的摄像头画面坐标。
[0032]
作为优选的,所述步骤s3中,对于每一帧图像的处理过程如下:
[0033]
在每一帧图像中,选取该帧图像中利用图像目标检测算法检测得到的所有船只的摄像头画面坐标集合ω
n
={(x
i
,y
i
)}和经ais获得的经纬度坐标转换后的摄像头画面坐标集合k
n
={(x

j
,y

j
)},其中n表示第n帧图像,利用图像目标检测算法得到的船只摄像头画面坐标与由经纬度坐标转换的船只摄像头画面坐标之差为(δx,δy),计算如下:
[0034]
δx=|x
i

x

j
|
[0035]
δy=|y
i

y

j
|
[0036]
根据(δx,δy)确定摄像头画面坐标与经纬度坐标一一对应的方法如下:
[0037]
设定一个阈值(δx,δy),筛选符合条件的船只画面坐标(x,y),即δx<δx,δy<δy,在筛选的过程中如果出现由图像目标检测算法获得的一只船只画面坐标对应多个符合条件的由经纬度坐标转换的摄像头画面坐标,则舍弃该船只画面坐标(x,y),使得由图像目标检测算法获得的一只船只的摄像头画面坐标只对应一个符合条件的由经纬度坐标转换的摄像头画面坐标,依次筛选出所有帧图像中符合条件的船只画面坐标(x,y),得到符合条件的船只的摄像头画面坐标和该船只的经纬度坐标的位置信息集合m={<lon
i
,lat
i
,x
i
,y
i
>},所述(lon
i
,lat
i
)是步骤s1中船只经纬度坐标转换前的的经纬度坐标,(x
i
,y
i
)是由图像目标检测算法获得的船只摄像头画面坐标。通过上述摄像头画面坐标与经纬度坐标一一对应的筛选方法可以降低经纬度坐标匹配到错误的摄像头画面坐标的概率。
[0038]
作为优选的,所述步骤s4中,利用步骤s3中获得的摄像头画面坐标和经纬度坐标的位置信息集合m={<lon
i
,lat
i
,x
i
,y
i
>},通过计算得到变换矩阵参数,过程如下:
[0039]
从位置信息集合m={<lon
i
,lat
i
,x
i
,y
i
>}中每次选取三组数据,通过逆矩阵计算得到多个变换矩阵h
i

[0040][0041]
其中(lon
i1
,lat
i1
)、(lon
i1
,lat
i2
)、(lon
i3
,lat
i3
)分别是船只的三组经纬度坐标,(x
i1
,y
i1
)、(x
i2
,y
i2
)、(x
i3
,y
i3
)分别是船只在摄像头画面中的三组坐标;
[0042]
然后取多个变换矩阵h
i
的平均值,这样设置可以减小误差:
[0043]
[0044]
经纬度坐标和摄像头画面坐标转换关系如下:
[0045][0046]
其中(lon,lat)是船只的经纬度坐标,(x,y)是船只在摄像头画面中的坐标,h是变换矩阵。
[0047]
相对于现有技术,本发明取得了有益的技术效果:
[0048]
1.本发明通过对齐摄像头画面坐标和ais经纬度坐标,建立摄像头画面坐标和ais经纬度坐标的低精度映射关系,以低精度的坐标映射为基础,得到准确的摄像头画面坐标与经纬度坐标一一对应的位置信息对应关系,提高了坐标映射的准确度。
[0049]
2.本发明利用高精度坐标映射方法可以快速得到摄像头画面中任意船舶的经纬度坐标和摄像头画面坐标,减小了测定误差,提高船舶监测效率。
附图说明
[0050]
图1是本发明实施例中基于ais的船舶高精度坐标映射方法的流程图;
[0051]
图2是本发明实施例中ais经纬度坐标和监控摄像头画面坐标的映射关系计算方法示意图一;
[0052]
图3是本发明实施例中ais经纬度坐标和监控摄像头画面坐标的映射关系计算方法示意图二;
[0053]
图4是本发明实施例中待检测的船只的摄像头画面坐标位置示意图。
具体实施方式
[0054]
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合实施例对本发明进行进一步详细说明,但本发明要求保护的范围并不局限于下述具体实施例。
[0055]
实施例
[0056]
参考图1,本实施例公开了一种基于ais的船舶高精度坐标映射方法,包括以下步骤:
[0057]
步骤s1:通过人工测定摄像头的外参,摄像头的外参就是摄像头坐标系在世界坐标系中的位置,及摄像头可视范围内的水面任意位置的粗标定,对齐摄像头画面坐标和ais经纬度坐标,建立摄像头画面坐标和ais经纬度坐标的低精度映射关系;由于该映射关系为低精度映射关系,因此需要进一步建立高精度映射关系;
[0058]
步骤s2:每隔δt时间获取一次摄像头视野中所有船只的ais信息,通过图像目标检测算法检测摄像头画面中所有船只的位置,得到所有船只的摄像头画面坐标集合ω={<x
i
,y
i
>},利用步骤s1中低精度映射关系将所有船只的经纬度坐标转换为船只的摄像头画面坐标,得到转换后的坐标集合k={<x
j
,y
j
>};
[0059]
步骤s3:设置一个阈值,将步骤s2中通过图像目标检测算法获得的船只摄像头画面坐标集合ω和经低精度映射关系转换得到的船只摄像头画面坐标集合k进行匹配,筛选符合条件的船只的摄像头画面坐标,使船只的经纬度坐标和摄像头画面坐标形成一一对应的关系,确定船只的经纬度坐标和摄像头画面坐标集合m={<lon
i
,lat
i
,x
i
,y
i
>};
[0060]
步骤s4:利用步骤s3中的位置信息集合m={<lon
i
,lat
i
,x
i
,y
i
>}建立船只的高精度坐标映射。
[0061]
其中,具体的所述步骤s1中,所述摄像头画面坐标和ais经纬度坐标的低精度映射关系的建立过程具体如下:
[0062]
步骤s1.0:参数获取准备:
[0063]
如图2~4所示,图3中n示意地理真北方向,测定摄像头距离水平面的高度为h、摄像头中心线与垂直线的夹角为θ、摄像头中心线在水平面上的投影和地理真北方向的夹角为β、摄像头水平视场角为ω
x
、摄像头垂直视场角为ω
y
、获取摄像头图像分辨率参数信息为x
×
y(x为图像的像素宽度,y为像素高度);
[0064]
假定:摄像头画面中心的坐标定为(0,0),摄像头所在的位置o在水平面上的垂直投影位置为o

,其经纬度为(λ0,ψ0),针对摄像头可视范围内的水面任意位置a
i
的经纬度坐标(λ
i
,ψ
i
)可按如下方式转换为摄像头画面坐标(x
i
,y
i
);
[0065]
步骤1.1:根据haversine公式,计算摄像头所在的位置在水平面上的垂直投影位置o

和摄像头可视范围内的水面任意位置a
i
的直线水平距离d
i
,单位为m,o

和a
i
的经度水平距离s
i
,单位为m:
[0066][0067][0068][0069][0070]
其中:a、b均为中间变量值,o

(λ0,ψ0)为摄像头所在的位置在水平面上的垂直投影位置,a
i

i
,ψ
i
)为摄像头可视范围内的水面任意位置,r为地球半径,单位为m;
[0071]
步骤1.2:由步骤1.1,计算o

和a
i
的连线和地理真北方向的夹角β
i

[0072][0073]
步骤1.3:由步骤1.1,计算o和a
i
的连线和垂直线的夹角θ
i

[0074][0075]
其中,h为摄像头距离水平面的高度,单位为m;
[0076]
步骤1.4:计算a
i
在监控摄像头画面坐标(x
i
,y
i
):
[0077][0078]
[0079]
即步骤s1具体过程可总结为:通过人工测定,可建立低精度的监控摄像头画面坐标和ais经纬度坐标的映射关系。
[0080]
所述步骤s2具体过程为:每隔δt时间获取一帧图像,获取该时刻下该帧的摄像头视野中所有船只的ais信息,并利用图像目标检测算法检测摄像头画面中所有船只的位置,总共获取n帧图像,得到船只的摄像头画面坐标集合ω={(x
i
,y
i
)},(x
i
,y
i
)表示第i只船只的摄像头画面坐标。同时实时处理所接收到的过往船只的ais信息,获得船只信息集合{<λ
i

i
>};其中<λ
i

i
>表示检测的第i艘船的位置信息,λ
i
是船的经度,ψ
i
是纬度;通过步骤s1中的低精度映射关系将每帧图像中所有船只的经纬度坐标转换为摄像头坐标,得到转换后的船只的摄像头画面坐标集合k={(x

j
,y

j
)},其中(x

j
,y

j
)表示第j只船只由经纬度转换后的摄像头画面坐标。
[0081]
步骤s2中的图像目标检测算法为现有,可参考现有的公开专利:公告号为cn109993163a、名称为一种基于人工智能的非标铭牌识别系统及其识别方法,因此对监控视频中每隔δt时间获取的每一帧的图像进行检测,从而得到船只的摄像头画面坐标集合ω={(x
i
,y
i
)}。
[0082]
在具体的实施过程中,可过滤掉那些ais信息中和o

的距离d
i
超出某个可视范围阈值的船只信息,以达到减少后续匹配计算量的目的,这个可视范围阈值可根据摄像头具体的参数以及安装位置的视野而定,通常设置在1公里到10公里的范围。
[0083]
所述步骤s3中,对于每一帧图像的处理过程如下:
[0084]
在每一帧图像中,选取该帧图像中利用图像目标检测算法检测得到的所有船只的摄像头画面坐标集合ω
n
={(x
i
,y
i
)}和经ais获得的经纬度坐标转换后的摄像头画面坐标集合k
n
={(x

j
,y

j
)},其中n表示第n帧图像,利用图像目标检测算法得到的船只摄像头画面坐标与由经纬度坐标转换的船只摄像头画面坐标之差为(δx,δy),计算如下:
[0085]
δx=|x
i

x

j
|
[0086]
δy=|y
i

y

j
|
[0087]
根据(δx,δy)确定摄像头画面坐标与经纬度坐标一一对应的方法如下:
[0088]
设定一个阈值(δx,δy),筛选符合条件的船只画面坐标(x,y),即δx<δx,δy<δy,在筛选的过程中如果出现由图像目标检测算法获得的一只船只画面坐标对应多个符合条件的由经纬度坐标转换的摄像头画面坐标,则舍弃该船只画面坐标(x,y),使得由图像目标检测算法获得的一只船只的摄像头画面坐标只对应一个符合条件的由经纬度坐标转换的摄像头画面坐标,依次筛选出所有帧图像中符合条件的船只画面坐标(x,y),得到符合条件的船只的摄像头画面坐标和该船只的经纬度坐标的位置信息集合m={<lon
i
,lat
i
,x
i
,y
i
>},所述(lon
i
,lat
i
)是步骤s1中船只经纬度坐标转换前的的经纬度坐标,(x
i
,y
i
)是由图像目标检测算法获得的船只摄像头画面坐标。通过上述摄像头画面坐标与经纬度坐标一一对应的筛选方法可以降低经纬度坐标匹配到错误的摄像头画面坐标的概率。
[0089]
所述步骤s4的具体过程为:利用步骤s3中获得的摄像头画面坐标和经纬度坐标的位置信息集合m={<lon
i
,lat
i
,x
i
,y
i
>},通过计算得到变换矩阵参数,过程如下:
[0090]
从位置信息集合m={<lon
i
,lat
i
,x
i
,y
i
>}中每次选取三组数据,通过逆矩阵计算得到多个变换矩阵h
i

[0091][0092]
其中(lon
i1
,lat
i1
)、(lon
i1
,lat
i2
)、(lon
i3
,lat
i3
)分别是船只的三组经纬度坐标,(x
i1
,y
i1
)、(x
i2
,y
i2
)、(x
i3
,y
i3
)分别是船只在摄像头画面中的三组坐标;
[0093]
然后取多个变换矩阵h
i
的平均值,这样设置可以减小误差:
[0094][0095]
经纬度坐标和摄像头画面坐标转换关系如下:
[0096][0097]
其中(lon,lat)是船只的经纬度坐标,(x,y)是船只在摄像头画面中的坐标,h是变换矩阵。
[0098]
最终通过步骤s4建立船只的高精度坐标映射关系,提高坐标映射的准确度,以实现快速得到摄像头画面中任意船舶的经纬度坐标和摄像头画面坐标,减小了测定误差,提高船舶监测效率。
[0099]
根据上述说明书的揭示和教导,本发明所属领域的技术人员还可以对上述实施方式进行变更和修改。因此,本发明并不局限于上面揭示和描述的具体实施方式,对发明的一些修改和变更也应当落入本发明的权利要求的保护范围内。此外,尽管本说明书中使用了一些特定的术语,但这些术语只是为了方便说明,并不对发明构成任何限制。
再多了解一些

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

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

相关文献

  • 日榜
  • 周榜
  • 月榜