0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

ARKit、3D引擎、深度学习等技术在直播场景下的应用

LiveVideoStack 来源:未知 作者:李倩 2018-09-04 16:56 次阅读

本文来自花椒直播海外技术负责人唐赓在LiveVideoStackCon 2017上的分享,并由LiveVideoStack整理而成,在分享中唐赓详细介绍了直播的基本组成部分以及ARKit、3D引擎、深度学习等技术在直播场景下的应用。

大家好,我是唐赓,现就职于花椒直播。主要负责iOS和一些新技术的应用。本次的分享内容主要是介绍一下我们包括个人对直播这项新技术应用的一些看法。

1. 直播的基本组成部分

直播行业大约是在2015开始火起来,由于是刚起步,所以整个直播行业不是特别成熟。在早期时甚至会出现音画不同步等一些基础的问题。之后也做了很多的工作,比如直播视频秒开的优化,包括网络自适应、码率自适应、分辨率以及帧率的自适应。对于码率自适应,在点播的场景下,服务器会事先准备几段不同码率的视频,观众根据不同的需要、网络状况从服务器上拉取不同的码流。但是在直播的场景下,网络自适应更多的是发生在主播端,比如当主播的网络不太好时,我们就会根据上行的码流情况来实时的进行调整,包括调整视频的分辨率、码率、帧率。然后对于超大型的聊天室或者一些直播网站,就要求每个直播间能够承受百万量级并发的在线用户,包括私信、群组,这都是我们过去已经做过的一些优化工作。

随着直播行业的发展,单向的直播已经没有什么新意了,现在大家开始关注连麦、一对一的单聊、群聊等。这些功能在我们的APP中都已经实现了,包括上层的展现,比如美颜、滤镜、瘦脸、大眼、人脸识别贴纸、3D头盔等等。我们在2015年5月份左右起步做直播,这些都是我们在这两年里做过的一些事情,目前这些功能已经逐渐成为直播APP的标配,那么下一步该如何去做?在我个人认为至少可以关注以下方面,如Augment Reality,Computer Graphics、Computer Vision以及Machine Learning.,接下来将分别给大家介绍一下这四个方面。

2. Augment Reality

首先是人脸识别技术,从2016年开始已经初步实现,而我们可以说是第一个把这项技术应用到直播场景中的。2016年初,我们发现手机上实时的人脸识别非常消耗CPU内存,因此就可能导致直播卡顿,无法播放。为了解决这个问题,我们当时进行了非常多的优化,比如,最先在有限的手机资源之上实现了实时的人脸贴纸功能。但当时人脸识别的SDK普遍的CPU消耗都在50%以上,甚至苹果自己提供的人脸识别的消耗都在80%以上,而且抖动非常厉害。到了2017年,在不断的优化之后,人脸识别在手机上的应用就非常成熟了。

现在基于ARKit、ARCore、SenseAR或者是基于IMU都可以实现很多玩法,比如利用AI/AR可以实现手势识别与真实场景的结合。那么AR可以怎么利用呢?从一些小视频可以看到,拍摄者与表演者以及一些动画效果要配合的很好才能实现AR特效,但是这些都是假的AR,而我们用AR技术就完全可以把这些做成真的。另外,基于AR在直播间里的视频上面展现一些广告或者好玩的东西,这实际也是比较经典的AR应用。

3. Computer Fraphics

AR可以反馈一些基本场景的认知信息,包括平面在哪里,墙在哪里等。那么如何在上面叠加这些场景,这就需要基于图形学的一些技术。最常见的就是基于OpenGL/Metal提供的一些API去实现,当然也有利用像Unity、Unreal之类相对成熟的引擎,包括苹果提供的SceneKit 3D引擎。另外就是利用一些开源的引擎,比如Cocos2d-x、Crystal Space、Blender Game Engine,它们的功能也都比较强。像Cocos2DX目前已经发展出比较强的3D能力,它能够展现骨骼动画以及一些比较复杂的光影效果。如果能力足够也可以开发自制引擎,据我所知,国内的很多游戏厂商比如腾讯、畅游、搜狐,他们用的都是自己研发的强大引擎。

4. Computer Vision

