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

基于海思soc的智能产品开发(视频的后续开发)

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

        前面我们讨论了camera,也讨论了屏幕驱动,这些都是基础的部分。关键是,我们拿到了这些视频数据之后,是否还需要做一些后面的工作。难道,拿到这些视频数据之后,仅仅是为了lcd显示一下,是否有必要保存下来、送出去,或者是从视频中提一些信息呢。

        截图是hdmi转csi2的设计,呼应文章最后一小段内容。

1、mcu、fpga、soc处理视频的驱动差不多

        其实,不光soc可以处理视频,mcu和fpga也是可以处理视频的。只不过mcu处理的视频,一般sensor都自带isp功能,fpga处理sensor则比较麻烦一点,编译起来也不方便。相比较而言,soc处理视频会复杂一点,分成了i2c驱动、mipi驱动、isp驱动、uvc驱动等几个部分。对于mcu和fpga的驱动,大家可以参考某火、某原子的资料。对于soc资料,i2c驱动、mipi驱动、uvc驱动这些都可以找到,但是isp,一般厂家都只是提供工具,不会提供对应驱动代码的。客户会使用、会配置isp即可。

        比如,这是v3s驱动中mipi的代码,

https://github.com/aodzip/sun6i-mipi-csi

        假设sensor用的是ov5640,驱动代码在这,

https://elixir.bootlin.com/linux/v5.2.21/source/drivers/media/i2c/ov5640.c

2、视频编码

        和传统pc编码相比较,嵌入式soc上面的视频编码一般都是硬件完成的。常见的编码有h264、h265。具体的编码,通常都是硬件来完成的,而把h264、h265组合成mp4、avi这样的工作,就会用ffmepg来完成。毕竟对于软件来说,实时编码几乎是不可能的,只要靠硬件来实现实时的编码操作。

3、视频解码

        很多时候,视频编、解码不一定是同时存在的。比如说,ipcam上面,很多soc只有编码。而dvr等很多设备,则只有视频解码。这里面主要还是基于成本和市场的考虑。当然,如果不考虑成本,或者soc的价格足够高,这个时候视频编、解码就会都存在了。

4、isp功能

        虽然都叫isp,但是不同厂家的isp差异很大。可以这么说,一般的小厂soc也就是做一些基本的图像处理,比如自动曝光、自动白平衡、自动对焦、黑电平、左右翻转、上下反转、噪声处理、osd这些。而大厂的soc,这方面做的要多得多,不仅引入更多的isp图像算法,比如去雾算法、畸变矫正等等,还会引入更多的ai model对isp进行处理。所以大家虽然名字都叫isp,但是差异还是非常大的。

        如果本身对isp的要求比较高,可以考虑大厂的soc,反之为了降成本的话,则可以选择一般的soc,甚至是自带部分isp功能的sensor,都是可以的。

5、存储

        本地存储是最容易想到的功能。一般的行车记录仪、运动相机,基本上就是编码+lcd显示/本地保存这样的思路。

6、npu处理

        现在图像处理,除了图像本身,还会引入越来越多的ai功能。目前来说,刚需的ai功能有这几个部分,人脸识别、车牌识别、ocr识别、指纹识别等等。npu的话,不必注重数值越大越好,主打一个够用就行。毕竟一分钱,一分货。

7、机器视觉

        图像本身除了用来看,还可以从中提取到很多的有用信息。这个时候,可以把一些常规的机器视觉算法移植到嵌入式设备上,这样设备摇身一变,就是智能嵌入式设备了。

8、网络处理

        目前视频处理这块很火,有一部分就是基于网络的处理。网络的带宽一般都是大小一定的,我们总是希望图像要尽量地好,但是带宽要尽量地低,延迟也要尽可能地低,所以这里面能做的工作还是非常多的。常见的rtsp、rtmp未必能满足我们要求,有些场景需要我们自定义协议才能去解决。

        网络这部分,如果是后端处理,一般就是ipcam;如果是前端处理,一般就是dvr。不过大家可以扩展一下思路,毕竟还可以用于飞控、监控、医疗等很多领域。

