上位机图像处理和嵌入式模块部署(流程)

news2024/12/25 0:46:20

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

        前面我们说过,传统图像处理的方法,一般就是pc+camera的处理方式。camera本身只是提供基本的raw data数据,所有的算法都是在pc上面完成的。而随着嵌入式硬件用的越来越多,为了实时性和稳定性的需要,很多的算法越来越多地运行在了嵌入式设备本地,这样相当于传统的普通传感器摇身一变,变成了智能传感器。如果真的是这样,那么处理流程上,和之前相比较会有什么不同呢?

1、上位机仍然可以运行算法

        即使传感器变成了智能传感器,上位机算法仍然是可以正常运行的,这一点和之前相比较没有差别。甚至于说,如果没有智能传感器的情况下,这个上位机仍然可以搭配传统的传感器一起使用。但是,个人觉得这种方法是有缺陷的,它的缺陷不在于技术本身,而是说商业上很容易被破解,无法有效地去保护开发者的利益。所以,上位机可以有,但是最好不要提供二次开发,这是底线。

2、上位机前期是可行性分析,后期是标定

        当项目还没有立项,甚至于还处于论证的情况下,这个时候上位机扮演的角色,更多的是可行性的分析。因为上位机只需要一个笔记本即可,相关的场景通过pc+camera,就可以马上看出效果来,所以在售前这部分应该还是无法取代的。但是项目一旦立项之后,后期上位机的角色马上就变成了标定和改进,因为这个时候工作的主体切换成了嵌入式系统,而不是上位机本身。

3、嵌入式系统不要局限于一个硬件上

        这里说的嵌入式系统,千万不要局限于一种类型的硬件。比如说,不能局限于nvidia、nxp、rockchip某一款硬件,而应该是根据实际的需要和场景来进行区分和处理。甚至于为了降成本的考虑,改成mcu都是有可能的。编写代码的时候,可以把上位机和嵌入式的代码放在一起,文档放在一起,这些都没有问题。但是实际使用的时候,就要去进行分门别类的编译。所以,哪怕一开始为了集中精力,专注于某一款硬件,后期一定要想办法拆开来,不管是为了成本,还是竞争力的考虑,这一步肯定要去做的。

        另外部分的算法、模型需要npu的加持,嵌入式上面的npu算力也原来越强,所以这部分用嵌入式模块来处理也是非常合适的。

4、多品牌camera、多品牌光源控制器的支持

        不管是上位机,还是嵌入式设备,有必要支持多个品牌的camera,多个品牌的光源控制器。光源控制器可能比较好处理一点,一般就是232、485接口即可。camera的话,则需要提供x86、arm两个平台的开发编译包,这样才可以实现这一点。

5、外部设备的支持

        除了camera之外,一般还需要支持一些其他的外设设备,比如plc设备、网络设备、can设备、485设备以及232设备等等。这部分可以先不着急处理,等到有实际项目的时候再去做比较好。一般来说,如果支持的设备比较多,品牌也比较多的话,这样可以在前期销售的时候,可以很快拿出方案,也算是不错的一个选择。

6、代理商模式

        如果全部只是一个上位机软件去实现图像处理,可能技术上是可行的,性能上稍微有折扣,但是差别不会很大。但是从商业上来说,这是一个险棋。目前大环境下,降本增效是主流,扩大生产已经过时。国内,看不见的软件,一般大家是不认可它的价值的,但是硬件则不一样。大家可以接受带算法的硬件卖高价,只要效果好。但是再好的软件,再优秀的算法,因为是看不见、摸不着,所以要想得到好的收益,这从逻辑上就讲不通。

        后期,如果要想将自己的产品做大,代理商模式是肯定需要的,这个时候如果还是仅有软件,那么风险很大,代理商也是不可控的。但是如果有了硬件,上位机不提供二次开发的软件接口,那么这个时候我们就可以通过硬件配货来有效地控制渠道、维护自己的正常权益,避免自己遭受损失。

        所以说,技术上可行的事情,一定要商业上也没有太大的问题才行,不然最终要么就是没有付费的可能,要么就是为他人做嫁衣裳,两者都是我们不希望看到的结果。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1406440.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

