看板 Python 關於我們 聯絡資訊
先感謝這篇留言的大大 https://www.ptt.cc/bbs/Python/M.1504617371.A.CF2.html 給我一些關鍵字,之後我就靠著 google,做些修正,加入自己的想法, 以下範例是 台鐵驗證碼 原始圖 https://imgur.com/BVqh2hY 灰度&去雜點 https://imgur.com/TdeOWV0 分割成個別數字 https://imgur.com/OqaXK4q https://imgur.com/e1pFLBd https://imgur.com/DI2LTJs https://imgur.com/bBag7rS https://imgur.com/BEpv1io 如果有興趣,code 我已經上傳 github ,不懂可以再寄信給我 https://github.com/f496328mm/Verification_code_image 另外我想請問,影像處理還有什麼方法?除了我目前做的驗證碼之外 我目前在做 CIFAR-10 我用VGG,準確率都在0.8左右, 不知道要如何衝上0.9,甚至是0.95, 我只有做最基本的---除以255 我目前知道的方法有這些 不過詳細並不清楚 基本影像處理(裁減、模糊、銳化) 影像分割(線、圓圈、斑點) 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 220.137.164.234 ※ 文章網址: https://www.ptt.cc/bbs/Python/M.1505228328.A.7F4.html ※ 編輯: f496328mm (220.137.164.234), 09/12/2017 23:09:49
vi000246: 我有做了個台鐵的https://goo.gl/Aiz52x 09/13 01:23
vi000246: 訓練出來的成功率98% 但遇到相黏的字成功率為0 09/13 01:24
vi000246: 應該說 單個字成功率98% 驗證碼成功率是0.98^6 09/13 01:33
黏住不好切 可能要試試別的方法 或是讓DL學習 一次判斷兩個數字這樣
HenryLiKing: 還沒點進code裡面去看 09/13 07:17
HenryLiKing: 但是請問一下你的分隔字是怎麼做到的呀? 09/13 07:17
https://imgur.com/TdeOWV0 灰度去雜點後 用 x 軸去切 只要是'白色' 就存入x座標 以上就會得到一串數列 舉例來說 11,12,13...27,63,64...95,129,130... 可以看出來 11~27 是一個數字 63~95 是一個數字 這樣就切出數字了 https://imgur.com/rv7z1Wl 像這樣 之後 y 軸的切法也一樣
husky0427: 有用到opening和closing嗎 09/13 09:07
沒耶 這是什麼
vi000246: 我能判斷出相黏的數字位置 但要怎麼切就沒想法了 09/13 13:39
neil987: open close 給你參考 http://monkeycoding.com/?p=586 09/13 13:40
neil987: 至於切字 我有做切線相關的想法 不過還沒實做 09/13 13:41
我沒學過影像相關 想請問 open or close 這些可以幫助影像辨識嗎? 為什麼? 是因為比較好抓邊界嗎? 另外有些人會做'去均值',為什麼這樣會變好?? https://goo.gl/AQKk2N 我在做 CIFAR-10,目前已經將邊框加大, 這樣 filter 跟 pooling 才不會預測邊界的問題, 原圖 https://imgur.com/s4CdlgA 放大 https://imgur.com/LIGLcTs 不過結果沒什麼變@@ -------------------------------------------- 對影像做銳化or強化,可能會比較有幫助??上網找是說可以強化邊緣位置, cv2.dilate(im3, (2, 2), iterations=1) 驗證碼我是這樣做 另外'模糊化'是只去雜點嗎? 在驗證碼,我是先灰度->去雜點->強化
HenryLiKing: 喔喔喔喔!我懂了 但是每張圖的字位置不會一樣吧(?) 09/13 18:40
HenryLiKing: 這樣會不會有點針對某張圖分析呀 09/13 18:40
HenryLiKing: open 是擴張 close 是收縮(我的理解啦xd 09/13 18:41
字的位置不一樣沒關係啊 最後都是切成正方形 就像下圖 不管字在哪 切成這樣後 再用DL去單獨預測就好 https://imgur.com/OqaXK4q
billy4195: 先推個 09/14 00:56
laladeer: 去雜訊之後那個圖很漂亮,直接dilate到一團,然後用fin 09/14 05:06
laladeer: d contour找rect,不用自己數,比較簡單比較快 09/14 05:06
不好意思 我還是初學者 可以請大大說清楚一點嗎? 謝謝 ※ 編輯: f496328mm (220.137.164.234), 09/14/2017 10:28:14
neil987: findContour就是找輪廓 09/14 13:27
neil987: 正確說是平滑化 是用來除雜訊的 但是相對代價是影像會變 09/14 13:37
neil987: 模糊 09/14 13:37
neil987: 參照 opencv blur 09/14 13:37
neil987: 我發現我推文有點跳痛 我平滑化那邊是講模糊化這件事 09/14 13:54
喔喔 了解 用輪廓去辨識 正確性應該會比較高 ※ 編輯: f496328mm (220.137.164.234), 09/14/2017 14:55:17
Kazimir: 你是直接用vgg這些inference嗎? 09/18 14:04
Kazimir: 或許你人工做一些資料 再用VGG transferlearning ? 09/18 14:05