为啥AI难落地?

2023-05-16

总在说AI落地难,那为啥难落地?

以最典型的智慧城市业务来说,就是接入网络摄像头,然后识别里面的人,判断是不是抽烟/打架/闯红灯/不带安全帽等。

首先是连接网络摄像机,GB28181/ONVIF接入相机,然后拉RTSP流,再解H265,做好这些最基本的功能就已经很麻烦了。但是网络摄像头厂家很多,有海康、大华、宇视、华为等等等,厂家随便往里面加点私货,搞一点什么私有协议和字段,那工作量直接翻几倍。如果要算法效果实时大屏幕播放,那还要视频编码H264推RTMP,然后转HLS/FLV流什么的,更是复杂。再遇到项目奇葩网络和防火墙、交换机丢包等问题,视频流如何打洞都成问题。总之有的搞了。

接着是开发对应的系统框架,如何配置和调度算法,比如某个路口的摄像头白天只识别行人闯红灯,晚上只识别大货车闯禁行区;如何存储必要数据,识别到的关键帧图像怎么存储,关键视频怎么存储;业务数据库怎么做,需要持久化哪些字段,怎么设计数据库表,优化查询插入等;如何展示算法效果,WEB界面怎么写,UI设计怎么搞,前后的交互写websocket/http等。又有的搞了。

然后才是训练各种深度学习模型,什么行人检测、人脸关键点检测、人脸识别、车牌检测、车牌识别模型。总之客户要什么功能就要做什么模型,比如识别外卖小哥不带头盔,那就要采集、标记、清洗外卖小哥的数据,再训练对应的外卖小哥不带头盔检测识别模型。一个两个需求还好,多了只是收集数据就难死人。又有的搞了。

之后是部署各种深度学习模型。模型如何适配nvidia/昇腾/寒武纪/Rockchip等硬件?有不支持的算子怎么办,硬等厂商支持?还是自己写硬件对应的算子,cuda/cann/neon/opencl这些异构框架全手写玩得转么?如何提高推理速度,是否需要fp16/int8推理,是否要做量化?量化精度不够如何解决?又有的搞了。

另外软硬件如何与现场情况结合?比如某市ZF要做全市上百路摄像头行人闯红灯专项识别,那是全市所有视频集中接入机房,使用显卡集中处理?集中在一起网络带宽够吗?还是是使用低成本的盒子,把盒子部署在摄像头附近?然后这些盒子如何远程管理和升级?而且不同的方式反过来又会影响软件的的设计。所以继续搞吧。

最后一步供应链。当你什么都做好了,nvidia说我的jetson盒子没货了,又或者huawei的智能相机没货了,那你是不是要换底层算力的芯片?又或者摄像头厂家说,我的A系列集团统一要求涨价,你要不要换B系列。去找合作的服务器厂商,现在x86芯片机器没货,只有arm芯片的机器了,是换合作厂商还是换芯片架构?然后底层设备一换全部都换,软件也要重新做。可别说控制供应链,有多大的能力能控制nvidia/intel/huawei/海康这些巨头?

项目验收后大概率还要陪着甲方玩,今天算法没结果,明天大屏幕看不到视频流了,后天要给界面加个按钮,大后天机器ping不通了。或者是领导一拍脑袋直接换硬件架构,NV显卡换国产NPU芯片,更是无穷无尽的事情,运维成本居高不下。

单独一个智慧城市方向,实际落地需要网络流媒体、视频编解码、前端、UI、后台开发、炼丹、算法部署、异构开发、运维等等的配合。如果要做手机影像AI就要折腾安卓、机器人和自动驾驶又要折腾ROS、工业互联网AI要折腾RTOS/Qt,这些方向都是完全不同的技术栈,又要招聘很多对应的人来专门做。团队管理,研发管理,投入产出比,利润成本管理,又成了很大的问题。

就单从技术角度来说,整个AI应用模型训练其实只是工程化的一个很小的部分。项目中人脸检测模型是mtcnn/retinaface,还是最新的scrfd,算法是不是sota,出自哪一年的cvpr,是哪位老师提出来的,其实没人关心。更重要的软硬一体的解决方案,以及对应的方案成本控制。

