CN114495178A - 脉冲序列随机化方法、装置、类脑芯片和电子设备 - Google Patents
脉冲序列随机化方法、装置、类脑芯片和电子设备 Download PDFInfo
- Publication number
- CN114495178A CN114495178A CN202210387836.6A CN202210387836A CN114495178A CN 114495178 A CN114495178 A CN 114495178A CN 202210387836 A CN202210387836 A CN 202210387836A CN 114495178 A CN114495178 A CN 114495178A
- Authority
- CN
- China
- Prior art keywords
- pulse
- difference frame
- pixel
- random number
- pulse sequence
- 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
Images
Classifications
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Data Mining & Analysis (AREA)
- General Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Artificial Intelligence (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Image Processing (AREA)
Abstract
本发明涉及一种脉冲序列随机化方法、装置、类脑芯片和电子设备。为了将帧图像传感器输出的图像,或传感器采集的环境信号转换成适合脉冲神经网络处理器处理的随机化的目标脉冲序列,本发明通过存储脉冲事件地址、脉冲事件数量,以及根据随机数生成模块来读取对应的脉冲事件地址或脉冲事件数量,由此生成对应的脉冲事件构成的目标脉冲序列。本发明具有低硬件资源消耗、随机化效果好、轮廓增强和抑制背景噪声的技术效果,为生成具有生物特性的脉冲序列提供了一种新的技术路径。本发明适用于类脑芯片领域。
Description
技术领域
本发明涉及一种脉冲序列随机化方法、装置、类脑芯片和电子设备,并具体涉及一种将图像转换为随机的脉冲序列的方法、装置、类脑芯片和电子设备。
背景技术
动态视觉传感器(Dynamic Vision Sensor, DVS)是一种部署有独立感光像素阵列的新型传感器,在像素感受到光强变化后独立地、异步地向后一级系统(比如类脑芯片)发送脉冲事件。因为具有超高时间分辨率因而备受关注,但是目前其信噪比、暗光感测能力、一致性、可测性与实际应用需求还有一定差距。
传统的基于帧(frame)的图像传感器(比如CMOS传感器、CCD传感器等,简称帧图像传感器)是较为成熟的图像捕捉设备,其信噪比高,但并不能生成脉冲事件,只能以帧为单位连续生成多张图像。
通过帧图像传感器生成符合脉冲神经网络(Spiking Neural Network,SNN)处理器(也称类脑芯片)需求的脉冲序列(理想地,为符合泊松分布的随机脉冲序列),是DVS传感器的一种替代方案。更为有利的是,该替代方案可以直接集成在具有帧图像传感器的电子设备中,直接使用已有设备。
现有技术1:CN111898737A;
现有技术2:CN111860786A;
现有技术3:EP3789909A1。
现有技术1-2给出了将数值/图像转换为脉冲序列的方案,其核心在于对于具体某个像素值生成初始脉冲序列后随即交换或更改一定数量的脉冲来获得目标脉冲序列。但是其缺点是随机交换或更改的脉冲数量一定是有限次,难以保证随机化的效果,尤其当时间步较长时;硬件实现的代价相对较高;此外其并未提及差帧方式获得轮廓信息,而是仅针对普通的帧图像的每个像素值进行随机脉冲序列转换,而这种方式获得的脉冲序列在脉冲神经网络中的识别准确度极低。
现有技术3则给出了基于差帧的感兴趣区域提取方案,但并未给出脉冲序列随机化的方案。
基于此,本发明提出一种脉冲序列随机化的方法、装置、类脑芯片和电子设备。
发明内容
为了解决或缓解上述部分或全部技术问题,本发明是通过如下技术方案实现的:
一种脉冲序列随机化方法,其包括如下步骤:获取帧图像之间的差帧像素值;根据差帧像素值,计算该差帧像素值对应的脉冲事件数量;该脉冲序列随机化方法至少还包括如下步骤之一:i)在数量与所述脉冲事件数量相同的存储单元中均存储所述差帧像素值对应的像素坐标;根据当前获取的随机数,读取对应该随机数的存储单元中所存储的像素坐标;至少根据所读取的像素坐标信息,生成目标脉冲序列中的脉冲事件;ii)将所述脉冲事件数量存储至与所述差帧像素值的像素坐标所对应的存储单元中;根据当前获取的随机数,读取对应该随机数的存储单元中所存储的脉冲事件数量;若所读取的脉冲事件数量非零,则至少根据该存储单元所对应的差帧像素值的像素坐标信息,生成目标脉冲序列中的脉冲事件。
在某类实施例中,所述差帧像素值,是相邻两帧或相隔若干(≥1)帧的帧图像之间的像素值之差,或相邻两帧图像之间的像素值之差的绝对值。
在某类实施例中,计算该差帧像素值对应的脉冲事件数量是根据如下方式之一获得的: i)根据该差帧像素值与允许单个像素所发放的最大脉冲事件数量之积,与差帧中像素的理论最大值的比值;ii)根据该差帧像素值与允许单个像素所发放的最大脉冲事件数量之积,与差帧中最大像素值的比值;iii)根据该差帧像素值与允许单个像素所发放的最大脉冲事件数量之积,与差帧中最大像素值或第一下限值中的较大者的比值。
在某类实施例中,获取帧图像之间的差帧像素值后,若该差帧像素值小于第二下限值,则将该差帧像素值置零。
在某类实施例中,存储所述差帧像素值对应的像素坐标的存储单元的数量,小于差帧像素数与允许单个像素所发放的最大脉冲事件数量之积。
在某类实施例中,通过随机数生成模块生成随机数序列,当前获取的随机数来自随机数序列;该随机数序列在一个周期内不会生成相同的随机数。
在某类实施例中,所述随机数生成模块包括至少一个基于线性反馈移位寄存器的随机数生成器;或者,该随机数序列的周期等于差帧像素数与允许单个像素所发放的最大脉冲事件数量之积,或者等于差帧像素数。
在某类实施例中,获取帧图像之间的差帧像素值后,并将其存储在差帧存储空间中;或者,获取帧图像之间的差帧像素值后,直接计算该差帧像素值对应的脉冲事件数量而不存储该差帧像素值。
在某类实施例中,根据当前获取的随机数,读取对应该随机数的存储单元中所存储的脉冲事件数量时:所述随机数来自随机数序列,该随机数序列的周期等于差帧像素数;针对每个差帧,随机数序列执行的周期数等于允许单个像素所发放的最大脉冲事件数量。
在某类实施例中,若所读取的脉冲事件数量非零,还将对应该随机数的存储单元中所存储的脉冲事件数量减一。
另一种脉冲序列随机化方法,其包括如下步骤:获取通道输出信号;根据通道输出信号,获取该通道输出信号对应的脉冲事件数量;该脉冲序列随机化方法至少还包括如下步骤之一:i)在数量与所述脉冲事件数量相同的存储单元中均存储所述通道输出信号对应的通道地址;根据当前获取的随机数,读取对应该随机数的存储单元中所存储的通道地址;至少根据所读取的通道地址信息,生成目标脉冲序列中的脉冲事件;ii)将所述脉冲事件数量存储至与所述通道输出信号的通道地址所对应的存储单元中;根据当前获取的随机数,读取对应该随机数的存储单元中所存储的脉冲事件数量;若所读取的脉冲事件数量非零,则至少根据该存储单元所对应的通道输出信号的通道地址信息,生成目标脉冲序列中的脉冲事件。
在某类实施例中,从随机数生成模块生成随机数序列中得到当前获取的随机数;该随机数序列在一个周期内不会生成相同的随机数。
在某类实施例中,该随机数序列的周期等于通道数与允许通道输出信号的单个值发送脉冲事件数量的最大值之积。该类实施例适于上述第i)种情况。
在某类实施例中,该随机数序列的周期等于通道数,并且循环次数等于允许通道输出信号的单个值发送脉冲事件数量的最大值。该类实施例适于上述第ii)种情况。
在某类实施例中,若所读取的脉冲事件数量非零,还将对应该随机数的存储单元中所存储的脉冲事件数量减一。
一种脉冲序列随机化装置,该脉冲序列随机化装置包括:差帧存储空间,以及脉冲事件地址存储空间或脉冲事件数量存储空间;或者,帧图像存储空间,以及脉冲事件数量存储空间;并且,脉冲序列随机化装置被配置为执行如前任意一项所述的脉冲序列随机化方法;
其中,差帧存储空间,用于存储差帧像素值;脉冲事件地址存储空间包括的存储单元,用于存储差帧像素值对应的像素坐标;脉冲事件数量存储空间包括的存储单元,用于存储差帧像素值对应的脉冲事件数量;帧图像存储空间包括的存储单元,用于存储从帧图像传感器获取的最新像素值。
在某类实施例中,脉冲序列随机化装置被实施为帧图像传感器接口电路。
一种类脑芯片,该类脑芯片包括如前任意一项所述的脉冲序列随机化装置,或应用如前任意一项所述的脉冲序列随机化方法。
在某类实施例中,该类脑芯片包括帧图像传感器接口电路;或者,该类脑芯片同时包括帧图像传感器接口电路和动态视觉传感器接口电路。
一种电子设备,该电子设备包括如前任意一项所述的脉冲序列随机化装置;或者,该电子设备包括如前任意一项所述的类脑芯片。
本发明的部分或全部实施例,具有如下有益技术效果:
1)将图像作为一个整体,宏观地考虑其被随机化成目标脉冲序列,针对脉冲神经网络而言是一种友好的随机化方式,不存在逐个拼接像素对应的脉冲序列而造成脉冲神经网络性能表现的显著降低缺陷;因此其随机化效果好。
2)硬件资源消耗低,转换所消耗的能量低;
3)轮廓增强,可以改善暗光、微弱抖动情况下的网络性能;
4)抑制背景噪声,降低长期待机下的功耗。
更多的有益效果将在优选实施例中作进一步的介绍。
以上披露的技术方案/特征,旨在对具体实施方式部分中所描述的技术方案、技术特征进行概括,因而记载的范围可能不完全相同。但是该部分披露的这些新的技术方案同样属于本发明文件所公开的众多技术方案的一部分,该部分披露的技术特征与后续具体实施方式部分公开的技术特征、未在说明书中明确描述的附图中的部分内容,以相互合理组合的方式披露更多的技术方案。
本发明任意位置所披露的所有技术特征所组合出的技术方案,用于支撑对技术方案的概括、专利文件的修改、技术方案的披露。
附图说明
图1是脉冲序列随机化的框架图;
图2是第一类实施例中脉冲序列随机化的示意图;
图3是第一类实施例中脉冲序列随机化的详细示意图;
图4是另一类实施例中脉冲序列随机化的示意图;
图5是另一类实施例中脉冲序列随机化的详细示意图;
图6是又一类实施例中脉冲序列随机化的示意图;
图7是片上传感器集成方案示意图;
图8是片外传感器集成方案示意图;
图9是再一类实施例中脉冲序列随机化的详细示意图;
图10是次一类实施例中脉冲序列随机化的详细示意图。
具体实施方式
由于不能穷尽描述各种替代方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案中的要点内容进行清楚、完整地描述。对于下文未详细披露的其它的技术方案和细节,一般均属于本领域通过常规手段即可实现的技术目标或技术特征,限于篇幅,本发明不对其详细介绍。
除非是除法的含义,本发明中任意位置的“/”均表示逻辑“或”。本发明任意位置中的“第一”、“第二”等序号仅仅用于描述上的区分标记,并不暗示时间或空间上的绝对顺序,也不暗示冠以这种序号的术语与冠以其它定语的相同术语必然是不同的指代。
本发明会对各种用于组合成各种不同具体实施例的要点进行描述,这些要点将被组合至各种方法、产品中。在本发明中,即便仅在介绍方法/产品方案时所描述的要点,意味着对应的产品/方法方案也明确地包括该技术特征。
本发明中任意位置处描述存在或包括某步骤、模块、特征时,并不暗示这种存在是排它性地唯一存在,本领域技术人员完全可以根据本发明所披露的技术方案而辅以其它技术手段而获得其它实施例;基于本发明中具体实施例描述的要点,本领域技术人员完全可以对某些技术特征施加替换、删减、增加、组合、调换顺序等手段,获得一个仍遵循本发明构思的技术方案。这些未脱离本发明技术构思的方案也在本发明保护范围之内。
参考图1,其是本发明中脉冲序列随机化的框架图。帧图像传感器,是以帧的形式连续输出从环境中捕获的图像信息,如每秒钟输出30、60、100帧图像至帧图像传感器的存储器中,比如常见的RGB相机。帧率以及帧图像传感器可以根据实际应用需要而灵活选择,本发明不以某种特定形式为限。
由于帧图像具有时序性,将前后相邻的一帧或多帧图像之间做差,获得该两帧图像之间的差异图像信息,即差帧(Difference of Frames, DoF)。差帧可以是去像素差值的绝对值,也可以保留有效的符号(极性)信息。比如在传感器前挥动手掌时,某一帧图像显示是完整的包括纹理的手掌图像,而差帧则显示的是手掌的轮廓信息而非纹理,这与DVS捕捉运动物体轮廓的结果相类似。
在执行差帧前,还可以包括图像下采样操作、灰度信息提取、感兴趣区域提取等步骤,然后执行脉冲序列随机化步骤;更多差帧手段可以参考现有技术3。其中,图像下采样操作有利于直接使用电子设备中的已有摄像头,而不必安装一套新的成像模组和传感器,降低成本。
参考图2,其展示的是第一类实施例中脉冲序列随机化的示意图。差帧存储空间,用于存储差帧像素值。脉冲事件地址存储空间包括的存储单元,用于存储差帧像素值对应的像素坐标。基于差帧像素值决定将脉冲事件地址(也即差帧像素值对应的像素坐标)存储于脉冲事件地址存储空间中的次数。随机数生成模块生成随机数序列,根据随机数序列读取脉冲事件地址存储空间中的脉冲事件地址,即确定了当前时刻/时间戳t要发放的脉冲事件的地址(x,y),或再结合极性信息p,即获得一个包含(x,y,p,t)信息的脉冲事件。
依据随机数序列不断读取脉冲事件地址并生成由脉冲事件构成的目标脉冲序列,至此即完成了脉冲序列的随机化过程。该脉冲序列被送入后级系统中而被处理。优选地,此处的后级系统为SNN处理器,当然也可以是其他系信号处理装置。
对于SNN处理器而言,将差帧乃至普通帧图像转换为随机的目标脉冲序列时,如果是逐像素地转换成短随机脉冲序列,然后依序拼接这些短随机脉冲序列,送入SNN处理器推理后,获得的网络表现将极低,因为其并不符合脉冲神经网络信息处理特性。现有技术1并未给出一张图像整体应当如何随机化的方法,仅仅是针对单个像素如何生成随机化的目标脉冲序列,而本发明将披露整张图像(具体为差帧)如何整体被随机化成目标脉冲序列。
参考图3,其展示的是第一类实施例中脉冲序列随机化的详细示意图。举例地,若用于差帧的图像尺寸为128×128(横、纵分辨率之积,记为差帧像素数),且每个像素值宽度为8bit,那么差帧存储空间的尺寸至少为128×128×8bit。由于是计算相隔若干帧(优选为相邻的两帧)的帧图像之间的像素差值,因而差帧的大部分像素值是0,一般仅在运动物体的轮廓处的像素值非零。不失一般性,记差帧中某个像素值为I(x,y),差帧中最大像素值为max(I(x,y)),其中细体(x,y)表示某个像素在帧图像传感器中的位置,粗体(x,y)表示帧图像传感器中所有像素的坐标构成的集合。
获得帧图像传感器的差帧后,至少基于差帧中每个像素值,生成该像素对应的脉冲事件地址(也即该像素的像素坐标)。如图3所示,坐标为(x,y)=(0,2)的像素值I(0,2)=97,而I(2,2)=63,差帧中最大像素值为max(I(x,y))=158。
为了对差帧存储空间中的这些像素值编码,需要根据这些像素值获得对应的脉冲事件数量。并记差帧中坐标为(x,y)的像素对应的脉冲事件数量为R(x,y)。
为获得脉冲事件数量R(x,y),可以采取不同的手段。在某类实施例中,R(x,y)=⌊ I (x,y)×N/M ⌋,其中:⌊.⌋为向下取整运算;N为允许单个像素所发放的最大脉冲事件的数量,比如8个或16个;M为差帧中像素的理论最大值,如宽度为8比特的像素的最大值为255。
在某类实施例中,R(x,y)=⌊ I(x,y)×N/ max(I(x,y))⌋;换言之,在量化像素值时考虑当前差帧中最大像素值的大小,即自适应地将图像轮廓进行增强。相比于前一类实施例,该类实施例的优点是,在处于暗光场景或小幅度物体运动时,差帧所得的物体轮廓不明显,但该实施例增强了轮廓。比如图3中I(2,2)=63,在N=8时,如果采取前一类实施例,其对应的R(x,y)=1,而后一类实施例中R(x,y)=3。
在某类实施例中,R(x,y)=⌊ I(x,y)×N/P⌋,其中P=max(max(I(x,y)),Q),其中Q为第一下限值,比如30。该类实施例中,与前一类实施例相比,不仅考虑了轮廓自适应增强,还考虑了传感器仅存在背景噪声情况下自适应增强对脉冲稀疏性的不利影响。鉴于传感器长期工作在仅有背景噪声的环境中,该类实施例抑制了轮廓增强导致的脉冲事件发放过多而导致SNN处理器不必要的电能消耗问题。在第一下限值Q=30且假设差帧中最大像素值及其以下像素值对应的像素数量处于均匀分布的前提下,max(I(x,y))=10和20时,对应的目标脉冲序列中脉冲事件的数量分别减少75%和40%。
在某类替代实施例中,前述的向下取整均替代为向上取整。
在某类替代实施例中,对差帧中像素值小于第二下限值时,直接将差帧中该像素值置零;优选地,该步骤在计算差值的过程中执行。比如图3中坐标为(0, 3)的像素对应的像素值为1,小于第二下限值5时,将该像素值置零,如此可以实现背景噪声的过滤。
在某类实施例中,在获得差帧的过程中,保留了极性信息,因此在计算R(x,y)还应考虑取绝对值以符合现实客观需要。
对于差帧中的大多数情况,即像素值为0的像素,其对应的脉冲事件数量一般均为0,这保障了目标脉冲序列的稀疏性。
获得差帧中像素值对应的脉冲事件数量R(x,y)后,在脉冲事件地址存储空间中存储R(x,y)个脉冲事件地址(x,y)。可以根据脉冲事件地址的长度决定该存储空间的位宽,比如差帧的图像尺寸为128×128,则存储空间位宽为14bit。差帧中的像素对应的地址可以以任意合理的方式存入脉冲事件地址存储空间中,比如依行/列的顺序/倒序存储,相同地址可以顺序/乱序/错位存储,本发明不以某种具体形式为限。
由于允许单个像素所发放的最大脉冲事件的数量为N(比如8),因此脉冲事件地址存储空间的理论所需最大长度,以128×128的差帧分辨率为例,应为128×128×N。但是由于差帧仅仅表达物体的轮廓,因此差帧的数据是稀疏的。除非是纯黑与纯白环境的瞬间切换,否则一般实际存储地址时不会用尽最大长度。这里可以假设该存储空间实际长度为差帧像素数×K(K<N),比如K=3,因此脉冲事件地址存储空间占用差帧像素数×K×存储空间位宽,沿用前例为128×128×K×14bit。
随机数生成模块,生成数值范围在1~差帧像素数×N以内的随机整数(本质是伪随机数),或可以与该数值范围内的整数一一对应的另一数值范围内的随机数,比如0~差帧像素数×N-1或其它,构成随机数序列。此外,在一个周期内生成完该些数值后,下一个周期内循环生成该些数值。生成该些随机数的目的在于该些随机数的部分,可以一一映射至脉冲事件地址存储空间中每个存储单元的序号。即每生成一个随机数,即可根据该随机数与脉冲事件地址存储空间中序号的映射关系,读取脉冲事件地址存储空间中该序号对应的存储单元所存储的某个地址一次。比如随机数序列为9-5-2-7...,那么依序读取脉冲事件地址存储空间中序号为9-5-2-7...的地址。
优选地,生成上述随机数序列是通过线性反馈移位寄存器(LFSR)与异或门来实现的。例如通过配置成表达本原多项式的电路来实现伪随机数的生成。该技术属于本领域公知的技术,此处不再赘述。
注意到伪随机数的范围是1~差帧像素数×N,而存储有经差帧中像素值转化而来的有效地址的存储单元(图3中填有坐标的存储单元)的数量Kr(<K,随差帧的不同而动态变动)不会多于脉冲事件地址存储空间的实际长度(差帧像素数×K),其中K<N。因此若随机数被映射在1~Kr之外,其对应时刻/时间步不发放脉冲事件(也被称非脉冲)。因而目标脉冲序列通常为稀疏交错的脉冲序列。
随机数生成模块可以不仅只有一个。如前所述,第一随机数生成模块生成设定范围内的伪随机数,第二随机数生成模块也生成设定范围内的伪随机数,二者具有相同设定范围,在使用时二者以某种顺序(最为简单的是交替)为不同的差帧生成目标脉冲序列。对于三个及其以上随机数生成模块,可采取类似方式处理。
举例地,一个简单的映射方案是随机数(1~差帧像素数×N)中的1~Kr与脉冲事件地址存储空间中的存储单元的序号1~Kr基于等值而一一对应。任意合理可行的随机数取值范围以及其与存储单元的映射关系均可应用于本发明中,在此不以某种特定方式为限。
优选地,目标脉冲序列被送入SNN处理器中处理,因此本发明赋予了SNN处理器处理帧图像传感器所捕捉的环境信号的能力。
参考图4,其给出了本发明中另一类实施例中脉冲序列随机化的示意图。与图2所示的方案所不同的是,并非基于差帧存储空间中的像素值而决定存储脉冲事件地址的次数,而是生成对应的脉冲事件数量R(x,y)。
参考图5,其给出了另一类实施例中脉冲序列随机化的详细示意图。在该类实施例中,为简化描述,在此引用前一类实施例中所描述的技术特征和各种技术符号。
在获得差帧像素值并存储至差帧存储空间后,生成对应的脉冲事件数量R(x,y),并将其存储至脉冲事件数量存储空间对应的存储单元中。脉冲事件数量存储空间中存储单元的数量,与差帧的像素数相同,沿用前例,均为128×128。
同样地,通过随机数生成模块生成随机数序列,并根据当前的随机数读取对应的存储单元,若该存储单元中所存储的R(x,y)>1,则发放一个对应的脉冲事件,比如至少包含(x,y,t)信息的脉冲事件,t为时间戳。
此外,该类实施例还将更新对应的R(x,y)值,比如自减1。如图5中地址(x,y)=(2,2)的差帧像素的脉冲事件数量由3更新为2。
该实施例中,随机数序列的周期等于差帧像素数。在一个伪随机序列周期中,所有R(x,y)非0的像素均会发放一个脉冲事件。对于一个差帧,伪随机序列循环N次(允许单个像素所发放的最大脉冲事件的数量),直至发放全部因发脉冲事件。虽然这种方案一定程度上破坏了脉冲发放的随机性,但是实际测试发现,SNN所表现出的性能并未有明显劣势。相比于前一实施例,该类实施例对存储空间的占用将更少。
图6给出了又一类实施例中脉冲序列随机化的示意图。与前一类实施例所不同的是从帧图像传感器获取的最新像素值后,直接与存储于帧图像存储空间中的对应坐标的像素值做差,获得差帧中对应坐标的像素值,并根据该像素值计算出对应的脉冲事件数量R(x,y),并将该脉冲事件数量存储于脉冲事件数量存储空间中对应的存储单元。换言之,该又一类实施例中没有专门用于存储差帧像素值的差帧存储空间,因此前述计算脉冲事件数量R(x,y)时,无法获得max(I(x,y)),因而只适于非轮廓增强类型的实施例。
此外,将最新的像素值存储至帧图像存储空间中对应的存储单元中。举例地,图6中从传感器获得坐标为(x,y)像素的像素值为105,此前在帧图像存储空间中存储的对应坐标的像素值为1,做差后计算R(x,y)=3,即将脉冲事件数量3存储至脉冲事件数量存储空间中对应存储单元中,且将帧图像存储空间中存储的对应坐标的像素值更新为105。其它技术手段与前一类实施例相同,在此以引用方式描述,不再赘述。
此外本发明还披露一种脉冲序列随机化装置,该脉冲序列随机化装置包括:差帧存储空间,以及脉冲事件地址存储空间或脉冲事件数量存储空间;或者,帧图像存储空间,以及脉冲事件数量存储空间;并且,脉冲序列随机化装置被配置为执行如前所述的脉冲序列随机化方法(参考图1~6及对应描述);其中,差帧存储空间,用于存储差帧像素值;脉冲事件地址存储空间包括的存储单元,用于存储差帧像素值对应的像素坐标;脉冲事件数量存储空间包括的存储单元,用于存储差帧像素值对应的脉冲事件数量;帧图像存储空间包括的存储单元,用于存储从帧图像传感器获取的最新像素值。
在某类实施例中,脉冲序列随机化装置被实施为帧图像传感器接口。
图7给出了片上传感器集成方案示意图。传感器,包括DVS或/和帧图像传感器,通过动态视觉传感器接口或/和帧图像传感器接口,将DVS生成的脉冲事件序列或/和生成的随机化后的目标脉冲序列送入SNN处理器处理,该DVS或/和帧图像传感器与SNN处理器,位于不同的裸晶且被集成在同一个芯片上,该芯片可以称为类脑芯片,且是感算一体的类脑芯片。
图8给出了片外传感器集成方案示意图。传感器,包括DVS或/和帧图像传感器,通过动态视觉传感器接口或/和帧图像传感器接口,将DVS生成的脉冲事件序列或/和生成的随机化后的目标脉冲序列送入SNN处理器处理,该DVS或/和帧图像传感器与SNN处理器是通过线缆建立通信连接,比如基于USB协议。
在某类实施例中,芯片支持双目传感器。优选地,一目为DVS,另一目为帧图像传感器。优选地,一目为片上集成传感器,另一目为片外传感器。这些片上/片外,传感器类型之间可以灵活自由组合成不同的实施例。
参考图9,其给出了再一类实施例中脉冲序列随机化的详细示意图。该类实施例中,不再限于前述的采集视觉信号,而是针对环境信号,比如声音、震动、心电信号等,本发明不以此为限。
采集的环境信号经过各种软/硬件的设置或处理,比如对声音信号可以通过多个不同频带的带通滤波,获得多个通道输出信号,这些通道标识,也称通道地址,比如CH-1、CH-16等,其相当于前述的像素坐标/脉冲事件地址。
然后获得每个通道对应的脉冲事件数量,并分别存储在脉冲事件数量存储空间中对应的存储单元中。这里获得每个通道对应的脉冲事件数量,是将通道输出信号映射成对应的脉冲事件数量,其可以是任意合理形式的手段,比如基于通道输出信号的增量值、各种脉冲稀疏化手段等,本发明不以某种具体手段为限。
参考前述实施例,通过随机数生成模块生成的随机数,读取对应该随机数的存储单元,若发现非零值,则至少基于该存储单元对应的通道地址,生成脉冲事件,并且将该存储单元中所存储的脉冲事件数量更新,比如减去1;若干这样的脉冲事件构成目标脉冲序列,并将目标脉冲序列送入SNN处理器。当然,对于存储单元中的0值,则不需要生成和发放脉冲事件。对于其它技术特征,在此以引用的方式将前述实施例的技术特征引用与此,在此不再赘述。
参考图10,其给出了次一类实施例中脉冲序列随机化的详细示意图。与图9所示实施例不同的是,在获得每个通道对应的脉冲事件数量后,在位于脉冲事件地址存储空间中与之相同数量的存储单元中写入通道地址。如图10所示,CH-1的脉冲事件数量为2,因此写入该地址2次,CH-2则因对应的脉冲事件数量为1而写入了1次。然后从随机数生成模块中获取一个随机数,在脉冲事件地址存储空间中读取对应该随机数的存储单元中的一个地址,至少基于读取的通道地址生成并发放脉冲事件;但若该随机数的映射结果,超出了脉冲事件地址存储空间,乃至超出了写有有效通道地址的存储单元的范围,则不需要生成和发放脉冲事件。若干这样的脉冲事件构成目标脉冲序列,并将目标脉冲序列送入SNN处理器。对于其它技术特征,在此以引用的方式将前述实施例的技术特征引用与此,在此不再赘述。
此外本发明还披露一种电子设备,比如智能家电、智能手机等,其包括上述类脑芯片或脉冲序列随机化装置,以用于对环境信号进行实时监测和智能响应。由于类脑芯片等超低功耗特定,因此可以实现永远在线的智能推理。通过对SNN处理器配置特定的一种或多种推理能力,可以赋予电子设备端上智能信息处理能力。
尽管已经参考本发明的具体特征和实施例描述了本发明,但是在不脱离本发明的情况下仍可以对其进行各种修改、组合、替换。本发明的保护范围旨在不限于说明书中描述的过程、机器、制造、物质组成、装置、方法和步骤的特定实施例,并且这些方法、模块可能还被实施在相关联、相互依赖、相互配合、前/后级的一个或多个产品、方法当中。
因此,说明书和附图应简单地视为由所附权利要求限定的技术方案的部分实施例的介绍,因而应根据最大合理解释原则对所附权利要求解读,并旨在尽可能涵盖本发明公开范围内的所有修改、变化、组合或等同物,同时还应避免不合常理的解读方式。
为了实现更好的技术效果或出于某些应用的需求,本领域技术人员可能在本发明的基础之上,对技术方案做出进一步的改进。然而,即便该部分改进/设计具有创造性或/和进步性,只要依赖本发明的技术构思,覆盖了权利要求所限定的技术特征,该技术方案同样应落入本发明的保护范围之内。
所附的权利要求中所提及的若干技术特征可能存在替代的技术特征,或者对某些技术流程的顺序、物质组织顺序可以重组。本领域普通技术人员知晓本发明后,容易想到该些替换手段,或者改变技术流程的顺序、物质组织顺序,然后采用了基本相同的手段,解决基本相同的技术问题,达到基本相同的技术效果,因此即便权利要求中明确限定了上述手段或/和顺序,然而该些修饰、改变、替换,均应依据等同原则而落入权利要求的保护范围。
结合本文中所公开的实施例中描述的各方法步骤或模块,能够以硬件、软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各实施例的步骤及组成。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用或设计约束条件。本领域普通技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为在本发明所要求保护的范围之外。
Claims (14)
1.一种脉冲序列随机化方法,其包括如下步骤:
获取帧图像之间的差帧像素值;
根据差帧像素值,计算该差帧像素值对应的脉冲事件数量;
其特征在于,该脉冲序列随机化方法至少还包括如下步骤之一:
i)在数量与所述脉冲事件数量相同的存储单元中均存储所述差帧像素值对应的像素坐标;根据当前获取的随机数,读取对应该随机数的存储单元中所存储的像素坐标;至少根据所读取的像素坐标信息,生成目标脉冲序列中的脉冲事件;
ii)将所述脉冲事件数量存储至与所述差帧像素值的像素坐标所对应的存储单元中;根据当前获取的随机数,读取对应该随机数的存储单元中所存储的脉冲事件数量;若所读取的脉冲事件数量非零,则至少根据该存储单元所对应的差帧像素值的像素坐标信息,生成目标脉冲序列中的脉冲事件。
2.根据权利要求1所述的脉冲序列随机化方法,其特征在于:
所述差帧像素值,是相邻两帧图像之间的像素值之差,或相邻两帧图像之间的像素值之差的绝对值。
3.根据权利要求1所述的脉冲序列随机化方法,其特征在于:
计算该差帧像素值对应的脉冲事件数量是根据如下方式之一获得的:
i)根据该差帧像素值与允许单个像素所发放的最大脉冲事件数量之积,与差帧中像素的理论最大值的比值;
ii)根据该差帧像素值与允许单个像素所发放的最大脉冲事件数量之积,与差帧中最大像素值的比值;
iii)根据该差帧像素值与允许单个像素所发放的最大脉冲事件数量之积,与差帧中最大像素值或第一下限值中的较大者的比值。
4.根据权利要求1所述的脉冲序列随机化方法,其特征在于:
获取帧图像之间的差帧像素值后,若该差帧像素值小于第二下限值,则将该差帧像素值置零。
5.根据权利要求1所述的脉冲序列随机化方法,其特征在于:
存储所述差帧像素值对应的像素坐标的存储单元的数量,小于差帧像素数与允许单个像素所发放的最大脉冲事件数量之积。
6.根据权利要求1所述的脉冲序列随机化方法,其特征在于:
通过随机数生成模块生成随机数序列,当前获取的随机数来自随机数序列;
该随机数序列在一个周期内不会生成相同的随机数。
7.根据权利要求6所述的脉冲序列随机化方法,其特征在于:
所述随机数生成模块包括至少一个基于线性反馈移位寄存器的随机数生成器;或者,该随机数序列的周期等于差帧像素数与允许单个像素所发放的最大脉冲事件数量之积,或者等于差帧像素数。
8.根据权利要求1所述的脉冲序列随机化方法,其特征在于:
获取帧图像之间的差帧像素值后,并将其存储在差帧存储空间中;或者,获取帧图像之间的差帧像素值后,直接计算该差帧像素值对应的脉冲事件数量而不存储该差帧像素值。
9.根据权利要求1所述的脉冲序列随机化方法,其特征在于:
根据当前获取的随机数,读取对应该随机数的存储单元中所存储的脉冲事件数量时:所述随机数来自随机数序列,该随机数序列的周期等于差帧像素数;
针对每个差帧,随机数序列执行的周期数等于允许单个像素所发放的最大脉冲事件数量。
10.根据权利要求1所述的脉冲序列随机化方法,其特征在于:
若所读取的脉冲事件数量非零,还将对应该随机数的存储单元中所存储的脉冲事件数量减一。
11.一种脉冲序列随机化方法,其包括如下步骤:
获取通道输出信号;
根据通道输出信号,获取该通道输出信号对应的脉冲事件数量;
其特征在于,该脉冲序列随机化方法至少还包括如下步骤之一:
i)在数量与所述脉冲事件数量相同的存储单元中均存储所述通道输出信号对应的通道地址;根据当前获取的随机数,读取对应该随机数的存储单元中所存储的通道地址;至少根据所读取的通道地址信息,生成目标脉冲序列中的脉冲事件;
ii)将所述脉冲事件数量存储至与所述通道输出信号的通道地址所对应的存储单元中;根据当前获取的随机数,读取对应该随机数的存储单元中所存储的脉冲事件数量;若所读取的脉冲事件数量非零,则至少根据该存储单元所对应的通道输出信号的通道地址信息,生成目标脉冲序列中的脉冲事件。
12.一种脉冲序列随机化装置,其特征在于,该脉冲序列随机化装置包括:
差帧存储空间,以及脉冲事件地址存储空间或脉冲事件数量存储空间;或者,帧图像存储空间,以及脉冲事件数量存储空间;
并且,脉冲序列随机化装置被配置为执行权利要求1-10任意一项所述的脉冲序列随机化方法;
其中,差帧存储空间,用于存储差帧像素值;脉冲事件地址存储空间包括的存储单元,用于存储差帧像素值对应的像素坐标;脉冲事件数量存储空间包括的存储单元,用于存储差帧像素值对应的脉冲事件数量;帧图像存储空间包括的存储单元,用于存储从帧图像传感器获取的最新像素值。
13.一种类脑芯片,其特征在于:该类脑芯片包括如权利要求12所述的脉冲序列随机化装置,或应用如权利要求1-11任意一项所述的脉冲序列随机化方法。
14.一种电子设备,其特征在于:该电子设备包括如权利要求12所述的脉冲序列随机化装置;或者,该电子设备包括如权利要求13所述的类脑芯片。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210387836.6A CN114495178B (zh) | 2022-04-14 | 2022-04-14 | 脉冲序列随机化方法、装置、类脑芯片和电子设备 |
KR1020237023421A KR20230147597A (ko) | 2022-04-13 | 2022-06-07 | 프레임 이미지의 펄스 변환 시스템 |
US18/270,057 US20230421917A1 (en) | 2022-04-13 | 2022-06-07 | Frame image conversion spike system |
JP2023542914A JP2024518863A (ja) | 2022-04-13 | 2022-06-07 | フレーム画像スパイク変換システム |
PCT/CN2022/097292 WO2023197429A1 (zh) | 2022-04-13 | 2022-06-07 | 帧图像转脉冲系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210387836.6A CN114495178B (zh) | 2022-04-14 | 2022-04-14 | 脉冲序列随机化方法、装置、类脑芯片和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114495178A true CN114495178A (zh) | 2022-05-13 |
CN114495178B CN114495178B (zh) | 2022-06-21 |
Family
ID=81488322
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210387836.6A Active CN114495178B (zh) | 2022-04-13 | 2022-04-14 | 脉冲序列随机化方法、装置、类脑芯片和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114495178B (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115866427A (zh) * | 2023-01-17 | 2023-03-28 | 脉冲视觉(北京)科技有限公司 | 脉冲数据读出方法和装置、系统、设备和介质 |
WO2023197429A1 (zh) * | 2022-04-13 | 2023-10-19 | 深圳时识科技有限公司 | 帧图像转脉冲系统 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200218959A1 (en) * | 2017-10-09 | 2020-07-09 | Intel Corporation | Method, apparatus and system to perform action recognition with a spiking neural network |
CN111860786A (zh) * | 2020-07-24 | 2020-10-30 | 北京灵汐科技有限公司 | 一种数值转脉冲的方法及装置 |
CN111898737A (zh) * | 2020-07-24 | 2020-11-06 | 北京灵汐科技有限公司 | 一种图像转脉冲的方法及装置 |
CN112464807A (zh) * | 2020-11-26 | 2021-03-09 | 北京灵汐科技有限公司 | 视频动作识别方法、装置、电子设备和存储介质 |
US20210365778A1 (en) * | 2020-05-22 | 2021-11-25 | Tata Consultancy Services Limited | System and method for real-time radar-based action recognition using spiking neural network(snn) |
US11282221B1 (en) * | 2020-09-22 | 2022-03-22 | Varian Medical Systems, Inc. | Image contouring using spiking neural networks |
-
2022
- 2022-04-14 CN CN202210387836.6A patent/CN114495178B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20200218959A1 (en) * | 2017-10-09 | 2020-07-09 | Intel Corporation | Method, apparatus and system to perform action recognition with a spiking neural network |
US20210365778A1 (en) * | 2020-05-22 | 2021-11-25 | Tata Consultancy Services Limited | System and method for real-time radar-based action recognition using spiking neural network(snn) |
CN111860786A (zh) * | 2020-07-24 | 2020-10-30 | 北京灵汐科技有限公司 | 一种数值转脉冲的方法及装置 |
CN111898737A (zh) * | 2020-07-24 | 2020-11-06 | 北京灵汐科技有限公司 | 一种图像转脉冲的方法及装置 |
US11282221B1 (en) * | 2020-09-22 | 2022-03-22 | Varian Medical Systems, Inc. | Image contouring using spiking neural networks |
CN112464807A (zh) * | 2020-11-26 | 2021-03-09 | 北京灵汐科技有限公司 | 视频动作识别方法、装置、电子设备和存储介质 |
Non-Patent Citations (2)
Title |
---|
XINGPENG LU ET AL.: "An_Event_Coding_Method_Based_on_Frame_Images_With_Dynamic_Vision_Sensor_Modeling", 《2019 IEEE INTERNATIONAL CONFERENCE ON SIGNAL, INFORMATION AND DATA PROCESSING (ICSIDP)》 * |
杨静等: "Spiking神经元输入脉冲扰动敏感性研究", 《计算机工程与应用》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023197429A1 (zh) * | 2022-04-13 | 2023-10-19 | 深圳时识科技有限公司 | 帧图像转脉冲系统 |
CN115866427A (zh) * | 2023-01-17 | 2023-03-28 | 脉冲视觉(北京)科技有限公司 | 脉冲数据读出方法和装置、系统、设备和介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114495178B (zh) | 2022-06-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114495178B (zh) | 脉冲序列随机化方法、装置、类脑芯片和电子设备 | |
Dong et al. | Spike camera and its coding methods | |
JP5925812B2 (ja) | リアルタイムの画像の取得および表示 | |
KR950033492A (ko) | 높은 듀티사이클을 가지는 신호모니터용 디지탈 오실로스코프구조 | |
KR970014162A (ko) | 촬상 장치(Photo Image Pick-Up Device) | |
CN108833812B (zh) | 一种图像传感器及图像动态信息处理方法 | |
CN106851137A (zh) | 用于驱动摄像装置的方法 | |
JP2007067571A (ja) | 画像処理装置 | |
CN105072359A (zh) | 基于压缩感知的cmos图像传感器成像系统及方法 | |
CN105245798B (zh) | 基于分块压缩感知的ccd 视频压缩测量成像系统及控制方法 | |
US6787752B2 (en) | Pseudorandom assignment between elements of the image processor and the A/D converter cells | |
CN113835679B (zh) | 一种随机数的生成方法、装置及系统 | |
EP2819397B1 (en) | High dynamic range imaging | |
JP2009300112A (ja) | 波形表示装置及び波形表示方法 | |
JP6688280B2 (ja) | 宇宙粒子により生じた画像欠陥を是正する時間遅延積分画像キャプチャ方法 | |
JP7289635B2 (ja) | 撮像装置および撮像装置の制御方法 | |
KR100732579B1 (ko) | 화상 데이터 처리 장치 | |
CN111050096B (zh) | 局部曝光传感器及其操作方法 | |
US20230421917A1 (en) | Frame image conversion spike system | |
Freedman et al. | A high dynamic range CMOS image sensor with a novel pixel-level logarithmic counter memory | |
Punchihewa et al. | From a review of HDR sensing and tone compression to a novel imaging approach | |
JP3861634B2 (ja) | 波形表示装置及び波形表示方法 | |
Amhaz et al. | Smart readout technique designed for logarithmic CMOS image sensor including a motion detection scheme | |
CN109040526B (zh) | 基于片内多帧合成的led闪烁消除的系统及方法 | |
JP2919715B2 (ja) | 撮像装置 |
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 |