《用Python构建机器学习》——第十章:计算机视觉-模式识别 读后小结

本文是《Building Machine Learning Systems with Python》第十章的笔记。亚马逊英文版链接(话说亚马逊现在图书的介绍图像做得很赞啊!)

这本书和图灵出版的《机器学习实战》一书有点类似。《机器学习实战》那本书是非常建议购买一本的,如果这本书出版了,也建议购买一本。这里将阅读第十章的一些心得记录下来。

首先,关于第十章《Computer Vision: Pattern Recognition》。这一章有点名不符实,本章一半篇幅在介绍图像的基本处理,这一部分有点充数的感觉。

另外,本章使用了我以前没听过的Mahotas图像处理库。关于这个库的介绍可参见:介绍、Github、官网、文档。

我其实不清楚为什么作者使用这个库而不用OpenCV。比如,Mahotas远没有OpenCV功能强大,从目前已有的信息来看,Mahotas已有的优点,OpenCV都具有。另外,更重要的一点,根据国外友人的测试,OpenCV的速度远远快于其他常见的Python上的图像处理库,OpenCV比Mahotas快20-30倍,地址在这(自备梯子)。当然,不排除我对OpenCV先入为主的一些看法。

其实,上面一段是调侃的。。。因为后来我发现Mahotas软件包的作者就是本书的作者之一——Luis Pedro Coelho,这就不难理解为什么本书使用这个以前我没听过的库了。(仰天长笑,我还以为我out了。。。)

言归正传。本章的布局为:

10.1 Introducing image processing
10.2 Loading and displaying images
10.3 Basic image processing
Thresholding
Gaussian blurring
Filtering for different effects
Adding salt and pepper noise
Putting the center in focus
10.4 Pattern recognition
10.5 Computing features from images
10.6 Writing your own features
10.7 Classifying a harder dataset
10.8 Local feature representations

标题号是我自己加上去的,为了方便下文的说明。10.4之前的内容,除了Putting the center in focus的内容没有介绍外,其他都能在我的《OpenCV-Python教程》中找到。

10.4是模式识别,但这里有些误导。他用Tip来提示作者:“模式识别就是图像分类。由于历史原因,曾经将图像分类称为图像分类。但有关模式识别的应用和方法不只局限于图像方面。”根据机械工业出版社的《模式识别》一书,模式识别是将对象进行分类,这些对象包括图像、信号波形或者任何可测量且需要分类的对象。所以建议读者在记住知识点时,不要只看Tip的标题,还要看其说明。^_^。

10.5和10.6介绍计算特征图像以及如何自己编写特征。Sobel算子、Laplacian算子和Canny算子都是计算图像特征的。图像特征并没有统一的定义,但可以看一下维基百科的词条,这个词条是介绍特征提取,可以作为参考。

10.7是对10.8的铺垫,而10.8这介绍用Mahotas包中的函数应用SURF算法,并用K均值对不同结果进行了精度评价。有空我写一篇OpenCV-Python关于SURF的文章。

个人观点,这一章对计算机视觉的机器学习方面做了初步的介绍,并且宣传了作者自己的Mahotas函数包。读者要想在计算机视觉充分利用机器学习,还需要进一步的学习。

友情提示:尊重版权,请勿索要电子版,谢谢。

你可能感兴趣的:(OpenCV,Python)