关于机器视觉学习路线的问题?

很多人认为机器视觉和计算机视觉是一个概念,其实还是不一样的。一般来说,机器视觉就是用机器代替人眼进行测量和判断,侧重于工程实用性,实时性,高精度等。计算机视觉是一个通过技术帮助计算机“看到”并理解数字图像内容的研究领域,例如理解照片和视频的内容。侧重于理论和算法

这么说好像有点不好理解,那我从其他方面讲一下。

机器视觉要考虑的很多问题,其实还不是算法问题,算法是很重要,但对于很多机器视觉任务来说,其实最重要的是整个系统如何组织和运行。比如在什么平台上?在什么环境下?需要达到什么精度和速度?类似于光源、镜头、相机、相机-计算机接口这种问题,在计算机视觉里,都是基本上不怎么考虑的问题。但实际上,这种问题恰恰是机器视觉系统中很重要的问题。

至于题主说到的OpenCV,其实机器视觉领域用得最多的软件应该不是OpenCV,而是Halcon。虽然知道OpenCV的人比知道Halcon的人多多了,但实际上,Halcon才是最适合做机器视觉的软件,这是由它的定位决定的。

在机器视觉行业,从易用性来说,Halcon比OpenCV好用多了。当然OpenCV有很多自己的优势,比如开源,比如丰富的算法,但体现在机器视觉领域会比较少一些。

所以如果你真的想学习机器视觉,我觉得从Halcon开始是比较合适的。当然最好是以项目驱动的方式来学习,这样一个流程走完后,应该就会对机器视觉有所了解了。

如果是想快速解决某个问题,用Halcon做好算法以后,可以生成各种所需语言的代码,比如C,C++,C#,然后也很方便地集成到目标系统中。

至于选择集成到用什么语言的软件,如果是Windows平台的话,C#可能是最容易学的,而且不容易出错,对新手非常友好。C++的话,建议选Qt而不是VC++。

机器视觉的书籍,只推荐一本,这本书对于机器视觉来说,非常经典。虽然比较古老,但并不过时。即使你只想学习OpenCV,那这本书其实也很有启发性。

本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!