一种基于海思平台的小目标检测方法

文档序号:33480637发布日期:2023-03-15 12:06阅读:103来源:国知局
一种基于海思平台的小目标检测方法

1.本发明涉及目标检测领域,具体为一种基于海思平台的小目标检测方法。


背景技术:

2.目标检测作为计算机有关图像识别的应用之一,在智能视频监控、机器人导航、航拍和道路检测等方面得到了广泛的应用,它的主要任务是在图片中找到感兴趣的目标或者物体,并确定它们的位置和大小。在目标检测领域,同一物体在不同图片中存在大小不一、形状多变、前景遮挡和光照变化等问题,这些问题也是目标检测亟待解决的问题;目标检测作为计算机视觉领域的研究方向之一,从最开始的传统目标检测算法到现在基于深度学习的目标检测算法,检测的速度和精度都有了很大的提升。
3.目前,大多数基于深度学习的小目标检测算法运行在pc端的gpu上,该种方式存在功耗大、便携性差的问题,使得现有的目标检测算法不能更好的运用在实际生活中。此外,通过移动客户端采集数据,以网络传输的方式,将采集数据上传到云处理器进行处理,由云处理器返回处理结果,在移动客户端显示处理结果的目标检测方式,检测实时性差,且对网络信号的要求较高,不能充分发挥基于深度学习的优势。


技术实现要素:

