一种图像处理方法及装置与流程

文档序号:15740071发布日期:2018-10-23 22:08阅读:181来源:国知局
一种图像处理方法及装置与流程

本申请涉及图像处理领域,尤其涉及一种图像处理方法及装置。



背景技术:

漫反射(diffuse reflection)是投射在粗糙表面上的光向各个方向反射的现象。在一些3D场景(如动漫电影或者游戏)中,可以模拟现实世界中物体光照反光效果,在投影画面中增加漫反射效果,使用户产生身临其境的感觉。

具体的,可以采用以下方式在投影画面中增加漫反射效果:根据假定的光照条件和景物外观因素,采用光照模型加三维物体反光材质,计算可见面投射到观察者眼中的光强度大小,并将它转换成适合终端的颜色值,生成投影画面上每一个像素的光强度,然后在终端设备上显示。

其中,实现不同光照条件下物体的漫反射效果,需要在终端中配置多个光照模型,并且需要进行大量运算。因此,上述在投影画面中增加漫反射效果的方案一般应用于个人计算机(personal computer,PC)。对于运算资源有限的设备,例如嵌入式终端(如手机)而言,由于运算能力有限或者被分配的运算资源有限,例如一般嵌入式终端的中央处理器(Central Processing Unit,CPU)和图形处理器(Graphics Processing Unit,GPU)的配置较低,上述方案并不适用。



技术实现要素:

本申请提供一种图像处理方法及装置,可以以较低运算资源实现实时漫反射效果。

为达到上述目的,本申请采用如下技术方案:

第一方面,本申请提供一种图像处理方法,可以应用于终端,该图像处理方法包括:获取包括漫反射对象的第一图片,该第一图片是漫反射对象被光源照射时获取的图片;获取与该漫反射对象对应的遮罩图片;获取该终端的方位信息;根据上述方位信息、第一图片和遮罩图片,获得第二图片,该第二图片是第一图片叠加按照上述方位信息移动后的遮罩图片,生成的包括上述漫反射对象和漫反射效果的图像。

本申请中,终端在为第一图片中的漫反射对象添加漫反射效果时,由于遮罩图片可以按照终端的方位信息动态移动,因此终端可以得到由第一图片叠加按照方位信息移动后的遮罩图片,生成的包括漫反射对象和漫反射效果的图像,即可以为漫反射对象添加动态漫反射效果。

并且,本申请在为漫反射对象添加动态漫反射效果的过程中,并不需要在终端中配置多个光照模型,而是叠加预先设计好的第一图片和按照方位信息移动后的遮罩图片,进行简单计算,便可以得到包括漫反射对象和漫反射效果的第二图片。即可以减少添加漫反射效果时的计算量。即使运算能力有限的嵌入式终端,也可以使用本申请提供的方法为漫反射对象添加动态漫反射效果。综上所述,通过本申请,可以以较低运算资源实现实时漫反射效果。

结合第一方面,在第一种可能的实现方式中,上述“根据所述方位信息、所述第一图片和所述遮罩图片,获得第二图片”可以包括:计算所述第一图片中各个像素点,与移动后的遮罩图片相应位置的各个像素点,叠加后的颜色值,得到所述第二图片。其中,第一图片的每个像素点的颜色值不同,遮罩图片上每个像素点的透明度不同,不同的颜色值和不同的透明度相叠加,可以得到不同的漫反射效果。

结合第一种可能的实现方式,在第二种可能的实现方式中,上述“计算所述第一图片中各个像素点,与移动后的遮罩图片相应位置的各个像素点,叠加后的颜色值,得到所述第二图片”可以包括:针对第一图片中的每个像素点执行步骤一,得到上述第二图片。其中,步骤一为:根据第一像素点的颜色值,以及移动后的遮罩图片相应位置的像素点的透明度,计算所述第一像素点叠加后的颜色值,其中,第一像素点是第一图片中的任一像素点。例如,第一像素点叠加后的颜色值可以是第一像素点的颜色值与移动后的遮罩图片相应位置的像素点的透明度的乘积。

结合第二种可能的实现方式,在第三种可能的实现方式中,为了增强第二图片的真实性,终端还可以在生成第二图片时,参考没有光源照射所述漫反射对象时获取的第三图片。具体的,在上述“根据所述方位信息、所述第一图片和所述遮罩图片,获得第二图片”之前,本申请的方法还可以包括:获取包括漫反射对象的第三图片,该第三图片是没有光源照射所述漫反射对象时获取的图片。上述“根据第一像素点的颜色值,以及移动后的遮罩图片相应位置的像素点的透明度,计算所述第一像素点叠加后的颜色值”可以包括:根据所述第一像素点的颜色值、所述第三图片相应位置的像素点的颜色值,以及移动后的遮罩图片相应位置的像素点的透明度,计算所述第一像素点叠加后的颜色值。

结合第一方面或者上述任一种可能的实现方式,在第四种可能的实现方式中,为了将终端的方位信息中的各个分量(如x轴分量和y轴分量)限定在一定范围内,以方便后续的数据计算或者保证程序运行时收敛加快。在上述“根据所述方位信息、所述第一图片和所述遮罩图片,获得第二图片”之前,本申请的方法还可以包括:对所述方位信息进行归一化。其中,该遮罩图片按照归一化后的方位信息移动。

第二方面,本申请提供一种图像处理方法,可以应用于终端,该图像处理方法包括:获取第一图片,所述第一图片中包括漫反射对象,所述第一图片是没有光源照射所述漫反射对象时获取的图片;获取与所述漫反射对象对应的遮罩图片;获取光源;获取所述终端的方位信息;根据所述方位信息、所述第一图片、所述光源和所述遮罩图片,获得第二图片,所述第二图片是所述第一图片叠加所述遮罩图片,以及按照所述方位信息移动后的光源,生成的包括所述漫反射对象和漫反射效果的图像。

本申请提供的图像处理方法,终端在为第一图片中的漫反射对象添加漫反射效果时,由于光源可以按照终端的方位信息动态移动,因此终端可以得到由第一图片叠加遮罩图片,以及按照方位信息移动后的光源,生成的包括漫反射对象和漫反射效果的图像,即可以为漫反射对象添加动态漫反射效果。

并且,本申请在为漫反射对象添加动态漫反射效果的过程中,并不需要在终端中配置多个光照模型,而是叠加预先设计好的第一图片、遮罩图片,以及按照方位信息移动后的光源,进行简单计算,便可以得到包括漫反射对象和漫反射效果的第二图片。即可以减少添加漫反射效果时的计算量。即使运算能力有限的嵌入式终端,也可以使用本申请提供的方法为漫反射对象添加动态漫反射效果。

综上所述,通过本方案,不仅可以实时在投影画面中增加漫反射效果,还可以减少添加漫反射效果时的计算量。

结合第二方面,在第一种可能的实现方式中,上述光源可以为光源图片。上述“根据所述方位信息、所述第一图片、所述光源和所述遮罩图片,获得第二图片”可以包括:计算所述第一图片中各个像素点、所述遮罩图片相应位置的各个像素点,以及移动后的光源图片相应位置的各个像素点,叠加后的颜色值,得到所述第二图片。其中,第一图片的每个像素点的颜色值不同,遮罩图片上每个像素点的透明度不同,不同的颜色值和不同的透明度相叠加,可以得到不同的漫反射效果。

结合第一种可能的实现方式,在第二种可能的实现方式中,上述“计算所述第一图片中各个像素点与所述遮罩图片,以及移动后的光源图片相应位置的各个像素点,叠加后的颜色值,得到所述第二图片”可以包括:针对所述第一图片中的每个像素点执行步骤一,得到所述第二图片。其中,步骤一为:根据第一像素点的颜色值、所述遮罩图片相应位置的像素点的透明度,以及移动后的光源图片相应位置的像素点的颜色值,计算所述第一像素点叠加后的颜色值。其中,所述第一像素点是所述第一图片中的任一像素点。例如,第一像素点叠加后的颜色值可以是第一像素点的颜色值和遮罩图片相应位置的像素点的透明度与移动后的光源图片相应位置的像素点的颜色值的乘积之和。

结合第二方面或者上述任一种可能的实现方式,在第三种可能的实现方式中,为了将终端的方位信息中的各个分量(如x轴分量和y轴分量)限定在一定范围内,以方便后续的数据计算或者保证程序运行时收敛加快。在上述“根据所述方位信息、所述第一图片、所述光源和所述遮罩图片,获得第二图片”之前,本申请的方法还可以包括:对所述方位信息进行归一化。其中,所述光源按照归一化后的方位信息移动。

第三方面,本申请提供一种终端,该终端包括:第一获取模块、第二获取模块、第三获取模块和漫反射模块。其中,第一获取模块,用于获取第一图片,所述第一图片中包括漫反射对象,所述第一图片是所述漫反射对象被光源照射时获取的图片;第二获取模块,用于获取与所述漫反射对象对应的遮罩图片;第三获取模块,用于获取所述终端的方位信息;漫反射模块,用于根据所述第三获取模块获取的所述方位信息、所述第一获取模块获取的所述第一图片和所述第二获取模块获取的所述遮罩图片,获得第二图片,所述第二图片是所述第一图片叠加按照所述方位信息移动后的遮罩图片,生成的包括所述漫反射对象和漫反射效果的图像。

结合第三方面,在第一种可能的实现方式中,上述漫反射模块,具体用于:计算所述第一图片中各个像素点,与移动后的遮罩图片相应位置的各个像素点,叠加后的颜色值,得到所述第二图片。

结合第一种可能的实现方式,在第二种可能的实现方式中,上述漫反射模块,具体用于:针对所述第一图片中的每个像素点执行步骤一,得到所述第二图片。其中,步骤一为:根据第一像素点的颜色值,以及移动后的遮罩图片相应位置的像素点的透明度,计算所述第一像素点叠加后的颜色值,其中,所述第一像素点是所述第一图片中的任一像素点。

结合第二种可能的实现方式,在第三种可能的实现方式中,上述终端还可以包括:第四获取模块。该第四获取模块,用于在所述漫反射模块根据所述第三获取模块获取的所述方位信息、所述第一获取模块获取的所述第一图片和所述第二获取模块获取的所述遮罩图片,获得第二图片之前,获取第三图片,所述第三图片中包括漫反射对象,所述第三图片是没有光源照射所述漫反射对象时获取的图片。相应的,上述漫反射模块,具体用于:根据所述第一像素点的颜色值、所述第三图片相应位置的像素点的颜色值,以及移动后的遮罩图片相应位置的像素点的透明度,计算所述第一像素点叠加后的颜色值。

结合第三方面或者上述任一种可能的实现方式,在第四种可能的实现方式中,上述终端还可以包括:归一化模块。该归一化模块,用于在所述漫反射模块根据所述第三获取模块获取的所述方位信息、所述第一获取模块获取的所述第一图片和所述第二获取模块获取的所述遮罩图片,获得所述第二图片之前,对所述方位信息进行归一化。其中,所述遮罩图片按照归一化后的方位信息移动。

第四方面,本申请提供一种终端,该终端包括:一个或多个处理器、存储器和显示器。其中,所述存储器和所述显示器与所述一个或多个处理器耦合,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述一个或多个处理器执行所述计算机指令时,所述终端执行如本申请第一方面或者第一方面的任一种可能的实现方式所述的图像处理方法。上述显示器,用于显示所述处理器执行所述图像处理方法得到的第二图片。

结合第四方面,在第一种可能的实现方式中,上述存储器,还用于存储第一图片。

结合第四方面或者第一种可能的实现方式,在第二种可能的实现方式中,上述存储器,还用于存储一个或多个遮罩图片,上述与所述漫反射对象对应的遮罩图片是该一个或多个遮罩图片中的一个图片。

结合第四方面或者上述任一种可能的实现方式,上述终端还可以包括:运动传感器,该运动传感器可以为方向传感器。该运动传感器,用于采集上述终端的方位信息。

第五方面,本申请还提供一种计算机存储介质,该计算机存储介质上储存有计算机指令,当所述计算机指令在终端上运行时,使得所述终端执行本申请第一方面或者其任一种可能的实现方式所述的图像处理方法。

第六方面,本申请还提供了一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述本申请第二方面或者其任一种可能的实现方式所述的图像处理方法。

可以理解地,上述提供的第三方面和第四方面所述的终端、第五方面所述的计算机存储介质或者第六方面所述的计算机程序产品均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。

第七方面,本申请提供一种终端,该终端包括:第一获取模块、第二获取模块、第三获取模块、第四获取模块和漫反射模块。第一获取模块,用于获取第一图片,所述第一图片中包括漫反射对象,所述第一图片是没有光源照射所述漫反射对象时获取的图片。第二获取模块,用于获取与所述漫反射对象对应的遮罩图片。第三获取模块,用于获取光源。第四获取模块,用于获取所述终端的方位信息。漫反射模块,用于根据所述第四获取模块获取的所述方位信息、所述第一获取模块获取的所述第一图片、所述第三获取模块获取的所述光源和所述第二获取模块获取的所述遮罩图片,获得第二图片,所述第二图片是所述第一图片叠加所述遮罩图片,以及按照所述方位信息移动后的光源,生成的包括所述漫反射对象和漫反射效果的图像。

