一种无人机巡检航线构建方法
技术领域
本发明涉及三维图形渲染、三维仿真、数据提取、投影转换等技术领域,尤其是指一种无人机巡检航线构建方法。
背景技术
无人机巡检视频即无人机巡检过程中所采集的视频影像数据。对于绝大部分无人机(如大疆无人机)来说,在采集过程中,往往会对采集时的位置信息进行记录,并将其以字幕形势嵌入到视频数据中,因此可以将字幕中的位置信息提取出来,并通过三维图形渲染技术,实现无人机的飞行仿真与重演,方便用户在浏览视频的同时,也可以在地图上看到无人机对应位置与飞行轨迹。从而便于对无人机的巡检过程进行有效监控与管理。
然而出于成本考虑,大部分无人机并没有配置RTK等高精度的定位工具,再加上GPS信号的不稳定性,导致直接从视频提取的航线往往精度较低,视觉效果较差,无法有效反映无人机飞行状态。
因此,如何从无人机巡检视频中提取出高精度飞行航线,对输电线路巡检技术和无人机追踪观测领域具有重大的应用价值。
现有技术中主要通过人工方式将视频字幕文件中航线位置信息筛选出来,并通过手动修改和目视插值的方式来构建高精度航线,整个过程十分繁琐,需要耗费大量人力。因此,如何完全自动地从巡检视频中提取出高精度、可用的无人机航线成为了无人机巡检技术领域所要解决的重要技术问题。
发明内容
针对上述背景技术中的问题,提供一种全新的无人机巡检航线构建方法。利用数据提取技术从无人机字幕文件中提取航线点位置和时间信息,以投影转换算法对航线点位置坐标进行转换,去除错误航线点坐标并对剩余航线点连线进行平滑处理,再以三维渲染技术进行仿真,实现无人机巡检过程的监控和管理。
本发明所述的一种无人机巡检航线构建方法,包括:
S1获取无人机拍摄的加载有字幕文件的视频影像;
S2提取所述视频影像中字幕文件里的航线点的时间和位置信息;
S3将所述航线点的位置信息中的地理坐标转换为大地直角坐标;
S4按所述航线点的时间信息计算每三个连续的航线点形成的拐角,并删除拐角低于90度的角点;
S5将剩余的航线点顺序连接,以贝塞尔曲线进行插值将航线点轨迹优化为曲线;
S6以优化处理后的航线点位置按照时间顺序建立关键帧,通过三维图形渲染技术构建无人机飞行航线。
所述地理坐标是用纬度、经度表示地面点位置的球面坐标。地理坐标系以地轴为极轴,所有通过地球南北极的平面均称为子午面。地理坐标,就是用经纬度表示地面点位的球面坐标。地理坐标系是使用三维球面来定义地球表面位置,以实现通过经纬度对地球表面点位引用的坐标系。一个地理坐标系包括角度测量单位、本初子午线和参考椭球体三部分。在球面系统中,水平线是等纬度线或纬线。垂直线是等经度线或经线。在本申请中,航线点的位置信息初始状态为无人机实时记录的地理坐标系坐标,包括该航线点的经度、纬度和高度数据。
所述大地直角坐标是以空间一点(本申请中以地球球心点为基准)O为原点,建立三条两两垂直的数轴;x轴,y轴,z轴,这时建立了空间直角坐标系Oxyz,其中点O叫做坐标原点,三条轴统称为坐标轴,由坐标轴确定的平面叫坐标平面。在本申请中,由于航线构建需要采用大地直角坐标系,因此通过投影转换算法对地理坐标进行自动转换。
本发明突破了传统无人机航线提取技术中依赖人工实现构建高精度航线的多种弊端,避免耗费大量人力,简化了繁琐的数据筛选和手动修改过程,能够实现完全自动的无人机航线仿真过程,为机器视觉及人工智能的并行处理提供了可能。
具体地,所述航线点的时间和位置信息包括起始时间、终止时间、经度、纬度和高度。
进一步地,提取所述视频影像中字幕文件里的航线点的时间和位置信息的步骤包括:截取加载有字幕文件的视频影像中的画面,以解析文本的方式查找定位时间段数据和GPS数据,所述定位时间段数据包括起始时间和终止时间,所述GPS数据包括经度、纬度和高度数据,将所述起始时间、终止时间、经度、纬度和高度数据存储在地理坐标数组中。
进一步地,所述地理坐标包括经度、纬度和高度数据,通过投影转换算法自动转换为大地直角坐标(x,y,z),其中,x=r·cos∠B·sin∠A,y=r·sin∠B,z=r·cos∠B·cos∠A,r为地球半径,∠A为经度,∠B为纬度。
进一步地,按所述航线点的时间信息计算每三个连续的航线点形成的拐角,并删除拐角低于90度的角点的步骤包括:设航线点1位置为(x1,y1,z1),航线点2位置为(x2,y2,z2),航线点3位置为(x3,y3,z3),根据向量积计算公式,三个航线点之间的拐角为:
若拐角低于90度则删除航线点2。
进一步地,将剩余的航线点顺序连接,以贝塞尔曲线进行插值将航线点轨迹优化为曲线的步骤包括:根据贝塞尔曲线公式B(t)=(1-t)2P0+2t(1-t)P1+t2P2,t∈[0,1],以P0为起点,P1为控制点,P2为终点,t根据需要得到插值的点的个数确定,得到二维平面上的坐标值,再将坐标z值进行线性插值得到每个点的高程。
所述贝塞尔曲线是应用于二维图形应用程序的数学曲线。一般的矢量图形软件通过它来精确画出曲线,贝赛尔曲线由线段与节点组成,节点是可拖动的支点,线段像可伸缩的皮筋,我们在绘图工具上看到的钢笔工具就是来做这种矢量曲线的。曲线的定义有四个点:起始点、终止点(也称锚点)以及两个相互分离的中间点。滑动两个中间点,贝塞尔曲线的形状会发生变化。它通过控制曲线上的四个点(起始点、终止点以及两个相互分离的中间点)来创造、编辑图形。其中起重要作用的是位于曲线中央的控制线。这条线是虚拟的,中间与贝塞尔曲线交叉,两端是控制端点。移动两端的端点时贝塞尔曲线改变曲线的曲率(弯曲的程度);移动中间点(也就是移动虚拟的控制线)时,贝塞尔曲线在起始点和终止点锁定的情况下做均匀移动。
进一步地,以优化处理后的航线点位置按照时间顺序建立关键帧,通过三维图形渲染技术构建无人机飞行航线的步骤包括:将删除错误航线点后的剩余航线点轨迹优化为曲线后,得到各航线点的二维平面坐标值和高程,按航线点的时间顺序建立飞行关键帧,所述飞行关键帧包括该航线点的时间信息、二维平面坐标值和高程信息,再以三维图形渲染工具模拟无人机飞行航线仿真动画,所述无人机飞行航线仿真动画包括飞行关键帧和飞行场景,以及根据时间信息自动关联的实时拍摄画面浮窗。
进一步地,本发明还提供一种可读储存介质,其上储存有控制程序,其特征在于:该控制程序被处理器执行时实现如上述任意一项所述的无人机巡检航线构建方法。
进一步地,本发明还提供一种计算机控制系统,包括储存器、处理器以及储存在所述储存器中并可被所述处理器执行的控制程序,其特征在于:所述处理器执行所述控制程序时实现如上述任意一项所述的无人机巡检航线构建方法。
为了能更清晰的理解本发明,以下将结合附图说明阐述本发明的具体实施方式。
附图说明
图1为本发明实施例的无人机巡检航线构建方法流程图;
图2为无人机巡检视频字幕示意图;
图3为本发明实施例的投影转换算法示意图;
图4为本发明实施例的地理坐标数组和对应的大地直角坐标数组转换示意图;
图5为本发明实施例的航线点拐角示意图;
图6为本发明实施例的无人机飞行效果仿真示意图。
具体实施方式
请参阅图1,其为本发明实施例的无人机巡检航线构建方法流程图。
本实施例的提取并构建高精度无人机航线方法的步骤如下:
S1获取无人机拍摄的加载有字幕文件的视频影像;
S2提取所述视频影像中字幕文件里的航线点的时间和位置信息;
S3将所述航线点的位置信息中的地理坐标转换为大地直角坐标;
S4按所述航线点的时间信息计算每三个连续的航线点形成的拐角,并删除拐角低于90度的角点;
S5将剩余的航线点顺序连接,以贝塞尔曲线进行插值将航线点轨迹优化为曲线;
S6以优化处理后的航线点位置按照时间顺序建立关键帧,通过三维图形渲染技术构建无人机飞行航线。
所述字幕文件如图2所示,在无人机巡检的视频影像底端通常加载有无人机采集影像过程中的位置信息和时间信息,在本实施例中,为实现高精度无人机航线仿真,需将视频字幕文件中的航线点信息提取出来。图2为巡检视频某一时间段的字幕,其中“00:00:02,000-->00:00:03,000”表示该字幕显示时间为第2秒到第3秒,“GPS(108.2372,22.8554,14)”表示该时间点无人机位置为经度108.2372°,纬度22.8554°,飞行高度14米,因此可以通过解析文本的方式,将航线点时间和位置提取出来,如定位到“-->”,其前后文本即为航线点对应视频的时间,定位到“GPS”,其后括号内文本即为航线点位置信息。
因无人机巡检视频中时间和位置是成组出现的,所以每一个时间数据将对应一个位置信息,包括无人机的飞行高度、经度和纬度数据。
在本实施例中,截取字幕文件中成组出现的时间信息和位置信息,以解析文本的方式查找定位时间段数据和GPS数据,提取所述时间段数据中的起始时间和终止时间,提取所述GPS数据中的经度、纬度和高度数据,将对应成组的起始时间、终止时间、经度、纬度和高度数据存储在地理坐标数组中。
通过投影转换算法自动转换为大地直角坐标(x,y,z),其中,x=r·cos∠B·sin∠A,y=r·sin∠B,z=r·cos∠B·cos∠A,r为地球半径,∠A为经度,∠B为纬度。
参阅图3的投影转换算法示意图,∠AOB即为经度,∠DOB即为纬度;D为球上一点,OD为地球半径r,根据三角函数直观换算地理坐标为大地直角坐标。
图4为本发明实施例的地理坐标数组和对应的大地直角坐标数组转换示意图。
以第七秒至第十秒中的三个航线点为例,实现坐标系的投影转换,得到航线构建所需的大地直角坐标系坐标。
由于GPS信号的不稳定性,导致记录的航线点存在错误数据,考虑到无人机飞行过程一般都是平滑路线,大幅度拐弯也是通过多次拐弯渐进实现的,如果发现连续三个航线点所形成的拐角较小(如图5所示,拐角低于90度),则判定是因为GPS信号抖动导致的错误航线点,因此可以将其中间点(飞行点2)从航线点数组中进行剔除,来保证航线的正确性。
按所述航线点的时间信息计算每三个连续的航线点形成的拐角,并删除拐角低于90度的角点的步骤包括:设航线点1位置为(x1,y1,z1),航线点2位置为(x2,y2,z2),航线点3位置为(x3,y3,z3),根据向量积计算公式,三个航线点之间的拐角为:
若拐角低于90度则判定航线点2为因GPS信号抖动导致的错误航线点,并删除航线点2。
在对拐角处理完成后,将其余的点顺序连接可以得到一条折线,为了使轨迹更加符合实际情况,可以利用贝塞尔曲线进行插值,把拐角处优化为弧线。
在本实施例中,将剩余的航线点顺序连接,以贝塞尔曲线进行插值将航线点轨迹优化为曲线的步骤包括:根据贝塞尔曲线公式B(t)=(1-t)2P0+2t(1-t)P1+t2P2,t∈[0,1],以P0为起点,P1为控制点,P2为终点,t根据需要得到插值的点的个数确定,得到二维平面上的坐标值,再将坐标z值进行线性插值得到每个点的高程。根据以上方法,可以实现将折线转化为曲线。
进一步地,以优化处理后的航线点位置按照时间顺序建立关键帧,通过三维图形渲染技术构建无人机飞行航线的步骤包括:将删除错误航线点后的剩余航线点轨迹优化为曲线后,得到各航线点的二维平面坐标值和高程,按航线点的时间顺序建立飞行关键帧,以三维图形渲染工具构建无人机飞行航线仿真图像。
如图6所示,其为本发明实施例的无人机飞行效果仿真示意图。
通过本专利提出的方法,能够自动从无人机巡检视频中的提取出高精度、可用的无人机飞行航线,用户可以通过这些航线进行无人机飞行仿真与重演,从而便于对无人机的巡检过程进行监控与管理。
与现有基于人工处理的航线提取方法相比,本专利方法从无人机航线数据的提取、转换、修改、平滑、仿真等所有过程都不需要人工参与,因此极大节省了人力成本。
本发明的核心在于完全自动的从无人机巡检视频中提取字幕文件中的航线点信息,通过解析文本的方式定位每一时间段内航线点对应的经度、纬度和高度信息,以投影转换算法将经度、纬度和高度数据自动转换为大地直角坐标(x,y,z),带入直角坐标系中计算相邻三个航线点的拐角,对拐角度数异常的航线点进行剔除,确保航线构建的准确性,再以贝塞尔插值法对剩余航线点连接的折线进行平滑处理,转化航线轨迹为曲线,再通过三维图形渲染技术实现飞行仿真效果。
经过仿真实验表明,本发明能较好的去除因GPS信号抖动导致的错误航线点,并实现航线线路平滑处理,且精度高,验证了无人机巡检航线构建方法是切实可行的。
相对于现有技术,本发明突破了大部分无人机无法配置RTK等高精度定位工具的局限,避免了GPS信号不稳定导致的直接提取视频航线精度较低的情况,大大节省了数据处理中的人工消耗,且自动转换和提取过程具有很好地实时性。除此之外,本发明的无人机飞行航线仿真视觉效果较好,能够有效反映无人机的飞行状态。这样大大减少了数据集采集过程中对资金、时间和人力的消耗,在医疗、军事、遥感、导航等特定领域拥有重要而深远的应用前景。
本发明并不局限于上述实施方式,如果对本发明的各种改动或变形不脱离本发明的精神和范围,倘若这些改动和变形属于本发明的权利要求和等同技术范围之内,则本发明也一同包含这些改动和变形。