龍之冠
摘 要? 針對(duì)永州市經(jīng)濟(jì)技術(shù)開(kāi)發(fā)區(qū)征地檔案數(shù)據(jù)整理建庫(kù)工作中界址點(diǎn)坐標(biāo)電子數(shù)據(jù)缺失現(xiàn)象,當(dāng)前主要通過(guò)人工識(shí)別檔案資料并且將坐標(biāo)數(shù)據(jù)抄錄進(jìn)入數(shù)據(jù)庫(kù)的方式,但是存在工作效率低下、審核成本高等問(wèn)題。為提高征地檔案數(shù)據(jù)整理建庫(kù)工作效率,本文基于Tesseract訓(xùn)練機(jī)制,在此基礎(chǔ)上開(kāi)發(fā)程序?qū)崿F(xiàn)征地紅線圖中界址點(diǎn)坐標(biāo)的識(shí)別。實(shí)踐結(jié)果表明該方法能夠有效輔助征地檔案數(shù)據(jù)整理建庫(kù)工作,業(yè)務(wù)生產(chǎn)效率顯著提升。
關(guān)鍵詞? 征地檔案;界址點(diǎn)坐標(biāo);數(shù)字識(shí)別;Tesseract-OCR
中圖分類號(hào):G270.7? ? ? ? ? ? ? ? ? ? ?文獻(xiàn)標(biāo)識(shí)碼:A
Abstract: In view of the absence of electronic data inland expropriation archives data collation and database construction in Yongzhou economic and technologicaldevelopment zone,it is mainly through manual identification of archival data and transcription of coordinate data into the database. there are some problems such as low efficiency and high audit cost.In order to simplify the work flow of land expropriation archives data and database construction,This paper develops a data recognition program for identifing the coordinates of boundary points in land expropriation red line map based on Tesseract-OCR engine.The experimental results show that the method can effectively assist the collection and construction of land expropriation archives data and improve the production efficiency of the business.
Keywords: land expropriation archives; boundary point coordinates; digital recognition; tesseract-OCR
界址點(diǎn)是征地范圍界線的節(jié)點(diǎn),它是標(biāo)定征地范圍界線以及權(quán)屬關(guān)系的重要標(biāo)志[1]。在征地檔案數(shù)據(jù)整理建庫(kù)工作中發(fā)現(xiàn)諸多征地紅線圖缺失配套的電子坐標(biāo)數(shù)據(jù),按照傳統(tǒng)人工方法,手動(dòng)將界址點(diǎn)坐標(biāo)抄錄進(jìn)入Excel文件或文本文檔,然后通過(guò)AutoCAD或者南方CASS讀取坐標(biāo)數(shù)據(jù)生成dwg文件,再導(dǎo)入ArcGIS中添加屬性數(shù)據(jù),最終以shp文件格式存入服務(wù)器進(jìn)行存檔。但是實(shí)際工作量較大,其中需要進(jìn)行抄錄的界址點(diǎn)坐標(biāo)數(shù)據(jù)數(shù)以萬(wàn)計(jì),手動(dòng)抄錄數(shù)據(jù)人力成本巨大,隨著項(xiàng)目量增加會(huì)徒增諸多問(wèn)題包括數(shù)據(jù)遺漏、耗時(shí)費(fèi)力、工作效率低下等[2-5]。
為解決上述問(wèn)題,本文基于Google開(kāi)源OCR引擎Tesseract,針對(duì)征地紅線圖紙實(shí)際情況,對(duì)于圖紙褶皺、等高線壓蓋、無(wú)關(guān)注記干擾等關(guān)鍵的識(shí)別問(wèn)題進(jìn)行研究?;赥esseract自帶的訓(xùn)練學(xué)習(xí)機(jī)制得到征地?cái)?shù)據(jù)樣本字符庫(kù),加入自帶的識(shí)別參考字符庫(kù),以此提高數(shù)據(jù)識(shí)別率。
1? 數(shù)字識(shí)別研究
紙質(zhì)檔案數(shù)字識(shí)別研究依托永州市經(jīng)濟(jì)技術(shù)開(kāi)發(fā)區(qū)征地檔案數(shù)據(jù)整理建庫(kù)項(xiàng)目開(kāi)展。由于參與項(xiàng)目的第三方測(cè)繪單位較多且相互協(xié)調(diào)困難,數(shù)據(jù)整合過(guò)程中發(fā)現(xiàn)超過(guò)70%的檔案只有界址點(diǎn)紙質(zhì)數(shù)據(jù)而沒(méi)有電子數(shù)據(jù),存在大量電子坐標(biāo)數(shù)據(jù)缺失現(xiàn)象。參照過(guò)往工作經(jīng)驗(yàn),需要通過(guò)人工識(shí)別抄錄數(shù)據(jù)入庫(kù),過(guò)程費(fèi)時(shí)耗力且效率低下、審核困難。
Tesseract由HP公司開(kāi)發(fā),目前成為Google開(kāi)源社區(qū)項(xiàng)目,是一個(gè)開(kāi)源OCR引擎(Optical Character Recognition,光學(xué)字符識(shí)別),可以基于引擎開(kāi)發(fā)用于識(shí)別多種格式的圖像文件并將其轉(zhuǎn)換成文本[6-10]。目前OCR技術(shù)相對(duì)成熟,但是其與征地圖紙相關(guān)測(cè)繪業(yè)務(wù)的結(jié)合很少,因?yàn)闇y(cè)繪業(yè)務(wù)對(duì)于數(shù)據(jù)精度要求極高、歷史存檔文件掃描效果差等現(xiàn)象。因此需要針對(duì)征地檔案內(nèi)界址點(diǎn)數(shù)據(jù)特征進(jìn)行專門研究,通過(guò)對(duì)Tesseract訓(xùn)練字符庫(kù)來(lái)擴(kuò)大識(shí)別范圍,提高程序識(shí)別精度,彌補(bǔ)因不同紙質(zhì)環(huán)境導(dǎo)致的識(shí)別效率不高等缺點(diǎn)。
1.1 研究思路
本文技術(shù)流程分為四個(gè)模塊:數(shù)據(jù)預(yù)處理、Tesseract字符庫(kù)訓(xùn)練、程序識(shí)別及質(zhì)量控制。數(shù)據(jù)預(yù)處理包括對(duì)圖紙數(shù)據(jù)部分進(jìn)行數(shù)字化(掃描或拍照),圖像裁剪、增強(qiáng)等操作;Tesseract字符庫(kù)訓(xùn)練包括制作訓(xùn)練樣本、生成Box文件和tri文件、數(shù)據(jù)(字符)校正、定義字符庫(kù)及traineddata文件;程序識(shí)別通過(guò)調(diào)用Tesseract-OCR完成坐標(biāo)識(shí)別;質(zhì)量控制包括識(shí)別結(jié)果格式轉(zhuǎn)換、數(shù)據(jù)去噪、建立質(zhì)檢規(guī)則庫(kù)并且人工核對(duì)、精度分析等。圖1為本文技術(shù)流程框架。
1.2 代碼實(shí)現(xiàn)
由于整個(gè)技術(shù)流程中有涉及圖像處理、Tesseract訓(xùn)練、數(shù)字識(shí)別、格式轉(zhuǎn)換等多個(gè)過(guò)程,代碼量較大,因此在此附上關(guān)鍵環(huán)節(jié)代碼:利用Python調(diào)用Tesseract-OCR引擎(經(jīng)過(guò)字符庫(kù)訓(xùn)練改進(jìn)),對(duì)圖紙數(shù)據(jù)進(jìn)行識(shí)別:
2? 實(shí)驗(yàn)結(jié)果分析
2.1 數(shù)據(jù)預(yù)處理
利用高拍儀對(duì)圖紙數(shù)據(jù)進(jìn)行掃描拍照。如圖2所示,該圖為掃描件原始圖片,通過(guò)圖像處理工具對(duì)圖片進(jìn)行裁剪、二值化、亮度提升及圖像銳化等操作,如圖3所示,該圖為數(shù)據(jù)處理后圖片,通過(guò)對(duì)比可看出原始圖片中的干擾因素基本去除。
由于數(shù)據(jù)識(shí)別過(guò)程中同一項(xiàng)目的掃描件圖片過(guò)多,容易導(dǎo)致沒(méi)有唯一標(biāo)識(shí)來(lái)區(qū)分識(shí)別得到的坐標(biāo)數(shù)據(jù),因此需要對(duì)將通過(guò)數(shù)據(jù)預(yù)處理之后的圖片建立檔案序號(hào),如“2012-0003號(hào)2012年永州市第八批次建設(shè)用地報(bào)批項(xiàng)目”中的征地紅線坐標(biāo)表圖片標(biāo)記為“2012-0003-001.jpg”至“2012-0003-017.jpg”,共計(jì)17張,識(shí)別結(jié)果輸出序號(hào)為“2012-0003-001.txt”至“2012-0003-017.txt”。
2.2 界址點(diǎn)數(shù)據(jù)識(shí)別
Tesseract本身?yè)碛胸S富的字符庫(kù),但是對(duì)于特定測(cè)繪圖紙環(huán)境下的的字符識(shí)別率難以保證,鑒于Google開(kāi)放給用戶自定義字符庫(kù)的訓(xùn)練方法,以此來(lái)提高OCR引擎的識(shí)別效率。因此訓(xùn)練得到適用于征地檔案紙質(zhì)環(huán)境下的數(shù)字字符庫(kù)尤為重要,這也是本文的工作重點(diǎn)[11]。
2.2.1 Tesseract訓(xùn)練字符庫(kù)
(1)訓(xùn)練初始化
在對(duì)字符庫(kù)進(jìn)行訓(xùn)練之前需要搭建字符庫(kù)訓(xùn)練環(huán)境,本文采用Java 8.0 + jTessBoxEditor + FastStone Capture的訓(xùn)練框架,實(shí)驗(yàn)硬件環(huán)境為Intel-Core i7-6770m+NVIDIA Geforce GTX960+16G RAM,以Java SE DK8.0版本作為基礎(chǔ)運(yùn)行環(huán)境,jTessBoxEditor作為訓(xùn)練工具,F(xiàn)astStone Capture作為字符樣本采集工具。
(2)訓(xùn)練樣本采集
字符庫(kù)訓(xùn)練的首要環(huán)節(jié)是采集字符樣本。通過(guò)FastStone Capture按照50×80的矩陣窗口進(jìn)行樣本采集,以8種字體為基準(zhǔn)采集了254組數(shù)據(jù)樣本,建立各類字體下的訓(xùn)練數(shù)據(jù)集。樣本合并圖片如圖4所示:
(3)生成Box 文件
通過(guò)jTessBoxEditor將上述字符樣本數(shù)據(jù)生成 Box文件。合成指令為:“tesseract.exe num.font.exp0.tif num.font.exp0 batch.nochop makebox” [12]。生成的Box文件為num.font.exp0.box,Box文件為Tesseract識(shí)別出的文字和坐標(biāo)。
(4)數(shù)據(jù)校正
通過(guò)jTessBoxEditor的Box Editor工具,導(dǎo)入生成的tif文件,工具自動(dòng)標(biāo)記數(shù)據(jù)并且寫入在Box Coordinates中。由于tif文件中存在噪點(diǎn),導(dǎo)致下圖中11個(gè)字符,被標(biāo)記出14個(gè)字符,并且11個(gè)字符里面錯(cuò)誤識(shí)別4個(gè),通過(guò)手動(dòng)更改進(jìn)行數(shù)據(jù)校正。數(shù)據(jù)字符校正操作如圖5所示:
(5)字體特征定義
在訓(xùn)練樣本所在目錄下創(chuàng)建font_properties文件,定義樣本的字體特征為“黑體0 0 0 0 0”表示訓(xùn)練樣本數(shù)據(jù)為黑體印刷,但不具備斜體、粗體及固定等特征[13]。針對(duì)特殊識(shí)別環(huán)境,圖紙數(shù)據(jù)進(jìn)行加粗的情況,則需要根據(jù)實(shí)際情況來(lái)定義字體特征,不然會(huì)影響識(shí)別率。
(6)合成語(yǔ)言文件
根據(jù)下述指令生成批處理文件并通過(guò)批處理操作合成語(yǔ)言文件num.traineddata。指令如圖6所示:
將合成的語(yǔ)言文件num.traineddata導(dǎo)入Tesseract自帶的字符庫(kù)traindata文件夾中。在后續(xù)調(diào)用Tesseract-OCR工具的時(shí)候,引擎將會(huì)自動(dòng)將語(yǔ)言文件作為字符識(shí)別參考庫(kù)。
2.2.2 調(diào)用Tesseract-OCR
字符庫(kù)訓(xùn)練完成之后,在Anaconda中利用Python調(diào)用Tesseract-OCR,在調(diào)用之前需要引入 pytesseract庫(kù)和PIL庫(kù)用于輔助識(shí)別[14-15]。調(diào)用過(guò)程也可以在cmd命令行中直接進(jìn)行。
2.2.3 數(shù)據(jù)識(shí)別
這里以永州市經(jīng)濟(jì)技術(shù)開(kāi)發(fā)區(qū)征地檔案資料中的“2011-0003-鳳凰園標(biāo)準(zhǔn)廠房(一期)項(xiàng)目”至“2015-0006-南甸路(零陵南路-獵豹路)項(xiàng)目”共計(jì)18本紙質(zhì)檔案資料中57個(gè)界址點(diǎn)坐標(biāo)表(共計(jì)2283個(gè)坐標(biāo)點(diǎn)數(shù)據(jù))為識(shí)別對(duì)象,圖7為部分?jǐn)?shù)據(jù)情況:
因?yàn)榕臄z環(huán)境及紙張完好程度不同,因此圖紙數(shù)據(jù)的預(yù)處理也得參照實(shí)際情況,本文預(yù)先人工將所有的圖紙數(shù)據(jù)分為幾類:易識(shí)別類、適中類、難識(shí)別類以及數(shù)據(jù)缺失類,后續(xù)分析不同OCR在識(shí)別復(fù)雜環(huán)境下的坐標(biāo)數(shù)據(jù)的表現(xiàn)。通過(guò)數(shù)據(jù)預(yù)處理之后,以上圖片處理結(jié)果如圖8:
將上述處理后圖片導(dǎo)入識(shí)別程序中,依托訓(xùn)練好的字符庫(kù)調(diào)用程序開(kāi)展識(shí)別過(guò)程,針對(duì)易識(shí)別類圖紙進(jìn)行單次識(shí)別結(jié)果如圖9:
通過(guò)實(shí)驗(yàn)結(jié)果統(tǒng)計(jì)可以看出,對(duì)于易識(shí)別類圖紙數(shù)據(jù),本文識(shí)別方法數(shù)字識(shí)別率以及單次識(shí)別可用率均在92%以上。但是對(duì)于圖紙褶皺嚴(yán)重導(dǎo)致數(shù)據(jù)缺失的圖紙,在識(shí)別率上則表現(xiàn)一般,識(shí)別過(guò)程仍然存在不少問(wèn)題:小數(shù)點(diǎn)識(shí)別效果不佳、存在亂碼情況、部分?jǐn)?shù)字因?yàn)樽址Y(jié)構(gòu)相似存在混淆識(shí)別情況、數(shù)據(jù)有效數(shù)字超過(guò)正常范圍等。后續(xù)對(duì)識(shí)別結(jié)果進(jìn)行規(guī)則庫(kù)約束以及人工核對(duì),從而完成質(zhì)量控制。
3? 規(guī)則庫(kù)與質(zhì)量控制
采用正則表達(dá)式技術(shù),即用事先定義好的一些特定字符、及這些特定字符的組合組成一個(gè)“規(guī)則字符串”,并用其對(duì)目標(biāo)字符串進(jìn)行內(nèi)容過(guò)濾。在數(shù)據(jù)整理過(guò)程中發(fā)現(xiàn),界址點(diǎn)坐標(biāo)數(shù)據(jù)具有相對(duì)固定的格式。
(1)數(shù)據(jù)范圍規(guī)范
該項(xiàng)目中坐標(biāo)數(shù)據(jù)基于WGS-84坐標(biāo)系測(cè)量得出,因此坐標(biāo)數(shù)據(jù)里面前幾位為固定值“292”、“375”、“55/56”,因此輸出數(shù)據(jù)在經(jīng)過(guò)規(guī)則庫(kù)匹配數(shù)據(jù)范圍的時(shí)候,前幾位數(shù)字與之匹配不上,則視為無(wú)效數(shù)據(jù)。
永州市經(jīng)開(kāi)區(qū)實(shí)測(cè)數(shù)據(jù)范圍里X坐標(biāo)為10位有效數(shù)字,小數(shù)點(diǎn)后3位有效數(shù)字;Y坐標(biāo)為9位有效數(shù)字,小數(shù)點(diǎn)后3位有效數(shù)字。
(2)格式轉(zhuǎn)換
將識(shí)別出來(lái)的數(shù)據(jù)進(jìn)行批量格式轉(zhuǎn)換,從txt文件寫入excel文件中,通過(guò)簡(jiǎn)單數(shù)據(jù)整合后可直接使用于后續(xù)的圖形建庫(kù)流程。
(3)人工核對(duì)
鑒于業(yè)主單位對(duì)征地坐標(biāo)數(shù)據(jù)精準(zhǔn)性的要求,因此在數(shù)據(jù)識(shí)別結(jié)果輸出之后,需要通過(guò)人工質(zhì)檢成果來(lái)控制數(shù)據(jù)精確性,確保建庫(kù)數(shù)據(jù)零錯(cuò)誤。質(zhì)檢過(guò)程中發(fā)現(xiàn)數(shù)據(jù)有誤,則通過(guò)人工修改記錄并且做好標(biāo)記,以方便為后續(xù)改進(jìn)識(shí)別工具提供信息。
4? 識(shí)別效率對(duì)比分析
本文將18本紙質(zhì)檔案資料中57個(gè)界址點(diǎn)坐標(biāo)表(共計(jì)2283個(gè)坐標(biāo)點(diǎn)數(shù)據(jù))進(jìn)行識(shí)別,采集194個(gè)坐標(biāo)數(shù)據(jù)的識(shí)別結(jié)果將本文工具與百度OCR工具識(shí)別的效率進(jìn)行橫向?qū)Ρ取?/p>
表1為本文基于Tesseract-OCR改進(jìn)的數(shù)字識(shí)別方法(以下簡(jiǎn)稱“本文方法”)與百度商用OCR工具關(guān)于征地圖紙數(shù)據(jù)的識(shí)別精度對(duì)比情況。因?yàn)閳D片環(huán)境的不同,所以在不同識(shí)別難度的圖紙數(shù)據(jù)識(shí)別上,各個(gè)OCR工具所表現(xiàn)的識(shí)別精度有所差異。
在圖紙質(zhì)量?jī)?yōu)良、易于識(shí)別的圖片上,本文方法識(shí)別精度比百度OCR略高,并且精度很高,配合少許人工核對(duì),即可將成果流轉(zhuǎn)至后續(xù)建庫(kù)環(huán)節(jié)。但是針對(duì)難識(shí)別、數(shù)據(jù)缺失等情況的圖紙數(shù)據(jù),不管是本文方法還是百度OCR識(shí)別結(jié)果均出現(xiàn)不同程度的大范圍失真,這是因?yàn)閳D紙數(shù)據(jù)年久維護(hù)較差固有存在的問(wèn)題,針對(duì)這部分圖紙則需要通過(guò)人工為主、工具為輔的工作方式。
表2為本文方法與人工抄錄工作方式的識(shí)別效率對(duì)比表。數(shù)字識(shí)別率計(jì)算對(duì)象為數(shù)字單位;單次識(shí)別可用率計(jì)算為僅通過(guò)一次識(shí)別即可將識(shí)別結(jié)果用于后續(xù)建庫(kù)環(huán)節(jié);拒識(shí)率為識(shí)別失效情況,該部分可能因?yàn)橐孀陨硭惴ㄔ?,未能覆蓋全部圖片范圍導(dǎo)致少部分?jǐn)?shù)據(jù)未能識(shí)別到位;規(guī)則處理后可用率為100%(考慮到數(shù)據(jù)準(zhǔn)確度要求為100%);圖片返工處理率為通過(guò)單次識(shí)別后必須返工的圖片在全部圖片中占比;耗時(shí)計(jì)算為采集全部測(cè)試樣本所需要耗時(shí)。鑒于返工處理以及人工核對(duì)時(shí)間收集難度大,故耗時(shí)方面僅采集Anaconda內(nèi)代碼運(yùn)行時(shí)間,以此反映識(shí)別性能,人工抄錄時(shí)間為參考單本檔案抄錄時(shí)間對(duì)全部測(cè)試樣本進(jìn)行預(yù)估。
5? 結(jié)束語(yǔ)
隨著自然資源信息化的不斷推進(jìn),自然資源部門對(duì)業(yè)務(wù)數(shù)據(jù)的需求也從紙質(zhì)檔案逐漸往數(shù)字化轉(zhuǎn)變。在征地檔案數(shù)據(jù)整理建庫(kù)工作中存在大量的征地紅線圖數(shù)據(jù)需要從紙質(zhì)形式轉(zhuǎn)變?yōu)閿?shù)字形式。本文針對(duì)實(shí)際工作需要,在開(kāi)源工具Tesseract基礎(chǔ)上訓(xùn)練得到契合本項(xiàng)目的字符庫(kù),提高了數(shù)字識(shí)別精度,在圖紙質(zhì)量?jī)?yōu)良的前提下,本研究的高識(shí)別率可以顯著提升業(yè)務(wù)工作效率。
本研究存在一些待解決的問(wèn)題,包括過(guò)多研究訓(xùn)練過(guò)程對(duì)識(shí)別率提升意義不大,識(shí)別結(jié)果表明圖像質(zhì)量極大程度影響識(shí)別準(zhǔn)確率,所以提高圖片質(zhì)量成為后續(xù)工作重點(diǎn),因此將從圖像獲取和圖像增強(qiáng)角度繼續(xù)深入研究。
參考文獻(xiàn)/References
[1]李磊,李正品,李曦凌.宗地界址點(diǎn)自動(dòng)化提取算法研究[J].測(cè)繪地理信息,2018,43(02):90-92+96.
[2]彭立波.勘測(cè)設(shè)計(jì)單位檔案信息化管理實(shí)踐與探索[J].黑龍江水利科技,2012,40(12):227-229.
[3]鄭清潔. 焦作市國(guó)土資源檔案數(shù)字化設(shè)計(jì)與實(shí)現(xiàn)[D].河南理工大學(xué),2012.
[4]孫羽菲. 低質(zhì)量文本圖像OCR技術(shù)的研究[D].中國(guó)科學(xué)院計(jì)算技術(shù)研究所,2005.
[5]顏建強(qiáng),高新波.一種基于Google的OCR結(jié)果校對(duì)新方法[J].計(jì)算機(jī)學(xué)報(bào),2014,37(06):1261-1267.
[6] Lee Sunjin,Lee Hyojin,Kim Ki-Tae. Optimization of experimental conditions and measurement of oxygen consumption rate (OCR) in zebrafish embryos exposed to organophosphate flame retardants (OPFRs).[J]. Ecotoxicology and environmental safety,2019,182.
[7] Haisong Ding,Kai Chen,Qiang Huo. Compressing CNN-DBLSTM models for OCR with teacher-student learning and Tucker decomposition[J]. Pattern Recognition,2019,96.
[8] Yan Wenqiang,Xu Guanghua,ChenLongting.Steady State Motion Visual Evoked Potential Enhancement Method Based on Time-Frequency Image Fusion.[J].Computational intelligence and neuroscience,2019.
[9]程育恒. 基于Tesseract開(kāi)源OCR引擎的證件識(shí)別系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].東華大學(xué),2014.
[10]張淙悅,尹梓名,孫大運(yùn),戴維.基于Tesseract的醫(yī)學(xué)化驗(yàn)單內(nèi)容識(shí)別技術(shù)[J].北京生物醫(yī)學(xué)工程,2019,38(03):283-289.
[11]唐濤,馬澤.基于OCR的空間坐標(biāo)自動(dòng)提取——以廣東省清遠(yuǎn)市清新區(qū)不動(dòng)產(chǎn)存量數(shù)據(jù)整合為例[J].江西科學(xué),2018,36(06):1024-1028+1038.
[12]中英文混排名片識(shí)別系統(tǒng)研究[D]. 金鑫.南京航空航天大學(xué) 2012.
[13]基于神經(jīng)網(wǎng)絡(luò)的手寫體數(shù)字識(shí)別關(guān)鍵技術(shù)研究[D]. 白天毅.西安工業(yè)大學(xué) 2014.
[14]楊恒杰,閆錚,鄔宗玲,方定邦,段放.基于循環(huán)神經(jīng)網(wǎng)絡(luò)的圖像特定文本抽取方法[J/OL].激光與光電子學(xué)進(jìn)展:1-9[2019-08-16].