您现在的位置是:网站首页> AI人工智能
视觉技术收集
- AI人工智能
- 2024-06-20
- 1133人已阅读
视觉技术收集
视觉软件介绍
硬件:深度相机
机器视觉处理软件:用来完成输入图像数据的处理,通过一定的运算得出结果,这个输出的结果可能是PASS/FAIL信号、坐标位置、字符串等。
常见的机器视觉软件以C/C++图像库,ActiveX控件,图形式编程环境等形式出现,可以是专用功能的(比如仅仅用于LCD检测,BGA检测,模版对准等),也可以是通用目的的(包括定位、测量、条码/字符识别、斑点检测等)。
主流的机器视觉软件有:侧重图像处理的图像软件包Opencv,Halcon、美国康耐视(Cogrex )的 visionpro;侧重算法的matlab,labview、;侧重相机SDK开发的eVision等
一、机器视觉图像处理软件包(算法库):
1、 美国 Opencv------------------由美国Intel公司建立,如今由Willow Garage提供支持
2 、德国 Halcon-------------------德国 Mvtec 公司
3 、加拿大 MIL---------------------加拿大的Matrox Imaging Library(缩写为MIL)
4、 美国 visionpro-----------------美国康耐视(Cogrex )
5、 日本 vision editor--------------日本基恩士(keyence)
6、加拿大 HexSight----------------加拿大Adept公司
7、加拿大 Sherlock-----------------加拿大Dalsa
8、美国 NI Vision-------------------美国国家仪器(NI)公司,基于LabVIEW
9、美国Microscan(迈斯肯MS)---美国欧姆龙迈思肯公司(Omron Microscan)
10、美国 IM------------------------开源库二、机器视觉程序开发环境:
1 美国 MATLAB----------------美国MathWorks
2 美国 LabVIEW----------------美国国家仪器(NI)公司,图像处理软件为NI Vision
3 比利时 eVision等-------------比利时euresys开发,侧重相机SDK开发。三、国内机器视觉处理软件:
1 SciSmart 智能视觉软件 SciVision 视觉开发包---------深圳奥普特(OPT)
2 VisionWARE视觉软件----------------------------------北京凌云光
3 Visionbank机器视觉软件-------------------------------陕西维视图像
4 OpencvReal ViewBench(锐微或力维)-----------------深圳市精浦科技有限公司
四 、机器视觉软件整体对比
----halcon功能最强大,visionPro简单易用,opencv开源最省钱,mil便宜。
----Halcon、visionPro一套电脑运行正版的要一万五(15K)左右,MIL的定位模块才两千(2K)左右。
----每种软件各有自己的技术优势,有些是定位强,有些在于图像预处理更强。某款软件无法实现的功能,换另一款软件则有可能实现。
功能对比:
Labview:在工控方面可以说首屈一指,当然在检查、定位方面比较擅长;
Opencv:在识别方面做的比较好,比如人脸识别、视频识别等等;
Halcon:在尺寸测量方面,感觉Halcon做的比较好,其标定封装的比较好,测量直接可以出来尺寸,还是很方便的;
五、机器视觉软件具体对比及分析
1、美国 Opencv--------------由美国Intel公司建立,如今由Willow Garage提供支持
----Opencv-好处是开源免费图像处理库。缺点是没人长期维护,可靠性,效率,效果和性能不如商业化软件,而且没有技术支持,开发慢,需要自己从头开始摸索。
----Opencv定位模板做的不好,简单的应用用用就行了。
----主要应用于计算机视觉领域,在机器视觉领域其实不算太多,主要还是定位、测量、外观、OCR/OCV,但感觉这几项都不是opencv的专长。
----由于是开源软件,因此其版本繁多,函数库复杂,执行效率受到应用限制,比较适用于科研和学习,不适合工业应用。
----部分公司支持用OpenCV库开发,如美国WillowGarage公司、德国Kithara公司、美国国家仪器(NI)公司和新西兰ControlVision公司。
2 、德国Halcon---德国 Mvtec 公司
----功能最强大最牛,开放性强、有试用的 license、提供超过 1000 个算子 。
----Halcon是一套标准的机器视觉算法包,架构最灵活,具有自己独特底层的数据管理。
----使用 halcon 开发软件,节约产品成 本,缩短开发周期,应用范围广,用到图像处理的地方,都可以使用 halcon;
----包含了各类滤波,色彩以及几何,数学转换,型态学计算分析,校正,分类辨识,形状搜寻等等基本的几何以及影像计算功能。
----HALCON 支持 Windows,Linux 和 Mac OS X 操作环境。整个函数库可以用 C,C++,C#,Visual basic 和 Delphi 等多种普通编程语言访问。HALCON 为大量的图像获取设备提供接口,保证了硬件的独立性。它为百余种工业相机和图像采集卡提供接口,包括 GenlCam,GigE 和 IIDC 1394。 ----缺点:价格比较贵,运行版要一万七,每次分发需要重新购买授权。
3 、加拿大MIL----加拿大maxtrox的产品Matrox Imaging Library(缩写为MIL)
----如果大家想用正版的又要便宜的,建议用MIL,MIL的定位模块才2K左右。
----好处是MiL是免费的,性价比不如 visionPro,halcon 以及 Sherlock,而 且没有几何定位 。
----早期推广和普及程度不错,当前主要用户还是早期做激光设备的,用于定位的较多。
4、 美国visionpro-----美国康耐视(Cogrex )
----工业化、封装、人性化、评估的便捷性、开发的快速性。
----取消了软件授权的形式,硬件授权价格在1.5万-3万不等。
----性能上某些方面不如halcon,但是开发上手比halcon容易。
5、 vision editor-------日本基恩士(keyence)
6、加拿大 HexSight------------加拿大Adept公司
----功能强大的定位器工具能精确地识别和定位物体,不论其是否旋转或大小比例发生变化。
----HexSight是世界上第一个做到1/40亚像素精度的视觉软件,其特点是精度高、定位识别速度快、对环境光线等干扰不敏感、检测可靠性极高,
HexSight 的定位技术
----HexSight的定位工具是根据几何特征,采用最先进的轮廓检测技术来识别对象和模式。这一技术在图像凌乱、亮度波动、图像模糊和对象重叠等方面有显著效果。HexSight能处理自由形状的对象,并具有功能强大的去模糊算法。HexSight快速,在一台2GHz 的处理器上,一般零件寻找和定位不超过10ms,并可达到1/40亚像素位置重复精度和0.01度旋转重复精度。此外HexSight有丰富但易用的图像标定工具,而且它的定位器可以方便嵌入到OEM的产品中。
7、加拿大 Sherlock------------加拿大Dalsa
- ---评估非常快捷,类似于计算器模式,所见即所得
8、美国 NI Vision---------------美国国家仪器(NI)公司,基于LabVIEW
----NI Vision,快速验证的图像处理库(含视觉助手、VBAI)
----NI的优点:LabVIEW平台入门相对简单;
开发速度快;在可配置环境和全面的编程库中作出选择,更好地满足需求并快速启动;
对于自动化测试大多数需要的软硬件都有解决方案,有点软件图形化编程,上手快,开发周期短。
可与所有的硬件组合配合使用,兼容性良好,从而方便地使用现有的代码,管理和维护多个硬件系统。
----缺点:LabVIEW平台下的算法的效率不够;算法的准确性与稳定性依赖与更好的图像素质,与其它算法(如Halcon)还是有一定的差距。并不是每个软件都非常厉害。
----总结:
适合于做效率要求不太高,图像质量相对比较好,且交货周期较短的项目。
视觉工具包的优势是售价比大多数工具包或者算法的天文数字便宜了不少,而且整个工具包一个价格,而不是一个算法一个算法地卖,性能方面在速度和精度没有halcon好。
9、美国Microscan(迈斯肯MS)---美国欧姆龙迈思肯公司(Omron Microscan)
----欧姆龙迈斯肯的视觉主要产品还是条码阅读一类六、机器视觉程序开发环境:
1 美国 MATLAB----------------美国MathWorks
----Matlab,底层算法验证不二选择
----matlab用法方便,特别是集成了图像处理的很多函数,几乎囊括了所用图像处理的方法。把常见操作都做成了相应 的内建函数,使使用者不用去考虑怎样读取图片、怎样转换颜色空间等固定和成熟的算法的细枝末节,将主要精力投放到算法研究中。
缺点:matlab对处理方式的细节把握不够。
2 美国 LabVIEW----------------美国国家仪器(NI)公司,图像处理软件为NI Vision
----美国NI公司的应用软件LabVIEW机器视觉软件编程速度是最快的
3 比利时 eVision等-------------比利时euresys开发,侧重相机SDK开发。
----eVision机器视觉软件包是由比利时euresys公司推出的一套机器视觉软件开发SDK,相比于其他的机器视觉开发包,它似乎在SDK的功能分类上比这两个提供了更多的选择项。
----evision机器视觉软件开发包所有代码都经过mmx指令的优化,处理速度非常快,感觉和Intel的IPP有的一拼(当然还是比IPP稍逊一筹,但是毕竟这是Intel自家开发的),但却提供了比IPP多得多的机器视觉功能,例如OCR,OCV,基于图像比对的图像质量检测,Barcode和MatrixCode识别。七、国产机器视觉软件:
1 SciSmart 智能视觉软件 SciVision 视觉开发包---------深圳奥普特(OPT)
优点:做苹果手机项目(富士康),拥有数十人的软件开发及定制化应用团队,定制化开发应用能力比较强,在手机、电子等行业优势较大。
2 VisionWARE视觉软件----------------------------------北京凌云光
优点:在印刷品检测方面优势较大,做钞票印刷检测。在比较复杂的印刷品反光、拉丝等方面算法比较可靠,漏检率低。
3 Visionbank机器视觉软件-------------------------------陕西维视图像
优点:
----部分测量和缺陷检测功能较好用,易上手,不需要任何编程基础,能非常简单快捷地检测出来。
----达到四分之一亚像素,和haLcon精度差不多。
----图像预处理:把不需要的颜色处理掉,能处理掉色差非常接近的颜色,功能非常强大。
缺点:印刷品字符识别能力一般,有漏检。
4 OpencvReal ViewBench( 利维)-----------------深圳市精浦科技有限公司
----RVB包含各种Blob分析,形态学运算,模式识别和定位,尺寸测量等性能杰出的算法,提供不同形状关注区(Region ofInterest, 简称ROI)操作,可以开发强大的视频人机界面功能。
----RVB与图象采集设备如CCD相机无关,目前支持多种厂家的相机,接口包括USB2.0/3.0, GigE,1394a/b,如有更多相机接口要求,可以为客户免费定制。
部分转载自
常用机器视觉软件对比及分析-工业视觉/halcon-少有人走的路www.skcircle.com
机器视觉当前的比较流行的开发模式是“软件平台+工具包”
VisionPro和Halcon机器视觉
VisionPro和Halcon都掌握吧,各有优缺点的。
visionpro定位、测量功能更好,但是halcon开发更灵活。
我一开始用visionpro,现在习惯了halcon
halcon比较成熟,网上的破解软件也很多,教程资料也和很多(又从vision pro开始学的,但是这个目前学习资料确实不多)。之所以推荐从halcon入门,还一个重要原因是HDevelop(halcon算法的开发软件,两者关系有点类似微软的office和word的关系)提供了大量辅助工具帮助进行图像分析和软件调试,调试完毕后可以直接点击“插入代码”按钮自动生成程序语句,如下图所示,这样可以帮助我们快速完成程序编写并了解具体该用什么算子。程序编制完成后,HDevelop还可以直接导出C、C++、C#、VB等,以便后续程序的汇总。
机器视觉入门的书籍首选推荐《机器视觉算法与应用》,如下图所示,左侧为第一版,右侧为第二版。这本书基本算是halcon的官方书籍,因为本身作者就是halcon的开发人员,而且最难得的是这是少有的从相机、镜头、光源这些硬件开始写起的机器视觉图书。当然这本书限于篇幅理论讲的不是很细,讲理论还是得经典的冈萨雷斯的《数字图像处理》,但是入门我还是建议《机器视觉算法与应用》,还是说先了解整体架构,了解套路,知道怎么干,然后再深入。第一版是双语版(可以顺便学英语专业词汇),第二版增加了新的摄像机和图像采集接口、三维传感器及技术、三维重建、三维物体识别以及最先进的分类算法等
机器视觉软件编程我建议最好采用C++,虽然这两年python比较火,但是工业上还是C++用的更多一些。如果像我是从机械转行机器视觉,零基础开始学,图书建议选《C++ Primer Plus》,如下图。虽然《C++ Primer》更经典,但是就像那句话说的“《C++ Primer》一点都不primer”,《C++ Primer》是可以用来当做C++的字典用的一本书,不适合用于C++入门。而且读《C++ Primer Plus》这本书可知直接照着书练习,示例非常完整详细,不需要配合别的视频教程类的资料学习。
下一篇:AI硬件