从0到机器视觉工程师(一):机器视觉工业相机总结

目录

相机的作用

工业相机

工业相机的优点

工业相机的种类

工业相机知名品牌

光源与打光

打光方式

亮暗场照明

亮暗场照明的应用

亮暗场照明的区别

前向光漫射照明

背光照明

背光照明的原理

背光照明的应用

同轴光照明

同轴光照明的应用

总结


相机的作用

相机(Camera)是一种用于捕捉和记录视觉信息的设备,它可以将光学图像转换成电子信号或化学信号,进而存储为静态图片或视频。

工业相机

工业相机,也称为机器视觉相机或工业视觉系统,是专为工业应用设计的高性能相机。

工业相机的优点

相比于普通相机,工业相机具有更高的分辨率、更好的图像稳定性以及更高的抗干扰能力等等。除此之外,工业相机具备可编程,可二次开发的能力。

工业相机的种类

工业相机可以分为以下几种类型:

  1. 按传感器类型:CCD(电荷耦合器件)相机和CMOS(互补金属氧化物半导体)相机。CCD相机适用于对图像质量要求较高的场合,而CMOS相机成本较低,适用于大规模量产和便携式设备。

  2. 按分辨率:低分辨率相机和高分辨率相机。低分辨率相机通常用于简单的图像采集和处理任务,而高分辨率相机适用于需要详细信息和高精度测量的应用。

  3. 按帧率:普通帧率相机和高速相机。高速相机适用于捕捉快速运动的目标,如生产线上的高速检测和运动分析。

  4. 按接口类型:USB接口相机、千兆网(GigE)接口相机和Camera Link接口相机。这些接口类型决定了相机与外部设备的数据传输速率和方式。

  5. 按用途:黑白相机和彩色相机。黑白相机适用于光线较暗或需要高对比度图像的场合,而彩色相机适用于需要颜色信息的场合,如印刷检测和食品分级。

工业相机知名品牌

索尼SONY

日本跨国企业,日本代表性企业,成立于1946年,索尼提供的产品很广,包括电子产品,包括电视、音响设备、相机、游戏机(如PlayStation系列)、智能手机和专业音频视觉设备。此外,索尼也涉足电影制作、音乐出版和在线服务等领域。

海康机器人/HIKROBOT

海康机器人是面向全球的机器视觉和移动机器人产品及解决方案提供商,业务聚焦于工业物联网、智慧物流和智能制造,构建开放合作生态,为工业和物流领域用户提供服务,以创新技术持续推动智能化,引领智能制造进程。

菲力尔/FLIR

全球最大最专业的热成像技术系统集团,创建于1978年美国,创新型感应解决方案提供商,全球热成像技术领导者,专注于设计、开发、生产、营销和推广用于增强态势感知力的专业技术。

巴斯勒/Basler Kantonalbank

Basler是一家全球领先的高品质相机和相机配件制造商,在计算机视觉技术领域拥有30多年的丰富行业经验。通过打造高品质的专业产品,竭力为工厂自动化、医疗、交通等市场提供一流的服务。

大恒图像/IMAVISION

专注于机器视觉部件及视觉系统研发、生产和营销的高科技企业,是专业的机器视觉核心部件及解决方案提供商。

光源与打光

在机器视觉项目中,光打的好基本上项目就解决一半了。正确选择和科学应用机器视觉光源,对于提升视觉检测的效果和精准度至关重要。

对于不同材质特征的被检测物品,需要选择不同的打光方式,从而获得合适的产品图像特征。

在LED灯大量普及之前,还有荧光灯、卤素灯等等类型。高频荧光灯热扩散性能更好,卤素灯亮度更高。但综合考虑LED灯整体性能更加优异,所以当下基本上都使用LED灯。

打光方式

光源的形状和设计包括条形光源、环形光源、背光源、同轴光源等等。

亮暗场照明