9、fpga导出,接入csi2

        有些算法如果为了低延时和高性能,引入fpga也是有可能的。这种情况下,就是fpga接入sensor,对图像进行预处理之后,再把图像传给soc的csi2接口,进行后续的处理。fpga虽然处理图像比较方便,但是没有linux的帮助,很多事情都做不了,也不方便。所以,fpga+soc这样的处理模式,还是非常方便的。

10、csi2接入转换芯片

        很多时候,我们会认为,csi2接口只能接入sensor,其实除了camera sensor之外,还可以是fpga的接口,甚至是其他芯片转换过来的数据,比如hdmi转换过来的mipi数据。大家试想一下,如果是hdmi转换过来的数据,不就是一个视频采集设备吗?现在的销售直播、游戏直播、综艺直播这么火,这方面肯定有很大的市场。

相关文章:

基于海思soc的智能产品开发(视频的后续开发)

【 声明:版权所有,欢迎转载,请勿用于商业用途。 联系信箱:feixiaoxing 163.com】 前面我们讨论了camera,也讨论了屏幕驱动,这些都是基础的部分。关键是,我们拿到了这些视频数据之后,…...

创建 pdf 合同模板

创建 pdf 合同模板 一、前言二、模板展示三、制作过程 一、前言 前段时间要求创建“pdf”模板,学会了后感觉虽然简单,但开始也折腾了好久,这里做个记录。 二、模板展示 要创建这样的模板 三、制作过程 新建一个“Word”,这里命…...

2024 年度学习总结

目录 1. 前言 2. csdn 对于我的意义 3. 写博客的初衷 3.1 现在的想法 4. 写博客的意义 5. 关于生活和博客创作 5.1 写博客较于纸质笔记的优势 6. 致 2025 1. 前言 不知不觉, 来到 csdn 已经快一年了, 在这一年中, 我通过 csdn 学习到了很多知识, 结识了很多的良师益友…...

CSS笔记基础篇02——浮动、标准流、定位、CSS精灵、字体图标

黑马程序员视频地址: 前端Web开发HTML5CSS3移动web视频教程https://www.bilibili.com/video/BV1kM4y127Li?vd_source0a2d366696f87e241adc64419bf12cab&spm_id_from333.788.videopod.episodes&p70https://www.bilibili.com/video/BV1kM4y127Li?vd_source…...

C++ 面向对象(继承)

三、继承 3.1 继承的概念 基于一个已有的类 去重新定义一个新的类,这种方式我们叫做继承 关于继承的称呼 一个类B 继承来自 类 A 我们一般称呼 A类:父类 基类 B类: 子类 派生类 B继承自A A 派生了B 示例图的语法 class vehicle // 车类 {}class …...

Top期刊算法!RIME-CNN-BiLSTM-Attention系列四模型多变量时序预测

Top期刊算法!RIME-CNN-BiLSTM-Attention系列四模型多变量时序预测 目录 Top期刊算法!RIME-CNN-BiLSTM-Attention系列四模型多变量时序预测预测效果基本介绍程序设计参考资料 预测效果 基本介绍 基于RIME-CNN-BiLSTM-Attention、CNN-BiLSTM-Attention、R…...

数据结构 数组

1. 常见的错误 这里我要特别纠正一个“错误”。我在面试的时候,常常会问数组和链表的区别,很多人都回答说,“链表适合插入、删除,时间复杂度O(1);数组适合查找,查找时间复杂度为O(1)”。 实际上&#xff…...

Kivy App开发之UX控件Bubble气泡

kivy提供了一个提示气泡的小控件Bubble,使用时可以指定气泡箭头的方向以及显示的图像,还可以作为容器添加其他小控件。 常用属性如下 属性说明orientation气泡内子项的排序方式,可设置为vertical或horizontal,默认horizontalarrow_pos箭头相对于气泡的位置,可设置为left_…...

从零到一:打造属于你的AI智能体,支持本地部署

国外卷智能体,国内也都在搞 AI Agent,2025 年也将成为 Agent 的元年。构建智能体主要两种情况,一个是工作流模式,另外一种是直接开发应用,接下来分别给大家介绍一下两种产品和构建过程。工作流模式,以 Coze…...

成就与远见:2024年技术与思维的升华

