郭小成
(河海大學(xué)計算機與信息學(xué)院 江蘇 211100)
目前,絕大多數(shù)的餐飲企業(yè)的點餐過程仍然停留在單一、乏味的文字或圖案菜譜上,無法展現(xiàn)菜式的詳細信息,僅憑稀奇古怪的菜名常常讓客戶不知所云;其次,傳統(tǒng)的點餐方式需要服務(wù)員借助筆、紙張和計算器等工具,不僅破壞了自由點餐的空間,也耗費了大量的人力和物力;再者,基本上每家餐廳都需要定期更換菜譜,而傳統(tǒng)的菜譜制作費時費力;最后,傳統(tǒng)的點餐方式缺少分享和推送功能,不利于餐飲企業(yè)特色菜、招牌菜的推廣。
本文將增強現(xiàn)實技術(shù)應(yīng)用到餐飲企業(yè)的點餐過程中,對傳統(tǒng)菜譜進行適當(dāng)修改,再利用手機、平板等移動設(shè)備的攝像頭作為數(shù)據(jù)采集裝置,將采集到的圖像數(shù)據(jù)上傳到服務(wù)器,服務(wù)器端對接受到的數(shù)據(jù)經(jīng)過數(shù)據(jù)預(yù)處理、提取特征值和分類判別等步驟識別出菜式,再利用投影變換矩陣原理,實時注冊跟蹤并在客戶移動設(shè)備的屏幕上疊加接近真實的三維菜色模型。從而可以讓用戶對菜色的外觀、味道、成份和用戶評價等信息有一個清晰直觀的了解,有效地增強客戶就餐的服務(wù)體驗。
本文設(shè)計系統(tǒng)的體系結(jié)構(gòu)如圖1所示。廚房終端是普通的PC機,通過B/S模式訪問,采用Ajax技術(shù)實時更新客戶的訂單信息??蛻粢苿咏K端可以是手機、平板等帶有攝像功能的移動設(shè)備。
客戶在移動終端上運行系統(tǒng)的Android應(yīng)用程序之后,將攝像頭對準(zhǔn)餐廳的菜譜,將拍攝到的圖片上傳到服務(wù)器,服務(wù)器通過對圖片進行去噪、濾波和平滑等預(yù)處理,提取圖片的特征值,然后以數(shù)據(jù)挖掘的算法進行分類,識別出對應(yīng)的菜式,隨后從數(shù)據(jù)服務(wù)器取出該菜式對應(yīng)的三維模型和相關(guān)信息。最后移動終端接受該菜式的信息,利用投影變換矩陣原理,實時注冊跟蹤并在客戶移動設(shè)備的屏幕上疊加接近真實的三維菜色模型和相關(guān)信息。
本系統(tǒng)涉及兩個重要的過程。一是識別文字菜譜的過程,只有正確識別出客戶指定的菜式,才能提供正確的增強現(xiàn)實信息;二是實時跟蹤注冊過程,需要通過投影變換矩陣技術(shù),實時計算出攝像頭與菜譜標(biāo)識物的相對位置,才能準(zhǔn)確的加載虛擬的三維模型,以達到虛實結(jié)合的效果。
2.1.1 傳統(tǒng)菜譜的修改
首先需要對傳統(tǒng)的文字菜譜進行適當(dāng)修改,以滿足增強現(xiàn)實標(biāo)識物簡單、易區(qū)分、易識別的特點。在修改過程中,需要滿足以下兩條原則。
菜譜上的菜式可以是任意的文字或圖案,但一定不能中心對稱或軸對稱,否則虛擬物體會上下或左右倒置。
菜譜上的菜式的文字或圖案應(yīng)該越簡單越好,越簡單識別速度越快。其中,黑白相間的圖案可以有效地加速標(biāo)識物的邊緣探測。
圖1 系統(tǒng)的體系架構(gòu)
2.1.2 數(shù)據(jù)預(yù)處理
從客戶移動終端的攝像頭獲取到圖像后,在移動終端進行初步的處理,將圖像進行灰度化處理和適當(dāng)壓縮。上傳到服務(wù)器之后,對圖像進行去噪、濾波、平滑和提取邊緣等 處理。
2.1.3 提取特征值
提取特征值過程實質(zhì)上是在圖像上檢測“興趣點”,然后對這些“興趣點”轉(zhuǎn)換為特征向量。這里我們采用SURF算法[2]生成一個64維的向量,該算法提取的特征向量對光照和視角變換的影響很小,對平移,旋轉(zhuǎn)和縮放也能保持不變性[4]。
2.1.4 分類判別分析
因為SVM能較好地解決小樣本、非線性、高維數(shù)的分類問題,在圖像識別上有先天的優(yōu)勢[2]。在使用SVM分類器進行分類時,包含以下兩個階段:
模型訓(xùn)練階段,首先需要預(yù)先將菜譜中的菜式圖案上傳到服務(wù)器,服務(wù)器端對這些圖片進行預(yù)處理,提取特征值生成特征向量之后,輸入到SVM模型中進行訓(xùn)練。
在線識別階段,客戶移動終端將獲取到的圖像上傳到服務(wù)器,服務(wù)器端對圖片進行預(yù)處理,提取特征值生成特征向量作為之前訓(xùn)練好的SVM模型的輸入,輸出即為分類結(jié)果。
2.2.1 投影矩陣變換原理
在進行標(biāo)識物的跟蹤注冊時,涉及到三個坐標(biāo)系統(tǒng),分別是客觀世界絕對坐標(biāo)系,攝像頭坐標(biāo)系和標(biāo)識物平面坐標(biāo)系,如圖2所示。
圖2 坐標(biāo)系統(tǒng)
為了獲取攝像頭的位置和方向,可以通過式(1)[5]將菜譜坐標(biāo)(Xmc,Ymc,Zmc)轉(zhuǎn)換到攝像頭坐標(biāo)(Xcc,Ycc,Zcc)。式(1)中,變換矩陣由一個旋轉(zhuǎn)矩陣V3×3和一個平移矩陣V3×1組成。
在攝像頭的定標(biāo)過程中,可以由公式(2)[5]獲得攝像機的透視投影矩陣P,即攝像頭坐標(biāo)系到絕對世界坐標(biāo)系的轉(zhuǎn)換矩陣。
式(2)中,f 為攝像頭鏡頭焦距;Sx 與Sy 分別為X 軸、Y 軸方向的比例因子,(x0,y0)為人眼坐標(biāo)系中Z軸的位置[1],K是校準(zhǔn)參數(shù)。
因為菜譜對應(yīng)的矩形區(qū)域四個頂點的坐標(biāo)是確定的,移動終端屏幕顯示區(qū)域四個頂點坐標(biāo)也可以實時獲得。在確定了V3×3矩陣之后,就可以計算出從菜譜坐標(biāo)系到攝像頭坐標(biāo)系的轉(zhuǎn)換矩陣。此外,由于標(biāo)識物的圖案是不對稱的,利用它可以確定攝像頭的方向。
2.2.2 疊加虛擬圖像
利用OpenGL ES的矩形運算和圖形繪制函數(shù)庫,將事先設(shè)計好的菜式三維模型實時加載到真實環(huán)境中,以達到虛實結(jié)合。
本文設(shè)計的基于增強現(xiàn)實的電子點餐系統(tǒng),具有用戶體驗好、更換菜譜方便和實現(xiàn)成本低等特點。但目前該系統(tǒng)還有很大的提升空間,例如菜譜識別的準(zhǔn)確性,攝像頭定標(biāo)的穩(wěn)定性以及虛擬物體的加載速度等。
[1]周見光,石剛等.增強現(xiàn)實系統(tǒng)中的虛擬交互方法 [J].計算機工程, 2012, 38(1): 251-253
[2] 劉太安.基于支持向量機的空間數(shù)據(jù)挖掘方法及其在旅游地理經(jīng)濟分析中的應(yīng)用[D]. 徐州:中國礦業(yè)大學(xué),2012.
[3]鐘志鵬.移動增強現(xiàn)實博物館導(dǎo)覽應(yīng)用研究[D].北京:北京理工大學(xué), 2011.
[4]Kato H,Billinghurst M,Weghorst S, et al.A Mixed Reality 3D Conferencing Application[R]. Washington D. C., USA: University of Washington, Technical Report: R-99-1, 1999.