浅析双镜头手机景深效果模拟算法
2017-03-21蒋曙
蒋曙
摘要:了解摄影的人都知道景深这个词,浅景深常被用来表示一种主体清晰,背景模糊的拍摄效果。要形成这种效果,需要相机使用大光圈、长焦距镜头和靠近拍摄物体拍摄。但是,我们经常是使用手机拍摄,手机的镜头焦距较短,要形成这种效果非常困难。目前市场上出现了一些双镜头手机,能拍摄出这种浅景深效果,本文将分析一下这种双镜头淺景深效果实现的原理并给出一种模拟算法。
关键词:景深效果;双镜头;模糊效果;真实场景
中图分类号:TP37 文献标识码:A 文章编号:1009-3044(2016)33-0182-02
1 景深
现实世界中,人眼视觉系统和相机成像系统都可以用薄透镜成像模型来表示,如图1所示。一般来说只有聚焦处的被摄体才能在焦点平面上成像清晰,随着物体距离聚焦位置的变大在聚焦平面上成像的模糊程度超越某一个范围,我们就认为这个成像不清晰。这个临界模糊的圆形称为弥散圆。
2 双镜头手机景深效果实现分析
由上面景深公式(1)可知,要想手机拍出浅景深的效果,就必须用大光圈、长焦距、靠近拍摄物体才行。但对于手机而言,焦距较短,除非非常接近拍摄物体,否则很难形成景深效果,这也是我们普通手机拍摄时,很难出现景深效果的原因。
由上述分析可推测,双镜头手机的景深效果不是由镜头真实产生的景深效果,而是手机对于采集到图像数据实时处理,模拟产生景深效果。这个过程就像我们用PhotoShop等图像处理软件对照片进行实时处理,人工加上景深模糊效果。不过PhotoShop等图像软件需要我们手动设定清晰范围和模糊范围,而且这种景深效果缺乏层次性和真实性,比较生硬。双镜头手机实时拍摄时,用户对焦的物体成像清晰,其他位置会自动添加景深效果,无需用户干预。
这种技术是如何实现的呢?我们要先说一下计算机图形学领域中关于景深渲染的算法。在景深模拟算法中,后处理滤波处理的代表是Michael Potmesil[1],他是最早描述DOF算法的学者。应用针孔相机模型成像后,根据所保存的每个像素点的z通道信息值,结合透镜焦距、光圈参得到一个模糊因子,最后每个像素的最终值由覆盖它的所有模糊圈的加权平均值确定。周强[2]等人采用了均值滤波得到模糊图像,采用模糊图像和清晰图像融合方式,实时地模拟了景深效果。
在虚拟仿真系统中,最终渲染出来的每一幅图像的像素中都包含像素的深度,因此我们可以针对每一个像素的深度,结合模拟镜头的焦距、光圈、拍摄距离和弥散圆直径等参数,实时渲染出比较真实景深效果。因此,我们可以将该算法用于手机拍摄的图像的景深效果模拟。
但是,从手机镜头感光元件上采集到的图像像素中不包含对应物体的深度值,无法直接使用景深渲染算法来模拟景深效果。而事实上,双镜头手机的景深效果是基于景物实际距离来渲染的。根据笔者的研究,双镜头手机景深效果工作原理如下:
1)双镜头手机的手机主镜头和普通单镜头手机的镜头一样正常工作,由用户控制拍摄。
2)当用户使用手机完成对焦后,拍摄的各项参数都已确定,而双镜头手机的副镜头开始工作,为了能准确分析图像上各像素的深度信息同时又要保持成像内容和对焦距离不变,副镜头能改变的是光圈和快门。副镜头采集不同光圈值下的图像,交由算法来处理分析这些图像,获取各像素深度信息,光圈变化时,自动调整快门,以保持曝光平衡。
3)系统根据各像素的深度信息,使用景深渲染的算法重新合成具有景深效果的图像。
如何判断手机镜头感光元件上的图像像素所对应的物体与镜头的距离是问题的关键。下面将介绍整个算法的实现。
3 双镜头手机景深效果模拟算法
我们将用几个步骤来实现整个景深模拟算法。
3.1 模糊强度的确定
前面提到需要采集不同光圈值得图像分析像素的深度,但是这个真实深度是无法计算的,实际上是通过其他的方式计算出该像素模糊的强度。其具体实现方式是利用自动对焦技术中用来评价图像清晰度函数,分析不同光圈下图像各像素的模糊强度。从理论上说,同一张图像,清晰图像的平均灰度值高于模糊图像的平均灰度值,也就是说当图像的清晰度改变时,每一个受影响的像素的灰度值会发生改变。对于同一图像内容,大光圈的图像与小光圈的图像在同一个像素点的灰度值会发生改变,而且远离对焦物平面的像素灰度改变幅度要比靠近对焦面的像素的灰度值改变幅度要大得多。
3.2 图像模糊预处理
处于聚焦平面外的物体上的点经过透镜折射后,在成像面上形成一个模糊圈,在屏幕上则表现为多个像素组成的圆形区域。它是像素与周围多个像素相互作用的结果。在针孔照相机模型中,可以采用平滑滤波处理得到。在图像处理中, 常用的平滑算子有高斯滤波、均值滤波等。为了取得更好的效果,这里采用可分离二维高斯滤波。
3.3 混合计算图像
4 结束语
由于本文主要是为了探讨分析双镜头手机景深效果实现的基本原理与过程,因此如模糊效果的改进、硬件算法的改进等一些具体细节问题有待进一步的研究与改进。
参考文献:
[1] Michael Potmesil,Indranil Chakra arty. A lens and aperture camera model for synthetic image generation[C]∥In: Computer Graphics Proceedings,Annual
[2] 周强,彭俊毅, 戴树岭. 基于可编程图形处理器的实时景深模拟[J].系统仿真学报,2006,18(8):2219-2221.
[3] 黄伟琼,游林儒,刘少君. 基于改进的灰度对比度函数的自动对焦方法[J]. 计算机应用,2011(11):3009.