结合第七方面,在第一种可能的实现方式中,上述第三获取模块获取的所述光源为光源图片。上述漫反射模块,具体用于:计算所述第一图片中各个像素点、所述遮罩图片相应位置的各个像素点,以及移动后的光源图片相应位置的各个像素点,叠加后的颜色值,得到所述第二图片。

结合第一种可能的实现方式,在第二种可能的实现方式中,上述漫反射模块,具体用于:针对所述第一图片中的每个像素点执行步骤一,得到所述第二图片。其中,步骤一为:根据第一像素点的颜色值、所述遮罩图片相应位置的像素点的透明度,以及移动后的光源图片相应位置的像素点的颜色值,计算所述第一像素点叠加后的颜色值,其中,所述第一像素点是所述第一图片中的任一像素点。

结合第七方面或者上述任一种可能的实现方式,在第二种可能的实现方式中,上述终端,还可以包括:归一化模块。该归一化模块,用于在所述漫反射模块根据所述方位信息、所述第一图片、所述光源和所述遮罩图片,获得所述第二图片之前,对所述方位信息进行归一化。其中,所述光源按照归一化后的方位信息移动。

第八方面,本申请提供一种终端,该终端包括:一个或多个处理器、存储器和显示器。其中,所述存储器和所述显示器与所述一个或多个处理器耦合,所述存储器用于存储计算机程序代码,所述计算机程序代码包括计算机指令,当所述一个或多个处理器执行所述计算机指令时,所述终端执行如本申请第二方面或者第二方面的任一种可能的实现方式所述的图像处理方法。上述显示器,用于显示所述处理器执行所述图像处理方法得到的图像。

结合第八方面,在第一种可能的实现方式中,上述存储器,还用于存储第一图片。

结合第八方面或者第一种可能的实现方式,在第二种可能的实现方式中,上述存储器,还用于存储一个或多个遮罩图片,上述与所述漫反射对象对应的遮罩图片是该一个或多个遮罩图片中的一个图片。

结合第八方面或者上述任一种可能的实现方式,上述存储器,还可以用于存储一个或多个光源图片,上述与所述漫反射对象对应的光源图片是该一个或多个光源图片中的一个图片。

结合第八方面或者上述任一种可能的实现方式,上述终端还可以包括:运动传感器,该运动传感器可以为方向传感器。该运动传感器,用于采集上述终端的方位信息。

第九方面,本申请还提供一种计算机存储介质,该计算机存储介质上储存有计算机指令,当所述计算机指令在终端上运行时,使得所述终端执行本申请第二方面或者其任一种可能的实现方式所述的图像处理方法。

第十方面,本申请还提供了一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述本申请第二方面或者其任一种可能的实现方式所述的图像处理方法。

可以理解地,上述提供的第七方面和第八方面所述的终端、第九方面所述的计算机存储介质或者第十方面所述的计算机程序产品均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。

附图说明

图1为本发明实施例提供的一种漫反射效果的对比实例示意图;

图2为本发明实施例提供的一种手机的硬件结构示意图;

图3为本发明实施例提供的一种图像处理方法流程图一;

图4为本发明实施例提供的一种包括漫反射对象的图片的实例示意图;

图5为本发明实施例提供的一种第一图片的实例示意图;

图6为本发明实施例提供的一种遮罩图片的实例示意图;

图7为本发明实施例提供的一种第一图片和遮罩图片叠加的实例示意图一;

图8为本发明实施例提供的一种第一图片和遮罩图片叠加的实例示意图二;

图9为本发明实施例提供的一种手机中的坐标轴的实例示意图一;

图10为本发明实施例提供的一种手机中的坐标轴的实例示意图二;

图11为本发明实施例提供的一种图像处理方法流程图二;

图12为本发明实施例提供的一种第一图片、第三图片和遮罩图片叠加的实例示意图;

图13为本发明实施例提供的一种图像处理方法流程图三;

图14为本发明实施例提供的一种图像处理方法流程图四;

图15为本发明实施例提供的一种第一图片、光源图片和遮罩图片叠加的实例示意图一;

图16为本发明实施例提供的一种第一图片、光源图片和遮罩图片叠加的实例示意图二;

图17为本发明实施例提供的一种图像处理方法流程图五;

图18为本发明实施例提供的一种图像处理方法流程图六;

图19为本发明实施例提供的一种终端的结构示意图一;

图20为本发明实施例提供的一种终端的结构示意图二;

图21为本发明实施例提供的一种终端的结构示意图三;

图22为本发明实施例提供的一种终端的结构示意图四;

图23为本发明实施例提供的一种终端的结构示意图五。

具体实施方式

本发明实施例提供一种图像处理方法可以应用于终端,具体可以应用于终端对图片进行处理,为图片中的对象添加漫反射效果的过程中。其中,本发明实施例中的漫反射(diffuse reflection)是投射在粗糙表面上的光向各个方向反射的现象。其中,本发明实施例所述的漫反射可以参考以下网址1对应的网页中对漫反射的详细描述,本发明实施例这里不再赘述。网址1:https://en.wikipedia.org/wiki/Diffuse_reflection。

请参考图1,其示出了本发明实施例提供的一种漫反射效果的对比实例示意图。其中,图1A所示的图片是对象(物体)101未添加漫反射效果的图片,而图1B所示的图片是对象101添加了漫反射效果的图片。

示例性的,本发明实施例中的终端可以为配置有加速度传感器和地磁传感器,或者为还配置有运动传感器(如方向传感器Oientation-sensor)的移动终端,该运动传感器可以用于根据加速度传感器采集的信息获取该终端的方位信息。例如,该方位信息可以为指示终端旋转角度的信息,例如可以包含终端的角度信息(pitch--x轴和水平面的夹角,范围为-180°至180°,当z轴向y轴转动时,角度为正值;和roll--y轴和水平面的夹角,由于历史原因,范围为-90°至90°,当x轴向z轴移动时,角度为正值)。当然,终端也可以接收其他设备发送的方位信息,而不需要配置运动传感器来采集方位信息,本发明实施例对此不做任何限制。

例如,本发明实施例中的终端可以是手机、可穿戴设备、增强现实(augmented reality,AR)\虚拟现实(virtual reality,VR)设备、平板电脑、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personal digital assistant,PDA)等,本发明实施例对此不作任何限制。

以下实施例以手机作为例子来说明终端如何实现实施例中的具体技术方案。如图2所示,本实施例中的终端可以为手机200。下面以手机200为例对实施例进行具体说明。

应该理解的是,图示手机200仅仅是终端的一个范例,并且手机200可以具有比图中所示出的更过的或者更少的部件,可以组合两个或更多的部件,或者可以具有不同的部件配置。图2中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。

