要回答这个问题,我们可以分解一下机器视觉系统,来逐个分析。
一套最简单的机器视觉系统包括

  • 视觉成像部分
  • 图像处理部分
  • 运动控制部分

1. 视觉成像部分

视觉成像又包含几个典型组件: 光源,镜头,工业相机。
光源和镜头都需要我们掌握光学知识,不同的打光方式,可以让相机对物体产生完全不同的成像;而镜头的倍率,焦距,视野等的选择不同直接决定了成像的逼真度。对于一名机器视觉工程师来说,掌握如何选择镜头,如何选择光源,如何确定打光方式是最基本的技能。

工业相机需要我们掌握光电知识,掌握相机传感器的区别,掌握图像成像的基本知识如清晰度,动态范围,视场角等等,这样我们才能根据需求和场景选择正确的相机,最快速的掌握这些知识的方法是买一台入门级单反来研究透这些成像参数和成像的关系

2. 图像处理部分

图像处理我们一般理解是在PC机器上进行的,实际上在工业领域,大部分采用工控机,因为它稳定,加上有成本优势。

近些年的发展,嵌入式硬件也在蓬勃发展,很多工厂对于小的需求比如控制几百台仪表盘的开关和状态监控,完全可以利用树莓派等开源硬件实现。

对于入门者来说,可以优先掌握PC平台,X86平台的开发,在熟悉之后可以延展到嵌入式平台。

在软件部分,大部分应用层采用C#,.net,QT,C++来实现,因此掌握这其中的一门编程语言是必备的;而在图像算法层面,典型的开源算法有opencv,商用的有halcon,visionpro等,建议最开始可以先以halcon入门;如果在算法层面想进一步深入,可以研究一下机器学习,这可能是未来的主要方向。

对于理论方面,更多的是掌握图像处理的基本概念,这本书《机器视觉算法与应用》,值得一看。

3. 运动控制部分

典型的运动控制卡如固高,可以入手研究一下。更为高级一点的PLC,也可以玩起来,这部分的难点在于,精度的矫正,因为很多场景和需求对精度的要求是非常高的。

除了以上三点,整体方案的搭建能力是至关重要的, 因为方案需要把这些部分都串起来,并且能够和现实场景联系起来,满足实际的生产自动化需求。

而整体方案的搭建能力取决于

  • 对生产工艺的深度理解
  • 对所有组成部分之间的衔接,关系有深刻理解

作者:豪哥的世界

链接:https://www.jianshu.com/p/b261b505a926
来源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

转载于:https://www.cnblogs.com/chinahunter/p/11094166.html

