日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

Opencv中的FaceRecognizer类

發布時間:2023/11/27 生活经验 43 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Opencv中的FaceRecognizer类 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

隨著Opencv庫的不斷完善,在opencv2.4.2中添加了contrib的相關內容,里面就包括了FaceRecognizer人臉識別類。

這個類的調用比較簡單,主要是:訓練和預測,分別對應著train函數和predict函數,還有對應著數據的加載和保存:save和load。

先來說說訓練的過程,train函數的兩個參數也很簡單,訓練的圖像組vector<Mat>和對應的標簽組vector<int>

對于預測,有兩種調用,其中的參數有測試圖像、返回的標簽值和測試樣本和標簽樣本的相似性返回的標簽值為-1,說明測試樣本在訓練集中無對應或距離較遠。這里用個FisherFace作為示例說明一下如何訓練和預測:


  1. vector<Mat>?images;??
  2. vector<int>?labels;??
  3. //?images?for?first?person??
  4. images.push_back(imread("person0/0.jpg",?CV_LOAD_IMAGE_GRAYSCALE));??
  5. labels.push_back(0);??
  6. images.push_back(imread("person0/1.jpg",?CV_LOAD_IMAGE_GRAYSCALE));??
  7. labels.push_back(0);??
  8. //?images?for?second?person??
  9. images.push_back(imread("person1/0.jpg",?CV_LOAD_IMAGE_GRAYSCALE));??
  10. labels.push_back(1);??
  11. images.push_back(imread("person1/1.jpg",?CV_LOAD_IMAGE_GRAYSCALE));??
  12. labels.push_back(1);??
  13. ??
  14. Ptr<FaceRecognizer>?model?=?createFisherFaceRecognizer();??
  15. model->train(images,?labels);??
  16. ??
  17. Mat?img?=?imread("person1/2.jpg",?CV_LOAD_IMAGE_GRAYSCALE);??
  18. int?predicted?=?model->predict(img);

可以把訓練好的模型通過save函數保存成一個文件,下次使用的時候只需load即可

特征臉EigenFace、Fisher臉FisherFace、LBP直方圖LBPHFace,是目前支持的3種人臉識別的方案。分別調用函數createEigenFaceRecognizer、createFisherFaceRecognizer、createLBPHFaceRecognizer建立模型



總結

以上是生活随笔為你收集整理的Opencv中的FaceRecognizer类的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。