如图2所示,手机200包括:RF(Radio Frequency,射频)电路210、存储器220、输入单元230、显示单元240、传感器250、音频电路260、无线保真(Wireless Fidelity,Wi-Fi)模块270、处理器280、以及电源290等部件。本领域技术人员可以理解,图2中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

下面结合图2对手机200的各个构成部件进行具体的介绍:

RF电路210可用于收发信息或通话过程中,信号的接收和发送,可以将基站的下行信息接收后,给处理器280处理;另外,将涉及上行的数据发送给基站。通常,RF电路包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等器件。此外,RF电路210还可以通过无线通信与网络和其他移动设备通信。所述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统、通用分组无线服务、码分多址、宽带码分多址、长期演进、电子邮件、短消息服务等。

存储器220可用于存储软件程序及数据。处理器280通过运行存储在存储器220的软件程序及数据,从而执行手机200的各种功能以及数据处理。存储器220可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机200的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器220可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。在以下实施例中,存储器220存储有使得手机200能运行的操作系统,例如苹果公司所开发的操作系统,谷歌公司所开发的开源操作系统,微软公司所开发的操作系统等。

输入单元230(如触摸屏)可用于接收输入的数字或字符信息,以及产生与手机200的用户设置以及功能控制有关的信号输入。具体地,输入单元230可以包括触控面板231,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触控面板231上或在触控面板231附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触控面板231可包括触摸检测装置和触摸控制器两个部分(图2中未示出)。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器280,并能接收处理器280发来的指令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板231。

显示单元240(即显示屏)可用于显示由用户输入的信息或提供给用户的信息以及手机200的各种菜单的图形用户界面(Graphical User Inter face,GUI)。显示单元240可包括设置在手机200正面的显示面板241。其中,显示面板241可以采用液晶显示器、发光二极管等形式来配置。

其中,在一些实施例中,手机200正面的底部还可以设置有光学触摸按键;还设置有触控面板231和显示面板241,触控面板231覆盖在显示面板241之上。当触控面板231检测到在其上或附近的触摸操作后,传送给处理器280以确定触摸事件,随后处理器280根据触摸事件的类型在显示面板241上提供相应的视觉输出。虽然在图2中,触控面板231与显示面板241是作为两个独立的部件来实现手机200的输入和输入功能,但是在某些实施例中,可以将触控面板231与显示面板241集成而实现手机200的输入和输出功能,集成后的触控面板231与显示面板241可以简称为触摸显示屏。

在另外的一些实施例中,上述触控面板231还可以设置有压力感应传感器,这样用户在上述触控面板上进行触摸操作时,触控面板还能检测到该触摸操作的压力,进而手机200能够更准确地检测该触摸操作。

手机200还可以包括至少一种传感器250,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,如图1A所示,环境光传感器251可根据环境光线的明暗来调节显示面板241的亮度,接近光传感器252设置在手机200的正面,当在手机200移动到耳边时,根据接近光传感器252的检测,手机200关闭显示面板241的电源,这样手机200可以进一步节省电量。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏转化、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于手机200还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。

音频电路260、扬声器261,麦克风262可提供用户与手机200之间的音频接口。音频电路260可将接收到的音频数据转换后的电信号,传输到扬声器261,由扬声器261转换为声音信号输出;另一方面,麦克风262将收集的声音信号转换为电信号,由音频电路260接收后转换为音频数据,再将音频数据输出至RF电路210以发送给比如另一手机,或者将音频数据输出至存储器220以便进一步处理。

Wi-Fi属于短距离无线传输技术,手机200可以通过Wi-Fi模块270帮助用户收发电子邮件、浏览网页和访问流媒体等,它为用户提供了无线的宽带互联网访问。

处理器280是手机200的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器220内的软件程序,以及调用存储在存储器220内的数据,执行手机200的各种功能和处理数据,从而对手机进行整体监控。在一些实施例中,处理器280可包括一个或多个处理单元;处理器280还可以集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器180中。

蓝牙模块281,用于通过蓝牙这种短距离通讯协议来与其他设备进行信息交互。例如,手机200可以通过蓝牙模块281与同样具备蓝牙模块的可穿戴电子设备(例如智能手表)建立蓝牙连接,从而进行数据交互。

手机200还包括给各个部件供电的电源290(比如电池)。电源可以通过电源管理系统与处理器280逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗等功能。可以理解的是,在以下实施例中,电源290可以用于给显示面板241及触控面板231供电。

以下实施例中的方法均可以在具有上述硬件结构的手机200中实现。

可以理解,本发明后续实施例中的方法步骤可以由上述终端执行,或者本发明实施例提供的图像处理方法的执行主体也可以是终端中的部分功能模块,如终端的中央处理器(Central Processing Unit,CPU),本发明实施例对此不做限制。其中,本发明实施例这里以终端执行图像处理方法为例,对本发明实施例提供的图像处理方法进行详细说明。

本发明实施例提供一种图像处理方法,如图3所示,该图像处理方法可以包括S301-S304:

S301:终端获取第一图片,该第一图片中包括漫反射对象,该第一图片是该漫反射对象被光源照射时获取的图片。

其中,该第一图片可以是预先保存在终端中的图片,或者第一图片可以是终端从其他设备获取的图片,或者,第一图片还可以是终端接收其他设备发送的图片。

示例性的,上述第一图片可以是由设计人员使用图像处理软件(三维软件,如3ds max)绘制出的包括上述漫反射对象的图片,然后保存的终端中的或者经由其他设备传输至终端的。

例如,以上述图像处理软件是3ds max为例,设计人员可以在3ds max中为漫反射对象(如图1A所示的漫反射对象101)添加VRay标准材质球,调整其固有色和反射,并设置其双向反射分布函数(Bi-directional Reflectance Distribution Function,BRDF)属性为Ward;用面光源、聚光灯及泛光灯为漫反射对象打光,调整灯光位置、轻度、颜色及灯光范围;将主光源去掉高光效果(Affect specular),保留漫反射效果(Affect diffuse),即为漫反射对象去掉高光效果,只保留其固有色。如此,便可以得到如图4所示的图片401。然后,设计人员可以在3ds max中,打开主光源的高光效果(Affect specular)继续处理图4所示的图片401;调整主光源灯光尺寸,以控制漫反射范围,调整主光源强度控制亮度,并移动灯光控制漫反射范围。如此,便可以得到如图5所示的第一图片501。第一图片也可以利用其他现有技术获取。

S302:终端获取与漫反射对象对应的遮罩图片。

其中,该遮罩图片可以是预先保存在终端中的图片,或者该遮罩图片可以是终端从其他设备获取的图片,或者,遮罩图片还可以是终端接收其他设备发送的图片。

