opencv进行人脸识别

简介: opencv进行人脸识别

需要使用的库opencv

工具:vs2010

代码如下:

#include <iostream>
#include <opencv2/opencv.hpp>
#include <opencv2/imgproc/imgproc_c.h>
#include <opencv2/calib3d/calib3d.hpp>
#pragma comment( lib, "opencv_highgui249d.lib")
#pragma comment(lib,"opencv_imgproc249d.lib")  
#pragma comment(lib, "opencv_core249.lib")
#pragma comment(lib,"opencv_contrib249d.lib")
#pragma comment(lib,"opencv_objdetect249d")
using namespace std;
using namespace cv;
int main()
{
    Mat image, image_gray;      //定义两个Mat变量,用于存储每一帧的图像
    VideoCapture capture(0);    //从摄像头读入视频
    while (1)                  //循环显示每一帧
    { 
         capture >> image;     //读取当前帧
         cvtColor(image, image_gray, CV_BGR2GRAY);//转为灰度图
         equalizeHist(image_gray, image_gray);//直方图均衡化,增加对比度方便处理    
         CascadeClassifier face_cascade;    //载入分类器
        //加载分类训练器,OpenCv官方文档提供的xml文档,可以直接调用
        //xml文档路径  opencv\sources\data\haarcascades 
        if (!face_cascade.load("C://opencv//sources//data//haarcascades//haarcascade_frontalface_alt.xml"))
        {
            cout << "Load haarcascade_frontalface_alt failed!" << endl;
            return 0;
        }
        //vector 是个类模板 需要提供明确的模板实参 vector<Rect>则是个确定的类 模板的实例化
        vector<Rect> faceRect;
        //检测关于脸部位置
        face_cascade.detectMultiScale(image_gray, faceRect, 1.3, 2, 0 | CV_HAAR_SCALE_IMAGE, Size(30, 30));//检测
        for (size_t i = 0; i < faceRect.size(); i++)
        {   
            rectangle(image, faceRect[i], Scalar(0, 0, 255));      //用矩形画出检测到的位置
        }
        imshow("人脸识别图", image);         //显示当前帧
        waitKey(30);  
    }
    return 0;
}
相关文章
|
3月前
|
存储 算法 Linux
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
【实战项目】网络编程:在Linux环境下基于opencv和socket的人脸识别系统--C++实现
153 7
|
2月前
|
人工智能 计算机视觉 Python
人工智能视觉:基于OpenCV的人脸识别技术的深度解析
人工智能视觉:基于OpenCV的人脸识别技术的深度解析
|
1月前
|
机器学习/深度学习 人工智能 计算机视觉
好的资源-----打卡机+Arm+Qt+OpenCV嵌入式项目-基于人脸识别的考勤系统-----B站神经网络与深度学习,商城
好的资源-----打卡机+Arm+Qt+OpenCV嵌入式项目-基于人脸识别的考勤系统-----B站神经网络与深度学习,商城
|
3月前
|
人工智能 算法 计算机视觉
人工智能视觉:基于OpenCV的人脸识别技术的深度解析
人工智能视觉:基于OpenCV的人脸识别技术的深度解析
|
2月前
|
机器学习/深度学习 监控 算法
使用Python和OpenCV实现简单的人脸识别系统
使用Python和OpenCV实现简单的人脸识别系统
37 0
|
3月前
|
Java 计算机视觉
JDK1.6+OpenCV2.4.9+SWT 人脸识别
JDK1.6+OpenCV2.4.9+SWT 人脸识别
|
3月前
|
算法 计算机视觉 开发者
如何在Python中使用OpenCV实现人脸识别
人脸识别技术在当今社会得到了广泛的应用,如何在Python中使用OpenCV实现人脸识别成为了很多开发者关注的话题。本文将介绍如何使用OpenCV库进行人脸检测和人脸识别,并提供完整的代码示例。
|
3月前
|
弹性计算 Java PHP
新手用户注册阿里云账号、实名认证、购买云服务器图文教程参考
对于初次购买阿里云产品的用户来说,第一步要做的是注册账号并完成实名认证,然后才是购买阿里云服务器或者其他云产品,本文为大家以图文形式展示一下新手用户从注册阿里云账号、实名认证到购买云服务器完整详细教程,以供参考。
新手用户注册阿里云账号、实名认证、购买云服务器图文教程参考
|
2月前
|
文字识别 算法 API
视觉智能开放平台产品使用合集之uniapp框架如何使用阿里云金融级人脸识别
视觉智能开放平台是指提供一系列基于视觉识别技术的API和服务的平台,这些服务通常包括图像识别、人脸识别、物体检测、文字识别、场景理解等。企业或开发者可以通过调用这些API,快速将视觉智能功能集成到自己的应用或服务中,而无需从零开始研发相关算法和技术。以下是一些常见的视觉智能开放平台产品及其应用场景的概览。