專利名稱:名片圖像傾斜角度的測(cè)量方法和裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于數(shù)字圖像處理技術(shù)及0CR(光學(xué)字符識(shí)別)技術(shù)領(lǐng)域,特別涉及一種名 片圖像傾斜角度的測(cè)量方法和裝置。
背景技術(shù):
在當(dāng)今的商務(wù)活動(dòng)中,名片已經(jīng)是商業(yè)合作伙伴、客戶等的重要信息載體,面對(duì)大 量的名片,公司和個(gè)人都需要有一種方法進(jìn)行自動(dòng)、準(zhǔn)確地信息采集和處理,目前一般采用 0CR(0ptical Character Recognition)系統(tǒng)完成此功能。在名片OCR系統(tǒng)中,輸入的名片 圖像可能存在一定角度傾斜(一般小于5。),這種傾斜會(huì)對(duì)名片的版面分析、字符切分及 字符識(shí)別產(chǎn)生不良影響,需要進(jìn)行傾斜角度檢測(cè),然后根據(jù)角度進(jìn)行圖像校正。
現(xiàn)有的針對(duì)文檔圖像的傾斜檢測(cè)方法,基本上都是基于二值圖像的,主要可分為4 類基于投影的方法、基于HOUGH變換的方法、K-最近鄰簇方法和基于交叉相關(guān)性的方法。
對(duì)于名片圖像,其特點(diǎn)是文字行(列)較少,通常只有幾行(列)或十幾行(列), 文字個(gè)數(shù)較少,排版樣式多變。K-最近鄰簇方法需要較多的文字連通域才能計(jì)算出可靠的 結(jié)果,不適合名片圖像;基于交叉相關(guān)性的方法的前提是文本具有一致的排版格式,也不適 合名片圖像;基于HOUGH變換的方法計(jì)算量較大。所以上述四類用于文檔圖像傾斜檢測(cè)的 方法中,基于投影的方法比較適合名片圖像的傾斜檢測(cè)。 申請(qǐng)?zhí)枮?00410080505. X的專利公開(kāi)了一種圖像處理方法,通過(guò)在圖像中搜索 直線并根據(jù)直線的傾斜情況計(jì)算圖像傾斜角度,在圖像處理的過(guò)程中需要依賴于圖像中的 直線。申請(qǐng)?zhí)枮?00710176208. 9的專利針對(duì)復(fù)雜文檔圖像,通過(guò)文本區(qū)域及非文本區(qū)域提 取連通區(qū)域的邊界段作為傾斜特征計(jì)算傾斜角度,需要圖像中存在較多的連通區(qū)域。這兩 種方法對(duì)于名片圖像,這兩種方法適用性較差,而且都是直接計(jì)算圖像的傾斜角度,而沒(méi)有 預(yù)先自動(dòng)判斷圖像是否需要計(jì)算傾斜角度。對(duì)于不存在傾斜的圖像而言,傾斜角度為零,則 不需要進(jìn)行傾斜角度計(jì)算。 文獻(xiàn)《灰度名片圖像快速傾斜檢測(cè)和校正方法》(《中文信息學(xué)報(bào)》2004年01期, 63-70頁(yè))提出一種根據(jù)掃描名片圖像中名片的四條邊框直線進(jìn)行傾斜角度檢測(cè)的方法, 該方法簡(jiǎn)單快速,但是對(duì)于名片圖像不存在邊緣直線的情況則無(wú)能為力,而且僅僅根據(jù)邊 緣直線計(jì)算出的角度精度不是很高。 利用投影方法計(jì)算名片圖像的傾斜角度,計(jì)算結(jié)果準(zhǔn)確,但是對(duì)于不存在傾斜的 名片圖像進(jìn)行計(jì)算,是一種浪費(fèi);利用圖像中名片邊框直線計(jì)算傾斜角度的方法,簡(jiǎn)單快 速,但是對(duì)于邊框直線缺失的情況,其失去作用,對(duì)于邊框直線受噪聲污染的情況,其計(jì)算 結(jié)果不夠準(zhǔn)確。
發(fā)明內(nèi)容
本發(fā)明提出了一種名片圖像傾斜角度的測(cè)量方法和裝置,本方法首先提取名片圖 像的邊緣圖像,然后在邊緣圖像中搜索名片的四周邊框直線,根據(jù)邊框直線的傾斜程度判
4斷圖像是否存在傾斜,對(duì)于存在傾斜的圖片,判斷其文字的編輯方向,并沿著文字編輯方向 投影,利用投影特征計(jì)算圖像的傾斜角度,既能自動(dòng)區(qū)分名片圖像傾斜與非傾斜,又能計(jì)算 出精確的傾斜角度。 名片圖像傾斜角度的測(cè)量方法,包括如下步驟 步驟1 :輸入并提取輸入的名片圖像的邊緣。輸入名片圖像,提取灰度圖像邊緣作 為處理的基本內(nèi)容。 步驟2:搜索名片圖像四周的邊框直線。自外向內(nèi)在四個(gè)方向上對(duì)圖像依次按行 列逐像素搜索,如果相鄰行列記錄到的第一個(gè)黑像素點(diǎn)的坐標(biāo)在搜索方向上的位置差不大 于2個(gè)像素,則這兩個(gè)黑像素點(diǎn)位于同一線段上,否則,新建線段。如果其中最長(zhǎng)的線段長(zhǎng) 度超過(guò)既定閾值,則該線段所在直線為此方向上的邊框直線,否則,此方向上不存在邊框直 線。 步驟3 :根據(jù)搜索到的邊框直線判斷圖像是否傾斜。如果邊框直線數(shù)大于等于2, 并且標(biāo)定為傾斜的邊框直線數(shù)大于搜索到的邊框直線數(shù)的0. 7倍,則該圖像傾斜;否則,圖 像不存在傾斜,本方法結(jié)束。 步驟4 :對(duì)標(biāo)記傾斜的圖像,判斷圖像中文字的編輯方向。分別在圖像的豎直和水 平投影直方圖內(nèi),以相同投影值區(qū)間和投影值間隔劃定直線,分別計(jì)算直線穿過(guò)的既定寬 度的投影數(shù)目之和;將投影數(shù)目較大的方向作為文字的編輯方向。
步驟5 :利用投影方法計(jì)算圖像的傾斜角度。在圖像的文字編輯方向上,在_5度
到+5度之間,按相等的角度間隔分別對(duì)圖像進(jìn)行投影,計(jì)算所得的每個(gè)投影直方圖投影值
的平方和,圖像的傾斜角度為投影平方和值最大的投影直方圖的對(duì)應(yīng)的投影角度。 所述步驟2中按行列逐像素搜索時(shí),搜索范圍為該方向上圖像的邊緣至該圖像的 所述步驟2的既定閾值的取值范圍為整個(gè)圖像對(duì)應(yīng)寬度的;~ ;。 所述步驟3中進(jìn)行傾斜判定,分別取最長(zhǎng)線段起止端的相同數(shù)目的坐標(biāo)點(diǎn)的平均 坐標(biāo)值,如果計(jì)算所得傾斜角度大于傾斜閾值,則將該線段所在的邊框直線標(biāo)記為傾斜;否 則標(biāo)記為非傾斜;沒(méi)有搜索到邊框直線的邊,直接標(biāo)記該邊為傾斜。 所述步驟4中的既定寬度范圍根據(jù)圖像中字符的行高進(jìn)行調(diào)整;投影區(qū)間以水平 和豎直投影直方圖的最大投影值中較小者和其1/3為上下限。 所述步驟4中判定文字編輯方向時(shí),如果豎直和水平兩個(gè)方向上的投影數(shù)目相 等,則文字編輯方向?yàn)閮赏队爸狈綀D的投影值平方和大的方向。 所述步驟5中對(duì)圖像進(jìn)行投影時(shí),如果圖像的文字編輯方向?yàn)樗椒较?,將圖像 等分成一系列豎條圖像,并對(duì)各豎條圖像按照0°投影,將得到的各投影直方圖合成一個(gè)該 投影方向上的整體投影直方圖;如果圖像的文字編輯方向?yàn)樨Q直方向,則將圖像旋轉(zhuǎn)90° 再進(jìn)行上述處理。 所述步驟5中將圖像劃分時(shí),豎條圖像的寬度w為
其中,L為圖像的寬度,a為投影的角度。 名片圖像傾斜角度的測(cè)量裝置,由以下模塊組成 圖像輸入模塊,輸入并提取輸入的名片圖像的邊緣。輸入名片圖像,提取灰度圖像 邊緣作為處理的基本內(nèi)容。 邊框搜索模塊,搜索名片圖像四周的邊框直線;自外向內(nèi)在四個(gè)方向上對(duì)圖像依 次按行列逐像素搜索,如果相鄰行列記錄到的第一個(gè)黑像素點(diǎn)的坐標(biāo)在搜索方向上的位置 差不大于2個(gè)像素,則這兩個(gè)黑像素點(diǎn)位于同一線段上,否則,新建線段。如果其中最長(zhǎng)的 線段長(zhǎng)度超過(guò)既定閾值,則該線段所在直線為此方向上的邊框直線,否則,此方向上不存在 邊框直線。 傾斜判定模塊,根據(jù)搜索到的邊框直線判斷圖像是否傾斜。如果邊框直線數(shù)大于 等于2,并且標(biāo)定為傾斜的邊框直線數(shù)大于搜索到的邊框直線數(shù)的0. 7倍,則該圖像傾斜; 否則,圖像不存在傾斜,本裝置處理過(guò)程結(jié)束。 文字方向判定模塊,對(duì)標(biāo)記傾斜的圖像,判斷圖像中文字的編輯方向。分別在圖像
的豎直和水平投影直方圖內(nèi),以相同投影值區(qū)間和投影值間隔劃定直線,分別計(jì)算直線穿
過(guò)的既定寬度的投影數(shù)目之和;將投影數(shù)目較大的方向作為文字的編輯方向。 角度計(jì)算模塊,利用投影方法計(jì)算圖像的傾斜角度。在圖像的文字編輯方向上,
在_5度到+5度之間,按相等的角度間隔分別對(duì)圖像進(jìn)行投影,計(jì)算所得的每個(gè)投影直方圖
投影值的平方和,圖像的傾斜角度為投影平方和值最大的投影直方圖的對(duì)應(yīng)的投影角度。 本發(fā)明名片圖像傾斜角度的測(cè)量方法和裝置,與現(xiàn)有技術(shù)相比優(yōu)點(diǎn)在于 1、本發(fā)明通過(guò)采集圖像的邊框直線的方式對(duì)圖像進(jìn)行傾斜判定,可快速將圖像分
為傾斜和無(wú)傾斜兩類,對(duì)于無(wú)傾斜的圖像,不再進(jìn)行傾斜角度的計(jì)算步驟,對(duì)于傾斜圖像,
再利用其他方法計(jì)算精確的傾斜角度; 2、本發(fā)明通過(guò)比較圖像水平和豎直兩個(gè)方向上投影直方圖的特征來(lái)快速判斷文 字的編輯方向,確定文字編輯方向?qū)τ谕队坝?jì)算傾斜角度和名片圖像的版面分析都具有很 大的指導(dǎo)作用; 3、本發(fā)明對(duì)判斷為傾斜的圖像利用投影方法計(jì)算精確的圖像傾斜角度,其中投影 直方圖的計(jì)算采用圖像"錯(cuò)切"模擬圖像旋轉(zhuǎn),加速了投影直方圖的計(jì)算過(guò)程。
圖1為本發(fā)明名片圖像傾斜角度的測(cè)量方法的方法流程圖; 圖2為本發(fā)明名片圖像傾斜角度的測(cè)量方法的實(shí)施例的名片樣張的二值邊緣圖 像; 圖3為本發(fā)明名片圖像傾斜角度的測(cè)量方法的傾斜數(shù)字圖像中的直線的示意圖;
圖4a為本發(fā)明名片圖像傾斜角度的測(cè)量方法的標(biāo)準(zhǔn)的水平無(wú)傾斜模板單欄文字 版面示意圖; 圖4b為本發(fā)明名片圖像傾斜角度的測(cè)量方法的圖4a的豎直投影直方圖;
圖4c為本發(fā)明名片圖像傾斜角度的測(cè)量方法的圖4a的水平投影直方6
圖5a為本發(fā)明名片圖像傾斜角度的測(cè)量方法的實(shí)施例二值邊緣圖像的豎直投影 直方圖; 圖5b為本發(fā)明名片圖像傾斜角度的測(cè)量方法的實(shí)施例二值邊緣圖像的水平投影 直方圖; 圖6a為本發(fā)明名片圖像傾斜角度的測(cè)量方法的投影方向?yàn)?°時(shí)名片圖像劃分 成一系列豎條圖像的示意圖; 圖6b為本發(fā)明名片圖像傾斜角度的測(cè)量方法的在投影方向?yàn)?°時(shí)名片圖像的 整體投影直方圖; 圖7為本發(fā)明名片圖像傾斜角度的測(cè)量方法的實(shí)施例各投影方向的直方圖投影 值平方和曲線。
具體實(shí)施例方式
為了能更清楚地理解本發(fā)明的技術(shù)內(nèi)容,特舉以下過(guò)程詳細(xì)說(shuō)明。 本發(fā)明提出的技術(shù)方案適用于名片掃描或拍攝的灰度圖像,由于背景噪聲會(huì)影響
邊框直線的檢測(cè),所以本發(fā)明中的圖片掃描或拍攝時(shí)的背景比較干凈,沒(méi)有明顯紋理,如果
圖像為彩色,可先轉(zhuǎn)換為灰度圖像,再采用本發(fā)明技術(shù)方案進(jìn)行處理。 為了說(shuō)明傾斜角度的定義,將名片圖像中的文字行(或文字列)抽象成一條直線, 當(dāng)該直線水平或豎直時(shí),名片圖像的傾斜角度都為O(即無(wú)傾斜),當(dāng)該直線由傾斜角度為 O的位置發(fā)生旋轉(zhuǎn)時(shí),旋轉(zhuǎn)角度即為圖像的傾斜角度,規(guī)定順時(shí)針旋轉(zhuǎn)時(shí),傾斜角度為負(fù),逆 時(shí)針旋轉(zhuǎn)時(shí),傾斜角度為正,由于在傾斜角度較大時(shí),邊框直線的檢測(cè)會(huì)不準(zhǔn)確,本發(fā)明的 技術(shù)方案適用于傾斜角度在-5°到+5°之間的情況。實(shí)際的名片圖像是在人的干預(yù)下掃 描或拍攝得到的,其傾斜角度一般在-5° +5°之間,本發(fā)明的技術(shù)方案滿足一般的名片 圖像需求。 名片圖像傾斜角度的測(cè)量方法,如圖1所示,包括如下步驟 步驟一輸入并提取輸入的名片圖像的邊緣。輸入名片圖像,提取灰度圖像邊緣 為數(shù)字圖像處理的基本內(nèi)容。本實(shí)施例采用Ca皿y邊緣算子完成邊緣提取,其算法不贅述。 邊緣圖像為二值圖像,每個(gè)像素點(diǎn)采用一個(gè)bit位存儲(chǔ),這樣每個(gè)像素點(diǎn)的取值非0即1 ,在 本實(shí)施例中,前景用1表示,背景用0表示,如果對(duì)應(yīng)黑白兩種顏色,則前景用黑色表示,背 景用白色表示。得到圖2,為是本實(shí)施例的邊緣二值圖像。 步驟二 在邊緣二值圖像中搜索名片的四邊框直線。名片在掃描或拍攝成圖像時(shí), 名片的四條邊會(huì)在與背景相交的地方形成明顯的邊緣,這些邊緣會(huì)在邊緣二值圖像中反映 出來(lái),為方便描述,稱為名片的邊框直線。 以名片的上邊框直線為例,說(shuō)明直線的搜索過(guò)程。名片的上邊框直線,一般位于整 個(gè)名片圖像的上三分之一區(qū)域內(nèi),故在名片二值圖像每一列的上三分之一像素點(diǎn)中,自上 到下按像素搜索遇到的第一個(gè)黑像素點(diǎn)(簡(jiǎn)稱上端第一黑像素點(diǎn)),如果存在這樣的黑像 素點(diǎn),則記錄下該點(diǎn)的坐標(biāo)值,否則不記錄,直至所有列搜素完畢。 得到所有列的上端第一黑像素點(diǎn)后,可以采用最小二乘法擬合邊框直線,但是其 計(jì)算量較大,故本方法采用一種簡(jiǎn)單快速的檢測(cè)方法 如圖3所示,在傾斜圖像中,原來(lái)的一條水平直線變成一系列上下相鄰的線段,這樣就可以通過(guò)檢測(cè)連續(xù)線段來(lái)確定上邊框直線。從左到右對(duì)所有列的第一黑像素點(diǎn)進(jìn)行掃 描,如果當(dāng)前列中的上端第一黑像素點(diǎn)與前一列中的上端第一黑像素點(diǎn)在豎直方向的距離 差不超過(guò)2個(gè)像素點(diǎn),則判定當(dāng)前像素點(diǎn)與前一像素點(diǎn)在同一線段上,否則,以當(dāng)前像素點(diǎn) 為左端點(diǎn)新起一個(gè)線段,依次按列搜索,直到最右一列。通過(guò)上述方法,找到一系列線段,如 果其中最長(zhǎng)的超過(guò)既定閾值,則該線段所在直線即為上邊框直線,否則,圖像不存在上邊框 直線。 所述既定閾值的取值范圍為整個(gè)圖像高度的l l。本實(shí)施例中的四條邊框直線, 既定閾值設(shè)為圖像寬度的i,則在圖像的上l區(qū)域中逐列按像素搜索上邊框直線,檢測(cè)到上 邊框直線后,同理,在圖像的下l區(qū)域中逐列按像素搜索下邊框直線;在圖像的左l區(qū)域中
逐列按像素搜索左邊框直線,在圖像的右l區(qū)域中逐列按像素搜索右邊框直線。 在本實(shí)施例中,圖像寬度為400,圖像高度為300,上邊框直線中搜到的最長(zhǎng)線段 長(zhǎng)度為362,下邊框直線中搜到的最長(zhǎng)線段長(zhǎng)度為359,左邊框直線中搜到的最長(zhǎng)線段長(zhǎng)度 為204,右邊框直線中搜到的最長(zhǎng)線段長(zhǎng)度為202,故四條邊框直線全部存在。
步驟三判斷圖像是否傾斜。先判斷步驟二中搜索到的每一條邊框直線是否傾斜, 然后根據(jù)邊框直線傾斜情況判斷圖像是否傾斜。對(duì)于沒(méi)有搜索到邊框直線的邊,直接標(biāo)記 為傾斜。在沒(méi)有明確信息表明圖像無(wú)傾斜的情況下將圖像標(biāo)記為傾斜,以最大程度的保證 將所有傾斜圖像都計(jì)算出傾斜角度。對(duì)于已經(jīng)搜索到邊框直線的邊,如果其傾斜角度大于 傾斜閾值,則標(biāo)記為傾斜,傾斜閾值為判定直線是否傾斜的依據(jù),大于該傾斜閾值,則圖像 傾斜,反之圖像不傾斜。本實(shí)施例中傾斜閾值設(shè)置為0. 5° 計(jì)算傾斜角度時(shí),分別取最長(zhǎng)線段的起止端的相同數(shù)目的坐標(biāo)點(diǎn)的平均坐標(biāo)值來(lái) 計(jì)算所得傾斜角度。本實(shí)施例中,邊框直線的傾斜角度計(jì)算如下計(jì)算其最長(zhǎng)線段起始端 第6至第10個(gè)像素點(diǎn)的平均坐標(biāo)值和終止端倒數(shù)第10至倒數(shù)第6個(gè)像素點(diǎn)的平均坐標(biāo)值 (起始端前幾個(gè)像素點(diǎn)和終止端的最后幾個(gè)像素點(diǎn)可能不準(zhǔn)確,計(jì)算中避開(kāi)這些像素點(diǎn)), 利用這兩個(gè)平均坐標(biāo)值計(jì)算直線的傾斜角度。這里只是利用傾斜角度判斷圖像是否傾斜, 所以傾斜角度不分正負(fù),都按正角度計(jì)算。 如果已經(jīng)搜索到的邊框直線數(shù)目和其中的傾斜邊框直線數(shù)目滿足下面兩個(gè)條 件 (1)搜索到的邊框直線數(shù)目大于等于2 ; (2)傾斜邊框直線數(shù)目大于搜索到的邊框直線數(shù)目的0. 7倍;則判斷圖像為傾斜, 否則,圖像不存在傾斜,本方法結(jié)束。 在本實(shí)施例中,以圖像的左上點(diǎn)為坐標(biāo)原點(diǎn),水平向右為x軸正方向,豎直向下為 y軸正方向。上邊框直線中的最長(zhǎng)線段兩端的兩個(gè)平均值坐標(biāo)分別為(35,40)、 (382,63), 其對(duì)應(yīng)傾斜角度的余切值為(382-35)/(63-40) " 15,arcctg15 " 3.8° ,即上邊框直線的 傾斜角度大于0.5。,上邊框直線是傾斜的。 同理,可判斷下邊框直線、左邊框直線、右邊框直線都是傾斜的。本實(shí)施例中共檢 測(cè)到邊框直線4條,4 > 2,且其中傾斜邊框直線4》4X0. 7,滿足上面的判斷圖像傾斜的兩個(gè)條件,所以判斷該圖像傾斜。 步驟四判定圖像文字的編輯方向。在投影中,需要知道是沿水平方向投影還是沿 豎直方向投影,所以需要提前知道圖像中文字的編輯方向,即判定圖像中文字是水平方向 排列還是豎直方向排列。 如圖4a所示,對(duì)于這種不存在傾斜且字符排列規(guī)則的圖像,分別做豎直方向投影 直方圖(如圖4b所示),水平方向投影直方圖(如圖4c所示)。在水平投影直方圖中,文 字行形成一個(gè)柱狀投影,行與行之間的間隔則是空白,而豎直投影直方圖則不會(huì)存在這種 特征,所以只要在投影直方圖中沿某個(gè)固定投影值做一條水平直線,通過(guò)計(jì)算這條直線穿 越的滿足既定寬度范圍的柱狀投影的個(gè)數(shù),就可以判斷圖像中文字的編輯方向。投影直方 圖中,投影值代表圖像在該水平行(或豎直行)的文字像素的多少,在沿文字編輯方向的 投影直方圖中,文字行的投影呈明顯的柱狀,文字行之間則沒(méi)有投影值,在一定投影值處的 水平直線穿過(guò)的滿足既定寬度范圍的柱狀投影較多,而在垂直文字編輯方向的投影直方圖 中,沒(méi)有明顯的文字行及行間距,同樣的水平直線穿過(guò)的滿足既定寬度范圍的柱狀投影較 少。所以,在圖像的水平和豎直投影直方圖中,在一定投影值處的水平直線穿過(guò)的滿足既定 寬度范圍的柱狀投影數(shù)目較多的方向?yàn)槲淖值木庉嫹较颉?上述方法對(duì)于不存在傾斜且單欄排列的文本圖像效果很好,但是對(duì)于排版格式多 變且存在傾斜的名片圖像并不適用。 對(duì)于名片圖像,由于排版或傾斜的影響,上述方法中的固定投影值T不易確定,所 以本發(fā)明取多個(gè)投影值I\, T2, . . . , i;劃定直線,通過(guò)把每個(gè)投影值處獲得的寬度在既定寬 度范圍L內(nèi)的柱狀投影數(shù)相加來(lái)判斷文字編輯方向。投影直方圖中的柱狀投影對(duì)應(yīng)著名片 中的文本行(列),設(shè)定投影值區(qū)間是為了使在投影值上劃定的直線穿過(guò)盡可能多的柱狀 投影,如果投影值區(qū)間下限太小,則由于圖像傾斜,所有的柱狀投影可能都連在一起,無(wú)法 區(qū)分;如果投影值區(qū)間的上限太大,則只能找到最長(zhǎng)的文字行(列)。所以,投影值區(qū)間的 大小和名片圖像中文字行(列)的像素長(zhǎng)度相關(guān)。在劃定投影值區(qū)間后,再對(duì)整個(gè)區(qū)間進(jìn) 行分割,大概分成8 10個(gè)等分小區(qū)間,每個(gè)小區(qū)間的像素寬度就是投影值間隔。
多個(gè)投影值區(qū)間的具體確定方法如下各取水平和豎直投影直方圖中的最大投影 值,然后取這兩個(gè)值中較小的一個(gè),以這個(gè)較小值的1/3和較小值的本身作為投影值區(qū)間 的下限和上限,即投影值區(qū)間[L,TJ,并以5個(gè)像素為間隔將該區(qū)間等分,如果不能正好等 分,則將最后一個(gè)小區(qū)間向外擴(kuò)充,形成n個(gè)投影值1\, T2,. . . , Tn。既定寬度范圍L與圖像 中字符的大小相關(guān),在300X400的圖像中,選取L為[6,30]。在該圖像對(duì)應(yīng)的豎直投影直 方圖中的投影值1\,12,. . . ,Tn處劃定直線,分別水平截取對(duì)應(yīng)投影值的柱狀投影,并計(jì)算穿 過(guò)在既定寬度范圍L內(nèi)的柱狀投影的數(shù)目之和。同理,計(jì)算得到水平投影直方圖中投影值 1\, T2, . . . , Tn處水平截取的在既定寬度范圍L內(nèi)的柱狀投影的數(shù)目之和。
比較水平方向和豎直方向上所得的滿足既定寬度范圍L的柱狀投影數(shù)目的大小, 文字編輯方向?yàn)閿?shù)目較大的方向。如果兩個(gè)數(shù)值相等,則計(jì)算水平投影直方圖和豎直投影 直方圖中投影方向上各像素的投影值平方和,文字編輯方向?yàn)槠椒胶痛蟮姆较颉?
圖5a和圖5b分別為本實(shí)施例的豎直投影直方圖和水平投影直方圖,其中,各水 平直線為對(duì)應(yīng)各投影值1\, T2, ..., Tn的穿過(guò)柱狀投影的直線。本實(shí)施例中,圖像大小為 300X400,水平和豎直投影直方圖中各自最大投影值的較小值為58,投影值1\, T2, ..., Tn
9取19 58之間,每隔5取一個(gè)值,則n = 8,對(duì)應(yīng)的水平直線共有9條,由于最后一個(gè)小區(qū) 間不足5個(gè)像素,向外擴(kuò)一下,取Tn = 59。柱狀投影的既定寬度范圍L取為6 30,這個(gè) 值是以圖像中文字大小為參照取的。在豎直投影直方圖和水平投影直方圖中,這9條水平 直線在豎直投影直方圖中截取的寬度在6 30之間的柱狀投影之和為8,在水平投影直方 圖中截取的寬度在6 30之間的柱狀投影之和為24, 24 > 8,所以本實(shí)施例中圖像的文字 編輯方向?yàn)樗椒较颉?步驟五計(jì)算圖像傾斜角度。步驟四中,已經(jīng)得出傾斜圖像中文字的編輯方向。利
用投影計(jì)算圖像傾斜角度的方法如下圖像傾斜角度為-5° +5°范圍內(nèi),每隔一微小角
度取一個(gè)角度值,然后分別沿這些角度方向?qū)γ颠吘増D像進(jìn)行投影,得到對(duì)應(yīng)的投
影直方圖;計(jì)算每個(gè)投影直方圖的投影值的均方差。均方差越大,則圖像各行(列)的投影
值波動(dòng)越大,即圖像各行(列)與行(列)間的空白區(qū)域?qū)Ρ仍矫黠@,就說(shuō)明對(duì)應(yīng)的投影方
向更趨近與圖像的傾斜角度,即投影值的均方差最大的投影直方圖對(duì)應(yīng)的角度就是圖像的
傾斜角度。在實(shí)際計(jì)算中,各方向投影直方圖的投影值的均值基本相等,所以用投影值的平
方和代替均方差,投影直方圖的投影平方和最大時(shí)對(duì)應(yīng)的角度為圖像的傾斜角度。 由于二值邊緣圖像按行存儲(chǔ),且一個(gè)像素點(diǎn)對(duì)應(yīng)一個(gè)bit位,8個(gè)bit形成一個(gè)計(jì)
算機(jī)的基本運(yùn)算單位——字節(jié)(byte),所以其0。的水平投影可以通過(guò)按字節(jié)查表的方式
進(jìn)行快速計(jì)算;對(duì)其他投影方向,可以通過(guò)按照投影角度將圖像旋轉(zhuǎn),然后計(jì)算旋轉(zhuǎn)后圖像
的水平投影直方圖的方式完成,但是用于處理圖像旋轉(zhuǎn)的計(jì)算量很大,增加了硬件的負(fù)擔(dān)。 如圖3所示,數(shù)字圖像中的水平直線經(jīng)旋轉(zhuǎn)后以上下相鄰的連續(xù)線段的形式呈
現(xiàn)。由此可知,將數(shù)字圖像按照某個(gè)角度旋轉(zhuǎn),其結(jié)果相當(dāng)于將原圖像劃分成一系列豎條圖
像,豎條圖像的寬度由投影角度和圖像的寬度決定,這些相鄰的豎條圖像在豎直方向依次
相差一個(gè)像素的高度。 本方法采用近似模擬圖像旋轉(zhuǎn)的方式來(lái)完成此步計(jì)算,根據(jù)投影方向把原圖像錯(cuò)
切成一系列豎條圖像,然后對(duì)每個(gè)豎條圖像按照0°的方法投影,再把得到的各豎條圖像的
投影直方圖合成一個(gè)整體的投影直方圖,得到該投影方向上的圖像投影直方圖。 選定豎條圖像寬度時(shí),每個(gè)豎條圖像的寬度w為
丄 其中,L為圖像的寬度,a為投影的角度,求得的角度余切都用正值表示。用圖像
的寬度L除以投影角度a的余切值,并對(duì)結(jié)果進(jìn)行上取整,即得到了劃分的豎條圖像的個(gè)
數(shù)。在用圖像的寬度L除以豎條圖像的個(gè)數(shù),得到等分后的豎條圖像的寬度w。 本實(shí)施例中,傾斜角度范圍為-5° +5°之間,每隔0.25。取一個(gè)角度值,則共
有41個(gè)候選的投影方向。以1°投影角度為例,ctgl"57,圖像的寬度為400,則豎直圖像
的寬度w為
400 柳
陽(yáng)400-悶
8
=50
10
如圖6a所示,即為在r投影方向上對(duì)圖像進(jìn)行錯(cuò)切的示意圖。然后,對(duì)每個(gè)豎
條圖像按照0。投影的方法計(jì)算投影直方圖;根據(jù)相鄰豎條圖像在豎直方向上相差一個(gè)像
素,將這8個(gè)投影直方圖合成一個(gè)完整的投影直方圖。如圖6b所示,即為將所有錯(cuò)切圖像
條的直方圖合成的最終的完整直方圖。該直方圖的投影值的平方和為265850。 在計(jì)算出41個(gè)投影方向的投影直方圖的投影值平方和之后,對(duì)這41個(gè)數(shù)據(jù)做一
個(gè)均值濾波,然后取最大值對(duì)應(yīng)的角度即為圖像的傾斜角度。本實(shí)施例中,41個(gè)投影值平方
和均值濾波后的值如圖7所示,其中"*"處所標(biāo)識(shí)位置的平方和值最大,對(duì)應(yīng)于-3. 5° ,故
投影直方圖的投影值平方和的最大值對(duì)應(yīng)的角度為-3.5° ,即圖像的傾斜角度為-3.5° 。 本方法對(duì)應(yīng)了一種名片圖像傾斜角度的測(cè)量裝置,由以下模塊組成 圖像輸入模塊,輸入并提取輸入的名片圖像的邊緣輸入名片圖像,提取灰度圖像
邊緣作為處理的基本內(nèi)容,將提取后的結(jié)果傳輸至邊框搜索模塊。 邊框搜索模塊,自圖像外向內(nèi)在四個(gè)方向上對(duì)圖像依次按行列逐像素搜索,記錄 遇到的第一個(gè)黑像素點(diǎn)的坐標(biāo);如果相鄰列的第一個(gè)黑像素點(diǎn)在搜索方向上的差不大于2 個(gè)像素,則這兩個(gè)黑像素點(diǎn)同一線段上,否則,以該像素點(diǎn)為端點(diǎn)新建線段;如果其中最長(zhǎng) 的線段長(zhǎng)度超過(guò)既定閾值,則該線段所在直線為此方向上的邊框直線,否則,圖像此方向上 不存在邊框直線,最后將邊框直線輸出到傾斜判定模塊。 傾斜判定模塊,對(duì)搜索到的邊框直線進(jìn)行傾斜判定,如果邊框直線數(shù)大于等于2, 并且標(biāo)定傾斜的邊數(shù)大于搜索到的邊框直線數(shù)的0. 7倍,則該圖像傾斜,將傾斜的圖像發(fā) 送到文字方向判定模塊;否則本裝置處理過(guò)程結(jié)束。 文字編輯方向判定模塊,對(duì)標(biāo)記傾斜的圖像,分別在圖像的豎直和水平投影直方 圖內(nèi),以相同投影值區(qū)間和投影值間隔劃定直線,分別計(jì)算直線穿過(guò)的滿足既定寬度范圍 的柱狀投影數(shù)目;將柱狀投影數(shù)目較大的方向作為文字的編輯方向發(fā)送到角度計(jì)算模塊計(jì) 算傾斜角度。 角度計(jì)算模塊,按相等的角度間隔分別對(duì)圖像進(jìn)行投影,計(jì)算所得的每個(gè)投影直 方圖投影值的平方和,圖像的傾斜角度為投影平方和值最大的投影直方圖的對(duì)應(yīng)的投影角 度。 本實(shí)施例中,圖像文字的編輯方向?yàn)樗椒较?,?duì)于編輯方向?yàn)樨Q直方向的圖像, 可以先把其進(jìn)行90°旋轉(zhuǎn),然后再采用上述投影方法計(jì)算其傾斜角度。
權(quán)利要求
一種名片圖像傾斜角度的測(cè)量方法,其特征在于,包括如下步驟步驟一輸入并提取輸入的名片圖像的邊緣;輸入名片圖像,提取灰度圖像邊緣作為處理的基本內(nèi)容;步驟二搜索名片圖像四周的邊框直線;自外向內(nèi)在四個(gè)方向上對(duì)圖像依次按行列逐像素搜索,如果相鄰行列記錄到的第一個(gè)黑像素點(diǎn)的坐標(biāo)在搜索方向上的位置差不大于2個(gè)像素,則這兩個(gè)黑像素點(diǎn)位于同一線段上,否則,新建線段;如果其中最長(zhǎng)的線段長(zhǎng)度超過(guò)既定閾值,則該線段所在直線為此方向上的邊框直線,否則,此方向上不存在邊框直線;步驟三根據(jù)搜索到的邊框直線判斷圖像是否傾斜;如果邊框直線數(shù)大于等于2,并且標(biāo)定為傾斜的邊框直線數(shù)大于搜索到的邊框直線數(shù)的0.7倍,則該圖像傾斜;否則,圖像不存在傾斜,本方法結(jié)束;步驟四對(duì)標(biāo)記傾斜的圖像,判斷圖像中文字的編輯方向;分別在圖像的豎直和水平投影直方圖內(nèi),以相同投影值區(qū)間和投影值間隔劃定直線,分別計(jì)算直線穿過(guò)的既定寬度的投影數(shù)目之和;將投影數(shù)目較大的方向作為文字的編輯方向;步驟五利用投影方法計(jì)算圖像的傾斜角度;在圖像的文字編輯方向上,在-5度到+5度之間,按相等的角度間隔分別對(duì)圖像進(jìn)行投影,計(jì)算所得的每個(gè)投影直方圖投影值的平方和,圖像的傾斜角度為投影平方和值最大的投影直方圖的對(duì)應(yīng)的投影角度。
2. 根據(jù)權(quán)利要求1所述一種名片圖像傾斜角度的測(cè)量方法,其特征在于所述步驟二中按行列逐像素搜索時(shí),搜索范圍為該方向上圖像的邊緣至該圖像的l處。
3. 根據(jù)權(quán)利要求1所述一種名片圖像傾斜角度的測(cè)量方法,其特征在于所述步驟二 的既定閾值的取值范圍為整個(gè)圖像對(duì)應(yīng)寬度的l~I。
4. 根據(jù)權(quán)利要求1所述一種名片圖像傾斜角度的測(cè)量方法,其特征在于所述步驟三 中進(jìn)行傾斜判定,分別取最長(zhǎng)線段起止端的相同數(shù)目的坐標(biāo)點(diǎn)的平均坐標(biāo)值,如果計(jì)算所 得傾斜角度大于傾斜閾值,則將該線段所在的邊框直線標(biāo)記為傾斜;否則標(biāo)記為非傾斜; 沒(méi)有搜索到邊框直線的邊,直接標(biāo)記該邊為傾斜。
5. 根據(jù)權(quán)利要求1所述一種名片圖像傾斜角度的測(cè)量方法,其特征在于所述步驟四 中的既定寬度范圍根據(jù)圖像中字符的行高進(jìn)行調(diào)整;投影區(qū)間以水平和豎直投影直方圖的 最大投影值中較小者和其1/3為上下限。
6. 根據(jù)權(quán)利要求1所述一種名片圖像傾斜角度的測(cè)量方法,其特征在于所述步驟四 中判定文字編輯方向時(shí),如果豎直和水平兩個(gè)方向上的投影數(shù)目相等,則文字編輯方向?yàn)?兩投影直方圖的投影值平方和大的方向。
7. 根據(jù)權(quán)利要求1所述一種名片圖像傾斜角度的測(cè)量方法,其特征在于所述步驟五 中對(duì)圖像進(jìn)行投影時(shí),如果圖像的文字編輯方向?yàn)樗椒较?,將圖像等分成一系列豎條圖 像,并對(duì)各豎條圖像按照0°投影,將得到的各投影直方圖合成一個(gè)該投影方向上的整體投 影直方圖;如果圖像的文字編輯方向?yàn)樨Q直方向,則將圖像旋轉(zhuǎn)90。再進(jìn)行上述處理。
8. 根據(jù)權(quán)利要求1所述一種名片圖像傾斜角度的測(cè)量方法,其特征在于所述步驟五 中將圖像劃分時(shí),豎條圖像的寬度W為其中,L為圖像的寬度,a為投影的角度。
9. 一種名片圖像傾斜角度的測(cè)量裝置,其特征在于,由以下模塊組成 圖像輸入模塊,輸入并提取輸入的名片圖像的邊緣;輸入名片圖像,提取灰度圖像邊緣 作為處理的基本內(nèi)容;邊框搜索模塊,搜索名片圖像四周的邊框直線;自外向內(nèi)在四個(gè)方向上對(duì)圖像依次按 行列逐像素搜索,如果相鄰行列記錄到的第一個(gè)黑像素點(diǎn)的坐標(biāo)在搜索方向上的位置差不 大于2個(gè)像素,則這兩個(gè)黑像素點(diǎn)位于同一線段上,否則,新建線段;如果其中最長(zhǎng)的線段 長(zhǎng)度超過(guò)既定閾值,則該線段所在直線為此方向上的邊框直線,否則,此方向上不存在邊框 直線;傾斜判定模塊,根據(jù)搜索到的邊框直線判斷圖像是否傾斜;如果邊框直線數(shù)大于等于 2,并且標(biāo)定為傾斜的邊框直線數(shù)大于搜索到的邊框直線數(shù)的0. 7倍,則該圖像傾斜;否則, 圖像不存在傾斜,本裝置處理過(guò)程結(jié)束;文字方向判定模塊,對(duì)標(biāo)記傾斜的圖像,判斷圖像中文字的編輯方向;分別在圖像的豎 直和水平投影直方圖內(nèi),以相同投影值區(qū)間和投影值間隔劃定直線,分別計(jì)算直線穿過(guò)的 既定寬度的投影數(shù)目之和;將投影數(shù)目較大的方向作為文字的編輯方向;角度計(jì)算模塊,利用投影方法計(jì)算圖像的傾斜角度;在圖像的文字編輯方向上,在-5 度到+5度之間,按相等的角度間隔分別對(duì)圖像進(jìn)行投影,計(jì)算所得的每個(gè)投影直方圖投影 值的平方和,圖像的傾斜角度為投影平方和值最大的投影直方圖的對(duì)應(yīng)的投影角度。
全文摘要
本發(fā)明名片圖像傾斜角度的測(cè)量方法和裝置,屬于OCR技術(shù)領(lǐng)域。本方法首先提取名片圖像的邊緣圖像,然后在邊緣圖像中搜索名片的四周邊框直線,根據(jù)邊框直線的傾斜程度判斷圖像是否存在傾斜,對(duì)于存在傾斜的圖片,判斷其文字的編輯方向,并沿著文字編輯方向投影,利用投影特征計(jì)算圖像的傾斜角度。通過(guò)采集圖像的邊框直線的方式對(duì)圖像進(jìn)行傾斜判定,可快速將圖像分為傾斜和無(wú)傾斜兩類,并分別處理。通過(guò)比較圖像水平和豎直兩個(gè)方向上投影直方圖的特征來(lái)快速判斷文字的編輯方向,確定文字編輯方向?qū)τ谕队坝?jì)算傾斜角度和名片圖像的版面分析都具有很大的指導(dǎo)作用。
文檔編號(hào)G06K9/32GK101770575SQ200810246629
公開(kāi)日2010年7月7日 申請(qǐng)日期2008年12月31日 優(yōu)先權(quán)日2008年12月31日
發(fā)明者朱軍民, 李永彬 申請(qǐng)人:漢王科技股份有限公司