CN112446387A - 对象识别方法及装置 - Google Patents
对象识别方法及装置 Download PDFInfo
- Publication number
- CN112446387A CN112446387A CN201910818551.1A CN201910818551A CN112446387A CN 112446387 A CN112446387 A CN 112446387A CN 201910818551 A CN201910818551 A CN 201910818551A CN 112446387 A CN112446387 A CN 112446387A
- Authority
- CN
- China
- Prior art keywords
- aer
- data
- information
- event
- identified
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/62—Extraction of image or video features relating to a temporal dimension, e.g. time-based feature extraction; Pattern tracking
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/213—Feature extraction, e.g. by transforming the feature space; Summarisation; Mappings, e.g. subspace methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/21—Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
- G06F18/214—Generating training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
- G06N3/049—Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/40—Extraction of image or video features
- G06V10/44—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components
- G06V10/443—Local feature extraction by analysis of parts of the pattern, e.g. by detecting edges, contours, loops, corners, strokes or intersections; Connectivity analysis, e.g. of connected components by matching or filtering
- G06V10/449—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters
- G06V10/451—Biologically inspired filters, e.g. difference of Gaussians [DoG] or Gabor filters with interaction between the filter responses, e.g. cortical complex cells
- G06V10/454—Integrating the filters into a hierarchical structure, e.g. convolutional neural networks [CNN]
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/08—Learning methods
- G06N3/088—Non-supervised learning, e.g. competitive learning
Abstract
本申请提供了一种对象识别的方法,属于图像处理技术领域。该方法包括:在AER数据中识别对象时,可以获取待识别对象的AER数据,AER数据包括待识别对象的多个AER事件,每个AER事件包括产生AER事件的时间戳和地址信息,提取AER数据的多个特征图,其中,每个特征图包含待识别对象的部分空间信息和部分时间信息,部分空间信息和部分时间信息是根据每个AER事件的时间戳和地址信息获得的,根据AER数据的多个特征图,对待识别对象进行识别。采用本申请,可以提高对象识别结果的准确率。
Description
技术领域
本申请涉及图像处理的技术领域,特别涉及一种对象识别方法及装置。
背景技术
传统的视觉传感器以“帧扫描”为图像采集方式,随着视觉系统实际应用对于速度等性能要求的提升,传统的视觉传感器遇到了数据过大、帧频受限等发展瓶颈。基于仿生视觉感知模型的地址事件表示(address event representation,AER)传感器以其速度高、延迟小、冗余低的优势,成为当前机器视觉系统领域的研究热点。AER传感器中的每个像素分别监测特定区域的光强的相对变化,如果变化超过预定义的阈值,则记录该像素对应的AER事件,AER事件包括该像素的位置(即地址信息)、发出该事件的时间(即时间戳)以及光强的值增大或减小的指示信息。与传统的视觉传感器记录光强的值不同,AER传感器仅记录光强的变化值超过阈值的事件,光强的变化值小于阈值的事件并不会记录,因此可以极大的降低视觉信息的冗余。
相关技术中,假设AER传感器的像素为128*128,在对AER数据中的对象进行识别时,首先提取AER数据的空间特征,在空间特征提取算法中输入AER数据中的AER事件,输出则会是一个128*128的空间特征图(即空间特征)。然后将空间特征图,输入到分类算法,对AER数据中的对象进行识别。
由于相关技术中仅考虑了空间特征,提取的特征比较单一,对AER数据进行识别时,有可能导致识别结果不准确。
发明内容
为了解决对象的识别结果不准确的问题,本申请提供了一种对象识别方法及装置。
第一方面,本申请提供了一种对象识别的方法。在该方法中,在识别对象的过程中,可以获取待识别对象的AER数据,该AER数据包括待识别对象的多个AER事件,每个AER事件包括产生AER事件的时间戳(即发生该AER事件的时间)和地址信息(即产生该AER事件的像素的位置信息)。然后可以提取AER数据的多个特征图,其中,每个特征图包含待识别对象的部分空间信息和部分时间信息,部分空间信息和部分时间信息是根据每个AER事件的时间戳和地址信息获得的。根据AER数据的多个特征图,对待识别对象进行识别。
由于本申请提供的对象识别方法中,在提取AER数据的特征图时提取了AER事件的时间信息和地址信息,所以原始的AER数据的时间信息和空间信息都包含在提取的特征图中,使得特征图能够更全面的代表原始数据,进而对待识别对象进行识别时,可以使识别结果更准确。
在一种可能的实现方式中,所述提取所述AER数据的多个特征图,包括:采用多个滤波器对所述多个AER事件的地址信息进行处理,得到多个第一特征图;按照所述多个AER事件的时间戳对所述多个第一特征图中的特征值进行衰减处理,得到所述AER数据的多个特征图。
本申请所示的方案,在提取AER数据的多个特征图时,可以获取多个滤波器,滤波器可以是Gabor滤波器或者高斯函数的差分(Difference of Guassian,DOG)滤波器。在滤波器为Gabor滤波器时,多个滤波器为不同方向和尺度的组合的滤波器,尺度为卷积核的大小,方向为Gabor滤波器核函数的方向。其中,不同方向和尺度指尺度和方向中至少有一个不相同
对于任一滤波器,可以使用该滤波器对多个AER事件的地址信息进行处理(该处理可以是卷积处理),得到一个第一特征图,这样,由于有多个滤波器,所以可以得到多个第一特征图(多个第一特征图的大小相同,均为n*m)。然后对这多个第一特征图中的每个第一特征图的特征值,按照AER事件的时间戳进行衰减处理,得到AER数据的多个特征图。
在一种可能的实现方式中,所述采用多个滤波器对所述多个AER事件的地址信息进行处理,得到多个第一特征图,包括:采用多个Gabor滤波器的卷积核对所述多个AER事件的空间信息进行卷积处理,得到多个第一特征图。
本申请所示的方案,在提取第一特征图时,可以采用每个Gabor滤波器的卷积核与AER事件的空间信息进行卷积处理,得到每个Gabor滤波器的卷积核对应的第一特征图。这样,由于有多个Gabor滤波器,所以可以得到多个第一特征图。
在一种可能的实现方式中,所述根据所述AER数据的多个特征图,对所述待识别对象进行识别,包括:对所述AER数据的多个特征图进行编码以获得多个脉冲序列,并采用脉冲神经网络对所述多个脉冲序列进行处理,以对所述待识别对象进行识别。其中,每个脉冲序列包括多个脉冲,每个脉冲携带有所述待识别对象的部分时间信息和部分空间信息,属于同一个脉冲序列中的多个脉冲是根据具有相同设定方向上的不同滤波器对应的特征图中,具有相同位置的特征值获得的。
本申请所示的方案,在对待识别对象进行识别时,可以对AER数据的多个特征图进行编码以获得多个脉冲序列。具体可以是将每个特征图中的特征值编码成脉冲的触发时刻。在编码脉冲的触发时刻时,或者在其他时间,将多个特征图中,设定方向上的不同滤波器对应的特征图中的相同位置的特征值组成一组特征值(设定方向为滤波器的任一方向)。然后将该组特征值对应的脉冲的触发时刻,组成一个脉冲序列,这样,特征图中每个位置的不同方向都对应有一个脉冲序列,可以得到多个脉冲序列,每个脉冲序列包括多个脉冲。由于特征图中的特征值携带了待识别对象的部分时间信息和部分空间信息,所以脉冲也携带了待识别对象的部分时间信息和部分空间信息。然后将脉冲序列输入至脉冲神经网络,对AER数据中包括的对象进行识别。
这样,由于编码成脉冲序列,脉冲序列中每个脉冲表达了时间信息和空间信息,所以在识别时,可以使识别结果更准确。而且由于将不同尺度的脉冲进行融合,可以在保持准确率的基础上减少了脉冲神经网络中识别神经元的数目,进而节省了计算资源。
在一种可能的实现方式,可以采用目标编码函数对AER数据的多个特征图进行编码,以获得多个脉冲序列,目标编码函数为反向的线性函数或者反向的对数函数。目标编码函数用于控制特征图中较小的特征值更迟触发脉冲或者不触发脉冲,并用于控制特征图中较大的特征值更早的触发脉冲。
这样,由于通过目标编码函数改变了特征图中特征值的分布,所以可以在后续识别时表达更多的信息,进而可以提高识别的准确率。
第二方面,本申请提供了一种对象识别的装置,该装置包括一个或多个模块,该一个或多个模块用于实现上述第一方面或第一方面的可能的实现方式所提供的对象识别的方法。
第三方面,本申请提供了一种对象识别的计算设备,该计算设备包括处理器和通信接口,处理器与通信接口连接,
通信接口,用于接收待识别对象的AER数据,处理器用于执行上述第一方面所述的对象识别的方法。
第四方面,本申请提供了一种计算机可读存储介质,计算机可读存储介质存储有指令,当计算机可读存储介质中的指令在计算设备上被执行时,使得计算设备执行上述第一方面或第一方面的可能的实现方式所提供的对象识别的方法。
第五方面,本申请提供了一种包含指令的计算机程序产品,当其在计算设备上运行时,使得计算设备执行上述第一方面或第一方面的可能的实现方式所提供的对象识别的方法。
附图说明
图1是本申请一个示例性实施例提供的计算设备的结构框图;
图2是本申请一个示例性实施例提供的对象识别的方法的架构示意图;
图3是本申请一个示例性实施例提供的提取特征图的架构示意图;
图4是本申请一个示例性实施例提供的对特征图进行编码的架构示意图;
图5是本申请一个示例性实施例提供的提取特征图的示意图;
图6是本申请一个示例性实施例提供的对象识别的方法的流程示意图;
图7是本申请一个示例性实施例提供的对象识别的方法的实现架构图;
图8是本申请一个示例性实施例提供的提取特征图的示意图;
图9是本申请一个示例性实施例提供的对象识别的装置的结构示意图。
具体实施方式
为使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请实施方式作进一步地详细描述。
为了便于对本申请实施例的理解,下面首先介绍所涉及到名词的概念:
AER传感器,是模仿人类视网膜机制的神经形态装置。AER传感器包括多个像素,每个像素分别监测特定区域的光强的变化。在变化超过阈值时,记录该像素对应的AER事件,而变化未超过阈值时,不记录该像素对应的AER事件。每个AER事件都包括发生该AER事件的像素的位置信息(即地址信息)、发生的时间(即时间戳)以及极性,极性用于表征该像素感知到光的变化是从暗到亮(可以使用数值1表示),还是从亮到暗(可以使用数值-1表示)。可见,AER传感器最终输出的是来自每个像素的AER事件,与传统相机相比,AER传感器具有场景的异步、高时间分辨率和稀疏表示的优点,在数据传输速度和数据冗余度上都有很大的优势。需要说明的是,上述场景的异步指每个像素是单独采集AER事件。
AER数据,包括来自每个像素的AER事件流。来自每个像素的AER事件流中的任一AER事件包括发生该AER事件的像素的地址信息、发生的时间戳以及极性等。
Gabor滤波器,是一种用于纹理分析的线性滤波器。Gabor滤波器可以用于提取图像、视频的特征,广泛应用在计算机视觉应用中。具体是仅允许与其频率相对应的纹理顺利通过,而使其他纹理的能量受到抑制。Gabor滤波器可以由尺度s、方向θ的来表示,不同尺度s和方向θ的组合对应的卷积核不相同,那么不同尺度s和方向θ的组合对应不同的滤波器。通过研究表明,哺乳动物大脑视觉皮层中的简单细胞可以通过Gabor滤波器建模,每个Gabor滤波器模拟具有一定尺度的感受野的神经元细胞。感受野是一个神经元的反应或支配的刺激区域。
脉冲神经网络(Spiking Neural Network,SNN),经常被誉为第三代人工神经网络。脉冲网络的神经元可以模拟生物神经细胞电压变化及传递过程,神经元之间信息传递采用脉冲的形式,脉冲包含时间和空间信息。脉冲神经网络可以用于对输入进行识别、分类。
脉冲时间依赖的可塑性算法(Spike-timing Dependent Plasticity,STDP算法),是在大脑中发现的神经元之间连接权重的更新规则,目标是若两个神经元的发放在时间上离的越近,他们之间的绑定关系就越亲密。STDP算法是一种无监督的学习算法。
无监督学习算法,其在人类和动物的学习中占据主导地位,人们通过观察能够发现世界的内在结构,而不是被告知每一个客观事物的名称。无监督学习算法的设计主要是针对无标签数据集的训练,要求应用无监督学习规则对神经网络中的连接权值或者结构进行自适应的调整。也就是说,在没有“教师”信号的监督下,神经网络必须自己从输入的数据中发现规律性(如统计特征、相关性或者类别等),并通过输出实现分类或者决策。
监督学习算法,利用一组已知类别的样本调整分类器的参数,使其达到所要求性能的过程,也称为监督训练。即监督学习是从标记的训练数据来推断一个功能的机器学习任务。
在对本申请实施例提供的对象识别的方法介绍之前,对本申请实施例所适用的应用场景和系统架构进行介绍。
在使用AER传感器获取到图像数据后,通常会识别图像数据中的对象,对象可以是行人、车辆等物体,还可以是动作过程等。相关技术中是在AER传感器输出的数据中提取AER数据的空间特征,然后基于空间特征对AER数据中的待识别对象进行识别。由于仅考虑了空间特征,提取的特征比较单一,对AER数据进行识别时,有可能导致识别结果不准确。所以需要提供一种相对比较准确的识别方法。本申请实施例中的AER传感器可以应用于行车记录仪、监控设备等任何主要记录变化的内容的图像拍摄场景中。
本申请实施例提供的对象识别的方法可以由对象识别的装置执行,对象识别的装置可以是一个硬件装置,例如:服务器、终端计算设备等。对象识别的装置也可以是一个软件装置,具体为运行在硬件计算设备上的一套软件系统。本申请实施例中并不限定对象识别的装置所部署的位置。示例性的,对象识别的装置可以部署在服务器上。
对象识别的装置在逻辑上也可以是由多个部分构成的装置,如对象识别的装置可以包括获取模块、提取模块和识别模块等,对象识别的装置中的各个组成部分可以分别部署在不同的系统或服务器中。装置的各部分可以分别运行在云计算设备系统、边缘计算设备系统或终端计算设备这三个环境中,也可以运行在这三个环境中的任意两个环境中。云计算设备系统、边缘计算设备系统和终端计算设备之间由通信通路连接,可以相互进行通信。
在对象识别的装置为计算设备时,图1示例性的提供了本申请的计算设备100的一种可能的架构图。
计算设备100可以包括处理器101、存储器102、通信接口103和总线104。在计算设备100中,处理器101的数量可以是一个或多个,图1仅示意了其中一个处理器101。可选的,处理器101可以是中央处理器(Central Processing Unit,CPU)。若计算设备100具有多个处理器101,多个处理器101的类型可以不同,或者可以相同。可选的,计算设备100的多个处理器还可以集成为多核处理器。处理器101可以用于执行对象识别的方法的步骤。实际应用中,处理器101可以是一块超大规模的集成电路。在处理器101中安装有操作系统和其他软件程序,从而处理器101能够实现对存储器102等器件的访问。可以理解的是,在本发明实施例中,处理器101是以中央处理器(Central Processing unit,CPU)进行介绍,实际应用中,还可以是其他特定集成电路(Application Specific Integrated Circuit,ASIC)。
存储器102存储计算机指令和数据,存储器102可以存储实现本申请提供的对象识别的方法所需的计算机指令和数据。例如,存储器102存储用于实现本申请提供的对象识别的方法中获取模块执行步骤的指令。再例如,存储器102存储用于本申请提供的对象识别的方法中提取模块执行步骤的指令。再例如,在存储器102存储用于本申请提供的对象识别的方法中识别模块执行步骤的指令。存储器102可以是以下存储介质的任一种或任一种组合:非易失性存储器(如只读存储器(Read-Only Memory,ROM)、固态硬盘(Solid State Disk,SSD)、硬盘(Hard Disk Drive,HDD)、光盘等)、易失性存储器。
通信接口103可以是以下器件的任一种或任一种组合:网络接口(如以太网接口)、无线网卡等具有网络接入功能的器件。通信接口103用于计算设备100与其他计算设备100或者终端进行数据通信。在本申请中,可以通过通信接口103从AER传感器获取待识别对象的AER数据。
图1用一条粗线表示总线104。总线104可以将处理器101与存储器102、通信接口103连接。这样,通过总线104,处理器101可以访问存储器102,还可以利用通信接口103与其它计算设备100或者终端进行数据交互。
在本申请中,计算设备100执行存储器102中的计算机指令,使用计算设备100实现本申请提供的对象识别的方法。例如,使得计算设备100执行对象识别的方法中由获取模块执行的步骤。再例如,使得计算设备100执行对象识别的方法中由提取模块执行的步骤。再例如,使得计算设备100执行对象识别的方法中识别模块执行步骤的指令。
在进行实施前,首先介绍本申请实施例的整体框架。本申请实施例提供了一种对象识别的方法,该方法的实现图如图2所示,对象识别的装置从AER传感器,获取AER传感器采集的AER数据。对象识别的装置对AER数据进行编码处理,编码处理可以包括提取AER数据的多个特征图和对AER数据的多个特征图进行编码处理。对象识别的装置将编码处理后的内容输入至识别模型中进行识别。
在图2中,提取特征图的处理过程可以如图3所示,对象识别的装置将AER数据通过卷积计算和空间信息随时间衰减,使得每个特征图中每个特征值受到AER事件的时间戳的影响。
在图2中,编码特征图的处理过程可以如图4所示,对象识别的装置对特征图中的特征值经过编码函数进行时间编码后,生成脉冲的触发时刻。对象识别的装置进行时间编码时,也可以同时进行空间编码,具体是将AER数据的多个特征图中相同位置且设定方向的不同尺度的特征值组成一组(设定方向在后面进行描述),得到多组特征值。然后确定每组特征值对应的脉冲的触发时刻,得到每组特征值对应的一组脉冲的触发时刻。每组脉冲的触发时刻即为一个脉冲序列,即每个脉冲序列包括多个脉冲。
需要说明的是,上述设定方向的不同尺度的特征图为使用设定方向的不同滤波器得到的特征图。例如,方向θ为45度的滤波器有4个(4代表尺度的数目),设定方向为45度的滤波器得到的特征图为4个。相同位置指多个特征图中的同一位置,如有4个特征图,每个特征图均为(4,4)位置。
另外,本申请实施例在提取特征图时使用到滤波器,滤波器可以是任意一种能提取特征的滤波器,如可以是Gabor滤波器或者DOG滤波器等。在进行实施前,为了更好的理解本申请实施例,首先介绍Gabor滤波器,Gabor滤波器的函数表达式可以为:
其中,在式(1)中,X=Δxcosθ+Δysinθ;Y=-Δxsinθ+Δycosθ。(Δx,Δy)是(x,y)和AER事件所属的像素的位置(ex,ey)的空间偏移位置,(x,y)为Gabor滤波器对应的卷积核中元素对应到特征图中的位置。实际上也可以认为(ex,ey)是AER事件在特征图中的位置。
γ是空间纵横比,决定Gabor滤波器的形状,取值为1时,形状为圆形。
λ为波长,直接影响Gabor滤波器的滤波尺度(即后续提到的尺度)。σ是表示带宽,是Gabor滤波器的方差,λ和σ是由尺度s决定。
尺度s表示Gabor滤波器的卷积核的大小,如尺度s为3,卷积核为3*3的卷积核,尺度s为5,卷积核为5*5的卷积核。
θ表示Gabor滤波器的核函数的方向。
在尺度s和方向θ固定的情况下,通过Gabor滤波器的函数表达式,即可计算出在这组尺度s和方向θ下的卷积核。例如,尺度s为3,方向为45度,AER事件所属的像素的位置为(3,3)(即特征图中的位置为(3,3)),想要计算卷积核的(1,1)位置的数值,则x=2,y=2,Δx=-1,Δy=-1。将Δx和Δy代入式(1)即可得到G(-1,-1),即为卷积核的(1,1)位置的数值。通过这种方式可以确定出每组尺度s和方向θ下的卷积核。
在确定出卷积后,会使用卷积核提取特征图。特征图中包含特征值的数目与AER传感器的像素的数目相同,且特征图中每一行特征值的数目与AER传感器中每一行像素的数目相同,且一一对应。初始特征图中各特征值取值均可以为零。例如,AER传感器的像素数目为5*5,那么特征图包含的特征值的数目为5*5。在尺度s和方向θ固定的情况下,在每当一个AER事件进行卷积处理时,都是将该组尺度s和方向θ对应的卷积核覆盖到特征图该AER事件所属的位置的感受野中。具体是:假设卷积为AER事件在特征图中所属的位置为(m,n),将卷积核中心位置的数值e与特征图中(m,n)位置的特征值进行叠加。然后将a与特征图中(m-1,n-1)位置的特征值进行叠加,将b与特征图中(m,n-1)位置的特征值进行叠加,将c与特征图中(m+1,n-1)位置的特征值进行叠加,以此类推,即可将卷积核覆盖到特征图中,这样,就得到了添加该AER事件的特征图。如图5所示,假设卷积核为3*3,即初始特征图为5*5,即在像素位置为(3,3)、时间为100ns处输入一个AER事件,在像素位置为(2,3)、时间为200ns处输入一个AER事件。对象识别的装置在特征图(3,3)的位置叠加卷积核。然后对象识别的装置在特征图(2,3)的位置叠加卷积核。
这样,将AER数据中每个AER事件都叠加到特征图中,可以得到AER数据的特征图。上述是仅以一组尺度s和方向θ的滤波器为例进行说明,每组尺度s和方向θ的滤波器均可以得到一个特征图。
需要说明的是,对于特征图中边界位置处,Gabor滤波器的卷积核并不能完全的覆盖到特征图中,可以仅叠加卷积核中能覆盖的数值。例如,Gabor滤波器的卷积核为3*3的卷积核,特征图中的(1,1)位置处,卷积核中第一列和第一行的数值不能覆盖到特征图中,而除第一列和第一行之外的数值均可以覆盖,所以在特征图仅叠加除第一列和第一行之外的数值。
还需要说明的是,上述确定每种尺度s和方向θ下的卷积核的过程可以在对象识别时由对象识别的装置确定。也可以是其他设备上确定,对象识别的装置在使用时,从其他设备上获取,本申请实施例不做限定。另外本申请实施例是以水平向右为X轴的正方向,并且以竖直向下为Y轴的正方向为例进行说明。
下面将结合图6对本申请实施例提供的一种对象识别的方法进行说明,且以执行主体为对象识别的装置为例进行说明。方法流程可以如下:
步骤601,对象识别的装置从AER传感器获取AER数据。AER数据包括来自每个像素的AER事件,由于每个像素均是用于检测待识别对象,所以可以认为AER数据包括待识别对象的多个AER事件。每个AER事件包括发生该AER事件的像素的地址信息、时间戳以及极性。
本实施例中,AER传感器可以检测每个像素的光强的变化,在变化超过阈值时,记录该像素对应的AER事件,而变化未超过阈值时,不记录该像素对应的AER事件。每个AER事件都包括发生该AER事件的像素的地址信息、时间戳以及极性,极性用于表征该像素感知到光的变化是从暗到亮(可以使用数值1表示),还是从亮到暗(可以使用数值-1表示)。这样AER数据中包括多个AER事件。
对象识别的装置接收到AER数据的处理请求时,可以向AER数据所属的AER传感器发送AER数据的获取请求。AER传感器接收到对象识别的装置发送的AER数据的获取请求后,可以向对象识别的装置发送AER数据。这样对象识别的装置可以从AER传感器获取到AER数据。
另外,AER传感器中配置有AER数据的上传周期,每到上传周期,AER传感器向对象识别的装置发送上次上传至此次上传这段时间采集到的AER数据。对象识别的装置可以接收AER传感器发送的AER数据。这样对象识别的装置也可以从AER传感器获取到AER数据。
另外,AER传感器每当采集到AER数据时,向对象识别的装置发送采集到的AER数据。这样,对象识别的装置也可以从AER传感器获取到AER数据。
需要说明的是,本申请中获取的是一段时间的AER数据,对这一段时间的AER数据中的待识别对象进行识别,如一段时间为1分钟等。待识别对象指AER数据中未确定类别或者动作的物体。
步骤602,对象识别的装置提取AER数据的多个特征图。
其中,每个特征图包含待识别对象的部分空间信息和部分时间信息,部分空间信息和部分时间信息是根据每个AER事件的时间戳和地址信息获得的。AER数据对应有多个特征图,每个特征图包含待识别对象的部分空间信息和部分时间信息。空间信息用于指示待识别对象的空间特征,时间信息用于指示待识别对象的时间特征。
对象识别的装置在提取待识别对象的部分空间信息时,可以使用卷积操作进行提取。对象识别的装置在提取时间信息时,可以使用空间信息随时间衰减的方式进行提取,使得空间信息受到AER事件的时间戳的影响。
具体处理时,对象识别的装置可以使用多个滤波器(这多个滤波器两两均不相同,在滤波器是Gabor滤波器时,多个滤波器可以是多组尺度和方向下的滤波器)对AER数据中的多个AER事件的地址信息进行处理,得到多个第一特征图,多个第一特征图的大小相同。对于任一第一特征图,对象识别的装置可以按照多个AER事件的时间戳对该第一特征图中的特征值进行衰减处理,得到该第一特征图对应的特征图(第一特征图与特征图的大小相同,大小指包含特征值的数目,第一特征图与特征图的区别仅是特征值进行了衰减),第一特征图仅包括了待识别对象的部分空间信息,特征图中包括待识别对象的部分空间信息和部分时间信息。由于有多个第一特征图,所以可以得到AER数据的多个特征图。步骤602的技术细节在后文进行具体描述。
步骤603,对象识别的装置根据AER数据的多个特征图,对待识别对象进行识别。对象识别装置可以使用识别模型(如SNN等)对待识别对象进行识别。步骤603的技术细节在后文进行具体描述。
本申请实施例中,在执行上述步骤602至步骤603的处理的过程的结构图如图7所示。结构图中包括S1层、C1层、编码层和识别层,假设本申请实施例中有16组尺度s和方向θ的滤波器,那么S1层可以基于AER数据输出16个特征图,且每个特征图的大小相同,均可以等于AER传感器的像素的数目。在图7中水平方向叠在一起的特征图是同一方向θ,不同尺度s的特征图(即同一方向θ的不同滤波器处理后的特征图),S1层竖直方向从上到下为方向θ为0度、45度、90度和135度的特征图。C1层仅是对S1层输出的特征图进行降维处理,所以特征图的数目未发生改变。编码层用于对C1层输出的特征图进行时间编码和空间编码处理,得到脉冲序列。识别层用于基于脉冲序列对AER数据中的待识别对象进行识别处理。
S1层用于实现步骤602,C1层、编码层和识别层用于实现步骤603。以下分别具体说明每一层的处理:
在实现上述步骤602时使用S1层,在S1层中,对象识别的装置将AER数据中的每个AER事件与滤波器进行卷积计算(本申请实施例以滤波器为Gabor滤波器为例进行说明),具体过程为:
对于任一组尺度s和方向θ的Gabor滤波器(可以简称为任一Gabor滤波器),对象识别的装置每次获取到一个AER事件的地址信息,可以将该Gabor滤波器对应的卷积核覆盖到特征图中该AER事件所属的像素对应的感受野中(此处理可以称为是卷积处理),从而更新特征图。将多个AER事件进行卷积处理,可以得到该Gabor滤波器对应的第一特征图。此外为了有效的提取AER数据的时间信息,对象识别的装置可以使用多个AER事件的时间戳,衰减该Gabor滤波器对应的第一特征图中的特征值,提取到包含待识别对象的部分空间信息和部分时间信息的特征图,也即衰减较早的AER事件对当前时刻的特征图中特征值的影响,从而有效的提取AER数据的时间信息。具体处理是,对于第一特征图中任一位置,确定感受野覆盖在该位置上的AER事件,然后使用这些AER事件的时间戳衰减该位置的特征值,使距离当前时刻时间越长的AER事件对当前时刻的特征图中特征值的影响越小,使距离当前时刻时间越短的AER事件对当前时刻的特征图中特征值的影响越大。
对象识别的装置可以对多个AER事件的地址信息进,使用每组尺度s和方向θ的Gabor滤波器进行卷积处理,那么会得到多个第一特征图,对多个第一特征图中的特征值分别进行衰减,得到AER数据的多个特征图。
需要说明的是,第一特征图中特征值的数目可以与AER传感器中像素的数目相同,且第一特征图中每一行的特征值的数目与AER传感器中每一行像素的数目相同。
具体的,也可以是使用一个公式直接将待识别对象的空间信息和时间信息相结合,如下所示:
其中,在式(2)中,r(x,y,t,s,θ)指尺度为s,方向为θ的Gabor滤波器对应的特征图在t时刻位置(x,y)上的特征值。Δx=x-ex,Δy=y-ey,E(t)表示在t时刻之前(包括t时刻),所有AER事件组成的AER事件集合。e表示一个特定的AER事件。(ex,ey)表示AER事件e所属像素的位置,也可以称为是AER事件e在特征图中所属的位置。(x-ex)为特征图中位置(x,y)中x与AER事件e的ex在X方向上的偏移,(y-ey)为特征图中位置(x,y)中y与AER事件e的ey在Y方向上的偏移。
在式(2)中,G(Δx,Δy,s,θ)的表达式如式(1)所示,表示在尺度为s,方向为θ的Gabor滤波器时,AER事件e在特征图中位置(x,y)处的取值。该取值为卷积核的中心位置与位置(ex,ey)重合时,卷积核对应覆盖在特征图中位置(x,y)处的取值。
在式(2)中为衰减函数,表示衰减程度,与AER事件的时间戳有关系。et表示AER事件的时间戳,t为当前时刻。t-et越小,说明时间戳为et的AER事件距离当前时刻越短,的取值越大,反之t-et越大,说明时间戳为et的AER事件距离当前时刻越长,的取值越小。Tleak为预设的参数,是一个常数。
在式(2)中,x∈X(ex),y∈Y(ey)。若x∈X(ex),y∈Y(ey),则说明位置(x,y)在位置为(ex,ey)的AER事件的感受野中。若y∈Y(ey),则说明位置(x,y)不在位置为(ex,ey)的AER事件的感受野中。若x∈X(ex),则说明位置(x,y)不在位置为(ex,ey)的AER事件的感受野中。
具体(x,y)位置的特征值r(x,y,t,s,θ)是(x,y)位置上的所有AER事件对应的特征值与衰减函数的乘积之和。此处位置(x,y)上的所有AER事件指感受野覆盖位置(x,y)的AER事件。具体可以包括两类,一类为AER事件所属的像素的位置也为(x,y)的AER事件,另一类为AER事件所属的像素的位置不是(x,y)位置,但是感受野覆盖(x,y)位置。
例如,卷积核为3*3的卷积核,第一行从左向右为a11、a12、a13;第二行从左向右为a21、a22、a23;第三行从左向右为a31、a32、a33。特征图中位置(x,y)为(3,3),t时刻之前(包括t时刻)位置(ex,ey)为(3,3)的AER事件有两个,100ms处AER事件1和200ms处AER事件2。那么首先对象识别的装置将卷积核的a22乘以AER事件1对应的得到第一数值,并将卷积核的a22乘以AER事件2对应的得到第二数值。位置(3,3)处,t时刻之前(包括t时刻)位置(ex,ey)不是(3,3),但是感受野覆盖位置(3,3)的AER事件有两个,150ms、位置为(2,2)的AER事件3和210ms、位置为(4,4)的AER事件4。对象识别的装置确定AER事件3在位置(3,3)处时,对应的卷积核的数值为a33,将a33与相乘得到第三数值。并且对象识别的装置确定AER事件4在位置(3,3)处时,对应的卷积核的数值为a11,将a11与相乘得到第四数值。然后对象识别的装置将第一数值、第二数值、第三数值、第四数值相加,得到第五数值,第五数值即为特征图中位置(3,3)在t时刻的特征值。此处仅是为了描述清楚式(2)的计算过程,在计算机处理时,也可以按照其他方式进行计算。
另外,从式(2)中可以得出r(x,y,t,s,θ)由两部分相乘得到,一部分用于反映空间信息,即G(Δx,Δy,s,θ),另一部分用于反映时间信息,即由于使用衰减较早的AER事件对当前时刻的特征值的影响,特征图中既包括空间信息,也包括时间信息。
上述是针对一组尺度s和方向θ下的Gabor滤波器,确定该组尺度s和方向θ的Gabor滤波器对应的特征图,对于任意一组尺度s和方向θ的Gabor滤波器对应的特征图,对象识别的装置均可以使用上述式(2)确定。
例如,如图8所示,假设AER传感器包括6*6个像素,尺度s为3,方向θ为45度时,步骤602输出的特征图为6*6,在没有任何AER事件输入时,特征图中每个位置的值均为0,在100ms位置(4,4)产生AER事件,将尺度s为3,方向θ为45度的Gabor滤波器的卷积核覆盖到特征图的(4,4)位置的AER事件的感受野上。而随着时间的推移到达200ms时,特征图中的特征值相比于100ms有一定的衰减。
综上可见,随着时间的推移,特征图中的每个像素对应的特征值都朝着静止电位减少,或增加。需要说明的是,静止电位一般为0,朝着静止电位减少的情况是:大于0的特征值都会朝着静止电位0减少,如从1变为0.5。朝着静止电位增加的情况是:小于0的特征值都会朝着静止电位0增加,如从-1变为-0.5。
需要说明的是,上述式(2)中的t指的是AER数据中时间。例如,AER数据的第5秒,AER数据的第10秒等。另外,上述衰减方式是按照指数的方式进行衰减,同样,也可以使用其他方式衰减,只要能达到空间信息随时间的推移进行衰减即可,本申请实施例不作限定。本申请实施例中可以使用16组尺度s和方向θ,他们的取值如表一所示。
表一
尺度s | 3 | 5 | 7 | 9 |
方向θ | 0度 | 45度 | 90度 | 135度 |
在表一中,由于尺度有4个数值,方向θ有4个数值,所以尺度s和方向θ的组合为16种,即有16个Gabor滤波器。这样,每组尺度s和方向θ都对应一个特征图,所以本申请实施例中S1层可以输出16个特征图。
另外,在本申请实施例中,γ取值可以为0.3。在尺度s取值为3时,σ取值为1.2,λ取值为1.5;在尺度s取值为5时,σ取值为2.0,λ取值为2.5;在尺度s取值为9时,σ取值为3.6,λ取值为4.6;在尺度s取值为7时,σ取值为2.8,λ取值为3.5。
在实现上述步骤603时使用C1层,在C1层中,对象识别的装置将S1层输出的每个特征图分为相邻2*2的区域。对于每个特征图,对象识别的装置选取该特征图中每个2*2的区域中的最大值,得到该特征图对应的新特征图。可见,C1层仅会改变特征图的维度,而不会改变特征图的数目。例如,S1层输出的特征图为16个,每个的大小为128*128,得到新特征图为16个,每个的大小为64*64。C1层的处理可以称为是池化操作。
这样,通过C1层的处理,可以降低特征图的维度,进而可以降低后续编码层和识别层的处理量。另外,若S1层输出的特征图的维度比较小,且对象识别的装置的处理能力比较强,可以不进行C1层的处理。
在实现上述步骤603时使用编码层,编码层用于对AER数据的多个特征图进行编码处理,具体处理时对象识别的装置将AER数据的特征图,编码成脉冲序列。对于任意一组尺度s和方向θ下的Gabor滤波器得到的特征图,在被编码时,对象识别的装置进行时间编码和空间编码。时间编码可以用于将特征图中的各特征值按照目标编码函数进行时序编码处理,得到特征图各特征值的脉冲的触发时刻,目标编码函数可以是反向的线性函数或者反向的对数函数。空间编码用于将脉冲的触发时刻组成脉冲序列。
需要说明的是,上述进行时间编码时,特征图中特征值较大的特征被认为更容易产生脉冲,对应最小延迟时间,会先触发脉冲,而特征图中特征值较小的特征会比较晚触发脉冲甚至不触发脉冲。所以基于该原则,目标编码函数为反向的对数函数或者反向的线性函数。反向的对数函数可以是u-vln(r)(在后文会进行描述)。反向的线性函数可以是kr+b(k为小于0的数值)。而且由于反向的对数函数或者反向的线性函数改变了特征图中特征值的分布,使得特征值能够在后续的识别层中表达更多的信息,所以可以提高识别的准确率。
以下分别描述时间编码和空间编码:
时间编码:对于任一特征图A,本申请实施例以目标编码函数为反向的对数函数为例说明时间编码,函数表达式可以为:
t=C(r)=u-vln(r)(3)
其中,在式(3)中,r为任一位置的特征值,t为特征值为r的脉冲的触发时刻。u和v是归一化因子,用于确保一个特征图中所有特征值对应的脉冲在预定的时间窗口tw中激发,例如,tw为120ms。C()表示目标编码函数。
u和v可以使用如下方式确定:
其中,对于特征图A,rmax为该特征图A中最大的特征值,rmin为预先定义的最小阈值。此处需要说明的是,每个特征图中rmax和rmin有可能不相同,所以在对不同的特征图进行时间编码时,需要重新确定rmax和rmin。
通过时间编码,对象识别的装置将每个特征图中的特征值,编码为脉冲的触发时刻,相当于每个特征图中各个特征值分别对应一个脉冲的触发时刻。例如,有16个特征图,每个特征图为64*64个特征值,一共会有16*64*64个脉冲的触发时刻。
另外,由于特征图中较小的特征值有可能不会触发脉冲,所以对象识别的装置在进行时间编码之前,可以将特征图中特征值小于目标阈值(目标阈值为rmin)的特征值删除,以节约处理资源。相应的,在后续进行空间编码时,也不需要对小于目标阈值的特征值的脉冲的触发时刻进行统计,所以也可以节约处理资源。
空间编码,对象识别的装置在进行空间编码时,对象识别的装置可以融合某些特征值以更有效的利用神经元,形成紧凑的表示,以减少后续识别层的计算量。具体可以是将C1层输出的特征图中,具有相同位置,且设定方向的所有尺度s的特征值组成一组特征值(设定方向指多个方向θ中的一个固定方向,在本申请实施例中,设定方向可以为0度、45度、90度或135度中的任一个)。例如,在C1层输出16个特征图,16个特征图可以分为4个方向的特征图,每个方向的特征图为4个特征图(即4个尺度的特征图),在设定方向为0度的4个特征图中位置(m,n)处的值分别为3、4、5、5,设定方向为0度相同位置(2,2)处的一组特征值为(3,4,5,5)。
然后对象识别的装置将设定方向为0度的特征图中相同位置(如相同位置均为(2,2))的特征值组成一组,即得到设定方向为0度位置为(2,2)的4个特征值组成的一组特征值。然后获取每组特征值对应的脉冲的触发时刻,这样,每组特征值对应的脉冲的触发时刻组成一个脉冲序列。由于有多组特征值,所以可以得到多个脉冲序列。
在本申请实施例中,编码层可以包括多个编码神经元,每个编码神经元负责同一位置设定方向的多个尺度s的特征图的转换。编码神经元的数目可以为N*P*M(N和P可以相等,也可以不相等),其中N*P为特征图(C1层输出的特征图)的尺寸,M为方向θ的数目。
经过上述分析,将空间编码和时间编码结合,上述式(3)可以表示为:
tspike=C(r|x,y,s,θ)=u-vln(r) (5)
其中,r∈{r|rx=x,ry=y,rs∈S,rθ=θ},rs表示特征值r的尺度,S表示尺度s的集合,rθ表示特征值r的方向,rx和ry表示特征值r在特征图中的位置。式(5)的函数表明位置为(x,y)、方向为θ所有尺度的脉冲的触发时刻生成的tspike集合。
这样,对于特征图的每个位置,均可以得到4个方向所有尺度(即4个方向的Gabor滤波器)的脉冲的触发时刻。例如,特征图的大小是64*64,方向有四个数值(0度、45度、90度和135度),尺度s也有四个数值(3、5、7、9),特征图有16个。对于特征图中的每个位置,有四个方向分别对应的脉冲序列,每个方向对应的脉冲序列中包括4个尺度对应的脉冲的触发时刻,那么一共有64*64*4个脉冲序列。
这样,脉冲序列中的脉冲的触发时刻是基于特征图中的特征值得到,由于每个特征值反映待识别对象的部分空间信息和部分时间信息,所以脉冲序列中的脉冲也携带有待识别对象的部分空间信息和部分时间信息。
需要说明的是,由于在编码层将不同尺度的脉冲进行融合,所以可以在保持准确率的情况下,也可以减少后续识别层中参数的数目,非常适用于资源受限制的神经拟态设备中。
在实现上述步骤603时还使用识别层,识别层用于接收编码层输出的脉冲序列,对AER数据中的待识别对象进行识别。识别层可以通过SNN实现,SNN是一层全连接的网络结构组成。SNN中包括的神经元(即后续提到的识别神经元)的数目等于N*P*M(N和P可以相等,也可以不相等),其中N*P为特征图(C1层输出的特征图)的尺寸,M为方向θ的数目。
对象识别的装置在得到编码层的输出后,可以将每个脉冲序列输入到识别层中的每个识别神经元中。通过识别层的识别处理,可以得到AER数据中的对象。
另外,本申请实施例中,还提供了训练SNN的方法,处理可以为:
训练SNN的方法可以包括监督学习算法和无监督学习算法。监督学习算法可以为Multi—Spike Prop算法等。非监督学习算法可以为STDP算法等。本申请以STDP算法为例进行SNN的训练,根据突触前神经元和突触后神经元发放的脉冲序列的相对时序关系,应用STDP算法学习规则可以对突触权值进行无监督式的调整。训练过程可以如下:
步骤a,获取样本集,样本集中包括AER数据,AER数据中包括多个AER事件。
步骤b,将多个AER事件经过前述特征提取,得到特征图。
步骤c,将特征图经过编码神经元编码后,得到脉冲序列(按照前述方式进行)。
步骤d,将脉冲序列输入至识别层,刺激识别神经元发放脉冲。STDP算法根据编码神经元和识别神经元脉冲发放的时间间隔调整突触权重,如果编码神经元脉冲先于识别神经元脉冲,则增大权重,反之则减小权重。同时识别神经元采用动态阈值,即如果该识别神经元经常容易触发脉冲,则增加其阈值。识别神经元之间相互连接,起到互相抑制的作用。
步骤e,执行步骤b至步骤d目标次数(目标次数可以为5-10次)后,结束训练。将学习率设置为零,确定步骤d最后一次执行时每个识别神经元的阈值和每个突触的权重。根据识别神经元对样本集中样本类别的最高响应,为每个识别神经元分配一个类别(这是使用标签的唯一步骤)。
后续在使用过程中,可以通过被分配好类别的每个识别神经元的响应,选择具有最高激发速率的类别,来作为预测结果。
本申请实施例中,对象识别的装置可以获取待识别对象的AER数据,AER数据包括待识别对象的多个AER事件,每个AER事件包括产生AER事件的时间戳和地址信息,然后提取AER数据的多个特征图,每个特征图包含待识别对象的部分空间信息和部分时间信息,部分空间信息和部分时间信息是根据每个AER事件的时间戳和地址信息获得的。最后根据AER数据的多个特征图,对待识别对象进行识别处理。这样,由于AER数据中待识别对象的时间信息和空间信息都包含在提取的特征图中,所以可以使特征图能够更全面的代表原始数据,进而在进行识别时,可以使识别结果更准确。
而且本申请实施例中使用了脉冲编码方式,不仅可以在后续识别模型中表达更多的信息,提高识别的准确率,而且由于将不同尺度的脉冲进行融合,可以在保持准确率的基础上减少了识别神经元的数目,进而节省了计算资源。
图9是本申请实施例提供的对象识别的装置的结构图。该装置可以通过软件、硬件或者两者的结合实现成为装置中的部分或者全部。本申请实施例提供的装置可以实现本申请实施例图6所述的流程,该装置包括:获取模块910、提取模块920和识别模块930,其中:
获取模块910,用于获取待识别对象的地址事件表示AER数据,所述AER数据包括所述待识别对象的多个AER事件,每个AER事件包括产生所述AER事件的时间戳和地址信息,具体可以用于执行实现步骤601的获取功能;
提取模块920,用于提取所述AER数据的多个特征图,其中,每个特征图包含所述待识别对象的部分空间信息和部分时间信息,所述部分空间信息和部分时间信息是根据所述每个AER事件的时间戳和地址信息获得的,具体可以用于执行实现步骤602的提取功能,以及步骤602包含的隐含步骤;
识别模块930,用于根据所述AER数据的多个特征图,对所述待识别对象进行识别,具体可以用于执行实现步骤603的识别功能,以及步骤603包含的隐含步骤。
在一种可能的实施方式中,所述提取模块920,用于:
采用多个滤波器对所述多个AER事件的地址信息进行处理,得到多个第一特征图;
按照所述多个AER事件的时间戳对所述多个第一特征图中的特征值进行衰减处理,得到所述AER数据的多个特征图。
在一种可能的实施方式中,所述提取模块920,用于:
采用多个Gabor滤波器的卷积核对所述多个AER事件的空间信息进行卷积处理,得到多个第一特征图。
在一种可能的实施方式中,所述识别模块930,用于:
对所述AER数据的多个特征图进行编码以获得多个脉冲序列,其中,每个脉冲序列包括多个脉冲,每个脉冲携带有所述待识别对象的部分时间信息和部分空间信息,属于同一个脉冲序列中的多个脉冲是根据具有相同设定方向上的不同滤波器对应的特征图中,具有相同位置的特征值获得的;
采用脉冲神经网络对所述多个脉冲序列进行处理,以对所述待识别对象进行识别。
在一种可能的实施方式中,所述识别模块930,用于:
采用目标编码函数对所述AER数据的多个特征图进行编码,以获得多个脉冲序列,所述目标编码函数为反向的线性函数或者反向的对数函数。
本申请实施例中,对象识别的装置可以获取待识别对象的AER数据,AER数据包括待识别对象的多个AER事件,每个AER事件包括产生AER事件的时间戳和地址信息,然后提取AER数据的多个特征图,每个特征图包含待识别对象的部分空间信息和部分时间信息,部分空间信息和部分时间信息是根据每个AER事件的时间戳和地址信息获得的。最后根据AER数据的多个特征图,对待识别对象进行识别处理。这样,由于AER数据中待识别对象的时间信息和空间信息都包含在提取的特征图中,所以可以使特征图能够更全面的代表原始数据,进而在进行识别时,可以使识别结果更准确。
而且本申请实施例中使用了脉冲编码方式,不仅可以在后续识别模型中表达更多的信息,提高识别的准确率,而且由于将不同尺度的脉冲进行融合,可以在保持准确率的基础上减少了识别神经元的数目,进而节省了计算资源。
需要说明的是:上述实施例提供的对象识别的装置在对象识别时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的对象识别的装置与对象识别的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
本实施例中,还提供了一种对象识别的计算设备,该计算设备包括处理器和存储器,所述存储器用于存储一个或多个指令,所述处理器通过执行所述一个或多个指令来实现上述所提供的对象识别的方法置。
本实施例中,还提供了一种计算机可读存储介质,计算机可读存储介质存储有指令,当计算机可读存储介质中的指令在计算设备上被执行时,使得计算设备执行上述所提供的对象识别的方法。
本实施例中,还提供了一种包含指令的计算机程序产品,当其在计算设备上运行时,使得计算设备执行上述所提供的对象识别的方法,或者使得所述计算设备实现上述提供的对象识别的装置的功能。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现,当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令,在服务器或终端上加载和执行所述计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴光缆、光纤、数字用户线)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是服务器或终端能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(如软盘、硬盘和磁带等),也可以是光介质(如数字视盘(Digital Video Disk,DVD)等),或者半导体介质(如固态硬盘等)。
可以理解的是,以上所描述的装置实施例仅仅是示意性的,例如,所述模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如,多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,上述实施例所讨论的模块相互之间的连接可以是电性、机械或其他形式。所述作为分离部件说明的模块可以是物理上分开的,也可以不是物理上分开的。作为模块显示的部件可以是物理模块或者也可以不是物理模块。另外,在申请实施例各个实施例中的各功能模块可以独立存在,也可以集成在一个处理模块中。
需要说明的是,本申请所提供的实施例仅仅是示意性的。所属领域的技术人员可以清楚的了解到,为了描述的方便和简洁,在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。在本发明实施例、权利要求以及附图中揭示的特征可以独立存在也可以组合存在。在本发明实施例中以硬件形式描述的特征可以通过软件来执行,反之亦然。在此不做限定。
Claims (12)
1.一种对象识别的方法,其特征在于,所述方法包括:
获取待识别对象的地址事件表示AER数据,所述AER数据包括所述待识别对象的多个AER事件,每个AER事件包括产生所述AER事件的时间戳和地址信息;
提取所述AER数据的多个特征图,其中,每个特征图包含所述待识别对象的部分空间信息和部分时间信息,所述部分空间信息和部分时间信息是根据所述每个AER事件的时间戳和地址信息获得的;
根据所述AER数据的多个特征图,对所述待识别对象进行识别。
2.根据权利要求1所述的方法,其特征在于,所述提取所述AER数据的多个特征图,包括:
采用多个滤波器对所述多个AER事件的地址信息进行处理,得到多个第一特征图;
按照所述多个AER事件的时间戳对所述多个第一特征图中的特征值进行衰减处理,得到所述AER数据的多个特征图。
3.根据权利要求2所述的方法,其特征在于,所述采用多个滤波器对所述多个AER事件的地址信息进行处理,得到多个第一特征图,包括:
采用多个Gabor滤波器的卷积核对所述多个AER事件的空间信息进行卷积处理,得到所述多个第一特征图。
4.根据权利要求2或3所述的方法,其特征在于,所述根据所述AER数据的多个特征图,对所述待识别对象进行识别,包括:
对所述AER数据的多个特征图进行编码以获得多个脉冲序列,其中,每个脉冲序列包括多个脉冲,每个脉冲携带有所述待识别对象的部分时间信息和部分空间信息,属于同一个脉冲序列中的多个脉冲是根据具有相同设定方向上的不同滤波器对应的特征图中,具有相同位置的特征值获得的;
采用脉冲神经网络对所述多个脉冲序列进行处理,以对所述待识别对象进行识别。
5.根据权利要求4所述的方法,其特征在于,所述对所述AER数据的多个特征图进行编码以获得多个脉冲序列,包括:
采用目标编码函数对所述AER数据的多个特征图进行编码,以获得多个脉冲序列,所述目标编码函数为反向的线性函数或者反向的对数函数。
6.一种对象识别的装置,其特征在于,所述装置包括:
获取模块,用于获取待识别对象的地址事件表示AER数据,所述AER数据包括所述待识别对象的多个AER事件,每个AER事件包括产生所述AER事件的时间戳和地址信息;
提取模块,用于提取所述AER数据的多个特征图,其中,每个特征图包含所述待识别对象的部分空间信息和部分时间信息,所述部分空间信息和部分时间信息是根据所述每个AER事件的时间戳和地址信息获得的;
识别模块,用于根据所述AER数据的多个特征图,对所述待识别对象进行识别。
7.根据权利要求6所述的装置,其特征在于,所述提取模块,用于:
采用多个滤波器对所述多个AER事件的地址信息进行处理,得到多个第一特征图;
按照所述多个AER事件的时间戳对所述多个第一特征图中的特征值进行衰减处理,得到所述AER数据的多个特征图。
8.根据权利要求7所述的装置,其特征在于,所述提取模块,用于:
采用多个Gabor滤波器的卷积核对所述多个AER事件的空间信息进行卷积处理,得到多个第一特征图。
9.根据权利要求7或8所述的装置,其特征在于,所述识别模块,用于:
对所述AER数据的多个特征图进行编码以获得多个脉冲序列,其中,每个脉冲序列包括多个脉冲,每个脉冲携带有所述待识别对象的部分时间信息和部分空间信息,属于同一个脉冲序列的多个脉冲是根据具有相同设定方向上的不同滤波器对应的特征图中,具有相同位置的特征值获得的;
采用脉冲神经网络对所述多个脉冲序列进行处理,以对所述待识别对象进行识别。
10.根据权利要求9所述的装置,其特征在于,所述识别模块,用于:
采用目标编码函数对所述AER数据的多个特征图进行编码,以获得多个脉冲序列,所述目标编码函数为反向的线性函数或者反向的对数函数。
11.一种对象识别的计算设备,其特征在于,所述计算设备包括:
通信接口,用于接收待识别对象的地址事件表示AER数据;
处理器,与所述通信接口连接并用于执行如权利要求1-5中任一权利要求所述的方法。
12.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有指令,当所述计算机可读存储介质中的指令被计算设备执行时,使得所述计算设备执行所述权利要求1-5中任一权利要求所述的方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910818551.1A CN112446387A (zh) | 2019-08-30 | 2019-08-30 | 对象识别方法及装置 |
EP20858856.6A EP4016385A4 (en) | 2019-08-30 | 2020-08-27 | OBJECT IDENTIFICATION METHOD AND APPARATUS |
PCT/CN2020/111650 WO2021037125A1 (zh) | 2019-08-30 | 2020-08-27 | 对象识别方法及装置 |
US17/680,668 US20220180619A1 (en) | 2019-08-30 | 2022-02-25 | Object recognition method and apparatus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910818551.1A CN112446387A (zh) | 2019-08-30 | 2019-08-30 | 对象识别方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN112446387A true CN112446387A (zh) | 2021-03-05 |
Family
ID=74685584
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910818551.1A Pending CN112446387A (zh) | 2019-08-30 | 2019-08-30 | 对象识别方法及装置 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20220180619A1 (zh) |
EP (1) | EP4016385A4 (zh) |
CN (1) | CN112446387A (zh) |
WO (1) | WO2021037125A1 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114611686B (zh) * | 2022-05-12 | 2022-08-30 | 之江实验室 | 基于可编程神经拟态核的突触延时实现系统及方法 |
CN115909329B (zh) * | 2023-01-10 | 2023-05-26 | 深圳前海量子云码科技有限公司 | 一种微观目标识别方法、装置、电子设备和存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105469039A (zh) * | 2015-11-19 | 2016-04-06 | 天津大学 | 基于aer图像传感器的目标识别系统 |
CN105721772A (zh) * | 2016-01-20 | 2016-06-29 | 天津师范大学 | 一种异步时域视觉信息成像方法 |
CN106407990A (zh) * | 2016-09-10 | 2017-02-15 | 天津大学 | 基于事件驱动的仿生目标识别系统 |
CN106446937A (zh) * | 2016-09-08 | 2017-02-22 | 天津大学 | 用于aer图像传感器的多层卷积识别系统 |
US20180357504A1 (en) * | 2017-06-13 | 2018-12-13 | Samsung Electronics Co., Ltd. | Event-based image feature extraction |
-
2019
- 2019-08-30 CN CN201910818551.1A patent/CN112446387A/zh active Pending
-
2020
- 2020-08-27 EP EP20858856.6A patent/EP4016385A4/en active Pending
- 2020-08-27 WO PCT/CN2020/111650 patent/WO2021037125A1/zh unknown
-
2022
- 2022-02-25 US US17/680,668 patent/US20220180619A1/en active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105469039A (zh) * | 2015-11-19 | 2016-04-06 | 天津大学 | 基于aer图像传感器的目标识别系统 |
CN105721772A (zh) * | 2016-01-20 | 2016-06-29 | 天津师范大学 | 一种异步时域视觉信息成像方法 |
CN106446937A (zh) * | 2016-09-08 | 2017-02-22 | 天津大学 | 用于aer图像传感器的多层卷积识别系统 |
CN106407990A (zh) * | 2016-09-10 | 2017-02-15 | 天津大学 | 基于事件驱动的仿生目标识别系统 |
US20180357504A1 (en) * | 2017-06-13 | 2018-12-13 | Samsung Electronics Co., Ltd. | Event-based image feature extraction |
Also Published As
Publication number | Publication date |
---|---|
US20220180619A1 (en) | 2022-06-09 |
WO2021037125A1 (zh) | 2021-03-04 |
EP4016385A4 (en) | 2022-10-26 |
EP4016385A1 (en) | 2022-06-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Baldwin et al. | Time-ordered recent event (TORE) volumes for event cameras | |
CN107403154B (zh) | 一种基于动态视觉传感器的步态识别方法 | |
CN109978893A (zh) | 图像语义分割网络的训练方法、装置、设备及存储介质 | |
EP3500979A1 (en) | Computer device for training a deep neural network | |
CN111339813B (zh) | 人脸属性识别方法、装置、电子设备和存储介质 | |
CN112183166A (zh) | 确定训练样本的方法、装置和电子设备 | |
US20220180619A1 (en) | Object recognition method and apparatus | |
CN107704924B (zh) | 同步自适应时空特征表达学习模型的构建方法及相关方法 | |
Pavel et al. | Recurrent convolutional neural networks for object-class segmentation of RGB-D video | |
CN112036381B (zh) | 视觉跟踪方法、视频监控方法及终端设备 | |
Iyer et al. | Unsupervised learning of event-based image recordings using spike-timing-dependent plasticity | |
CN112597980A (zh) | 一种面向动态视觉传感器的类脑手势序列识别方法 | |
CN114091554A (zh) | 一种训练集处理方法和装置 | |
WO2022132407A1 (en) | Event camera based navigation control | |
CN114359787A (zh) | 目标属性识别方法、装置、计算机设备及存储介质 | |
Machado et al. | HSMD: An object motion detection algorithm using a Hybrid Spiking Neural Network Architecture | |
CN111507396B (zh) | 缓解神经网络对未知类样本产生错误分类的方法及装置 | |
CN113221605A (zh) | 对象识别的方法、装置及计算机可读存储介质 | |
CN109558771B (zh) | 海上船舶的行为状态识别方法、装置、设备及存储介质 | |
CN115063714A (zh) | 一种基于改进YOLOv5s网络的防鸟撞事故目标检测方法 | |
O'Gorman et al. | Balancing video analytics processing and bandwidth for edge-cloud networks | |
CN115035608A (zh) | 活体检测方法、装置、设备及系统 | |
Shen et al. | Modeling Drosophila vision neural pathways to detect weak moving targets from cluttered backgrounds | |
Aji et al. | Oil palm unstripped bunch detector using modified faster regional convolutional neural network | |
CN113256556A (zh) | 一种图像选择方法及装置 |
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 |