AI(人工智能)一直是近几年非常火热的技术,年AlphaGo与李世石的人机之战就是最具代表性的AI技术,这次的战役也一度将AI技术在无数人的心里推上了高端技术的顶峰,一定是高大上的。可是随着进年来的AI热潮,连我们习以为常的手机功能都悄悄get了AI技术!手机里的AI技术到底是什么?
AI到底是什么?
是研究、开发用于模拟、延伸和扩展人的智能的理论、方法、技术及应用系统的一门新的技术科学。它能以人类智能相似的方式做出反应的智能机器,该领域的研究包括机器人、语言识别、图像识别、自然语言处理和专家系统等。
AI的实现方式一种是采用传统的编程技术,使系统呈现智能的效果,而不考虑所用方法是否与人或动物机体所用的方法相同。它已在一些领域内作出了成果,如文字识别、电脑下棋等。另一种是模拟法,它不仅要看效果,还要求实现方法也和人类或生物机体所用的方法相同或相类似,如遗传算法和人工神经网络。
手机上的AI有什么?
有没有发现手机上的拍照功能越来越强大了?华为首创AI防抖技术,并在p20上应用,即通过机器内部算法将抖动时拍摄的模糊图片经过处理而呈现清晰未抖动时拍摄的效果,拍照成功率高而快速。再试想一下,手机上没有这种技术时,就仅仅只是一个光学上的相机,而且拍出的照片只能人工判断图像是否模糊,在拍照时也只能尽量保持静止,拍照不方便,可见现在的AI防抖带来多大的方便。
怎么做到AI防抖?
今天小编选取了华为年3月31日申请的“申请号为80078479.3的一种终端设备和拍照方法”发明专利申请来向大家介绍华为所研发的AI防抖技术,该申请同时在美国和欧盟进行了专利布局,也足以见得华为对该技术的重视。
首先看AI防抖的所涉及的硬件:
图1
通过图1中的硬件可以做到,由陀螺仪传感器获取终端设备在X、Y、Z轴方向的角加速度,进而通过处理器对各方向的角加速度进行处理,得到终端设备的抖动幅度和抖动频率;由图像传感器:采集被拍摄物体的图像,即将光学图像转换成电子信号,进而可以通过ISP(图像数据信号处理器)对图像传感器获取的信号进行处理。
另外由于拍摄成像受感光材料的感光度和曝光时间影响,不同的场景下光强度不一样,成像所需要的曝光时间、快门和光圈控制不一样,需要终端设备根据检测到的场景进行拍摄调整。
关于算法:
图2
如图2可知,相机拍照之前,终端设备已经根据场景对拍照参数进行了确定,拍照参数包括:拍多少帧图像,每帧图像的曝光时间和拍每帧图像的感光度等(这里的多少帧图像就是我们说的多少张照片啦,只是这里是在相机内部,没有显示出来的)。
进而相机对图像进行拍照,并且拍M帧,而且这M帧中每一帧都对应有曝光时间(参考图3)和曝光时间段内设备的抖动频率和抖动幅度。
图3
到这里,我们已经得到了一次拍照下的多帧图像,而且这些图像对应的抖动幅度和抖动频率我们也通过陀螺仪和处理器协同处理得到了,相当于知道了图像上像素点在曝光时间段内的运动速度。那时间和速度知道了是不是通过运动公式直接计算就可以得到拍照时间内图片上像素点的移动距离?但是,拍照时镜头的存在一定的广角,入射进相机的光线不是平行的,而且相机和被拍物体间存在距离即深度问题,这些因素的考虑之后终端设备对图片上像素点的运动距离计算将非常大。
本篇专利申请的所公开的技术是通过取样建立位移矢量表,拍照时的防抖处理直接根据抖动幅度、抖动频率和曝光时间以及深度去终端设备中已经建立的位移矢量表查询像素点的运动位置;进而对每帧图像上的像素点还原,形成清晰的图像;再将每帧被还原后的清晰图像融合(重合)。进而涉及到每帧图像的零点问题,零点不一样会导致融合的图像再次不清晰,所以在图2的步骤中在M帧图像中选取了其中一帧作为基准,而位移表上的抖动幅度、抖动频率即为相对数据。
对于位移矢量表的建立:
图4
上图4为位移矢量表,曝光时间、幅度、频率、深度通过终端设备设置,位移矢量需要计算得出;
先选定一个图像作为标定图像,如图5所示:
图5
图中虚线将图像划分成不同的区域,同一个区域的位移矢量认定为一致;设置终端设备处于特定的抖动状态并对图5的标定图像进行拍摄,得到模糊图像,如图6局部图像所示:
图6
水平位移矢量(WVH0)=WH0-WH;
同理垂直位移矢量(WVV0)=WV0-WV;
根据整个标定图像可以直接求得第i个区域的水平位移矢量(WVH0)i=WH0i-WHi;第i个区域垂直位移矢量(WVV0)i=WV0i-WVi。
通过上述的计算方法即可求出位移矢量表。