示例性的,终端中可以预先保存多张遮罩图片,当终端获取到上述第一图片后,则可以从预先保存的多张遮罩图片中获取与上述漫反射对象对应的遮罩图片;或者终端可以在获取到上述第一图片后,向其他设备发送遮罩图片获取请求,以获取与上述漫反射对象对应的遮罩图片。

其中,遮罩图片可以是包括遮罩图案的图片,该遮罩图案是遮罩图片上各个像素点的透光强度(即透明度)不同,而形成的图案。遮罩上的图案是不显示的,它只起到一个透光的作用。假定遮罩图案上是一个透明的正圆,那么光线就会透过这个圆形,射到下面的被遮罩图层上,只会显示一个圆形的图形。如果遮罩上什么图案都没有,是全不透光的,那么光线就无法透到下面来,那么下面的被遮罩层什么也显示不出来。遮罩图片不同于第一图片,可以是与漫反射对象无关的一个图片。遮罩也可以称为遮罩层(layer mask),可参考https://en.wikipedia.org/wiki/Layers_(digital_image_editing)。例如,如图6所示的遮罩图片601的像素点602的透明度与像素点603的透明度不同。其中,上述“遮罩图片与漫反射对象对应”具体可以为:遮罩图片中的遮罩图案与上述漫反射对象的形状对应。

本发明实施例中的遮罩图片也可以是设计人员针对漫反射对象设计的。设计人员可以针对每一个漫反射对象,为其设计一个或多个遮罩图片。终端可以根据具体场景需求进行遮罩图片的选择,比如有室内,夜景(霓虹),海边,花窗等。

S303:终端获取该终端的方位信息。

示例性的,本发明实施例的终端中可以配置有运动传感器,该运动传感器可以用于采集终端的方位信息,终端可以获取该运动传感器采集的方位信息。或者,终端可以接收其他设备(例如向终端发送上述第一图片的设备)发送的方位信息。本发明实施例对终端获取终端的方位信息的具体方式不做限制,只要获取到终端旋转的方向和角度的信息即可。

S304:终端根据上述方位信息、第一图片和遮罩图片,获得第二图片,该第二图片是上述第一图片叠加按照方位信息移动后的遮罩图片,生成的包括上述漫反射对象和漫反射效果的图像。

示例性的,如图7所示,第一图片501和与第一图片中的漫反射对象对应的遮罩图片601可以叠加起来。并且,如图8A所示,当终端未发生方位移动(即终端相对于预先设置的xy坐标轴未发生相对运动)时,第一图片501和遮罩图片601可以相互对齐,例如,第一图片501的像素点b对应于遮罩图片601的像素点a。当终端向xy坐标轴的x轴的负半轴移动k时,如图8B所示,遮罩图片601也可以按照该方位信息向xy坐标轴的x轴的负半轴移动k。此时,第一图片501的像素点b对应于遮罩图片601的像素点c。

可以理解,第一图片的像素点的颜色值存在不同,遮罩图片上像素点的透明度也存在不同,不同的颜色值和不同的透明度相叠加,可以得到不同的漫反射效果。因此,图8A所示的第一图片501的像素点b与遮罩图片601的像素点a叠加所产生的漫反射效果,与图8B所示的第一图片501的像素点b与遮罩图片601的像素点c叠加所产生的漫反射效果不同。

示例性的,以图2所示的手机200为例,如图9A所示,图8所示的xy坐标轴以手机200的一个短边为x轴,与该短边相交的任一长边为y轴,该长边和该短边的交点为坐标原点o。或者,如图9B所示,图8所示的xy坐标轴以手机200的一个长边为x轴,与该长边相交的任一短边为y轴,该长边和该短边的交点为坐标原点o。

或者,以图2所示的手机200为例,如图10所示,可以以手机200的屏幕中点(即短边的中点和长边的中点的交点)为坐标原点o,x轴与手机200的短边平行,y轴与手机的长边平行。或者,x轴可以与手机200的长边平行,y轴与手机的短边平行,本发明实施例对此不做限制。

示例性的,这里以图10所示的坐标轴为例,对上述方位信息的取值进行举例说明:

当手机200沿y轴(手机200的左侧长边)向左侧翻转时,方位信息在x轴的分量取负值,当手机200沿y轴(手机200的左侧长边)向右侧翻转时,方位信息在x轴的分量取正值。将手机200的摄像头1002在上,手机200的光学按键1003在下放置,从手机200的右侧(即)观察手机200,当手机200顺时针翻转时,方位信息在y轴的分量取负值,当手机200逆时针翻转时,方位信息在y轴的分量取正值。或者,当手机200顺时针翻转时,方位信息在y轴的分量取正值,当手机200逆时针翻转时,方位信息在y轴的分量取负值,本发明实施例对此不做限制。

其中,本发明实施例中,可以设置图10所示的手机200水平放置时,手机200的方位信息中x=0,y=0。当然,为了更加符合用户使用习惯,还可以设置图10所示的手机200的与水平面成一定角度(如短边与水平面平行,长边与水平面成45度角)放置时,手机200的方位信息中x=0,y=0。

可以理解,本申请中的方位信息不仅可以包括二维的x轴分量和y轴分量,还可以包括与x轴和y轴垂直的z轴的z轴分量,即本申请中的方位信息可以包括三维分量(x轴分量、y轴分量和z轴分量)。其中,遮罩图片按照三维的方位信息移动的方式与其按照二维的方位信息移动的方式类似,本发明实施例这里不再赘述。

本发明实施例提供的图像处理方法,终端在为第一图片中的漫反射对象添加漫反射效果时,由于遮罩图片可以按照终端的方位信息动态移动,因此终端可以得到由第一图片叠加按照方位信息移动后的遮罩图片,生成的包括漫反射对象和漫反射效果的图像,即可以为漫反射对象添加动态漫反射效果。

并且,本发明实施例在为漫反射对象添加动态漫反射效果的过程中,并不需要在终端中配置多个光照模型,而是叠加预先设计好的第一图片和按照方位信息移动后的遮罩图片,进行简单计算,便可以得到包括漫反射对象和漫反射效果的第二图片。即可以减少添加漫反射效果时的计算量。即使运算能力有限的嵌入式终端,也可以使用本发明实施例提供的方法为漫反射对象添加动态漫反射效果。综上所述,通过本方案,可以以较低运算资源实现实时漫反射效果。

在一种实施例中,如图11所示,图3所示的S304可以替换为S304a:

S304a:终端计算第一图片中各个像素点,与移动后的遮罩图片相应位置的各个像素点,叠加后的颜色值,得到第二图片。

