草庐IT

视觉系统硬件选型简单概述

quintin007 2023-07-27 原文

视觉系统硬件选型简单概述

机器视觉大体流程


照射光照射在目标表面,被目标物反射,反射光经过镜头进入相机,目标物的图像就会聚集在CCD图像单元上,
然后通过A/D转换成数字图像,再进行处理,最后输出结果

相机成像大体流程:


光线,经过镜头照射在感光传感器上(CCD或者CMOS),产生模拟电流信号,信号经过模数转换器转换成数字信号,然后传递到图像处理器SDP,得到图像,最后图像存储到存储器或者采集卡传入电脑。

相机的芯片分类

相机的芯片类型分类

相机的信号分类

相机的颜色分类:

工业相机术语

分辨率

相机分辨率用于衡量相机对物像中明暗细节的分辨能力。

像元尺寸

1.像元大小和像元数(分辨率)共同决定了摄像机靶面的大小。
2.一般像元尺寸约小,制造难度越大,图像质量也约不容易提高。

芯片尺寸

通常芯片尺寸与分辨率是对应的,如500W相机2.2um像元为1/2.5
3.45um像元为2/3,4.8um像元为1英寸

芯片尺寸=像元尺寸X分辨率

精度

单位像素所代表的实际视野,数值越小精度越高

精度=视野÷分辨率

1200万像素相机(40003000 pix)拍摄视野为8060mm的图片,那么理论精度为多少?
80÷4000=0.02 mm/pix
理论精度为2丝

拖影

一次曝光时间里,物体移动超过一个像素,图像上就会产生拖影,因此可以计算出产生拖影的临界曝光时间。

曝光时间<=精度÷运动速度

需要拍摄理论精度0.1mm/pix,运动速度0.1米/秒的物体,最大曝光时间是多少?
0.1mm÷100mm/s=0.001s=1ms=1000μs

相机的选型

1.分辨率

客户提供其需要的精度与视野大小,那么求取分辨率关系如下:
分辨率(L/W)=视野(L/W)÷精度

假设视野3224mm精度要求0.05mm
那么相机的像素长度=32÷0.05=640 PIX
相当于需要 640
480=307200=30W像素的相机

此计算为理论精度,并不代表系统精度。

2.颜色

 通常视觉中我们选择黑白相机,只有需要彩色图像时才会考虑彩色相机,这是因为机器视觉中黑白图像的算法比较多,黑白相机使用光源成像质量要比彩色相机使用复合白光质量要好。

3.传感器类型

   拍摄目标静态,为了节约成本优先考虑cmos相机。运动拍摄(飞拍)则优先考虑CCD相机。

4.传感器尺寸

在分辨率足够的情况下,优先使用尺寸大的像元,但同时需要考虑靶面大小,通常靶面越大,相机和镜头的价格越高。

5.相机镜头接口

   一般相机都是C/CS接口,需要考虑与镜头的对接。如果有其他接口的镜头,需要考虑相机的接口。

6.相机输出接口

同等价位像素条件下优先选择实际输出速度快的接口类型。

如CameraLink>USB3.0>GigE>1394>USB2.0 。

相机接口

工业镜头术语

焦距

镜头焦距是光学系统中衡量光的聚集或发散的度量方式,指从透镜中心到光聚集之焦点的距离。
镜头焦距的大小决定着视场角的大小,拍摄得工作距离,成像视野大小和景深大小。
常用的焦距有8.12.16.25.35.50等

光圈

一个用来控制光线透过镜头,进入相机感光面的装置。相对孔径一般刻在镜头上如1:2.8和1:4等。

分辨率

分辨率是代表镜头记录物体细节的能力,常以每毫米里面能分别黑白线对数量为计量单位:线对/毫米(lp/mm)

放大倍率

     放大倍率定义为图像的大小与物体大小之比,在一个视场,成像大小铺满整个芯片,即:
                         放大倍率=芯片尺寸÷视野=像元尺寸÷精度

最小工作距离

镜头能够对焦清晰的最小工作距离。

景深

在对焦清晰的平面前后,存在一段仍然能够清晰成像的距离,称谓景深。通俗讲再聚焦完成后,在焦点前后范围内都能能够形成清晰的图像,这一前一后的距离范围叫景深。

畸变

镜头在成像时,特别是用焦距短的镜头拍摄大视场,图像会产生变形,这种情况叫做镜头的畸变。拍摄场景越大,所用镜头焦距约短,畸变程度越明显。

