聊一聊MNN在端智能生态中的应用

2023-10-21 15:40

本文主要是介绍聊一聊MNN在端智能生态中的应用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

前言


2019年5月,淘系技术开源了深度学习推理引擎MNN,加入到人工智能开源社区中来。自打开源起,MNN就一直是开源社区的性能标杆之一,是众多后来者的挑战的目标。这固然是来自行业的认可,却也拉开了推理引擎间的性能军备竞赛。这或多或少,背离了我们的初心 —— 人工智能只是工具,靠比拼工具在一时一地的优劣,不能帮助我们繁荣AI应用生态。

帮助MNN不断成长的,除了我们在性能上的不断压榨,还有众多场景的哺育。MNN支撑着阿里巴巴众多的人工智能应用,从电商购物到视频直播,从手机应用到智能汽车;同时,也有越来越多的企业选择MNN,通过人工智能来提升工作能效、优化用户体验。是这些应用,而不是PPT上的性能数据,在你我不经意之间,改变了我们的生活。

为了走出性能内卷怪圈,为了给生态引一泓清流,MNN会陆续为你介绍我们在人工智能应用上的探索。这里的「我们」,不只是阿里巴巴,也包括身为MNN用户的你。


优酷体育:宅家街舞AI私教?!


今年的疫情对许多行业都产生了深远的影响,这其中就包括运动健身。宅家胡吃海塞,不能去健身房挥汗如雨,沉积的脂肪都堆在了大腿和肚腩上。俗话说,三月不减肥,四月徒伤悲,五月不减肥,六月徒伤悲…就算宅家,也不能被封印在床头!生命!在于运动!

然后你看了看家里的跑步机。

是这样?

或者是这样?

除了器械,家庭健身需要专业的运动指导,更需要优质的内容,让运动本身不再乏味和无趣。优酷体育AI操房,作为中国首家家庭智能操房平台,连接了硬件产商、健身机构和运动达人,通过游戏互动,带你玩转运动 —— AI操房通过摄像头捕捉用户动作,通过算法实现动作量化分析,再结合上游戏化的方式,把反馈投屏到电视上,让用户的跳操不再枯燥乏味。

为了指导用户做出动作并打分,我们要先根据原始视频设定动作示意和打分标准。运营同学会在AI操房的后台,从原始视频中选出关键帧,根据视频骨骼点信息生成动作示意图和描述文件。

在进入操练前,动作描述文件会和视频一同下载下来。在视频播放的同时,摄像头会捕捉用户的动作。关键帧的前后一段时间都会作为对应动作的得分区间。我们会在得分区间内持续比较用户和视频的动作差异,给出miss、good、perfect等反馈,并打出分数。区间内的最高得分会保留为动作的最终得分,参与总得分的计算。

这样,就算宅在家里,也能练起街舞了。谁说下一届「这!就是街舞」的冠军,就不能是你呢?

整套方案基于平台化思维,分为前端用户流程和动作编辑后台,整套流程完全开放,可以提供给健身机构或者KOL,产出定制化的AI操房,创造更多的玩法。整套方案还可以无缝迁移到OTT,为OTT用户提供服务。

有意向与优酷体育进行合作的智能硬件产商、科技和AI算法平台、健身机构和健身内容创作者们,请发邮件至:zr162261@alibaba-inc.com ,与优酷体育共创AI健身操房,做大!做强!


陌陌:直播互动「心」姿势


陌陌在人脸识别、人脸关键点、表情识别、手势识别、身体关键点算法上,有长足的积累。在直播中,陌陌基于人脸识别、人脸关键点,加上渲染、磨皮、美白等技术,为主播实现美颜、眼妆、贴纸等一系列特效;在拍摄器里,陌陌基于人脸关键点,来识别表情和睁闭眼,实现了一系列的特效玩法,比如眨眼识别的眨眼星星特效、嘟嘴识别的吹蒲公英、吹泡泡等。

最初,陌陌并没有使用MNN推理引擎,由于客户端上人脸检测、人脸关键点等模型推理和特效渲染都需要占用大量CPU和内存,CPU和内存成为了更多模型和特效应用的瓶颈。在全面升级到MNN推理引擎之后,推理速度和内存占用上都有了明显的优化。这样,客户端上就可以放心添加更多功能模块了。

为了增加主播和粉丝的互动,让直播更加有趣,陌陌在直播中推出了送礼物比心的互动玩法 —— 当粉丝给主播送出礼物后,主播可以做出比心手势表示对粉丝的感谢,在客户端识别出手势后,会触发粉丝送礼物的特效。

技术小哥哥素颜出镜比心

功能上线后,使用过的主播都夸效果好,直播间的粉丝数有明显的提升,主播和粉丝之间的互动更多了,粉丝刷礼物也更积极。

后续,陌陌还会在直播间和拍摄器里设计出更多好玩的特效和互动,期待你的体验~


智能应用长征


人工智能可以优化原有流程的体验,也可以开创出全新的玩法,但目前,智能应用的开发流程还很长,整体门槛比较高。

