CN110692083B - 用于动态视觉传感器的块匹配光流和立体视觉 - Google Patents

用于动态视觉传感器的块匹配光流和立体视觉 Download PDF

Info

Publication number
CN110692083B
CN110692083B CN201880035827.2A CN201880035827A CN110692083B CN 110692083 B CN110692083 B CN 110692083B CN 201880035827 A CN201880035827 A CN 201880035827A CN 110692083 B CN110692083 B CN 110692083B
Authority
CN
China
Prior art keywords
time slice
slice frame
event
time
frame
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.)
Active
Application number
CN201880035827.2A
Other languages
English (en)
Other versions
CN110692083A (zh
Inventor
托比亚斯·德尔布鲁克
敏·刘
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Universitaet Zuerich
Original Assignee
Universitaet Zuerich
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Universitaet Zuerich filed Critical Universitaet Zuerich
Publication of CN110692083A publication Critical patent/CN110692083A/zh
Application granted granted Critical
Publication of CN110692083B publication Critical patent/CN110692083B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/269Analysis of motion using gradient-based methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/223Analysis of motion using block-matching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • G06T7/285Analysis of motion using a sequence of stereo image pairs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • G06T2207/10021Stereoscopic video; Stereoscopic image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20016Hierarchical, coarse-to-fine, multiscale or multiresolution image processing; Pyramid transform

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Image Analysis (AREA)

Abstract

本发明涉及使用基于事件的视觉传感器来对光流进行计算。

Description

用于动态视觉传感器的块匹配光流和立体视觉
技术领域
本发明涉及一种用于使用诸如动态视觉传感器(DVS)(例如,US7,728,269)之类的基于事件的视觉传感器来计算光流的方法和设备。特别地,本发明涉及在FPGA上计算光流的基于事件的块匹配算法。
在下文中,这样的基于事件的视觉传感器也被称为基于事件的相机或DVS。
背景技术
光流(OF)的迅速和低功率计算在机器人学中潜在地有用。基于事件的视觉传感器产生快速且稀疏的输出并且具有较高的动态范围,但是常规的光流算法基于帧并且无法直接与这种基于事件的相机一起使用。
先前的DVS光流方法在密集纹理输入的情况下无法正常工作,并且不是设计成用于在逻辑电路中实施。
光流(OF)估计一直是计算机视觉中的核心主题;光流被广泛地用于分割、3D重建和导航。光流首先在神经科学的背景下被研究用于了解昆虫和哺乳动物的运动知觉。在计算机视觉中,光流描述了由相机/视觉传感器在空间中移动所引起的运动场。
特别地,在对象和/或视觉传感器/相机正移动的场景(例如,3D)的图像序列中,该场景的每个点(在以相机或视觉传感器为中心的坐标系中)沿着3D路径移动,该3D路径在投影到图像平面上时产生具有速度dr(t)/dt的2D路径r(t)=x(t),y(t)。所有可见的表面点的2D速度被称为运动场。光流计算的目的是计算运动场的近似估计。
两种周知的不昂贵的光流算法是Lucas-Kanade[1]和Horn-Schunck[2]方法。许多光流方法的核心是搜索可能的流从而在每个图像或特征位置处选择最可能的一种流。这种使用密集图像块的搜索是非常昂贵的并且难以在嵌入式平台上实时地计算。
基于事件的视觉传感器是数据驱动而非常规样本驱动的。常规样本驱动意味着相机以固定的间隔发送输出数据,因此其通常被表示为基于帧的相机。然而,基于事件的视觉传感器/相机的输出是由亮度(或光强度)变化而非固定的采样间隔驱动的。因此,需要设计新的光流方法。
Benosman等人[3]提出了一种时间-表面方法,该方法将2D事件和时间戳组合到3D空间中,并且光流通过局部平面拟合来获得。[4]提出了一种基于Lucas-Kanade梯度的方法,该方法收集事件的短2D直方图并解决该直方图上的亮度恒定约束。在2015年,Conradt[5]提出了一种在ARM 7微控制器上的实时DVS光流算法实现。Barranco[6]提出了一种用于高频纹理区域的更昂贵的基于相位的方法。[7]在Java框架jAER[8]中重新实现了这些方法中的几种方法,并将它们与基于定向边的飞行时间的最早的jAER方法进行了比较。其结论是,所有方法对于尖锐和稀疏的边缘而言提供了相当的精度,但是由于违反了基本假设(例如平滑的梯度或孤立的边缘),这些方法在有纹理的或低空间频率输入上均失败了。该论文还介绍了对集成相机惯性测量单元(IMU)进行使用而根据相机旋转获得地面真实全局光流,并公开了我们在此使用的240x180像素DVS相机的基准数据集。现有工作中的大部分工作都基于PC软件算法[3][4][6][7]。尽管[5]基于嵌入式***并且可以实时工作,但[5]的特征仅是对于相机旋转而不是相机在空间中平移的,并且[5]对事件的直接飞行时间的使用使得其在密集纹理的场景的情况下不太可能正常工作,并且其承受就边缘而言的光圈问题。
在视频技术中,光流被称为运动估计(ME),并且光流在运用视频序列的时间冗余来实现诸如MPEG-4和H.263[9]的视频压缩标准方面被广泛地使用。运动估计的流水线包括块匹配。块匹配意味着矩形像素块在帧之间进行匹配以找到最佳匹配。块匹配在计算上是昂贵的。这就是为什么现在是在专用逻辑电路中广泛实现的原因。为了解决这个问题,Shahrukh[9]中提出了基于块匹配的逻辑运动估计实现的示例。
基于以上,本发明要解决的问题在于提供一种用于使用动态视觉传感器来计算光流且特别是用于计算立体视觉的有效的方法和设备。
发明内容
本发明的这些方面的优选实施方式在从属权利要求中陈述和/或在下面描述。
根据权利要求1,公开了一种用于对由基于事件的视觉传感器捕获的场景中的光流进行计算的方法,该视觉传感器包括多个像素并且被配置为输出变化事件的流,其中,每个变化事件对应于由这些像素中的一个像素检测到的亮度变化,并且每个变化事件包括:(例如微秒)时间戳(即变化事件发生的时间)、检测到所述亮度变化的像素的像素地址,以及描述所述亮度变化的符号的参数(例如二进制极性),
-其中,变化事件被累积到至少三个时间片帧中,所述至少三个时间片帧即为始于时间t的当前第一时间片帧、始于时间t-d的第二时间片帧以及始于时间t-2*d的第三时间片帧,其中,d是根据时间片交换(例如旋转)方法的特别地包括不同时间量的相应的时间片帧的持续时间,
-其中,在所述持续时间d期间变化事件被累积到当前第一时间片帧(该当前时间片帧累积该变化事件发生时所处的对应的像素处的相应的变化事件)中,
-其中,使用距离度量对第二时间片帧的参考块——该参考块包括以当前第一时间片帧中的最近的变化事件的像素为中心的像素(例如,这些像素构成的方形)——与第三时间片帧中的搜索块进行比较以找到与参考块最相似的搜索块(特别地,最相似的搜索块的中心像素相对于最近的变化事件的所述像素的相对位置指示最近的变化事件的所述像素的位置处的光流;特别地,光流的方向由从最近的变化事件的所述像素指向最相似的搜索块的中心像素的速度矢量给出,并且速度由速度矢量的长度除以第三时间片帧(t-2*d)的终点与第二时间片帧(t-d.)之间的持续时间d给出),并且
-其中,三个时间片帧周期性地交换(例如旋转),使得当前第一时间片帧(t)变为第二时间片帧(t-d)、第二时间片帧(t-d)变成第三时间片帧(t-2*d)、并且第三时间片帧(t-2*d)被清除并成为当前第一时间片帧(t)。
特别地,本发明提出了一种新的基于块匹配的基于事件的视觉传感器光流算法。该算法既在软件中也在FPGA上实现。特别地,根据实施方式,对于每个事件而言,该算法将运动方向作为9个方向中的一个方向进行计算。特别地,运动速度由采样间隔设定。结果表明,与先前的方法相比,平均角度误差可以提高30%。光流可以在FPGA上以50MHz时钟、每个事件0.2μs(11个时钟周期)来计算,这比在台式PC上运行的Java软件实现快20倍。样本数据表明:该方法在以边缘、稀疏特征和密集纹理为主导的场景下工作。
特别地,基于事件的视觉传感器的每个像素产生与由该像素产生的光电流有关的信号(例如,单调的),该光电流与入射到相应的像素上的光的强度成比例,并且其中,每个像素仅在自相应的像素的上一次变化起由于入射到该相应的像素上的光而产生的相应的信号增加了大于第一阈值的量或者减小了小于第二阈值的量时输出变化事件。
例如,像素(像素例如为像素电路)被设计为将光电流转换为信号,该信号是相应的像素的光电流的(例如,自然)对数。然而,像素(或像素电路)也可以被设计为通过例如将另一单调变化的函数——例如平方根函数——应用到光电流或者随时间缓慢地变化以优化响应(例如,将响应的感测范围最佳地控制成设置在时间平均输入值的中心)的一些其他函数而将光电流转化为信号。特别地,各个像素的基本特征在于该像素检测光电流的变化并响应于这些变化而发出变化事件,其中,特别地,相比于从其所有像素以恒定的速率输出信号的标准视觉传感器,这些变化事件是异步事件。
根据本发明的方法的实施方式,所述距离度量是参考块像素与搜索块的像素之间的绝对差之和。
此外,根据本发明的方法的实施方式,使用对基于事件的视觉传感器的原始地址空间进行二次采样的多组时间片帧。
此外,根据本发明的方法的实施方式,所述第一时间片帧、所述第二时间片帧和所述第三时间片帧的所述交换(例如,旋转)是以恒定的时间间隔进行的。
此外,根据本发明的方法的实施方式,所述第一时间片帧、所述第二时间片帧和所述第三时间片帧的所述交换(例如,旋转)是在累积到相应的第一时间片帧中的某一总事件计数、特别是恒定的总事件计数的状态下进行的。
此外,根据本发明的方法的实施方式,所述第一时间片帧、所述第二时间片帧和所述第三时间片帧的所述交换是在当前第一时间片的任意子区域累积指定数量的变化事件时进行的。
此外,根据本发明的方法的实施方式,所述第一时间片帧、所述第二时间片帧和所述第三时间片帧的所述交换(例如旋转)是在自从所述时间片帧的上一次交换起场景的总的集成的运动超过阈值量时进行的。特别地,总的集成的运动是累积的所测量的光流的概要统计,例如,所测量的局部光流的矢量和的长度或光流(速度)矢量的大小之和的长度。
此外,根据本发明的方法的实施方式,在所述持续时间d之后,所述第一时间片帧、所述第二时间片帧和所述第三时间片帧的所述交换(例如旋转)是根据参考块与相应的最相似的搜索块之间的平均匹配距离D来控制的,该平均匹配距离是使用所计算的光流分布的直方图来确定的。
此外,根据本发明的方法的实施方式,所述总事件计数是根据参考块与相应的最相似的搜索块之间的平均匹配距离D来控制的,该平均匹配距离是使用所计算的光流分布的直方图来确定的。
此外,根据本发明的方法的实施方式,所述指定数量是根据参考块与相应的最相似的搜索块之间的平均匹配距离D来控制的,该平均匹配距离是使用所计算的光流分布的直方图来确定的。
此外,根据本发明的方法的实施方式,所述第一时间片帧、所述第二时间片帧和所述第三时间片帧各自形成二进制位图时间片帧。
此外,根据本发明的方法的替代实施方式,所述第一时间片帧、所述第二时间片帧和所述第三时间片帧各自形成多位像素时间片帧。
此外,根据本发明的方法的实施方式,对相应的第三时间片帧进行穷举式搜索以找到所述最相似的搜索块。
此外,根据本发明的方法的实施方式,使用菱形搜索以找到所述最相似的搜索块。
此外,根据本发明的方法的实施方式,仅对包括足够的预定数量的有效像素的那些参考块与搜索块进行比较以便拒绝离群值,其中,有效像素是已累积有变化事件的像素。
此外,根据本发明的方法的实施方式,在参考块与所述最相似的搜索块之间的距离(例如,根据距离度量)超过距离阈值的情况下,所述最相似的搜索块作为离群值而被拒绝。此处,概念距离涉及块差异性,即,该概念距离是块差异性度量。特别地,如果最佳匹配的参考块和搜索块仍然非常不相似,则应拒绝匹配并且不输出流事件。
此外,根据本发明的方法的实施方式,所述最近的变化事件中的一些变化事件被累积到当前第一时间片中,但是被跳过且因此不用于将参考块的对中以提高根据本发明的方法的实时性能。
此外,根据本发明的方法的实施方式,所述跳过是用于执行根据本发明的方法的硬件/设备仍在忙于处理来自先前的变化事件的光流的情况下进行的。
此外,根据本发明的方法的实施方式,包括像素位置、速度矢量、且特别地包括沿速度矢量的方向的速度的光流事件是根据相应的参考块和最相似的搜索块来计算的,并且特别是——在速度方面——也根据持续时间d来计算(也参见上文)。
此外,根据本发明的方法的实施方式,所述光流事件被累积到规则地间隔开的、可选地被二次采样的运动场上。
此外,根据本发明的方法的实施方式,参考块与搜索块之间的绝对距离之和是并行计算的。
此外,根据本发明的方法的实施方式,其中,绝对距离的最小和是并行计算的。
根据本发明的另一方面,公开了一种用于对来自左部的基于事件的视觉传感器和右部的基于事件的视觉传感器的立体视觉进行计算的方法,其中,每个基于事件的视觉传感器包括多个像素并且被配置为输出变化事件的流,其中,每个变化事件对应于由这些像素中的一个像素检测到的亮度变化,并且每个变化事件包括(例如,微秒)时间戳(即,变化事件发生的时间)、检测到所述亮度变化的像素的像素地址、以及描述所述亮度变化的符号的参数(例如二进制极性),
-其中,对于每个视觉传感器而言,变化事件被累积到至少两个时间片帧中,所述至少两个时间片帧即为相应地始于时间t的第一当前时间片帧和相应地始于时间t-d的第二时间片帧,
-其中,左部视觉传感器的变化事件在所述持续时间d期间被累积到左部视觉传感器的当前第一时间片帧中,并且其中,右部视觉传感器的变化事件在所述持续时间d期间被累积到右部视觉传感器的当前第一时间片帧中(该相应的当前时间片帧累积变化事件发生时所处的对应的像素处的相应的变化事件),
-其中,使用距离度量对右部视觉传感器的第二时间片帧的参考块——该参考块包括以右部视觉传感器的当前第一时间片帧中的最近的变化事件的像素为中心的像素(例如,这些像素构成的方形)——与左部视觉传感器的第二时间片帧中的搜索块进行比较以找到与该参考块最相似的搜索块,并且其中,使用距离度量对左部视觉传感器的第二时间片帧的另一参考块——该另一参考块包括以左部视觉传感器的当前第一时间片帧中的最近的变化事件的像素为中心的像素(例如,这些像素构成的方形)——与右部视觉传感器的第二时间片帧中的另一搜索块进行比较以找到与该另一参考块最相似的另一搜索块,以及
-其中,这四个时间片帧周期性地且同时地交换(例如旋转),使得左部视觉传感器的当前第一时间片帧变为左部视觉传感器的第二时间片帧,右部视觉传感器的第一时间片帧变为右部视觉传感器的第二时间片帧,并且左部视觉传感器的第一时间片帧和右部视觉传感器的第一时间片帧被清除。
特别地,用于计算立体视觉的方法的特征还可以在于在根据本发明的用于计算光流的方法的上下文中描述的从属权利要求的特征/主题。
根据本发明的又一方面,公开了一种用于计算光流的设备。
用于对由基于事件的视觉传感器捕获的场景中的光流进行计算的设备包括基于事件的视觉传感器,该基于事件的视觉传感器包括多个像素并且被配置为输出变化事件的流,其中,每个变化事件对应于由这些像素中的一个像素检测到的亮度变化,并且每个变化事件包括(例如,微秒)时间戳(即,变化事件发生的时间)、检测到所述亮度变化的像素的像素地址、以及描述所述亮度变化的符号的参数(例如,二进制极性),
-其中,该设备被配置为将变化事件累积到至少三个时间片帧中,所述至少三个时间片帧即为始于时间t的当前第一时间片帧、始于时间t-d的第二时间片帧、以及始于时间t-2*d的第三时间片帧,其中,d是相应的时间片帧的持续时间,
-其中,该设备还被配置为在所述持续时间d期间将变化事件累积到当前第一时间片帧(该当前时间片帧累积变化事件发生时所处的对应的像素处的相应的变化事件)中,
-并且其中,该设备还被配置为使用距离度量对第二时间片帧的参考块——该参考块包括以当前第一时间片帧中的最近的变化事件的像素为中心的像素(例如,这些像素构成的方形)——与第三时间片帧中的搜索块进行比较以找到最与参考块最相似的搜索块,以及
-其中,该设备还被配置为将这三个时间片帧周期性地交换(例如旋转),使得当前第一时间片帧变为第二时间片帧、第二时间片帧变为第三时间片帧、并且第三时间片帧被清除并成为当前第一时间片帧。
在相应的实施方式中,根据本发明的设备可以还被配置为执行根据本发明的方法步骤。特别地,可以使用与根据本发明的用于计算光流的方法有关的从属权利要求/实施方式的主题来进一步表征根据本发明的设备。以下描述的用于立体视觉的设备也是如此。
根据本发明的又一方面,公开了一种用于计算立体视觉的设备,该设备包括用于捕获场景的相应的左部的基于事件的视觉传感器和右部的基于事件的视觉传感器,其中,每个基于事件的视觉传感器包括多个像素并且被配置为输出变化事件的流,其中,每个变化事件对应于由这些像素中的一个像素检测到的亮度变化,并且每个事件包括(例如,微秒)时间戳(即,变化事件发生的时间)、检测到所述亮度变化的像素的像素地址、以及描述所述亮度变化的符号的参数(例如,二进制极性),
-其中,该设备被配置为对于每个视觉传感器将变化事件累积到至少两个时间片帧中,所述至少两个时间片帧即为相应地始于时间t的当前第一时间片帧和相应地始于时间t-d的第二时间片帧,
-其中,该设备还被配置为在所述持续时间d期间将左部视觉传感器的变化事件累积到该左部视觉传感器的当前第一时间片帧中,并且其中,该设备还被配置为在所述持续时间d期间将右部视觉传感器的变化事件累积到该右部视觉传感器的当前第一时间片帧中,
-其中,该设备还被配置为使用距离度量对右部视觉传感器的第二时间片帧的参考块——该参考块包括以右部视觉传感器的当前第一时间片帧中的最近的变化事件的像素为中心的像素(例如,这些像素构成的方形)——与左部视觉传感器的第二时间片帧中的搜索块进行比较以找到与该参考块最相似的搜索块,并且其中,该设备还被配置为使用距离度量对左部视觉传感器的第二时间片帧中的另一参考块——该另一参考块包括与以左部视觉传感器的当前第一时间片帧中的最近的变化事件的像素为中心的像素(例如,这些像素构成的方形)——与右部视觉传感器的第二时间片帧中的另一搜索块进行比较以找到与该另一参考块最相似的另一搜索块,以及
-其中,该设备还被配置为周期性地且同时地将这四个时间片帧交换(例如旋转),使得左部视觉传感器的当前第一时间片帧变为左部视觉传感器的第二时间片帧、右部视觉传感器的第一时间片帧变为右部视觉传感器的第二时间片帧、并且左部视觉传感器的第一时间片帧和右部视觉传感器的第一时间片帧被清除。
附图说明
下面参照附图描述本发明的其他特征、优点和实施方式,在附图中
图1示出了可用于执行根据本发明的方法的设备/***(光流架构);
图2示出了图1中所示的设备的有限状态机;
图3示出了特别地用于一个9x9块匹配的汉明距离实现的汉明距离计算电路。特别地,这些电路中有9个电路用于所述9个流向;
图4示出了最小距离计算电路,特别是用于HD0的排序算法实现模块,简化为5个输入而不是9个输入。特别地,这些块中有9个;
图5示出了光流计算的结果。箭头是流矢量,并且其长度表示速度(由片持续时间d确定)。基于事件的视觉传感器的打开事件为绿色,而关闭事件为红色。色轮指示流矢量方向的颜色。每个色轮上方的2D灰度直方图显示了时间片中的流事件方向的分布(此处使用9个方向框)。最亮的框决定全局运动的很大可能方向。(A)是来自[7]的盒子场景,其中d=40ms。(B)是由俯视的基于事件的视觉传感器记录的路面;d=10ms。(C)是砾石区,其中d=3ms。为了清楚起见,下采样用于每100个变化事件计算1个流事件;
图6出了块半径与AAE的关系。
图7示出了用于具有多个标度和事件跳过的事件累积和光流处理的实现;
图8示出了图像空间的区域事件计数分区,用于对片旋转的事件累积进行计数;
图9示出了事件数量控制;
图10示出了使用置信度阈值和有效像素占用率的离群值拒绝的示例。(A):没有使用离群值拒绝;(B):使用离群值拒绝;
图11示出了用于各种图像特征的块匹配的示例。红色是参考块片像素。绿色是搜索区域片像素。蓝色像素显示匹配的块像素。(A):边缘。(B):拐角部。(C):孤立的特征。(D):纹理;
图12示出了使用事件跳过的多标度多位流结果的示例。场景是在室外场景行走期间捕获的。使用Ns=3个标度,其中对于每个标度搜索距离为r=4,并且具有+/-7的带符号的变化事件的最大片值。使用面积法来旋转面积为32x32像素的片,并旋转计数NR=4000事件。此时的上一个时间片间隔为21ms;
图13显示了图12的光流(OF)直方图的细节以及在图12中显示的对于10毫秒事件数据包的在每个标度处的流事件的计数。位于红色圆圈和蓝色盒子的中心处的光流直方图中心对应于零运动。在蓝色盒子内的区域为灰色的情况下,在这些方向上没有流事件块匹配。白点表明匹配项的大多数位于下方并向右,与图12中指向下和指向右的流矢量占多数相对应。红色圆圈显示光流块匹配的平均半径。这在所述算法中被用于控制片持续时间。“标度计数:”旁边的数字244 71 105是从全分辨率(s=0)开始到二次采样的分辨率乘以4分辨率(s=2)的在每个标度处的流量事件的计数。对于此数据包,最佳匹配的分布在所有3个标度上近似均匀地分布。此时,将跳过112个事件以进行流处理,但不跳过片累积。最近的片间隔为21.4ms;
图14示出了来自运动场(MF)输出的图12的场景的后一部分的示例。光流事件在16x16像素区域中被二次采样到运动场上。在已经经过144ms时间间隔的每个低通滤波器时间常数之后应用扩散步骤。通过指向下的流矢量占多数而明显看出相机正在地面上朝向图像的顶部处观察到的建筑物移动。
图15示出了更多场景。(A):在室外于砾石上旋转。(B):在室内沿着走廊行走。(C):在室外沿着海岸边缘的砂地上行走。(D):从列车窗口。使用相同的3个标度、块大小11像素、使用菱形搜索来捕获所有场景,其中搜索距离为3像素。片最大值+/-7。使用区域事件数量方法以根据反馈控制设定片事件数量。
具体实施方式
基于事件的视觉传感器或DVS的输出是亮度变化事件的流。每个变化事件具有(例如,微秒时间戳)、(检测到变化事件的像素的)像素地址、以及描述亮度变化的符号的参数(例如,二进制极性)。每个事件均表示自该像素的上一次事件起约15%的亮度变化。在可获得FPGA实现结果的最简单的实现中,事件作为二进制图像特别地忽略所述参数(事件极性)被累积到时间片帧(或时间片存储器)中以实现最小的逻辑和存储器大小。这里,这些位图帧被称为片。块是以传入事件的位置为中心的方形。匹配是基于距离度量的。特别地,根据实施方式,汉明距离(HD)被用作距离度量。HD是不同位数的数量的计数。对于位图,HD与更周知的绝对差之和(SAD)相同。
硬件评估***/设备被分为两部分,一个部分用于数据排序和监控,而另一部分用于算法实现。对于第一部分,使用由塞维利亚的Univ.设计的监控器定序器板[13]。定序器将基于事件的基准数据集[7]转换为发送到光流FPGA的实时硬件事件。在光流计算期间,监控器收集光流事件并将其通过USB发送到jAER以进行渲染和分析。通过这种方式,可以比较光流算法的软件和硬件处理。在本文所述的示例/实施方式的框架中,使用预先记录的数据以允许在软件和硬件实现之间进行***的比较。
图1中示出了根据本发明的设备/光流架构的实施方式。该设备/光流架构包括三个主模块:有限状态机(FSM)、随机存取存储块存储器(RAM)和旋转控制逻辑。图2中示出了FSM的架构。FSM包括三部分:数据接收模块、光流计算模块以及数据发送模块。数据发送和数据接收模块与监视器定序器通信。光流模块将在下面进一步详细描述。
三个240x180像素变化事件位图片被存储在RAM中。这些片也被称为时间片存储器,并且与来自常规相机的二进制图像帧类似,只是在基于事件的视觉传感器(例如DVS)的情况下,可以任意选择片间隔。一个片是始于时间t的当前收集时间片,另外两个片是始于时间t-d(较新的时间片存储器)和t-2*d(较旧的时间片存储器)的过去的两个片。时间间隔d是片持续时间,例如10ms。特别地,根据示例,d=100ms被用于匹配数据集中的慢运动。以t-d的间隔,旋转控制逻辑对这三个片进行旋转(或交换)。t片累积新数据。t片开始为空并逐渐累积事件,因此t片不能用于与过去的片匹配。过去的这两个片t-d和t-2*d用于光流,但是光流计算是在存储在t片中的每个事件的位置处进行的并且因此是被这些事件驱动的。片被存储在FPGA上的块RAM中。RAM的总大小为240x180x3,从而与基于事件的视觉传感器的像素阵列大小匹配。它是由Xilinx的IP内核生成的。
根据实施方式,根据本发明的光流算法/方法被组织如下。
当事件到达时,来自时间片t-d的单个参考块和来自时间片t-2*d的9个块被发送到HD模块以计算距离。参考块和搜索区域以变化事件x,y位置(即,已经检测到最近的变化事件的像素位置)为中心。在当前FPGA实现中,根据实施方式,该块包含9×9像素。对于t-d时间片,根据实施方式,仅一个中心块被用作参考。根据本发明的算法/方法在t-2*d时间片上找到最相似的块。根据光流的亮度恒定假设,就与实际光流最佳匹配的块而言,在t-2*d时间片中应当看到相似的块。特别地,该算法搜索以当前事件地址的8个邻居为中心的8个块和以所述参考为中心的1个块,并选择距离最小的那个块。
1.汉明距离:图3中示出了一个汉明距离(HD)块的实现。总共81个XOR逻辑门接收来片上的对应的像素的输入。将XOR输出相加以计算HD。绝对差之和(SAD)稍后以该算法的更一般形式使用。
2.最小距离计算:该算法的最后一步是找到最小距离候选。图3中示出了新颖的最小电路的一部分。它是输出最小距离方向的指数的并行实现。例如,如果我们需要在5个数据中找到最小值:HD0-4(从图4输出),则电路可分为5部分。图3中的第一部分将HD0与所有其他数据进行比较,并输出数据0比HD1-4大多少次的计数。其他4个部分以相同的方式实现,并且所有这些部分都是同时计算的。最后,总和为零的部分是最小候选。因此,最小距离候选是在一个时钟周期内确定的。
示例
Xilinx Spartan 6系列芯片xc6slx150t被用于实现根据本发明的算法/方法。该芯片具有184304个触发器和92152个LUT以及4MB的块存储器。实现的光流设计占触发器的0.9%、LUT的5%以及块RAM的5%。对于测试数据集,使用了[7]中的基于事件的光流基准数据集,该基于事件的光流基准数据集还提供了评估方法和地面真值。此外,附加的自然场景数据也被用于稀疏和密集纹理的示例。
测试了三个样本数据集。所有这三个样本数据集均是真实的DVS数据(参见图5):分别对应于边缘、稀疏点和密集纹理的盒子平移(A)、路面(B)和砾石(C)。盒子场景在近景中具有盒子且在远景中具有杂物,并且相机向左平移,从而产生扩展边缘的大部分的向右全局平移。在路面数据集中,相机是俯视的并且是由手承载的;流指向下且指向右。路面中的瑕疵会导致稀疏特征。砾石数据集被外部记录并且具有密集纹理;向东移动。
图5中示出了块匹配光流结果。可以看出,在每个场景中,大部分矢量点就盒子平移而言准确地指向东,就人行道场景而言指向东南,并且就砾石场景而言指向东。误差主要是由基于事件的视觉传感器的噪声或扩展边缘的光圈模糊引起的。
关于精度分析,[7]提出了基于用于常规光流的相似度量来计算基于事件的光流精度的两种方式。一种方式被称为平均端点误差(AEE),另一种方式被称为平均角度误差(AAE)。AAE对所估计的流的方向上的误差进行测量并且AEE包括速度误差。这两种方法已经在jAER[8]中实现。他们使用来自纯相机旋转的IMU数据以及镜头焦距来计算对于每个变化事件而言的地面真值光流。由于定序器的输出数据缺少IMU数据,因此使用PC实现来测量光流精度。FPGA与PC之间的算法流水线相同,因此这将不会影响精度。该结果也与[7]进行比较。选择了基于事件的Lucas-Kanade和Local Plane算法的两种变型。以下的表I示出了所有算法的误差。PMhd表示具有HD度量的块匹配算法。图6中示出了块半径与AAE之间的关系。
表I光流算法的精度
此外,软件的时间复杂度随块大小呈平方增长,而在FPGA中仅线性地增长。该算法的处理时间包括三部分:从三个片中读取数据、HD计算以及寻找最小值。由于无法从一个RAM同时读取多个数据,因此在PC上的FPGA实现和软件实现都消耗线性时间来从RAM读取数据。然而,后两部分在FPGA上耗费恒定的时间(2个时钟周期)而在PC上需要二次时间。总而言之,在FPGA上的处理时间为(块尺寸+2)个周期。根据示例,FPGA以50MHz的频率运行且块尺寸为9。因此,整个算法每个变化事件耗费仅220ns,即0.22μs。在PC上,就Java实现而言整个算法每个事件耗费4.5μs来运行该算法。FPGA上的实现比PC上的实现快20倍。根据示例,该实现使用单个端口RAM,但可以通过使用多个存储库来进一步加快。
本发明提供了一种特别是在FPGA上且实时地估计基于事件的光流的新方法。汉明距离的软件计算成本随着块大小的增加而呈平方增加,然而,在FPGA中,可以同时计算块中的所有位,这使得对于所有块大小的时间都是恒定的。这大大地减少了FPGA实现的总体计算时间,其比软件实现快20倍。在当前实现中,每单个传入事件被处理(允许使用仅50MHz的适度FPGA时钟处理达5Meps的输入事件速率)。然而,不需要处理每个变化事件,如图5(C)中所示,在这种情况下,光流计算被下采样,但是基于事件的视觉传感器(例如DVS)的变化事件仍然指示估计该流的位置。
本发明的以上描述的一般实施方式可以进一步修改。下面将描述对应的实施方式。特别地,存在三种可能的改进。当前实现仅估计流的方向而不估计速度。测量速度需要额外的搜索距离,并且存在用于有效搜索的周知的算法[14]。其次,也可以使用其他距离度量,原因在于由于噪声收集到片上的事件序列通常具有不同的长度,并且HD有点模糊[15]。最后,可以在片持续时间期间实施前馈和反馈控制以更好地利用基于事件的视觉传感器(DVS)的事件输出的独特特征,该特征即为可以以任何所需的采样率对其进行处理。该能力是相对于采样率和处理速率密切地耦合的基于帧的视觉而言的关键的区别特征。这允许将块匹配方法用于即使在仅较小的搜索距离和适度的硬件资源的情况下也能实现较高的光流精度的基于事件的视觉传感器(例如DVS)。
根据另一实施方式,可以使用多位时间片。
使用二进制位图时间片的限制在于像素值在第一个事件累积到位图像素位置之后会饱和。它们还忽略了基于事件的传感器的事件极性(ON/OFF),并且因此可能潜在地不准确地与极性相反的边缘匹配。
改进在于使用多位带符号的时间片。如前所述,事件被累积到像素存储器中,但是现在像素值(可选地)带有符号,并具有采用值范围的n位表示,即对于n=2位,无符号范围为0、1、2、3。对于带符号的2位版本,使用2的补码二进制表示的对于n=2的范围为2、1、0、1,由二进制值11、10、00、01编码。在n=2位的情况下,如果像素累积了1个ON事件和3个OFF事件,则得到的片像素在无符号的情况下的值为3,并且在带符号的情况下的值为-2。多位值的更新优选地应使用饱和数学,以便溢出不会覆盖计数,而是将此保留为其最大绝对值。
多位时间片的存储成本与n成正比。由于XOR门被全加器代替以计算参考块与搜索块区域之间的绝对差之和(SAD),因此算术成本也与n成正比。
根据本发明的方法/***的另一实施方式,可以使用扩展的和优化的搜索。
先前描述的实现仅搜索目标块及其8个最近的邻居。通过将搜索范围扩展到更大的距离范围r而提供改进。对于上述实现,r=1。增大r允许计算运动矢量角度和速度的更精细的范围。(2r+1)2个搜索位置的穷举式搜索是可能的,但是诸如两步搜索(TSS)和菱形搜索(DS)之类的周知技术大大地减少了所需的工作量。我们的DS算法的软件实现显示:对于r=12和块尺寸9(r=5),通过使用DS将事件处理时间减少了29倍,从完全搜索的每个事件377μs到使用DS的每个事件13μs。
根据本发明的方法/***的另一实施方式,可以使用多标度空间时间片。
到目前为止描述的方法的限制在于该方法的受限的动态速度范围,原因在于匹配可以仅覆盖围绕参考位置的方形的半径r的空间范围。通过搜索时间的仅线性增加来增大搜索范围的一种方式是使用多标度金字塔。在该方法中,变化事件被累积到时间片堆栈中。堆栈中的每个片以比先前的标度多2倍的方式在x和y方向上对原始事件地址进行二次采样。即,如果标度s是时间片空间标度,其中s=0表示原始的全分辨率标度,则通过首先将事件x和y地址右移s位,并且然后将得到的事件累积到标度s片中。例如,在s=1的标度片中,每个像素累积来自全分辨率原始像素地址空间中的2x2像素区域的事件。因此,从本参考实现获取的以下Java代码段给出了累积每个事件的具体操作:
在图7中示出了如何使用这些多个标度,可以使用在每个标度处的二次采样片来对范围r进行搜索。然后,可以从所有标度的最佳匹配块中选择最终结果。总搜索范围被扩展到半径。
使用多个空间标度的成本是用于对片进行存储的增加的存储器以及对这些标度的附加的搜索。由于并行硬件单元使用独立的存储块,因此它们可以对所有标度同时进行搜索。益处在于对标度s的搜索覆盖图像空间中的的半径。在逻辑或时间方面总成本增加仅(nS+1)倍。例如,使用nS=3,搜索的线性范围增加了8倍,搜索区域增加了64倍,但是面积或时间的成本增加了仅3倍。
使用多个标度的附加的益处在于它为较慢的运动提供了更精确的速度和角度分辨率。因此,当速度较低时,流估计的精确度得以保持。
优选的是将多位技术与多标度技术相组合,原因在于二次采样的时间片比原始的全标度片每像素收集更多的事件。因此它们可以更容易地饱和。在实践中,我们发现,当使用3个标度时,如图11和图12中的示例数据所示,允许累积达16个事件的多位分辨率n=4的适度值足以防止饱和。
此外,关于自适应片持续时间,已经实现了用于累积位图片的三种软件方法,这三种软件方法被表示为恒定持续时间、恒定事件数量和区域事件数量。在当前的硬件FPGA设计中,仅恒定持续时间方法被实现,但其他方法也容易实现到硬件中。
恒定持续时间:这里,片被均匀地累积到持续时间d的时间片。该方法最接近对应于常规的基于帧的方法。其不利之处在于如果场景运动太快,则片之间的移动可能太大而可能无法使用指定的搜索距离。如果移动太慢,则特征可能无法在片之间充分移动,从而导致降低的流速和角度分辨率。
恒定事件数量。这里,片被累积直到它们包括固定的总计数K的变化事件为止。如果K较大,则片将倾向于具有更大的d。但是,如果场景移动得更快,则变化事件的速率也会增加,这对于固定的K而言将降低d。因此,恒定事件数量方法会自动地使d适应平均总体场景动态。
区域事件数量。恒定事件数量方法的不利之处在于它的全局性质。如果对于具有均匀较高纹理的场景适当地设定K,则在具有孤立特征的场景使用相同的K会导致更长的d,因为总体变化事件速率更低。因此,无法保证准确的d以在所有的场景中均实现最佳匹配。
用于解决该问题的实用方法被称为区域事件数量。这里,整个传感器像素阵列被细分为粗块。2D存储器阵列A跟踪每个块的事件计数。在片旋转后,A被清零。当A的任何元素累积K个事件时,将片旋转,并记录旋转时间d以允许速度的计算。图8中示出了该区域块布置的示例。这里,图像区域已被划分为具有区域事件数量二次采样6的阵列A,这意味着26x26=64x64像素区域。只要任意子区域(A的元素)累积了1432个事件(如用于片事件计数属性的软件GUI中所示),则旋转/交换片。在此示例中,通过该方法计算的上一个片间隔为d=21ms。
通过使用区域事件数量方法,片旋转/交换是由变化事件的累积驱动的数据,但是该方法调整片持续时间以匹配场景的最快的移动区域。这种调整防止欠采样,欠采样会导致运动太大而无法在片之间匹配。
区域事件数量的硬件成本与正常的片累积相似。其除了可以忽略事件极性并且区域存储寄存器必须足够宽以容纳大得多的最大事件计数K——最大事件计数K在实践中通常取1k-10k的值——之外,几乎与累积到粗二次采样片中相同。然而,这些更宽的寄存器的偏移比被数量少得多的元素的偏移多很多。例如在图8中,与使用4位的多位片值的全分辨率片存储器的346x260x4=360k位相比,仅5x5x16=400位形成A。因此,A需要的存储器比片存储器少90倍。
对片持续时间的反馈控制:可以经由反馈控制来根据不同的场景自动地调节片持续时间或事件数量的另一种方法。在该实施方式中,创建光流分布直方图来测量当前片参数的精度。计算直方图的加权平均匹配距离D。如果D大于r/2,则这表示时间片过长,且因此片持续时间或事件数量减少。否则,如果平均匹配距离小于r/2,则这表明片的持续时间太短暂并且片持续时间或事件数量增加。可以通过使用确保稳定性的附加的策略步骤来改进该反馈控制方法。否则,可能的是很长的片持续时间会导致非常小的匹配距离的光流结果,而这仅是搜索算法朝零运动(小匹配距离)产生的偏差的结果。在实践中,可以通过将片持续时间范围限制在应用程序特定的限制内来确保稳定性。
下面的Java代码段显示了该算法的一种实现的具体步骤。
/>
图9中的数据示出了使用利用64x64像素的区域的区域事件数量反馈控制方法的事件数量控制的示例。场景具有随时间的较大的速度范围。蓝色轨迹示出了平均光流匹配距离。事件数量的反馈控制将平均匹配距离保持在约0.5的其(标准化)平均值。橙色轨迹示出了事件数量。事件数量的稳态(标准化)值为约0.23。在数据包1800附近,事件数量被手动扰动到较大的值,从而导致平均匹配距离减小。事件数量迅速返回到稳态值。在数据包1900附近,事件数量被手动地减小到较小的值,从而导致非常小的匹配距离。再次,事件数量返回到稳态值。该数据示出了事件数量控制在平均速度具有较大变化的数据方面的稳定性。
为了提高精度,根据本发明的另一实施方式,采用离群值拒绝来滤除具有较差的匹配质量的事件。特别地,使用两个参数来拒绝离群值。
一个参数被表示为有效像素占用率;该参数确定将要被比较的两个块中的有效像素的百分比。有效像素是指累积有变化事件的像素。设定该参数的原因在于块有时太稀疏,而这使得距离度量获得无意义的结果。通过仅计算填充有足够有效的像素的块,我们可以拒绝误导性的结果。如果参考块或搜索块的占用率不足,则光流匹配距离结果被设定至最大值。
另一离群值拒绝参数被称为置信度阈值。参考块与候选块之间的最小距离(相似度)应小于(大于)置信度阈值,否则光流事件将被视为离群值并将被拒绝。因此,最佳匹配搜索块实际上可能是较差的匹配,并且如果匹配距离太大,则置信度阈值允许拒绝最佳匹配。
在图10描绘的示例数据中通过黑条向上和向右移动的简单情况示出了这些参数的效果。使用这些离群值拒绝标准,流结果明显更清楚。
两种离群值拒绝机制都可以容易地在硬件中实现。例如,根据实施方式,如果两个操作数均为零,则可以通过输出较大值的像素减法单元来实现有效像素占用率。可以通过比较器在标记过大的距离的最佳匹配输出结果上实现置信阈值。
此外,不必为光流处理每个传入的变化事件。当前时间片中收集到的变化事件是此处存在新视觉数据的标志。除了设定参考块中心位置以外,这些事件实际上不用于计算匹配。因此,可以将这些事件累积到当前时间片,但是如果硬件或软件在忙于处理先前的事件或者已经超过了用于处理事件数据包的时间预算,则跳过对于这些事件的处理流。
根据实施方式,已因此实现了自适应事件跳过。这里,使用被称为跳过处理事件计数的参数来存储已被跳过的事件数量。该数量会自适应地变化。事件跳过算法设计如下:
1.根据应用计算平均每秒帧数(FPS)。
2.如果获得的FPS太低,则增加跳过处理事件计数。否则,如果获得的FPS足够高,则增加跳过处理事件计数。
3.此外,将跳过处理事件计数的最大值设定为不会丢失太多事件和信息。
该事件跳过算法极大地减少了事件处理时间,从而允许即使在相对不那么有效的的软件实现中也能实现软件的实时性能。
在硬件中,图7示出了事件跳过的一种实现。在光流软件或硬件模块可用时对变化事件进行处理。在光流单元处理其正在作业的事件时,变化事件总是累积到时间片存储器(由于该示例使用了3个标度,因此在这种情况下被累积到时间片存储器中的3个时间片存储器)。存储器仲裁器不是必需的,因为当前变化事件被累积到当前片t,而光流块仅访问最近的变化事件地址(以知道在何处设置其搜索的中心)以及过去的t-d和t-2*d时间片。
根据本发明的另一实施方式,可以对光流运动场进行过滤。
此处,从该方法输出的原始光流事件可以被累积到规则地间隔的、可选地被二次采样的运动场(MF)上。该MF在空间和时间上过滤多个光流事件,以减少噪声并施加约束,例如MF平滑度。存在许多用于使这种MF规则化的方法。这里描述根据本发明的实施方式的基本实现。该实现以增加的时间延迟(来自低通短暂过滤)和较低的空间分辨率(来自二次采样和扩散)为代价降低了光流输出中的噪声。常规处理的一个益处是表示为规则地间隔开的MF网格。
以下Java代码段示出了MF处理。该方法采用具有位置x,y、速度矢量vx,vy和(预先计算的)速度的光流事件。该方法对运动场阵列值进行更新。可选的算法标志允许
1.MF值朝向零流的可选周期性衰减,
2.可选的一致性检查以在其与现有MF值一致的情况下仅添加光流事件(例如,通过检查光流和MF矢量的点积是否为正,为正表明光流和MF矢量指向同一方向),
3.低通过滤步骤,该低通过滤步骤将MF值以可调节的时间常数朝向光流值更新,
4.以及可选的扩散步骤,该扩散步骤对MF值与其邻居进行平均。
/>
/>
根据本发明的另一实施方式,使用块匹配来进行立体视觉匹配。
所描述的用于光流的设备和方法可以非常容易地应用于立体双目视觉的紧密相关的问题。在光流中,参考块在搜索区域内与过去的时间片匹配。在立体视觉中,来自一只眼的参考块在由所谓的极线限定的搜索曲线上与来自另一只眼的同一时间片匹配。
对于立体视觉,根据本发明的算法/方法的最简单的实施方式使用先前描述的片旋转/交换方法(例如,恒定持续时间、恒定事件数量或区域事件数量)中的一种来同时旋转来自两只眼的片。如果使用事件数量方法中的一种方法,则可以通过用任一只眼累积来触发旋转/交换。
光流方法与立体方法可以被进行组合,因为这两者都仅取决于所累积的时间片和块匹配。立体匹配和光流计算两者都可以通过累积到来自任一只眼的当前时间片中的事件来触发。
根据本发明的加强的光流算法/方法的示例
图11示出了用于各种类型的图像特征的块匹配的真实DVS数据示例。这里,红色是参考块片像素,而绿色是搜索区域片像素,并且蓝色像素表示匹配的块像素。(A):边缘。(B):拐角部。(C):孤立的特征。(D):纹理。
图12、图13、图14和图15示出了上述改进的流方法结果的示例。
在下文中,本发明的其他方面和实施方式被陈述为项目,但是也可以被表述为本发明的权利要求。
项目1:一种用于通过基于事件的视觉传感器来计算光流的设备或方法,该基于事件的视觉传感器使用
a.时间片累积事件计数2D图像存储器t、t-d和t-2*d
b.将事件计数累积到当前时间片事件计数存储器t中。
c.使用最小块图像距离匹配标准对过去的时间片t-d中的以片t中的最近的事件位置为中心的参考块与时间片t-2*d中的搜索区域进行匹配。
d.周期性地旋转时间片存储器,使得当前片t变为片t-d、片t-d变为片t-2*d、并且片t-2*d被清除且变为片t。
项目2:项目1加上块匹配距离匹配度量,该块匹配距离匹配度量是参考块像素与搜索块像素之间的绝对差之和。
项目3:项目1加上使用多组时间片存储器,该多组时间片存储器对传感器的原始地址空间进行二次采样。
项目4:项目1加上以恒定的时间间隔来旋转时间片的方法。
项目5:项目1加上在累积到片t中的恒定总事件计数的状态下旋转时间片的方法。
项目6:项目1在片t的任意子区域累积指定数量的事件时旋转时间片的方法。
项目7:项目1加上在自上一次片旋转起总的集成的运动超过阈值量时旋转时间片的方法。
项目8:项目1加上基于根据平均匹配距离的反馈控制来控制片旋转间隔持续时间的方法。
项目9:项目1加上基于根据平均匹配距离的反馈控制来控制片的总事件计数的方法。
项目10:项目1加上基于在片t的任意子块累积指定数量的事件时来自平均匹配距离的反馈控制来控制片的方法。
项目11:项目1加上将事件计数2D图像累积到二值图的方法。
项目12:项目1加上将事件计数2D图像累积到多位图的方法。
项目13:项目1加上穷举式搜索整个区域的方法。
项目14:项目1加上菱形搜索的方法。
项目15:项目1加上使用块的有效像素百分比来拒绝离群值。
项目16:项目1加上使用距离阈值来拒绝离群值。
项目17:项目1加上使用事件下采样,该事件下采样跳过对某些事件的完全处理,同时仍将这些事件累积到当前时间片以提高实时性能。
项目18:项目17加上基于根据来自平均每秒帧数的反馈控制来控制跳过事件数量的方法。
项目19:项目1加上将事件累积到规则地间隔开的、可选地被二次采样的运动场上的方法
项目20:项目2加上项目4再加上并行计算块的绝对距离之和的逻辑电路实现
项目21:项目2加上项目4再加上并行计算绝对距离的最小和的逻辑电路实现
项目22:一种用于对来自基于事件的视觉传感器的立体视觉进行计算的设备或方法,该基于事件的视觉传感器使用
a.来自右眼(r)的时间片累积事件计数2D图像存储器t(r)、(t-d)(r)和来自左眼(l)的时间片累积事件计数2D图像存储器t(l)、(t-d)(l)
b.将事件计数累积到当前时间片事件计数存储器t(r)和t(l)中。
c.使用最小块图像距离匹配标准对片(t-d)(r)中的以片t(r)中的最近的事件位置为中心的参考块与时间片(t-d)(l)中的搜索区域进行匹配;并且对于从左眼到右眼的事件而言,使用最小块图像距离匹配标准对片(t-d)(l)中的以片t(l)中的最近的事件位置为中心的参考块与时间片(t-d)(r)中的搜索区域进行匹配。
d.周期性地且同时地旋转时间片存储器,使得当前片t(r)变为片(t-d)(r)、片t(l)变为片(t-d)(l)、并且片t(r)和t(l)被清除。
项目23:项目22加上项目1至21的特征中的一项或任意项。
参考文献
[1]Baker S,Matthews I.Lucas-kanade 20 years on:A unifying framework[J].International journal of computer vision,2004,56(3):221-255.
[2]Horn B K P,Schunck B G.Determining optical flow[J].Artificialintelligence,1981,17(1-3):185-203.
[3]Benosman R,Clercq C,Lagorce X,et al.Event-based visual flow[J].IEEE transactions on neural networks and learning systems,2014,25(2):407-417.
[4]R.Benosman,S.-H.leng,C.Clercq,C.Bartolozzi,and M.Srinivasan,Asynchronous frameless event-based optical flow,Neural Networks,vol.27,pp.32-37,2012.
[5]Conradt J.On-board real-time optic-flow for miniature event-basedvision sensors.//2015 IEEE International Conference on Robotics andBiomimetics(ROBIO).IEEE,2015:1858-1863.
[6]Barranco F,Fermuller C,Aloimonos Y.Bio-inspired motion estimationwith event-driven sensors[C].International Work-Conference on ArtificialNeural Networks.Springer International Publishing,2015:309-321.
[7]Rueckauer B,Delbruck T.Evaluation of event-based algorithms foroptical flow with ground-truth from inertial measurement sensor[J].Frontiersin neuroscience,2016,10.
[8]"jAER Open Source Project,"jAER Open Source Project.[Online].Available:http://jaerproject.org.
[9]Agha S,Dwayer V M.Algorithms and VLSI Architectures for MPEG-4Motion Estimation[J].Electronic systems and control Division Research,2003:24-27.
[10]https://sourceforge.net/p/jaer/codeHEAD/tree/jAER/trunk/src/ch/unizh/ini/jaer/projects/minliu/PatchMatchFlow.java.
[11]Wong S,Vassiliadis S,Cotofana S.A sum of absolute differencesimplementation in FPGA hardware[C],Euromicro Conference,2002.Proceedings.28th.IEEE,2002:183-188.
[12]Lichtsteiner P,Posch C,Delbruck T.A 128x128 120 dB 15 us latencyasynchronous temporal contrast vision sensor[J].IEEE journal of solid-statecircuits,2008,43(2):566-576.
[13]Berner R,Delbruck T,Civit-Balcells A,et al.A 5 Meps\$100USB2.0address-event monitor-sequencer interface[C].//2007IEEE InternationalSymposium on Circuits and Systems.IEEE,2007:2451-2454.
[14]Barjatya A.Block matching algorithms for motion estimation[J].IEEE Transactions Evolution Computation,2004,8(3):225-239.
[15]Zhang L,Zhang Y,Tang J,et al.Binary code ranking with weightedhamming distance[C]//Proceedings of the IEEE Conference on Computer Visionand Pattern Recognition.2013:1586-1593.

Claims (21)

1.一种用于对由基于事件的视觉传感器捕获的场景中的光流进行计算的方法,所述基于事件的视觉传感器包括多个像素并且被配置为输出变化事件的流,其中,每个变化事件对应于由所述像素中的一个像素检测到的亮度变化,并且每个变化事件包括:时间戳、检测到所述亮度变化的像素的像素地址以及描述所述亮度变化的符号的参数,
-其中,变化事件被累积到至少三个时间片帧中,所述至少三个时间片帧即为始于时间t的当前第一时间片帧(t)、始于时间t-d的第二时间片帧(t-d)以及始于时间t-2*d的第三时间片帧(t-2*d),其中,d是相应的时间片帧的持续时间,
-其中,在所述持续时间d期间变化事件被累积到所述当前第一时间片帧中,
-其中,使用距离度量对所述第二时间片帧(t-d)的参考块与所述第三时间片帧(t-2*d)中的搜索块进行比较以找到与所述参考块最相似的搜索块,所述参考块包括以所述当前第一时间片帧(t)中的最近的变化事件的像素为中心的像素,
-其中,所述三个时间片帧(t、t-d、t-2*d)周期性地交换,使得所述当前第一时间片帧(t)变为所述第二时间片帧(t-d)、所述第二时间片帧(t-d)变为所述第三时间片帧(t-2*d),并且所述第三时间片帧(t-2*d)被清除并变为所述当前第一时间片帧(t),以及
-其中,所述时间片帧的所述交换是在所述当前第一时间片帧(t)的任意子区域累积指定数量的变化事件时进行的。
2.根据权利要求1所述的方法,其中,所述距离度量是参考块的像素与搜索块的像素之间的绝对差之和。
3.根据权利要求1所述的方法,其中,使用对所述基于事件的视觉传感器的原始地址空间进行二次采样的多组时间片帧。
4.根据权利要求1至3中的任一项所述的方法,其中,所述时间片帧的所述交换是在自所述时间片帧的上一次交换起所述场景的总的集成的运动超过阈值量时进行的。
5.根据权利要求1至3中的任一项所述的方法,其中,在所述持续时间d之后,所述时间片帧的所述交换是根据所述参考块与相应的最相似的搜索块之间的平均匹配距离(D)来控制的,所述平均匹配距离是使用所计算的光流分布的直方图来确定的。
6.根据权利要求1所述的方法,其中,所述指定数量是根据所述参考块与相应的最相似的搜索块之间的平均匹配距离(D)来控制的,所述平均匹配距离是使用所计算的光流分布的直方图来确定的。
7.根据权利要求1至3中的任一项所述的方法,其中,所述第一时间片帧、所述第二时间片帧和所述第三时间片帧各自形成二进制位图的时间片帧。
8.根据权利要求1至3中的任一项所述的方法,其中,所述第一时间片帧、所述第二时间片帧和所述第三时间片帧各自形成所包含的像素中的每个像素由多个位来表示的时间片帧。
9.根据权利要求1至3中的任一项所述的方法,其中,对相应的第三时间片帧进行穷举式搜索以找到所述最相似的搜索块。
10.根据权利要求1至3中的任一项所述的方法,其中,使用菱形搜索以找到所述最相似的搜索块。
11.根据权利要求1至3中的任一项所述的方法,其中,仅对包括足够的预定数量的有效像素的那些参考块与搜索块进行比较以便拒绝离群值,其中,有效像素是已累积有变化事件的像素。
12.根据权利要求1至3中的任一项所述的方法,其中,在所述参考块与所述最相似的搜索块之间的距离超过距离阈值的情况下,所述最相似的搜索块作为离群值而被拒绝。
13.根据权利要求1至3中的任一项所述的方法,其中,所述最近的变化事件中的一些变化事件被累积到所述当前第一时间片帧中,但是被累积到所述当前第一时间片帧中的所述一些变化事件被跳过以提高实时性能。
14.根据权利要求13所述的方法,其中,所述跳过是在用于执行所述方法的设备仍在忙于处理来自先前的变化事件的光流的情况下进行的。
15.根据权利要求1至3中的任一项所述的方法,其中,包括像素位置、速度矢量、且包括沿所述速度矢量的方向的速度的光流事件是根据所述参考块和所述最相似的搜索块来计算的。
16.根据权利要求15所述的方法,其中,所述光流事件被累积到规则地间隔开的运动场上。
17.根据权利要求2所述的方法,其中,所述参考块的像素与所述搜索块的像素之间的绝对差之和是并行计算的。
18.根据权利要求2所述的方法,其中,最小的绝对差之和是并行计算的。
19.一种用于对来自左部的基于事件的视觉传感器(l)和右部的基于事件的视觉传感器(r)的立体视觉的方法,其中,每个基于事件的视觉传感器(l、r)包括多个像素并且被配置为输出变化事件的流,其中,每个变化事件对应于由所述像素中的一个像素检测到的亮度变化,并且每个变化事件包括时间戳、检测到所述亮度变化的像素的像素地址以及描述所述亮度变化的符号的参数,
-其中,对于每个视觉传感器(l、r)而言,将变化事件累积到至少两个时间片帧中,所述至少两个时间片帧即为相应地始于时间t的当前第一时间片帧(t(l)、t(r))和相应地始于时间t-d的第二时间片帧((t-d)(l)、(t-d)(r)),其中,d是相应的时间片帧的持续时间,
-其中,左部视觉传感器(l)的变化事件在所述持续时间d期间被累积到所述左部视觉传感器(l)的所述当前第一时间片帧(t(l))中,并且其中,右部视觉传感器(r)的变化事件在所述持续时间d期间被累积到所述右部视觉传感器(r)的所述当前第一时间片帧(t(r))中,
-其中,使用距离度量对所述右部视觉传感器(r)的所述第二时间片帧((t-d)(r))的参考块与所述左部视觉传感器(l)的所述第二时间片帧((t-d)(l))中的搜索块进行比较以找到与所述参考块最相似的搜索块,所述参考块包括以所述右部视觉传感器(r)的所述当前第一时间片帧(t(r))中的最近的变化事件的像素为中心的像素;并且其中,使用所述距离度量对所述左部视觉传感器(l)的所述第二时间片帧((t-d)(l))的另一参考块与所述右部视觉传感器(r)的所述第二时间片帧((t-d)(r))中的另一搜索块进行比较以找到与所述另一参考块最相似的另一搜索块,所述另一参考块包括以所述左部视觉传感器(l)的所述当前第一时间片帧(t(l))中的最近的变化事件的像素为中心的像素,以及
-其中,这四个时间片帧(t(l)、t(r)、(t-d)(l)、(t-d)(r))周期性地且同时地交换,使得所述左部视觉传感器(l)的所述当前第一时间片帧(t(l))变为所述左部视觉传感器(l)的所述第二时间片帧((t-d)(l)),所述右部视觉传感器(r)的所述第一时间片帧(t(r))变为所述右部视觉传感器(r)的所述第二时间片帧((t-d)(r)),并且所述左部视觉传感器(l)的所述第一时间片帧(t(l))和所述右部视觉传感器(r)的所述第一时间片帧(t(r))被清除。
20.一种用于对由基于事件的视觉传感器捕获的场景中的光流进行计算的设备,所述设备包括基于事件的视觉传感器,所述基于事件的视觉传感器包括多个像素并且被配置为输出变化事件的流,其中,每个变化事件对应于由所述像素中的一个像素检测到的亮度变化,并且每个变化事件包括:时间戳、检测到所述亮度变化的像素的像素地址以及描述所述亮度变化的符号的参数,
-其中,所述设备被配置为将变化事件累积到至少三个时间片帧中,所述至少三个时间片帧即为始于时间t的当前第一时间片帧(t)、始于时间t-d的第二时间片帧(t-d)以及始于时间t-2*d的第三时间片帧(t-2*d),其中,d是相应的时间片帧的持续时间,
-其中,所述设备还被配置为在所述持续时间d期间将变化事件累积到所述当前第一时间片帧中,
-并且其中,所述设备还被配置为使用距离度量对所述第二时间片帧(t-d)的参考块与所述第三时间片帧(t-2*d)中的搜索块进行比较以找到与所述参考块最相似的搜索块,所述参考块包括以所述当前第一时间片帧(t)中的最近的变化事件的像素为中心的像素,
-其中,所述设备还被配置为将这三个时间片帧(t、t-d、t-2*d)周期性地交换,使得所述当前第一时间片帧(t)变为所述第二时间片帧(t-d)、所述第二时间片帧(t-d)变为所述第三时间片帧(t-2*d),并且所述第三时间片帧(t-2*d)被清除并变为所述当前第一时间片帧(t),以及
-其中,所述时间片帧的所述交换是在所述当前第一时间片帧(t)的任意子区域累积指定数量的变化事件时进行的。
21.一种用于包括相应地用于捕获场景的左部的基于事件的视觉传感器(l)和右部的基于事件的视觉传感器(r)的用于计算立体视觉的设备,其中,每个基于事件的视觉传感器(l、r)包括多个像素并且被配置为输出变化事件的流,其中,每个变化事件对应于由所述像素中的一个像素检测到的亮度变化,并且每个变化事件包括时间戳、检测到所述亮度变化的像素的像素地址以及描述所述亮度变化的符号的参数,
-其中,所述设备被配置为对于每个视觉传感器(l、r)将变化事件累积到至少两个时间片帧中,所述至少两个时间片帧即为相应地始于时间t的当前第一时间片帧(t(l)、t(r))和相应地始于时间t-d的第二时间片帧((t-d)(l)、(t-d)(r)),其中,d是相应的时间片帧的持续时间,
-其中,所述设备还被配置为在所述持续时间d期间将左部视觉传感器(l)的变化事件累积到所述左部视觉传感器(l)的所述当前第一时间片帧(t(l))中,并且其中,所述设备还被配置为在所述持续时间d期间将右部视觉传感器(r)的变化事件累积到所述右部视觉传感器(r)的所述当前第一时间片帧中(t(r)),
-其中,所述设备还被配置为使用距离度量对所述右部视觉传感器(r)的所述第二时间片帧((t-d)(r))的参考块与所述左部视觉传感器(l)的所述第二时间片帧((t-d)(l))中的搜索块进行比较以找到与所述参考块最相似的搜索块,所述参考块包括以所述右部视觉传感器(r)的所述当前第一时间片帧(t(r))中的最近的变化事件的像素为中心的像素;并且其中,所述设备还被配置为使用所述距离度量对所述左部视觉传感器(l)的所述第二时间片帧((t-d)(l))的另一参考块与所述右部视觉传感器(r)的所述第二时间片帧((t-d)(r))中的另一搜索块进行比较以找到与所述另一参考块最相似的另一搜索块,所述另一参考块包括以所述左部视觉传感器(l)的所述当前第一时间片帧(t(l))中的最近的变化事件的像素为中心的像素,以及
-其中,所述设备还被配置为将这四个时间片帧(t(l)、t(r)、(t-d)(l)、(t-d)(r))周期性地且同时地交换,使得所述左部视觉传感器(l)的所述当前第一时间片帧(t(l))变为所述左部视觉传感器(l)的所述第二时间片帧((t-d)(l)),所述右部视觉传感器(r)的所述第一时间片帧(t(r))变为所述右部视觉传感器(r)的所述第二时间片帧((t-d)(r)),并且所述左部视觉传感器(l)的所述第一时间片帧(t(l)和所述右部视觉传感器(r)的所述第一时间片帧(t(r))被清除。
CN201880035827.2A 2017-05-29 2018-05-29 用于动态视觉传感器的块匹配光流和立体视觉 Active CN110692083B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
EP17173250 2017-05-29
EP17173250.6 2017-05-29
PCT/EP2018/064041 WO2018219931A1 (en) 2017-05-29 2018-05-29 Block-matching optical flow and stereo vision for dynamic vision sensors

Publications (2)

Publication Number Publication Date
CN110692083A CN110692083A (zh) 2020-01-14
CN110692083B true CN110692083B (zh) 2024-01-05

Family

ID=59061805

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880035827.2A Active CN110692083B (zh) 2017-05-29 2018-05-29 用于动态视觉传感器的块匹配光流和立体视觉

Country Status (6)

Country Link
US (1) US11227397B2 (zh)
EP (1) EP3631756B1 (zh)
JP (1) JP7253258B2 (zh)
KR (1) KR20200015589A (zh)
CN (1) CN110692083B (zh)
WO (1) WO2018219931A1 (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102668130B1 (ko) * 2017-09-28 2024-05-23 애플 인크. 이벤트 카메라를 이용한 정적 이미지들의 생성
US11216704B2 (en) 2018-10-23 2022-01-04 John M. Couse; Recognition system using multimodality dataset
CN109801314B (zh) * 2019-01-17 2020-10-02 同济大学 一种基于深度学习的双目动态视觉传感器立体匹配方法
EP3690736A1 (en) * 2019-01-30 2020-08-05 Prophesee Method of processing information from an event-based sensor
JP7298272B2 (ja) * 2019-04-23 2023-06-27 沖電気工業株式会社 通信装置および通信方法
CN110415344A (zh) * 2019-06-24 2019-11-05 武汉大学 基于事件相机的运动补偿方法
CN111402146B (zh) * 2020-02-21 2022-05-10 华为技术有限公司 图像处理方法以及图像处理装置
CN111669514B (zh) * 2020-06-08 2021-02-26 北京大学 高动态范围成像方法和装置
KR102366187B1 (ko) * 2020-06-10 2022-02-22 광주과학기술원 고해상도 강도 이미지 생성 방법 및 장치
CN111798485B (zh) * 2020-06-30 2022-07-19 武汉大学 一种利用imu增强的事件相机光流估计方法及***
KR20220076943A (ko) 2020-12-01 2022-06-08 삼성전자주식회사 비전 센서, 이를 포함하는 이미지 처리 장치 및 비전 센서의 동작 방법
JP2022111437A (ja) 2021-01-20 2022-08-01 キヤノン株式会社 動きベクトル算出装置、撮像装置および動きベクトル算出方法
EP4060983A1 (en) 2021-01-22 2022-09-21 Toyota Jidosha Kabushiki Kaisha A method for accumulating events using an event-based vision sensor and overlapping time windows
EP4033398A1 (en) 2021-01-25 2022-07-27 Toyota Jidosha Kabushiki Kaisha A clustering method applied to a change event stream produced by an event-based vision sensor
CN112987571B (zh) * 2021-02-25 2022-08-09 中国人民解放军国防科技大学 高动态视觉控制***及其视觉量测性能衰减容错控制方法
KR102538012B1 (ko) * 2021-10-20 2023-05-30 주식회사 큐에스 가상공간 내 객체의 3차원 모델을 갱신하는 방법 및 장치

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040050127A (ko) * 2002-12-09 2004-06-16 삼성전자주식회사 비디오 부호화기의 움직임 추정기 및 그 방법
CN105160703A (zh) * 2015-08-25 2015-12-16 天津师范大学 一种使用时域视觉传感器的光流计算方法
CN105719290A (zh) * 2016-01-20 2016-06-29 天津师范大学 一种使用时域视觉传感器的双目立体深度匹配方法
EP3131295A1 (en) * 2015-08-14 2017-02-15 Axis AB Video encoding method and system
CN106597463A (zh) * 2016-12-29 2017-04-26 天津师范大学 基于动态视觉传感器芯片的光电式接近传感器及探测方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6987866B2 (en) * 2001-06-05 2006-01-17 Micron Technology, Inc. Multi-modal motion estimation for video sequences
WO2006128315A1 (en) 2005-06-03 2006-12-07 Universität Zürich Photoarray for detecting time-dependent image data
US7728260B2 (en) 2005-06-07 2010-06-01 Johnson Steven X Warm window system
US9129172B2 (en) * 2011-06-20 2015-09-08 Metrologic Instruments, Inc. Indicia reading terminal with color frame processing
KR102072124B1 (ko) * 2011-11-24 2020-02-04 에스케이텔레콤 주식회사 세밀한 예측 단위를 사용하는 효과적인 부호화/복호화 방법 및 장치
FR2985065B1 (fr) * 2011-12-21 2014-01-10 Univ Paris Curie Procede d'estimation de flot optique a partir d'un capteur asynchrone de lumiere
KR102070562B1 (ko) * 2012-06-19 2020-01-30 삼성전자주식회사 이벤트 기반 이미지 처리 장치 및 그 장치를 이용한 방법
KR102347249B1 (ko) * 2014-10-21 2022-01-04 삼성전자주식회사 외부 물체의 움직임과 연관된 이벤트에 응답하여 화면을 디스플레이하는 장치 및 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20040050127A (ko) * 2002-12-09 2004-06-16 삼성전자주식회사 비디오 부호화기의 움직임 추정기 및 그 방법
EP3131295A1 (en) * 2015-08-14 2017-02-15 Axis AB Video encoding method and system
CN105160703A (zh) * 2015-08-25 2015-12-16 天津师范大学 一种使用时域视觉传感器的光流计算方法
CN105719290A (zh) * 2016-01-20 2016-06-29 天津师范大学 一种使用时域视觉传感器的双目立体深度匹配方法
CN106597463A (zh) * 2016-12-29 2017-04-26 天津师范大学 基于动态视觉传感器芯片的光电式接近传感器及探测方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
Block-matching optical flow for dynamic vision sensors: Algorithm and FPGA implementation;Min Liu;《 2017 IEEE International Symposium on Circuits and Systems (ISCAS)》;20170928;正文1-4页 *

Also Published As

Publication number Publication date
KR20200015589A (ko) 2020-02-12
JP2020522067A (ja) 2020-07-27
EP3631756A1 (en) 2020-04-08
EP3631756B1 (en) 2022-01-19
US20200111220A1 (en) 2020-04-09
CN110692083A (zh) 2020-01-14
JP7253258B2 (ja) 2023-04-06
WO2018219931A1 (en) 2018-12-06
US11227397B2 (en) 2022-01-18

Similar Documents

Publication Publication Date Title
CN110692083B (zh) 用于动态视觉传感器的块匹配光流和立体视觉
Baldwin et al. Event probability mask (epm) and event denoising convolutional neural network (edncnn) for neuromorphic cameras
US11615546B2 (en) Systems and methods for depth estimation using generative models
CN113286194A (zh) 视频处理方法、装置、电子设备及可读存储介质
WO2018037079A1 (en) Simultaneous localization and mapping with an event camera
CN105957110B (zh) 用于检测对象的设备和方法
CN112367474B (zh) 一种自适应光场成像方法、装置及设备
WO2006078861A9 (en) Method, system and apparatus for a time stamped visual motion sensor
CN110660090B (zh) 主体检测方法和装置、电子设备、计算机可读存储介质
CN113711276A (zh) 尺度感知单目定位和地图构建
CN112184757A (zh) 运动轨迹的确定方法及装置、存储介质、电子装置
CN104054110A (zh) 根据图像感测的碰撞时间
CN112449152A (zh) 多路视频同步的方法、***及设备
Liu et al. ABMOF: A novel optical flow algorithm for dynamic vision sensors
Wang et al. Object counting in video surveillance using multi-scale density map regression
CN116883897A (zh) 一种低分辨率目标识别方法
Tung et al. Why accuracy is not enough: The need for consistency in object detection
CN107154052A (zh) 对象状态估计的方法及装置
Yabuki et al. Real-time video stabilization on an FPGA
KR20210133844A (ko) 단안 이벤트-기반 센서를 사용하는 모션 추정의 시스템 및 방법
CN102760296B (zh) 多画面中物体的移动分析方法
Eibensteiner et al. Event-driven stereo vision algorithm based on silicon retina sensors
Wu et al. FlyTracker: Motion tracking and obstacle detection for drones using event cameras
CN110383295A (zh) 图像处理装置、图像处理方法以及图像处理程序
Medvedeva et al. Motion detection algorithm implemented on the ARM-based hardware

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