最近开始接触图像处理,开始学习大名鼎鼎的OpenCV。都说分享才是最好的学习,能用自己的语言向别人解释清楚才是真正的理解透彻了,所以我决定在学习的同时不断总结、在这里和大家分享自己的所悟。
学习OpenCV最好的教程应该是官方的教程文档了,在解压后opencv\build\doc下有tutorial和refman(接口介绍),但是都是英文写的,文字很多很密集,好吧其实我有密集恐惧症。所以我推荐大家看一下中文站点翻译的教程,快速入门,尽快建立整体框架概念,后续可以回过头有针对性的去看官方教程: http://www.opencv.org.cn/opencvdoc/2.3.2/html/doc/tutorials/tutorials.html。这里写的比较简单,很多算法并没原理解释,没有基础的筒子们会非常难理解。好吧,其实我初看的时候也是不懂,就让我来为大家做补充吧,保证一看就懂哦~~~
好了,不多啰嗦了,回到正题。图像处理或者说机器视觉,要处理的都是图像,所以咱们先不急着去搞OpenCV,先捋一下图像基础,温故而知新哈~
一、黑白2值(二进制图)
我们从简单说起,首先是80后童年的掌上游戏机那种,黑白2值的点阵图,如下图:
这种图片的原理非常简单:需要显示的小格子涂黑,背景白色,刚好就对应了计算机中的0/1两种状态了。这种用矩阵来表