资源简介
OpenCV下人脸特征点检测,C++源代码,装了OpenCV可直接运行
代码片段和文件信息
#include “cv.h“
#include “highgui.h“
#include
#include
#include “opencv2/core/core.hpp“
#include “opencv2/imgproc/imgproc.hpp“
#include “opencv2/highgui/highgui.hpp“
#include
#include
#include
using namespace cv;
using namespace std;
CvHaarClassifierCascade* load_object_detector( const char* cascade_path )
{
return (CvHaarClassifierCascade*)cvLoad( cascade_path );
}
/* takes image filename and cascade path from the command line */
int main()
{
char *file = new char;
cout << “请输入图像路径:“< cin >> file;
IplImage* image;
image = cvLoadImage(file 3 );
CvHaarClassifierCascade* cascade_eye = load_object_detector(“haarcascade_eye_tree_eyeglasses.xml“);
CvHaarClassifierCascade* cascade_face = load_object_detector(“haarcascade_frontalface_alt2.xml“);
CvMemStorage* storage = cvCreateMemStorage(0);
CvSeq* faces = cvHaarDetectobjects(image cascade_face storage 1.2 2 CV_HAAR_DO_CANNY_PRUNING );
int i;
for( i = 0; i < faces->total; i++ )
{
CvRect face_rect = *(CvRect*)cvGetSeqElem( faces i);
cvSetImageROI(imageface_rect);
int eye_left=0;
int eye_right=0;
int eye_hei=0;
///////////////////////////////////////////////////////////////////////////////////////////////////////
CvMemStorage* storage1 = cvCreateMemStorage(0); //创建动态内存
CvSeq* eyes;
int j;
eyes = cvHaarDetectobjects(image cascade_eye storage 1.2 2 CV_HAAR_DO_CANNY_PRUNING );
/* draw all the rectangles */
for( j = 0; j < eyes->total; j++ )
{
/* extract the rectanlges only */
CvRect eye_rect = *(CvRect*)cvGetSeqElem( eyes j);
cvSetImageROI(imagecvRect(face_rect.x+eye_rect.xface_rect.y+eye_rect.yeye_rect.widtheye_rect.height));
//记录眼球中点
if(j==0)
{
eye_left = face_rect.x + eye_rect.x + eye_rect.width/2;
eye_hei = face_rect.y + eye_rect.y + eye_rect.height;
}
else if(j==1)
{
eye_right = face_rect.x + eye_rect.x + eye_rect.width/2;
int temp = face_rect.y + eye_rect.y + eye_rect.height;
if(temp>eye_hei)
eye_hei = temp;
}
//检测眼睛区域内的瞳孔
IplImage* img = cvCreateImage(cvSize(eye_rect.widtheye_rect.height) IPL_DEPTH_8U 3);
IplImage* hue = cvCreateImage(cvSize(eye_rect.widtheye_rect.height) IPL_DEPTH_8U 1);
cvCopy(imageimg0);
//计算色相平面
int pq;
for(p=0;pheight;p++)
{
for(q=0;qwidthStep-1;q=q+3)
{
int rgbmax=0min=300;
b = ((uchar*)(img->imageData+p*img->widthStep))[q];
g = ((uchar*)(img->imageData+p*img->widthStep))[q+1];
r = ((uchar*)(img->imageData+p*img->widthStep))[q+2];
if(r {
min=r;
max=g;
}
else
{
min=g;
max=r;
}
if(b>max)
max=b;
if(b min=b
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 744960 2011-08-17 10:21 人脸特征点检测\Debug\opencv_calib3d231.dll
文件 1243136 2011-08-17 10:10 人脸特征点检测\Debug\opencv_calib3d231d.dll
文件 548352 2011-08-17 10:27 人脸特征点检测\Debug\opencv_contrib231.dll
文件 1072640 2011-08-17 10:16 人脸特征点检测\Debug\opencv_contrib231d.dll
文件 1717760 2011-08-17 10:17 人脸特征点检测\Debug\opencv_core231.dll
文件 2335744 2011-08-17 10:08 人脸特征点检测\Debug\opencv_core231d.dll
文件 879104 2011-08-17 10:20 人脸特征点检测\Debug\opencv_features2d231.dll
文件 1554432 2011-08-17 10:10 人脸特征点检测\Debug\opencv_features2d231d.dll
文件 7417192 2011-08-17 10:15 人脸特征点检测\Debug\opencv_ffmpeg.dll
文件 396288 2011-08-17 10:19 人脸特征点检测\Debug\opencv_flann231.dll
文件 838656 2011-08-17 10:09 人脸特征点检测\Debug\opencv_flann231d.dll
文件 222208 2011-08-17 10:21 人脸特征点检测\Debug\opencv_gpu231.dll
文件 436736 2011-08-17 10:11 人脸特征点检测\Debug\opencv_gpu231d.dll
文件 892928 2011-08-17 10:20 人脸特征点检测\Debug\opencv_highgui231.dll
文件 1441792 2011-08-17 10:09 人脸特征点检测\Debug\opencv_highgui231d.dll
文件 1649664 2011-08-17 10:19 人脸特征点检测\Debug\opencv_imgproc231.dll
文件 2324992 2011-08-17 10:09 人脸特征点检测\Debug\opencv_imgproc231d.dll
文件 762880 2011-08-17 10:24 人脸特征点检测\Debug\opencv_legacy231.dll
文件 1208320 2011-08-17 10:13 人脸特征点检测\Debug\opencv_legacy231d.dll
文件 453120 2011-08-17 10:23 人脸特征点检测\Debug\opencv_ml231.dll
文件 742912 2011-08-17 10:12 人脸特征点检测\Debug\opencv_ml231d.dll
文件 558080 2011-08-17 10:21 人脸特征点检测\Debug\opencv_objdetect231.dll
文件 1023488 2011-08-17 10:11 人脸特征点检测\Debug\opencv_objdetect231d.dll
文件 567296 2011-08-17 10:22 人脸特征点检测\Debug\opencv_ts231.dll
文件 884224 2011-08-17 10:11 人脸特征点检测\Debug\opencv_ts231d.dll
文件 289792 2011-08-17 10:22 人脸特征点检测\Debug\opencv_video231.dll
文件 451072 2011-08-17 10:11 人脸特征点检测\Debug\opencv_video231d.dll
文件 51200 2012-05-17 11:40 人脸特征点检测\Debug\RayTracing.exe
文件 531352 2012-05-17 11:40 人脸特征点检测\Debug\RayTracing.ilk
文件 1240064 2012-05-17 11:40 人脸特征点检测\Debug\RayTracing.pdb
............此处省略26个文件信息
- 上一篇:深入浅出MFC 书+代码+
- 下一篇:基于C++的学生选课系统
相关资源
- 基于SVM与人工神经网络的车牌识别C
- OpenCV MFC 图像处理 软件源码
- OpenCV+MFC制作视频播放器
- opencv c++相机标定程序 包含标定图像和
- c++语言opencv加socket实现远程桌面监控
- VS2012 + Opencv2.4.9实现单张人脸检测及人
- 基于opencv的图像检索算法
- 适用于vc6++的openCV1.0
- OpenCV MFC实现图像处理大集合
- OpenCV1.0版本
- C++实现的人脸识别系统
- vibe运动目标提取opencv C++源代码
- 11_人脸检测与识别系统.zip
- c++人脸相似度检测MFC源码
- 读取图片并显示的MFC程序
- 车牌牌照检测识别 VC++和opencv1.0 完整
- sift算法C++opencv实现代码
- zxing识别二维码的C++版本,提供OpenC
- vs2017安装包+opencv3.4压缩包+win10环境配
- opencv 动物识别
- 人脸特征点检测,轻量级的MTCNN实现
- Learning OpenCV3 英文版
- OpenCV实现移动跟踪非常简单
- 通过图像实现Z轴定位(opencv)
- sift算法的C源码(网上唯一原创版本不
- 学习OpenCV(中文版)
- 基于mfc的视频中的几何图形检测
- opencv交通标志识别程序
- 基于OpenCV的车牌识别c++
- 大华相机MFC抓取图片显示
评论
共有 条评论