摘 要:針對前景廣闊的家庭機器人市場以及解決傳統家庭機器人存在的技術不成熟、成本高等問題,提出了一種基于WiFi無線網絡的家庭教育機器人實現方案。該方案由機器人、PC機、路由器構成,組網簡單,成本較低,非常適合家庭環境。方案中機器人能夠朗讀漢字、課文以及通過攝像頭識別書寫在白紙上的漢字,適用于兒童早期認字教育。為此,為認字功能專門設計了漢字圖像提取、識別算法,單字識別率達到97%?;贒rRobot公司X80-H型機器人上實現了該系統并對各個功能進行了大量測試實驗。實驗結果表明系統具有較強的魯棒性,本方案是有效可行的。
關鍵詞:WiFi; 無線網絡; 認字; 家庭教育機器人
中圖分類號:TP242.6
文獻標志碼:A
文章編號:1001-3695(2010)02-0582-04
doi:10.3969/j.issn.1001-3695.2010.02.050
Design and implementation of home education robot with characterrecognition function based on WiFi wireless network
YAN Qiao, JIN Lian-wen
(School of Electronics Information Engineering, South China University of Technology, Guangzhou 510640,China)
Abstract:This paper presented a novel design and implementation of home education robot. The implementation based on WiFi wireless network had multi-function including Chinese character recognition. The system which was composed of robot, personal computer and wireless router was cheap and simple to build up. It was convenience for household use. In this implementation, the robot could read by a speaker and recognize Chinese character through a camera. The system was suit to early period children education. An algorithm was designed for Chinese character recognition. The recognition accuracy was 97%. The system was implemented on Canada DrRobot X80-H platform. Lots of tests and experiments were carried out on it. The results show that the system is robust, feasible and effective.
Key words:WiFi; wireless network; character recognition; home education robot
0 引言
如今,隨著機械及信息等方面科技的發展,機器人技術也有了很大的發展,并且廣泛應用于軍事、公共安全、生產、娛樂、家庭服務等領域。尤其在家庭服務和娛樂領域,信息技術的發展使得人們的生活早已進入數碼時代,機器人也將順應時代的大潮,走進人們的生活并帶來極大的便利。近幾年,各國的公司都推出了自己的娛樂及家用機器人,如日本Sony公司的AIBO機器狗[1]、人形機器人QRIO,HONDA公司的人型機器人ASIMO,NEC公司的娛樂機器人PaPeRo[2],三菱重工的家用機器人Wakamaru以及韓國YUJIN Robot公司推出的家庭網絡服務機器人iRobi-q[3],這些機器人已走進許多家庭中。根據日本機器人聯合會統計,日本在2007年全年機器人銷售額為5 850億日元[4]。而有機構初步估計,全球2010年機器人市場將達到1 500億美元,其中教育及家庭娛樂機器人市場將達到450億美元[5]。由此可見,家庭機器人行業具有十分廣闊的市場前景。然而,傳統的家庭機器人,如YUJIN公司的iRobi-q機器人,其內置了具有較強計算能力的個人電腦。這讓機器人具有了一定意義的自主性,但內置電腦使機器人系統變得復雜、成本增加。最終,昂貴的價格使得家庭機器人難以走進平常百姓家。
針對前景廣闊的家庭機器人市場以及傳統家庭機器人存在的技術不夠成熟、成本高等問題,本文提出了一種基于WiFi無線網絡具有認字功能的家庭教育機器人的實現方案。近年來,計算機和無線通信技術迅速發展,電腦與網絡已走進千家萬戶,家用無線網絡的構建成本非常低廉。本方案充分利用了家庭環境已經存在的PC、無線網絡等硬件資源。機器人只負責機械運動、數據采集、網絡通信等功能,而大量的信號處理、數據計算,如認字、語音合成等功能在PC端執行。機器人與PC端的通信通過WiFi無線網絡進行?;诩幽么驞rRobot公司的X80-H型機器人平臺上實現了本方案,并對系統各項功能作了大量測試與實驗,驗證了該方案是有效可行的。
1 家庭教育機器人的軟硬件系統
該方案主要由硬件系統和運行于PC端的控制軟件系統構成。下面分別對軟硬件系統結構進行介紹。
1.1 硬件系統結構
本方案的硬件系統主要由機器人、支持WiFi協議的無線路由器和PC機組成,其系統結構如圖1所示。
在該系統中,無線路由器具有重要的作用,通過它構建一個可以運行多種底層協議(如WiFi、以太網協議)的局域網。處于局域網中的各種終端,如通過WiFi聯網的機器人、通過以太網協議連網的PC機都可在TCP/IP協議中的網絡層及其之上各層進行數據的透明傳輸。PC端就是利用這種機制對機器人進行控制和交互的。從該方案的系統結構圖可以看出,其系統結構清晰、部署靈活、造價低廉、符合規范,易于在家庭環境下實現。下面介紹在本實驗中采用的設備:
a)無線路由器是本系統中的重要設備,它負責本地局域網的構建,是系統連接機器人和PC機的橋梁設備,必須滿足帶寬充裕、有效通信距離足夠遠、性能穩定等需求。本實驗中采用的是D-Link公司的DI-524型無線路由器。它符合802.11b/g 無線傳輸標準,傳輸速率為54 Mbps,無線傳輸距離在室內無遮蔽空間最遠可達100 m[6]。以上參數顯示,該型號的無線路由器能夠為本系統提供足夠的帶寬和有效傳輸距離,并且性能穩定。
b)機器人是本系統中被控制的對象,也是教育活動實施的對象。并且由于機器人需要通過WiFi協議連接到局域網中,它應該具備支持WiFi的無線通信模塊、視頻模塊、語音模塊、移動平臺以及其他傳感器等。本系統實驗中所采用的機器人平臺是加拿大DrRobot公司的X80-H型WiRobot機器人[7]。此機器人配備有802.11g無線通信模塊,可以連接到WiFi無線網絡中。頭部組件包含有像素大小為170×140的彩色攝像頭和喇叭、拾音器各一個。另外,它還配備超聲波距離傳感器、紅外線距離傳感器、人體傳感器等豐富的傳感器。該機器人非常適合在本系統中充當家用機器人的角色。
c)PC端在本系統中是作為控制家用機器人的工具,PC機通過以太網口與無線路由器相連,并且由無線路由器與機器人構成一個局域網??刂萍矣脵C器人所有軟件都運行在PC端上。本實驗采用的PC機配置為主頻1.6 GHz的Intel Pentium 4處理器,1 GB內存。
1.2 軟件系統框架
作為教育機器人的軟件系統,能否友好地與兒童進行交互,帶給兒童輕松愉快的學習體驗是一個重要指標。本方案的軟件系統運行在裝有Windows XP的PC機上,具有漢字教學、小學課文教學、唐詩教學等功能。這些功能中,PC機的軟件會顯示相關的圖片與文字內容,而點擊軟件上的朗讀按鈕能讓機器人朗誦課文、唐詩等。另外,軟件還具有聽寫教學的功能,即機器人朗讀某個字或者詞,小朋友根據聽到的內容在白板或白紙上寫下該漢字,然后置于機器人“眼睛”(攝像頭)前方,機器人會自動識別出小朋友所寫的漢字,然后將其與聽寫的內容比較并給出結果。此功能有利于對學前兒童進行認字教育,并且方式新穎、寓教于樂,能夠收到很好的效果。
為了實現機器人認字的功能,本文還專門設計了針對圖片上漢字的識別算法,單字的識別率高達97%,本文將在第2章中詳細闡述該算法。在實現機器人朗讀功能的上,本文采用了Microsoft Speech SDK 5.1中的TTS(text to speech)引擎。該引擎性能優秀,能夠根據文本構建出清晰流利、符合常人說話習慣的語音。此外,在與機器人的通信上,本軟件系統采用了DrRobot公司自帶的“WiRobot software development kit(SDK)”控件來建立網絡連接,負責對機器人指令的發送,接收來自機器人攝像頭的視頻及傳感器的數據。
本系統的軟件架構如圖2所示。
2 漢字圖像識別算法設計
為了實現機器人認字功能,本文設計了針對采用攝像頭識別書寫在白紙(或白板)上漢字的識別算法。為進行實驗,本文采集了200個漢字,50個二字詞的手寫體圖像樣本。漢字為從GB一級字庫中隨機挑選的200個。二字詞為從搜狗輸入法詞庫里隨機挑選的50個[8]。樣本圖像的大小都為352×240,其中漢字居于圖像中部,高占整圖的1/4~1/3,寬占整圖的1/6~1/4。
漢字圖像識別模塊主要分為文本圖像的檢測及提取和脫機漢字識別兩個部分。本文將在下面的章節分別對該模塊的兩個部分進行介紹。
2.1 文本圖像的檢測及提取
機器人通過攝像頭獲取的圖像中只有小部分屬于文本區域,甚至沒有文本區域存在,其他的區域都是一些繁雜的背景。本節的主要內容就是檢測一幅攝像頭獲取的圖像當中是否存在文本區域,如果存在的話,則將文本圖像從背景圖像中提取出來。文本圖像的檢測及提取算法按照以下步驟進行:
a)預處理、邊緣提取、膨脹。因為后面對圖像的處理都是在灰度圖像上進行,所以先必須把攝像頭獲取的彩色圖像轉換成灰度圖像。然后在灰度圖像上采用Canny算法提取出圖像邊緣,再采用3×3的模板對邊緣圖像進行膨脹操作。經過這兩個步驟得到邊緣圖像和膨脹圖像如圖3(a)(b)所示。在實驗中,應用Canny邊緣檢測算法時采用了自適應參數,能夠較完整地保留文本邊緣的同時減少多余邊緣的產生。另外,經過膨脹操作,大部分的長直線、斜線、四邊形以及不規則的長邊緣都粘連到一起,這為后面步驟中非文本區域的去除提供了條件。
b)提取連通區域、去除非文本區域。對步驟a)中得到的膨脹圖像進行連通區域分析,提取出所有的連通區域并計算出它們的邊界框。然后,根據連通區域的邊界框的大小和位置來判斷該連通區域是否為文本區域。如果為非文本區域,則從膨脹圖像中刪除。對非文本區域的判定,有以下幾條規則:
a)如果某連通區域邊界框的高(或寬)大于整幅圖像的高(或寬)的0.7倍,則該區域被視為非文本區域。此規則的前提是假定圖像中單個文字的大小在一定范圍內,通過這條規則,能夠去除膨脹圖像中大部分的長直線、斜線、四邊形等非文本。
b)如果某連通區域邊界框的高和寬都小于8個像素,則視為非文本區域。這條規則去除了膨脹圖像中的大部分噪點。
c)如果某連通區域邊界框的高寬比(或寬高比)大于8,則視為非文本區域。這條規則是因為漢字中單個筆畫的高與寬之比在一定的范圍之中。
d)如果某連通區域邊界框的中心點到圖像的上下(或左右)邊界的最小距離小于圖像高(寬)的1/8,則視為非文本區域。這條規則的前提條件是文字書寫于圖像的中部。通過這條規則可以去除膨脹圖像中靠近圖像邊緣的連通區域。
經過此步驟,膨脹圖像中的非文本區域大部分被刪除,屬于文本的連通區域能夠保留下來。保留下來的連通區域圖像如圖3(c)所示,其中白色矩形框為連通區域的邊界框。
c)合并屬于同一漢字的連通區域。經過步驟b)得到所有屬于文本的連通區域如圖3(c)所示,但這些連通區域可能只是漢字的單個筆畫或部件而非漢字整體。所以,在此步驟中,根據這些筆畫或部件的邊界框的相對位置關系將屬于同一漢字的筆畫或部件合并。合并漢字筆畫(部件)的方法分為以下幾個步驟:
(a)把所有筆畫(部件)的邊界框按照與圖像左邊界的距離從小到大排序。
(b)依次計算兩兩相鄰的筆畫(部件)之間的位置關系,以判定它們是否需要合并。Liu 等人[9]在做脫機日文地址切分中提出以歸一化重疊度(normalized overlapping degree)來度量筆畫(部件)之間的位置關系,具有良好的效果。如果筆畫(部件)的邊界框用其左、右、上、下的坐標來標志,則兩個相鄰的邊界框可以分別表示為(xl1,xr1,yt1,yb1)和(xl2,xr2,yt2,yb2)。這里,假定xl1≤xl2,即邊界框1處于邊界框2的左邊。如果有xl2≤xr2,那么這兩個邊界框重疊,且兩個邊界框的重疊區域與合并區域的大小分別有公式:
ovlp=xr1-xl2和span=max(xr1,xr2)-xl1
那么歸一化重疊度可以由以下式計算:
nmovlp=1/2#8226;(ovlp/w1+ovlp/w2)-dist/span(1)
其中:w1和w2分別為兩個邊界框的寬度,dist為兩邊界框中心的水平距離。計算出兩個筆畫(部件)邊界框的nmovlp后,如果其大于某個閾值T,則將這兩個筆畫(部件)合并。如此反復地判斷并合并兩兩相鄰的筆畫(部件),直到不能合并為止。在實驗中,閾值T一般取經驗值0。
(c)找出所有的小邊界框,并分別將這些小邊界框合并到與它們相鄰最合適的大邊界框中。如果沒有合適的大邊界框讓它來合并,則將該小邊界框刪除。這里,判定小邊界框按照下面的方法進行。首先遍歷所有的邊界框一次,找出所有邊界框中最大的高與寬。再對所有邊界框進行第二次遍歷,若當前邊界框的高(或寬)小于最大的高(或寬)的1/3,則判定它是小邊界框。經過步驟(c),漢字的筆畫(部件)被合并為單個漢字或者少數的幾個部件,如圖3(d)所示。
2.2 脫機漢字識別
2.2.1候選路徑搜索
在2.1節中,圖像中的漢字被提取出來,它們是一個單字整體,或者被分割成為幾個部件,如圖4(a)(b)所示。在識別時,若干個部件組合成一個候選模式,若干個候選模式又組合成一條候選路徑,而待識別的漢字或詞是這些所有可能候選路徑中的一條。可以先將所有可能的候選路徑進行枚舉[10],如對于序列{a,b,c},最多能夠給出四種候選路徑:(a) (b) (c)、(a,b) (c)、(a) (b,c)、(a,b,c)。假設枚舉得到的所有路徑集合為{P},其中的一條路徑Pi=pi1pi2…piN。對該路徑中的每個節點都可以通過脫機漢字識別分類器得出一個最優候選字Lij和最優候選字分數Sij,這樣便得到了候選字序列Li=li1li2…liN及該候選字序列相應的分數序列Si=si1si2…siN。該路徑的分數S(i)可以由
S(i)=1/N#8226;NjSij(2)
計算得到。然后對所有的候選路徑按照其分數進行升序排列,便可得到最終的識別結果。
圖5給出了“沉默”一詞的識別路徑示例,經過文本提取步驟得到的圖像包含三個部件,圖4(b)所示。因此,可以得到四條候選路徑。
對于所有候選路徑,按照式(2)可以計算出其候選字序列及分數如下:
L1={膽,犬},S(1)=7684
L2={沉,黑,犬},S(2)=6234
L3={沉,默},S(3)=3790
L4={瞅},S(4)=7881
然后,按分數升序排列,則最優的候選序列為L3{沉,默}。
2.2.2脫機漢字分類器
在2.2.1節中,候選路徑分數S(i)的計算需要使用脫機漢字識別分類器來對每一個候選模式進行識別。與普通的單個脫機漢字識別過程一樣,對候選模式的識別也是先進行歸一化等預處理,提取512維梯度特征,經LDA(linear discriminant analysis)[11]將512維的原始特征向量減少至160維。最后,將經過降維后的特征向量導入到MQDF(modified quadratic discriminant functions)分類器[12]中進行分類。
在實驗中,采用的分類器是利用863脫機手寫漢字數據庫樣本訓練的3755類脫機漢字分類器[10]。
2.2.3實驗結果
基于前文所述的GB一級字庫中200個漢字,50個詞的圖像上應用該漢字圖像識別算法進行實驗,統計了首候選、5候選、10候選等情況下的識別率,如表1所示。
從實驗結果可以看出,該漢字圖像識別算法在單字識別率上已經達到較高的水平,在詞組的識別上也有很好的表現。
3 結束語
針對前景越來越廣闊的家庭機器人市場及傳統家庭機器人存在的技術不成熟、成本高等問題,本文提出了一種基于WiFi無線網絡的家庭教育機器人實現方案。本方案充分利用了家庭環境普遍存在的PC機、WiFi無線網絡等硬件資源,降低了成本,使家庭教育機器人更容易得到普及。該方案實現了漢字教學、小學課文教學、唐詩教學等功能,并且能夠朗讀漢字、課文以及通過機器人攝像頭識別漢字,非常適合用于兒童早期教育。本文還為方案中的漢字圖像識別功能設計了圖像文本的提取及識別算法,并在GB一級字庫200個漢字單字及50個詞的圖像上做了實驗,單字首候選識別率達到97%。顯然,本文提出的方案具有結構簡單、組網靈活、成本低的特點,且具有良好的魯棒性,應用前景廣闊。
參考文獻:
[1]
Sony CO. Sony launches four-legged entertainment robot[EB/OL].(1999-05-11)[2009-06-10].http://www.sony.net/SonyInfo/News/Press_Archive/199905/969-046/.
[2]WIKIPEDIA.PaPeRo[EB/OL].(2009-06-07)[2009-06-10].http://en.wikipedia.org/wiki/Papero.
[3]iRobiQ Co.Ltd. Ubiquitous iRobiq story[EB/OL].[2009-06-10].http://www.irobibiz.com/english/story/irobiq_is.php.
[4]王偉.日本2007年機器人銷售數據統計報告[R].2008:18-19.
[5]SHIN K C. U robot[EB/OL]. [2009-06-10]. http://iv.cs.uni-bonn.de/fileadmin/ag/marron/ubiforum/Kyung_Chul_Shin_URobot.pdf.
[6]D-Link DI-524 使用手冊[EB/OL]. [2009-06-10]. http://guide.it168.com/pages/12518.shtml.
[7]Dr Robot. WiRobot X80 user manual [EB/OL]. [2009-06-10].http://www.drrobot.com/products/item_downloads/x80_1.pdf.
[8]搜狗輸入法細胞詞庫[EB/OL].[2009-06-10]. http://pinyin.sogou.com/dict/.
[9]LIU Cheng-lin, KOGA M, FUJISAWA H. Lexicon-driven segmentation and recognition of handwritten character strings for Japanese address reading[C]//IEEE Trans on Pattern Analysis and Machine Intelligence, 2002,24(11):1425-1437.
[10]龍騰.旋轉方向無關的無約束手寫中文詞組識別[D].廣州:華南理工大學,2008.
[11]DUDA R O, HART P E, STORK D G.模式分類 [M].李宏東,姚天翔,等譯.2版.北京:機械工業出版社,2003:96-99.
[12]KIMURA F, TAKASHINA K,TSURUOKA S, et al. Modified quadratic discriminant functions and the application to Chinese character recognition [J].IEEE Trans on Pattern Analysis and Machine Intelligence, 1987,9(1):149-153.