上位机图像处理和嵌入式模块部署(qmacvisual缺失的光源控制)

news2024/11/24 6:47:14

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

        有些场景下面,是不需要光源和光源控制的,比如说利用摄像头识别对应区域的库位,这部分直接利用红外光采集对应的图像就可以了。但是还有一些场景,是需要进行光源控制的,比如说工业场景下的物体测量、定位、检测等等。并且,这些光源控制当中,有些需要常亮的,有些则自己控制就可以了。这部分目前在qmacvisual下面是不存在的,建议同学们可以自己花钱去买一些光源和光源控制器。

1、光源的颜色

        光源可以是很多的颜色,比如说白光,这是最常见的。当然除了白光之外,还有红光、蓝光,这些也不鲜见。

2、光源的形态

        从光源的形态来说,有点光源、条形光源、环形光源和面光源好几种。刚开始学习的朋友可以从最简单的环形光源开始学习。

3、光源放置方法

        常见的光源放置方法,就是自上而下、自下而上、侧面斜放等几种方式。当然,有的同学可能是以前没有接触过光源,所以这个时候,可以选择最简单的自上而下+环形光源+常亮的形式来学习,摄像头就放在环形光源的中间就可以了。

4、光源激励方法

        这个我们前面说过很多次,目前来说最为常见的就两种,一种是常亮光源,还有一种是触发光源。第一种比较好理解,也就是光源打开之后,基本上维持常开的状态。后面一种,则是在检测物体或者测量物体的时候才保证光源是打开的状态,其他时候都是关闭的。

5、光源控制

        说到光源控制,这里就不得不提到光源控制器。在机器视觉上面,光源和光源控制器是分开来的部分。也就是说,光源的强度全部都是通过光源控制器来实现完成的。

        如上图所示,光源控制器一般就长这个样子。最上面的LED显示,主要用来控制发光强度。接下来三个按钮分别是菜单、递增和递减,一般和LED配合使用。第三部分功能较多。左边四个channel,表示可以最多控制四个光源。右侧四个TR输出,代表了触发开关,COM为接地。下面的24V+和24V-代表了电源。最最下面的RS232,则意味着我们可以通过软件编码的方式实现光源控制器的控制。

6、光源控制器的通讯协议

        光源控制器一般都是通过mcu来实现的。但是各家的协议没有标准,稍微有些差别,这在电商网站上面一般都可以查得到。以其中一家的协议为例,

        这是其中一家的协议。特征字就$。指令字有1、2、3、4、7、8、9。比如1是打开通道,2是关闭通道、3是设置亮度、4是读取亮度等等。通道字代表具体的光源通道。数据则搭配前面的指令字使用,假设指令是3,这里的数据是56,就写成038,也就是16进制,最大是255。剩下来2个字节是校验码,就是前面6个字节的校验码,这个modbus协议一个道理。

        所以,整体来看,如果我们发出的命令是 $ 3 2 038 1E,它的意思就是往channel2设置亮度为56的数值。 所以,这个协议还是非常简单的。

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

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

相关文章

找出mongodb的jumbo块并进行分裂

https://www.cnblogs.com/abclife/p/15968628.html 根据这篇文档中的脚本,在我们自己的环境中跑了下,第一次跑的结果如下: 运行完上面跑出的split脚本后,还是存在jumbo块,第二次跑出的结果: 从上面结果可以…

3、JVM对象的创建于内存分配原理

对象的创建 对象创建的主要流程: 1.类加载检查 虚拟机遇到一条new指令时,首先将去检查这个指令的参数是否能在常量池中定位到一个类的符号引用,并且检查这个符号引用代表的类是否已被加载、解析和初始化过。如果没有,那必须先执行相应的类加…

【hive】远程remote debug hive的方法,用于hive监听器/钩子编写

背景 写hive监听器时候需要拿到hive对象但hive是在集群linux主机上运行的。通过jdbc提交的sql具体执行过程不会再idea中运行。所以如果需要拿到hive对象有可能存在两个思路: (1)想办法写个钩子或者监听器,将需要的内容写成json字…

【微信小程序】canvas开发笔记

【微信小程序】canvasToTempFilePath:fail fail canvas is empty 看说明书 最好是先看一下官方文档点此前往 如果是canvas 2d 写canvas: this.canvas,,如果是旧版写canvasId: ***, 解决问题 修改对应的代码,如下所示,然后再试试运行&#x…

请求分发场景下的鉴权问题

说明:记录一次对请求分发,无法登录系统的问题。 场景 如下,在此结构下,如何判断该用户是已登录的用户; 常规操作,用户登录后给用户发Token,同时将发放的Token存入到Redis中。要求用户后续请求…

鸿蒙OS开发实例:【Native C++】

介绍 本篇Codelab主要介绍如何使用DevEco Studio创建一个Native C应用。应用采用Native C模板,实现使用NAPI调用C标准库的功能。使用C标准库hypot接口计算两个给定数平方和的平方根。在输入框中输入两个数字,点击计算结果按钮显示计算后的数值。 相关概…

【论文研读】Geometric Deep Learning on Molecular Representations

