看到丹娜興致勃勃地進入抄錄室后,李維斯才前往接待室。
他舒服地坐在接待室的沙發(fā)上,閉上眼開始寫代碼。
要使用OCR文字識別,也很簡單。
依舊是導(dǎo)入第三方的包,再簡單調(diào)用兩三個函數(shù)即可。
贊美偉大的開源作者!
這次的包名叫做Tesseract,李維斯在地球的時候也用過。
不過不是在實際項目中,而是閑著無聊自己做個演示項目來玩玩。
這個抄錄魔法符號的魔法,要放到魔法與魔法符號相互轉(zhuǎn)換這一個模塊中。
更準(zhǔn)確來說是這個模塊中的魔法符號工具類里。
做成靜態(tài)函數(shù),一鍵調(diào)用,方便又快捷。
這個識別魔法符號并抄錄的功能,需要配合之前用過的OpenCvSharp包來使用。
調(diào)用眼睛作為攝像頭,但這次不用將其儲存為視頻格式,而是直接儲存為圖片格式。
而且也不用存到硬盤上,直接在內(nèi)存中使用,使用完了釋放它的資源即可。
簡而言之就是拍下清晰的照片,提取完照片里面的文字后,扔掉照片。
而之前抄錄瞬移卷軸時,因為時間緊迫并沒有想到OCR技術(shù),所以需要將視頻存到硬盤里,再讀取路徑播放。
步驟多了幾步,繁瑣了一點,還要自己手動抄錄。
而這次不一樣,全自動抄錄,識別完符號后,復(fù)制粘貼到備忘魔法紙上——
不,現(xiàn)在沒有備忘魔法紙了。
李維斯已經(jīng)將所有魔法都寫入到文本文件,保存到“人腦”硬盤上。
保存路徑還是上次保存視頻的C盤,只是文件名都以魔法名來命名。
想查看的時候,從儲存路徑加載到文本控件中就好了。
這樣一來,李維斯的魔法紙界面就干凈了很多,也多了一張魔法紙可以用。
回到正題,識別完魔法符號后,放到文本控件中。
再把魔法符號轉(zhuǎn)換成代碼,放到另一個文本控件中,運行這段代碼。
如果能成功運行,就說明識別正確了,可以儲存到硬盤中。
如果運行報錯了,那就在代碼上面改,改正確了再轉(zhuǎn)回魔法符號,儲存到硬盤中。
這樣一來就不用對著六七千個0和1,一個一個地校對哪一個數(shù)字錯了。
捋清思路后,開始動手——動腦寫代碼。
寫了一個多小時,終于寫好了。
本來只寫這個功能的話,很快寫完的。
但是要把這個功能加入到未完善的框架中,就需要多花點功夫。
寫完用手寫在紙上的0和1測試了半個小時。
雖說是手寫的,但識別率還算可以。
用在幻影之盒里寫得更工整的魔法符號上,識別率會更高。
一切準(zhǔn)備就緒,李維斯叫來人偶一號,告訴它自己要抄錄所有魔法。
人偶一號有些疑惑,再三確認(rèn)是否真的要抄錄所有魔法后,才讓李維斯進入抄錄室。
李維斯站在熟悉的抄錄室中,打開幻影之盒,看著六七十個密密麻麻地投影在墻壁上。
好在幻影之盒是可以控制內(nèi)容的。
李維斯調(diào)了調(diào),把六個魔法投影到墻上,確保數(shù)量和清晰度在一個最好的平衡。
雖然多個魔法被一起識別出來后,就是一大堆分不清哪里是開始哪里是結(jié)尾的0和1。
但是無所謂,只要將所有二進制數(shù)都轉(zhuǎn)成代碼,開頭和結(jié)尾一眼就能看出來的。
事不宜遲,開始吧,全自動抄錄魔法。
啟動魔法程序,調(diào)用攝像頭,執(zhí)行OCR文件識別,一兩秒后,輸出結(jié)果到文本控件,再把結(jié)果轉(zhuǎn)換成代碼輸出到另一個文本控件中。
整個流程都沒有問題,速度也很快。
李維斯看著兩個文本控件,露出了滿意的笑容。
接下來就是把這六個魔法都運行一次。
結(jié)果有兩個魔法報錯了,幾個字母識別錯了。
估計是這兩個魔法處于邊緣位置,有些符號拍得有些模糊吧。
如果一個魔法一個魔法這樣來,估計識別率能到百分百。
總之這個識別率還可以,無論如何也絕對比自己手動抄錄要快得多。
五六分鐘后,李維斯離開抄錄室。
所有可以用金幣購買的魔法都已經(jīng)被他抄錄完了。
看看時間也快兩個小時了,丹娜也該出來了。
于是李維斯在丹娜的抄錄室門口等她出來。
當(dāng)然腦中還在編寫他的系統(tǒng)面板,不能浪費任何空閑的時間。
十多分鐘后,丹娜晃晃悠悠地打開抄錄室的門,走了出來。
她抄得頭都快暈了,眼睛都有些聚不了焦。
不過一看到李維斯在門外等她后,她立刻就精神了起來,眼睛也散發(fā)出開心的光芒。
“李維斯,你怎么在等我啊,你這么快抄錄完了嗎?”
“嗯,我已經(jīng)抄錄完了,而且還是全部抄錄完了。”
看到丹娜抄得那么辛苦,李維斯決定把這個魔法單獨提出來,做成一個新的魔法。
“全部?!你也太厲害了吧!”
丹娜的眼睛瞪得大大的,一副難以置信的樣子。
“我抄了兩個小時,才抄了四個魔法……”
“我沒那么厲害,厲害的是魔法。
我有一個新的魔法,叫做識別符號魔法,可以幫助你快速抄錄魔法。”
“啊,那你剛剛怎么不教我啊。”
丹娜用幽怨的眼神抱怨道。
“呃,這個嘛,我剛才忘了……”
李維斯心虛地回答,不敢看丹娜的眼睛。
他趕緊轉(zhuǎn)移話題:
“好了,先和我到接待室,我把這個魔法告訴你吧。”
“啊,又要抄魔法~”丹娜發(fā)出哀嚎。
“別叫了,抄完這一個魔法你就一勞永逸——
呃,也不對,這個識別符號魔法有一定的錯誤率,所以識別完了記得運行一下魔法。
如果運行不起來,好好對一下哪個符號錯了,總的來說比之前輕松了很多。”
李維斯一邊帶路一邊提醒。
“好吧,為了當(dāng)魔法師,我拼了!”
丹娜握緊拳頭,給自己打氣。
“哪有那么夸張啊……”
李維斯有些無語:
“都說了抄完這個識別魔法,以后抄錄魔法就會輕松很多。”
“好了,接待室到了,先休息一下吧,喝口茶,吃些點心。”
李維斯停下腳步,推開了接待室的門。
“點心!”
丹娜一聽到“點心”兩個字,就兩眼發(fā)光地沖進接待室。
見此,李維斯苦笑著,無奈地?fù)u搖頭,走進接待室。