示例性的,终端可以针对第一图片中的每个像素点执行以下Sa,得到上述第二图片。其中,Sa为:根据第一像素点的颜色值,以及移动后的遮罩图片相应位置的像素点的透明度,计算第一像素点叠加后的颜色值,其中,该第一像素点是上述第一图片中的任一像素点。

例如,以图8所示的第一图片501和遮罩图601为例,图8B中的遮罩图片601是按照终端方位信息移动后的遮罩图片。如图8B所示,遮罩图片中与第一图片501中的像素点b(第一像素点)对应的像素点,由图8A所示的像素点a变成了像素点c。

以像素点b为例,终端可以根据第一图片501像素点b的颜色值RGB-b,以及移动后的遮罩图片(图8B所示的遮罩图片601)的像素点c的透明度(Transparency)T-c,计算第一图片501像素点b叠加后的颜色值RGB-b'。

例如,终端可以采用以下公式一,计算第一图片501像素点b叠加后的颜色值RGB-b':

RGB-b'=(RGB-b)*(T-c)(公式一)

即像素点b叠加后的颜色值RGB-b'可以是像素点b的颜色值RGB-b与像素点c的透明度T-c的乘积。

进一步的,为了增强第二图片的真实性,终端还可以在生成第二图片时,参考没有光源照射所述漫反射对象时获取的第三图片。具体的,在图3所示的S304之前,本发明实施例的方法还可以包括S601:

S601:终端获取第三图片,该第三图片中包括漫反射对象,该第三图片是没有光源照射漫反射对象时获取的图片。

其中,该第三图片可以是预先保存在终端中的图片,或者第三图片可以是终端从其他设备获取的图片,或者,第三图片还可以是终端接收其他设备发送的图片。

示例性的,上述第三图片可以是由设计人员使用图像处理软件(三维软件,如3ds max)绘制出的包括上述漫反射对象的图片,然后保存的终端中的或者经由其他设备传输至终端的。例如,该第三图片可以是设计人员在3ds max中绘制出的如图4所示的图片401。

相应的,上述Sa可以替换为Sb:终端根据第一像素点的颜色值、第三图片相应位置的像素点的颜色值,以及移动后的遮罩图片相应位置的像素点的透明度,计算第一像素点叠加后的颜色值。

示例性的,如图12A所示,第一图片501、与第一图片中的漫反射对象对应的遮罩图片601,以及第三图像1201可以叠加起来。并且,如图12A所示,当终端未发生方位移动(即终端相对于预先设置的xy坐标轴未发生相对运动)时,第一图片501、遮罩图片601和第三图片1201可以相互对齐,例如,第一图片501的像素点b对应于遮罩图片601的像素点a和第三图片1201的像素点d。当终端向xy坐标轴的x轴的负半轴移动k(即终端的方位信息)时,如图8B所示,遮罩图片601也可以按照该方位信息向xy坐标轴的x轴的负半轴移动k。此时,第一图片501的像素点b和第三图片1201的像素点d可以对应于遮罩图片601的像素点c。

例如,以图12所示的第一图片501、遮罩图601和第三图片1201为例,图12B中的遮罩图片601是按照终端方位信息移动后的遮罩图片。如图12B所示,遮罩图片601中与第一图片501中的像素点b(第一像素点)和第三图片1201的像素点d对应的像素点,由图8A所示的像素点a变成了像素点c。

以像素点b为例,终端可以根据第一图片501像素点b的颜色值RGB-b、第三图片1201的像素点d的颜色值RGB-d,以及移动后的遮罩图片(图8B所示的遮罩图片601)的像素点c的透明度(Transparency)T-c,计算第一图片501像素点b叠加后的颜色值RGB-b″。

例如,终端可以采用以下公式二,计算第一图片501像素点b叠加后的颜色值RGB-b″:

RGB-b″=(RGB-d)*(1-(T-c))+(RGB-b)*(T-c)(公式二)

需要说明的是,“终端计算第一图片中各个像素点,与移动后的遮罩图片相应位置的各个像素点,叠加后的颜色值,得到第二图片”的方法包括但不限于上述实例中的方法,其他的计算方法本发明实施例这里不再赘述。

进一步的,为了将终端的方位信息中的各个分量(如x轴分量和y轴分量)限定在一定范围内,以方便后续的数据计算或者保证程序运行时收敛加快。如图13所示,在图3所示的S303之后,S304之前,本发明实施例的方法还可以包括S1301:

S1301:终端对方位信息进行归一化。

其中,本发明实施例中“对方位信息进行归一化”是指将方位信息中的各分量按照一定比例,转化为区间(0,1)之间的小数。

示例性的,假设上述方位信息中包括x轴分量和y轴分量。并且,x=5毫米(mm),y=6mm,x和y的取值范围是[-10,10],单位mm。那么终端可以对该x轴分量和y轴分量进行归一化,计算得到归一化后的x'=x/10=0.5,归一化后的y'=y/10=0.6。

相应的,如图13所示,上述S304可以替换为S304b:

S304b:终端根据归一化后的方位信息、第一图片和遮罩图片,获得第二图片,该第二图片是上述第一图片叠加按照归一化后的方位信息移动后的遮罩图片,生成的包括上述漫反射对象和漫反射效果的图像。

本发明实施例提供的图像处理方法,终端在为漫反射对象添加动态漫反射效果的过程中,并不需要在终端中配置多个光照模型,而是叠加预先设计好的第一图片和按照方位信息移动后的遮罩图片,进行简单计算,便可以得到包括漫反射对象和漫反射效果的第二图片。即可以减少添加漫反射效果时的计算量。即使运算能力有限的嵌入式终端,也可以使用本发明实施例提供的方法为漫反射对象添加动态漫反射效果。即通过本方案,可以以较低运算资源实现实时漫反射效果。

在本发明实施例的另一种应用场景中,可以通过移动光源,为漫反射对象添加动态漫反射效果。在这种应用场景中,如图14所示,本发明实施例提供的图像处理方法可以包括S1401-S1405:

S1401:终端获取第一图片,该第一图片中包括漫反射对象,该第一图片是没有光源照射该漫反射对象时获取的图片。

其中,该第一图片相当于上述第三图片。例如,该第一图片可以是设计人员在3ds max中绘制出的如图4所示的图片401。

S1402:终端获取与漫反射对象对应的遮罩图片。

其中,终端获取与漫反射对象对应的遮罩图片的具体方法可以参考本发明实施例第一种应用场景中的详细描述,以及遮罩图片的详细描述本发明实施例这里不再赘述。

S1403:终端获取光源。

示例性的,本发明实施例中的光源可以为光源图片。该光源图片可以是设计人员针对不同的漫反射对象设计的。设计人员可以针对一个漫反射对象设计一个或多个对应不同漫反射效果的光源图片。其中,光源图片的不同像素点的颜色值存在不同。

