一种基于边缘智能的无人机车辆目标检测方法与流程

    专利2022-07-08  114


    本发明涉及计算机视觉、深度学习和移动边缘计算技术领域,尤其涉及一种基于边缘智能的无人机车辆目标检测方法。



    背景技术:

    随着交通基础设施的发展,中国许多城市在市区安装了成千上万个交通监控设备。但是这些视频总是传输到监控中心,并进行人工分析,成本昂贵且效果不好。目前,交通部门采用无人机辅助作业,以其成本低、体积小、灵活方便等优点成为一项极具发展前景的技术。但是无人机的主要作用仅仅用于拍摄视频,最后还是由人工进行分析。因此无人机真正做到“无人”主要面临以下困境:首先,航拍的视频帧数巨大,如果直接处理视频中的每一帧,计算量难以估计;其次,完整的目标检测模型部署在嵌入式设备上,会导致能耗高,计算量高,时延高等问题。为了解决上述问题,目前主要的方法是将无人机采集的视频进行固定间隔或者利用相似性度量选取关键帧,最后传输到高精度目标检测模型进行检测。但是此类方法均在服务器端或者pc端进行实验,没有充分利用边缘设备的计算资源;在过滤冗余帧时会导致丢失部分目标帧甚至所有目标帧;后端直接利用高精度模型进行目标检测,没有进一步过滤,导致检测时延高。



    技术实现要素:

    本发明要解决的技术问题,在于提供一种基于边缘智能的无人机车辆目标检测方法,通过边云协同机制对无人机目标进行检测,解决了数据传输量过大导致时延长与丢失目标帧等问题,提升了目标检测速度,同时提高了检测准确度。

    本发明提供了一种基于边缘智能的无人机车辆目标检测方法,包括:

    步骤s10、在无人机端部署两级过滤器以及轻量级目标检测模型s_yolov3,在云端部署高精度目标检测模型yolov3;

    步骤s20、通过将无人机车辆数据集分别输入到s_yolov3和yolov3中,进行模型迁移训练,使得s_yolov3满足预定的速度要求,且使得yolov3达到预定的精度要求;

    步骤s30、将采集的无人机交通视频,通过部署在无人机端的两级过滤器进行初步过滤,丢弃冗余帧;

    步骤s40、将剩余帧输入到轻量级车辆检测模型s_yolov3进一步筛选目标帧;

    步骤s50、将目标帧输入到部署在云端的高精度目标检测模型yolov3,进行高精度检测,得到最终目标帧。

    进一步的,所述轻量级目标检测模型s_yolov3为基于自动化剪枝的轻量级目标检测模型,所述轻量级目标检测模型s_yolov3的压缩过程如下:

    通过遍历yolov3中的每一层,将同一层中的所有滤波器抽象到一个欧几里得空间,选取其中能被同层其他滤波器共同表示的滤波器进行剪枝操作,并添加计数模块;

    通过强化学习进行剪枝训练,之后进行微调得到精度损失小于一定值且flops小于预设值的轻量级目标检测模型s_yolov3。

    进一步的,所述两级过滤器包括第一级过滤器和第二级过滤器,所述第一级过滤器为像素差异检测器pdd,所述第二级过滤器为结构差异检测器sdd。

    进一步的,所述像素差异检测器pdd过滤过程如下:

    预先对采集的无人机交通视频进行灰度处理和缩放处理,得到像素为9×8灰度图;

    将缩放后的灰度图输入到像素差异检测器pdd,计算每一帧的每行像素的差异值,得到每帧每行8个差异值,所述差异值的计算公式如下:

    ai(x,y)=fi(x,y)-fi(x,y 1)(1)

    其中,x,y表示图像像素的横坐标和纵坐标,fi(x,y)表示第i帧图像的x行y列的像素值,fi(x,y 1)表示第i帧图像的x行y 1列的像素值,ai(x,y)表示第i帧图像的两个像素差异值;

    通过相邻像素强度计算公式,将每一帧的像素差异值转化为两个十六进制值,连接起来转换为字符串,得到了每一帧对应的哈希值,所述相邻像素强度计算公式如下:

    通过异或运算比较相邻帧之间的哈希值,根据预先设置的相似度度量参数判断两相邻帧是否相似,若相似则丢弃其中一帧,否则不丢弃,所述异或运算公式为:

    其中hi(k)和hj(k)分别表示第i帧和第j帧图像的第k个哈希值转换的二进制值,表示异或运算,di,j(k)表示第i,j帧哈希值的运算结果;

    两帧图像的相似判断公式如下:

    δi,j=∑kdi,j(k)(4)

    其中,δi,j表示两帧之间的相似度,如果相似度大于预先设置的相似度度量参数,则认定为冗余帧,直接丢弃,否则输入到下一检测器。

    进一步的,所述结构差异检测器sdd的过滤过程如下:

    根据ssim公式计算两帧图像的相似度,若相似度大于预设的阈值β,则判定为冗余帧,直接丢弃,否则输入到轻量级目标检测器s-yolov3中,所述ssim公式如下:

    c1=(k1l)2(6)

    c2=(k2l)2(7)

    其中的μx、μy分别表示图像x的均值和图像y的均值,分别表示图像x的方差和图像y的方差,σxy表示图像x和图像y的协方差,l为像素值的动态范围,k1=0.01,k2=0.03。

    进一步的,所述步骤s40中轻量级车辆检测模型s_yolov3进一步筛选目标帧的过程包括:

    定义初始过滤阈值clow,chigh,判断剩余帧中是否含有目标,并计算目标数目,若目标数目小于clow,则直接丢弃该帧,若目标数目大于chigh,则保留此帧并用于直接显示,若目标数目介于clow和chigh之间,则保留帧并输入到步骤s50。

    本发明的优点在于:

    1、本发明将视频预处理机制和初级检测模型部署在机载嵌入式设备上,高精度模型部署在云端,边云协同进行快速目标检测,降低时延、成本等,解决了无人机边缘设备和云端数据传输量过大导致时延长等问题;

    2、采用两级过滤器,部署在嵌入式设备上直接处理航拍视频帧,过滤掉相似帧,减少数据传输量的同时尽可能保证了不丢失含目标的视频帧,大大降低了后续检测的时耗;

    3、采用基于强化学习的自动剪枝机制,避免手动压缩模型带来的参数错误问题;轻量化的模型部署在嵌入式设备上,能够初步快速的筛选出目标帧;

    4、云端部署了单目标训练的高精度模型,对经过筛选剩余的少量不明确帧,进行高精度检测,解决了漏检,误检的问题。

    附图说明

    下面参照附图结合实施例对本发明作进一步的说明。

    图1为本发明一种基于边缘智能的无人机车辆目标检测方法的执行流程图。

    图2为本发明一种基于边缘智能的无人机车辆目标检测方法的原理示意图。

    图3为本发明基于强化学习的自动化模型压缩结构图;

    具体实施方式

    本申请实施例中的技术方案,总体思路如下:首先,在无人机的机载嵌入式设备上部署两级过滤器,过滤航拍视频的大量冗余帧,从而减少计算量,降低时延;其次,通过基于强化学习的自动化剪枝方法将目标检测模型进行压缩,并部署在嵌入式设备上,从而进行目标帧的初步快速检测;最后,将未检出的少量帧传输到后端,通过全特征模型进行高精度检测。通过三层级联处理,大大降低了无人机车辆检测的时延,提高了精度,实现了时延和精度的均衡。

    如图1至图3所示,本发明的一种基于边缘智能的无人机车辆目标检测方法,包括:

    步骤s10、在无人机端部署两级过滤器以及轻量级目标检测模型s_yolov3,在云端部署高精度目标检测模型yolov3;

    步骤s20、通过将无人机车辆数据集分别输入到s_yolov3和yolov3中,进行模型迁移训练,使得s_yolov3满足预定的速度要求,且使得yolov3达到预定的精度要求;

    步骤s30、将采集的无人机交通视频,通过部署在无人机端的两级过滤器进行初步过滤,丢弃冗余帧;

    步骤s40、将剩余帧输入到轻量级车辆检测模型s_yolov3进一步筛选目标帧;

    步骤s50、将目标帧输入到部署在云端的高精度目标检测模型yolov3,进行高精度检测,得到最终目标帧。

    较佳的,所述轻量级目标检测模型s_yolov3为基于自动化剪枝的轻量级目标检测模型,所述轻量级目标检测模型s_yolov3的压缩过程如下:

    通过遍历yolov3中的每一层,将同一层中的所有滤波器抽象到一个欧几里得空间,选取其中能被同层其他滤波器共同表示的滤波器进行剪枝操作,并添加计数模块,所述计数模块用于计算目标数目,可实现对交通拥堵情况进行判别;

    通过强化学习进行剪枝训练,之后进行微调得到精度损失小于一定值且flops小于预设值的轻量级目标检测模型s_yolov3。

    较佳的,所述两级过滤器包括第一级过滤器和第二级过滤器,所述第一级过滤器为像素差异检测器pdd,所述第二级过滤器为结构差异检测器sdd。

    较佳的,所述像素差异检测器pdd过滤过程如下:

    预先对采集的无人机交通视频进行灰度处理和缩放处理,得到像素为9×8灰度图;

    将缩放后的灰度图输入到像素差异检测器pdd,计算每一帧的每行像素的差异值,得到每帧每行8个差异值,所述差异值的计算公式如下:

    ai(x,y)=fi(x,y)-fi(x,y 1)(1)

    其中,x,y表示图像像素的横坐标和纵坐标,fi(x,y)表示第i帧图像的x行y列的像素值,fi(x,y 1)表示第i帧图像的x行y 1列的像素值,ai(x,y)表示第i帧图像的两个像素差异值;

    通过相邻像素强度计算公式,将每一帧的像素差异值转化为两个十六进制值,连接起来转换为字符串,得到了每一帧对应的哈希值,所述相邻像素强度计算公式如下:

    通过异或运算比较相邻帧之间的哈希值,根据预先设置的相似度度量参数判断两相邻帧是否相似,若相似则丢弃其中一帧,否则不丢弃,所述异或运算公式为:

    其中hi(k)和hj(k)分别表示第i帧和第j帧图像的第k个哈希值转换的二进制值,表示异或运算,di,j(k)表示第i,j帧哈希值的运算结果;

    两帧图像的相似判断公式如下:

    δi,j=∑kdi,j(k)(4)

    其中,δi,j表示两帧之间的相似度,如果相似度大于预先设置的相似度度量参数,则认定为冗余帧,直接丢弃,否则输入到下一检测器。

    本发明将灰度图缩放到9×8,使得每行9个像素值会产生8个差异值,8位可以构成一个字节,可以转化为两个十六进制值,接着转化为哈希值,通过异或运算比较相邻帧哈希值,从而确定这两帧是否相似。

    较佳的,所述结构差异检测器sdd的过滤过程如下:

    根据ssim公式计算两帧图像的相似度,若相似度大于预设的阈值β,则判定为冗余帧,直接丢弃,否则输入到轻量级目标检测器s-yolov3中,所述ssim公式如下:

    c1=(k1l)2(6)

    c2=(k2l)2(7)

    其中,μx、μy分别表示图像x的均值和图像y的均值,分别表示图像x的方差和图像y的方差,σxy表示图像x和图像y的协方差,l为像素值的动态范围,k1=0.01,k2=0.03。

    经过上述的像素差异检测器pdd初步可以过滤70%以上的冗余帧,剩余帧通过结构差异检测器sdd进行结构性差异过滤,结合亮度,对比度和结构来衡量帧的相似性,实现二次过滤。

    较佳的,所述步骤s40中轻量级车辆检测模型s_yolov3进一步筛选目标帧的过程包括:

    定义初始过滤阈值clow,chigh,判断剩余帧中是否含有目标,并计算目标数目,若目标数目小于clow,则直接丢弃该帧,若目标数目大于chigh,则保留此帧并用于直接显示,若目标数目介于clow和chigh之间(即chigh≥c≥clow,c为目标数目),则保留帧并输入到步骤s50。

    为了更好地理解上述技术方案,下面将结合说明书附图以及具体的实施方式对上述技术方案进行详细的说明:

    请再参阅图1至图3,本发明所述方法的具体步骤依次为:

    步骤a:采集无人机交通视频,分别在无人机机载嵌入式设备上部署轻量级目标检测模型s_yolov3,云端部署单目标迁移训练的高精度目标检测模型yolov3;

    步骤a-1:编写python程序,利用强化学习中的深度确定性策略梯度获得yolov3网络层的属性特征以后,由演员网络输出确定性的剪枝压缩率指导进行可替代滤波器的检索,之后通过将可替代滤波器的参数值归零达到剪枝效果,在执行完神经网络所有层的剪枝后,算法会在验证集上根据flops评估准确性奖励并返回给评论家网络,同时将当前的剪枝策略保存到经验采样池中,然后执行下一轮的网络剪枝,直到所有剪枝周期结束,以满足轻量化需求。本发明的自动化剪枝过程中引入可替代滤波器的搜索,即搜索每一层网络中能够被同一层中其他滤波器表示的可替代滤波器。通过对可替代滤波器的剪枝,能最大程度保留原有模型的精确度。此算法的结构由强化学习中的深度确定性策略梯度(ddpg)、获取剪枝的目标滤波器和执行剪枝操作三部分组成,在算法运行过程中,ddpg会在获得当前神经网络层的属性特征以后,由演员网络输出确定性的剪枝压缩率指导进行可替代滤波器的检索,之后通过将可替代滤波器的参数值归零达到剪枝效果,在执行完神经网络所有层的剪枝后,算法会在验证集上根据flops评估准确性奖励并返回给评论家网络,同时将当前的剪枝策略保存到经验采样池中,然后执行下一轮的网络剪枝,直到所有剪枝周期结束,之后进行微调,得到精度损失小于一定值且flops小于预设值的轻量级目标检测模型s_yolov3。

    步骤a-2:编写python程序,将斯坦福无人机视频数据集标注文件转换为yolo标注文件,并进行数据预处理,清洗不满足要求的数据;

    步骤a-3:将步骤a-2处理后的数据集分别训练s-yolov3和yolov3模型,根据需求选择终止条件,由于s-yolov3是为了快速检测过滤,因此只需迭代10000次即可达到需求,而高精度的yolov3模型则需要迭代100000次,可以满足精度需求;

    步骤b:在无人机机载嵌入式设备上部署两级视频帧过滤器sdd,pdd。初步过滤航拍视频冗余帧使用的是像素差异检测器与结构差异检测器的级联方式,其具体步骤如下:

    步骤b-1:像素差异检测器。将m帧缩放过的灰度图输入差异检测器,判断相邻帧的相似程度,如果相似,则保留相似帧中的一帧。第i帧图像相邻像素差值判断方法如式(1)所示。

    ai(x,y)=fi(x,y)-fi(x,y 1)(1)

    式(1)中,x,y表示图像像素的横坐标和纵坐标,fi(x,y)表示第i帧图像的x行y列的像素值,ai(x,y)表示两个像素差值。

    第i帧图像的相邻像素强度判断方法如式(2)所示。

    式(2)中,产生全为0和1的8*8矩阵,而每8位可以组成为两个16进制值,连接起来转换为字符串,就得到了哈希值。

    将第i帧和第j帧图像的差异值判断方法如式(3)所示。

    式(3)中hi(k)和hj(k)分别表示第i帧和第j帧图像的第k个哈希值转换的二进制值,表示异或运算,di,j(k)表示第i,j帧哈希值的运算结果。

    两帧图像的相似判断如式(4)所示。

    δi,j=∑kdi,j(k)(4)

    式(4)中,δi,j表示两帧之间的相似度度量参数,在实验中,δi,j取5时,能有效度量两帧航拍图像之间的相似度,如果相似度大于δi,j时,则认定为冗余帧,直接丢弃;否则将输入到下一检测器。至此,过滤掉n个冗余帧,进入下一步骤。

    步骤b-2:结构差异检测器。给定两幅图片x和y,ssim计算如下式所示。

    c1=(k1l)2(6)

    c2=(k2l)2(7)

    式(5)中的μx、μy分别表示图像x的均值和图像y的均值,分别表示图像x的方差和图像y的方差,σxy表示图像x和图像y的协方差,c1、c2为常数,为了避免分母为零而维持稳定,通常取(6)(7)式作为c1、c2的值,其中l为像素值的动态范围,一般取255。实验总结,取k1=0.01,k2=0.03;ssim的判定阈值β取0.8时,能够有效度量两帧图像之间的相似度。如果相似度大于β时,则认定为冗余帧,直接丢弃;否则将输入到轻量级目标检测器s-yolov3。若此过程过滤掉p帧,则剩余的m-n-p帧图像输入到下一步骤中。

    步骤c:编写python程序,基于步骤b数据处理后得到的视频帧,将其输入到轻量级目标检测模型s-yolov3,再次对视频帧进行过滤,本次过滤掉的是无目标对象及目标数量低于对应的过滤阈值的帧;

    步骤c-1:s-yolov3接收传入的视频帧,并对视频帧进行检测,返回每帧所含目标数;

    步骤c-2:判断目标数,当目标数小于对应的过滤阈值时,将此帧过滤,否则,则将此帧上传到云端。至此,完成二次过滤,过滤掉不满足需求的对象帧;

    步骤d:收到边缘端传输的视频帧,输入到已经训练好的高精度目标检测模型yolov3。yolov3进行目标检测,直接展示检测结果,至此完成整个基于边缘智能的无人机车辆目标检测方法。

    本发明的目标检测方法不仅可用于检测单个目标,还可以用于检测多个目标,比如检测交通拥堵路段,采用基于边缘智能的无人机车辆目标检测机制,将两级过滤器、自动化压缩改进的轻量化模型s_yolov3部署在无人机端,高精度的yolov3模型部署在云端,采用这种边云协同机制对无人机目标进行检测(本发明中的目标主要针对车辆),解决了数据传输量过大导致时延长与丢失目标帧等问题,不仅提升了目标检测速度,同时提高了检测准确度。

    虽然以上描述了本发明的具体实施方式,但是熟悉本技术领域的技术人员应当理解,我们所描述的具体的实施例只是说明性的,而不是用于对本发明的范围的限定,熟悉本领域的技术人员在依照本发明的精神所作的等效的修饰以及变化,都应当涵盖在本发明的权利要求所保护的范围内。


    技术特征:

    1.一种基于边缘智能的无人机车辆目标检测方法,其特征在于:包括:

    步骤s10、在无人机端部署两级过滤器以及轻量级目标检测模型s_yolov3,在云端部署高精度目标检测模型yolov3;

    步骤s20、通过将无人机车辆数据集分别输入到s_yolov3和yolov3中,进行模型迁移训练,使得s_yolov3满足预定的速度要求,且使得yolov3达到预定的精度要求;

    步骤s30、将采集的无人机交通视频,通过部署在无人机端的两级过滤器进行初步过滤,丢弃冗余帧;

    步骤s40、将剩余帧输入到轻量级车辆检测模型s_yolov3进一步筛选目标帧;

    步骤s50、将目标帧输入到部署在云端的高精度目标检测模型yolov3,进行高精度检测,得到最终目标帧。

    2.如权利要求1所述的一种基于边缘智能的无人机车辆目标检测方法,其特征在于:所述轻量级目标检测模型s_yolov3为基于自动化剪枝的轻量级目标检测模型,所述轻量级目标检测模型s_yolov3的压缩过程如下:

    通过遍历yolov3中的每一层,将同一层中的所有滤波器抽象到一个欧几里得空间,选取其中能被同层其他滤波器共同表示的滤波器进行剪枝操作,并添加计数模块;

    通过强化学习进行剪枝训练,之后进行微调得到精度损失小于一定值且flops小于预设值的轻量级目标检测模型s_yolov3。

    3.如权利要求1所述的一种基于边缘智能的无人机车辆目标检测方法,其特征在于:所述两级过滤器包括第一级过滤器和第二级过滤器,所述第一级过滤器为像素差异检测器pdd,所述第二级过滤器为结构差异检测器sdd。

    4.如权利要求3所述的一种基于边缘智能的无人机车辆目标检测方法,其特征在于:所述像素差异检测器pdd过滤过程如下:

    预先对采集的无人机交通视频进行灰度处理和缩放处理,得到像素为9×8灰度图;

    将缩放后的灰度图输入到像素差异检测器pdd,计算每一帧的每行像素的差异值,得到每帧每行8个差异值,所述差异值的计算公式如下:

    ai(x,y)=fi(x,y)-fi(x,y 1)(1)

    其中,x,y表示图像像素的横坐标和纵坐标,fi(x,y)表示第i帧图像的x行y列的像素值,fi(x,y 1)表示第i帧图像的x行y 1列的像素值,ai(x,y)表示第i帧图像的两个像素差异值;

    通过相邻像素强度计算公式,将每一帧的像素差异值转化为两个十六进制值,连接起来转换为字符串,得到了每一帧对应的哈希值,所述相邻像素强度计算公式如下:

    通过异或运算比较相邻帧之间的哈希值,根据预先设置的相似度度量参数判断两相邻帧是否相似,若相似则丢弃其中一帧,否则不丢弃,所述异或运算公式为:

    其中hi(k)和hj(k)分别表示第i帧和第j帧图像的第k个哈希值转换的二进制值,表示异或运算,di,j(k)表示第i,j帧哈希值的运算结果;

    两帧图像的相似判断公式如下:

    δi,j=∑kdi,j(k)(4)

    其中,δi,j表示两帧之间的相似度,如果相似度大于预先设置的相似度度量参数,则认定为冗余帧,直接丢弃,否则输入到下一检测器。

    5.如权利要求3所述的一种基于边缘智能的无人机车辆目标检测方法,其特征在于:所述结构差异检测器sdd的过滤过程如下:

    根据ssim公式计算两帧图像的相似度,若相似度大于预设的阈值β,则判定为冗余帧,直接丢弃,否则输入到轻量级目标检测器s-yolov3中,所述ssim公式如下:

    c1=(k1l)2(6)

    c2=(k2l)2(7)

    其中的μx、μy分别表示图像x的均值和图像y的均值,分别表示图像x的方差和图像y的方差,σxy表示图像x和图像y的协方差,l为像素值的动态范围,k1=0.01,k2=0.03。

    6.如权利要求2所述的一种基于边缘智能的无人机车辆目标检测方法,其特征在于:所述步骤s40中轻量级车辆检测模型s_yolov3进一步筛选目标帧的过程包括:

    定义初始过滤阈值clow,chigh,判断剩余帧中是否含有目标,并计算目标数目,若目标数目小于clow,则直接丢弃该帧,若目标数目大于chigh,则保留此帧并用于直接显示,若目标数目介于clow和chigh之间,则保留帧并输入到步骤s50。

    技术总结
    本发明提供一种基于边缘智能的无人机车辆目标检测方法,所述方法包括:在无人机端部署两级过滤器以及轻量级目标检测模型S_YOLOv3,在云端部署高精度目标检测模型YOLOv3;通过将无人机车辆数据集分别输入到S_YOLOv3和YOLOv3中,进行模型迁移训练,使得S_YOLOv3满足预定的速度要求,且使得YOLOv3达到预定的精度要求;将采集的无人机交通视频,通过部署在无人机端的两级过滤器进行初步过滤,丢弃冗余帧;将剩余帧输入到轻量级车辆检测模型S_YOLOv3进一步筛选目标帧;将目标帧输入到部署在云端的高精度目标检测模型YOLOv3,进行高精度检测,得到最终目标帧。本发明通过边云协同机制对无人机目标进行检测,解决数据传输量过大导致时延长与丢失目标帧等问题,提高目标检测速度和准确度。

    技术研发人员:陶英杰;张维纬;周密;马昕;周宏波;余浩然
    受保护的技术使用者:华侨大学
    技术研发日:2020.12.15
    技术公布日:2021.03.12

    转载请注明原文地址:https://wp.8miu.com/read-19434.html

    最新回复(0)