如何学习机器视觉

如题所述

这个感觉是从论坛上大家所问的问题得出来的。因为。在论坛中看到不少朋友所问的问题,是相当可笑的。说可笑并非指所提问题过于简单幼稚,而是所问的问题一看就是从书本上抄来的,而不是在实际情况下所遇到的。换句话说,论坛中的朋友大多只是在纸上谈兵,极少有人真正自已动手开发视觉系统。这样说是因为自己搞开发的人绝对问不出某些奇怪问题来的。往深了说一点,好象国内的朋友们只喜欢啃书本,并不愿意(也可能是懒得)动手。一句话,国外机器视觉发展到今天,已经可以清清楚楚分为三个部分: 1,底层开发部分。 2,二次开发部分。3,最终使用部分。于是在国外,从事这一行业的人现在也就可以简单而清楚地分成三种人: 1,底层开发的人(从事底层开发工作的人)。2,二次开发的人(从事二次开工作的人)。3,使用及操作机器视觉系统的人(从事最终使用工作的人)。第一类人。就是我们常说的,开发通用视觉系统(如:DVT,西门子,欧姆龙,EVISION,COGNEX等等)的开发人员,也就是DVT,COGNEX这些公司开发部的技术职工。第二类。就是大家所说的OEM用户。是专门用第一类人所开发出的系统,给第三类人搞二次开发,开发各种专为第三类人所用的系统。第三类人,就是用户(enduser)。这类人是真正将机器视觉系统应用到各个领域中的人,他们不仅在各自的行业中使用种种已经开发成型的机器视觉系统。而且负责对各类系统进行测试及评估。举个实际例子,这里有不少朋友问过这类问题:如何检测某一工件;检测光盘表面的系统该如何配置CCD相机、镜头及灯源等。问这些问题的朋友应该算是第三类人。他们公司要他们寻找一个系统可以用来检测本公司的产品。但由于第一类人所开发的,只是通用的系统以及视觉系统开发工具的软件包。并没有哪家公司专门开发一套系统来检测光盘或是某种特定的工件。所以,这些朋友就应该来找我,因为我是第二类人。我的工作就是,专门用DVT,EVISION,COGNEX等的视觉卡,以及视觉系统开发工具软件包为他们专门开发一套他们所需要的光盘检测系统或是工件检测系统。绕了老大一圈,其实要说的问题就是一个----我所发现的问题:这里80%以上朋友把自己的身分混淆了,越俎代庖。不客气的说,目前国内搞这行的朋友似乎都有些好高骛远。不少从事第二部分工作朋友(搞二次开发的第二类人)对于机器视觉有关知识的了解,尚不如国外第三类人的知识水平(我是从大家所问的问题感觉到的)。而国内第三类朋友知识水平就更可想而知。可是奇怪的是,每个人所问的却都是第二类人要问的,有些甚至是一类人才会问的问题。好象,机器视觉是个十分简单的技术,凭大家随便问几个“关键性”的问题,再由所谓的“专家”三言两语的回答一下。大家就一夜之间都可以自己搞底层开发,成第一类人了。要成为第一类人,又分硬件及软件两种。要对自己所负责的这个模块非常了解,搞软件要知道算法及运行速度;搞硬件要明白公司所选用芯片的特点等等。同时还要清楚对手公司的优缺点以及机器视觉这一行的种种动态和最新技术。总结一下。这三种人相比,第一类人一定要专业,对机器视觉的某一领域非常非常了解;第二类人虽比不上第一类人那么专业,但更加全面;第三类人更熟悉各个应用系统开发公司(第二类人)的优缺点。现在大家可以看得出,机器视觉发展到今天,其分工已经越来越细,每个部分的工作其实是很难相互取代的。大家不要以为第三类人就比第一类人低一等,这是一个错误的等级概念。我本人过去曾属于第一类人,现在作的是第二类工作。而我的几个“师弟师妹”(当初曾一起作第一类人时的同事)现在就在干第三类工作。大家别小看第三类工作,以为这是小儿科,你能真作好这一行也不是很容易。毕竟这也是一门行当也是一个饭碗!另外,以我个人来看:以国内现在机器视觉的水平,对于那些想作第一类人的朋友我在这里劝一句:还是算了吧。国内的机器视觉水平打根子上就差,您还打算搞底层?算法本身都是抄人家的,就只能和对手拼程序的写法了。不过我觉得那更没戏。这样说我绝没有看不起初学者的意思。我说过:所问的问题再简单,我都不会笑话你。对于每样事物我们都是从无知开始的。但是,对于那些极不实际的好高骛远的问题,我还是要说,希望大家踏实下来,戒浮躁,从最基本地学起----先确定自己的身份。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-03-30
机器视觉系统就是利用机器代替人眼来作各种测量和判断。它是计算机学科的一个重要分支,它综合了光学、机械、电子、计算机软硬件等方面的技术,涉及到计算机、图像处理、模式识别、人工智能、信号处理、光机电一体化等多个领域。图像处理和模式识别等技术的快速发展,也大大地推动了机器视觉的发展一个完整的机器视觉系统的主要工作过程如下:1、工件定位检测器探测到物体已经运动至接近摄像系统的视野中心,向图像采集部分发送触发脉冲。2、图像采集部分按照事先设定的程序和延时,分别向摄像机和照明系统发出启动脉冲。3、摄像机停止目前的扫描,重新开始新的一帧扫描,或者摄像机在启动脉冲来到之前处于等待状态,启动脉冲到来后启动一帧扫描。4、摄像机开始新的一帧扫描之前打开曝光机构,曝光时间可以事先设定。5、另一个启动脉冲打开灯光照明,灯光的开启时间应该与摄像机的曝光时间匹配。6、摄像机曝光后,正式开始一帧图像的扫描和输出。7、图像采集部分接收模拟视频信号通过A/D将其数字化,或者是直接接收摄像机数字化后的数字视频数据。8、图像采集部分将数字图像存放在处理器或计算机的内存中。9、处理器对图像进行处理、分析、识别,获得测量结果或逻辑控制值。10、处理结果控制流水线的动作、进行定位、纠正运动的误差等。 从上述的工作流程可以看出,机器视觉是一种比较复杂的系统。因为大多数系统监控对象都是运动物体,系统与运动物体的匹配和协调动作尤为重要,所以给系统各部分的动作时间和处理速度带来了严格的要求。在某些应用领域,例如机器人、飞行物体导制等,对整个系统或者系统的一部分的重量、体积和功耗都会有严格的要求。(良) 清楚了以上机器视觉的原理和过程之后,我建议: 1)人类和动物视觉系统的原理 2)摄像机技术与原理 3)图像识别和处理技术 4)计算机技术5)人工智能
第2个回答  2019-09-20
从图像处理入手,先了解图像处理最基本的操作,如图片的读取、显示,仿射变换,平滑、锐化、腐蚀膨胀等。
理论实践结合。
机器视觉系统最基本的特点就是提高生产的灵活性和自动化程度。在一些不适于人工作业的危险工作环境或者人工视觉难以满足要求的场合,常用机器视觉来替代人工视觉。同时,在大批量重复性工业生产过程中,用机器视觉检测方法可以大大提高生产的效率和自动化程度。
2011年,中国机器视觉市场步入后增长调整期。相较2010年的高速增长,虽然增长率有所下降,但仍保持很高的水平。2011年中国机器视觉市场规模为10.8亿元,同比增长30.1%,增速同比2010年下降18.1个百分点,其中智能相机、工业相机、软件和板卡都保持了不低于30%的增速,光源也达到了28.6%的增长幅度,增幅远高于中国整体自动化市场的增长速度。电子制造行业仍然是拉动需求高速增长的主要因素。2011年机器视觉产品电子制造行业的市场规模为5.0亿人民币,增长35.1%。市份额达到了46.3%。电子制造、汽车、制药和包装机械占据了近70%的机器视觉市场份额。
一个典型的工业机器视觉系统包括:光源、镜头(定焦镜头、变倍镜头、远心镜头、显微镜头)、
相机(包括CCD相机和COMS相机)、图像处理单元(或图像捕获卡)、图像处理软件、监视器、通讯
/
输入输出单元等。
第3个回答  2021-05-10

