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

选型 之 工业相机篇

一、概述

23年24年行情不会好,公司各种想办法裁员,在大陆这个大熔炉中只能不断地提炼。我个人主要是在工业领域做2D图像算法和3D算法,但是现在出去都需要全能人才 方案、算法、运动控制等,我目前最大的短板就是方案,在去年的几个面试中方案是我的最大减分项,下面我就整理去年的面试经验方案已经我收集到的网上的资料做个整理学习。

需求分析

二、工业相机介绍

0、相机结构

1、芯片尺寸 (靶面尺寸)

芯片尺寸(Sensor Size):传感器的感光面积大小,通常采用对角线长度来表示尺寸规格,单位:英寸。
由于图像传感器行业历史发展原因,这里的 1“=16mm。
例如:2/3”即为相机的对角线尺寸2/3”(11mm),垂直和水平传感器尺寸分别为6.6mm x 8.8mm。

2、像元尺寸 和分辨率、 精度、放大倍率

像元尺寸

像元尺寸指芯片像元阵列上每个像元的实际物理尺寸,例如 3.75umx3.75um 等
像元尺寸=传感器尺寸(靶面尺寸)/分辨率(像元个数)
这样就会分别得到宽度及高度上的像元尺寸,
像元 尺寸从某种程度上反映了芯片的对光的响应能力,像元尺寸越大,能够接收到的光子数量越 多,在同样的光照条件和曝光时间内产生的电荷数量越多

图像分辨率

分辨率:这里图像传感器的分辨率指的是传感器上的像元数量

 一个相机的分辨率是2448(H)×2048(V),表示每行的像元数量是2448,像元的行数是2048,此相机的分辨率是500万像素

精度

精度指一个像素表示实际物体的大小,用(um*um)/pixel 表示,精度和视野有关
注意:
    像元尺寸并不 等于精度, 像元尺寸是相机机械构造时固定的,选项选的就是这个
精度=单个像素尺寸= 视野宽/宽度分辨率 =视野高/高度分辨率
这个一定要分清

放大倍率

放大倍率=像元尺寸/像素分辨率

3、芯片分类

相机基础知识讲解:CMOS和CCD_什么是ccd和cmos?-CSDN博客

类型分为( Charge Coupled Device, 电荷耦合 元件)工业相机和 CMOS (金属氧化物半导体元件)工业相机两类

CCD -Charge Coupled Device-电荷耦合元件

cmos 金属氧化物半导体元件

 区别

4、相机分辨率分类

相机分辨率,相机每次采集图像的像素点数,也是指这个相机总共有多少个感光晶片,
通常用万个为单位表示,以矩阵排列,通常相机产品在介绍时会说有千万像素、百万像素等
分辨率越高,成像后的图像像素数就越高,图像就越清晰。常用的工业面阵相机分辨率
130 万、 200 万、 500 万、 1200 万、 2000 万、 2500 万、 6500 万、 15000 万等;对于线阵
相机而言,分辨率就是传感器水平方向上的像素数,常见有 1K 2K 6K 8K 12K 16K

案例

5、面阵线阵分类

工业相机主要有面阵相机和线阵相机, 对于静止检测或者一般低速的检测,优先考虑面
阵相机,对于大幅面高速运动或者滚轴等运动的特殊应用考虑使用线阵相机。
在选择线阵相机进行检测的时候,要着重考虑机械 Y 方向的震动导致的图像偏差

6、传输接口方式分类

根据传输的距离、传输的数据大小(带宽)选择 USB2.0/3.0 1394 Camerlink
GIGE 千兆网接口等相机,以下是各接口特性表

