0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

怎样在树莓派上设置OpenCV进行人脸检测

454398 来源:工程师吴畏 2019-08-05 11:03 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

什么是OpenCV?

OpenCV是一个开源的计算机视觉机器学习软件库。 OpenCV是在BSD许可下发布的,可以免费用于学术和商业用途。它具有C ++,PythonJava接口,支持Windows,Linux,Mac OS,iOSAndroid

OpenCV专为提高计算效率而设计,专注于实时应用。

如何在Raspberry Pi上安装OpenCV

要安装OpenCV,我们需要安装Python。由于Raspberry Pis预装了Python,我们可以直接安装OpenCV。

键入以下命令以确保您的Raspberry Pi是最新的,并将Raspberry Pi上安装的软件包更新到最新版本。

sudo apt-get update

sudo apt-get upgrade

在终端中键入以下命令,以便在Raspberry Pi上安装OpenCV所需的软件包。

sudo apt install libatlas3-base libsz2 libharfbuzz0b libtiff5 libjasper1 libilmbase12 libopenexr22 libilmbase12 libgstreamer1.0-0 libavcodec57 libavformat57 libavutil55 libswscale4 libqtgui4 libqt4-test libqtcore4

键入以下命令以安装OpenCV 3 for Raspberry Pi上的Python 3, pip3 告诉我们将为Python 3安装OpenCV。

sudo pip3 install opencv-contrib-python libwebp6

完成这些步骤后,应安装OpenCV。让我们测试一下我们的工作吧!

测试OpenCV

要检查OpenCV是否安装正确,请尝试键入以下内容导入OpenCV:

Python3

然后:

import cv2

如果没有显示错误,则安装成功!

要知道您拥有哪个版本的OpenCV,请输入以下命令:/p》

cv2.__version__

此消息告诉您在Raspberry Pi上安装的OpenCV版本。

推荐的可选库

还有其他要安装的库,当你进行对象检测和其他项目时会派上用场,所以我很高兴修改你也安装这些。

NumPy

第一个库是NumPy - 一个使Python中的数组操作易于执行的库。键入以下命令安装NumPy:

pip3 install python-numpy

Matplotlib

第二个库是Matplotlib。 Matplotlib是一个Python绘图库,可以跨平台生成各种硬拷贝格式和交互式环境的出版物质量数据。键入以下命令安装Matplotlib:

pip3 install python-matplotlib

现在我们已经完成了在Raspberry Pi上安装OpenCV和有用的附带库。让我们在Raspberry Pi上使用OpenCV进行对象检测和机器学习。

Face使用OpenCV检测图片

让我们从编写将要检测的代码开始面对它收到的图像。对于面部检测,您需要一个级联文件。将此文件保存在工作目录中“haarcascade_frontalface_default.xml”。

输入要检测面部的图像的路径进入下面的代码并运行代码。

# Import OpenCV library

import cv2

# Load a cascade file for detecting faces

faceCascade = cv2.CascadeClassifier(“haarcascade_frontalface_default.xml”);

# Load image

image = cv2.imread(‘obamafamily.jpg’)

# Convert into grayscale

gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

# Look for faces in the image using the loaded cascade file

faces = faceCascade.detectMultiScale(gray, 1.2, 5)

for (x,y,w,h) in faces:

# Create rectangle around faces

cv2.rectangle(image,(x,y),(x+w,y+h),(255,255,0),2)

# Create the resizeable window

cv2.namedWindow(‘Obama’, cv2.WINDOW_NORMAL)

# Display the image

cv2.imshow(‘Obama’, image)

# Wait until we get a key

k=cv2.waitKey(0)

# If pressed key is ‘s’

if k == ord(‘s’):

# Save the image

cv2.imwrite(‘convertedimage.jpg’, image)

# Destroy all windows

cv2.destroyAllWindows()

# If pressed key is ESC

elif k == 27:

# Destroy all windows

cv2.destroyAllWindows()

运行代码后,它将在面部周围绘制矩形,如下图所示。