4.本发明提出了一种基于海思平台的小目标检测方法。
5.实现本发明目的的技术方案为:一种基于海思平台的小目标检测方法,包括如下具体步骤:
6.步骤1:视频数据采集:对海思多媒体处理平台参数进行配置,采集目标视频数据;
7.步骤2:量化并加载目标检测算法模型,初始化目标检测模型:通过使用海思提供nnie_mapper工具将caffe框架的目标检测模型yolov3量化为在hi3559av100芯片上可以加载的数据指令文件,通过hi_mpi_svp_nnie_loadmodel此api接口加载wk文件,配置并初始化相应的目标检测模型参数,包括通过调用nnie模块的基本接口获取卷积神经网络每段所需的辅助内存空间来计算获到总的内存空间大小、申请内存空间地址以及配置网络模型所需要的参数;
8.步骤3:处理视频图像队列并前向推理:调用视频处理子模块接收步骤1采集的多通道目标视频数据并对多通道目标视频数据进行裁剪和缩放;对裁剪和缩放后的图像队列进行前向推理;
9.步骤4:根据置信度对检测结果进行筛选,去除置信度低于设定阈值的预测框,对应网格按照置信度从大到小进行排序并进行非极大值抑制操作;获得所有物体的预测框的坐标,使用hi_mpi_vgs_addcovertask的api根据预测框的坐标在图像中把框图画出,把图像输出在显示屏上。
10.优选地,对海思多媒体处理平台参数具体包括:使用hi_mpi_vb_init、hi_mpi_sys_init媒体接口配置并初始化视频缓冲池和mpp系统,通过hi_mpi_vi_***接口配置视频
输入模块的参数,实现视频输入模块对摄像头对场景信息采集的视频数据的接收,实现视频输入、处理通道数据流的数据传递。
11.优选地,对多通道目标视频数据进行裁剪和缩放的具体方法为:通过使用hi_mpi_vpss_setchncrop的api接口设置图像裁剪参数,同时使用视频处理子模块的功能对裁剪后的图形进行缩放。
12.优选地,对裁剪和缩放后的图像队列进行前向推理的具体方法为:
13.通过hi_mpi_vpss_getchnfram接口获得图像队列,通过配置nnie模块神经网络推理接口的对应参数,使用hi_mpi_svp_nnie_forward的api接口调用yolov3的网络模型参数对获得的视频图像数据进行前向推理,得到图像经过推导后的结果,所述结构包括物体的类别、置信度、物体预测框的左上角坐标、以及预测框的高度和宽度。
14.优选地,进行非极大值抑制操作具体为:计算预测框的交并比,去除交并比大于设定阈值的预测框,交并比的计算公式为:
[0015][0016]
式中:a代表预测框1的面积,b代表预测框2的面积
[0017]
本发明与现有技术相比,其显著优点为:
[0018]
(1)本发明通过hi3559av100平台完成图像获取、图像裁剪与缩放、目标识别等功能,与传统pc端目标检测相比,大大提升了便携性;
[0019]
(2)本发明将yolov3的darknet-53改为darknet-19,减少了残差网络的应用,压缩了网络模型,减少了数据复杂度和提高了模型推理速率,提高了小目标的检测精度;
[0020]
(3)本发明采用图像裁剪与缩放,并进行并行处理,提高了海思模块的使用效率,加快的检测效率。
[0021]
下面结合附图对本发明进行进一步详细的描述。
附图说明
[0022]
图1为本发明一种基于海思平台的目标检测方法实施例的流程图。
[0023]
图2为本发明海思媒体处理平台配置流程图。
[0024]
图3为本发明端到端算法的整体框架和模型结构图。
[0025]
图4为本发明实施例的bt1120摄像头采集到的输入图片。
[0026]
图5为本发明实施例的经过视频处理子模块裁剪缩小后的图片序列1。
[0027]
图6为本发明实施例的经过视频处理子模块裁剪缩小后的图片序列2。
[0028]
图7为本发明实施例的经过视频处理子模块裁剪缩小后的图片序列3。
[0029]
图8为本发明实施例的经过视频处理子模块裁剪缩小后的图片序列4。
[0030]
图9为本发明实施例的图像4目标检测的最终结果。
[0031]
图10、图11分别为本发明实时例的图像9的局部放大图。
具体实施方式
[0032]
如图1所示,一种基于海思平台的小目标检测方法,包括如下步骤:
[0033]
步骤1:视频数据采集:对海思多媒体处理平台(mpp)参数进行配置,包括使用hi_
cortex-a73,频率1.2ghz,既满足了小型化的需求也满足了低功耗的需求,支持8路视频输入,支持如bt1120,bt656,mipi,lvds等多种视频输入接口。
[0044]
本实例图像源有hi3559av100开发板搭载bt1120摄像头采集,摄像头焦距为3.6mm,采集到的图像分辨率为1280*720,采集到的图片为灰度图片,如图1所示。
[0045]
本实施例用主要是使用海思hi3559av100的媒体处理软件品台(mpp)和媒体处理芯片智能视觉异构平台(svp)来实现视频数据的传输、裁剪缩放、目标检测功能。
[0046]
首先对mpp进行初始化,调用api接口hi_mpi_sys_exit和hi_mpi_vb_exit去初始化mpp系统和视频缓冲池,然后调用hi_mpi_vb_setconfig配置5个视频缓冲池属性,第一个视频缓冲池的大小对应1280*720分辨率图像,其他4个缓冲池的大小都对应416*416分辨率的图像。调用hi_mpi_sys_init和hi_mpi_vb_init初始换mpp系统和视频缓冲池。
[0047]
然后配置视频输入模块实现对bt1120格式视频的接收,主要调用的接口有hi_mpi_vi_setdevattr、hi_mpi_vi_setpipeattr、hi_mpi_vi_setchnattr来配置输入设备dev、输入pipe和输入物理通道的属性。调用hi_mpi_sys_bind绑定输入模块和视频处理子系统(vpss)来实现模块之间的数据传输,由于需要使用vpss来进行裁剪与缩放功能,需要调用hi_mpi_sys_setvivpssmode将vi、vpss的模式设置为离线-离线模式。配置视频处理子系统模块参数实现对输入视频帧的裁剪与缩放,主要调用接口有hi_mpi_vpss_setgrpattr、hi_mpi_vpss_setchnattr、hi_mpi_vpss_setchncrop来配置裁剪缩放的参数,对于1280*720的分辨率的视频帧,将图像裁剪为720*540的4张图片,若是一左上角为1280*720图像的(0,0)点,则裁剪的4张720*540的左上角的坐标分别为(0,0),(559,0),(0,179),(559,179),然后将这四张图片缩小为416*416尺寸的图片,由于缩小后尺寸比例不同所以对高度方向上下两边分别用416*54个白色像素点进行填充,如图5,6,7,8所示。
[0048]
配置nnie模块实现对输入图像的前向推理获得检测结果,调用接口hi_mpi_svp_nnie_loadmodel加载已有的yolov3模型的wk文件,根据yolov3模型原理配置参数如置信度阈值,iou阈值,目标检测类别等,调用hi_mpi_vpss_getframe接口分别获取裁剪缩放后的4张图像,调用hi_mpi_svp_nnie_forward接口将4张图像用yolov3网络模型进行前向推理,获取检测结果,其中包含物体的类别,置信度,物体预测框的左上角坐标,以及预测框的高度和宽度。
[0049]
对上述结果进行进一步的处理,并通过输出接口输出到显示器上进行显示。由于yolov3是将图片划分为网格,对每一个网格中的物体进行预测,推理结果中会包含很多错误的预测信息。首先根据置信度对检测结果进行筛选,将置信度低于预设值的预测框去除,置信度阈值一般设为0.5,再按照对应网格按照置信度从大到小进行排序并进行非极大值抑制操作,非极大值抑制操作旨在通过预测框的交并比(iou)来去除对于同一物体多余的预测框,iou阈值一般设为0.5。
[0050][0051]
式中:a代表预测框1的面积,b代表预测框2的面积。
[0052]
由于这些预测框的坐标信息都是在裁剪缩小填充后416*416分辨率的图像上推理获得的,所以要对这些坐标进行变换映射到原本1280*720尺寸的图像中,映射变换公式如下所示。
[0053][0054][0055][0056][0057]
其中:(xn,yn)为416*416分辨率下位置坐标,(xn,yn)为原图像1280*720分辨率下位置坐标。
[0058]
最后获得所有物体的预测框的坐标,使用hi_mpi_vgs_addcovertask的api根据预测框的坐标在图像中把框图画出,最后把图像输出在显示屏上。图9为图像4的检测结果图。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1