首页 / 专利库 / 空气动力学 / 垂直降落 / 一种基于ArUco标签的无人机视觉引导降落方法

一种基于ArUco标签的无人机视觉引导降落方法

阅读:663发布:2020-05-08

专利汇可以提供一种基于ArUco标签的无人机视觉引导降落方法专利检索,专利查询,专利分析的服务。并且本 发明 公开了一种基于ArUco标签的无人机视觉引导降落方法,包含ArUco标志板生成端、视觉 算法 处理端、飞控和视觉算法通讯端、以及飞控动作响应端;根据ArUco标签编码丰富的特性实现机场的有效扩展,利用背投灯点亮标志板的方式确保机场夜间的正常作业,并借助ArUco算法库容错性高和 姿态 解算准的特点进一步提高视觉降落的准确性。,下面是一种基于ArUco标签的无人机视觉引导降落方法专利的具体信息内容。

1.一种基于ArUco标签的无人机视觉引导降落方法,其特征在于,包括以下步骤:
步骤1,生成ArUcoMarker:每一个ArUco Marker都是一个二进制平方标记,它由一个宽的黑边和一个内部的二进制矩阵组成;ArUcoMarker为ArUco标志板;
步骤2,接收解析飞控指令:飞控和视觉算法之间通过串口通信,而串口端口和波特率信息记录在配置文件中,算法流程从配置文件中打开对应端口并创建接收解析飞控指令的线程;
步骤3,执行视觉降落算法:视觉算法处理端根据读取到的视频和预先标定的相机参数,采用ArUco算法库对视频帧中的Marker进行检测,并估算得到当前时刻无人机相对于Marker的位置姿态;当接收到飞控发送的视觉着陆启动信号时,视觉降落算法进入跟随状态;
步骤4,发送结果至飞控:在完成每一个视频帧的处理后,将处理结果发送至飞控;
步骤5,飞控动作响应:当飞控接收到视觉算法的数据包后,如果定位状态为1,则说明此时算法数据可信任,飞控将根据当前相机相对于Marker中心的偏移量以及偏航对飞机位姿进行反向补偿和降落策略的控制,从而实现无人机的准确着陆。
2.根据权利要求1所述的一种基于ArUco标签的无人机视觉引导降落方法,其特征在于,步骤1具体为:黑色边界用于快速检测到图像,二进制编码用于决定Marker的ID;Marker存在多种表现形式,而Marker的字典就是各个形式的集合,其主要性质是字典大小和Marker大小,其中,字典大小是组成字典的Marker数量,而Marker大小则是二进制位的个数;
采用多个Marker嵌套的模式确保无人机在降落阶段的不同高度都能看到完整的Marker,从而实现姿态估计,每组嵌套Marker内部二进制编码均不同且有特定的对应关系,能够实现机场扩展。
3.根据权利要求1所述的一种基于ArUco标签的无人机视觉引导降落方法,其特征在于,步骤2中具体为:飞控按照包的形式发送数据,主要的信息包括机场ID号以及开关命令,其中,机场ID号用于确保无人机降落到指定机场,而开关命令用于切换引导控制权,当算法读取到开始指令时则启动视觉引导着陆任务。
4.根据权利要求1所述的一种基于ArUco标签的无人机视觉引导降落方法,其特征在于,步骤3中具体为:
1)连接相机,以获取视频图像信息;如果相机连接失败,则发送错误信号给飞控;
2)读取相机参数、机场信息和Marker信息;其中,相机参数通过标定相机所得,用于记录相机内参和畸变参数等固有属性;机场信息用于记录降落区域的机场个数及编号,采用外大里小两层Marker嵌套的方式,每个机场包含了两个Marker ID;而Marker信息用于记录Marker隶属的字典以及对应的边长,单位为米;
3)调用ArUco库中的检测函数,用于标记画面中出现的指定ID的Marker;具体地,检测算法先通过灰度化将图像由RGB通道转为Gray通道,再使用中值滤波去除噪声干扰,并利用自适应阈值Otsu的方式将灰度图进行二值化,随后提取轮廓,并找出所有可能的凸四边形作为候选,最后通过ID值和Marker内部矩阵比对筛选出指定Marker进行框选,且优先选择大Marker;
4)调用ArUco库中的位姿估算函数,得到Marker相对于相机的位置和姿态;具体地,根据相机坐标系和Marker坐标系的对应关系,根据PnP方式建立二者的旋转和平移关系,得到Marker相对于相机的变换矩阵;
5)对上一步的变换矩阵求逆得到相机相对于Marker的旋转和平移矩阵,确保所有估算得到的相机位姿都相对于同一个坐标系。
5.根据权利要求1所述的一种基于ArUco标签的无人机视觉引导降落方法,其特征在于,步骤4中视觉算法发送给飞控的数据包括定位状态、X方向偏移量、Y方向偏移量、Z方向偏移量以及偏航角;该数据同样采用数据包的形式发送,数据发送频率和视频帧率保持一致。
6.根据权利要求1所述的一种基于ArUco标签的无人机视觉引导降落方法,其特征在于,步骤5中进一步的,在修正无人机在平方向上不断居中的同时,还需控制其在垂直方向的高度;在降落过程中Marker偏出相机视野时,需要拉高飞机至一定高度以使Marker重新出现在画面中。

