首页 热门资讯 camera360 让拍照变得更有趣

camera360 让拍照变得更有趣

更新时间:2024-04-02 1:16:28 分类:热门资讯 浏览:1

大家好,今天来为大家分享camera360的一些知识点,和让拍照变得更有趣的问题解析,大家要是都明白,那么可以忽略,如果不太清楚的话可以看看本篇文章,相信很大概率可以解决您的问题,接下来我们就一起来看看吧!

伴随贴纸、短视频越来越火爆,这两项功能也基本成为各大拍照App的标配,但每个App的技术路线又都有所不同。Camera360iOS技术负责人唐雷在LiveVideoStackMeet上与我们分享了Camera360在iOS端新玩法的探索尝试、技术实现以及遇到的坑和优化方案。

大家下午好,我是来自Camera360的唐雷,今天与大家一同分享Camera360iOS端的音频优化。对于一款拍照软件,贴纸、美妆、特效现在已经成为一种标配,而我们最大的区别在于左下角的相册——它支持连拍,不需要拍照预览再去保存。从产品角度,我们最开始只是简单的拍照软件,拍风景再加上一些滤镜处理,到后面开始添加美妆、贴纸等功能,包括短视频也有尝试。

作为技术团队,整个Camera360产品演变之路就是如何保证产品的质量以及稳定性。而决定拍照软件的流畅度有几个因素:分辨率、SDK处理速度、人脸识别速度以及帧率。接下来的内容也会主要分享在这四个方面如何进行优化的。

对于用户而言,第一感受也是最直观的感受就是照片是否会糊,这一点对女性用1户更为重要,而影响照片糊的最大影响因素就是分辨率。不同手机的分辨率也是不一样的,正确选择分辨率就显得至关重要,因此我们也是长期在做手机分辨率的测试。Camera360全球有8亿用户,而其中一半以上都在东南亚——泰国、越南,对于这些国家iPhone4,4s以及5是主要机型,而网络条件也会相对差很多。

这张表格是我们对拍照导出分辨率的方案,iPhone6以前的机型使用导出分辨率就是依照200万的拍照分辨率,6代和7代基本是以手机前置摄像头的分辨率规定,而iPhone8因为自身机器性能较好,我们则是选择导出原图。虽然7和7Plus摄像头分辨率和8代相同,但内存消耗相对比较高,因此无法按照原图导出。

在对分辨率调优后,我们就需要考虑内存控制问题。对于一张200万的照片,它的内存使用率就是200万(像素)乘以4(RGBA的4个通道)再除以1024、除以1024,也就是7.6兆,而前面提到Camera360的一个特色就是连拍功能,它就会产生几个照片的拷贝,特别在底层SDK做渲染的时候也会做双缓冲,这样一张照片就等于有几个实例,大概要消耗掉30几兆的内存。同时对于拍完的照片,我们首先会存一张80万的图片在沙盒,再去根据不同机型自动导出不同分辨率的照片。

这张表格是我们对iPhone6和6Plus内存消耗的测试,它们的基准分辨率都是200万。假如做一张200万的图进到相机取景页面,并把所有资源加载完之后的内存是155兆,当我拍一张照片时峰值可以到218兆,这其中的内存差值就有63兆,当然普通的平均值大致在30兆左右;假如对400万和800万的图做测试,虽然两者渲染时内存的波动不大,但内存峰值(也就是实际内存)的波动是很大的,在iPhone6上400万的图最大消耗96兆内存,800万则需要163兆,而iPhone实测的崩溃值大致在360-440兆,最大崩溃内存是645兆,也就是拍两张照片内存就已经很满了。而对于6Plus而言,200万的图就已经需要消耗很大内存了。

这是我们做的不同机型的连拍崩溃测试。比如iPhone6在快速点击拍照大致20次左右就会崩溃,因为此时队列已经被塞满了,即使处理再快或者有异步线程队列依然无法解决。因此我们做了冷却处理的优化,其实对于真实用户如此频繁点击拍照是不可能的,而且系统相机也不允许这么快的拍照,它自身调用系统API的时间也会有延迟。同时我们内部也建立了性能监控系统,包括“鹰眼系统”来记录日志,我们可以实时看到当前特效、美妆、贴纸的渲染速度,帧率、人脸识别速度,App内存使用情况、剩余内存情况、渲染总时间等等这些关键数值,并且通过“鹰眼系统”记录下来,绿色代表在可控范围内、黄颜色代表警告、红色则表示出现问题。

