Adrian沒有訪問生成驗證碼圖片的應用的原始程式碼的許可權。 為了破解這個系統, 他不得不下載成百上千個示例圖像並手動解答它們,
但是如果我們想打破一個開放原始程式碼的驗證碼系統, 將會怎麼樣?
創造我們的資料集
訓練任何機器學習系統, 我們都需要訓練資料集。 破解一個驗證碼系統, 我們則需要訓練資料看起來像這樣:
然後, 我們將圖像轉換為純黑白(這稱為閾值設定), 這樣就很容易找到連續的區域:
接下來, 我們將使用OpenCV的findContours()函數來檢測圖像中各個包含相同顏色圖元的連續團:
這意味著我們最終將提取將兩個字母拼湊在一起的區域:
如果我們不處理這個問題, 我們最終會創建糟糕的訓練資料。 我們需要解決這個問題, 以免我們不小心讓機器把這兩個相連的字母識別為一個字母。
如果你想知道更多關於卷積神經網路是如何工作的,
用Keras定義這個神經網路架構只需要使用幾行代碼:
現在, 我們可以開始訓練它了!
或者從命令列
試試看吧!
謝謝閱讀!原文:
如有侵權請聯繫小編刪除哦!
或者從命令列
試試看吧!
謝謝閱讀!原文:
如有侵權請聯繫小編刪除哦!