本文实例为大家分享了SVM手写数字识别功能的具体代码,供大家参考,具体内容如下

1、SVM手写数字识别

识别步骤:

(1)样本图像的准备。

(2)图像尺寸标准化:将图像大小都标准化为8*8大小。

(3)读取未知样本图像,提取图像特征,生成图像特征组。

(4)将未知测试样本图像特征组送入SVM进行测试,将测试的结果输出。

识别代码:

#!/usr/bin/env python

import numpy as np

import mlpy

import cv2

print 'loading ...'

def getnumc(fn):

'''返回数字特征'''

fnimg = cv2.imread(fn) #读取图像

img=cv2.resize(fnimg,(8,8)) #将图像大小调整为8*8

alltz=[]

for now_h in xrange(0,8):

xtz=[]

for now_w in xrange(0,8):

b = img[now_h,now_w,0]

g = img[now_h,now_w,1]

r = img[now_h,now_w,2]

btz=255-b

gtz=255-g

rtz=255-r

if btz>0 or gtz>0 or rtz>0:

nowtz=1

else:

nowtz=0

xtz.append(nowtz)

alltz+=xtz

return alltz

#读取样本数字

x=[]

y=[]

for numi in xrange(1,10):

for numij in xrange(1,5):

fn='nums/'+str(numi)+'-'+str(numij)+'.png'

x.append(getnumc(fn))

y.append(numi)

x=np.array(x)

y=np.array(y)

svm = mlpy.LibSvm(svm_type='c_svc', kernel_type='poly',gamma=10)

svm.learn(x, y)

print u"训练样本测试:"

print svm.pred(x)

print u"未知图像测试:"

for iii in xrange (1,10):

testfn= 'nums/test/'+str(iii)+'-test.png'

testx=[]

testx.append(getnumc(testfn))

print

print testfn+":",

print svm.pred(testx)

样本:

结果:

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

python手写数字识别教学_python实现基于SVM手写数字识别功能相关推荐

  1. Python+OpenCV:基于SVM手写数据OCR(OCR of Hand-written Data using SVM)

    Python+OpenCV:基于SVM手写数据OCR(OCR of Hand-written Data using SVM) dsize = 20 affine_flags = lmc_cv.WARP ...

  2. 基于SVM的车辆标牌识别

    基于SVM的车辆标牌识别 目录 基于SVM的车辆标牌识别 1. **开发与使用** 1.1 **开发环境** 2. **程序功能及实现方法** 2.1 **读入原图** 2.2 **图像预处理** 2 ...

  3. 基于SVM支持向量机实现人脸识别

    文章目录 基于SVM支持向量机实现人脸识别 SVM支持向量机的定义 SVM支持向量机的原理作用 如何计算SVM支持向量机的权值w和偏置项b 代码实现原理步骤 代码实例演示: 基于SVM支持向量机实现人 ...

  4. 基于SVM的语音情感识别系统设计

    基于SVM的语音情感识别系统设计 目录 基于SVM的语音情感识别系统设计 1  引言 2  情感语音信号的采集 3. 特征参数 §3.1 基音频率参数 §3.3 能量参数 4  语音情感的识别 §4. ...

  5. python模拟手写笔迹_Python实现基于KNN算法的笔迹识别功能详解

    本文实例讲述了Python实现基于KNN算法的笔迹识别功能.分享给大家供大家参考,具体如下: 需要用到: Numpy库 Pandas库 手写识别数据 点击此处本站下载. 数据说明: 数据共有785列, ...

  6. python 数学公式识别_Python实现基于KNN算法的笔迹识别功能详解

    本文实例讲述了Python实现基于KNN算法的笔迹识别功能.分享给大家供大家参考,具体如下: 需要用到: Numpy库 Pandas库 手写识别数据 点击此处本站下载. 数据说明: 数据共有785列, ...

  7. python计算2的平方代码_Python练习实例46 | 求输入数字的平方,如果平方运算后小于 50 则退出。...

    这个问题,其实有两种计算的思路,第一种就是需要对结果进行判断,无非就是两种结果,一种结果为真,一种结果为假,将这两种结果分别赋值给1和0,然后创建一个while循环即可. 小黄人.jpg 实现的方式大 ...

  8. python字符串提取数字并求和_python实现将字符串中的数字提取出来然后求和

    因工作原因,很久没有学习python知识了,感觉都快忘记了,前天看到一个练习题,如何将字符串中的数字提取出来,然后求和呢?下面我来解释一下如何通过python代码来实现. 题目:字符串43...3y2 ...

  9. python中谷中文视频教学_python入门教程_中谷教育python中文视频教程(全38集)

    Python编程简单直接,难度低于java,更适合初学编程者,让初学者专注于编程逻辑,而不是困惑于晦涩的语法细节上. 该视频共有38集,视频讲解由浅至深,视频由入门到精通,视频内容丰富,讲解深入,是很 ...

最新文章

  1. IBM推出AutoAI,让企业人工智能模型开发自动化
  2. linux下 chown命令
  3. Word 2010中利用尾注添加参考文献(论文必备)
  4. mysql分页原理和sqlserver里面序列的用法
  5. MFC CListCtrl
  6. c语言编译时检查逻辑错误吗,C语言陷阱与技巧20节,自定义“编译时”assert方法,在代码编译阶段检查“逻辑”错误...
  7. 通过域策略登录脚本收集域用户的登录/注销信息
  8. 若依前后端不分离项目上传文件或图片不能显示出来?
  9. visual svn 搭建
  10. Tableau 自定义调色板及应用全流程讲解【保姆级】
  11. [设计一个24GHz微带天线]书本公式介绍并用Octave计算初始值
  12. 2020程序员工资排行:腾讯阿里全部落榜,字节跳动高薪实锤
  13. 模拟行走机器人-c语言
  14. LSTM(Long Short Term Memory)和RNN(Recurrent)教程收集 (知乎)
  15. 【集合论】关系闭包 ( 关系闭包求法 | 关系图求闭包 | 关系矩阵求闭包 | 闭包运算与关系性质 | 闭包复合运算 )
  16. Vue 2.x + Element后台模板开发教程(三)后台首页模板设计
  17. BZOJ4378[POI2015]Logistyka——树状数组
  18. 【年度榜单】2020大数据产业创新服务产品丨数据猿·金猿榜
  19. TiDB 在华泰证券的探索与实践
  20. 关于人机智能若干问题的思考

热门文章

  1. 2022-2027年中国姜蒜行业市场运行现状及投资战略研究报告
  2. 恐怖水母=贪心算法+冒泡排序
  3. Python3版本Django实现免费极验验证码
  4. 把一个字符串中的所有字符按从小到大排序。
  5. QVariant可以存储的QPolygonF吗?
  6. json序列化||反序列化过滤某些属性 之@jsonignore注解
  7. JAVA计算机毕业设计中小学教师培训管理系统Mybatis+源码+数据库+lw文档+系统+调试部署
  8. java 多线程开发注意事项
  9. 介绍几本超酷的COM的书籍
  10. 【WY】数据分析 — Numpy 阶段一 :基础语法 一 —— 介绍