3D工业视觉

前言

本文主要介绍3D视觉技术、工业领域的应用、市场格局等,主要技术包括激光三角测量、结构光、ToF、立体视觉。

一、核心内容

3D视觉技术满足工业领域更高精度、更高速度、更柔性化的需求,扩大工业自动化的场景。

  • 2D视觉技术基于物体平面轮廓,无法获得曲度、空间坐标等三维参数,检验精度低。
  • 激光三角测量、结构光、 ToF、多目视觉等技术共同推动了3D视觉发展。 
  • 生产线在线检测和装配难,需要复杂的解决方案来适应不同的生产场景,并在振动和环境光干扰下实现高速度和高精度,主要技术是激光三角测量和结构光。
  • 高精度缺陷检测场景技术要求高,主要采用激光三角测量、干涉和共聚焦技术;
  • 仓库自动化(尺寸测量、环境感知、手势识别、随机拣箱)主要采用结构光和立体视觉。 

移动机器人视觉引导是一个前景的场景,主要技术包括结构光、ToF、立体视觉。

  • 环境感知具备宽视场、 高速度(用于实时视觉伺服)、高精度的要求,技术路径尚未确定。
  • 特斯拉Optimus的3D传感模块以多目视觉为主,全身搭载8个摄像头,自研SoC芯片FSD,纯视觉方案硬件成本低,对软件算法要求高。
  • 国内外其余厂商多采用3D相机+激光雷达方案,优必选WALKERX的视觉模块采用多目视觉,小米CyberOne的Mi-Sense采用iToF+RGB,追觅采用ToF+结构光,智元A1采用RGBD相机。 

从深度学习到通用视觉大模型,AI助力机器视觉提升效率,拓展应用场景。

  • 过去工业机器视觉主要针对垂直场景的少量数据进行小模型训练,模型处理问题的复杂程度受限。
  • 23年4月Meta发布通用图 像分割大模型SAM,视觉大模型赋能3D视觉,可以实现:
  • a.大模型在广泛下游场景中具备优势,降低定制化开发成本,提升机器视觉产品毛利率,快速拓展应用场景。
  • b.大模型在零样本或少量样本上表现优秀,机器视觉将在这些领域得以拓展,如从代码驱动变为视觉驱动的机器人、流程工业场景。 

二、3D视觉技术

2D视觉与3D视觉对比:

2D视觉发展

  • 2D视觉技术在工业自动化过程的应用已经超过30年时间,
  • 2D视觉基于物体平面轮廓驱动,解决部分二维层面的读条识别、边缘检测等问题,
  • 无法获得曲度、空间坐标等三维参数,但可以满足外观检测、识别等应用,但检验精度低。

3D视觉发展

  • 3D视觉技术在2014年前后开始兴起, 利用立体摄像、激光雷达等技术准确地完成物体三维信息的采集,
  • 对于光照条件、 物体对比度等客观因素适应能力更强,可以实现2D视觉无法实现或者不好实现的功能,
  • 例如检测产品的高度、平面度、体积等和三维建模等,
  • 更加适配半导体、汽车、3C等领域的高精度工业需求,检测要求精度达到<1μm。 

目前3D视觉最有前景的工业应用场景:高精度的测量及缺陷识别、高速高精度的在线检测、自动装配、视觉引导机器人等。

3D视觉常用四种技术:

  • 激光三角测量、结构光、飞行时间(ToF)、多目视觉

1)激光三角测量 (Laser Triangulation)

激光三角测量是一种基于三角几何原理的测距技术。其基本原理如下:

  1. 激光器发射一束激光,照射到目标物体上。
  2. 激光反射回来,并由一个角度固定的摄像头接收。
  3. 通过测量激光反射点在摄像头图像中的位置,可以根据已知的几何关系(激光器、摄像头和反射点之间的角度和距离)计算出目标物体的距离。

这种方法通常用于高精度的距离测量,适合于表面较为平整的物体。

2)结构光 (Structured Light)

结构光技术通过投射已知图案(如条纹、网格等)到目标物体表面,并用摄像头拍摄反射图案来测量物体的三维形状。其原理如下:

  1. 投影设备发射特定结构的光图案到物体表面。
  2. 光图案在物体表面发生变形,并由摄像头捕捉到。
  3. 通过分析捕捉到的变形图案,可以重建物体的三维形状。

