机器视觉检测技术在汽车行业中的应用

    最近在关注机器视觉这个领域,发现各种理论、算法讲了很多,但是在实际应用领域还在探索阶段。想做一个实际应用案例的系列。分享一篇机器视觉检测技术在汽车行业中的应用文章,论文发表在《电子测试》,介绍了机器视觉对汽车零部件平面度检测的设计,对主要内容作了摘抄和整理,分享给大家~

 0 引言

       平面度是汽车零部件的各项形状公差中重要组成部分之一,也是生产检测过程中最重要的技术指标之一。在很大程度上,平面度决定了汽车部分零部件的装配质量,影响汽车的使用性能。所以如何快速准确检测汽车零部件平面度成为目前汽车零件制造行业的研究方向之一。

       到目前为止,在零部件平面度测量行业中,部分厂家仍采用塞尺测量法,检测精度低,效率低,只能检测零件边缘。这对于需要大批量检测的产线是难以接受的。有的厂家采用三坐标测量法 [1],测量速度慢,而且需要被测要素保持水平,导致企业只能对产品行抽检不能进行全检。针对目前测量方法的精度低、效率低、速度慢、容易造成人力资源浪费等问题,本文设计了一种基于机器视觉的汽车零部件平面度在线检测系统,满足了目前国内对汽车零部件进行平面度测量大批量、高速度、高精度的需求,降低企业成本,提高企业的运行效率,具有广阔的应用前景。视觉的汽车零部件平面度在线检测系统,满足了目前国内对汽车零部件进行平面度测量大批量、高速度、高精度的需求,降低企业成本,提高企业的运行效率,具有广阔的应用前景。

图1:设备示意图

1 整体方案设计

       本系统的总体技术路线如图 2 所示,分为视觉和机器两部分:

        (1) 在视觉部分中,主要包含硬件与软件两部分。视觉硬件主要指测量采用的激光轮廓仪。视觉软件指的是点云算法以及上位机软件的设计。点云算法采取先粗配准再精配准的方式,实现平面度测量。上位机软件设计是基于 Visual Studio 2019 软件开发环境使用 C++ 编程语言并调用 PCL 点云库与 OpenCV 视觉库进行编写、测试与实现。

        (2) 在机器部

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Hi~ 可私信我了解后再进行下载~ 1.基于halcon算法平台; 2.提供深度图源文件以及解压密码; 3.代码预览: */******************************* * @文档名称: 基于点云的平面断差测量。 * @作者: hugo * @版本: 1.1 * @日期: 2021-6-20 * @描述: 该方法支持点云的平面的断差测量。 ***********************************/* dev_update_window ('on') dev_get_window (WindowHandle) read_image (imageReal, './replay_38893_2021-6-7.tif') xResolution:=0.06 yResolution:=0.06 zResolution:=0.001 ScaleFactor:=[xResolution,yResolution,zResolution] *采样区域1 create_drawing_object_rectangle2 (300, 120, rad(90), 30, 20, DrawID) set_drawing_object_params (DrawID, 'color', 'forest green') set_drawing_object_params (DrawID, 'line_width', 1) attach_drawing_object_to_window (WindowHandle, DrawID) ............. *对指定区域进行高度滤波 filter_surface_zdatas (Rectangle, imageReal, ImageReduced1, Region1, grayArray, rowArray, rolumnArray) filter_surface_zdatas (Rectangle1, imageReal, ImageReduced2, Region2, grayArray1, rowArray1, columnArray) *拟合指定区域的平面 方法1 fit_surface_regions (Region1, ImageReduced1, imageSurface) *输入已经拟合的平面 方法2 *IntensityImageToPiontsCloudImage (imageSurface, ScaleFactor, 1, 0, SampledObjectModel3D, ObjectModelPlane, zScale) *TransPose1 := [ Column-Length21, Row-Length11,d,0,0,0,0] *rigid_trans_object_model_3d (ObjectModelPlane, TransPose1, _ObjectModelPlane) stop() 谢谢您的信任~

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值