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

【工控】线扫相机小结

背景简介

我目前接触到的线扫相机有两种形式:

无采集卡,数据通过网线传输。
配备采集卡,使用PCIe接口。

第一种形式的数据通过网线传输,速度较慢,因此扫描和生成图像的速度都较慢,参数设置主要集中在相机本身。第二种形式的相机配备采集卡,通常速度更快,但由于相机和采集卡都需要配置,操作相对复杂。

在采集卡中,我遇到过两种连接方式:光口和Camera Link。这两种方式的速度更快,但由于需要配置卡和相机,容易出现配置混乱的情况。这次,我以海康的光口相机为例,介绍一些实际应用中的经验(实战为主,理解不一定正确,请各位斧正!)

基础描述

与面阵相机不同,线扫相机每次只能捕捉一行像素,因此需要移动多次扫描,才能构成完整的一帧图像。线扫相机通常配备编码器,实时反馈被观察物体或相机的移动情况。物体的移动会触发编码器发出脉冲,每个脉冲都会触发相机拍摄一行像素的图像。随着物体继续运动,编码器发出更多的脉冲,线扫相机会生成多行像素的图像,最终形成完整的一帧图像。

上面这对话设计到很多的概念,我们根据海康的一款光口相机,一个个的讲。

关于图像的畸变。

线扫相机经常会遇到,图片被拉长或者压瘪, 如何避免这种情况呢?
首先,一个脉冲的触发,意味着物体移动了相应的距离(物体移动触发编码器旋转产生脉冲)。
如果一个脉冲对应距离的大小和一个像素的高度相等,那么图片就会显示正常,会被被拉长或者压瘪

由于一个脉冲对应的距离通常不可能恰好等于一个像素的高度,线扫相机会提供一个分频器(Frequency Divider)。分频器通常设置编码器为信号源,对编码器的脉冲信号进行分配,以确保一个脉冲对应的移动距离与一个像素的高度相等,从而生成正常比例的图像。
在这里插入图片描述
这里我设置了100的分频,图像几乎就是正常的了。(ps: 这里我设置的是相机的参数,而非采集卡的参数,后面会详细介绍。)

帧扫描,行扫描,帧触发,行触发

首先要意识到,扫描和触发是不同的概念。网络上介绍触发的很多,但是没有谈及到扫描这个概念。
在海康的相机配置中这些 ‘概念’ 就有对应的配置,如果不能分清楚这些概念,就会在繁杂的配置中迷失。
采集卡的配置界面

相关文章:

【工控】线扫相机小结

背景简介 我目前接触到的线扫相机有两种形式: 无采集卡,数据通过网线传输。 配备采集卡,使用PCIe接口。 第一种形式的数据通过网线传输,速度较慢,因此扫描和生成图像的速度都较慢,参数设置主要集中在相机本身。第二种形式的相机配备采集卡,通常速度更快,但由于相机和…...

将Web应用部署到Tomcat根目录的三种方法