亮暗场照明是一种背光技术,其中光源位于相机和物体之间,使得大部分光线不会直接反射到相机,而是通过物体的边缘或表面特征反射。这种照明方式可以增强物体边缘的对比度,使得物体的特征更加突出,特别适合于检测物体的轮廓、裂缝或表面缺陷。

亮暗场照明的应用
  1. 轮廓检测:亮暗场照明可以清晰地勾勒出物体的轮廓,对于尺寸测量和形状识别非常有用。
  2. 表面缺陷检测:通过亮暗场照明,物体表面的划痕、凹陷或其他缺陷会因为光线的反射而变得更加明显,便于检测。
  3. 透明物体检测:对于透明或半透明的物体,如玻璃或塑料,亮暗场照明可以揭示其内部的缺陷或杂质。
亮暗场照明的区别

亮场照明是环形光源以大于45°的入射角度照射工件,即高角度照射,使得大量的反射光进入镜头,形成清晰的图像,从而捕获到工件表面,工件背景较为昏暗。

暗场照明是环形光源以小于45°的入射角度照射工件,即低角度照射,平滑面的反射光向四周散射,无法直接进入镜头,而凹陷或凸起的地方因反射光角度更大,有更多光线进入镜头,形成更亮的成像。暗场照明的特点是能够凸显物体的边缘与缺陷,适用于检测微观结构和表面损伤‌。

前向光漫射照明

前向光漫射照明是通过光源(球形光源或两个环形光源)从多个方向照射到物体表面,产生无方向性、柔和的反射光。这种照明方式特别适合于高反光平整材质的物体,可以消除小的变形、褶皱影响,只对边缘和较大的曲面有对比度差异成像效果。前向光漫射照明可以减少阴影或眩光的影响,使得图像处理算法更加简单高效。

背光照明

背光照明是一种在机器视觉系统中常用的照明方式,它从物体背后提供光照,使得物体的边缘和表面特征更加明显,从而提高图像的对比度和清晰度。这种照明方式特别适用于需要强调物体轮廓和边缘特征的场合。

背光照明的原理

背光照明的工作原理是通过在物体背后放置光源,使得光线从物体背面反射或透过物体。这样,物体的边缘和表面特征会因为背光的照射而更加突出,有助于机器视觉系统更好地识别和分析物体的形状和轮廓。

背光照明的应用

背光照明在机器视觉系统中广泛应用于多种场景,包括但不限于:

  • 轮廓检测:背光可以清晰地勾勒出物体的轮廓,对于尺寸测量和形状识别非常有效。
  • 表面缺陷检测:通过背光照明,物体表面的划痕、凹陷或其他缺陷会因为光线的反射而变得更加明显,便于检测。
  • 透明物体检测:对于玻璃或塑料等透明或半透明物体,背光照明可以揭示其内部的缺陷或杂质。同时不同波长光源照射时成像效果也不同。

同轴光照明

同轴光照明的工作原理是通过垂直墙壁出来的变化发散光,射到一个使光向下的分光镜上,相机从上面通过分光镜看物体。这种类型的光源对检测高反射的物体特别有帮助,还适合受周围环境产生阴影影响,检测面积不明显的物体。

同轴光照明的应用

同轴光照明通常应用于瓶口检测,同轴光可以使表面角度变化部分高亮,不垂直于镜头的表面反射的光不会进入镜头,从而使表面较暗,突出瓶口高亮部分。

总结

本文主要介绍了工业相机的优点、种类以及当前知名品牌,同时介绍了四种常见的打光方式。在机器视觉领域,这些前期的知识储备是十分重要的。文笔不好请见谅,要是有问题欢迎在评论区留言或者私信我,也欢迎指出我的不足,感谢观看。

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

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

相关文章

HTML——53. 创建表单

<!DOCTYPE html> <html><head><meta charset"UTF-8"><title>创建表单</title></head><body><!--form标签用于创建一个表单&#xff0c;会将里面的内容一起发送服务器&#xff0c;其结构类似于表格--><!--表…

逐行讲解大模型流式输出 streamer 源码