作为对照组,反过来看nvidia。硬件方面,有对应的推理卡P4/T4系列大卡,还有jetson系列低功耗盒子。软件方面,视频编解码有nvcuvid,模型加速有tensorrt,推理服务有triton,业务逻辑有deepstream。算法方面,有预训练好的各种cv和bert模型,还各种针对cuda优化好的算法库。甚至所有的东西打包好docker,镜像拉下来就能傻瓜式运行。反正想要的老黄都有,全套软件+硬件+算法+部署解决方案奉上,但是人家又只卖设备不做集成。

和老黄对比一下,这就是为啥AI独角兽公司落地这么吃力。

https://www.zhihu.com/question/266047224/answer/2832701558

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

为啥AI难落地? 的相关文章

  • 软件产品化

    1 产品化定义 xff1a 软件产品化是指客户无需为软件添加或调整代码和语句即能完成软件的安装配置 应用初始化 系统管理 用户使用的全过程 xff0c 并且软件至少能满足80 以上的用户某一组应用需求 微软Office或杀毒软件就是产品化软
  • 使用Dev C++进行Windows socket网络编程,需链接lws2_32库

    背景 在我们使用Dev C 43 43 进行C语言编程时 xff0c 如果我们引入的库是C语言标准库 xff0c 那我们是不要在编译器选项中进行额外的设置的 xff0c 但是如果我们使用的是一些不是C语言标准库 xff0c 那我们可能就需要
  • Windows下C语言程序和网络调试助手通信

    网络调试助手之间进行UDP通信 前面一篇文章介绍了Windows下的网络调试助手 xff0c 文章链接如下 xff1a Windows下的TCP UDP网络调试工具 NetAssist以及Linux下的nc网络调试工具 下面我们简单介绍一下
  • 为什么char a[]的a不能用a=“hello”来赋值?

    问题 char b里面的b是一个指向char的指针 xff0c 而b可以用b 61 hello 来复制 同样 xff0c a代表char数组的第一个元素的指针 xff0c 类型应该也是char xff0c 为什么b可以直接用赋值符号而a不可
  • Windows下使用C语言创建定时器并周期和网络调试助手通信

    在Windows C下采用timeSetEvent函数来设置定时器 关于timeSetEvent的函数原型及注释如下所示 xff1a MMRESULT span class token function timeSetEvent span
  • GCC编译程序如何减少堆栈空间的大小?

    1 静态堆空间的大小是编译期可以根据你的全局变量 静态变量尺寸算出来的 因此减少后者的长度可以减少你使用堆空间 2 MCU裸片程序 xff0c 很多环境是不方便 xff0c 不支持 xff0c 不鼓励使用malloc函数的 xff0c 裸环
  • 腾讯毕业十多年了

    已剪辑自 https mp weixin qq com s rb5aeIDQ5 qtifeoeIrqZw 昨天一个腾讯前同事加了我的微信找我聊天 xff0c 说是在网上看见我写的文章想起我了 这个同事印象中很沉默寡言的 xff0c 在腾讯除
  • ARM9和STM32什么关系?

    已剪辑自 https mp weixin qq com s QHARY D2SwFoQbFsJoCNlg 有小伙伴问 xff1a ARM9和STM32什么关系 xff1f 如果时间倒退10年 xff0c ARM9 s3c2410还算是比较流
  • 汽车ECU通信相关验证项有哪些?

    已剪辑自 https mp weixin qq com s fIAXkS37r6jvnuA7yIQDA 汽车电子的高速发展决定了基础软件所面临的要求将会更加严格 xff0c 其要求会覆盖软件的安全性 稳定性 可扩展性等方方面面 为了提高软件
  • 不可忽视的 C 语言陷阱!

    已剪辑自 https mp weixin qq com s bdGuOjz1Cg3YXHwlVh5ZlA 语言是编程的基石 xff0c C语言诡异且有种种陷阱和缺陷 xff0c 需要程序员多年历练才能达到较为完善的地步 虽然有众多书籍 杂志
  • 程序员能纯靠技术渡过中年危机吗?

    首先说答案 xff0c 能 xff01 程序员可以靠技术渡过中年危机 xff0c 但是要转变线性思维 先说说个人情况 xff0c 80后 xff0c 从事电机控制软件开发十余年 xff0c 属于制造业 xff0c 算嵌入式的一个小分支 xf
  • STM32学习(一)

    单片机基础 CISC和RISC举例 冯 诺依曼结构VS哈佛结构 冯 诺依曼结构数据和程序存储在同一存储器中 xff0c 访问数据时不能访问程序 xff0c 访问程序时不能访问数据 xff0c 属于分时复用 xff0c 同一时间只能读取其中一
  • C语言既然可以自动为变量分配内存,为什么还要用动态分配内存呢?

    已剪辑自 https mp weixin qq com s NRyM5KAm jrBImmkA2WYSA 不知道大家在学习C语言动态分配内存的时候 xff0c 有没有过这样的疑问 xff1a 既然系统可以自动帮我们分配内存 xff0c 为什
  • 分享一种通信协议的应用编程原理和思路

    已剪辑自 https mp weixin qq com s wy flva6pCNqHV3ObeLPCQ 嵌入式开发过程中 xff0c UART CAN USB等通信基本离不开通信协议 下面给大家分享一种通信协议 xff08 MAVLink
  • 一名智能驾驶产品经理的自我修养

    已剪辑自 https mp weixin qq com s fCSO7hmP3FP Xat NyFG0A 随着智能驾驶浪潮的兴起 xff0c 市场上产生了对相关人才的大量需求 xff0c 也诞生了一些传统汽车行业所没有的新兴岗位 其中 xf
  • 7个硬核嵌入式C进阶要点!

    已剪辑自 https mp weixin qq com s 2MLAK9JB oyLhc6HiXH2ww void表示的是无类型 xff0c 不可以采用这个类型声明变量或常量 xff0c 但是可以把指针定义为void类型 xff0c 如vo
  • 嵌入式软件分层框架设计,举了个例子

    文章目录 前言一 框架分层是什么 xff1f 二 框架分层的优劣势1 优势2 劣势 三 一个简单的例子四 总结 已剪辑自 https mp weixin qq com s m Q PaC0XlPSeoWrxIstg 前言 为了能够使得产品得
  • Windows下使用C语言的UDP编程接收网络调试助手发送的数据

    代码 span class token macro property span class token directive hash span span class token directive keyword include span
  • Windows下使用C语言的周期UDP编程同时发送和接收网络调试助手数据

    代码 xff1a span class token macro property span class token directive hash span span class token directive keyword include
  • Windows下使用C语言的周期多路UDP编程发送和接收网络调试助手数据

    代码 xff1a span class token macro property span class token directive hash span span class token directive keyword include

