❶ 如何利用opencv2.4.9中的人臉識別源碼實現自己的demo
首先找到解壓路徑下【】-【sources】-【data】-【haarcascades】
路徑下面的
"haarcascades_eye_tree_eyeglasses.xml"和"haarcascade_frontalface_alt.xml"文件。,放到自己的工程目錄下,然後新建cpp,編寫如下代碼:
#include"opencv2/core/core.hpp"
#include"opencv2/objdetect/objdetect.hpp"
#include"opencv2/highgui/highgui.hpp"
#include"opencv2/imgproc/imgproc.hpp"
#include<iostream>
#include<stdio.h>
usingnamespacestd;
usingnamespacecv;
stringface_cascade_name="haarcascade_frontalface_alt.xml";
CascadeClassifierface_cascade;
stringwindow_name="人臉識別";
voiddetectAndDisplay(Matframe);
intmain(intargc,char**argv){
Matimage;
image=imread(argv[1]);
if(argc!=2||!image.data){
printf("[error]沒有圖片 ");
return-1;
}
if(!face_cascade.load(face_cascade_name)){
printf("[error]無法載入級聯分類器文件! ");
return-1;
}
detectAndDisplay(image);
waitKey(0);
}
voiddetectAndDisplay(Matframe){
std::vector<Rect>faces;
Matframe_gray;
cvtColor(frame,frame_gray,CV_BGR2GRAY);
equalizeHist(frame_gray,frame_gray);
face_cascade.detectMultiScale(frame_gray,faces,1.1,2,0|CV_HAAR_SCALE_IMAGE,Size(30,30));
for(inti=0;i<faces.size();i++){
Pointcenter(faces[i].x+faces[i].width*0.5,faces[i].y+faces[i].height*0.5);
ellipse(frame,center,Size(faces[i].width*0.5,faces[i].height*0.5),0,0,360,Scalar(255,0,255),4,8,0);
}
imshow(window_name,frame);
}
❷ 用OpenCV寫的手勢識別系統(主要是C和C++),要在手機上實現,請問什麼系統的手機可以支持安卓系統可以嗎
建議在ANDROID上去使用。
將OpenCV編譯後以JNI的方式調用。
具體的例子可以網路。比版如:http://apps.hi..com/share/detail/30387678
250*6.3=1575,錢少了點,權不過加100多塊錢可以去買個魅族的m9, 現在的價格是1699,還是蠻不錯的。另外自己還可以玩玩M9。呵呵。小米手機也可以。這兩款手機是性價比很高的了。
❸ 【手勢識別】opencv通過攝像頭獲取實時數據後怎麼弄
你只管處理讀到的圖像就行
❹ 如何用opencv實現動態手勢識別就是通過攝像頭,對手的運動進行判別,既手向左判斷向左,手向右判斷向右
可以先對手勢進行分割,把手拿出來,然後利用harr特徵來做手勢識別。在opencv里有先關的東西。
❺ opencv手勢識別的代碼,只要識別 手在屏幕中的位置,和張開,握拳兩種狀態 就行
http://blog.163.com/jw_67/blog/static/13619925620104662217218/