国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于圖像的表格識別問題研究

2021-06-20 02:22雷寰宇
科技視界 2021年13期
關(guān)鍵詞:單元格像素點輪廓

雷寰宇

(桂林電子科技大學(xué)信息科技學(xué)院,廣西 桂林 541004)

0 引言

傳統(tǒng)的企業(yè)、事業(yè)單位收集數(shù)據(jù)、保存數(shù)據(jù)一般采用紙質(zhì)文檔表格進行。紙質(zhì)文檔表格雖然能夠比較方便地進行數(shù)據(jù)的收集工作,但是紙質(zhì)文檔表格在處理數(shù)據(jù)方面,需要將紙質(zhì)表格數(shù)據(jù)先通過手工錄入電腦中,形成電子表格再進行處理。其過程極其煩瑣,需要花費大量的人力物力進行錄入操作,并且錄入錯誤率和速度都容易受人為因素影響。不僅如此,紙質(zhì)文檔表格在后續(xù)的存檔和查閱工作方面都存在較大的難題。為了減輕人工的負擔(dān),提高紙質(zhì)文檔表格的處理速度,本文研究了一種基于圖像的表格識別應(yīng)用,通過本應(yīng)用,可以將固定版面的紙質(zhì)文檔表格圖像進行灰度化處理,二值化處理等,使計算機更容易處理圖像,再通過圖像矯正,橫豎線識別和輪廓提取等技術(shù)得到表格框架,然后對表格框架進行單元格分割,最后利用光學(xué)符號識別技術(shù)識別單元格中的英文,數(shù)字和中文。本應(yīng)用的研究,將極大地節(jié)約人力物力,提高處理紙質(zhì)表格的工作速度。

1 圖像預(yù)處理

通過手機等移動設(shè)備采集的圖像容易受拍照環(huán)境的影響,容易產(chǎn)生圖像過曝,失真等情況。而在圖像分析中,圖像質(zhì)量的好壞將直接影響識別應(yīng)用效果的精度和速度,所以在圖像處理前,需要對圖像進行預(yù)處理,以便消除圖像中的無關(guān)信息,恢復(fù)有用的信息,增強有關(guān)信息的可檢測性,最大限度簡化圖像數(shù)據(jù)。

1.1 圖像灰度化

在灰度圖中,RGB色彩分量全部相等?,F(xiàn)在大部分的彩色圖像包含三種顏色(紅色、綠色和藍色)通道,可以將灰度化看作是將三維通道信息轉(zhuǎn)換為一維灰度數(shù)據(jù)的過程[1]。因此,為了提高處理速度,需要減少所需處理的數(shù)據(jù)量。本應(yīng)用使用Opencv中的cvtColor()函數(shù)對圖像進行顏色空間轉(zhuǎn)化處理,將彩色圖像轉(zhuǎn)化成只有灰度顏色通道且灰度范圍在0~255之間的灰度圖,大大減少了圖像中的無用信息,如圖1所示。

圖1 灰度化圖像

1.2 二值化

二值化是選取適當(dāng)?shù)拈撝礣n與每一個像素點的灰度值進行比較,將所有大于或等于閾值的像素點的灰度值設(shè)置為255,所有小于閾值的像素點的灰度值設(shè)置為0,從而將灰度圖像中每個像素點的灰度值設(shè)為0或255,使整副圖像呈現(xiàn)出明顯的黑白效果[2]。為了減少不必要的圖像信息,保留有用的圖像輪廓信息,本應(yīng)用使用Opencv中的adaptiveThreshold()自適應(yīng)閾值化函數(shù)實現(xiàn)對圖像的二值化處理,通過像素的鄰域塊的像素值分布來確定該像素位置上的二值化閾值。

1.3 高斯模糊處理

由于拍攝的圖像會很容易受到許多環(huán)境因素的影響,容易出現(xiàn)圖像失真,較多噪點等問題,為了消除圖像中的噪點,本應(yīng)用使用Opencv中的GaussianBlur()函數(shù)對圖像進行高斯模糊處理。

1.4 橫豎線提取

由于圖像處理后期可能需要不含內(nèi)容的表格框架圖像,本應(yīng)用使用Opencv中g(shù)etStructuringElement()函數(shù),得到指定形狀和尺寸的結(jié)構(gòu)元素,并通過腐蝕和膨脹操作將橫豎線識別出來,其次再將識別出來的橫豎線結(jié)合起來,形成表格框線圖,如圖2所示。

圖2 表格框線提取圖像

2 圖像矯正處理

通過手機采集拍攝的圖像往往存在表格圖像傾斜問題,如圖3所示。為了解決此問題,本應(yīng)用通過圖像邊緣檢測,圖像輪廓檢測,尋找最大輪廓和輪廓多邊形擬合等操作獲取表格四個頂點坐標(biāo),并通過透視變換操作將傾斜的圖像矯正,得如圖4所示結(jié)果。

圖3 變換前的圖像

圖4 透視變換后的圖像

2.1獲取傾斜表格的四個頂點坐標(biāo)

為了后一步的透視變換矯正圖像操作,必須獲得傾斜后的圖像中表格的四個頂點坐標(biāo)。

2.1.1 獲得預(yù)處理圖像

為了去除無用信息,保存需要的圖像信息,本應(yīng)用通過對獲取到的圖像使用高斯模糊操作,灰度化,二值化和表格橫豎線識別操作得到只含有表格框線的二值化圖像。

2.1.2 獲取表格輪廓數(shù)據(jù)