直播行业目前对计算机视觉的依赖也变得非常的强烈。计算机视觉的开源实现主要体现在两个开源库,分别是OpenCV和Dlib。OpenCV是由Intel发布的一个非常强大的视觉库。包括实时计算机视觉、机器学习,包括一些图像处理、分析等基本都离不开它,而且它的代码实现非常的简单快速。Dlib的使用非常方便,而且它自带了它所依赖的一些东西,包括网络、线程、GUI、各种各样的线性代数、机器学习、图像处理等各种模块。它最大的一个优势是自带强大的人脸识别引擎。接下来可以看一下基于OpenCV和Dlib实现的一些功能。

A.人脸朝向识别

从上面这幅图可以看到,根据Dlib给出的人脸关键点坐标信息,计算出了人脸的朝向,人脸前面的这根红线就是显示出了人脸的朝向。基于人脸关键点坐标、朝向信息,就可以实现比较炫酷的3D头盔功能,此处例子的实现目前在网上有开源的代码可以进行参考。

B.精确估算手势位置和姿势

从上图可以看到,在直播中可以精确的估算主播的手指头的位置以及姿势,主播可以利用这种技术完成很多有趣的交互。

目前,在PC上已经可以实现对于一个场景中多个人的复杂的肢体运动的实时识别。但是面临的一个非常大的挑战是如何将这个能力内嵌到手机APP中,如果能够做到这一点,那么就可以把主播跳舞之类的身体动作实时截取出来并与动画人偶相结合,会使得整个直播间显得非常生动。

5. Machine Learning

接下来简单介绍一下机器学习。机器学习在直播中已经有了很多的运用,比如人脸识别、物体识别、手势识别、背景分割抠像等,再进一步的运用就是实时翻译、跨语种连麦、画质改进以及自动生成主播漫画人偶。

机器学习的运用除了此前介绍到的一些前台功能,还具有后台功能,包括实时判断主播的性别年龄、颜值才艺类型、识别场景、口才打分、人气等。

下面几页PPT简单介绍一下深度学习的一些入门知识。上面展现的是Google的一个Neural Network Playground ,在playground.tensorflow.org上可以看到,可以尝试设计自己的神经网络,了解深度学习的过程。(DEMO)。实际上深度学习就是在不断地调整它的超参数,增加深度学习的深度以及细胞的数量。现在所谓的深度学习的研究实际上就是用各种各样的排列组合来找出一种网络结构能够更适合的解决某一类问题。

上面列出了各种开源的网络结构,它们都是由各种学术机构花了很多的时间精力找出的比较适合解决某些问题的网络结构。当网络结构越复杂时,训练模型的时间就越久。

这是一个简单的深度学习的例子,其中高亮的几行是对网络结构的描述。它使用Keras/TensorFlow训练模型,在进行了一千次迭代之后,误差就降到了千分之四,我们就可以认为训练出来的模型已经学会了异或运算法则。

前面例子中训练出来的模型可以直接放在CoreML中使用,运行出来的结果可以在上图中的输出看到,所以说CoreML开发过程是非常简单快速的。

上面这个例子也是实现判断异或功能,但是它没有依赖任何框架,只是利用了一个最基本的数学运算库,这个例子可以看到深度学习核心算法工作原理,右边是训练跑出来的结果,可以看到最终得到的结果跟前面的一样。所以深度学习就是这么简单暴力。

综上所述,有这么多的技术等着我们去把它放到直播中使用,我觉得后面的前景还是非常广阔的,我们还有很多事情要去做。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 深度学习
    +关注

    关注

    73

    文章

    5232

    浏览量

    119889
  • arkit
    +关注

    关注

    0

    文章

    23

    浏览量

    11238

原文标题:从CV到ML 直播场景下新技术的应用

