基於Qt的OpenCV人臉識別 一

2021-09-02 07:40:41 字數 2208 閱讀 8994

opencv對影象處理非常專業,具有很多模組。但是其gui模組(即highgui),互動性非常差,就連按鈕也得用滑動條來實現。而qt這個強大的c++圖形庫很好的避免了這個缺點,因此筆者基於qt平台,呼叫opencv庫,來進行opencv的人臉識別開發。

工欲善其事,必先利其器,要想完成開發,先得在qt上搭建opencv的開發環境,如何編譯opencv得到動態鏈結庫這裡不多說,有很多部落格都做了詳細說明,這裡,筆者使用的是vs2015+opencv3.2編譯的鏈結庫。為什麼使用vs2015平台呢,因為筆者的qt平台用的是qt 5.8.0 (msvc 2015),可以直接呼叫編譯好的鏈結庫,其他的版本也是一樣,對應上即可。

建好了乙個qt工程後,筆者這裡的工程名為face_reg,開啟face_reg.pro這個檔案,在在檔案的末尾輸入如下**:

includepath += d:\program\opencv3.2\newbuild\install\include

includepath += d:\program\opencv3.2\newbuild\install\include\opencv

includepath += d:\program\opencv3.2\newbuild\install\include\opencv2

libs += -ld:\program\opencv3.2\newbuild\install\x64\vc14\lib -lopencv_aruco320d\

-lopencv_bgsegm320d\

-lopencv_bioinspired320d\

-lopencv_calib3d320d\

-lopencv_ccalib320d\

-lopencv_core320d\

-lopencv_datasets320d\

-lopencv_dnn320d\

-lopencv_dpm320d\

-lopencv_face320d\

-lopencv_features2d320d\

-lopencv_flann320d\

-lopencv_fuzzy320d\

-lopencv_highgui320d\

-lopencv_imgcodecs320d\

-lopencv_imgproc320d\

-lopencv_line_descriptor320d\

-lopencv_ml320d\

-lopencv_objdetect320d\

-lopencv_optflow320d\

-lopencv_photo320d\

-lopencv_plot320d\

-lopencv_reg320d\

-lopencv_rgbd320d\

-lopencv_saliency320d\

-lopencv_shape320d\

-lopencv_stereo320d\

-lopencv_stitching320d\

-lopencv_structured_light320d\

-lopencv_superres320d\

-lopencv_video320d\

-lopencv_videoio320d\

-lkernel32\

-luser32\

-lgdi32\

-lwinspool\

-lcomdlg32\

-ladvapi32\

-lshell32\

-lole32\

-loleaut32\

-luuid\

-lodbc32\

-lodbccp32

在widget.cpp裡面輸入如下**:

#include "widget.h"

#include "ui_widget.h"

#include using namespace cv;

widget::widget(qwidget *parent) :

qwidget(parent),

ui(new ui::widget)

然後進行編譯,執行,如果沒有報錯,並顯示了,則配置正確,可以進行自己的開發了。

文末尾附上筆者編譯的動態鏈結庫:

基於opencv的人臉識別

1前言參考的是 這篇用的是dlib的對齊還加了mask。本文方法 人臉檢測 shiqiyu libfacedetection opencv提取ptr類 2 facedetect.h include include include include include facedetect dll.h us...

基於Opencv的人臉識別

要進行人臉的識別的訓練,首先我們要對openv中人臉識別類facerecognizer要有乙個了解,可以參考這個部落格對facerecognizer 有乙個了解 這個部落格對人臉的訓練解釋的很好,具體怎麼訓練可以閱讀這個部落格。關於人臉識別 我們有一下兩個步驟 1.利用pca變換的人臉識別,對人臉進...

基於Opencv的人臉識別

當在閱讀書籍opencv3時,偶遇人臉識別這一概念,通過網上查閱得知人臉識別是生物特徵識別的最新應用。在此書籍引導下,寫了乙個最基本的人臉識別 期間有乙個問題需要注意,再往工程目錄匯入xml檔案是注意不要導錯,應該是這兩個haarcascade frontalface alt.xml和haarcas...