halcon ocr 生成样本变体_Halcon简单文字识别OCR的使用
重要:本文最后更新于2019-10-18 08:49:28,某些文章具有時(shí)效性,若有錯(cuò)誤或已失效,請(qǐng)?jiān)谙路搅粞曰蚵?lián)系代碼狗。
突然想起網(wǎng)上有很多打碼掙錢的活動(dòng),于是靈光一閃,用C#搞個(gè)自動(dòng)識(shí)別驗(yàn)證碼的程序出來豈不是自動(dòng)掙錢了?找了半天,打碼就是個(gè)坑貨,半天不見一個(gè)碼,打個(gè)錘子。不過驗(yàn)證碼識(shí)別卻是值得研究的,在學(xué)習(xí)識(shí)別驗(yàn)證碼之前,我們先來學(xué)習(xí)下OCR光學(xué)字符識(shí)別,halcon在這方面提供的算法很多,visionPro比較薄弱,所以學(xué)習(xí)下halcon吧。
Halcon簡單文字識(shí)別OCR的使用
我這里隨便用畫板寫了幾個(gè)字,我用不同字體試過了,效果不錯(cuò),我懶得做動(dòng)圖了,所以就這一張圖。
//讀入一張圖片,提供窗口句柄及設(shè)置窗口大小
dev_close_window ()
dev_update_pc ('off')
dev_update_window ('off')
read_image (Image, 'C:/Users/Administrator/Desktop/testimage/1.png')
get_image_size (Image, Width, Height)
dev_open_window (0, 0, Width, Height, 'black', WindowHandle)
set_display_font (WindowHandle, 16, 'mono', 'true', 'false')
dev_set_draw ('margin')
//創(chuàng)建字體失敗模板
create_text_model_reader ('auto', 'Universal_0-9A-Z_Rej', TextModel)
set_text_model_param (TextModel, 'dot_print', 'true')
set_text_model_param (TextModel, 'min_contrast', 40)
//循環(huán)讀入圖片識(shí)別
for Index := 1 to 4 by 1
read_image (Image, 'C:/Users/Administrator/Desktop/testimage/'+Index+'.png')
dev_display (Image)
find_text (Image, TextModel, TextResultID)
get_text_object (Characters, TextResultID, 'all_lines')
get_text_result (TextResultID, 'class', Class)
//顯示結(jié)果
set_tposition (WindowHandle, 20,20)
write_string (WindowHandle, '結(jié)果:'+ sum(Class))
stop ()
endfor
上面主要使用了create_text_model_reader識(shí)別模式選擇、find_text查找識(shí)別算子,使用起來比較簡單。
代碼比較簡單,很容易看懂,學(xué)了好幾天halcon了,個(gè)人覺得halcon最難的就是對(duì)算子的理解和記憶。建議帶有目的性的學(xué)習(xí),比如你需要檢測產(chǎn)品數(shù)量,就專門去看斑點(diǎn)相關(guān)算子和相關(guān)案例,當(dāng)然這樣學(xué)習(xí)的弊端就是只會(huì)按照例子的套路寫,如果出現(xiàn)一些變化,就不會(huì)寫了,不過當(dāng)你寫過幾個(gè)項(xiàng)目后應(yīng)該會(huì)有一些自己的認(rèn)知,再理解起來應(yīng)該就不難了。
當(dāng)然,我個(gè)人還是建議帶有目的性的學(xué)習(xí),不能像學(xué)校一樣挨著理解每一個(gè)算子功能含義,不然理論知識(shí)在豐富,不會(huì)動(dòng)手等于零。動(dòng)手才能快速掌握。
創(chuàng)作挑戰(zhàn)賽新人創(chuàng)作獎(jiǎng)勵(lì)來咯,堅(jiān)持創(chuàng)作打卡瓜分現(xiàn)金大獎(jiǎng)總結(jié)
以上是生活随笔為你收集整理的halcon ocr 生成样本变体_Halcon简单文字识别OCR的使用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 手动挡五个档位示意图_汽车档位越多越好?
- 下一篇: go获取项目内所有proto_gRPC学