资源简介
手势识别,使用OpenCV,scikit-learn等库对手势进行机器学习,识别食指所指方向;上、下、左、右四个方向(包含数据集)
代码片段和文件信息
# -*- coding: utf-8 -*-
# @auth
# 使用SVM对手势方向进行训练 分类
import cv2
import numpy as np
from os import listdir
from sklearn.svm import SVC
from sklearn.externals import joblib
from sklearn.model_selection import GridSearchCV
train_path = “./feature/“
test_path = “./test_feature/“
model_path = “./model/“
# 将txt文件中的特征转化成向量
def txtToVector(filename N):
returnVec = np.zeros((1N))
fr = open(filename)
lineStr = fr.readline()
lineStr = lineStr.split(“ “)
for i in range(N):
returnVec[0 i] = int(lineStr[i])
return returnVec
# 训练SVM
def train_SVM(N):
svc = SVC()
parameters = {‘kernel‘:(‘linear‘ ‘rbf‘)
‘C‘:[1 3 5 7 9 11 13 15 17 19]
‘gamma‘:[0.00001 0.0001 0.001 0.1 1 10 100 1000]}#预设置一些参数值
hwLabels = []#存放类别标签
trainingFileList = listdir(train_path)
m = len(trainingFileList)
trainingMat = np.zeros((mN))
for i in range(m):
fileNameStr = trainingFileList[i]
classNumber = int(fileNameStr.split(‘_‘)[0])
hwLabels.append(classNumber)
trainingMat[i:] = txtToVector(train_path+fileNameStr N)#将训练集改为矩阵格式
clf = GridSearchCV(svc parameters cv=5 n_jobs=8)#网格搜索法,设置5-折交叉验证
clf.fit(trainingMat hwLabels)
print(clf.return_train_score)
print(clf.best_params_) #打印出最好的结果
best_model = clf.best_estimator_
print(“SVM Model saved“)
save_path = model_path + “svm_train_model.m“
joblib.dump(best_modelsave_path)#保存最好的模型
# 测试SVM
def test_SVM(clfN):
testFileList = listdir(train_path)
errorCount = 0#记录错误个数
mTest = len(testFileList)
for i in range(mTest):
fileNameStr = testFileList[i]
classNum = int(fileNameStr.split(‘_‘)[0])
vectorTest = txtToVector(train_path+fileNameStrN)
valTest = clf.predict(vectorTest)
#print(“分类返回结果为%d\t真实结果为%d“ % (valTest classNum))
print(“file:“ fileNameStr“classNum:“ classNum “Test:“ clf.predict(vectorTest))
if valTest != classNum:
errorCount += 1
print(“总共错了%d个数据\n错误率为%f%%“ % (errorCount errorCount/mTest * 100))
# 载入模型并进行测试
def test_fd(fd_test):
clf = joblib.load(model_path + “svm_train_model.m“)
test_svm = clf.predict(fd_test)
return test_svm
if __name__==“__main__“:
train_SVM(99)
clf = joblib.load(model_path + “svm_train_model.m“)
test_SVM(clf99)
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2020-02-10 04:37 final\
文件 10244 2020-02-12 09:08 final\.DS_Store
文件 120 2020-02-12 09:08 __MACOSX\final\._.DS_Store
文件 801 2020-02-12 09:10 final\picture.py
文件 220 2020-02-12 09:10 __MACOSX\final\._picture.py
目录 0 2020-02-01 08:54 final\images\
文件 187 2020-02-01 08:54 __MACOSX\final\._images
目录 0 2020-02-11 09:12 final\dataset\
文件 2446 2020-02-12 08:47 final\classify.py
文件 276 2020-02-12 08:47 __MACOSX\final\._classify.py
文件 1524 2020-02-12 09:16 final\extractFeature.py
文件 220 2020-02-12 09:16 __MACOSX\final\._extractFeature.py
目录 0 2020-02-12 09:06 final\test_image\
文件 187 2020-02-12 09:06 __MACOSX\final\._test_image
目录 0 2020-02-01 14:06 final\__pycache__\
文件 1297 2020-02-12 07:21 final\dataset.py
文件 220 2020-02-12 07:21 __MACOSX\final\._dataset.py
目录 0 2020-02-10 04:37 final\model\
目录 0 2020-02-01 08:53 final\feature\
文件 5187 2020-02-12 09:17 final\myGUI.py
文件 220 2020-02-12 09:17 __MACOSX\final\._myGUI.py
目录 0 2020-02-01 08:53 final\test_feature\
文件 26585 2020-02-01 10:01 final\images\2_249.png
文件 287 2020-02-01 10:01 __MACOSX\final\images\._2_249.png
文件 32309 2020-02-01 13:18 final\images\2_261.png
文件 287 2020-02-01 13:18 __MACOSX\final\images\._2_261.png
文件 24292 2020-02-01 13:18 final\images\2_275.png
文件 187 2020-02-01 13:18 __MACOSX\final\images\._2_275.png
文件 11489 2020-01-31 14:49 final\images\1_64.png
文件 287 2020-01-31 14:49 __MACOSX\final\images\._1_64.png
文件 31853 2020-02-01 13:18 final\images\1_349.png
............此处省略7311个文件信息
相关资源
- 统计学习方法-电子书及代码实现-李航
- 机器学习PPT讲义-Andrew NG
- Learning From Data书本和答案以及配图
- coursera机器学习课后习题答案全套
- 机器学习实战 源代码和数据集
- 吴恩达机器学习作业官方版.zip
- 概率论与数理统计_第四版_盛骤_pdf_高
- cpp-基于MXNetC框架的CPU实时人脸识别
- LED数码管数据集
- 手势识别代码
- 统计学习导论 基于R应用
- 机器学习 英文课件 CS446
- 机器学习经典书籍
- Generative Adversarial Networks ppt
- Machine learning A Probabilistic Perspective.p
- 北京大学计算语言所-杨建武老师-文本
- 机器学习:贝叶斯和优化方法英文完
- Machine Learning - A Probabilistic Perspective
- 超详细机器学习12种常用算法PPT
- Learning From Data_Yaser.pdf
- 最优化理论笔记.pdf
- Scikit-Learn与TensorFlow机器学习实用指南
- 机器学习实战-中文版-pdf
- The Hundred-Page Machine Learning Book
- UnityVR手势识别插件VR Infinite Gesture1.
- 机器学习实战 高清 完整版
- 李航《统计学习方法》高清完整.pdf版
- Feature Engineering for Machine Learning - Ali
- 中文信息处理丛书:统计自然语言处理
- 机器学习:从公理到算法
评论
共有 条评论