提到美妆和贴纸,不可或缺的技术就是人脸识别,人脸一共有106个点位,基于一些点位就可以去做贴纸的贴合算法。人脸识别基本有两种算法:精准模式和快速识别模式。当拍一张照片时,Camera360内部会判断拍照者人脸区域变动幅度,当变动较小时会切换到精准模式,这时人脸识别度是非常高的,贴合度也很高,即使由于镜片反光出现的眼睛也是可以区分出来的;而快速识别模式则是针对人脸区域出现变动较大,这时我们会取第一个点和最后一个点,而中间过程则是通过算法计算出移动轨迹,这种方法在短视频的贴纸动态贴合上比较明显。

时间间隔也是人脸识别中重要的一环,现在的手机吐原始帧Buffer时满帧是30帧,我们内部满帧是24帧,而当已经识别到人脸后,是没有必要每一帧都再去做检测的,因为人脸信息大致一样,我已经可以保证快速切换模式,因此可以调整检测的时间间隔,比如设置为40帧检测一次,当取景页面中没有人像时则调整为10帧检测一次,保证当重新出现人像时可以快速上脸。

很多自拍用户都喜欢仰望星空的45度角拍照,但这样就有可能会导致只识别出一个眼睛或者嘴的点位不齐全等情况,进而导致贴合度出现问题,但这个问题至今也还没有解决。最后一个问题就是人脸识别比较消耗CPU和GPU,与我们的SDK抢占资源导致手机发热、发烫,因此我采用延迟处理的方式,包括前面提到动态调整算法的时间间隔,当已识别人脸后适当增大间隔时间,以及切换模式的方法来减小SDK功率消耗。

在做短视频的探索中我们也发现了一些坑,首先是我们采取的方案是边录边写,也就是原始buffer会通过SDK处理后进入队列,我们会同步对处理好的Buffer开始写视频,最后再和音频合并。需要注意的一点这里的视频是无声的,因此我们需要录制现场声音,这时就会面临麦克风的选择问题,iPhone4和4S有2个麦克风,到了iPhone5则有3个,6S之后更是有4个麦克风,其中一个是专门做降噪处理的。而iPhone一共有2个功放——听筒和底部,如果采集人声的麦克风和功放在同一个位置,那么素材声音就会把人声给盖住。因此在使用前置摄像头时会从前置摄像头旁边的麦克风收声,使用后置摄像头时会切换到闪光灯旁边的麦克风。

用户对于拍摄的视频会要求尽量小,同时还要保证清晰度足够高,因此视频参数设置也是一个关键。我们也参考了行业中一些App,发现码率基本选择在1500-2000之间,因为我们自身滤镜特效对色彩饱和度的一些要求,我们选择了1800的码率,尺寸则是屏幕的1.5倍,这样保证制作出来的10秒视频,大小基本能控制在2兆以内。

贴纸的研发此前我们是使用C++、OpenGL自己内部处理,但贴合度、素材以及调试却存在很多问题,最终我们选择了U3D。它的优势最直观的就是贴纸素材高了一个档次,在特效和素材贴合度上都有很大提升;而且使用U3D还可以加入一些游戏场景,比如利用碰撞检测达到用嘴吃掉天上掉下来的甜甜圈,增添了更多的乐趣性;第三U3D的开发效率高,相比用OpenGL和C++底层SDK,由于它们是JSON文件没有平台,开发效率、调试会很糟糕,而U3D引擎本身的平台就可以支持;最后它的可扩展性很高,可以预见AR是未来发展的一个方向,因此我们也希望可以借此做一些尝试。

我们在使用U3D时特别做了一个双缓冲策略——特效处理在异步线程、U3D渲染在主线程,一开始原始Buffer传入SDKQueue从两个纹理字段找一个空闲的做渲染,然后把纹理传给RenderingQueue,UnityQueue不停的从RenderingQueue询问是否有新的纹理,有就取过来做Unity渲染,然后把渲染结果呈现在屏幕上,再把空的纹理传回RenderingQueue,然后SDKQueue不停的询问RenderingQueue是否有新的空闲纹理,有就拿回来准备做新的渲染。

