掌桥专利:专业的专利平台
掌桥专利
首页

一种实现检测模型高效的系统

文献发布时间:2023-06-19 11:45:49


一种实现检测模型高效的系统

技术领域

本发明涉及卷积神经网络加速技术领域,特别涉及一种实现检测模型高效的系统。

背景技术

卷积神经网络(CNN)是一种用于进行图像处理的、包含卷积计算且具有深度结构的前馈神经网络,其被广泛用于图像分类、图像识别等。近年来,随着科技的飞速发展,大数据时代已经到来。深度学习以深度神经网络(DNN)作为模型,在许多人工智能的关键领域取得了十分显著的成果,如图像识别、增强学习、语义分析等。卷积神经网络(CNN)作为一种典型的DNN结构,能有效提取出图像的隐层特征,并对图像进行准确分类,在近几年的图像识别和检测领域得到了广泛的应用。

现有技术中的术语和解释:

卷积神经网络(Convolutional Neural Networks,CNN):是一类包含卷积计算且具有深度结构的前馈神经网络。

检测模型:根据目标任务定位图像中的目标对象的位置。

推理:在深度学习中,推理是指将一个预先训练好的神经网络模型部署到实际业务场景中,如图像分类、物体检测、在线翻译等。由于推理直接面向用户,因此推理性能至关重要,尤其对于企业级产品而言更是如此。

卷积神经网络推理和模型后处理流水线式运行:对于一帧图像先运行模型推理部分,然后再运行模型后处理部分。

现有技术中由于模型运行和模型后处理是按顺序运行的,必然会存在一个等待的情况,这对于采用硬件加速后,模型推理和模型后处理时间相当时,是会大大降低模型的整体的运行效率。

发明内容

为了解决上述问题,特别是模型推理模块和模型后处理模块之间产生等待的问题,本发明的目的在于:通过一种实现检测模型高效的系统,以简单的模块结构,让模型推理模块和模型结果后处理模块之间通过缓存模块实现两者可以并行运行,从而提高整体检测模型的整体效率。

具体地,本发明提供一种实现检测模型高效的系统,所述系统包括:模型推理模块,用于在卷积神经网络中的模型推理,且对于模型推理模块产生的结果进行处理;

缓存模块,用于存储处理结果,其中缓存模块分为N个缓存区,其中N为大于等于2的正整数;

模型后处理模块,用于在卷积神经网络中的模型后处理,且对于模型后处理模块运行前的数据进行处理。

所述的缓存模块的N个缓存区,其中N=2,3,4,5,6,并且分别对应相应个数的缓存区。

优选N=2,分别对应为第一缓存区和第二缓存区。

在所述模型推理模块处理完图像的一帧后,读取N个缓存区的写标志位,如果读到所述写标志位为1,则将数据写入相应的该缓存区中,并将读标志位置为1。

所述读取N个缓存区的写标志位,是顺序读取或同时读取。

由此,本申请的优势在于:对于在模型推理模块和模型后处理模块之间设置缓存模块,采用多缓存区的缓存策略,从而让模型推理和模型后处理部分可以同步运行,从而通过简单的设置缓存区的方式,实现提高检测模型的整体运行效率的效果。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。

图1是本发明系统的示意图。

图2是本发明系统的整体框图示意图。

图3是本发明系统中应用的方法的流程示意图。

具体实施方式

为了能够更清楚地理解本发明的技术内容及优点,现结合附图对本发明进行进一步的详细说明。

如图1所示,本发明涉及一种实现检测模型高效的系统,所述系统包括:

模型推理模块,用于在卷积神经网络中的模型推理,且对于模型推理模块产生的结果进行处理;

缓存模块,用于存储处理结果,其中缓存模块分为N个缓存区,其中N为大于等于2的正整数;

模型后处理模块,用于在卷积神经网络中的模型后处理,且对于模型后处理模块运行前的数据进行处理。

所述的缓存模块的N个缓存区,其中N=2,3,4,5,6,并且分别对应相应个数的缓存区。

优选N=2,分别对应为第一缓存区和第二缓存区。

在所述模型推理模块处理完图像的一帧后,读取N个缓存区的写标志位,如果读到所述写标志位为1,则将数据写入相应的该缓存区中,并将读标志位置为1。

所述读取N个缓存区的写标志位,是顺序读取或同时读取。

所述模型推理模块如果读取缓存区的写标志位为0,则该缓存区等待。

所述模型后处理模块在数据存入缓存区后,读取缓存区的读标志位,如果读取到的缓存区读标志位为1,则将处理相应的该缓存区的数据,处理完后将该缓存区的读标志位置为0,写标志位置为1。

所述读取N个缓存区的写标志位,是顺序读取或同时读取。

所述的模型后处理模块如果读取的缓存区的读标志位为0,则该缓存区等待。

设置的缓存区是对所述模型推理模块的结果数据进行存储。

如图2所示,是系统的整体框图示意图。对于模型推理结果,缓存模块中开了多个缓存Buffer,模型推理模块处理完一帧后,会读取Buff1,Buff2,……,和BuffN的写标志位,如果标志位为1则将数据写入相应的Buffer中,并将读标志为置为1。模型后处理部分会读取Buff1,Buff2,……,和BuffN的读标志位,如果标志位为1则将处理相应Buffer的数据,处理完后将该Buffer的读标志为置为0,写标志为置为1。这样模型推理模块和模型处理模块就可以同步进行,而不需要等待上一级的结果,从而提高系统的整体效率。

如图3所示,模型推理模块、缓存区以及模型处理模块之间的数据读取方式的方法流程示意图。其包括以下步骤:

S1,在卷积神经网络模型推理模块和模型后处理模块之间,设置缓存模块,其中缓存模块有多个缓存区;

S2,所述模型推理模块处理完一帧后,读取不同缓存区的写标志位,如果所述写标志位为1,则将数据写入对应的该缓存区中,并将读标志位置为1;

S3,所述模型后处理模块读取不同缓存区的读标志位,如果读标志位为1,则处理对应的该缓存区的数据,处理完后将该缓存区的读标志位置为0,写标志位置为1;

S4,重复上述步骤S2-S3,模型推理模块和模型后处理模块并行运行。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

相关技术
  • 一种实现检测模型高效的系统
  • 轴承故障检测及定位方法及检测定位模型实现系统和方法
技术分类

06120113046520