要打造一款有用、有趣的人工智能应用,你需要对人工智能和业务场景都有必要的认知,才能将有效融合两者。同时,你需要为模型训练收集大量的数据,并对数据做出必要的清洗和标注。之后,在众多模型结构中找到适合业务的,经历漫长的训练、验证迭代,得到模型后还需要做必要的优化、压缩。

产出模型并不是端侧AI应用的终点,恰恰是起点。以视觉类应用为例,可能90%的工作量都在模型训练之后 —— 适配iOS、Android的相机输入,图片增强特征、裁切、转换,推理结果过滤、提炼,结合物料渲染上屏。工程链路很长,涉及到的移动端编程、图片处理、渲染绘制,还分别要求不同的专业技能。

  预告  

如何降低人工智能应用的门槛、提升人工智能的研发效率,想了解淘系的实践经验吗?

号外:MNN官网全新上线,下周,将有重磅消息推出,敬请期待哦~也可以点击“阅读原文”进入MNN官网(http://www.mnn.zone/),提前尝鲜。

也可以添加淘大橙微信(TaoTech001)随时获得最新资讯!!!

✿  拓展阅读


作者|陈以鎏(离青)

编辑|橙子君

出品|阿里巴巴新零售淘系技术

这篇关于聊一聊MNN在端智能生态中的应用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/255340

相关文章

Python标准库之数据压缩和存档的应用详解

《Python标准库之数据压缩和存档的应用详解》在数据处理与存储领域,压缩和存档是提升效率的关键技术,Python标准库提供了一套完整的工具链,下面小编就来和大家简单介绍一下吧... 目录一、核心模块架构与设计哲学二、关键模块深度解析1.tarfile:专业级归档工具2.zipfile:跨平台归档首选3.

使用Python构建智能BAT文件生成器的完美解决方案

《使用Python构建智能BAT文件生成器的完美解决方案》这篇文章主要为大家详细介绍了如何使用wxPython构建一个智能的BAT文件生成器,它不仅能够为Python脚本生成启动脚本,还提供了完整的文... 目录引言运行效果图项目背景与需求分析核心需求技术选型核心功能实现1. 数据库设计2. 界面布局设计3

使用IDEA部署Docker应用指南分享

《使用IDEA部署Docker应用指南分享》本文介绍了使用IDEA部署Docker应用的四步流程:创建Dockerfile、配置IDEADocker连接、设置运行调试环境、构建运行镜像,并强调需准备本... 目录一、创建 dockerfile 配置文件二、配置 IDEA 的 Docker 连接三、配置 Do

深入浅出SpringBoot WebSocket构建实时应用全面指南

《深入浅出SpringBootWebSocket构建实时应用全面指南》WebSocket是一种在单个TCP连接上进行全双工通信的协议,这篇文章主要为大家详细介绍了SpringBoot如何集成WebS... 目录前言为什么需要 WebSocketWebSocket 是什么Spring Boot 如何简化 We

Java Stream流之GroupBy的用法及应用场景

《JavaStream流之GroupBy的用法及应用场景》本教程将详细介绍如何在Java中使用Stream流的groupby方法,包括基本用法和一些常见的实际应用场景,感兴趣的朋友一起看看吧... 目录Java Stream流之GroupBy的用法1. 前言2. 基础概念什么是 GroupBy?Stream

python中列表应用和扩展性实用详解

《python中列表应用和扩展性实用详解》文章介绍了Python列表的核心特性:有序数据集合,用[]定义,元素类型可不同,支持迭代、循环、切片,可执行增删改查、排序、推导式及嵌套操作,是常用的数据处理... 目录1、列表定义2、格式3、列表是可迭代对象4、列表的常见操作总结1、列表定义是处理一组有序项目的

C#中的Converter的具体应用

《C#中的Converter的具体应用》C#中的Converter提供了一种灵活的类型转换机制,本文详细介绍了Converter的基本概念、使用场景,具有一定的参考价值,感兴趣的可以了解一下... 目录Converter的基本概念1. Converter委托2. 使用场景布尔型转换示例示例1:简单的字符串到

Spring Boot Actuator应用监控与管理的详细步骤

《SpringBootActuator应用监控与管理的详细步骤》SpringBootActuator是SpringBoot的监控工具,提供健康检查、性能指标、日志管理等核心功能,支持自定义和扩展端... 目录一、 Spring Boot Actuator 概述二、 集成 Spring Boot Actuat

PyTorch中的词嵌入层(nn.Embedding)详解与实战应用示例

《PyTorch中的词嵌入层(nn.Embedding)详解与实战应用示例》词嵌入解决NLP维度灾难,捕捉语义关系,PyTorch的nn.Embedding模块提供灵活实现,支持参数配置、预训练及变长... 目录一、词嵌入(Word Embedding)简介为什么需要词嵌入?二、PyTorch中的nn.Em

Spring Boot3.0新特性全面解析与应用实战

《SpringBoot3.0新特性全面解析与应用实战》SpringBoot3.0作为Spring生态系统的一个重要里程碑,带来了众多令人兴奋的新特性和改进,本文将深入解析SpringBoot3.0的... 目录核心变化概览Java版本要求提升迁移至Jakarta EE重要新特性详解1. Native Ima