说明书全文

一种基于ArUco标签的无人机视觉引导降落方法

技术领域

[0001] 本发明属于无人机应用技术领域,特别涉及一种基于ArUco标签的无人机视觉引导降落方法。

背景技术

[0002] 随着无人机在行业应用领域的逐渐多元化,面对复杂严苛的作业环境,可靠性和智能化程度就成为衡量无人机系统成熟与否的重要因素。无人机视觉引导降落模作为空基机器人智能化应用的一部分,能够有效地规避无人机降落时刻GPS信息不准导致的位置偏移,为无人机在固定机场或车载机场的末端降落提供准确的辅助信息。
[0003] 近几年,为解决普通GPS精度等级不足导致的无人机降落准确性问题,出现了多种应对方案,主要包括采用差分GPS硬件进行全程引导以及采用计算机视觉进行末端引导。其中,差分GPS硬件的定位精度可以达到厘米级,但其受环境因素影响较大,在遮挡较多或偏远区域的信号强度较差,适用场景的局限性很大;视觉末端引导则主要通过计算机视觉算法跟踪标志板来估算飞机位置,从而实现飞行末端的精准降落,但如何将其扩展至可用于多架飞机降落的机场、如何实现白天和夜晚全天候作业以及如何保证引导降落的准确性则是目前该类方法所要重点解决的问题。

发明内容