结构光适用于获取复杂物体表面的高分辨率三维图像。

3)飞行时间 (ToF, Time of Flight)

飞行时间技术通过测量光信号从发射到返回所需的时间来计算距离。其原理如下:

  1. 光源发射短脉冲光信号(通常是激光或红外光)。
  2. 光信号遇到目标物体后反射回来。
  3. 通过测量光信号从发射到接收的时间差,并结合光速,可以计算出目标物体的距离。

ToF技术能够快速获取物体的距离信息,适合于实时性要求高的应用场景。

4)多目视觉 (Multi-view Stereo)

多目视觉是一种利用多个摄像头从不同角度拍摄同一场景,并通过图像处理算法重建场景的三维信息的技术。其原理如下:

  1. 多个摄像头从不同角度同时拍摄目标物体或场景。
  2. 通过图像配准和匹配算法,确定各摄像头拍摄的图像中相同点的对应关系。
  3. 利用几何方法(如三角测量),计算出对应点的三维坐标,进而重建出整个场景的三维模型。

多目视觉适用于大范围场景的三维重建,广泛应用于摄影测量、机器人导航等领域。

3D视觉检测方法性能对比 

 3D视觉在工业的应用:

三、3D视觉市场格局

主要机器视觉厂商,产业链布局情况对比 :

国内外机器视觉厂商,零部件核心技术指标比较:

各公司视觉软件对比,基恩士3D精度最高:

国内主要视觉引导机器人厂商:

公司简介
海康机器人面向全球的移动机器人、机器视觉产品提供商。
梅卡曼德已形成包括 Mech-Eye 工业级 3D 相机、Mech-Vision 图形化机器视觉软件、Mech-Viz 机器人智能编程环境等在内的智能机器人基础设施产品线,可应用于无序抓取、高精度定位、装配、工业检测/测量、自动生成轨迹等典型场景。
图漾科技全球领先的 3D 机器视觉供应商,为工业和行业应用提供高性价比的 3D 工业相机和配套软件方案。满足工业自动化、工业测量、物流科技、商业应用和其他多种场景。
燧智科技公司的激光结构光 3D 相机产品主要应用于智能机器人引导,线光谱共聚焦 3D 成像系统应用于半导体、一、超分辨和共聚焦成像系统应用于生命科学。
迈德威视专注提供各种工业相机类产品的开发及服务,是一家纯粹的相机硬件供应商,公司产品系列齐全,核心产品包含面阵相机、线阵相机、热成像相机、智能相机、3D 相机、双目相机模组、定制相机整机、摄像头模组等多条产品线。
知象光电知象光电拥有自主研发的微结构光投射芯片、成像算法芯片、模组和整机,产品体积小、精度高、可靠性高。自研 3D 焊接视觉软件可实现复杂焊缝特征提取、轨迹导入、工件拟定定位等功能,焊接机器人落地生产。
埃尔森埃尔森为多样化应用场景提供 3D 视觉方案,双目线扫激光 3D 技术应对严酷工作场景,双目面扫光栅 3D 成像技术应用于高精度成像场景,单线激光 3D 成像技术适合动态定位、测量、检测场景等。
燧智科技面向工艺类场景,切坡口、焊接、上下料推拉流程化解决方案。
迁移科技专注于 3D 工业相机和 3D 视觉机械臂引导系统,2022 年实现规模化量产。
如本科技公司的 RVC 3D 工业相机、VDA 视觉位移测量分析系统以及垂直行业手眼配合产品,协同打造先进的机器人智能手眼方案。
蓝芯科技新一代移动机器人全球引领者和制造业柔性物流解决方案一流提供商,核心技术 LX-MRDVS(蓝芯-移动机器人深度视觉系统)赋予机器人 3D 视觉感知能力。行业聚焦 3C、新能源(光伏/锂电)、包装,合作客户包括华为、中兴、比亚迪、德赛、美的、富士康、SHARP、LG、新能源等。
灵动科技全球领先的视觉导航移动机器人(AMR)企业,第四代移动机器人(视觉 AMR)的开拓者和引领者,亚洲出货量、市场占率第一的“订单到人”方案商,拥有前瞻性的视觉导航 AMR 和全球领先的集群调度系统,以及全球化的销售、服务和运营能力。灵动科技已为众多世界 500 强头部企业提供服务,包括京东物流、顺丰供应链中国、欧莱雅、TCL、东风乘用车等,并成为华为严选唯一的机器人合作伙伴。
马路创新多场景机器人大集群方案解决方案商,深耕人工智能大数据、调度算法、控制中枢等专业技术,聚焦搬运、拣选、分拣、智慧仓库、智慧工厂等场景。

