c 結合opencv進行人臉檢測

2021-06-25 22:55:59 字數 1878 閱讀 4356

#include "cv.h"

#include "highgui.h"

#include

#include

#include

#include

#include //與一樣是定義邊界值的,定義的是浮點數的邊界值

#include

#include

#include //在呼叫字元函式時,在原始檔中包含的標頭檔案

using namespace  

std;

static int aa=0;//為了儲存檢測到的人臉

static cvmemstorage *storage = 0;

static cvhaarclassifiercascade *cascade = 0;//harr 分類器級聯的內部標識形式

void detect_and_draw( iplimage *image);

const char *cascade_name = "haarcascade_frontalface_alt2.xml";

int main()

storage = cvcreatememstorage(0);//建立記憶體塊

capture = cvcapturefromcam(0);//獲取攝像頭

cvnamedwindow( "人臉檢測");//建立格式化視窗

if (capture)

frame = cvretrieveframe( capture ); //獲得由cvgrabframe函式抓取的

if (!frame)  

if (!frame_copy)

//影象原點或者是左上角 (img->origin=ipl_origin_tl)或者是左下角(img->origin=ipl_origin_bl)

if (frame->origin == ipl_origin_tl)

else

detect_and_draw( frame_copy ); // 檢測並且標識人臉

if(cvwaitkey (10) >= 0)

break; }

//釋放指標

cvreleaseimage( &frame_copy );

cvreleasecapture( &capture); }

cvdestroywindow("人臉識別");

return 0; }

void detect_and_draw(iplimage *img) //檢測和畫出人臉的函式體 },

}, },

}, },

}, },

} };

double scale = 1.5;

iplimage *gray = cvcreateimage(cvsize(img->width,img->height), 8, 1);//灰度影象

iplimage *small_img = cvcreateimage(cvsize(cvround(img->width/scale),cvround(img->height/scale)),8, 1);

int i;

cvcvtcolor(img, gray, cv_bgr2gray);//把輸入的彩色影象轉化為灰度影象

cvresize(gray, small_img,cv_inter_linear);//縮小灰色

cvequalizehist(small_img, small_img);//灰度圖象直方圖均衡化

cvclearmemstorage(storage);//釋放記憶體塊

if (cascade)

} cvshowimage("人臉檢測",img);

cvreleaseimage(&gray);

cvreleaseimage(&small_img); }

使用opencv進行人臉識別

最近由於大作業需要,使用了opencv進行人臉識別。一般來說,識別分為兩部,即人臉檢測 人臉識別,opencv提供了乙個人臉檢測的sample,有乙個比較成熟的訓練人臉正面訓練檔案,這是我所知的乙個很成熟的人臉識別工具,而且已用於一些前沿3d愛情動作遊戲中,這裡主要是對其提供的sample作了一定的...

使用opencv進行人臉識別

最近由於大作業需要,使用了opencv進行人臉識別。一般來說,識別分為兩部,即人臉檢測 人臉識別,opencv提供了乙個人臉檢測的sample,有乙個比較成熟的訓練人臉正面訓練檔案,這是我所知的乙個很成熟的人臉識別工具,而且已用於一些前沿3d愛情動作遊戲中,這裡主要是對其提供的sample作了一定的...

使用opencv進行人臉識別

標籤 opencv 人臉識別 python emmm,其實流程很簡單,首先通過cv讀入乙個,然後灰度化了。其次我們載入上面說的那個模型,最後我們進行識別,識別的結果會是乙個矩陣,我們就把這個矩陣畫到上就ok了。import cv2 as cv 傳入乙個img,結果是在人臉上面畫乙個矩形框 deffa...