学习机器视觉需要掌握哪些知识?【转】相关推荐

  1. 机器视觉需要掌握哪些知识

    学习机器视觉需要掌握哪些知识 机器视觉系统 1.视觉成像部分:包含几个典型组件:光源,镜头,工业相机 光源和镜头需要我们掌握光学知识,不同的打光方式,可以让相机对物体产生完全不同的成像:而镜头的倍率, ...

  2. 学习SLAM需要哪些预备知识?

    点击上方"3D视觉工坊",选择"星标" 干货第一时间送达 编辑:3D视觉工坊 链接:https://www.zhihu.com/question/3518606 ...

  3. 《Java并发编程实践》学习笔记之一:基础知识

    <Java并发编程实践>学习笔记之一:基础知识 1.程序与进程 1.1 程序与进程的概念 (1)程序:一组有序的静态指令,是一种静态概念:  (2)进程:是一种活动,它是由一个动作序列组成 ...

  4. 汇编学习(1)——基础知识

    汇编学习(1)--基础知识 ---谨以此系列文章记录我的汇编学习.  关于汇编 说起汇编语言,那自然不得不想到机器语言,在汇编语言尚未诞生之际,程序猿们只能非常苦逼的敲着0和1,还要记住一大堆复杂难记 ...

  5. 学习python需要什么基础-学习Python需要哪些基础知识?

    今天是腊月二十七,给各位朋友拜个早年! Python学习可以分为几个阶段,入门.进阶.应用. 先说说入门需要哪些基本的知识储备. Python因为易于学习的特点,入门很简单,掌握基本的Python知识 ...

  6. python基础知识资料-学习Python列表的基础知识汇总

    千里之行,始于足下.要练成一双洞悉一切的眼睛,还是得先把基本功扎扎实实地学好.今天,本喵带大家仔细温习一下Python的列表.温故而知新,不亦说乎. 当然,温习的同时也要发散思考,因为有些看似无关紧要 ...

  7. CV:传统视觉知识—机器视觉系统的基础知识(机器视觉三要素+典型的工业机器视觉系统五大组件)

    CV:传统视觉知识-机器视觉系统的基础知识(机器视觉三要素+典型的工业机器视觉系统五大组件) 目录 机器视觉三要素 1.what-测量.判断 2.why-灵活性.自动化

  8. Python学习--最完整的基础知识大全

    ##Python学习–最完整的基础知识大全 关于python的基础知识学习,网上有很多资料,今天我就把我收藏的整理一下分享给大家! #####菜鸟教程python2 #####菜鸟教程python3 ...

  9. hdp对应hadoop的版本_好程序员大数据学习路线分享hadoop的知识总结

    大数据学习路线分享hadoop的知识总结,Hadoop的背景:原生公司是apache, cdh的cloudar公司,hortworks公司提供hdp. 其中apache的发行版本大致有1.x ,2.x ...

  10. 学习hadoop需要具备基础知识

    学习hadoop需要具备基础知识 首先整体上了解Hadoop,包括hadoop是什么,能够做什么,使用场景等,不需要考虑细节问题.在有了整体上的了解后,就开始准备系统地学习hadoop.建议:勿一味学 ...

最新文章

  1. 团队项目—后续阶段第一天
  2. 关于数据库优化1——关于count(1),count(*),和count(列名)的区别,和关于表中字段顺序的问题...
  3. MFC(六)(对话框)
  4. 更新node最新版本方法和 npm install -g n 运行错误
  5. 产品经理的高薪会持续嘛?
  6. 一、Linux基础知识
  7. malloc,free 与new delete的区别
  8. HardSoft-Viewer SQL
  9. 阶段5 3.微服务项目【学成在线】_day04 页面静态化_04-freemarker基础-基础语法种类...
  10. [20150228]Delayed Block Cleanout 2.txt
  11. 一行代码完成模型训练,30倍加速,3毫秒急速识别,超强图像分类算法开源!...
  12. TLQ 异常杀进程清理 IPC 操作步骤
  13. Linux下PCIE设备分析软件
  14. mate50 鸿蒙,华为Mate50Pro概念机:瀑布环绕屏+鸿蒙系统,就算涨价我也劝你买...
  15. 计算机平面设计要学语数英吗,《计算机平面设计与制作》课程标准规范.doc
  16. 修改计算机参数,缺氧参数怎么修改 游戏内参数修改方法解答
  17. 网站运营如何做好活动策划(转载)
  18. QT开发的pdf阅读器资料
  19. 【安全牛学习笔记】反射型XSS***漏洞的原理及解决办法
  20. 计算机毕业设计之 医院管理系统

热门文章

  1. nodejs、express下载和配置
  2. PAT 乙级 1048 数字加密 (20 分)
  3. 福禄克OptiFiber® Pro OTDR光线测试仪
  4. inode客户端连接成功上不了网_iNode的客户端部分常见问题
  5. Linux自学之MPD
  6. WS2811单线传输三通道LED驱动控制专用芯片
  7. java中this和this()区别
  8. MapInfo中MIF文件和MID文件的格式
  9. 快速理解卷积神经网络VGG16/VGG19,以及每个模块的作用及意义。
  10. Maven中pom文件常见的标签使用以及介绍