利用二次元控件测量机械工程图中未标明零件尺寸

(OpenCV)图像目标尺寸检测   本文翻译自pyimagesearch技术博客上的一篇文章,《Measuring size of objects in an image with OpenCV》,原文作者:Adrian Rosebrock 。 https://www.pyimagesearch.com/2016/03/28/measuring-size-of-objects-in-an-image-with-opencv... 阅读详情

相信很多从事设计工作的读者经常遇到从供应商拿到的图纸只有部分尺寸,往往需要自己测绘供应商提供的零件或机构。卡尺测绘零件是非常繁琐的过程,需要要一手拿笔绘图,一手拿尺测量,效率非常低。笔者在此详细讲解如何使用最新版的机器视觉测量零件尺寸,希望为广大设计工作者提供类似的经验,免除手工测绘之苦,提高工作效率。

 

原始图

笔者拿到的是一块完整电路板,需要为该设计相应的机箱钣金,供应商提供的零件图纸如下:

上面的图中可以看出,电子元器件在图中只有俯视图方向的中心距离尺寸,所有的接口电子元件的外形尺寸都没有,而这些尺寸是设计钣金必须知道的。如下面红色框所示:

测量原理

一般来说,机械工程师经常将CAD图导出成PDF文件。里面的机械图是等比例缩放的。由于原图提供宽度方向的一个较大尺寸(170mm),按照这个尺寸,可以获得像素与实际零件测量单位的比值,根据这个比值,将可以很容易的测量出所需要的平面尺寸。当然,这个过程在机器视觉大师里面的操作是非常简单的,否则还不如直接使用卡尺测量呢。

 

处理过程

整个处理的基本过程如下:

1. 将PDF文件打开,界面滚动到需要测量的部分,然后放大视图(越大越好,尽量放大屏幕能显示)。

2. 使用多多涂吧图像处理软件(其它图像处理软件也行)拷贝屏幕,截取相关部分,保存成BMP文件。如下图:

1. 打开机器视觉大师,登录,然后打开图像文件,并创建一个虚拟视场。

2. 校准并获取2D平面比例,添加相应的二次元(笔者主要采用四方形控件),完成测量。

 

为了简化操作,笔者下面仅仅讲述有关机器视觉大师软件里面相关步骤的详细操作过程,其它软件操作以及机器视觉大师用户登录等部分不作说明。

 

创建虚拟视场

打开运行机器视觉大师。在文件菜单里面打开已经做好的BMP图像文件。


由于BMP图像文件尺寸大于现有的视场显示尺寸(这是必要条件),将出现如下对话框:


选择“创建虚拟视场并显示”,点击”确认”按钮。系统自动创建一个虚拟视场,并显示该图,如下:

2D平面比例标定

原图的尺寸标注单位为毫米,首先在”标定”菜单下将测量单位选定为毫米,


然后,点击“标定“菜单下的”2D平面比例”项,出现”视场平面比例标定“对话框:

移动两个标记与平面尺寸相应位置对齐(如图放大部分所示),输入实际长度170,点击”学习”即完成比例标定。从结果看出,每个像素的大约0.135mm。

 

二次元测量

点击”控件->多边形->矩形”菜单,插入矩形二次元控件,

将控件拖动到带测量的零件图位置,适当调整大小,如下图:


将该控件属性的线宽设置为2,显示风格显示为”尺寸标注”,完成一个零件所需尺寸测量。下图是该控件的实际属性值。

直接拷贝或插入新控件,按照上述过程完成其它尺寸的测量。最终测量的结果如下图:

如果觉得原图与尺寸控件一起显示不怎么好看,可以点击“相机->空白帧“菜单,将底图直接刷白。效果如下图:

温馨提示:采集一帧图像即可还原。

点击菜单”文件->导出->视场图”将图像保存成文件,即可获取测量结果。

 

结束语

笔者描述的图像零件尺寸测量建立在三个条件上:1.  导出的图像必须是等比例缩放的。2.  已知某个实际尺寸(最好是最大的尺寸,这样可以减少误差)。3.  机械工程图是正视视图,非3D类视图(有角度,这种图需要进行局部视角矫正)。图像最好是矢量图,放大以后,可以较少测量误差。整个测量过程不到2分钟,真正简单容易。




本文测试使用的机器视觉大师版本为5.0.0318


最新版多多摄像头大师(机器视觉大师)下载地址:http://www.hdy.net.cn/softshare/ddcam.htm

技术交流QQ群: 295860595  该群文件空间即时更新多多摄像头大师最新版本,下载速度更快