[0004] 本发明的目的在于提供一种基于ArUco标签的无人机视觉引导降落方法,以解决上述问题。
[0005] 为实现上述目的,本发明采用以下技术方案:
[0006] 一种基于ArUco标签的无人机视觉引导降落方法,包括以下步骤:
[0007] 步骤1,生成ArUco标志板:每一个ArUco Marker都是一个二进制平方标记,它由一个宽的黑边和一个内部的二进制矩阵组成;
[0008] 步骤2,接收解析飞控指令:飞控和视觉算法之间通过串口通信,而串口端口和波特率信息记录在配置文件中,算法流程从配置文件中打开对应端口并创建接收解析飞控指令的线程;
[0009] 步骤3,执行视觉降落算法:视觉算法处理端根据读取到的视频和预先标定的相机参数,采用ArUco算法库对视频帧中的Marker进行检测,并估算得到当前时刻无人机相对于Marker的位置和姿态;当接收到飞控发送的视觉着陆启动信号时,视觉降落算法进入跟随状态;
[0010] 步骤4,发送结果至飞控:在完成每一个视频帧的处理后,将处理结果发送至飞控;
[0011] 步骤5,飞控动作响应:当飞控接收到视觉算法的数据包后,如果定位状态为1,则说明此时算法数据可信任,飞控将根据当前相机相对于Marker中心的偏移量以及偏航对飞机位姿进行反向补偿和降落策略的控制,从而实现无人机的准确着陆。
[0012] 进一步的,步骤1具体为:黑色边界用于快速检测到图像,二进制编码用于决定Marker的ID;Marker存在多种表现形式,而Marker的字典就是各个形式的集合,其主要性质是字典大小和Marker大小,其中,字典大小是组成字典的Marker数量,而Marker大小则是二进制位的个数;
[0013] 采用多个Marker嵌套的模式确保无人机在降落阶段的不同高度都能看到完整的Marker,从而实现姿态估计,每组嵌套Marker内部二进制编码均不同且有特定的对应关系,能够实现机场扩展。
[0014] 进一步的,步骤2中具体为:飞控按照包的形式发送数据,主要的信息包括机场ID号以及开关命令,其中,机场ID号用于确保无人机降落到指定机场,而开关命令用于切换引导控制权,当算法读取到开始指令时则启动视觉引导着陆任务。
[0015] 进一步的,步骤3中具体为:
[0016] 1)连接相机,以获取视频图像信息;如果相机连接失败,则发送错误信号给飞控;
[0017] 2)读取相机参数、机场信息和Marker信息;其中,相机参数通过标定相机所得,用于记录相机内参和畸变参数等固有属性;机场信息用于记录降落区域的机场个数及编号,采用外大里小两层Marker嵌套的方式,每个机场包含了两个Marker ID;而Marker信息用于记录Marker隶属的字典以及对应的边长,单位为米;
[0018] 3)调用ArUco库中的检测函数,用于标记画面中出现的指定ID的Marker;具体地,检测算法先通过灰度化将图像由RGB通道转为Gray通道,再使用中值滤波去除噪声干扰,并利用自适应阈值Otsu的方式将灰度图进行二值化,随后提取轮廓,并找出所有可能的凸四边形作为候选,最后通过ID值和Marker内部矩阵比对筛选出指定Marker进行框选,且优先选择大Marker;
[0019] 4)调用ArUco库中的位姿估算函数,得到Marker相对于相机的位置和姿态;具体地,根据相机坐标系和Marker坐标系的对应关系,根据PnP方式建立二者的旋转和平移关系,得到Marker相对于相机的变换矩阵;
[0020] 5)对上一步的变换矩阵求逆得到相机相对于Marker的旋转和平移矩阵,确保所有估算得到的相机位姿都相对于同一个坐标系。
[0021] 进一步的,步骤4中视觉算法发送给飞控的数据包括定位状态、X方向偏移量、Y方向偏移量、Z方向偏移量以及偏航角;该数据同样采用数据包的形式发送,数据发送频率和视频帧率保持一致。
[0022] 进一步的,步骤5中进一步的,在修正无人机在平方向上不断居中的同时,还需控制其在垂直方向的高度;在降落过程中Marker偏出相机视野时,需要拉高飞机至一定高度以使Marker重新出现在画面中。
[0023] 与现有技术相比,本发明有以下技术效果:
[0024] 本发明提供了一种基于ArUco标签的无人机视觉引导降落方法,能够很好地利用ArUco标签编码丰富、算法库容错性高和姿态解算准等特点,在保证视觉引导降落准确性的前提下,实现无人机机场的有效扩展。同时,整个算法流程运行于机载端的ARM板上,通过多线程方式将数据传输端和视觉算法处理端分开计算,确保了算法的实时运行。另外,为保证该系统可以全天候作业,使用了背投灯点亮标志板的方式,在不改变视觉引导流程的前提下,很好地避免了夜间降落使用额外传感器所带来的安装和成本等问题。附图说明
[0025] 图1是基于ArUco标签的无人机视觉引导降落方法的流程框图
[0026] 图2是不同字典下的Marker示例图;
[0027] 图3是DICT_4*4_1000字典中ID为0和1的Marker编码示例;
[0028] 图4是嵌套模式的Marker组合。

具体实施方式

