机器视觉检测--相机
一,相机就是CCD么?
通常,我们把相机都叫作CCD,CCD已经成了相机的代名词。其实很可能正在使用的是CMOS。CCD以及CMOS都称为感光元件,都是将光学图像转换为电子信号的半导体元件。他们在检测光时都采用光电二极管,但是在信号的读取和制造方法上存在不同。两者的区别如下:
| CCD | CMOS | |
|---|---|---|
| 制造技术 | 比较困难 | 比较容易 (可以转而使用通用半导体制造装置) |
| 制造成本 | 高价 | 低价 |
| 消耗电力 | 多 | 少 |
| 干扰 | 比较少 | 比较高 |
| 对光的敏感度 | 高 | 不如CCD |
二,像素
所谓像素,是指图像的最小构成单位。电脑中的图像,是通过像素(或者称为PIXEL)这一规则排列的点的集合进行表现的。每一个点都拥有色调和阶调等色彩信息,由此就可以描绘出彩色的图像。
例如:液晶显示器上会显示「分辨率 :1280×1024」等。这表示横向的像素数为1280,纵向的像素数为1024。这样的显示器的像素总数即为1280×1024=1,310,720。由于像素数越多,则越可以表现出图像的细节,因此也可以说「清晰度更高」。

三,像素直径
所谓像素直径,是指每个CCD元件的大小,通常使用μm作为单位。
严谨的说,这个大小中包含了受光元件与信号传送通路。(=像素间距,即某个像素的中心到邻近一个像素的中心的距离)。也就是说,像素直径与像素间距的值是一样的。如果像素直径较小,则图像将通过较小的像素进行描绘,因此可以获得更加精细的图像。可以通过像素直径和有效像素数,求出CCD元件的受光部的大小。
假设某个CCD元件的条件如下所示:
- 有效像素数…768 × 484
- 像素直径…8.4μm × 9.8μm
则受光部的大小为
- 横向 768 × 8.4μm = 6.4512mm
- 纵向 484 × 9.8μm = 4.7432mm
四,CCD的大小
CCD感光元件的大小,一般分为采用英寸单位表示和采用APS-C大小等规格表示这2种方式。
采用英寸表示时,该尺寸并不是拍摄的实际尺寸,而是相当于摄像管的对角长度。
【例】1/2英寸的CCD表示「拥有相当于1/2英寸的摄像管的拍摄范围」。
为什么如此计算呢?这是由于当初制造CCD的目的就是用来代替电视机录像机的摄像管的。当时,由于想要继续使用镜头等光学用品的需求比较强烈,由此就诞生了这种奇怪的规格。主要的英寸规格的尺寸如下表所示。

| 尺寸 | 对角长度 | 拍摄区域 |
|---|---|---|
| 2/3英寸 | 11mm | W8.8×H6.6mm |
| 1/2英寸 | 8mm | W6.4×H4.8mm |
| 1/3英寸 | 6mm | W4.8×H3.6mm |
| 1/4英寸 | 4.5mm | W3.6×H2.0mm |
五,快门速度
快门速度,表示CCD或CMOS感光元件中蓄积电荷的时间。
如果快门速度为1/250,则蓄积光的时间为1/250秒。快门速度越快,则元件的受光量越少,相反如果快门速度越慢,则元件的受光量越多。
也可以说,快门速度将起到了调整光量的作用。
关于快门速度和受光量(正确来说应该称为蓄积的电荷量),存在以下的关系:
【例】如果将快门速度基准定为 1/1000秒(1ms),则
- 快门速度变为 1/500秒(2ms),则受光量变为2倍。
- 快门速度变为 1/2000秒(0.5ms),则受光量变为1/2。
六,增益
所谓增益,是指将图像信号进行电子增幅的过程。用于图像处理的CCD中,配备了可以通过在暗处拍摄时增幅信号,从而看上去变得明亮的功能。另外,还配有根据拍摄对象的亮度自动进行调整的增益控制功能等。
【例】在1/10000快门速度下拍摄,增加增益前后的对比如下:

七,1D相机(线扫描相机)
面型相机
前面所有我们提到的像素呈矩阵排列的CCD,即为覆盖视觉检测中99%应用的面阵相机。

线型相机
而线阵相机在长度方向目前最多有16K像素,但是宽度方向只有一个像素。通过移动来获取图像。

相比于平面相机,线扫相机主要优势体现在两个方面:
- 更高的分辨率。
- 成像质量更高。(反光产品,柱状体产品)

另外,对于布匹装的连续监测的产品,线扫描相机也非常方便。

但是,相比于面阵相机,线扫描相机成本更高,安装架设难度更高。同时,需要配合编码器来配合触发拍照,需要有这方面的Know-how。
最后,线扫描相机需要使用特殊的镜头和光源。

八,3D相机
目前市面的3D相机根据成像原理不同,主要分为三种。
- 激光类(Laser)
- 多目类(Binocular Vision)
- 光栅类(Strip Pattern)
1,激光类(Laser)
主要是通过三角反射原理,激光发生器投出激光束照在物体表面,反射回来的光线被CCD接受,然后建模成3D图像。

激光扫描成像

2,双目类(Binocular Vision)
双目立体视觉是指用两台性能相当、位置固定的CCD摄像机, 获取同一景物的两幅图像,通过两个摄像头所获取的二维图像,来计算出景物的三维信息。
在原理上比较类似人类的双目视觉。组建一个完整的双目立体视觉系统一般需要经过摄像机标定,图像匹配,深度计算等步骤。
九,2.5D相机
(详细介绍请参考之前历史文章)通过控制光源从不同角度照明,得到图像凹凸信息产生的阴影图像,而最后合成计算得到3D信息的图像(注:高度“Z”方向不能定量测量,所以叫2.5D)。

原图-->合成图像

