热门标签 | HotTags
当前位置:  开发笔记 > 人工智能 > 正文

直方图均衡视觉显著_图像采集:机器视觉中图像采集优化方法介绍

点击上方“小白学视觉”,选择“星标”公众号重磅干货,第一时间送达来源:act视觉系统设计编辑:新机器视觉机器视觉在不同的复杂
点击上方“小白学视觉”,选择“星标”公众号

重磅干货,第一时间送达

bd3ce7afe10c4dc43f524a88bffd2511.png

来源:act视觉系统设计 编辑:新机器视觉

机器视觉在不同的复杂技术领域有着广泛应用。在简单的应用中(例如,利用背光检测不透明物体的轮廓),成像系统可在宽松的系统参数条件下可靠地运行。但在要求较高的应用中(比如检测镜面的表面缺陷),必须将主要参数设置在较小的公差范围内,或使用成本更高的高精度硬件,成像系统才能稳定运行。

成像系统中涉及的主要参数的数量,随着成像应用复杂度的提高而增加。Edmund Optics东京成像实验室对此进行了研究,对于要求较高的成像应用,需要精确调整的参数大约多达20个。

图像采集优化

本文主要讨论图像采集优化(以下称为OIA),即:将成像系统中的所有主要参数调整到能够获得最佳图像的过程。完成OIA后,获得的图像具有以下共同特点:

1)在成像系统物理条件限制下,所拍摄的图像获得尽可能多的有用信息;

2)尽可能多地利用相机传感器的有效像素,让待测工件在视野范围内(FOV)最大呈现,仅受工件几何形状和位置变化的限制;

3)在不使用降噪算法的情况下,图像具有最高的信噪比,仅受传感器的参数限制;

4)图像的动态范围接近最大值,没有达到饱和;

5)图像中没有来自其他外部环境产生的不必要影像(例如未使用扩散片的环形光产生的亮斑)。

为达成OIA,需要对所有主要参数进行精确调整。经过OIA调整后的成像系统,为机器视觉系统集成商提供了以下优势:

1)高性价比

成像系统中的关键组件(成像镜头、相机、照明光源和光机结构)充分发挥作用,实现了具有成本效益的解决方案。

2)最少的图像运算处理和分析,最低的软件复杂度

由于OIA可以获得高还原度、高对比度和低噪声的图像,因此对图像处理算法(例如降噪、直方图均衡、膨胀/腐蚀)的需要降至最低,从而显著减少了开发周期、测试时间和硬件成本。

3)显著降低误判率,高质量的图像减少了测试错误

已经调整好的成像系统可以满足以下条件,如图1和图2所示:

1)像平面(传感器面)和物面(检查工件表面)平行;

2)被检查的工件表面位于工作距离(WD)最佳聚焦位置;

3)被检查的工件,接近FOV拍摄矩形成像区域大小,但不超过FOV;

4)工件中心位于镜头的光轴上;

5)被检查工件的浅色(白色、浅灰色等)区域特征,其成像亮度接近像素灰度饱和值(例如8位格式为255,灰度值可以达到220),但未达到饱和。

90653e32a7e83a83f6ace2780255de4a.png

图1:成像系统调整要求,透视图

781803c8d0fc5172516668425d4dcbe9.png

图2:成像系统调整要求,上视图

调整方法

通常的调整方法是:操作人员通过相机观察图像,以主观判断完成。由Edmund Optics 日本分公司开发的调整应用程序,可对成像系统中的11-17个参数(取决于硬件条件)进行即时测量,从而为操作人员提供实时量化的参数以进行判断。

以下案例中,使用的是西门子星标测试板(产品编号58835)。将星标测试板的标刻面朝向成像系统,并使其与待测物平面重合。

使用EO开发的EORTM(Edmund Optics Real-Time Metrology)软件,实时运算和分析拍摄到的测试板图像。EORTM可以在精确调整至少8组硬件参数(光学机械平台的六个自由度、光源亮度和相机曝光时间)的过程中,给操作人员提供实时闭环反馈。

借助EORTM,在高精度机器视觉应用中调整参数的时间,从大约数小时减少到20分钟甚至更短,但是精度却提高了至少2倍,因为它提供精确可量化指标,而不是依靠主观判断。

一旦所有硬件调整都在软件设定的允许范围内,EORTM将显示如图3所示的全部通过状态,并且判定图像系统已调整完成。

4b9ec4218ce7b74508a61539b2bce770.png

图3:使用EORTM软件和西门子星标测试板进行微调

硬件配置包含一个6维自由度调整平台和相关的光机结构件,以及照明光源和测试板,完全由EO产品目录中的标准产品组成,如图4所示。

5612ffec3bedf969db7608c08346dad5.png

图4:Edmund Optics 6维调整定位平台用于成像系统调整

结论

为了达到OIA,需要精确调整近20种光学、机械、电子和软件参数。表1中列出了这些参数,根据其需要调整的频率归类为:

1)设计阶段(DT):一次,系统规划选型时;

2)设置阶段(ST):一次,相机初始化安装时;

3)实时调整(RT):多次,在OIA调整过程中视需要,可通过可视化或使用软件实时测量获得反馈。

表1:OIA调整过程的主要参数

#

类别

硬件

参数

调整阶段

1

电子

相机

像素数量1

DT

2

传感器大小 2