焦距计算:

  CCTV镜头焦距:   焦距f=WD×(芯片尺寸长边÷FOV长边)
   
   注意:当视野长宽比<芯片的长宽比时,需要用短边计算

远心镜头:

     放大倍率=芯片尺寸长边÷FOV长边

       注意:当视野长宽比<芯片的长宽比时,需要用短边计算

相机间参数相互影响的关系

1.焦距大小的影响情况

         焦距越小,景深越大;
         焦距越小,畸变越大;
         焦距越小,渐晕现象越严重,使像差边缘照度降低。

2.像场中央与边缘

         一般像场中心较边缘分辨率高;
         一般像场中心较边缘光场照度高。

3.光圈大小的影响情况

         光圈越大,图像亮度越高;
         光圈越大,景深约小;
         光圈越大,分辨率越高;
         光圈越大,渐晕现象越严重,光场照度越不均匀。

4.光源波长的影响

         在相同相机镜头参数条件下,光源波长越短,得到的图像分辨能力越高。    	所以需要精密尺寸及位置测量的视觉系统中,尽量采用短波的单色光作	为照明光源,可以提高系统精度。     

工业相机的选择要点

1.视野范围、光学放大倍数及期望的工作距离:在选择镜头时,我们会选择比被测物体视野稍大一点的镜头,有利于运动控制。

2.景深要求:对于对景深有要求的项目,尽可能使用小光圈;在选择放大倍率的镜头时,在项目许可下尽可能选用低倍率镜头;如果项目要求比较苛刻时,倾向选择高景深的尖端镜头。

3.芯片大小和相机接口:例如2/3镜头支持最大的工业相机耙面为2/3,它是不能支持1英寸以上的工业相机。

4.注意与光源的配合,选配合适的镜头。

5.可安装空间:在方案可选择情况下,让客户更改设备尺寸是不现实的。

