Python数据分析:手写数字识别初步
2019-01-11 00:36
351 查看
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_43679030/article/details/86266645
2.首先我们需要引入和图片识别有关的库,输入
3.然后我们需要确定图片的长和宽,调用size()函数可以返回一个以图片的宽和高为元素的元组,这时获取图片的宽和高就可以用元素下标的方式。
4.我们在识别时要得到一个用1标识出数字的文本文档,第一个图为我用电脑的画图随便写的数字6,第二个图是经过识别得出的文本文档,我们可以看出,第二个图中用1标出了手写体的数字6的形状。因此我们在数字识别的过程中需要知道每一个位置的rgb编码,这个调用getpixel()即可实现,我们知道,黑色的rgb编码的三个数的和为0,我们要得到一个用0和1标识出来的图像,只需在rgb编码数之和为0的位置写入1,其余不为0的位置写入0。
5.编码实现:
1.手写数字识别是python图像处理的基础,首先需要安装pillow,我们需要以管理员身份打开Windows命令行并输入
pip install pillow,如果提示pip需要更新,我们输入
python -m pip install --upgrade pip先更新pip,这时再安装pillow就没问题了。
2.首先我们需要引入和图片识别有关的库,输入
from PIL import Image进行引入,引入后我们就可以打开要进行操作的图片了,这里需要用到Image中的open()函数和save()函数,open()函数用来打开文件,save()函数用来将图片保存为我们需要的格式。
3.然后我们需要确定图片的长和宽,调用size()函数可以返回一个以图片的宽和高为元素的元组,这时获取图片的宽和高就可以用元素下标的方式。
4.我们在识别时要得到一个用1标识出数字的文本文档,第一个图为我用电脑的画图随便写的数字6,第二个图是经过识别得出的文本文档,我们可以看出,第二个图中用1标出了手写体的数字6的形状。因此我们在数字识别的过程中需要知道每一个位置的rgb编码,这个调用getpixel()即可实现,我们知道,黑色的rgb编码的三个数的和为0,我们要得到一个用0和1标识出来的图像,只需在rgb编码数之和为0的位置写入1,其余不为0的位置写入0。
5.编码实现:
from PIL import Image im = Image.open("C:/Users/21974/Desktop/handwrite.PNG") im.save("C:/Users/21974/Desktop/handwrite.bmp") df = open("C:/Users/21974/Desktop/practicePil.txt", "a") #打开一个文本用于接下来的写入操作 width = im.size[0] height = im.size[1] for i in range(0, width): for j in range(0, height): k = im.getpixel((i, j)) #注意此处为两个括号,第二个括号内代表坐标为(i,j)处的色彩元素 sum = k[0]+k[1]+k[2] #rgb编码的三个数字相加 if sum == 0: df.write("1") else: df.write("0") df.write("\n") df.close()
运行即可得到以0和1绘制的文本图像。
相关文章推荐
- 机器学习实践之手写数字识别- 数据阶段分析总结
- Python实现识别手写数字 简易图片存储管理系统
- python tensorflow 基于cnn实现手写数字识别
- Caffe——Python接口学习(4):mnist实例——手写数字识别
- mnsit 手写数据集 python3.x的读入 以及利用softmax回归进行数字识别
- caffe的python接口学习(4):mnist实例---手写数字识别
- Python实现识别手写数字 Python图片读入与处理
- SVM手写数字的识别---python
- caffe学习(二):利用mnist数据集训练并进行手写数字识别(windows)
- python数据分析与挖掘学习笔记(7)-交通路标自动识别实战与神经网络算法
- Python(TensorFlow框架)实现手写数字识别系统
- caffe的python接口学习(4):mnist实例---手写数字识别
- 2. 机器学习实践之手写数字识别 - 初步特征选择及线性识别
- Python3:《机器学习实战》之k近邻算法(3)识别手写数字
- TensorFlow手写数字识别mnist example源码分析
- Python数据分析——基于CART决策树的用户识别
- python显示手写数字图片经pca压缩后的二维空间分布 程序错误分析
- k近邻算法识别手写数字Python实现
- 用BP人工神经网络识别手写数字——《Python也可以》之三
- Python实现深度学习之-神经网络识别手写数字(更新中,更新日期:2017-07-12)