專利名稱:實(shí)現(xiàn)數(shù)碼相機(jī)文字提取和自動翻譯功能的方法
技術(shù)領(lǐng)域:
本發(fā)明涉及實(shí)現(xiàn)數(shù)碼相機(jī)功能的方法,特別涉及一種實(shí)現(xiàn)數(shù)碼相機(jī)文字 提取和自動翻譯功能的方法。
背景技術(shù):
目前,隨著科技的不斷發(fā)展,數(shù)碼相機(jī)的功能雖然在不斷增加,但市面 上尚無帶文字提取和自動翻譯附加功能的數(shù)碼相機(jī)。
例如,當(dāng)看到一本外文書籍時,或在外出旅游時看到外文信息。對于不 懂外語的人就不會知道其中的意思,如果用詞典查則太費(fèi)時間。若采用具有 文字提取和自動翻譯功能數(shù)碼相機(jī),就可以對外文信息文字進(jìn)行拍照,并才艮 據(jù)特定的算法在拍得圖片中提取出文字,然后利用翻譯算法把這段文字翻譯 成中文。
因此,提供一種實(shí)現(xiàn)數(shù)碼相機(jī)文字提取和自動翻譯功能的方法,是該領(lǐng) 域科研技術(shù)人員需要研究解決的課題之一。
發(fā)明內(nèi)容
本發(fā)明的目的在于克服上述不足之處,提供一種開發(fā)數(shù)碼相機(jī)新功能的 方法,即實(shí)現(xiàn)數(shù)碼相機(jī)文字提取和自動翻譯功能的方法。
為實(shí)現(xiàn)上述目的本發(fā)明所采用的實(shí)施方式如下 一種實(shí)現(xiàn)數(shù)碼相機(jī)文字 提取和自動翻譯功能的方法,其特征在于實(shí)施步驟如下 步驟一在菜單中按相應(yīng)項(xiàng),把相機(jī)設(shè)置成翻譯模式; 步驟二對文字進(jìn)^f于拍照;
步驟三相機(jī)自動用文字提取算法進(jìn)行文字提取,并生成文本文件; 所述文字提取算法如下
首先,對文字進(jìn)行拍攝,通常圖片中包括文字和背景兩色; (1)要把彩色圖像進(jìn)行灰度化處理;根據(jù)心理學(xué)研究得出的人類色彩感 光特性,并考慮計算的速度,采用以下公式,按從左到右,從上到下的順序?qū)γ總€像素點(diǎn)進(jìn)行灰度化處理
r = (229 x及+ 587 xG + 114 xB + 500) /1000;
其中,R、 G、 B分別是這個像素點(diǎn)的R、 G、 B值;這樣就把彩色圖像轉(zhuǎn) 化為灰度圖像;
(2) 對得到的灰度圖像進(jìn)行二值化處理;首先確定一個閾值,灰度值大 于這個閾值的點(diǎn)灰度值全部置為255,灰度值小于這個閾值的點(diǎn)灰度值全部置 為0;這個閾值a通過如下爿厶式得到
a=所有像素點(diǎn)灰度之和/像素點(diǎn)個數(shù);
然后按從左到右,從上到下的順序?qū)D像的每個像素點(diǎn)進(jìn)行掃描,當(dāng)該 點(diǎn)灰度值Y》a時,Y=255;當(dāng)Y〈a時,Y-0;
(3) 比較Y值為0和Y值為255的像素點(diǎn)的個數(shù),個數(shù)多的為背景點(diǎn)集合, 個數(shù)少的為文字點(diǎn)集合;如果背景點(diǎn)灰度為255,則置背景點(diǎn)灰度為0,文字 點(diǎn)灰度為255;保證文字點(diǎn)灰度始終為255;
'(4)對得到的二值化圖片進(jìn)行文字提??;提取的方法是采用如下算法
(4.1) 設(shè)一標(biāo)志變量i,并置為0,對圖片進(jìn)行逐行掃描,若這一行沒有灰 度值為255的點(diǎn),查看標(biāo)志變量,標(biāo)志變量為0,則掃描下一4?。粸閘,則記錄 此行號&,并置標(biāo)志變量為0;若有灰度值為255的點(diǎn),查看標(biāo)志變量;若為0, 把行號記錄下來,置標(biāo)志變量為l;若標(biāo)志變量為1則繼續(xù)下一4于掃描;
(4.2) 設(shè)一標(biāo)志變量j,并置為O,對所有有記錄的行,在順次兩行/z,和、 之間進(jìn)行列掃描;設(shè)當(dāng)前掃描的列號為"若此列無灰度為255的點(diǎn),檢查j, 若j--O,則掃描下一列;j==l,記錄二元組(A,,并令j-O; 若有灰度 值為255的點(diǎn),檢查j,若j-0,則記錄二元組(、,4),并令j-l;若j--l, 則繼續(xù)掃描下一列;
(4.3) 步驟(4.2)中得到的順次相鄰兩點(diǎn)(V。 C ), 所圍成 的矩形區(qū)域就是一個字母區(qū)域,所有這些區(qū)域就組成一個字母區(qū)域集合;因 為在識別時需要用到預(yù)先存儲在相機(jī)里的標(biāo)準(zhǔn)字母模板圖片,且圖片大小是 20*20的,所以要把每一個字母區(qū)域規(guī)范化成一個20*20大小的區(qū)域;規(guī)范的 方法為設(shè)待規(guī)范的區(qū)域?yàn)閚^n大小,對于其中一個像素點(diǎn)(i, j ),令p-取整(i/m*20), q二取整(j/m*20);新建一個20*20圖片,令新建圖片中(p, q) 點(diǎn)的灰度值為待規(guī)范的區(qū)域中(i, j)點(diǎn)的灰度值,新建圖片中其余點(diǎn)灰度值 全部置為0;這樣就把111*11區(qū)域轉(zhuǎn)換成20*20區(qū)域;
(4.4 )把轉(zhuǎn)換后的圖片和模板圖片進(jìn)行比對,進(jìn)而識別出字母;比較的規(guī) 則用下面的^^式
20 20
4=Z2X-。2
乂=1
其中,《為第k個模板圖片的(i, j)像素的灰度值,i為當(dāng)前待測圖
片的(i, j)像素的灰度值;取值最小的^,它對應(yīng)的下標(biāo)就為與被測圖片同 類的模板圖片號;
(4.5)通過步驟(4.4)就可以把圖片中的所有字母識別出來,然后以ASCII 碼形式存成文本文件,這樣就完成了文字提取過程;
步驟四相機(jī)自動利用現(xiàn)有的翻譯算法對文字進(jìn)行翻譯; 步驟五將翻譯完的結(jié)果顯示在LCD上。
本發(fā)明的有益效果是本發(fā)明可以直接利用現(xiàn)有的數(shù)碼相機(jī)硬件資源, 無需添加任何硬件成本,使得數(shù)碼相機(jī)具有文字提取和自動翻譯的功能,能 夠給用戶帶來極大的效益。
總之,本發(fā)明構(gòu)思合理,效果顯著,使用方便,應(yīng)用廣泛。
具體實(shí)施例方式
以下結(jié)合較佳實(shí)施例,對依據(jù)本發(fā)明提供的具體實(shí)施方式
、特征詳述如
下
一種實(shí)現(xiàn)數(shù)碼相機(jī)文字提取和自動翻譯功能的方法,其特征在于實(shí)施步 驟如下
步驟一在菜單(Menu)中按相應(yīng)項(xiàng),W目機(jī)設(shè)置成翻譯模式; 步驟二對文字進(jìn)行拍照;
步驟三相機(jī)自動用文字提取算法進(jìn)行文字提取,并生成文本文件; 所述文字提取算法如下
首先,對文字進(jìn)行拍攝,通常圖片中包括文字和背景兩色;(1) 要把彩色圖像進(jìn)行灰度化處理;根據(jù)心理學(xué)研究得出的人類色彩感 光特性,并考慮計算的速度,采用以下公式,按從左到右,從上到下的順序 對每個像素點(diǎn)進(jìn)行灰度化處理
y = (229 x及+ 587 xG + 114 x丑+ 50Q)細(xì)0;
其中,R、 G、 B分別是這個像素點(diǎn)的R、 G、 B值;這樣就把彩色圖像轉(zhuǎn) 化為灰度圖像;
(2) 對得到的灰度圖像進(jìn)行二值化處理;首先確定一個閾值,灰度值大 于這個閾值的點(diǎn)灰度值全部置為255,灰度值小于這個閾值的點(diǎn)灰度值全部置 為0;這個閾值a通過如下公式得到
a=所有像素點(diǎn)灰度之和/像素點(diǎn)個數(shù);
然后按從左到右,從上到下的順序?qū)D像的每個像素點(diǎn)進(jìn)行掃描,當(dāng)該 點(diǎn)灰度值Y〉a時,Y=255;當(dāng)Y〈a時,Y=0;
(3) 比較Y值為0和Y值為255的像素點(diǎn)的個數(shù),個數(shù)多的為背景點(diǎn)集合, 個數(shù)少的為文字點(diǎn)集合;如果背景點(diǎn)灰度為255,則置背景點(diǎn)灰度為O,文字 點(diǎn)灰度為255 (為保證文字點(diǎn)灰度始終為255 );
(4) 對得到的二值化圖片進(jìn)行文字提?。惶崛〉姆椒ㄊ遣捎萌缦滤惴?br>
(4.1) 設(shè)一標(biāo)志變量i,并置為O,對圖片進(jìn)行逐行掃描,若這一行沒有灰 度值為255的點(diǎn),查看標(biāo)志變量,標(biāo)志變量為O,則掃描下一4??;為l,則記錄 此行號A,,并置標(biāo)志變量為0;若有灰度值為255的點(diǎn),查看標(biāo)志變量;若為O, 把行號記錄下來,置標(biāo)志變量為l;若標(biāo)志變量為l則繼續(xù)下一行掃描;
(4.2) 設(shè)一標(biāo)志變量j,并置為O,對所有有記錄的行,在順次兩行A和/j,—, 之間(例如,有記錄的行為第3, 6, 10, 13, 17, 20行,那么就是第3行和第 6行之間,第10和第13行之間,以此類推)進(jìn)行列掃描;設(shè)當(dāng)前掃描的列號為 々;若此列無灰度為255的點(diǎn),檢查j,若j-O,則掃描下一列;j=l,記錄二元 組U, /J,并令j-O; 若有灰度值為255的點(diǎn),檢查j,若j-O,則記錄二元 組(ft,一,"),并令〗=1;若〗=1,則繼續(xù)掃描下一列;
(4.3) 步驟(4.2)中得到的順次相鄰兩點(diǎn)(、,/m ), ( /z,, / )所圍成 的矩形區(qū)域就是一個字母區(qū)域,所有這些區(qū)域就組成一個字母區(qū)域集合;因?yàn)樵谧R別時需要用到預(yù)先存儲在相機(jī)里的標(biāo)準(zhǔn)字母模板圖片,且圖片大小是
20*20的,所以要把每一個字母區(qū)域規(guī)范化成一個20*20大小的區(qū)域;規(guī)范的 方法為設(shè)待規(guī)范的區(qū)域?yàn)閚^n大小,對于其中一個像素點(diǎn)(i, j ),令p-取整 (i/m*20), q:取整(j/m*20);新建一個20*20圖片,令新建圖片中(p, q) 點(diǎn)的灰度值為待規(guī)范的區(qū)域中(i, j)點(diǎn)的灰度值,新建圖片中其余點(diǎn)灰度值 全部置為0;這樣就把111*11區(qū)域轉(zhuǎn)換成20*20區(qū)域;
(4.4)把轉(zhuǎn)換后的圖片和模板圖片進(jìn)行比對,進(jìn)而識別出字母;比較的規(guī) 則用下面的/>式<formula>formula see original document page 8</formula>
其中,《為第k個模板圖片的(i, j)像素的灰度值,^為當(dāng)前待測圖
片的(i, j)像素的灰度值;取值最小的^,它對應(yīng)的下標(biāo)就為與被測圖片同 類的才莫板圖片號;例如,當(dāng)前圖片求得的所有z^中,A最小,就是i兌當(dāng)前圖 片和第三個模板圖片最匹配,如果第三個模板圖片是字母c,則表示當(dāng)前待測 字母圖片中的字母是c;
(4.5 )通過步驟(4.4 )就可以把圖片中的所有字母識別出來,然后以ASCII 碼形式存成文本文件,這樣就完成了文字提取過程;
步驟四相機(jī)自動利用現(xiàn)有的翻譯算法對文字進(jìn)行翻譯;
步驟五將翻譯完的結(jié)果顯示在LCD上。
本發(fā)明運(yùn)行環(huán)境為數(shù)碼相機(jī),涉及數(shù)碼相機(jī)的軟件編程控制、圖像存儲 才支術(shù)和顯示纟支術(shù)。
應(yīng)用時,用戶應(yīng)先把相機(jī)設(shè)置成翻譯模式,然后對準(zhǔn)所要拍攝的內(nèi)容, 聚焦之后進(jìn)行拍照;然后相機(jī)會自動進(jìn)行文字提取并翻譯,把翻譯后的結(jié)果 顯示在液晶屏(LCD)上。
上述參照實(shí)施例對該實(shí)現(xiàn)數(shù)碼相機(jī)文字提取和自動翻譯功能的方法進(jìn)行 的詳細(xì)描述,是說明性的而不是限定性的,因此在不脫離本發(fā)明總體構(gòu)思下 的變化和修改,應(yīng)屬本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1、一種實(shí)現(xiàn)數(shù)碼相機(jī)文字提取和自動翻譯功能的方法,其特征在于實(shí)施步驟如下步驟一在菜單中按相應(yīng)項(xiàng),把相機(jī)設(shè)置成翻譯模式;步驟二對文字進(jìn)行拍照;步驟三相機(jī)自動用文字提取算法進(jìn)行文字提取,并生成文本文件;所述文字提取算法如下首先,對文字進(jìn)行拍攝,通常圖片中包括文字和背景兩色;(1)要把彩色圖像進(jìn)行灰度化處理;根據(jù)心理學(xué)研究得出的人類色彩感光特性,并考慮計算的速度,采用以下公式,按從左到右,從上到下的順序?qū)γ總€像素點(diǎn)進(jìn)行灰度化處理Y=(229×R+587×G+114×B+500)/1000;其中,R、G、B分別是這個像素點(diǎn)的R、G、B值;這樣就把彩色圖像轉(zhuǎn)化為灰度圖像;(2)對得到的灰度圖像進(jìn)行二值化處理;首先確定一個閾值,灰度值大于這個閾值的點(diǎn)灰度值全部置為255,灰度值小于這個閾值的點(diǎn)灰度值全部置為0;這個閾值α通過如下公式得到α=所有像素點(diǎn)灰度之和/像素點(diǎn)個數(shù);然后按從左到右,從上到下的順序?qū)D像的每個像素點(diǎn)進(jìn)行掃描,當(dāng)該點(diǎn)灰度值Y≥α?xí)r,Y=255;當(dāng)Y<α?xí)r,Y=0;(3)比較Y值為0和Y值為255的像素點(diǎn)的個數(shù),個數(shù)多的為背景點(diǎn)集合,個數(shù)少的為文字點(diǎn)集合;如果背景點(diǎn)灰度為255,則置背景點(diǎn)灰度為0,文字點(diǎn)灰度為255;保證文字點(diǎn)灰度始終為255;(4)對得到的二值化圖片進(jìn)行文字提??;提取的方法是采用如下算法(4.1)設(shè)一標(biāo)志變量i,并置為0,對圖片進(jìn)行逐行掃描,若這一行沒有灰度值為255的點(diǎn),查看標(biāo)志變量,標(biāo)志變量為0,則掃描下一行;為1,則記錄此行號hi,并置標(biāo)志變量為0;若有灰度值為255的點(diǎn),查看標(biāo)志變量;若為0,把行號記錄下來,置標(biāo)志變量為1;若標(biāo)志變量為1則繼續(xù)下一行掃描;(4.2)設(shè)一標(biāo)志變量j,并置為0,對所有有記錄的行,在順次兩行hi和hi-1之間進(jìn)行列掃描;設(shè)當(dāng)前掃描的列號為lk;若此列無灰度為255的點(diǎn),檢查j,若j==0,則掃描下一列;j==1,記錄二元組(hi,lk),并令j=0;若有灰度值為255的點(diǎn),檢查j,若j=0,則記錄二元組(hi-1,lk),并令j=1;若j==1,則繼續(xù)掃描下一列;(4.3)步驟(4.2)中得到的順次相鄰兩點(diǎn)(hi-1,lm),(hi,ln)所圍成的矩形區(qū)域就是一個字母區(qū)域,所有這些區(qū)域就組成一個字母區(qū)域集合;因?yàn)樵谧R別時需要用到預(yù)先存儲在相機(jī)里的標(biāo)準(zhǔn)字母模板圖片,且圖片大小是20*20的,所以要把每一個字母區(qū)域規(guī)范化成一個20*20大小的區(qū)域;規(guī)范的方法為設(shè)待規(guī)范的區(qū)域?yàn)閙*n大小,對于其中一個像素點(diǎn)(i,j),令p=取整(i/m*20),q=取整(j/m*20);新建一個20*20圖片,令新建圖片中(p,q)點(diǎn)的灰度值為待規(guī)范的區(qū)域中(i,j)點(diǎn)的灰度值,新建圖片中其余點(diǎn)灰度值全部置為0;這樣就把m*n區(qū)域轉(zhuǎn)換成20*20區(qū)域;(4.4)把轉(zhuǎn)換后的圖片和模板圖片進(jìn)行比對,進(jìn)而識別出字母;比較的規(guī)則用下面的公式<maths id="math0001" num="0001" ><math><![CDATA[ <mrow><msub> <mi>L</mi> <mi>k</mi></msub><mo>=</mo><munderover> <mi>Σ</mi> <mrow><mi>i</mi><mo>=</mo><mn>1</mn> </mrow> <mn>20</mn></munderover><munderover> <mi>Σ</mi> <mrow><mi>j</mi><mo>=</mo><mn>1</mn> </mrow> <mn>20</mn></munderover><msup> <mrow><mo>(</mo><msubsup> <mi>r</mi> <mrow><mi>i</mi><mo>,</mo><mi>j</mi> </mrow> <mi>k</mi></msubsup><mo>-</mo><msub> <mi>t</mi> <mrow><mi>i</mi><mo>,</mo><mi>j</mi> </mrow></msub><mo>)</mo> </mrow> <mn>2</mn></msup> </mrow>]]></math></maths>其中,ri,jk為第k個模板圖片的(i,j)像素的灰度值,ti,j為當(dāng)前待測圖片的(i,j)像素的灰度值;取值最小的Lk,它對應(yīng)的下標(biāo)就為與被測圖片同類的模板圖片號;(4.5)通過步驟(4.4)就可以把圖片中的所有字母識別出來,然后以ASCII碼形式存成文本文件;步驟四相機(jī)自動利用現(xiàn)有的翻譯算法對文字進(jìn)行翻譯;步驟五將翻譯完的結(jié)果顯示在LCD上。
全文摘要
本發(fā)明涉及一種實(shí)現(xiàn)數(shù)碼相機(jī)文字提取和自動翻譯功能的方法,該方法是通過對文字的拍攝,生成圖片,并通過圖像處理技術(shù)從中提取出文字,并生成文本文件;再用翻譯算法把這段文字翻譯成中文并顯示在LCD上。具體實(shí)施步驟如下步驟一在菜單中按相應(yīng)項(xiàng),把相機(jī)設(shè)置成翻譯模式;步驟二對文字進(jìn)行拍照;步驟三相機(jī)自動用文字提取算法進(jìn)行文字提取,并生成文本文件;步驟四相機(jī)自動利用現(xiàn)有的翻譯算法對文字進(jìn)行翻譯;步驟五將翻譯完的結(jié)果顯示在LCD上。本發(fā)明可以直接利用現(xiàn)有的數(shù)碼相機(jī)硬件資源,無需附加任何硬件成本,使其具有文字提取和自動翻譯的功能,能夠給用戶帶來極大的便利。
文檔編號G06K9/20GK101562694SQ20091006902
公開日2009年10月21日 申請日期2009年5月26日 優(yōu)先權(quán)日2009年5月26日
發(fā)明者真 王, 鄭龍周 申請人:天津三星光電子有限公司