当然U3D也存在一些负面影响:首先是在安卓上我们的SDK跟U3D引擎有一些冲突从而导致启动慢;第二是发热,这主要是人脸识别SDK和底层SDK性能抢占的问题;而发热也带来了另一个问题——CPU降频,帧率会降到非常低,只有一两帧。还有就是素材包资源比较大,即使我们做了WebP的优化,但依然没有非常明显的改善。

U3D带来最大的问题是armv7编译,armv7在打包时_TEXT_字段不能超过32兆,但我们发现仅仅U3D一个SDK就占了18兆,我们自己SDK占了6兆,这样其他SDK也只有8兆的空间可用,虽然现在我们能把包打出来,但也只剩下几百K的空间可用。而当我们后期接入Swift后发现加剧了这个问题,在Xcode8中Buildsetting里EnableCodeCoverage这个设置应该默认Release是No,但是接入Swift会导致设置失效,结果_TEXT_字段直接飙到70多兆,而且无法降下来,最后也是通过升级到Xcode9解决了这个问题。

camera360和让拍照变得更有趣的问题分享结束啦,以上的文章解决了您的问题吗?欢迎您下次再来哦!

版权声明: 本站内容部分来源网络,版权归作者所有,如有侵权,请联系我们删除!
相关文章
波比的游戏时间下载「V1.3」  波比的游戏时间安卓版 策略游戏
导语:大家好,今天我要给大家介绍一款非常有趣的游戏,它就是波比的游戏时间。这是一款非常受欢迎的休闲益智类游戏,在安卓上推出了最新版本「V1.3」。下面让我们一起来了解一下这款游戏的特色和亮点吧!一:波比的游戏时间介绍波比的游戏时间是一款轻松愉快的休闲益智类游戏,它由知名开发商开发,目前已经有数百万用户下载。在这款游戏中,玩家将扮演可爱的小熊波比,通过解决各种难题来完成关卡任务。每个关卡都设计精巧…
cw228 2024-04-05 10:57:45
怪物弹珠?的运营困境 热门资讯
大家好,关于怪物弹珠很多朋友都还不太明白,今天小编就来为大家分享关于的运营困境的知识,希望对各位有所帮助!1、临近年关,日本去年最成功的手游《怪物弹珠》在中国正面临最大的危机。2、危机的来源是多方面的,但最大的来源并不是人们老生常谈的那个——日本游戏在华水土不服。《怪物弹珠》的确不太适合大部分中国玩家,但它的游戏素质摆在那里。经过两个月的运营后,《怪物弹珠》的受众群体已趋于稳定,留下的大都是喜欢这…
zz 2024-04-05 10:56:38
在哪个星球太阳西升东落 在哪个星球上能看到太阳西升东落是月亮吗 游戏攻略
本篇文章给大家谈谈在哪个星球太阳西升东落,以及在哪个星球上能看到太阳西升东落是月亮吗对应的知识点,文章可能有点长,但是希望大家可以阅读完,增长自己的知识,最重要的是希望对各位有所帮助,可以解决了您的问题,不要忘了收藏本站喔。蚂蚁庄园:猜一猜:在哪个星球上能看到太阳“西升东落”?是月亮还是金星呢?这是蚂蚁庄园的题目,关于猜一猜:在哪个星球上能看到太阳“西升东落”?的答案,选项中有两个选择,分别是:月…
hh 2024-04-05 10:54:42
怪物弹珠图鉴,怪物弹珠攻略 热门资讯
大家好,今天小编来为大家解答以下的问题,关于怪物弹珠图鉴,怪物弹珠攻略这个很多人还不知道,现在让我们一起来看看吧!怪物型态:每只怪物可分为反射型及贯穿型。反射型:照物理原理反弹,要杀怪比较容易,调好角度可以弹他个好几下把怪杀死(特别是两只怪物间距小一次杀两只)当使用反射型怪物时,箭头呈现橙色。贯穿型:射出去直接穿透怪物,不会反弹,并且会被减速很多,优点是在紧急状况可以无视怪物冲去吃补血救命,或者冲…
zz 2024-04-05 10:53:42
欢乐找茬下载  欢乐找茬「V1.5」免费版 策略游戏
导语:随着智能手机的普及,手机游戏已经成为人们生活中不可或缺的一部分。而在众多的手机游戏中,益智类游戏备受玩家们的欢迎。今天,我要为大家介绍一款备受欢迎的益智类游戏——欢乐找茬下载 欢乐找茬「V1.5」免费版。一:欢乐找茬的介绍欢乐找茬是一款以寻找两幅图片之间差异为主题的益智类游戏。在游戏中,玩家需要通过观察两幅看似相同但实际存在差异的图片来寻找出所有不同之处,并在规定时间内完成任务。该游戏拥有…
cw228 2024-04-05 10:51:48
怪物大作战 怪兽大作战 热门资讯
大家好,怪物大作战相信很多的网友都不是很明白,包括怪兽大作战也是一样,不过没有关系,接下来就来为大家分享关于怪物大作战和怪兽大作战的一些知识点,大家可以关注收藏,免得下次来找不到哦,下面我们开始吧!1、首先是婆婆上场:婆婆一头短发,头戴眼镜,手拎着一个帆布做的购物袋,走在路上。她走着走着,看到地上有一张广告宣传单,就捡起来顺手放进了附近的垃圾桶里。婆婆一边摇头,嘴里一边嘟囔着“印这么多广告单,也没…
zz 2024-04-05 10:51:23
陆沉生日快乐!《陆沉生日特别版》下载 商务办公
导语:今天是一个特殊的日子,陆沉生日快乐!为了纪念这位伟大的游戏开发者,游戏公司推出了《陆沉生日特别版》,让我们一起来看看这款游戏有什么特色和亮点吧!一:陆沉生日的介绍陆沉,一位来自的游戏开发者,他曾经参与过多款知名游戏的开发工作,如《王者荣耀》、《绝地求生》等。他不仅在国内享有盛誉,在国际上也备受认可。他对游戏行业的贡献不言而喻,因此游戏公司决定推出《陆沉生日特别版》来纪念他的生日。二:陆沉生…
cw228 2024-04-05 10:48:44
怪物代码(传说怪物代码) 热门资讯
大家好,如果您还对怪物代码不太了解,没有关系,今天就由本站为大家分享怪物代码的知识,包括传说怪物代码的问题都会给大家分析到,还望可以解决大家的问题,下面我们就开始吧!1、player.placeatme00249B031;传说级歼灭者铁卫兵二型2、player.placeatme00249B021;传说级歼灭者铁卫兵3、player.placeatme00249B011;传说级破城者铁卫兵4、pl…
zz 2024-04-05 10:48:05
怪物之王 怪兽之王 热门资讯
大家好,今天来为大家分享怪物之王的一些知识点,和怪兽之王的问题解析,大家要是都明白,那么可以忽略,如果不太清楚的话可以看看本篇文章,相信很大概率可以解决您的问题,接下来我们就一起来看看吧!1、哥斯拉,这个名字不仅在日本,甚至在全球范围内都是一个传奇。作为日本最具代表性的怪兽,它不仅拥有着惊人的力量和破坏力,还承载着许多人的童年回忆和青春岁月。本文将从哥斯拉的重要性、特征、历史、保护措施以及未来展望…
zz 2024-04-05 10:45:48
龙之谷魔导师「V1.3.5」下载  龙之谷魔导师下载 商务办公
线索: 在游戏世界中,龙之谷系列一直深受玩家的喜爱,而龙之谷魔法导师更是备受关注。现在,龙之谷魔术师的最新版本“V1.3.5”已经发布。让我们来看看这场比赛。 一:龙之谷 魔导师的介绍 龙之谷导师是由著名游戏开发商NEXON开发的一款角色扮演游戏。它是龙之谷系列的最新作品,也是一款非常受欢迎的手机游戏。在这款游戏中,玩家将扮演一位强大的魔术师。 在神秘的世界中冒险,与其他玩家一起对抗强大的敌人。 …
cw228 2024-04-05 10:45:43