sublime text 开启vim模式

sublime text 开启vim模式 打开配置文件 mac下点击菜单栏 Sublime Text -> Settings... -> Settings 修改配置文件并保存 添加配置 // 开启vim模式 "ignored_packages": [// "Vintage", ], // 以命令模式打开文件 "vintage_start_in_comman…

【博客搭建记录贴】问题记录:hexo : 无法加载文件 C:\Program Files\nodejs\hexo.ps1,因为在此系统上禁止运行脚本。

1,背景 hexo(博客框架)安装完毕之后,正准备看看其版本,发现出现下面脚本禁止运行的错误。 PS C:\Users\PC> hexo -v hexo : 无法加载文件 C:\Program Files\nodejs\hexo.ps1,因为在此系统上禁止运行脚…

【Android】在WSA安卓子系统中进行新实验性功能试用与抓包(2311.4.5.0)

前言 在根据几篇22和23的WSA抓包文章进行尝试时遇到了问题,同时发现新版Wsa的一些实验性功能能优化抓包配置时的一些步骤,因而写下此篇以作记录。 Wsa版本:2311.40000.5.0 本文出现的项目: MagiskOnWSALocal MagiskTrustUserCer…

自然语言处理--概率最大中文分词

自然语言处理附加作业--概率最大中文分词 一、理论描述 中文分词是指将中文句子或文本按照语义和语法规则进行切分成词语的过程。在中文语言中,词语之间没有明显的空格或标点符号来分隔,因此需要通过分词工具或算法来实现对中文文本的分词处理。分词的…

RPC教程 3.服务注册