开发中测量控件px长度的开发工具 调整页面时,经常需要测量2个文本框有多少px,调整多少px才能上下对齐.比如说上面2个文本框,下面一个大文本框,下面的要对齐上面的2个文本框,就需要用这个虚拟尺来测量需要把width设为多少px. 测量控件px的工具. 立即下载

相关推荐

基于QT的测量软件

qt 测量

如何对二次元控件进行数值运算

本文简单介绍如何使用机器视觉大师进行二次元控件数值运算。

buffi的专栏 1933

大白话讲解Numpy中什么是一维、二维、三维数组,以及5种创建方式

NumPy中提供了多种创建数组的方式,其中最基本的方式就是通过array()函数创建数组在使用该函数时直接传入列表或元组即可。 通过array()函数分别创建一维数组、二维组和三维数组,那么什么是维度呢?一维、二维、三维有什么区别? 1、什么是维度? 维度可以理解为描述数据的一种 “方向” 或者 “层次”。在数组中,维度的数量决定了我们需要用多少个索引来访问一个元素 2、一维、二维、三维的区别? (1)一维:一维数组就像是一条直线上排列的一组数据,例如: a = np.array([1, 2

1365

PCB板常用检测方法

本文来介绍PCB板常用检测方法 1、PCB板人工目测 使用放大镜或校准的显微镜,利用操作人员视觉检查来确定电路板合不合格,并确定什么时候需进行校正操作,它是最传统的检测方法。它的主 要优点是低的预先成本和没有测试夹具,而它的主要缺点是人的主观误差、长期成本较高、不连续的缺陷发觉、数据收集困难等。目前由于PCB的产量增 加,PCB上导线间距与元件体积的缩小,这个方法变得越来越不可行。 2、PCB板在线测试 通过对电性能的检测找出制造缺陷以及测试模拟、数字和混合信号的元件,以保证它们符合规格,己有针床式测试仪和

hzlb666的博客 6418

开发者的避坑指南:在Apple Silicon Mac上构建RocketMQ Python客户端的完整心路历程

本文详细记录了在Apple Silicon Mac上构建RocketMQ Python客户端的完整过程,重点解决了架构兼容性问题。通过源码编译rocketmq-client-cpp库,修复构建脚本和CMake配置,最终成功在M2芯片MacBook Pro上部署RocketMQ Python客户端,为开发者提供了实用的避坑指南。

Pepper的专栏 696

雷达原理习题答案【西电】

  目前教材用的是陈老师新版的,但是,我发现课后题有一部分是之前某本书里的。答案如下【建议参看原题→查阅答案】 【原题点这里!!点这里!!】 目录跳转功能目前好像只支持网页版 文章目录% 第一章、第二章% 第三章% 第四章% 第五章% 第六章% 第七章% 第八章 % 第一章、第二章 % 第三章 % 第四章 % 第五章 % 第六章 % 第七章 % 第八章 ...

薛定谔的壳的博客 1万+

测绘程序设计|WinForm|常用控件大总结

根据笔者经验,简单介绍了C# WinForm中常见的控件~

小 y 同 学的博客 1162

Leads、SDR、MQL、SQL、L2C术语概念,线索创建与清洗、线索分级模型、线索流转策略、线索的统计与分析

CRM中的“Leads”是什么?笔者在文中不仅较为全面地介绍了相关术语概念,还分析了线索的创建与清洗、线索的分级模型、线索流转策略以及线索的统计与分析。

盼盼学士 5960

详谈机器视觉大师脚本编程

机器视觉大师(MVS),一体式可编程机器视觉控制器(FVS), 可组态机器视觉控制器(EVS)都支持脚本编程。虽然机器视觉大师脚本编程最简单,但是很多用户普遍感觉好像很难入门,笔者将详细介绍一下这些机器视觉大师的脚本编程原理和过程。   机器视觉大师在自动检测模式下,可以支持用户脚本编程。为什么要这样的功能呢?这需要简单介绍一下机器视觉大师提供自动检测功能的目的说起。   机器视觉大师自动

buffi的专栏 4953

AOSP 8.0.0编译中的ANDROID_DATA缺失问题解决方案

在AOSP编译过程中,环境变量和路径设置的正确性至关重要。遇到相关的错误时,检查并修正环境配置通常是解决问题的关键。希望本文提供的分析和解决方案能帮助你顺利编译AOSP。

m0_74337424的博客 398

Ubuntu Rtx3090 Cuda11.7 安装 pytorch3d

pytorch ubuntu pytorch3d 安装

G果的博客 2273

Android自定义控件系列一:如何测量控件尺寸

测量控件尺寸(宽度、高度)是开发自定义控件的第一步,只有确定尺寸后才能开始画(利用canvas在画布上画,我们所使用的控件实际上都是这样画上去的)。当然,这个尺寸是需要根据控件的各个部分计算出来的,比如:padding、文字大小,间距等。非容器控件的onMeasure下面我们就来看看如何给非容器控件(即直接extends View)这只尺寸的:1.@Override2.protected void

观千剑而后识器,操千曲而后晓声。 9391

带洞多边形如何分成凸多边形集合,对多边形进行凸分解?

摘要: 凸分解是计算几何中的经典问题,分为三角化和凸分解两种方法。三角化将带洞多边形转换为简单多边形并分割为三角形,常用算法包括耳剪法、单调多边形三角化等。凸分解则生成更少但更大的凸多边形,常用Hertel-Mehlhorn算法或基于凹点的递归切割。实际应用中建议使用CGAL、Poly2Tri等成熟库处理。三角化适合图形渲染,凸分解更适用于物理引擎和路径规划。关键步骤包括数据校验、选择合适的算法及后处理优化。

插件开发 355

机械设计:如何能看懂复杂机械图纸中的尺寸标注,赶快学起来

小编的话:出入加工现场,各种繁杂的加工工序图纸,你是否都看得懂?这次小编为各位社友带来机械设计中尺寸标注类知识,再也不用担心看不懂图纸啦—— 常见结构的尺寸注法 常见孔的尺寸注法(盲孔、螺纹孔、沉孔、锪平孔);倒角的尺寸注法。 ❖ 盲孔 ❖ 螺纹孔 ❖ 沉孔 ❖ 锪平孔 ❖ 倒角 零件上的机械加工结构 ❖ 退刀槽和砂轮越程槽 在零件切削加工时,为了便于退出刀具及保证装配时相关零件的接触面靠紧,在被加工表面台阶处应预先加工出退刀槽或砂轮越程槽。 车削外圆时的退刀槽,其尺寸一般可按"槽宽×直径

TT13018636633的博客 1万+

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

Android自定义控件系列七:详解onMeasure()方法中如何测量一个控件尺寸(一)

详细研究Android中自定义控件中用到的measure/onMeasure方法是如何实现测量控件大小,如何传递参数的。

苦咖啡的自留地 2万+

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

【MarkMan】图片标注测量

MarkMan图片标注测量

丫丫 1980

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

二次元 (测量仪器用语)

二次元,原义指二维的平面空间,现也表示精密影像式测绘仪。 二次元又名影像测量仪,是在数显投影仪的基础上的一次质的飞跃,是投影仪的升级换代版。它克服了传统投影仪的不足,是集光、机、电、计算机图像技术于一体的新型高精度、高科技测量仪器。 二次元具有多种数据处理、 [1] 、输入、输出功能,特别是工件摆正功能非常实用;备有RS-232接口,与计算机连接后,采用专门测量软件可对测绘图形进行处理及输出;采用彩色CCD摄像机、变焦物镜作为测量瞄准系统;由二维平面工作台、光栅尺与数据处理器组成数字测量及数据处理系统。用

caixiaobai2019的博客 5570

测量控件宽高

void measureChild(View child){ ViewGroup.LayoutParams params = child.getLayoutParams(); if(params == null){ params = new ViewGroup.LayoutParams(ViewGroup.LayoutParams.MATCH_P

vk5176891的专栏 537

Android代码中如何获取控件宽高

源地址http://blog.youkuaiyun.com/nailsoul/article/details/25909313 在activity中可以调用View.getWidth、View.getHeight()、View.getMeasuredWidth()、View.getgetMeasuredHeight()来获得某个view的宽度或高度,但是在onCreate()、onStrart()、onRe

RuiMan的博客 1万+

计算控件尺寸

除非你总是需要一个100×100像素的控件,否则,你必须要重写onMeasure。 onMeasure方法在控件的父元素正要放置它的子控件时调用。它会问一个问题,“你想要用多大地方啊?”,然后传入两个参数—— widthMeasureSpec和heightMeasureSpec。它们指明控件可获得的空间以及关于这个空间描述的元数据。 比返回一个结果要好的方法是...

de14141983的专栏 274

[Android]自定义控件主动测量自己尺寸的方法

自定义控件有时需要主动测量自己的尺寸。如ListView、RecyclerView等列表控件在ScrollView或ExpandableListView中需要保持自己的尺寸,此时比较快捷的办法是写一个自定义的控件类继承与该被包裹的控件类,然后重写其onMeason方法,让其返回默认大小而不是适应的宽高,代码如下: @Override protected void onMeasure(int

Runstoppable的博客 1473
上一篇: 如何生成一维条码图片
下一篇: 检测连接头卡口装配质量
机器视觉大师
博客等级 码龄23年 83粉丝 33原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值