CN116033281A - 图像显示方法和电子设备 - Google Patents

图像显示方法和电子设备 Download PDF

Info

Publication number
CN116033281A
CN116033281A CN202111242371.7A CN202111242371A CN116033281A CN 116033281 A CN116033281 A CN 116033281A CN 202111242371 A CN202111242371 A CN 202111242371A CN 116033281 A CN116033281 A CN 116033281A
Authority
CN
China
Prior art keywords
depth
frame image
target object
pixel point
pixel
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.)
Pending
Application number
CN202111242371.7A
Other languages
English (en)
Inventor
王国毅
刘小伟
陈兵
周俊伟
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Honor Device Co Ltd
Original Assignee
Honor Device Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Honor Device Co Ltd filed Critical Honor Device Co Ltd
Priority to CN202111242371.7A priority Critical patent/CN116033281A/zh
Publication of CN116033281A publication Critical patent/CN116033281A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Processing Or Creating Images (AREA)

Abstract

本申请提供一种图像显示方法和电子设备,涉及终端技术领域。该图像显示方法,由于第N帧图像中的目标对象的调整后的像素点的深度,与在第N‑1帧图像中目标对象上对应的像素点的深度的差值小于或等于第一阈值。如此,使得第N帧图像和第N‑1帧图像的目标对象上的像素点之间的深度的差值较小。又由于虚拟对象与第N‑1帧中的目标对象存在遮挡;以及虚拟对象和第N帧图像中的目标对象也存在遮挡;在第N帧图像和第N‑1帧图像的目标对象上的像素点之间的深度的差值较小的情况下,虚拟对象和第N‑1帧图像的目标对象与之间的遮挡关系,相对于虚拟对象与第N帧的目标对象之间的遮挡关系,不会发生跳变。

Description

图像显示方法和电子设备
技术领域
本申请涉及终端技术领域,尤其涉及一种图像显示方法和电子设备。
背景技术
目前的增强现实(Augmented Reality,AR)技术,可以将虚拟对象叠加到电子设备采集的真实图像中,使得虚拟对象和真实图像互为补充,从而实现对电子设备显示的真实图像的“增强”。
通常情况下,当虚拟对象被叠加到采集的每一帧真实图像后,都会得到一个AR图像。在AR图像中,虚拟对象可能与真实图像中的目标对象存在遮挡关系。可以理解地,当真实图像的深度大于虚拟对象的深度时,虚拟对象遮挡目标对象;而当真实图像的深度小于虚拟对象的深度时,目标对象遮挡虚拟对象。
然而,目前在基于虚拟对象和连续采集的多帧图像显示AR图像的过程中,虚拟对象与目标对象的遮挡关系容易发生跳变(即下一帧图像中的目标对象与虚拟对象的遮挡关系,相对于上一帧图像中的目标对象与虚拟对象的遮挡关系的变化出现失真)。进而,导致AR图像的质量差。
发明内容
本申请提供一种图像显示方法和电子设备,以改善上述的AR图像的质量差的问题。
第一方面,本申请提供了一种图像显示方法,包括:电子设备采集第N帧图像。其中,N为大于1的整数。电子设备确定第N帧图像中目标对象的各像素点的深度,目标对象为第N帧图像中与预设的虚拟对象存在遮挡的对象。在第N帧图像中目标对象的任一个像素点的深度,与在第N-1帧图像中目标对象上对应的像素点的深度的差值大于第一阈值的情况下,电子设备调整任一个像素点的深度,以使差值小于或等于第一阈值。电子设备显示虚拟对象以及调整后的目标对象时,将虚拟对象以及调整后的目标对象中深度低的对象遮挡深度高的对象显示。
本申请提供的图像显示方法,由于第N帧图像中的目标对象的调整后的像素点的深度,与在第N-1帧图像中目标对象上对应的像素点的深度的差值小于或等于第一阈值。如此,可以使得第N帧图像和第N-1帧图像的目标对象上的像素点之间的深度的差值较小。又由于虚拟对象与第N-1帧中的目标对象存在遮挡;以及虚拟对象和第N帧图像中的目标对象也存在遮挡;在虚拟对象的深度保持不变,且第N帧图像和第N-1帧图像的目标对象上的像素点之间的深度的差值较小的情况下,虚拟对象和第N-1帧图像的目标对象与之间的遮挡关系,相对于虚拟对象与第N帧的目标对象之间的遮挡关系,不会发生跳变。如此,提高了显示的图像的质量。
在一种可能的实施方式中,电子设备调整任一个像素点的深度,以使差值小于或等于第一阈值,包括:电子设备基于第N帧图像的前M帧图像中目标对象的像素点的深度,调整任一个像素点的深度,以使差值小于或等于第一阈值。其中,M为大于或等于1的整数。
由于调整任一像素点的深度的参考依据为:第N帧图像的前M帧图像中目标对象的像素点的深度。这样,可以使得调整后的任一像素点的深度的可靠性较高。
进一步地,当M=1时,第N帧图像的前M帧图像为第N-1帧图像,第N帧图像中目标对象的任一像素点调整前的深度,和第N帧图像中目标对象的任一像素点调整后的深度满足条件:D1=D0-(Da-Dt)。其中,D0为第N帧图像中目标对象的任一像素点调整前的深度,D1为第N帧图像中目标对象的任一像素点调整后的深度,Da为第N帧图像的目标对象中任一个像素点的深度,与第N-1帧图像的目标对象中对应的像素点的深度的差值。
由于在后续主要是避免第N帧中的目标对象与虚拟对象的遮挡关系,相对于第N-1帧中的目标对象与虚拟对象的遮挡关系发生跳变。如此,将调整任一像素点的深度的参考依据为:第N-1帧图像目标对象的像素点的深度。这样,可以使得调整后的任一像素点的深度的可靠性较高。
或者,进一步地,当M=2时,第N帧图像的前M帧图像包括第N-1帧图像和第N-2帧图像,第N帧图像中目标对象的任一像素点调整前的深度,和第N帧图像中目标对象的任一像素点调整后的深度满足条件:D1=D0+{D0-{[d1+(d1-d2)]*(1-c)+D0*c}}。其中,D0为第N帧图像中目标对象的任一像素点调整前的深度,D1为第N帧图像中目标对象的任一像素点调整后的深度,d1为第N-1帧图像中目标对象的像素点的深度,d2为第N-2帧图像中目标对象的像素点的深度,c为对第N帧图像进行卡尔曼滤波得到的卡尔曼增益。
由于在后续主要是避免第N帧中的目标对象与虚拟对象的遮挡关系,相对于第N-1帧中的目标对象与虚拟对象的遮挡关系发生跳变。如此,将调整任一像素点的深度的参考依据为:第N-1帧图像和第N-2图像中的目标对象的像素点的深度。可见,参考依据的内容较多,这样,可以使得调整后的任一像素点的深度的可靠性较高。
更进一步地,电子设备调整任一个像素点的深度,以使差值小于或等于第一阈值,包括:电子设备基于算式De=d1+(d1-d2),计算第N帧图像中目标对象的各像素点的估计深度值。其中,De为估计深度值。电子设备基于算式Dr=De*(1-c)+D0*c,确定第N帧图像中目标对象的任一个像素点的实际深度值,其中,Dr为实际深度值。电子设备计算第N帧图像的目标对象中任一个像素点的深度与实际深度值的差值Df。电子设备根据算式D1=D0+Df,调整第N帧图像中目标对象的各个像素点的深度。
在一种可能的实施方式中,在电子设备调整任一个像素点的深度,以使差值小于或等于第一阈值之前,本申请提供的方法还包括:电子设备更新第N帧图像中的目标对象中的各像素点的深度,使得在目标对象上的预设面积范围内的各个像素点的深度的差值,均小于预设的第二阈值。
这样,当电子设备在显示第N帧图像中的目标对象和虚拟对象时,目标对象与虚拟对象的遮挡关系也不会出现失真。
进一步地,电子设备更新第N帧图像中的目标对象中的各像素点的深度,使得在目标对象上的预设面积范围内的各个像素点的深度的差值,均小于预设的第二阈值,包括:电子设备将第N帧图像中目标对象的各像素点的深度的平均值,作为第N帧图像中目标对象中各像素点的深度。或者,电子设备将第N帧图像中目标对象的各像素点的深度的最大值,作为第N帧图像中目标对象中各像素点的深度。或者,电子设备将第N帧图像中目标对象的各像素点的深度的中值,作为第N帧图像中目标对象中各像素点的深度。或者,电子设备将第N帧图像中目标对象的各像素点的深度的最小值,作为第N帧图像中目标对象中各像素点的深度。
或者,进一步地,电子设备更新第N帧图像中的目标对象中的各像素点的深度,使得在目标对象上的预设面积范围内的各个像素点的深度的差值,均小于预设的第二阈值,包括:电子设备确定与第N帧图像中目标对象的各像素点的距离之和最小的目标平面。电子设备将第N帧图像中目标对象的各像素点,投影到目标平面。电子设备将第N帧图像中目标对象的各像素点的深度更新为:第N帧图像中的目标对象中的各像素点投影到目标平面的深度。
在一种可能的实施方式中,在电子设备采集第N帧图像之前,本申请提供的图像显示方法还包括:电子设备显示拍摄预览界面,拍摄预览界面包括第一控件。电子设备响应于对第一控件的触发操作,显示虚拟对象的图标。电子设备响应于对虚拟对象的图标触发操作,在拍摄预览界面中显示虚拟对象。
在一种可能的实施方式中,在电子设备采集第N帧图像之前,本申请提供的图像显示方法还包括:电子设备根据预设的速度阈值、预设的采集图像的帧率,确定第一阈值;其中,速度阈值、帧率以及第一阈值之间满足条件:
Figure BDA0003319664120000031
Dt为第一阈值,v为速度阈值,f为帧率。
如此,可以使得确定第一阈值的可靠性高。
在一种可能的实施方式中,电子设备显示虚拟对象以及调整后的目标对象时,将虚拟对象以及调整后的目标对象中深度低的对象遮挡深度高的对象显示,包括:电子设备判断第N帧图像中目标对象调整后的各像素点深度,是否小于虚拟对象中对应的像素点的深度。若第N帧图像中目标对象调整后的各像素点深度,低于虚拟对象对应的像素点的深度,则电子设备将N帧图像中目标对象遮挡虚拟对象显示。若第N帧图像中目标对象调整后的像素点深度,高于虚拟对象对应的像素点的深度,则电子设备将虚拟对象遮挡N帧图像中目标对象显示。
在一种可能的实施方式中,电子设备判断调整后的第N帧图像中目标对象的像素点深度,是否小于虚拟对象的各个像素点的深度,包括:电子设备判断包含第N帧图像在内的连续n帧图像中的目标对象调整后的像素点的深度,是否小于虚拟对象对应的像素点的深度。其中,n为大于或等于2的整数。
如此,可以进一步避免遮挡关系发生跳变。
第二方面,本申请还提供了一种图像显示装置,包括:图像采集单元,用于采集第N帧图像。其中,N为大于1的整数。处理单元,用于确定第N帧图像中目标对象的各像素点的深度,目标对象为第N帧图像中与预设的虚拟对象存在遮挡的对象。处理单元,还用于在第N帧图像中目标对象的任一个像素点的深度,与在第N-1帧图像中对应的像素点的深度的差值大于第一阈值的情况下,调整任一个像素点的深度,以使差值小于或等于第一阈值。显示单元,用于显示虚拟对象以及调整后的目标对象时,将虚拟对象以及调整后的目标对象中深度低的对象遮挡深度高的对象显示。
在一种可能的实施方式中,处理单元,具体用于基于第N帧图像的前M帧图像中目标对象的像素点的深度,调整任一个像素点的深度,以使差值小于或等于第一阈值。其中,M为大于或等于1的整数。
进一步地,当M=1时,第N帧图像的前M帧图像为第N-1帧图像,第N帧图像中目标对象的任一像素点调整前的深度,和第N帧图像中目标对象的任一像素点调整后的深度满足条件:D1=D0-(Da-Dt)。其中,D0为第N帧图像中目标对象的任一像素点调整前的深度,D1为第N帧图像中目标对象的任一像素点调整后的深度,Da为第N帧图像的目标对象中任一个像素点的深度,与第N-1帧图像的目标对象中对应的像素点的深度的差值。
或者,进一步地,当M=2时,第N帧图像的前M帧图像包括第N-1帧图像和第N-2帧图像,第N帧图像中目标对象的任一像素点调整前的深度,和第N帧图像中目标对象的任一像素点调整后的深度满足条件:D1=D0+{D0-{[d1+(d1-d2)]*(1-c)+D0*c}}。其中,D0为第N帧图像中目标对象的任一像素点调整前的深度,D1为第N帧图像中目标对象的任一像素点调整后的深度,d1为第N-1帧图像中目标对象的像素点的深度,d2为第N-2帧图像中目标对象的像素点的深度,c为对第N帧图像进行卡尔曼滤波得到的卡尔曼增益。
更进一步地,处理单元,具体用于基于算式De=d1+(d1-d2),计算第N帧图像中目标对象的各像素点的估计深度值。其中,De为估计深度值。基于算式Dr=De*(1-c)+D0*c,确定第N帧图像中目标对象的任一个像素点的实际深度值,其中,Dr为实际深度值。计算第N帧图像的目标对象中任一个像素点的深度与实际深度值的差值Df。根据算式D1=D0+Df,调整第N帧图像中目标对象的各个像素点的深度。
在一种可能的实施方式中,处理单元,还用于更新第N帧图像中的目标对象中的各像素点的深度,使得在目标对象上的预设面积范围内的各个像素点的深度的差值,均小于预设的第二阈值。
进一步地,处理单元,具体用于电子设备将第N帧图像中目标对象的各像素点的深度的平均值,作为第N帧图像中目标对象中各像素点的深度。或者,电子设备将第N帧图像中目标对象的各像素点的深度的最大值,作为第N帧图像中目标对象中各像素点的深度。或者,电子设备将第N帧图像中目标对象的各像素点的深度的中值,作为第N帧图像中目标对象中各像素点的深度。或者,电子设备将第N帧图像中目标对象的各像素点的深度的最小值,作为第N帧图像中目标对象中各像素点的深度。
或者,进一步地,处理单元,具体用于确定与第N帧图像中目标对象的各像素点的距离之和最小的目标平面。将第N帧图像中目标对象的各像素点,投影到目标平面。将第N帧图像中目标对象的各像素点的深度更新为:第N帧图像中的目标对象中的各像素点投影到目标平面的深度。
在一种可能的实施方式中,显示单元,还用于显示拍摄预览界面,拍摄预览界面包括第一控件。显示单元,还用于响应于对第一控件的触发操作,显示虚拟对象的图标,以及响应于对虚拟对象的图标触发操作,在拍摄预览界面中显示虚拟对象。
在一种可能的实施方式中,处理单元,还用于根据预设的速度阈值、预设的采集图像的帧率,确定第一阈值。其中,速度阈值、帧率以及第一阈值之间满足条件:
Figure BDA0003319664120000041
Dt为第一阈值,v为速度阈值,f为帧率。
在一种可能的实施方式中,处理单元,还用于判断第N帧图像中目标对象调整后的各像素点深度,是否小于虚拟对象中对应的像素点的深度。显示单元,还用于若第N帧图像中目标对象调整后的各像素点深度,低于虚拟对象对应的像素点的深度,则电子设备将N帧图像中目标对象遮挡虚拟对象显示;若第N帧图像中目标对象调整后的像素点深度,高于虚拟对象对应的像素点的深度,则电子设备将虚拟对象遮挡N帧图像中目标对象显示。
在一种可能的实施方式中,处理单元,具体用于判断包含第N帧图像在内的连续n帧图像中的目标对象调整后的像素点的深度,是否小于虚拟对象对应的像素点的深度。其中,n为大于或等于2的整数。
第三方面,本申请实施例提供一种电子设备,包括处理器和存储器,存储器用于存储代码指令;处理器用于运行代码指令,使得电子设备以执行如第一方面或第一方面的任一种实现方式中描述的图像显示方法。
第四方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质存储有指令,当指令被执行时,使得计算机执行如第一方面或第一方面的任一种实现方式中描述的图像显示方法。
第五方面,一种计算机程序产品,包括计算机程序,当计算机程序被运行时,使得计算机执行如第一方面或第一方面的任一种实现方式中描述的图像显示方法。
应当理解的是,本申请的第二方面至第五方面与本申请的第一方面的技术方案相对应,各方面及对应的可行实施方式所取得的有益效果相似,不再赘述。
附图说明
图1为本申请实施例提供的电子设备的硬件系统架构示意图;
图2为本申请实施例提供的电子设备的软件系统架构示意图;
图3为本申请实施例提供的图像显示方法的流程图之一;
图4为本申请实施例提供的第一界面的界面示意图;
图5为本申请实施例提供的深度估计模型计算第N帧图像的各像素点的深度的架构示意图;
图6为图3中的S406的具体流程图;
图7为本申请实施例提供的在第一界面中显示第二AR图像的界面示意图;
图8为本申请实施例提供的图像显示方法的流程图之二;
图9为本申请实施例提供的摄像头到人物A的各个像素点的距离的示意图之一;
图10为本申请实施例提供的摄像头到人物A的各个像素点的距离的示意图之二;
图11为本申请实施例提供的图像显示方法的流程图之三;
图12为本申请实施例提供的图像显示装置的功能模块框图;
图13为本申请实施例提供的一种电子设备的硬件结构示意图;
图14为本申请实施例提供的一种芯片的结构示意图。
具体实施方式
为了便于清楚描述本申请实施例的技术方案,在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。例如,第一值和第二值仅仅是为了区分不同的值,并不对其先后顺序进行限定。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
需要说明的是,本申请中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其他实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
本申请中,“至少一个”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指的这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b,或c中的至少一项(个),可以表示:a,b,c,a-b,a-c,b-c,或a-b-c,其中a,b,c可以是单个,也可以是多个。
目前的增强现实(Augmented Reality,AR)技术,可以将虚拟对象叠加到电子设备采集的真实图像中,使得虚拟对象和真实图像互为补充,从而实现对电子设备显示的真实图像的“增强”。
示例性地,电子设备可以采集第N-1帧图像以及获取卡通人物B。其中,第N-1帧图像包括人物A。例如,第N-1帧图像的人物A的各个像素点的深度均大于5m,深度用于指示图像的人物A的各个像素点与电子设备的距离,且人物A的各个像素点的深度是预训练的深度估计模型计算得到的。另外,可以理解地,卡通人物B为虚拟对象,卡通人物B的各个像素点也具有深度。例如,电子设备预记录的卡通人物B的各个像素点的深度小于3m。可见,卡通人物B的各个像素点的深度小于人物A上各个像素点的深度。
电子设备根据第N-1帧图像以及卡通人物B,在视频播放界面显示第一AR图像。在第一AR图像中,卡通人物B的位置与人物A的位置存在部分重叠。由于人物B的各个像素点的深度小于人物A上各个像素点的深度,如此人物A与卡通人物B的位置重叠的部分被卡通人物B遮挡。
当电子设备采集到第N帧图像,第N帧图像也包括人物A。这样,电子设备基于卡通人物B和第N帧图像生成第二AR图像。其中,由于电子设备在采集第N帧图像时的摄像头的位姿,相对于电子设备采集第N-1帧图像时的位姿发生变化(如电子设备抖动),和/或第N帧图像中的人物A相对于第N-1帧中的人物A发生移动,均会造成第N帧图像的内容相对于第N-1帧的图像内容不同。如此,预训练的深度估计模型输出的第N帧图像的人物A上的各个像素点的深度,可能与第N-1帧图像的人物A上对应的像素点的深度的差值较大。例如,第N帧图像的人物A上的各像素点的深度均小于2.8m(与第N-1帧图像的人物A上对应的像素点的深度的差值为2.2m)。由于电子设备记录的卡通人物B的深度为3m,可见,卡通人物B的深度大于人物A上各个像素点的深度。在第二AR图像中,卡通人物B与人物A的位置重叠的部分被人物A遮挡。
在日常的生活场景中,人物A的运动速度通常不会超出预设的速度阈值且电子设备在拍摄视频时的抖动幅度通常会小于预设的幅度阈值。在电子设备采集图像的帧率一定的情况下,第N-1帧图像中的像素点的深度与对应的第N帧图像中对应的像素点的深度的差值不会达到2.2m。而实际上预训练的深度估计模型输出的第N帧图像的人物A上的各个像素点的深度,与第N-1帧图像的人物A上对应的像素点的深度的差值为2.2m。这样,会导致从第N-1帧图像中的人物A与卡通人物B的位置重叠的部分被卡通人物B遮挡,突然切换到卡通人物B与第N帧图像中的人物A的位置重叠的部分被人物A遮挡。进而,给用户的视觉感受是第二AR图像中的人物A,相对于第一AR图像中的人物A发生跳变显示,导致图像的质量差。
有鉴于此,本申请提供一种图像显示方法,电子设备可以确定第N帧图像中的目标对象中的各像素点的深度,目标对象为第N帧图像中与预设的虚拟对象存在遮挡的对象。进而,电子设备在目标对象中任一个像素点的深度,与在第N-1帧图像中目标对象上对应的像素点的深度的差值大于第一阈值的情况下,调整任一个像素点的深度以使差值小于或等于第一阈值。如此,电子设备显示虚拟对象以及调整后的目标对象时,将虚拟对象以及调整后的目标对象中深度低的对象遮挡深度高的对象显示。
这样,由于第N帧图像中的目标对象的调整后的像素点的深度,与在第N-1帧图像中目标对象上对应的像素点的深度的差值小于或等于第一阈值。如此,可以使得第N帧图像和第N-1帧图像的目标对象上的像素点之间的深度的差值小于第一阈值。如此,使得第N帧图像和第N-1帧图像的目标对象上的像素点之间的深度的差值不会出现失真(例如,不会出现第N-1帧图像中的目标对象在虚拟对象的后面10m,突然跳变到第N帧图像中的目标对象在虚拟对象的前面1m的情况)。进而,不会出现从第N-1帧图像中的目标对象与虚拟对象的位置重叠的部分被虚拟对象遮挡,突然切换到虚拟对象与第N帧图像中的目标对象的位置重叠的部分被目标对象遮挡;或者,不会出现从第N-1帧图像中的目标对象与虚拟对象的位置重叠的部分被目标对象遮挡,突然切换到虚拟对象与第N帧图像中的目标对象的位置重叠的部分被与虚拟对象遮挡。即,使得虚拟对象和第N帧图像的目标对象与之间的遮挡关系,相对于虚拟对象与第N-1帧图像的目标对象之间的遮挡关系,不会发生跳变。如此,提高了显示的图像的质量。
可以理解的是,上述电子设备可以是用户设备(user equipment,UE)、移动台(mobile station,MS)、移动终端(mobile terminal,MT)等。电子设备可以是手机(mobilephone)、智能电视、穿戴式设备、平板电脑(Pad)、带无线收发功能的电脑、虚拟现实(virtual reality,VR)电子设备、增强现实(augmented reality,AR)电子设备、工业控制(industrial control)中的无线终端、无人驾驶(self-driving)中的无线终端、远程手术(remote medical surgery)中的无线终端、智能电网(smart grid)中的无线终端、运输安全(transportation safety)中的无线终端、智慧城市(smart city)中的无线终端、智慧家庭(smart home)中的无线终端等等。本申请的实施例对电子设备所采用的具体技术和具体设备形态不做限定。
为了能够更好地理解本申请实施例,下面对本申请实施例的电子设备的结构进行介绍。示例性的,图1为本申请实施例提供的一种电子设备的结构示意图。
电子设备可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,传感器模块180,按键190,指示器192,摄像头193,以及显示屏194等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
可以理解的是,本申请实施例示意的结构并不构成对电子设备的具体限定。在本申请另一些实施例中,电子设备可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。处理器110中还可以设置存储器,用于存储指令和数据。
电子设备的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
电子设备通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。在一些实施例中,电子设备可以包括1个或N个显示屏194,N为大于1的正整数。
电子设备可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
摄像头193用于捕获静态图像或视频。在一些实施例中,电子设备可以包括1个或N个摄像头193,N为大于1的正整数。
外部存储器接口120可以用于连接外部存储卡,实现扩展电子设备的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,可执行程序代码包括指令。内部存储器121可以包括存储程序区和存储数据区。例如,内部存储器121可以用于存储摄像头193采集的每帧图像的各个像素点的深度,以及虚拟对象的各个像素点的深度。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备可以接收按键输入,产生与电子设备的用户设置以及功能控制有关的键信号输入。指示器192可以是指示灯,可以用于指示充电状态,电量变化。
电子设备的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构等,在此不再赘述。本申请实施例以分层架构的Android系统为例,示例性说明电子设备的软件结构。图2为本申请实施例适用的电子设备的一种软件结构框图。分层架构将电子设备的软件系统分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,可以将Android系统分为五层,分别为应用程序层(applications)、应用程序框架层(application framework)、安卓运行时(Androidruntime)和系统库、硬件抽象层(hardware abstract layer,HAL)以及内核层(kernel)。
应用程序层可以包括一系列应用程序包,应用程序层通过调用应用程序框架层所提供的应用程序接口(application programming interface,API)运行应用程序。如图2所示,应用程序包可以包括相机,美图,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,以及短信息等应用程序。
应用程序框架层为应用程序层的应用程序提供API和编程框架。应用程序框架层包括一些预先定义的函数。如图2所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,以及通知管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。电话管理器用于提供电子设备的通信功能。资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等。通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息。
安卓运行时包括核心库和虚拟机。安卓运行时负责安卓系统的调度和管理。核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式。三维图形处理库用于实现三维图形绘图,图像渲染,合成和图层处理等。2D图形引擎是2D绘图的绘图引擎。
硬件抽象层,可以包含多个库模块,库模块如可以为摄像头库模块、马达库模块等。Android系统可以为设备硬件加载相应的库模块,进而实现应用程序框架层访问设备硬件的目的。设备硬件可以包括如电子设备中的显示屏、摄像头等。
内核层是硬件和软件之间的层。内核层用于驱动硬件,使得硬件工作。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动,马达驱动等,本申请实施例对此不做限制。
下面以具体地实施例对本申请的技术方案以及本申请的技术方案如何解决上述技术问题进行详细说明。下面这几个具体的实施例可以独立实现,也可以相互结合,对于相同或相似的概念或过程可能在某些实施例中不再赘述。
本申请专利的术语解释:
深度估计模型:用于基于输入的原始RGB(red green blue)图像、深度传感器的深度值以及相机的位姿等信息,得到RGB图像对应的深度图。其中,深度图包括RGB图像中每个像素点的深度。
蒙版:蒙版就是选框的外部(选框的内部就是选区)。蒙版是灰度图像,其作用就像一张布,可以遮盖住处理区域中的一部分,当对处理区域内的整个图像进行深度调整、模糊、上色等操作时,被蒙版遮盖起来的部分就不会受到改变。
帧率(Frame rate):是以帧称为单位的位图图像连续出现在显示器上的频率(速率)。
卡尔曼滤波(Kalman filtering):是一种利用线性系统状态方程,通过系统输入输出观测数据,对系统状态进行最优估计的算法。由于观测数据中包括系统中的噪声和干扰的影响,所以最优估计也可看作是滤波过程。
下面,以电子设备为手机200、目标对象为人物A、虚拟对象为卡通人物B为例,对本申请实施例提供的图像显示方法进行说明,该示例并不构成对本申请实施例的限定。下述实施例可以相互结合,对于相同或相似的概念或过程不再赘述。图3为本申请实施例提供的图像显示方法的一种实施例的流程示意图。如图3所示,本申请实施例提供的图像显示方法包括:
S401:手机200采集第N-1帧图像。其中,第N-1帧图像包括人物A,且N为大于2的整数。
示例性地,手机200采集第N-1帧图像的方式可以为:当需要录制对人物A的视频图像时,手机200显示系统桌面。系统桌面包括“相机”图标(附图中未示)。手机200的摄像头193可以对准人物A,进而如图4中的(a)所示,手机200响应于用户对“相机”图标的触发操作,显示第一界面501。可以理解地,第一界面501即“相机”的拍摄预览界面。第一界面501显示有手机200采集的图像。
S402:手机200在第一界面501显示第N-1帧图像和卡通人物B。其中,卡通人物B与人物A存在遮挡。
仍如图4中的(a)所示,第一界面501还包括“AR模式”的控件(即第一控件)。手机200还可以响应于用户对“AR模式”的控件的触发操作,在第一界面501显示悬浮窗。悬浮窗中包括多个虚拟对象的图标,多个虚拟对象的图标中包括卡通人物B的图标。另外,手机200在显示悬浮窗后,可以采集到第N-1帧图像,第N-1帧图像包括人物A。
示例性地,手机200向预训练的深度估计模型输入第N-1帧图像,深度估计模型输出第N-1帧图像上的各像素点的深度。通常地,深度估计模型输出的第N-1帧图像上的各像素点的深度,与第N-1帧图像上的各像素点的实际深度存在偏差。
如图4中的(b)所示,手机200基于第N-1帧图像上的各像素点的深度在第一界面501显示第N-1帧图像。另外,手机200还将第N-1帧图像上的各像素点的深度存储到内部存储器121中。
另外,手机200还可以识别出第N-1帧图像的人物A。进而,手机200可以得到第N-1帧图像中人物A的各像素点的深度。手机200还可以在识别出第N-1帧图像的人物A后,得到第N-1帧图像中除人物A以外的区域。可以理解地,第N-1帧图像中除人物A以外的区域,即第N-1帧图像中人物A的蒙版。
仍如图4中的(b)所示,手机200可以响应于用户对卡通人物B的图标的拖曳操作,将卡通人物B拖曳到第N-1帧图像中,且卡通人物B的位置与人物A的位置存在部分重叠。进而,手机200基于卡通人物B被拖曳到第N-1帧图像中的位置以及手机200的摄像头193的位姿输入到深度估计模型中,以输出卡通人物B的各像素点的深度。另外,手机200还将卡通人物B的各像素点的深度存储到内部存储器121中。可以理解地,仍如图4所示,第N-1帧图像与卡通人物B构成第一AR图像502。
可以理解地,对于某一对象而言,当该对象的各个像素点的深度越小时,说明该对象与手机200的摄像头193的距离越近;反之,当该对象的各个像素点的深度越大时,说明该对象与手机200的摄像头193的距离越远。
示例性地,在图4中,卡通人物B的各像素点的深度小于2.5m,而人物A的各个像素点的深度大于3m。可见,卡通人物B的各像素点的深度小于人物A的各个像素点的深度(即卡通人物B与手机200的距离,小于人物A与手机200的距离)。如此,对于卡通人物B的位置与人物A的位置的重叠部分C而言,卡通人物B遮挡人物A。
当然地,在另一些实施例中,也可以是卡通人物B的各像素点的深度大于人物A的各个像素点的深度(即卡通人物与手机200的距离,大于人物A与手机200的距离)。如此,对于卡通人物B的位置与人物A的位置的重叠部分C而言,人物A遮挡卡通人物B(附图中未示)。
S403:手机200采集第N帧图像。其中,第N帧图像也包括人物A。
可以理解地,第N帧图像为手机200在采集视频图像时,与第N-1帧图像连续的下一帧图像。第N帧图像中人物A的位置与卡通人物B也存在重叠部分。即,第N帧图像中人物A为与卡通人物B存在遮挡的对象。
S404:手机200确定第N帧图像的人物A中的各像素点的深度。
示例性地,如图5所示,手机200可以将第N-1帧图像和第N帧图像输入到深度估计模型中,深度估计模型可以输出第N帧图像中各像素点的深度。通常地,深度估计模型输出的第N帧图像上的各像素点的深度,与第N帧图像上的各像素点的实际深度存在偏差。
一种实施方式中,在日常的生活场景中,运动体的运动速度通常不会超出预设的速度阈值。如此,第N帧中的人物A任一像素点的深度,与第N-1帧的人物A对应的像素点的深度的差值不会大于第一阈值。
而由于深度估计模型输出的第N-1帧图像上的各像素点的深度,与第N-1帧图像上的各像素点的实际深度存在偏差;深度估计模型输出的第N帧图像上的各像素点的深度,与第N帧图像上的各像素点的实际深度也存在偏差。这样,可能会导致第N帧中的人物A任一像素点的深度,与第N-1帧的人物A对应的像素点的深度的差值大于第一阈值,即第N帧中的人物A任一像素点的深度,与第N-1帧的人物A对应的像素点的深度的差值出现失真。如此,可以基于下述的S405调整第N帧图像的人物A中的像素点的深度。
S405:手机200在第N帧图像的人物A中任一个像素点的深度,与在第N-1帧图像中目标对象上对应的像素点的差值大于第一阈值的情况下,调整任一个像素点的深度以使差值小于或等于第一阈值。
具体地,手机200基于第N帧图像的前M帧图像中目标对象的像素点的深度,调整任一个像素点的深度,以使差值小于或等于第一阈值。其中,M为大于或等于1的整数。
示例性地,S405的具体实现包括但不限于以下两种方式:
第一种:当M=1时,手机200可以从内部存储器121获取第N-1帧图像的人物A中的各像素点的深度。手机200可以将第N-1帧图像的人物A中的各像素点的深度作为参考深度。手机200计算第N帧图像的人物A中任一个像素点的深度,与第N-1帧图像的人物A中对应的像素点的深度的差值Da。手机200判断第N帧图像的人物A中任一个像素点的深度,与第N-1帧图像的人物A中对应的像素点的深度的差值Da是否大于第一阈值Dt。若第N帧图像的人物A中任一个像素点的深度,与第N-1帧图像的人物A中对应的像素点的深度的差值Da大于第一阈值Dt,则手机200根据算式D1=D0-(Da-Dt),调整第N帧图像与第N-1帧图像的人物A中对应的像素点的深度的差值大于第一阈值Dt的像素点的深度。其中,D1为调整后的深度,D0为调整前的深度。
由于在后续主要是避免第N帧中的目标对象与虚拟对象的遮挡关系,相对于第N-1帧中的目标对象与虚拟对象的遮挡关系发生跳变。如此,将调整任一像素点的深度的参考依据为:第N-1帧图像目标对象的像素点的深度。这样,可以使得调整后的任一像素点的深度的可靠性较高。
第二种:当M=2时,手机200的内部存储器121还存储有手机200的摄像头193采集的第N-2帧图像的人物A中的各个像素点的深度。其中,N为大于2的整数。手机200还可以从内部存储器121获取第N-2帧图像的人物A中的各像素点的深度,以及第N-1帧图像的人物A中的各像素点的深度。
手机200计算第N帧图像的人物A中任一个像素点的深度,与第N-1帧图像的人物A中对应的像素点的深度的差值Da。手机200判断第N帧图像的人物A中任一个像素点的深度,与第N-1帧图像的人物A中对应的像素点的深度的差值Da是否大于第一阈值Dt。如果是,则手机200基于算式De=d1+(d1-d2),计算第N帧图像的人物A的各像素点的估计深度值De,其中,d1为第N-1帧图像的人物A中的像素点的深度,d2为第N-2帧图像的人物A中的像素点的深度。进而,手机200对第N帧图像进行卡尔曼滤波得到卡尔曼增益c,手机200可以基于算式Dr=De*(1-c)+D0*c,确定第N帧图像的人物A中任一个像素点的实际深度值Dr。其中,D0为第N帧图像的人物A中任一个像素点的深度。
需要说明的是,在算式Dr=De*(1-c)+D0*c中,卡尔曼增益c和第N帧图像的人物A中任一个像素点的深度D0及对应的估计深度值De的差值关联。从上述的算式Dr=De*(1-c)+D0*c中可以看出,第N帧图像的人物A中任一个像素点的深度D0及对应的估计深度值De的差值越小,则卡尔曼增益c越大,说明第N帧图像的人物A中任一个像素点的深度D0的可靠性较高;反之,第N帧图像的人物A中任一个像素点的深度D0及对应的估计深度值De的差值越大,则卡尔曼增益c越小,说明第N-1帧图像的人物A中任一个像素点的深度估计值De可靠性较高。
手机200可以将第N帧图像的人物A中任一个像素点的实际深度值Dr作为参考深度。手机200计算第N帧图像的人物A中任一个像素点的深度D0与实际深度值Dr的差值Df,即Df=D0-Dr。进而,手机200可以根据算式D1=D0+Df,调整第N帧图像中人物A的各个像素点的深度。其中,D1为调整后的深度,D0为调整前的深度,Df为第N帧图像的人物A中任一个像素点的深度与实际深度值Dr的差值。在本申请实施例中,由于卡尔曼增益是对第N帧图像进行卡尔曼滤波得到的,而第N-1帧图像的人物A中任一个像素点的深度估计值De,是根据第N-1帧图像的人物A中任一个像素点的深度d1,与第N-2帧图像的人物A中对应的像素点的深度d2的差值得到的。如此,第N帧图像的人物A中任一个像素点的实际深度值Dr的可靠性更高。手机200可以将第N帧图像中的人物A的各像素点的深度加上对应的差值Df,可以提高第N帧图像中人物A的各个像素点的深度的可靠性。
由于在后续主要是避免第N帧中的目标对象与虚拟对象的遮挡关系,相对于第N-1帧中的目标对象与虚拟对象的遮挡关系发生跳变。如此,将调整任一像素点的深度的参考依据为:第N-1帧图像和第N-2图像中的目标对象的像素点的深度。可见,参考依据的内容较多,这样,可以使得调整后的任一像素点的深度的可靠性较高。
基于上述可知,调整后的深度D1与调整前的深度D0满足条件:D1=D0+{D0-{[d1+(d1-d2)]*(1-c)+D0*c}}。其中,D1为调整后的深度,D0为调整前的深度,d1为第N-1帧图像的人物A中的像素点的深度,d2为第N-2帧图像的人物A中的像素点的深度,c为对第N帧图像进行卡尔曼滤波得到卡尔曼增益。
可以理解地,上述的第一种方式中,基于第N帧图像的前2帧图像中人物A的各个像素点的深度,调整第N帧图像中人物A的各个像素点的深度的。另外,还可以基于第N帧图像的前3帧、4帧以及5帧等图像中人物A的各个像素点的深度,调整第N帧图像中人物A的各个像素点的深度的,在此不作限定。
可见,上述的第一种方式和第二种方式可以概括为:手机200基于第N帧图像的前M帧图像中人物A的像素点的深度,调整第N帧图像中的像素点的深度,以使差值小于或等于第一阈值。其中,M为大于或等于1的整数。
另外,在日常的生活场景中,人的运动速度通常不会超出预设的速度阈值。在手机200采集图像的帧率一定的情况下,第N-1帧图像中的像素点的深度与对应的第N帧图像中对应的像素点的深度的差值不会大于第一阈值Dt,若大于第一阈值Dt,则说明手机200的深度估计模型输出的该像素点的深度不够准确,需要调整为差值小于或等于第一阈值Dt的深度。如此,可以提高该像素点的深度的可靠性。
另外,由于在日常的生活场景中,运动体的运动速度通常不会超出预设的速度阈值。如此,手机200可以根据预设的速度阈值和手机200采集图像的帧率,确定第一阈值Dt。示例性地,手机200可以根据算式
Figure BDA0003319664120000131
确定第一阈值。其中,Dt为第一阈值,v为预设的速度阈值,f为帧率。示例性的,当预设的速度阈值v为6m/s时,若帧率f等于15fps,则第一阈值Dt等于0.4m;若帧率f等于30fps,则第一阈值Dt等于0.2m。当然地,本申请实施例中,预设的速度阈值v和帧率f还可以为其他的取值,在此不作限定。如此,可以使得确定第一阈值的可靠性高。
S406:手机200显示卡通人物B和调整后的人物A时,将卡通人物B和调整后的人物A中深度低的对象遮挡深度高的对象显示。
示例性地,如图6所示,手机200显示卡通人物B和调整后的人物A的过程可以包括:S701:手机200比较卡通人物B各个像素点的深度与调整后的人物A的对应的像素点深度(比较坐标位置相同的像素点)。S702:手机200判断调整后的人物A中各像素点的深度,是否小于卡通人物B的各个像素点的深度。S703:手机200在调整后的人物A中各像素点的深度(如大于2.9m)小于卡通人物B的各个像素点(如小于2.5m)的深度时,手机200基于人物A的蒙版、第N帧图像、以及卡通人物B的图像,在第一界面501中显示第二AR图像(附图中未示)。其中,第二AR图像包括以调整后的人物A中各像素点的深度显示的人物A和以卡通人物B的各个像素点的深度显示的卡通人物B,且在人物A与卡通人物B的重叠部分C,仍然是卡通人物B遮挡人物A。可见,卡通人物B和第N帧图像的人物A与之间的遮挡关系,相对于卡通人物B与第N-1帧图像的人物A之间的遮挡关系,没有发生跳变。
在另一些实施例中,仍如图6所示,S704:手机200在调整后的人物A的各像素点的深度大于卡通人物B的各个像素点的深度时,如图7所示,手机200基于人物A的蒙版、第N帧图像、以及卡通人物B的图像,在第一界面501中显示第二AR图像503。第二AR图像503包括以调整后的人物A中各像素点的深度显示的人物A和以卡通人物B的各个像素点的深度显示的卡通人物B,且在人物A与卡通人物B的重叠部分C,人物A遮挡卡通人物B。可以理解地,在本申请实施例中,由于调整后第N帧中的人物A任一像素点的深度,与第N-1帧的人物A对应的像素点的深度的差值的差值小于第一阈值。即使从第N-1帧图像中的人物A的位置重叠的部分被卡通人物B遮挡,切换到卡通人物B与第N帧图像中的人物A的位置重叠的部分被人物A遮挡。用户在视觉上也会感知为卡通人物B与人物A的遮挡关系平滑的切换,即卡通人物B与人物A的遮挡关系的切换没有出现失真,进而也不会影响图像的质量。
在一些可选的实施方式中,需要说明的是,为了进一步避免卡通人物B和第N帧图像的人物A与之间的遮挡关系,相对于卡通人物B与第N-1帧图像的人物A之间的遮挡关系发生跳变。仍如图6所示,在S703中可以判断连续n帧(n大于或等于2)手机200采集的图像中调整后的人物A中的各像素点的深度是否小于卡通人物B的各个像素点的深度,如果是,手机200在显示AR图像时,以调整后的人物A中各像素点的深度显示的人物A。
例如,在n等于2时,手机200判断第N-1帧图像中调整后的人物A中的各像素点的深度是否小于卡通人物B的各个像素点的深度,以及判断第N帧图像中调整后的人物A中的各像素点的深度是否小于卡通人物B的各个像素点的深度,如果是,则手机200在显示AR图像时,以调整后的人物A中各像素点的深度显示的人物A。这样,在连续2帧调整后的人物A中的各像素点的深度均小于卡通人物B的各个像素点的深度的情况下,如图7所示,手机200在显示第二AR图像503时,才由第N-1帧中的卡通人物B遮挡人物A,切换到第N帧中的人物A遮挡卡通人物B。如此,可以进一步避免遮挡关系发生跳变。
可以理解地,如图8所示,上述的图像显示方法的流程为:S901:手机200获取第N帧图像中的人物A的蒙版,以及获取基于第N帧图像计算的第N帧图像的深度图(即第N帧图像的各像素点的深度)。S902:手机200基于第N帧图像中的人物A的蒙版,以及第N帧图像的深度图,获取第N帧图像中的人物A的第二深度图(即人物A的各像素点的深度)。另外,S903:手机200获取第N-1帧图像中的人物A的第一深度图(即第N-1帧图像中的人物A的各像素点的深度)。S904:手机200调整人物A的第二深度图,使得人物A的第二深度图和人物A的第一深度图的差值小于第一阈值。S905:手机200显示AR图像。其中,AR图像包括调整后的第N帧图像中的人物A和卡通人物B,且卡通人物B和调整后的人物A中深度低的对象遮挡深度高的对象。
综上所述,由于在日常的生活场景中,运动体的运动速度通常不会超出预设的速度阈值,则第N帧中的人物A的任一个像素点的深度与第N-1帧图像中的人物A对应的像素点的深度也不超出第一阈值。本申请实施例提供的图像显示方法,第N帧图像中的人物A的调整后的像素点的深度,与在第N-1帧图像中人物A上对应的像素点的深度的差值小于或等于第一阈值。如此,可以使得第N帧图像和第N-1帧图像的人物A上的像素点之间的深度的差值小于第一阈值。即使得第N帧中的人物A任一像素点的深度,与第N-1帧的人物A对应的像素点的深度的差值不会出现失真。这样,不会出现从第N-1帧图像中的人物A与卡通人物B的位置重叠的部分被卡通人物B遮挡,突然切换到卡通人物B与第N帧图像中的人物A的位置重叠的部分被第N帧图像中的人物A遮挡。进而,使得卡通人物B和第N帧图像的人物A与之间的遮挡关系,相对于卡通人物B与第N-1帧图像的人物A之间的遮挡关系,不会发生跳变。如此,提高了显示的图像的质量。
另外,对第N+1帧图像中的人物A的各像素点的深度,也可以通过上述的S405的方法进行调整。如此,也不会出现从第N-1帧图像中的人物A与卡通人物B的位置重叠的部分被与卡通人物B遮挡,突然切换到卡通人物B与第N帧图像中的人物A的位置重叠的部分被第N帧图像中的人物A遮挡;然后,又从卡通人物B与第N帧图像中的人物A的位置重叠的部分被第N帧图像中的人物A遮挡,切换回第N-1帧图像中的人物A与卡通人物B的位置重叠的部分被与卡通人物B遮挡。进而,改善了图像中的卡通人物B出现闪烁显示的现象,如此,进一步地提高了显示的图像的质量。
需要说明的是,在上述实施例中,在显示第N-1帧图像中的人物A和第N帧图像中的人物A时,是以人物A中各像素点的深度显示人物A的。
在另一种实施例中,在上述S402中,手机200获取深度估计模型输出第N-1帧图像上人物A的各像素点的深度。进而,手机200更新第N-1帧图像中人物A的像素点的深度,使得在人物A上的预设面积范围内的各个像素点的深度的差值,均小于预设的第二阈值。这样,当手机200在第一界面501中以更新后的各像素点的深度显示第N-1帧图像中的人物A和卡通人物B时,人物A与卡通人物B的遮挡关系不会出现失真。例如在图4中,不会出现人物A的肩膀被卡通人物B遮挡,而人物A的上手臂被显示的情况。
类似地,在上述S404的基础上,手机200获取深度估计模型输出的第N帧图像中各像素点的深度。进而,手机200更新第N帧图像上人物A的像素点的深度,使得在人物A上的预设面积范围内的各个像素点的深度的差值,均小于预设的第二阈值。这样,当手机200在第一界面501中显示第N帧图像中的人物A和卡通人物B时,人物A与卡通人物B的遮挡关系也不会出现失真。例如,在图7中,不会出现人物A的肩膀被卡通人物B遮挡,而人物A的上手臂被显示的情况。
示例性地,下面,结合图9-图10说明,手机200更新第N-1帧图像或者第N帧图像人物A的各像素点的深度,使得在人物A上的预设面积范围内的各个像素点的深度的差值,均小于预设的第二阈值的两种方式。
第一种:手机200计算人物A的各像素点的深度的平均值。手机200将人物A的各像素点的深度的平均值作为人物A中各像素点的深度。如此,使得在人物A上的预设面积范围内的各个像素点的深度的差值为0。进而,人物A上的预设面积范围内的各个像素点的深度的差值,均小于预设的第二阈值。示例地,图9中的小黑点用于指示人物A的各个像素点,从图9中的各个像素点的分布可以看出,人物A的各个像素点的深度不同,而图9中的线段1001用于指示人物A的各个像素点的深度的平均值(如2.5m)。当手机200将人物A的各像素点的深度的平均值作为人物A各像素点的深度时,可以理解为手机200的摄像头193到人物A的各个位置的距离相等。
另外,上述的人物A的各像素点的深度的平均值还可以替换为人物A的各像素点的深度的最小值、最大值以及中值等,在此不作限定,其原理和效果与上述均相同,在此不再赘述。
第二种:手机200将人物A的各像素点转换到3D点云空间,并对转换到3D点云空间后的各像素点进行滤波处理,以除去转换到3D点云空间后的各像素点中的噪声。如图10所示,手机200基于主成分分析方法将滤波处理后的各像素点投影到目标平面1101。其中,目标平面1101为与滤波处理后的各像素点距离之和最小的平面。进而,手机200确定各像素点投影到目标平面后的深度。可以理解地,各像素点投影到目标平面1101后的深度能够表征人物A的像素点的深度分布趋势。在现实生活中,人物的某个区域(如眼部区域、嘴部区域、以及脸部区域等)的像素点的深度分布是连续的。如此,使得在人物A上的预设面积范围内的各个像素点的深度的差值,均小于预设的第二阈值。
在图9或图10对应的实施例的基础上,如图11所示,本申请实施例提供的图像显示方法的流程可以包括:S1201:手机200获取卡通人物B、第N帧图像以及在拍摄第N帧图像时,手机200的摄像头193的位姿。S1202:手机200根据摄像头193的位姿,计算卡通人物B在第N帧图像中的投影图和卡通人物B中各个像素点的深度。S1203:手机200基于第N帧图像计算人物A的蒙版,以及计算第N帧图像的各像素点的深度。进而,S1204:手机200更新蒙版内的人物A的像素点的深度,以使得人物A上的预设面积范围内的各个像素点的深度的差值,均小于预设的第二阈值。S1205:手机200调整蒙版内的人物A更新后的像素点的深度。如此,S1206:手机200根据第N帧图像、调整后的人物A的各像素点的深度、卡通人物B的在第N帧图像中的投影图、卡通人物B的各像素点的深度,在第一界面501显示第二AR图像503。其中,第二AR图像503包括卡通人物B和调整后的人物A,且手机200显示卡通人物B和调整后的人物A时,将卡通人物B和调整后的人物A中深度低的对象遮挡深度高的对象显示。
另外,在上述实施例中,是以第N帧图像中的目标对象为一个人物为例说明的。当第N帧图像中的目标对象包括多个人物时,手机200可以识别出第N帧图像中的多个人物,第N-1帧图像中除多个人物以外的区域,即第N-1帧图像中多个人物的蒙版。手机200应用连通域分析算法,计算蒙版内的多个连通域。可以理解地,每个连通域即一个人物所在的区域。进而,手机200可以基于上述的S405的方法调整每个连通域中的像素点(即调整每个人物的各像素点的深度)。类似地,手机200基于上述的S406的方法显示上述的卡通人物B和调整深度后的多个人物。
另外,在上述的实施例中,是以目标对象为人物A、虚拟对象为卡通人物B举例说明的。目标对象还可以是植物、动物、艺术品等对象,在此不作限定。虚拟对象还可以是虚拟景观、虚拟艺术品等对象,在此不作限定。
另外,在上述的实施例中,是以调整“相机”的图像预览界面中的目标对象的各个像素点的深度为例说明的。在另一些实施例中,还可以是一些AR应用的图像预览界面。例如,具有AR图像合成功能的游戏应用、视频播放应用的图像预览界面等,在此不作限定。
请参阅图12,本申请还提供了一种图像显示装置1200,应用于上述的电子设备。该图像显示装置1200包括图像采集单元1201、处理单元1202以及显示单元1203。其中,图像采集单元1201,用于采集第N帧图像。其中,N为大于1的整数。处理单元1202,用于确定第N帧图像中目标对象的各像素点的深度,目标对象为第N帧图像中与预设的虚拟对象存在遮挡的对象。处理单元1202,还用于在第N帧图像中目标对象的任一个像素点的深度,与在第N-1帧图像中对应的像素点的深度的差值大于第一阈值的情况下,调整任一个像素点的深度,以使差值小于或等于第一阈值。显示单元1203,用于显示虚拟对象以及调整后的目标对象时,将虚拟对象以及调整后的目标对象中深度低的对象遮挡深度高的对象显示。
在一种可能的实施方式中,处理单元1202,具体用于基于第N帧图像的前M帧图像中目标对象的像素点的深度,调整任一个像素点的深度,以使差值小于或等于第一阈值。其中,M为大于或等于1的整数。
进一步地,当M=1时,第N帧图像的前M帧图像为第N-1帧图像,第N帧图像中目标对象的任一像素点调整前的深度,和第N帧图像中目标对象的任一像素点调整后的深度满足条件:D1=D0-(Da-Dt)。其中,D0为第N帧图像中目标对象的任一像素点调整前的深度,D1为第N帧图像中目标对象的任一像素点调整后的深度,Da为第N帧图像的目标对象中任一个像素点的深度,与第N-1帧图像的目标对象中对应的像素点的深度的差值。
或者,进一步地,当M=2时,第N帧图像的前M帧图像包括第N-1帧图像和第N-2帧图像,第N帧图像中目标对象的任一像素点调整前的深度,和第N帧图像中目标对象的任一像素点调整后的深度满足条件:D1=D0+{D0-{[d1+(d1-d2)]*(1-c)+D0*c}}。其中,D0为第N帧图像中目标对象的任一像素点调整前的深度,D1为第N帧图像中目标对象的任一像素点调整后的深度,d1为第N-1帧图像中目标对象的像素点的深度,d2为第N-2帧图像中目标对象的像素点的深度,c为对第N帧图像进行卡尔曼滤波得到的卡尔曼增益。
更进一步地,处理单元1202,具体用于基于算式De=d1+(d1-d2),计算第N帧图像中目标对象的各像素点的估计深度值。其中,De为估计深度值。基于算式Dr=De*(1-c)+D0*c,确定第N帧图像中目标对象的任一个像素点的实际深度值,其中,Dr为实际深度值。计算第N帧图像的目标对象中任一个像素点的深度与实际深度值的差值Df。根据算式D1=D0+Df,调整第N帧图像中目标对象的各个像素点的深度。
在一种可能的实施方式中,处理单元1202,还用于更新第N帧图像中的目标对象中的各像素点的深度,使得在目标对象上的预设面积范围内的各个像素点的深度的差值,均小于预设的第二阈值。
进一步地,处理单元1202,具体用于电子设备将第N帧图像中目标对象的各像素点的深度的平均值,作为第N帧图像中目标对象中各像素点的深度。或者,电子设备将第N帧图像中目标对象的各像素点的深度的最大值,作为第N帧图像中目标对象中各像素点的深度。或者,电子设备将第N帧图像中目标对象的各像素点的深度的中值,作为第N帧图像中目标对象中各像素点的深度。或者,电子设备将第N帧图像中目标对象的各像素点的深度的最小值,作为第N帧图像中目标对象中各像素点的深度。
或者,进一步地,处理单元1202,具体用于确定与第N帧图像中目标对象的各像素点的距离之和最小的目标平面。将第N帧图像中目标对象的各像素点,投影到目标平面。将第N帧图像中目标对象的各像素点的深度更新为:第N帧图像中的目标对象中的各像素点投影到目标平面的深度。
在一种可能的实施方式中,显示单元1203,还用于显示拍摄预览界面,拍摄预览界面包括第一控件。显示单元1203,还用于响应于对第一控件的触发操作,显示虚拟对象的图标,以及响应于对虚拟对象的图标触发操作,在拍摄预览界面中显示虚拟对象。
在一种可能的实施方式中,处理单元1202,还用于根据预设的速度阈值、预设的采集图像的帧率,确定第一阈值。其中,速度阈值、帧率以及第一阈值之间满足条件:
Figure BDA0003319664120000181
Dt为第一阈值,v为速度阈值,f为帧率。
在一种可能的实施方式中,处理单元1202,还用于判断第N帧图像中目标对象调整后的各像素点深度,是否小于虚拟对象中对应的像素点的深度。显示单元1203,还用于若第N帧图像中目标对象调整后的各像素点深度,低于虚拟对象对应的像素点的深度,则电子设备将N帧图像中目标对象遮挡虚拟对象显示;若第N帧图像中目标对象调整后的像素点深度,高于虚拟对象对应的像素点的深度,则电子设备将虚拟对象遮挡N帧图像中目标对象显示。
在一种可能的实施方式中,处理单元1202,具体用于判断包含第N帧图像在内的连续n帧图像中的目标对象调整后的像素点的深度,是否小于虚拟对象对应的像素点的深度。其中,n为大于或等于2的整数。
示例性的,图13为本申请实施例提供的一种电子设备的硬件结构示意图,如图13所示,该电子设备包括处理器1301,通信线路1304以及至少一个通信接口(图13中示例性的以通信接口1303为例进行说明)。
处理器1301可以是一个通用中央处理器(central processing unit,CPU),微处理器,特定应用集成电路(application-specific integrated circuit,ASIC),或一个或多个用于控制本申请方案程序执行的集成电路。
通信线路1304可包括在上述组件之间传送信息的电路。
通信接口1303,使用任何收发器一类的装置,用于与其他设备或通信网络通信,如以太网,无线局域网(wireless local area networks,WLAN)等。
可能的,该电子设备还可以包括存储器1302。
存储器1302可以是只读存储器(read-only memory,ROM)或可存储静态信息和指令的其他类型的静态存储设备,随机存取存储器(random access memory,RAM)或者可存储信息和指令的其他类型的动态存储设备,也可以是电可擦可编程只读存储器(electrically erasable programmable read-only memory,EEPROM)、只读光盘(compactdisc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质,但不限于此。存储器可以是独立存在,通过通信线路1304与处理器相连接。存储器也可以和处理器集成在一起。
其中,存储器1302用于存储执行本申请方案的计算机执行指令,并由处理器1301来控制执行。处理器1301用于执行存储器1302中存储的计算机执行指令,从而实现本申请实施例所提供的图像显示方法。
可能的,本申请实施例中的计算机执行指令也可以称之为应用程序代码,本申请实施例对此不作具体限定。
在具体实现中,作为一种实施例,处理器1301可以包括一个或多个CPU,例如图13中的CPU0和CPU1。
在具体实现中,作为一种实施例,电子设备可以包括多个处理器,例如图13中的处理器1301和处理器1305。这些处理器中的每一个可以是一个单核(single-CPU)处理器,也可以是一个多核(multi-CPU)处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(例如计算机程序指令)的处理核。
示例性的,图14为本申请实施例提供的一种芯片的结构示意图。芯片140包括一个或两个以上(包括两个)处理器1410和通信接口1430。
在一些实施方式中,存储器1440存储了如下的元素:可执行模块或者数据结构,或者他们的子集,或者他们的扩展集。
本申请实施例中,存储器1440可以包括只读存储器和随机存取存储器,并向处理器1410提供指令和数据。存储器1440的一部分还可以包括非易失性随机存取存储器(non-volatile random access memory,NVRAM)。
本申请实施例中,存储器1440、通信接口1430以及存储器1440通过总线系统1420耦合在一起。其中,总线系统1420除包括数据总线之外,还可以包括电源总线、控制总线和状态信号总线等。为了便于描述,在图14中将各种总线都标为总线系统1420。
上述本申请实施例描述的方法可以应用于处理器1410中,或者由处理器1410实现。处理器1410可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,上述方法的各步骤可以通过处理器1410中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器1410可以是通用处理器(例如,微处理器或常规处理器)、数字信号处理器(digitalsignal processing,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现成可编程门阵列(field-programmable gate array,FPGA)或者其他可编程逻辑器件、分立门、晶体管逻辑器件或分立硬件组件,处理器1410可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。
结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。其中,软件模块可以位于随机存储器、只读存储器、可编程只读存储器或带电可擦写可编程存储器(electricallyerasable programmable read only memory,EEPROM)等本领域成熟的存储介质中。该存储介质位于存储器1440,处理器1410读取存储器1440中的信息,结合其硬件完成上述方法的步骤。
在上述实施例中,存储器存储的供处理器执行的指令可以以计算机程序产品的形式实现。其中,计算机程序产品可以是事先写入在存储器中,也可以是以软件形式下载并安装在存储器中。
计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以是通用计算机、专用计算机、计算机网络或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL)或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存储的任何可用介质或者是包括一个或多个可用介质集成的服务器、数据中心等数据存储设备。例如,可用介质可以包括磁性介质(例如,软盘、硬盘或磁带)、光介质(例如,数字通用光盘(digital versatile disc,DVD))、或者半导体介质(例如,固态硬盘(solid state disk,SSD))等。
本申请实施例还提供了一种计算机可读存储介质。上述实施例中描述的方法可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。计算机可读介质可以包括计算机存储介质和通信介质,还可以包括任何可以将计算机程序从一个地方传送到另一个地方的介质。存储介质可以是可由计算机访问的任何目标介质。
作为一种可能的设计,计算机可读介质可以包括紧凑型光盘只读储存器(compactdisc read-only memory,CD-ROM)、RAM、ROM、EEPROM或其它光盘存储器;计算机可读介质可以包括磁盘存储器或其它磁盘存储设备。而且,任何连接线也可以被适当地称为计算机可读介质。例如,如果使用同轴电缆,光纤电缆,双绞线,DSL或无线技术(如红外,无线电和微波)从网站,服务器或其它远程源传输软件,则同轴电缆,光纤电缆,双绞线,DSL或诸如红外,无线电和微波之类的无线技术包括在介质的定义中。如本文所使用的磁盘和光盘包括光盘(CD),激光盘,光盘,数字通用光盘(digital versatile disc,DVD),软盘和蓝光盘,其中磁盘通常以磁性方式再现数据,而光盘利用激光光学地再现数据。
上述的组合也应包括在计算机可读介质的范围内。以上,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。

Claims (15)

1.一种图像显示方法,其特征在于,所述方法包括:
电子设备采集第N帧图像,其中,N为大于1的整数;
所述电子设备确定所述第N帧图像中目标对象的各像素点的深度,所述目标对象为所述第N帧图像中与预设的虚拟对象存在遮挡的对象;
在所述第N帧图像中目标对象的任一个像素点的深度,与在第N-1帧图像中目标对象上对应的像素点的深度的差值大于第一阈值的情况下,所述电子设备调整所述任一个像素点的深度,以使所述差值小于或等于所述第一阈值;
所述电子设备显示所述虚拟对象以及调整后的所述目标对象时,将所述虚拟对象以及调整后的所述目标对象中深度低的对象遮挡深度高的对象显示。
2.根据权利要求1所述的方法,其特征在于,所述电子设备调整所述任一个像素点的深度,以使所述差值小于或等于所述第一阈值,包括:
所述电子设备基于所述第N帧图像的前M帧图像中目标对象的像素点的深度,调整所述任一个像素点的深度,以使所述差值小于或等于所述第一阈值,其中,M为大于或等于1的整数。
3.根据权利要求2所述的方法,其特征在于,当M=1时,所述第N帧图像的前M帧图像为第N-1帧图像,所述第N帧图像中目标对象的任一像素点调整前的深度,和所述第N帧图像中目标对象的任一像素点调整后的深度满足条件:
D1=D0-(Da-Dt),其中,D0为所述第N帧图像中目标对象的任一像素点调整前的深度,D1为所述第N帧图像中目标对象的任一像素点调整后的深度,Da为所述第N帧图像的目标对象中任一个像素点的深度,与所述第N-1帧图像的目标对象中对应的像素点的深度的差值。
4.根据权利要求2所述的方法,其特征在于,当M=2时,所述第N帧图像的前M帧图像包括第N-1帧图像和第N-2帧图像,所述第N帧图像中目标对象的任一像素点调整前的深度,和所述第N帧图像中目标对象的任一像素点调整后的深度满足条件:
D1=D0+{D0-{[d1+(d1-d2)]*(1-c)+D0*c}},其中,D0为所述第N帧图像中目标对象的任一像素点调整前的深度,D1为所述第N帧图像中目标对象的任一像素点调整后的深度,d1为所述第N-1帧图像中目标对象的像素点的深度,d2为所述第N-2帧图像中目标对象的像素点的深度,c为对所述第N帧图像进行卡尔曼滤波得到的卡尔曼增益。
5.根据权利要求4所述的方法,其特征在于,所述电子设备调整所述任一个像素点的深度,以使所述差值小于或等于所述第一阈值,包括:
所述电子设备基于算式De=d1+(d1-d2),计算所述第N帧图像中目标对象的各像素点的估计深度值,其中,De为所述估计深度值;
所述电子设备基于算式Dr=De*(1-c)+D0*c,确定所述第N帧图像中目标对象的任一个像素点的实际深度值,其中,Dr为所述实际深度值;
所述电子设备计算所述第N帧图像的目标对象中任一个像素点的深度与所述实际深度值的差值Df;
所述电子设备根据算式D1=D0+Df,调整所述第N帧图像中目标对象的各个像素点的深度。
6.根据权利要求1所述的方法,其特征在于,在所述电子设备调整所述任一个像素点的深度,以使所述差值小于或等于所述第一阈值之前,所述方法还包括:
所述电子设备更新所述第N帧图像中的目标对象中的各像素点的深度,使得在所述目标对象上的预设面积范围内的各个像素点的深度的差值,均小于预设的第二阈值。
7.根据权利要求6所述的方法,其特征在于,所述电子设备更新所述第N帧图像中的目标对象中的各像素点的深度,使得在所述目标对象上的预设面积范围内的各个像素点的深度的差值,均小于预设的第二阈值,包括:
所述电子设备将所述第N帧图像中目标对象的各像素点的深度的平均值,作为所述第N帧图像中目标对象中各像素点的深度;
或者,所述电子设备将所述第N帧图像中目标对象的各像素点的深度的最大值,作为所述第N帧图像中目标对象中各像素点的深度;
或者,所述电子设备将所述第N帧图像中目标对象的各像素点的深度的中值,作为所述第N帧图像中目标对象中各像素点的深度;
或者,所述电子设备将所述第N帧图像中目标对象的各像素点的深度的最小值,作为所述第N帧图像中目标对象中各像素点的深度。
8.根据权利要求6所述的方法,其特征在于,所述电子设备更新所述第N帧图像中的目标对象中的各像素点的深度,使得在所述目标对象上的预设面积范围内的各个像素点的深度的差值,均小于预设的第二阈值,包括:
所述电子设备确定与所述第N帧图像中目标对象的各像素点的距离之和最小的目标平面;
所述电子设备将所述第N帧图像中目标对象的各像素点,投影到所述目标平面;
所述电子设备将所述第N帧图像中目标对象的各像素点的深度更新为:所述第N帧图像中的目标对象中的各像素点投影到所述目标平面的深度。
9.根据权利要求1-8任一所述的方法,其特征在于,在所述电子设备采集第N帧图像之前,所述方法还包括:
所述电子设备显示拍摄预览界面,所述拍摄预览界面包括第一控件;
所述电子设备响应于对所述第一控件的触发操作,显示所述虚拟对象的图标;
所述电子设备响应于对所述虚拟对象的图标触发操作,在所述拍摄预览界面中显示所述虚拟对象。
10.根据权利要求1-8任一所述的方法,其特征在于,在所述电子设备采集第N帧图像之前,所述方法还包括:
所述电子设备根据预设的速度阈值、预设的采集图像的帧率,确定所述第一阈值;其中,所述速度阈值、所述帧率以及所述第一阈值之间满足条件:
Figure FDA0003319664110000021
Dt为所述第一阈值,v为所述速度阈值,f为所述帧率。
11.根据权利要求1-8任一所述的方法,其特征在于,所述电子设备显示所述虚拟对象以及调整后的所述目标对象时,将所述虚拟对象以及调整后的所述目标对象中深度低的对象遮挡深度高的对象显示,包括:
所述电子设备判断所述第N帧图像中目标对象调整后的各像素点深度,是否小于所述虚拟对象中对应的像素点的深度;
若所述第N帧图像中目标对象调整后的各像素点深度,低于所述虚拟对象对应的像素点的深度,则所述电子设备将所述N帧图像中目标对象遮挡所述虚拟对象显示;
若所述第N帧图像中目标对象调整后的像素点深度,高于所述虚拟对象对应的像素点的深度,则所述电子设备将所述虚拟对象遮挡所述N帧图像中目标对象显示。
12.根据权利要求11所述的方法,其特征在于,所述电子设备判断调整后的所述第N帧图像中目标对象的像素点深度,是否小于所述虚拟对象的各个像素点的深度,包括:
所述电子设备判断包含所述第N帧图像在内的连续n帧图像中的目标对象调整后的像素点的深度,是否小于所述虚拟对象对应的像素点的深度,其中,n为大于或等于2的整数。
13.一种电子设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时,使得所述电子设备执行如权利要求1至12任一项所述的方法。
14.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,使得计算机执行如权利要求1至12任一项所述的方法。
15.一种计算机程序产品,其特征在于,包括计算机程序,当所述计算机程序被运行时,使得计算机执行如权利要求1至12任一项所述的方法。
CN202111242371.7A 2021-10-25 2021-10-25 图像显示方法和电子设备 Pending CN116033281A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111242371.7A CN116033281A (zh) 2021-10-25 2021-10-25 图像显示方法和电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111242371.7A CN116033281A (zh) 2021-10-25 2021-10-25 图像显示方法和电子设备

Publications (1)

Publication Number Publication Date
CN116033281A true CN116033281A (zh) 2023-04-28

Family

ID=86078134

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111242371.7A Pending CN116033281A (zh) 2021-10-25 2021-10-25 图像显示方法和电子设备

Country Status (1)

Country Link
CN (1) CN116033281A (zh)

Similar Documents

Publication Publication Date Title
EP4224831A1 (en) Image processing method and electronic device
CN110557626B (zh) 一种图像显示的方法及电子设备
US20170099435A1 (en) Image Generation Method Based On Dual Camera Module And Dual Camera Apparatus
CN116055786B (zh) 一种显示多个窗口的方法及电子设备
EP4109882A1 (en) Image processing method and electronic device
CN112287852B (zh) 人脸图像的处理方法、显示方法、装置及设备
CN111882642B (zh) 三维模型的纹理填充方法及装置
CN115061770B (zh) 显示动态壁纸的方法和电子设备
CN114461051A (zh) 帧率切换方法、装置及存储介质
CN113038141A (zh) 视频帧处理方法及电子设备
CN116091292B (zh) 数据处理方法和相关装置
CN108027646B (zh) 一种终端显示防抖方法及装置
CN116033281A (zh) 图像显示方法和电子设备
CN115908120A (zh) 图像处理方法和电子设备
CN114863432A (zh) 一种终端设备、对比度调整方法、装置及介质
CN114172596A (zh) 信道噪声检测方法及相关装置
CN116708931B (zh) 图像处理方法及电子设备
CN117853377B (zh) 图像处理方法、电子设备及计算机可读存储介质
CN116672707B (zh) 生成游戏预测帧的方法和电子设备
CN116347229B (zh) 图像拍摄的方法及电子设备
EP4455986A1 (en) Data processing method and apparatus, and device and storage medium
CN116668773B (zh) 增强视频画质的方法与电子设备
CN117894256B (zh) 显示处理方法、装置及电子设备
US20230215108A1 (en) System and method for adaptive volume-based scene reconstruction for xr platform applications
CN116382896B (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