S1404:终端获取该终端的方位信息。

其中,终端获取终端的方位信息的具体方法可以参考本发明实施例第一种应用场景中的详细描述,以及终端的方位信息的详细描述本发明实施例这里不再赘述。

S1405:终端根据方位信息、第一图片、光源和遮罩图片,获得第二图片,该第二图片是上述第一图片叠加遮罩图片,以及按照方位信息移动后的光源,生成的包括漫反射对象和漫反射效果的图像。

示例性的,如图15所示,第一图片401、与第一图片中的漫反射对象对应的遮罩图片1501,以及光源图片1502可以叠加起来。其中,遮罩图片1501中可以包括遮罩图案1503和遮罩图案1504。

并且,如图16A所示,当终端未发生方位移动(即终端相对于预先设置的xy坐标轴未发生相对运动)时,第一图片401、遮罩图片1501和光源图片1502可以相互对齐。例如,第一图片401的像素点g对应于遮罩图片1501的像素点f和光源图片1502的像素点e。当终端向xy坐标轴的x轴的负半轴移动j(即终端的方位信息)时,如图16B所示,光源图片1502也可以按照该方位信息向xy坐标轴的x轴的负半轴移动j。此时,第一图片401的像素点g和遮罩图片1501的像素点f,对应于光源图片1502的像素点h。

由于光源图片的不同像素点的颜色值不同,例如像素点e和像素点h的颜色值,并且第一图片的每个像素点的颜色值不同,遮罩图片上每个像素点的透明度不同,不同的颜色值和不同的透明度相叠加,可以得到不同的漫反射效果。因此,图16A所示的光源图片1502的像素点e与第一图片401的像素点g,以及遮罩图片1501的像素点f叠加所产生的漫反射效果,与图16B所示的光源图片1502的像素点h与第一图片401的像素点g,以及遮罩图片1501的像素点f叠加所产生的漫反射效果不同。

其中,本发明实施例第二种应用场景中,终端中的坐标轴的配置方式可以参考第一种应用场景中的详细描述,本发明实施例这里不再赘述。

本发明实施例提供的图像处理方法,终端在为第一图片中的漫反射对象添加漫反射效果时,由于光源可以按照终端的方位信息动态移动,因此终端可以得到由第一图片叠加遮罩图片,以及按照方位信息移动后的光源,生成的包括漫反射对象和漫反射效果的图像,即可以为漫反射对象添加动态漫反射效果。

并且,本发明实施例在为漫反射对象添加动态漫反射效果的过程中,并不需要在终端中配置多个光照模型,而是叠加预先设计好的第一图片、遮罩图片,以及按照方位信息移动后的光源(图片),进行简单的叠加计算,便可以得到包括漫反射对象和漫反射效果的第二图片。即可以减少添加漫反射效果时的计算量。即使运算能力有限的嵌入式终端,也可以使用本发明实施例提供的方法为漫反射对象添加动态漫反射效果。综上所述,通过本方案,可以以较低运算资源实现实时漫反射效果。

在一种实施例中,如图17所示,图14所示的S1405可以替换为S1405a:

S1405a:终端计算所述第一图片中各个像素点、所述遮罩图片相应位置的各个像素点,以及移动后的光源图片相应位置的各个像素点,叠加后的颜色值,得到所述第二图片。

示例性的,终端可以针对第一图片中的每个像素点执行以下Sc,得到上述第二图片。其中,Sc为:根据第一像素点的颜色值、遮罩图片相应位置的像素点的透明度,以及移动后的光源图片相应位置的像素点的颜色值,计算第一像素点叠加后的颜色值。其中,该第一像素点是上述第一图片中的任一像素点。

例如,以图16所示的第一图片401、光源图片1502和遮罩图片1501为例,图16B中的光源图片1502是按照终端方位信息移动后的光源图片。如图16B所示,光源图片1502中与第一图片401中的像素点g(第一像素点)对应的像素点,由图16A所示的像素点e变成了像素点h。

以像素点g为例,终端可以根据第一图片401像素点g的颜色值RGB-g、遮罩图片1501的像素点f的透明度T-f,以及移动后的光源图片的像素点h的颜色值RGB-h,计算第一图片401像素点g叠加后的颜色值RGB-g'。

例如,终端可以采用以下公式三,计算第一图片501像素点b叠加后的颜色值RGB-b':

RGB-g'=(RGB-g)+(RGB-h)*(T-f)(公式三)

即像素点g叠加后的颜色值RGB-f'可以是像素点g的颜色值RGB-b和像素点h颜色值RGB-h与像素点f的透明度T-f的乘积之和。

进一步的,为了将终端的方位信息中的各个分量(如x轴分量和y轴分量)限定在一定范围内,以方便后续的数据计算或者保证程序运行时收敛加快。如图18所示,在图14所示的S1404之后,S1405之前,本发明实施例的方法还可以包括S1801:

S1801:终端对方位信息进行归一化。

其中,终端对方位信息进行归一化可以参考本发明实施例第一种应用场景中的详细描述,本发明实施例这里不再赘述。

相应的,如图18所示,上述S1405可以替换为S1405b:

S1405b:终端终端根据归一化后的方位信息、第一图片、光源和遮罩图片,获得第二图片,该第二图片是上述第一图片叠加遮罩图片,以及按照归一化后的方位信息移动后的光源,生成的包括漫反射对象和漫反射效果的图像。

本发明实施例提供的图像处理方法,终端在为漫反射对象添加动态漫反射效果的过程中,并不需要在终端中配置多个光照模型,而是叠加预先设计好的第一图片、遮罩图片,以及按照方位信息移动后的光源,进行简单计算,便可以得到包括漫反射对象和漫反射效果的第二图片。即可以减少添加漫反射效果时的计算量。即使运算能力有限的嵌入式终端,也可以使用本发明实施例提供的方法为漫反射对象添加动态漫反射效果。即通过本方案,可以以较低运算资源实现实时漫反射效果。

进一步的,在本发明实施例的另一种应用场景中,可以通过移动包括漫反射对象的图片(如上述任一种应用场景中的第一图片),为漫反射对象添加动态漫反射效果。

在这种应用场景的一种实现方式中,该图像处理方法可以包括:该图像处理方法可以包括:终端获取第一图片,该第一图片中包括漫反射对象,该第一图片是漫反射对象被光源照射时获取的图片;终端获取与漫反射对象对应的遮罩图片;终端获取与上述漫反射对象对应的遮罩图片;终端获取该终端的方位信息;终端根据上述方位信息、第一图片和遮罩图片,获得第二图片,该第二图片是按照上述方位信息移动后的第一图片叠加上述遮罩图片,生成的包括漫反射对象和漫反射效果的图像。

