敏 发自 凹非寺
量子位 | 公众号 QbitAI
当真是买算法送手机!
这不,谷歌又给“亲儿子”Pixel 6塞福利了,让手机抠图也能细节到头发丝。
看这效果,原本模糊的头发轮廓,咻地一下,就变成了纤毫毕现的样子!
连发丝之间的缝隙也能精准抠到。
这样一来,就避免了使用人像模式拍照时人物与虚化背景割裂的情况,让人物照片的纵深感更加逼真。
四舍五入一下,这不就是手握单反拍照?(手动狗头)
在介绍最新的方法之前,先来了解一下过去手机的人像模式拍照到底是怎么实现的。
传统方法是使用二进制将图像分割,然后对分离出的背景进行虚化,在视觉上产生一种纵深感,由此也就能更加突出人物主体了。
虽然带来的视觉效果非常明显,但是在细节上的表现还不够强大。
由此,谷歌将常用于电影制作和摄影修图的Alpha遮罩搬到了手机上,提出了一个全新的神经网络,名叫“Portrait matting”。
其中,主干网络是MobileNetV3。
这是一个轻量级网络,特点是参数少、计算量小、推理时间短,在OCR、YOLO v3等任务上非常常见,具体结构长这样:
然后再利用一个浅层网络和一系列残差块,来进一步提升Alpha遮罩的精细度。
其中,这个浅层网络更加依赖于低层特征,由此可以得到高分辨率的结构特征,从而预测出每个像素的Alpha透明度。
通过这种方式,模型能够细化初始输入时的Alpha遮罩,也就实现了如上细节到头发丝的抠图效果。谷歌表示,神经网络Portrait matting可以使用Tensorflow Lite在Pixel 6 上运行。
此外,考虑到使用Alpha遮罩抠图时,背光太强往往会导致细节处理不好。
谷歌使用了体积视频捕捉方案The Relightables来生成高质量的数据集。
这是谷歌在2019年提出的一个系统,由一个球形笼子组成,装有331个可编程LED灯和大约100个用于捕获体积视频的摄像机。
相比于一般的数据集,这种方法可以让人物主体的光照情况与背景相匹配,由此也就能呈现更为逼真的效果。
而且这种方法还能满足人像被放置在不同场景中时,光线变化的需求。
值得一提的,谷歌还在这一方法中使用了监督学习的策略。
这是因为神经网络在抠图上的准确度和泛化能力还有待提升,而纯人工标注的工作量又太大了。
所以,研究人员利用标记好的数据集来训练神经网络,从而大量数据中来提高模型泛化能力。
用算法来优化摄影效果,其实是谷歌的传统艺能了。
比如Pixel 4中,就使用算法来拍摄星空。
HDR+算法更不必说,曾经引发过大众热议。
这一功能可以在相机启动时、没有按快门的情况下连续捕捉图像,并且会缓存最近保存的9张。这些照片将会与按下快门后的图像一并处理,最终得到一张最优的图像。
同时它还能让Pixel在夜间模式下拍照时,不用像其他手机那样长时间停留。
由于提升摄影效果不靠硬件,谷歌也将这些功能整合到一个APP上,适用于各种安卓手机。
感兴趣的小伙伴,可以去试玩看看or分享自己的体验~
参考链接:
https://ai.googleblog.com/2022/01/accurate-alpha-matting-for-portrait.html
— 完 —
量子位 QbitAI · 头条号签约
关注我们,第一时间获知前沿科技动态
css3的滤镜filter属性,可以对网页中的图片进行类似Photoshop图片处理的效果,h5时代的来临,我们可以通过css对图像进行处理。
浏览器支持情况:只有IE浏览器不支持filter(滤镜)属性,为了兼容低版本的safari和google浏览器,需要加上前缀-webkit-
filter(滤镜)属性现在规范中支持的效果有:
grayscale 灰度(值为0-1之间的小数)
filter:grayscale(1); -webkit-filter:grayscale(1);
0表示灰度为0%,显示原图,1 表示灰度为100%灰色。
灰度
sepia 褐色(值为0-1之间的小数)
filter:sepia(1); -webkit-filter:sepia(1);
0表示褐色度为0%,显示原图,1 表示褐色度为100%显示褐色。
saturate 饱和度(值为num)
filter:saturate(1.8); -webkit-filter:saturate(1.8);
0表示饱和为0,图片显示黑白色,0.5表示饱和度为原图的一半,1表示饱和度等于原图,数值大于1表示饱和度加强。
hue-rotate 色相旋转(值为angle)角度deg
filter:hue-rotate(60deg); -webkit-filter:hue-rotate(60deg);
表示色相旋转的具体角度。
invert 反色(值为0-1之间的小数)
filter:invert(1); -webkit-filter:invert(1);
0表示不反色显示原图,1表示100%完全反色。
opacity 透明度(值为0-1之间的小数)
filter:opacity(0.5); -webkit-filter:opacity(0.5);
0表示完全透明,0.5表示半透明,1表示100%完全不透明。
brightness 亮度(值为num)
filter:brightness(2); -webkit-filter:brightness(2);
0表示亮度为0,显示黑色,0.5表示亮度为原图的一半,1表示原图亮度,数值大于1表示亮度加强。
contrast 对比度(值为num)
filter:contrast(1.8); -webkit-filter:contrast(1.8);
0表示对比度为0,为纯色,0.5表示对比度为原图的一半,1为原图对比度,数值大于1,值越大,对比度越强。
blur 模糊(值为length)
filter:blur(5px); -webkit-filter:blur(5px);
表示虚化程度像素值。
drop-shadow 阴影
filter:drop-shadow(0 0 10px #000); -webkit-filter:drop-shadow(0 0 10px #000);
和css3 box-shadow属性值一致。
多个属性值可以写一起,用空格隔开,类似transform多属性写法
filter:saturate(1.8) blur(3px); -webkit-filter:saturate(1.8) blur(3px);
饱和度+模糊
案例源码下载链接,请登录http://bbs.520it.com/forum.php?mod=viewthread&tid=2899&pid=32695&page=1&ordertype=2&extra=#pid32695
更多交流更多伙伴,尽在bbs.520it.com
这个美图的时代,干什么都要拍照,比如说吃饭前要拍照、喝水前要拍照、上厕所要拍照... ...但是怎样才能把照片拍得像大片呢?除了PS,还有一些操作技巧可以让你的相片更有范。
背景虚化
来源:http://wallpaper.pconline.com.cn/picsource/13424_10.html
要想拍出背景虚化的效果,大光圈镜头(定焦镜头)是最好的选择,除了之外,长焦镜头也可以达到此效果。除了选择合适的镜头,将相机调到光圈优先模式,一般来说,光圈越大,背景越虚化。将镜头对焦到主体,使用全手动挡,控制最好的拍摄距离你就可以拍出虚化照片了。
逆光摄影
来源:http://hnhbmwd.blog.163.com/blog/static/13464199920130260158298/
逆光摄影最重要的是了解光线的角度。当早晨或黄昏、太阳接近地平线时,地面上的物体基本上完全是被逆光照射的,此时的逆光效果最为突出、更加强烈。冬季也比夏季更适合拍摄逆光照片,因为冬季的日弧线位置非常低,逆光的效果也就更好。
光圈优先
来源:http://itbbs.pconline.com.cn/dc/topic_21005841-14215657.html
数码相机的曝光量就取决于快门和光圈,以及感光度ISO,那么选择哪一个优先拍出来的照片才是最完美的呢?答案是光圈优先,在光圈优先的情况下,我们可以通过光圈的大小来轻松地控制景深,可以得到很好地曝光效果。
双重曝光
来源:http://g.pconline.com.cn/x/605/6057156.html
双重曝光会让你的照片呈现出非常梦幻的效果,要想拍摄出双重曝光的效果,首先把相机的模式转盘转到任意一个创意拍摄的模式,让后按下MENU键,找到多重曝光设置栏,将其开启,由于我们是进行双重曝光拍摄,所以要将曝光次数设置为2,再将光圈。快门、ISO等参数设置好,连续拍下两张不同的照片,相机就会自动将其合成一张,达到绚丽的双重曝光效果。
怎么样,学会了吗?赶紧拿上你的相机开始拍大片吧!
*请认真填写需求信息,我们会在24小时内与您取得联系。