CN115984336A - 一种光流估计方法和装置 - Google Patents
一种光流估计方法和装置 Download PDFInfo
- Publication number
- CN115984336A CN115984336A CN202111199513.6A CN202111199513A CN115984336A CN 115984336 A CN115984336 A CN 115984336A CN 202111199513 A CN202111199513 A CN 202111199513A CN 115984336 A CN115984336 A CN 115984336A
- Authority
- CN
- China
- Prior art keywords
- optical flow
- image frame
- frame
- event
- image
- 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
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/269—Analysis of motion using gradient-based methods
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
技术领域
本申请涉及计算机视觉领域,特别涉及一种光流估计方法和装置。
背景技术
光流(optical flow)是指是利用图像序列中像素点在时间域上的变化以及相邻帧之间的相关性来找到上一帧跟当前帧之间存在的对应关系,从而计算出相邻帧之间物体的运动信息的一种方法。
传统的光流估计方法只能估计第一图像帧与第二图像帧之间的光流(包括从该第一图像帧到该第二图像帧的光流以及从该第二图像帧到该第一图像帧的光流),其中,第一图像帧和第二图像帧为相邻的两个图像帧,而对于上述两个图像帧到上述两个图像帧之间的任意时刻的光流(包括从该第一图像帧到该任意时刻的光流以及从该第二图像帧到该任意时刻的光流),只能通过线性运动假设,按照时间长度作为权重进行平均分配。
由于线性运动是一种假设的情况,与实际情况的差别较大,因此,采用传统的光流计算方法对相邻两个图像帧到该相邻两个图像帧之间的任意时刻的光流进行估计,准确度较低。
发明内容
本申请提供一种光流估计方法和装置,能够提高相邻两个图像帧到该相邻两个图像帧之间的任意时刻的光流估计的准确度。
第一方面,本申请提供一种光流估计方法。该方法可以包括:获得第一图像帧和第二图像帧,该第一图像帧和该第二图像帧为图像序列中任意两个相邻的图像帧,该图像序列是对目标场景拍摄得到的;获得第一事件帧,该第一事件帧用于描述该目标场景在该第一图像帧到该第二图像帧之间的时间段内的亮度变化情况;基于该第一图像帧、该第二图像帧和该第一事件帧,确定目标光流,该目标光流为从该第一图像帧到目标时刻的光流,该目标时刻为该第一图像帧与该第二图像帧之间的任意时刻。
在一种可能的实现方式中,该方法可以用于光流估计系统,该光流估计系统可以包括包括像素传感器、事件传感器和光流估计装置,该像素传感器和该事件传感器分别与该光流估计装置连接。该方法例如可以由上述光流估计装置执行。
还需要说明的是,由于该图像序列是通过像素相机对该目标场景拍摄得到的,因此,该第一图像帧和该第二图像帧中包含该目标场景中的目标对象的像素信息。由于该事件流数据是通过事件相机对该目标场景拍摄得到的,因此,该第一事件流数据可以捕捉到该目标场景中的目标对象在该第一图像帧与该第二图像帧之间的时间段内真实的高速运动信息(包括线性的和非线性的运动)。
采用本申请提供的光流估计方法,该光流估计装置基于该第一图像帧、该第二图像帧和该第一事件帧,先估计出该第一图像帧与该第二图像帧之间的第一光流;然后,基于该第二事件帧,确定该第一图像帧与该目标时刻的光流相比于该第一图像帧与该第二图像帧的光流的权重(即第一光流分配掩码),由于不存在目标对象的运动假设,因此,得到的第一光流分配掩码具备精确分配真实运动光流的特点,因此,通过该第一光流分配掩码对该第一光流进行加权得到的目标光流的准确度更高。
可选地,该光流估计装置可以通过多种方式获得该第一图像帧和该第二图像帧,本申请对此不做限定。
在一种可能的实现方式中,该光流估计装置可以接收像素相机发送的该第一图像帧和该第二图像帧。
在另一种可能的实现方式中,该光流估计装置可以通过输入接口获得其它设备或用于输入的该第一图像帧和该第二图像帧。
可选地,该目标场景中可以包括至少一个目标对象,该至少一个目标对象中的部分或全部对象处于运动状态。
可选地,该光流估计装置可以通过多种方式获得该第一事件帧,本申请对此不做限定。
在一种可能的实现方式中,该光流估计装置可以接收事件相机发送的事件流数据,该事件流数据包括至少一个事件中的每个事件的事件数据,该至少一个事件与该目标场景在该第一图像帧与该第二图像帧之间发生的至少一次亮度变化一一对应,该每个事件的数据包括时间戳、像素点坐标和极性;该光流估计装置可以基于该事件流数据,得到该第一事件帧。也就是说,事件相机可以采集该事件流数据,并将该事件流数据发送至该光流估计装置。
在另一种可能的实现方式中,该光流估计装置可以接收事件相机发送的该第一事件帧。也就是说,该事件相机可以采集该事件流数据,基于该事件流数据生成该第一事件帧并发送至该光流估计装置。
需要说明的是,该第一图像帧、该第二图像帧和该第一事件帧的分辨率相同。
在一种可能的实现方式中,以该第一图像帧包括H×W个像素点,H和W均为大于1的整数为例,该第一事件帧可以包括多个通道,该多个通道可以包括第一通道、第二通道、第三通道和第四通道。其中,该第一通道包括H×W个第一数值,该H×W个第一数值与该H×W个像素点的位置一一对应,该第一数值用于表示该第一图像帧中对应位置的像素点的亮度在该第一图像帧到该第二图像帧之间的时间段内增大的次数;该第二通道包括H×W个第二数值,该H×W个第二数值与该H×W个像素点的位置一一对应,该第二数值用于表示该第一图像帧中对应位置的像素点的亮度在该第一图像帧到该第二图像帧之间的时间段内减小的次数;该第三通道包括H×W个第三数值,该H×W个第三数值与该H×W个像素点的位置一一对应,该第三数值用于表示该第一图像帧中对应位置的像素点的亮度在该第一图像帧到该第二图像帧之间的时间段内最后一次增大的时间;该第四通道包括H×W个第四数值,该H×W个第四数值与该H×W个像素点的位置一一对应,该第四数值用于表示该第一图像帧中对应位置的像素点的亮度在该第一图像帧到该第二图像帧之间的时间段内最后一次减小的时间。
在一种可能的实现方式中,在该光流估计装置基于该第一图像帧、该第二图像帧和该第一事件帧,确定目标光流之前,该光流估计装置可以获得第二事件帧,该第二事件帧用于描述该目标场景在该第一图像帧到该目标时刻之间的时间段内的亮度变化情况;相应地,该光流估计装置基于该第一图像帧、该第二图像帧和该第一事件帧,确定目标光流,包括:该光流估计装置基于该第一图像帧、该第二图像帧、该第一事件帧和该第二事件帧,确定该目标光流。
具体地,该光流估计装置可以基于该第一图像帧、该第二图像帧和该第一事件帧,确定第一光流,该第一光流为从该第一图像帧到该第二图像帧的光流;基于该第二事件帧,确定第一光流分配掩码,该第一光流分配掩码用于指示该目标光流相对于该第一光流的权重;基于该第一光流和该第一光流分配掩码,确定该目标光流。
可选地,该第一光流可以为稀疏光流,也可以为稠密光流,本申请对此不做限定。
在一种可能的实现方式中,以该第一光流为稠密光流为例,该第一光流通过像素点的不同颜色表示不同的运动方向,通过像素点的不同亮度表示不同的运动速率。
可选地,该光流估计装置可以通过多种方式基于该第一图像帧、该第二图像帧和该第一事件帧,确定第一光流,本申请对此不做限定。
在一种可能的实现方式中,该光流估计装置可以将该第一图像帧、该第二图像帧和该第一事件帧输入预设的光流估计模型,得到该第一光流。
为了在端侧部署和实时性要求,上述光流估计模型的网络结构不能过于复杂,同时,由于光流估计是一项复杂任务,结构简单的网络难以完成较高精度光流估计,因此,本申请采用轻量化的第一卷积神经网络训练得到,该第一卷积神经网络可以包括降维、卷积、残差、反卷积和升维几个处理层,通过对该第一卷积神经网络的循环迭代,达到提高光流估计的准确度的目的,并且易于在端侧部署。
可选地,该光流估计装置可以将该第一图像帧、该第二图像帧和该第一事件帧输入该光流估计模型,并进行循环迭代,得到该第一光流。也就是说,该光流估计装置可以将该第一图像帧、该第二图像帧和该第一事件帧输入该光流估计模型,得到第二光流;将该第一图像帧、该第二图像帧、该第一事件帧和该第二光流输入该光流估计模型,得到第三光流;以此类推,循环迭代直到该光流估计模型输出该第一光流时满足该光流估计模型预设的损失函数时输出该第一光流。
需要说明的是,上述第一光流分配掩码与该第一图像帧、该第二图像帧和该第一事件帧的分辨率相同。
可选地,该光流估计装置可以通过多种方式基于该第二事件帧,确定第一光流分配掩码,本申请对此不做限定。
在一种可能的实现方式中,该光流估计装置可以将该该第二事件帧输入预设的光流分配模型,得到该第一光流分配掩码。
为了在端侧部署和实时性要求,上述光流分配模型的网络结构不能过于复杂,因此,本申请采用轻量化的第二CNN训练得到,该第二CNN可以包括融合和卷积等处理层,通过对该第二CNN的循环迭代,达到提高光流估计的准确度的目的,并且易于在端侧部署。
可选地,该光流估计装置可以将该第二事件帧输入该光流分配模型,并进行循环迭代,得到该第一光流分配掩码。
第二方面,本申请还提供一种光流估计装置,其特征在于,包括:获得模块和光流估计模块;该获得模块用于获得第一图像帧和第二图像帧,该第一图像帧和该第二图像帧为图像序列中任意两个相邻的图像帧,该图像序列是对目标场景拍摄得到的;获得第一事件帧,该第一事件帧用于描述该目标场景在该第一图像帧到该第二图像帧之间的时间段内的亮度变化情况;该光流估计模块用于基于该第一图像帧、该第二图像帧和该第一事件帧,确定目标光流,该目标光流为从该第一图像帧到目标时刻的光流,该目标时刻为该第一图像帧与该第二图像帧之间的任意时刻。
在一种可能的实现方式中,该获得模块还用于在该基于该第一图像帧、该第二图像帧和该第一事件帧,确定目标光流之前,获得第二事件帧,该第二事件帧用于描述该目标场景在该第一图像帧到该目标时刻之间的时间段内的亮度变化情况;该光流估计模块具体用于基于该第一图像帧、该第二图像帧、该第一事件帧和该第二事件帧,确定该目标光流。
在一种可能的实现方式中,该光流估计模块包括帧间光流估计子模块、光流分配子模块和帧间任意时刻光流估计子模块;该帧间光流估计子模块用于基于该第一图像帧、该第二图像帧和该第一事件帧,确定第一光流,该第一光流为从该第一图像帧到该第二图像帧的光流;该光流分配子模块用于基于该第二事件帧,确定第一光流分配掩码,该第一光流分配掩码用于指示该目标光流相对于该第一光流的权重;该帧间任意时刻光流估计子模块用于基于该第一光流和该第一光流分配掩码,确定该目标光流。
在一种可能的实现方式中,该帧间光流估计子模块具体用于将该第一图像帧、该第二图像帧和该第一事件帧输入预设的光流估计模型,得到该第一光流。
在一种可能的实现方式中,该帧间光流估计子模块具体用于将该第一图像帧、该第二图像帧和该第一事件帧输入该光流估计模型,并进行循环迭代,得到该第一光流。
在一种可能的实现方式中,该光流分配子模块具体用于将该第二事件帧输入预设的光流分配模型,得到该第一光流分配掩码。
在一种可能的实现方式中,该光流分配子模块具体用于将该第二事件帧输入该光流分配模型,并进行循环迭代,得到该第一光流分配掩码。
在一种可能的实现方式中,该第一图像帧包括H×W个像素点,H和W均为大于1的整数,该第一事件帧包括多个通道,该多个通道包括第一通道、第二通道、第三通道和第四通道;该第一通道包括H×W个第一数值,该H×W个第一数值与该H×W个像素点的位置一一对应,该第一数值用于表示该第一图像帧中对应位置的像素点的亮度在该第一图像帧到该第二图像帧之间的时间段内增大的次数;该第二通道包括H×W个第二数值,该H×W个第二数值与该H×W个像素点的位置一一对应,该第二数值用于表示该第一图像帧中对应位置的像素点的亮度在该第一图像帧到该第二图像帧之间的时间段内减小的次数;该第三通道包括H×W个第三数值,该H×W个第三数值与该H×W个像素点的位置一一对应,该第三数值用于表示该第一图像帧中对应位置的像素点的亮度在该第一图像帧到该第二图像帧之间的时间段内最后一次增大的时间戳;该第四通道包括H×W个第四数值,该H×W个第四数值与该H×W个像素点的位置一一对应,该第四数值用于表示该第一图像帧中对应位置的像素点的亮度在该第一图像帧到该第二图像帧之间的时间段内最后一次减小的时间戳。
在一种可能的实现方式中,该获得模块具体用于:获得事件流数据,该事件流数据包括至少一个事件中的每个事件的事件数据,该至少一个事件与该目标场景在该第一图像帧与该第二图像帧之间发生的至少一次亮度变化一一对应,该每个事件的数据包括时间戳、像素点坐标和极性;基于该事件流数据,得到该第一事件帧。
第三方面,本申请还提供一种光流估计装置,该光流估计装置可以包括至少一个处理器和至少一个通信接口,所述至少一个处理器和所述至少一个通信接口耦合,所述至少一个通信接口用于为所述至少一个处理器提供信息和/或数据,所述至少一个处理器用于运行计算机程序指令以执行上述第一方面及其任意可能的实现方式中所述的光流估计方法。
可选地,该装置可以为芯片或集成电路。
第四方面,本申请还提供一种终端,该终端可以包括如上述第二方面及其任意可能的实现方式中所述的光流估计装置,或如上述第三方面所述的光流估计装置。
第五方面,本申请还提供一种计算机可读存储介质,其特征在于,用于存储计算机程序,该计算机程序被处理器运行时,实现上述第一方面及其任意可能的实现方式中所述的光流估计方法。
第六方面,本申请还提供一种计算机程序产品,其特征在于,当该计算机程序产品在处理器上运行时,实现上述第一方面及其任意可能的实现方式中所述的光流估计方法。
本申请提供的光流估计装置、计算机存储介质、计算机程序产品、芯片和终端均用于执行上文所提供的光流估计方法,因此,其所能达到的有益效果可参考上文所提供的光流估计方法中的有益效果,此处不再赘述。
附图说明
图1是本申请实施例提供的事件流数据的示意图;
图2是本申请实施例提供的稀疏光流和稠密光流的示意图;
图3是本申请实施例提供的光流估计系统100的示意性框图;
图4是本申请实施例提供的光流估计方法200的示意性流程图;
图5是本申请实施例提供的事件流数据的另一示意图;
图6是本申请实施例提供的第一事件帧的示意图;
图7是本申请实施例提供的光流估计装置300的示意性框图;
图8是本申请实施例提供的光流估计方法的流程示意图;
图9是本申请实施例提供的光流估计装置400的示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。
1.像素相机
像素相机,即传统相机,以固定速率(即帧率)采集场景的亮度值,并以固定速率输出为图像数据。
2.事件相机(event-based camera)
事件相机是一种新型传感器,基于事件驱动的方式来捕捉场景中的像素点亮度的动态变化。
对于传统的相机,从某种程度上,是捕获一个静态/静止的空间,而事件相机的目的是:敏感地捕捉运动的物体。
与传统相机不同,事件相机只观测场景中的“运动”,确切地说是观察场景中的“亮度的变化”。事件相机只会在有亮度变化时,输出对应像素的亮度变化(1或0),具有响应快、动态范围宽等优势。
对于单个像素点,事件相机只有在光强产生变化时,该像素点才会输出。比如亮度增加并超过的一个阈值,那么对应像素点将输出一个亮度增大的事件。事件相机没有帧的概念,当场景变化时,就产生一系列的像素级(pixel-level)的输出。其理论时间分辨率高达1us,因此产生的延迟非常低,低于常见场景中的绝大多数的运动速率,因此就不会出现运动模糊问题。除此之外,事件相机的每个像素点是独立异步工作的,所以动态范围很大。事件相机还有能耗低的优势。
综上所述,传统相机以固定的帧率对场景进行全帧拍摄,所有像素点同步工作。事件相机是每个像素点独立异步工作,采样率高达一百万赫兹(Hz),且仅对亮度变化(即事件)进行输出,一个事件通过一个四元组的事件数据描述,所有像素点输出的事件数据汇总起来,形成由一个个事件组成的事件列表,作为相机输出的事件流数据。
例如:一个事件的事件数据可以表示为(x,y,t,p),其中,(x,y)为事件发生的像素点坐标、t为时间发生的时刻,p为事件发生的极性,(如p=0表示该像素点的亮度相比于前一次采样减小,p=1表示该像素点亮度相比于前一次采样增大)。
常用的事件相机可以包括动态视觉传感器(dynamic vision sensor,DVS)或动态有源像素视觉传感器(dynamic and active-pixel vision sensor,DAVIS)。
示例的,图1示出了事件流数据的示意图。图1中的(a)图是通过事件数据列表表示事件流数据,该事件数据列表包括多个事件数据,每个事件数据描述一个事件,每个事件数据通过四元组表示,即时间戳、x坐标、y坐标和极性。图1中的(b)图是通过可视化图表示事件流数据,其中,三维坐标轴为帧宽、帧高和时间,三维坐标中坐标点的颜色表示对应位置的像素点的亮度变化的次数,颜色越亮亮度变化的次数越多。
3.光流
光流,即光的流动,是利用图像序列中像素点在时间域上的变化以及相邻帧之间的相关性来找到上一帧跟当前帧之间存在的对应关系,从而计算出相邻帧之间物体的运动信息的一种方法。
根据是否选取图像中的稀疏点进行光流估计,可以将光流分为稀疏光流和稠密光流。
示例的,图2示出了稀疏光流和稠密光流的示意图。其中,图2中的(a)为稀疏光流的示意图,其中描述了图像中一些显著特征点(如角点)的像素点向下一帧运动的光流,图2中的(b)为稠密光流的示意图,其中描述了图像中所有个像素点向下一帧运动的光流,稠密光流图中不同颜色表示不同的运动方向,不同的亮度表示不同的运动速率。
现有技术中,光流网络(FlowNet)是一种通过卷积神经网络训练得到的用于估计光流的模型,光流估计是指根据图像序列中任意两个相邻的图像帧,去估计这两个图像帧之间像素级的光流。
示例的,以两个相邻的图像帧为第一图像帧和第二图像帧,且该第一图像帧为该第二图像帧的前一帧为例,采用现有的光流网络,可以估计该第一图像帧与该第二图像帧之间的双向光流,即从第一图像帧到第二图像帧的光流以及从第二图像帧到第一图像帧的光流。
由于传统相机是以恒定的频率(即帧率)拍摄获取图像的,即使帧率能够达到1KHz,那也具有1ms的延时。在这1ms的延时内,目标对象可能在进行高速运动。
对于上述两个图像帧到上述两个图像帧之间的任意时刻的光流,即从该第一图像帧到该任意时刻的光流以及从该第二图像帧到该任意时刻的光流,只能通过线性运动假设,按照时间长度作为权重进行平均分配。
然而,在上述场景下,目标对象可能是按照非线性运动移动的,因此,采用现有的线性运动假设方法估计相邻两个图像帧到上述两个图像帧之间的任意时刻的光流,准确度较低。
首先介绍一下本申请提供的光流估计方法和装置所应用的光流估计系统。
图3示出了本申请实施例提供的光流估计系统100的示意性框图。如图3所示,该光流估计系统100可以包括像素传感器110、事件传感器120和光流估计装置130,像素传感器110和事件传感器120分别与光流估计装置130连接。
像素传感器110用于对目标场景进行拍摄,得到图像序列;将第一图像帧和第二视频帧发送至光流估计装置130,该第一图像帧和该第二图像帧为该图像序列中任意两个相邻的图像帧。
示例的,该像素传感器可以为像素相机。本申请对该像素相机的型号和类型不做限定。
事件传感器120用于对该目标场景进行拍摄,得到事件流数据,该事件流数据包括至少一个事件中的每个事件的事件数据,该至少一个事件与该目标场景在该第一图像帧与该第二图像帧之间发生的至少一次亮度变化一一对应,该每个事件的数据包括时间戳、像素点坐标和极性;基于该事件流数据,得到第一事件帧,该第一事件帧用于描述该目标场景在该第一图像帧到该第二图像帧之间的时间段内的亮度变化情况,该第一图像帧、该第二图像帧和该第一事件帧的分辨率相同;将该第一图像帧、该第二图像帧和该第一事件帧发送至光流估计装置130。
示例的,该事件传感器可以为事件相机。本申请对该事件相机的型号和类型不做限定。
光流估计装置130用于基于该第一图像帧、该第二图像帧和该第一事件帧,确定目标光流(具体方法可以参考下文中介绍的本申请提供的光流估计方法),该目标光流为从该第一图像帧到目标时刻的光流,该目标时刻为该第一图像帧与该第二图像帧之间的任意时刻。
需要说明的是,上面仅以从该第一图像帧到该目标时刻的光流(即目标光流)的估计方法为例进行介绍,但本申请不限于此,从该第二图像帧到该目标时刻的光流的估计方法与该目标光流的估计方法类似,可以参考本申请提供的目标光流的估计方法,此处不再赘述。
可选地,上述事件传感器120可以直接将该事件流数据发送至光流估计装置130;相应地,光流估计装置130基于该事件流数据,得到该第一事件帧。
可选地,上述各装置之间可以通过有线方式或无线方式进行通信,本申请对此不做限定。
示例的,上述有线方式可以为通过数据线连接、或通过内部总线连接实现通信。
示例的,上述无线方式可以为通过通信网络实现通信,该通信网络可以是局域网,也可以是通过中继(relay)设备转接的广域网,或者包括局域网和广域网。当该通信网络为局域网时,该通信网络可以是无线保真(wireless fidelity,Wifi)热点网络、wifi对等(peer-to-peer,P2P)网络、蓝牙(bluetooth)网络、zigbee网络、近场通信(near fieldcommunication,NFC)网或者未来可能的通用短距离通信网络等。当该通信网络为广域网时,示例性的,该通信网络可以是第三代移动通信技术(3rd-generation wirelesstelephone technology,3G)网络、第四代移动通信技术(the 4th generation mobilecommunication technology,4G)网络、第五代移动通信技术(5th-generation mobilecommunication technology,5G)网络、公共陆地移动网络(public land mobile network,PLMN)或因特网(Internet)等,本申请对此不做限定。
采用本申请提供的光流估计系统,由于该第一事件帧能够捕捉该目标场景中的目标在该第一图像帧和该第二图像帧之间低时延的运动信息,该第一图像帧和该第二图像帧能够捕捉该目标场景的像素信息,因此,结合该第一事件帧、该第一图像帧和该第二图像帧,确定该目标光流,能够提高该目标光流的准确度。
上面介绍本申请提供的光流估计系统,下面将进一步介绍本申请提供的应用于上述光流估计系统的光流估计方法。
请参考图4,图4示出了本申请实施例提供的光流估计方法200,该光流估计方法200可以用于上述光流估计系统100。如图2所示,该光流估计方法200可以包括以下步骤,需要说明的是,以下所列步骤可以以各种顺序执行和/或同时发生,不限于图4所示的执行顺序。
S201.获得第一图像帧和第二图像帧,该第一图像帧和该第二图像帧为图像序列中任意两个相邻的图像帧,该图像序列是对目标场景拍摄得到的。
可选地,该方法200可以由光流估计装置执行。
示例的,这里的光流估计装置可以为上述光流估计系统100中的光流估计装置130。
可选地,该光流估计装置可以通过多种方式获得该第一图像帧和该第二图像帧,本申请对此不做限定。
在一种可能的实现方式中,该光流估计装置可以接收像素相机发送的该第一图像帧和该第二图像帧。
示例的,这里的像素相机可以为上述光流估计系统100中的像素相机110。
在另一种可能的实现方式中,该光流估计装置可以通过输入接口获得其它设备或用于输入的该第一图像帧和该第二图像帧。
可选地,该目标场景中可以包括至少一个目标对象,该至少一个目标对象中的部分或全部对象处于运动状态。
S202.获得第一事件帧,该第一事件帧用于描述该目标场景在该第一图像帧到该第二图像帧之间的时间段内的亮度变化情况。
可选地,该光流估计装置可以通过多种方式获得该第一事件帧,本申请对此不做限定。
在一种可能的实现方式中,该光流估计装置可以接收事件相机发送的事件流数据,该事件流数据包括至少一个事件中的每个事件的事件数据,该至少一个事件与该目标场景在该第一图像帧与该第二图像帧之间发生的至少一次亮度变化一一对应,该每个事件的数据包括时间戳、像素点坐标和极性;该光流估计装置可以基于该事件流数据,得到该第一事件帧。也就是说,事件相机可以采集该事件流数据,并将该事件流数据发送至该光流估计装置。
在另一种可能的实现方式中,该光流估计装置可以接收事件相机发送的该第一事件帧。也就是说,该事件相机可以采集该事件流数据,基于该事件流数据生成该第一事件帧并发送至该光流估计装置。
示例的,这里的事件相机可以为上述光流估计系统100中的事件相机120。
需要说明的是,该第一图像帧、该第二图像帧和该第一事件帧的分辨率相同。
示例的,以该第一图像帧、该第二图像帧和该第一事件帧的为分辨率均为4×4为例,图5示出了本申请实施例提供的事件流数据的示意图。如图5所示,该事件流数据包括20个事件数据,该20个事件数据分别描述该目标场景中像素点在该第一图像帧(即t1时刻)到该第二图像帧(即t10时刻)之间的时间段内发生的20次亮度变化(即该目标场景发生的20个事件),其中,t1~t10依次增大。如图5所示,以事件1为例,该事件1的事件数据包括以下四元组:时间戳为t1+Δt1,x坐标为1,y坐标为1,极性为1(即亮度增大),所描述的事件1为在t1+Δt1时刻、坐标为(1,1)的像素点的亮度增大。其它19个事件具有类似的理解,此处不再赘述。通过上述事件流数据可以估计不同像素点在不同时刻的运动速度和运动方向。
在一种可能的实现方式中,以该第一图像帧包括H×W个像素点,H和W均为大于1的整数为例,该第一事件帧可以包括多个通道,该多个通道可以包括第一通道、第二通道、第三通道和第四通道。其中,该第一通道包括H×W个第一数值,该H×W个第一数值与该H×W个像素点的位置一一对应,该第一数值用于表示该第一图像帧中对应位置的像素点的亮度在该第一图像帧到该第二图像帧之间的时间段内增大的次数;该第二通道包括H×W个第二数值,该H×W个第二数值与该H×W个像素点的位置一一对应,该第二数值用于表示该第一图像帧中对应位置的像素点的亮度在该第一图像帧到该第二图像帧之间的时间段内减小的次数;该第三通道包括H×W个第三数值,该H×W个第三数值与该H×W个像素点的位置一一对应,该第三数值用于表示该第一图像帧中对应位置的像素点的亮度在该第一图像帧到该第二图像帧之间的时间段内最后一次增大的时间;该第四通道包括H×W个第四数值,该H×W个第四数值与该H×W个像素点的位置一一对应,该第四数值用于表示该第一图像帧中对应位置的像素点的亮度在该第一图像帧到该第二图像帧之间的时间段内最后一次减小的时间。
示例的,图6示出了本申请实施例提供的第一事件帧的示意图,该第一事件帧可以包括第一通道、第二通道、第三通道和第四通道,该第一事件帧是基于如图5所示的事件流数据得到的。如图6所示,以坐标(1,1)的像素点为例,在图5中的事件流数据中该像素点分别在t2时刻和t9时刻极性为1(即亮度增大),即该像素点的亮度在t1到t10之间增大次数为2,减少次数为0,最后一次增大的时间为t9,最后一次减小的时间不存在,因此,第一通道中坐标为(1,1)的像素点(如图6中第一通道的黑色背景的像素点所示)处的第一数值为2,第二通道中坐标为(1,1)的像素点(如图6中第二通道的黑色背景的像素点所示)处的第二数值为0,第三通道中坐标为(1,1)的像素点(如图6中第三通道的黑色背景的像素点所示)处的第三数值为t9,第四通道中坐标为(1,1)的像素点(如图6中第四通道的黑色背景的像素点所示)处的第四数值记为0。
类似地,以坐标(2,2)的像素点为例,在图5中的事件流数据中该像素点分别在t2时刻、t3时刻、t4时刻、t5时刻和t6时刻极性为0(即亮度减小),即该像素点的亮度在t1到t10之间增大次数为0,减少次数为5,最后一次增大的时间不存在,最后一次减小的时间为t6,因此,第一通道中坐标为(2,2)的像素点(如图6中第一通道的边框加粗的像素点所示)处的第一数值为0,第二通道中坐标为(2,2)的像素点(如图6中第二通道的边框加粗的像素点所示)处的第二数值为5,第三通道中坐标为(2,2)的像素点(如图6中第三通道的边框加粗的像素点所示)处的第三数值记为0,第四通道中坐标为(2,2)的像素点(如图6中第四通道的边框加粗的像素点所示)处的第四数值为t6。
S203.基于该第一图像帧、该第二图像帧和该第一事件帧,确定目标光流,该目标光流为从该第一图像帧到目标时刻的光流,该目标时刻为该第一图像帧与该第二图像帧之间的任意时刻。
还需要说明的是,由于该图像序列是通过像素相机对该目标场景拍摄得到的,因此,该第一图像帧和该第二图像帧中包含该目标场景中的目标对象的像素信息。由于该事件流数据是通过事件相机对该目标场景拍摄得到的,因此,该第一事件流数据可以捕捉到该目标场景中的目标对象在该第一图像帧与该第二图像帧之间的时间段内真实的高速运动信息(包括线性的和非线性的运动)。
综上所述,结合该第一图像帧、该第二图像帧和该第一事件帧对该目标时刻的光流进行估计,能够提高该目标光流的准确度。
在一种可能的实现方式中,在S203之前,该光流估计装置可以获得第二事件帧,该第二事件帧用于描述该目标场景在该第一图像帧到该目标时刻之间的时间段内的亮度变化情况;相应地,在S203中,该光流估计装置可以基于该第一图像帧、该第二图像帧、该第一事件帧和该第二事件帧,确定该目标光流。
需要说明的是,该第二事件帧的获得方式可以参考上述第一事件帧的获得方式,此处不再赘述。
具体地,该光流估计装置可以基于该第一图像帧、该第二图像帧和该第一事件帧,确定第一光流,该第一光流为从该第一图像帧到该第二图像帧的光流;基于该第二事件帧,确定第一光流分配掩码,该第一光流分配掩码用于指示该目标光流相对于该第一光流的权重;基于该第一光流和该第一光流分配掩码,确定该目标光流。
可选地,该第一光流可以为稀疏光流,也可以为稠密光流,本申请对此不做限定。
在一种可能的实现方式中,以该第一光流为稠密光流为例,该第一光流通过像素点的不同颜色表示不同的运动方向,通过像素点的不同亮度表示不同的运动速率。
可选地,该光流估计装置可以通过多种方式基于该第一图像帧、该第二图像帧和该第一事件帧,确定第一光流,本申请对此不做限定。
在一种可能的实现方式中,该光流估计装置可以将该第一图像帧、该第二图像帧和该第一事件帧输入预设的光流估计模型,得到该第一光流。
为了在端侧部署和实时性要求,上述光流估计模型的网络结构不能过于复杂,同时,由于光流估计是一项复杂任务,结构简单的网络难以完成较高精度光流估计,因此,本申请采用轻量化的第一卷积神经网络(convolutional neural network,CNN)训练得到,该第一CNN可以包括降维、卷积、残差、反卷积和升维几个处理层,通过对该第一CNN的循环迭代,达到提高光流估计的准确度的目的,并且易于在端侧部署。
可选地,该光流估计装置可以将该第一图像帧、该第二图像帧和该第一事件帧输入该光流估计模型,并进行循环迭代,得到该第一光流。也就是说,该光流估计装置可以将该第一图像帧、该第二图像帧和该第一事件帧输入该光流估计模型,得到第二光流;将该第一图像帧、该第二图像帧、该第一事件帧和该第二光流输入该光流估计模型,得到第三光流;以此类推,循环迭代直到该光流估计模型输出该第一光流时满足该光流估计模型预设的损失函数时输出该第一光流。
需要说明的是,上述第一光流分配掩码与该第一图像帧、该第二图像帧和该第一事件帧的分辨率相同。
可选地,该光流估计装置可以通过多种方式基于该第二事件帧,确定第一光流分配掩码,本申请对此不做限定。
在一种可能的实现方式中,该光流估计装置可以将该该第二事件帧输入预设的光流分配模型,得到该第一光流分配掩码。
为了在端侧部署和实时性要求,上述光流分配模型的网络结构不能过于复杂,因此,本申请采用轻量化的第二CNN训练得到,该第二CNN可以包括融合和卷积等处理层,通过对该第二CNN的循环迭代,达到提高光流估计的准确度的目的,并且易于在端侧部署。
示例的,该融合处理层用于将多通道的该第二事件帧融合为一通道的图像,该卷积处理层用于通过X方向的卷积核和Y方向的卷积核分别对该一通道的图像进行卷积处理输出一通道的该第一光流分配掩码,该第一光流分配掩码的分辨率与该第二事件帧相同。
可选地,该光流估计装置可以将该第二事件帧输入该光流分配模型,并进行循环迭代,得到该第一光流分配掩码。也就是说,该光流估计装置可以将该第二事件帧输入该光流分配模型,得到第二光流分配掩码;将该第二事件帧和第二光流分配掩码输入该光流分配模型,得到第三光流分配掩码;以此类推,循环迭代直到该光流分配模型输出该第一光流分配掩码时满足该光流分配模型预设的损失函数时输出该第一光流分配掩码。
在一种可能的实现方式中,该光流估计装置可以通过该第一光流分配掩码对该第一光流中对应位置的光流进行加权,得到该目标光流。
采用本申请提供的光流估计方法,该光流估计装置基于该第一图像帧、该第二图像帧和该第一事件帧,先估计出该第一图像帧与该第二图像帧之间的第一光流;然后,基于该第二事件帧,确定该第一图像帧与该目标时刻的光流相比于该第一图像帧与该第二图像帧的光流的权重(即第一光流分配掩码),由于不存在目标对象的运动假设,因此,得到的第一光流分配掩码具备精确分配真实运动光流的特点,因此,通过该第一光流分配掩码对该第一光流进行加权得到的目标光流的准确度更高。
上面结合图4至图6介绍了本申请实施例提供的光流估计方法,下面将进一步介绍本申请实施例提供的光流估计装置。
请参考图7,图7示出了本申请实施例提供的光流估计装置300的示意性框图,该光流估计装置300可以包括获得模块301和光流估计模块302。
该获得模块301用于获得第一图像帧和第二图像帧,该第一图像帧和该第二图像帧为图像序列中任意两个相邻的图像帧,该图像序列是对目标场景拍摄得到的;获得第一事件帧,该第一事件帧用于描述该目标场景在该第一图像帧与该第二图像帧之间的亮度变化情况。
该光流估计模块302用于基于该第一图像帧、该第二图像帧和该第一事件帧,确定目标光流,该目标光流包括该第一图像帧与目标时刻之间对应像素点的光流以及该目标时刻与该第二图像帧之间对应像素点的光流中的至少一项,该目标时刻为该第一图像帧与该第二图像帧之间的任意时刻。
在一种可能的实现方式中,该获得模块301还用于在该基于该第一图像帧、该第二图像帧和该第一事件帧,确定目标光流之前,获得第二事件帧,该第二事件帧用于描述该目标场景该第一图像帧与该目标时刻之间的亮度变化情况;该光流估计模块302具体用于基于该第一图像帧、该第二图像帧、该第一事件帧和该第二事件帧,确定该目标光流。
可选地,该光流估计模块302可以包括帧间光流估计子模块3021、光流分配子模块3022和帧间任意时刻光流估计子模块3023。
在一种可能的实现方式中,该帧间光流估计子模块3021用于基于该第一图像帧、该第二图像帧和该第一事件帧,确定第一光流,该第一光流为该第一图像帧与该第二图像帧之间对应像素点的光流;该光流分配子模块3022用于基于该第二事件帧,确定第一光流分配掩码,该第一光流分配掩码用于指示该目标光流相对于该第一光流的权重;该帧间任意时刻光流估计子模块3023用于基于该第一光流和该第一光流分配掩码,确定该目标光流。
在一种可能的实现方式中,该帧间光流估计子模块3021具体用于将该第一图像帧、该第二图像帧和该第一事件帧输入预设的光流估计模型,得到该第一光流。
在一种可能的实现方式中,该帧间光流估计子模块3021具体用于将该第一图像帧、该第二图像帧和该第一事件帧输入该光流估计模型,并进行循环迭代,得到该第一光流。
在一种可能的实现方式中,该光流分配子模块3022具体用于将该第二事件帧输入预设的光流分配模型,得到该第一光流分配掩码。
在一种可能的实现方式中,该光流分配子模块3022具体用于将该第二事件帧输入该光流分配模型,并进行循环迭代,得到该第一光流分配掩码。
在一种可能的实现方式中,该第一图像帧包括H×W个像素点,H和W均为大于1的整数,该第一事件帧包括多个通道,该多个通道包括第一通道、第二通道、第三通道和第四通道;该第一通道包括H×W个第一数值,该H×W个第一数值与该H×W个像素点的位置一一对应,该第一数值用于表示该第一图像帧中对应位置的像素点的亮度在该第一图像帧到该第二图像帧之间增大的次数;该第二通道包括H×W个第二数值,该H×W个第二数值与该H×W个像素点的位置一一对应,该第二数值用于表示该第一图像帧中对应位置的像素点的亮度在该第一图像帧到该第二图像帧之间减小的次数;该第三通道包括H×W个第三数值,该H×W个第三数值与该H×W个像素点的位置一一对应,该第三数值用于表示该第一图像帧中对应位置的像素点的亮度在该第一图像帧到该第二图像帧之间最后一次增大的时间;该第四通道包括H×W个第四数值,该H×W个第四数值与该H×W个像素点的位置一一对应,该第四数值用于表示该第一图像帧中对应位置的像素点的亮度在该第一图像帧到该第二图像帧之间最后一次减小的时间。
在一种可能的实现方式中,该获得模块具体用于获得事件流数据,该事件流数据包括至少一个事件中的每个事件的事件数据,该至少一个事件与该目标场景在该第一图像帧与该第二图像帧之间发生的至少一次亮度变化一一对应,该每个事件的数据包括时间戳、像素点坐标和极性;基于该事件流数据,得到该第一事件帧。
需要说明的是,上述模块之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。在一个可选例子中,光流估计装置300可以具体为上述光流估计方法200实施例中的光流估计装置,光流估计装置300可以用于执行上述光流估计方法200实施例中与光流估计装置对应的各个流程和/或步骤,为避免重复,在此不再赘述。
图7所示实施例中的各个模块中的一个或多个可以通过软件、硬件、固件或其结合实现。所述软件或固件包括但不限于计算机程序指令或代码,并可以被硬件处理器所执行。所述硬件包括但不限于各类集成电路,如中央处理单元(CPU,Central Processing Unit)、数字信号处理器(DSP,Digital Signal Processor)、现场可编程门阵列(FPGA,FieldProgrammable Gate Array)或专用集成电路(ASIC,Application Specific IntegratedCircuit)。
示例的,图8示出了本申请实施例提供的光流估计方法的流程示意图。可选地,该流程中的步骤可以由图7中所述的光流估计装置300执行。需要说明的是,以下所列步骤可以以各种顺序执行和/或同时发生,不限于图8所示的执行顺序。该流程包括以下步骤:
(1)获得模块301获得第一图像帧、第二图像帧、第一事件帧和第二事件帧。具体可以参考上述方法步骤201和步骤202中的相关介绍。
(2)获得模块301将该第一图像帧、该第二图像帧和该第一事件帧发送至帧间光流估计子模块3021。
(3)帧间光流估计子模块3021将该第一图像帧、该第二图像帧和该第一事件帧输入光流估计模型,并进行循环迭代,得到第一光流。具体可以参考上述方法步骤203中的相关介绍。
(4)帧间光流估计子模块3021将该第一光流发送至帧间任意时刻光流估计子模块3023。
(5)获得模块301将该第二事件帧发送至光流分配子模块3022。
(6)光流分配子模块3022将该第二事件帧输入光流分配模型,并进行循环迭代,得到第一光流分配掩码。具体可以参考上述方法步骤203中的相关介绍。
(7)光流分配子模块3022将该第一光流分配掩码发送至帧间任意时刻光流估计子模块3023。
(8)光流分配子模块3022通过该第一光流分配掩码对该第一光流进行加权,得到该目标光流。
请参见图9,图9示出了本申请实施例提供的光流估计装置400的示意性框图,光流估计装置400可以包括处理器401和通信接口402,其中,处理器401和通信接口402耦合。
通信接口402,用于向处理器401输入图像数据,和/或从处理器401输出图像数据;处理器401运行计算机程序或指令,以使光流估计装置400实现上述方法200实施例所描述的光流估计方法。
本申请实施例中的处理器401包括但不限于中央处理单元(Central ProcessingUnit,CPU)、通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(FieldProgrammable Gate Array,FPGA)、分立门或者晶体管逻辑器件或分立硬件组件等。通用处理器可以是微处理器、微控制器或者是任何常规的处理器等。
例如,处理器401用于通过通信接口402获得第一图像帧和第二图像帧,该第一图像帧和该第二图像帧为图像序列中任意两个相邻的图像帧,该图像序列是对目标场景拍摄得到的;通过通信接口402获得第一事件帧,该第一事件帧用于描述该目标场景在该第一图像帧与该第二图像帧之间的亮度变化情况;基于该第一图像帧、该第二图像帧和该第一事件帧,确定目标光流,该目标光流包括该第一图像帧与目标时刻之间对应像素点的光流以及该目标时刻与该第二图像帧之间对应像素点的光流中的至少一项,该目标时刻为该第一图像帧与该第二图像帧之间的任意时刻。
在一个可选例子中,本领域技术人员可以理解,光流估计装置400可以具体为上述光流估计方法200实施例中的光流估计装置,光流估计装置400可以用于执行上述光流估计方法200实施例中与光流估计装置对应的各个流程和/或步骤,为避免重复,在此不再赘述。
可选地,光流估计装置400还可以包括存储器403。
存储器403可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data Rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DRRAM)。
具体地,存储器403用于存储光流估计装置的程序代码和指令。可选地,存储器403还用于存储处理器401执行上述光流估计方法200实施例过程中获得的数据,如第一光流、第一光流分配掩码、目标光流等。
可选地,存储器403可以为单独的器件或集成在处理器401中。
需要说明的是,图9仅仅示出了光流估计装置400的简化设计。在实际应用中,光流估计装置400还可以分别包含必要的其他元件,包含但不限于任意数量的通信接口、处理器、控制器、存储器等,而所有可以实现本申请的光流估计装置400都在本申请的保护范围之内。
在一种可能的设计中,光流估计装置400可以为芯片。可选地,该芯片还可以包括一个或多个存储器,用于存储计算机执行指令,当该芯片装置运行时,处理器可执行存储器存储的计算机执行指令,以使芯片执行上述光流估计方法。
可选地,该芯片装置可以为实现相关功能的现场可编程门阵列,专用集成芯片,系统芯片,中央处理器,网络处理器,数字信号处理电路,微控制器,还可以采用可编程控制器或其他集成芯片。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有计算机指令,当该计算机指令在计算机上运行时,实现上述方法实施例描述的光流估计方法。
本申请实施例还提供一种计算机程序产品,当该计算机程序产品在处理器上运行时,实现上述方法实施例描述的光流估计方法。
本申请实施例还提供一种终端,该终端包括上述光流估计系统。可选地,该终端还可以包括显示屏,该显示屏用于显示上述光流估计系统输出的该目标光流。
本申请实施例提供的光流估计装置、计算机可读存储介质、计算机程序产品、芯片或终端均用于执行上文所提供的对应的光流估计方法,因此,其所能达到的有益效果可参考上文所提供的对应的光流估计方法中的有益效果,此处不再赘述。
应理解,在本申请的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
Claims (21)
1.一种光流估计方法,其特征在于,包括:
获得第一图像帧和第二图像帧,所述第一图像帧和所述第二图像帧为图像序列中任意两个相邻的图像帧,所述图像序列是对目标场景拍摄得到的;
获得第一事件帧,所述第一事件帧用于描述所述目标场景在所述第一图像帧到所述第二图像帧之间的时间段内的亮度变化情况;
基于所述第一图像帧、所述第二图像帧和所述第一事件帧,确定目标光流,所述目标光流为从所述第一图像帧到目标时刻的光流,所述目标时刻为所述第一图像帧与所述第二图像帧之间的任意时刻。
2.根据权利要求1所述的方法,其特征在于,在所述基于所述第一图像帧、所述第二图像帧和所述第一事件帧,确定目标光流之前,所述方法还包括:
获得第二事件帧,所述第二事件帧用于描述所述目标场景在所述第一图像帧到所述目标时刻之间的时间段内的亮度变化情况;
所述基于所述第一图像帧、所述第二图像帧和所述第一事件帧,确定目标光流,包括:
基于所述第一图像帧、所述第二图像帧、所述第一事件帧和所述第二事件帧,确定所述目标光流。
3.根据权利要求2所述的方法,其特征在于,所述基于所述第一图像帧、所述第二图像帧、所述第一事件帧和所述第二事件帧,确定所述目标光流,包括:
基于所述第一图像帧、所述第二图像帧和所述第一事件帧,确定第一光流,所述第一光流为从所述第一图像帧到所述第二图像帧的光流;
基于所述第二事件帧,确定第一光流分配掩码,所述第一光流分配掩码用于指示所述目标光流相对于所述第一光流的权重;
基于所述第一光流和所述第一光流分配掩码,确定所述目标光流。
4.根据权利要求3所述的方法,其特征在于,所述基于所述第一图像帧、所述第二图像帧和所述第一事件帧,确定第一光流,包括:
将所述第一图像帧、所述第二图像帧和所述第一事件帧输入预设的光流估计模型,得到所述第一光流。
5.根据权利要求4所述的方法,其特征在于,所述将所述第一图像帧、所述第二图像帧和所述第一事件帧输入预设的光流估计模型,得到所述第一光流,包括:
将所述第一图像帧、所述第二图像帧和所述第一事件帧输入所述光流估计模型,并进行循环迭代,得到所述第一光流。
6.根据权利要求3-5中任一项所述的方法,其特征在于,所述基于所述第二事件帧,确定第一光流分配掩码,包括:
将所述第二事件帧输入预设的光流分配模型,得到所述第一光流分配掩码。
7.根据权利要求6所述的方法,其特征在于,所述将所述第二事件帧输入预设的光流分配模型,得到所述第一光流分配掩码,包括:
将所述第二事件帧输入所述光流分配模型,并进行循环迭代,得到所述第一光流分配掩码。
8.根据权利要求1-7中任一项所述的方法,其特征在于,所述第一图像帧包括H×W个像素点,H和W均为大于1的整数,所述第一事件帧包括多个通道,该多个通道包括第一通道、第二通道、第三通道和第四通道;
所述第一通道包括H×W个第一数值,所述H×W个第一数值与所述H×W个像素点的位置一一对应,所述第一数值用于表示所述第一图像帧中对应位置的像素点的亮度在所述第一图像帧到所述第二图像帧之间的时间段内增大的次数;
所述第二通道包括H×W个第二数值,所述H×W个第二数值与所述H×W个像素点的位置一一对应,所述第二数值用于表示所述第一图像帧中对应位置的像素点的亮度在所述第一图像帧到所述第二图像帧之间的时间段内减小的次数;
所述第三通道包括H×W个第三数值,所述H×W个第三数值与所述H×W个像素点的位置一一对应,所述第三数值用于表示所述第一图像帧中对应位置的像素点的亮度在所述第一图像帧到所述第二图像帧之间的时间段内最后一次增大的时间戳;
所述第四通道包括H×W个第四数值,所述H×W个第四数值与所述H×W个像素点的位置一一对应,所述第四数值用于表示所述第一图像帧中对应位置的像素点的亮度在所述第一图像帧到所述第二图像帧之间的时间段内最后一次减小的时间戳。
9.根据权利要求1-8中任一项所述的方法,其特征在于,所述获得第一事件帧,包括:
获得事件流数据,所述事件流数据包括至少一个事件中的每个事件的事件数据,所述至少一个事件与所述目标场景在所述第一图像帧与所述第二图像帧之间发生的至少一次亮度变化一一对应,所述每个事件的数据包括时间戳、像素点坐标和极性;
基于所述事件流数据,得到所述第一事件帧。
10.一种光流估计装置,其特征在于,包括:获得模块和光流估计模块;
所述获得模块用于获得第一图像帧和第二图像帧,所述第一图像帧和所述第二图像帧为图像序列中任意两个相邻的图像帧,所述图像序列是对目标场景拍摄得到的;获得第一事件帧,所述第一事件帧用于描述所述目标场景在所述第一图像帧到所述第二图像帧之间的时间段内的亮度变化情况;
所述光流估计模块用于基于所述第一图像帧、所述第二图像帧和所述第一事件帧,确定目标光流,所述目标光流为从所述第一图像帧到目标时刻的光流,所述目标时刻为所述第一图像帧与所述第二图像帧之间的任意时刻。
11.根据权利要求10所述的装置,其特征在于,
所述获得模块还用于在所述基于所述第一图像帧、所述第二图像帧和所述第一事件帧,确定目标光流之前,获得第二事件帧,所述第二事件帧用于描述所述目标场景在所述第一图像帧到所述目标时刻之间的时间段内的亮度变化情况;
所述光流估计模块具体用于基于所述第一图像帧、所述第二图像帧、所述第一事件帧和所述第二事件帧,确定所述目标光流。
12.根据权利要求11所述的装置,其特征在于,所述光流估计模块包括帧间光流估计子模块、光流分配子模块和帧间任意时刻光流估计子模块;
所述帧间光流估计子模块用于基于所述第一图像帧、所述第二图像帧和所述第一事件帧,确定第一光流,所述第一光流为从所述第一图像帧到所述第二图像帧的光流;
所述光流分配子模块用于基于所述第二事件帧,确定第一光流分配掩码,所述第一光流分配掩码用于指示所述目标光流相对于所述第一光流的权重;
所述帧间任意时刻光流估计子模块用于基于所述第一光流和所述第一光流分配掩码,确定所述目标光流。
13.根据权利要求12所述的装置,其特征在于,所述帧间光流估计子模块具体用于将所述第一图像帧、所述第二图像帧和所述第一事件帧输入预设的光流估计模型,得到所述第一光流。
14.根据权利要求13所述的装置,其特征在于,所述帧间光流估计子模块具体用于将所述第一图像帧、所述第二图像帧和所述第一事件帧输入所述光流估计模型,并进行循环迭代,得到所述第一光流。
15.根据权利要求12-14中任一项所述的装置,其特征在于,所述光流分配子模块具体用于将所述第二事件帧输入预设的光流分配模型,得到所述第一光流分配掩码。
16.根据权利要求15所述的装置,其特征在于,所述光流分配子模块具体用于将所述第二事件帧输入所述光流分配模型,并进行循环迭代,得到所述第一光流分配掩码。
17.根据权利要求10-16中任一项所述的装置,其特征在于,所述第一图像帧包括H×W个像素点,H和W均为大于1的整数,所述第一事件帧包括多个通道,该多个通道包括第一通道、第二通道、第三通道和第四通道;
所述第一通道包括H×W个第一数值,所述H×W个第一数值与所述H×W个像素点的位置一一对应,所述第一数值用于表示所述第一图像帧中对应位置的像素点的亮度在所述第一图像帧到所述第二图像帧之间的时间段内增大的次数;
所述第二通道包括H×W个第二数值,所述H×W个第二数值与所述H×W个像素点的位置一一对应,所述第二数值用于表示所述第一图像帧中对应位置的像素点的亮度在所述第一图像帧到所述第二图像帧之间的时间段内减小的次数;
所述第三通道包括H×W个第三数值,所述H×W个第三数值与所述H×W个像素点的位置一一对应,所述第三数值用于表示所述第一图像帧中对应位置的像素点的亮度在所述第一图像帧到所述第二图像帧之间的时间段内最后一次增大的时间戳;
所述第四通道包括H×W个第四数值,所述H×W个第四数值与所述H×W个像素点的位置一一对应,所述第四数值用于表示所述第一图像帧中对应位置的像素点的亮度在所述第一图像帧到所述第二图像帧之间的时间段内最后一次减小的时间戳。
18.根据权利要求10-17中任一项所述的装置,其特征在于,所述获得模块具体用于:
获得事件流数据,所述事件流数据包括至少一个事件中的每个事件的事件数据,所述至少一个事件与所述目标场景在所述第一图像帧与所述第二图像帧之间发生的至少一次亮度变化一一对应,所述每个事件的数据包括时间戳、像素点坐标和极性;
基于所述事件流数据,得到所述第一事件帧。
19.一种光流估计装置,其特征在于,包括:处理器和通信接口,所述处理器和所述通信接口耦合,所述通信接口用于为所述处理器提供数据,所述处理器用于运行计算机程序指令以执行上述权利要求1-9中任一项所述的方法。
20.一种计算机可读存储介质,其特征在于,用于存储计算机程序,所述计算机程序被处理器运行时,实现如权利要求1-9任一项所述的方法。
21.一种计算机程序产品,其特征在于,当所述计算机程序产品在处理器上运行时,实现如权利要求1-9任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111199513.6A CN115984336A (zh) | 2021-10-14 | 2021-10-14 | 一种光流估计方法和装置 |
PCT/CN2022/121050 WO2023061187A1 (zh) | 2021-10-14 | 2022-09-23 | 一种光流估计方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111199513.6A CN115984336A (zh) | 2021-10-14 | 2021-10-14 | 一种光流估计方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115984336A true CN115984336A (zh) | 2023-04-18 |
Family
ID=85966795
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111199513.6A Pending CN115984336A (zh) | 2021-10-14 | 2021-10-14 | 一种光流估计方法和装置 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN115984336A (zh) |
WO (1) | WO2023061187A1 (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116456202B (zh) * | 2023-04-25 | 2023-12-15 | 北京大学 | 脉冲相机及其彩色成像方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150262380A1 (en) * | 2014-03-17 | 2015-09-17 | Qualcomm Incorporated | Adaptive resolution in optical flow computations for an image processing system |
CN110390685B (zh) * | 2019-07-24 | 2021-03-09 | 中国人民解放军国防科技大学 | 一种基于事件相机的特征点跟踪方法 |
CN111402292B (zh) * | 2020-03-10 | 2023-04-07 | 南昌航空大学 | 基于特征变形误差遮挡检测的图像序列光流计算方法 |
CN111696035A (zh) * | 2020-05-21 | 2020-09-22 | 电子科技大学 | 一种基于光流运动估计算法的多帧图像超分辨率重建方法 |
-
2021
- 2021-10-14 CN CN202111199513.6A patent/CN115984336A/zh active Pending
-
2022
- 2022-09-23 WO PCT/CN2022/121050 patent/WO2023061187A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2023061187A1 (zh) | 2023-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102388402B (zh) | 图像处理装置及图像处理方法 | |
US8179466B2 (en) | Capture of video with motion-speed determination and variable capture rate | |
WO2020143191A1 (en) | Image frame prediction method, image frame prediction apparatus and head display apparatus | |
US10002436B2 (en) | Image processing device, image processing method, and solid-state imaging device | |
US10306210B2 (en) | Image processing apparatus and image capturing apparatus | |
US20180302543A1 (en) | Hdr/wdr image time stamps for sensor fusion | |
CN109661815B (zh) | 存在相机阵列的显著强度变化的情况下的鲁棒视差估计 | |
US20180198970A1 (en) | High dynamic range imaging using camera arrays | |
CN104284059A (zh) | 用于稳定图像的设备和方法 | |
US20120274855A1 (en) | Image processing apparatus and control method for the same | |
US20130278754A1 (en) | Method and system for compensating for image blur by moving image sensor | |
CN105516579A (zh) | 一种图像处理方法、装置和电子设备 | |
CN113099122A (zh) | 拍摄方法、装置、设备和存储介质 | |
WO2021093534A1 (zh) | 主体检测方法和装置、电子设备、计算机可读存储介质 | |
CN115984336A (zh) | 一种光流估计方法和装置 | |
JP6270413B2 (ja) | 画像処理装置、撮像装置、および画像処理方法 | |
CN113298707B (zh) | 图像帧拼接方法、视频巡检方法、装置、设备及存储介质 | |
Cuevas et al. | Statistical moving object detection for mobile devices with camera | |
JP6221333B2 (ja) | 画像処理装置、画像処理回路及び画像処理方法 | |
JP2021136461A (ja) | 撮像装置、制御方法、プログラム及び記憶媒体 | |
CN115564695A (zh) | 一种处理方法及电子设备 | |
JP6433014B2 (ja) | 情報取得装置及び情報伝達システム | |
JP2022099120A (ja) | 被写体追尾装置およびその制御方法 | |
US11800134B2 (en) | System for performing image motion compensation | |
WO2023042432A1 (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 |