【OpenCV笔记】人脸识别——图片

1、读入图片

Mat image;
image=imread(" ");

2、窗户命名

namedWindow(" ");

3、从指定文件目录中加载级联分类器

if(!cascade,load(cascadeName)) return 0;

4、检查图片是否读入并调用识别标记函数

if(!image.empty())
{
    detectAndDraw(image,cascade,scale);
    waitkey(0);
}

5、函数调用

void detectAndDraw(Mat&img,CascadeClassifier&cascade,double scale)
{
    vector<Rect> faces;
    const static ScalarColors[]={CV_RGB(0,0,255),CV_RGB(0,128,255),……};
    //处理图像
    double t=0;
    t=(double)cvGetTickCount()-t;
   //用循环将检测到的人脸目标序列画出来
 for(vector<Rect>::const_iterator r = faces.begin(); r != faces.end(); r++, i++ )
{
Point center;
int radius;
center.x = cvRound((r->x + r->width*0.5)*scale);
center.y = cvRound((r->y + r->height*0.5)*scale);
radius = cvRound((r->width + r->height)*0.25*scale);
circle( img, center, radius, color, 3, 8, 0 );
}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值