CN109727376A - 生成配置文件的方法、装置及售货设备 - Google Patents
生成配置文件的方法、装置及售货设备 Download PDFInfo
- Publication number
- CN109727376A CN109727376A CN201811630352.XA CN201811630352A CN109727376A CN 109727376 A CN109727376 A CN 109727376A CN 201811630352 A CN201811630352 A CN 201811630352A CN 109727376 A CN109727376 A CN 109727376A
- Authority
- CN
- China
- Prior art keywords
- processor
- identification system
- article identification
- configuration file
- neural network
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Abstract
本公开提供了一种生成配置文件的方法、装置、售货设备以及计算机可读存储介质,涉及计算机技术领域。其中的生成配置文件的方法应用于售货设备,包括:获取售货设备所包含的处理器的类型;获取物品识别系统所支持的处理器的类型,其中,物品识别系统用于对与售货设备相关联的图像进行识别;将物品识别系统所支持的、且包含在售货设备中的处理器确定为第一处理器;若第一处理器包括中央处理器,则安装物品识别系统的依赖环境;若第一处理器包括其它处理器,则安装其它处理器的驱动程序以及物品识别系统的依赖环境;在售货设备中生成运行物品识别系统所需的配置文件。本公开能够提高物品识别系统的适用性。
Description
技术领域
本公开涉及计算机技术领域,特别涉及一种生成配置文件的方法、装置、售货设备及计算机可读存储介质。
背景技术
自动售货机是一种智能的售货设备,能够在没有售货人员参与的情况下为用户提供物品。通常情况下,自动售货机中同时含有多种物品。如何识别用户从自动售货机中取出的物品,是与自动售货机相关的重要技术问题。
基于深度卷积神经网络的物品识别技术,能够根据被取出物品的图像识别出被取出物品。首先,采集售货设备中所有物品的图像,并标注各个图像对应的物品名称。然后,利用标注完成的图像深度卷积神经网络进行训练,使训练后的深度卷积神经网络能够根据输入的图像识别出相应的物品名称。售货设备在售卖物品时,采集被取出物品的图像并输入训练好的深度卷积神经网络,识别出相应的物品名称。
发明内容
发明人研究发现,通过开发物品识别系统,可以实现深度卷积神经网络的前向传播算法,从而根据被取出物品的图像识别出被取出物品。如果在云端设备运行物品识别系统,则需要售货设备向云端设备传输被取出物品的图像。随着图像数量的增多以及图像分片率的提高,传输图像所需的带宽不断增大,网络传输延迟也随之升高,因此会影响售货设备的用户体验。为了降低网络传输延迟,提升售货设备的用户体验,可以在边缘计算服务器中运行物品识别系统,该边缘计算服务器具体可以包含在售货设备内部,售货设备例如可以为无人售货柜、无人售货架等等。
然而,不同厂商提供的边缘计算服务器包含的处理器的型号往往不同。针对边缘计算服务器包含的处理器的型号来开发物品识别系统,需要耗费较多的时间成本和人力成本。如果不针对边缘计算服务器包含的处理器的型号来开发物品识别系统,物品识别系统可能不适用于厂商提供的边缘计算服务器,导致物品识别系统的适用性较差。
本公开解决的一个技术问题是,如何提高物品识别系统的适用性。
根据本公开实施例的一个方面,提供了一种生成配置文件的方法,应用于售货设备,包括:获取售货设备所包含的处理器的类型;获取物品识别系统所支持的处理器的类型,其中,物品识别系统用于对与售货设备相关联的图像进行识别;将物品识别系统所支持的、且包含在售货设备中的处理器确定为第一处理器;若第一处理器包括中央处理器,则安装物品识别系统的依赖环境;若第一处理器包括其它处理器,则安装其它处理器的驱动程序以及物品识别系统的依赖环境;在售货设备中生成运行物品识别系统所需的配置文件,以使物品识别系统启动时读取配置文件。
在一些实施例中,物品识别系统用于通过神经网络前向传播算法对图像进行识别;在售货设备中生成运行物品识别系统所需的配置文件包括:从第一处理器中选择一种处理器执行神经网络前向传播算法,并生成采用所选择的处理器执行神经网络前向传播算法所需的配置文件。
在一些实施例中,若第一处理器包括其它处理器,则安装其它处理器的驱动程序、其它处理器所对应神经网络推断加速引擎的依赖环境以及物品识别系统的依赖环境。
在一些实施例中,安装其它处理器的驱动程序、其它处理器所对应神经网络推断加速引擎的依赖环境包括:安装Nvidia独立显卡的驱动程序以及TensorRT的依赖环境;安装Intel集成显卡的驱动程序以及OpenVINO的依赖环境;安装Intel视频处理器的驱动程序以及HDDL的依赖环境。
在一些实施例中,从第一处理器中选择一种处理器执行神经网络前向传播算法包括:分别测试采用第一处理器中的各个处理器执行神经网络前向传播算法时,物品识别系统对图像进行识别的时延;从第一处理器中选择使时延最短的处理器,执行神经网络前向传播算法。
在一些实施例中,分别测试采用第一处理器中的各个处理器执行神经网络前向传播算法时,物品识别系统对图像进行识别的时延包括:测试采用第一处理器中的第二处理器执行神经网络前向传播算法时,物品识别系统识别单帧图像的时延、多帧打包图像的平均时延、并发单帧图像的时延以及并发多帧打包图像的平均时延;将上述四种时延中的最短时延,作为采用第二处理器执行神经网络前向传播算法时,物品识别系统对图像进行识别的时延。
在一些实施例中,该方法还包括:物品识别系统启动时读取配置文件,并根据配置文件确定物品识别系统的运行参数。
在一些实施例中,配置文件包含引擎负载信息;根据配置文件确定物品识别系统的运行参数包括:根据配置文件中的引擎负载信息,确定物品识别系统中各个模块的推理引擎实例个数。
在一些实施例中,配置文件包含执行神经网络前向传播算法的处理器信息;根据配置文件确定物品识别系统的运行参数包括:根据配置文件中执行神经网络前向传播算法的处理器信息,确定物品识别系统从摄像头接收图像的最小数量单位。
根据本公开实施例的另一个方面,提供了一种生成配置文件的装置,包括:存储器;以及耦接至存储器的处理器,处理器被配置为基于存储在存储器中的指令,执行前述的生成配置文件的方法。
根据本公开实施例的又一个方面,提供了一种售货设备,包括前述的生成配置文件的装置。
根据本公开实施例的再一个方面,提供了一种计算机可读存储介质,其中,计算机可读存储介质存储有计算机指令,指令被处理器执行时实现前述的生成配置文件的方法。
本公开实现了为不同边缘计算服务器自动安装驱动程序和依赖环境,使得边缘计算服务器能够顺畅运行物品识别系统,从而提高了物品识别系统的适用性,同时降低了物品识别系统的开发成本。
通过以下参照附图对本公开的示例性实施例的详细描述,本公开的其它特征及其优点将会变得清楚。
附图说明
为了更清楚地说明本公开实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1示出了本公开一些实施例的生成配置文件的方法的流程示意图
图2示出了如何选择处理器来执行神经网络前向传播算法的流程示意图。
图3示出了本公开生成配置文件的方法的应用例的流程示意图。
图4示出了物品识别系统与摄像头配合进行图像识别的工作原理示意图。
图5示出了本公开一些实施例的生成配置文件的装置的结构示意图。
具体实施方式
下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本公开保护的范围。
首先结合图1描述本公开生成配置文件的方法的一些实施例,以说明如何生成配置文件使得售货设备能够顺畅运行物品识别系统。
图1示出了本公开一些实施例的生成配置文件的方法的流程示意图。如图1所示,本实施例包括步骤S102~步骤S114。
在步骤S102中,获取售货设备所包含的处理器的类型。
例如,可以通过边缘计算服务器的操作系统的API(Application ProgrammingInterface,应用程序编程接口)获取边缘计算服务器包含的处理器的类型。处理器的类型具体可以为CPU(Central Processing Unit,中央处理器)、GPU(Graphics ProcessingUnit,图形处理器)、VPU(Video Processing Unit,视频处理器)等等。GPU可能位于独立显卡中,也可能位于集成显卡中。
在步骤S104中,获取物品识别系统所支持的处理器的类型。其中,物品识别系统用于对与售货设备相关联的图像进行识别。
与售货设备相关联的图像,具体可以为售货设备中被取出物品的图像。对被取出物品的图像进行识别,可以得到售货设备中被取出的物品。同时,云端设备中可以存储并维护物品识别系统支持的处理器的类型信息。如果物品识别系统支持的处理器的类型发生改变,云端设备可以更新该类型信息。区分无法运行物品识别系统的处理器的类型,可以避免出现软硬件之间不兼容的问题。
在步骤S106中,将物品识别系统所支持的、且包含在售货设备中的处理器确定为第一处理器。
将边缘计算服务器所包含的处理器的类型,与物品识别系统所支持的处理器的类型取交集,可以得到物品识别系统所支持的、且包含在售货设备中的处理器,以下称为第一处理器。
在步骤S108中,判断第一处理器中包含的处理器类型。
本领域技术人员应理解,第一处理器中包含的处理器可以有多种。若第一处理器包括中央处理器,则执行步骤S110;若第一处理器包括其它处理器,则执行步骤S112。
在步骤S110中,安装物品识别系统的依赖环境。
具体来说,在边缘计算服务器包含且物品识别系统支持的处理器包括CPU的情况下,安装物品识别系统的CPU版本的依赖环境。这里的依赖环境(dependency)是指运行物品识别系统所依赖的软件包。
在步骤S112中,安装其它处理器的驱动程序以及物品识别系统的依赖环境。
对于其它处理器的驱动程序而言,若第一处理器包括位于Nvidia独立显卡中的GPU,则可以安装Nvidia独立显卡的驱动程序;若第一处理器包括位于Intel集成显卡中的GPU,则可以安装Intel集成显卡的驱动程序;若第一处理器包括Intel的VPU,则可以安装Intel的VPU的驱动程序。
在步骤S114中,在售货设备中生成运行物品识别系统所需的配置文件,以使物品识别系统启动时读取配置文件。
所谓配置文件,是指软件系统为用户所要加载环境的设置和文件的集合。例如,可以利用C++语言中的fwrite函数,在边缘计算服务器的本地磁盘中生成配置文件inference_engin.conf。
本实施例实现了为不同边缘计算服务器自动安装驱动程序和依赖环境,使得边缘计算服务器能够顺畅运行物品识别系统,从而提高了物品识别系统的适用性,同时降低了物品识别系统的开发成本。
在一些实施例中,物品识别系统用于通过神经网络前向传播算法对与售货设备相关联的图像进行识别。在这种情况下,在步骤S112中,若第一处理器包括其它处理器,则安装其它处理器的驱动程序、其它处理器所对应神经网络推断加速引擎的依赖环境以及物品识别系统的依赖环境。在步骤S114中,从第一处理器中选择一种处理器执行神经网络前向传播算法,并生成采用所选择的处理器执行神经网络前向传播算法所需的配置文件。
目前,较为成熟的神经网络推断加速引擎包括基于Nvidia独立显卡的TensorRT、基于Intel集成显卡的OpenVINO以及基于Intel多个视频处理器的高密度深度学习框架HDDL。不同的神经网络推断加速引擎与不同的处理器相对应。各个厂商可以结合自身的硬件资源,提供基于一定神经网络推断加速引擎的边缘计算服务器。
具体来说,若第一处理器包括位于Nvidia独立显卡中的GPU,则可以安装Nvidia独立显卡的驱动程序以及TensorRT的依赖环境;若第一处理器包括位于Intel集成显卡中的GPU,则可以安装Intel集成显卡的驱动程序以及OpenVINO的依赖环境;若第一处理器包括Intel的VPU,则可以安装Intel的VPU的驱动程序以及HDDL的依赖环境。然后,可以选择位于Nvidia独立显卡中的GPU、位于Intel集成显卡中的GPU、Intel的VPU或者CPU来执行神经网络前向传播算法。
上述实施例实现了为不同边缘计算服务器自动安装处理器驱动程序、处理器所对应神经网络推断加速引擎的依赖环境以及物品识别系统的依赖环境,从而进一步提高了物品识别系统的适用性,同时进一步降低了物品识别系统的开发成本。
在一些实施例中,生成配置文件的方法还包括步骤S116。
在步骤S116中,物品识别系统启动时读取配置文件,并根据配置文件确定物品识别系统的运行参数。
本领域技术人员应理解,不同的神经网络推断加速引擎具有不同的特性。根据该特性生成的配置文件,可以修改物品识别系统中数据的组织与流动方式。下面进行具体举例说明。
举例1:配置文件中可以包含执行神经网络前向传播算法的处理器信息。根据执行神经网络前向传播算法的处理器信息,可以确定物品识别系统从摄像头接收图像的最小数量单位。
假设摄像头个数为N,其中N为大于1的正整数。在摄像头向物品识别系统发送被取出物品的图像的数据队列中,OpenVINO、TensorRT以及CPU对于多帧打包图像的计算具有更高的吞吐量,而HDDL对于单帧图像高并发有更高的吞吐量。因此,OpenVINO、TensorRT和CPU可以将数据队列中的N帧图像作为物品识别系统从摄像头接收图像的最小数量单位;HDDL则以单帧图像作为物品识别系统从摄像头接收图像的最小数量单位。
举例2:配置文件中可以包含引擎负载信息,该引擎负载信息表示物品识别系统启动一个引擎实例的情况下,满负载运算时的处理器占用率。根据配置文件中的引擎负载信息,可以确定物品识别系统中各个模块的推理引擎实例个数。
物品识别系统中可以包括物品检测模块、物品图像特征提取模块、物品特征匹配模块等等。以物品检测模块为例,引擎负载信息表示物品检测模块启动一个引擎实例的情况下,满负载运算时的GPU占用率为80%,如果物品检测模块启动多个引擎实例会因GPU资源竞争导致物品识别系统的识别性能下降。再比如,引擎负载信息表示物品检测模块启动一个引擎实例的情况下,满负载运算时的GPU占用率低于50%,此时物品检测模块可以启动两个引擎实例,依此类推。通常来说,对于OpenVINO、TensorRT以及CPU而言,由于硬件资源的限制,物品检测模块只启动两个引擎例,如果资源允许可以增加多个实例来提高并发量。而对于HDDL而言,物品检测模块只需要启动单个实例,这个实例接受多个单帧图像的识别请求,并为每个单帧图像的识别请求生成请求线程来提高并发量。
发明人进一步研究发现,选择不同的处理器来执行神经网络前向传播算法,效率通常不同。其中,选择CPU来执行前向传播算法,计算效率最低,且浪费了其它处理器的处理能力。为此,发明人进一步提供了选择处理器来执行神经网络前向传播算法的技术方案,下面结合图2具体说明。
图2示出了如何选择处理器来执行神经网络前向传播算法的流程示意图。如图2所示,本实施例包括步骤S2142~步骤S2144。
在步骤S2142中,分别测试采用第一处理器中的各个处理器执行神经网络前向传播算法时,物品识别系统对与售货设备相关联的图像进行识别的时延。
具体来说,首先可以测试采用第一处理器中的第二处理器(第二处理器为第一处理器中的任意处理器)执行神经网络前向传播算法时,物品识别系统识别单帧图像的时延、多帧打包图像的平均时延、并发单帧图像的时延以及并发多帧打包图像的平均时延。其中,多帧打包图像的平均时延是由物品识别系统处理M帧打包图像的时延除以图像帧数M得到的,并发多帧打包图像的平均时延是由物品识别系统处理并发M帧打包图像的时延除以图像帧数M得到的,M为大于1的正整数。然后,将识别单帧图像的时延、多帧打包图像的平均时延、并发单帧图像的时延中的最短时延,作为采用第二处理器执行神经网络前向传播算法时,物品识别系统对与售货设备相关联的图像进行识别的时延。
在步骤S2144中,从第一处理器中,选择使物品识别系统对与售货设备相关联的图像进行识别的时延最短的处理器,执行神经网络前向传播算法。
例如,最终可以选择Nvidia独立显卡中的GPU,通过TensorRT来执行神经网络前向传播算法。
本实施例中,售货设备中的物品识别系统可以结合相应神经网络推断加速引擎的特性,自动选择处理器来执行神经网络前向传播算法,提高了前向传播算法的计算效率以及边缘计算服务器的硬件资源利用率,降低了售货设备识别被取出物品的时延,进一步提升了售货设备的用户体验。
下面介绍本公开生成配置文件的方法的具体应用例,使读者对本公开实现边缘计算服务器顺畅运行物品识别系统的过程有更加直观的理解。
图3示出了本公开生成配置文件的方法的应用例的流程示意图。如图3所示,本应用例包括步骤S301~步骤S311。
在步骤S301中,获取边缘计算服务器包含的处理器的类型。
在步骤S302中,获取物品识别系统支持的处理器的类型。
在步骤S303中,判断边缘计算服务器所包含的、且物品识别系统所支持的处理器中包括的处理器类型。
具体来说,可以判断是否包括上文提到的三种神经网络推断加速引擎各自所需的硬件。如果有,则接下来安装对应的驱动与系统环境依赖,并测试计算性能;此外还需要安装CPU版本的环境系统依赖并测试计算性能。这里的测试计算性能,可以为测试采用各个处理器执行神经网络前向传播算法时,物品识别系统识别售货设备中被取出物品的时延,时延越短则表示性能越高。此外,还需要测试物品识别系统中各个模块在单引擎实例下满负荷运算所占用的资源百分比。测试时首先选择一个训练好的深度卷积神经网络,分别经过上述三种神经网络推断加速引擎优化后进行性能测试。
若包括位于Nvidia独立显卡中的GPU,则执行步骤S304;若包括位于Intel集成显卡中的GPU,则执行步骤S306;若包括Intel的VPU,则执行步骤S308;若包括CPU,则执行步骤S310。
在步骤S304中,安装Nvidia独立显卡的驱动程序以及TensorRT的依赖环境。
在步骤S305中,测试基于Nvidia独立显卡的计算性能。
在步骤S306中,安装Intel集成显卡的驱动程序以及OpenVINO的依赖环境。
在步骤S307中,测试基于Intel独立显卡的计算性能。
在步骤S308中,安装Intel的VPU的驱动程序以及HDDL的依赖环境。
在步骤S309中,测试基于Intel的VPU的计算性能。
在步骤S310中,安装CPU版本的物品识别系统的依赖环境。
在步骤S311中,测试基于CPU的计算性能。
在步骤S312中,选择性能最高的处理器执行神经网络前向传播算法,并在边缘计算服务器中生成相应的配置文件。
在执行神经网络前向传播算法时,需要利用神经网络推断加速引擎,对神经网络前向传播算法的计算过程进行加速。加速类型可以分为以下三种。
(1)基于GPU的神经网络推断加速
无论是基于独立显卡的算法加速还是基于集成显卡的加速,所利用的加速方法主要为以下两类。一类是利用半精度的浮点型运算替代单精度的浮点型运算,实验表明这种替代运算不会明显降低前向传播算法的计算精度,却能够有效的加快前向传播算法的计算速度。如果可以接受更大程度的计算精度损失,可以选择利用8位整形运算代替单精度浮点运算,极大的加快前向传播算法的计算速度。另一类是消除未使用的深度卷积神经网络的输出层,以避免不必要的计算;融合深度卷及神经网络的一些特定的神经层,包括垂直神经层融合和水平神经层融合,来优化对GPU的内存和带宽的使用效率,加快前向传播算法的计算速度。
(2)基于VPU的神经网络推断加速
VPU主要是Intel子公司Movidius提出的Myraid系列芯片,通过优化与视觉相关的工作负载和集成在芯片内的深度神经网路加速器,使得它能够很好地用于与视觉相关的神经网络推断加速。针对这系列芯片,Intel集成封装了高密度深度学习框架HDDL,将多个VPU以负载均衡的资源池形式提供给调用方。不同于OpenVINO和TensorRT,HDDL适合单帧图像多请求高并发的运行方式,而OpenVINO和TensorRT由于GPU与CPU之间的数据拷贝耗时问题,更加适合多帧打包图像的运行方式。物品识别系统可以根据自动化安装部署测试流程中生成的配置文件去修改数据组织格式与流通方式。
(3)基于CPU的神经网络推断加速
当边缘计算服务器没有GPU也没有VPU时,为了物品识别系统的可用性,只能降级为利用CPU去完成神经网络前向传播算法。同时,物品识别系统对CPU计算也做了尽可能多的优化。一方面,可以利用基础线性代数子程序库,加速神经网络前向传播算法中的一些向量操作。另一方面,可以根据CPU的不同指令集架构,利用SSE或者NEON加速内存连续的浮点型数据计算。
配置文件中具体可以包括处理器名称、处理器性能(例如多种时延表现)以及满负荷运算下所需引擎资源。配置文件中的具体内容距离如下:
processing_name(处理器名称):xxxxx
single_delay(单帧图像的时延):xxxxx
batch_delay(多帧打包图像的平均时延):xxxx
concurrent_single_dealy(并发单帧图像的时延):xxxxx
concurrent_batch_dealy(并发多帧打包图像的平均时延):xxxxx
engin_load(满负荷运算下所需引擎资源):xxxxx
物品识别系统启动时读取配置文件,并根据配置文件确定物品识别系统的运行参数,从而对物品识别系统进行内部配置优化。物品识别系统读取配置文件后,与摄像头配合进行图像识别工作。
图4示出了物品识别系统与摄像头配合进行图像识别的工作原理示意图。如图4所示,位于售货设备中的摄像头采集图像,将生成的摄像头图像队列输入物品识别系统的物品检测模块。物品检测模块检测图像队列中含有物品的图像,将含有物品的图像队列输入物品识别系统的物品图像特征提取模块。物品图像特征提取模块提取图像特征,将物品图像的特征队列输入物品识别系统的物品特征匹配模块。物品特征匹配模块将物品图像的特征与特征库中的特征进行比对,最终生成图像识别结果队列。
下面结合图5描述本公开生成配置文件的装置的一些实施例。
图5示出了本公开一些实施例的生成配置文件的装置的结构示意图。如图5所示,该实施例的生成配置文件的装置50包括:存储器510以及耦接至该存储器510的处理器520,处理器520被配置为基于存储在存储器510中的指令,执行前述任意一些实施例中的生成配置文件的方法。
其中,存储器510例如可以包括系统存储器、固定非易失性存储介质等。系统存储器例如存储有操作系统、应用程序、引导装载程序(Boot Loader)以及其他程序等。
生成配置文件的装置50还可以包括输入输出接口530、网络接口540、存储接口550等。这些接口530、540、550以及存储器510和处理器520之间例如可以通过总线560连接。其中,输入输出接口530为显示器、鼠标、键盘、触摸屏等输入输出设备提供连接接口。网络接口540为各种联网设备提供连接接口。存储接口550为SD卡、U盘等外置存储设备提供连接接口。
本公开还包括一种售货设备,该售货设备包括生成配置文件的装置50。
本公开还包括一种计算机可读存储介质,其上存储有计算机指令,该指令被处理器执行时实现前述任意一些实施例中的生成配置文件的方法。
本领域内的技术人员应明白,本公开的实施例可提供为方法、系统、或计算机程序产品。因此,本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本公开是参照根据本公开实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
以上所述仅为本公开的较佳实施例,并不用以限制本公开,凡在本公开的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。
Claims (12)
1.一种生成配置文件的方法,应用于售货设备,其特征在于,包括:
获取所述售货设备所包含的处理器的类型;
获取物品识别系统所支持的处理器的类型,其中,所述物品识别系统用于对与所述售货设备相关联的图像进行识别;
将所述物品识别系统所支持的、且包含在所述售货设备中的处理器确定为第一处理器;
若所述第一处理器包括中央处理器,则安装所述物品识别系统的依赖环境;若所述第一处理器包括其它处理器,则安装所述其它处理器的驱动程序以及所述物品识别系统的依赖环境;
在所述售货设备中生成运行所述物品识别系统所需的配置文件,以使所述物品识别系统启动时读取所述配置文件。
2.如权利要求1所述的方法,其中,所述物品识别系统用于通过神经网络前向传播算法对所述图像进行识别;
所述在所述售货设备中生成运行所述物品识别系统所需的配置文件包括:从所述第一处理器中选择一种处理器执行神经网络前向传播算法,并生成采用所选择的处理器执行神经网络前向传播算法所需的配置文件。
3.如权利要求2所述的方法,其中,若所述第一处理器包括其它处理器,则安装所述其它处理器的驱动程序、所述其它处理器所对应神经网络推断加速引擎的依赖环境以及所述物品识别系统的依赖环境。
4.如权利要求3所述的方法,其中,所述安装所述其它处理器的驱动程序、所述其它处理器所对应神经网络推断加速引擎的依赖环境包括:
安装Nvidia独立显卡的驱动程序以及TensorRT的依赖环境;
安装Intel集成显卡的驱动程序以及OpenVINO的依赖环境;
安装Intel视频处理器的驱动程序以及HDDL的依赖环境。
5.如权利要求2所述的方法,其中,所述从所述第一处理器中选择一种处理器执行神经网络前向传播算法包括:
分别测试采用所述第一处理器中的各个处理器执行神经网络前向传播算法时,物品识别系统对所述图像进行识别的时延;
从所述第一处理器中选择使所述时延最短的处理器,执行神经网络前向传播算法。
6.如权利要求5所述方法,其中,所述分别测试采用所述第一处理器中的各个处理器执行神经网络前向传播算法时,物品识别系统对所述图像进行识别的时延包括:
测试采用所述第一处理器中的第二处理器执行神经网络前向传播算法时,物品识别系统识别单帧图像的时延、多帧打包图像的平均时延、并发单帧图像的时延以及并发多帧打包图像的平均时延;
将上述四种时延中的最短时延,作为采用第二处理器执行神经网络前向传播算法时,物品识别系统对所述图像进行识别的时延。
7.如权利要求2所述的方法,还包括:
物品识别系统启动时读取所述配置文件,并根据所述配置文件确定物品识别系统的运行参数。
8.如权利要求7所述的方法,其中,所述配置文件包含引擎负载信息;
所述根据所述配置文件确定物品识别系统的运行参数包括:根据所述配置文件中的引擎负载信息,确定物品识别系统中各个模块的推理引擎实例个数。
9.如权利要求7所述的方法,其中,所述配置文件包含执行神经网络前向传播算法的处理器信息;
所述根据所述配置文件确定物品识别系统的运行参数包括:根据所述配置文件中执行神经网络前向传播算法的处理器信息,确定物品识别系统从摄像头接收图像的最小数量单位。
10.一种生成配置文件的装置,包括:
存储器;以及
耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器中的指令,执行如权利要求1至9中任一项所述的生成配置文件的方法。
11.一种售货设备,包括如权利要求10所述的生成配置文件的装置。
12.一种计算机可读存储介质,其中,所述计算机可读存储介质存储有计算机指令,所述指令被处理器执行时实现如权利要求1至9中任一项所述的生成配置文件的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811630352.XA CN109727376B (zh) | 2018-12-29 | 2018-12-29 | 生成配置文件的方法、装置及售货设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811630352.XA CN109727376B (zh) | 2018-12-29 | 2018-12-29 | 生成配置文件的方法、装置及售货设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109727376A true CN109727376A (zh) | 2019-05-07 |
CN109727376B CN109727376B (zh) | 2022-03-04 |
Family
ID=66297842
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811630352.XA Active CN109727376B (zh) | 2018-12-29 | 2018-12-29 | 生成配置文件的方法、装置及售货设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109727376B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110446106A (zh) * | 2019-06-27 | 2019-11-12 | 驭势(上海)汽车科技有限公司 | 一种前置摄像头文件的识别方法、电子设备及存储介质 |
CN110473015A (zh) * | 2019-08-09 | 2019-11-19 | 南京智骋致想电子科技有限公司 | 一种智能广告系统及广告投放方法 |
CN112561044A (zh) * | 2019-09-26 | 2021-03-26 | 西安闻泰电子科技有限公司 | 神经网络模型加速方法及装置、服务器及存储介质 |
CN113873042A (zh) * | 2021-10-11 | 2021-12-31 | 北京国信未来城市数字科技研究院有限公司 | 边缘智能控制器及数据处理方法 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103262035A (zh) * | 2010-12-15 | 2013-08-21 | 超威半导体公司 | 组合式cpu/gpu体系结构系统中的装置发现和拓扑报告 |
CN104011679A (zh) * | 2011-12-01 | 2014-08-27 | 超威半导体公司 | 异构并行处理平台的软件库 |
CN104035751A (zh) * | 2014-06-20 | 2014-09-10 | 深圳市腾讯计算机系统有限公司 | 基于多图形处理器的数据并行处理方法及装置 |
CN104423994A (zh) * | 2013-09-03 | 2015-03-18 | 华为技术有限公司 | 一种代码生成方法、编译器、调度方法、装置及调度系统 |
CN104688273A (zh) * | 2015-03-16 | 2015-06-10 | 哈尔滨工业大学 | 基于cpu+gpu异构架构的超高速超声成像装置及方法 |
CN104731729A (zh) * | 2015-03-23 | 2015-06-24 | 华为技术有限公司 | 一种基于异构系统的表连接优化方法、cpu和加速器 |
CN106991472A (zh) * | 2017-03-30 | 2017-07-28 | 中国人民解放军国防科学技术大学 | 一种融合ReLU激活函数与最大值池化的向量化实现方法 |
JP2018018422A (ja) * | 2016-07-29 | 2018-02-01 | 株式会社デンソーアイティーラボラトリ | 予測装置、予測方法および予測プログラム |
CN108171117A (zh) * | 2017-12-05 | 2018-06-15 | 南京南瑞信息通信科技有限公司 | 基于多核异构并行计算的电力人工智能视觉分析系统 |
CN108389316A (zh) * | 2018-03-02 | 2018-08-10 | 北京京东尚科信息技术有限公司 | 自动售货方法、装置和计算机可读存储介质 |
CN108564168A (zh) * | 2018-04-03 | 2018-09-21 | 中国科学院计算技术研究所 | 一种对支持多精度卷积神经网络处理器的设计方法 |
CN108845577A (zh) * | 2018-07-13 | 2018-11-20 | 武汉超控科技有限公司 | 一种嵌入式自动驾驶控制器及其安全监控方法 |
CN109087236A (zh) * | 2018-06-21 | 2018-12-25 | 歌尔股份有限公司 | 多深度学习平台工业图像检测控制方法及系统 |
-
2018
- 2018-12-29 CN CN201811630352.XA patent/CN109727376B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103262035A (zh) * | 2010-12-15 | 2013-08-21 | 超威半导体公司 | 组合式cpu/gpu体系结构系统中的装置发现和拓扑报告 |
CN104011679A (zh) * | 2011-12-01 | 2014-08-27 | 超威半导体公司 | 异构并行处理平台的软件库 |
CN104423994A (zh) * | 2013-09-03 | 2015-03-18 | 华为技术有限公司 | 一种代码生成方法、编译器、调度方法、装置及调度系统 |
CN104035751A (zh) * | 2014-06-20 | 2014-09-10 | 深圳市腾讯计算机系统有限公司 | 基于多图形处理器的数据并行处理方法及装置 |
CN104688273A (zh) * | 2015-03-16 | 2015-06-10 | 哈尔滨工业大学 | 基于cpu+gpu异构架构的超高速超声成像装置及方法 |
CN104731729A (zh) * | 2015-03-23 | 2015-06-24 | 华为技术有限公司 | 一种基于异构系统的表连接优化方法、cpu和加速器 |
JP2018018422A (ja) * | 2016-07-29 | 2018-02-01 | 株式会社デンソーアイティーラボラトリ | 予測装置、予測方法および予測プログラム |
CN106991472A (zh) * | 2017-03-30 | 2017-07-28 | 中国人民解放军国防科学技术大学 | 一种融合ReLU激活函数与最大值池化的向量化实现方法 |
CN108171117A (zh) * | 2017-12-05 | 2018-06-15 | 南京南瑞信息通信科技有限公司 | 基于多核异构并行计算的电力人工智能视觉分析系统 |
CN108389316A (zh) * | 2018-03-02 | 2018-08-10 | 北京京东尚科信息技术有限公司 | 自动售货方法、装置和计算机可读存储介质 |
CN108564168A (zh) * | 2018-04-03 | 2018-09-21 | 中国科学院计算技术研究所 | 一种对支持多精度卷积神经网络处理器的设计方法 |
CN109087236A (zh) * | 2018-06-21 | 2018-12-25 | 歌尔股份有限公司 | 多深度学习平台工业图像检测控制方法及系统 |
CN108845577A (zh) * | 2018-07-13 | 2018-11-20 | 武汉超控科技有限公司 | 一种嵌入式自动驾驶控制器及其安全监控方法 |
Non-Patent Citations (1)
Title |
---|
王浩: "异构多核系统中关键算法的硬件加速引擎设计", 《中国优秀硕士学位论文全文数据库》 * |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110446106A (zh) * | 2019-06-27 | 2019-11-12 | 驭势(上海)汽车科技有限公司 | 一种前置摄像头文件的识别方法、电子设备及存储介质 |
CN110446106B (zh) * | 2019-06-27 | 2022-01-14 | 驭势(上海)汽车科技有限公司 | 一种前置摄像头文件的识别方法、电子设备及存储介质 |
CN110473015A (zh) * | 2019-08-09 | 2019-11-19 | 南京智骋致想电子科技有限公司 | 一种智能广告系统及广告投放方法 |
CN112561044A (zh) * | 2019-09-26 | 2021-03-26 | 西安闻泰电子科技有限公司 | 神经网络模型加速方法及装置、服务器及存储介质 |
CN112561044B (zh) * | 2019-09-26 | 2023-07-14 | 西安闻泰电子科技有限公司 | 神经网络模型加速方法及装置、服务器及存储介质 |
CN113873042A (zh) * | 2021-10-11 | 2021-12-31 | 北京国信未来城市数字科技研究院有限公司 | 边缘智能控制器及数据处理方法 |
CN113873042B (zh) * | 2021-10-11 | 2022-06-07 | 北京国信未来城市数字科技研究院有限公司 | 边缘智能控制器及数据处理方法 |
Also Published As
Publication number | Publication date |
---|---|
CN109727376B (zh) | 2022-03-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109727376A (zh) | 生成配置文件的方法、装置及售货设备 | |
CN102282591B (zh) | 光线跟踪系统架构和方法 | |
CN111258744A (zh) | 一种基于异构计算的任务处理方法及软硬件框架系统 | |
CN109074284A (zh) | 用于按比例增减资源的方法和系统、以及计算机程序产品 | |
CN108235116A (zh) | 特征传播方法和装置、电子设备、程序和介质 | |
CN109213607B (zh) | 一种多线程渲染的方法和装置 | |
EP4198771A1 (en) | Data processing method and apparatus, computer readable medium, and electronic device | |
CN110290166B (zh) | 跨集群数据交互方法、系统、装置及可读存储介质 | |
CN110290522A (zh) | 用于移动设备的风险识别方法、装置和计算机系统 | |
EP4209972A1 (en) | Ai model training method and apparatus, and computing device and storage medium | |
CN108229363A (zh) | 关键帧调度方法和装置、电子设备、程序和介质 | |
CN109492607A (zh) | 一种信息推送方法、信息推送装置及终端设备 | |
CN106652008A (zh) | 一种自动生成网格与着色器多层次细节的方法 | |
KR102171269B1 (ko) | 이미지의 채색 완성 방법, 장치 및 컴퓨터 프로그램과 인공 신경망 학습 방법, 장치 및 컴퓨터 프로그램 | |
WO2022040472A1 (en) | System and method for accelerated ray tracing | |
US9135749B2 (en) | Method and apparatus for processing three-dimensional model data | |
WO2022040481A1 (en) | System and method for accelerated ray tracing with asynchronous operation and ray transformation | |
Ahrens et al. | PaTraCo: a framework enabling the transparent and efficient programming of heterogeneous compute networks | |
CN114816719B (zh) | 多任务模型的训练方法及装置 | |
CN106294395B (zh) | 一种任务处理的方法及装置 | |
CN105335995A (zh) | 一种多光源全局光照绘制方法及装置 | |
CN116108952A (zh) | 用于组合优化的并行处理 | |
KR101013784B1 (ko) | Cpu와 gpu를 이용한 하이브리드 병렬 연속 충돌 검출 방법 | |
WO2010002626A2 (en) | Vectorized parallel collision detection pipeline | |
US11281935B2 (en) | 3D object detection from calibrated 2D images |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |