opencv 如何定位人脸的 5
2个回答
展开全部
用Haar人脸检测,能够检测不同大小的多个人脸。以下是主要程序:
static CvMemStorage* storage = 0;
static CvHaarClassifierCascade* cascade = 0;
const char* cascade_name ="C:\\OpenCV2.0\\data\\haarcascades\\haarcascade_frontalface_alt2.xml"; //分类器路径,根据实际情况写
cascade = (CvHaarClassifierCascade*)cvLoad( cascade_name, 0, 0, 0 );
storage = cvCreateMemStorage(0);
IplImage *image = cvLoadImage(filenames); //读入灰度图像
CvSeq* faces = cvHaarDetectObjects( image, cascade, storage,1.1, 2, CV_HAAR_DO_CANNY_PRUNING,cvSize(30, 30) ); //人脸检测函数
int num_of_face=faces->total; //这是检测到的人脸的个数
CvRect* r = (CvRect*)cvGetSeqElem( faces, i ); //获取每个人脸的信息,返回类型是矩形。i为人脸编号,0,1,2。。。可以用循环读取。
static CvMemStorage* storage = 0;
static CvHaarClassifierCascade* cascade = 0;
const char* cascade_name ="C:\\OpenCV2.0\\data\\haarcascades\\haarcascade_frontalface_alt2.xml"; //分类器路径,根据实际情况写
cascade = (CvHaarClassifierCascade*)cvLoad( cascade_name, 0, 0, 0 );
storage = cvCreateMemStorage(0);
IplImage *image = cvLoadImage(filenames); //读入灰度图像
CvSeq* faces = cvHaarDetectObjects( image, cascade, storage,1.1, 2, CV_HAAR_DO_CANNY_PRUNING,cvSize(30, 30) ); //人脸检测函数
int num_of_face=faces->total; //这是检测到的人脸的个数
CvRect* r = (CvRect*)cvGetSeqElem( faces, i ); //获取每个人脸的信息,返回类型是矩形。i为人脸编号,0,1,2。。。可以用循环读取。
深圳量子动力
2024-10-28 广告
2024-10-28 广告
在量子动力(深圳)计算机科技有限公司,我们致力于将前沿技术融入安防与智能识别领域。摄像头人脸捕捉技术,依托深度学习算法与高效图像处理能力,能够在复杂环境中迅速锁定并精准捕捉人脸信息。这一技术不仅提升了监控系统的智能化水平,还在公共安全、门禁...
点击进入详情页
本回答由深圳量子动力提供
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询