0. 前言 这一节要熟悉Go中的反射reflet,不然可能比较难理解。在使用到反射的一些函数时候,我也会讲解关于反射reflect的用法。 1.引出反射reflect 这个例子是表示客户端想使用Foo服务的Sum方法。即是想调用Foo结构体的Sum方法。 client.Call("F…

uniapp 在static/index.html中添加全局样式

前言 略 在static/index.html中添加全局样式 <style>div {background-color: #ccc;} </style>static/index.html源码&#xff1a; <!DOCTYPE html> <html lang"zh-CN"><head><meta charset"utf-8"><meta http-…

Java线程池,看这一篇足够

目录一览 Java线程池1. Executors提供6个线程池快捷创建方式2. ThreadPoolExecutor的7大参数3. 自定义线程池 Java线程池 上一篇《Async注解的注意事项》说到Async注解要配合自定义线程池一起使用&#xff0c;这一节说下Java的线程池。 1. Executors提供6个线程池快捷创建方式…

基于springboot+vue的小徐影城管理系统(前后端分离)

博主主页&#xff1a;猫头鹰源码 博主简介&#xff1a;Java领域优质创作者、CSDN博客专家、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战 主要内容&#xff1a;毕业设计(Javaweb项目|小程序等)、简历模板、学习资料、面试题库、技术咨询 文末联系获取 项目介绍…

一个处理Range List的面试题解法

大纲 题目解法Rangeaddremove ToolsRangeListaddremove 代码 最近看到一个比较有意思的面试题。题目不算难&#xff0c;但是想把效率优化做好&#xff0c;也没那么容易。 我们先看下题目 题目 // Task: Implement a class named RangeList // A pair of integers define a ra…

K8S搭建(centos)三、安装Docker

天行健&#xff0c;君子以自强不息&#xff1b;地势坤&#xff0c;君子以厚德载物。 每个人都有惰性&#xff0c;但不断学习是好好生活的根本&#xff0c;共勉&#xff01; 文章均为学习整理笔记&#xff0c;分享记录为主&#xff0c;如有错误请指正&#xff0c;共同学习进步。…

完美调试android-goldfish(linux kernel) aarch64的方法

环境要求 Mac m1Mac m1 中 虚拟机安装aarch64 ubuntu22.02Mac m1安装OrbStack&#xff0c;并在其中安装 ubuntu20.04&#xff08;x86_64&#xff09; 构建文件系统 在虚拟机 aarch64 ubuntu22.02中构建 安装必要的库 sudo apt-get install libncurses5-dev build-essenti…

工业空调协议转BACnet网关BA108

随着通讯技术和控制技术的发展&#xff0c;为了实现楼宇的高效、智能化管理&#xff0c;集中监控管理已成为楼宇智能管理发展的必然趋势。在此背景下&#xff0c;高性能的楼宇暖通数据传输解决方案——协议转换网关应运而生&#xff0c;广泛应用于楼宇自控和暖通空调系统应用中…

RK3399平台开发系列讲解(USB篇)USB协议层数据格式

🚀返回专栏总目录 文章目录 一、USB 资料二、协议层2.1、字节/位传输顺序2.2、SOP起始包2.3、SYNC同步域2.4、EOP 结束包(End of Packet)2.5、Packet内容2.5.1、PID:2.5.2、地址:2.5.3、帧号:2.5.4、数据域:

Linux——理解文件系统

目录 1、inode 2、硬链接、软链接 理解硬链接 软链接 3、静态库、动态库 静态库与动态库 生成静态库 生成动态库 使用动态库 运行动态库 使用外部库 库文件名称和引入库的名称 1、inode 使用ls -l命令不仅显示出了文件名&#xff0c;也可以显示出文件元数据 一行…

k8s 容器 java 应用内存限制不生效

一 k8s java 应用内存限制不生效 回顾&#xff1a;Linux杂谈之java命令 namespace负责资源隔离 cgroups负责资源限制 容器JVM最佳实践 Metaspace 是 非 Heap 内存 管理空间,那么 Heap 就是操作空间 JVM内存模型简介 隔离&#xff1a; 两个进程完全隔离感知&#xff1…

【STM32】STM32F4中USB的CDC虚拟串口(VCP)使用方法

文章目录 一、前言二、STM32CubeMX生成代码2.1 选择芯片2.2 配置相关模式2.3 设置时钟频率2.4 生成代码2.5 编译并下载代码2.6 结果2.7 问题 三、回环测试3.1 打开工程3.2 添加回环代码3.3 编译烧录并测试 四、出现问题和解决方法4.1 烧录总是要自己插拔USB4.2 自己生成的工程没…

141:vue+leaflet 利用高德逆地理编码,点击地图标记marker,popup地址信息

第141个 点击查看专栏目录 本示例的目的是介绍演示如何在vue+leaflet中利用高德逆地理编码,点击地图标记marker,popup地址信息 。主要利用高德地图的api将坐标转化为地址,然后在点击的位置,弹出弹窗,在里面显示出地址信息。 直接复制下面的 vue+leaflet源代码,操作2分钟…

14、Kafka ------ kafka 核心API 之 流API(就是把一个主题的消息 导流 到另一个主题里面去)

目录 kafka 核心API 之 流APIKafka流API的作用&#xff1a;流API的核心API&#xff1a;使用流API编程的大致步骤如下&#xff1a;代码演示 流API 用法MessageStream 流API 代码演示消息从 test1主题 导流到 test2主题演示使用匿名内部类对消息进行处理Topology 拓扑结构 讲解 代…

【AIGC】CLIP

CLIP的基本原理 对比学习&#xff1a; Clip使用对比学习来训练模型。对比学习的目标是通过将正样本&#xff08;相似的图像和文本对&#xff09;与负样本&#xff08;不相似的图像和文本对&#xff09;进行比较&#xff0c;从而使模型学会区分不同样本之间的差异。这有助于模型…

社区分享|百果园选择DataEase搭档蜜蜂微搭实现企业数据应用一体化

百果园&#xff0c;全称为深圳百果园实业&#xff08;集团&#xff09;股份有限公司&#xff0c;2001年12月成立于深圳&#xff0c;2002年开出中国第一家水果专卖店。截至2022年11月&#xff0c;百果园全国门店数量超过5600家&#xff0c;遍布全国140多个城市&#xff0c;消费会…