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

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

        对于一般的图像项目来说,图像处理只是工作当中的一部分。在整个项目处理的过程中有很多的内容需要处理,比如说了解需求、评估光源和镜头、调整算法、ip分配、设备对接、协议对接等等。所以大家说的图像处理,其实只是调整算法中的部分内容,其他几个部分的工作也是需要自己去沟通和完成的。

1、了解需求

        客户对于图像处理的心理预期一般是很高的,一般都要经历这么三个过程,从盼望、到失望、再到恢复信心。所以,这个过程中充分了解客户的需求,合理管理客户的期望是很重要的一个部分。盲目地去允诺是非常不足取的。因为,所有答应的条件,最终都是要一一兑现的,不要有侥幸的心理。

2、评估光源和镜头

        大部分同学都喜欢研究算法,但是对光源和镜头的了解很少。所以这个时候应该尽量了解客户的作业场景是什么样的,应该选择什么样的镜头,挑选什么样的光源。另外就是光源的部分,是自己控制比较好,还是采用固定光源曝光的形式。如果图像质量本身比较高,那么算法上面的调整和优化也会变得很容易。

3、调整算法

        如果项目本身不复杂,那么采用上位机软件+标定的方法一般都可以解决。但是如果项目本身定制的成分比较多,这个时候可能需要自己编写一个新的算法。不管是哪一种情况,都要求上位机本身具有很强的鲁棒性,既要支持流程编辑和算法标定,还要支持算法扩展和补充。一般来说,商业软件的价格都比较高,这一部分如果是自己来实现的话,难度还是比较大的。

        在这过程中,一定要注意算法和流程的分离。算法设计应该是一个一个的插件来实现,而算法流程则是根据客户的需求将不同的算法插入到作业流程当中。当然,这当中还会涉及到标定,而标定也是流程工作的一部分,这一部分和图像处理同样重要。

4、ip分配

        ip分配在工厂里面是很重要的一个环节。因为一个系统中有很多的设备,机器视觉一般扮演的就是传感器的角色,但是计算得到的结果,最终是要通过其他系统来完成进一步操作的。所以,这个时候,不同的设备是不是在同一网段里面,彼此ip怎么分配,工厂内部有没有mac管理,交换机和路由器有没有黑名单、白名单,这部分都是很重要的。

5、设备对接

        设备对接,这里说的主要是和机器视觉系统的对接。一般对接的设备有plc设备、io设备、tcp client设备、tcp server设备、can设备等等。如果是对接的内容比较简单,直接利用上位机脚本直接编辑对接的内容就可以了。如果对接的内容比较复杂一点,这个时候还需要自己用c# & wpf,或者是c++ & qt编写一个wcs或者wms,这都是有可能的。

        所以,在设备对接阶段,我们需要完成的工作主要是数据流的整理,即我们的数据需要发给哪些设备、怎么控制这些设备、怎么确认数据已经正常地发送给了这些设备。

6、协议对接

        简单的设备对接一般用脚本就可以实现,但是如果涉及到协议,这部分就会稍显复杂。协议对接的方法一般有两种方式,一种是http服务器对接,也就是我们去访问别人的http服务器接口。还有一种是数据库对接,这种方式就是对接别人web服务器的接口。不光是哪一种方式,用上位机的脚本直接去编写就不是很合适了。这个时候应该用c#或者是c++去转接一下协议内容即可。

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

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

二、ActiveMQ安装

ActiveMQ安装 一、相关环境二、安装Java8三、下载安装包四、启动五、其他命令六、开放端口七、后台管理 一、相关环境 环境:Centos7.9安装ActiveMQ版本:5.15.9JDK8 二、安装Java8 安装教程:https://qingsi.blog.csdn.net/article/details/…

react【三】受控组件/高阶组件/portals/fragment/严格模式/动画

文章目录 1、受控组件1.1 认识受控组件1.2 checkout1.3 selected1.4 非受控组件 2、高阶组件2.1 认识高阶组件2.2 应用1-props增强的基本使用2.3 对象增强的应用场景-context共享2.4 应用2-鉴权2.5 应用3 – 生命周期劫持2.6、高阶组件的意义 3、Portals4、fragment5、StrictMo…

17.3.1.6 自定义处理

版权声明:本文为博主原创文章,转载请在显著位置标明本文出处以及作者网名,未经作者允许不得用于商业目的。 模拟某款图像处理软件的处理,它只留下红色、绿色或者蓝色这样的单一颜色。 首先按照颜色划分了6个色系,分别…

disql备份还原

disql备份还原 前言 本文档根据官方文档,进行整理。 一、概述 在 disql 工具中使用 BACKUP 语句你可以备份整个数据库。通常情况下,在数据库实例配置归档后输入以下语句即可备份数据库: BACKUP DATABASE BACKUPSET db_bak_01;语句执行完…

java生态环境评价Myeclipse开发mysql数据库web结构java编程计算机网页项目

一、源码特点 java 生态环境评价管理系统是一套完善的java web信息管理系统,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,系统主要采用B/S模式开发。开发环境为 TOMCAT7.0,Myeclipse8.5开发,数据库为Mysq…

.netcore音乐播放器 musicPlayer

