python验证码识别实例代码

yipeiwu_com6年前Python基础

本文研究的主要是Python验证码识别的相关代码,具体如下。

Talk is cheap, show you the Code!

import numpy as np
import matplotlib.pyplot as plt
from sklearn.cluster import KMeans
from PIL import Image

#打开图像
im=np.array(Image.open('yzm.png'))

#得到图像3个维度
h,w,san=im.shape

X=[(h-x,y) for x in range(h) for y in range (w) if im[x][y][2]<200]

#将X转换成numpy的array类型,方便后续运算操作
X=np.array(X)

n_clusters=4
k_means=KMeans(init='k-means++',n_clusters=n_clusters)
k_means.fit(X)

k_means_labels=k_means.labels_
k_means_cluster_centers=k_means.cluster_centers_
k_means_labels_unique=np.unique(k_means_labels)

colors=['#4EACC5','#FF9C34','#4E9A06','#FF3300']
plt.figure()
plt.hold(True)
for k,col in zip(range(n_clusters),colors):
 my_members=k_means_labels==k
 cluster_center=k_means_cluster_centers[k]
 plt.plot(X[my_members,1],X[my_members,0],'w',markerfacecolor=col,marker='.')
 plt.plot(cluster_center[1],cluster_center[0],'o',markerfacecolor=col,markeredgecolor='k',markersize=6)

plt.title('KMeans')
plt.grid(True)
plt.show()

总结

以上就是本文关于python验证码识别实例代码的全部内容,希望对大家有所帮助。感兴趣的朋友可以继续参阅本站其他相关专题,如有不足之处,欢迎留言指出。感谢朋友们对本站的支持!

相关文章

python面向对象入门教程之从代码复用开始(一)

前言 本文从代码复用的角度一步一步演示如何从python普通代码进化到面向对象,并通过代码去解释一些面向对象的理论。所以,本文前面的内容都是非面向对象的语法实现方式,只有在最结尾才给出了...

浅谈python脚本设置运行参数的方法

浅谈python脚本设置运行参数的方法

正在学习Django框架,在运行manage.py的时候需要给它设置要监听的端口,就是给这个脚本一个运行参数。教学视频中,是在Eclipse中设置的运行参数,网上Django大部分都是在...

浅谈Python的Django框架中的缓存控制

关于缓存剩下的问题是数据的隐私性以及在级联缓存中数据应该在何处储存的问题。 通常用户将会面对两种缓存: 他或她自己的浏览器缓存(私有缓存)以及他或她的提供者缓存(公共缓存)。 公共缓存由...

vim自动补全插件YouCompleteMe(YCM)安装过程解析

Vim是全平台上一个高度可拓展的编辑器。它本身只是一个简陋的编辑器,但是因为有各种插件而变得强大。使用Vim编写代码就不免遇到代码补全的问题。常用的代码补全插件有两个:日本人shougo...

Django项目中model的数据处理以及页面交互方法

Django项目中model的数据处理以及页面交互方法

Django中Models是什么: 通常,一个Model对应一张数据表, Django中Models以类的形式表现, 它包含一些基本字段以及数据的一些行为 ORM: 对象关系映射(Obj...