USB 接口: usb2.0 支持热拔热插、使用便捷、标准统一、可连接多个设备、相机可通过
USB 线缆供电。但没有标准的协议、主从结构, CPU 占用率高、带宽没有保证。 usb3.0 的接
口一般都是可以自供电,但是也可以再接一个电源;在传输协议方面, USB3.0 除了支持传
统的 BOT 协议,可以完全发挥出 5Gbps 的高速带宽优势,不过协议的稳定性没有 Gige 接口
稳定,传输距离短。
Gige 千兆以太网接口:是一种基于千兆以太网通信协议开发的相机接口标准;适用于
工业成像应用,通过网络传输无压缩视频信号;拓展性好,传输数据长度最长可伸展至 100m
(转播设备上可无限延长);带宽达 1Gbit ,因此大量的数据可即时得到传输; 可使用标准
NIC 卡(或 PC 上已默认安装);经济性好,可使用廉价电缆(可使用通用的 Ethernet
缆( CAT-6 )和标准的连接器;可以很容易集成,且集成费用低;可管理维护性及广泛应用
性。
Camerlink 接口: 是一种串行通讯协议。采用 LVDS 接口标准,具有速度快、抗干扰能
力强、功耗低。从 Channel link 技术上发展而来的,在 Channel link 技术基础上增加了一些传
输控制信号,并定义了一些相关传输标准。协议采用 MDR-26 针连接器。高速率,带宽可达
6400Mbps 、抗干扰能力强、功耗低。
Gige 接口简单方便的进行多相机设置,支持 100 米线材输出。 Camera Link 接口是专门
针对高速图像数据需求的标准接口。 USB 3.0 接口具有简单易用,实时性好的特点,很多高
帧率的相机也是 USB3.0 的接口。目前在机器视觉中,应用最广泛的接口是 Gige (以太网)
接口,以太网接口在传输速度、距离、成本等方面较其他接口具有很大的优势。

7、 工业镜 头的接口

最常用的是C,CS,M12,M42,M58这五种

科普:工业相机 镜头接口的种类 - 知乎

 接口

 

 

镜头选项网站

V社区-机器智能技术交流-轻松学会镜头选型

http://www.lotsmv.com/calc.html

相关文章:

选型 之 工业相机篇

一、概述 23年24年行情不会好,公司各种想办法裁员,在大陆这个大熔炉中只能不断地提炼。我个人主要是在工业领域做2D图像算法和3D算法,但是现在出去都需要全能人才 方案、算法、运动控制等,我目前最大的短板就是方案,在…...

深入解析美颜SDK和动态贴纸技术的工作原理与应用

美颜SDK和动态贴纸技术作为图像处理领域的瑰宝,为用户提供了实时、高质量的美化效果。 一、美颜SDK的工作原理 美颜SDK是一种集成在移动应用、直播平台中的处理工具,通过算法实现实时美颜效果。 1.人脸检测与关键点定位 美颜的第一步是识别图像中的人…...

java代码中调用自定义函数

定义函数 CREATE DEFINERrootlocalhost FUNCTION test_fun1(num1 FLOAT,num2 FLOAT) RETURNS float BEGINDECLARE SUM FLOAT DEFAULT 0;SET SUMnum1num2;RETURN SUM; END <select id"cunchu" resultType"java.util.Map">SELECT test_fun1(1,2) as r…...

备战蓝桥杯---数据结构与STL应用(基础实战篇1)

话不多说&#xff0c;直接上题&#xff1a; 当然我们可以用队列&#xff0c;但是其插入复杂度为N,总的复杂度为n^2,肯定会超时&#xff0c;于是我们可以用链表来写&#xff0c;同时把其存在数组中&#xff0c;这样节点的访问复杂度也为o(1).下面是AC代码&#xff1a; 下面我们来…...

项目解决方案:非执法视频监控系统项目设计方案

目 录 一、概述 &#xff08;一&#xff09;前言 &#xff08;二&#xff09;设计思路 &#xff08;三&#xff09;设计原则 1、实用性 2、可靠性 3、安全性 4、先进性 5、开放性 6、易管理、易维护 &#xff08;四&#xff09;设计依据 二、方案总…...

网络安全01--负载均衡

目录 一、环境准备 1.1三台虚拟机 二、开始搭建负载均衡&#xff1a; 2.1准备一下源 2.2正式安装 2.3Nginx安装情况 三、负载均衡--轮询&#xff08;round robin&#xff09; 3.1在 http 部分添加如下负载均衡配置&#xff1a; 3.2简单解释一下server端&#xff1a; …...

Mamba系列日积月累(一):状态空间模型SSM的离散化过程推导

文章目录 1. 背景基础知识1.1 什么是状态空间模型&#xff08;State Space Model&#xff0c;SSM&#xff09;&#xff1f;1.2 什么是离散化&#xff08;Discretization&#xff09;&#xff1f;1.3 为什么需要离散化&#xff1f; 2. SSM离散化过程推导2.1 为什么在离散化过程中…...

React中使用LazyBuilder实现页面懒加载方法二

前言&#xff1a; 在一个表格中&#xff0c;需要展示100条数据&#xff0c;当每条数据里面需要承载的内容很多&#xff0c;需要渲染的元素也很多的时候&#xff0c;容易造成页面加载的速度很慢&#xff0c;不能给用户提供很好的体验时&#xff0c;懒加载是优化页面加载速度的方…...

安全测试:史上最全的攻防渗透信息收集方法、工具!

信息收集的意义 信息收集对于渗透测试前期来说是非常重要的。正所谓&#xff0c;知己知彼百战不殆&#xff0c;信息收集是渗透测试成功的保障&#xff0c;只有我们掌握了目标网站或目标主机足够多的信息之后&#xff0c;才能更好地进行渗透测试。 信息收集的方式可以分为两种…...

minio2023版本安装对象存储文件迁移

一、环境 minio版本&#xff1a;minio-20230320201618.0.0.x86_64.rpm 二、安装 将下载好的rpm包放在文件夹下&#xff0c;然后cd到该目录 sudo rpm -ivh minio-20230320201618.0.0.x86_64.rpm 三、启动 1、minio的位置 which minio cd /usr/local/bin 2、启动 &#xff08;可…...

###C语言程序设计-----C语言学习(7)#(调试篇)

前言&#xff1a;感谢您的关注哦&#xff0c;我会持续更新编程相关知识&#xff0c;愿您在这里有所收获。如果有任何问题&#xff0c;欢迎沟通交流&#xff01;期待与您在学习编程的道路上共同进步。 一. 程序调试 1.程序调试介绍&#xff1a; 程序调试是软件开发过程中非常重…...

腾讯云Linux(OpenCloudOS)安装tomcat9(9.0.85)

腾讯云Linux(OpenCloudOS)安装tomcat9 下载并上传 tomcat官网 https://tomcat.apache.org/download-90.cgi 下载完成后上传至自己想要放置的目录下 解压文件 输入tar -xzvf apache-tomcat-9.0.85.tar.gz解压文件&#xff0c;建议将解压后的文件重新命名为tomcat,方便后期进…...

动态添加字段和注解,形成class类,集合对象动态创建Excel列

一.需求 动态生成Excel列&#xff0c;因为Excel列是通过类对象字段注解来添加&#xff0c;在不确定Excel列数的情况下&#xff0c;就需要动态生成列&#xff0c;对应类对象字段也需要动态生成&#xff1b; 二.ByteBuddy字节码增强动态创建类 1.依赖 <dependencies><…...

Python爬虫---Scrapy框架---CrawlSpider

CrawlSpider 1. CrawlSpider继承自scrapy.Spider 2. CrawlSpider可以定义规则&#xff0c;再解析html内容的时候&#xff0c;可以根据链接规则提取出指定的链接&#xff0c;然后再向这些链接发送请求&#xff0c;所以&#xff0c;如果有需要跟进链接的需求&#xff0c;意思就是…...

关机恶搞小程序

1. system("shutdown")的介绍 当system函数的参数是"shutdown"时&#xff0c;它将会执行系统的关机命令。 具体来说&#xff0c;system("shutdown")的功能是向操作系统发送一个关机信号&#xff0c;请求关闭计算机。这将触发操作系统执行一系列…...

《HTML 简易速速上手小册》第9章:HTML5 新特性(2024 最新版)

文章目录 9.1 HTML5 新增标签和属性9.1.1 基础知识9.1.2 案例 1&#xff1a;创建一个结构化的博客页面9.1.3 案例 2&#xff1a;使用新的表单元素创建事件注册表单9.1.4 案例 3&#xff1a;创建一个具有高级搜索功能的搜索表单 9.2 HTML5 表单增强9.2.1 基础知识9.2.2 案例 1&a…...

计算机网络之NAT

NAT&#xff08;网络地址转换&#xff0c;Network Address Translation&#xff09;是一种网络技术&#xff0c;用于在一个网络与另一个网络之间重新映射IP地址。NAT最常见的应用是在家庭和小型办公室的路由器中&#xff0c;用于将私有&#xff08;内部&#xff09;IP地址转换为…...

SQL - 数据操作语句

SQL - 数据操作语句 文章目录 SQL - 数据操作语句数据操作语言-DML1 新增2 修改3 删除4 清空 数据类型1 数值类型2 字符串类型3 日期时间类型 数据操作语言-DML 概念&#xff1a; DML&#xff08;Data Manipulation Language&#xff09;, 数据操作语言。对数据表数据的增、删…...

【Python笔记-设计模式】单例模式

一、说明 单例是一种创建型设计模式&#xff0c;能够保证一个类只有一个实例&#xff0c; 并提供一个访问该实例的全局节点。 (一) 解决问题 维护共享资源&#xff08;数据库或文件&#xff09;的访问权限&#xff0c;避免多个实例覆盖同一变量&#xff0c;引发程序崩溃。 …...

Java使用io流生成pdf文件

首先生成pdf和正常请求接口一样&#xff0c;直接写~ Controller层&#xff1a; 第一个注解&#xff1a;最顶层增加 Controller 注解&#xff08;控制器&#xff09;不多讲了 直接加上。 第二个注解&#xff1a;最顶层增加 CrossOrigin 注解此注解是为了浏览器请求的时候防…...

(LeetCode 每日一题) 3442. 奇偶频次间的最大差值 I (哈希、字符串)

题目&#xff1a;3442. 奇偶频次间的最大差值 I 思路 &#xff1a;哈希&#xff0c;时间复杂度0(n)。 用哈希表来记录每个字符串中字符的分布情况&#xff0c;哈希表这里用数组即可实现。 C版本&#xff1a; class Solution { public:int maxDifference(string s) {int a[26]…...

在软件开发中正确使用MySQL日期时间类型的深度解析

在日常软件开发场景中&#xff0c;时间信息的存储是底层且核心的需求。从金融交易的精确记账时间、用户操作的行为日志&#xff0c;到供应链系统的物流节点时间戳&#xff0c;时间数据的准确性直接决定业务逻辑的可靠性。MySQL作为主流关系型数据库&#xff0c;其日期时间类型的…...

Qt Widget类解析与代码注释

#include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this); }Widget::~Widget() {delete ui; }//解释这串代码&#xff0c;写上注释 当然可以&#xff01;这段代码是 Qt …...

条件运算符

C中的三目运算符&#xff08;也称条件运算符&#xff0c;英文&#xff1a;ternary operator&#xff09;是一种简洁的条件选择语句&#xff0c;语法如下&#xff1a; 条件表达式 ? 表达式1 : 表达式2• 如果“条件表达式”为true&#xff0c;则整个表达式的结果为“表达式1”…...

React19源码系列之 事件插件系统

事件类别 事件类型 定义 文档 Event Event 接口表示在 EventTarget 上出现的事件。 Event - Web API | MDN UIEvent UIEvent 接口表示简单的用户界面事件。 UIEvent - Web API | MDN KeyboardEvent KeyboardEvent 对象描述了用户与键盘的交互。 KeyboardEvent - Web…...

Axios请求超时重发机制

Axios 超时重新请求实现方案 在 Axios 中实现超时重新请求可以通过以下几种方式&#xff1a; 1. 使用拦截器实现自动重试 import axios from axios;// 创建axios实例 const instance axios.create();// 设置超时时间 instance.defaults.timeout 5000;// 最大重试次数 cons…...

JVM暂停(Stop-The-World,STW)的原因分类及对应排查方案

JVM暂停(Stop-The-World,STW)的完整原因分类及对应排查方案,结合JVM运行机制和常见故障场景整理而成: 一、GC相关暂停​​ 1. ​​安全点(Safepoint)阻塞​​ ​​现象​​:JVM暂停但无GC日志,日志显示No GCs detected。​​原因​​:JVM等待所有线程进入安全点(如…...

【学习笔记】erase 删除顺序迭代器后迭代器失效的解决方案

目录 使用 erase 返回值继续迭代使用索引进行遍历 我们知道类似 vector 的顺序迭代器被删除后&#xff0c;迭代器会失效&#xff0c;因为顺序迭代器在内存中是连续存储的&#xff0c;元素删除后&#xff0c;后续元素会前移。 但一些场景中&#xff0c;我们又需要在执行删除操作…...

从面试角度回答Android中ContentProvider启动原理

Android中ContentProvider原理的面试角度解析&#xff0c;分为​​已启动​​和​​未启动​​两种场景&#xff1a; 一、ContentProvider已启动的情况 1. ​​核心流程​​ ​​触发条件​​&#xff1a;当其他组件&#xff08;如Activity、Service&#xff09;通过ContentR…...

[特殊字符] 手撸 Redis 互斥锁那些坑

&#x1f4d6; 手撸 Redis 互斥锁那些坑 最近搞业务遇到高并发下同一个 key 的互斥操作&#xff0c;想实现分布式环境下的互斥锁。于是私下顺手手撸了个基于 Redis 的简单互斥锁&#xff0c;也顺便跟 Redisson 的 RLock 机制对比了下&#xff0c;记录一波&#xff0c;别踩我踩过…...