【OpenCV图像处理入门学习教程六】基于Python的网络爬虫与OpenCV扩展库中的人脸识别算法比较

本文是OpenCV图像处理学习教程的一部分,对比了基于Python的网络爬虫与OpenCV中的人脸识别算法(LBP)。首先介绍了网络爬虫的基本概念和简单实例,接着详细阐述了LBP算法的原理。通过爬取特朗普、奥巴马、希拉里三人的图片进行训练和预测,结果显示LBP算法的准确率优于Eigenfaces算法,但光照、姿态和表情等因素仍影响识别效果。文章强调了训练样本质量和预处理的重要性。
摘要由CSDN通过智能技术生成

OpenCV图像处理入门学习教程系列,上一篇第五篇:基于背景差分法的视频目标运动侦测

一、网络爬虫简介(Python3)

网络爬虫,大家应该不陌生了。接下来援引一些Jack-Cui在专栏《Python3网络爬虫入门》中的内容来帮助初学者理解。博客内容均仅用于学习交流,请勿用于任何商业用途!

网络爬虫,也叫网络蜘蛛(Web Spider)。它根据网页地址(URL)爬取网页内容,而网页地址(URL)就是我们在浏览器中输入的网站链接。比如:https://www.baidu.com/,它就是一个URL。

标准的爬虫架构如下:(摘自维基百科)


网络爬虫的主要工作流程:

(1)将种子链接加入到队列
(2)调度器从队列获取链接,执行爬虫访问该链接
(3)爬虫提取页面指定的新的链接,交付给队列(重复第二步),或者下载器(下载资源)

在讲解爬虫内容之前,我们需要先学习一项写爬虫的必备技能:审查元素(如果已掌握,可跳过此部分内容)。

1. 审查元素

在浏览器的地址栏输入URL地址,在网页处右键单击,找到检查,如下图所示:(不同浏览器的叫法不同,Chrome浏览器叫做检查,Firefox浏览器叫做查看元素,但是功能都是相同的)


我们可以看到,右侧出现了一大推代码,这些代码就叫做HTML。什么是HTML?举个容易理解的例子:我们的基因决定了我们的原始容貌,服务器返回的HTML决定了网站的原始容貌。


为啥说是原始容貌呢?因为人可以整容啊!扎心了,有木有?那网站也可以"整容"吗?可以!请看下图:


我能有这么多钱吗?显然不可能。我是怎么给网站"整容"的呢?就是通过修改服务器返回的HTML信息。我们每个人都是"整容大师",可以修改页面信息。我们在页面的哪个位置点击审查元素,浏览器就会为我们定位到相应的HTML位置,进而就可以在本地更改HTML信息。

再举个小例子:我们都知道,使用浏览器"记住密码"的功能,密码会变成一堆小黑点,是不可见的。可以让密码显示出来吗?可以,只需给页面"动个小手术"!以淘宝为例,在输入密码框处右键,点击检查。


可以看到,浏览器为我们自动定位到了相应的HTML位置。将下图中的password属性值改为text属性值(直接在右侧代码处修改):


就这样,浏览器"记住的密码"显现出来了:


说这么多,什么意思呢?浏览器就是作为客户端从服务器端获取信息,然后将信息解析,并展示给我们的。我们可以在本地修改HTML信息,为网页"整容",但是我们修改的信息不会回传到服务器,服务器存储的HTML信息不会改变。刷新一下界面,页面还会回到原本的样子。这就跟人整容一样,我们能改变一些表面的东西,但是不能改变我们的基因。

2. 简单实例(Python3)

我对网络爬虫的简单理解,其实就是通过一个程序脚本(通常来说选择Python因为可用库非常多使得代码很简洁)模仿正常的用户浏览器去和服务器交互从而抓取到网页上的某些感兴趣的特定数据。

如果说上面的内容你都没有搞懂,那么没有关系,我们通过实战来解决问题。下面开始准备环境和工具~

网络爬虫的第一步就是根据URL,获取网页的HTML信息。在Python3中,可以使用urllib.request和requests进行网页爬取。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值