我正在研究識別手勢的Unity-Android應用程序。我用來訓練模型的圖像是50x50 黑白圖像,手部通過HSV 值進行分割?,F在,在測試模型時也進行了同樣的操作,但問題是:當相機中沒有手時,它仍然會檢測到某些東西(任何東西 - 通過移動相機),因為 HSV 不準確,并且當圖像(沒有手) ) 被提供給模型,它仍然給出了80%+ 的準確率,并為其確定了一個隨機類。訓練模型的圖像和代碼被鏈接下來。我正在使用TensorflowSharp加載我的模型。對于 openCV,我使用OpenCV for Unity 我有4 個手勢(4 個類),其中每個類有 4-4.5k 個圖像,總共 17k 個圖像。樣本圖片1級2級3級4級如果您需要任何其他信息,請告訴我,我們將不勝感激。我已經嘗試過手部檢測模型,因此它可以檢測到什么時候沒有手,但它們并不準確。我已經嘗試從用戶輸入觸摸他的手所在的位置,它工作正常但是當手被移開時它再次開始隨機檢測,因為 HSV。我嘗試通過 SIFT 等進行特征匹配,但它們非常昂貴。我嘗試了模板匹配,從我的角度來看,它應該有效,但給出了一些奇怪的結果。
1 回答

慕仙森
TA貢獻1827條經驗 獲得超8個贊
根據我的說法,基本問題是您無法檢測圖像中是否存在手。你需要定位手。
首先,我們需要檢測手是否存在。您可以嘗試Siamese 網絡來完成這些任務。我已經成功地使用它們來檢測皮膚異常。您可以參考這個 -> Harshall Lamba https://link.medium.com/xrCQOD8ntV的“使用 Keras 的 Siamese 網絡的一次性學習”和 Harshvardhan Gupta 的“PyTorch 中的 Siamese 網絡的面部相似性” https://link.medium .com/htBzNmUCyV
網絡將給出二進制輸出。如果手存在,則將看到更接近 1 的值。否則,將看到接近零的值。
其他,像 YOLO 這樣的 ML 模型用于對象定位,但 Siamese 網絡簡單而清醒。
Siamese 網絡實際上使用相同的 CNN,因此它們是 siamese 或 conjoined。他們測量圖像嵌入之間的絕對誤差,并嘗試近似圖像之間的相似度函數。
之后,進行適當的檢測,就可以進行分類。
- 1 回答
- 0 關注
- 103 瀏覽
添加回答
舉報
0/150
提交
取消