将应用部署到Tomcat根目录的三种方法 将应用部署到Tomcat根目录的目的是可以通过"http://[ip]:[port]"直接访问应用,而不是使用"http://[ip]:[port]/[appName]"上下文路径进行访问。 方法一:(最简单直接的方法&#xff0…...

工业和信息化部教育与考试中心计算机相关专业介绍

国家工信部的认证证书在行业内享有较高声誉。 此外,还设有专门的工业和信息化技术技能人才数据库查询服务,进一步方便了个人和企业对相关职业能力证书的查询需求。 序号 专业工种 级别 备注 1 JAVA程序员 初级 职业技术 2 电子…...

第二证券:生物天然气线上交易达成 创新探索互联互通、气证合一

8月20日,上海石油天然气生意中心在国内立异推出生物天然气线上生意。当日,绿气新动力(北京)有限公司(简称“绿气新动力”)挂单的1500万立方米生物天然气被百事食物(我国)有限公司&am…...

重磅!RISC-V+OpenHarmony平板电脑发布

仟江水商业电讯(8月18日 北京 委托发布)RISC-V作为历史上全球发展速度最快、创新最为活跃的开放指令架构,正在不断拓展高性能计算领域的边界。OpenHarmony是由开放原子开源基金会孵化并运营的开源项目,已成为发展速度最快的智能终…...

[DL]深度学习_扩散模型

扩散模型原理 深入浅出扩散模型 一、概念简介 1、Denoising Diffusion Probalistic Models,DDPM 1.1 扩散模型运行原理 首先sample一个都是噪声的图片向量,这个向量的shape和要生成的图像大小相同。通过Denoise过程来一步一步有规律的滤去噪声。Den…...

AI学习记录 - 如何快速构造一个简单的token词汇表

创作不易,有用的话点个赞 先直接贴代码,我们再慢慢分析,代码来自openai的图像分类模型的一小段 def bytes_to_unicode():"""Returns list of utf-8 byte and a corresponding list of unicode strings.The reversible bpe c…...

JAVA中的数组流ByteArrayOutputStream

Java 中的 ByteArrayOutputStream 是一个字节数组输出流,它允许应用程序以字节的形式写入数据到一个字节数组缓冲区中。以下是对 ByteArrayOutputStream 的详细介绍,包括其构造方法、方法、使用示例以及运行结果。 一、ByteArrayOutputStream 概述 Byt…...

S3C2440中断处理

一、中断处理机制概述 中断是CPU在执行程序过程中,遇到急需处理的事件时,暂时停止当前程序的执行,转而执行处理该事件的中断服务程序,并在处理完毕后返回原程序继续执行的过程。S3C2440提供了丰富的中断源,包括内部中…...

《数据分析与知识发现》

《数据分析与知识发现》介绍 1 期刊定位 《数据分析与知识发现》(Data Analysis and Knowledge Discovery)是由中国科学院主管、中国科学院文献情报中心主办的学术性专业期刊。期刊创刊于2017年,由《现代图书情报技术》(1985-20…...

IaaS,PaaS,aPaaS,SaaS,FaaS,如何区分?

​IaaS, PaaS,SaaS,aPaaS 还有一种 FaaS ,这几个都是云服务中常见的 5 大类型: IaaS:基础架构即服务,Infrastructure as a Service PaaS:平台即服务,Platform as a Service aPaaS&…...

软件测试工具分享

要想在测试中旗开得胜,趁手的“武器”那是相当重要(说人话,要保证测试质量和效率,测试工具也很重要)。现在,小酋打算亮一亮自己的武器库,希望不要闪瞎你的眼(天上在打雷,…...

word翻译工具有哪些?5个工具助你快速翻译Word文件

无论是商业沟通还是文化交流,都需要跨越语言障碍。而文档翻译则是这一过程中的重要环节之一。 想象一下,当你需要将一份重要的Word文档从一种语言翻译成另一种语言时,如果手动逐句翻译不仅耗时耗力,还可能因为文化差异导致误解。…...

【51单片机】ds18b20驱动,11.0592MHZ,使用DS18b20

文章目录 ds18b20.h #include <reg52.h> #include <intrins.h> #include <math.h>// 管脚定义 sbit DS18B20_DATA_PIN = P1 ^ 0; // DS18B20数据口定义/******************************************************************************* * 函 数 名 …...

Vue 导航条+滑块效果

目录 前言代码效果展示导航实现代码导航实现代码导航应用代码前言 总结一个最近开发的需求。设计稿里面有一个置顶的导航条,要求在激活的项目下面展示个下划线。我最先开始尝试的是使用 after 的伪类选择器,直接效果一样,但是展示的时候就会闪现变化,感觉不够自然,参考了一…...

Android:使用Gson常见问题(包含解决将Long型转化为科学计数法的问题)

一、解决将Long型转化为科学计数法的问题 1.1 场景 将一个对象转为Map类型时&#xff0c;调用Gson.fromJson发现&#xff0c;原来对象中的long类型的personId字段&#xff0c;被解析成了科学计数法&#xff0c;导致请求接口失败&#xff0c;报参数错误。 解决结果图 1.2、Exa…...

【Win开发环境搭建】Redis与可视化工具详细安装与配置过程

&#x1f3af;导读&#xff1a;本文档提供了Redis的简介、安装指南、配置教程及常见操作方法。包括了安装包的选择与配置环境变量的过程&#xff0c;详细说明了如何通过修改配置文件来设置密码和端口等内容。同时&#xff0c;文档还介绍了如何使用命令行工具连接Redis&#xff…...

Compose知识分享

前言 “Jetpack Compose 是一个适用于 Android 的新式声明性界面工具包。Compose 提供声明性 API&#xff0c;让您可在不以命令方式改变前端视图的情况下呈现应用界面&#xff0c;从而使编写和维护应用界面变得更加容易。” 以上是Compose官网中对于Compose这套全新的Androi…...

python-study-day5

urllib中handler的使用 import urllib.request url "http://www.baidu.com" headers {User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36 Edg/122.0.0.0 } # 请求地址的定制 reques…...

Telegram mini app 本地开发配置

前言&#xff1a; 为了能在telegram里本地调试mini app&#xff0c;参考了网上很多方案&#xff0c;踩了不少坑。最后整了一个适合自己的方案&#xff0c;记录一下。 这个方案一定不是最好的&#xff0c;不过是目前适合我上手开发的方案了。 本文章适合需要在 telegram 本地…...

python发票查验接口助您拒绝做糊涂账、发票ocr

发票识别发票查验接口让发票真假立现。仅需一键上传发票图片&#xff0c;即可实现发票真伪的秒速、批量验证&#xff0c;操作简单方便&#xff0c;避免因人工核验失误所导致“错账”现象的发生&#xff0c;减轻财务工作负担&#xff0c;提升企业工作效率&#xff0c;降低因假票…...

【Linux】线程控制|POSIX线程库|多线程创建|线程终止|等待|线程分离|线程空间布局

目录 ​编辑 POSIX线程库 多线程创建 独立栈结构 获取线程ID pthread_self 线程终止 return终止线程 pthread_exit pthread_cancel 线程等待 退出码问题 线程分离 测试 线程ID及地址空间布局 ​编辑 POSIX线程库 pthread线程库是 POSIX线程库的一部分&#xf…...

JimuReport 积木报表 v1.8.0 版本发布,开源可视化报表

项目介绍 一款免费的数据可视化报表工具&#xff0c;含报表和大屏设计&#xff0c;像搭建积木一样在线设计报表&#xff01;功能涵盖&#xff0c;数据报表、打印设计、图表报表、大屏设计等&#xff01; Web 版报表设计器&#xff0c;类似于excel操作风格&#xff0c;通过拖拽完…...

性能优化理论篇 | swap area是个什么东西

我们知道每台计算机的内存&#xff08;RAM&#xff09;都是有限的&#xff0c;而我们的应用程序需要加载到内存才能被运行&#xff0c;如果一台机器运行多个应用程序时&#xff0c;内存可能会耗尽。Linux 系统中的“交换空间&#xff08;也称为交换分区&#xff09;”可以帮助缓…...

Photoshop (PS)下载安装win/mac版

目录 一、概述 下载 二、安装步骤 三、使用教程 四、快捷键汇总 一、概述 Adobe Photoshop&#xff0c;简称“PS”&#xff0c;是由Adobe Systems开发和发行的图像处理软件。它主要处理以像素所构成的数字图像&#xff0c;涵盖了诸多领域&#xff0c;如图像编辑、图像合成…...

初识redis:Set类型

Set有很多种含义&#xff0c;比如集合&#xff0c;比如设置&#xff08;和get相对应&#xff09;。 在这里我们说的set是指的redis中的集合&#xff0c;并且这里的集合是无序的&#xff0c;和之前的list是对应的。 List &#xff1a; [1,2,3] 和 [2,1,3] 是两个不同的listSe…...

Qt 设置QTableView的某列或某行只读

我的做法是实现一个委托&#xff08;delegate&#xff09;&#xff0c;然后把它设给你要只读的列或行 class ReadOnlyDelegate: public QItemDelegate {public:ReadOnlyDelegate(QWidget *parent NULL):QItemDelegate(parent){}QWidget *createEditor(QWidget *parent, const…...

这么多焊工证,我该拥有那种焊工证呢?

焊接与切割作为特种作业工作&#xff0c;国家根据不同的环境和作业特点&#xff0c;从事焊接工作的焊工需要持证上岗工作&#xff0c;那么是不是焊接就只有一种工作证呢&#xff1f;如果不是&#xff0c;焊工所在的工作岗位需要什么样的焊工证&#xff0c;如何取得焊工证&#…...

HttpWebRequest访问https请求被中止: 未能创建 SSL/TLS 安全通道

编写代码&#xff0c;使用HttpWebRequest访问网页&#xff0c;错误提示&#xff1a; 未能创建 SSL/TLS 安全通道 页面本来是Http网址&#xff0c;突然转换为https网址&#xff0c;所以遇到这个问题也算正常。将解决方法记录下来给需要的人。 //只需要在 HttpWebRequest 发送…...

响应式Web设计:纯HTML和CSS的实现技巧

文章目录 响应式Web设计&#xff1a;纯HTML和CSS的实现技巧一、响应式Web设计概述二、实现响应式设计的技巧1. 使用媒体查询&#xff08;Media Queries&#xff09;2. 使用弹性布局&#xff08;Flexbox&#xff09;3. 使用网格布局&#xff08;CSS Grid&#xff09;4. 使用相对…...

现在网站都是拿什么软件做的/seo的搜索排名影响因素有哪些

2019独角兽企业重金招聘Python工程师标准>>> 要在网页做一个类似windows“我的电脑”那种文件夹文件的展示&#xff0c;并且能上传下载删除重命名等功能。 &#xff08;一&#xff09;找JS插件&#xff0c;读取文件夹内容&#xff0c;利用插件展示 1.看到几个“推荐…...

如何建立一个免费的网站/seo网络优化公司

什么是内存泄露 内存泄漏指由于疏忽或错误造成程序未能释放已经不再使用的内存。内存泄漏并非指内存在物理上的消失&#xff0c;而是应用程序分配某段内存后&#xff0c;由于设计错误&#xff0c;导致在释放该段内存之前就失去了对该段内存的控制&#xff0c;从而造成了内存的浪…...

wordpress 如何安装教程视频/关闭站长工具seo综合查询

在项目开发过程中&#xff0c;我们难免会用到自己去制作自定义的VIEW控件&#xff0c;之后我们别的项目如果需要的话就直接将其复制到对应的项目中使用&#xff0c;虽说这么做是一个解决问题的方法&#xff0c;但毕竟不是很好。 原因是&#xff0c;当我们项目积累越来越多&…...

山东莱芜金点子信息港/伊春seo

sleep与wait区别&#xff1a;1、sleep方法是线程静态方法&#xff0c;wait方法是Object对象方法&#xff1b;2、sleep使线程休眠&#xff0c;不会释放锁&#xff1b;wait方法是在获取锁情况下进行等待的&#xff0c;等待时会释放锁&#xff1b;3、都可以响应中断。public class…...

如何选择邯郸网站制作/邯郸今日头条最新消息

最常用的 Sublime快捷键&#xff1a;...

石家庄大型网络公司/seo优化推广技巧

python标准库sys sys模块包括了一组非常实用的服务&#xff0c;内含很多函数方法和变量&#xff0c;用来处理Python运行时配置以及资源&#xff0c;从而可以与前当程序之外的系统环境交互&#xff0c;如&#xff1a;python解释器。 sys模块的常见函数列表(import sys)&#xff…...