有关视觉系统硬件选型简单概述的更多相关文章

  1. ruby - 简单获取法拉第超时 - 2

    有没有办法在这个简单的get方法中添加超时选项?我正在使用法拉第3.3。Faraday.get(url)四处寻找,我只能先发起连接后应用超时选项,然后应用超时选项。或者有什么简单的方法?这就是我现在正在做的:conn=Faraday.newresponse=conn.getdo|req|req.urlurlreq.options.timeout=2#2secondsend 最佳答案 试试这个:conn=Faraday.newdo|conn|conn.options.timeout=20endresponse=conn.get(url

  2. ruby - 用 Ruby 编写一个简单的网络服务器 - 2

    我想在Ruby中创建一个用于开发目的的极其简单的Web服务器(不,不想使用现成的解决方案)。代码如下:#!/usr/bin/rubyrequire'socket'server=TCPServer.new('127.0.0.1',8080)whileconnection=server.acceptheaders=[]length=0whileline=connection.getsheaders想法是从命令行运行这个脚本,提供另一个脚本,它将在其标准输入上获取请求,并在其标准输出上返回完整的响应。到目前为止一切顺利,但事实证明这真的很脆弱,因为它在第二个请求上中断并出现错误:/usr/b

  3. ruby-on-rails - 简单的 Ruby on Rails 问题——如何将评论附加到用户和文章? - 2

    我意识到这可能是一个非常基本的问题,但我现在已经花了几天时间回过头来解决这个问题,但出于某种原因,Google就是没有帮助我。(我认为部分问题在于我是一个初学者,我不知道该问什么......)我也看过O'Reilly的RubyCookbook和RailsAPI,但我仍然停留在这个问题上.我找到了一些关于多态关系的信息,但它似乎不是我需要的(尽管如果我错了请告诉我)。我正在尝试调整MichaelHartl'stutorial创建一个包含用户、文章和评论的博客应用程序(不使用脚手架)。我希望评论既属于用户又属于文章。我的主要问题是:我不知道如何将当前文章的ID放入评论Controller。

  4. ruby - 使用 Ruby 通过 Outlook 发送消息的最简单方法是什么? - 2

    我的工作要求我为某些测试自动生成电子邮件。我一直在四处寻找,但未能找到可以快速实现的合理解决方案。它需要在outlook而不是其他邮件服务器中,因为我们有一些奇怪的身份验证规则,我们需要保存草稿而不是仅仅发送邮件的选项。显然win32ole可以做到这一点,但我找不到任何相当简单的例子。 最佳答案 假设存储了Outlook凭据并且您设置为自动登录到Outlook,WIN32OLE可以很好地完成此操作:require'win32ole'outlook=WIN32OLE.new('Outlook.Application')message=

  5. 电脑0x0000001A蓝屏错误怎么U盘重装系统教学 - 2

      电脑0x0000001A蓝屏错误怎么U盘重装系统教学分享。有用户电脑开机之后遇到了系统蓝屏的情况。系统蓝屏问题很多时候都是系统bug,只有通过重装系统来进行解决。那么蓝屏问题如何通过U盘重装新系统来解决呢?来看看以下的详细操作方法教学吧。  准备工作:  1、U盘一个(尽量使用8G以上的U盘)。  2、一台正常联网可使用的电脑。  3、ghost或ISO系统镜像文件(Win10系统下载_Win10专业版_windows10正式版下载-系统之家)。  4、在本页面下载U盘启动盘制作工具:系统之家U盘启动工具。  U盘启动盘制作步骤:  注意:制作期间,U盘会被格式化,因此U盘中的重要文件请注

  6. 【鸿蒙应用开发系列】- 获取系统设备信息以及版本API兼容调用方式 - 2

    在应用开发中,有时候我们需要获取系统的设备信息,用于数据上报和行为分析。那在鸿蒙系统中,我们应该怎么去获取设备的系统信息呢,比如说获取手机的系统版本号、手机的制造商、手机型号等数据。1、获取方式这里分为两种情况,一种是设备信息的获取,一种是系统信息的获取。1.1、获取设备信息获取设备信息,鸿蒙的SDK包为我们提供了DeviceInfo类,通过该类的一些静态方法,可以获取设备信息,DeviceInfo类的包路径为:ohos.system.DeviceInfo.具体的方法如下:ModifierandTypeMethodDescriptionstatic StringgetAbiList​()Obt

  7. postman——集合——执行集合——测试脚本——pm对象简单示例02 - 2

    //1.验证返回状态码是否是200pm.test("Statuscodeis200",function(){pm.response.to.have.status(200);});//2.验证返回body内是否含有某个值pm.test("Bodymatchesstring",function(){pm.expect(pm.response.text()).to.include("string_you_want_to_search");});//3.验证某个返回值是否是100pm.test("Yourtestname",function(){varjsonData=pm.response.json

  8. Qt Designer的简单使用 - 2

    在前面两节的例子中,主界面窗口的尺寸和标签控件显示的矩形区域等,都是用C++代码编写的。窗口和控件的尺寸都是预估的,控件如果多起来,那就不好估计每个控件合适的位置和大小了。用C++代码编写图形界面的问题就是不直观,因此Qt项目开发了专门的可视化图形界面编辑器——QtDesigner(Qt设计师)。通过QtDesigner就可以很方便地创建图形界面文件*.ui,然后将ui文件应用到源代码里面,做到“所见即所得”,大大方便了图形界面的设计。本节就演示一下QtDesigner的简单使用,学习拖拽控件和设置控件属性,并将ui文件应用到Qt程序代码里。使用QtDesigner设计界面在开始菜单中找到「Q

  9. kvm虚拟机安装centos7基于ubuntu20.04系统 - 2

    需求:要创建虚拟机,就需要给他提供一个虚拟的磁盘,我们就在/opt目录下创建一个10G大小的raw格式的虚拟磁盘CentOS-7-x86_64.raw命令格式:qemu-imgcreate-f磁盘格式磁盘名称磁盘大小qemu-imgcreate-f磁盘格式-o?1.创建磁盘qemu-imgcreate-fraw/opt/CentOS-7-x86_64.raw10G执行效果#ls/opt/CentOS-7-x86_64.raw2.安装虚拟机使用virt-install命令,基于我们提供的系统镜像和虚拟磁盘来创建一个虚拟机,另外在创建虚拟机之前,提前打开vnc客户端,在创建虚拟机的时候,通过vnc

  10. 阿里云RDS——产品系列概述 - 2

    基础版云数据库RDS的产品系列包括基础版、高可用版、集群版、三节点企业版,本文介绍基础版实例的相关信息。RDS基础版实例也称为单机版实例,只有单个数据库节点,计算与存储分离,性价比超高。说明RDS基础版实例只有一个数据库节点,没有备节点作为热备份,因此当该节点意外宕机或者执行重启实例、变更配置、版本升级等任务时,会出现较长时间的不可用。如果业务对数据库的可用性要求较高,不建议使用基础版实例,可选择其他系列(如高可用版),部分基础版实例也支持升级为高可用版。基础版与高可用版的对比拓扑图如下所示。优势 性能由于不提供备节点,主节点不会因为实时的数据库复制而产生额外的性能开销,因此基础版的性能相对于

随机推荐