为了说明这个问题,我觉得应该先要简单地说明另一个问题:国内外机器视觉发展的不同。我本人认为,只有先搞清了两边的不一样,才便于说清如何下手学习。

机器视觉发展至今,一句话概括,可以很清清楚楚地分为三个部分:

01

底层开发部分

第一类:就是我们常说的从事底层开发工作的人,开发通用视觉系统(如:DVT,西门子,欧姆龙,EVISION,COGNEX等等)的开发人员,也就是DVT,COGNEX这些公司开发部的技术职工。

02

二次开发部分

第二类:就是大家所说的OEM用户,从事二次开发工作的人。是专门用第一类人所开发出的系统,给第三类人搞二次开发,开发各种专为第三类人所用的系统。

03

最终使用部分

第三类人,就是用户(end user),从事最终使用视觉系统的人。这类人是真正将机器视觉系统应用到各个领域中的人,他们不仅在各自的行业中使用种种已经开发成型的机器视觉系统。而且负责对各类系统进行测试及评估。

举个实际例子,比如有不少朋友问过这类问题:如何检测某一工件;检测光盘表面的系统该如何配置CCD相机、镜头及灯源等。这些朋友应该算是第三类人;再比如:问应该用哪家公司的开发软件;用什么样的CCD;如何标定等,说的就是第二类人。

或许有的朋友会这样说:我虽然是第三类人,但我对机器视觉有兴趣,想自己学习啊!这就是我想讨论的:到底如何学习机器视觉?我个人认为,应该先确定自己的身份,从自己具体的需要入手来学习。

学习前先确定自己的身份

▲▲▲

要成为第一类人,又分硬件及软件两种。要对自己所负责的这个模块非常了解,搞软件要知道算法及运行速度;搞硬件要明白公司所选用芯片的特点等等。同时还要清楚对手公司的优缺点以及机器视觉这一行的种种动态和最新技术。

想成为第二类人,你一定要是个通才。就是说什么都要知道一点。不仅要了解第三类人的要求,而且也要知道各种第一类人(不同品牌的视觉卡及软件包)的水平。

要成为第三类人,不仅要有机器视觉基本的相关知识。而且,要对自己所工作的行业及领域的机器视觉系统非常熟悉。专作你这行的机器视觉公司有哪几家,各有什么优缺点等等。总结一下。这三种人相比,第一类人一定要专业,对机器视觉的某一领域非常非常了解;第二类人虽比不上第一类人那么专业,但更加全面;第三类人更熟悉各个应用系统开发公司(第二类人)的优缺点。

相似回答