[讨论] 李永乐 安卓高通手机AI计算摄影

楼主: hjkkk123 (123)   2021-08-12 23:07:33
https://youtu.be/Ku-SdVCqopo
影片蛮扎实的,看完后可能要读文字重新理解一下,影片全文如下,刚开始还以为是跟
某手机品牌合作,结果不是xD
先打预防针,以下是字幕全文,不喜可直接不看
https://i.imgur.com/1smJ0m1h.jpg
各位同学 大家好 我是李永乐老师
最近有一个小朋友跟我说
他新买了一台手机
这个手机的拍照功能特别强大
简直可以媲美单反
还有很多附加的神奇功能
他想问我这些功能到底是如何实现的呢
为此我还特意买了一台小米11 Pro
我们来体会一下它的拍照功能
首先是神奇夜景模式
它能够在夜晚拍到特别清晰的照片
再比如说还有120倍的超大变焦
能够拍摄到很远的物体
还有人像模式
能够对背景进行虚化 凸显出人像
还可以进行魔法换天
把天空换成你想要的样子
那么一个小小的手机
是如何具有这么强大的功能的呢
我在拍照的时候发现有一个AI的标志
这就表示的是
是否启用人工智能系统来处理照片
原本需要在云端进行的许多人工智能操作
现在在小小的手机上就可以完成了
目前最为普及的就是在拍摄影像方面
它可以极大地提升用户的体验
今天我们就来聊一聊人工智能在摄影上的应用
聊一聊AI计算摄影
AI 也就是人工智能
计算摄影
什么叫计算摄影呢
首先我来放两张图
这个是没有经过AI处理的图片
然后我们经过AI处理之后
大家比较一下
这个也是没有经过AI处理的
我们再把它处理一下
大家比较比较
大家看了之后是不是感觉到非常震撼呢
看了AI处理的图之后
就不愿意再看原图了 对不对
因为差别实在是太大了
那么在几年以前我们还不具有这种技术
那主要是因为什么呢
主要是因为那个时候AI的算力还不够
那个时候我们使用的是传统相机
传统的相机不管是数码相机 还是光学相机
它的基本原理其实都很简单
那就是物体发出或者是反射的光线
经过了这个相机的镜头
进入到这个相机之中
然后通过镜头进入到感光的元件上
这个感光片可能是胶片
也可能是像CCD或者CMOS之类的电子元件
那么就可以把一幅图成像在这个感光片上
但是传统相机其实是有一些问题的
首先传统相机有一些复杂的参数
比如说光圈 焦距 什么光这些
曝光时间等等这些东西
那么你如果让它自动调节的话
效果可能就不太好
如果你想拍出高质量的照片的话
就必须学习很复杂的摄影技术 对吧
对于我这种外行来讲太复杂了
也就是说
在这过程中我可能需要手动调节一些东西
这个调节的过程是比较复杂的
如果调不好 效果就一般般
那么第二个就是传统的这种相机
它是存在物理极限的
它过于真实 存在物理极限
什么叫过于真实存在物理极限呢
就是说因为镜头或者感光片的一些原因
它不可避免地会出现一些模糊
以及其他的一些问题
我们来简单地介绍一下
说这个相机出现了模糊 原因是什么
比如说有一个原因叫做光的衍射
光的衍射
我们知道这个相机成像
就是依靠镜头这个凸透镜 对吧
那么光线经过凸透镜之后
其实并不是成为一个点 而是成一个光斑
这叫做艾里斑
镜头越小 这个艾里斑越大
那如果两个艾里斑重叠到一块
我们就没有办法区分这两条光线了 对吧
所以因为艾里斑的存在
底片上呈现的像就会出现一定的模糊
所以你要想减小的这种模糊
你必须提高这个照相机的口径 对吧
所以天文望远镜造得特别大
但是我们的相机不可能造得特别大
第二个就是因为它的感光片
比如说像CCD或者是CMOS
这种感光片它有一个分辨率的限制
分辨率的限制
什么意思呢
比如说这个小米11 Pro这个手机
它的分辨率是5000万像素 是怎么回事呢
就是它的这个感光片是1/1.12英寸
也就表示这个感光片的对角线长度
是16/1.12 毫米
这16毫米的出现是历史原因
然后这个长宽之比又是4:3
所以我们就可以知道
它的这个长和宽
大约都是11.4毫米和8.6毫米
你就可以计算出它的感光片有效的面积了
然后它一个像素点的面积
是1.4微米x1.4微米的一个方块儿
你这么一算你就知道
它一共有多少个
大约5000万个这个方块儿
所以说就有5000万个像素点
像素点的密度越高
对外界信息的描述就会越准确
但是这个像素点不可能做得无限小
对于外界特别细微的结构
因为分辨率的限制
也会出现模糊
那么第三个原因就是运动模糊 运动模糊
这个就比较好理解了
我们在拍照的时候
会让一定的光进到我们的这个镜头里面去
那么进光的时候
我们这个手机不能运动 对吧
如果我的手机一抖动了
出现了运动的话
那就会出现模糊
所以说专业的相机你得架到三脚架上
不让这个相机动才能够拍得比较清楚 对吧
那么如果你在拍摄远景的时候
把镜头拉得非常非常长
或者是在晚上的时候需要长曝光
这个运动的模糊就会更加明显
那第四个就是噪点 噪点
什么叫噪点呢
就是这个CCD也好 CMOS也好
由于它的这个物理特性
比如说电子的这个无规则运动
就会出现一些杂乱的胶原状的点
而这些点就称之为噪点或者说噪声
那如果说外界的光信号比较强的话
有用的信息多
这个噪声的影响就不明显
但是如果外界的信息比较少
本来有用的信息就弱
你就会发现很多的噪点
或者我们利用小光圈长焦镜头
来拍摄景物的时候
你也会发现这个噪点的影响是比较明显的
此外还有这个镜头色差 对焦不准等等
会造成一定的模糊
当然我们可以通过物理方法对它进行改进
你比如说我可以增大镜头的大小 对吧
我可以增大感光片儿
我可以减小每一个像素点的尺寸
让像素点变得更多
但是这些方法同时也就意味着成本的上升
以及功耗的变大
或者是相机尺寸的变大
而且有的时候这些个改进方法是彼此矛盾的
你比如说
你让每一个像素点越来越小
那它就越来越密
你就可以收集到更多的这个外界的信息了
但是一旦一个像素点小了的话
外界有用的信息少
它的噪声影响就会变大 对吧
所以用硬件的方法来提升分辨率
它是存在极限的
那么我们该如何处理这个问题呢
现在越来越多的人使用手机进行拍照了
因为手机比起单反
不光不需要进行复杂的设置
不需要频繁的更换镜头
更重要的是
随着手机移动平台构架和计算能力的逐代提升
图像信号处理器和AI处理引擎越来越强大
许多厂商都把人工智能引入到拍摄当中
我们一点开手机的拍照功能
这个人工智能算法
都在为我们拍出一张好看的照片而努力
这个过程我们就称之为是计算摄影的过程
计算摄影
它是算出来的一张照片儿
具体来讲
这个手机厂商选定了摄像头 感光芯片
操作系统等等这些东西之后
会有算法厂商来设计人工智能的算法
他们首先会用大量的图片来进行投喂这个系统
首先我们先收集一大堆的图片
然后我们去投喂这个人工智能的系统
就是告诉这个人工智能的系统
这个好的图片 美观的图片 不模糊的图片
它长什么样子
这个过程我们就叫它训练过程 对吧
这是人工智能的第一个步骤
那么训练好了之后
用户拿到这个手机拍了一张照片儿
然后这个人工智能系统
就会对照片进行什么呢
进行修饰
它会把这个照片进行一定的调整
修饰的过程我们称之为推理
这就是一个人工智能的处理图像的一个过程
让我们看起来这张照片颜色更加鲜艳
饱和度更好
看起来细节更加清楚
用业内的话说
人工智能摄影
就是用人工智能来突破光学的物理限制
用强大的算力来创造全新的视觉想象
用深度学习来超越人眼可见的细节
那么以往的手机为什么没有人工智能摄影呢
这是因为以往的手机它支持的AI算力太少
难以支持理想的人工智能摄影效果
当然你可以把影像传到云端
利用云端的计算能力来进行AI计算
不过这个过程一来是浪费时间 浪费流量
二来 它有泄露隐私的问题
所以手机终端侧的AI算力就变得至关重要
那么下面我们就来具体说一说
这个AI摄影到底在哪些方面改进了传统摄影
我们首先来说一下超分辨率技术
超分辨率技术
大家可能没有听说过这个词 是吧
什么叫超分辨率呢
我们在电影里面经常可能看到过这样的情景
说这个警察拍到了一个嫌疑犯的影像
不清楚
然后按了几个按钮
结果这个影像就变得特别清楚
这就是超分技术
它可以从一个低分辨率的照片
变成一个高分辨率的照片
有人说这怎么能做到呢
低分辨率变高分辨率
那这些细节你怎么补充上呢
其实答案就是一个字 猜
比如说大家看这张照片
这张照片
你很显然就知道它是个足球的照片 对吧
所以你脑子中有足球的影像
你就可以按照脑子中的这个形象
把这个足球的细节补充上去
于是就把这个模糊的 不清楚的照片
变成了一个清晰的 信息量更大的照片儿
这就是一个超分的过程
那么近年来
随着人工智能和深度学习的突破
在2014年的时候
香港大学的董超提出了一种
基于卷积神经网络的超分过程
我们称之为SRCNN
那现在
这个很多手机上使用的这个超分技术
大多都是SRCNN的一个变种
我们就来重点介绍一下
这个技术的原理是什么样子
首先我们要对这个人工智能系统进行训练
我要告诉它
给你一张低分辨率图片
那么相应的高分辨率是什么样的
我得先给你一大堆高低分辨的对照图
让你去训练
让你系统了解这个事儿 对吧
所以首先我有一张
比如说一张图片
这个图片我们管它叫x
这个X是一张高分辨率图片
比如说这个X是512x512的这么一张图
512x512的
那然后你首先通过一些方法
把它变成一个低分辨率的图片x' 是吧
它比如说是128x128的
那你怎么变成低分变率图片呢
很简单
你就丢掉一些信息就行了 是不是
它就变成了一个低分辨率的
好了 我们有了一个高分辨率 一个低分辨率
然后怎么进行训练呢
是这样的一个过程
首先这个董超说
你先把这个x'进行上采样
就是你再把它变回到一张512x512的
这么一张这个分辨率比较高的图片
这个图片叫做Y
但大家注意
这个过程其实没有太大意义
因为你只是把这个尺寸变大
它就变模糊了 对吧
你得把细节补充上去
让这个Y跟x一样才行
怎么做呢
董超说 你可以这样
你首先对它进行卷积操作
大家还记得什么叫卷积吗
我们在以前讲人工智能的时候谈到过这个事儿
就这个图
在计算机看来它实际上是一个矩阵 对吧
它是512x512的一个矩阵
这个矩阵上每一个像素点就是一个数字 对吧
对这个数字进行一大堆的加法和乘法运算
我们称之为卷积
卷积有个卷积核 叫W
对它进行卷积操作
然后再加上一个偏置
叫做B
进行了这些操作之后还要进行激活
然后就得到了一个新的这样的一个信息
这个信息我们称之为F (Y)
这个F (Y)
它就能够提取出这张图片的一些特征
比如说什么这个横著的线条 竖着的线条等等
如果你把这个公式写出来
大概长这个样子
就是说F (Y)
它等于max
这是激活造成的
0 然后这个W 卷积Y
然后再加上一个B
就这个公式比较复杂
大家不理解也没有关系
反正意思就是你通过这样的一个操作
提取出了这个图像的一些特征 对吧
好 这是第一步
图像特征提取
然后第二步
就是我再利用一个卷积核和一个偏置
我再做一次这个操作
就变成了F (Y)
这个操作跟第一个操作一样
相当于是深度学习的第二层网络
通过这种方法我可以进一步提取出我要的特征
比如说一些轮廓等等
如果具体写出来这个F (Y)
它等于取最大值
0 然后W 卷积F (Y)
然后再加上B
这个看不懂也没关系
反正就是继续提取特征
第三步就是把它再变回一张图
把它再变回一张图
叫做F(Y)
那在这过程中我们又需要第三个卷积核
和第三个偏置
同样道理
F(Y)它又等于max
0 然后W 卷积F (Y)
然后再加上一个B 是吧
反正通过这三个步骤的操作
我就把原来的这个比较低分辨率的图
变成了一个比较高分辨率的512的图
但是大家注意 经过这么一大堆操作
这一张图它不一定跟原来一样
除非W B W B W B
这些个参数取得合适它才会一样 对不对
于是下一个步骤干什么
下一步我就把这两个图进行比较
你把原来的这张图
和你后来猜出来的这个图进行比较
如果它们两个是一模一样的
就说明这些个参数调得非常合适
如果这两个不一样
就得调整W B W B 和W B
让这两张图比较接近 是吧
至于说具体怎么比较
还记得吗
我们在上次讲人工智能的时候说过这事
其实你就是算一个函数
这个函数叫损失函数
损失函数等于(1/n)Σ[x -F(Y )]2 是吧
这什么乱七八糟的
其实很简单
就意思是你用这个原图x它的每一个像素点
和我算出来的这个图的每一个像素点做差
把这个差值平方了取加和
加和完了之后再除以这个图片的个数
因为你不是有很多张训练图片吗
然后让这个损失函数怎么著
最小
它如果不是最小呢
你就通过这个BP算法
去调整这些参数让它最小
这就训练完成了 对不对
好 训练完成了之后
你再给我一张低分辨率的图
我没有上面这个 没有关系
你给我一张低分辨率的图
相当于从这开始
我就可以直接算出来一个高分辨率的图
然后我就认为
这张高分辨率的图应该最接近事实 对不对
这就是所谓的推理过程
你给我一张低分辨率的
我就可以变成一个高分辨率的
超分辨率问题
现在的手机能够进行大范围的变焦
其实很大程度上是归功于超分的
因为你把镜头拉得非常远了之后
它这个有效的光信息会比较少
抖动也好 噪声也好
都会占得比例比较大
所以你正是因为有这个超分辨率
你可以修正这个噪声和抖动
你才让图片看起来非常清楚
比如大家看这几张图
这就是一个算法的厂商叫做慧鲤
它实现的这个图片的超分效果
没有超分的和超分的咱们比较一下
效果还是非常的明显 对吧
再比如我们有时候远距离扫描二维码
如果要是没有超分功能
你很有可能会扫描失败
有同学在大学上课的时候坐在后排
你想拍老师前面板书
如果没有超分的话可能板书也拍得不清楚
而且现在随着移动平台AI算力的不断提升
许多的算法厂商
也在不停地改进自己的超分算法
可以支持规模更大 处理能力更强的算法
实时处理能力也变得更好
典型处理时间是300到400毫秒
用户基本没有感觉
我们甚至都不知道点开相机的时候
背后已经启用了AI的超分算法
而且许多厂商已经开始使用了AI视频技术
视频超分也是其中一部分的基础功能
或者是AR VR等交互领域
同时还得包含视频和声音的多路程处理
这就对AI芯片的处理能力提出了更高的要求
说完了超分咱们再来说说另外一个功能
超级夜景
在传统拍摄夜景的时候其实面临了很多的问题
比如说因为在晚上的时候有效的光线不足
所以这个噪声就会非常的明显
因此 我们经常会看到有很多的斑点
如果你要是想让进光量足一点 就得长曝光
而长曝光的时候抖动造成的模糊就会很明显
如果曝光时间不够的话
整个画面就会非常昏暗
而且如果这个场景中有灯的话
你就会发现长曝光的时候这个灯就会过曝
短曝光的时候那个暗的地方根本就看不清楚
你很难把所有的地方都看清
那么这个问题在以前是怎么解决的呢
我们说一下
传统的解决方案
就是这个专业的摄影师
首先会用一个三脚架去固定这个相机 对吧
你不固定 手拿着 它就会晃
固定了之后进行长时间的曝光
比如说十几秒的这种曝光 长曝光
同时还要同时拍摄一组短曝光的照片
因为长曝光的时候
那个特别亮的地方它就过曝 是吧
特别暗的地方能够看清
然后短曝光是亮的地方比较合适
最后你还得进行后期处理
就是把这些个图片
一张一张的全都导到photoshop里边去
把那些特别亮的过曝的地方去掉
把那些特别暗的地方也去掉
然后把这多张照片合到一起变成一张照片
整个这过程非常复杂 是吧
所以 如果你要想搞出一张高质量的照片的话
可能需要折腾好几个小时
可是现在一切都不一样了
在手机端AI的加持下
手机摄像头可以在第六代高通AI引擎的控制下
自动的进行多次长短曝光
并且进行如下的操作
第一个
就是在用人工智能的方法来进行什么呢
人工智能的方法来降噪
首先 我们把这个图像上的噪声可以进行去掉
第二 就是它可以自动的拍摄
很多张的长曝光 短曝光相结合的一些照片
然后它还可以自动的拍摄
很多组的长曝光 短曝光的照片 是吧
那这个长曝光
也远远没有刚才传统摄影师十几秒那么长
一般就2到3秒
把这些照片合到一块 是吧
去掉那些过曝的部分 特别暗的部分
把它合到一起
这就称之为什么
称之为高动态 高动态
在一张照片里边既能看到特别亮的部分
也能够看到比较暗的部分
叫HDR 是吧 高动态
整个过程两三秒钟就完事
相比于传统摄影可能需要几个小时
这个时间就大大的缩短了
但是你怎么知道哪些地方是噪点
哪些地方是图像
哪些地方应该保留
哪些地方应该去掉呢
这就是要依靠人工智能的算法了
下面我们再来聊一聊背景虚化
刚才我们还演示了这个背景虚化的功能
我们知道这个传统的单反相机
可以依靠大光圈来完成一个人像的背景虚化
这样一来 看起来可以凸显人像效果非常好
那么这个手机是如何实现背景虚化的呢
这实际上是要区分前景和背景
就是我们区分人站在前面 以及他的背景
然后对前景和背景进行不同的处理
这样就可以进行虚化了
传统的这个手机处理方法是利用双目摄像头
手机上有好几个摄像头
这个至少有两个摄像头就可以进行背景虚化了
就好像人的两只眼睛
人的两只眼睛看同一个物体的时候
这个角度不太一样
所以咱们就能感受到谁在前谁在后了 对不对
这就是所谓的双目摄像头来判断这个深度信息
但是这种方法有两个问题
第一个问题 就是如果这个距离特别远的话
远距离的时候这种方法是行不通的
咱们可以想象一下
如果两个人离我们都很远的话
你能判断这两个人谁在前 谁在后吗
很困难的 对不对
第二个就是功率的问题
开一个摄像头
电流就得几百毫安
你开两个摄像头功率就更大
如果长时间开两个摄像头
或者说你拍摄视频
想对视频的背景进行虚化的话
那这个功耗就非常高
可能会造成手机的这个温度超标
手机温度一旦超标了
它就会自动降频保护这个手机
所以感觉就会很卡
所以这个功率的问题
也是双目摄像头这种方法的一个限制
那么为了解决这个问题
这个极感科技等公司就设计了一种方法
就是利用单目摄像头再加上人工智能的方法
去解决深度计算的问题来区分前景和背景
那么具体来讲它的步骤是什么呢
它是这样 首先它先搭建
用软件搭建一个3D的场景
搭建一个虚拟的3D场景
这个虚拟的3D场景是不存在的
是在计算机里边的
搭建一个虚拟的3D的场景
搭建好了之后
我们再用计算机对这个虚拟的3D场景
拍摄多角度的2D照片
你在计算机里边完成这个过程
拍摄2D的这个照片
现在你就有了一大堆的素材了
3D的场景是什么样的 深度信息你知道
2D的照片又是什么样的
你把这些玩意 把它统统送到什么呢
送到卷积神经网络里面去
对这个卷积神经网络进行计算
你训练好了之后
你这个系统就具有了一种能力
看一张2D的照片
你就能区分这里边谁在前谁在后了
而且通过这种方法
你还可以实现人像和背景的一个精确分割
可以把这个人的图整个的抠出来
同时还能对前景和背景做不同的处理
比如说魔法幻天或者背景虚化
这就是对背景进行处理的
魔法消除就是对前景进行处理的
而且你还可以把背景变成黑白的
前景是彩色的
就形成了《辛德勒的名单》的那种效果
总而言之 就只有你想不到没有它做不到
甚至于这个算法还可以是实时进行的
也就是在拍录像的过程中
也可以实时地对画面中的人物进行追踪
实现前景和背景的分割
对背景进行实时虚化 改色
对前景进行实时追焦等等
总之新一代的手机拍照几乎都是AI计算摄影
它不光可以模拟出单反的效果
还能在一瞬之间
完成很多专业摄影师很长时间的工作
满足用户的各种需求
要实现这些功能需要算法算力
还有大量数据的支持
我们看到的是许多的热销手机
比如小米11 vivo X60 OPPO Find X3等等
它们强大的拍照功能
看不到的是实现这些功能所需要的算法
以及这些骁龙888手机上
所集成的高通第六代AI引擎
高达每秒26万亿次AI运算速度
让很多有趣的摄像功能成为可能
你还发现了在手机上有哪些神奇的AI功能呢
欢迎在评论区里面留言
我们在以后再给大家一起来聊一聊
手机上那些神奇的AI应用
作者: skyangle0607 (skyangle)   2021-08-12 23:10:00
职阶拉到最底,略
作者: Sinreigensou (神灵幻想)   2021-08-13 11:39:00
第一次看到贴影片还放逐字稿 真用心
作者: BusterButter (奶油巴斯特)   2021-08-13 15:26:00
讲的很清楚 推个
作者: chienweichih ((゚д゚))   2021-08-13 20:56:00
$youtube-dl --all-subs --skip-download [url]

Links booklink

Contact Us: admin [ a t ] ucptt.com