比赛记录——记录一次失败的比赛,九坤量化验证码识别大赛
過日子不記錄,就是對自己人生的極大不負責任!
逛吃逛吃小隊完成的題目是type1,但是在初期拿到數據集時候,也嘗試構建了其他幾個任務的數據集。關于type1,因為所處理的是手寫字符,所以采用的方案是使用mnist數據集來訓練模型,mnist數據集模型,根據wiki上的介紹:
該模型的準確率可以達到error在0.17%左右,在使用過程中,由于訓練平臺的原因,我們采用的是mnist測試數據集上準確率可以到98.5%以上的模型
wiki上的介紹在這里
算法處理的步驟;
數據生成:(最后雖然沒有用上,但是我們好好做了所有數據生成的代碼) 文件夾:data_generation/data_generation.py 里面有8個type的data,其中英文單詞和中文成語選取的是牛津詞典和新華詞典里的數據庫,任務7中,生成倒置漢字時候,改寫了captcha庫中關于字體旋轉的部分,令其大于180度,其余的都使用captcha庫可以得到近似的效果
?
后來發現type1和·type2中的都是手寫字符,于是使用了mnist和Enghand數據集(英文手寫數據集)作為訓練集
2、模型選擇:多層卷積神經網絡,在mnist數據集上,根據wiki的介紹,目前最好的效果是?Hu, Jie; Shen, Li; Albanie, Samuel; Sun, Gang; Wu, Enhua (2017). "Squeeze-and-Excitation Networks"中的Committee of 20 CNNS with Squeeze-and-Excitation Networks
此外,之前也考慮過直接跳過數據預處理,直接對完整的圖片進行操作,但是失敗并放棄的原因主要是
結果分析:
對于初賽結果,準確率僅有6.5%,關于準確率低下的原因:
主要有兩個:
其一:對于比較細的字符如7,9,l等在圖片預處理去噪的過程中,干擾線處理導致連通域不完整,其次使得本來不大的字符被過度處理,在進行后續的步驟的時候不能得到準確的切分,因為少數幾個關鍵字符,導致切分錯誤
其二:對于背景色是馬賽克的圖片,由于難以選擇合適的固定閾值,于是最后選擇了skimage下的filter函數得到動態調整閾值,再加上50作為二值化的閾值,但是結果導致仍有大量的噪聲點,在后續的膨脹過程中,就導致了圖片上有很多連通域,在切分的時候就有噪聲點被當作了圖片
其三:在模型輸入的時候還是存在一些不精細的地方,如mnist數據集是28*28的輸入,并且數據輸入的時候進行了歸一化,即輸入的圖片是值在0到1之間的浮點數,而我們在初期測試自己的照片的時候可能存在不是特別好的處理
?
外部鏈接:
https://www.jianshu.com/p/7a2b227896a8
提供了CTC不定長驗證碼處理的方案
?
總結
以上是生活随笔為你收集整理的比赛记录——记录一次失败的比赛,九坤量化验证码识别大赛的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 0基础转行软件测试从哪开始学,怎么有效学
- 下一篇: 语文七年级计算机作文,七年级上册语文期末