个人简介
-
姓名:周景鑫
-
年龄:19
-
学历:刚高考完本科还没读 高中毕业算应届吗
-
职业:上海石亭科技有限公司机器视觉实习生
-
主技术栈:
关于传统视觉岗想说的话
-
学什么
- OpenCV的主要api,需要熟悉Python版本与C++版本。
- 需要熟悉《数字图像处理》的大部分概念。
- 熟悉MATLAB中有关图像处理的有关api(视岗位情况而定)。
- 熟悉C++打包OpenCV有关的动态链接库。
- OpenCV的主要api的效果以及原理。
-
怎么学
-
先考虑用途
- 如果你只是在计算机图形学这门课里想用他写个课设,那duck不必接着往下读,你可以直接按照“用什么查什么”的思路进行。
- 如果你想做传统视觉岗位或者做这方面的研究,建议往下读。
-
准备什么
- OpenCV文档类工具书或在线文档
- 《数字图像处理》
- 电脑 配置好opencv-python(建议用PyCharm)或者C++的OpenCV(建议用VS)
- 爱动手的你
-
怎么开始
- 配置环境,让电脑能运行cv有关程序。
- 打开文档,阅读api,理解各个参数意义。
- 查找《数字图像处理》中是否有这个api所对应的过程,如有,尝试理解其原理。
- 打开电脑,尝试运用一次这个api,观察得出的图像,调整各个能调整的参数并尝试理解每个参数对图像造成的影响。
- 如有必要,请记笔记,你要记的东西太多不一定自己记得起。
- 重复以上过程,直到大部分api已经刷完或者已有知识已经足够解决问题。
-
注意事项
- 如果在上述过程中遇到问题,积极百度或者找OpenCV的官方GitHub。
- OpenCV的C++接口建议使用Debug版本,有很多的越界断言等,方便我们查错。
- C++接口中大部分情况下直接看报错的那个语句是看不懂的,不知道给你跳到哪个模板的什么断言了,建议找调用堆栈。
- Python接口中读取进来的图片为numpy的数组形式,合理利用语法糖。
-
一些碎碎念
- C++的报错奇奇怪怪,别担心别害怕,正常现象。
- 如果觉得C++的环境配置困难,不妨从Python入手。
- 数学知识还是要有一些的啦。
- 如果处理的结果不好/不对,合理运用imshow和imwrite保存图像看看(imshow要加waitKey,K要大写的)。
- OpenCV对中文的支持真拉胯,绝大部分场景都用不了中文,无论是路径还是putText。
- 偷偷告诉你,OpenCV在Java和c#都有接口,只是不常用。
- 未完待续吧。。。
-
暂时只有这么多了捏,想起来再补充吧!