来源基恩士官网
相关文章:
机器视觉检测--相机
一,相机就是CCD么? 通常,我们把相机都叫作CCD,CCD已经成了相机的代名词。其实很可能正在使用的是CMOS。CCD以及CMOS都称为感光元件,都是将光学图像转换为电子信号的半导体元件。他们在检测光时都采用光电二极管&#…...
【人工智能】第四部分:ChatGPT的技术实现
人不走空 🌈个人主页:人不走空 💖系列专栏:算法专题 ⏰诗词歌赋:斯是陋室,惟吾德馨 目录 🌈个人主页:人不走空 💖系列专栏:算法专题 ⏰诗词歌…...
小程序配置自定义tabBar及异形tabBar配置操作
什么是tabBar? 小程序的tabbar是指小程序底部的一组固定导航按钮,通常包含2-5个按钮,用于快速切换小程序的不同页面。每个按钮都有一个图标和文本标签,点击按钮可以切换到对应的页面。tabbar通常放置在小程序的底部,以…...
解析《动物园规则怪谈》【逻辑】
鉴赏《动物园规则怪谈》【逻辑】 前言版权推荐鉴赏《动物园规则怪谈》推理游客正方“它”方其他物品 不同规则或纸条的对比联系出现的地方及联系游客入园历程:被“它”污染的过程鉴赏升华 最后 前言 2024-5-31 13:05:38 以下内容源自《【逻辑】》 仅供学习交流使用…...
上传RKP 证书签名请求息上传到 Google 的后端服务器
上传证书签名请求 1.准备环境:OK pip3 install google-auth2.13.0 requests2.28下载 device_info_uploader.py 。 没找到先跳过 选项 1:通过 GCP 帐户使用 device_info_uploader.py 运行脚本。 ./device_info_uploader.py --credentials /secure/s…...
Debian和ubuntu 嵌入式的系统的 区别
随着开源操作系统的日益流行,Debian和Ubuntu这两个基于Linux的发行版本成为了众多开发者和系统管理员的首选。它们各自拥有独特的优势和特点,那么,在选择时,哪一个更适合你呢?接下来,我们将深入探讨两者的关…...
HTML旋转照片盒子
效果图 <!DOCTYPE html> <html lang"en"> <head><meta charset"UTF-8"><meta name"viewport" content"widthdevice-width, initial-scale1.0"><meta http-equiv"X-UA-Compatible" content…...
【UE5 刺客信条动态地面复刻】实现无界地面01:动态生成
2024.6.4更新 昨天半夜意识到生成Cube的方案不合适,又开始到处找动态地面的方法,发现了我想要的效果直接可以用nigara实现!!!! 于是这个部分就暂时告一段落,今季开始新的方向的学习。 为了快速…...
AI产品经理系列-如何使用kimi快速撰写用户故事(含提示词)
在AI时代,可能人人都可成为产品经理。 之前我们聊过如何使用kimi协助完成产品需求文档,如何写竞品分析报告,这一篇我们聊聊用户故事,如何使用kimi协助撰写产品需求文档中的用户故事。 在此之前我们先了解下什么是用户故事&#…...
MySQL索引与事务
前言👀~ 紧接着数据库的相关知识,今天讲解MySQL面试中频繁被问到的知识点,索引与事务!!! 如果各位对文章的内容感兴趣的话,请点点小赞,关注一手不迷路,如果内容有什么问题的话,欢迎各位评论纠正…...
『大模型笔记』从基础原理出发提升深度学习性能
从基础原理出发提升深度学习性能 文章目录 一. 从基础原理出发提升深度学习性能1.1. 计算(compute)1.2. 带宽(Bandwidth)1.2.1 关于内存带宽成本的推理(Reasoning about Memory-Bandwidth Costs)1.3. 开销(Overhead)二. 总结三. 参考文献Making Deep Learning Go Brrrr F…...
【二叉树】Leetcode 222. 完全二叉树的节点个数【简单】
完全二叉树的节点个数 你一棵 完全二叉树 的根节点 root ,求出该树的节点个数。 完全二叉树 的定义如下:在完全二叉树中,除了最底层节点可能没填满外,其余每层节点数都达到最大值,并且最下面一层的节点都集中在该层最…...
golang界面设计器,全网少见
今天登录govcl的网站,无意中看到有个简易UI设计器。 对于golang的UI专用设计器,还没在网上真正见过。 之前也用govcl来做过两三个桌面应用,好用是好用,不过要安装Lazarus的IDE来拖动设计UI,还要配置很多东西࿰…...
如何在GlobalMapper中加载高清卫星影像?
GlobalMapper在GIS行业几乎无人不知,无人不晓,但它可以直接加载卫星影像也许就不是每个人都知道的了。 这里就来分享一下如何在GlobalMapper中加载高清卫星影像,并可以在文末查看领取软件安装包和图源的方法。 如何加载高清图源 首先&…...
【机器学习】解锁AI密码:神经网络算法详解与前沿探索
👀传送门👀 🔍引言🍀神经网络的基本原理🚀神经网络的结构📕神经网络的训练过程🚆神经网络的应用实例💖未来发展趋势💖结语 🔍引言 随着人工智能技术的飞速发…...
Java如何实现pdf转base64以及怎么反转?
问题需求 今天在做发送邮件功能的时候,发现邮件的附件部分,比如pdf文档,要求先把pdf转为base64,邮件才会发送。那接下来就先看看Java 如何把 pdf文档转为base64。 两种方式,一种是通过插件 jar 包的方式引入…...
动态规划5:62. 不同路径
动态规划解题步骤: 1.确定状态表示:dp[i]是什么 2.确定状态转移方程:dp[i]等于什么 3.初始化:确保状态转移方程不越界 4.确定填表顺序:根据状态转移方程即可确定填表顺序 5.确定返回值 题目链接:62. …...
Python编程学习第一篇——Python零基础快速入门(五)-列表(List)
今天我们来一起学习Python的列表(list),Python中的列表(List)是一种有序、可变的数据结构,可以用来存储多个值。列表可以包含不同类型的数据,例如整数、浮点数、字符串等。以下是关于Python列表…...
c# - 运算符 << 不能应用于 long 和 long 类型的操作数
Compiler Error CS0019 c# - 运算符 << 不能应用于 long 和 long 类型的操作数 处理方法 特此记录 anlog 2024年5月30日...
问题排查|记录一次基于mymuduo库开发的服务器错误排查(回响服务器无法正常工作)
问题背景: 服务器程序如下: #include <mymuduo/TcpServer.h> #include <mymuduo/Logger.h>#include <string> #include <functional>class EchoServer { public:EchoServer(EventLoop *loop,const InetAddress &addr, con…...
如何解决OpenHTMLtoPDF在容器化环境中的字体加载NullPointerException问题
如何解决OpenHTMLtoPDF在容器化环境中的字体加载NullPointerException问题 【免费下载链接】openhtmltopdf An HTML to PDF library for the JVM. Based on Flying Saucer and Apache PDF-BOX 2. With SVG image support. Now also with accessible PDF support (WCAG, Section…...
革命性游戏模组管理平台:XXMI启动器带你告别繁琐配置,一键畅玩所有二次元游戏
革命性游戏模组管理平台:XXMI启动器带你告别繁琐配置,一键畅玩所有二次元游戏 【免费下载链接】XXMI-Launcher Modding platform for GI, HSR, WW and ZZZ 项目地址: https://gitcode.com/gh_mirrors/xx/XXMI-Launcher 你是否曾经为了玩不同的二次…...
ComfyUI-Manager:一站式AI绘画插件智能管理平台
ComfyUI-Manager:一站式AI绘画插件智能管理平台 【免费下载链接】ComfyUI-Manager ComfyUI-Manager is an extension designed to enhance the usability of ComfyUI. It offers management functions to install, remove, disable, and enable various custom node…...
说说事务的传播级别?
面试 事务传播级别是 Spring 为了解决事务方法相互调用时事务如何传递的问题。默认传播级别是 REQUIRED,表示有事务就加入,没有事务就新建。...
模电设计实践之“音频功率放大器的设计” - 包含OCL主放大器设计、总电路图与框架详解、设计方...
模电设计实践之音频功率放大器的设计(word文档)文档有详细的参数计算过程 其主要内容是: 1、OCL主放大器的设计 2、总电路图、框架图以及单元电路介绍 3、设计方案论证 4、设计及电路参数计算,元器件选择 5、技术指标校验拆开音响…...
Windows 11 家庭版安装 WSL + Docker 踩坑记:从 Store 地狱到 --web-download 救赎
一句话总结当你发现 wsl --update 和 wsl --install 永远卡住、报权限错误或连接重置时,不要挣扎,直接用 --web-download 绕过 Microsoft Store。 这 99% 能解决 Windows 11 家庭版上的 WSL 安装/更新问题。一、问题现象:一切看起来都很正常&…...
如何成为一名出色的SEO优化师
如何成为一名出色的SEO优化师 在当今的数字化时代,搜索引擎优化(SEO)已经成为了每个企业和个人网站获得流量和提升品牌知名度的关键手段。但是,成为一名出色的SEO优化师并非易事,需要掌握一系列专业知识和技能。本文将…...
LibEdificio嵌入式教学库:硬件映射驱动与楼宇灯光实验平台
1. 项目概述LibEdificio 是一款面向嵌入式教育平台的专用控制库,专为“Building Lights 教学系统”(楼宇灯光教学实验平台)设计。该系统并非通用工业楼宇自控设备,而是一套结构化、模块化、可编程的硬件教学套件,广泛应…...
一键切换模型:OpenClaw同时管理多个SecGPT-14B实例
一键切换模型:OpenClaw同时管理多个SecGPT-14B实例 1. 为什么需要管理多个模型实例 去年我在搭建本地AI安全分析系统时,遇到了一个典型困境:当SecGPT-14B模型需要版本升级时,整个服务必须停机。更糟的是,有次模型推理…...
OpenClaw日志分析实战:Phi-3-vision-128k-instruct多维度错误模式识别
OpenClaw日志分析实战:Phi-3-vision-128k-instruct多维度错误模式识别 1. 为什么需要智能日志分析 凌晨三点,我被手机警报惊醒——服务器又崩了。揉着惺忪睡眼打开终端,面对满屏的日志文件,那种熟悉的无力感再次袭来。这已经是本…...
