当前位置: 首页 > news >正文

Linux上位机开发实践(从MPP平台到产品)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing @163.com】

        

        对于mpp平台来说,现在很多soc芯片厂商都会提供类似的功能。或许不叫这个名字,但是功能方面却是类似的。这些基本功能一般都会包括vi(视频输入)、vo(视频输出)、isp(图像处理)、venc(图像&视频编码)、vdec(视频解码)、npu(智能模块)、ai(音频输入)、ao(音频输出)、aenc(音频编码)、adec(音频解码)。这些功能肯定是需要提前把驱动移植好的。等到驱动ok了,通过自由组合这些模块,就能做出各种各样的产品。

        有的ipcam还会包含ippu(图像后处理单元,image post process unit),它是相对于isp而言的。如果是mipi camera,一般就是vi-》isp-》ippu;如果是usb camera,那么直接vi-》ippu即可,因为usb camera内部已经做过一遍isp了。ippu实现的功能主要就是整体图像的处理,比如缩小、放大、截取、osd、时间戳、画中画等等,而isp则是单个像素pixel的调整。

        当然除了ippu,还有很多网络模块。这些网络模块一般会实现rtsp、rtp、rtmp、onvif等网络协议。不过鉴于这些网络模块都是软件实现的,所以通常不会单独拿出来讨论。

1、vi-》vo

        视频输入,直接到视频输出。这部分主要用在一些检测、放大设备上。比如教学设备,直接把老师手写的内容,经过camera传给投影仪;工厂检测设备,即把pcb拍照得到的图像传到显示器,供工人分析。

2、ai-》ao

        最简单的音频输入,直接到音频输出,就是扩音器。

3、vi-》isp-》venc

        这里包含了isp,很明显就是mipi camera。如果是usb camera,那么可以缩减成vi-》venc。所以,视频输入经过isp之后,就可以编码成图片,或者是本地视频流。这一类设备应用很广,就是各种各样的记录仪设备。比如说,大家常见的汽车行车记录仪、运动相机、行政部门的执法记录仪等等,都可以看成是这类设备。

4、vi-》isp-》venc-》rtsp

        和3相比较,这里多了一个rtsp,也就是说,本地保存的视频流,可以通过rtsp网络协议送出去。一般本地rtsp都是作为服务器端运行的,其他设备想要访问当前设备的视频流,就可以以客户端的角色来进行访问。这也是大多数ipcam设备运行的方法。

5、file-》vdec-》vo

        这个应用也比较容易想到,就是从文件种获取视频信息,然后通过显示器播放出去。类似的有h264视频文件、jpg图片文件等等。很多的广告机,就是这么来做的。

6、rtsp-》vdec-》vo

        这种设备是和4对应的,它不需要venc,也就是编码功能,本身只需要解码功能。即从rtsp获得视频流之后,经过解码,就可以通过视频显示设备显示出来。如果需要保存,那么就可以解码的同时,直接保存视频流,生成文件,也是可以的。很多的nvr设备,就是这么开发出来的。

7、vi-》isp-》npu

        随着人工智能的流行,很多的设备都带有npu功能,这样训练好的model,就可以直接跑在npu上面,非常方便。和pc相比较,嵌入式设备性价比高,有了npu的加持,不需要性能很好的cpu,就可以实现不错的ai效果。目前,消费领域、汽车领域、工业领域、医疗领域都有很多的ai应用。常见的应用,就是人脸、车牌、ocr识别等等。

8、ai-》aenc,file-》adec-》ao

        和视频处理一样,音频也有类似的处理过程,比如说录音设备、音频播放设备等等。各种各样的录音笔、音乐播放设备,就是这种运行模式。

9、ai-》npu

        人工智能的范围很广,除了视频图像,还有音频、自然语言处理。以音频为例,常用的音频智能应用,就有语音识别、语音生成、语音交互等等。所以,这里的npu,不仅仅可以给视频使用,其实也是可以给音频使用的。

        ipcam soc从最基础的视频、音频播放保存,到网络交互,再到ai应用,在不同领域、不同方向和不同场景都有着巨大的应用市场。上面谈到的几种应用只是抛砖引玉,实际大家还可以根据客户需求,创造出更多的产品形态。比如说usb工业相机就不在上面的模式当中,即vi-》isp-》venc-》usb。大家不妨多学学这个平台,一定会有很大的收获。

相关文章:

  • AI大模型从0到1记录学习 day10
  • SvelteKit 最新中文文档教程(16)—— Service workers
  • 【Unity】记录TMPro使用过程踩的一些坑
  • SpringBoot整合LogStash,LogStash采集服务器日志
  • vue 4 组件通信
  • C语言字符串处理相关函数详解
  • T11 TensorFlow入门实战——优化器对比实验
  • NE 综合实验3:基于 IP 配置、链路聚合、VLAN 管理、路由协议及安全认证的企业网络互联与外网访问技术实现(H3C)
  • Spring Data JPA方法命名规则的完整总结,按场景分类整理
  • 解决在pycharm下载的python在cmd命令行无法识别的问题
  • 蓝桥杯最后十天冲刺day 1
  • mysql表连接方式
  • MSYS2学习笔记
  • Unity 2022.3.x部分Android设备播放视频黑屏问题
  • 华为三进制逻辑与高维量子计算的对比分析
  • 微服务面试题:配置中心
  • Docker学习--容器生命周期管理相关命令--start/stop/restart命令
  • 装饰器模式:如何用Java打扮一个对象?
  • 安卓应用开发学习:查看手机传感器信息
  • 流量监控工具iptraf-ng学习
  • 阜宁网站制作服务商/网上推销产品的软件
  • 高端网站建设 企业网站建站/百度推广一年多少钱
  • 广州专业网站制作平台/小程序开发公司十大排名
  • 品牌vi设计方案/深圳高端seo外包公司
  • 网站备案信息可以改吗/网络营销代运营外包公司
  • 手册设计网站/做销售怎么和客户聊天