目录 简介TextStreamer 基础流式输出TextIterateStreamer 迭代器流式输出本地代码模型加载并前端展示streamlit 输出显示gradio 输出显示 vllm 部署模型并前端展示streamlit 输出显示gradio 输出显示 备注 简介 本文详细讲解了大模型流式输出的源码实现&#xff0c;包括TextSt…

java_使用阿里云oss服务存储图片

什么情况下可以使用阿里云oss服务存储图片&#xff1f; 对图片的访问速度有高要求时使用&#xff0c;方便用户快速的&#xff08;比如在网页页面中&#xff09;访问到图像 参考&#xff1a;41 尚上优选项目-平台管理端-商品信息管理模块-阿里云OSS介绍_哔哩哔哩_bilibili 1.…

第5章 共享内存范式:C语言层面

5.1OpenMP 5.1.1OpenMP的介绍 OpenMP三个原则 5.2OpenMP的使用 编译制导指令以#pragma omp 开始&#xff0c;后边跟具体的功能指令&#xff0c;格式如:#pragma omp 指令[子句[,子句].]。常用的功能指令如下: 5.2.1编译制导 5.2.2API和环境变量 具体案例-邻接矩阵 // 本代码…

全国青少年信息学奥林匹克竞赛(信奥赛)备考实战之循环结构(for循环语句)(七)

实战训练—鸡兔同笼 问题描述&#xff1a; 一个笼子里面关了鸡和兔子&#xff08;鸡有2只脚&#xff0c;兔子有4只脚&#xff0c;没有例外&#xff09;。已经知道了笼子里面脚的总数为a&#xff0c;问笼子里面至少有多少只动物&#xff0c;至多有多少只动物。 输入格式&…

web 开发全局覆盖文件上传身份验证漏洞利用

全局覆盖 首先认识全局变量和局部变量 再一个就是知道全局变量是全局使用的并且有个特点就是可以覆盖 这个就是全局变量我们输出一下发现 z居然等于函数内的计算值 把我们原来定义的全局变量 $z给覆盖了 看一下局部变量 这个时候 z就不会被覆盖 <?php $x1; $y2; …

No.2十六届蓝桥杯备战|练习题4道|数据类型|字符型|整型|浮点型|布尔型|signed|unsigned(C++)

B2002 Hello,World! - 洛谷 #include <iostream> using namespace std; int main() { cout << "Hello,World!" << endl; return 0; }打印飞机 #include <iostream> using namespace std;int main() {cout << " …

46. Three.js案例-创建颜色不断变化的立方体模型

46. Three.js案例-创建颜色不断变化的立方体模型 实现效果 知识点 Three.js基础组件 WebGLRenderer THREE.WebGLRenderer是Three.js提供的用于渲染场景的WebGL渲染器。它支持抗锯齿处理&#xff0c;可以设置渲染器的大小和背景颜色。 构造器 antialias: 是否开启抗锯齿&am…

5.系统学习-PyTorch与多层感知机

PyTorch与多层感知机 前言PyTroch 简介张量&#xff08;Tensor&#xff09;张量创建张量的类型数据类型和 dtype 对应表张量的维度变换&#xff1a;张量的常用操作矩阵或张量计算 Dataset and DataLoaderPyTorch下逻辑回归与反向传播数据表格 DNN&#xff08;全连结网络&#x…

WPF中的Microsoft XAML Behaviors包功能详解

什么是XAML Behaviors(行为) XAML Behaviors 提供了一种简单易用的方法&#xff0c;能以最少的代码为 Windows UWP/WPF 应用程序添加常用和可重复使用的交互性。 但是Microsoft XAML Behaviors包除了提供常用的XAML Behaviors之外&#xff0c;还提供了一些Trigger&#xff08…

运维人员的Go语言学习路线