可选的,在这种实现方式中,终端还可以在上述方位信息移动后的第一图片叠加遮罩图片和光源,以获得包括漫反射对象和漫反射效果的图像的第二图片。该光源可以为光源图片。其中,光源和光源图片可以参考上述第一种应用场景中对应内容的详细介绍,本发明实施例这里不再赘述。

在这种应用场景的另一种实现方式中,该图像处理方法可以包括:终端获取第一图片,该第一图片中包括漫反射对象,该第一图片是没有光源照射该漫反射对象时获取的图片;终端获取与漫反射对象对应的遮罩图片;终端获取光源;终端获取该终端的方位信息;终端根据方位信息、第一图片、光源和遮罩图片,获得第二图片,该第二图片是按照方位信息移动的第一图片叠加遮罩图片,以及光源,生成的包括漫反射对象和漫反射效果的图像。

其中,本发明实施例的这种应用场景中提供的图像处理方法的各方法步骤的详细描述,可以参考上述任一种应用场景中对应内容的详细介绍,本发明实施例这里不再赘述。

上述主要从终端的图像处理过程的角度对本申请实施例提供的方案进行了介绍。可以理解的是,终端为了实现上述功能,其包含了执行各个功能相应的功能模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的终端及算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

本申请实施例提供终端用以实现上述各方法实施例,具体的,可以根据上述方法示例对终端进行划分,例如,可以对应各个功能划分各个模块或者单元,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件模块或者单元的形式实现。其中,本申请实施例中对模块或者单元的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。

图19示出了上述实施例中所涉及的终端的一种可能的结构示意图。在本发明实施例的第一种应用场景中,如图19所示,该终端1900可以包括:第一获取模块1901、第二获取模块1902、第三获取模块1903和漫反射模块1904。

其中,在本发明实施例的第一种应用场景中,第一获取模块1901用于支持方法实施例中的S301,和/或用于本文所描述的技术的其它过程。第二获取模块1902用于支持方法实施例中的S302,和/或用于本文所描述的技术的其它过程。第三获取模块1903用于支持方法实施例中的S303,和/或用于本文所描述的技术的其它过程。漫反射模块1904用于支持方法实施例中的S304、S304a、S304b、Sa、Sb,和/或用于本文所描述的技术的其它过程。

进一步的,在本发明实施例的第一种应用场景中,如图20所示,上述终端1900还可以包括:第四获取模块1905。该第四获取模块1905,用于支持方法实施例中的S601,和/或用于本文所描述的技术的其它过程。

进一步的,在本发明实施例的第一种应用场景中,如图21所示,上述终端1900还可以包括:归一化模块1906。该归一化模块1906,用于支持方法实施例中的S1301,和/或用于本文所描述的技术的其它过程。

图20示出了上述实施例中所涉及的终端的一种可能的结构示意图。在本发明实施例的第二种应用场景中,如图20所示,该终端1900可以包括:第一获取模块1901、第二获取模块1902、第三获取模块1903、第四获取模块1905和漫反射模块1904。

其中,在本发明实施例的第二种应用场景中,第一获取模块1901用于支持方法实施例中的S1401,和/或用于本文所描述的技术的其它过程。第二获取模块1902用于支持方法实施例中的S1402,和/或用于本文所描述的技术的其它过程。第三获取模块1903用于支持方法实施例中的S1403,和/或用于本文所描述的技术的其它过程。第四获取模块1905用于支持方法实施例中的S1404,和/或用于本文所描述的技术的其它过程。漫反射模块1904用于支持方法实施例中的S1405、S1405a、S1405b、Sc,和/或用于本文所描述的技术的其它过程。

进一步的,在本发明实施例的第二种应用场景中,如图21所示,上述终端1900还可以包括:归一化模块1906。该归一化模块1906,用于支持方法实施例中的S1801,和/或用于本文所描述的技术的其它过程。

进一步的,上述终端1900还可以包括:存储模块。该存储模块,用于保存第一图片、第三图片等,和/或用于本文所描述的技术的其它过程。

当然,终端1900包括但不限于上述所列举的单元模块,例如,终端1900还可以包括用于向其他设备发送数据或者信号的发送模块,用于接收其他设备发来的数据或者信号的接收模块等。并且,上述模块的具体所能够实现的功能也包括但不限于上述实例所述的方法步骤对应的功能,终端1900的其他单元以及终端1900的各个单元详细描述可以参考其所对应方法步骤的详细描述,本申请实施例这里不再赘述。

在采用集成的单元的情况下,上述第一获取模块1901、第二获取模块1902、第三获取模块1903和漫反射模块1904等可以集成在一个处理单元中实现,该处理单元可以是处理器或控制器,例如可以是CPU,图形处理器(Graphics Processing Unit,GPU),通用处理器,数字信号处理器(Digital Signal Processor,DSP),专用集成电路(Application-Specific Integrated Circuit,ASIC),现场可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种举例说明逻辑方框,模块和电路。所述处理单元也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。上述存储模块可以是存储器。

当所述处理单元为处理器,存储模块为存储器时,本申请实施例所涉及的终端1900可以为图22所示的终端2200。如图22所示,该终端2200包括:存储器2202、显示器2203和一个或多个处理器2201。其中,一个或多个处理器2201、存储器2202和显示器2203通过总线2204相互连接。其中,显示器2203用于显示一个或多个处理器2201的生成的图像。

其中,存储器2202用于存储计算机程序代码,该计算机程序代码序包括指令,当终端2200的一个或多个处理器2201执行指令时,终端2200执行如图3、图11、图13、图14、图17和图18中任一附图中的相关方法步骤实现上述实施例中的图像处理方法。

其中,总线2204可以是外设部件互连标准(Peripheral Component Interconnect,PCI)总线或扩展工业标准结构(Extended Industry Standard Architecture,EISA)总线等。所述总线2204可以分为地址总线、数据总线、控制总线等。为便于表示,图22中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。

进一步的,如图23所示,上述终端还可以包括传感器2205,该传感器2205可以为运动传感器,如方向传感器,该传感器2205用于采集上述终端2200的方位信息。

本发明实施例还提供一种计算机存储介质,该计算机存储介质中存储有计算机程序代码,当终端2200的一个或多个处理器2201执行该计算机程序代码时,该终端2200执行图3、图11、图13、图14、图17和图18中任一附图中的相关方法步骤实现上述实施例中的图像处理方法。

本发明实施例还提供了一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行图3、图11、图13、图14、图17和图18中任一附图中的相关方法步骤实现上述实施例中的图像处理方法。

其中,本发明实施例提供的终端1900、终端2200、计算机存储介质或者计算机程序产品均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。

通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:快闪存储器、移动硬盘、只读存储器、随机存取存储器、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1