实战:基于OpenCV的人眼检测

小白学视觉

共 1893字,需浏览 4分钟

 ·

2021-07-14 17:05

点击上方小白学视觉”,选择加"星标"或“置顶

重磅干货,第一时间送达

一、背景


无论学习什么,实践都非常重要。如果打算学习OpenCV、Numpy等Python库,那么这简单的12行代码很适合实践并体验这些库的实时使用。


二、OpenCV库


OpenCV 是 Intel 创建的图像处理库。它提供了简单而有用的方法来读取和写入图像。OpenCV 库允许您实时高效地运行计算机视觉算法。OpenCV 是一个流行的计算机视觉库,具有许多用于图像分析的内置工具。OpenCV 的主要优势之一是它经过高度优化,几乎可在所有平台上使用。


三、NumPy库


Numpy 是一个用于 Python 科学计算的库。它提供了一个高性能的多维数组对象和用于处理这些数组的工具。NumPy 数组类似于列表。我们可以通过首先导入列表将列表转换为 NumPy 数组。Numpy 数组包含相同类型的数据,我们可以使用属性“dtype”来获取数组元素的数据类型。


四、步骤


步骤1:导入所需的库


步骤2:下载以下链接中提供的文件:

https://github.com/anaustinbeing/haar-cascade-files/blob/master/haarcascade_eye.xml



单击Raw选项,然后按Ctrl+S将文件下载到计算机。将此文件上传到Jupyter笔记本中,并在代码中使用,如下所示:

Cascade Classifier函数是从大量正负图像中训练出来的。它进一步用于检测其他图像中的对象。


步骤3:读取图像并调整大小,复制图像和调用函数,如下所示:

cv2.imread(“kid.jpg”) 加载图像,定义图像的尺寸 cv2.resize() :要调整图像大小cvtColor() 用于将图像从一种颜色空间转换为另一种颜色空间cv2.rectangle() 用于在任何图像上绘制矩形


步骤4:显示多张图片并显示指定图片。

np.hstack() 用于在一个窗口中显示多个图像cv2.imshow() 显示指定的图像cv2.waitkey(0) 显示窗口,直到按下任何键

输出图像:


下载1:OpenCV-Contrib扩展模块中文版教程
在「小白学视觉」公众号后台回复:扩展模块中文教程即可下载全网第一份OpenCV扩展模块教程中文版,涵盖扩展模块安装、SFM算法、立体视觉、目标跟踪、生物视觉、超分辨率处理等二十多章内容。

下载2:Python视觉实战项目52讲
小白学视觉公众号后台回复:Python视觉实战项目即可下载包括图像分割、口罩检测、车道线检测、车辆计数、添加眼线、车牌识别、字符识别、情绪检测、文本内容提取、面部识别等31个视觉实战项目,助力快速学校计算机视觉。

下载3:OpenCV实战项目20讲
小白学视觉公众号后台回复:OpenCV实战项目20讲即可下载含有20个基于OpenCV实现20个实战项目,实现OpenCV学习进阶。

交流群


欢迎加入公众号读者群一起和同行交流,目前有SLAM、三维视觉、传感器自动驾驶、计算摄影、检测、分割、识别、医学影像、GAN算法竞赛等微信群(以后会逐渐细分),请扫描下面微信号加群,备注:”昵称+学校/公司+研究方向“,例如:”张三 + 上海交大 + 视觉SLAM“。请按照格式备注,否则不予通过。添加成功后会根据研究方向邀请进入相关微信群。请勿在群内发送广告,否则会请出群,谢谢理解~


浏览 21
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

分享
举报