3

照明

峰值波长

4

光谱分布

5

光学

光束发散角

6

镜头

视场大小

7

MTF

8

软件

相机

图像锐化

ST

9

噪声处理

10

增益设定

11

Gamma曲线校正

12

暗阶设定

13

软件/电子

曝光时间

RT

14

照明

照度

15

光机

X轴位移

16

Y轴位移

17

Z轴位移

18

X角度倾斜

19

Y角度倾斜

20

成像系统

X轴位移

21

Y轴位移

22

Z轴位移

23

X角度倾斜

24

Y角度倾斜

25

Z角度倾斜

注:1:通常也称为分辨率;2:像素大小代表图像分辨率,这里没有列出,因为它可以根据像素数量和传感器尺寸计算得出。

4b4c3904086bf4c039ddd9058ff9985f.png




推荐阅读
  • 深入解析链表成环问题:剑指Offer第22天的新视角
    本文将详细介绍链表成环问题的多种解法,包括哈希表法、JSON.stringify特殊解法及双指针法,并提供详尽的代码示例。阅读本文,你不仅能够掌握这一经典算法问题的核心技巧,还能了解到更多编程思维的拓展。 ... [详细]
  • 构建高性能Feed流系统的设计指南
    随着移动互联网的发展,Feed流系统成为了众多社交应用的核心组成部分。本文将深入探讨如何设计一个高效、稳定的Feed流系统,涵盖从基础架构到高级特性的各个方面。 ... [详细]
  • 尤洋:夸父AI系统——大规模并行训练的深度学习解决方案
    自从AlexNet等模型在计算机视觉领域取得突破以来,深度学习技术迅速发展。近年来,随着BERT等大型模型的广泛应用,AI模型的规模持续扩大,对硬件提出了更高的要求。本文介绍了新加坡国立大学尤洋教授团队开发的夸父AI系统,旨在解决大规模模型训练中的并行计算挑战。 ... [详细]
  • 本作业探讨了矩阵链乘法的问题,包括问题定义、解析过程、算法设计思路及性能分析。通过将矩阵链分解为多个子问题,旨在找到最小化基本运算次数的方法。 ... [详细]
  • 使用Pandas DataFrame探索十大城市房价与薪资对比
    在本篇文章中,我们将通过Pandas库中的DataFrame工具,深入了解中国十大城市的房价与薪资水平,探讨哪些城市的生活成本更为合理。这是学习Python数据分析系列的第82篇原创文章,预计阅读时间约为6分钟。 ... [详细]
  • 解决宝塔面板Nginx反向代理缓存问题
    本文介绍如何在宝塔控制面板中通过编辑Nginx配置文件来解决反向代理中的缓存问题,确保每次请求都能从服务器获取最新的数据。 ... [详细]
  • 本文介绍了两个重要的Node.js库——cache-content-type和mime-types,它们在处理HTTP响应头时非常有用。cache-content-type是基于mime-types构建的,并且实现了缓存机制以提高性能。 ... [详细]
  • 本文介绍了进程的基本概念及其在操作系统中的重要性,探讨了进程与程序的区别,以及如何通过多进程实现并发和并行。文章还详细讲解了Python中的multiprocessing模块,包括Process类的使用方法、进程间的同步与异步调用、阻塞与非阻塞操作,并通过实例演示了进程池的应用。 ... [详细]
  • 本文详细介绍了如何在 EasyUI 框架中实现 DataGrid 组件的分页功能,包括配置方法和常见问题的解决方案。 ... [详细]
  • Python脚本实现批量删除多种类型文件的扩展名
    本文介绍了一个Python脚本,用于批量处理并移除指定目录下不同格式文件(如png、jpg、xml、json、txt、gt等)的文件扩展名。该方法通过递归遍历文件夹中的所有文件,并对每个文件执行重命名操作。 ... [详细]
  • 本文详细记录了一位Java程序员在Lazada的面试经历,涵盖同步机制、JVM调优、Redis应用、线程池配置、Spring框架特性等多个技术点,以及高级面试中的设计问题和解决方案。 ... [详细]
  • 为帮助编程爱好者更好地掌握Python和Go语言的核心技能,我们特别提供两本精选图书的免费赠阅机会。《易懂的Python算法指南》适合所有希望提高算法理解能力的读者,《Go语言编程从入门到精通》则面向对Go语言感兴趣的初学者及有一定基础的开发者。 ... [详细]
  • 本文详细记录了一位求职者在搜狐进行的两次面试经历,包括面试的具体时间、面试流程、技术问题及个人感受。通过本次面试,作者不仅获得了宝贵的经验,还成功拿到了搜狐的录用通知。 ... [详细]
  • RabbitMQ 核心组件解析
    本文详细介绍了RabbitMQ的核心概念,包括其基本原理、应用场景及关键组件,如消息、生产者、消费者、信道、交换机、路由键和虚拟主机等。 ... [详细]
  • 基于51单片机的多项目设计实现与优化
    本文探讨了基于51单片机的多个项目的设计与实现,包括PID控制算法的开关电源设计、八音电子琴仿真设计、智能抽奖系统控制设计及停车场车位管理系统设计。每个项目均采用先进的控制技术和算法,旨在提升系统的效率、稳定性和用户体验。 ... [详细]
author-avatar
手机用户2502935287_564
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有