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