1、双摄像头可以测距,可做距离相关的应用


人眼很容易对一个物体的距离进行定位,但当人闭上其中一个眼睛后,定位能力就会下降很多。双摄像头就是模拟人眼的应用。简单的说,测距离的话,就是通过算法算出,被拍摄物体与左/右摄像头的角度θ1和θ2,再加上固定的y值(即两个摄像头的中心距),就非常容易算出z值(即物体到Camera的距离)。


Android 开发 什么是双目摄像头 双目摄像头的应用_双目视觉



如上图,由于双摄像头通过算法,可以判断被摄物体的距离,所以通过此特性,很容易做出一些特效,如:


A、背景虚化


单反相机最出众的特色之一就是大光圈。由于双摄像头可以测出不同被拍摄物体的距离,对需要进行大光圈的物体对准,其他不同距离的物体虚化,可以轻松实现大光圈的效果。


B、背景替换


由于可以测量距离,可以将被拍摄物体里的主体提取出来,更换背景,就可以比PS还简单,进行抠图。


C、背景特效


既然可以抠图,只是对背景做一下处理,还是很容易的。比如,此图就用了素描特效。


D、测量距离


这个图就非常明显的标识出不同物体的距离,这个距离信息用不同颜色标识出来。当AP获得了不同物体的距离信息,就可以做到上述的各种功能。


 


2、双摄像头可以做光学变焦


光学变焦主要是左右摄像头使用不同的FOV(可视角),这样两个摄像头取景不同。当用户需要广角照片,则用视角为85度的左摄像头取景,获得广角效果。当用户需要长焦照片,则用视角为45度的右摄像头取景,获得长焦效果。

Android 开发 什么是双目摄像头 双目摄像头的应用_Android 开发 什么是双目摄像头_02


为了使左右摄像头拍摄的物体重叠度高,光学变焦的双摄像头模组不能像做距离应用的摄像头的模组那样距离过大,而是需要将左右摄像头摆得越近越好。


若两个Camera的FOV不一样,一个大FOV,一个小FOV,再通过算法实现两个光学镜头之间的效果,就可以轻松做到光学变焦。


 


3、暗光效果增强


一般来讲,做暗光增强就是在两个摄像头中:一个用RGBG的标准摄像头,一个用去掉RGBG滤波片的黑白摄像头。RGBG用来获得物体的色彩,而黑白摄像头用来获得更好的进光量,来判断被拍物体的光强强度。然后将两个图片融合即可获得更好的暗光增强。


目前有两种融合方法:


以黑白图片为主体,将彩色图片上获取的每个像素的颜色贴至黑白图片上,将两种图片融合。


以彩色图片为主体,将黑白图片上获取的每个图像的光强补偿到彩色照片上,将两种图片融合。


至于哪种方式更合适做融合,可能仁者见仁智者见智,就不在这展开讨论了。


同样,做暗光增强,为了让左右摄像头拍摄的物体重叠度高,此类双摄像头模组也是要求越近越好。


 需要说明的事,华为P9其实选用的就是这个方式的模组


 


4、3D拍摄以及3D建模


 3D拍摄和3D建模的算法其实跟距离应用有点类似,只是它的精度要求更高,甚至有时会需要用红外测距进行更准确的距离判断。


 


提到双摄像头的算法,不得不提到ISP(Image Signal Processing 图像信号处理器),ISP主要作用是对前端图像传感器输出的信号做后期处理,主要功能有线性纠正、噪声去除、坏点去除、内插、白平衡、自动曝光控制等,依赖于ISP才能在不同的光学条件下都能较好的还原现场细节,ISP技术在很大程度上决定了手机的成像质量。


 


功能机时代,ISP都是做在摄像头上的,不同像素的摄像头搭配不同性能的ISP。随着手机摄像头像素越来越高,对ISP性能的要求越来越高,若将ISP集成到摄像头Sensor上,势必造成摄像头的模组过大,甚至影响拍照效果。所以智能机时代,ISP一般都是在主芯片SoC上。部分品牌客户为了实现更好的效果,甚至不惜成本的外加一颗ISP用来达到更好更专业的拍照效果。


 


好的拍照算法就需要搭配好的ISP,ISP和算法相辅相成,缺一不可。而双摄像头对ISP性能要求更多。首先,为了使左右摄像头的信号能够同时被处理,单一的ISP已经无法满足双摄像头的需求。这就需要双路ISP实现此功能。


Android 开发 什么是双目摄像头 双目摄像头的应用_双目视觉_03



当然,在这里面也有一个小小的插曲。毕竟是两个ISP,两个ISP多少有一些处理速度、处理能力不同的问题。为了保证两个ISP能在同一时间上取样,就需要双摄像头拍出来的图片是同一时间拍出来的。其中一个解决办法就是让Sensor有一个同步信号引脚。将两个摄像头的同步信号对接,在每次读取图片时,将图片都打上一个时间戳,ISP通过时间戳,保证左右摄像头拍出来的照片在同一时间拍摄,最终再进行融合。


 


3、双摄像头模组供应商 


距离方面的应用,一般的做法,就是大小摄像头,常见的摄像头规格如13M+2M,13M+5M


或者就是把两个摄像头放得远一些,


通过这两种方式,才能更好的计算被拍摄物体到镜头的距离。


 


光学变焦的双摄像头模组,最主要是两个摄像头需要有不同的FOV


不同的FOV,拍出来的聚焦点不同,再通过算法,就可以实现光学变焦功能。


一般的暗光增强,都是通过一个RGB全彩色的摄像头+一颗MONO黑白的摄像头进行拍摄


算法方面,主要是通过右面的黑白摄像头读取进光量的多少,从而补偿左边RGB摄像头的色彩。


 


3D拍摄和建模,这种方式跟距离相关的模组有点类似。只是3D对距离的精准度要求更高。这种情况下,更需要将两个摄像头的距离摆得远一点,甚至有些会采用外加红外辅助定位来实现距离测量,最终实现3D拍摄和建模的作用。