CN117729320A - 图像显示方法、设备及存储介质 - Google Patents
图像显示方法、设备及存储介质 Download PDFInfo
- Publication number
- CN117729320A CN117729320A CN202410174850.7A CN202410174850A CN117729320A CN 117729320 A CN117729320 A CN 117729320A CN 202410174850 A CN202410174850 A CN 202410174850A CN 117729320 A CN117729320 A CN 117729320A
- Authority
- CN
- China
- Prior art keywords
- image
- camera
- images
- background
- foreground
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 107
- 230000007704 transition Effects 0.000 claims description 163
- 239000011159 matrix material Substances 0.000 claims description 32
- 238000003709 image segmentation Methods 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 13
- 230000004927 fusion Effects 0.000 claims description 10
- 230000009469 supplementation Effects 0.000 claims description 6
- 230000000694 effects Effects 0.000 abstract description 28
- 230000008859 change Effects 0.000 description 77
- 238000010586 diagram Methods 0.000 description 50
- 230000008569 process Effects 0.000 description 42
- 238000012937 correction Methods 0.000 description 35
- 238000012545 processing Methods 0.000 description 34
- 230000000007 visual effect Effects 0.000 description 34
- 230000006870 function Effects 0.000 description 28
- 239000010410 layer Substances 0.000 description 28
- 238000010276 construction Methods 0.000 description 16
- 238000004422 calculation algorithm Methods 0.000 description 12
- 238000004891 communication Methods 0.000 description 12
- 230000036544 posture Effects 0.000 description 12
- 230000001133 acceleration Effects 0.000 description 11
- 238000001514 detection method Methods 0.000 description 11
- 238000007726 management method Methods 0.000 description 11
- PEDCQBHIVMGVHV-UHFFFAOYSA-N Glycerine Chemical compound OCC(O)CO PEDCQBHIVMGVHV-UHFFFAOYSA-N 0.000 description 9
- 238000003062 neural network model Methods 0.000 description 8
- 238000000926 separation method Methods 0.000 description 8
- 239000013589 supplement Substances 0.000 description 7
- 230000001502 supplementing effect Effects 0.000 description 7
- 238000010295 mobile communication Methods 0.000 description 6
- 230000011218 segmentation Effects 0.000 description 6
- 238000004364 calculation method Methods 0.000 description 5
- 230000001413 cellular effect Effects 0.000 description 5
- 230000003287 optical effect Effects 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 4
- 238000006243 chemical reaction Methods 0.000 description 4
- 239000003086 colorant Substances 0.000 description 4
- 238000000605 extraction Methods 0.000 description 4
- 238000007500 overflow downdraw method Methods 0.000 description 4
- 238000007781 pre-processing Methods 0.000 description 4
- 230000004044 response Effects 0.000 description 4
- 230000000295 complement effect Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000033001 locomotion Effects 0.000 description 3
- 230000001537 neural effect Effects 0.000 description 3
- 238000003672 processing method Methods 0.000 description 3
- 238000012552 review Methods 0.000 description 3
- 230000005236 sound signal Effects 0.000 description 3
- 241000282994 Cervidae Species 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000000877 morphologic effect Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000005855 radiation Effects 0.000 description 2
- 102100039856 Histone H1.1 Human genes 0.000 description 1
- 101001035402 Homo sapiens Histone H1.1 Proteins 0.000 description 1
- 241001465754 Metazoa Species 0.000 description 1
- 241000190070 Sarracenia purpurea Species 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 239000012792 core layer Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000007423 decrease Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000018109 developmental process Effects 0.000 description 1
- 230000010339 dilation Effects 0.000 description 1
- 210000001145 finger joint Anatomy 0.000 description 1
- 230000005484 gravity Effects 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 238000000691 measurement method Methods 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003238 somatosensory effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000011426 transformation method Methods 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
Landscapes
- User Interface Of Digital Computer (AREA)
Abstract
本申请提供了一种图像显示方法、设备及存储介质,可以实现3D立体显示效果,丰富了图像显示方式,提高了用户照片浏览体验。该方法包括:响应于用户的第一操作,获取第一摄像头采集的第一图像,以及获取第二摄像头采集的第二图像,第一摄像头和第二摄像头在第一方向上具有第一距离,第一图像的采集时刻与第二图像的采集时刻相同;检测终端设备的姿态信息;在姿态信息满足预设姿态条件的情况下,按序显示多个第三图像,第三图像是基于第一图像和第二图像合成的,其中,在第一方向上,每个第三图像对应一个拍摄视角,多个第三图像是按照拍摄视角依次排序的。
Description
技术领域
本申请涉及终端领域,尤其涉及一种图像显示方法、设备及存储介质。
背景技术
随着终端技术的发展,用户可以采用诸如手机、平板电脑等终端设备来进行照片的拍摄及查看浏览。
在现阶段,终端设备中供用户进行查看及浏览的图片均是2D平面照片,用户浏览照片的方式较为单一。
发明内容
为了解决上述技术问题,本申请提供一种图像显示方法、设备及存储介质。在该方法中,终端设备可以通过多个第三图像的显示,实现拍摄场景的3D立体显示效果,丰富了图像显示方式,提高了用户照片浏览体验。
第一方面,本申请提供一种图像显示方法。该方法包括:终端设备响应于用户的第一操作,获取第一摄像头采集的第一图像,以及获取第二摄像头采集的第二图像,其中,第一摄像头和第二摄像头在第一方向上具有第一距离,第一图像与第二图像的采集时刻相同。终端设备检测自身的姿态信息。在姿态信息大于或等于预设参数阈值的情况下,终端设备按序显示多个第三图像,第三图像是基于第一图像和第二图像合成的,其中,在第一方向上,每个目标图像对应一个拍摄视角,多个第三图像是按照拍摄视角依次排序的。
通过本实施例,终端设备在通过两个摄像头采集得到第一图像和第二图像之后,可以合成对应于不同拍摄视角的第三图像,以及根据终端设备的姿态按序显示第三图像,由于第三图像是按照拍摄视角依次排序的,按序显示第三图像可以模拟用户对同一拍摄场景在不同视角下的观看效果,模拟了拍摄场景的3D立体显示效果,丰富了图像显示方式,提高了用户照片浏览体验。以及,通过预先生成多个第三图像的方式,可以快速响应于终端设备的姿态变化,快速进行3D立体照片的显示。
其中,终端设备可以是多摄终端设备,即具有多个摄像头的终端设备。
其中,第一操作可以是用户的第一操作可以是用户在目标拍摄界面上的拍摄操作。
其中,第一摄像头和第二摄像头可以是同一终端设备上的不同摄像头。示例性地,第一摄像头和第二摄像头可以是长焦摄像头、广角摄像头、超广角摄像头、TOF摄像头等。在一个示例中,第一摄像头和第二摄像头可以均为RGB摄像头。在另一个示例中,第一摄像头可以为RGB摄像头,第二摄像头可以为诸如TOF器件等深度传感器。
其中,第一图像可以是第一图像帧,第二图像可以是第二图像帧。示例性地,第一图像可以是左目图像和右目图像中的一者,第二图像可以是左目图像和右目图像中的另一者。
其中,第一摄像头和第二摄像头在第一方向上位置不同。
其中,第一方向可以是一个轴的延伸方向,比如,x轴或者y轴的延伸方向。
其中,姿态信息可以是与终端设备的姿态相关的信息。示例性地,姿态信息可以是角度倾斜信息。其中,角度倾斜参数可以是能够衡量终端设备的倾斜程度的参数。比如,终端设备围绕x轴或者y轴的旋转角度,旋转速度,旋转加速度等。其中,姿态信息还可以是其他姿态,比如终端设备发生晃动等,对此不作限制。
其中,预设姿态条件可以是进行3D立体显示所需达到的设备姿态。示例性地,预设姿态条件可以为终端设备的角度倾斜参数大于或等于预设参数条件。其中,预设参数阈值可以是一个预先设置的角度值。需要说明的是,预设姿态条件还可以是其他条件,比如终端设备晃动多次等,其还可以根据具体情况和实际场景设置,对此不作具体限制。
其中,第三图像也可以称为过渡图像。多个第三图像可以是按照拍摄视角从小到大的顺序进行排序。比如,图像1、图像2、……、图像6。
可选地,终端设备可以响应于用户的第二操作,检测终端设备的角度倾斜参数。
其中,第二操作可以是用户进行3D立体照片显示的操作。比如,可以是在用户界面上对立体照片展示控件的触发操作。又比如,可以是用户在主摄照片上的预设触发操作。
根据第一方面,姿态信息包括终端设备的角度倾斜参数,预设姿态条件包括角度倾斜参数大于或等于预设参数阈值。这样,可以在手机倾斜时,根据手机倾斜来进行3D立体照片的显示,呈现立体照片显示效果。
根据第一方面,或者以上第一方面的任意一种实现方式,第一方向为第一轴的延伸方向,检测终端设备的角度倾斜参数,包括:检测终端设备围绕第二轴的旋转角度。这样,可以根据终端设备的旋转角度,对应展示3D立体照片,比如左右倾斜时,展示左目至右目变化过程中的图像变化效果,进一步提高了照片显示效果,提高了用户使用体验。
示例性地,第一轴和第二轴可以是相同轴,或者不同轴。在一个示例中,当终端设备在图像采集和图像显示时均处于竖屏状态或者均处于横屏状态,则第一轴和第二轴中的一者为x轴,另一者为y轴。在另一个示例中,当终端设备在图像采集时处于竖屏状态,在图像显示时处于横屏状态,或者在图像采集时处于横屏状态,在图像显示时处于竖屏状态,则第一轴和第二轴可以均为x轴,或者均为y轴。
根据第一方面,或者以上第一方面的任意一种实现方式,旋转角度包括围绕第二轴的顺时针旋转角度或者逆时针旋转角度,按序显示多个第三图像,包括:在终端设备围绕第二轴的逆时针旋转角度大于或等于预设参数阈值的情况下,按照多个第三图像的正序排列结果,依次显示多个第三图像;在终端设备围绕第二轴的顺时针旋转角度大于或等于预设参数阈值的情况下,按照多个图像的倒序排列结果,依次显示多个第三图像。这样,可以根据终端设备的旋转方向的不同,对同一拍摄场景实现不同的3D立体照片显示效果,进一步提高了图像显示的灵活性。比如,终端设备向左倾斜时,正序显示多个第三图像。又比如,终端设备向右倾斜时,倒序显示多个第三图像。
示例性地,多个第三图像的正序排列结果为图像1、图像2、……、图像6;则其倒序排列结果为图像6、图像5、……、图像1。
根据第一方面,或者以上第一方面的任意一种实现方式,按序显示多个第三图像,包括:播放目标视频文件,目标视频文件包括依次排序的多个第三图像,每个第三图像为目标视频文件的一个视频帧。这样,可以通过播放目标视频文件的方式,实现对多个第三图像的准确按序显示,降低了错误显示的概率,提高了立体照片显示效果的精确度。
示例性地,目标视频文件可以是MP4文件。
示例性地,目标视频文件中各视频帧的排序结果与多个第三图像的正序排列结果一致。比如,目标视频文件的视频帧可以依次为图像1、图像2、……、图像6。也就是说,目标视频帧的第一帧可以为第一个第三图像,目标视频帧的最后一帧可以为最后一个第三图像。
示例性地,终端设备可以在围绕第二轴的逆时针旋转角度大于或等于预设参数阈值的情况下,正着播放目标视频文件。以及,终端设备在围绕第二轴的顺时针旋转角度大于或等于预设参数阈值的情况下,倒着播放目标视频文件。
根据第一方面,或者以上第一方面的任意一种实现方式,方法还包括:响应于第一操作,获取第三摄像头采集的第四图像,第四图像与第一图像的采集时刻相同;其中,第三图像是利用第四图像进行盲区填充得到的。这样,通过第四图像,可以进一步提高第三图像的精度,进一步提高了3D立体照片的显示效果。
示例性地,第四图像可以称为第三图像帧。
根据第一方面,或者以上第一方面的任意一种实现方式,方法还包括:响应于第一操作,获取深度传感器采集的第五图像,第五图像与第一图像的采集时刻相同;其中,第三图像是基于第一图像、第二图像和第五图像合成的。这样,终端设备可以根据被拍摄场景的深度信息进行过渡照片的生成,从而进一步提高了立体照片的显示效果。
示例性地,深度传感器可以是用于采集被拍摄场景的深度信息的传感器。比如,TOF器件等。
示例性地,第五图像可以称为深度图像帧。
根据第一方面,或者以上第一方面的任意一种实现方式,获取第一摄像头采集的第一图像,以及获取第二摄像头采集的第二图像之后,以及检测终端设备的姿态信息之前,方法还包括:对第一图像进行图像分割,得到第一前景图像和第一背景图像;对第二图像进行图像分割,得到第二前景图像和第二背景图像;基于第一背景图像和第二背景图像,生成多个第三背景图像;基于第一前景图像和第二前景图像,生成多个第三前景图像,多个第三背景图像和多个第三前景图像一一对应,每组对应的第三背景图像和第三前景图像对应于同一拍摄视角;基于每组对应的第三前景图像和第三背景图像,生成一个第三图像。这样,根据图像的前景和背景之间的遮挡关系变化,即可实现3D照片显示效果,实现了对立体照片的快速和精准显示。
其中,图像分割可以是用于进行前景和背景分离的图像分割。示例性地,在终端设备还采集有第五图像的情况下,终端设备可以根据第五图像,对第一图像和第二图像进行前景和背景分离。比如,将深度信息小于或等于深度阈值的图像内容确定为前景内容,将深度信息大于或等于深度阈值的图像内容确定为图像内容。可选地,终端设备还可以根据第一图像和第二图像,确定被拍摄对象的深度信息,对此不作具体限制。
其中,第一背景图像可以称为第一背景图;第二背景图像可以称为第二背景图;第一前景图像可以称为第一前景图;第二前景图像可以称为第二前景图。
其中,第三背景图像可以称为过渡背景。
其中,第三前景图像可以称为过渡前景。
其中,第三前景图像和第三背景图像可以通过图像融合处理,得到第三图像。
根据第一方面,或者以上第一方面的任意一种实现方式,基于每组对应的第三前景图像和第三背景图像,生成一个第三图像,包括:响应于第一操作,获取第三摄像头采集的第四图像,第四图像的采集时刻与第一图像的采集时刻相同;对第四图像进行图像分割,得到第四背景图像;针对每组对应的第三前景图像和第三背景图像,利用第四背景图像,对每组中的第三背景图像进行盲区补充,得到第五背景图像;对第五背景图像和每组中的第三前景图像进行图像融合,得到每组对应的第三图像。这样,可以通过盲区填充的方式,提高背景图像的完整性,从而进一步提高了立体照片的显示效果。
其中,第四背景图像可以称为第三背景图。
示例性地,第四背景图像可以与第一背景图像进行图像配准,在图像配准后进行盲区填充。其中,图像配准可以包括特征点检测以及特征点匹配等过程。
根据第一方面,或者以上第一方面的任意一种实现方式,对第一图像进行图像分割,得到第一前景图像和第一背景图像,包括:响应于第一操作,获取深度传感器采集的第五图像,第五图像的采集时刻与第一图像的采集时刻相同;利用第五图像对第一图像进行图像分割,得到第一前景图像和第一背景图像。这样,可以准确提取图像中的前景内容和背景内容,进而提高了第三照片中前景和背景的分界精度,从而提高了立体照片的显示效果。
示例性地,可以利用第五图像和深度阈值进行图像分割。
根据第一方面,或者以上第一方面的任意一种实现方式,每个第三图像对应于一个预设比例系数,基于第一背景图像和第二背景图像,生成多个第三背景图像,包括:确定多个第一特征点对,每个第一特征点对包括第一背景图像中的第一特征点以及第二背景图中的第二特征点,第一特征点和第二特征点相匹配;基于多个第一特征点对,确定背景过渡矩阵;基于背景过渡矩阵和每个预设比例系数,确定每个预设比例系数对应的第三背景图像。这样,可以准确生成过渡背景,提高了过渡照片的精度。
示例性地,背景过渡矩阵可以是前应矩阵。矩阵的大小可以是3*3矩阵。
根据第一方面,或者以上第一方面的任意一种实现方式,每个第三图像对应于一个预设比例系数,基于第一前景图像和第二前景图像,生成多个第三前景图像,包括:确定多个第二特征点对,每个第二特征点对包括第一前景图像中的第三特征点以及第二前景图中的第四特征点,第三特征点和第四特征点相匹配;基于多个第二特征点对,确定前景过渡矩阵;基于前景过渡矩阵和每个预设比例系数,确定每个预设比例系数对应的第三前景图像。这样,可以准确进行过渡前景的生成,提高了过渡照片的精度。
示例性地,前景过渡矩阵也可以是前应矩阵。矩阵的大小可以是3*3矩阵。
根据第一方面,或者以上第一方面的任意一种实现方式,播放目标视频文件之前,方法还包括:基于多个第三图像,生成目标视频文件;基于目标视频文件和第一图像,生成目标显示文件;在目标存储区,存储目标显示文件。通过目标显示文件,可以对应存储第一图像和目标视频文件,便于进行立体照片和普通照片的对应显示。
其中,第一图像可以为主摄照片。
其中,目标显示文件可以为MP3文件。
其中,第一图像可以作为封面。可选地,为了便于用户快速获取照片信息,第一图像可以作为目标视频文件的封面。第二方面,本申请提供一种电子设备。电子设备包括:一个或多个处理器;存储器;以及一个或多个计算机程序,其中一个或多个计算机程序存储在存储器上,当计算机程序被一个或多个处理器执行时,使得电子设备执行以下步骤:
响应于用户的第一操作,获取第一摄像头采集的第一图像,以及获取第二摄像头采集的第二图像,第一摄像头和第二摄像头在第一方向上具有第一距离,第一图像的采集时刻与第二图像的采集时刻相同;
检测终端设备的姿态信息;
在姿态信息满足预设姿态条件的情况下,
按序显示多个第三图像,第三图像是基于第一图像和第二图像合成的,
其中,在第一方向上,每个第三图像对应一个拍摄视角,多个第三图像是按照拍摄视角依次排序的。
根据第二方面,姿态信息包括终端设备的角度倾斜参数,预设姿态条件包括角度倾斜参数大于或等于预设参数阈值。
根据第二方面,或者以上第二方面的任意一种实现方式,当计算机程序被一个或多个处理器执行时,使得电子设备执行以下步骤:
响应于第一操作,获取第三摄像头采集的第四图像,第四图像的采集时刻与第一图像的采集时刻相同;
其中,第三图像是利用第四图像进行盲区填充得到的。
根据第二方面,或者以上第二方面的任意一种实现方式,当计算机程序被一个或多个处理器执行时,使得电子设备执行以下步骤:
响应于第一操作,获取深度传感器采集的第五图像,第五图像的采集时刻与第一图像的采集时刻相同;
其中,第三图像是基于第一图像、第二图像和第五图像合成的。
第二方面以及第二方面的任意一种实现方式分别与第一方面以及第一方面的任意一种实现方式相对应。第二方面以及第二方面的任意一种实现方式所对应的技术效果可参见上述第一方面以及第一方面的任意一种实现方式所对应的技术效果,此处不再赘述。
第三方面,本申请提供了一种计算机可读介质,用于存储计算机程序,该计算机程序包括用于执行第一方面或第一方面的任意可能的实现方式中的方法的指令。
第三方面以及第三方面的任意一种实现方式分别与第一方面以及第一方面的任意一种实现方式相对应。第三方面以及第三方面的任意一种实现方式所对应的技术效果可参见上述第一方面以及第一方面的任意一种实现方式所对应的技术效果,此处不再赘述。
第四方面,本申请提供了一种计算机程序,该计算机程序包括用于执行第一方面或第一方面的任意可能的实现方式中的方法的指令。
第四方面以及第四方面的任意一种实现方式分别与第一方面以及第一方面的任意一种实现方式相对应。第四方面以及第四方面的任意一种实现方式所对应的技术效果可参见上述第一方面以及第一方面的任意一种实现方式所对应的技术效果,此处不再赘述。
附图说明
图1A-图1G示出了本申请实施例提供的图像显示方法的一组用户界面示意图;
图2A-图2C示出了本申请实施例提供的图像显示方法的另一组用户界面示意图;
图3A-图3B示出了本申请实施例提供的图像显示方法的另一组用户界面示意图;
图4示出了本申请实施例提供的图像显示方法的流程示意图;
图5A-图5C示出了本申请实施例提供的一种示例性的双目相机拍摄场景的示意图;
图6示出了一种示例性的拍摄场景示意图;
图7示出了本申请实施例提供的终端设备的参考坐标系的示意图;
图8A-图8B示出了本申请实施例提供的一种终端设备的旋转示意图
图9示出了本申请实施例提供的一种电子设备的结构示意图;
图10A-图10B示出了本申请实施例提供的一种电子设备的结构示意图;
图11是本申请实施例的电子设备的软件结构框图;
图12示出了本申请实施例提供的一种示例性的终端设备的摄像头分布关系的示意图;
图13示出了本申请实施例提供的一种终端设备的姿态示意图;
图14示出了本申请实施例提供的立体照片生成过程的流程示意图;
图15示出了本申请实施例提供的一种示例性的图像帧预处理过程的示意图;
图16示出了本申请实施例提供的一种示例性的前背景分离的示意图;
图17示出了本申请实施例提供的一种示例性的深度关系示意图;
图18示出了本申请实施例提供的一种示例性的所拍摄图像帧的示意图;
图19示出了本申请实施例提供的另一种示例性的深度关系示意图;
图20示出了本申请实施例提供的一种过渡照片的生成流程的示意图;
图21示出了本申请实施例提供的一种示例性的过渡照片的生成流程的示意图;
图22示出了本申请实施例提供的一种示例性的图像配准过程的流程示意图;
图23A-图23B示出了本申请实施例提供的一种示例性的过渡背景的生成示意图;
图24示出了本申请实施例提供的一种示例性的盲区补充过程的示意图;
图25示出了本申请实施例提供的一种立体照片存储过程的流程示意图;
图26示出了本申请实施例提供的视角变化视频的示意图;
图27示出了本申请实施例提供的一种示例性的组合文件的示意图;
图28示出了本申请实施例提供的一种立体照片显示过程的流程示意图;
图29A-图29B示出了本申请实施例提供的一组示例性的视角变化视频的播放过程的示意图;
图30示例性示出了本申请实施例提供的一种示例性的立体照片显示过程的示意图;
图31示例性示出了本申请实施例提供的另一种示例性的立体照片显示过程的示意图;
图32示出了本申请实施例的一种装置的示意性框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
本申请实施例的说明书和权利要求书中的术语“第一”和“第二”等是用于区别不同的对象,而不是用于描述对象的特定顺序。例如,第一目标对象和第二目标对象等是用于区别不同的目标对象,而不是用于描述目标对象的特定顺序。
在本申请实施例中,“示例性的”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性的”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性的”或者“例如”等词旨在以具体方式呈现相关概念。
在本申请实施例的描述中,除非另有说明,“多个”的含义是指两个或两个以上。例如,多个处理单元是指两个或两个以上的处理单元;多个系统是指两个或两个以上的系统。
在日常生活中,终端设备用户可以通过手机、平板电脑拍摄照片的方式,来记录生活中美好时刻。然而,现有的终端设备中的照片几乎都是单目2D图像,显示效果较为单一。
基于此,本申请实施例提供了一种图像显示方法、设备及存储介质,可以基于多个摄像头采集的图像,生成多张对应于不同拍摄视角的过渡图像,以及根据终端设备的角度倾斜参数,按序显示多个过渡照片,使得用户可以体会到对同一拍摄场景在多个连续视角的观看效果,实现了立体照片的显示效果,丰富了图像显示效果,提高了用户体验。
需要说明的是,本申请实施例中的图像显示方案可以应用于诸如手机、平板电脑等具有图像处理功能、图像显示功能、视频播放功能的终端设备。
在一些实施例中,本申请实施例的图像显示方案可以应用于具有多目摄像功能的终端设备。具体地,具有摄像功能的终端设备可以采用图像显示方案对正在拍摄(即拍摄中)的视频、已拍摄的视频、网络下载的视频、或者外部设备发送的视频进行处理。
在另一些实施例中,本申请实施例的图像处理方法可以应用于不具有摄像功能的终端设备。具体地,不具有摄像功能的终端设备可以从网络下载或者接收外部设备发送的已拍摄视频或者图像流,采用图像处理方法对已拍摄的视频或者图像流进行处理。为了便于理解,接下来以视频流为例,对本申请实施例的技术方案进行说明。但应理解的是,本申请实施例的图像处理方法也可以适用于图像流。
为了便于理解,在开始介绍本申请实施例提供的图像显示方案之前,先对本申请实施例涉及的技术术语进行说明。
(1)单目,即利用单一拍摄装置,从单一角度获取目标拍摄场景的图像。
(2)多目,即利用两个或两个以上的拍摄装置,从多个不同角度、在同一时刻下对同一目标拍摄场景拍摄。
(3)2D图像,即平面图像,用于反映目标拍摄场景的平面信息。比如,现有手机拍摄得到的照片即为2D图像。
(4)3D图像,即空间图像,用于反映目标拍摄场景的空间信息。示例性地,发明人通过研究发现,在目标拍摄场景包括多个物体的情况下,不同视角下不同物体之间的遮挡关系不同。
(5)左目图像,即从左眼(左目)视角拍摄得到的图像。
(6)右目图像,即从右眼(右目)视角拍摄得到的图像。
在介绍了上述术语之后,为了便于理解,接下来对本申请实施例的用户界面进行说明。
在一些实施例中,图1A-图1G示出了本申请实施例提供的图像显示方法的一组用户界面示意图。可以理解的,图1A及其后续介绍的用户界面仅仅示例性示出了以手机为例的终端设备100的一种可能的用户界面样式,不应构成对本申请实施例的限定。
首先,图1A示例性示出了终端设备100的主界面(homepage)。如图1A所示,主界面可以包括状态栏111、页面指示符112以及多个应用图标113。
其中,状态栏111可包括移动通信信号(又可称为蜂窝信号)的一个或多个信号强度指示符、无线高保真(wireless fidelity,Wi-Fi)信号强度指示符,电池状态指示符、时间指示符等。
页面指示符112可用于指示当前显示的页面与其他页面的位置关系。具体地,页面指示符112可以用于指示用户当前浏览的页面是承载多个应用图标113的多个页面中的哪一个页面。用户可以左右滑动来浏览其他页面。
对于多个应用图标113,每个应用图标113对应一个应用程序。需要说明的是,应用图标可分布在多个页面上,用户通过左右滑动可以浏览其他页面上的应用图标。对于相机应用图标113A,其可以位于主界面底部的底部固定栏114内,又或者其可以直接位于主界面中部的应用图标显示区域115内,或者位于应用图标显示区域115的应用文件夹内,对其显示位置不作具体限定。
当终端设备100检测到用户作用于如图1A所示的用户界面上的相机应用图标113A伤的应用触发操作(比如点击操作)之后,终端设备100可以响应于上述操作,显示图1B所示的用户界面(以下简称拍摄界面)。需要说明的是,在本实施例以及在后续实施例中,除了通过点击主界面上的相机应用图标113A来打开相机应用之外,还可以在终端设备100运行特定应用时,通过点击特定应用程序中的相机控件来打开相机应用,比如通过点击即时通讯工具中的相机控件来打开相机应用,对此不作具体限制。
如图1B所示,拍摄界面可以包括菜单栏121、拍摄控件122、预览窗123、回看控件124、工具栏125。接下来逐一进行说明。
菜单栏121可以包括多个拍摄模式选项,比如“夜景”、“人像”、“拍照”、“录像”等。具体地,如图1B所示,终端设备100可以检测到用户作用于菜单栏121上的模式切换操作(比如左滑、右滑、点击等操作),切换拍摄模式。
拍摄控件122可以在用户的拍摄操作的触发下,触发终端设备100的拍摄操作。
预览窗123用于显示终端设备100采集到的预览图像1231。
回看控件124可以在用户的触发操作下,显示终端设备100采集到的照片。
工具栏125用于展示多个拍摄功能的功能控件。比如,在本申请实施例中,工具栏125中可以显示立体照片拍摄控件1251。相应地,终端设备100可以检测用户作用于立体照片拍摄控件1251的触发操作进入立体照片拍摄模式,以及,终端设备100在测到用户作用于拍摄控件122的触发操作之后进行图像采集,以及基于本申请实施例提供的图像显示方法生成立体照片。又比如,无需用户的触发操作,终端设备100检测到用户作用于拍摄控件122的触发操作,终端设备100即可自动生成立体照片。
当终端设备100检测到用户作用于在图1B示出的用户界面上的触发操作之后,用户界面可以如图1C所示,回看控件125显示拍摄照片的缩略图。以及当用户在图1C示出的用户界面的回看控件125上执行了触发操作之后,终端设备100可以响应于该触发操作,显示图1D所示的用户界面(即拍摄照片展示界面)。
如图1D所示,拍摄照片展示界面可以显示有主摄照片131、立体照片展示控件126A以及图库控件126B。其中,主摄照片131即在普通照片模式显示的2D照片。终端设备100检测到用户作用于立体照片展示控件126A的触发操作(比如点击等)之后,可以在图1E示出的用户界面播放本申请实施例提供的视角变化视频132,以进行立体照片的显示。又或者,可以在主摄照片131上执行预设触发操作,来播放本申请实施例提供的视角变化视频132。其中,预设触发操作可以是长按、双击等用户操作。比如,可以是区分于动态照片的用户操作。需要说明的是,本申请实施例中的立体照片展示控件126的样式可以根据实际情况和具体需求设置为其他样式,对此不作具体限制。
其中,视角变化视频132可以由m帧不同视角的图像组成,m帧图像的视角是连续变化的。示例性地,图1F示出了视角变化视频132的播放过程中的多个用户界面。示例性地,视角变化视频132的第一帧图像可以是图1F中的(1)的用户界面显示的左目图像1321,视角变化视频的132的第一帧视频可以是图1F中的(2)的用户界面显示的右目图像132m。
此外 ,当用户在图1D示出的界面上触发了图库控件126B时,或者在图1A示出的主界面上针对图库控件113B执行了触发操作(比如点击等用户操作)之后,可以显示图1G示出的用户界面(图库显示界面)。在如图1G示出的图库显示界面中,用户可以查看存储的视频和照片。具体地,在如图1G示出的图库显示界面中,可以显示主摄照片131的缩略图和视角变化视频132的缩略图。其中,视角变化视频132的缩略图上显示有立体照片标识132A,以区别于主摄照片131的缩略图。又或者,图库显示界面还可以仅显示普通照片的缩略图,本申请实施例对此不作具体限制。需要说明的是,在本实施例以及在后续实施例中,除了上述打开图库之外,还可以在终端设备100运行特定应用时,通过点击特定应用程序中的图库控件来打开图库,比如通过点击即时通讯工具中的相机应用的图库控件,对此不作具体限制。
在图1A-图1G示出的用户界面中,立体照片拍摄功能可以是自动进行的,无需另行设置。可选地,还可以通过设置来打开立体照片拍摄功能。接下来将通过两个实施例进行说明。
在另一些实施例中,图2A-图2C示出了本申请实施例提供的图像显示方法的另一组用户界面示意图。在图2A示出的用户界面上,终端设备100可以检测到用户作用于菜单栏121上的模式切换操作(比如左滑、右滑、点击等操作),切换至“更多”模式。
在切换至“更多”模式之后,终端设备100显示如图2B所示的用户界面。如图2B所示的界面上显示有多个拍摄功能控件,比如立体照片控件127(即控制终端设备100生成立体照片的控件)。当终端设备100检测到用户执行了立体照片控件127(的触发操作(比如点击等用户操作)之后,终端设备100可以显示如图2C所示的“立体照片”的拍摄界面。以及,终端设备100在测到用户作用于拍摄控件122的触发操作之后进行图像采集,以及基于本申请实施例提供的图像显示方法生成立体照片。需要说明的是,立体照片的显示方式可以参见本申请实施例上述部分结合图1A-图1G的相关说明,对此不再赘述。
在又一些实施例中,图3A-图3B示出了本申请实施例提供的图像显示方法的又一组用户界面示意图。在图3A示出的用户界面上,终端设备检测到用户作用于设置控件125A上的触发操作(比如点击等用户操作)之后,可以显示如图3B所示的设置界面。
在图3B示出的设置界面上显示有多个拍照功能的设置控件,比如立体照片的开关控件128。其中,开关控件128用于控制立体照片拍摄功能的开启和关闭。当终端设备100检测到用户通过开关控件128打开了立体照片拍摄功能之后,用户在图2B示出的用户界面上点击了拍摄控件122之后,终端设备可以生成立体照片。需要说明的是,立体照片的显示方式可以参见本申请实施例上述部分结合图1A-图1G的相关说明,对此不再赘述。
以及,需要说明的是,上述用户操作可以包括但不限于单击、双击、滑动等操作,又或者用户还可以通过语音、手势等进行操作,对此不作具体限制。
在通过上述内容介绍了本申请实施例的用户界面之后,接下来结合附图对本申请实施例的发明构思进行说明。
图4示出了本申请实施例提供的图像显示方法的流程示意图。如图4所示,终端设备可以包括多个摄像头,比如超广角摄像头(UltalWide)、长焦摄像头(Tele)、广角镜头(Wide)和飞行时间法(Time Of Flight,TOF)器件。在现有技术中,以广角摄像头作为主摄为例,广角镜头采集到的图像1(可以将用于生成预览图像的多帧图像1称为预览流)经过预览流处理后,可以得到预览图像,以及在预览窗123显示预览图像。
以及,在采集得到多帧图像1(可以将用于生成主摄照片的多帧图像1称为多帧序列)之后,通过图像处理,得到主摄照片(即普通拍照模式下拍摄得到的照片,又可以简称为普通照片)。
在本申请实施例中,在广角摄像头、长焦摄像头、超广角摄像头、TOF器件对拍摄场景进行拍摄,分别得到图像1(对应于广角摄像头)、图像2(对应于长焦摄像头)、图像3(对应于超广角摄像头)、图像4(对应于TOF器件)之后,终端设备可以对图像1-图像4进行帧对齐等帧处理,得到多摄对齐帧,其中,终端设备图像1-图像3中的一帧作为左目图像,以及另一帧作为右目图像。然后基于多摄对齐帧,终端设备对拍摄场景进行3D场景构建,然后基于所构建的3D场景生成左目图像与右目图像之间的过渡图像。以及,基于左目图像、过渡图像、右目图像生成视角变化视频。
以及,在本申请实施例中,还可以基于视角变化视频和照片生成组合文件,以照片作为文件的封面。
图5A示出了本申请实施例提供的一种示例性的双目相机拍摄场景的示意图。如图5A所示,以人眼为例,左眼和右眼的视差是不同的,相应地,左眼和右眼看到的物体之间的遮挡关系也是有区别的。
当终端设备的多个摄像头的位置关系不同时,多个摄像头的视差也不同。以左目相机和右目相机为例,左目相机可以模拟人左眼的视角,右目相机可以模拟人右眼的视角,相应地,如图5A所示,左目相机和右目相机的拍摄视角不同,左目相机的视场F1和右目相机的视场F2也不同,对同一拍摄场景进行观察时,左目相机和右目相机的视差也不相同,经发明人研究发现,该视差的区别主要体现在不同物体之间的遮挡关系上。
示例性地,图5B示出了本申请实施例提供的一种示例性的左目图像(即左目相机拍摄得到的图像)的示意图,图5C示出了本申请实施例提供的一种示例性的右目图像(即右目相机拍摄得到的图像)的示意图。对比图5B和图5C可知,左目图像和右目图像中玩偶A1对月饼B1的遮挡程度不同。具体地,在左目图像的区域1中,玩偶A1部分遮挡月饼B1,在右目图像的区域2中,玩偶A1未遮挡月饼B1。相应地,在不同视角对同一拍摄场景进行拍摄时,被拍摄物体之间的遮挡关系不同。
图6示出了一种示例性的拍摄场景示意图。如图6所示,当从图6示出的不同摄角度(或拍摄位置)对同一拍摄场景进行拍摄时,可以分别得到图像1-图像6。图像1-图像6中物体之间的遮挡关系是逐渐变化的。示例性地,若图像1为图5B示出的左目图像,图像6为图5C示出的右目图像,则在图像1-图像6中,玩偶A1对月饼B1的遮挡程度逐渐降低,直到月饼A1完全不再遮挡月饼B1。
以及,由于各拍摄角度的图像代表着观看者在该拍摄角度对拍摄场景观察到的画面,相应地,图像1变化至图像6的变化过程,表示着观察者从左眼位置到右眼位置的移动过程中所看到的画面,即可以看到拍摄场景的立体画面。
在介绍了本申请实施例的发明构思之后,由于本申请实施例涉及到根据终端设备的终端姿态来播放图像,接下来结合附图对终端设备的参考坐标系和倾斜姿态进行说明。
图7示出了本申请实施例提供的终端设备的参考坐标系的示意图。如图7所示,终端设备的参考坐标系可以包括x轴、y轴和z轴。其中,x轴平行于终端设备的宽度方向(比如手机的短边),y轴平行于终端设备的长度方向(比如手机的长边),z轴平行于终端设备的高度方向(比如手机的厚度方向)。
图8A和图8B示出了本申请实施例提供的一种终端设备的旋转示意图。以终端设备为手机为例,如图8A和图8B所示,当手机处于图8A中的(1)所示的竖屏姿态时,若用户向右倾斜(右旋)手机,即手机如图8B中的(1)所示沿y轴顺时针旋转,则手机处于图8A中的(2)所示的倾斜姿态。
以及,当手机处于图8A中的(1)和图8B中的(1)所示的竖屏姿态时,若用户向左倾斜(左旋)手机,即手机如图8B中的(2)所示沿y轴逆时针针旋转,则手机处于图8A中的(3)和图8B中的(1)所示的倾斜姿态。
在介绍了终端设备的参考坐标系和倾斜姿态之后,接下来继续对本申请实施例的终端设备的硬件结构进行说明。
图9示出了本申请实施例提供的一种电子设备的结构示意图。应该理解的是,图9所示的电子设备的结构可以适用于上述实施例示出的中的终端设备100。应该理解的是,图9示出的电子设备仅是电子设备的一个范例,并且电子设备可以具有比图中所示的更多的或者更少的部件,可以组合两个或多个的部件,或者可以具有不同的部件配置。图9中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
电子设备100可以包括:处理器110,外部存储器接口120,内部存储器121,通用串行总线(Universal Serial Bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(Subscriber Identification Module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(Application Processor,AP),调制解调处理器,图形处理器(Graphics ProcessingUnit,GPU),图像信号处理器(Image Signal Processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(Digital Signal Processor,DSP),基带处理器,和/或神经网络处理器(Neural-network Processing Unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是电子设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为电子设备100充电,也可以用于电子设备100与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他电子设备,例如AR设备等。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过电子设备100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193,和无线通信模块160等供电。电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在电子设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(Low Noise Amplifier,LNA)等。
无线通信模块160可以提供应用在电子设备100上的包括无线局域网(WirelessLocal Area Networks,WLAN)(如无线保真(Wireless Fidelity,Wi-Fi)网络),蓝牙(BlueTooth,BT),全球导航卫星系统(Global Navigation Satellite System,GNSS),调频(Frequency Modulation,FM),近距离无线通信技术(Near Field Communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。
在一些实施例中,电子设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备100可以通过无线通信技术与网络以及其他设备通信。
电子设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(Liquid Crystal Display,LCD),有机发光二极管(Organic Light-EmittingDiode,OLED)等。在本申请实施例中,电子设备100可以包括1个或者M个显示屏194,M为大于1的正整数。在本申请实施例中,电子设备200可以通过显示屏194提供的显示能力显示图1A-图1G、图2A-图2C、图3A-图3B所示的用户界面,包括界面中显示的照片、视频等图像资源等。
电子设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP 用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(Charge Coupled Device,CCD)或互补金属氧化物半导体(Complementary Metal-Oxide-Semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备100可以包括N个摄像头193,N为大于1的正整数。示例性地,图10A中的(1)为电子设备的正面结构示意图,图10A中的(2)为电子设备的背面结构示意图,图10B为电子设备在横向放置时的正面结构示意图。如图10A和图10B所示,电子设备的摄像头55可以包括超广角摄像头551、长焦摄像头552、广角镜头553和TOF器件554。
视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(Moving Picture Experts Group,MPEG)1,MPEG2,MPEG3,MPEG4等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行电子设备100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(Universal Flash Storage,UFS)等。
电子设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。压力传感器180A的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器180A,电极之间的电容改变。电子设备100根据电容的变化确定压力的强度。当有触摸操作作用于显示屏194,电子设备100根据压力传感器180A检测所述触摸操作强度。电子设备100也可以根据压力传感器180A的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如:当有触摸操作强度小于第一压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指令。当有触摸操作强度大于或等于第一压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。
陀螺仪传感器180B可以用于确定电子设备100的运动姿态。在一些实施例中,可以通过陀螺仪传感器180B确定电子设备100围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感器180B可以用于拍摄防抖。示例性的,当按下快门,陀螺仪传感器180B检测电子设备100抖动的角度,根据角度计算出镜头模组需要补偿的距离,让镜头通过反向运动抵消电子设备100的抖动,实现防抖。陀螺仪传感器180B还可以用于导航,体感游戏场景。
在本申请实施例中,以终端设备处于竖屏状态为例,陀螺仪传感器180B还可以确定电子设备100围绕y轴的旋转角度。在电子设备100围绕y轴的逆时针旋转角度(即电子设备向左倾斜角度)大于或等于预设参数阈值的情况下,正向播放视角变化视频。以及,在电子设备100围绕y轴的顺时针旋转角度(即向右倾斜角度)大于预设参数阈值的情况下,反向播放视角变化视频。
加速度传感器180E可检测电子设备100在各个方向上(一般为三轴)加速度的大小。当电子设备100静止时可检测出重力的大小及方向。还可以用于识别电子设备姿态,应用于横竖屏切换,计步器等应用。在本申请实施例中,加速度传感器180E可以确定电子设备围绕y轴的旋转加速度,根据加速度,确定视角变化视频的播放速度。
触摸传感器180K,也称“触控面板”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于电子设备100的表面,与显示屏194所处的位置不同。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备100可以接收按键输入,产生与电子设备100的用户设置以及功能控制有关的键信号输入。
马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
在通过图8A-图8B、图9、图10A-图10B介绍了终端设备的硬件结构之后,接下来继续对终端设备的软件结构进行说明。
电子设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android系统为例,示例性说明电子设备100的软件结构。
图11是本申请实施例的电子设备的软件结构框图。
电子设备100的分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,框架层,硬件抽象层(Hardware Abstraction Layer,HAL)和系统库,以及内核层。
应用程序层可以包括一系列应用程序包。
如图11所示,应用程序包可以包括相机,图库等应用程序。
框架层为应用程序层的应用程序提供应用编程接口(Application ProgrammingInterface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图11所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,资源管理器,通知管理器等。在本申请实施例中,还可以包括相机访问接口。相机访问接口用于相机应用提供应用编程接口和编程框架。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。数据可以包括视频,图像等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
硬件抽象层为位于应用程序框架层与内核层之间的接口层,用于为操作系统提供虚拟硬件平台。硬件抽象层可以包括相机HAL、音频HAL、WiFi HAL等。在本申请实施例中,相机HAL包括帧处理模块、3D场景构建模块、过渡照片生成模块以及立体照片显示模块等。需要说明的是,帧处理模块、3D场景构建模块、过渡照片生成模块以及立体照片显示模块还可以设置于除相机HAL之外的其他HAL中,对此不作限定。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。其中,摄像头驱动用于驱动摄像头的传感器采集图像以及驱动图像信号传感器对图像进行预处理。数字信号处理器驱动用于驱动数字信号处理器处理图像。图像处理器驱动用于驱动图形处理器处理图像。
可以理解的是,图11示出的软件结构中的层以及各层中包含的部件,并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的层,以及每个层中可以包括更多或更少的部件,本申请不做限定。
示例性地,继续以图4示出的摄像头为例,相机应用调用应用程序框架层中的相机访问接口启动相机服务,以及在用户输入相机控制指令(例如预览、放大、拍照、录像、抓拍等指令),相机应用可以通过相机访问接口将相机控制指令发送至硬件抽象层中的相机硬件抽象层(Camera HAL)。相机硬件抽象层可以根据接收到的相机控制指令调用内核层中的相机设备驱动,由相机设备驱动来驱动广角摄像头、长焦摄像头、超广角摄像头和TOF器件采集图像,以及驱动图像传感器(Sensor)将图像光信号转换为图像电信号(拜耳图像)。以及,由相机设备驱动来驱动ISP将图像电信号转换为原始图像帧,以及通过相机设备驱动将原始图像帧传输至相机HAL。
相机HAL的帧处理模块可以基于数字信号处理器、图像处理器的能力,基于原始图像帧,确定待处理图像帧。示例性地,以TOF器件为例,帧处理模块可以将原始图像raw图进行解析,得到红外线(infrared,IR)图像。然后,对各摄像头的待处理图像帧进行帧对齐、色彩一致性处理、畸变矫正、视场角(Field of View,FOV)对齐、极线矫正等处理。可选地,帧处理模块还可以直接对各摄像头的原始图像帧进行帧对齐等处理,对此不作具体限制。以及,为了简化表述,TOF器件1944对应的处理后的图像帧可以简称为深度图像帧,广角摄像头1941对应的处理后的图像帧可以简称为第一图像帧,超广角摄像头1943对应的处理后的图像帧可以简称为第二图像帧,长焦摄像头1942对应的处理后的图像帧可以简称为第三图像帧。在一些实施例中,终端设备还可以不包括TOF器件,则本申请实施例可以不涉及深度图像帧。在另一些实施例中,终端设备可以仅包括两个RGB摄像头(广角摄像头1941、长焦摄像头1942、超广角摄像头1943中的两者)又或者可以包括一个RGB摄像头和一个TOF器件,则本申请实施例可以不涉及第三图像帧。
3D场景构建模块可以基于帧处理模块处理后的图像帧(深度图像帧、第一图像帧、第二图像帧和第三图像帧)对拍摄场景进行3D构建。示例性地,3D场景构建模块可以对第一图像帧、第二图像帧进行前景和后景的分离,来实现3D场景的构建。可选地,3D场景构建模块还可以对辅助图像帧进行背景的提取。
过渡图像生成模块可以基于前景、后景分离后的第一图像帧、第二图像帧,生成至少一帧过渡图像。以及,利用第三图像帧对过渡图像进行视角盲区补充。
立体照片显示模块,可以根据终端设备在第一方向上的倾斜角度参数,来依次显示第一图像帧、至少一帧过渡图像帧、第二图像帧。
可选地,相机HAL还可以包括组合文件生成模块,其用于基于第一图像帧、第二图像帧、至少一帧过渡图像,生成视角变化视频。以及基于视角变化视频和普通照片,生成组合文件。
以及,相机HAL在确定视角变化视频之后,可以通过相机访问接口将视角变化视频上报给相机应用或者图库应用,相机应用或者图库应用可以将视角变化视频显示在显示界面中,或者将视角变化视频保存在手机中。
在介绍了电子设备的软件结构之后,接下来对本申请实施例提供的图像显示方法进行说明。
以下实施例中的方法均可以在具备上述硬件结构的终端设备实现。以下实施例结合图12-图31,对本申请实施例具体实现方式进行详细说明。具体地,本申请实施例中的立体照片显示过程可以分为三部分。第一部分为立体照片生成场景,即终端设备基于所拍摄的照片生成立体照片的过程。第二部分为立体照片存储场景,即终端设备存储立体照片的场景。第三部分为立体照片的显示场景,即终端设备显示立体照片的场景。
在开始介绍立体照片生成场景之前,先对终端设备的摄像头位置关系以及姿态进行说明。
图12示出了本申请实施例提供的一种示例性的终端设备的摄像头分布关系的示意图。在一个实施例中,如图12中的(1)所示,多个摄像头(RGB摄像头)可以位于同一条直线上,比如在与y轴平行的直线上分布。在另一个实施例中,如图12中的(2)所示,多个摄像头(RGB摄像头)可以不在同一条直线上,比如,三个摄像头呈三角形分布。
图13示出了本申请实施例提供的一种终端设备的姿态示意图。在一个实施例中,如图13中的(1)所示,在照片拍摄阶段以及显示阶段,终端设备均可以处于竖屏状态。在另一个实施例中,如图13中的(2)所示,在照片拍摄阶段以及显示阶段,终端设备均可以处于横屏状态。在又一个实施例中,如图13中的(3)所示,在照片拍摄阶段,终端设备可以处于竖屏状态,以及在显示阶段,终端设备可以处于横屏状态。在再一个实施例中,如图13中的(4)所示,在照片拍摄阶段,终端设备可以处于横屏状态,以及在显示阶段,终端设备可以处于竖屏状态。在再一个实施例中,如图13中的(5)和图13中的(6)所示,在照片拍摄阶段和/或显示阶段,终端设备还可以处于倾斜状态,对此不作具体限制。
在介绍了终端设备的姿态之后,接下来继续对立体照片的生成过程进行说明。图14示出了本申请实施例提供的立体照片生成过程的流程示意图。如图14所示,立体照片生成过程可以包括步骤S110至S180。
S110,摄像头A采集第一图像帧。
在S110中,用户在图1B示出的拍摄界面执行了拍摄操作之后,终端设备可以通过摄像头A对被拍摄场景进行图像采集,得到图像光信号。然后经过图像传感器可以将采集得到的图像光信号进行光电转换,得到拜耳图像。然后利用ISP对拜耳图像进行处理,得到第一图像帧。示例性地,第一图像帧可以为图5B所示的图像帧。
在一些实施例中,摄像头A可以是终端设备中的一个RGB摄像头。比如,可以是在某一方向上位于最远端的摄像头。示例性地,以图13中的(1)中的终端设备为例,在确定左右目之间的视角变化视频的情况下,摄像头A可以是终端设备的多个RGB摄像头中,位于最左侧或者最右侧的摄像头。即x轴方向上,坐标值最小或者坐标值最大的RGB摄像头。比如,可以是图12中的(2)中的广角摄像头1941(坐标值最小)或者超广角摄像头1943(x轴的坐标值最大)。又或者,继续以图13中的(2)中的终端设备为例,在确定左右目之间的视角变化视频的情况下,摄像头A可以是位于最左侧或者最右侧的摄像头。即y轴上,坐标值最小或者坐标值最大的RGB摄像头。比如,可以是图12中的(1)和图12中的(2)中的广角摄像头1941或者超广角摄像头1943。又一示例性地,继续以图13中的(1)为例,在确定上下视角的视角变化视频的情况下,摄像头A可以是多个RGB摄像头中,位于最上端或者最下端的摄像头。即y轴方向上,坐标值最小或者坐标值最大的RGB摄像头。比如,可以是图12中的(1)中的广角摄像头1941(最上端)或者超广角摄像头1943(最下端)。又比如,可以是图12中的(2)中的长焦摄像头1942(最上端),或者,可以是广角摄像头1941与超广角摄像头1943中的一者(最下端)。需要说明的是,横屏状态下的终端设备相似,对此不再赘述。
在另一些实施例中,还可以将多个摄像头的主摄选择为摄像头A。需要说明的是,在本申请实施例中,还可以根据实际情况和具体场景,在多个摄像头中选择一个作为摄像头A,对此不作具体限制。
需要说明的是,摄像头A可以是超广角摄像头、长焦摄像头或者广角摄像头等,对此不作具体限制。
S120,摄像头B采集第二图像帧。
在S120中,用户在图1B示出的拍摄界面执行了拍摄操作之后,终端设备可以通过摄像头B,得到第二图像帧。需要说明的是,得到第二图像帧的具体方式可以参见S110中对得到第一图像帧的相关说明,对此不再赘述。示例性地,第二图像帧可以为图5C所示的图像帧。
在一些实施例中,在终端设备的多个摄像头中,可以在除摄像头A之外的剩余摄像头中选择摄像头B。示例性地,为了增大立体照片的视角变化范围,在选择某一方向上最远端的摄像头作为摄像头A的情况下,可以选择该方向的反方向上的最远端的摄像头作为摄像头B。比如,继续以图13中的(1)为例,若选择广角摄像头1941作为摄像头A,则可以选择超广角摄像头1943作为摄像头B。需要说明的是,还可以根据具体情况和实际场景,采用其他方式来选择第二摄像头,对此不再赘述。
可选地,在终端设备包括1个RGB摄像头,一个TOF器件的情况下,可以将该个RGB摄像头选择为摄像头A,以及将TOF器件选择为摄像头B。
S130,摄像头C采集第三图像帧。其中,第一图像帧至第三图像帧可以是不同摄像头在同一时刻采集的图像帧。
在S130中,用户在图1B示出的拍摄界面执行了拍摄操作之后,终端设备可以通过摄像头C,得到第三图像帧。需要说明的是,得到第二图像帧的具体方式可以参见S110中对得到第一图像帧的相关说明,对此不再赘述。
在一些实施例中,在终端设备的多个摄像头中,终端设备可以将除摄像头A和摄像头B之外的其他摄像头,选择为摄像头C。比如,继续以图13中的(1)为例,若选择广角摄像头1941作为摄像头A、超广角摄像头1943作为摄像头B,则可以选择长焦摄像头1942作为摄像头C。
可选地,在终端设备仅包括2个摄像头的情况下,可以将其中的一个作为摄像头A,另一个摄像头作为摄像头B。相应地,终端设备可以不包括摄像头C。
S140,TOF器件采集深度图像帧。
在S140中,用户在图1B示出的拍摄界面执行了拍摄操作之后, TOF器件可以采集到原始图像raw图,终端设备可以对raw图进行解析,得到IR图像(即深度图像帧)。
在一些实施例中,TOF器件还可以实现为其他深度传感镜头,其中,深度传感镜头可以是能够记录场景或者对象深度值的器件。比如结构光器件、双目器件等,对此不作具体限制。
需要说明的是,在本申请实施例中,终端设备还可以不包括TOF器件,相应地,后续步骤中可以不包含对深度图像帧处理的相关内容。
S150,帧处理模块对各图像帧进行预处理。
在一些实施例中,帧处理模块的预处理可以包括时间同步、色彩一致性矫正、畸变矫正、视场角对齐、极线矫正等处理。
在一些实施例中,图15示出了本申请实施例提供的一种示例性的图像帧预处理过程的示意图。如图15所示,帧处理模块可以包括时间同步单元、色彩校正单元、视场对齐单元、极线矫正单元等。
相应地,S150可以包括如下步骤S151-S154中的一个步骤或者多个步骤。
S151,时间同步单元对各图像帧进行时间同步(又可以称为帧对齐)。示例性地,时间同步的图像帧可以包括深度图像帧。
在一个实施例中,在步骤S151中,时间同步单元可以通过外部同步信号输入接口(同步锁定/同步锁相(Genlock)),将多个摄像头连接至同一同步源的触发源,以利用该触发源同时触发多个摄像头来启动拍摄。
在另一个实施例中,时间同步单元可以通过网络时间协议(Simple Network Timeprotocol,NTP)协议来对各摄像头进行时间同步。通过该实施方式,可以保证不同摄像头使用相同时间戳来记录每个图像的拍摄时间。
在又一个实施例中,时间同步单元可以通过多个摄像头拍摄的画面的根据重叠部分和声音来同步各个摄像头拍摄的图像帧。比如使用自适应同步算法来自动调整帧率对齐。
需要说明的是,在本申请实施例,时间同步单元还可以通过其他方式来进行各图像帧的时间同步,对此不做具体限制。通过时间同步,可以保证各图像帧所拍摄内容和画面的一致性,从而提高了后续立体照片生成的精细度。
S152,色彩校正单元对各图像帧进行色彩一致性校正。示例性地,色彩校正的图像帧可以不包括深度图像帧。
在一个实施例中,色彩校正单元可以采用色彩矫正矩阵对各图像帧进行色彩矫正。示例性地,色彩矫正矩阵可以是预先设置的,比如,色彩矫正矩阵可以是在出厂之前根据摄像机在不同场景(如室内、室外等光线变化场景)下的色彩偏差确定的。
在另一个实施例中,色彩校正单元还可以对各图像帧进行内容识别,根据所识别内容的色彩偏差对该图像帧进行色彩矫正。比如,若在图像帧中识别到蓝天,色彩校正单元可以朝着将识别到的蓝天矫正为蓝色的方向对整个图像帧进行矫正。通过图像内容进行色彩矫正的方式,能够保证图像色彩在不同场景下的矫正精度。
需要说明的是,在本申请实施例,色彩校正单元还可以通过其他方式进行各图像帧的色彩矫正,以使同一摄像场景能够在不同摄像头拍摄的图像帧中保证色彩一致性,对具体校正方式不作限制。通过色彩一致性矫正,可以保证过渡照片中的色彩协调性,避免了各图像帧色彩不一致导致过渡照片中的颜色突变、颜色不均能情况的发生,提高了立体照片的生成精度。
S153,视场对齐单元对各图像帧进行视场(Field Of View,FOV)(或者可以称为畸变校正)。示例性地,
在一个实施例中,视场对齐单元可以通过畸变校正参数或者畸变校正矩阵对各图像帧进行校正,以保证各图像帧的视场一致性。示例性地,畸变校正参数以及畸变校正矩阵可以是预先标定的。比如,视场对齐单元可以根据摄像头的内部参数(包括焦距,图像中心坐标)、旋转矩阵和平移矩阵等。然后根据内部参数对该摄像头采集的图像帧进行校正处理,根据双线性差值得到校正后的图像,最后,对校正后的图像进行缩放,再进行一次双线性差值得到目标图像帧。
需要说明的是,在本申请实施例,视场对齐单元还可以通过其他方式进行各图像帧的畸变消除和行对准,以使同一摄像场景能够在不同摄像头拍摄的图像帧中保证视场角的一致性,比如,通过图像内容的校正等,对具体校正方式不作限制。终端设备中各摄像头的视角往往不同,比如长焦摄像头和广角摄像头,通过畸变矫正,可以保证各图像帧的视角一致性,便于后续过渡照片的生成,降低了后续图像处理压力,提高了立体照片的生成精度。
S154,极线校正单元对各图像帧进行极线校正。
在一个实施例中,可以通过极线校正算法对各图像帧进行极线校正。比如,极线校正单元可以先确定旋转矩阵,以将不同摄像机的相机坐标系校正至平行装潢他。然后,可以为不同相机设置新的内参,以使各相机内参相同。再然后,可以对相机坐标系的中心点进行偏移。
需要说明的是,在本申请实施例中,还可以采用其他极线校正方式对不同摄像头的极线进行校正,比如双目极线校正方法、三目极线矫正方法等,对此不作具体限制。通过极线校正,可以保证多目相机的成像面平行且行对齐,从而使得同一特征点在不同图像帧的同一行上,这样在后续特征点匹配时,仅需进行行搜索,节省了计算时间和算力,且避免了虚假匹配特征点,提高了匹配精度。
需要说明的是,在本申请实施例中,还可以对各图像帧执行其他预处理操作,以提高各图像帧在时间、色彩、视场等方向的一致性,对此不作具体限制。
S160,3D场景构建模块对各图像帧进行前景和背景的分离(或者可以称为前景后景/背景分割)。
在一些实施例中,图16示出了本申请实施例提供的一种示例性的前背景分离的示意图。如图16所示,对原始图像帧进行前景和背景分离之后,可以得到背景图像帧和前景图像帧。其中,背景图像帧可以包括拍摄场景中的背景内容,前景图像帧可以包括拍摄场景的前景内容。示例性地,在S160中,3D场景构建模块可以将第一图像帧分割为第一背景图像和第一前景图像,第二图像帧分割为第二背景图像和第二前景图像,以及将第三图像帧分割出第三背景图像。
需要说明的是,在本申请实施例中,前景内容可以包括一个前景对象,比如图17中的玩偶。可选地,前景内容还可以包括多个前景对象,比如图17中的玩偶和月饼,相应地,多个前景对象可以在一个前景图像帧中,或者在不同的前景图像帧中,对此不作具体限制。
在一个实施例中,3D场景构建模块可以根据图像帧中各像素点的深度信息对各图像帧进行前景、背景的分割。
示例性地,3D场景构建模块根据深度阈值H0和深度图像帧,可以采用阈值分割法进行前景背景的分离。比如,图17示出了本申请实施例提供的一种示例性的深度关系示意图。其中,箭头的方向指向深度值的增加方向。
图5B中的被拍摄对象中的玩偶A1、月饼B1、水杯B2和桌挡B3在深度图像帧的深度关系如图17所示。其中,玩偶A1的深度值小于深度阈值H0,可以将其识别为前景内容,以及,月饼B1、水杯B2和桌挡B3的深度值均大于深度阈值H0,可以将其识别为背景内容。
需要说明的是,3D场景构建模块还可以采用其他阈值分割算法进行前景背景的分割,比如,聚类法、二值化等方法,对此不作具体限制。
在另一个实施例中,3D场景构建模块可以通过对拍摄主体的识别进行前景和背景的分离。比如,3D场景构建模块可以识别图像帧中的人物、动物、建筑物等作为前景,以及把其他内容作为背景。
示例性地,图18示出了本申请实施例提供的一种示例性的所拍摄图像帧的示意图。其中,图18中各被拍摄对象的深度关系可以参见图19所示。图19示出了本申请实施例提供的另一种示例性的深度关系示意图,其中,按照深度值从小到大依次为树木D1、小鹿D2、树木D2、树木D3、云朵D4、太阳D6、云朵D5。
3D场景构建模块在所拍摄图像帧中识别到动物小鹿C1为拍摄主体之后,可以将小鹿C1识别为前景内容,将剩余被拍摄对象作为背景内容。
需要说明的是,在本申请实施例中,3D场景构建模块还可以利用其他前景背景分离算法,比如混合高斯算法,边缘分割算法、区域分割算法或者形态学分割法等,又或者3D场景构建模块还可以采用预选训练好的神经网络模型来进行前景和后景的分离,对此不作具体限制。
以及,在另一些实施例中,3D场景构建模块将第一图像帧、第二图像帧输入神经网络模型,可以得到拍摄场景的3D模型。可选地,神经网络模型还可以根据第三图像帧和/或深度图像帧输入神经网络模型进行拍摄场景的3D模型的构建。
示例性地,神经网络模型可以是神经辐射场(Neural Radiance Fields,NeRF),即是一种3D场景表示方法。在本申请实施例中,NeRF可以通过在不同视角下对拍摄场景拍摄的多个图像帧(比如第一图像帧、第二图像帧),使用神经网络来学习场景中光线的辐射属性,用神经网络隐式编码空间点的密度和颜色。即NeRF可以根据空间点的三维坐标来预测颜色值和密度值。
需要说明的是,在本申请实施例,还可以通过其他方式,基于多个图像帧对被拍摄场景进行3D场景构建,对此不作具体限制。
S170,过渡照片生成模块基于分离后的第一图像帧、第二图像帧、第三图像帧,生成m张过渡照片。其中,m可以为大于或等于2的整数。在一些实施例中,m可以是根据实际需求或者具体场景设置的,比如,可以设置为10张等。在一个示例中,终端设备可以对拍摄照片进行内容识别,确定拍摄照片的内容复杂程度。在内容复杂程度较小时,将m设置在较小值,在内容复杂程度较大时,将m设置为较大值。在另一个示例中,终端设备可以根据自身的剩余存储空间和算力,来确定m的数值。在又一个示例中,用户可以在终端设备的设置界面中设置m的数值。
过渡照片,即用于描述拍摄场景在多个视角下的照片,每张过渡照片对应一个拍摄视角,m张过渡照片按照视角大小依次排序,比如按照从小到大的顺序进行排列。在一些实施例中,m张过渡照片可以包括第一图像帧、至少一张中间过渡图像帧,第二图像帧。在一些实施例中,中间过渡图像帧可以是基于第一图像帧和第二图像帧合成得到的。中间过渡图像帧的拍摄视角位于第一图像帧的拍摄视角和第二图像帧的拍摄视角之间。示例性地,中间过渡图像帧的拍摄视角大于第一图像帧的拍摄视角,且小于第二图像帧的拍摄视角。又或者,中间过渡图像帧的视角小于第一图像帧的拍摄视角,且大于第二图像帧的拍摄视角。示例性地,m张过渡照片的拍摄视角可以依次为E1、E1+△E0、E1+2△E0、…、E2。其中,E1可以是第一图像帧的拍摄视角,E2可以是第二图像帧的拍摄视角。
示例性地,继续以图6为例,图像1-图像6可以为过渡照片,其中,在图像1为第一图像帧,图像6为第二图像帧的情况下,图像2-图像5可以为中间过渡图像帧。可选地,m张过渡照片还可以包括第三图像帧。需要说明的是,根据实际情况和具体场景,m张过渡照片还可以不包括第一图像帧或者第二图像帧,对此不作具体限制。
在介绍了过渡照片的具体内容之后,接下来继续对S170的具体实施方式进行说明。
在一些实施例中,图20示出了本申请实施例提供的一种过渡照片的生成流程的示意图。如图20所示,过渡照片生成模块可以包括图像配准单元、过渡区域生成单元、盲区补充单元和图像融合单元。具体地,S170可以包括下述步骤S171至S176。
S171,图像配准单元对第一背景图(第一图像帧的背景图像)和第二背景图(第二图像帧的背景图像)进行配准。示例性地,图21示出了本申请实施例提供的一种示例性的过渡照片的生成流程的示意图。如图21所示,在进行图像分割之后,图像配准单元可以对第一背景图E11(第一图像帧E01的背景图像)和第二背景图E21(第二图像帧E02的背景图像)进行配准。
在一个实施例中,S171可以包括如下步骤一和步骤二。
步骤一、图像配准单元可以对第一背景图进行特征点检测,得到多个第一特征点。以及,图像配准单元对第二背景图进行特征点检测,得到多个第二特征点。示例性地,图像配准单元可以采用诸如尺度不变性特征变换(Scale-Invariant Feature Transform,SIFT)、加速版的具有鲁棒性的特征(SpeededUp Robust Features,SURF)、一种快速特征点提取和描述的算法(Oriented Fast and Rotated Brief,ORB)等特征点提取算法,又或者可以是用于进行特征点提取的神经网络模型,对此不作具体限制。
示例性地,图22示出了本申请实施例提供的一种示例性的图像配准过程的流程示意图。如图22所示,图像配准单元可以对第一背景图E11进行特征点检测,得到检测后的第一背景图E12,以及对第二背景图E21进行特征点检测,得到检测后的第二背景图E22。其中,第一背景图E12和第二背景图E22上包括多个特征点(以黑色圆点示出)。
步骤二、图像配准单元对第一特征点和第二特征点进行特征点匹配。又或者,还可以称为关键点匹配。示例性地,图像配准单元可以计算特征点之间的距离的相似度度量方法、诸如kd树等穷举法、或者具有特征点匹配功能的神经网络模型等,对此不作具体限制。
示例性地。继续参见图22,对检测后的第一背景图E12、检测后的第二背景图E22中的特征点进行匹配之后,可以得到多个相匹配的第一特征点对(图21中使用虚线进行连接的特征点表示为相匹配的特征点对)。
S172,图像配准单元对第一前景图(第一图像帧的前景图像)和第二前景图(第二图像帧的前景图像)进行配准。示例性地,继续参见图21,图像配准单元还可以对第一前景图E13和第二前景图E23进行配准。
需要说明的,前景图的配准方式与背景图的配准方式相似,比如可以通过特征点检测、特征点匹配,得到多个相匹配的第二特征点对,其具体计算方式可以参见本申请实施例上述部分的相关描述,对此不再赘述。
S173,过渡区域生成单元基于配准后的第一背景图和第二背景图,生成m张过渡背景。示例性地,继续参见图21,过渡区域生成单元可以基于第一背景图E11和第二背景图E21,生成m张过渡背景F1至Fm。
在一些实施例中,S173可以包括确定m张过渡背景中像素点位置的步骤,即下述步骤三和步骤四。
步骤三、过渡区域生成单元可以基于配准后的第一背景图和第二背景图,构建背景过渡矩阵。具体地,过渡区域生成单元可以根据多个第一特征点对,构建背景过渡矩阵。示例性地,背景过渡矩阵可以实现为单应矩阵。
示例性地,若第一背景图上的像素点F1、第二背景图上的像素点F2和背景过渡矩阵H1可以满足下述公式(1):
F2= H1F1(1)
例如,公式(1)还可以表示为如下公式(2):
(2)
其中,像素点F1的坐标表示为(x1,x2),像素点F2的坐标表示为(x1,x2),单应矩阵H1表示为公式(2)中的3*3矩阵。
步骤四、过渡区域生成单元可以将背景过渡矩阵H1乘上预设比例系数,得到各像素点从第一背景图至过渡背景的移动距离。然后基于各像素点的移动距离,确定过渡背景中各像素点的位置。其中,每个过渡背景对应于一个预设比例系数,预设比例系数均小于或等于1。
示例性地,第i张过渡背景的像素点可以表示为下述公式(3):
(3)
其中,为第i张过渡背景对应的预设比例系数。
在一个具体的示例中,图23A-图23B示出了本申请实施例提供的一种示例性的过渡背景的生成示意图。如图23A所示,若第一背景图F1中的像素点P1对应于第二背景图F10中的像素点P10,则在生成的过渡背景F2-过渡背景F9中,可以对应像素点P2-P9。
在一些实施例中,S173还可以包括确定m张过渡背景中像素点颜色的步骤。即下述步骤五。
步骤五,过渡区域生成单元可以基于每一组第一特征点对,确定各过渡背景中所对应的像素点的颜色值。
在一个实施例中,针对每一组第一特征点,过渡区域生成单元可以将第一背景图中所对应像素点的颜色值(比如RGB值)和第二背景图中所对应像素点的颜色值进行平均或者加权运算,得到各过渡图像中所对应像素点的颜色值。继续以图23A为例,过渡区域生成单元可以将像素点P1的颜色值和像素点P10的颜色值进行平均,得到像素点P2至像素点P9的颜色值。又或者,为了进一步提高颜色准确性,过渡区域生成单元还可以将像素点P1的颜色值、像素点P10的颜色值、第三背景图中与像素点P1对应的像素点的颜色值进行平均。
在另一些实施例中,针对每一组第一特征点,过渡区域生成单元可以按照优先级的顺序,确定过渡背景中像素点的颜色值。示例性地,优选选择第一背景图(以第一图像帧为主摄为例)的像素点的颜色值作为过渡背景中所对应像素点的颜色值。在第一背景图不存在所对应的像素点的情况下,过渡区域生成单元优先选择第二背景图的像素点的颜色值作为过渡背景中所对应像素点的颜色值。
在又一些实施例中,针对每一组第一特征点,过渡区域生成单元还可以根据第一背景图中所对应像素点的颜色值、第二背景图中所对应像素点的颜色值之间的差值,确定过渡背景中所对应像素的颜色值,以形成颜色的过渡。比如,继续以图23A所示,像素点P1-像素点P10的颜色值是逐渐变化的。
需要说明的是,在S173中还可以采用其他方式来确定各过渡图像中的像素点位置以及颜色,比如插值法等,对此不作具体限制。
S174,过渡前景生成单元基于配准后的第一前景图和第二前景图,生成m张过渡前景。其中,第i张过渡前景与第i张过渡背景对应于同一视角。示例性地,继续参见图21,过渡前景生成单元可以基于第一前景图E13和第二前景图E23,生成m张过渡前景H1至Hm。其中,m张过渡前景H1至Hm的生成过程,可以参见本申请实施例上述部分结合S173的相关说明,在此不再赘述。
S175,盲区补充单元利用第二背景图和第三背景图,对过渡背景进行盲区补充。示例性地,继续参见图21,盲区补充单元可以利用第二背景图E21和第三背景图E31对过渡背景F1至Fm进行盲区补充,得到补充后的过渡背景G1至Gm。需要说明的是,当终端设备还拍摄有第四图像帧等其他图像帧时,还可以利用其他图像帧对过渡图像继续进行盲区补充,对此不作具体限制。以及,在终端设备未拍摄第三图像帧的情况下,可以仅利用第二背景图进行盲区补充。
在一个实施例中,盲区补充单元可以在过渡背景中确定盲区(比如黑色区域)。然后,确定盲区在第二背景图和第三背景图中的对应区域。在所对应区域存在图像内容的情况下,利用所对应区域对盲区进行图像填充。可选地,可以确定第二背景图和第三背景图的补充优先级,比如先利用第二背景图进行盲区补充,对于第二背景图未补全的区域,继续利用第三背景图进行补充。又可选地,对于盲区中任一像素点,可以对第二背景图中所对应像素点的颜色值和第三背景图中所对应像素点的颜色值,按照一定的权重,确定盲区中该任一像素点的颜色值,然后对其进行补充。需要说明的是,还可以按照其他方式对盲区进行补充,对此不作具体限制。
在一个示例中,图24示出了本申请实施例提供的一种示例性的盲区补充过程的示意图。如图24所示,在过渡背景的局部区域的局部放大图中存在盲区L1,第二背景图的局部区域的局部放大图中存在补充区域L2。盲区L1和补充区域L2是对同一物体的同一位置拍摄的,但是过渡背景未生成该区域,而第二背景图捕捉到了该位置的图像内容。此时,可以利用补充区域L2对盲区L1进行补充,进一步提高了过渡背景的完整性。
以及,还需要说明的是,由于需要利用第三背景图进行盲区补充,可以预先对第三图像和第一图像进行配准。具体配准方式可以参见上述部分的相关描述,对此不作具体限制。
可选地,在一些实施例中,盲区补充单元还可以对过渡前景进行盲区补充,其具体补充方式与对过渡背景的盲区补充相似,对此不再赘述。
S176,图像融合单元基于m张过渡前景和补充后的m张过渡背景,生成m张过渡照片。示例性地,继续参见图21,图像融合单元可以利用m张过渡前景H1至Hm、补充后的过渡背景G1至Gm,合成过渡照片J1至Jm。具体地,过渡前景H1与补充后的过渡背景G1,生成过渡照片J1;过渡前景H2与补充后的过渡背景G2,生成过渡照片J2;……;过渡前景Hm与补充后的过渡背景Gm,生成过渡照片Jm。
示例性地,在S176中图像融合单元可以对一个过渡前景和一个补充后的过渡背景进行图像融合,得到一个过渡照片。其中,可以采用图像融合算法进行图像融合,图像融合算法可以是平均融合法、金字塔融合法、梯度域融合法、小波变换法以及结构变形法等,又或者还可以采用预选训练好的神经网络模型进行图像融合,对此不作具体限制。
可选地,图像融合单元还可以通过其他方式进行盲区填充,比如形态学的膨胀方法、高斯平滑等方法,对此不作具体限制。
可选地,终端设备还可以不对过渡背景进行补充,直接利用未补充的过渡背景进行过渡照片的生成,以节省算力或者提高图像生成效率。
可选地,终端设备还可以对过渡照片进行图像优化等处理,以提高图像分辨率、通提高清晰度、去除噪声、改善色彩等图像质量。
由于在拍摄视角变化时,前景内容与背景内容之间遮挡关系的变化较为显性。通过上述S171至S176,可以用不同过渡照片中前景内容与背景内容之间的遮挡关系变化来表示不同拍摄视角的视图,图像处理难度较低且能够准确表达立体照片中的视角变化,提高了图像处理效果。
在通过S171至S176介绍了基于前景、背景分割算法介绍了过渡照片的一种可行生成方式之外,终端设备还可以通过NeRF模型,确定所构建3D模型在m个连接视角的视图,每个视图即为一个过渡照片。
需要说明的是,终端设备还可以通过其他方式来生成过渡照片,对此不作具体限制。
S180,普通照片生成模块对第一图像帧进行图像处理,得到主摄照片(又可称为普通照片)。其中,普通照片即为在正常拍摄模式下,终端设备采集并显示的照片。
示例性地,图像处理可以是提高图像分辨率、提高清晰度、去除噪声、改善色彩、图像格式转换等图像优化处理,对此不作具体限制。
需要说明的是,本申请实施例中的S180可以在S110之后执行的,对其与其他步骤之间的先后次序不作具体限制。
可选地,终端设备还可以包括预览照片生成模块,预览照片生成模块对第一图像帧进行预览处理,得到预览照片。其中,预览照片是在预览窗口中所显示的照片。示例性地,预览处理可以是降低分辨率或者图像格式转换等图像处理,对此不作具体限制。
在通过上述图14至图24介绍了立体照片的生成过程之后,接下来继续对立体照片的存储过程进行说明。
图25示出了本申请实施例提供的一种立体照片存储过程的流程示意图。如图25所示,终端设备还可以包括视频生成模块、文件生成模块和目标存储区。具体地,立体照片存储过程可以包括如下步骤S210至S230。
S210,视频生成模块基于m张过渡照片,生成视角变化视频。其中,在视角变化视频中m张过渡照片按照视角大小依次排列,以在视频播放时能够按照排列次序依次显示各张过渡照片。比如,图26示出了本申请实施例提供的视角变化视频的示意图。如图26所示,每张过渡照片可以作为视角变化视频的一个视频帧,m张过渡照片可以按照过渡照片J1至图像Jm的顺序排列,相应地,在视频顺序播放时,可以依次显示过渡照片J1至过渡照片Jm,比如在过渡照片J1显示了一定时长之后切换显示过渡照片J2,过渡照片J2显示了一定时长之后切换显示过渡照片J3,……,在过渡照片Jm显示了一定时长之后视频结束播放。以及,在视频倒序播放时,可以依次显示过渡照片Jm至J1。又或者。可以按照图像6至图像1的顺序排列,以在视频播放时,能够通过m张排列照片的按序显示,来形成视角转换的显示效果。
在一个示例中,视角变化视频可以是mp4格式,又或者还可以根据其他需求,设置为其他视频格式,对此不作具体限制。
S220,文件生成模块基于视角变化视频和主摄照片,生成组合文件。其中,视角变化视频和主摄照片可以对应于同一采集时刻。比如,视角变化视频可以是基于某一时刻的第一图像帧、第二图像帧、第三图像帧生成的,主摄照片可以是基于同一时刻的第一图像帧生成的。在一个示例中,图27示出了本申请实施例提供的一种示例性的组合文件的示意图。如图27所示,组合文件可以是JPEG文件,一个JPEG文件可以包括一个主摄照片和一个视角变化视频。可选地,当终端设备可以根据同一时刻采集的图像帧,生成左右视角的视角变化视频,以及上下视角的视角变化视频的情况下,一个JPEG文件可以包括一张主摄照片和两个视角变化视频(左右视角的视角变化视频和上下视角的视角变化视频)。需要说明的是,当终端设备还可以根据同一时刻采集的图像帧,生成更多方向的视角变化视频时,一个JPEG文件中还可以包括更多的视角变化视频,对此不作具体限制。
示例性地,组合文件可以以主摄照片为封面。
示例性地,组合文件可以是JPEG文件。相应地,文件生成模块可以按照JPEG的格式标准,来放置主摄照片和视角变化视频。在本实施例中,可以利用JPEG文件的扩充空间,来实现对主摄照片和视角变化视频的对应放置。
需要说明的是,通过生成组合文件的方式,可以使得视角变化视频和主摄照片一一对应,从而在后续针对主摄照片执行预设触发操作时,可以对应播放主摄照片所拍摄的拍摄场景的视角变化视频,避免了主摄照片与视角变化视频不一致的问题。
需要说明的是,在本申请实施例中,还可以通过其他方式来使得视角变化视频和主摄照片一一对应,比如设置同样的文件名称等文件标识符等,对此不作具体限制。
S230,目标存储区在接收并存储组合文件。示例性地,目标存储区可以是终端设备内部,用于存储视角变化视频的存储区域。比如,可以是终端设备的内部存储器或者缓存器等,对此不作限制。
比如,继续参见图27,目标存储区可以存储多个JPEG文件,比如JPEG文件1、JPEG文件2等。
以及,在视角变化视频无需与主摄视频对应显示时,终端设备可以无需生成组合文件时,目标存储区还可以直接存储视角变化视频,本申请实施例对此不作具体限制。
在通过上述图25至图27介绍了立体照片的存储过程之后,接下来继续对立体照片的显示过程进行说明。
图28示出了本申请实施例提供的一种立体照片显示过程的流程示意图。如图28所示,终端设备还可以包括视频生成模块、文件生成模块和目标存储区。具体地,立体照片存储过程可以包括如下步骤S310至S230。
S310,响应于用户的立体照片显示操作,倾斜检测模块检测终端设备的角度倾斜参数。
对于立体照片显示操作,其可以是用户用于触发立体照片显示的操作。在一个示例中,立体照片显示操作可以是在用户界面上针对立体照片展示控件的触发操作,比如点击、双击、拖动等操作。比如,立体照片显示操作可以是用户对图1D所示的拍摄照片展示界面上的立体照片展示控件126A的点击操作。在另一个示例中,立体照片显示操作可以是用户在主摄照片上执行的预设触发操作。比如,在图1D所示的拍摄照片展示界面上的主摄照片展示区域内的长按、双击、指关节敲击等操作。在又一个示例中,立体照片显示操作还可以是用户的语音触发指令等。
对于角度倾斜参数,其可以是能够衡量终端设备的倾斜程度、倾斜方向的参数。比如,可以是终端设备沿某个方向的倾斜角度、倾斜加速度,又或者可以是终端设备沿某个轴的旋转角度、旋转加速度等参数,对此不作具体限制。在一个示例中,以角度倾斜参数为终端设备沿y轴的旋转角度为例,倾斜检测模块可以为陀螺仪传感器,陀螺仪传感器可以检测终端设备围绕y轴的顺时针旋转角度或者逆时针旋转角度。
在一些实施例中,为了模拟终端设备在移动过程中的视角变化效果,倾斜检测模块可以检测终端设备在第一方向上的角度倾斜参数。第一方向可以是水平方向或者垂直方向。示例性地,继续参见图13,若终端设备处于竖屏状态,则水平方向可以是x轴所在方向,垂直方向可以是y轴所在方向。又一示例性地,若终端设备处于横屏状态,则水平方向可以是y轴所在方向,垂直方向可以是x轴所在方向。
在本申请实施例中,m张过渡照片的视角可以沿着第一方向逐渐变化。比如,继续第一方向可以与过渡照片中的视角变化方向的相同。以及,在本申请实施例中,为了保证m张过渡照片的视角在第一方向上逐渐变化,在拍摄阶段,第一摄像头和第二摄像头在第一方向上存在位置差,比如第一摄像头和第二摄像头在第一方向上存在第一距离。以及,对于第三摄像头其在第一方向上可以与第一摄像头平齐、存在第一距离或者存在第二距离(第二距离和第一距离的距离值不同)。可选地,为了提高立体照片的精度,第三摄像头和第一摄像头在第一方向上存在第二距离。
示例性地,继续以图26为例,以第一方向为水平方向为例,过渡照片J1至JM的视角是从左到右变化的,继续参见图13中的(1),若终端设备在拍摄阶段处于竖屏阶段,则终端设备的第一摄像头和第二摄像头需要在x轴方向上存在位置差,生成的m张过渡照片的视角在水平方向上逐渐变化,以及若终端设备在拍摄阶段处于竖屏状态,倾斜检测模块需要检测终端设备在x轴方向上(此时x轴方向即为第一方向)的倾斜角度。继续参见图13中的(2),若终端设备在拍摄阶段和显示阶段均处于横屏状态,则第一摄像头和第二摄像头需要在y轴方向上存在位置差,以及,倾斜检测模块需要检测终端设备在y轴方向上(此时y轴方向即为第一方向)的倾斜角度。以及,终端设备在图13中(3)-(6)所示的姿态时的摄像头位置差以及倾斜角度可以参见图13中的(1)和(2)的相关说明,对此不再赘述。比如,在图13中的(3)中,第一摄像头和第二摄像头需要在x轴存在位置差,以及倾斜检测模块需要检测终端设备在y轴上的倾斜角度。
S320,立体照片显示模块在角度倾斜参数大于或等于预设参数阈值的情况下,播放视角变化视频。其中,预设参数阈值可以根据实际情况和具体场景设置,比如5度等,对其具体数值不作限制。
在一些实施例中,立体照片显示模块在终端设备沿某一个轴的逆时针旋转角度大于或等于预设参数阈值的情况下,顺序播放视角变化视频。比如,图29A示出了本申请实施例提供的一种示例性的视角变化视频的播放过程的示意图。如图29A所示,当终端设备沿逆时针的旋转角度大于或等于预设参数阈值的情况下,可以依次播放过渡照片J1至过渡照片Jm。比如,若终端设备为横屏状态,则终端设备左倾(即沿y轴逆时针旋转),则可以顺序播放过渡照片J1至过渡照片Jm,以实现人从左到右对被拍摄场景的观看效果。
在另一个实施例中,立体照片显示模块在终端设备沿某一个轴的顺时针旋转角度大于或等于预设参数阈值的情况下,倒叙播放视角变化视频。比如,图29B示出了本申请实施例提供的一种示例性的视角变化视频的播放过程的示意图。如图29B所示,当终端设备沿顺时针的旋转角度大于或等于预设参数阈值的情况下,可以依次播放过渡照片Jm至J1。比如,若终端设备为横屏状态,则终端设备右倾(即沿y轴逆时针旋转),则可以倒序播放视角变化视频,即依次显示过渡照片Jm至J1,以实现人从右到左对被拍摄场景的观看效果。
在一些实施例中,视角变化视频可以包括第一视角变化视频,以及第二视角变化视频。其中,第一视角变化视频包括多张第一过渡照片,多张第一过渡照片的视角沿第一方向逐渐变化,第二视角变化视频包括多张第二过渡照片,多张第二过渡照片的视角沿第二方向逐渐变化,则终端设备还可以检测终端设备在第二方向上的角度倾斜参数,在该角度倾斜参数大于或等于预设参数阈值的情况下,还可以按照上述视角变化视频的播放方式来播放第二视角变化视频。比如,当终端设备处于横屏状态,若终端设备左右倾斜,则播放左右视角变化的视角变化视频;若终端设备上下倾斜,则播放上下视角变化的视角变化视频。
在一些实施例中,立体照片显示模块还可以根据终端设备的倾斜速率/倾斜加速度来按照一定速率进行视角变化视频的播放。比如,在终端设备的倾斜速率/倾斜加速度越快时,以越快的播放速度播放视角变化视频。在一个示例中,终端设备的倾斜速率可以是终端设备沿某个轴旋转的旋转速度。通过本实施例,可以通过调整播放速度的方式来仿真人以不同速度移动时所看到的真实场景,从而进一步提高立体照片的播放真实度。
在一些实施例中,终端设备可以根据自身的实时倾斜角度,对应显示过渡照片。比如,图30示例性示出了本申请实施例提供的一种示例性的立体照片显示过程的示意图。如图30所示,每个过渡照片可以对应于一个角度(即过渡照片对应的视角),比如过渡照片1对应于角度1,过渡照片2对应于角度2,……。若终端设备的实时倾斜角度为角度3,则显示判决模块可以根据过渡照片与角度之间的对应关系,确定待显示照片为过渡照片3,相应地,立体照片显示模块可以显示过渡照片3。
在一些实施例中,终端设备还可以在视频播放过程中发生反向倾斜时,改变视角变化视频的播放顺序。示例性地,图31示例性示出了本申请实施例提供的另一种示例性的立体照片显示过程的示意图。如图31所示,当终端设备顺序播放到过渡照片3时,若检测到终端设备倾斜方向的突然改变,比如从左倾变化至右倾,则终端设备可以从过渡照片3开始进行倒序播放,即依次显示过渡照片3至过渡照片1。
需要说明的是,在本申请实施例中,终端设备还可以通过其他方式进行m张过渡照片的按序显示。比如,按照视角大小对m账过渡照片依次排序,以及按照排序结果依次进行显示等。
可以理解的是,电子设备为了实现上述功能,其包含了执行各个功能相应的硬件和/或软件模块。结合本文中所公开的实施例描述的各示例的算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以结合实施例对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
一个示例中,图32示出了本申请实施例的一种装置300的示意性框图。装置300可包括:处理器301和收发器/收发管脚302,可选地,还包括存储器303。
装置300的各个组件通过总线304耦合在一起,其中总线304除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图中将各种总线都称为总线304。
可选地,存储器303可以用于前述方法实施例中的指令。该处理器301可用于执行存储器303中的指令,并控制接收管脚接收信号,以及控制发送管脚发送信号。
装置300可以是上述方法实施例中的电子设备或电子设备的芯片。
其中,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
上述本申请实施例提供的一种显示设备的控制方法中终端100所执行的步骤,也可以由终端100中包括的一种芯片系统来执行,其中,该芯片系统可以包括处理器和蓝牙芯片。该芯片系统可以与存储器耦合,使得该芯片系统运行时调用该存储器中存储的计算机程序,实现上述终端100执行的步骤。其中,该芯片系统中的处理器可以是应用处理器也可以是非应用处理器的处理器。
类似的,上述实施例中,显示设备200执行的步骤也可以由显示设备200包括的一种芯片系统来执行,其中,该芯片系统可以包括处理器和蓝牙芯片。该芯片系统可以与存储器耦合,使得该芯片系统运行时调用该存储器中存储的计算机程序,实现上述显示设备200执行的步骤。其中,该芯片系统中处理器可以是应用处理器也可以是非应用处理器的处理器。
以上所述,以上实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的范围。
Claims (19)
1.一种图像显示方法,其特征在于,所述方法应用于终端设备,所述方法包括:
响应于用户的第一操作,获取第一摄像头采集的第一图像,以及获取第二摄像头采集的第二图像,所述第一摄像头和所述第二摄像头在第一方向上具有第一距离,所述第一图像的采集时刻与所述第二图像的采集时刻相同;
检测所述终端设备的姿态信息;
在所述姿态信息满足预设姿态条件的情况下,
按序显示多个第三图像,所述第三图像是基于所述第一图像和所述第二图像合成的,
其中,在所述第一方向上,每个所述第三图像对应一个拍摄视角,所述多个第三图像是按照拍摄视角依次排序的。
2.根据权利要求1所述的方法,其特征在于,所述姿态信息包括所述终端设备的角度倾斜参数,所述预设姿态条件包括所述角度倾斜参数大于或等于预设参数阈值。
3.根据权利要求1所述的方法,其特征在于,所述第一方向为第一轴的延伸方向,所述检测所述终端设备的姿态信息,包括:
检测所述终端设备围绕第二轴的旋转角度。
4.根据权利要求3所述的方法,其特征在于,所述旋转角度包括围绕所述第二轴的顺时针旋转角度或者逆时针旋转角度,
所述按序显示多个第三图像,包括:
在所述终端设备围绕所述第二轴的逆时针旋转角度大于或等于预设参数阈值的情况下,按照所述多个第三图像的正序排列结果,依次显示所述多个第三图像;
在所述终端设备围绕所述第二轴的顺时针旋转角度大于或等于所述预设参数阈值的情况下,按照所述多个第三图像的倒序排列结果,依次显示所述多个第三图像。
5.根据权利要求1所述的方法,其特征在于,所述按序显示多个第三图像,包括:
播放目标视频文件,所述目标视频文件包括所述依次排序的多个第三图像,每个第三图像为所述目标视频文件的一个视频帧。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
响应于所述第一操作,获取第三摄像头采集的第四图像,所述第四图像的采集时刻与所述第一图像的采集时刻相同;
其中,所述第三图像是利用所述第四图像进行盲区填充得到的。
7.根据权利要求1或6任一项所述的方法,其特征在于,所述方法还包括:
响应于所述第一操作,获取深度传感器采集的第五图像,所述第五图像的采集时刻与所述第一图像的采集时刻相同;
其中,所述第三图像是基于所述第一图像、所述第二图像和所述第五图像合成的。
8.根据权利要求1所述的方法,其特征在于,所述获取第一摄像头采集的第一图像,以及获取第二摄像头采集的第二图像之后,以及所述检测所述终端设备的姿态信息之前,所述方法还包括:
对所述第一图像进行图像分割,得到第一前景图像和第一背景图像;
对所述第二图像进行图像分割,得到第二前景图像和第二背景图像;
基于所述第一背景图像和所述第二背景图像,生成多个第三背景图像;
基于所述第一前景图像和所述第二前景图像,生成多个第三前景图像,所述多个第三背景图像和所述多个第三前景图像一一对应,每组对应的第三背景图像和第三前景图像对应于同一拍摄视角;
基于每组对应的所述第三前景图像和所述第三背景图像,生成一个所述第三图像。
9.根据权利要求8所述的方法,其特征在于,所述基于每组对应的所述第三前景图像和所述第三背景图像,生成一个所述第三图像,包括:
响应于所述第一操作,获取第三摄像头采集的第四图像,所述第四图像的采集时刻与所述第一图像的采集时刻相同;
对所述第四图像进行图像分割,得到第四背景图像;
针对每组对应的所述第三前景图像和所述第三背景图像,利用所述第四背景图像,对所述每组中的第三背景图像进行盲区补充,得到第五背景图像;
对所述第五背景图像和所述每组中的第三前景图像进行图像融合,得到所述每组对应的第三图像。
10.根据所述权利要求8所述的方法,其特征在于,所述对所述第一图像进行图像分割,得到第一前景图像和第一背景图像,包括:
响应于所述第一操作,获取深度传感器采集的第五图像,所述第五图像的采集时刻与所述第一图像的采集时刻相同;
利用所述第五图像对所述第一图像进行图像分割,得到所述第一前景图像和所述第一背景图像。
11.根据所述权利要求8所述的方法,其特征在于,每个第三图像对应于一个预设比例系数,所述基于所述第一背景图像和所述第二背景图像,生成多个第三背景图像,包括:
确定多个第一特征点对,每个所述第一特征点对包括所述第一背景图像中的第一特征点以及所述第二背景图中的第二特征点,所述第一特征点和所述第二特征点相匹配;
基于所述多个第一特征点对,确定背景过渡矩阵;
基于所述背景过渡矩阵和每个所述预设比例系数,确定每个所述预设比例系数对应的第三背景图像。
12.根据所述权利要求8所述的方法,其特征在于,每个第三图像对应于一个预设比例系数,所述基于所述第一前景图像和所述第二前景图像,生成多个第三前景图像,包括:
确定多个第二特征点对,每个所述第二特征点对包括所述第一前景图像中的第三特征点以及所述第二前景图中的第四特征点,所述第三特征点和所述第四特征点相匹配;
基于所述多个第二特征点对,确定前景过渡矩阵;
基于所述前景过渡矩阵和每个所述预设比例系数,确定每个所述预设比例系数对应的第三前景图像。
13.根据所述权利要求5所述的方法,其特征在于,所述播放目标视频文件之前,所述方法还包括:
基于所述多个第三图像,生成所述目标视频文件;
基于所述目标视频文件和所述第一图像,生成目标显示文件;
在目标存储区,存储所述目标显示文件。
14.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储器;
以及一个或多个计算机程序,其中所述一个或多个计算机程序存储在所述存储器上,当所述计算机程序被所述一个或多个处理器执行时,使得所述电子设备执行以下步骤:
响应于用户的第一操作,获取第一摄像头采集的第一图像,以及获取第二摄像头采集的第二图像,所述第一摄像头和所述第二摄像头在第一方向上具有第一距离,所述第一图像的采集时刻与所述第二图像的采集时刻相同;
检测终端设备的姿态信息;
在所述姿态信息满足预设姿态条件的情况下,
按序显示多个第三图像,所述第三图像是基于所述第一图像和所述第二图像合成的,
其中,在所述第一方向上,每个所述第三图像对应一个拍摄视角,所述多个第三图像是按照拍摄视角依次排序的。
15.根据权利要求14所述的电子设备,其特征在于,所述姿态信息包括所述终端设备的角度倾斜参数,所述预设姿态条件包括所述角度倾斜参数大于或等于预设参数阈值。
16.根据权利要求14所述的电子设备,其特征在于,当所述计算机程序被所述一个或多个处理器执行时,使得所述电子设备执行以下步骤:
响应于所述第一操作,获取第三摄像头采集的第四图像,所述第四图像的采集时刻与所述第一图像的采集时刻相同;
其中,所述第三图像是利用所述第四图像进行盲区填充得到的。
17.根据权利要求14所述的电子设备,其特征在于,当所述计算机程序被所述一个或多个处理器执行时,使得所述电子设备执行以下步骤:
响应于所述第一操作,获取深度传感器采集的第五图像,所述第五图像的采集时刻与所述第一图像的采集时刻相同;
其中,所述第三图像是基于所述第一图像、所述第二图像和所述第五图像合成的。
18.一种芯片,其特征在于,包括一个或多个接口电路和一个或多个处理器;
其中,所述接口电路用于从电子设备的存储器接收信号,并向所述处理器发送所述信号,所述信号包括存储器中存储的计算机指令;所述处理器执行所述计算机指令时,使得所述电子设备执行权利要求1至13任一项所述的图像显示方法。
19.一种计算机可读存储介质,其特征在于,包括计算机程序,当所述计算机程序在电子设备上运行时,使得所述电子设备执行如权利要求1至13任一项所述的图像显示方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410174850.7A CN117729320B (zh) | 2024-02-07 | 2024-02-07 | 图像显示方法、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410174850.7A CN117729320B (zh) | 2024-02-07 | 2024-02-07 | 图像显示方法、设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117729320A true CN117729320A (zh) | 2024-03-19 |
CN117729320B CN117729320B (zh) | 2024-10-11 |
Family
ID=90209174
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410174850.7A Active CN117729320B (zh) | 2024-02-07 | 2024-02-07 | 图像显示方法、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117729320B (zh) |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012249168A (ja) * | 2011-05-30 | 2012-12-13 | Pentax Ricoh Imaging Co Ltd | 立体画像を表示可能なカメラ |
CN108200335A (zh) * | 2017-12-28 | 2018-06-22 | 深圳市金立通信设备有限公司 | 基于双摄像头的拍照方法、终端及计算机可读存储介质 |
CN110266952A (zh) * | 2019-06-28 | 2019-09-20 | Oppo广东移动通信有限公司 | 图像处理方法、装置、电子设备以及存储介质 |
CN111757084A (zh) * | 2020-07-30 | 2020-10-09 | 北京博清科技有限公司 | 一种立体图像的采集方法、采集装置及可读存储介质 |
CN112565589A (zh) * | 2020-11-13 | 2021-03-26 | 北京爱芯科技有限公司 | 一种拍照预览方法、装置、存储介质和电子设备 |
CN116233592A (zh) * | 2023-03-21 | 2023-06-06 | 闻泰通讯股份有限公司 | 图像拍摄方法及装置、终端设备、存储介质 |
-
2024
- 2024-02-07 CN CN202410174850.7A patent/CN117729320B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012249168A (ja) * | 2011-05-30 | 2012-12-13 | Pentax Ricoh Imaging Co Ltd | 立体画像を表示可能なカメラ |
CN108200335A (zh) * | 2017-12-28 | 2018-06-22 | 深圳市金立通信设备有限公司 | 基于双摄像头的拍照方法、终端及计算机可读存储介质 |
CN110266952A (zh) * | 2019-06-28 | 2019-09-20 | Oppo广东移动通信有限公司 | 图像处理方法、装置、电子设备以及存储介质 |
CN111757084A (zh) * | 2020-07-30 | 2020-10-09 | 北京博清科技有限公司 | 一种立体图像的采集方法、采集装置及可读存储介质 |
CN112565589A (zh) * | 2020-11-13 | 2021-03-26 | 北京爱芯科技有限公司 | 一种拍照预览方法、装置、存储介质和电子设备 |
CN116233592A (zh) * | 2023-03-21 | 2023-06-06 | 闻泰通讯股份有限公司 | 图像拍摄方法及装置、终端设备、存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN117729320B (zh) | 2024-10-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10462384B2 (en) | Apparatus and methods for the storage of overlapping regions of imaging data for the generation of optimized stitched images | |
US9159169B2 (en) | Image display apparatus, imaging apparatus, image display method, control method for imaging apparatus, and program | |
CN109191549B (zh) | 显示动画的方法及装置 | |
CN110636276B (zh) | 视频拍摄方法、装置、存储介质及电子设备 | |
CN112287852B (zh) | 人脸图像的处理方法、显示方法、装置及设备 | |
CN111541907A (zh) | 物品显示方法、装置、设备及存储介质 | |
CN110599593B (zh) | 数据合成的方法、装置、设备及存储介质 | |
CN112614057A (zh) | 一种图像虚化处理方法及电子设备 | |
EP4254938A1 (en) | Electronic device and operation method therefor | |
WO2023169283A1 (zh) | 双目立体全景图像的生成方法、装置、设备、存储介质和产品 | |
CN114071010A (zh) | 一种拍摄方法及设备 | |
CN113850709A (zh) | 图像变换方法和装置 | |
CN114071009B (zh) | 一种拍摄方法及设备 | |
JP2018033107A (ja) | 動画の配信装置及び配信方法 | |
CN113573120A (zh) | 音频的处理方法及电子设备 | |
CN115147492A (zh) | 一种图像处理方法以及相关设备 | |
US10148874B1 (en) | Method and system for generating panoramic photographs and videos | |
CN117729320B (zh) | 图像显示方法、设备及存储介质 | |
CN114979458B (zh) | 一种图像的拍摄方法及电子设备 | |
US11700455B2 (en) | Image capturing device, image communication system, and method for display control | |
CN111127539B (zh) | 视差确定方法、装置、计算机设备及存储介质 | |
CN112887663A (zh) | 图像显示方法、图像通信系统、摄影装置、以及存储介质 | |
CN110443841B (zh) | 地面深度的测量方法、装置及系统 | |
WO2022267781A1 (zh) | 建模方法及相关电子设备及存储介质 | |
CN117135451B (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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |