CN115272423A - 一种训练光流估计模型的方法、装置和可读存储介质 - Google Patents
一种训练光流估计模型的方法、装置和可读存储介质 Download PDFInfo
- Publication number
- CN115272423A CN115272423A CN202211138976.6A CN202211138976A CN115272423A CN 115272423 A CN115272423 A CN 115272423A CN 202211138976 A CN202211138976 A CN 202211138976A CN 115272423 A CN115272423 A CN 115272423A
- Authority
- CN
- China
- Prior art keywords
- optical flow
- module
- raw image
- training data
- estimation model
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V10/00—Arrangements for image or video recognition or understanding
- G06V10/70—Arrangements for image or video recognition or understanding using pattern recognition or machine learning
- G06V10/77—Processing image or video features in feature spaces; using data integration or data reduction, e.g. principal component analysis [PCA] or independent component analysis [ICA] or self-organising maps [SOM]; Blind source separation
- G06V10/774—Generating sets of training patterns; Bootstrap methods, e.g. bagging or boosting
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10024—Color image
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/20—Special algorithmic details
- G06T2207/20081—Training; Learning
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Image Analysis (AREA)
Abstract
本发明实施例提供了一种训练光流估计模型的方法、装置和可读存储介质。所述方法包括:获取RGB图像帧序列以及所述RGB图像帧序列中相邻两帧的RGB图像对应的光流标签;将所述RGB图像帧序列中的每个RGB图像转换为第一RAW图像;对所述第一RAW图像增加随机噪声,得到第二RAW图像;构建训练数据集,所述训练数据集中包括多对训练数据和每对训练数据对应的光流标签,所述训练数据集中的一对训练数据包括连续两帧的第二RAW图像;利用所述训练数据集训练光流估计模型。本发明实施例可以提高训练的光流估计模型的鲁棒性和泛化性,以及提高光流估计的效率。
Description
技术领域
本发明涉及图像处理技术领域,尤其涉及一种训练光流估计模型的方法、装置和可读存储介质。
背景技术
光流,定义为视频图像中的同一对象移动到下一帧的移动量。移动可能是由相机移动或者物体移动引起的。光流估计是估计视频数据中当前帧的同一对象或物体的像素点移动至下一帧的移动量。
光流估计作为计算机视觉技术和图像处理技术的重要模块,在动作识别、视频理解、汽车自动驾驶、视频编码等计算机视觉应用中有着重要的作用。
目前的训练光流估计模型的方法通常使用ISP(Image Signal Processing,图像信号处理)后的RGB图像作为输入。但是,由于不同的相机传感器具有不同的光谱灵敏度,在ISP处理过程中可能引入难以建模的噪声和参数,这些噪声和参数与相机传感器相关。因此,在一个相机传感器下训练好的光流估计模型难以适用于其他相机传感器,导致光流估计模型的鲁棒性不足。
发明内容
本发明实施例提供一种训练光流估计模型的方法、装置和可读存储介质,可以避免ISP处理过程中因相机传感器的原因引入难以建模的噪声和参数的问题,可以提高训练的光流估计模型的鲁棒性和泛化性。
第一方面,本发明实施例公开了一种训练光流估计模型的方法,所述方法包括:
获取RGB图像帧序列以及所述RGB图像帧序列中相邻两帧的RGB图像对应的光流标签;
将所述RGB图像帧序列中的每个RGB图像转换为第一RAW图像;
对所述第一RAW图像增加随机噪声,得到第二RAW图像;
构建训练数据集,所述训练数据集中包括多对训练数据和每对训练数据对应的光流标签,所述训练数据集中的一对训练数据包括连续两帧的第二RAW图像;
利用所述训练数据集训练光流估计模型。
第二方面,本发明实施例公开了一种光流估计方法,所述方法包括:
获取待计算的一对RAW图像,所述待计算的一对RAW图像包括相机传感器输出的连续两帧的RAW图像;
将所述待计算的一对RAW图像输入训练完成的光流估计模型,由所述光流估计模型输出所述待计算的一对RAW图像对应的光流预测值;其中,所述训练完成的光流估计模型根据上述任一所述的训练光流估计模型的方法训练得到。
第三方面,本发明实施例公开了一种训练光流估计模型的装置,所述装置包括:
RGB图像获取模块,用于获取RGB图像帧序列以及所述RGB图像帧序列中相邻两帧的RGB图像对应的光流标签;
图像转换模块,用于将所述RGB图像帧序列中的每个RGB图像转换为第一RAW图像;
增加噪声模块,用于对所述第一RAW图像增加随机噪声,得到第二RAW图像;
数据集构建模块,用于构建训练数据集,所述训练数据集中包括多对训练数据和每对训练数据对应的光流标签,所述训练数据集中的一对训练数据包括连续两帧的第二RAW图像;
模型训练模块,用于利用所述训练数据集训练光流估计模型。
第四方面,本发明实施例公开了一种光流估计装置,所述装置包括:
RAW图像获取模块,用于获取待计算的一对RAW图像,所述待计算的一对RAW图像包括相机传感器输出的连续两帧的RAW图像;
光流估计模块,用于将所述待计算的一对RAW图像输入训练完成的光流估计模型,由所述光流估计模型输出所述待计算的一对RAW图像对应的光流预测值;其中,所述训练完成的光流估计模型根据上述任一所述的训练光流估计模型的方法训练得到。
第五方面,本发明实施例公开了一种机器可读介质,其上存储有指令,当所述指令由装置的一个或多个处理器执行时,使得装置执行如前述一个或多个所述的训练光流估计模型的方法。
本发明实施例包括以下优点:
本发明实施例通过将获取的RGB图像转换为第一RAW图像,再增加随机噪声,得到第二RAW图像,所述第二RAW图像可以看作是相机传感器输出的RAW图像。本发明实施例利用第二RAW图像构建训练数据集训练光流估计模型。由于所述训练数据集中的训练数据为未经过ISP处理的RAW图像,可以避免ISP处理过程中因相机传感器的原因引入难以建模的噪声和参数的问题,可以提高训练的光流估计模型的鲁棒性和泛化性。此外,本发明实施例利用现有的RGB图像进行逆处理得到RAW图像,可以保留RGB图像的光流标签,从而可以降低标注的难度和成本。再者,本发明实施例在光流估计模型训练完成之后,可以直接获取相机传感器输出的RAW图像作为光流估计模型的输入数据进行光流估计,可以避免对RAW图像进行ISP处理的过程,可以减少光流估计的操作成本和时间成本,提高光流估计的效率。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例的描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明的一种训练光流估计模型的方法实施例的步骤流程图;
图2是本发明将RGB图像经过预置模块依次处理输出第一RAW图像的示意图;
图3是本发明一个示例中的一种光流估计模型的结构示意图;
图4是本发明的一种光流估计方法实施例的步骤流程图;
图5是本发明一个示例中光流估计方法实施例的步骤流程图;
图6是本发明的一种训练光流估计模型的装置实施例的结构框图;
图7是本发明的一种光流估计装置实施例的结构框图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中的术语“和/或”用于描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。本发明实施例中术语“多个”是指两个或两个以上,其它量词与之类似。
参照图1,示出了本发明的一种训练光流估计模型的方法实施例的步骤流程图,所述方法可以包括如下步骤:
步骤101、获取RGB图像帧序列以及所述RGB图像帧序列中相邻两帧的RGB图像对应的光流标签;
步骤102、将所述RGB图像帧序列中的每个RGB图像转换为第一RAW图像;
步骤103、对所述第一RAW图像增加随机噪声,得到第二RAW图像;
步骤104、构建训练数据集,所述训练数据集中包括多对训练数据和每对训练数据对应的光流标签,所述训练数据集中的一对训练数据包括连续两帧的第二RAW图像;
步骤105、利用所述训练数据集训练光流估计模型。
本发明提出了一种训练光流估计模型的方法,所述方法可用于基于训练数据集端到端的训练光流估计模型。为解决现有技术中使用RGB图像训练光流估计模型导致模型鲁棒性不足的问题,本发明实施例使用RAW(RAW Image Format,原始图像文件)图像训练光流估计模型。
RAW图像是指相机传感器将捕捉到的光源信号转化为数字信号的原始数据。在实际应用中,由于难以对RAW图像进行光流标注,但是存在大量的RGB图像以及RGB图像的光流标签数据。因此,为了可以获取RAW图像的光流标签,本发明实施例获取大量的RGB图像帧序列,并且获取RGB图像帧序列中相邻两帧的RGB图像对应的光流标签,对获取的RGB图像帧序列中的每个RGB图像进行逆处理得到RAW图像,并且保留相邻两帧的RGB图像对应的光流标签。所述光流标签包括相邻两帧的RGB图像中前一帧图像中每个像素点在后一帧图像中的偏移量。
具体地,本发明实施例首先获取大量的RGB图像帧序列以及RGB图像帧序列中相邻两帧的RGB图像对应的光流标签。进一步地,获取的RGB图像帧序列可以是相机传感器输出的视频图像帧序列,本发明实施例可以获取不同相机传感器输出的视频图像帧序列。RGB图像是相机传感器对输出的RAW图像进行ISP处理后得到的。本发明实施例获取不同相机传感器输出的视频图像帧序列,可以增加训练数据的多样性。然后,根据相机成像的逆过程,将获取的每个RGB图像分别转换为第一RAW图像。根据相机成像逆过程对获取的RGB图像进行逆处理,得到的RAW图像是干净的无噪声的,本发明实施例中称为第一RAW图像。在实际应用中,相机的成像过程会由于相机传感器等问题引入一定的噪声,为了使得逆处理得到的第一RAW图像更加接近相机传感器输出的真实的RAW图像,本发明实施例对得到的第一RAW图像增加随机噪声,得到第二RAW图像。第二RAW图像可以看作是从相机传感器直接输出的RAW图像。
此外,本发明实施例在获取RGB图像帧序列时,可以获取RGB图像帧序列中相邻两帧的RGB图像对应的光流标签。在将获取的RGB图像转换为第一RAW图像,并增加随机噪声得到第二RAW图像之后,可以将相邻两帧的RGB图像对应的光流标签作为相邻两帧的第二RAW图像对应的光流标签。由此,可以根据获取的所述第二RAW图像以及相邻两帧的第二RAW图像对应的光流标签,构建训练数据集,所述训练数据集中包括多对训练数据和每对训练数据对应的光流标签,所述训练数据集中的一对训练数据包括连续两帧的第二RAW图像。
最后,利用所述训练数据集可以训练光流估计模型。由于所述训练数据集中的训练数据为未经过ISP处理的RAW图像,可以避免ISP处理过程中因相机传感器的原因引入难以建模的噪声和参数的问题,可以提高训练的光流估计模型的鲁棒性和泛化性。此外,本发明实施例利用现有的RGB图像进行逆处理得到RAW图像,可以保留RGB图像的光流标签,从而可以降低标注的难度和成本。再者,本发明实施例在光流估计模型训练完成之后,可以直接获取相机传感器输出的RAW图像作为光流估计模型的输入数据进行光流估计,可以避免对RAW图像进行ISP处理的过程,可以减少光流估计的操作成本和时间成本,提高光流估计的效率。
在本发明的一种可选实施例中,所述将所述RGB图像帧序列中的每个RGB图像转换为第一RAW图像,可以包括:
将所述RGB图像帧序列中的每个RGB图像输入依次连接的多个预置模块中的第一个预置模块,所述依次连接的多个预置模块中的各预置模块基于各自的控制参数对接收到的输入信息进行逆处理,所述依次连接的多个预置模块中的最后一个预置模块输出所述RGB图像对应的第一RAW图像;其中,所述第一个预置模块的输入信息为所述RGB图像,除所述第一个预置模块外的其他预置模块的输入信息为上一个预置模块的输出信息。
本发明实施例通过依次连接的多个预置模块实现相机成像的逆过程,第一个预置模块接收RGB图像,RGB图像依次经过各预置模块的处理后,通过最后一个预置模块输出第一RAW图像。可选地,每个预置模块可以设置独立的控制参数,所述控制参数可以随机取值或者在一定范围内取值,通过对各个模块的控制参数进行调整,可以增加生成的第一RAW图像多样性。
在本发明的一种可选实施例中,所述依次连接的多个预置模块依次可以包括:全局色调映射逆处理模块、伽马校正逆处理模块、颜色矫正逆处理模块、白平衡逆处理模块、以及拜尔排列逆处理模块。
参照图2,示出了本发明将RGB图像经过预置模块依次处理输出第一RAW图像的示意图。如图2所述,将RGB图像输入第一个预置模块(全局色调映射逆处理模块),RGB图像经过全局色调映射逆处理模块进行处理,全局色调映射逆处理模块的处理结果输出至伽马校正逆处理模块进行处理,伽马校正逆处理模块的处理结果输出至颜色矫正逆处理模块进行处理,颜色矫正逆处理模块的处理结果输出至白平衡逆处理模块进行处理,白平衡逆处理模块的处理结果输出至拜尔排列逆处理模块进行处理,拜尔排列逆处理模块输出的处理结果即为第一RAW图像。
所述全局色调映射逆处理模块用于模拟全局色调映射的逆过程。所述全局色调映射的逆过程指的是将显示设备的发光强度映射成相机传感器输出的信号强度的过程。所述全局色调映射逆处理模块的输入信息为RGB图像,所述全局色调映射逆处理模块的输出信息为将所述RGB图像中每个像素值映射成相机传感器输出的信号强度的处理结果。
所述伽马校正逆处理模块用于模拟伽马校正的逆过程。所述伽马校正的逆过程指的是相机前端将光信号转换为电信号的非线性变换的过程。所述非线性变换的过程可以近似为如下幂函数:
Y=Xγ(1)
其中,X表示伽马校正逆处理模块的输入信息,也即全局色调映射逆处理模块的输出信息。γ是用来进行伽马校正的Gamma值,γ可以作为伽马校正逆处理模块的控制参数,通过调整γ的取值,可以增加生成的第一RAW图像多样性。例如,γ可以在预设范围内随机取值,示例性地,该预设范围可以为[2,2.2]。Y表示伽马校正逆处理模块的输出信息。
所述颜色矫正逆处理模块用于模拟颜色矫正的逆过程。由于人眼可见光的频谱响应度和相机传感器响应度之间存在差别,得到的RGB颜色值会存在偏差,因此相机成像的过程中通常会通过一个3×3的颜色变换矩阵来进行颜色矫正,所述颜色矫正逆处理模块通过乘以该变换矩阵的逆矩阵模拟颜色矫正的逆过程。颜色矫正的逆过程可以如下:
可选地,该逆矩阵中的元素ai、bi和ci可以在初始值的正负预设范围内随机取值,示例性地,对于每个元素值可以通过下式进行调整:new_value=value×[0.8,1.2]。其中,value为该逆矩阵中元素的初始值,new_value为该逆矩阵中调整后的元素值。[0.8,1.2]表示从0.8到1.2范围内的随机值(包含0.8和1.2)。
其中,元素a1的初始值为0.6606,元素a2的初始值为0.2892,元素a3的初始值为0.0501,元素b1的初始值为0.0789,以此类推。通过调整该逆矩阵中各元素的初始值,可以增加生成的第一RAW图像多样性。例如,元素a1的初始值为0.6606,则调整后a1的值可以为0.6606×[0.8,1.2]中的随机值。又如,元素a2的初始值为0.2892,则调整后a2的值可以为0.2892×[0.8,1.2]中的随机值。再如,元素b1的初始值为0.0789,则调整后b1的值可以为0.0789×[0.8,1.2]中的随机值。以此类推。
所述白平衡逆处理模块用于模拟白平衡的逆过程。白平衡是将不同环境色温中的白色物体都还原成真的白色,所述白平衡的逆过程指的是得到相机镜头所拍摄的未经过白平衡处理的原始图像。所述白平衡逆处理模块的输入信息为所述颜色矫正逆处理模块的输出信息。
所述拜尔排列逆处理模块用于模拟拜尔排列的逆过程。光进入相机传感器前要通过拜尔滤光片进行拜尔排列,得到RAW域的图像,然后经过插值算法将拜尔排列的图像转换为RGB图像。所述拜尔排列的逆过程指的是将RGB图像转换为拜尔排列的RAW域图像。所述拜尔排列逆处理模块的输入信息为所述白平衡逆处理模块的输出信息。
需要说明的是,将RGB图像转换为相机传感器直接输出的RAW图像,该过程较为复杂,图2所示的处理过程是本发明简化后的相机成像的逆过程,图2中所示的预置模块仅作为本发明的一种应用示例,在具体实施中,对RGB图像进行逆处理的预置模块不限于图2中所示的各预置模块。
在本发明的一种可选实施例中,所述对所述第一RAW图像增加随机噪声,得到第二RAW图像,可以包括:
步骤S11、根据所述第一RAW图像以及预设范围内均匀分布的第一随机数和第二随机数,计算方差值;
步骤S12、根据所述方差值构建随机噪声;
步骤S13、根据所述第一RAW图像、构建的所述随机噪声、以及预置的相机传感器相关系数,生成第二RAW图像。
在相机成像的过程中,由于相机传感器等问题可能会引入一定的噪声,这些噪声在ISP处理过程中被去掉了。因此,在真实的使用场景中,相机传感器输出的RAW图像是有噪声的,而本发明实施例根据相机成像的逆过程,对RGB图像进行处理得到的第一RAW图像是不包含噪声的干净的RAW图像。为了使得训练数据更加接近真实场景中的数据,本发明实施例在生成第一RAW图像之后,对所述第一RAW图像增加随机噪声,得到第二RAW图像,第二RAW图像可以看作是真实场景中相机传感器输出的RAW图像。
本发明实施例根据所述第一RAW图像、构建的随机噪声、以及预置的相机传感器相关系数,生成第二RAW图像,具体可以通过下式生成第二RAW图像:
D=KI+N(3)
其中,D表示第二RAW图像,I表示第一RAW图像,N表示本发明构建的随机噪声,K是和相机传感器相关的预置的固定系数。在实际应用中,N是所有噪声源的总和,本发明实施例将N简化为服从分布的高斯噪声,其中,σ2为步骤S11计算得到的方差值,σ2满足下式:
σ2=kI+b(4)
其中,k为预设范围内均匀分布的第一随机数,b为预设范围内均匀分布的第二随机数,示例性地,所述预设范围为[-0.02,0.02]。I为第一RAW图像。
在本发明的一种可选实施例中,所述利用所述训练数据集训练光流估计模型,可以包括:
步骤S21、从所述训练数据集中获取当前迭代的一对训练数据;
步骤S22、将所述当前迭代的一对训练数据输入光流估计模型,通过所述光流估计模型输出所述当前迭代的一对训练数据对应的光流预测值;
步骤S23、根据所述光流预测值与所述当前迭代的一对训练数据对应的光流标签,计算当前迭代的模型损失值;
步骤S24、根据所述模型损失值调整所述光流估计模型的模型参数,并进入下一轮迭代;
步骤S25、在到达迭代停止条件时得到训练完成的光流估计模型。
在本发明实施例中,训练数据集中的每一对训练数据包括连续两帧的第二RAW图像。光流估计模型使用前后两帧的第二RAW图像作为输入,经过一系列的计算之后,输出这两帧图像的光流预测值,也即,输出前一帧图像中每个像素点在后一帧图像中的偏移量。
本发明实施例利用所述训练数据集对光流估计模型进行端到端的有监督的训练。所述光流估计模型可以为根据大量的训练数据和机器学习方法,对现有的神经网络进行有监督训练而得到的。需要说明的是,本发明实施例对所述光流估计模型的模型结构以及训练方法不加以限制。所述光流估计模型可以融合多种神经网络。所述神经网络可以包括但不限于以下的至少一种或者至少两种的组合、叠加、嵌套:CNN(Convolutional NeuralNetwork,卷积神经网络)、LSTM(Long Short-Term Memory,长短时记忆)网络、RNN(SimpleRecurrent Neural Network,循环神经网络)、注意力神经网络等。
首先,从所述训练数据集中获取当前迭代的一对训练数据输入光流估计模型,通过所述光流估计模型输出所述当前迭代的一对训练数据对应的光流预测值;然后,根据所述光流预测值与所述当前迭代的一对训练数据对应的光流标签,计算当前迭代的模型损失值;如果计算得到的模型损失值不满足迭代停止条件,则根据所述模型损失值调整所述光流估计模型的模型参数,并进入下一轮迭代;如果计算得到的模型损失值满足迭代停止条件,则停止迭代训练,得到训练完成的光流估计模型。
需要说明的是,本发明实施例对计算模型损失值的方法不做限制。例如,可以使用通用的损失函数计算模型损失值。通用的损失函数例如交叉熵损失函数、余弦相似度损失函数等。
可选地,在利用所述训练数据集训练光流估计模型的过程中,可以一次输入多对训练数据,从而实现多对训练数据的批量处理。
在本发明的一种可选实施例中,所述当前迭代的一对训练数据包括第i帧第二RAW图像和第i+1帧第二RAW图像,所述光流估计模型包括相关性计算模块、迭代推理模块、以及上下文编码模块,所述将所述当前迭代的一对训练数据输入光流估计模型,通过所述光流估计模型输出所述当前迭代的一对训练数据对应的光流预测值,可以包括:
步骤S31、将所述第i帧第二RAW图像和所述第i+1帧第二RAW图像输入所述相关性计算模块,通过所述相关性计算模块分别提取所述第i帧第二RAW图像和所述第i+1帧第二RAW图像的特征矩阵,并计算提取的两个特征矩阵之间的相关性矩阵;
步骤S32、将所述相关性矩阵经过多级池化层处理,得到多级特征;
步骤S33、将所述第i帧第二RAW图像输入所述上下文编码模块,通过所述上下文编码模块提取所述第i帧第二RAW图像的上下文特征;
步骤S34、将上一轮迭代的光流预测值、所述第i帧第二RAW图像的上下文特征、以及所述多级特征输入所述迭代推理模块,所述迭代推理模块根据所述上一轮迭代的光流预测值对所述多级特征进行光流采样,得到所述第i帧第二RAW图像和所述第i+1帧第二RAW图像之间的运动特征,并根据所述运动特征、所述迭代推理模块在上一轮迭代中的隐含状态、以及所述第i帧第二RAW图像的上下文特征,计算当前迭代的光流预测值。
进一步地,所述相关性计算模块可以包括特征提取子模块和相关性计算子模块,所述特征提取子模块用于分别提取所述第i帧第二RAW图像和所述第i+1帧第二RAW图像的特征矩阵,所述相关性计算子模块用于计算两帧第二RAW图像的两个特征矩阵之间的相关性矩阵,该相关性矩阵为一个4维矩阵。
具体地,所述相关性计算模块可以通过下式计算相关性矩阵:
上式(5)中,gθ(I1)∈RH×W×D,gθ(I2)∈RH×W×D,gθ(I1)为第i帧第二RAW图像的特征矩阵,gθ(I2)为第i+1帧第二RAW图像的特征矩阵,H和W分别表示图像的高度和宽度,D表示图像的通道数。Cijkl为计算得到的相关性矩阵,该相关性矩阵是一个4维矩阵,表示第i帧第二RAW图像和所述第i+1帧第二RAW图像中相同位置像素点之间的相似性。其中,i和j分别表示对图像I1编码所得的特征矩阵的行索引和列索引,k和l分别表示对图像I2编码所得的特征矩阵的行索引和列索引。
所述相关性计算模块输出的相关性矩阵经过池化层的降采样处理后,输入迭代推理模块进行光流值计算。本发明实施例的光流估计模型可以包括多级池化层,所述多级池化层可以包括多个不同步长的池化层。本发明实施例对池化层的个数不做限制。一个示例中,所述多级池化层包括步长分别为1、2、4和8的4个池化层,每个池化层分别对所述相关性矩阵进行降采样处理,可以得到如下多级特征:C1、C2、C3和C4,以供迭代推理模块使用。其中,C1为步长为1的池化层输出的特征,C2为步长为2的池化层输出的特征,C3为步长为4的池化层输出的特征,C4为步长为8的池化层输出的特征。
所述上下文编码模块用于提取第i帧第二RAW图像的上下文特征。所述上下文编码模块的结构可以和所述特征提取子模块相同。例如,所述上下文编码模块可以是一个CNN网络,所述上下文编码模块的输入是第i帧第二RAW图像,经过CNN网络的前向计算,可以得到第i帧第二RAW图像的一个H×W×D的特征矩阵,本发明实施例中称为第i帧第二RAW图像的上下文特征。
将上一轮迭代的光流预测值、所述第i帧第二RAW图像的上下文特征、以及所述多级特征输入所述迭代推理模块,所述迭代推理模块根据上一轮迭代的光流预测值对所述多级特征进行光流采样,得到所述第i帧第二RAW图像和所述第i+1帧第二RAW图像之间的运动特征。
运动特征用于表示两帧图像中像素点之间的相关性,其通过上一轮的光流预测值对第i帧第二RAW图像和第i+1帧第二RAW图像中像素点的相关性矩阵采样得来。其中,所述相关性矩阵可以表示第i帧第二RAW图像中的每个像素点和第i+1帧第二RAW图像中的每个像素点之间的相关性。
由于计算两帧图像中所有像素点之间的相关性,计算量较大。进一步地,为了降低计算量,所述相关性矩阵可以表示第i帧第二RAW图像中的每个像素点和第i+1帧第二RAW图像中相关局部区域中的每个像素点之间的相关性。所述相关局部区域可以是以第i帧第二RAW图像中的像素点为中心的预设大小的矩形区域。例如,对于第i帧第二RAW图像中的像素点(x,y),对应第i+1帧第二RAW图像中的相关局部区域的4个顶点坐标可以为[x-4, y-4, x+4, y+4]。
需要说明的是,若当前为第一轮迭代训练,则所述上一轮迭代的光流预测值为初始的光流值,该初始的光流值可以为0。
进一步地,所述迭代推理模块可以包括光流采样子模块,所述光流采样子模块的输入包括上一轮迭代的光流预测值和所述多级特征。所述光流采样子模块根据上一轮迭代的光流预测值对所述多级特征进行双线性采样。假设多级特征包括C1、C2、C3和C4,以及上一轮迭代的光流预测值为S0,则所述光流采样子模块根据S0对C1、C2、C3和C4进行双线性采样,可以得到4个特征矩阵,再通过通道拼接将该4个特征矩阵拼接成一个特征矩阵,这一个特征矩阵表示第i帧第二RAW图像和所述第i+1帧第二RAW图像之间的运动特征。
所述迭代推理模块用于计算所述第i帧第二RAW图像和所述第i+1帧第二RAW图像对应的光流预测值。具体地,所述迭代推理模块根据第i帧第二RAW图像和第i+1帧第二RAW图像之间的运动特征、上一轮迭代的光流预测值、迭代推理模块在上一轮迭代中的隐含状态、以及第i帧第二RAW图像的上下文特征,计算当前迭代的光流预测值。
可选地,所述迭代推理模块可以包括依次连接的N个迭代更新子模块,N为大于或等于1的整数,通过多个迭代更新子模块的迭代计算可以实现从粗糙到精细的渐进式估计,提高预测光流值的精准度。需要说明的是,所述迭代推理模块在上一轮迭代中的隐含状态包括所述N个迭代更新子模块中每个迭代更新子模块在上一轮迭代中的隐含状态。隐含状态是一个中间变量,具有记忆功能,第t轮迭代的隐含状态ht与第t-1轮的隐含状态ht-1相关。具体可以参考公式(9)。
在本发明的一种可选实施例中,所述根据所述运动特征、所述上一轮迭代的光流预测值、所述迭代推理模块在上一轮迭代中的隐含状态、以及所述第i帧第二RAW图像的上下文特征,计算当前迭代的光流预测值,可以包括:
步骤S41、将所述运动特征和所述第i帧第二RAW图像的上下文特征输入所述迭代推理模块中的N个迭代更新子模块,并且前一个迭代更新子模块的输出作为后一个迭代更新子模块的输入;
步骤S42、所述N个迭代更新子模块分别根据接收到的数据,迭代更新各自的隐含状态;
步骤S43、所述N个迭代更新子模块分别将各自的隐含状态输入至一个输出为2通道的卷积层,得到每个迭代更新子模块输出的当前迭代的光流预测值。
需要说明的是,对于相邻两帧图像(如第i帧第二RAW图像和第i+1帧第二RAW图像),光流预测值包括前一帧图像(第i帧第二RAW图像)中每个像素点在后一帧图像(第i+1帧第二RAW图像)中的偏移量,该偏移量包括在x方向和y方向上的偏移量。所述2通道的卷积层分别用于预测x方向和y方向上的偏移量。
将第t轮迭代的隐含状态记为ht,则第t轮迭代的光流预测值可以表示为:conv(ht,out_channel=2)。其中,conv表示卷积运算,out_channel=2表示输出为2通道。
参照图3,示出了本发明一个示例中的一种光流估计模型的结构示意图。如图3所示,当前迭代的一对训练数据包括第i帧第二RAW图像和第i+1帧第二RAW图像。将第i帧第二RAW图像和第i+1帧第二RAW图像输入相关性计算模块,将第i帧第二RAW图像输入上下文编码模块。
所述相关性计算模块分别提取所述第i帧第二RAW图像和所述第i+1帧第二RAW图像的特征矩阵,并计算提取的两个特征矩阵之间的相关性矩阵。
在计算得到所述第i帧第二RAW图像和所述第i+1帧第二RAW图像的特征矩阵之间的相关性矩阵后,将所述相关性矩阵经过多级池化层(图3未示出)处理,得到多级特征,如C1、C2、C3和C4。
在本发明实施例中,所述迭代推理模块可以包括光流采样子模块wrap和N个迭代更新子模块。如图3所示,所述N个迭代更新子模块(图3中标记为子模块)依次连接,前一个迭代更新子模块的输出作为后一个迭代更新子模块的输入。每个迭代更新子模块的输入包括:第i帧第二RAW图像和第i+1帧第二RAW图像之间的运动特征、第i帧第二RAW图像的上下文特征、以及前一个迭代更新子模块的输出。所述前一个迭代更新子模块的输出包括前一个迭代更新子模块在当前迭代中的隐含状态以及前一个迭代更新子模块计算得到的第i帧第二RAW图像和第i+1帧第二RAW图像的光流预测值。需要说明的是,对于第一个迭代更新子模块,可以将初始的光流值和初始的隐含状态作为前一个迭代更新子模块的输出,所述初始的光流值和初始的隐含状态可以为0。
每个迭代更新子模块根据接收到的数据以及各自在上一轮迭代中的隐含状态,计算各自在当前迭代中的隐含状态。例如,第1个迭代更新子模块根据其在上一轮迭代中的隐含状态和其接收到的数据,计算其在当前迭代中的隐含状态,第1个迭代更新子模块接收到的数据包括:第i帧第二RAW图像和第i+1帧第二RAW图像之间的运动特征、第i帧第二RAW图像的上下文特征、以及初始的光流值和初始的隐含状态。第2个迭代更新子模块根据其在上一轮迭代中的隐含状态和其接收到的数据,计算其在当前迭代中的隐含状态,第2个迭代更新子模块接收到的数据包括:第i帧第二RAW图像和第i+1帧第二RAW图像之间的运动特征、第i帧第二RAW图像的上下文特征、以及第1个迭代更新子模块的输出。依次类推,每个迭代更新子模块可以输出各自在当前迭代中的隐含状态,每个迭代更新子模块输出的隐含状态分别输入至一个输出为2通道的卷积层(图3中未示出),即可输出当前迭代的N个光流预测值。图3所示的整个过程都是可微分的,因此可以实现端到端的训练。
在本发明实施例中,对于每个迭代更新子模块,可以通过下式计算当前迭代中的隐含状态ht:
rt=σ(Conv3×3([ht-1,xt], Wr)) (6)
zt=σ(Conv3×3([ht-1,xt], Wz)) (7)
其中,xt表示第i帧第二RAW图像和所述第i+1帧第二RAW图像之间的运动特征,ht-1表示迭代更新子模块在上一轮迭代中的隐含状态,ht表示迭代更新子模块在当前迭代中的隐含状态。zt和rt表示在水平和竖直两个方向分别对隐含状态ht-1和运动特征xt进行编码。Wh、Wr和Wz分别表示各卷积层可学习的权重参数。表示矩阵的内积运算。
Conv3×3([ht-1,xt], Wr)表示通过一个卷积层对ht-1和xt拼接的特征做一个3×3的卷积,该卷积层的权重参数为Wr。Conv3×3([ht-1,xt],Wz)表示通过一个卷积层对ht-1和xt拼接的特征做一个3×3的卷积,该卷积层的权重参数为Wz。表示通过一个卷积层对rt和ht内积运算的特征做一个3×3的卷积,该卷积层的权重参数为Wh。
σ表示sigmoid激活函数。
本发明实施例中,所述迭代推理模块可以包括至少一个迭代更新子模块,不同的迭代更新子模块可以具有相同的权重参数,并且前一个迭代更新子模块的输出也可输入至后一个迭代更新子模块参与计算,可以实现从粗糙到精细的渐进式估计,更精确的预测光流值。
在本发明的一种可选实施例中,所述根据所述光流预测值与所述当前迭代的一对训练数据对应的光流标签,计算当前迭代的模型损失值,可以包括:
步骤S51、将所述N个光流预测值分别与所述当前迭代的一对训练数据对应的光流标签计算模型损失值,得到N个模型损失值;
步骤S52、对所述N个模型损失值求平均,得到当前迭代的模型损失值。
在计算模型损失值时,由于N个迭代更新子模块可以输出N个光流预测值,因此,可以将这N个光流预测值分别计算模型损失值,可以得到N个模型损失值,再将这N个模型损失值求平均,即可得到当前迭代中的模型损失值,如果该模型损失值不满足迭代停止条件,则根据该迭代停止条件调整光流估计模型的模型参数,并进入下一轮迭代训练。
其中,调整光流估计模型的模型参数,包括调整特征提取模块的网络参数、调整迭代推理模块中每个迭代更新子模块的网络参数、以及调整上下文编码模块的网络参数。
本发明实施例通过将获取的RGB图像转换为第一RAW图像,再增加随机噪声,得到第二RAW图像,所述第二RAW图像可以看作是相机传感器输出的RAW图像。本发明实施例利用第二RAW图像构建训练数据集训练光流估计模型,由于所述训练数据集中的训练数据为未经过ISP处理的RAW图像,可以避免ISP处理过程中因相机传感器的原因引入难以建模的噪声和参数的问题,可以提高训练的光流估计模型的鲁棒性和泛化性。此外,本发明实施例利用现有的RGB图像进行逆处理得到RAW图像,可以保留RGB图像的光流标签,从而可以降低标注的难度和成本。再者,本发明实施例在光流估计模型训练完成之后,可以直接获取相机传感器输出的RAW图像作为光流估计模型的输入数据进行光流估计,可以避免对RAW图像进行ISP处理的过程,可以减少光流估计的操作成本和时间成本,提高光流估计的效率。
参照图4,示出了本发明的一种光流估计方法实施例的步骤流程图,所述方法可以包括如下步骤:
步骤401、获取待计算的一对RAW图像,所述待计算的一对RAW图像包括相机传感器输出的连续两帧的RAW图像;
步骤402、将所述待计算的一对RAW图像输入训练完成的光流估计模型,由所述光流估计模型输出所述待计算的一对RAW图像对应的光流预测值;其中,所述训练完成的光流估计模型根据前述的训练光流估计模型的方法训练得到。
利用本发明提供的训练光流估计模型的方法训练得到光流估计模型之后,可以利用训练完成的光流估计模型对连续两帧的RAW图像进行光流估计。具体地,可以获取相机传感器输出的连续两帧的RAW图像,输入训练完成的光流估计模型,通过该光流估计模型可以输出该连续两帧的RAW图像对应的光流预测值。所述光流估计模型输出的光流预测值可用于动作识别、视频编解码、自动驾驶等领域。
首先,获取待计算的一对RAW图像,所述待计算的一对RAW图像包括相机传感器输出的连续两帧的RAW图像。示例性地,将获取的待计算的一对RAW图像记为I1和I2,I1∈RH ×W×1,I2∈RH×W×1,H和W分别表示RAW图像的高度和宽度。
进一步地,在将待计算的一对RAW图像输入光流估计模型之前,还可以对待计算的一对RAW图像进行图像预处理,所述图像预处理可以包括颜色插值以及归一化等处理。
由于从相机传感器获取的RAW图像是按拜尔格式排列的单通道的图像矩阵,因此,本发明实施例通过颜色插值将RAW图像转换成4通道的图像矩阵,4通道按照红色、绿色、绿色、蓝色排列。
此外,由于从相机传感器获取的RAW图像通常是12bit的数据,因此需要通过归一化处理,将RAW图像的数据变换到[0,1]的范围内。
需要说明的是,在训练光流估计模型的过程中,也可以根据实际情况选择所需的图像预处理方式对训练数据集中的第二RAW图像进行图像预处理,例如对第二RAW图像进行归一化处理,然后利用图像预处理之后的第二RAW图像训练光流估计模型。
待计算的一对RAW图像经过图像预处理之后,输入训练完成的光流估计模型,由所述光流估计模型输出所述待计算的一对RAW图像对应的光流预测值。
参照图5,示出了本发明一个示例中光流估计方法实施例的步骤流程图,所述方法可以包括如下步骤:
步骤501、输入连续两帧的RAW图像。
在光流估计模型训练完成之后,可以获取待计算的一对RAW图像输入训练完成的光流估计模型进行光流估计,所述待计算的一对RAW图像包括相机传感器输出的连续两帧的RAW图像。
所述训练完成的光流估计模型包括相关性计算模块、迭代推理模块、以及上下文编码模块。所述迭代推理模块包括光流采样子模块以及依次连接的N个迭代更新子模块,N为大于或等于1的整数。
所述待计算的一对RAW图像包括相机传感器输出的连续两帧的RAW图像,如I1和I2,且I1和I2已经过颜色插值和归一化处理。具体地,将I1和I2输入光流估计模型中的相关性计算模块,以及将I1输入光流估计模型中的上下文编码模块。
步骤502、特征提取以及相关性计算。
所述相关性计算模块分别提取I1和I2的特征矩阵,并根据I1的特征矩阵和I2的特征矩阵计算相关性矩阵,所述相关性矩阵经过多级池化层处理,得到多级特征。所述上下文编码模块提取I1的上下文特征。
步骤503、光流采样,得到运动特征。
将所述多级特征输入迭代推理模块中的光流采样子模块,通过所述光流采用子模块对所述多级特征进行光流采样,得到I1和I2之间的运动特征。
步骤504、迭代更新隐含状态。
将I1的上下文特征以及I1和I2之间的运动特征分别输入迭代推理模块中的N个迭代更新子模块,并且前一个迭代更新子模块的输出作为后一个迭代更新子模块的输入。N个迭代更新子模块分别根据接收到的数据,迭代更新各自的隐含状态。其中,第一个迭代更新子模块根据I1的上下文特征、I1和I2之间的运动特征、初始的光流值、以及初始的隐含状态,计算自身的隐含状态,并输出自身的隐含状态和计算的I1和I2的光流预测值。第二个迭代更新子模块根据I1的上下文特征、I1和I2之间的运动特征、第一个迭代更新子模块输出的隐含状态和光流预测值,计算自身的隐含状态,并输出自身的隐含状态和计算的I1和I2的光流预测值。以此类推。
步骤505、计算光流预测值。
N个迭代更新子模块中后一个迭代更新子模块根据其前一个迭代更新子模块的输出,计算自身的隐含状态,对于每个迭代更新子模块,将输出的隐含状态输入至一个输出为2通道的卷积层,即可输出每个迭代更新子模块计算得到的I1和I2的光流预测值。
步骤506、判断是否已迭代N次。
判断是否已迭代N次,也即,判断第N个迭代更新子模块是否已计算完成,若是,则执行步骤507,否则返回执行步骤503和504,进入下一个迭代更新子模块的处理。
步骤507、输出光流预测值。
在第N个迭代更新子模块计算完成后,通过N个迭代更新子模块可以输出N个光流预测值,将这N个光流预测值求平均即可得到最终的光流预测值,并输出该光流预测值,也即输出I1和I2的光流预测值。
示例性地,将步骤507输出的I1和I2的光流预测值记为f∈RH/2×W/2×2。
在本发明的一种可选实施例中,所述方法还可以包括:
对所述训练完成的光流估计模型输出的光流预测值进行二值化处理,根据二值化处理的结果确定所述连续两帧的RAW图像中前一帧RAW图像的运动区域。
以待计算的一对RAW图像I1和I2为例,将I1和I2输入训练完成的光流估计模型,通过训练完成的光流估计模型可以输出I1和I2的光流预测值,输出的I1和I2的光流预测值指的是I1中每个像素点在I2中的偏移量。
本发明实施例对训练完成的光流估计模型输出的光流预测值进行二值化处理,指的是将I1中每个像素点在I2中的偏移量与预设阈值进行比较,将小于该预设阈值的像素点的偏移量更新为1,将大于或等于该预设阈值的像素点的偏移量更新为0,二值化处理过程可以如下:
其中,fi表示训练完成的光流估计模型输出的光流预测值,f'i表示二值化后的光流预测值,thresh表示预设阈值。
二值化处理后,可以根据二值化处理的结果确定所述连续两帧的RAW图像中前一帧RAW图像的运动区域。例如,对于I1和I2,可以根据二值化处理的结果确定I1中f'i为0的像素点,并确定I1中f'i为0的像素点对应的区域为运动区域。
通过本发明实施例训练得到的光流估计模型,可以直接对相机传感器输出的RAW图像进行光流估计,并且可以将光流估计的结果用于运动区域检测,进而可以辅助后续的视频编解码。通过本发明实施例,在进行运动区域检测的过程中,可以避免ISP处理过程的耗时,可以提高运动区域检测的效率,进而可以提高编码效率。
需要说明的是,对于方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明实施例并不受所描述的动作顺序的限制,因为依据本发明实施例,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本发明实施例所必须的。
参照图6,示出了本发明的一种训练光流估计模型的装置实施例的结构框图,所述装置可以包括:
RGB图像获取模块601,用于获取RGB图像帧序列以及所述RGB图像帧序列中相邻两帧的RGB图像对应的光流标签;
图像转换模块602,用于将所述RGB图像帧序列中的每个RGB图像转换为第一RAW图像;
增加噪声模块603,用于对所述第一RAW图像增加随机噪声,得到第二RAW图像;
数据集构建模块604,用于构建训练数据集,所述训练数据集中包括多对训练数据和每对训练数据对应的光流标签,所述训练数据集中的一对训练数据包括连续两帧的第二RAW图像;
模型训练模块605,用于利用所述训练数据集训练光流估计模型。
可选地,所述图像转换模块,具体用于:
将所述RGB图像帧序列中的每个RGB图像输入依次连接的多个预置模块中的第一个预置模块,所述依次连接的多个预置模块中的各预置模块基于各自的控制参数对接收到的输入信息进行逆处理,所述依次连接的多个预置模块中的最后一个预置模块输出所述RGB图像对应的第一RAW图像;其中,所述第一个预置模块的输入信息为所述RGB图像,除所述第一个预置模块外的其他预置模块的输入信息为上一个预置模块的输出信息。
可选地,所述依次连接的多个预置模块依次包括:全局色调映射逆处理模块、伽马校正逆处理模块、颜色矫正逆处理模块、白平衡逆处理模块、以及拜尔排列逆处理模块。
可选地,所述增加噪声模块,包括:
方差计算子模块,用于根据所述第一RAW图像以及预设范围内均匀分布的第一随机数和第二随机数,计算方差值;
噪声构建子模块,用于根据所述方差值构建随机噪声;
图像生成子模块,用于根据所述第一RAW图像、构建的所述随机噪声、以及预置的相机传感器相关系数,生成第二RAW图像。
可选地,所述模型训练模块,包括:
数据获取子模块,用于从所述训练数据集中获取当前迭代的一对训练数据;
光流估计子模块,用于将所述当前迭代的一对训练数据输入光流估计模型,通过所述光流估计模型输出所述当前迭代的一对训练数据对应的光流预测值;
损失计算子模块,用于根据所述光流预测值与所述当前迭代的一对训练数据对应的光流标签,计算当前迭代的模型损失值;
参数更新子模块,用于根据所述模型损失值调整所述光流估计模型的模型参数,并进入下一轮迭代;
训练完成子模块,用于在到达迭代停止条件时得到训练完成的光流估计模型。
可选地,所述当前迭代的一对训练数据包括第i帧第二RAW图像和第i+1帧第二RAW图像,所述光流估计模型包括相关性计算模块、迭代推理模块、以及上下文编码模块,其中:
所述相关性计算模块,用于接收所述第i帧第二RAW图像和所述第i+1帧第二RAW图像,分别提取所述第i帧第二RAW图像和所述第i+1帧第二RAW图像的特征矩阵,并计算提取的两个特征矩阵之间的相关性矩阵,以及将所述相关性矩阵输入多级池化层处理,得到多级特征;
所述上下文编码模块,用于接收所述第i帧第二RAW图像,提取所述第i帧第二RAW图像的上下文特征;
所述迭代推理模块,用于接收上一轮迭代的光流预测值、所述第i帧第二RAW图像的上下文特征、以及所述多级特征输入所述迭代推理模块,根据所述上一轮迭代的光流预测值对所述多级特征进行光流采样,得到所述第i帧第二RAW图像和所述第i+1帧第二RAW图像之间的运动特征,并根据所述运动特征、所述迭代推理模块在上一轮迭代中的隐含状态、以及所述第i帧第二RAW图像的上下文特征,计算当前迭代的光流预测值。
可选地,所述迭代推理模块包括依次连接的N个迭代更新子模块,N为大于或等于1的整数,其中:
所述N个迭代更新子模块,用于接收所述运动特征和所述第i帧第二RAW图像的上下文特征,并且前一个迭代更新子模块的输出作为后一个迭代更新子模块的输入;所述N个迭代更新子模块分别根据接收到的数据,迭代更新各自的隐含状态,并分别将各自的隐含状态输入至一个输出为2通道的卷积层,得到每个迭代更新子模块输出的当前迭代的光流预测值。
可选地,所述损失计算子模块,具体用于:
将所述N个迭代更新子模块输出的N个光流预测值分别与所述当前迭代的一对训练数据对应的光流标签计算模型损失值,得到N个模型损失值,并对所述N个模型损失值求平均,得到当前迭代的模型损失值。
本发明实施例通过将获取的RGB图像转换为第一RAW图像,再增加随机噪声,得到第二RAW图像,所述第二RAW图像可以看作是相机传感器输出的RAW图像。本发明实施例利用第二RAW图像构建训练数据集训练光流估计模型。由于所述训练数据集中的训练数据为未经过ISP处理的RAW图像,可以避免ISP处理过程中因相机传感器的原因引入难以建模的噪声和参数的问题,可以提高训练的光流估计模型的鲁棒性和泛化性。此外,本发明实施例利用现有的RGB图像进行逆处理得到RAW图像,可以保留RGB图像的光流标签,从而可以降低标注的难度和成本。再者,本发明实施例在光流估计模型训练完成之后,可以直接获取相机传感器输出的RAW图像作为光流估计模型的输入数据进行光流估计,可以避免对RAW图像进行ISP处理的过程,可以减少光流估计的操作成本和时间成本,提高光流估计的效率。
参照图7,示出了本发明的一种光流估计装置实施例的结构框图,所述装置可以包括:
RAW图像获取模块701,用于获取待计算的一对RAW图像,所述待计算的一对RAW图像包括相机传感器输出的连续两帧的RAW图像;
光流估计模块702,用于将所述待计算的一对RAW图像输入训练完成的光流估计模型,由所述光流估计模型输出所述待计算的一对RAW图像对应的光流预测值;其中,所述训练完成的光流估计模型根据前述任一训练光流估计模型的方法训练得到。
可选地,所述装置还包括:
二值化处理模块,用于对所述训练完成的光流估计模型输出的光流预测值进行二值化处理;
运动区域确定模块,用于根据二值化处理的结果确定所述连续两帧的RAW图像中前一帧RAW图像的运动区域。
通过本发明实施例训练得到的光流估计模型,可以直接对相机传感器输出的RAW图像进行光流估计,并且可以将光流估计的结果用于运动区域检测,进而可以辅助后续的视频编解码。通过本发明实施例,在进行运动区域检测的过程中,可以避免ISP处理过程的耗时,可以提高运动区域检测的效率,进而可以提高编码效率。
对于装置实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本发明实施例还提供一种非临时性计算机可读存储介质,当所述存储介质中的指令由装置(服务器或者终端)的处理器执行时,使得装置能够执行前文图1所对应实施例中训练光流估计模型的方法的描述,因此,这里将不再进行赘述。另外,对采用相同方法的有益效果描述,也不再进行赘述。对于本发明所涉及的计算机程序产品或者计算机程序实施例中未披露的技术细节,请参照本发明方法实施例的描述。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本发明旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
以上对本发明所提供的一种训练光流估计模型的方法、装置和可读存储介质,进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (13)
1.一种训练光流估计模型的方法,其特征在于,所述方法包括:
获取RGB图像帧序列以及所述RGB图像帧序列中相邻两帧的RGB图像对应的光流标签;
将所述RGB图像帧序列中的每个RGB图像转换为第一RAW图像;
对所述第一RAW图像增加随机噪声,得到第二RAW图像;
构建训练数据集,所述训练数据集中包括多对训练数据和每对训练数据对应的光流标签,所述训练数据集中的一对训练数据包括连续两帧的第二RAW图像;
利用所述训练数据集训练光流估计模型。
2.根据权利要求1所述的方法,其特征在于,所述将所述RGB图像帧序列中的每个RGB图像转换为第一RAW图像,包括:
将所述RGB图像帧序列中的每个RGB图像输入依次连接的多个预置模块中的第一个预置模块,所述依次连接的多个预置模块中的各预置模块基于各自的控制参数对接收到的输入信息进行逆处理,所述依次连接的多个预置模块中的最后一个预置模块输出所述RGB图像对应的第一RAW图像;其中,所述第一个预置模块的输入信息为所述RGB图像,除所述第一个预置模块外的其他预置模块的输入信息为上一个预置模块的输出信息。
3.根据权利要求2所述的方法,其特征在于,所述依次连接的多个预置模块依次包括:全局色调映射逆处理模块、伽马校正逆处理模块、颜色矫正逆处理模块、白平衡逆处理模块、以及拜尔排列逆处理模块。
4.根据权利要求1所述的方法,其特征在于,所述对所述第一RAW图像增加随机噪声,得到第二RAW图像,包括:
根据所述第一RAW图像以及预设范围内均匀分布的第一随机数和第二随机数,计算方差值;
根据所述方差值构建随机噪声;
根据所述第一RAW图像、构建的所述随机噪声、以及预置的相机传感器相关系数,生成第二RAW图像。
5.根据权利要求1所述的方法,其特征在于,所述利用所述训练数据集训练光流估计模型,包括:
从所述训练数据集中获取当前迭代的一对训练数据;
将所述当前迭代的一对训练数据输入光流估计模型,通过所述光流估计模型输出所述当前迭代的一对训练数据对应的光流预测值;
根据所述光流预测值与所述当前迭代的一对训练数据对应的光流标签,计算当前迭代的模型损失值;
根据所述模型损失值调整所述光流估计模型的模型参数,并进入下一轮迭代;
在到达迭代停止条件时得到训练完成的光流估计模型。
6.根据权利要求5所述的方法,其特征在于,所述当前迭代的一对训练数据包括第i帧第二RAW图像和第i+1帧第二RAW图像,所述光流估计模型包括相关性计算模块、迭代推理模块、以及上下文编码模块,所述将所述当前迭代的一对训练数据输入光流估计模型,通过所述光流估计模型输出所述当前迭代的一对训练数据对应的光流预测值,包括:
将所述第i帧第二RAW图像和所述第i+1帧第二RAW图像输入所述相关性计算模块,通过所述相关性计算模块分别提取所述第i帧第二RAW图像和所述第i+1帧第二RAW图像的特征矩阵,并计算提取的两个特征矩阵之间的相关性矩阵;
将所述相关性矩阵经过多级池化层处理,得到多级特征;
将所述第i帧第二RAW图像输入所述上下文编码模块,通过所述上下文编码模块提取所述第i帧第二RAW图像的上下文特征;
将上一轮迭代的光流预测值、所述第i帧第二RAW图像的上下文特征、以及所述多级特征输入所述迭代推理模块;
所述迭代推理模块根据所述上一轮迭代的光流预测值对所述多级特征进行光流采样,得到所述第i帧第二RAW图像和所述第i+1帧第二RAW图像之间的运动特征,并根据所述运动特征、所述迭代推理模块在上一轮迭代中的隐含状态、以及所述第i帧第二RAW图像的上下文特征,计算当前迭代的光流预测值。
7.根据权利要求6所述的方法,其特征在于,所述迭代推理模块包括依次连接的N个迭代更新子模块,N为大于或等于1的整数,所述根据所述运动特征、所述迭代推理模块在上一轮迭代中的隐含状态、以及所述第i帧第二RAW图像的上下文特征,计算当前迭代的光流预测值,包括:
将所述运动特征和所述第i帧第二RAW图像的上下文特征输入所述迭代推理模块中的N个迭代更新子模块,并且前一个迭代更新子模块的输出作为后一个迭代更新子模块的输入;
所述N个迭代更新子模块分别根据接收到的数据,迭代更新各自的隐含状态;
所述N个迭代更新子模块分别将各自的隐含状态输入至一个输出为2通道的卷积层,得到每个迭代更新子模块输出的当前迭代的光流预测值。
8.根据权利要求7所述的方法,其特征在于,所述根据所述光流预测值与所述当前迭代的一对训练数据对应的光流标签,计算当前迭代的模型损失值,包括:
将所述N个迭代更新子模块输出的N个光流预测值分别与所述当前迭代的一对训练数据对应的光流标签计算模型损失值,得到N个模型损失值;
对所述N个模型损失值求平均,得到当前迭代的模型损失值。
9.一种光流估计方法,其特征在于,所述方法包括:
获取待计算的一对RAW图像,所述待计算的一对RAW图像包括相机传感器输出的连续两帧的RAW图像;
将所述待计算的一对RAW图像输入训练完成的光流估计模型,由所述光流估计模型输出所述待计算的一对RAW图像对应的光流预测值;其中,所述训练完成的光流估计模型根据上述权利要求1至8中任一所述的训练光流估计模型的方法训练得到。
10.根据权利要求9所述的方法,其特征在于,所述方法还包括:
对所述训练完成的光流估计模型输出的光流预测值进行二值化处理;
根据二值化处理的结果确定所述连续两帧的RAW图像中前一帧RAW图像的运动区域。
11.一种训练光流估计模型的装置,其特征在于,所述装置包括:
RGB图像获取模块,用于获取RGB图像帧序列以及所述RGB图像帧序列中相邻两帧的RGB图像对应的光流标签;
图像转换模块,用于将所述RGB图像帧序列中的每个RGB图像转换为第一RAW图像;
增加噪声模块,用于对所述第一RAW图像增加随机噪声,得到第二RAW图像;
数据集构建模块,用于构建训练数据集,所述训练数据集中包括多对训练数据和每对训练数据对应的光流标签,所述训练数据集中的一对训练数据包括连续两帧的第二RAW图像;
模型训练模块,用于利用所述训练数据集训练光流估计模型。
12.一种光流估计装置,其特征在于,所述装置包括:
RAW图像获取模块,用于获取待计算的一对RAW图像,所述待计算的一对RAW图像包括相机传感器输出的连续两帧的RAW图像;
光流估计模块,用于将所述待计算的一对RAW图像输入训练完成的光流估计模型,由所述光流估计模型输出所述待计算的一对RAW图像对应的光流预测值;其中,所述训练完成的光流估计模型根据上述权利要求1至8中任一所述的训练光流估计模型的方法训练得到。
13.一种机器可读存储介质,其上存储有指令,当所述指令由装置的一个或多个处理器执行时,使得装置执行如权利要求1至8中任一所述的训练光流估计模型的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211138976.6A CN115272423B (zh) | 2022-09-19 | 2022-09-19 | 一种训练光流估计模型的方法、装置和可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211138976.6A CN115272423B (zh) | 2022-09-19 | 2022-09-19 | 一种训练光流估计模型的方法、装置和可读存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115272423A true CN115272423A (zh) | 2022-11-01 |
CN115272423B CN115272423B (zh) | 2022-12-16 |
Family
ID=83756823
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211138976.6A Active CN115272423B (zh) | 2022-09-19 | 2022-09-19 | 一种训练光流估计模型的方法、装置和可读存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115272423B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116486107A (zh) * | 2023-06-21 | 2023-07-25 | 南昌航空大学 | 一种光流计算方法、系统、设备及介质 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108106603A (zh) * | 2016-11-23 | 2018-06-01 | 株式会社三丰 | 具有多级扩展景深图像处理的可变焦距透镜系统 |
US20190188863A1 (en) * | 2017-12-20 | 2019-06-20 | Facebook, Inc. | Unsupervised Video Segmentation |
CN111340867A (zh) * | 2020-02-26 | 2020-06-26 | 清华大学 | 图像帧的深度估计方法、装置、电子设备及存储介质 |
CN111401411A (zh) * | 2020-02-28 | 2020-07-10 | 北京小米松果电子有限公司 | 获取样本图像集的方法及装置 |
CN112261390A (zh) * | 2020-08-20 | 2021-01-22 | 深圳市豪恩汽车电子装备股份有限公司 | 车载摄像设备及其图像优化装置和优化方法 |
JPWO2021039578A1 (zh) * | 2019-08-29 | 2021-03-04 | ||
CN113160278A (zh) * | 2021-04-23 | 2021-07-23 | 西安电子科技大学广州研究院 | 一种场景流估计、场景流估计模型的训练方法和装置 |
CN114009041A (zh) * | 2019-06-24 | 2022-02-01 | 华为技术有限公司 | 双向预测光流计算和双向预测校正中用于块级边界样本梯度计算的整数网格参考样本位置的计算方法 |
CN114494087A (zh) * | 2020-11-12 | 2022-05-13 | 安霸国际有限合伙企业 | 无监督的多尺度视差/光流融合 |
CN114913098A (zh) * | 2022-06-28 | 2022-08-16 | 苏州科达科技股份有限公司 | 图像处理超参数优化方法、系统、设备及存储介质 |
-
2022
- 2022-09-19 CN CN202211138976.6A patent/CN115272423B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108106603A (zh) * | 2016-11-23 | 2018-06-01 | 株式会社三丰 | 具有多级扩展景深图像处理的可变焦距透镜系统 |
US20190188863A1 (en) * | 2017-12-20 | 2019-06-20 | Facebook, Inc. | Unsupervised Video Segmentation |
CN114009041A (zh) * | 2019-06-24 | 2022-02-01 | 华为技术有限公司 | 双向预测光流计算和双向预测校正中用于块级边界样本梯度计算的整数网格参考样本位置的计算方法 |
JPWO2021039578A1 (zh) * | 2019-08-29 | 2021-03-04 | ||
CN111340867A (zh) * | 2020-02-26 | 2020-06-26 | 清华大学 | 图像帧的深度估计方法、装置、电子设备及存储介质 |
CN111401411A (zh) * | 2020-02-28 | 2020-07-10 | 北京小米松果电子有限公司 | 获取样本图像集的方法及装置 |
CN112261390A (zh) * | 2020-08-20 | 2021-01-22 | 深圳市豪恩汽车电子装备股份有限公司 | 车载摄像设备及其图像优化装置和优化方法 |
CN114494087A (zh) * | 2020-11-12 | 2022-05-13 | 安霸国际有限合伙企业 | 无监督的多尺度视差/光流融合 |
CN113160278A (zh) * | 2021-04-23 | 2021-07-23 | 西安电子科技大学广州研究院 | 一种场景流估计、场景流估计模型的训练方法和装置 |
CN114913098A (zh) * | 2022-06-28 | 2022-08-16 | 苏州科达科技股份有限公司 | 图像处理超参数优化方法、系统、设备及存储介质 |
Non-Patent Citations (4)
Title |
---|
HAZEM RASHED 等: "BEV-MODNet: Monocular Camera based Bird’s Eye View Moving Object Detection for Autonomous Driving", 《COMPUTER VISION AND PATTERN RECOGNITION》 * |
张淑军 等: "基于彩色-深度视频和CLDS的手语识别", 《数据采集与处理》 * |
徐 倩等: "基于双向光流估计的高动态范围图像去模糊", 《中国体视学与图像分析》 * |
许金元: "动态环境下多媒体视频兴趣区的自动捕获系统设计", 《现代电子技术》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116486107A (zh) * | 2023-06-21 | 2023-07-25 | 南昌航空大学 | 一种光流计算方法、系统、设备及介质 |
CN116486107B (zh) * | 2023-06-21 | 2023-09-05 | 南昌航空大学 | 一种光流计算方法、系统、设备及介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115272423B (zh) | 2022-12-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Li et al. | Underwater scene prior inspired deep underwater image and video enhancement | |
Zhou et al. | Cross-view enhancement network for underwater images | |
CN109360171B (zh) | 一种基于神经网络的视频图像实时去模糊方法 | |
CN111741211B (zh) | 图像显示方法和设备 | |
US10929955B2 (en) | Scene-based nonuniformity correction using a convolutional recurrent neural network | |
CN111292264A (zh) | 一种基于深度学习的图像高动态范围重建方法 | |
CN110751649B (zh) | 视频质量评估方法、装置、电子设备及存储介质 | |
CN112200057B (zh) | 人脸活体检测方法、装置、电子设备及存储介质 | |
CN112785637B (zh) | 一种基于动态融合网络的光场深度估计方法 | |
CN112949493B (zh) | 一种结合语义分割和注意力机制的车道线检测方法及系统 | |
CN111582141A (zh) | 人脸识别模型训练方法、人脸识别方法及装置 | |
CN113378775B (zh) | 一种基于深度学习的视频阴影检测与消除方法 | |
CN115272423B (zh) | 一种训练光流估计模型的方法、装置和可读存储介质 | |
CN112819876A (zh) | 一种基于深度学习的单目视觉深度估计方法 | |
CN114170286B (zh) | 一种基于无监督深度学习的单目深度估计方法 | |
CN112767466A (zh) | 一种基于多模态信息的光场深度估计方法 | |
CN115601403A (zh) | 一种基于自注意力机制的事件相机光流估计方法及装置 | |
CN112270691B (zh) | 一种基于动态滤波器网络的单目视频结构和运动预测方法 | |
CN113052768B (zh) | 一种处理图像的方法、终端及计算机可读存储介质 | |
CN117408924A (zh) | 一种基于多重语义特征融合网络的低光照图像增强方法 | |
CN117422653A (zh) | 一种基于权重共享和迭代数据优化的低光照图像增强方法 | |
CN117036806A (zh) | 一种基于双重复用残差网络的物体识别方法 | |
CN112085717A (zh) | 一种用于腹腔镜手术的视频预测方法及其系统 | |
CN114663307B (zh) | 基于不确定性网络的集成图像去噪系统 | |
CN115311149A (zh) | 图像去噪方法、模型、计算机可读存储介质及终端设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |