机器视觉难不难?我这么说吧,如果说学一门编程语言只需要知道26个字母,全职学的话最多只需要半年就可以入门,那么,机器视觉相比学一门编程语言,在要会26个字母的情况下,资质好一点的人可能只需要一个月不到,再差一些的人也只需要一两个月即可。我说的!
![]()
我其实并不是机器视觉相关专业出身,我原本其实就是一个普普通通的码农而已,最开始,我在一家公司做上位机开发,我们公司的开发模式是C++负责后端、C#负责前端,C++负责机器视觉图片的抓取和处理,而C#则负责相关参数和操作的增删改查以及机器视觉结果的显示。
机器视觉目前主流的开发框架基本上就OpenCV和Halcon两种。
可是,机器视觉相关人才虽然多,但是编程语言分布却特别杂。
最主流的当然是Python啦,然后是Java,其次是C++,最后才是C#。
其中,Python和Java主要以OpenCv为主,而C++和C#则多以Halcon为主,其中,C++程序员用OpenCv的更加多一些。
C#不是不可以开发OpenCv项目,在.Net库中就有现成的OpenCv库,但是,因为用的人比较少,所以学习曲线也就陡峭点。
另外一个造成C#“死磕”Halcon的原因就是,目前国内有个专门搞视觉项目的大厂某康,他们的核心算法库其实就是照搬Halcon的,而某康自己又搞了一套Workflow,后台代码也是用C#写的,所以,C#程序员学习Halcon就更加容易上手了。
当然,这只是我的解释,您可以发表您自己的意见!
总之,当初我搞上位机的那家公司,因为总是招不到合适的人才,所以就想要内部培养,把一帮C++和C#上位机程序员弄到了一起,由公司机器视觉大牛亲自带队,组织了不到一个月的Halcon视觉算法培训。
最终,我在一群人之中脱颖而出,成功成为了一名机器视觉上位机全栈!其他人都没学会!
当时我是挺得意,觉得自己挺牛的,竟然不到一个月就入门了Halcon,但是现在想想,自己可能是最不聪明的那一个!
您想,好端端的上位机程序员不当,非要去搞机器视觉,机器视觉的坑有多大,搞过的人都知道!
不管怎么样,我觉得Halcon比OpenCv要容易得多,当然,只是入门而已,真的想要成为机器视觉算法专家,我还是有很长的路要走,毕竟我不是机器视觉科班出身的,理论知识还是比较薄弱。
但是,这并不影响我去做机器视觉项目,我觉得不管是编程语言还是机器视觉算法,只要您入了门,并且能够凭借一些基础能力成功拿到一份Offer,后面就是“师傅领进门,修行靠个人”了!毕竟,不是谁一从学校毕业就是个能够应付各种项目的大牛嘛!
我当初学习C#的时候满打满算也就花了半年时间,注意啊,这是零基础,其中还包括了CS和BS两种学科。
可是,我学习Halcon只花了不到一个月时间,中间我还要给公司写其他项目,所以,可见Halcon其实并不难!
当然了,我会写代码这肯定对于我学习Halcon算法有帮助,但是帮助其实并不大。
这么说吧,当初我学Html+Css+JavaScript几乎也只是用了一个月时间,而Halcon其实要比Html+Css+JavaScript更加简单一些。
总结
我知道我这么说肯定会有人持反对意见,但是我还是要说,我所说的简单,只是入门简单,就像一个刚毕业的程序员能力99.99%比不上一个工作了20年的程序员一样,没什么可比性!
另外,可能能还有一个疑问,那就是OpenCv和Halcon到底选哪个去学好呢?
如果您没有任何编程基础,我建议您从Halcon开始学,后续对机器视觉有了深入的理解以后,再去尝试OpenCv。
如果您有一定的编程基础,学习哪个,得看您未来的职业方向。
如果是往人工智能、自动驾驶、机器人视觉、安防监控等非工业场景上发展,我建议去学习OpenCv,因为OpenCv在这方面有大量的成熟算法库,您学习起来,会相对容易些。
而如果是工业场景,比如说尺寸测量、字符或者编码识别、定位这些,最好还是Halcon,因为Halcon在这方面也有很稳定的算法库!
主要的是,目前工业场景下的开发,基本上是以C++和C#为主。
这么说,您明白了吗?
特别声明:以上内容(如有图片或视频亦包括在内)为自媒体平台“网易号”用户上传并发布,本平台仅提供信息存储服务。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.