3D 视觉重工行业应用:

3D 视觉技术应用于汽车生产制造:

汽车零部件厂|视觉引导工件上下料

工件上下料是汽车零部件生产加工的重要环节。汽车零部件加工至成品需经过多道工序流转,催生了大量自动化上下料需求。

后续再更新~

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

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

相关文章

软件无线电学习-第二代移动通信系统过程理解

本文知识内容摘自《软件无线电原理和应用》 无线通信领域让大家感受最深的是民用移动通信的快速发展。民用移动通信在短短的二十年时间里已发展了三代:20世纪80年代的模拟体制(TACS/AMPS)为第一代移动通信(简称1G);20世纪90年代的数字体制(GSMCDMATDMA)…

Git提交和配置命令

一、提交代码到仓库 在软件开发中,版本控制是一个至关重要的环节。而Git作为目前最流行的版本控制系统之一,为我们提供了便捷高效的代码管理和协作工具。在日常开发中,我们经常需要将本地代码提交到远程仓库,以便于团队协作和版本…

Java基础教程 - 9 集合

更好的阅读体验:点这里 ( www.doubibiji.com ) 更好的阅读体验:点这里 ( www.doubibiji.com ) 更好的阅读体验:点这里 ( www.doubibiji.com ) 9 集合 什么是集合&…

【stm32/CubeMX、HAL库】嵌入式实验六:定时器(2)|PWM输出

参考: 【【正点原子】手把手教你学STM32CubeIDE开发】 https://www.bilibili.com/video/BV1Wp42127Cx/?p13&share_sourcecopy_web&vd_source9332b8fc5ea8d349a54c3989f6189fd3 《嵌入式系统基础与实践》刘黎明等编著,第九章定时器&#xff0c…

爱普生TG5032SFN温补晶振在机器人控制中的应用

机器人控制是机器人技术的核心组成部分,它涉及通过传感器采集外部环境信息,然后经过信号处理、运动规划和执行控制等步骤,最终实现机器人的运动控制和任务执行。在技术的不断更选,机器人控制也在不断进步和演变。智能化机器人具备…

Z缓冲技术在AI去衣中的关键角色

引言: 人工智能(AI)技术的飞速发展,为图像处理领域带来了革命性的变化。其中,AI去衣技术作为一种新兴的应用,引起了广泛关注。它不仅在多媒体内容的编辑、虚拟现实和增强现实等领域具有重要的应用价值&…

Jenkins 构建 Maven 项目:项目和服务器在一起的情况

bash.sh内容 #!/bin/bash#删除历史数据 rm -rf ruoyi-admin.jar# appname$1 appnamevideo.xxxxx.com #获取传入的参数 echo "arg:$appname"#获取正在运行的jar包pid # pidps -ef | grep $1 | grep java -jar | awk {printf $2} pidps -ef | grep $appname | grep ja…

1673. 找出最具竞争力的子序列

题目 给定一个整数数组 nums 和一个正整数 k,返回长度为 k 且最具竞争力的 nums 子序列。 数组的子序列是从数组中删除一些元素(可能不删除元素)得到的序列。 在子序列 a 和子序列 b 第一个不相同的位置上,如果 a 中的数字小于…

mysql 删除特殊字符 表中存了特殊字符 换行符 回车符 word字符 查询不到

省流: UPDATE t1 SET f1 REPLACE(REPLACE( f1 , CHAR(10), ), CHAR(13), ); 用 replace() 函数将 换行符char(10) 和 回车符char(13) 替换为空字符串。 char(10):换行 char(13):回车 发现表里存进很多换行符,如下图&#xff1a…