Geometric Deep Learning on Molecular Representationshttps://arxiv.org/pdf/2107.12375.pdf 一、Background 随着网络时代的发展,生活中产生的数据量越来越多,但数据大体分为两类:欧氏数据、非欧氏数据。如图为两类常见的数据&#xff0c…

物联网全栈智能应用实训系统

物联网全栈智能应用实训系统是一款集硬件、软件、网络、数据分析与应用开发于一体的综合性实训平台。它旨在帮助学习者全面掌握物联网技术的各个环节,从硬件设备选型、通信协议理解、软件开发、数据分析到应用部署,都能得到充分的实践锻炼。 一、产品构…

Harmony鸿蒙南向驱动开发-SDIO接口使用

功能简介 SDIO是安全数字输入输出接口(Secure Digital Input and Output)的缩写,是从SD内存卡接口的基础上演化出来的一种外设接口。SDIO接口兼容以前的SD卡,并且可以连接支持SDIO接口的其他设备。 SDIO接口定义了操作SDIO的通用…

【InternLM 实战营第二期-笔记1】书生浦语大模型开源体系详细介绍InternLM2技术报告解读(附相关论文)

书生浦语是上海人工智能实验室和商汤科技联合研发的一款大模型,很高兴能参与本次第二期训练营,我也将会通过笔记博客的方式记录学习的过程与遇到的问题,并为代码添加注释,希望可以帮助到你们。 记得点赞哟(๑ゝω╹๑) 书生浦语大模型开源体系…

Linux 删除文件或文件夹命令(新手)

一、删除文件夹 rm -rf 路径/目录名 1 强制删除文件夹及其子文件。 二、删除文件/文件夹:rm 命令 rm 删除命令,它可以永久删除文件系统中指定的文件或目录。 rm [选项] 文件或目录 选项: -f:强制删除(force&am…

QQ 邮箱使用 SMTP 发送邮件报错:550 The From header is missing or invalid

文章目录 场景描述问题排查根据提示查看原因查看封装的 message 个人简介 场景描述 QQ 邮箱使用 SMTP 发送邮件报错:550 The From header is missing or invalid: 失败原因:(550, bThe "From" header is missing or invalid. Ple…

【Kafka】Zookeeper集群 + Kafka集群

Zookeeper 概述 Zookeeper是一个开源的分布式的,为分布式框架提供协调服务的Apache项目。 Zookeeper 工作机制★★★ Zookeeper从设计模式角度来理解: 1)是一个基于观察者模式设计的分布式服务管理框架; 它负责存储和管理大家都关…

【LeetCode】二叉树类题目详解

二叉树 二叉树的理论基础 二叉树是结点的度数之和不超过2的树,二叉树总共有五种基本形态 二叉树的种类主要有: 满二叉树完全二叉树 二叉树的存储方式 顺序存储链式存储 二叉树的遍历方式 先序遍历(深度优先搜索)中序遍历&…

什么是RMVB视频?如何把视频转成RMVB格式?视频格式转换的方法

一,什么是RMVB视频格式 RMVB是一种视频文件格式,它基于RealNetworks公司开发的RealMedia编解码器,被广泛应用于互联网上的视频流媒体传输和下载。RMVB文件通常具有较小的文件大小,同时保持较高的视频质量,因此在网络传…

透视晶圆制造黑匣子:RFID赋能智能生产,构建晶圆盒全程精准追溯体系

透视晶圆制造黑匣子:RFID赋能智能生产,构建晶圆盒全程精准追溯体系 应用背景 在全球半导体产业链中,晶圆盒作为承载硅片的重要载体,其生产过程的精细化管理和追溯显得至关重要。近年来,一种名为RFID(Radi…

【vue】购物车案例优化

对 购物车案例 进行优化 用watch实现全选/取消全选用watch实现全选状态的检查用computed计算总价格 <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-w…

javaScript设计模式之简单工厂模式

简单工厂模式(Simple Factory):又叫静态工厂方法&#xff0c;由一个工厂对象决定创建某一种产品对象类的实例。主要用来创建同一类对象。 场景一 假设我们需要计算圆形和矩形的面积 function Circle(radius) {this.radius radius;}Circle.prototype.getArea function() {re…

iMazing如何备份手机资料 iPhone的资料可以传到iPad里吗 iphone备份到mac 苹果导入备份

在当今信息化快速发展的时代&#xff0c;手机已经成为我们生活中不可或缺的一部分。随着资料的积累&#xff0c;备份手机数据成了一个重要的问题。本文将介绍iMazing如何备份手机资料&#xff0c;并为大家解答“iPhone的资料可以传到iPad里吗”这一问题。这不仅可以帮助你有效管…

股票价格预测 | Python使用GAN预测股票价格

文章目录 效果一览文章概述代码设计效果一览 文章概述 生成对抗网络(GAN)是一种强大的机器学习模型,用于生成以假乱真的数据。然而,使用GAN来预测股票价格可能会面临以下挑战: 数据可用性:GAN需要大量的数据进行训练,以便生成准确的输出。对于股票价格预测,历史股票价…