夏莉麗,劉一鋒,彭家偉,曾友,徐則中
(常州工學(xué)院計(jì)算機(jī)科學(xué)與技術(shù)系,江蘇 常州 213032)
隨著數(shù)字化技術(shù)的發(fā)展,基于文本文件的掃描圖像文字識(shí)別與處理技術(shù)目前已得到廣泛應(yīng)用[1]。然而在將紙質(zhì)文件轉(zhuǎn)換為電子文檔的過(guò)程中,由于擺放不正或拍攝角度不正等原因,不可避免地會(huì)造成文檔圖像的傾斜。這種傾斜將對(duì)文本圖像的后續(xù)分析處理,如光學(xué)字符識(shí)別(OCR)[2]、版面分析[3]、電子作業(yè)自動(dòng)批閱等產(chǎn)生不利的影響。因此,需要對(duì)傾斜的電子文檔圖像進(jìn)行傾斜檢測(cè)與校正,以用于后續(xù)的文檔分析、識(shí)別。
文檔圖像傾斜角度的檢測(cè)是文檔圖像傾斜校正的前提。目前最常用的傾斜校正方法主要有投影法[4-5]、近鄰法[6]、傅里葉變換法[7]、Hough變換法[8-9]等。投影法選擇不同的角度進(jìn)行投影測(cè)試,通過(guò)分析投影輪廓,選擇輪廓方差最大的測(cè)試角度作為文檔傾斜角,檢測(cè)精度依賴于測(cè)試角度的精度[10]。Hough變換法通過(guò)在參數(shù)空間里檢測(cè)最大值對(duì)應(yīng)的角度,作為文檔的傾斜角。Hough變換法計(jì)算量大,且檢測(cè)精度與參數(shù)空間的離散度有關(guān)[11-12]。近鄰法的傾角檢測(cè)精度低。傅立葉變換法的計(jì)算量太大。
本文為了提高傾斜電子文檔的傾角檢測(cè)精度,通過(guò)計(jì)算對(duì)應(yīng)每個(gè)測(cè)試角的水平投影方差,運(yùn)用函數(shù)擬合技術(shù)將這些投影方差擬合,把函數(shù)取最小值所對(duì)應(yīng)的角度作為文檔的傾斜角度,從而得到更高精度的文檔傾角。
對(duì)于掃描的印刷文檔圖像,其中都包含著大量具有相同方向和固定行間距的文字行,而對(duì)于拍照的手寫(xiě)文檔圖像,雖然文字行之間沒(méi)有固定間距,但行與行之間總存在空隙。把文本區(qū)域向不同方向進(jìn)行投影,通過(guò)分析投影點(diǎn)的分布情況確定文檔的傾斜角度。當(dāng)投影方向與文本行方向一致時(shí),投影點(diǎn)分布最為密集,也就是投影點(diǎn)的方差最小。
本文通過(guò)對(duì)傾斜的文檔圖像旋轉(zhuǎn)不同的角度,進(jìn)行投影測(cè)試,計(jì)算對(duì)應(yīng)不同角度的投影點(diǎn)方差。將這些方差擬合成二次函數(shù),對(duì)函數(shù)求導(dǎo),計(jì)算函數(shù)最小值對(duì)應(yīng)的角,作為文檔的傾斜角度,進(jìn)而對(duì)原始文檔進(jìn)行旋轉(zhuǎn)變換,得到校正的電子文檔圖像。算法流程如圖1所示。
圖1 算法流程圖
首先對(duì)原始圖像進(jìn)行灰度化處理,然后對(duì)圖片進(jìn)行二值化處理。把原始文檔圖像轉(zhuǎn)換成灰度圖像如圖2(a)所示,再運(yùn)用Otsu法進(jìn)行閾值分割,得到二值化圖像,如圖 2(b)所示。
(a)灰度文檔圖像
在每個(gè)測(cè)試角度時(shí)都將文檔圖像中的每個(gè)黑點(diǎn)像素向y軸進(jìn)行水平投影,計(jì)算投影坐標(biāo),再根據(jù)投影坐標(biāo)計(jì)算投影方差。步驟如下:
步驟一,選擇測(cè)試角度的范圍[-15°,15°],測(cè)試角度的精度為1°。
步驟二,水平投影:對(duì)測(cè)試角度θ,把預(yù)處理后的傾斜文檔圖像中的每個(gè)黑點(diǎn)像素 (i,j)向y軸進(jìn)行投影。投影坐標(biāo)為
同時(shí)統(tǒng)計(jì)對(duì)應(yīng)投影坐標(biāo)y的投影數(shù)量H(y)。
把D(Y)記作對(duì)應(yīng)該測(cè)試角度的投影方差σ2(θ)。
根據(jù)上述步驟得到每個(gè)測(cè)試角θ和其對(duì)應(yīng)的方差σ2(θ),以測(cè)試角θ為自變量,以方差σ2(θ)為因變量。擬合二次函數(shù),表示為
σ2(θ)=a0+a1θ1+a2θ2。
通過(guò)投影測(cè)試得到的二次函數(shù)的數(shù)據(jù)如表1所示。
表1 測(cè)試角及其對(duì)應(yīng)的方差
根據(jù)表1給出的數(shù)據(jù)擬合出一個(gè)二次函數(shù),如圖3所示。
圖3 二次函數(shù)擬合圖像
根據(jù)方差最小化原則,最佳測(cè)試角對(duì)應(yīng)的投影坐標(biāo)方差應(yīng)該最小,因此對(duì)擬合的二次函數(shù)σ2(θ)=a0+a1θ1+a2θ2求導(dǎo)數(shù),求得其駐點(diǎn),從而計(jì)算函數(shù)的局部最小值。
對(duì)上述擬合的二次函數(shù)求導(dǎo),可得σ2(θ)=a1+2a2θ,令其等于0,得到函數(shù)最小值對(duì)應(yīng)的角度,也就是文檔的傾斜角度:
得到圖像的傾斜角后,便可對(duì)圖像進(jìn)行校正。對(duì)原始文檔進(jìn)行旋轉(zhuǎn)變換,旋轉(zhuǎn)θ角。在進(jìn)行旋轉(zhuǎn)變換時(shí),采用雙線性插值算法計(jì)算校正圖像中每個(gè)像素點(diǎn)的灰度值。
基于雙線性插值算法,將圖2的傾斜文檔圖像進(jìn)行旋轉(zhuǎn)變換,校正后的文檔圖像如圖4所示。
圖4 校正后的文檔圖像
為了評(píng)判本文校正方法的性能,首先選擇1幅掃描后沒(méi)有傾斜的印刷文檔圖像,分別旋轉(zhuǎn)變換不同的角度,并記作真值。然后用3種校正方法進(jìn)行傾角檢測(cè)。測(cè)試角度選擇為[-15°,15°],角度分辨率為1°。
采用投影輪廓方差最大法,進(jìn)行水平投影測(cè)試,計(jì)算投影輪廓值的方差,選擇最大方差對(duì)應(yīng)的角度為傾斜角度。采用Hough變換法進(jìn)行變換,在參數(shù)空間中選擇值最大的10個(gè)單元格。把這10個(gè)單元格對(duì)應(yīng)的角度進(jìn)行平均,作為傾斜角度。采用本文提出的擬合方差最小法,計(jì)算投影坐標(biāo)方差,進(jìn)行二次函數(shù)擬合,把函數(shù)最小值對(duì)應(yīng)的角度作為傾斜角度。檢測(cè)結(jié)果如表2所示。
表2 印刷文檔圖像的傾角檢測(cè)結(jié)果比較 (°)
根據(jù)表2的檢測(cè)結(jié)果可知,本文提出的方法較投影輪廓方差最大法和Hough變換法準(zhǔn)確度更高。
再選取1幅拍照的手寫(xiě)圖像,對(duì)其進(jìn)行處理,分別用3種方法檢測(cè)傾斜角度,檢測(cè)精度如表3所示。
表3 手寫(xiě)拍照文檔圖像的傾角檢測(cè)精度比較 (°)
根據(jù)表3的比較結(jié)果可知,通過(guò)本文提出的方法和Hough變換法都可以得到亞像素精度,檢測(cè)精度高,而輪廓方差最大法的檢測(cè)精度低。
選取1幅掃描的印刷文檔圖像,該文檔圖像字字分明,運(yùn)用本文提出的方法對(duì)其進(jìn)行文本圖像傾角檢測(cè)和校正。掃描的印刷文檔圖像原圖和校正之后的對(duì)比圖如圖5所示。
(a)傾斜的文檔圖像
選取1幅拍照的手寫(xiě)圖像,該圖像中不僅有純文字還有公式,因此具有一定的代表性。運(yùn)用本文的方法,對(duì)其進(jìn)行文本圖像傾斜的角度檢測(cè)和校正。拍照的手寫(xiě)圖像原圖和校正之后的對(duì)比圖如圖6所示??梢钥吹郊词箞D像中的文字沒(méi)有印刷文檔那么字字分明,并且還帶有公式,但運(yùn)用本文提出的方法仍然可以根據(jù)檢測(cè)出的傾斜角度進(jìn)行準(zhǔn)確的校正。
(a)傾斜的文檔圖像
通過(guò)分析文檔圖像的水平投影坐標(biāo)點(diǎn)的分布,以水平投影方差最小化原則檢測(cè)傾斜文檔的傾斜角度。選擇一定范圍內(nèi)的離散角度進(jìn)行投影測(cè)試,計(jì)算投影方差,把方差擬合成二次函數(shù),對(duì)
擬合的二次函數(shù)求導(dǎo),以計(jì)算出的函數(shù)最小值對(duì)應(yīng)的角度作為文檔傾斜角度,進(jìn)而對(duì)圖像進(jìn)行旋轉(zhuǎn)校正。實(shí)驗(yàn)證明,運(yùn)用該方法計(jì)算出的傾斜角度具有較高的準(zhǔn)確度和精度。