為了提取出圖像中的表格,本應(yīng)用在已經(jīng)預(yù)處理好的圖像上首先使用opencv中的Canny()函數(shù)進行邊緣檢測操作,通過表格框線與其兩側(cè)像素點數(shù)值相差較大,變化較快的特性,將表格框線提取出來。再利用已經(jīng)提取出來的表格框線進行圖像輪廓檢測操作。由于表格存在多個單元格,每個單元格都可以被檢測出輪廓,為了消除表格內(nèi)存在一個輪廓包含多個輪廓的問題,本算法將輪廓檢索模式設(shè)置cv2.RETR_EXTERNAL只檢測最外層輪廓,輪廓逼近方法為cv2.CHAIN_APPROX_SIMPLE壓縮水平方向、垂直方向和對角線方向的元素,保留該方向的終點坐標(biāo)。

2.1.3 獲取最外層表格輪廓的四個頂點

預(yù)處理圖像進行輪廓提取處理后產(chǎn)生了圖像的輪廓數(shù)據(jù),將輪廓數(shù)據(jù)存儲在一個數(shù)據(jù)列表中,使用輪廓所構(gòu)成的面積大小作為排序依據(jù),對輪廓數(shù)據(jù)列表進行從大到小排序,其次對列表中每個輪廓數(shù)據(jù)進行遍歷,對每一個輪廓數(shù)據(jù)進行計算輪廓周長,然后利用計算出的輪廓邊長作為參數(shù),進行輪廓多邊形擬合處理,如果擬合處理的結(jié)果為四個頂點的,表示找到該表格的最大外邊框,并同時得到最大外邊框的四頂點坐標(biāo)。

2.2 透視變換

對于發(fā)生了透視畸變的圖像,透視變換解決了一般仿射變換不能改變圖像內(nèi)部點相對位置的缺陷[3]。本應(yīng)用將源圖像的四頂點坐標(biāo)與目標(biāo)圖像的四頂點坐標(biāo)統(tǒng)一按照左上,右上,左下,右下的順序排序,使用Opencv中的getPerspectiveTransform()函數(shù)得到由源圖像中矩形到目標(biāo)圖像矩形的變換矩陣。然后使用Opencv中的warpPerspective()函數(shù)來得到變換好的正視圖。

3 單元格的分割

在識別出橫豎線后,分別將識別出來橫線圖和豎線圖結(jié)合形成交點圖,得到了每個橫豎線的交點坐標(biāo),將其保存到兩個數(shù)據(jù)列表中。其次在這兩個數(shù)據(jù)列表中進行排序,刪除掉相鄰兩個像素點的像素值差值小于該表格最小單元格長度的后一個像素點。最后嵌套循環(huán)兩個數(shù)據(jù)列表對表格進行圖像分割剪裁,取出單元格。

4 單元格內(nèi)容光學(xué)符號識別

本應(yīng)用利用PaddlePaddle生態(tài)下的預(yù)訓(xùn)練模型chinese_ocr_db_crnn_mobile(版本為1.1.1),使用預(yù)測API進行單元格圖片文字識別。其基于chinese_text_detection_db_mobile檢測得到文本框,識別文本框中的中文文字,之后對檢測文本框進行角度分類。最終識別文字算法采用CRNN(Convolutional Recurrent Neural Network)即卷積遞歸神經(jīng)網(wǎng)絡(luò)。

5 實驗分析

本次實驗采用的實驗平臺為Python3.7+Pycharm2020.1.3+opencv-python4.1.2.30。圖5為一張表格圖像傾斜的測試樣圖。

圖5 測試原圖

通過對測試樣圖進行圖片矯正和表格框線提取,單元格分割操作并保存每張分割后的單元格圖像后,得到圖6的結(jié)果。通過本次實驗可以看出,單元格內(nèi)容識別率并不是很高。

圖6 csv結(jié)果圖

6 結(jié)語

本文提出了一種基于圖像的表格提取應(yīng)用,通過對源圖像進行圖像預(yù)處理,圖像矯正等處理,消除圖像因環(huán)境和拍攝產(chǎn)生的干擾,再通過橫豎線識別,提取出表格框線,并通過表格框線的交點坐標(biāo)進行表格圖像的單元格分割,再經(jīng)過光學(xué)符號識別得到單元格中的內(nèi)容并寫入csv文件。

猜你喜歡
單元格像素點輪廓
流水賬分類統(tǒng)計巧實現(xiàn)
OPENCV輪廓識別研究與實踐
玩轉(zhuǎn)方格
玩轉(zhuǎn)方格
基于實時輪廓誤差估算的數(shù)控系統(tǒng)輪廓控制
基于5×5鄰域像素點相關(guān)性的劃痕修復(fù)算法
淺談Excel中常見統(tǒng)計個數(shù)函數(shù)的用法
基于canvas的前端數(shù)據(jù)加密
基于逐像素點深度卷積網(wǎng)絡(luò)分割模型的上皮和間質(zhì)組織分割
在線學(xué)習(xí)機制下的Snake輪廓跟蹤
扬中市| 大荔县| 大厂| 霸州市| 伊春市| 连南| 思茅市| 汾阳市| 睢宁县| 瓮安县| 恩平市| 昌平区| 兴义市| 通道| 富阳市| 宾阳县| 太仓市| 应城市| 北海市| 宜阳县| 新建县| 农安县| 河北区| 延边| 孟村| 台中县| 乡城县| 灵宝市| 饶阳县| 资中县| 论坛| 永兴县| 元朗区| 章丘市| 民丰县| 双鸭山市| 宝兴县| 丹东市| 固始县| 梁山县| 文山县|