[0029] 下面结合附图对本发明进行详细说明。
[0030] 请参阅图1至图4,一种基于ArUco标签的无人机视觉引导降落方法,包括以下步骤:
[0031] 步骤1,生成ArUco标志板:每一个ArUco Marker都是一个二进制平方标记,它由一个宽的黑边和一个内部的二进制矩阵组成;
[0032] 步骤2,接收解析飞控指令:飞控和视觉算法之间通过串口通信,而串口端口和波特率信息记录在配置文件中,算法流程从配置文件中打开对应端口并创建接收解析飞控指令的线程;
[0033] 步骤3,执行视觉降落算法:视觉算法处理端根据读取到的视频帧和预先标定的相机参数,采用ArUco算法库对视频帧中的Marker进行检测,并估算得到当前时刻无人机相对于Marker的位置和姿态;当接收到飞控发送的视觉着陆启动信号时,视觉降落算法进入跟随状态;
[0034] 步骤4,发送结果至飞控:在完成每一个视频帧的处理后,将处理结果发送至飞控;
[0035] 步骤5,飞控动作响应:当飞控接收到视觉算法的数据包后,如果定位状态为1,则说明此时算法数据可信任,飞控将根据当前相机相对于Marker中心的偏移量以及偏航角对飞机位姿进行反向补偿和降落策略的控制,从而实现无人机的准确着陆。
[0036] 步骤1具体为:黑色边界用于快速检测到图像,二进制编码用于决定Marker的ID;Marker存在多种表现形式,而Marker的字典就是各个形式的集合,其主要性质是字典大小和Marker大小,其中,字典大小是组成字典的Marker数量,而Marker大小则是二进制位的个数;
[0037] 采用多个Marker嵌套的模式确保无人机在降落阶段的不同高度都能看到完整的Marker,从而实现姿态估计,每组嵌套Marker内部二进制编码均不同且有特定的对应关系,能够实现机场扩展。
[0038] 步骤2中具体为:飞控按照包的形式发送数据,主要的信息包括机场ID号以及开关命令,其中,机场ID号用于确保无人机降落到指定机场,而开关命令用于切换引导控制权,当算法读取到开始指令时则启动视觉引导着陆任务。
[0039] 步骤3中具体为:
[0040] 1)连接相机,以获取视频图像信息;如果相机连接失败,则发送错误信号给飞控;
[0041] 2)读取相机参数、机场信息和Marker信息;其中,相机参数通过标定相机所得,用于记录相机内参和畸变参数等固有属性;机场信息用于记录降落区域的机场个数及编号,采用外大里小两层Marker嵌套的方式,每个机场包含了两个Marker ID;而Marker信息用于记录Marker隶属的字典以及对应的边长,单位为米;
[0042] 3)调用ArUco库中的检测函数,用于标记画面中出现的指定ID的Marker;具体地,检测算法先通过灰度化将图像由RGB通道转为Gray通道,再使用中值滤波去除噪声干扰,并利用自适应阈值Otsu的方式将灰度图进行二值化,随后提取轮廓,并找出所有可能的凸四边形作为候选,最后通过ID值和Marker内部矩阵比对筛选出指定Marker进行框选,且优先选择大Marker;
[0043] 4)调用ArUco库中的位姿估算函数,得到Marker相对于相机的位置和姿态;具体地,根据相机坐标系和Marker坐标系的对应关系,根据PnP方式建立二者的旋转和平移关系,得到Marker相对于相机的变换矩阵;
[0044] 5)对上一步的变换矩阵求逆得到相机相对于Marker的旋转和平移矩阵,确保所有估算得到的相机位姿都相对于同一个坐标系。
[0045] 步骤4中视觉算法发送给飞控的数据包括定位状态、X方向偏移量、Y方向偏移量、Z方向偏移量以及偏航角;该数据同样采用数据包的形式发送,数据发送频率和视频帧率保持一致。
[0046] 步骤5中进一步的,在修正无人机在水平方向上不断居中的同时,还需控制其在垂直方向的高度;在降落过程中Marker偏出相机视野时,需要拉高飞机至一定高度以使Marker重新出现在画面中。
[0047] 本发明提供了一种基于ArUco标签的无人机视觉引导降落方法,根据ArUco标签编码丰富的特性实现机场的有效扩展,利用背投灯点亮标志板的方式确保机场夜间的正常作业,并借助ArUco算法库容错性高和姿态解算准的特点进一步提高视觉降落的准确性。
[0048] 本发明所采用的技术方案包含ArUco标志板生成端、视觉算法处理端、飞控和视觉算法通讯端、以及飞控动作响应端,整个算法流程均在机载ARM板NVIDIAJetson Nano上完成。其中,ArUco标志板生成端采用多个Marker嵌套的模式确保无人机在降落阶段的不同高度都能看到完整的Marker,从而实现姿态估计,由于每组嵌套Marker内部二进制编码均不同且有特定的对应关系,因此能够方便的实现机场扩展;
[0049] 视觉算法处理端根据读取到的视频帧和预先标定的相机参数,采用ArUco算法库对视频帧中的Marker进行检测,并估算得到当前时刻无人机相对于Marker的位置和姿态;
[0050] 飞控和视觉算法通讯端通过串口实现数据包的接收和发送,其中接收端是指视觉算法接收飞控发来的开关指令、机场ID号等信息,而发送端是指视觉算法将处理得到的位姿状态发送给飞控以供其对无人机进行控制;
[0051] 飞控动作响应端根据视觉算法得到的偏移量和姿态角对无人机进行反向补偿和降落策略的控制,从而实现无人机的准确着陆。
[0052] 实施例
[0053] 本发明提供了一种基于ArUco标签的无人机视觉引导降落方法。整个流程包含五个主要部分:生成ArUco标志板、接收解析飞控指令、执行视觉降落算法、发送结果至飞控、以及飞控动作响应,而其中的算法主体均在机载ARM板NVIDIA Jetson Nano上完成。该方法的流程框图如图1所示。
[0054] 所述方法的具体实施步骤如下:
[0055] 步骤S1:生成ArUco标志板。每一个ArUco Marker都是一个二进制平方标记,它由一个宽的黑边和一个内部的二进制矩阵组成,其中,黑色边界有利于快速检测到图像,二进制编码用于决定Marker的ID,并加入了错误检测和矫正技术,提高了容错性。Marker存在多种表现形式,而Marker的字典就是各个形式的集合,其主要性质是字典大小和Marker大小。其中,字典大小是组成字典的Marker数量,而Marker大小则是二进制位的个数。例如一个4*
4的Marker由16bits组成,一个5*5的Marker由25bits组成,部分Marker的示例如图2所示。
[0056] ArUco标签提供了字典类来描述Marker字典,并通过文件记录不同字典的编码。例如DICT_4*4_1000就是一个预定义的字典,包含1000个不同的Marker,且每个Marker都由16bits组成。在预先建立的字典中,ID0和ID1的编码及对应样式如图3所示,按照白为1黑为
0、每8bits一组的方式,从左到右从上到下进行编码,则ID0所在Marker对应的二进制编码为10110101,00110010,转换为十进制则是181,50;将图像逆时针旋转90度,再次按照从左到右从上到下的方式编码,则二进制编码为11101011,01001000,转换为十进制则是235,
72;再依次逆时针旋转90度就可以得到余下的两个编码值。由此可见,字典预编码格式和Marker样式是一一对应的,且Marker具有方向性。
[0057] 系统实际运行时,为应对相机在降落过程中因高度变化带来的视场范围不断缩小的问题,我们采用了嵌套模式的Marker组合,以确保在高空可以看到最大的Marker,而在着陆时可以看到最小的Marker,如图4所示。当需要对机场进行扩展时,只需按照类似的嵌套方式,将不同ID的Marker组合在一起即可实现多个具有不同ID的机场创建。
[0058] 步骤S2:接收解析飞控指令。飞控和视觉算法之间通过串口通信,而串口端口和波特率信息记录在配置文件中,算法流程从配置文件中打开对应端口并创建接收解析飞控指令的线程。如图1中S2所示,飞控按照包的形式发送数据,其频率为50Hz,每个数据包有16个字节,主要的信息包括机场ID号以及开关命令。其中,机场ID号用于确保无人机降落到指定机场,而开关命令用于切换引导控制权,当算法读取到开始指令时则启动视觉引导着陆任务。
[0059] 步骤S3:执行视觉降落算法。该部分运算启用了另一个线程完成,当接收到飞控发送的视觉着陆启动信号时,算法进入跟随状态,开始执行如下操作:
[0060] 1)连接相机,以获取视频图像信息。如果相机连接失败,则发送错误信号给飞控;
[0061] 2)读取相机参数、机场信息和Marker信息。其中,相机参数通过标定相机所得,用于记录相机内参和畸变参数等固有属性;机场信息用于记录降落区域的机场个数及编号,由于目前采用了外大里小两层Marker嵌套的方式,因此每个机场包含了两个Marker ID;而Marker信息用于记录Marker隶属的字典以及对应的边长(单位为米);
[0062] 3)调用ArUco库中的检测函数,用于标记画面中出现的指定ID的Marker。具体地,检测算法先通过灰度化将图像由RGB通道转为Gray通道,再使用中值滤波去除噪声干扰,并利用自适应阈值Otsu的方式将灰度图进行二值化,随后提取轮廓,并找出所有可能的凸四边形作为候选,最后通过ID值和Marker内部矩阵比对筛选出指定Marker进行框选,且优先选择大Marker;
[0063] 4)调用ArUco库中的位姿估算函数,从而得到Marker相对于相机的位置和姿态。具体地,由于知道Marker的实际尺寸、相机参数以及图像中Marker的像素位置,根据相机坐标系和Marker坐标系的对应关系,可以根据PnP方式建立二者的旋转和平移关系,得到Marker相对于相机的变换矩阵;
[0064] 5)由于实际使用时Marker降落的基准位置,因此需要对上一步的变换矩阵求逆得到相机相对于Marker的旋转和平移矩阵,从而确保所有估算得到的相机位姿都相对于同一个坐标系。
[0065] 步骤S4:发送结果至飞控。在完成每一个视频帧的处理后,就需要将处理结果发送至飞控,确保其快速响应。由于求取的相机相对于Marker的变换矩阵包括旋转和平移向量,且无人机响应的主要为偏航角和相对于Marker的偏移量,因此视觉算法发送给飞控的数据主要包括定位状态、X方向偏移量、Y方向偏移量、Z方向偏移量以及偏航角。该数据同样采用数据包的形式发送,每个数据包为14个字节,数据发送频率和视频帧率保持一致;
[0066] 步骤S5:飞控动作响应。当飞控接收到视觉算法的数据包后,如果定位状态为1,则说明此时算法数据可信任,飞控将根据当前相机相对于Marker中心的偏移量以及偏航角对飞机位姿进行反向补偿,例如无人机的X方向偏移量为正时,则需要将飞机往相反方向拉。在修正无人机在水平方向上不断居中的同时,还需控制其在垂直方向的高度,确保其能够按照一定速度平稳降落。另外,降落策略的控制也是飞控动作响应的一个重要环节,比如在降落过程中由于强导致Marker偏出相机视野时,需要拉高飞机至一定高度以确保Marker重新出现在画面中。因此,该步骤主要保证了降落过程的准确性和容错性。
高效检索全球专利

专利汇是专利免费检索,专利查询,专利分析-国家发明专利查询检索分析平台,是提供专利分析,专利查询,专利检索等数据服务功能的知识产权数据服务商。

我们的产品包含105个国家的1.26亿组数据,免费查、免费专利分析。

申请试用

分析报告

专利汇分析报告产品可以对行业情报数据进行梳理分析,涉及维度包括行业专利基本状况分析、地域分析、技术分析、发明人分析、申请人分析、专利权人分析、失效分析、核心专利分析、法律分析、研发重点分析、企业专利处境分析、技术处境分析、专利寿命分析、企业定位分析、引证分析等超过60个分析角度,系统通过AI智能系统对图表进行解读,只需1分钟,一键生成行业专利分析报告。

申请试用

QQ群二维码
意见反馈