运行代码后,所有检测到的面部周围都会出现矩形。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 人脸检测
    +关注

    关注

    0

    文章

    88

    浏览量

    17372
  • OpenCV
    +关注

    关注

    33

    文章

    652

    浏览量

    45162
  • 树莓派
    +关注

    关注

    122

    文章

    2086

    浏览量

    110914
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    基于级联分类器的人脸检测基本原理

    检测人脸这一结果。 注:该算法github上有开源实现:https://github.com/nenadmarkus/pico 3) 算法流程 我们图像上
    发表于 10-30 06:14

    零成本钢铁侠手套!树莓派+OpenCV 秒变手势遥控器!

    使用树莓派和OpenCV实时扫描并存储二维码使用树莓派和OpenCV实现物体与动物识别使用树莓派、摄像头和
    的头像 发表于 08-16 16:16 1700次阅读
    零成本钢铁侠手套!<b class='flag-5'>树莓</b>派+<b class='flag-5'>OpenCV</b> 秒变手势遥控器!

    如何使用树莓派与OpenCV实现面部和运动追踪的云台系统?

    使用树莓派和OpenCV实时扫描并存储二维码使用树莓派和OpenCV实现物体与动物识别使用树莓派、摄像头和
    的头像 发表于 08-14 17:45 2739次阅读
    如何使用<b class='flag-5'>树莓</b>派与<b class='flag-5'>OpenCV</b>实现面部和运动追踪的云台系统?

    如何使用树莓派+OpenCV实现姿态估计和面部特征点追踪?

    使用树莓派和OpenCV实时扫描并存储二维码使用树莓派和OpenCV实现物体与动物识别使用树莓派、摄像头和
    的头像 发表于 08-13 17:44 1568次阅读
    如何使用<b class='flag-5'>树莓</b>派+<b class='flag-5'>OpenCV</b>实现姿态估计和面部特征点追踪?

    如何在树莓派上安装Ubuntu MATE ?

    ,而非GNOME。本文中,我将介绍如何轻松地树莓派上安装它。UbuntuMATE官方支持树莓派,因此每发布一个新版本,都会为
    的头像 发表于 08-12 18:56 3557次阅读
    如何在<b class='flag-5'>树莓</b><b class='flag-5'>派上</b>安装Ubuntu MATE ?

    这个套件让树莓派5运行几乎所有YOLO模型!Conda 与 Ultralytics!

    如何在树莓派上设置YOLO计算机视觉?Conda与Ultralytics本指南中,我们将学习如何使用Conda
    的头像 发表于 07-31 11:51 6038次阅读
    这个套件让<b class='flag-5'>树莓</b>派5运行几乎所有YOLO模型!Conda 与 Ultralytics!

    树莓派 + OpenCV 打造人脸识别技术!

    本指南中,我们将教您如何使用OpenCV和面部识别库(两个出色的开源项目)设置树莓派来检测和识别面部。在这个
    的头像 发表于 07-29 17:27 1638次阅读
    用<b class='flag-5'>树莓</b>派 + <b class='flag-5'>OpenCV</b> 打造<b class='flag-5'>人脸</b>识别技术!

    【Milk-V Duo S 开发板免费体验】人脸检测

    多张人脸识别 针对画面中存在多张人脸的情况进行测试 识别效果较好,速度较快。 同时终端输出检测到的人脸数量 动态效果见底部视频。 总
    发表于 07-27 16:53

    初学者指南:树莓派上搭建虚拟环境!

    在这篇简明扼要的指南中,我们将探讨如何在树莓派上设置和使用虚拟环境(或称为Venv)——包括终端和Thonny集成开发环境中。使用Bookworm操作系统或更高版本时,或在尝试安装P
    的头像 发表于 07-27 13:24 1242次阅读
    初学者指南:<b class='flag-5'>树莓</b><b class='flag-5'>派上</b>搭建虚拟环境!

    如何在树莓派上设置并使用VNC?远程访问完整指南!

    为什么要在树莓派上使用VNC?使用VNC与树莓派的主要优势在于其提供的灵活性。我们可以“无头模式”(无物理显示器)下运行树莓派,同时仍能完
    的头像 发表于 07-26 20:42 6312次阅读
    如何在<b class='flag-5'>树莓</b><b class='flag-5'>派上</b><b class='flag-5'>设置</b>并使用VNC?远程访问完整指南!

    C++ 与 Python:树莓派上哪种语言更优?

    Python是树莓派上的首选编程语言,我们的大部分教程都使用它。然而,C++物联网项目中同样广受欢迎且功能强大。那么,树莓派项目中选择哪
    的头像 发表于 07-24 15:32 1218次阅读
    C++ 与 Python:<b class='flag-5'>树莓</b><b class='flag-5'>派上</b>哪种语言更优?

    【Milk-V Duo S 开发板免费体验】SDK编译、人脸检测OpenCV测试

    【Milk-V Duo S 开发板免费体验】SDK编译、人脸检测OpenCV测试 本文介绍了 Milk-V Duo S 开发板实现 Buildroot SDK 镜像编译、基于 TDL 模型的
    发表于 07-11 13:48

    如何在树莓派上安装并运行 Arduino 集成开发环境!

    ,我们将介绍如何在树莓派上安装并运行ArduinoIDE。所需物品要在树莓派上运行ArduinoIDE,你需要以下组件:配备适当电源的树莓
    的头像 发表于 07-01 17:41 4705次阅读
    如何在<b class='flag-5'>树莓</b><b class='flag-5'>派上</b>安装并运行 Arduino 集成开发环境!

    基于LockAI视觉识别模块:C++人脸识别

    保存裁剪后的人脸图像,目录结构和BaseDataset相同。 6. 总结 通过上述内容,我们成功实现了一个高效的人脸识别系统,包括: 获取并加载包含人脸的图像。 进行人脸
    发表于 07-01 12:01

    树莓派“定居”完全指南:一键设置静态IP,稳定又高效!

    当你为树莓设置静态IP地址时,实际上是为它分配了一个固定地址,该地址不会改变,而动态IP地址则会在设备每次连接到网络时发生变化。树莓派上
    的头像 发表于 05-25 08:32 1834次阅读
    <b class='flag-5'>树莓</b>派“定居”完全指南:一键<b class='flag-5'>设置</b>静态IP,稳定又高效!