文章出处:【微信号:livevideostack,微信公众号:LiveVideoStack】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    3d全息声音技术解析

    ,但与此同时,物体飞行时发出的声音却没能跟着一起“飞”过来。而3D全息声音技术要做到的,就是当物体飞到你眼前甚至砸在你脸上时,声音也同时最近处响起——就像生活中的真实场景一样。这是目
    发表于 04-16 10:39

    汽车车载3D技术应用蓄势待发,助力实现安全驾驶

    CPU,单一芯片中集成了对应OpenGLES2.0的图形引擎和各种外设接口。通过对4路输入影像进行3D图像处理,可绘制出高品质的驾驶场景图,同时有助于开发者实现未来更雄心勃勃和复杂
    发表于 08-14 14:00

    3D模拟飞机飞行串口

    、横滚交付、偏航角度!2、3D模型处理,导入控制3场景设计,背景色、视角控制、光源控制3D
    发表于 04-02 09:40

    请问3D模式能隐藏元件的3D吗?

    3D模式能不能隐藏元件的3D,就是3D模式只能看见PCB板
    发表于 04-18 05:51

    什么叫3D微波技术

    3D电影已成为影院观影的首选,当3D打印已普及到双耳无线蓝牙耳机,一种叫“3D微波”的技术也悄然而生。初次听到“3D微波”,你可能会一脸茫
    发表于 07-02 06:30

    3D TOF深度剖析

    这段时间以来,最热的话题莫过于iPhone X的Face ID,关于用它刷脸的段子更是满天飞。其实iPhone X 实现3D视觉刷脸是采用了深度机器视觉技术(亦称3D机器视觉)。由于i
    发表于 07-25 07:05

    机器视觉3D成像技术大全!

    反射的图案对环境中的光学干扰敏感,并且仅限于室内应用。   3、结构光成像技术   投影结构光3D图像捕获方法的原理。(a)将照明图案投射到场景上,并用相机捕获反射图像。一个点的
    发表于 11-19 15:28

    3D传感器环境感知、捕捉方面的作用

    ,以及将物品从一个位置移动到另一个位置。这些应用都依赖于经济且强大的3D视觉传感器,目前,该领域存在多种竞争型技术。所有这些技术都有各自的优点和缺点,具有不同的工作距离、分辨率、处理
    发表于 08-10 06:27

    浩辰3D软件中如何创建槽特征?3D模型设计教程!

    3D模型设计中创建槽特征是十分常见的,那么浩辰3D软件中如何创建槽特征呢?下面小编就来给大家介绍一浩辰3D软件中创建槽特征的操作技巧吧!
    发表于 09-28 16:16

    全球3D芯片及模组引领者,强势登陆中国市场

    感知、计算到系统一体化的解决方案。银牛3D机器视觉模组C158人工智能、机器人、物联网产业快速发展的背景,机器视觉技术正步入新的阶段。
    发表于 11-29 11:03

    HDC2021技术分论坛:酷炫3D效果在瘦设备上也能实现?

    ,这些引擎往往会对不同的硬件平台做抽象,提供一站式的统一开发框架,让开发者开发应用时无需关注硬件平台的差异性。这虽然给开发者带来了便利,但在一些轻量级3D场景
    发表于 12-21 10:40

    基于深度学习3D图像处理的精密加工件外观缺陷检测系统

    检测,检测准确性和检测稳定性较差、容易误判。 基于深度学习3D图像处理的精密加工件外观缺陷检测系统创新性结合深度学习以及
    发表于 03-08 13:59

    全球首家支持OpenHarmony的3D引擎,Cocos Creator 3.6.1社区版发布

    前言2021年,Cocos 正式成立专项项目组,协同华为团队对 OpenHarmony 2D3D 内容的开发流程与效率进行深度优化。目前已在 Cocos Creator 3.6.1 的基础上
    发表于 10-19 14:17

    全新适配鸿蒙生态,Cocos引擎助力3D应用开发

    的行业主流3D引擎,近十年服务了全球160万开发者。本次,Cocos带来了全新适配API 9的3D引擎的Cocos Creator,开发者可快速构建并发布鸿蒙生态的
    发表于 04-14 09:25

    全新适配鸿蒙生态,Cocos引擎助力3D应用开发

    鸿蒙生态全场景内容生产,成为鸿蒙生态坚定的共建者。Cocos 将以工具的视角,不断完善开发工具链,简化开发与内容上线流程,降低数字开发门槛,进一步打造高效、便捷的3D内容开发平台,助力夯实软硬件一体化的技术底座。
    发表于 04-14 11:37