机器视觉方面有哪些好的开发平台?各有什么特点?

原文:https://www.zhihu.com/question/20025224/answer/18874837

作者:知乎用户
链接:https://www.zhihu.com/question/20025224/answer/18874837
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
 

在我的理解:
机器视觉当前的比较流行的开发模式是“软件平台+工具包”
软件平台:
1.VC:最通用,功能最强大。用户多,和windows搭配,运行性能较好,可以自己写算法,也可以用工具包,而且基本上工具包都支持VC的开发。是大家主要选择的平台。
2.C#:比较容易上手,特别是完成界面等功能比用VC+MFC难度低了很多,已经逐渐成为流行的使用平台了,算法在调用标准的库或者使用C#+C++混合编程。可以看到目前很多相机厂商的SDK都已经开始使用C#做应用程序了。
3.LabVIEW:NI的工具图形化开发平台,开发软件快,特别是做工控行业或者自动化测试行业的很多工程师,由于使用labview进行测试测量的广泛性,所以都有labview的基础,再调用NI的Vision图像工具包开发,开发周期短,维护较为容易。
4.VB、delphi:用的人越来越少了。
5.其他:java等没有看到人用过。
工具包:
1.halcon:出自德国MVTech。底层的功能算法很多,运算性能快,用其开发需要一定软件功底和图像处理理论。
2.VisionPro:美国康耐视的图像处理工具包。性能大多数算法性能都很好,性能上没有和halcon直接对比过,但是开发上手比halcon容易。
3.NI Vision:NI的特点是自动化测试大多数需要的软硬件都有解决方案,有点事软件图形化编程,上手快,开发周期快,缺点是并不是每个软件都非常厉害。视觉工具包的优势是售价比大多数工具包或者算法的天文数字便宜了不少,而且整个工具包一个价格,而不是一个算法一个算法地卖,性能方面在速度和精度没有前两种软件好。
4.MIL:加拿大maxtrox的产品,是Matrox Imaging Library 的简写。早期推广和普及程度不错,当前似乎主要用户还是早期的做激光设备的一些用户在用,所以用于定位的较多。
5.CK Vision。创科公司的软件包,相对前面几个工具包来说价格优势比较明显,另外机器视觉需要的功能也基本都有,所以在国内自动化设备特别是批量设备同时需要保护版权的企业而言,用量很大,推广也不错。
6.迈斯肯:迈斯肯的视觉主要产品还是条码阅读一类,图像工具包没有用过,不了解,不评价。
7.OpenCV:感觉openCV更多的还是用在计算机视觉领域,在机器视觉领域其实不算太多,应为机器视觉领域当前主要的应用还是定位、测量、外观、OCR/OCV,感觉这几项都不是opencv的专长。
8.其他:其他还有一些厂家的图像工具包,要么市场影响力不大,要么本人没有用过,不评价。

某回复:

非实时的用Matlab
实时的用OpenCV

计算机视觉,是介于科学研究和实践之间,机器视觉就是实际工厂应用为目标。

一般来说没有具体的语言,如果是2D视觉的话可以用opencv之类的图像库,这些库的语言源码是C/C++的,现在有很多接口,Python和matlab都有接口,如果是3D的话,例如你想搞Kinect等3D图形开发的话,也有很多语言可以选择,C++和C#都行,现在opengl等3D库也有很多接口提供使用,Python和processing语音都可以调用。

你可能感兴趣的:(机器视觉方面有哪些好的开发平台?各有什么特点?)