Python中文分词工具库之jieba使用详解

概要 在自然语言处理(NLP)领域,中文文本的分词是一个重要且基础的任务。Python的jieba库是一个广泛使用的中文分词工具,提供了丰富的功能,包括精准模式、全模式、搜索引擎模式等,适用于不同的应用场景。本文将详细介绍jieba库,包括其安装方法、主要特性、基本和高级功能…

java技术:oauth2协议

目录 一、黑马程序员Java进阶教程快速入门Spring Security OAuth2.0认证授权详解 1、oauth服务 WebSecurityConfig TokenConfig AuthorizationServer 改写密码校验逻辑实现类 2、oauth2支持的四种方式: 3、oauth2授权 ResouceServerConfig TokenConfig 4、…

MySQL的索引是什么

MySQL的索引 一、索引概述二、索引结构1.简要概述2.从二叉树说起3.再在说下B-Tree4.为什么选择BTree5.Hash又是什么6.博主被面试官经常问的题目 三、索引分类四、聚集索引&二级索引五、索引语法 一、索引概述 1.索引是帮助MySQL 高效获取数据的数据结构(有序)。在数据之外…

[STM32-HAL库]Flash库-HAL库-复杂数据读写-STM32CUBEMX开发-HAL库开发系列-主控STM32F103C6T6

目录 一、前言 二、实现步骤 1.STM32CUBEMX配置 2.导入Flash库 3.分析地址范围 4.找到可用的地址 5.写入读取普通数据 6.写入读取字符串 6.1 存储相关信息 6.2 存取多个参数 三、总结及源码 一、前言 在面对需要持久化存储的数据时,除了挂载TF卡,我们…

燃数科技前端25-40K*14薪一面超简单,下周二面啦

一面 1、自我介绍 2、低代码如何设计的 3、react路由原理 4、react生命周期 5、什么是回调地狱,如何解决 6、jwt和session有什么区别 7、js文件相互引用有什么问题?如何解决 8、一个很大的json文件,前端读取如何优化 面试我的不像是…

为什么说 Redis 是单线程的?——Java全栈知识(25)

为什么说 Redis 是单线程的? 我们常说的 Redis 是单线程的,但是我前面在讲持久化机制的时候又说 RDB 的持久化是通过主进程 fork 出一个子进程来实现 RDB 持久化。那么 Redis 到底是多线程还是单线程的呢? Redis 的网络 IO 和键值的读写是单…

数据库|基于T-SQL创建数据库

哈喽,你好啊,我是雷工! SQL Server用于操作数据库的编程语言为Transaction-SQL,简称T-SQL。 本节学习基于T-SQL创建数据库。以下为学习笔记。 01 打开新建查询 首先连接上数据库,点击【新建查询】打开新建查询窗口, …

C++—结构体

结构体(struct),是一种用户自定义复合数据类型,可以包含不同类型的不同成员。 结构体的声明定义和使用的基本语法: // 声明结构体struct 结构体类型 { 成员1类型 成员1名称; ...成员N类型 成员N名称; };除声明…

【计算机视觉(2)】

基于Python的OpenCV基础入门——视频的处理 视频OpenCV视频处理操作:创建视频对象判断视频是否成功初始化读取视频帧获取视频特征设置视频参数声明编码器保存视频释放视频对象 视频处理基本操作的代码实现: 视频 视频是由一系列连续的图像帧组成的。每一…

Spring—IoC

目录 1. IoC的提出 2. Spring容器 2.1. Spring容器实现原理 2.2. Spring组件 2.2.1 XML标签方式 2.2.2. 类注解方式 2.2.3. 方法注解方式 2.3. Spring容器分类 2.3.1. BeanFactory容器 2.3.2. ApplicationContext容器 2.3.3. WebApplicationContext容器 3. Spring中…

Srping 历史

一、History of Spring and the Spring Framework Spring came into being in 2003 as a response to the complexity of the early J2EE specifications. While some consider Java EE and its modern-day successor Jakarta EE to be in competition with Spring, they are …