前后摄像头拍照融合的方法、终端设备和存储介质与流程

文档序号:32161224发布日期:2022-11-12 02:37阅读:235来源:国知局
前后摄像头拍照融合的方法、终端设备和存储介质与流程

1.本技术属于图像处理技术领域,尤其涉及一种前后摄像头拍照融合的方法、终端设备和存储介质。


背景技术:

2.目前,移动终端的拍照功能日趋丰富,从单一摄像头发展到双摄、三摄、四摄等。目前,前摄加后置双摄成为移动终端的基本配置,一般前摄用于自拍人像,而后摄可以拍景也可以拍人。传统的相机一般前后摄各自单独使用,但近来逐渐有厂商开始融合前后摄图像,将前摄所拍图像与后摄所拍图像拼接或融合为一副图像,达到双景拍照的功能。
3.相关前后摄融合拍照的方法中,只能进行二维空间融合,从前摄中提取的人像区域只能在后摄背景图像中调整其二维坐标位置,而对深度方向不能调整。同时前摄所拍图像的光源与后摄所拍图像光源的光照方向可能并不一致,导致融合后的图像人像的光照与整体背景的光照不一致。
4.因此,如何在三维空间的前后摄像头实现融合拍照是业界关注的问题。


技术实现要素:

5.本技术的目的是提供一种前后摄像头拍照融合的方法、终端设备、和存储介质,用以解决相关技术中无法在三维空间的前后摄像头实现融合拍照的问题。
6.第一方面,本技术提供了一种前后摄像头拍照融合的方法,所述方法包括:
7.根据前置摄像头采集的数据确定人物图像,根据后置摄像头对背景数据的采集,确定背景图像及背景深度图像;
8.对所述人物图像进行人物区域分割,得到人物区域系数矩阵;
9.基于所述背景深度图像,确定所述人物图像中人物在所述背景图像中的三维空间坐标并触发融合指令,所述三维空间坐标包括深度坐标、横向坐标和纵向坐标;
10.响应于融合指令,对人物区域系数矩阵和所述人物图像按照缩放比例进行缩放,转换为在后置摄像头对应的焦距及视野下对应的第二人物区域系数矩阵和第二人物图像;
11.根据所述人物的三维空间坐标、第二人物区域系数矩阵和第二人物图像,确定将人物调整到对应的三维空间坐标所对应的第三人物图像及第三人物区域系数矩阵;
12.利用第三人物区域系数矩阵融合所述第三人物图像与所述背景图像,得到融合图像。
13.在一种可能的实施方式中,所述确定背景图像及背景深度图像,包括:
14.利用双目的后置摄像头采集两帧背景图像,基于三角测量原理,根据所述两帧背景图像确定背景深度图像;或者
15.采用tof深度后置摄像头确定背景深度图像,采用rgb彩色后置摄像头确定背景图像。
16.在一种可能的实施方式中,所述缩放比例采用如下方式确定:
[0017][0018]
其中,s表示所述缩放比例,f1表示前置摄像头的前置焦距,f2表示后置摄镜头的后置焦距,z1表示设置的人物在所述背景图像中的深度坐标,z2表示前置摄像采集人物图像时人物距离前置摄像头的物理距离。
[0019]
在一种可能的实施方式中,根据第二人物区域系数矩阵和第二人物图像,确定将人物调整到对应的三维空间坐标所对应的第三人物图像,包括:
[0020]
创建初始的第三人物图像,将初始的第三人物图像中任一位置像素点的值设置为0,所述初始的第三人物图的行列数与所述背景图像的行列数相同;
[0021]
若初始的第三人物图像中任一位置像素点的横坐标不小于x1,且不大于w2与x1+w1的较小值,初始的第三人物图像中任一位置像素点的纵坐标不小于y1,且不大于h2与y1+h1的较小值,将所述第二人物图像相同位置的像素点的值赋值给初始的第三人物图像中同一位置的像素点,得到第三人物图像;
[0022]
其中,x1表示设置的人物在所述背景图像中的横向坐标,w1表示第二人物图像对应矩阵的列数,w2表示初始的第三人物图像对应矩阵的列数,y1表示设置的人物在所述背景图像中的纵向坐标,h1表示所述第二人物图像对应矩阵的行数,h2表示初始的第三人物图像对应矩阵的行数。
[0023]
在一种可能的实施方式中,根据所述人物的三维空间坐标、第二人物区域系数矩阵和第二人物图像,确定将人物调整到对应的三维空间坐标所对应的第三人物区域系数矩阵,包括:
[0024]
创建初始的第三人物区域系数矩阵,将初始的第三人物区域系数矩阵的值设置为0,所述初始的第三人物区域系数矩阵的行列数与所述背景图像对应矩阵的行列数相同;
[0025]
若初始的第三人物区域系数矩阵中任一位置的元素的横坐标不小于x1,且不大于w2与x1+w1的较小值,初始的第三人物区域系数矩阵中任一位置的元素的纵坐标不小于y1,且不大于h2与y1+h1的较小值,以及所述设置的人物在所述背景图像中的深度坐标不大于d1(i,j),将所述第二人像区域系数矩阵相同位置的元素的值赋值给初始的第三人物区域系数矩阵同一位置的元素,得到第三人物区域系数矩阵;
[0026]
其中,x1表示设置的人物在所述背景图像中的横向坐标,w1表示第二人物图像对应矩阵的列数,w2表示初始的第三人物区域系数矩阵的列数,y1表示设置的人物在所述背景图像中的纵向坐标,h1表示所述第二人物图像对应矩阵的行数,h2表示初始的第三人物区域系数矩阵的行数,d1(i,j)表示所述背景深度图像中(i,j)位置像素点的值。
[0027]
在一种可能的实施方式中,利用第三人物区域系数矩阵融合所述第三人物图像与所述背景图像,得到融合图像,包括:
[0028]
采用以下公式确定融合图像:
[0029]
p5=β
×
p4+(1-β)
×
p2[0030]
其中,p5表示融合图像,β表示融合系数,p4表示融合人物图像,p2表示背景图像。
[0031]
在一种可能的实施方式中,所述方法还包括:
[0032]
在显示界面上显示融合图像,及根据背景深度图像确定人物在背景图像中深度坐标的调整范围对应的空间深度滑动条;
[0033]
响应于滑动指令,确定在预设深度范围调节融合图像中人物距离移动终端后置摄像头的距离,得到人物更新后的深度坐标;
[0034]
响应于拖动指令,确定在预设区域范围调节融合图像中人物区域的位置,确定人物更新后的横向坐标和纵向坐标;
[0035]
将人物更新后的三维空间坐标作为人物的三维空间坐标,并重新触发融合指令;所述人物更新后的三维空间坐标包括更新后的深度坐标,横坐标和纵坐标。
[0036]
在一种可能的实施方式中,根据前置摄像头采集的数据确定人物图像,包括:
[0037]
采用前置摄像头采集原始人物图像;
[0038]
采用深度学习重光照模型对背景图像进行处理,确定光照位置;
[0039]
根据所述光照位置和所述原始人物图像生成人物图像。
[0040]
第二方面,本技术还提供了一种前后摄像头拍照融合的装置,所述装置包括:
[0041]
图像确定模块,被配置为根据前置摄像头采集的数据确定人物图像,根据后置摄像头对背景数据的采集,确定背景图像及背景深度图像;
[0042]
人物区域系数矩阵确定模块,被配置为对所述人物图像进行人物区域分割,得到人物区域系数矩阵;
[0043]
三维空间坐标确定模块,被配置为基于所述背景深度图像,确定所述人物图像中人物在所述背景图像中的三维空间坐标并触发融合指令,所述三维空间坐标包括深度坐标、横向坐标和纵向坐标;
[0044]
数据转换模块,被配置为响应于融合指令,对人物区域系数矩阵和所述人物图像按照缩放比例进行缩放,转换为在后置摄像头对应的焦距及视野下对应的第二人物区域系数矩阵和第二人物图像;
[0045]
融合参数确定模块,被配置为根据所述人物的三维空间坐标、第二人物区域系数矩阵和第二人物图像,确定将人物调整到对应的三维空间坐标所对应的第三人物图像及第三人物区域系数矩阵;
[0046]
图像融合模块,被配置为利用第三人物区域系数矩阵融合所述第三人物图像与所述背景图像,得到融合图像。
[0047]
在一种可能的实施方式中,执行所述确定背景图像及背景深度图像,所述图像确定模块被配置为:
[0048]
利用双目的后置摄像头采集两帧背景图像,基于三角测量原理,根据所述两帧背景图像确定背景深度图像;或者
[0049]
采用tof深度后置摄像头确定背景深度图像,采用rgb彩色后置摄像头确定背景图像。
[0050]
在一种可能的实施方式中,所述缩放比例采用如下方式确定:
[0051][0052]
其中,s表示所述缩放比例,f1表示前置摄像头的前置焦距,f2表示后置摄镜头的后置焦距,z1表示设置的人物在所述背景图像中的深度坐标,z2表示前置摄像采集人物图像时人物距离前置摄像头的物理距离。
[0053]
在一种可能的实施方式中,执行根据第二人物区域系数矩阵和第二人物图像,确
定将人物调整到对应的三维空间坐标所对应的第三人物图像,所述融合参数确定模块被配置为:
[0054]
创建初始的第三人物图像,将初始的第三人物图像中任一位置像素点的值设置为0,所述初始的第三人物图的行列数与所述背景图像的行列数相同;
[0055]
若初始的第三人物图像中任一位置像素点的横坐标不小于x1,且不大于w2与x1+w1的较小值,初始的第三人物图像中任一位置像素点的纵坐标不小于y1,且不大于h2与y1+h1的较小值,将所述第二人物图像相同位置的像素点的值赋值给初始的第三人物图像中同一位置的像素点,得到第三人物图像;
[0056]
其中,x1表示设置的人物在所述背景图像中的横向坐标,w1表示第二人物图像对应矩阵的列数,w2表示初始的第三人物图像对应矩阵的列数,y1表示设置的人物在所述背景图像中的纵向坐标,h1表示所述第二人物图像对应矩阵的行数,h2表示初始的第三人物图像对应矩阵的行数。
[0057]
在一种可能的实施方式中,执行根据所述人物的三维空间坐标、第二人物区域系数矩阵和第二人物图像,确定将人物调整到对应的三维空间坐标所对应的第三人物区域系数矩阵,所述融合参数确定模块被配置为:
[0058]
创建初始的第三人物区域系数矩阵,将初始的第三人物区域系数矩阵的值设置为0,所述初始的第三人物区域系数矩阵的行列数与所述背景图像对应矩阵的行列数相同;
[0059]
若初始的第三人物区域系数矩阵中任一位置的元素的横坐标不小于x1,且不大于w2与x1+w1的较小值,初始的第三人物区域系数矩阵中任一位置的元素的纵坐标不小于y1,且不大于h2与y1+h1的较小值,以及所述设置的人物在所述背景图像中的深度坐标不大于d1(i,j),将所述第二人像区域系数矩阵相同位置的元素的值赋值给初始的第三人物区域系数矩阵同一位置的元素,得到第三人物区域系数矩阵;
[0060]
其中,x1表示设置的人物在所述背景图像中的横向坐标,w1表示第二人物图像对应矩阵的列数,w2表示初始的第三人物区域系数矩阵的列数,y1表示设置的人物在所述背景图像中的纵向坐标,h1表示所述第二人物图像对应矩阵的行数,h2表示初始的第三人物区域系数矩阵的行数,d1(i,j)表示所述背景深度图像中(i,j)位置像素点的值。
[0061]
在一种可能的实施方式中,执行利用第三人物区域系数矩阵融合所述第三人物图像与所述背景图像,得到融合图像,所述融合模块被配置为:
[0062]
采用以下公式确定融合图像:
[0063]
p5=β
×
p4+(1-β)
×
p2[0064]
其中,p5表示融合图像,β表示融合系数,p4表示融合人物图像,p2表示背景图像。
[0065]
在一种可能的实施方式中,所述装置还包括:
[0066]
显示模块,被配置为在显示界面上显示融合图像,及根据背景深度图像确定人物在背景图像中深度坐标的调整范围对应的空间深度滑动条;
[0067]
第一坐标确定模块,被配置为响应于滑动指令,确定在预设深度范围调节融合图像中人物距离移动终端后置摄像头的距离,得到人物更新后的深度坐标;
[0068]
第二坐标确定模块,被配置为响应于拖动指令,确定在预设区域范围调节融合图像中人物区域的位置,确定人物更新后的横向坐标和纵向坐标;
[0069]
融合指令触发模块,被配置为将人物更新后的三维空间坐标作为人物的三维空间
坐标,并重新触发融合指令;所述人物更新后的三维空间坐标包括更新后的深度坐标,横坐标和纵坐标。
[0070]
在一种可能的实施方式中,执行根据前置摄像头采集的数据确定人物图像,所述图像确定模块被配置为:
[0071]
采用前置摄像头采集原始人物图像;
[0072]
采用深度学习重光照模型对背景图像进行处理,确定光照位置;
[0073]
根据所述光照位置和所述原始人物图像生成人物图像。
[0074]
第三方面,本技术实施例提供了一种终端设备,包括:
[0075]
显示器,用于显示所述采集的图像;
[0076]
存储器,用于存储处理器的可执行指令;
[0077]
处理器,用于执行所述可执行指令,以实现如本技术第一方面中提供的任一项所述的前后摄像头拍照融合的方法。
[0078]
第四方面,本技术一实施例还提供了一种计算机可读存储介质,当所述计算机可读存储介质中的指令由终端设备的处理器执行时,使得终端设备能够执行如本技术第一方面中提供的任一项所述的前后摄像头拍照融合的方法。
[0079]
第五方面,本技术一实施例提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如本技术第一方面中提供的任一项所述的前后摄像头拍照融合的方法。
[0080]
本技术的实施例提供的技术方案至少带来以下有益效果:
[0081]
本技术中,通过前置摄像头获取人物图像,并通过后置摄像头获取背景图像和背景深度图像,并根据人像的三维空间坐标、人物区域系数矩阵和人物图像,确定进行图像融合的相关图像融合参数,最终,利用第三人物区域系数矩阵融合人物图像与背景图像,得到融合图像。相较于相关技术中只能根据设定二维空间中前置摄像头获取的人像坐标确定相关图像融合参数,实现了三维空间的图像融合,在遮挡关系及人像与周边环境事物大小比例上更加真实,融合效果更好,同时用户使用本技术提供的方案时,可以人为调整人像与背景的相对距离,提高了用户的使用体验。
[0082]
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本技术。在符合本领域常识的基础上,上述各优选条件,可任意组合,即得本技术各较佳实施例。
附图说明
[0083]
为了更清楚地说明本技术实施例的技术方案,下面将对本技术实施例中所需要使用的附图作简单地介绍,显而易见地,下面所介绍的附图仅仅是本技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0084]
图1为本技术实施例提供的一种终端的结构示意图;
[0085]
图2为本技术实施例提供的一种终端的软件架构示意图;
[0086]
图3为本技术实施例提供的一种前后摄像头拍照融合的方法的应用场景示意图;
[0087]
图4为本技术实施例提供的一种用户开启摄像头进行拍照的应用界面示意图;
[0088]
图5为本技术实施例提供的一种前后摄像头拍照融合的方法的流程示意图;
[0089]
图6为本技术实施例提供的终端设备的后置摄像头的类型示意图;
[0090]
图7为本技术实施例提供的人物图像的示意图;
[0091]
图8为本技术实施例提供的背景图像的示意图;
[0092]
图9为本技术实施例提供的步骤505中确定第三人物图像的流程示意图;
[0093]
图10为本技术实施例提供的初始的第三人物图像中任一位置像素点位于背景图像的人物区域范围内的示意图;
[0094]
图11为本技术实施例提供的初始的第三人物图像中任一位置像素点位于背景图像的人物区域范围内的示意图;
[0095]
图12为本技术实施例提供的步骤505中确定第三人物区域系数矩阵的流程示意图;
[0096]
图13为本技术实施例提供的人物图像位于背景图像的前边的示意图;
[0097]
图14为本技术实施例提供的人物图像位于背景图像的后边的示意图;
[0098]
图15为本技术实施例提供的人物与背景的相对距离的流程示意图;
[0099]
图16为本技术实施例提供的显示界面的示意图;
[0100]
图17为本技术实施例提供的人物图像位于背景图像的前边的效果示意图;
[0101]
图18为本技术实施例提供的人物图像位于背景图像的后边的效果示意图;
[0102]
图19为本技术实施例提供的步骤501中根据前置摄像头采集的数据确定人物图像的流程示意图;
[0103]
图20为本技术实施例提供的前后摄像头拍照融合的装置的结构示意图。
具体实施方式
[0104]
为使本技术实施例的目的、技术方案和优点更加清楚,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述。其中,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本技术保护的范围。
[0105]
并且,在本技术实施例的描述中,除非另有说明,“/”表示或的意思,例如,a/b可以表示a或b;文本中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况,另外,在本技术实施例的描述中,“多个”是指两个或多于两个。
[0106]
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为暗示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”、的特征可以明示或者隐含地包括一个或者更多个该特征。
[0107]
首先,图1示出了一种终端100的结构示意图。
[0108]
下面以终端100为例对实施例进行具体说明。应该理解的是,图1所示终端100仅是一个范例,并且终端100可以具有比图1中所示的更多的或者更少的部件,可以组合两个或多个的部件,或者可以具有不同的部件配置。图中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
[0109]
图1中示例性示出了根据示例性实施例中终端100的硬件配置框图。如图1所示,终
端100包括:射频(radio frequency,rf)电路110、存储器120、显示单元130、摄像头140、传感器150、音频电路160、无线保真(wireless fidelity,wi-fi)模块170、处理器180、蓝牙模块181、以及电源190等部件。
[0110]
rf电路110可用于在收发信息或通话过程中信号的接收和发送,可以接收基站的下行数据后交给处理器180处理;可以将上行数据发送给基站。通常,rf电路包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等器件。
[0111]
存储器120可用于存储软件程序及数据。处理器180通过运行存储在存储器120的软件程序或数据,从而执行终端100的各种功能以及数据处理。存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。存储器120存储有使得终端100能运行的操作系统。本技术中存储器120可以存储操作系统及各种应用程序,还可以存储执行本技术实施例所述方法的程序代码。
[0112]
显示单元130可用于接收输入的数字或字符信息,产生与终端100的用户设置以及功能控制有关的信号输入,具体地,显示单元130可以包括设置在终端100正面的触摸屏131,可收集用户在其上或附近的触摸操作,例如启动摄像头、关闭摄像头、点击按钮,拖动滚动框等。
[0113]
显示单元130还可用于显示由用户输入的信息或提供给用户的信息以及终端100的各种菜单的图形用户界面(graphical user interface,gui)。具体地,显示单元130可以包括设置在终端100正面的显示屏132。其中,显示屏132可以采用液晶显示器、发光二极管等形式来配置。显示单元130可以用于显示本技术中所述的用户开启摄像头进行拍照的界面。
[0114]
其中,触摸屏131可以覆盖在显示屏132之上,也可以将触摸屏131与显示屏132集成而实现终端100的输入和输出功能,集成后可以简称触摸显示屏。本技术中显示单元130可以显示应用程序以及对应的操作步骤。
[0115]
摄像头140可用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,ccd)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,cmos)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给处理器180转换成数字图像信号。
[0116]
终端100还可以包括至少一种传感器150,比如加速度传感器151、距离传感器152、指纹传感器153、温度传感器154。终端100还可配置有陀螺仪、气压计、湿度计、温度计、红外线传感器、光传感器、运动传感器等其他传感器。
[0117]
音频电路160、扬声器161、麦克风162可提供用户与终端100之间的音频接口。音频电路160可将接收到的音频数据转换后的电信号,传输到扬声器161,由扬声器161转换为声音信号输出。终端100还可配置音量按钮,用于调节声音信号的音量。另一方面,麦克风162将收集的声音信号转换为电信号,由音频电路160接收后转换为音频数据,再将音频数据输出至rf电路110以发送给比如另一终端,或者将音频数据输出至存储器120以便进一步处理。本技术中麦克风162可以获取用户的语音。
[0118]
wi-fi属于短距离无线传输技术,终端100可以通过wi-fi模块170帮助用户收发电子邮件、浏览网页和访问流媒体等,它为用户提供了无线的宽带互联网访问。
[0119]
处理器180是终端100的控制中心,利用各种接口和线路连接整个终端的各个部分,通过运行或执行存储在存储器120内的软件程序,以及调用存储在存储器120内的数据,执行终端100的各种功能和处理数据。在一些实施例中,处理器180可包括一个或多个处理单元;处理器180还可以集成应用处理器和基带处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,基带处理器主要处理无线通信。可以理解的是,上述基带处理器也可以不集成到处理器180中。本技术中处理器180可以运行操作系统、应用程序、用户界面显示及触控响应,以及本技术实施例所述的方法。另外,处理器180与显示单元130耦接。
[0120]
蓝牙模块181,用于通过蓝牙协议来与其他具有蓝牙模块的蓝牙设备进行信息交互。例如,终端100可以通过蓝牙模块181与同样具备蓝牙模块的可穿戴终端设备(例如智能手表)建立蓝牙连接,从而进行数据交互。
[0121]
终端100还包括给各个部件供电的电源190(比如电池)。电源可以通过电源管理系统与处理器180逻辑相连,从而通过电源管理系统实现管理充电、放电以及功耗等功能。终端100还可配置有电源按钮,用于终端的开机和关机,以及锁屏等功能。
[0122]
图2是本技术实施例的终端100的软件结构框图。
[0123]
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,可将android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(android runtime)和系统库,以及内核层。
[0124]
应用程序层可以包括一系列应用程序包。
[0125]
如图2所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,wlan,蓝牙,音乐,视频,短信息等应用程序。
[0126]
应用程序框架层为应用程序层的应用程序提供应用编程接口(application programming interface,api)和编程框架。应用程序框架层包括一些预先定义的函数。
[0127]
如图2所示,应用程序框架层可以分为java侧以及native侧,java侧包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器,应用管理器等。
[0128]
如图2所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。
[0129]
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
[0130]
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿、短信息等。
[0131]
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括控制单前置摄像头的界面、短信息通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
[0132]
电话管理器用于提供终端100的通信功能。例如通话状态的管理(包括接通,挂断等)。
[0133]
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等。
[0134]
通知管理器使应用程序可以在状态栏中显示通知信息(例如短信息的消息摘要,消息内容),可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如
通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,终端振动,指示灯闪烁等。
[0135]
native侧的服务位于应用程序框架层的native侧,与系统库相邻。
[0136]
android runtime包括核心库和虚拟机。android runtime负责安卓系统的调度和管理。
[0137]
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
[0138]
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
[0139]
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(media libraries),三维图形处理库(例如:opengl es),2d图形引擎(例如:sgl)以及相机服务等。
[0140]
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2d和3d图层的融合。
[0141]
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:mpeg4,h.264,mp3,aac,amr,jpg,png等。
[0142]
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
[0143]
2d(一种动画方式)图形引擎是2d绘图的绘图引擎。
[0144]
相机服务用于常见逻辑摄像头对象,并为其配置相应的参数信息等。
[0145]
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
[0146]
下面结合捕获拍照场景,示例性说明终端100软件以及硬件的工作流程。
[0147]
当触摸屏131接收到触摸操作,相应的硬件中断被发给内核层。内核层将触摸操作加工成原始输入事件(包括触摸坐标,触摸操作的时间戳等信息)。原始输入事件被存储在内核层。应用程序框架层从内核层获取原始输入事件,识别该输入事件所对应的控件。以该触摸操作是触摸单击操作,该单击操作所对应的控件为相机应用图标的控件为例,相机应用调用应用框架层的接口,启动相机应用,进而通过调用内核层启动摄像头驱动,通过摄像头140捕获静态图像或视频。
[0148]
本技术实施例中的终端100可以为手机、平板电脑、可穿戴设备、笔记本电脑以及电视等具有前置摄像头和后置摄像头的终端设备。
[0149]
下面将结合实施例对本技术提供的前后摄像头拍照融合的方法进行介绍。
[0150]
本技术的发明构思可概括为:首先,根据前置摄像头采集的数据确定人物图像,根据后置摄像头对背景数据的采集,确定背景图像及背景深度图像,对人物图像进行人物区域分割,得到人物区域系数矩阵,基于背景深度图像,确定人物图像中人物在背景图像中的三维空间坐标并触发融合指令,三维空间坐标包括深度坐标、横向坐标和纵向坐标,响应于融合指令,对人物区域系数矩阵和所述人物图像按照缩放比例进行缩放,转换为在后置摄
像头对应的焦距及视野下对应的第二人物区域系数矩阵和第二人物图像,根据人物的三维空间坐标、第二人物区域系数矩阵和第二人物图像,确定将人物调整到对应的三维空间坐标所对应的第三人物图像及第三人物区域系数矩阵,利用第三人物区域系数矩阵融合所述第三人物图像与所述背景图像,得到融合图像。
[0151]
综上所述,本技术实施例通过后置摄像头获取深度图,并根据设定的前置摄像头获取的人像的三维空间坐标、第二人物区域系数矩阵和第二人物图像,确定进行图像融合的相关图像融合参数,相较于相关技术中只能根据设定二维空间中前置摄像头获取的人像坐标确定相关图像融合参数,实现了三维空间的图像融合,在遮挡关系及人像与周边环境事物大小比例上更加真实,融合效果更好,同时用户使用本技术提供的方案时,可以人为调整人像与背景的相对距离,提高了用户的使用体验。
[0152]
在介绍完本技术实施例的主要发明思想之后,下面对本技术实施例的技术方案能够适用的应用场景做一些简单介绍,需要说明的是,以下介绍的应用场景仅用于说明本技术实施例而非限定。在具体实施时,可以根据实际需要灵活地应用本技术实施例提供的技术方案。
[0153]
参考图3,其为本技术实施例提供的用户使用终端设备进行拍照的场景示意图。图中包括:用户、终端设备和拍照的对象。在用户使用终端设备进行拍照的场景下,通过本技术实施例提供的方法,可利用终端设备获取生成图像需要的相关数据,并根据该相关数据实现人像与背景的图像融合。
[0154]
本技术中的描述中仅就单个终端设备加以详述,但是本领域技术人员应当理解的是,示出的用户、终端设备和拍照的对象旨在表示本技术的技术方案涉及的用户、终端设备和拍照的对象的操作。对单个终端设备加以详述至少为了说明方便,而非暗示对终端设备的数量、类型或是位置等具有限制。应当注意,如果向图示环境中添加附加模块或从其中去除个别模块,不会改变本技术的示例实施例的底层概念。
[0155]
当然,本技术实施例提供的使用场景并不限于图3所示的应用场景,还可以用于其它可能的应用场景,本技术实施例并不进行限制。
[0156]
参考图4,其为本技术实施例提供的用户开启摄像头进行拍照的界面示意图。该界面为打开摄像功能的界面,包括拍照、摄像以及人像等功能,该终端设备至少包括一个前置摄像头和一个后置摄像头,采用前置摄像头和后置摄像头对相关对象进行图像采集,并通过本技术实施例提供的方法,实现人像与背景的图像融合。
[0157]
基于上述描述,本技术实施例提供了一种前后摄像头拍照融合的方法,该方法的流程示意图如图5所示,可包括以下内容:
[0158]
在步骤501中,根据前置摄像头采集的数据确定人物图像,根据后置摄像头对背景数据的采集,确定背景图像及背景深度图像。
[0159]
在一种可能的实施方式中,终端设备的前置摄像头和后置摄像头的类型多种多样,如图6所示,主要包括以下两种情况:
[0160]
情况一:后置摄像头为双目的后置摄像头。
[0161]
情况二、后置摄像头为tof深度后置摄像头和rgb彩色后置摄像头。
[0162]
针对上述情况一,步骤501中确定背景图像及背景深度图像,可具体实施为:
[0163]
利用双目的后置摄像头采集两帧背景图像,基于三角测量原理,根据两帧背景图
像确定背景深度图像。例如,前置摄像头获取的人物图像为图像p1,后置摄像头采集的两帧背景图像分别为p2和p3,基于三角测量原理,并根据两帧背景图像p2、p3确定背景深度图像d1。
[0164]
针对上述情况二,步骤501中确定背景图像及背景深度图像,可具体实施为:
[0165]
采用tof深度后置摄像头确定背景深度图像,采用rgb彩色后置摄像头确定背景图像。例如,前置摄像头获取的人物图像为图像p1,tof深度后置摄像头采集的背景深度图像为d1,rgb彩色后置摄像头获取的背景图像为p2。
[0166]
由此,在步骤501中,本技术实施例获取到人物图像p1、背景图像p2以及背景深度图像d1,以进行后续人物图像与背景图像进行融合的步骤。
[0167]
在步骤502中,对人物图像进行人物区域分割,得到人物区域系数矩阵。
[0168]
在一种可能的实施方式中,人物区域分割可以采用深度学习语义分割模型,比如deeplab v3,unet,pspnet,fcn,bisegnet等,或者采用抠图模型deep image matting,indexnet matting,adamatting等,经过采用上述模型进行人物区域分割后,本技术实施例得到一个人物区域系数矩阵,比如命名为α,其中α与人物图像p1有相同行列数,根据上述人物区域系数矩阵α和人物图像p1,本技术实施例能够得到人物区域图像f,其中,f=α
×
p1,且α∈[0,1]。
[0169]
在步骤503中,基于背景深度图像,确定人物图像中人物在背景图像中的三维空间坐标并触发融合指令,三维空间坐标包括深度坐标、横向坐标和纵向坐标。
[0170]
在一种可能的实施方式中,基于背景深度图像d1,将人物图像p1和背景图像p2进行融合,例如,人物图像p1如图7所示,背景图像p2如图8所示,其中黑色圆圈分别为人物图像p1的中心点和背景图像p2的中心点,将人物图像p1的中心点和背景图像p2的中心点进行重叠,并基于背景深度图像d1,本技术实施例能够确定人物图像中人物在背景图像中的三维空间坐标并触发融合指令,其中,三维空间坐标包括深度坐标(即人物图像中人物与背景图像中背景的距离)、横向坐标(即人物在背景图像中的横向坐标)和纵向坐标(即人物在背景图像中的纵向坐标)。
[0171]
需要说明的是,上述三维空间坐标是在人物图像p1和背景图像p2进行重叠融合情况下得到的,若融合图像的融合效果不佳,本技术实施例可以根据需求对三维空间坐标进行调整。
[0172]
在步骤504中,响应于融合指令,对人物区域系数矩阵和人物图像按照缩放比例进行缩放,转换为在后置摄像头对应的焦距及视野下对应的第二人物区域系数矩阵和第二人物图像。
[0173]
在一种可能的实施方式中,缩放比例采用如下方式确定:
[0174][0175]
其中,s表示缩放比例,f1表示前置摄像头的前置焦距,f2表示后置摄镜头的后置焦距,z1表示设置的人物在背景图像中的深度坐标,z2表示前置摄像采集人物图像时人物距离前置摄像头的物理距离。
[0176]
需要补充的是,上述前置焦距f1和后置焦距f2两个参数是相机的固定参数,可以根据相机规格书获得。本技术实施例对人物区域系数矩阵和人物图像按照缩放比例进行缩放
之后,得到新的人物区域系数矩阵α’和人物图像p1’,即得到第二人物区域系数矩阵α’和第二人物图像p1’,其行列数分别为h1和w1。
[0177]
在步骤505中,根据人物的三维空间坐标、第二人物区域系数矩阵和第二人物图像,确定将人物调整到对应的三维空间坐标所对应的第三人物图像及第三人物区域系数矩阵。
[0178]
在一种可能的实施方式中,步骤505中,根据第二人物区域系数矩阵和第二人物图像,确定将人物调整到对应的三维空间坐标所对应的第三人物图像,其流程图如图9所示,包括以下内容:
[0179]
在步骤901中,创建初始的第三人物图像,将初始的第三人物图像中任一位置像素点的值设置为0,初始的第三人物图像的行列数与背景图像的行列数相同。
[0180]
在步骤902中,若初始的第三人物图像中任一位置像素点的横坐标不小于x1,且不大于w2与x1+w1的较小值,初始的第三人物图像中任一位置像素点的纵坐标不小于y1,且不大于h2与y1+h1的较小值,将第二人物图像相同位置的像素点的值赋值给初始的第三人物图像中同一位置的像素点,得到第三人物图像。
[0181]
其中,x1表示设置的人物在背景图像中的横向坐标,w1表示第二人物图像对应矩阵的列数,w2表示初始的第三人物图对应矩阵的列数,y1表示设置的人物在背景图像中的纵向坐标,h1表示第二人物图像对应矩阵的行数,h2表示初始的第三人物图像对应矩阵的行数。
[0182]
例如,创建新的人物图像,即初始的第三人物图像,初始的第三人物图像中任一位置像素点的值设置为0,该初始的第三人物图像的行列数与背景图像p2的行列数相同,分别为h2和w2。分别对初始的第三人物图像中任一位置像素点进行赋值,赋值公式如下所示:
[0183]
p4=p1’(如果任一位置像素点(i,j),min(w2,x1+w1)≥i≥x1,min(h2,y1+h1)≥j≥y1),其他情况下,p4=0。
[0184]
上述赋值公式可以理解为本技术实施例提供的步骤902,若初始的第三人物图像中任一位置像素点的横坐标不小于x1,且不大于w2与x1+w1的较小值,初始的第三人物图像中任一位置像素点的纵坐标不小于y1,且不大于h2与y1+h1的较小值,将第二人物图像相同位置的像素点的值赋值给初始的第三人物图像中同一位置的像素点,得到第三人物图像p4。即若初始的第三人物图像中任一位置像素点位于背景图像的人物区域范围内,如图10所示,将第二人物图像相同位置的像素点的值赋值第三人物图像中同一位置的像素点,若初始的第三人物图像中任一位置像素点位于背景图像的人物区域范围外,如图11所示,将第三人物图像中同一位置的像素点的值赋值为0。
[0185]
在另一种可能的实施方式中,步骤505中,根据人物的三维空间坐标、第二人物区域系数矩阵和第二人物图像,确定将人物调整到对应的三维空间坐标所对应的第三人物区域系数矩阵,其流程图如图12所示,包括以下步骤:
[0186]
在步骤1201中,创建初始的第三人物区域系数矩阵,将初始的第三人物区域系数矩阵的值设置为0,初始的第三人物区域系数矩阵的行列数与背景图像对应矩阵的行列数相同。
[0187]
在步骤1202中,若初始的第三人物区域系数矩阵中任一位置的元素的横坐标不小于x1,且不大于w2与x1+w1的较小值,初始的第三人物区域系数矩阵中任一位置的元素的纵
坐标不小于y1,且不大于h2与y1+h1的较小值,以及设置的人物在背景图像中的深度坐标不大于d1(i,j),将第二人物区域系数矩阵相同位置的元素的值赋值给初始的第三人物区域系数矩阵同一位置的元素,得到第三人物区域系数矩阵。
[0188]
其中,x1表示设置的人物在背景图像中的横向坐标,w1表示第二人物图像对应矩阵的列数,w2表示初始的第三人物区域系数矩阵的列数,y1表示设置的人物在背景图像中的纵向坐标,h1表示第二人物图像对应矩阵的行数,h2表示初始的第三人物区域系数矩阵的行数,d1(i,j)表示背景深度图像中(i,j)位置像素点的值。
[0189]
例如,创建新的人物区域系数矩阵,即初始的第三人物区域系数矩阵,将初始的第三人物区域系数矩阵的值设置为0,该初始的第三人物图像的行列数与背景图像p2的行列数相同,分别为h2和w2。分别对初始的第三人物区域系数矩阵中任一位置的元素进行赋值,赋值公式如下所示:
[0190]
β=α’(如果任一位置的元素位置(i,j),min(w2,x1+w1)≥i≥x1,min(h2,y1+h1)≥j≥y1,同时,z1≤d1(i,j)),其他情况下,β=0。
[0191]
上述赋值公式可以理解为本技术实施例提供的步骤1102:若初始的第三人物区域系数矩阵中任一位置的元素的横坐标不小于x1,且不大于w2与x1+w1的较小值,初始的第三人物区域系数矩阵中任一位置的元素的纵坐标不小于y1,且不大于h2与y1+h1的较小值,以及设置的人物在背景图像中的深度坐标不大于d1(i,j),将第二人物区域系数矩阵相同位置的元素的值赋值给初始的第三人物区域系数矩阵同一位置的元素,得到第三人物区域系数矩阵。即若人物图像位于背景图像的前边,如上述图13所示,将第二人物区域系数矩阵相同位置的元素的值赋值给初始的第三人物区域系数矩阵同一位置的元素,即该位置区域人物将背景遮蔽;若人物图像位于背景图像的后边,如图14所示,将初始的第三人物区域系数矩阵同一位置的元素的值赋值为0,即该位置区域背景将人物遮蔽。
[0192]
在步骤506中,利用第三人物区域系数矩阵融合第三人物图像与背景图像,得到融合图像。
[0193]
在一种可能的实施方式中,步骤506中,利用第三人物区域系数矩阵融合第三人物图像与所述背景图像,得到融合图像,包括以下内容:
[0194]
采用以下公式确定融合图像:
[0195]
p5=β
×
p4+(1-β)
×
p2[0196]
其中,p5表示融合图像,β表示融合系数矩阵,p4表示融合人物图像,p2表示背景图像。相较于相关技术中只能根据设定二维空间中前置摄像头获取的人像坐标确定相关图像融合参数,实现了三维空间的图像融合,在遮挡关系及人像与周边环境事物大小比例上更加真实,融合效果更好。
[0197]
为了实现更好的融合效果,本技术实施例能够人为调整人像与背景的相对距离,提高用户的使用体验。
[0198]
在一种可能的实施方式中,人为调整人物与背景的相对距离,其流程示意图如图15所示,包括以下内容:
[0199]
在步骤1501中,在显示界面上显示融合图像,及根据背景深度图像确定人物在背景图像中深度坐标的调整范围对应的空间深度滑动条。
[0200]
在步骤1502中,响应于滑动指令,确定在预设深度范围调节融合图像中人物距离
移动终端后置摄像头的距离,得到人物更新后的深度坐标。
[0201]
在步骤1503中,响应于拖动指令,确定在预设区域范围调节融合图像中人物区域的位置,确定人物更新后的横向坐标和纵向坐标。
[0202]
在步骤1504中,将人物更新后的三维空间坐标作为人物的三维空间坐标,并重新触发融合指令;所述人物更新后的三维空间坐标包括更新后的深度坐标,横坐标和纵坐标。
[0203]
如图16所示,在显示界面上显示融合图像,并显示空间深度滑动条,通过滑动图中空间深度滑动条,在预设深度范围调节融合图像中人物距离移动终端后置摄像头的距离,其中预设深度范围是0米~10米,滑动指令完成后,得到人物更新后的深度坐标。例如,人物图像位于背景图像的前边的效果示意图,如图17所示,人物图像位于背景图像的后边的效果示意图,如图18所示,由此可见,本技术实施例提供的方法充分考虑了人物与背景事物的遮挡关系及人像与周边环境事物大小比例上,融合效果更好。
[0204]
在一种可能的实施方式中,考虑到前置摄像头所拍图像的光源与后置摄像头所拍图像的光源的光照方向可能并不一致,导致融合后的图像人像的光照与整体背景的光照不一致,本技术实施例将首先确定光照位置之后,再进行图像融合。则步骤501中,根据前置摄像头采集的数据确定人物图像,其流程示意图如图19所示,包括以下内容:
[0205]
在步骤1901中,采用前置摄像头采集原始人物图像。
[0206]
在步骤1902中,采用深度学习重光照模型对背景图像进行处理,确定光照位置。
[0207]
在步骤1903中,根据光照位置和原始人物图像生成人物图像。
[0208]
获取包含光照位置的人物图像之后,能够执行本技术提供的图像融合方法,采用上述方法,可以使人物图像的光照与背景图像的光照一致,从而看起来的融合效果更真实。
[0209]
综上所述,本技术实施例通过后置摄像头获取深度图,并根据设定的前置摄像头获取的人像的三维空间坐标、第二人物区域系数矩阵和第二人物图像,确定进行图像融合的相关图像融合参数,相较于相关技术中只能根据设定二维空间中前置摄像头获取的人像坐标确定相关图像融合参数,实现了三维空间的图像融合,在遮挡关系及人像与周边环境事物大小比例上更加真实,融合效果更好,同时用户使用本技术提供的方案时,可以人为调整人像与背景的相对距离,提高了用户的使用体验。
[0210]
基于相同的发明构思,本技术实施例还提供一种前后摄像头拍照融合的装置,如图20所示,所述装置2000包括:
[0211]
图像确定模块2001,被配置为根据前置摄像头采集的数据确定人物图像,根据后置摄像头对背景数据的采集,确定背景图像及背景深度图像;
[0212]
人物区域系数矩阵确定模块2002,被配置为对所述人物图像进行人物区域分割,得到人物区域系数矩阵;
[0213]
三维空间坐标确定模块2003,被配置为基于所述背景深度图像,确定所述人物图像中人物在所述背景图像中的三维空间坐标并触发融合指令,所述三维空间坐标包括深度坐标、横向坐标和纵向坐标;
[0214]
数据转换模块2004,被配置为响应于融合指令,对人物区域系数矩阵和所述人物图像按照缩放比例进行缩放,转换为在后置摄像头对应的焦距及视野下对应的第二人物区域系数矩阵和第二人物图像;
[0215]
融合参数确定模块2005,被配置为根据所述人物的三维空间坐标、第二人物区域
系数矩阵和第二人物图像,确定将人物调整到对应的三维空间坐标所对应的第三人物图像及第三人物区域系数矩阵;
[0216]
图像融合模块2006,被配置为利用第三人物区域系数矩阵融合所述第三人物图像与所述背景图像,得到融合图像。
[0217]
在一种可能的实施方式中,执行所述确定背景图像及背景深度图像,所述图像确定模块被配置为:
[0218]
利用双目的后置摄像头采集两帧背景图像,基于三角测量原理,根据所述两帧背景图像确定背景深度图像;或者
[0219]
采用tof深度后置摄像头确定背景深度图像,采用rgb彩色后置摄像头确定背景图像。
[0220]
在一种可能的实施方式中,所述缩放比例采用如下方式确定:
[0221][0222]
其中,s表示所述缩放比例,f1表示前置摄像头的前置焦距,f2表示后置摄镜头的后置焦距,z1表示设置的人物在所述背景图像中的深度坐标,z2表示前置摄像采集人物图像时人物距离前置摄像头的物理距离。
[0223]
在一种可能的实施方式中,执行根据第二人物区域系数矩阵和第二人物图像,确定将人物调整到对应的三维空间坐标所对应的第三人物图像,所述融合参数确定模块被配置为:
[0224]
创建初始的第三人物图像,将初始的第三人物图像中任一位置像素点的值设置为0,所述初始的第三人物图的行列数与所述背景图像的行列数相同;
[0225]
若初始的第三人物图像中任一位置像素点的横坐标不小于x1,且不大于w2与x1+w1的较小值,初始的第三人物图像中任一位置像素点的纵坐标不小于y1,且不大于h2与y1+h1的较小值,将所述第二人物图像相同位置的像素点的值赋值给初始的第三人物图像中同一位置的像素点,得到第三人物图像;
[0226]
其中,x1表示设置的人物在所述背景图像中的横向坐标,w1表示第二人物图像对应矩阵的列数,w2表示初始的第三人物图像对应矩阵的列数,y1表示设置的人物在所述背景图像中的纵向坐标,h1表示所述第二人物图像对应矩阵的行数,h2表示初始的第三人物图像对应矩阵的行数。
[0227]
在一种可能的实施方式中,执行根据所述人物的三维空间坐标、第二人物区域系数矩阵和第二人物图像,确定将人物调整到对应的三维空间坐标所对应的第三人物区域系数矩阵,所述融合参数确定模块被配置为:
[0228]
创建初始的第三人物区域系数矩阵,将初始的第三人物区域系数矩阵的值设置为0,所述初始的第三人物区域系数矩阵的行列数与所述背景图像对应矩阵的行列数相同;
[0229]
若初始的第三人物区域系数矩阵中任一位置的元素的横坐标不小于x1,且不大于w2与x1+w1的较小值,初始的第三人物区域系数矩阵中任一位置的元素的纵坐标不小于y1,且不大于h2与y1+h1的较小值,以及所述设置的人物在所述背景图像中的深度坐标不大于d1(i,j),将所述第二人像抠图系数矩阵相同位置的元素的值赋值给初始的第三人物区域系数矩阵同一位置的元素,得到第三人物区域系数矩阵;
[0230]
其中,x1表示设置的人物在所述背景图像中的横向坐标,w1表示第二人物图像对应矩阵的列数,w2表示初始的第三人物区域系数矩阵的列数,y1表示设置的人物在所述背景图像中的纵向坐标,h1表示所述第二人物图像对应矩阵的行数,h2表示初始的第三人物区域系数矩阵的行数,d1(i,j)表示所述背景深度图像中(i,j)位置像素点的值。
[0231]
在一种可能的实施方式中,执行利用第三人物区域系数矩阵融合所述第三人物图像与所述背景图像,得到融合图像,所述融合模块被配置为:
[0232]
采用以下公式确定融合图像:
[0233]
p5=β
×
p4+(1-β)
×
p2[0234]
其中,p5表示融合图像,β表示融合系数,p4表示融合人物图像,p2表示背景图像。
[0235]
在一种可能的实施方式中,所述装置还包括:
[0236]
显示模块,被配置为在显示界面上显示融合图像,及根据背景深度图像确定人物在背景图像中深度坐标的调整范围对应的空间深度滑动条;
[0237]
第一坐标确定模块,被配置为响应于滑动指令,确定在预设深度范围调节融合图像中人物距离移动终端后置摄像头的距离,得到人物更新后的深度坐标;
[0238]
第二坐标确定模块,被配置为响应于拖动指令,确定在预设区域范围调节融合图像中人物区域的位置,确定人物更新后的横向坐标和纵向坐标;
[0239]
融合指令触发模块,被配置为将人物更新后的三维空间坐标作为人物的三维空间坐标,并重新触发融合指令;所述人物更新后的三维空间坐标包括更新后的深度坐标,横坐标和纵坐标。
[0240]
在一种可能的实施方式中,执行根据前置摄像头采集的数据确定人物图像,所述图像确定模块被配置为:
[0241]
采用前置摄像头采集原始人物图像;
[0242]
采用深度学习重光照模型对背景图像进行处理,确定光照位置;
[0243]
根据所述光照位置和所述原始人物图像生成人物图像。
[0244]
在示例性实施例中,本技术还提供了一种包括指令的计算机可读存储介质,例如包括指令的存储器120,上述指令可由终端设备100的处理器180执行以完成上述前后摄像头拍照融合的方法。可选地,计算机可读存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是rom、随机存取存储器(ram)、cd-rom、磁带、软盘和光数据存储设备等。
[0245]
在示例性实施例中,还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器180执行时实现如本技术提供的前后摄像头拍照融合的方法。
[0246]
本领域内的技术人员应明白,本技术的实施例可提供为方法、系统、或计算机程序产品。因此,本技术可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本技术可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、cd-rom、光学存储器等)上实施的计算机程序产品的形式。
[0247]
本技术是参照根据本技术的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到
通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
[0248]
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
[0249]
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
[0250]
显然,本领域的技术人员可以对本技术进行各种改动和变型而不脱离本技术的精神和范围。这样,倘若本技术的这些修改和变型属于本技术权利要求及其等同技术的范围之内,则本技术也意图包含这些改动和变型在内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1