机器视觉应用方向及学习思路总结

网友投稿 310 2024-02-14


1、halcon软件提供的是快速的图像处理算法解决方案,不能提供相应的界面编程需求,需要和VC++结合起来构造MFC界面,才能构成一套完成的可用软件2、机器视觉在工业上的需求主要有二维和三维方面的 ? ?二维需求方面有:⑴识别定位;(2)OCR光学字符识别;(3)一维码、二维码识别及二者的结合;(4)测量类(单目相机的标定);(5)缺陷检测系列;(6)运动控制,手眼抓取(涉及手眼标定抓取等方面) ? ?三维需求方面:(1)摄像机双目及多目标定(2)三维点云数据重构3、要成为一名合格的机器视觉工程师必须具备以下三个方面的知识(1)图像处理涉及以下几大领域: ? ?A、图像处理的基本理论知识(图像理论的基础知识) ? ?B、图像增强(对比度拉伸、灰度变换等) ? ?C、图像的几何变换(仿射变换,旋转矩阵等) ? ?D、图像的频域处理(傅里叶变换、DFT、小波变换、高低通滤波器设计) ? ?E、形态学(膨胀、腐蚀、开运算和闭运算以及凸壳等) ? ?F、图像分割(HALCON里的Blob分析) ? ?G、图像复原 ? ?H、运动图像 ? ?I、图像配准(模板匹配等) ? ?J、模式识别(分类器训练,神经网络深度学习等)比较好的参考书籍有 ? ?经典教材:冈萨雷斯的《数字图像处理》及对应的MATLAB版 ? ?杨丹等编著《MATLAB图像处理实例详解》 ? ?张铮等编著《数字图像处理与机器视觉——Visual C++与MATLAB实现》 ? ?左飞编著的《数字图像处理:原理与实践(MATLAB版)》 ? ?左飞编著的《数字图像处理技术详解与Visual C++实践》 ? ?谢凤英编著的《Visual C++数字图像处理》 ? ?《精通系列·精通Visual C++数字图像处理典型算法及实现(第2版)》(2)软件编程功底 ? ?具备C,C++,C#及MFC界面开发的功底 ? ?A、C语言的学习主要看谭浩强写的C语言相关知识 ? ?B、C++主要看C++ primer plus书籍 ? ?C、MFC的学习主要看孙鑫编写的《VC++深入详解》这本书及相应的视频教程,并在VC++6.0软件或VS2010等软件上编写程序和实践。

机器视觉应用方向及学习思路总结

? ?D、C#可以看书籍《C#从入门到精通》、《Head First C#》、《C#入门经典》、 ? ?《C#图解教程》、《C#高级编程》、《.Net Frameword 高级编程》、《CLR via C#》(3)光学知识: ? ?主要阅读书籍《工程光学》、重点放在几何光学方面,了解成像原理及相应的光路分析,知道光源的特性、镜头分辨率、相机分辨率等方面的知识。

? ?光学知识主要在你设计方案时相机、光源、镜头等选型时起到关键作用 ? ?软件功底的作用是软件的架构设计分析,架构包括UI层设计、业务逻辑层开发、数据层开发 ? ?HACLON主要完成图像处理算法的实现。

? ?目前市场上工业领域中主流的图像算法处理软件有HALCON, NIvisionpro, opencv ? ?学习HALCON最重要的是学习其中的方法、流程和套路4、HALCON主要完成图像算法的流程套路如下:特征提取总结: ? ?1、几何特征(面积、周长、矩形度)2、纹理特征(与灰度相关,如熵、能量值) ? ?3、颜色特征4、概率特征5、算子描述特征 6、Hough特征(梯度直方图特征) ? ?做机器视觉的项目,拿到项目时一般遵循如下流程: ? ?第一步:需求分析,建立相应的方案 ? ?第二步:算法流程规划及业务逻辑设计 ? ?第三步:模块化编程及集成化实现 ? ?第四步:调试,根据反馈结果来不断的修改程序Bug,达到客户需求,最后交付客户及软硬件操作文档。

学习机器视觉的好方法: ? ?1、学习机器视觉一定要结合项目实战,在实践中学习总结经验教训,系统化学习所需知识 ? ?2、补充一定的C++和c#知识,进行VS联合开发,客户现场的学习和现场调试,不断学习示例分析,掌握方法套路流程。

? ?3、根据实际问题,学习模块调用,按照方法套路学习 ? ?4、最好是先用HALCON实现图像处理部分,然后在VS2010开发软件中利用MFC图形界面实现出来,实践学习是最好的方法 ? ?机器视觉学习的发展趋势是结合神经网络、深度学习进行相应的人工智能机器视觉开发。

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:机器视觉应用垃圾分类
下一篇:SIMV无纺布表面瑕疵检测设备的原理及功能
相关文章

 发表评论

暂时没有评论,来抢沙发吧~