个人主页:chian-ocean 前言: 2025年1月17日,2024年博客之星年度评选——创作影响力评审的入围名单公布。我很荣幸能够跻身Top 300,虽然与顶尖博主仍有一定差距,但这也为我提供了更加明确的发展方向与指引。展望崭新的2025年&…...

深搜与回溯——扫地机器人问题解析与代码实现

一、题目内容 题目描述 扫地机器人在一个 nm 的网格中从左上角(1,1)开始清扫。它按照以下规则移动: 如果当前位置的右边(同一行,下一列)没有被清扫过,它会向右移动。 如果右边无法移动&#xf…...

【大数据2025】Hadoop 万字讲解

文章目录 一、大数据通识大数据诞生背景与基本概念大数据技术定义与特征大数据生态架构概述数据存储数据计算与易用性框架分布式协调服务和任务调度组件数仓架构流处理架构 二、HDFSHDFS 原理总结一、系统架构二、存储机制三、数据写入流程四、心跳机制与集群管理 安全模式&…...

win内核内部直接irp读取文件写入文件

#include <ntifs.h> #include <ntddk.h> #define TAG_NAME tlfF // FltF in reverse #define BUFFER_SIZE PAGE_SIZE // 驱动设备扩展结构 typedef struct _DEVICE_EXTENSION { PDEVICE_OBJECT DeviceObject; UNICODE_STRING DeviceName; UNICODE_STRIN…...

1. 基于图像的三维重建

1. 基于图像的三维重建 核心概念三维重建中深度图、点云的区别&#xff1f;深度图点云总结 深度图到点云还需要什么步骤&#xff1f;1. **获取相机内参**2. **生成相应的像素坐标**3. **计算三维坐标**4. **构建点云**5. **处理颜色信息&#xff08;可选&#xff09;**6. **去除…...

如何确保Python爬虫不违反微店规定

在使用Python爬虫获取微店商品详情时&#xff0c;确保爬虫行为符合微店的规定和相关法律法规至关重要。以下是一些关键步骤和注意事项&#xff0c;帮助你合法合规地使用爬虫技术&#xff1a; 一、遵守法律法规 在使用爬虫技术时&#xff0c;必须严格遵守《网络安全法》、《个…...

Spring Event和MQ的区别和使用场景

概念 Spring事件&#xff08;Spring Event&#xff09;是Spring框架的一项功能&#xff0c;它允许不同组件之间通过发布-订阅机制进行解耦的通信。 MQ一般是一个独立的中间件&#xff0c;它可以通过消息队列对消息进行传递和存储&#xff0c;生产者将消息发送到MQ&#xff0c;…...

SpringBoot:websocket 实现后端主动前端推送数据

简单说明下websocket实用场景。 实时通信领域&#xff1a;社交聊天弹幕多玩家游戏协同编辑股票基金实时报价体育实况更新视频会议/聊天基于位置的应用在线教育智能家居等需要高实时性的场景 一、服务端代码 pom.xml&#xff1a; <dependencies><dependency><…...

嵌入式硬件篇---PID控制

文章目录 前言第一部分&#xff1a;连续PID1.比例&#xff08;Proportional&#xff0c;P&#xff09;控制2.积分&#xff08;Integral&#xff0c;I&#xff09;控制3.微分&#xff08;Derivative&#xff0c;D&#xff09;控制4.PID的工作原理5..实质6.分析7.各种PID控制器P控…...

小程序获取微信运动步数

1、用户点击按钮&#xff0c;在小程序中触发getuserinfo方法&#xff0c;获取用户信息 <scroll-view class"scrollarea" scroll-y type"list"><view class"container"><button bind:tap"getLogin">获取</button&…...

5G 核心网 相关概念快速入门

在我们开始阅读3GPP协议来学习5G核心网之前&#xff0c; 不妨来看看我之前整理的PPT&#xff0c;快速学习核心网相关概念&#xff0c; 以及5G转发面PFCP协议的相关核心知识。 涵盖了最精简的核心骨干内容&#xff0c;助你轻松上阵。 讲解目标 3GPP和相关协议 5G核心网架构模…...

分享一个网络智能运维系统

项目简介 网络智能运维系统是一款面向网络设备的一体化智能运维管理平台&#xff0c;旨在帮助企业 IT 运维团队高效、自动化地完成网络设备的日常巡检、配置备份、批量操作及定时任务调度等核心工作。系统支持多品牌设备&#xff08;华为、H3C、思科、锐捷、Juniper、MikroTik …...