随机推荐

  • 哪一件事让你忽然意识到打工永无出路?

    我发誓我一定要做点什么 xff0c 所以我自己开了个公司 大概我任职某公司CTO的时候吧 我意识到了所谓的战略 技术 管理等综合能力 xff0c 不如销售跑去和客户喝一顿 xff0c 上千万的单就来了 我意识到我所谓的研发战略 xff0c
  • 如何让一个 C 语言项目调用另一个 C++ 项目中某些类所提供的接口?

    目前問題是這樣的 xff1a 有兩個項目 一個項目是用 C 43 43 寫的 裏面提供了一個輸入輸出接口 後來從外面弄來了另外一個項目 用 C 寫的 現在需要將 C 項目中所使用的原有接口替換為使用我們的 C 43 43 項目中提供的接口
  • STM32学习(二)

    常用开发工具简介 安装仿真器驱动 DAP仿真器免驱ST LINK仿真器驱动安装方法 xff1a A盘 6 xff0c 软件资料 1 xff0c 软件 5 xff0c 其他软件 ST LINK驱动及教程 为什么要安装CH340 USB串口驱动
  • 为什么我身边有人说我没有眼力见,眼力见是什么,应该怎么做?

    眼力见 主要描述一个人善于察言观色 为人殷勤 xff0c 还很有礼貌的素养 其实 xff0c 只要把自己的 姿态放低 xff0c 眼力见 自然就见长 大家有没有这种感觉 xff0c 工作中不少领导 前辈经常把 眼力见 这个词挂在嘴边 xff
  • 反应慢,没有眼力劲,看起来给别人一种老实的感觉,做起事情不太利索,接触让别人感觉有点傻。怎么办?

    内向的人 xff0c 缺乏社交 xff0c 就缺乏来自从小到大关系网的 经验叠加 比如 xff0c 你没钱 xff0c 但你有个哥们儿是富二代 xff0c 你们经常一起混 xff0c 那么你会从他身上得到很多 富有家庭对待事务的态度和想法
  • 遇事没有眼力见,反应不灵活,该怎么改善?

    说实话 xff0c 我也属于这种类型的人 说白了就是头脑简单 这个跟成长环境有关系 xff0c 没有经历过需要你去思考太多 xff0c 分析太多 xff0c 最后根据情况作出当时应该 需要做出的回应 和经历有关 如果你现在认为这个事情非常重
  • 如何快速读懂开源代码?

    文章目录 RUN起来 调试 把控关键数据结构和函数 从小的开始 关注一个模块 工具 一 阅读开源代码存在的一些误区 二 阅读代码的心态 三 阅读源码与 辅助材料 四 如何阅读开源代码 gdb 高级调试实战教程 电子书下载链接 xff1a 1
  • 关于我转行嵌入式的那些事

    文章目录 为什么想转行了 xff1f 一 工作环境问题 二 无休止的出差加班和混乱的作息时间 三 工作压力大 四 薪资上限低 xff0c 行业前景差 为什么选择嵌入式 转行前的学习 一 单片机开发 二 Linux应用开发 三 Linux驱动
  • QT的UDP通信详解

  • 这一年我的书单!

    已剪辑自 https mp weixin qq com s Uy3hsbQQY3U4h43rdWr8qA 昨天写了2022年的一些感悟 xff1a 我这一年的感悟 xff0c 在文章里我提到读书在精不在多 xff0c 能指导生活工作中实践的
  • 如何专业地命名嵌入式软件版本?

    已剪辑自 https mp weixin qq com s F XhvYy0IjTrdHIu2BLhNA 不知道大家发布软件的时候 xff0c 版本号是怎么命名的 xff1f 最常见的就是V1 0 0这种简单的形式命名 甚至有些同事直接用V
  • 万字长文细说 Code Review 的正确姿势

    已剪辑自 https mp weixin qq com s GWLlRkF1b6LnyIYZi NSdQ 随着研发团队规模的逐步扩大 xff0c 新项目及新成员越来越多 xff0c 如何做好 code review xff0c 把控研发人员
  • 50条C语言奇技淫巧,精品干货!

    已剪辑自 https mp weixin qq com s vvdvVMVmx3i 6eXjUUYfBQ 本文汇总了50条C语言奇技淫巧 xff0c 希望能对大家有所帮助 01 宏定义用do while 0 如果定义的宏函数后面有多条语句
  • FreeRTOS学习(一)

    裸机与RTOS对比 裸机 xff1a 又称为前后台系统 xff0c 前台系统指的是中断服务函数 xff0c 后台系统指的大循环 xff0c 即应用程序 实时性差 xff1a xff08 应用程序轮流执行 xff09 delay xff1a
  • 如何画架构图?

    在我们做系统架构设计时 xff0c 如何快速的向外界传达我们的设计思路 4 43 1试图适合我们厘清思路 表达自己的想法 在我们汇报 xff0c 争取领导层的认同支持更适合用架构图来表述我们的观点 架构图包括总体架构 逻辑架构 应用架构 技
  • 怎么做串口调试软件?

    嗯 说一下我自己写的串口助手吧 xff0c 名字叫 Bittly xff0c 样子呢长下面这个样子 Bittly 指令调试界面 1 需求确认 一开始使用的是类似于XCOM或者SSCOM之类的串口调试助手 xff0c 他们的优点是体积小 xf
  • 【需求专题】如何写好需求——INCOSE需求编写指南(1)

    已剪辑自 https mp weixin qq com s Z5VBTyV6j07JylDdOsFSxQ 编者按 如何写好需求是INCOSE 需求工作组编写的需求文本化表达指南 本指南是专门讲述如何在系统工程中对需求进行文本化表达 xff0
  • 怎么提高自己的系统设计和架构理论水平?

    文章目录 前言 1 无锁化 1 1 串行无锁 1 2 结构无锁 2 零拷贝 2 1 内存映射 2 2 零拷贝 3 序列化 3 1 分类 3 2 性能指标 3 3 选型考量 4 池子化 4 1 内存池 4 2 线程池 4 3 连接池 4 4
  • 30+男生程序员中年如何破局

    已剪辑自 https zhuanlan zhihu com p 596751971 1 最顶级的程序员根据自己的经验拼paper 拼专利 xff0c 成为不可替代的专家 最厉害的程序员拼的不是代码写的多牛逼 而是有多少paper多少顶尖专利
  • 为啥AI难落地?

    总在说AI落地难 xff0c 那为啥难落地 xff1f 以最典型的智慧城市业务来说 xff0c 就是接入网络摄像头 xff0c 然后识别里面的人 xff0c 判断是不是抽烟 打架 闯红灯 不带安全帽等 首先是连接网络摄像机 xff0c GB