人臉識別keras opencv(二) 遇到的問題

2021-08-16 05:58:10 字數 2001 閱讀 6166

1.dataset, 建立乙個用於儲存和格式化讀取訓練資料的類。將資料集分開為train, test.建立標籤。

因為借鑑的部落格是theno做的backend。

#重新格式化和標準化

# 本案例是基於thano的,如果基於tensorflow的backend需要進行修改

x_train = x_train.reshape(x_train.shape[0], 1, self.img_size, self.img_size)/255.0

x_test = x_test.reshape(x_test.shape[0], 1, self.img_size, self.img_size) / 255.0

直接run dataset是沒問題,但是當train_model 時就會出錯。

把train_model裡的loss改了,

#loss='categorical_crossentropy',  #你可以選用squared_hinge作為loss看看哪個好

準確率為1, 有點不理解,那篇博文並沒有提到需要參入其他錯誤的。

2.train_model 就是建立神經網路,對進行訓練。一開始run的時候出現錯誤,

但是他有提示怎麼改。說是loss錯了,具體我也沒看懂,可能是我只用了自己的進行訓練的吧。這個程式可以識別無數個人的。

#loss='categorical_crossentropy',  #你可以選用squared_hinge作為loss看看哪個好

#loss = 'sparse_categorical_crossentropy',

loss = 'squared_hinge',

3.test_model 就是測試一下剛才的model是否有用。可是怎麼也跑不通。

test_onbatch缺少引數,也是沒怎麼看懂。這裡的測試,既可以用一張去測試,也可以建立乙個資料夾,裡面包含多個子資料夾,讀取裡面的進行測試。

先擱置?????

4.read_camera, 讀取攝像頭,看裡面的人是否是hansen。

一開始跑了半天沒響應,就找了個讀取攝像頭程式測試一下,是否是攝像頭的問題。

import cv2

print(1)

"""開啟攝像頭,按 q 拍照並儲存"""

但是他並沒有儲存,不是道為啥,????

後面再跑read_camera就沒問題了。

能識別出hansen,

但是,實驗室的小夥伴顯示都是hansen, ,,,,啊啊啊啊啊啊啊啊啊,氣死。

人臉識別keras opencv(三) 遇到的問題

但是,如果執行read img就會有問題。進入不了for迴圈了,也就是讀不了了。後發現可以進入for迴圈,但是if endwith 出錯。直接拿出這一小段程度進行測試。test read img.endwith 判斷s資料夾中是否有帶有endstring為字尾的檔案 幾經除錯發現,read img ...

人臉識別 人臉庫

1.mit 影象集 美國,麻省理工學院 包括 16 人,每個人有不同光照 不同尺寸 不同角度的 27 張 2.feret 影象集 美 方 此影象集包含大量的人臉影象,並且每幅圖中均只有乙個人臉。該集中,同乙個人的 有不同表情,光照,姿態和年齡的變化。3.umist 影象集 英國,曼切斯特大學 20 ...

人臉識別之人臉檢測

人臉識別分為人臉檢測 人臉預處理 蒐集和學習人臉以及人臉識別四個部分,此部分將人臉檢測。本文基於opencv進行的。在opencv中常用的人臉檢測器有基於lbp的特徵檢測 基於haar的特徵檢測,兩者的區別 前者比後者快好幾倍且不需要許可協議,但很多haar檢測器需要許可協議。基於haar的臉部檢測...