SenseVoice-Small ONNX乡村振兴:方言农技指导语音→标准化种植手册生成

SenseVoice-Small ONNX乡村振兴&#xff1a;方言农技指导语音→标准化种植手册生成 1. 项目背景与价值 在广大农村地区&#xff0c;农业技术指导往往面临着一个现实难题&#xff1a;很多经验丰富的老农更习惯用方言交流&#xff0c;而现代化的种植技术资料大多使用标准普通话…...

OpenClaw模型热切换:Qwen3.5-9B不同量化版本在线对比

OpenClaw模型热切换&#xff1a;Qwen3.5-9B不同量化版本在线对比 1. 为什么需要模型热切换 上周我在用OpenClaw处理一批产品截图分析任务时&#xff0c;遇到了一个典型的技术选择困境&#xff1a;4bit量化的Qwen3.5-9B模型虽然推理速度快&#xff0c;但在处理复杂场景图片时经…...

3小时搞定OpenClaw飞书机器人:Phi-3-mini-128k-instruct对话集成

3小时搞定OpenClaw飞书机器人&#xff1a;Phi-3-mini-128k-instruct对话集成 1. 为什么选择OpenClaw飞书Phi-3-mini组合 上周三下午4点&#xff0c;我正在为团队周会纪要焦头烂额时&#xff0c;突然想到&#xff1a;能不能让AI自动把飞书会议录音转成结构化纪要&#xff1f;经…...

GraalVM Native Image内存模型深度解构:从Class Initialization Order到Heap Snapshot Graph的7层映射关系图

第一章&#xff1a;GraalVM Native Image内存模型的理论基石与设计哲学GraalVM Native Image 的内存模型并非传统 JVM 堆内存的简单移植&#xff0c;而是基于静态分析与封闭世界假设&#xff08;Closed World Assumption&#xff09;重构的全新范式。它在编译期即确定所有可达类…...

AI落地业务流程:别犯这两个错误!这才是人机协作的正确姿势

很多团队一提到 AI 进入业务流程&#xff0c;最容易滑向两个极端。一个极端是“既然 AI 很强&#xff0c;就让它全自动做完”&#xff1b;另一个极端是“既然不放心&#xff0c;那就什么都别让它碰”。真正能进生产环境的做法&#xff0c;通常都不在这两头。 Human-in-the-Loop…...

OpenClaw替代脚本:Qwen3.5-9B实现复杂自动化优势

OpenClaw替代脚本&#xff1a;Qwen3.5-9B实现复杂自动化优势 1. 为什么需要重新思考自动化工具链 三周前的一个深夜&#xff0c;我盯着屏幕上第17次报错的Python脚本发呆。这个用来批量重命名设计稿文件的脚本&#xff0c;因为文件名中突然出现的emoji字符再次崩溃。就在这个…...

5个关键场景深度解析:为什么你需要这个免费的Windows自动点击器

5个关键场景深度解析&#xff1a;为什么你需要这个免费的Windows自动点击器 【免费下载链接】AutoClicker AutoClicker is a useful simple tool for automating mouse clicks. 项目地址: https://gitcode.com/gh_mirrors/au/AutoClicker 在现代数字工作流程中&#xff…...

OpenClaw 大结局——接入个人微信俏

本课概览 Microsoft Agent Framework (MAF) 提供了一套强大的 Workflow&#xff08;工作流&#xff09; 框架&#xff0c;用于编排和协调多个智能体&#xff08;Agent&#xff09;或处理组件的执行流程。 本课将以通俗易懂的方式&#xff0c;帮助你理解 MAF Workflow 的核心概念…...

Qwen3.5-27B多场景落地:教育答题助手、工业质检报告生成、保险定损图分析

Qwen3.5-27B多场景落地&#xff1a;教育答题助手、工业质检报告生成、保险定损图分析 1. 模型概述 Qwen3.5-27B是Qwen官方发布的视觉多模态理解模型&#xff0c;具备强大的文本对话与图片理解能力。该模型已在4 x RTX 4090 D 24GB环境完成部署&#xff0c;提供以下核心功能&a…...