最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python驗證碼識別處理實例

 更新時間:2015年12月28日 11:45:47   作者:林炳文Evankaka  
這篇文章主要介紹了Python驗證碼識別處理實例,實現過程講解很詳細,感興趣的小伙伴們可以參考一下

一、準備工作與代碼實例
(1)安裝PIL:下載后是一個exe,直接雙擊安裝,它會自動安裝到C:\Python27\Lib\site-packages中去,
(2)pytesser:下載解壓后直接放C:\Python27\Lib\site-packages(根據你安裝的Python路徑而不同),同時,新建一個pytheeer.pth,內容就寫pytesser,注意這里的內容一定要和pytesser這個文件夾同名,意思就是pytesser文件夾,pytesser.pth,及內容都要一樣!
(3)Tesseract OCR engine下載:下載后解壓,tessdata文件夾,用其替換掉pytesser解壓后的tessdata文件夾即可。

二、驗證
(1)原理:
驗證碼圖像處理

驗證碼圖像識別技術主要是操作圖片內的像素點,通過對圖片的像素點進行一系列的操作,最后輸出驗證碼圖像內的每個字符的文本矩陣。

  • 1、讀取圖片
  • 2、圖片降噪
  • 3、圖片切割
  • 4、圖像文本輸出

(2)驗證字符識別

驗證碼內的字符識別主要以機器學習的分類算法來完成,目前我所利用的字符識別的算法為KNN(K鄰近算法)和SVM (支持向量機算法),后面我 會對這兩個算法的適用場景進行詳細描述。

  • 1、獲取字符矩陣
  • 2、矩陣進入分類算法
  • 3、輸出結果

要驗證的圖片如下:

(3)、簡單的命令:

from pytesser import * 
image = Image.open('1.jpg') # Open image object using PIL 
print image_to_string(image)  # Run tesseract.exe on image 

然后運行:


或者直接:

print image_file_to_string('fnord.tif') 

同樣能輸出結果!
(4)、復雜一點的
上面的只能對一些比較簡單的做處理,一
原理:彩色轉灰度,灰度轉二值,二值圖像識別

# 驗證碼識別,此程序只能識別數據驗證碼 
import Image 
import ImageEnhance 
import ImageFilter 
import sys 
from pytesser import * 
# 二值化 
threshold = 140 
table = [] 
for i in range(256): 
 if i < threshold: 
  table.append(0) 
 else: 
  table.append(1) 
 
#由于都是數字 
#對于識別成字母的 采用該表進行修正 
rep={'O':'0', 
 'I':'1','L':'1', 
 'Z':'2', 
 'S':'8' 
 }; 
 
def getverify1(name):   
 #打開圖片 
 im = Image.open(name) 
 #轉化到灰度圖 
 imgry = im.convert('L') 
 #保存圖像 
 imgry.save('g'+name) 
 #二值化,采用閾值分割法,threshold為分割點 
 out = imgry.point(table,'1') 
 out.save('b'+name) 
 #識別 
 text = image_to_string(out) 
 #識別對嗎 
 text = text.strip() 
 text = text.upper();  
 for r in rep: 
  text = text.replace(r,rep[r])  
 #out.save(text+'.jpg') 
 print text 
 return text 
getverify1('1.jpg') #注意這里的圖片要和此文件在同一個目錄,要不就傳絕對路徑也行 

運行后效果:


以上就是本文的全部內容,希望對大家的學習有所幫助。

相關文章

  • 利用python list完成最簡單的DB連接池方法

    利用python list完成最簡單的DB連接池方法

    這篇文章主要介紹了利用python list完成最簡單的DB連接池方法,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2019-08-08
  • 深入理解python Matplotlib庫的高級特性

    深入理解python Matplotlib庫的高級特性

    Matplotlib是一款極其強大的Python數據可視化庫,這篇文章中,我們將深入討論 Matplotlib 的一些高級特性,包括對象導向接口、自定義顏色映射和樣式、動態(tài)圖形等,感興趣的小伙伴跟著小編一起來探討吧
    2023-07-07
  • Python rstrip()方法實例詳解

    Python rstrip()方法實例詳解

    這篇文章主要介紹了Python rstrip()方法,包括rstrip方法的語法介紹和參數類型,需要的朋友可以參考下
    2018-11-11
  • python實現簡單flappy bird

    python實現簡單flappy bird

    這篇文章主要為大家詳細介紹了python實現簡單flappy bird小游戲,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-12-12
  • 基于Python實現圖片主題色的提取

    基于Python實現圖片主題色的提取

    在?Groove?音樂中,當我們改變歌曲時,底部播放欄的顏色會隨專輯封面而變,這就是提取了主題色。本文將利用Python實現圖片主題色的提取,感興趣的可以了解一下
    2022-03-03
  • 使用python驗證代理ip是否可用的實現方法

    使用python驗證代理ip是否可用的實現方法

    驗證代理IP是否可用。原理是使用代理IP訪問指定網站,如果返回狀態(tài)為200,表示這個代理是可以使用的。這篇文章重點給大家介紹使用python驗證代理ip是否可用的實現方法,感興趣的朋友一起看看吧
    2018-07-07
  • Python 中 Virtualenv 和 pip 的簡單用法詳解

    Python 中 Virtualenv 和 pip 的簡單用法詳解

    本篇文章主要介紹了Python 中 Virtualenv 和 pip 的簡單用法詳解,具有一定的參考價值,有興趣的可以了解一下
    2017-08-08
  • 使用Python批量刪除MySQL數據庫的全部外鍵

    使用Python批量刪除MySQL數據庫的全部外鍵

    這篇文章主要為大家詳細介紹了如何使用Python批量刪除MySQL數據庫的全部外鍵,文中的示例代碼講解詳細,感興趣的小伙伴可以跟隨小編一起學習一下
    2024-04-04
  • python輸入多行的方法總結

    python輸入多行的方法總結

    Python中的Input()函數在輸入時,遇到回車符,那么一次輸入就結束了,這不能滿足輸入多行文本并且行數也不確定的情形,當然輸入空行也是允許的,本文給大家總結了python輸入多行的方法,需要的朋友可以參考下
    2024-04-04
  • 用 Python 寫的文檔批量翻譯工具效果竟然超出想象

    用 Python 寫的文檔批量翻譯工具效果竟然超出想象

    這篇文章主要介紹了用 Python 寫的文檔批量翻譯工具,效果竟然超越付費軟件,這個非常適合python辦公自動化腳本,非常不錯,實現方法也很簡單,需要的朋友可以參考下
    2021-05-05

最新評論

赤峰市| 澄江县| 仙桃市| 兰溪市| 疏勒县| 达尔| 静乐县| 安徽省| 桐梓县| 南充市| 碌曲县| 左贡县| 色达县| 开平市| 焦作市| 徐州市| 离岛区| 凤翔县| 宁陵县| 清流县| 嘉义县| 开平市| 阿尔山市| 页游| 乡宁县| 桂平市| 甘孜| 桐乡市| 怀安县| 越西县| 来凤县| 阿勒泰市| 阳新县| 陵水| 福安市| 海淀区| 黑山县| 天门市| 西和县| 手机| 探索|