html音乐播放器 .net core mvc 音乐播放器 支持上传本地音乐到云端 支持通过文件夹创建歌单(不需要数据库和其他数据存储) 通过歌单分类 播放歌曲 支持播放暂停 上一首 下一首切换 支持显示歌曲列表 歌单切换 展示歌曲根据歌单名去获取歌曲显示 功能 版权原因 或者想创建自己的…

macOS 安装 conda

macOS 安装 conda 安装 conda参考 Conda是一个开源的软件包管理系统和环境管理系统,用于安装和管理软件包和其依赖项。 安装 conda mkdir miniconda3 cd miniconda3 bash Miniconda3-latest-MacOSX-x86_64.sh$ conda list参考 macOS 安装 conda开始使用conda

python+django学习交流论坛系统244t6

系统可以提供信息显示和相应服务,其管理员管理用户发布的博客文章以及用户之间的论坛交流信息,管理留言以及文章分类信息。用户在论坛交流模块发布帖子以及评论帖子,在前台查看和评论其他用户发布的博客文章,收藏博客文章&#xf…

esp8266-01s WIFI模块使用(一)- AT指令

时间记录:2024/2/15 一、注意事项 (1)使用英文双引号表示字符串数据 (2)默认波特率115200 (3)AT指令以“\r\n”结尾 (4)3.3V电源接口先连接单片机的3.3V,如…

阿里云“BGP(多线)”和“BGP(多线)_精品”区别价格对比

阿里云香港等地域服务器的网络线路类型可以选择BGP(多线)和 BGP(多线)精品,普通的BGP多线和精品有什么区别?BGP(多线)适用于香港本地、香港和海外之间的互联网访问。使用BGP&#xf…

用HTML5 Canvas创造视觉盛宴——动态彩色线条效果

目录 一、程序代码 二、代码原理 三、运行效果 一、程序代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <!-- 声明文档类型为XHTML 1.0 Transitional -…

ElasticSearch之search API

写在前面 本文看下查询相关内容&#xff0c;这也是我们在实际工作中接触的最多的&#xff0c;所以有必要好好学习下&#xff01; 1&#xff1a;查询的分类 主要分为如下2类&#xff1a; 1:基于get查询参数的URI search 2&#xff1a;基于post body的request body search&am…

Netty Review - 直接内存的应用及源码分析

文章目录 Pre概述应用访问效率&#xff1a; 堆内存 VS 直接内存申请效率&#xff1a; 堆内存 VS 直接内存数据存储结构&#xff1a; 堆内存 VS 直接内存结论 ByteBuffer.allocateDirect 源码分析unsafe.allocateMemory(size) ---> C方法 JVM参数 -XX:MaxDirectMemorySize直接…

隐函数的求导【高数笔记】

1. 什么是隐函数&#xff1f; 2. 隐函数的做题步骤&#xff1f; 3. 隐函数中的复合函数求解法&#xff0c;与求导中复合函数求解法有什么不同&#xff1f; 4. 隐函数求导的过程中需要注意什么&#xff1f;

Mysql运维篇(四) Xtarbackup--备份与恢复练习

一路走来&#xff0c;所有遇到的人&#xff0c;帮助过我的、伤害过我的都是朋友&#xff0c;没有一个是敌人。如有侵权&#xff0c;请留言&#xff0c;我及时删除&#xff01; 前言 xtrabackup是Percona公司CTO Vadim参与开发的一款基于InnoDB的在线热备工具&#xff0c;具有…

164基于matlab的奇异值分解、小波降噪、zoom细化

基于matlab的奇异值分解、小波降噪、zoom细化。程序已调通&#xff0c;可直接运行。 164 奇异值分解 小波降噪 zoom细化 (xiaohongshu.com)

Spring AMQP(3.1.1)设置ConfirmCallback和ReturnsCallback

文章目录 一、起因二、代码1. 定义exchange和queue2. RabbitTemplate3. EnhancedCorrelationData4. 发送消息 环境如下 VersionSpringBoot3.2.1spring-amqp3.1.1RabbitMq3-management 一、起因 老版本的spring-amqp在CorrelationData上设置ConfirmCallback。但是今天却突然发…

Python访问数据库

目录 SQLite数据库 SQLite数据类型 Python数据类型与SQLite数据类型的映射 使用GUI管理工具管理SQLite数据库 数据库编程的基本操作过程 sqlite3模块API 数据库连接对象Connection 游标对象Cursor 数据库的CRUD操作示例 示例中的数据表 无条件查询 有条件查询 插入…

【Java多线程】对进程与线程的理解

目录 1、进程/任务&#xff08;Process/Task&#xff09; 2、进程控制块抽象(PCB Process Control Block) 2.1、PCB重要属性 2.2、PCB中支持进程调度的一些属性 3、 内存分配 —— 内存管理&#xff08;Memory Manage&#xff09; 4、线程&#xff08;Thread&#xff09;…

Unity(单元测试)在STM32上的移植与应用

概述 Unity Test是一个为C构建的单元测试框架。本文基于STM32F407为基础&#xff0c;完全使用STM32CubeIDE进行开发&#xff0c;移植和简单使用Unity。 单片机型号&#xff1a;STM32F407VET6 软件&#xff1a;STM32CubeIDE Version: 1.14.1 Unity Version&#xff1a;2.…