一种图像处理方法、装置、移动终端及存储介质
技术领域
本发明涉及计算机技术领域,更具体地,涉及一种图像处理方法、装置、移动终端及存储介质。
背景技术
随着移动终端运算处理能力的不断提升,特别是图像处理能力的提升,出现了各种基于图像处理技术的应用功能,例如可实现不同渲染风格的滤镜功能。
其中,水彩画风格的滤镜功能能够将原始图像处理为水彩画风格的图像。
现有的水彩画渲染的实现方式如下:
对待处理的图像进行分割,进而通过形态学的方式对分割后的图像进行抽象处理;对抽象处理得到的结果进行边缘加深以及水彩纹理渲染,最终得到水彩画风格的图像。
上述处理方式中,首先需要进行图像分割,进而需要利用形态学方式进行图像抽象处理,其运算复杂度较高,占用移动终端的大量运算资源,且运算复杂度高将导致图像处理时间较长,难以满足移动终端的实时性要求。
发明内容
鉴于现有水彩纹理渲染过程中运算复杂度高导致的问题,本发明提出了一种图像处理方法、装置、移动终端及存储介质,其简化了图像的抽象处理过程,从而降低了运算复杂度。
第一方面,本发明实施例提供一种图像处理方法,包括:
对图像进行滤波,得到该图像的滤波图,并根据滤波图生成该图像的方差图;
利用方差图与第一图像抽象参数之间的第一函数关系确定第一图像抽象参数的取值,第一函数关系为一次函数与倒数函数的复合函数关系;
利用滤波图与第二图像抽象参数之间的第二函数关系确定第二图像抽象参数的取值,第二函数关系为一次函数关系,所述第二函数关系中包括常量,所述常量的取值为所述第一图像抽象参数的取值;
利用上述图像与抽象图像之间的第三函数关系,确定图像的抽象图像,第三函数关系为一次函数关系,所述第三函数关系中包括斜率和平移量,所述斜率的取值为所述第一图像抽象参数的取值所述平移量的取值为所述第二图像抽象参数的取值;
对抽象图像进行边缘深化处理,得到边缘深化图像;
对边缘深化图像进行水彩纹理渲染,得到图像对应的水彩渲染图。
本发明实施例提供的方法,不需要对图像进行分割,也不需要通过生态学的方式对图像进行抽象处理,而是通过简单的函数运算实现图像的抽象处理,抽象处理的函数运算过程中所使用的第一图像抽象参数和第二图像抽象参数分别是对图像的滤波图和方差图进行简单函数运算得到的,整个抽象处理过程较之生态学方式,大大降低了运算复杂度,也就减少了对移动终端的计算资源的占用,且缩短了图像处理的时间。
上述对图像进行滤波,得到该图像的滤波图,并根据滤波图生成该图像的方差图,其实现方式有多种,下面例举其中一种实现方式:对该图像进行滤波,得到该图像的滤波图,并对滤波图的每个像素的像素值均进行平方运算,得到第一滤波平方图;对该图像的每个像素的像素值均进行平方运算,得到该图像的平方图,并对平方图进行滤波,得到第二滤波平方图;根据第一滤波平方图和第二滤波平方图生成图像的方差图。
本发明实施例提供了一种简化的方差图生成方式,其较之传统的方差图生成方式的运算复杂度低,且效率更高。若并行进行第一滤波平方图和第二滤波平方图的运算,还可以进一步提高处理效率。
本发明实施例中,可以采用多种滤波方式对图像进行滤波,优选的,采用均值滤波的方式对图像和/或上述平方图进行滤波。
发明人在实现本发明的过程中发现,采用均值滤波,相较于其他滤波方式,最终获得的水彩渲染图的水彩渲染效果更加逼真。另外,均值滤波也是一种简单、快速的滤波方式。
在上述任意方法实施例的基础上,上述对抽象图像进行边缘深化处理,得到边缘深化图像的实现方式有多种,下面例举其中一种实现方式:通过色彩空间转换,将抽象图像转换到基于亮度的目标色彩空间,转换到目标色彩空间的抽象图像的像素的像素值包括亮度值;根据预先确定的映射关系,分别为抽象图像的每个像素的亮度值确定映射值,并将抽象图像的每个像素的亮度值修改为对应的映射值,得到亮度均衡图像,映射值均为预先确定的亮度区间中的取值;通过色彩空间转换,将亮度均衡图像转换到原色彩空间;对亮度均衡图像进行边缘滤波,得到边缘图像;利用边缘图像对亮度均衡图像进行边缘加深处理,得到边缘深化图像。
其中,目标色彩空间可以但不仅限于是LAB色彩空间。
发明人在实现本发明的过程中发现,图像的亮度会影响最终的纹理渲染效果。本发明实施例提供的方法,在边缘深化的过程中,通过色彩空间转换,在目标色彩空间对抽象图像的亮度进行调整,将抽象图像的亮度映射到预先确定的亮度区间,避免原抽象图像中存在亮度过亮或过暗的区域,影响最终的纹理渲染效果。
在上述任意方法实施例中,上述对边缘深化图像进行水彩纹理渲染,得到上述图像对应的水彩渲染图的实现方式有多种,下面例举其中一种实现方式:生成累积高斯噪声纹理和柏林噪声纹理;获取用于控制噪声呈现程度的噪声叠加参数值;利用噪声叠加参数值将累积高斯噪声纹理和柏林噪声纹理叠加到边缘深化图像,得到水彩渲染图;获取亮度调整参数值,利用亮度调整参数值调高水彩渲染图的亮度;获取饱和度调整参数值,利用饱和度调整参数值调整水彩渲染图的饱和度。
本发明实施例中,为了进一步优化最终的水彩渲染效果,可以对水彩渲染图的亮度及饱和度进行调整。
其中,亮度调整参数和饱和度调整参数均是可调参数,其取值可以是默认值,该默认值由实现上述渲染方法的应用程序的开发者提供,具体可以但不仅限于为经验值、仿真值等等。其取值还可以根据用户的指令进行调整。
在此基础上,上述获取亮度调整参数值,利用亮度调整参数值调高水彩渲染图的亮度的实现方式有多种,其中一种实现方式为:获取亮度调整参数值以及本终端当前屏幕亮度值;利用本终端当前屏幕亮度值修正亮度调整参数值;利用修正后的亮度调整参数值调高水彩渲染图的亮度。
进一步的,上述获取饱和度调整参数值,利用饱和度调整参数值调整水彩渲染图的饱和度的一种可选的实现方式为:获取饱和度调整参数值;根据预先确定的对应关系获取本终端当前屏幕亮度值对应的饱和度修正值;利用饱和度修正值修正饱和度调整参数值;利用修正后的饱和度调整参数值调整水彩渲染图的饱和度。
在另一种实现方式中,还可以获取本终端当前屏幕亮度值,并利用本终端当前屏幕亮度值再次调整水彩渲染图的亮度,并分别缓存两次调整亮度后的水彩渲染图,再次调整亮度的水彩渲染图用于在本终端屏幕实时显示。
在此基础上,还可以根据预先确定的对应关系获取本终端当前屏幕亮度值对应的饱和度修正值,并利用饱和度修正值再次调整水彩渲染图的饱和度,并分别缓存两次调整亮度后的水彩渲染图,再次调整饱和度的水彩渲染图用于在本终端屏幕实时显示。
在不同终端屏幕亮度下,通过终端屏幕显示的图像的视觉亮度和视觉饱和度会有所不同。为了在不同的终端屏幕亮度下显示给用户的图像呈现出相对稳定的视觉亮度和视觉饱和度,可以利用终端屏幕亮度对待显示的图像的亮度和饱和度进行调整。第二方面,本发明实施例提供一种移动终端,包括处理器和存储器;存储器用于存储执行上述任意实施例提供的方法的程序;处理器被配置为执行存储器中存储的程序。
本发明实施例提供的移动终端,不需要对图像进行分割,也不需要通过生态学的方式对图像进行抽象处理,而是通过简单的函数运算实现图像的抽象处理,抽象处理的函数运算过程中所使用的第一图像抽象参数和第二图像抽象参数分别是对图像的滤波图和方差图进行简单函数运算得到的,整个抽象处理过程较之生态学方式,大大降低了运算复杂度,也就减少了对移动终端的计算资源的占用,且缩短了图像处理的时间。
第三方面,本发明实施例提供一种图像处理装置,包括:
抽象处理模块,用于对图像进行滤波,得到该图像的滤波图,并根据滤波图生成该图像的方差图;利用方差图与第一图像抽象参数之间的第一函数关系确定第一图像抽象参数值,第一函数关系为一次函数与倒数函数的复合函数关系;利用滤波图与第二图像抽象参数之间的第二函数关系确定第二图像抽象参数值,第二函数关系为一次函数关系,其中包括常量,该常量的取值为上述第一图像抽象参数值;利用图像与抽象图像之间的第三函数关系,确定图像的抽象图像,第三函数关系为一次函数关系,其中包括斜率和平移量,该斜率的取值为上述第一图像抽象参数值,该平移量的取值为上述第二图像抽象参数值;
边缘深化处理模块,用于对抽象图像进行边缘深化处理,得到边缘深化图像;
纹理渲染处理模块,用于对边缘深化图像进行水彩纹理渲染,得到上述图像对应的水彩渲染图。
本发明实施例提供的装置,不需要对图像进行分割,也不需要通过生态学的方式对图像进行抽象处理,而是通过简单的函数运算实现图像的抽象处理,抽象处理的函数运算过程中所使用的第一图像抽象参数和第二图像抽象参数分别是对图像的滤波图和方差图进行简单函数运算得到的,整个抽象处理过程较之生态学方式,大大降低了运算复杂度,也就减少了对移动终端的计算资源的占用,且缩短了图像处理的时间。
上述抽象处理模块对图像进行滤波,得到该图像的滤波图,并根据滤波图生成该图像的方差图,其实现方式有多种,下面例举其中一种实现方式:对该图像进行滤波,得到该图像的滤波图,并对滤波图的每个像素的像素值均进行平方运算,得到第一滤波平方图;对该图像的每个像素的像素值均进行平方运算,得到该图像的平方图,并对平方图进行滤波,得到第二滤波平方图;根据第一滤波平方图和第二滤波平方图生成图像的方差图。
本发明实施例提供了一种简化的方差图生成方式,其较之传统的方差图生成方式的运算复杂度低,且效率更高。若并行进行第一滤波平方图和第二滤波平方图的运算,还可以进一步提高处理效率。
本发明实施例中,可以采用多种滤波方式对图像进行滤波,优选的,采用均值滤波的方式对图像和/或上述平方图进行滤波。
发明人在实现本发明的过程中发现,采用均值滤波,相较于其他滤波方式,最终获得的水彩渲染图的水彩渲染效果更加逼真。另外,均值滤波也是一种简单、快速的滤波方式。
在上述任意装置实施例的基础上,上述边缘深化处理模块的实现方式有多种,下面例举其中一种实现方式:通过色彩空间转换,将抽象图像转换到基于亮度的目标色彩空间,转换到目标色彩空间的抽象图像的像素的像素值包括亮度值;根据预先确定的映射关系,分别为抽象图像的每个像素的亮度值确定映射值,并将抽象图像的每个像素的亮度值修改为对应的映射值,得到亮度均衡图像,映射值均为预先确定的亮度区间中的取值;通过色彩空间转换,将亮度均衡图像转换到原色彩空间;对亮度均衡图像进行边缘滤波,得到边缘图像;利用边缘图像对亮度均衡图像进行边缘加深处理,得到边缘深化图像。
其中,目标色彩空间可以但不仅限于是LAB色彩空间。
发明人在实现本发明的过程中发现,图像的亮度会影响最终的纹理渲染效果。本发明实施例提供的装置,在边缘深化的过程中,通过色彩空间转换,在目标色彩空间对抽象图像的亮度进行调整,将抽象图像的亮度映射到预先确定的亮度区间,避免原抽象图像中存在亮度过亮或过暗的区域,影响最终的纹理渲染效果。
在上述任意装置实施例中,上述纹理渲染处理模块的实现方式有多种,下面例举其中一种实现方式:生成累积高斯噪声纹理和柏林噪声纹理;获取用于控制噪声呈现程度的噪声叠加参数值;利用噪声叠加参数值将累积高斯噪声纹理和柏林噪声纹理叠加到边缘深化图像,得到水彩渲染图;获取亮度调整参数值,利用亮度调整参数值调高水彩渲染图的亮度;获取饱和度调整参数值,利用饱和度调整参数值调整水彩渲染图的饱和度。
本发明实施例中,为了进一步优化最终的水彩渲染效果,对水彩渲染图的亮度及饱和度进行调整。
其中,亮度调整参数和饱和度调整参数均是可调参数,其取值可以是默认值,该默认值由实现上述渲染方法的应用程序的开发者提供,具体可以但不仅限于为经验值、仿真值等等。其取值还可以根据用户的指令进行调整。
在此基础上,上述获取亮度调整参数值,利用亮度调整参数值调高水彩渲染图的亮度的实现方式有多种,其中一种实现方式为:获取亮度调整参数值以及本终端当前屏幕亮度值;利用本终端当前屏幕亮度值修正亮度调整参数值;利用修正后的亮度调整参数值调高水彩渲染图的亮度。
进一步的,上述获取饱和度调整参数值,利用饱和度调整参数值调整水彩渲染图的饱和度的一种可选的实现方式为:获取饱和度调整参数值;根据预先确定的对应关系获取本终端当前屏幕亮度值对应的饱和度修正值;利用饱和度修正值修正饱和度调整参数值;利用修正后的饱和度调整参数值调整水彩渲染图的饱和度。
在另一种实现方式中,纹理渲染处理模块还可以获取本终端当前屏幕亮度值,并利用本终端当前屏幕亮度值再次调整水彩渲染图的亮度,并分别缓存两次调整亮度后的水彩渲染图,再次调整亮度的水彩渲染图用于在本终端屏幕实时显示。
在此基础上,纹理渲染处理模块还可以根据预先确定的对应关系获取本终端当前屏幕亮度值对应的饱和度修正值,并利用饱和度修正值再次调整水彩渲染图的饱和度,并分别缓存两次调整亮度后的水彩渲染图,再次调整饱和度的水彩渲染图用于在本终端屏幕实时显示。
在不同终端屏幕亮度下,通过终端屏幕显示的图像的视觉亮度和视觉饱和度会有所不同。为了在不同的终端屏幕亮度下显示给用户的图像呈现出相对稳定的视觉亮度和视觉饱和度,可以利用终端屏幕亮度对待显示的图像的亮度和饱和度进行调整。
第四方面,本发明实施例提供一种计算机可读存储介质,该计算机可读存储介质上存储有执行上述任意实施例提供的方法的程序。
执行本发明实施例计算机可读存储介质中存储的程序,不需要对图像进行分割,也不需要通过生态学的方式对图像进行抽象处理,而是通过简单的函数运算实现图像的抽象处理,抽象处理的函数运算过程中所使用的第一图像抽象参数和第二图像抽象参数分别是对图像的滤波图和方差图进行简单函数运算得到的,整个抽象处理过程较之生态学方式,大大降低了运算复杂度,也就减少了对移动终端的计算资源的占用,且缩短了图像处理的时间。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示出了根据本发明一个实施例的图像处理方法流程图;
图2示出了根据本发明另一个实施例的图像处理方法流程图;
图3示出了根据本发明一个实施例的图像处理装置框图;
图4示出了根据本发明一个实施例的移动终端结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
在本发明的说明书和权利要求书及上述附图中的描述的一些流程中,可以包括更多或更少的操作,并且这些操作可以按顺序执行或并行执行。
本发明实施例提供一种图像处理方法,用于实现水彩纹理渲染功能。该方法适用于在移动终端上实现,具体由移动终端上安装的实现水彩纹理渲染功能的应用程序来执行。其中,移动终端可以但不仅限于是智能手机、平板电脑、智能穿戴设备等等。
本发明实施例提供的方法尤其适用于移动终端实时渲染并显示的应用场景,既可以应用在静态图像展示场景,也可应用在动态图像展示场景。作为举例而非限定,若应用在静态图像展示场景,响应终端用户的触发而启动图像处理应用程序(如手机修图软件),确定待处理的目标图像,并执行本发明实施例提供的方法进行水彩纹理渲染,并在移动终端的屏幕上实时显示水彩渲染图。若应用中动态图像展示场景:在一个具体场景中,响应终端用户的触发而启动视频处理应用程序(如手机视频编辑软件),确定待处理的目标视频,并执行本发明实施例提供的方法逐帧对目标视频进行水彩纹理渲染,在移动终端屏幕上逐帧实时显示每个视频帧对应的水彩渲染图,即预览水彩渲染效果的视频;在另一个具体场景中,响应终端用户的触发而启动拍照应用程序,并打开摄像头,执行本发明实施例提供的方法对摄像头实时捕捉到的图像依次进行处理,并按顺序实时显示每帧水彩渲染图像。
如图1所示,本发明实施例提供的图像处理方法包括如下操作:
步骤101、对图像进行滤波,得到该图像的滤波图,并根据滤波图生成该图像的方差图。
本发明实施例不对滤波方式进行限定。优选的,采用均值滤波对图像进行滤波处理。发明人在实现本发明的过程中发现,采用均值滤波,相较于其他滤波方式,最终获得的水彩渲染图的水彩渲染效果更加逼真。另外,均值滤波也是一种简单、快速的滤波方式。
步骤102、利用方差图与第一图像抽象参数之间的第一函数关系确定第一图像抽象参数值,第一函数关系为一次函数与倒数函数的复合函数关系。
本发明实施例中,参数值为对应参数的取值。例如,第一图像抽象参数值是第一图像抽象参数的取值。
本发明实施例不对第一函数关系的具体表达形式进行限定,实际应用中,可以根据需要确定第一函数关系的具体表达公式。作为举例而非限定,方差图IF与第一图像抽象参数a之间的第一函数关系可以通过如下公式1表示:
a=IF/(IF+λ) 公式1
其中,λ为经验值或设定值。
步骤103、利用滤波图与第二图像抽象参数之间的第二函数关系确定第二图像抽象参数值,第二函数关系为一次函数关系,第二函数关系中包括常量,该常量的取值为第一图像抽象参数值。
本发明实施例不对第二函数关系的具体表达形式进行限定,实际应用中,可以根据需要确定第二函数关系的具体表达公式。作为举例而非限定,滤波图IL与第二图像抽象参数b之间的第二函数关系可以通过如下公式2表示:
b=(1-a)IL 公式2
上述公式1及公式2中,IF和IL是各自的像素值构成的矩阵,也就是说,针对每个像素,均有各自对应的第一图像抽象参数值和第二图像抽象参数值,每个像素对应的第一图像抽象参数值和/或第二图像抽象参数值可能不同,但其计算公式相同。
步骤104、利用上述图像与抽象图像之间的第三函数关系,确定图像的抽象图像,第三函数关系为一次函数关系,第三函数关系包括斜率和平移量,该斜率的取值为第一图像抽象参数值,该平移参数的取值为第二图像抽象参数值。
本发明实施例不对第三函数关系的具体表达形式进行限定,实际应用中,可以根据需要确定第三函数关系的具体表达公式。作为举例而非限定,图像I与抽象图像Iabs之间的第三函数关系可以通过如下公式3表示:
Iabs=aI+b 公式3
上述步骤101至步骤104为图像处理的导向滤波阶段,经过导向滤波阶段得到图像对应的抽象图像。
步骤105、对抽象图像进行边缘深化处理,得到边缘深化图像。
边缘深化的目的在于加深抽象图像中各个图形的边界,以便后续进行水彩纹理渲染时,在各个图形边界有较为明显的水彩效果,提高水彩渲染的效果。
步骤106、对边缘深化图像进行水彩纹理渲染,得到图像对应的水彩渲染图。
本发明实施例提供的方法,不需要对图像进行分割,也不需要通过生态学的方式对图像进行抽象处理,而是通过简单的函数运算实现图像的抽象处理,抽象处理的函数运算过程中所使用的第一图像抽象参数和第二图像抽象参数分别是对图像的滤波图和方差图进行简单函数运算得到的,整个抽象处理过程较之生态学方式,大大降低了运算复杂度,也就减少了对移动终端的计算资源的占用,且缩短了图像处理的时间。
应当指出的是,为了进一步简化运算复杂度,本发明实施例中,对各个图像的像素值进行归一化处理,使得每个图像的每个像素点的每个通道的像素值均在0~1的取值范围内。
上述对图像进行滤波,得到该图像的滤波图,并可采用现有任意生成方差图的实现方式根据滤波图生成该图像的方差图。本发明实施例提供一种简化的方差图生成方式:对该图像I进行滤波,得到该图像的滤波图IL,并对滤波图IL的每个像素均进行平方运算,得到第一滤波平方图ILP1;对该图像I的每个像素均进行平方运算,得到该图像的平方图IP,并对平方图IP进行滤波,得到第二滤波平方图ILP2;根据第一滤波平方图ILP1和第二滤波平方图ILP2生成图像的方差图IF。
作为举例而非限定,方差图IF的表达式为如下公式4:
IF=ILP2-ILP2 公式4
应当指出的是,生成第一滤波平方图的过程与生成第二滤波平方图的过程没有时序上的限定,既可以顺序执行,也可以并行执行。
其中,可采用多种滤波方式对平方图进行滤波,优选的,采用均值滤波的方式对平方图进行滤波。
更进一步地,为达到较好的滤波效果,预先确定图像的分辨率与滤波核大小的对应关系,可以根据图像的分辨率选择对应的滤波核进行滤波处理。
本发明实施例提供了一种简化的方差图生成方式,其较之传统的方差图生成方式的运算复杂度低,且效率更高。若并行进行第一滤波平方图和第二滤波平方图的运算,还可以进一步提高处理效率。
在上述任意方法实施例的基础上,可以通过现有的边缘滤波方式对抽象图像进行边缘深化处理。优选的,本发明实施例中,通过色彩空间转换,将抽象图像转换到基于亮度的目标色彩空间,转换到目标色彩空间的抽象图像的像素的像素值包括亮度值;根据预先确定的映射关系,分别为抽象图像的每个像素的亮度值确定映射值,并将抽象图像的每个像素的亮度值修改为对应的映射值,得到亮度均衡图像,映射值均为预先确定的亮度区间中的取值;通过色彩空间转换,将亮度均衡图像转换到原色彩空间;对亮度均衡图像进行边缘滤波,得到边缘图像;利用边缘图像对亮度均衡图像进行边缘加深处理,得到边缘深化图像。
例如,预先确定三个亮度区间,分别为[0.aa,0.bb)、[0.bb,0.cc)、[0.cc,0.dd),将原始的亮度范围也划分为三个亮度范围,分别为[0,0.AA)、[0.AA,0.BB)、[0.BB,1),分别确定每个亮度范围与对应的亮度空间的映射关系。其中,每个亮度区间以及亮度范围的边界值可以根据实际需要确定,本发明实施例不做限定。映射关系可以但不仅限于通过拟合、仿真等方式确定,该映射关系可以是线性映射关系,也可以是非线性映射关系,本发明实施例对比不做限定,实际应用中根据需要确定。
应当指出的是,在实际应用中,也可以划分更多或更少的亮度区间。
其中,目标色彩空间可以但不仅限于是LAB色彩空间。
发明人在实现本发明的过程中发现,图像的亮度会影响最终的纹理渲染效果。本发明实施例提供的方法,在边缘深化的过程中,通过色彩空间转换,在目标色彩空间对抽象图像的亮度进行调整,将抽象图像的亮度映射到预先确定的亮度区间,避免原抽象图像中存在亮度过亮或过暗的区域,影响最终的纹理渲染效果。
在上述任意方法实施例中,上述对边缘深化图像进行水彩纹理渲染,得到上述图像对应的水彩渲染图的实现方式有多种,下面例举其中一种实现方式:生成累积高斯噪声纹理和柏林噪声纹理;获取用于控制噪声呈现程度的噪声叠加参数值;利用噪声叠加参数值将累积高斯噪声纹理和柏林噪声纹理叠加到边缘深化图像,得到水彩渲染图;获取亮度调整参数值,利用亮度调整参数值调高水彩渲染图的亮度;获取饱和度调整参数值,利用饱和度调整参数值调整水彩渲染图的饱和度。
实际应用中,也可以选择其他噪声生成噪声纹理,本发明实施例对此不做限定。
实际应用中,可采用现有多种叠加方式进行纹理叠加,本发明实施例对此不做限定。
其中,可以在得到水彩渲染图后进行实时显示,以便用户直观了解到亮度调整以及饱和度调整前后的效果变化。更进一步地,还可以分别缓存边缘深化处理后得到的水彩渲染图,亮度调整后的水彩渲染图,以及饱和度调整后的水彩渲染图,以便在用户进行回退操作时,快速从缓存中调用对应的水彩渲染图进行显示。例如,用户选择回退到亮度调整后、饱和度调整前的状态,则调用亮度调整后的水彩渲染图进行显示。
本发明实施例中,亮度调整和饱和度调整是顺序进行的,既可以先进行亮度调整,在此基础上再进行饱和度调整,也可以先进行饱和度调整,在此基础上再进行亮度调整。
本发明实施例中,为了进一步优化最终的水彩渲染效果,对水彩渲染图的亮度及饱和度进行调整。
其中,亮度调整参数和饱和度调整参数均是可调参数,其取值可以是默认值,该默认值由实现上述渲染方法的应用程序的开发者提供,具体可以但不仅限于为经验值、仿真值等等。其取值还可以根据用户的指令进行调整。
在此基础上,上述获取亮度调整参数值,利用亮度调整参数值调高水彩渲染图的亮度的实现方式有多种,其中一种实现方式为:获取亮度调整参数值以及本终端当前屏幕亮度值;利用本终端当前屏幕亮度值修正亮度调整参数值;利用修正后的亮度调整参数值调高水彩渲染图的亮度。
进一步的,上述获取饱和度调整参数值,利用饱和度调整参数值调整水彩渲染图的饱和度的一种可选的实现方式为:获取饱和度调整参数值;根据预先确定的对应关系获取本终端当前屏幕亮度值对应的饱和度修正值;利用饱和度修正值修正饱和度调整参数值;利用修正后的饱和度调整参数值调整水彩渲染图的饱和度。
其中,终端当前屏幕亮度值可以通过读取系统参数获得。
其中,预先建立有屏幕亮度值与亮度修正值之间的函数关系,该函数关系可以但不仅限于通过仿真、拟合等方式确定,利用该函数关系可以得到终端当前屏幕亮度值对应的第一亮度修正值,利用该第一亮度修正值对亮度调整参数值进行修正。其中,第一亮度修正值可以作为亮度调整参数值的加权值,以加权的方式修正;也可以将第一亮度修正值与亮度调整参数值进行和运算,通过和运算进行修正。
其中,预先建立有屏幕亮度值与饱和度修正值的函数关系(即上述对应关系),该函数关系可以但不仅限于通过仿真、拟合等方式确定,利用该函数关系可以得到终端当前屏幕亮度值对应的饱和度修正值,利用该饱和度修正值对饱和度调整参数值进行修正。其中,饱和度修正值可以作为饱和度调整参数值的加权值,以加权的方式修正;也可以将饱和度修正值与饱和度调整参数值进行和运算,通过和运算进行修正。
在另一种实现方式中,还可以获取本终端当前屏幕亮度值,并利用本终端当前屏幕亮度值再次调整水彩渲染图的亮度,并分别缓存两次调整亮度后的水彩渲染图,再次调整亮度的水彩渲染图用于在本终端屏幕实时显示。
在此基础上,还可以根据预先确定的对应关系获取本终端当前屏幕亮度值对应的饱和度修正值,并利用饱和度修正值再次调整水彩渲染图的饱和度,并分别缓存两次调整亮度后的水彩渲染图,再次调整饱和度的水彩渲染图用于在本终端屏幕实时显示。
其中,利用终端当前屏幕亮度值调整水彩渲染图的亮度的实现方式可以是:预先建立屏幕亮度值与第二亮度调整参数值之间的函数关系,该函数关系可以通过拟合、仿真等方式确定,根据该函数关系确定第二亮度调整参数值,利用该第二亮度调整参数值对水彩渲染图进行再次渲染。饱和度的调整方式可以参照前述实现方式,此处不再赘述。
在一个具体实施例中,通过纹理叠加得到的水彩渲染效果图称为第一水彩渲染效果图,利用获取的亮度调整参数值对第一水彩渲染效果图进行提亮操作,得到第二水彩渲染效果图,利用获取的饱和度调整参数值对第二水彩渲染效果图进行饱和度调整,得到第三水彩渲染效果图,保存第三水彩渲染效果图,利用终端当前屏幕亮度值对第三水彩效果渲染图进行亮度及饱和度调整,得到第四水彩渲染效果图,显示该第四水彩渲染效果图。
其中,保存第三水彩渲染效果图,以便下一次用户希望浏览水彩渲染图时,调用第三水彩渲染效果图,再次利用终端当前屏幕亮度值进行亮度和饱和度的调整并显示。
在不同终端屏幕亮度下,通过终端屏幕显示的图像的视觉亮度和视觉饱和度会有所不同。为了在不同的终端屏幕亮度下显示给用户的图像呈现出相对稳定的视觉亮度和视觉饱和度,可以利用终端屏幕亮度对待显示的图像的亮度和饱和度进行调整。
本发明实施例中,对水彩渲染图进行亮度调整,既可以在上述目标色彩空间(如LAB色彩空间)进行,也可以在RGB色彩空间进行。若在RGB色彩空间对水彩渲染图进行亮度调整,具体是在RGB三通道分别调整像素值。相应的,上述亮度调整参数值可以包括各通道分别对应的亮度调整参数值,也可以是各通道对应相同的亮度调整参数值。
本发明实施例中,对水彩渲染图进行饱和度调整,既可以在HSV色彩空间进行,也可以在RGB色彩空间进行。若在RGB色彩空间进行亮度调整,具体可以是获取水彩渲染图对应的灰度图,利用灰度图和饱和度调整参数对水彩渲染图的各通道的像素值进行调整,从而达到调整饱和度的目的。相应的,上述饱和度调整参数值可以包括各通道分别对应的饱和度调整参数,也可以是各通道对应相同的饱和度调整参数值。
下面结合具体应用场景对本发明实施例提供的方法进行详细说明。
在该应用场景中,用户点击移动终端上的图像处理应用程序,移动终端检测到该图像处理应用程序被点击,启动该图像处理应用程序;用户进而点击图像处理应用程序的显示界面上的目标图像选择按钮,图像处理应用程序检测到该选择按钮被点击,调用移动终端的图像存储文件夹,读取其中的图像在本应用程序的界面进行显示;用户选择其中一个图像作为目标图像,图像处理应用程序检测到被选择的目标图像;用户点击水彩画渲染功能按钮,图像处理应用程序检测到水彩渲染功能按钮被点击,如图2所示,执行如下操作:
第一阶段:通过导向滤波得到图像抽象结果
步骤201、对目标图像I1进行均值滤波得到I2,并对I2逐像素求平方得到I3。
本实施例中,根据目标图像的分辨率选择对应的滤波核进行均值滤波。
步骤202、对目标图像I1逐像素求平方得到I4,并对I4进行均值滤波得到I5。
步骤203、获取图像方差I6=I5-I3。
步骤204、利用目标图像I1的图像方差I6确定第一图像抽象参数值a,利用目标图像I1的均值滤波图I2确定第二图像抽象参数值b。
步骤205、利用第一图像抽象参数值和第二图像抽象参数值获取目标图像I1的抽象图像:
抽象图像Iabs=aI1+b
第二阶段:进行边缘深化处理
步骤206、将抽象图像从RGB转为LAB色彩空间IabsLAB
步骤207、使用事先设定的映射关系对L通道进行区间映射,得到Icel。
本实施例的映射方式为:
[0,0.AA)->[0.aa,0.bb),[0.AA,0.BB)->[0.bb,0.cc),[0.BB,1.0)->[0.cc,0.dd)
其中,0>0.AA>0.BB>1;0.aa>0.bb>0.cc>0.dd。
本发明实施例中,通过对图像的亮度进行调整,使得图像亮度集中在预设亮度区间,避免出现过亮或过暗的情况,以确保后续纹理处理的效果。
完成步骤207,再次进行色彩空间转换,将亮度均衡图像转换到RGB色彩空间。
步骤208、对亮度均衡图像Icel使用sobel(边缘)滤波得到边缘图像Iedge。
步骤209、利用边缘图像对亮度均衡图像进行边缘深化处理,公式为:
Idark=Icel-(Icel-I2 cel)(Iedge-0.5) 公式5
第三阶段:水粉纹理渲染阶段:
步骤210、分别使用累积高斯噪声和柏林噪声生成两张噪声纹理IN1,IN2。
步骤211、将噪声纹理依据公式6和公式7进行叠加,公式6和公式7为
I7=Idark-(Idark-I2 dark)(IN1-0.5)α 公式6
I8=I7-(I7-I2 7)(IN2-0.5)β 公式7
其中,α和β为可调节参数值,用于控制噪声的凸显程度,α的取值范围在1.1至1.4之间和β的取值范围在0.1至0.14之间。
步骤212、对I8进行提亮操作,所依据的公式8如下:
I9=I8(1+γ) 公式8
其中,γ为可调参数值,其取值范围在1.6至2.2之间。
步骤213、调节图像I9的饱和度。具体的,先求取I9的灰度值I9Gray,之后依据可调值θ得到最后结果I10=I9+I9Gray(1-θ)。
在图像处理应用程序的显示界面显示处理得到的水彩渲染图I10。
基于同样的发明构思,本发明实施例提供一种图像处理装置,如图3所示,包括:
抽象处理模块301,用于对图像进行滤波,得到该图像的滤波图,并根据滤波图生成该图像的方差图;利用方差图与第一图像抽象参数之间的第一函数关系确定第一图像抽象参数值,第一函数关系为一次函数与倒数函数的复合函数关系;利用滤波图与第二图像抽象参数之间的第二函数关系确定第二图像抽象参数值,第二函数关系为一次函数关系,其中包括常量,该常量的取值为上述第一图像抽象参数值;利用图像与抽象图像之间的第三函数关系,确定图像的抽象图像,第三函数关系为一次函数关系,其中包括斜率和平移量,该斜率的取值为上述第一图像抽象参数值,该平移量的取值为上述第二图像抽象参数值;
边缘深化处理模块302,用于对抽象图像进行边缘深化处理,得到边缘深化图像;
纹理渲染处理模块303,用于对边缘深化图像进行水彩纹理渲染,得到上述图像对应的水彩渲染图。
其中,各个模块的具体实现方式可以参照上述实施例的描述,此处不再赘述。
本发明实施例提供的装置,不需要对图像进行分割,也不需要通过生态学的方式对图像进行抽象处理,而是通过简单的函数运算实现图像的抽象处理,抽象处理的函数运算过程中所使用的第一图像抽象参数和第二图像抽象参数分别是对图像的滤波图和方差图进行简单函数运算得到的,整个抽象处理过程较之生态学方式,大大降低了运算复杂度,也就减少了对移动终端的计算资源的占用,且缩短了图像处理的时间。
基于同样的发明构思,本发明实施例提供一种移动终端,如图4所示,包括处理器和存储器;存储器用于存储执行上述任意实施例提供的方法的程序;处理器被配置为执行存储器中存储的程序。
本发明实施例提供的移动终端,不需要对图像进行分割,也不需要通过生态学的方式对图像进行抽象处理,而是通过简单的函数运算实现图像的抽象处理,抽象处理的函数运算过程中所使用的第一图像抽象参数和第二图像抽象参数分别是对图像的滤波图和方差图进行简单函数运算得到的,整个抽象处理过程较之生态学方式,大大降低了运算复杂度,也就减少了对移动终端的计算资源的占用,且缩短了图像处理的时间。
如图4所示,本发明实施例提供的移动终端还包括输入设备(例如触摸屏、摄像头、传声器等)、输出设备(例如显示屏、扬声器等)、通信模块、电源模块。
其中,存储器、输入设备、输出设备、通信模块、电源模块通过串口、总线或USB接口与处理器连接。
其中,对于单处理器移动终端,处理器即CPU(中央处理器);对于双处理器移动终端,处理器包括主处理器和从处理器,由其主处理器执行应用程序实现本发明实施例提供的方法,若其中需要与外界进行通信,则由从处理器控制通信模块配合实现;对于包含GPU(图形处理器)和CPU的移动终端,处理器是指GPU和CPU,由GPU和CPU配合实现本发明实施例提供的方法。
应当指出的是,针对不同的移动终端(单处理器智能手机、双处理器智能手机、智能穿戴设备、平板电脑等等),其可能包括比图4所示的移动终端更多或更少的硬件结构,但只要包括存储器和处理器,且能够实现上述方法实施例的功能,均在本发明的保护范围内。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、磁盘或光盘等。
以上对本发明实施例所提供的一种移动终端进行了详细介绍,对于本领域的一般技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
上述所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。