本申请涉及图像处理技术领域,尤其涉及一种图像虚化处理方法、装置及移动设备。
背景技术:
随着科技的发展,相机、摄像机等摄像装置被广泛应用于人们的日常生活、工作、学习中,在人们生活中扮演的角色越来越重要。利用摄像装置拍摄图像时,为了突出拍照的主体,对拍照的背景区域进行虚化处理是一种经常使用的手法。
通常,在拍照时,摄像装置所在的移动设备或拍照的主体会发生移动,由于虚化处理过程需要计算景深,而景深计算耗时久,这就造成了因移动设备或拍照的主体的移动需要重新计算景深时,处理器的处理速度可能跟不上移动设备或拍照主体的移动速度,导致无法及时确定景深,虚化效果跟随性差,用户体验差。
申请内容
本申请提供一种图像虚化处理方法、装置及移动设备,通过根据移动设备的当前运动速度,确定当前景深计算帧率,并在根据景深计算帧率,确定当前预览图像为目标图像时,根据目标图像的背景区域的深度信息,对当前预览图像进行虚化处理,提高了虚化效果跟随性,改善了用户体验。
本申请实施例提供一种图像虚化处理方法,应用于包括摄像组件的移动设备中,包括:确定所述移动设备的当前运动速度;根据所述当前运动速度,确定当前景深计算帧率;根据所述景深计算帧率,判断当前预览图像是否为目标图像;若是,则获取所述目标图像的背景区域的深度信息;根据所述深度信息,对所述当前预览图像进行虚化处理。
本申请另一实施例提供一种图像虚化处理装置,应用于包括摄像组件的移动设备中,包括:第一确定模块,用于确定所述移动设备的当前运动速度;第二确定模块,用于根据所述当前运动速度,确定当前景深计算帧率;判断模块,用于根据所述景深计算帧率,判断当前预览图像是否为目标图像;第一获取模块,用于在当前预览图像为目标图像时,获取所述目标图像的背景区域的深度信息;第一处理模块,用于根据所述深度信息,对所述当前预览图像进行虚化处理。
本申请又一实施例提供一种移动设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如第一方面所述的图像虚化处理方法。
本申请还一实施例提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如本申请上述实施例所述的图像虚化处理方法。
本申请实施例提供的技术方案可以包括以下有益效果:
通过根据移动设备的当前运动速度,确定当前景深计算帧率,并在根据景深计算帧率,确定当前预览图像为目标图像时,根据目标图像的背景区域的深度信息,对当前预览图像进行虚化处理,提高了虚化效果跟随性,改善了用户体验。
附图说明
本申请上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1是根据本申请一个实施例的图像虚化处理方法的流程图;
图2是根据本申请另一实施例的图像虚化处理方法的流程图;
图2a-2b是根据本申请一个实施例的图像虚化处理方法的示例图;
图3是根据本申请另一实施例的图像虚化处理方法的流程图;
图4是根据本申请一个实施例的图像虚化处理装置的结构示意图;以及
图5是根据本申请一个实施例的图像处理电路的示意图。
具体实施方式
下面详细描述本申请的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本申请,而不能理解为对本申请的限制。
本申请各实施例针对现有技术中,在拍照时,摄像装置所在的移动设备或拍照的主体会发生移动,由于虚化处理过程需要计算景深,而景深计算耗时久,这就造成了移动设备或拍照的主体移动需要重新计算景深时,处理器的处理速度可能跟不上移动设备或拍照主体的移动速度,导致无法及时确定景深,虚化效果跟随性差,用户体验差的问题,提出一种图像虚化处理方法。
本申请实施例提供的图像虚化处理方法,通过根据移动设备的当前运动速度,确定当前景深计算帧率,并在根据景深计算帧率,确定当前预览图像为目标图像时,根据目标图像的背景区域的深度信息,对当前预览图像进行虚化处理,提高了虚化效果跟随性,改善了用户体验。
下面参考附图描述本申请实施例的图像虚化处理方法、装置及移动设备。
图1是根据本申请一个实施例的图像虚化处理方法的流程图。
如图1所示,该图像虚化处理方法应用于包括摄像组件的移动设备中,该方法包括:
步骤101,确定移动设备的当前运动速度。
其中,本申请实施例提供的图像虚化处理方法的执行主体,为本申请实施例提供的图像虚化处理装置,该装置可以被配置在包括摄像组件的移动设备中,以对采集的图像进行虚化处理。其中,移动设备的类型很多,可以为手机、平板电脑、笔记本电脑等。
具体的,在获取到虚化处理指令时,可以通过在移动设备中设置的如陀螺仪、加速度计、速度传感器等传感器,确定移动设备的当前运动速度。
步骤102,根据当前运动速度,确定当前景深计算帧率。
步骤103,根据景深计算帧率,判断当前预览图像是否为目标图像。
可以理解的是,在移动设备移动过程中,摄像模组在不停的采集图像,即采集的图像为多帧图像,现有技术,对采集的图像进行虚化处理时,需要对每帧图像进行景深计算,而由于景深计算耗时久,因此在移动设备移动过程中,处理器的处理速度可能跟不上移动设备或拍照主体的移动速度,导致无法及时确定景深,虚化效果跟随性差。
为了解决上述问题,在本申请实施例中,可以不对摄像组件采集的每帧图像进行景深计算,而是根据移动设备的当前运动速度,确定当前景深计算帧率,并根据景深计算帧率,从采集的多帧图像中抽取目标图像进行景深计算,而对于目标图像之外的帧图像,则直接利用之前最近抽取的目标图像的景深计算结果,从而减小景深计算的时间,提高虚化效果跟随性,改善用户体验。
其中,景深计算帧率,可以指从采集的图像中抽取目标图像时的帧间隔。比如,景深计算帧率为2,若第一次抽取的目标图像为第1帧图像,则第二次抽取的目标图像为第4帧图像。
具体的,可以预先设置移动设备的运动速度与景深计算帧率的对应关系,从而在确定移动设备的当前运动速度后,可以根据预设的对应关系,确定当前景深计算帧率。
需要说明的是,在设置移动设备的运动速度与景深计算帧率的对应关系时,可以按照移动设备的运动速度越快,对应的景深计算帧率越大,即景深计算帧率大小与移动设备的运动速度快慢正比的原则进行设置。
步骤104,若是,则获取目标图像的背景区域的深度信息。
步骤105,根据深度信息,对当前预览图像进行虚化处理。
其中,背景区域是指除拍照主体所在区域外的其它区域。
具体的,在根据当前景深计算帧率,从采集的图像中抽取目标图像后,若当前预览图像为目标图像,则可以获取目标图像的背景区域的深度信息,并根据深度信息,确定虚化等级,从而根据虚化等级,对当前预览图像进行虚化处理。
其中,确定目标图像的背景区域的深度信息的过程,将在下述实施例中说明,此处不作介绍。
需要说明的是,背景区域可能包含不同的人或物,而不同的人或物对应的深度数据可能是不同的,因此上述背景区域的深度信息可能为一个数值或一个数值范围。其中,当背景区域的深度信息为一个数值时,该数值可以通过对背景区域的深度数据取平均值得到;或者,可以通过对背景区域的深度数据取中值得到。
具体的,可以预先设置不同的深度范围,对应不同的虚化等级,从而在确定目标图像的背景区域的深度信息后,可以根据确定的深度信息及预设的对应关系,确定对应的虚化等级,以对当前预览图像进行虚化处理。
具体实现时,可以采用高斯核函数,对当前预览图像进行虚化处理。其中,高斯核可以看作为权重矩阵,通过利用权重矩阵对当前预览图像中的像素进行高斯模糊值计算,即可对当前预览图像进行虚化处理。计算像素的高斯模糊值时,将所要计算的像素作为中心像素,并采用权重矩阵对中心像素周边的像素点的像素值进行加权计算,最终得到所要计算的像素的高斯模糊值。
具体实现时,对相同像素采用不同的权重矩阵进行高斯模糊值计算,即可得到不同程度的虚化效果。而权重矩阵与高斯核函数的方差有关,方差越大,表示高斯核函数的径向作用范围越宽,平滑效果越好即模糊程度越高。因此,可以预先设置虚化等级与高斯核函数的方差的对应关系,从而在确定目标图像的虚化等级后,可以根据预设的对应关系,确定高斯核函数的方差,进而确定权重矩阵,从而对当前预览图像进行对应程度的虚化处理。
需要说明的是,对当前预览图像的背景区域进行虚化时,由于背景区域可能包含不同的人或物,从而背景区域的深度信息的梯度可能较大,比如背景区域中某区域的深度数据很大,某区域的深度数据很小,若对整个背景区域均根据同一虚化等级进行虚化处理,可能会导致虚化效果不自然。因此,在本申请实施例中,还可以将背景区域分为不同的区域,对不同的区域进行不同等级的虚化处理。
具体的,可以根据背景区域的深度信息,将背景区域划分为多个区域,每个区域的深度范围的跨度随该区域所处的深度位置的增加而增大,从而对不同区域,进行不同程度的虚化,使得图像的虚化效果更加自然、更接近光学聚焦效果,提升用户的视觉感受。
在一种可能的实现形式中,根据当前景深计算帧率,从采集的图像中抽取目标图像后,若当前预览图像不是目标图像,则可以采用以下多种方式,对当前预览图像进行虚化处理。
方式一
根据当前预览图像之前的目标图像的深度信息,对当前预览图像进行虚化处理。
具体的,当前预览图像不是目标图像时,可以根据当前预览图像之前的目标图像的深度信息,确定虚化等级,以对当前预览图像进行虚化处理。
举例来说,假设景深计算帧率为2,根据景深计算帧率,确定抽取第1帧图像、第4帧图像等作为目标图像。当前预览图像为第1帧图像时,由于第1帧图像为目标图像,则可以根据第1帧图像的背景区域的深度信息,确定虚化等级,以对第1帧图像进行虚化处理。当前预览图像为第2帧图像时,由于第2帧图像不是目标图像,则可以根据由之前的目标图像,即第1帧图像的背景区域的深度信息确定的虚化等级,对第2帧图像进行虚化处理。
方式二
根据当前运动速度,确定第一虚化等级,并根据第一虚化等级,对当前预览图像进行虚化处理。
具体的,可以预先设置运动速度与虚化等级的对应关系,从而在当前预览图像不是目标图像时,可以根据当前运动速度及预设的对应关系,确定第一虚化等级,以根据第一虚化等级,对当前预览图像进行虚化处理。
需要说明的是,在设置移动设备的运动速度与虚化等级的对应关系时,可以按照移动设备的运动速度越快,对应的虚化等级的虚化程度越低,即虚化等级的虚化程度高低与移动设备的运动速度快慢成反比的原则进行设置。
举例来说,假设预先设置移动设备的运动速度小于0.5米/秒(m/s),对应虚化等级a,运动速度大于等于0.5m/s,对应虚化等级b。景深计算帧率为2,根据景深计算帧率,确定抽取第1帧图像、第4帧图像等作为目标图像。当前预览图像为第2帧图像时,若当前运动速度为0.4m/s,由于第2帧图像不是目标图像,则可以根据当前运动速度及预设的对应关系,确定虚化等级a,从而根据虚化等级a,对第2帧图像进行虚化处理。
需要说明的是,在本发明实施例中,当前预览图像不是目标图像时,也可以在根据当前预览图像之前的目标图像的深度信息,确定虚化等级,及根据当前运动速度,确定第一虚化等级后,根据两个虚化等级中较低的虚化等级,对当前预览图像进行虚化处理。
可以理解的是,现有技术,对采集的图像进行虚化处理时,对每帧图像进行景深计算,需要耗费较大的功耗,而本申请实施例中,通过根据移动设备的当前运动速度,确定当前景深计算帧率,从而根据景深计算帧率,从采集的多帧图像中抽取目标图像进行景深计算,减小了虚化处理过程中的功耗。
本申请实施例提供的图像虚化处理方法,通过根据移动设备的当前运动速度后,确定当前景深计算帧率,并在根据景深计算帧率,确定当前预览图像为目标图像时,根据目标图像的背景区域的深度信息,对当前预览图像进行虚化处理,提高了虚化效果跟随性,改善了用户体验。
通过上述分析可知,可以根据移动设备的当前运动速度,确定当前景深计算帧率,从而在根据景深计算帧率,确定当前预览图像为目标图像时,根据目标图像的背景区域的深度信息,对当前预览图像进行虚化处理。在一种可能的实现形式中,还可以结合移动设备的景深计算处理速度,确定当前景深计算帧率,下面结合图2,对本申请实施例提供的图像虚化处理方法进行进一步说明。
图2是根据本申请另一实施例的图像虚化处理方法的流程图。
如图2所示,该图像虚化处理方法,包括:
步骤201,确定移动设备的当前运动速度。
具体的,可以通过在移动设备中设置的如陀螺仪、加速度计、速度传感器等传感器,确定移动设备的当前运动速度。
步骤202,根据移动设备的景深计算处理速度,确定初始景深计算帧率。
具体的,可以预先设置不同的景深计算处理速度,对应不同的初始景深计算帧率,从而在确定移动设备的景深计算处理速度后,可以根据确定的景深计算处理速度及预设的对应关系,确定初始景深计算帧率。
需要说明的是,移动设备的景深计算处理速度,可以是根据移动设备出厂时的处理器性能确定的;或者,由于移动设备中运行的软件不同时,移动设备的处理器处理速度可能不同,因此,移动设备的景深计算处理速度,也可以是根据移动设备的使用状态确定的,此处不作限制。
步骤203,根据当前运动速度,对初始景深计算帧率进行调整,以得到当前景深计算帧率。
步骤204,根据当前景深计算帧率,判断当前预览图像是否为目标图像。
具体的,可以通过以下方式,对初始景深计算帧率进行调整。即步骤203可以用以下步骤代替:
步骤203a,判断移动设备的当前运动速度是否大于阈值,若是,则执行步骤203b,否则,执行步骤203c。
步骤203b,增加初始景深计算帧率。
步骤203c,将初始景深计算帧率作为当前景深计算帧率。
其中,阈值可以根据需要设置。
具体的,若移动设备的当前运动速度大于阈值,则可以增加初始景深计算帧率,若移动设备的当前运动速度小于或等于阈值,则将初始景深计算帧率作为当前景深计算帧率。
具体实现时,若移动设备的当前运动速度大于阈值,则可以根据移动设备的当前运动速度与阈值的差值,确定初始景深计算帧率的增加程度。移动设备的当前运动速度与阈值的差值越大,则初始景深计算帧率的增加程度越大,移动设备的当前运动速度与阈值的差值越小,初始景深计算帧率的增加程度越小。
通过根据移动设备的当前运动速度,对初始景深计算帧率进行调整,确定当前景深计算帧率,可以使移动设备的当前运动速度越快,当前景深计算帧率越大。
步骤205,若是,则获取目标图像的背景区域的深度信息。
步骤206,根据深度信息,对当前预览图像进行虚化处理。
具体的,可以采用下面的方法,确定目标图像的背景区域的深度信息,即,步骤205可以包括:
步骤205a,根据目标图像及对应的深度图像,确定目标图像的图像深度信息。其中,目标图像为rgb彩色图像,深度图像包含目标图像中各个人或物体的深度信息。具体的,可以利用深度摄像头来获取深度图像。其中,深度摄像头包括基于结构光深度测距的深度摄像头和基于飞行时间(timeofflight,简称tof)测距的深度摄像头。
由于目标图像的色彩信息与深度图像的深度信息是一一对应的关系,因此可以根据深度图像获取到目标图像的图像深度信息。
步骤205b,根据图像深度信息确定目标图像的背景区域。
具体的,可以根据图像深度信息,获得目标图像的最前点,最前点相当于主体的开端,从最前点进行扩散,获取与最前点邻接并且深度连续变化的区域,这些区域和最前点归并为主体所在区域,目标图像中除主体外的区域即为背景区域。
步骤205c,根据背景区域的色彩信息及深度图像的深度信息的对应关系,即可确定背景区域的深度信息。
在一种可能的实现形式中,目标图像中可能包括人像,此时,可以采用下面的方法,确定目标图像的背景区域,进而确定背景区域的深度信息。即,步骤205中,获取目标图像的背景区域的深度信息之前,还可以包括:
对目标图像进行人脸识别,确定目标图像中包括的人脸区域;
获取人脸区域的深度信息;
根据移动设备当前的姿态及人脸区域的深度信息,确定人像区域;
根据人像区域,对目标图像进行区域分割,确定背景区域。
具体的,首先可采用已训练好的深度学习模型识别出目标图像中包括的人脸区域,随后根据目标图像与深度图像的对应关系可确定出人脸区域的深度信息。由于人脸区域包括鼻子、眼睛、耳朵、嘴唇等特征,因此,人脸区域中的各个特征在深度图像中所对应的深度数据是不同的,例如,在人脸正对采集深度图像的深度摄像头时,深度摄像头拍摄得的深度图像中,鼻子对应的深度数据可能较小,而耳朵对应的深度数据可能较大。因此,上述人脸区域的深度信息可能为一个数值或是一个数值范围。其中,当人脸区域的深度信息为一个数值时,该数值可通过对人脸区域的深度数据取平均值得到;或者,可以通过对人脸区域的深度数据取中值得到。
由于人像区域包含人脸区域,也即是说,人像区域与人脸区域同处于某一个深度范围内,因此,确定出人脸区域的深度信息后,可以根据人脸区域的深度信息设定人像区域的深度范围,再根据人像区域的深度范围提取落入该深度范围内且与人脸区域相连接的区域以获得人像区域。
需要说明的是,由于移动设备的摄像组件中,图像传感器包括多个感光单元,每个感光单元对应一个像素,而摄像组件是相对移动设备固定设置的,因此当移动设备以不同的姿态拍摄图像时,被摄物上的相同点会对应图像传感器上的不同像素点。
举例来说,假设图2a和图2b中椭圆区域分别为移动终端以竖屏方式和横屏方式拍摄图像时,被摄物所在区域。如图2a和图2b可知,当移动设备以竖屏方式拍摄图像时,被摄物上a点和b点分别对应像素点10和像素点11,而当移动设备以横屏方式拍摄图像时,被摄物上a点和b点分别对应像素点11和像素点8。
那么,假设已知a点所在区域及b点所在区域的深度范围n,需要提取落入深度范围n内的b点所在区域时,若移动设备为竖屏状态,则根据a点与b点的位置关系,需要由像素点10到像素点11的方向提取,若移动设备为横屏状态,则需要由像素点11到像素点8的方向提取。也就是说,确定某一区域后,需要提取落入某一深度范围内的其它区域时,若移动设备的姿态不同,则需要向不同的方向提取。因此在本发明实施例中,根据人脸区域的深度信息设定人像区域的深度范围后,根据人像区域的深度范围,提取落入该深度范围内且与人脸区域相连接的区域时,可以根据移动设备当前的姿态,确定向哪个方向提取与人脸相连接且落入设定的深度范围的区域,从而更快的确定人像区域。
具体的,确定了人像区域后,即可根据人像区域对目标图像进行区域分割,将除人像区域外的其它区域确定为背景区域,进而根据背景区域的色彩信息与深度图像的深度信息的对应关系,确定背景区域的深度信息。
确定了目标图像的背景区域的深度信息后,即可根据深度信息,对当前预览图像进行虚化处理。具体的实现过程及原理,可以参照上述实施例的详细描述,此处不再赘述。
通过根据移动设备的景深计算处理速度,确定初始景深计算帧率,再根据当前运动速度,对初始景深计算帧率进行调整,以确定当前景深计算帧率,使得确定的景深计算帧率更合理,从而使得虚化效果跟随性更好。
本申请实施例提供的图像虚化处理方法,在确定移动设备的当前运动速度后,先根据移动设备的景深计算处理速度,确定初始景深计算帧率,然后根据当前运动速度,对初始景深计算帧率进行调整,以得到当前景深计算帧率,再根据当前景深计算帧率,判断当前预览图像是否为目标图像,若是,则获取目标图像的背景区域的深度信息,从而根据深度信息,对当前预览图像进行虚化处理。由此,通过根据移动设备的当前运动速度及移动设备的景深计算处理帧率,确定当前景深计算帧率,并在根据景深计算帧率,确定当前预览图像为目标图像时,根据目标图像的背景区域的深度信息,对当前预览图像进行虚化处理,提高了虚化效果跟随性,改善了用户体验。
通过上述分析可知,可以根据移动设备的当前运动速度确定当前景深计算帧率,从而在根据景深计算帧率,确定当前预览图像为目标图像时,根据目标图像的背景区域的深度信息,确定对应的虚化等级,以对预览图像进行虚化处理。在一种可能的实现形式中,当前预览图像为目标图像时,还可以结合移动设备的当前运动速度,确定虚化等级,以对当前预览图像进行虚化处理。下面结合图3,对本申请实施例提供的图像虚化处理方法进行进一步说明。
图3是根据本申请另一个实施例的图像虚化处理方法的流程图。
如图3所示,该图像虚化处理方法,包括:
步骤301,确定移动设备的当前运动速度。
步骤302,根据当前运动速度,确定当前景深计算帧率。
步骤303,根据景深计算帧率,判断当前预览图像是否为目标图像。
步骤304,若是,则获取目标图像的背景区域的深度信息。
其中,上述步骤301-304的具体实现过程及原理,可以参照上述实施例的详细描述,此处不再赘述。
步骤305,根据当前运动速度,确定第一虚化等级。
其中,不同的虚化等级,对应的虚化程度不同。
具体的,可以预先设置移动设备的运动速度与虚化等级的对应关系,从而在确定移动设备的当前运动速度后,可以根据预设的对应关系,确定第一虚化等级。
需要说明的是,在设置移动设备的运动速度与虚化等级的对应关系时,可以按照移动设备的运动速度越快,对应的虚化等级的虚化程度越低,即虚化等级的虚化程度高低与移动设备的运动速度快慢成反比的原则进行设置。
步骤306,根据目标图像的背景区域的深度信息,确定第二虚化等级。
具体的,可以预先设置不同的深度范围,对应不同的虚化等级,从而在确定目标图像的背景区域的深度信息后,可以根据确定的深度信息及预设的对应关系,确定第二虚化等级。
步骤307,根据第二虚化等级与第一虚化等级中虚化程度较低的虚化等级,对预览图像进行虚化处理。
具体的,确定了第二虚化等级及第一虚化等级后,即可根据第二虚化等级与第一虚化等级中虚化程度较低的虚化等级,对预览图像进行虚化处理。
需要说明的是,在本申请实施例中,也可以先根据目标图像的背景区域的深度信息,确定第二虚化等级,然后根据移动设备的当前运动速度,对第二虚化等级进行调整,若移动设备的当前运动速度较大,则降低第二虚化等级的虚化程度得到最终的虚化等级,从而根据最终的虚化等级,对预览图像进行虚化处理。
可以理解的是,本申请实施例提供的图像虚化处理方法,通过抽取目标图像进行景深计算,减小了景深计算时间及虚化处理过程中的功耗,提高了虚化效果的跟随性,改善了用户体验。且通过在当前预览图像为目标图像时,根据移动设备的当前运动速度,及目标图像的背景区域的深度信息,确定虚化等级,且随移动设备的运动速度的增加而减小虚化程度,减小了没有经过虚化的主体区域与虚化后的背景区域之间的模糊程度的差距,从而在移动设备移动时,掩盖虚化效果的跟随性差的问题。
为了实现上述实施例,本申请还提出了一种图像虚化处理装置。
图4是根据本申请一个实施例的图像虚化处理装置的结构示意图。
如图4所示,该图像虚化处理装置应用于包括摄像组件的移动设备中,包括:
第一确定模块41,用于确定移动设备的当前运动速度;
第二确定模块42,用于根据当前运动速度,确定当前景深计算帧率;
判断模块43,用于根据景深计算帧率,判断当前预览图像是否为目标图像;
第一获取模块44,用于在当前预览图像为目标图像时,获取目标图像的背景区域的深度信息;
第一处理模块45,用于根据深度信息,对当前预览图像进行虚化处理。
具体的,本申请实施例提供的图像虚化处理装置,可以执行本申请实施例提供的图像虚化处理方法,该装置可以被配置在包括摄像组件的移动设备中,以对采集的图像进行虚化处理。其中,移动设备的类型很多,可以为手机、平板电脑、笔记本电脑等。图4以移动设备为手机进行示例。
在本申请的一个实施例中,该装置,还包括:
第二处理模块,用于在当前预览图像不是目标图像时,根据当前预览图像之前的目标图像的深度信息,对当前预览图像进行虚化处理;
或者,第三处理模块,用于在当前预览图像不是目标图像时,根据当前运动速度,确定第一虚化等级,并根据第一虚化等级,对当前预览图像进行虚化处理。
在本申请的另一个实施例中,该装置,还包括:
第三确定模块,用于根据移动设备的景深计算处理速度,确定初始景深计算帧率;
上述第二确定模块42,具体用于:
根据当前运动速度,对初始景深计算帧率进行调整,以得到当前景深计算帧率。
在本申请的另一个实施例中,上述第二确定模块42,还用于:
判断移动设备的当前运动速度是否大于阈值;
若是,则增加初始景深计算帧率;
否则,将初始景深计算帧率作为当前景深计算帧率。
在本申请的另一个实施例中,目标图像中可以包括人像,相应的,该装置,还可以包括:
第四确定模块,用于对目标图像进行人脸识别,确定目标图像中包括的人脸区域;
第二获取模块,用于获取人脸区域的深度信息;
第五确定模块,用于根据移动设备当前的姿态及人脸区域的深度信息,确定人像区域;
第六确定模块,用于根据人像区域,对目标图像进行区域分割,确定背景区域。
在本申请的另一个实施例中,该装置,还可以包括:
第七确定模块,用于根据当前运动速度,确定第一虚化等级;
第八确定模块,用于根据目标图像的背景区域的深度信息,确定第二虚化等级;
第四处理模块,用于根据第二虚化等级与第一虚化等级中虚化程度较低的虚化等级,对预览图像进行虚化处理。
需要说明的是,前述对方法实施例的描述,也适用于本申请实施例的装置,其实现原理类似,在此不再赘述。
上述图像虚化处理装置中各个模块的划分仅用于举例说明,在其他实施例中,可将图像虚化处理装置按照需要划分为不同的模块,以完成上述图像虚化处理装置的全部或部分功能。
综上所述,本申请实施例的图像虚化处理装置,通过根据移动设备的当前运动速度后,确定当前景深计算帧率,并在根据景深计算帧率,确定当前预览图像为目标图像时,根据目标图像的背景区域的深度信息,对当前预览图像进行虚化处理,提高了虚化效果跟随性,改善了用户体验。
为了实现上述实施例,本申请还提出了一种移动设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时,实现如第一方面所述的图像虚化处理方法。
上述移动设备中还可以包括图像处理电路,图像处理电路可以利用硬件和/或软件组件实现,可包括定义isp(imagesignalprocessing,图像信号处理)管线的各种处理单元。
图5为一个实施例中图像处理电路的示意图。如图5所示,为便于说明,仅示出与本申请实施例相关的图像处理技术的各个方面。
如图5所示,图像处理电路包括isp处理器540和控制逻辑器550。摄像组件510捕捉的图像数据首先由isp处理器540处理,isp处理器540对图像数据进行分析以捕捉可用于确定和/或摄像组件510的一个或多个控制参数的图像统计信息。摄像组件510可包括具有一个或多个透镜512和图像传感器514的照相机。图像传感器514可包括色彩滤镜阵列(如bayer滤镜),图像传感器514可获取用图像传感器514的每个成像像素捕捉的光强度和波长信息,并提供可由isp处理器540处理的一组原始图像数据。传感器520可基于传感器520接口类型把原始图像数据提供给isp处理器540。传感器520接口可以利用smia(standardmobileimagingarchitecture,标准移动成像架构)接口、其它串行或并行照相机接口或上述接口的组合。
isp处理器540按多种格式逐个像素地处理原始图像数据。例如,每个图像像素可具有8、10、12或14比特的位深度,isp处理器540可对原始图像数据进行一个或多个图像处理操作、收集关于图像数据的统计信息。其中,图像处理操作可按相同或不同的位深度精度进行。
isp处理器540还可从图像存储器530接收像素数据。例如,从传感器520接口将原始像素数据发送给图像存储器530,图像存储器530中的原始像素数据再提供给isp处理器540以供处理。图像存储器530可为存储器装置的一部分、存储设备、或电子设备内的独立的专用存储器,并可包括dma(directmemoryaccess,直接直接存储器存取)特征。
当接收到来自传感器520接口或来自图像存储器530的原始图像数据时,isp处理器540可进行一个或多个图像处理操作,如时域滤波。处理后的图像数据可发送给图像存储器530,以便在被显示之前进行另外的处理。isp处理器540从图像存储器530接收处理数据,并对所述处理数据进行原始域中以及rgb和ycbcr颜色空间中的图像数据处理。处理后的图像数据可输出给显示器570,以供用户观看和/或由图形引擎或gpu(graphicsprocessingunit,图形处理器)进一步处理。此外,isp处理器540的输出还可发送给图像存储器530,且显示器570可从图像存储器530读取图像数据。在一个实施例中,图像存储器530可被配置为实现一个或多个帧缓冲器。此外,isp处理器540的输出可发送给编码器/解码器560,以便编码/解码图像数据。编码的图像数据可被保存,并在显示于显示器570设备上之前解压缩。编码器/解码器560可由cpu或gpu或协处理器实现。
isp处理器540确定的统计数据可发送给控制逻辑器550单元。例如,统计数据可包括自动曝光、自动白平衡、自动聚焦、闪烁检测、黑电平补偿、透镜512阴影校正等图像传感器514统计信息。控制逻辑器550可包括执行一个或多个例程(如固件)的处理器和/或微控制器,一个或多个例程可根据接收的统计数据,确定摄像组件510的控制参数以及的控制参数。例如,控制参数可包括传感器520控制参数(例如增益、曝光控制的积分时间)、照相机闪光控制参数、透镜512控制参数(例如聚焦或变焦用焦距)、或这些参数的组合。isp控制参数可包括用于自动白平衡和颜色调整(例如,在rgb处理期间)的增益水平和色彩校正矩阵,以及透镜512阴影校正参数。
以下为运用图5中图像处理技术实现图像虚化处理方法的步骤:
确定所述移动设备的当前运动速度;
根据所述当前运动速度,确定当前景深计算帧率;
根据所述景深计算帧率,判断当前预览图像是否为目标图像;
若是,则获取所述目标图像的背景区域的深度信息;
根据所述深度信息,对所述当前预览图像进行虚化处理。
为了实现上述实施例,本申请还提出一种计算机可读存储介质,当所述存储介质中的指令由处理器被执行时,使得能够执行如上述实施例描述的图像虚化处理方法。
在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现定制逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。
应当理解,本申请的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。如,如果用硬件来实现和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。
本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。
此外,在本申请各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。
上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施例进行变化、修改、替换和变型。