1. 程式人生 > 實用技巧 >訓練出一個驗證碼模型,驗證碼識別100%?就很棒

訓練出一個驗證碼模型,驗證碼識別100%?就很棒

本文的文字及圖片來源於網路,僅供學習、交流使用,不具有任何商業用途,版權歸原作者所有,如有問題請及時聯絡我們以作處理

以下文章來源於騰訊雲 作者:Python進擊者

( 想要學習Python?Python學習交流群:1039649593,滿足你的需求,資料都已經上傳群檔案流,可以自行下載!還有海量最新2020python學習資料。 )

1.熟悉專案結構


這裡我給大家都標識出來了,首先你需要了解每個檔案是幹什麼的,不然你就會像只無頭蒼蠅。

這裡的每一個檔案都很重要。

2. 使用前的準備

使用之前是需要你準備好你的資料集,那麼怎麼準備呢?

如果你是需要爬取A網站,那麼你可以通過第三方庫生成與A網站相同的驗證碼圖片

你也可以直接爬取它的圖片

但是我們需要注意的是,圖片的命名中必須要有相對應的字母或者數字。

例如我上面這樣

所以最好還是自己去生成對應的驗證碼。

數量集需要多少呢?

我每次訓練都是使用了1萬張以上的照片

基本的準備好了,我們如何來使用該專案呢?

3.修改專案

沒錯,確實需要修改

修改什麼?

你的圖片路徑以及你的命名規則


像上圖這些地方,肯定是需要修改的。

其次,命名規則在哪裡修改?

其中i變數就是該圖片的名稱(包括字尾),所以自己按照自己命名規則切割一下就行了。

4.開始訓練模型

以上的工作都準備好後,我們就可以正式訓練模型了。

直接執行train.py檔案即可。


圖片中紅框內的資料可以按需進行修改

當你跑起來後就是這樣的。

5.測試模型

這就非常的簡單了


我們直接執行test.py檔案即可。

一些問題

1.該專案使用的TensorFlow是版本幾?

1.xxx

如果你使用的是2也可以,只需要將

import tensorflow as tf

替換為

import tensorflow.compat.v1 as tf
tf.disable_v2_behavior()

爆紅線也不用管它。

2.訓練出來的準確率高嗎?

我認為主要看驗證碼的複雜程度,至少我訓練出來的準確率有99%