以下是一份更为详细的适合运维人员的Go语言学习路线图&#xff1a; 一、基础环境搭建与入门&#xff08;第 1 - 2 周&#xff09; 第 1 周 环境搭建 在本地开发机和常用的运维服务器环境&#xff08;如 Linux 系统&#xff09;中安装 Go 语言。从官方网站&#xff08;https://…

设置虚拟机设备的dp和pt

虚拟机有设置px的方式&#xff0c;没有设置dp的方式&#xff0c;举个例子比如设置px为1080*1920虚拟机是有的 此时如果需要375dp宽度的虚拟机&#xff0c; 需要以下步骤 通过日志打印px和density&#xff0c;计算出当前的dp根据density和dp&#xff0c;计算如果需要相应的dp需…

Soildstate渗透测试

第一步&#xff1a;信息收集 Arp-scan -l 扫描本地存活ip&#xff0c;发现可疑ip 192.168.52.140 使用nmap -T4 -sV -sC -p- 192.168.52.140 对目标进行全端口扫描 同时使用dirb和dirsearch对目标网址进行目录爆破&#xff0c;这些网址都可以点进去看看进行一下信息收集看看是…

HTTP cookie与session

telnet命令 telnet 是一个网络协议&#xff0c;用于通过 TCP/IP 网络进行远程登录到服务器。它允许用户在本地计算机上通过网络连接到远程服务器&#xff0c;并在服务器上执行命令 telnet [主机名或IP地址] [端口号]//连接服务器 在 telnet 会话中&#xff0c;Ctrl] 会将你从…

【新年特辑】使用 React + TypeScript 开发新年祝福网页

&#x1f389; 新年将至&#xff0c;我决定开发一个独特的新年祝福网页&#xff0c;让每个人都能创建和分享自己的新年祝福。本文将详细介绍这个项目的开发过程&#xff0c;从技术选型到具体实现&#xff0c;希望能给大家一些启发。 一、项目概述 1.1 项目背景 在这个数字化的…

jmeter分布式启动

https://www.cnblogs.com/qtclm/p/11082081.html 1、代理机&#xff1a;输入“ipconfig”&#xff0c;找到IP地址&#xff0c;在Jmeter/bin/jmeter.properties设置remote host 启动jmeter server 1、控制机&#xff1a;输入“ipconfig”&#xff0c;找到IP地址&#xff0c;在J…

sqoop将MySQL数据导入hive

使用脚本加载数据 MySQL有一张表 hive创建一张相同的表 编写脚本同步数据 [rootmaster sqoop]# vim stu.sh#!/bin/bash SQOOP/usr/local/soft/sqoop-1.4.6/bin/sqoop $SQOOP import --connect jdbc:mysql://192.168.67.100:3306/sqoop \--username root \--password 123456 \-…

【从零开始入门unity游戏开发之——C#篇39】C#反射使用——Type 类、Assembly 类、Activator 类操作程序集

文章目录 前言一、前置知识1、编译器2、程序集&#xff08;Assembly&#xff09;3、元数据&#xff08;Metadata&#xff09; 二、反射1、反射的概念2、反射的作用3、反射的核心Type 类3.1 Type 类介绍3.2 不同方法获取 Type3.3 获取type类型所在的程序集的相关信息 4、反射的常…

【MyBatis源码分析】Spring与MyBatis整合深入解析

&#x1f3ae; 作者主页&#xff1a;点击 &#x1f381; 完整专栏和代码&#xff1a;点击 &#x1f3e1; 博客主页&#xff1a;点击 文章目录 概述SqlSessionFactoryBean详解配置原理 MapperScannerConfigurer 源码分析介绍postProcessBeanDefinitionRegistry 方法 概述 MyBat…

微信小程序几种数据通信方式记录

在微信小程序开发中&#xff0c;组件间的数据传递是一个常见的需求。以下是不同组件间数据传递的方式&#xff0c;根据传递的方向&#xff08;父子、兄弟、跨层级等&#xff09;提供了多种方法。 1. 父组件向子组件传递数据 通过 properties&#xff08;组件属性&#xff09;&…