CN117879646A - 光信号的编码方法和装置、解码方法和装置、设备和介质 - Google Patents
光信号的编码方法和装置、解码方法和装置、设备和介质 Download PDFInfo
- Publication number
- CN117879646A CN117879646A CN202310876921.3A CN202310876921A CN117879646A CN 117879646 A CN117879646 A CN 117879646A CN 202310876921 A CN202310876921 A CN 202310876921A CN 117879646 A CN117879646 A CN 117879646A
- Authority
- CN
- China
- Prior art keywords
- pulse
- pulse width
- pulse signal
- signal
- encoding
- 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
- 238000000034 method Methods 0.000 title claims abstract description 114
- 230000003287 optical effect Effects 0.000 title claims abstract description 47
- 108091026890 Coding region Proteins 0.000 claims abstract description 42
- 230000008859 change Effects 0.000 claims abstract description 28
- 230000008569 process Effects 0.000 claims abstract description 24
- 230000004044 response Effects 0.000 claims abstract description 12
- 238000001208 nuclear magnetic resonance pulse sequence Methods 0.000 claims description 28
- 238000004590 computer program Methods 0.000 claims description 18
- 238000006243 chemical reaction Methods 0.000 claims description 5
- 238000012163 sequencing technique Methods 0.000 claims description 3
- 230000005540 biological transmission Effects 0.000 abstract description 24
- 238000009825 accumulation Methods 0.000 description 19
- 210000004027 cell Anatomy 0.000 description 15
- 238000010586 diagram Methods 0.000 description 13
- 238000003384 imaging method Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 8
- 230000014509 gene expression Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 230000001960 triggered effect Effects 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000006870 function Effects 0.000 description 3
- 238000013528 artificial neural network Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 210000002569 neuron Anatomy 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000007792 addition Methods 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000000354 decomposition reaction Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000006798 recombination Effects 0.000 description 1
- 238000005215 recombination Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000012421 spiking Methods 0.000 description 1
Landscapes
- Optical Communication System (AREA)
Abstract
本公开实施例公开了一种光信号的编码方法和装置、解码方法和装置、设备和介质,将针对空间接收的光子流转换成表征光强变化过程的脉冲信号;响应于脉冲信号的脉宽相对于指定脉宽发生变化,对脉冲信号的时刻信息和脉冲信号的脉宽进行编码,得到脉冲信号的编码信息;其中,脉冲信号的时刻信息包括脉冲信号的脉冲开始时刻和/或脉冲结束时刻;响应于脉冲信号的脉宽达到预设记录脉宽,对脉冲信号的时刻信息进行编码,得到脉冲信号的编码信息;基于时序关系,由空间对应的脉冲信号的编码信息形成编码序列,由此,可以减小编码数据的数据量、从而减小对外传输数据的数据量,有助于降低传输压力、提高传输效率。
Description
技术领域
本公开涉及信息处理技术、编解码技术,尤其是一种光信号的编码方法和装置、解码方法和装置、设备和介质。
背景技术
脉冲相机通过内置的光电传感器,采集观测场景的光信号并对采集的光信号进行累积,当光信号累积量超过预先设置的预先设置的阈值时,生成一脉冲信号并发放,从而形成脉冲序列,由此实现对高速光过程的高精度表达和连续记录,由于脉冲信号具有清晰的物理意义及超高的时间分辨率,对高速运动目标具有较强的探测能力,广泛应用在机器视觉、遥测遥控、电子计算机、自动驾驶等高速运动场景。
然而,由于脉冲序列对高速光过程的高精度表达和连续记录,需要极大的数据量,在传输带宽、传输实时性等方面存在很大压力。因此,如何降低传输压力、提高传输效率,是一个亟待解决的技术问题。
发明内容
本公开实施例提供一种光信号的编码方法和装置、解码方法和装置、设备和介质,以至少部分解决上述技术问题。
本公开实施例的一个方面,提供一种脉冲数据的编码方法,包括:
将针对空间接收的光子流转换成表征光强变化过程的脉冲信号;
响应于所述脉冲信号的脉宽相对于指定脉宽发生变化,对所述脉冲信号的时刻信息和所述脉冲信号的脉宽进行编码,得到所述脉冲信号的编码信息;其中,所述脉冲信号的时刻信息包括所述脉冲信号的脉冲开始时刻和/或脉冲结束时刻;
响应于所述脉冲信号的脉宽达到预设记录脉宽,对所述脉冲信号的时刻信息进行编码,得到所述脉冲信号的编码信息;
基于时序关系,由所述空间对应的脉冲信号的编码信息形成编码序列。
可选地,在本公开任一编码方法实施例中,将针对空间接收的光子流转换成表征光强变化过程的脉冲信号之后,还包括:
获取所述脉冲信号的脉宽;
基于所述脉冲信号的脉宽与指定脉宽之间的差值是否大于预设偏差值确定所述脉冲信号的脉宽是否发生变化,以及,确定所述脉冲信号的脉宽是否达到预设记录脉宽。
可选地,在本公开任一编码方法实施例中,获取所述脉冲信号的脉宽,包括:
获取所述脉冲信号的实际脉宽;
获取所述脉冲信号的实际脉宽与所述预设记录脉宽中的较小值,为所述脉冲信号的脉宽。
可选地,在本公开任一编码方法实施例中,对所述脉冲信号的时刻信息进行编码,包括以下任意一项:
对所述脉冲信号的时刻信息进行编码;
对所述脉冲信号的时刻信息和最大脉宽标识进行编码,所述最大脉宽标识用于表示所述脉冲信号的脉宽大于或等于所述预设记录脉宽;
对所述脉冲信号的时刻信息和所述预设记录脉宽进行编码。
可选地,在本公开任一编码方法实施例中,将针对空间接收的光子流转换成表征光强变化过程的脉冲信号之后,还包括:
基于所述空间对应的脉冲信号的生成时刻,按照时序关系对所述空间对应的脉冲信号排序,得到所述空间对应的脉冲序列;
所述指定脉宽包括以下任意一项:
所述脉冲信号在所述脉冲序列中相邻的前一脉冲信号的脉宽;
所述脉冲信号在所述脉冲序列中之前相邻的连续多个脉冲信号中首个脉冲信号的脉宽;
所述脉冲信号在所述脉冲序列中之前相邻的连续多个脉冲信号的脉宽的平均值;
其中,所述连续多个脉冲信号中各脉冲信号的脉宽与相邻前一脉冲信号的脉宽之间的差值不大于所述预设偏差值。
可选地,在本公开任一编码方法实施例中,还包括:
响应于所述脉冲信号的脉宽相对于指定脉宽发生变化,将所述指定脉宽更新为所述脉冲信号的脉宽。
可选地,在本公开任一编码方法实施例中,将针对空间接收的光子流转换成表征光强变化过程的脉冲信号,包括:
通过光敏单元,将针对空间接收的光子流转换成表征光强变化过程的脉冲信号;
对所述脉冲信号的时刻信息和所述脉冲信号的脉宽进行编码,包括:
对所述光敏单元在光敏单元阵列中的位置、所述脉冲信号的时刻信息和所述脉冲信号的脉宽进行编码;
对所述脉冲信号的时刻信息进行编码,包括:
对所述光敏单元在光敏单元阵列中的位置和所述脉冲信号的时刻信息进行编码。
可选地,在本公开任一编码方法实施例中,基于时序关系,由所述空间对应的脉冲信号的编码信息形成编码序列之后,还包括:
基于所述光敏单元阵列中各光敏单元在所述光敏单元阵列中的位置,由所述各光敏单元对应的编码序列形成编码序列阵列;
采用异步通信协议输出所述编码序列阵列。
本公开实施例的另一个方面,提供一种解码方法,包括:
获取空间对应的编码序列,其中,所述编码序列由所述空间对应的脉冲信号的编码信息基于时序关系形成,所述脉冲信号的编码信息由脉宽相对于指定脉宽发生变化的脉冲信号的时刻信息和脉宽编码得到,和/或,所述脉冲信号的编码信息由脉宽达到预设记录脉宽的脉冲信号的时刻信息编码得到;
对所述空间对应的编码序列进行解码,得到所述空间对应的解码结果序列,所述解码结果包括基于时序关系的至少一个脉冲信号的解码结果,每个解码结果包括以下至少之一:脉宽相对于指定脉宽发生变化的脉冲信号的时刻信息和脉宽,脉宽达到预设记录脉宽的脉冲信号的时刻信息。
可选地,在本公开任一解码方法实施例中,获取空间对应的编码序列,包括:
获取观测场景对应的编码序列阵列,所述编码序列阵列包括:所述观测场景中各空间对应的编码序列;
对所述空间对应的编码序列进行解码,得到所述空间对应的解码结果序列,包括:
对所述编码序列阵列进行解码,得到所述观测场景中各空间对应的编码结果序列。
可选地,在本公开任一解码方法实施例中,得到所述空间对应的解码结果序列之后,还包括:
基于所述解码结果,确定所述解码结果对应的脉冲信号的脉宽。
可选地,在本公开任一解码方法实施例中,基于所述解码结果,确定所述解码结果对应的脉冲信号的脉宽,包括:
基于所述解码结果,确定所述解码结果中是否包括小于所述预设记录脉宽的脉宽;
若所述解码结果中包括小于所述预设记录脉宽的脉宽,确定所述解码结果中的脉宽为所述对应的脉冲信号的脉宽;
否则,基于所述解码结果中的脉冲结束时刻与所述解码结果在所在解码结果序列中相邻前一解码结果中脉冲结束时刻,确定所述对应的脉冲信号的脉宽。
可选地,在本公开任一解码方法实施例中,确定所述解码结果对应的脉冲信号的脉宽之后,还包括:
基于所述空间对应的解码结果序列中各解码结果、以及各所述解码结果对应的脉冲信号的脉宽,确定所述空间的光强值。
本公开实施例的又一个方面,提供一种光信号的编码装置,包括:
转换模块,用于将针对空间接收的光子流转换成表征光强变化过程的脉冲信号;
编码模块,用于响应于所述脉冲信号的脉宽相对于指定脉宽发生变化,对所述脉冲信号的时刻信息和所述脉冲信号的脉宽进行编码,得到所述脉冲信号的编码信息;其中,所述脉冲信号的时刻信息包括所述脉冲信号的脉冲开始时刻和/或脉冲结束时刻;响应于所述脉冲信号的脉宽达到预设记录脉宽,对所述脉冲信号的时刻信息进行编码,得到所述脉冲信号的编码信息;
形成模块,用于基于时序关系,由所述空间对应的脉冲信号的编码信息形成编码序列。
本公开实施例的再一个方面,提供一种解码装置,包括:
获取模块,用于获取空间对应的编码序列,其中,所述编码序列由所述空间对应的脉冲信号的编码信息基于时序关系形成,所述脉冲信号的编码信息由脉宽相对于指定脉宽发生变化的脉冲信号的时刻信息和脉宽编码得到,和/或,所述脉冲信号的编码信息由脉宽达到预设记录脉宽的脉冲信号的时刻信息编码得到;
解码模块,用于对所述空间对应的编码序列进行解码,得到所述空间对应的解码结果序列,所述解码结果包括基于时序关系的至少一个脉冲信号的解码结果,每个解码结果包括以下至少之一:脉宽相对于指定脉宽发生变化的脉冲信号的时刻信息和脉宽,脉宽达到预设记录脉宽的脉冲信号的时刻信息。
本公开实施例的再一个方面,提供一种脉冲相机,包括本公开任一实施例所述的光信号的编码装置。
本公开实施例的再一个方面,提供一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述存储器中存储的计算机程序,且所述计算机程序被执行时,实现本公开任一实施例所述的方法。
可选地,在本公开任一电子实施例中,所述电子设备包括以下任意一项:集成电路、传感器。
可选地,在本公开任一电子实施例中,所述电子设备包括被纳入以下任意一项:相机、摄像头、音/视频播放器、导航设备、固定位置终端、娱乐设备、智能手机、通信设备、移动设备、交通工具或设施、工业设备、医疗设备、安防设备、飞行设备、家电设备。
本公开实施例的再一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现本公开任一实施例所述的方法。
基于本公开实施例的光信号的编码方法和装置、解码方法和装置、设备和介质,通过将针对空间接收的光子流转换成表征光强变化过程的脉冲信号,并在脉冲信号的脉宽相对于指定脉宽发生变化时,对该脉冲信号的时刻信息和脉冲信号的脉宽进行编码,得到该脉冲信号的编码信息,以及在脉冲信号的脉宽达到预设记录脉宽时,对脉冲信号的时刻信息进行编码,得到该脉冲信号的编码信息;然后,由空间对应的脉冲信号的编码信息形成编码序列,在接收端,可以对该编码序列进行解码,得到对应的解码结果序列。由于仅在脉冲信号的脉宽相对于指定脉宽发生变化时、以及脉宽达到预设记录脉宽时才进行编码、而无需对其他脉冲信号的相关信息进行编码,通过编码序列可以反映出空间的光强及光强变化情况,未编码则意味着光强未发生改变,由此可以减小编码数据的数据量、从而减小对外传输数据的数据量,有助于降低传输压力、提高传输效率;其次,由于减小了编码数据的数据量,可以节省编码数据所需占用的硬件资源从而降低硬件要求,有助于提高编码效率和资源利用率;另外,在脉冲信号的脉宽达到预设记录脉宽时即进行编码,可以避免由于硬件面积、功耗等硬件限制因素导致所能够记录的脉宽范围受限而限制成像动态范围,能够在减小编码数据的数据量的情况下提升成像动态范围。
下面通过附图和实施例,对本公开的技术方案做进一步的详细描述。
附图说明
构成说明书的一部分的附图描述了本公开的实施例,并且连同描述一起用于解释本公开的原理。
参照附图,根据下面的详细描述,可以更加清楚地理解本公开,其中:
图1为本公开光信号的编码方法一实施例的流程图。
图2为本公开光信号的编码方法另一实施例的流程图。
图3为本公开实施例中一脉冲信号的相关信息示例。
图4为本公开解码方法一实施例的流程图。
图5为本公开解码方法另一实施例的流程图。
图6为本公开光信号的编码装置一实施例的结构示意图。
图7为本公开光信号的编码装置另一实施例的结构示意图。
图8为本公开实施例中编码数据生成电路一具体实现示例的电路结构示意图。
图9为本公开解码装置一实施例的结构示意图。
图10为本公开解码装置另一实施例的结构示意图。
图11为本公开电子设备一个应用实施例的结构示意图。
具体实施方式
现在将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。
本领域技术人员可以理解,本公开实施例中的“第一”、“第二”等术语仅用于区别不同步骤、设备或模块等,既不代表任何特定技术含义,也不表示它们之间的必然逻辑顺序。
还应理解,在本公开实施例中,“多个”可以指两个或两个以上,“至少一个”可以指一个、两个或两个以上。
还应理解,对于本公开实施例中提及的任一部件、数据或结构,在没有明确限定或者在前后文给出相反启示的情况下,一般可以理解为一个或多个。
另外,本公开中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本公开中字符“/”,一般表示前后关联对象是一种“或”的关系。
还应理解,本公开对各个实施例的描述着重强调各个实施例之间的不同之处,其相同或相似之处可以相互参考,为了简洁,不再一一赘述。
同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
本公开实施例可以应用于相机(例如脉冲相机)、终端设备、计算机系统、服务器等电子设备,其可与众多其它通用或专用计算系统环境或配置一起操作。适于与相机、终端设备、计算机系统、服务器等电子设备一起使用的众所周知的终端设备、计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统﹑大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。
相机、终端设备、计算机系统、服务器等电子设备可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。
图1为本公开光信号的编码方法一实施例的流程图。如图1所示,该实施例的编码方法包括:
102,将针对空间接收的光子流转换成表征光强变化过程的脉冲信号。
例如,在其中一些实现方式中,可以通过持续采集空间的光信号并将该光信号转换为电信号进行累积,得到信号累积量,每当信号累积量达到预设累积阈值时生成一个脉冲信号,并将该信号累积量置零(即复位)以便重新进行累积。之后,还可以基于该空间对应的脉冲信号的生成时刻,按照时序关系,由各脉冲信号排序得到用于表达该空间的光强及其变化过程的脉冲序列。
104,响应于脉冲信号的脉宽相对于指定脉宽发生变化,对该脉冲信号的时刻信息和脉宽进行编码,得到该脉冲信号的编码信息。
本公开实施例中,脉冲信号的时刻信息可以包括脉冲信号的脉冲开始时刻和/或脉冲结束时刻。如无特别说明,本公开实施例以脉冲信号的时刻信息为该脉冲信号的脉冲结束时刻为例进行说明,对于脉冲信号的时刻信息为该脉冲信号的脉冲开始时刻,可以参考实现,本公开实施例不再特别说明。
之后,可以执行操作108。
106,响应于脉冲信号的脉宽达到预设记录脉宽,对该脉冲信号的时刻信息进行编码,得到该脉冲信号的编码信息。
其中,该预设记录脉宽可以为硬件支持记录的最大脉宽,例如受限于硬件面积、功耗等实际因素,可以记录的脉宽为从0到8,那么该预设记录脉宽为8。
其中,操作104和操作106为基于各自对应的触发条件执行的操作,只有在达到各自的触发条件时才执行、且只要达到各自的触发条件即执行,二者之间不存在执行时间或者顺序限制。
108,基于时序关系,由该空间对应的脉冲信号的编码信息形成编码序列。
基于本实施例,由于仅在脉冲信号的脉宽相对于指定脉宽发生变化时、以及脉宽达到预设记录脉宽时才进行编码、而无需对其他脉冲信号的相关信息进行编码,通过编码序列可以反映出空间的光强及光强变化情况,未编码则意味着光强未发生改变,由此可以减小编码数据的数据量、从而减小对外传输数据的数据量,有助于降低传输压力、提高传输效率;其次,由于减小了编码数据的数据量,可以节省编码数据所需占用的硬件资源从而降低硬件要求,有助于提高编码效率和资源利用率;另外,在脉冲信号的脉宽达到预设记录脉宽时即进行编码,可以避免由于硬件面积、功耗等硬件限制因素导致所能够记录的脉宽范围受限而限制成像动态范围,能够在减小编码数据的数据量的情况下提升成像动态范围。
图2为本公开光信号的编码方法另一实施例的流程图。如图2所示,在图1所示实施例的基础上,该实施例的编码方法包括:
202,将针对空间接收的光子流转换成表征光强变化过程的脉冲信号。
204,获取该脉冲信号的脉宽。
之后,执行操作206和210。
206,确定该脉冲信号的脉宽是否达到预设记录脉宽。
若脉冲信号的脉宽达到预设记录脉宽,执行操作208;否则,若脉冲信号的脉宽未达到预设记录脉宽,不执行操作208,可以执行操作210。
208,对该脉冲信号的时刻信息进行编码,得到该脉冲信号的编码信息。
之后,执行操作214。
210,基于该脉冲信号的脉宽与指定脉宽之间的差值是否大于预设偏差值确定脉冲信号的脉宽是否发生变化。
脉冲信号的脉宽与指定脉宽之间的差值,即该脉冲信号的脉宽相对于指定脉宽的偏差,具体可以为二者之间差值的绝对值。其中的预设偏差值可以根据实际需求设置,例如可以为0,此时表示脉冲信号的脉宽与指定脉宽相同;若预设偏差值大于0,表示脉冲信号的脉宽与指定脉宽之间允许有小的偏差,只要二者之间偏差不大于预设偏差值,可以认为该脉冲信号的脉宽未发生变化。
若该脉冲信号的脉宽与指定脉宽之间的差值大于预设偏差值,确定该脉冲信号的脉宽相对于指定脉宽发生变化,执行操作212;否则,若该脉冲信号的脉宽与指定脉宽之间的差值不大于预设偏差值,确定该脉冲信号的脉宽相对于指定脉宽未发生变化,不执行操作212。
212,对该脉冲信号的时刻信息和脉宽进行编码,得到该脉冲信号的编码信息。
若该脉冲信号脉宽既未达到预设记录脉宽,该脉冲信号的脉宽与指定脉宽之间的差值也不大于预设偏差值,则不针对该脉冲信号的相关信息(脉冲结束时刻,或者脉冲结束时刻和脉宽)进行编码,针对下一脉冲信号执行操作204。
214,基于时序关系,由该空间对应的脉冲信号的编码信息形成编码序列。
可选地,在其中一些实现方式中,在操作204中,可以获取脉冲信号的实际脉宽,脉冲信号的实际脉宽即脉冲信号的脉冲的累积时长,为脉冲信号与相邻前一脉冲信号的脉冲之间的时间间隔,可以通过脉冲信号的脉冲结束时刻与脉冲开始时刻(即相邻前一脉冲信号的脉冲结束时刻)之间的时间间隔作为当前脉冲信号的实际脉宽;并获取该脉冲信号的实际脉宽与预设记录脉宽中的较小值,为该脉冲信号的脉宽。
具体来说,可以在获取脉冲信号的实际脉宽后,比较该脉冲信号的实际脉宽是否大于预设记录脉宽,若该脉冲信号的实际脉宽是否大于预设记录脉宽,以预设记录脉宽作为该脉冲信号的脉宽;否则,若该脉冲信号的实际脉宽小于预设记录脉宽,以该脉冲信号的实际脉宽作为该脉冲信号的脉宽;若该脉冲信号的实际脉宽等于预设记录脉宽时,由于二者取值相同,以其中任一作为该脉冲信号的脉宽均可。
如图3所示,为本公开实施例中一脉冲信号的相关信息示例。如图3所示,标注有各段光电流的强度,即光信号强度(即光强)或转换的电信号强度(即电流强度),光电流强度的预设累积阈值设定为20,则对于光电流强度为4的光强,经过5个单位周期后达到预设累积阈值触发生成一个脉冲。对于光电流强度由4到5过渡的变化,这里假设光电流强度为4持续了16个单位周期,由于第15个单位周期时触发生成了一个脉冲,随后又持续了一个单位周期的光电流强度为4的光强,而当光电流强度为5的光强到来时,需要经过(20-4)/5=3.2个单位周期达到预设累积阈值并触发生成一个脉冲,因此,在第19.2个单位周期的结束时刻又触发生成了一个脉冲,此时脉冲间隔(即脉宽)为4.2。
为了表述方便,例如受限于硬件面积、功耗等实际因素,可以记录的脉宽为从0到8,那么预设记录脉宽为8。以图3为例,对于在第19个单位周期的结束时刻后至第19.2个单位周期的结束时刻的脉冲,其脉冲开始时刻为15、脉冲结束时刻为19.2,表示为[15,19.2],该脉冲信号的实际脉宽为19.2-15=4.2,不大于预设记录脉宽8,那么,以该脉冲信号的实际脉宽4.2作为该脉冲信号的脉宽进行记录,该脉冲信号的指定脉宽为5(相邻前一脉冲信号的脉宽),预设偏差值为0,那么该脉冲信号的脉宽4.2与指定脉宽为5之间的差值为0.8,大于预设偏差值0,需要对该脉冲信号的时刻信息和脉宽进行编码输出,编码数据格式例如可以表示为(t,τ),其中,t表示脉冲结束时刻,τ表示脉宽,本公开实施例对编码数据格式不做限制。
对于在第32.5个单位周期的结束时刻后至第42.5个单位周期的结束时刻的脉冲,其脉冲开始时刻为32.5、脉冲结束时刻为42.5,表示为[32.5,42.5],该脉冲信号的实际脉宽为42.5-32.5=10,超过了预设记录脉宽8,那么,以预设记录脉宽8作为该脉冲信号的脉宽进行记录,需要对该脉冲信号的时刻信息进行编码输出,编码数据格式例如可以表示为(t),其中,t表示脉冲结束时刻,本公开实施例对编码数据格式不做限制。
在实际应用中,由于硬件面积、功耗等硬件因素限制,导致硬件所能够记录的脉宽范围受限,本实施例中,以硬件支持记录的最大脉宽作为预设记录脉宽,获取到脉冲信号的实际脉宽后,获取该脉冲信号的实际脉宽与预设记录脉宽中的较小值为该脉冲信号的脉宽进行记录,从而实现了对脉冲信号的脉宽的有效记录,以便于确认脉冲信号的脉宽是否发生变化。
可选地,在操作106或者208中,作为其中一些实现方式,对脉冲信号的时刻信息进行编码时,可以直接对该脉冲信号的时刻信息进行编码。这样,编码信息接收端(解码端)基于预先设置,在编码信息中仅包括脉冲信号的时刻信息、而未包括脉宽相关信息(例如脉宽、最大脉宽标识、预设记录脉宽等)时,即可确定当前脉冲信号的脉宽达到了预设记录脉宽。
或者,作为另一些实现方式,也可以对脉冲信号的时刻信息和最大脉宽标识(ID)进行编码,该最大脉宽标识用于表示脉冲信号的脉宽大于或等于预设记录脉宽。该最大脉宽标识可以由编码信息发送端(编码端)与编码信息接收端(解码端)之间约定,这样,接收端在编码信息中存在该最大脉宽标识时,即可确定当前脉冲信号的脉宽达到了预设记录脉宽。本公开实施例对最大脉宽标识的具体表示方式不做限制。
对脉冲信号的时刻信息和预设记录脉宽进行编码。这样,接收端在编码信息中包括预设记录脉宽时,即可直接确定当前脉冲信号的脉宽达到了预设记录脉宽。
可选地,在本公开任一实施例的编码方法中,将针对空间接收的光子流转换成表征光强变化过程的脉冲信号之后,还可以基于该空间对应的脉冲信号的生成时刻,按照时序关系对该空间对应的脉冲信号排序,得到空间对应的脉冲序列。
此时,上述指定脉宽例如可以是但不限于以下任意一项:脉冲信号在脉冲序列中相邻的前一脉冲信号的脉宽,或者,脉冲信号在脉冲序列中之前相邻的连续多个脉冲信号中首个脉冲信号的脉宽,或者,脉冲信号在脉冲序列中之前相邻的连续多个脉冲信号的脉宽的平均值。其中,该连续多个脉冲信号中各脉冲信号的脉宽与其相邻前一脉冲信号的脉宽之间的差值不大于预设偏差值,因此,可以认为该连续多个脉冲信号的脉宽未发生变化。
在实际应用中,可以在每生成一个脉冲信号,即针对生成的脉冲信号,获取脉冲信号的实际脉宽,并执行本公开实施例的后续流程。或者,也可以在得到脉冲序列后,依次针对脉冲序列中的各脉冲信号,获取脉冲信号的实际脉宽,并执行本公开实施例的后续流程。或者,也可以在得到脉冲序列的过程中,依次针对脉冲序列中的各脉冲信号,获取脉冲信号的实际脉宽,并执行本公开实施例的后续流程,即得到脉冲序列的操作和获取各脉冲信号的实际脉宽的操作,可以以任意时间差方式异步执行,本公开实施例对此不做限制。
本公开实施例,对于脉宽超出预设记录脉宽情况下的光强一般较弱,产生的脉冲数量较少,此时对脉冲信号的相关信息进行编码输出,实际上所占用的计算资源和数据传输带宽也不大,并不会占据大量的计算资源和带宽资源。
超出脉宽计数器范围的情况下的光强一般较弱,此时尽管不论比较结果如何均向外发送脉宽数据,实际上所占用的数据传输带宽也不大,并不会占据大量的带宽资源。
可选地,再参见图2,在本公开任一实施例的编码方法中,还可以在脉冲信号的脉宽相对于指定脉宽发生变化时,将指定脉宽更新为该脉冲信号的脉宽(216)。
基于本实施例,在确定脉冲信号的脉宽相对于发生变化之后,即脉冲序列的脉宽发生了变化,将上述指定脉宽更新为该脉冲信号的脉宽,以该脉冲信号的脉宽作为指定脉宽,通过指定脉宽的动态更新,有助于后续基于该指定脉宽确认下一脉冲信号的脉宽是否发生变化,从而实现了对脉冲序列中各脉冲信号的脉宽是否发生变化的有效确定。
可选地,在其中一些实现方式中,在操作102或者202中,可以通过光敏单元,将针对空间接收的光子流转换成表征光强变化过程的脉冲信号。
相应地,在操作104或212中,可以对光敏单元在光敏单元阵列中的位置、脉冲信号的时刻信息和脉冲信号的脉宽进行编码,得到该空间或该光敏单元对应的编码序列,得到该空间或该光敏单元对应的编码序列。其中,编码数据格式例如可以表示为(x,y,t,τ),其中,x、y分别表示光敏单元在光敏单元阵列处于第x行、第y列的位置,t表示脉冲结束时刻,τ表示脉宽。
在操作106或208中,可以对光敏单元在光敏单元阵列中的位置和脉冲信号的时刻信息进行编码,得到该空间或该光敏单元对应的编码序列。其中,编码数据格式例如可以表示为(x,y,t),其中,x、y分别表示光敏单元在光敏单元阵列处于第x行、第y列的位置,t表示脉冲结束时刻。
其中,各光敏单元可以分别对整个观测场景中指定的空间位置的光信号进行时域采样,由多个光敏单元排列形成的光敏单元阵列中,各光敏单元分别实现对观测场景中一个空间的光信号的采集,不同光敏单元对应的空间不重叠,光敏单元阵列中的各光敏单元互相配合,覆盖整个观测场景,从而可以实现对整个观测场景中的光信号的采样。观测场景中所有空间对应的脉冲序列按照空间的空间位置关系排列,形成脉冲阵列。上述实施例是针对一个光敏单元采集的空间的光信号的处理过程,针对光敏单元阵列中的各光敏单元采集的空间的光信号,分别按照上述实施例的流程独立进行处理,则可以实现对整个观测场景中光信号的处理,得到整个观测场景对应的脉冲信号的编码阵列。
可选地,在本公开任一实施例的编码方法中,基于时序关系,由该空间对应的脉冲信号的编码信息形成编码序列之后,还可以基于光敏单元阵列中各光敏单元在光敏单元阵列中的位置,由各光敏单元对应的编码序列形成编码序列阵列,然后,采用异步通信协议,例如,地址事件表达(Address Event Representation,AER),输出该编码序列阵列。
基于编码序列阵列可以重构任意时刻的图像。采用异步传输协议方式输出时该编码序列阵列,由于每个光敏单元都被分配了一个地址,对应于它在光敏单元阵列(或者图像)中的位置,事件通过高速数字并行总线进行传输。当光敏单元产生一个编码信息时,为这个编码信息分配一个数字地址,编码信息通过总线路由传输到目标芯片,通过分析数字地址,光敏单元能够向目标芯片中的任何目标神经元发送一个事件。通过这种方式,光敏单元和目标芯片中具有相同地址的单元/模块实际上与同一脉冲相连,AER协议可以在神经元之间建立虚拟连接,利于大规模脉冲神经网络(Spiking Neural Network,SNN)的高效硬件实现。通过异步传输协议方式输出编码信息,使得光敏单元阵列中的各个光敏单元的对外输出编码信息的启动时间可以不同,有助于防止大量光敏单元同时爆发传输大量数据到时传输拥堵等问题,从而避免数据丢失,并提高数据传输效率和传输带宽利用率。
图4为本公开解码方法一实施例的流程图。如图4所示,该实施例的解码方法包括:
302,获取空间对应的编码序列。
其中,该编码序列由空间对应的脉冲信号的编码信息基于时序关系形成,该脉冲信号的编码信息由脉宽相对于指定脉宽发生变化的脉冲信号的时刻信息和脉宽编码得到,和/或,该脉冲信号的编码信息由脉宽达到预设记录脉宽的脉冲信号的时刻信息编码得到。
本公开实施例的编码序列可以是通过本公开上述任一编码方法实施例得到,本公开实施例的编码方法和解码方法之间可以相互参见对应实现,此处不再赘述。
304,对该空间对应的编码序列进行解码,得到该空间对应的解码结果序列。
其中,该解码结果包括基于时序关系的至少一个脉冲信号的解码结果,每个解码结果(对应于编码信息)包括以下至少之一:脉宽相对于指定脉宽发生变化的脉冲信号的时刻信息和脉宽,脉宽达到预设记录脉宽的脉冲信号的时刻信息。
基于本实施例,可以对该空间对应的编码序列进行解码,得到对应的解码结果序列,其中的每个解码结果包括一个脉宽相对于指定脉宽发生变化的脉冲信号的时刻信息和脉宽,脉宽达到预设记录脉宽的脉冲信号的时刻信息。由于仅在脉冲信号的脉宽相对于指定脉宽发生变化时、以及脉宽达到预设记录脉宽时才进行编码、而无需对其他脉冲信号的相关信息进行编码,通过编码序列可以反映出空间的光强及光强变化情况,未编码则意味着光强未发生改变,由此可以减小编码数据的数据量、从而减小对外传输数据的数据量,有助于降低传输压力、提高传输效率;其次,由于减小了编码数据的数据量,可以节省编码数据所需占用的硬件资源从而降低硬件要求,有助于提高编码效率和资源利用率;另外,在脉冲信号的脉宽达到预设记录脉宽时即进行编码,可以避免由于硬件面积、功耗等硬件限制因素导致所能够记录的脉宽范围受限而限制成像动态范围,能够在减小编码数据的数据量的情况下提升成像动态范围。
可选地,在其中一些实现方式中,在操作302中,可以获取观测场景对应的编码序列阵列,该编码序列阵列包括:观测场景中各空间对应的编码序列。相应地,在操作304中,可以对该编码序列阵列进行解码,得到观测场景中各空间对应的编码结果序列。
图5为本公开解码方法另一实施例的流程图。如图5所示,在图4所示实施例的基础上,该实施例的解码方法中,在操作304之后还包括:
402,基于各解码结果,确定解码结果对应的脉冲信号的实际脉宽。
可选地,在其中一些实现方式中,操作402中,可以基于解码结果,确定该解码结果中是否包括小于预设记录脉宽的脉宽;若解码结果中包括小于预设记录脉宽的脉宽,则确定解码结果中的脉宽为对应的脉冲信号的实际脉宽;否则,若解码结果中未包括脉宽、或者包括最大脉宽标识、或者包括预设记录脉宽的脉宽,可以确定该解码结果对应的脉冲信号的实际脉宽达到或超过最大记录脉宽的脉宽,则可以基于解码结果中的脉冲结束时刻与该解码结果在所在解码结果序列中相邻前一解码结果中脉冲结束时刻,确定对应的脉冲信号的实际脉宽,例如,以解码结果中的脉冲结束时刻与相邻前一解码结果中脉冲结束时刻之间的差值,作为对应的脉冲信号的实际脉宽。
例如,继续参考图3,以处于[62.5,77]的脉冲信号的脉宽计算为例,其相邻前一脉冲信号的脉冲处于[52.5,62.5]、脉宽为10,其解码结果为(x,y,62.5,8);在第77个单位周期的结束时刻输出的脉冲信号的解码结果为(x,y,77,8),由于8为预设记录脉宽,基于该解码结果中的脉冲结束时刻77与该解码结果在所在解码结果序列中相邻前一解码结果中脉冲结束时刻62.5之间的差值77-62.5=14.5,作为该脉冲信号的实际脉宽,并进行记录。
基于本实施例,尽管受限于硬件面积、功耗等实际因素,硬件所能记录的最大脉宽受限,仍可以通过解码结果来计算得到比硬件所能记录的最大脉宽更大的脉宽,即更弱的光强,从而扩展了动态范围。
可选地,在其中一些实现方式中,确定解码结果对应的脉冲信号的实际脉宽之后,还可以基于该空间对应的解码结果序列中各解码结果、以及各解码结果对应的脉冲信号的实际脉宽,确定该空间的光强值。
例如,可以通过以下方式获取各解码结果对应的脉冲信号对应的即时光强值I:I=k*1/τ。其中,τ为该脉冲信号的实际脉宽,k为大于零的常数,k的具体取值可以根据实际需求设定。
基于各编码结果确定对应的脉冲信号对应的即时光强值后,可以获知该空间光强发生后的即时光强值以及光强值超过预设光强值(对应脉宽超过预设记录脉宽)时的即时光强值,每两个相邻的光强值之间即为该相邻的光强值中的前一光强值,由此即可确定该空间在时域上的光强值和光强变化,基于整个观测场景中各空间的光强值,可以进行图像重建或者直接用于目标检测。基于观测场景中各空间在时域上的光强变化,即可确定整个观测场景的光强变化,可以有效进行对于目标检测等需要随时探测光信号变化的机器视觉任务,提高此类机器视觉任务的执行效果。
图6为本公开光信号的编码装置一实施例的结构示意图。该实施例的光信号的编码装置可用于实现本公开上述各光信号的编码方法实施例。如图6所示,该实施例的编码装置包括:转换模块502,编码模块504和形成模块506。其中:
转换模块502,用于将针对空间接收的光子流转换成表征光强变化过程的脉冲信号。
编码模块504,用于响应于该脉冲信号的脉宽相对于指定脉宽发生变化,对该脉冲信号的时刻信息和脉冲信号的脉宽进行编码,得到脉冲信号的编码信息;响应于该脉冲信号的脉宽达到预设记录脉宽,对脉冲信号的时刻信息进行编码,得到脉冲信号的编码信息。其中,脉冲信号的时刻信息可以包括脉冲信号的脉冲开始时刻和/或脉冲结束时刻。
形成模块506,用于基于时序关系,由空间对应的脉冲信号的编码信息形成编码序列。
基于本实施例,由于仅在脉冲信号的脉宽相对于指定脉宽发生变化时、以及脉宽达到预设记录脉宽时才进行编码、而无需对其他脉冲信号的相关信息进行编码,通过编码序列可以反映出空间的光强及光强变化情况,未编码则意味着光强未发生改变,由此可以减小编码数据的数据量、从而减小对外传输数据的数据量,有助于降低传输压力、提高传输效率;其次,由于减小了编码数据的数据量,可以节省编码数据所需占用的硬件资源从而降低硬件要求,有助于提高编码效率和资源利用率;另外,在脉冲信号的脉宽达到预设记录脉宽时即进行编码,可以避免由于硬件面积、功耗等硬件限制因素导致所能够记录的脉宽范围受限而限制成像动态范围,能够在减小编码数据的数据量的情况下提升成像动态范围。
图7为本公开光信号的编码装置另一实施例的结构示意图。如图7所示,在图6所示实施例的基础上该实施例的编码装置还可以包括:脉宽获取模块602,用于获取脉冲信号的脉宽;脉宽变化确定模块604,用于基于该脉冲信号的脉宽与指定脉宽之间的差值是否大于预设偏差值确定该脉冲信号的脉宽是否发生变化;最大脉宽确定模块606,用于确定该脉冲信号的脉宽是否达到预设记录脉宽。
可选地,在其中一些实现方式中,脉宽获取模块602,具体用于:获取脉冲信号的实际脉宽;获取脉冲信号的实际脉宽与预设记录脉宽中的较小值,为脉冲信号的脉宽。
可选地,在其中一些实现方式中,编码模块504,具体用于对脉冲信号的时刻信息进行编码;或者,对脉冲信号的时刻信息和最大脉宽标识进行编码,最大脉宽标识用于表示脉冲信号的脉宽大于或等于预设记录脉宽;或者,对脉冲信号的时刻信息和预设记录脉宽进行编码。
可选地,再参见图7,在本公开光信号的编码装置的又一实施例中,还可以包括:排序模块608,用于基于空间对应的脉冲信号的生成时刻,按照时序关系对空间对应的脉冲信号排序,得到空间对应的脉冲序列。相应地,上述指定脉宽例如可以包括但不限于以下任意一项:脉冲信号在脉冲序列中相邻的前一脉冲信号的脉宽;
脉冲信号在脉冲序列中之前相邻的连续多个脉冲信号中首个脉冲信号的脉宽;脉冲信号在脉冲序列中之前相邻的连续多个脉冲信号的脉宽的平均值;其中,连续多个脉冲信号中各脉冲信号的脉宽与相邻前一脉冲信号的脉宽之间的差值不大于预设偏差值。
可选地,再参见图7,在光信号的编码装置的再一实施例中,还可以包括:脉宽更新模块610,用于响应于脉冲信号的脉宽相对于指定脉宽发生变化,将指定脉宽更新为脉冲信号的脉宽。
可选地,在其中一些实现方式中,转换模块502,具体用于通过光敏单元,将针对空间接收的光子流转换成表征光强变化过程的脉冲信号。相应地,编码模块504,具体用于:响应于该脉冲信号的脉宽相对于指定脉宽发生变化,对光敏单元在光敏单元阵列中的位置、脉冲信号的时刻信息和脉冲信号的脉宽进行编码;响应于该脉冲信号的脉宽达到预设记录脉宽,对光敏单元在光敏单元阵列中的位置和脉冲信号的时刻信息进行编码。
可选地,再参见图7,在光信号的编码装置的再一实施例中,还可以包括:排列模块612,用于基于光敏单元阵列中各光敏单元在光敏单元阵列中的位置,由各光敏单元对应的编码序列形成编码序列阵列;传输模块614,用于采用异步通信协议输出编码序列阵列。
图8为本公开实施例中编码数据生成电路一具体实现示例的电路结构示意图。如图8所示,该编码数据生成电路包括:脉冲生成电路702,脉宽计数器704,脉宽存储器706,第一比较器708,计数器最高位进位器710,逻辑或电路712和时钟电路714。其中,脉冲生成电路702分别与脉宽计数器704、第一比较器708、逻辑或电路712和时钟电路714连接,脉宽计数器704分别与脉宽存储器706、第一比较器708、计数器最高位进位器710和时钟电路714连接,第一比较器708分别与脉冲生成电路702、脉宽计数器704、脉宽存储器706和逻辑或电路712连接,脉宽存储器706分别与脉宽计数器704、第一比较器708和逻辑或电路712连接,逻辑或电路712分别与脉冲生成电路702、脉宽计数器704、脉宽存储器706、第一比较器708、计数器最高位进位器710和时钟电路714连接。
其中:
脉冲生成电路702,持续采集空间的光信号并将该光信号转换为电信号进行累积,得到信号累积量,每当信号累积量达到预设累积阈值时生成一个脉冲信号,并将该信号累积量置0以便重新进行累积。
脉宽计数器704,在脉冲生成电路702在每个脉冲信号期间(即信号累积量从零累积到预设累积阈值),在时钟电路714的控制下进行累加计数,当脉宽计数值超过预设记录脉宽后停止计数,并触发计数器最高位进位器710的最高位进位为1;在脉冲生成电路702生成一个脉冲信号后,停止计数,向第一比较器708输出脉宽计数值,以便第一比较器708对该脉宽计数值与脉宽计数器704中的指定脉宽进行比较,以及根据逻辑或电路712的使能信号,向外部缓存区块输出预设记录脉宽或者脉宽计数值。
时钟电路714,按照单位周期进行计时。
脉宽存储器706,存储有指定脉宽值。
第一比较器708,比较脉宽计数器704输出的脉宽计数值与脉宽计数器704中的指定脉宽值是否相同,向逻辑或电路712输出比较结果,例如,若脉宽计数值与指定脉宽值相同,可以输出比较结果0,若脉宽计数值与指定脉宽值不相同,可以输出比较结果1,该比较结果的具体取值不做限制,无论比较结果如何,均将脉宽计数器704的脉宽计数值置0以便从0开始重新进行计数。
逻辑或电路712,对第一比较器708输出的比较结果与计数器最高位进位器710的最高位进行逻辑或操作,若比较结果相同且最高位不为1,则不向外输出。若比较结果不同或计数器最高位进位器710的最高位为1,逻辑或电路712输出1,则使能将脉宽存储器706中的值(即指定脉宽)更新为脉宽计数器704中的值(即脉宽计数值),并使能脉宽计数器704向外部缓存区块输出其脉宽计数值,同时触发时钟电路714向外部缓存区块输出计时信息(即时刻信息)。其中,脉宽(预设记录脉宽、脉宽计数值)和计时信息可以通过异步通信协议向外部缓存区块输出。
另外,每个脉冲生成电路702可以作为一个光敏单元。相应地,该编码数据生成电路还可以包括扫描电路714,扫描该脉冲生成电路702在光敏单元阵列中的位置(x,y),其中,x、y分别表示脉冲生成电路702在光敏单元阵列处于第x行、第y列的位置。逻辑或电路712可以在比较结果不同或计数器最高位进位器710的最高位为1时,触发扫描电路714扫描该脉冲生成电路702在光敏单元阵列中的位置(x,y)并向外部缓存区块输出。
可选地,在其中一些实现方式中,脉冲生成电路702可以包括:光电二极管(PD)7022、复位晶体管7024和第二比较器7026。其中:
光电二极管7022,正极接地,负极与复位晶体管7024的源极连接并用于输出电流信号;当光信号到来后,在光电二极管7022开始采集光信号并将其转换为电流信号,光电二极管7022上的电压Vpd在电流的作用下开始累积下降,在电压Vpd下降到参考信号Vref(作为预设累积阈值)时复位。
光电二极管是一种能够将光信号转换成电流或者电压信号的光探测器。管芯常使用一个具有光敏特征的PN结,对光的变化非常敏感,具有单向导电性,而且光强不同的时候会改变电学特性,因此,可以利用光照强弱来改变电路中的电压或电流。
复位晶体管7024,源极与光电二极管7022连接,漏极与电源模块Vdd连接,栅极与第一比较器708的输出端连接。
第二比较器7026,正输入端接收参考信号Vref(作为预设累积阈值),负输入端接收光电二极管7022负极输出的上的电压Vpd,输出端同时与复位晶体管7024的栅极、脉宽计数器704、第一比较器708和逻辑或电路712连接,在外部时钟714的控制下比较参考信号Vref和电压Vpd的大小,在电压Vpd大于参考信号Vref时,向脉宽计数器704输出低电平0,在电压Vpd小于或等于参考信号Vref时生成一个脉冲信号,并分别向复位晶体管7024、第一比较器708和逻辑或电路712输出高电平1,以控制复位晶体管7024将电压Vpd复位,触发第一比较器708比较脉宽计数器704输出的脉宽计数值与脉宽计数器704中的指定脉宽值是否相同,并触发逻辑或电路712对第一比较器708输出的比较结果与计数器最高位进位器710的最高位进行逻辑或操作。
具体来说,可以通过第二比较器7026实现对参考信号Vref和电压Vpd进行比较,当参考信号Vref小于或等于电压Vpd时,输出端向脉宽计数器704输出低电平0;当参考信号Vref大于电压Vpd时,输出端向复位晶体管7024输出高电平1。可选地,参考信号Vref可以为小于电源模块电压Vdd的电压信号。图9为本公开解码装置一实施例的结构示意图。该实施例的解码装置可用于实现本公开上述各解码方法实施例。如图9所示,该实施例的解码装置包括:获取模块802和解码模块804。其中:
获取模块802,用于获取空间对应的编码序列,其中,编码序列由空间对应的脉冲信号的编码信息基于时序关系形成,脉冲信号的编码信息由脉宽相对于指定脉宽发生变化的脉冲信号的时刻信息和脉宽编码得到,和/或,脉冲信号的编码信息由脉宽达到预设记录脉宽的脉冲信号的时刻信息编码得到。
解码模块804,用于对空间对应的编码序列进行解码,得到空间对应的解码结果序列,解码结果包括基于时序关系的至少一个脉冲信号的解码结果,每个解码结果包括以下至少之一:脉宽相对于指定脉宽发生变化的脉冲信号的时刻信息和脉宽,脉宽达到预设记录脉宽的脉冲信号的时刻信息。
基于本实施例,可以对该空间对应的编码序列进行解码,得到对应的解码结果序列,其中的每个解码结果包括一个脉宽相对于指定脉宽发生变化的脉冲信号的时刻信息和脉宽,脉宽达到预设记录脉宽的脉冲信号的时刻信息。由于仅在脉冲信号的脉宽相对于指定脉宽发生变化时、以及脉宽达到预设记录脉宽时才进行编码、而无需对其他脉冲信号的相关信息进行编码,通过编码序列可以反映出空间的光强及光强变化情况,未编码则意味着光强未发生改变,由此可以减小编码数据的数据量、从而减小对外传输数据的数据量,有助于降低传输压力、提高传输效率;其次,由于减小了编码数据的数据量,可以节省编码数据所需占用的硬件资源从而降低硬件要求,有助于提高编码效率和资源利用率;另外,在脉冲信号的脉宽达到预设记录脉宽时即进行编码,可以避免由于硬件面积、功耗等硬件限制因素导致所能够记录的脉宽范围受限而限制成像动态范围,能够在减小编码数据的数据量的情况下提升成像动态范围。
可选地,在其中一些实现方式中,获取模块802,具体用于获取观测场景对应的编码序列阵列,编码序列阵列包括:观测场景中各空间对应的编码序列。相应地,解码模块804,具体用于对编码序列阵列进行解码,得到观测场景中各空间对应的编码结果序列。
图10为本公开解码装置另一实施例的结构示意图。如图10所示,在图9所示实施例的基础上,该实施例的解码装置还可以包括:脉宽确定模块902,用于基于解码结果,确定解码结果对应的脉冲信号的实际脉宽。
可选地,在其中一些实现方式中,脉宽确定模块902,具体用于:基于解码结果,确定解码结果中是否包括小于预设记录脉宽的脉宽;若解码结果中包括小于预设记录脉宽的脉宽,确定解码结果中的脉宽为对应的脉冲信号的实际脉宽;否则,基于解码结果中的脉冲结束时刻与解码结果在所在解码结果序列中相邻前一解码结果中脉冲结束时刻,确定对应的脉冲信号的实际脉宽。
可选地,再参见图10,在解码装置的又一实施例中,还可以包括:光强值确定模块904,用于基于空间对应的解码结果序列中各解码结果、以及各解码结果对应的脉冲信号的脉宽,确定空间的光强值。
另外,本公开实施例提供了一种脉冲相机,包括本公开上述任一实施例所述的光信号的编码装置。
另外,本公开实施例提供了一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述存储器中存储的计算机程序,且所述计算机程序被执行时,实现本公开上述任一实施例所述的光信号的编码方法或解码方法。
可选地,在其中一些实现方式中,上述电子设备例如可以包括但不限于以下任意一项:集成电路、传感器等等。
可选地,在其中一些实现方式中,上述电子设备例如可以包括但不限于或者被纳入以下任意一项:脉冲相机、高速相机、音/视频播放器、导航设备、固定位置终端、娱乐单元、智能手机、通信设备、机动交通工具中的设备、摄像头、运动或可穿戴式相机、检测设备、飞行设备、医疗设备、安防设备等等。
另外,本公开实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现本公开上述任一实施例的脉冲信号的编码方法。
图11为本公开电子设备一个应用实施例的结构示意图。下面,参考图11来描述根据本公开实施例的电子设备。该电子设备可以是第一设备和第二设备中的任一个或两者、或与它们独立的单机设备,该单机设备可以与第一设备和第二设备进行通信,以从它们接收所采集到的输入信号。
如图11所示,电子设备包括脉冲信号的编码装置、一个或多个处理器和存储器。处理器可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备中的其他组件以执行期望的功能。
存储器可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器可以运行所述程序指令,以实现上文所述的本公开的各个实施例的光信号的编码方法或解码方法以及/或者其他期望的功能。
在一个示例中,电子设备还可以包括:输入装置和输出装置,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。
此外,该输入设备还可以包括例如键盘、鼠标等等。
该输出装置可以向外部输出各种信息,包括确定出的距离信息、方向信息等。该输出设备可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。
当然,为了简化,图11中仅示出了该电子设备中与本公开有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备还可以包括任何其他适当的组件。
除了上述方法和设备以外,本公开的实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述部分中描述的根据本公开各种实施例的光信号的编码方法或解码方法中的步骤。
所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。
此外,本公开的实施例还可以是计算机可读存储介质,其上存储有计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述部分中描述的根据本公开各种实施例的光信号的编码方法或解码方法中的步骤。
所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。
本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本公开中涉及的器件、装置、设备、系统的方框图仅作为例示性的例子并且不意图要求或暗示必须按照方框图示出的方式进行连接、布置、配置。如本领域技术人员将认识到的,可以按任意方式连接、布置、配置这些器件、装置、设备、系统。诸如“包括”、“包含”、“具有”等等的词语是开放性词汇,指“包括但不限于”,且可与其互换使用。这里所使用的词汇“或”和“和”指词汇“和/或”,且可与其互换使用,除非上下文明确指示不是如此。这里所使用的词汇“诸如”指词组“诸如但不限于”,且可与其互换使用。
可能以许多方式来实现本公开的方法和装置。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本公开的方法和装置。用于所述方法的步骤的上述顺序仅是为了进行说明,本公开的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本公开实施为记录在记录介质中的程序,这些程序包括用于实现根据本公开的方法的机器可读指令。因而,本公开还覆盖存储用于执行根据本公开的方法的程序的记录介质。
还需要指出的是,在本公开的装置、设备和方法中,各部件或各步骤是可以分解和/或重新组合的。这些分解和/或重新组合应视为本公开的等效方案。
提供所公开的方面的以上描述以使本领域的任何技术人员能够做出或者使用本公开。对这些方面的各种修改对于本领域技术人员而言是非常显而易见的,并且在此定义的一般原理可以应用于其他方面而不脱离本公开的范围。因此,本公开不意图被限制到在此示出的方面,而是按照与在此公开的原理和新颖的特征一致的最宽范围。
为了例示和描述的目的已经给出了以上描述。此外,此描述不意图将本公开的实施例限制到在此公开的形式。尽管以上已经讨论了多个示例方面和实施例,但是本领域技术人员将认识到其某些变型、修改、改变、添加和子组合。
Claims (15)
1.一种光信号的编码方法,其特征在于,包括:
将针对空间接收的光子流转换成表征光强变化过程的脉冲信号;
响应于所述脉冲信号的脉宽相对于指定脉宽发生变化,对所述脉冲信号的时刻信息和所述脉冲信号的脉宽进行编码,得到所述脉冲信号的编码信息;其中,所述脉冲信号的时刻信息包括所述脉冲信号的脉冲开始时刻和/或脉冲结束时刻;
响应于所述脉冲信号的脉宽达到预设记录脉宽,对所述脉冲信号的时刻信息进行编码,得到所述脉冲信号的编码信息;
基于时序关系,由所述空间对应的脉冲信号的编码信息形成编码序列。
2.根据权利要求1所述的方法,其特征在于,将针对空间接收的光子流转换成表征光强变化过程的脉冲信号之后,还包括:
获取所述脉冲信号的脉宽;
基于所述脉冲信号的脉宽与指定脉宽之间的差值是否大于预设偏差值确定所述脉冲信号的脉宽是否发生变化,以及,确定所述脉冲信号的脉宽是否达到预设记录脉宽。
3.根据权利要求2所述的方法,其特征在于,获取所述脉冲信号的脉宽,包括:
获取所述脉冲信号的实际脉宽;
获取所述脉冲信号的实际脉宽与所述预设记录脉宽中的较小值,为所述脉冲信号的脉宽。
4.根据权利要求1-3任一所述的方法,其特征在于,对所述脉冲信号的时刻信息进行编码,包括以下任意一项:
对所述脉冲信号的时刻信息进行编码;
对所述脉冲信号的时刻信息和最大脉宽标识进行编码,所述最大脉宽标识用于表示所述脉冲信号的脉宽大于或等于所述预设记录脉宽;
对所述脉冲信号的时刻信息和所述预设记录脉宽进行编码。
5.根据权利要求1-4任一所述的方法,其特征在于,将针对空间接收的光子流转换成表征光强变化过程的脉冲信号之后,还包括:
基于所述空间对应的脉冲信号的生成时刻,按照时序关系对所述空间对应的脉冲信号排序,得到所述空间对应的脉冲序列;
所述指定脉宽包括以下任意一项:
所述脉冲信号在所述脉冲序列中相邻的前一脉冲信号的脉宽;
所述脉冲信号在所述脉冲序列中之前相邻的连续多个脉冲信号中首个脉冲信号的脉宽;
所述脉冲信号在所述脉冲序列中之前相邻的连续多个脉冲信号的脉宽的平均值;
其中,所述连续多个脉冲信号中各脉冲信号的脉宽与相邻前一脉冲信号的脉宽之间的差值不大于所述预设偏差值。
6.根据权利要求1-5任一所述的方法,其特征在于,还包括:
响应于所述脉冲信号的脉宽相对于指定脉宽发生变化,将所述指定脉宽更新为所述脉冲信号的脉宽。
7.根据权利要求1-6任一所述的方法,其特征在于,将针对空间接收的光子流转换成表征光强变化过程的脉冲信号,包括:
通过光敏单元,将针对空间接收的光子流转换成表征光强变化过程的脉冲信号;
对所述脉冲信号的时刻信息和所述脉冲信号的脉宽进行编码,包括:
对所述光敏单元在光敏单元阵列中的位置、所述脉冲信号的时刻信息和所述脉冲信号的脉宽进行编码;
对所述脉冲信号的时刻信息进行编码,包括:
对所述光敏单元在光敏单元阵列中的位置和所述脉冲信号的时刻信息进行编码。
8.一种解码方法,其特征在于,包括:
获取空间对应的编码序列,其中,所述编码序列由所述空间对应的脉冲信号的编码信息基于时序关系形成,所述脉冲信号的编码信息由脉宽相对于指定脉宽发生变化的脉冲信号的时刻信息和脉宽编码得到,和/或,所述脉冲信号的编码信息由脉宽达到预设记录脉宽的脉冲信号的时刻信息编码得到;
对所述空间对应的编码序列进行解码,得到所述空间对应的解码结果序列,所述解码结果包括基于时序关系的至少一个脉冲信号的解码结果,每个解码结果包括以下至少之一:脉宽相对于指定脉宽发生变化的脉冲信号的时刻信息和脉宽,脉宽达到预设记录脉宽的脉冲信号的时刻信息。
9.根据权利要求8所述的方法,其特征在于,获取空间对应的编码序列,包括:
获取观测场景对应的编码序列阵列,所述编码序列阵列包括:所述观测场景中各空间对应的编码序列;
对所述空间对应的编码序列进行解码,得到所述空间对应的解码结果序列,包括:
对所述编码序列阵列进行解码,得到所述观测场景中各空间对应的编码结果序列。
10.根据权利要求8-9任一所述的方法,其特征在于,得到所述空间对应的解码结果序列之后,还包括:
基于所述解码结果,确定所述解码结果对应的脉冲信号的实际脉宽。
11.一种光信号的编码装置,其特征在于,包括:
转换模块,用于将针对空间接收的光子流转换成表征光强变化过程的脉冲信号;
编码模块,用于响应于所述脉冲信号的脉宽相对于指定脉宽发生变化,对所述脉冲信号的时刻信息和所述脉冲信号的脉宽进行编码,得到所述脉冲信号的编码信息;其中,所述脉冲信号的时刻信息包括所述脉冲信号的脉冲开始时刻和/或脉冲结束时刻;响应于所述脉冲信号的脉宽达到预设记录脉宽,对所述脉冲信号的时刻信息进行编码,得到所述脉冲信号的编码信息;
形成模块,用于基于时序关系,由所述空间对应的脉冲信号的编码信息形成编码序列。
12.一种解码装置,其特征在于,包括:
获取模块,用于获取空间对应的编码序列,其中,所述编码序列由所述空间对应的脉冲信号的编码信息基于时序关系形成,所述脉冲信号的编码信息由脉宽相对于指定脉宽发生变化的脉冲信号的时刻信息和脉宽编码得到,和/或,所述脉冲信号的编码信息由脉宽达到预设记录脉宽的脉冲信号的时刻信息编码得到;
解码模块,用于对所述空间对应的编码序列进行解码,得到所述空间对应的解码结果序列,所述解码结果包括基于时序关系的至少一个脉冲信号的解码结果,每个解码结果包括以下至少之一:脉宽相对于指定脉宽发生变化的脉冲信号的时刻信息和脉宽,脉宽达到预设记录脉宽的脉冲信号的时刻信息。
13.一种脉冲相机,其特征在于,包括权利要求11所述的光信号的编码装置。
14.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述存储器中存储的计算机程序,且所述计算机程序被执行时,实现上述权利要求1-10任一所述的方法。
15.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该计算机程序被处理器执行时,实现上述权利要求1-10任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310876921.3A CN117879646A (zh) | 2023-07-17 | 2023-07-17 | 光信号的编码方法和装置、解码方法和装置、设备和介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310876921.3A CN117879646A (zh) | 2023-07-17 | 2023-07-17 | 光信号的编码方法和装置、解码方法和装置、设备和介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117879646A true CN117879646A (zh) | 2024-04-12 |
Family
ID=90593404
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310876921.3A Pending CN117879646A (zh) | 2023-07-17 | 2023-07-17 | 光信号的编码方法和装置、解码方法和装置、设备和介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117879646A (zh) |
-
2023
- 2023-07-17 CN CN202310876921.3A patent/CN117879646A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10395376B2 (en) | CMOS image sensor on-die motion detection using inter-pixel mesh relationship | |
CN111247801B (zh) | 用于事件相机数据处理的系统和方法 | |
CN112262568B (zh) | 具有直接存储器控制的基于事件的视觉传感器 | |
EP2688296B1 (en) | Video monitoring system and method | |
CN110536078A (zh) | 处理动态视觉传感器的数据的方法和动态视觉传感器 | |
CN110971792B (zh) | 一种动态视觉传感器 | |
CN112596069A (zh) | 距离测量方法及系统、计算机可读介质和电子设备 | |
CN109685748B (zh) | 图像处理方法、装置、电子设备、计算机可读存储介质 | |
CN109998582B (zh) | 符合判选方法、装置、设备和介质 | |
US20220264035A1 (en) | Dynamic Region of Interest (ROI) for Event-Based Vision Sensors | |
US9462203B2 (en) | CMOS image sensor compatible with electrical signals of CCD image sensor, and image processing system | |
CN117879646A (zh) | 光信号的编码方法和装置、解码方法和装置、设备和介质 | |
CN220570631U (zh) | 光电传感器及其像素单元、脉冲相机和电子设备 | |
CN220570632U (zh) | 光电传感器及其像素单元、脉冲相机和电子设备 | |
CN117833958A (zh) | 光信号的编码方法和装置、解码方法和装置、设备和介质 | |
CN114449129B (zh) | 多传感器时间同步方法和装置、电子设备和存储介质 | |
CN115866427B (zh) | 脉冲数据读出方法和装置、系统、设备和介质 | |
CN114339089A (zh) | 一种事件图像输出方法、装置、设备及可读存储介质 | |
CN114365479A (zh) | 基于事件的视觉传感器的延迟均衡 | |
CN117294968B (zh) | 信号处理电路和电子设备 | |
CN116744138B (zh) | 脉冲序列式传感器像素单元、脉冲序列式传感器及设备 | |
Kim et al. | A 43.7 mw 94 fps cmos image sensor-based stereo matching accelerator with focal-plane rectification and analog census transformation | |
CN113329194B (zh) | 一种提取即时运动的图像传感器及其方法 | |
CN117169858A (zh) | 飞行时间传感器像素单元、飞行时间传感器以及电子设备 | |
CN117857940A (zh) | 信号处理电路和电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination |